Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

207
Views
Overriding Webview2 context menu along with default one

Following the approach mentioned in the below link I was able to override default context menu.

How do you override the ContextMenu that appears when right clicking on WebView2 Control?

I have a question is there a way to show both based on some condition like

  • Normal right-click - Custom Overridden context menu
  • CTRL or SHIFT press + right-click - default context menu
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

That's actually easy, when you have the code from that link.

The contextmenu event derives from MouseEvent, so it has information about the control keys being pressed.

Simply replace the javascript contextmenu handler to:

document.addEventListener('contextmenu', function (event)
{
    if (!event.ctrlKey && !event.shiftKey)
    {
        let jsonObject =
        {
            Key: 'contextmenu',
            Value:
            {
                X: event.screenX,
                Y: event.screenY
            }
        };
        window.chrome.webview.postMessage(jsonObject);
        event.preventDefault();
    }
});

It works so that if a control key is pressed, it does absolutely nothing, which will show the default menu. If no keys are pressed, it sends the coordinates to C# and calls event.preventDefault();.

Note: In the code from that link, I call:

webView21.CoreWebView2.Settings.AreDefaultContextMenusEnabled = false;

Here, you should NOT call that. Instead call event.preventDefault(); in javascript.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!