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

Unified Diff: content/browser/renderer_host/render_widget_host_view_aura.h

Issue 1602903003: Display the context menu on Windows on long press release (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address review comments Created 4 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/render_widget_host_view_aura.h
diff --git a/content/browser/renderer_host/render_widget_host_view_aura.h b/content/browser/renderer_host/render_widget_host_view_aura.h
index 9aecd40beb69140bec9aa2c632645917ea7e7fb7..4775a6f328efd61ad42ba6d4bd847ccbf00e5ba4 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.h
+++ b/content/browser/renderer_host/render_widget_host_view_aura.h
@@ -29,6 +29,7 @@
#include "content/browser/renderer_host/render_widget_host_view_base.h"
#include "content/common/content_export.h"
#include "content/common/cursors/webcursor.h"
+#include "content/public/common/context_menu_params.h"
#include "third_party/skia/include/core/SkRegion.h"
#include "ui/aura/client/cursor_client_observer.h"
#include "ui/aura/client/focus_change_observer.h"
@@ -82,6 +83,7 @@ class LegacyRenderWidgetHostHWND;
class OverscrollController;
class RenderFrameHostImpl;
+class RenderViewHostDelegateView;
class RenderWidgetHostImpl;
class RenderWidgetHostView;
class TouchSelectionControllerClientAura;
@@ -330,7 +332,11 @@ class CONTENT_EXPORT RenderWidgetHostViewAura
}
// Called when the context menu is about to be displayed.
- void OnShowContextMenu();
+ // Returns true if the context menu should be displayed. We only return false
+ // on Windows if the context menu is being displayed in response to a long
+ // press gesture. On Windows we should be consistent like other apps and
+ // display the menu when the touch is released.
+ bool OnShowContextMenu(const ContextMenuParams& params);
// Used in tests to set a mock client for touch selection controller. It will
// create a new touch selection controller for the new client.
@@ -515,6 +521,10 @@ class CONTENT_EXPORT RenderWidgetHostViewAura
// handled if it should not be further processed.
void HandleGestureForTouchSelection(ui::GestureEvent* event);
+ // Returns the RenderViewHostDelegateView instance for this view. Returns
+ // NULL on failure.
+ RenderViewHostDelegateView* GetRenderViewHostDelegateView();
+
// The model object.
RenderWidgetHostImpl* const host_;
@@ -648,6 +658,10 @@ class CONTENT_EXPORT RenderWidgetHostViewAura
// Set to true when a context menu is being displayed. Reset to false when
// a mouse leave is received in this context.
bool showing_context_menu_;
+
+ // Contains a copy of the last context menu request parameters. Only set when
+ // we receive a request to show the context menu on a long press.
+ scoped_ptr<ContextMenuParams> last_context_menu_params_;
#endif
bool has_snapped_to_boundary_;

Powered by Google App Engine
This is Rietveld 408576698