Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(809)

Side by Side Diff: chrome/browser/ui/gtk/gtk_util.cc

Issue 7712001: WindowOpenDisposition should not be exposed in base and ui modules. (1) Gdk refactoring (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: minor fix. Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/gtk/gtk_util.h" 5 #include "chrome/browser/ui/gtk/gtk_util.h"
6 6
7 #include <cairo/cairo.h> 7 #include <cairo/cairo.h>
8 #include <gdk/gdkx.h> 8 #include <gdk/gdkx.h>
9 #include <gtk/gtk.h> 9 #include <gtk/gtk.h>
10 10
11 #include <cstdarg> 11 #include <cstdarg>
12 #include <map> 12 #include <map>
13 13
14 #include "base/environment.h" 14 #include "base/environment.h"
15 #include "base/i18n/rtl.h" 15 #include "base/i18n/rtl.h"
16 #include "base/linux_util.h" 16 #include "base/linux_util.h"
17 #include "base/logging.h" 17 #include "base/logging.h"
18 #include "base/nix/xdg_util.h" 18 #include "base/nix/xdg_util.h"
19 #include "base/string_number_conversions.h" 19 #include "base/string_number_conversions.h"
20 #include "base/utf_string_conversions.h" 20 #include "base/utf_string_conversions.h"
21 #include "chrome/browser/autocomplete/autocomplete.h" 21 #include "chrome/browser/autocomplete/autocomplete.h"
22 #include "chrome/browser/autocomplete/autocomplete_classifier.h" 22 #include "chrome/browser/autocomplete/autocomplete_classifier.h"
23 #include "chrome/browser/autocomplete/autocomplete_match.h" 23 #include "chrome/browser/autocomplete/autocomplete_match.h"
24 #include "chrome/browser/event_disposition.h"
24 #include "chrome/browser/profiles/profile.h" 25 #include "chrome/browser/profiles/profile.h"
25 #include "chrome/browser/ui/browser_list.h" 26 #include "chrome/browser/ui/browser_list.h"
26 #include "chrome/browser/ui/browser_window.h" 27 #include "chrome/browser/ui/browser_window.h"
27 #include "chrome/browser/ui/gtk/cairo_cached_surface.h" 28 #include "chrome/browser/ui/gtk/cairo_cached_surface.h"
28 #include "chrome/browser/ui/gtk/gtk_theme_service.h" 29 #include "chrome/browser/ui/gtk/gtk_theme_service.h"
30 #include "chrome/browser/ui/views/event_utils.h"
Elliot Glaysher 2011/08/24 18:04:49 views in gtk
shinyak (Google) 2011/08/25 05:54:10 Done.
29 #include "content/browser/disposition_utils.h" 31 #include "content/browser/disposition_utils.h"
30 #include "content/browser/renderer_host/render_view_host.h" 32 #include "content/browser/renderer_host/render_view_host.h"
31 #include "content/browser/tab_contents/tab_contents.h" 33 #include "content/browser/tab_contents/tab_contents.h"
32 #include "content/common/renderer_preferences.h" 34 #include "content/common/renderer_preferences.h"
33 #include "googleurl/src/gurl.h" 35 #include "googleurl/src/gurl.h"
34 #include "grit/theme_resources.h" 36 #include "grit/theme_resources.h"
35 #include "grit/theme_resources_standard.h" 37 #include "grit/theme_resources_standard.h"
36 #include "third_party/skia/include/core/SkBitmap.h" 38 #include "third_party/skia/include/core/SkBitmap.h"
37 #include "third_party/skia/include/core/SkColor.h" 39 #include "third_party/skia/include/core/SkColor.h"
40 #include "ui/base/events.h"
38 #include "ui/base/l10n/l10n_util.h" 41 #include "ui/base/l10n/l10n_util.h"
39 #include "ui/base/resource/resource_bundle.h" 42 #include "ui/base/resource/resource_bundle.h"
40 #include "ui/base/text/text_elider.h" 43 #include "ui/base/text/text_elider.h"
41 #include "ui/base/x/x11_util.h" 44 #include "ui/base/x/x11_util.h"
42 #include "ui/gfx/gtk_util.h" 45 #include "ui/gfx/gtk_util.h"
43 #include "ui/gfx/image/image.h" 46 #include "ui/gfx/image/image.h"
44 47
45 #if defined(OS_CHROMEOS) 48 #if defined(OS_CHROMEOS)
46 #include "chrome/browser/chromeos/frame/browser_view.h" 49 #include "chrome/browser/chromeos/frame/browser_view.h"
47 #include "chrome/browser/chromeos/native_dialog_window.h" 50 #include "chrome/browser/chromeos/native_dialog_window.h"
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
188 GtkWidget* GetBrowserWindowFocusedWidget(BrowserWindow* window) { 191 GtkWidget* GetBrowserWindowFocusedWidget(BrowserWindow* window) {
189 return gtk_window_get_focus(window->GetNativeHandle()); 192 return gtk_window_get_focus(window->GetNativeHandle());
190 } 193 }
191 194
192 #endif 195 #endif
193 196
194 } // namespace 197 } // namespace
195 198
196 namespace event_utils { 199 namespace event_utils {
197 200
198 WindowOpenDisposition DispositionFromEventFlags(guint event_flags) { 201 // TODO(shinyak) This function will be removed after refactoring.
199 return disposition_utils::DispositionFromClick( 202 WindowOpenDisposition DispositionFromGdkState(guint state) {
200 event_flags & GDK_BUTTON2_MASK, 203 int event_flags = EventFlagsFromGdkState(state);
201 event_flags & GDK_MOD1_MASK, 204 return browser::DispositionFromEventFlags(event_flags);
202 event_flags & GDK_CONTROL_MASK, 205 }
203 event_flags & GDK_META_MASK, 206
204 event_flags & GDK_SHIFT_MASK); 207 int EventFlagsFromGdkState(guint state) {
208 int flags = 0;
209 flags |= (state & GDK_LOCK_MASK) ? ui::EF_CAPS_LOCK_DOWN : 0;
210 flags |= (state & GDK_CONTROL_MASK) ? ui::EF_CONTROL_DOWN : 0;
211 flags |= (state & GDK_SHIFT_MASK) ? ui::EF_SHIFT_DOWN : 0;
212 flags |= (state & GDK_MOD1_MASK) ? ui::EF_ALT_DOWN : 0;
213 flags |= (state & GDK_BUTTON1_MASK) ? ui::EF_LEFT_BUTTON_DOWN : 0;
214 flags |= (state & GDK_BUTTON2_MASK) ? ui::EF_MIDDLE_BUTTON_DOWN : 0;
215 flags |= (state & GDK_BUTTON3_MASK) ? ui::EF_RIGHT_BUTTON_DOWN : 0;
216 return flags;
205 } 217 }
206 218
207 } // namespace event_utils 219 } // namespace event_utils
208 220
209 namespace gtk_util { 221 namespace gtk_util {
210 222
211 const GdkColor kGdkWhite = GDK_COLOR_RGB(0xff, 0xff, 0xff); 223 const GdkColor kGdkWhite = GDK_COLOR_RGB(0xff, 0xff, 0xff);
212 const GdkColor kGdkGray = GDK_COLOR_RGB(0x7f, 0x7f, 0x7f); 224 const GdkColor kGdkGray = GDK_COLOR_RGB(0x7f, 0x7f, 0x7f);
213 const GdkColor kGdkBlack = GDK_COLOR_RGB(0x00, 0x00, 0x00); 225 const GdkColor kGdkBlack = GDK_COLOR_RGB(0x00, 0x00, 0x00);
214 const GdkColor kGdkGreen = GDK_COLOR_RGB(0x00, 0xff, 0x00); 226 const GdkColor kGdkGreen = GDK_COLOR_RGB(0x00, 0xff, 0x00);
(...skipping 706 matching lines...) Expand 10 before | Expand all | Expand 10 after
921 933
922 WindowOpenDisposition DispositionForCurrentButtonPressEvent() { 934 WindowOpenDisposition DispositionForCurrentButtonPressEvent() {
923 GdkEvent* event = gtk_get_current_event(); 935 GdkEvent* event = gtk_get_current_event();
924 if (!event) { 936 if (!event) {
925 NOTREACHED(); 937 NOTREACHED();
926 return NEW_FOREGROUND_TAB; 938 return NEW_FOREGROUND_TAB;
927 } 939 }
928 940
929 guint state = event->button.state; 941 guint state = event->button.state;
930 gdk_event_free(event); 942 gdk_event_free(event);
931 return event_utils::DispositionFromEventFlags(state); 943 return event_utils::DispositionFromGdkState(state);
932 } 944 }
933 945
934 bool GrabAllInput(GtkWidget* widget) { 946 bool GrabAllInput(GtkWidget* widget) {
935 guint time = gtk_get_current_event_time(); 947 guint time = gtk_get_current_event_time();
936 948
937 if (!gtk_widget_get_visible(widget)) 949 if (!gtk_widget_get_visible(widget))
938 return false; 950 return false;
939 951
940 if (!gdk_pointer_grab(widget->window, TRUE, 952 if (!gdk_pointer_grab(widget->window, TRUE,
941 GdkEventMask(GDK_BUTTON_PRESS_MASK | 953 GdkEventMask(GDK_BUTTON_PRESS_MASK |
(...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after
1282 1294
1283 void DoCopy(BrowserWindow* window) { 1295 void DoCopy(BrowserWindow* window) {
1284 DoCutCopyPaste(window, &RenderViewHost::Copy, "copy-clipboard"); 1296 DoCutCopyPaste(window, &RenderViewHost::Copy, "copy-clipboard");
1285 } 1297 }
1286 1298
1287 void DoPaste(BrowserWindow* window) { 1299 void DoPaste(BrowserWindow* window) {
1288 DoCutCopyPaste(window, &RenderViewHost::Paste, "paste-clipboard"); 1300 DoCutCopyPaste(window, &RenderViewHost::Paste, "paste-clipboard");
1289 } 1301 }
1290 1302
1291 } // namespace gtk_util 1303 } // namespace gtk_util
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698