|
20 | 20 | #include <cef3/include/cef_client.h>
|
21 | 21 | #include <cef3/include/cef_render_handler.h>
|
22 | 22 | #include <cef3/include/cef_life_span_handler.h>
|
| 23 | +#include <cef3/include/cef_context_menu_handler.h> |
23 | 24 | #include <SString.h>
|
24 | 25 | #include <mmdeviceapi.h>
|
25 | 26 | #include <audiopolicy.h>
|
|
29 | 30 |
|
30 | 31 | #define MTA_CEF_USERAGENT "Multi Theft Auto: San Andreas Client " MTA_DM_BUILDTAG_LONG
|
31 | 32 |
|
32 |
| -class CWebView : public CWebViewInterface, private CefClient, private CefRenderHandler, private CefLoadHandler, private CefRequestHandler, private CefLifeSpanHandler, private CefJSDialogHandler, private CefDialogHandler, private CefDisplayHandler |
| 33 | +class CWebView : public CWebViewInterface, private CefClient, |
| 34 | + private CefRenderHandler, private CefLoadHandler, private CefRequestHandler, private CefLifeSpanHandler, |
| 35 | + private CefJSDialogHandler, private CefDialogHandler, private CefDisplayHandler, private CefContextMenuHandler |
33 | 36 | {
|
34 | 37 | public:
|
35 | 38 | CWebView (bool bIsLocal, CWebBrowserItem* pWebBrowserRenderItem, bool bTransparent = false);
|
@@ -101,6 +104,7 @@ class CWebView : public CWebViewInterface, private CefClient, private CefRenderH
|
101 | 104 | virtual CefRefPtr<CefJSDialogHandler> GetJSDialogHandler() override { return this; };
|
102 | 105 | virtual CefRefPtr<CefDialogHandler> GetDialogHandler() override { return this; };
|
103 | 106 | virtual CefRefPtr<CefDisplayHandler> GetDisplayHandler() override { return this; };
|
| 107 | + virtual CefRefPtr<CefContextMenuHandler> GetContextMenuHandler() override { return this; }; |
104 | 108 | virtual bool OnProcessMessageReceived ( CefRefPtr<CefBrowser> browser, CefProcessId source_process, CefRefPtr<CefProcessMessage> message ) override;
|
105 | 109 |
|
106 | 110 | // CefRenderHandler methods
|
@@ -135,6 +139,9 @@ class CWebView : public CWebViewInterface, private CefClient, private CefRenderH
|
135 | 139 | virtual bool OnTooltip ( CefRefPtr<CefBrowser> browser, CefString& text ) override;
|
136 | 140 | virtual bool OnConsoleMessage ( CefRefPtr<CefBrowser> browser, const CefString& message, const CefString& source, int line ) override;
|
137 | 141 |
|
| 142 | + // CefContextMenuHandler methods |
| 143 | + virtual void OnBeforeContextMenu(CefRefPtr<CefBrowser> browser, CefRefPtr<CefFrame> frame, CefRefPtr<CefContextMenuParams> params, CefRefPtr<CefMenuModel> model) override; |
| 144 | + |
138 | 145 | private:
|
139 | 146 | CefRefPtr<CefBrowser> m_pWebView;
|
140 | 147 | CWebBrowserItem* m_pWebBrowserRenderItem;
|
|
0 commit comments