diff options
author | Valentin Fokin <fokinv@inf.u-szeged.hu> | 2017-11-21 13:39:26 +0100 |
---|---|---|
committer | Peter Varga <pvarga@inf.u-szeged.hu> | 2018-02-02 07:43:03 +0000 |
commit | a66db09c6efe0d4dcc6d6a3cc93a000207da2175 (patch) | |
tree | 55104bb1ac6c8f61df869e87affc095ff4c6080c /src/webenginewidgets/api/qwebenginepage_p.h | |
parent | 7c8c0414620cd3cb350e77cd88f83f83237eefa3 (diff) |
Make default context menus look more like chrome's one
- Implement EditFlags in ContextMenuData
- Unify Quick and Widget default context menus
- Add workaround for QTBUG-65044
- Update the SimpleBrowser example and its documentation
[ChangeLog][QtWebEngine][QtWebEngineWidgets] Unify Quick and Widget default context menus
Task-number: QTBUG-62414
Change-Id: I16a380f9f17e160497dfb8ac9c172341eb28c6c8
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/webenginewidgets/api/qwebenginepage_p.h')
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage_p.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage_p.h b/src/webenginewidgets/api/qwebenginepage_p.h index 270849aee..301028e39 100644 --- a/src/webenginewidgets/api/qwebenginepage_p.h +++ b/src/webenginewidgets/api/qwebenginepage_p.h @@ -56,6 +56,7 @@ #include "qwebenginecallback_p.h" #include "qwebenginecontextmenudata.h" #include "qwebenginescriptcollection.h" +#include "render_view_context_menu_qt.h" #include "web_contents_adapter_client.h" #include <QtCore/qcompilerdetection.h> @@ -186,6 +187,22 @@ public: #endif }; +class QContextMenuBuilder : public QtWebEngineCore::RenderViewContextMenuQt +{ +public: + QContextMenuBuilder(const QtWebEngineCore::WebEngineContextMenuData &data, QWebEnginePage *page, QMenu *menu); + +private: + virtual bool hasInspector() override; + virtual bool isFullScreenMode() override; + + virtual void addMenuItem(ContextMenuItem entry) override; + virtual bool isMenuItemEnabled(ContextMenuItem entry) override; + + QWebEnginePage *m_page; + QMenu *m_menu; +}; + QT_END_NAMESPACE #endif // QWEBENGINEPAGE_P_H |