Chromium Code Reviews| Index: chrome/browser/ui/gtk/gtk_util.cc |
| diff --git a/chrome/browser/ui/gtk/gtk_util.cc b/chrome/browser/ui/gtk/gtk_util.cc |
| index 2a8160d957b2aa6503a83edaf584a3e6deb0fee8..dfdf09f0460e65900959c2bdfd9a8aa4d84083cb 100644 |
| --- a/chrome/browser/ui/gtk/gtk_util.cc |
| +++ b/chrome/browser/ui/gtk/gtk_util.cc |
| @@ -21,11 +21,13 @@ |
| #include "chrome/browser/autocomplete/autocomplete.h" |
| #include "chrome/browser/autocomplete/autocomplete_classifier.h" |
| #include "chrome/browser/autocomplete/autocomplete_match.h" |
| +#include "chrome/browser/event_disposition.h" |
| #include "chrome/browser/profiles/profile.h" |
| #include "chrome/browser/ui/browser_list.h" |
| #include "chrome/browser/ui/browser_window.h" |
| #include "chrome/browser/ui/gtk/cairo_cached_surface.h" |
| #include "chrome/browser/ui/gtk/gtk_theme_service.h" |
| +#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.
|
| #include "content/browser/disposition_utils.h" |
| #include "content/browser/renderer_host/render_view_host.h" |
| #include "content/browser/tab_contents/tab_contents.h" |
| @@ -35,6 +37,7 @@ |
| #include "grit/theme_resources_standard.h" |
| #include "third_party/skia/include/core/SkBitmap.h" |
| #include "third_party/skia/include/core/SkColor.h" |
| +#include "ui/base/events.h" |
| #include "ui/base/l10n/l10n_util.h" |
| #include "ui/base/resource/resource_bundle.h" |
| #include "ui/base/text/text_elider.h" |
| @@ -195,13 +198,22 @@ GtkWidget* GetBrowserWindowFocusedWidget(BrowserWindow* window) { |
| namespace event_utils { |
| -WindowOpenDisposition DispositionFromEventFlags(guint event_flags) { |
| - return disposition_utils::DispositionFromClick( |
| - event_flags & GDK_BUTTON2_MASK, |
| - event_flags & GDK_MOD1_MASK, |
| - event_flags & GDK_CONTROL_MASK, |
| - event_flags & GDK_META_MASK, |
| - event_flags & GDK_SHIFT_MASK); |
| +// TODO(shinyak) This function will be removed after refactoring. |
| +WindowOpenDisposition DispositionFromGdkState(guint state) { |
| + int event_flags = EventFlagsFromGdkState(state); |
| + return browser::DispositionFromEventFlags(event_flags); |
| +} |
| + |
| +int EventFlagsFromGdkState(guint state) { |
| + int flags = 0; |
| + flags |= (state & GDK_LOCK_MASK) ? ui::EF_CAPS_LOCK_DOWN : 0; |
| + flags |= (state & GDK_CONTROL_MASK) ? ui::EF_CONTROL_DOWN : 0; |
| + flags |= (state & GDK_SHIFT_MASK) ? ui::EF_SHIFT_DOWN : 0; |
| + flags |= (state & GDK_MOD1_MASK) ? ui::EF_ALT_DOWN : 0; |
| + flags |= (state & GDK_BUTTON1_MASK) ? ui::EF_LEFT_BUTTON_DOWN : 0; |
| + flags |= (state & GDK_BUTTON2_MASK) ? ui::EF_MIDDLE_BUTTON_DOWN : 0; |
| + flags |= (state & GDK_BUTTON3_MASK) ? ui::EF_RIGHT_BUTTON_DOWN : 0; |
| + return flags; |
| } |
| } // namespace event_utils |
| @@ -928,7 +940,7 @@ WindowOpenDisposition DispositionForCurrentButtonPressEvent() { |
| guint state = event->button.state; |
| gdk_event_free(event); |
| - return event_utils::DispositionFromEventFlags(state); |
| + return event_utils::DispositionFromGdkState(state); |
| } |
| bool GrabAllInput(GtkWidget* widget) { |