Hello all, I'm part of the EFL port team and we're implementing the PopupMenu, however EFL is a different platform as for our port it is just a state-full canvas, not relying on any widget set/toolkit, we do not have the concept of a menu at all!
Looking at all existing implementations, they all go straight to native platform menus. But we can't as we want to avoid such dependencies. What we'd like to have is a delegate, that WebCore calls the ChromeClient that is overloaded in WebKit, giving our View user a callback with all data. The good news is: we did it and it works quite well. The bad news is: we cheated and include WebKit/efl/WebCoreSupport from PopupMenuEfl.cpp, what a shame! (although some ports *cough qt* include in WebCore defines from WebKit) In order to have a clean design, we'd like to know the general opinion on how to do it. From what I see Mac already defines a similar call in ChromeClient.h: #if PLATFORM(MAC) ... virtual void willPopUpMenu(NSMenu *) { } #endif in our case, we'd need: #if PLATFORM(EFL) virtual void showPopupMenu(const IntRect& rect, FrameView* view, int index) { } virtual void hidePopupMenu() { } #endif so our PopupMenuEfl.cpp will just proxy to these calls. However, although Mac does that it may not be the best solution, so to avoid endless patches to be discussed at bugzilla I'd like to know your opinion on the best way so our patch is right from beginning. Regards, -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -------------------------------------- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev