Hi, On Wed, May 17, 2017 at 09:03:58AM +0200, Carlos Garcia Campos wrote: > Yes, it does. You can connect to context-menu signal, take a reference > of the given WebKitContextMenu, and return TRUE to ensure WebKit > doesn't show it. Then you can start your timer and then check threshold > (you could use the gtk dnd threshold, for example, with > gtk_drag_check_threshold). If not a gesture you can use the > WebKitContextMenu to build a gtk popup menu.
that sounds promising. How would you show a WebKitContextMenu? I couldn't find a function in webkit2gtk's API to directly pop up that menu. I guess I'd have to inspect the WebKitContextMenu and build a new Gtk menu on my own. Here's a naive attempt (no fiddling with timers, though): https://gist.github.com/vain/4116833a7215299bf46cad0bfc4cd3d4 It appears to work -- kind of. The correct menu show up (if it's not a gesture), but selecting a menu item has no effect. I'm probably missing some signal handlers here. In any case, I don't think I'd want to implement this in my actual browser. Converting a WebKitContextMenu into a Gtk menu basically means reimplementing a part of webkit2gtk: There already has to be some piece of code in webkit2gtk that performs this menu conversion, it's just not exposed as an API call. I'll have a look at Andres Gomez' idea about using native Gtk gestures next[0]. (I indeed did not know they exist.) By the way, if my problem can't be solved, then it's not a big deal. :) It would have been nice to re-use WebKit's original context menu, but there's always the option to ignore that menu and use my very own. (I think that's what the mouse gestures addon in Midori does.) Thanks again! Peter [0]: https://lists.webkit.org/pipermail/webkit-gtk/2017-May/003053.html _______________________________________________ webkit-gtk mailing list [email protected] https://lists.webkit.org/mailman/listinfo/webkit-gtk
