diff options
author | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-11 22:57:16 +0000 |
---|---|---|
committer | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-11 22:57:16 +0000 |
commit | b93542fd121fa7f1ec65a27fdf94ccdcbbd638b9 (patch) | |
tree | 9deefa0a108bf596f3616897b2389c6c28e20cb6 /chrome/browser/renderer_host/render_widget_host_view_gtk.h | |
parent | d72aa00d29a465e37454afc6db6d1080c62051e3 (diff) | |
download | chromium_src-b93542fd121fa7f1ec65a27fdf94ccdcbbd638b9.zip chromium_src-b93542fd121fa7f1ec65a27fdf94ccdcbbd638b9.tar.gz chromium_src-b93542fd121fa7f1ec65a27fdf94ccdcbbd638b9.tar.bz2 |
Linux: Special case focus handling so that we don't tell webkit it's lost focus when a context menu is showing.
BUG=13404,13554
TEST=copy/paste *via the right-click context menu* works as expected in gmail.
Review URL: http://codereview.chromium.org/118339
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18225 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host/render_widget_host_view_gtk.h')
-rw-r--r-- | chrome/browser/renderer_host/render_widget_host_view_gtk.h | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host_view_gtk.h b/chrome/browser/renderer_host/render_widget_host_view_gtk.h index fdd5a97..0bed0c5 100644 --- a/chrome/browser/renderer_host/render_widget_host_view_gtk.h +++ b/chrome/browser/renderer_host/render_widget_host_view_gtk.h @@ -59,6 +59,7 @@ class RenderWidgetHostViewGtk : public RenderWidgetHostView { void SetTooltipText(const std::wstring& tooltip_text); void SelectionChanged(const std::string& text); void PasteFromSelectionClipboard(); + void ShowingContextMenu(bool showing); BackingStore* AllocBackingStore(const gfx::Size& size); // --------------------------------------------------------------------------- @@ -82,12 +83,7 @@ class RenderWidgetHostViewGtk : public RenderWidgetHostView { RenderWidgetHost *const host_; // The native UI widget. OwnedWidgetGtk view_; - // Variables used only for popups -------------------------------------------- - // Our parent widget. - RenderWidgetHostView* parent_host_view_; - // The native view of our parent, equivalent to - // parent_host_view_->GetNativeView(). - GtkWidget* parent_; + // This is true when we are currently painting and thus should handle extra // paint requests by expanding the invalid rect rather than actually // painting. @@ -95,15 +91,23 @@ class RenderWidgetHostViewGtk : public RenderWidgetHostView { // This is the rectangle which we'll paint. gfx::Rect invalid_rect_; + // Whether or not this widget is hidden. + bool is_hidden_; + // Whether we are currently loading. bool is_loading_; - // The cursor for the page. This is passed up from the renderer. WebCursor current_cursor_; - // Whether or not this widget is hidden. - bool is_hidden_; + // Whether we are showing a context menu. + bool is_showing_context_menu_; + // Variables used only for popups -------------------------------------------- + // Our parent widget. + RenderWidgetHostView* parent_host_view_; + // The native view of our parent, equivalent to + // parent_host_view_->GetNativeView(). + GtkWidget* parent_; // We ignore the first mouse release on popups. This allows the popup to // stay open. bool is_popup_first_mouse_release_; |