Changeset 191282 in webkit
- Timestamp:
- Oct 19, 2015 2:13:43 AM (9 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r191279 r191282 1 2015-10-19 Hunseop Jeong <hs85.jeong@samsung.com> 2 3 [EFL] Implement WebContextMenuProxyEfl::showContextMenu after r191194 4 https://bugs.webkit.org/show_bug.cgi?id=150310 5 6 Reviewed by Gyuyoung Kim. 7 8 showContextMenu() doesn't work correctly after r191194 in EFL port. 9 This patch implements WebContextMenuProxyEfl::showContextMenu. 10 11 * UIProcess/efl/WebContextMenuProxyEfl.cpp: 12 (WebKit::WebContextMenuProxyEfl::WebContextMenuProxyEfl): 13 (WebKit::WebContextMenuProxyEfl::showContextMenu): 14 (WebKit::WebContextMenuProxyEfl::hideContextMenu): 15 * UIProcess/efl/WebContextMenuProxyEfl.h: 16 1 17 2015-10-18 Csaba Osztrogonác <ossy@webkit.org> 2 18 -
trunk/Source/WebKit2/UIProcess/efl/WebContextMenuProxyEfl.cpp
r191239 r191282 29 29 #if ENABLE(CONTEXT_MENUS) 30 30 31 #include "APIContextMenuClient.h" 31 32 #include "EwkView.h" 33 #include "WebContextMenuItem.h" 32 34 #include "WebContextMenuItemData.h" 33 35 #include "WebPageProxy.h" … … 38 40 namespace WebKit { 39 41 40 WebContextMenuProxyEfl::WebContextMenuProxyEfl(EwkView* , WebPageProxy&, const ContextMenuContextData& context, const UserData& userData)42 WebContextMenuProxyEfl::WebContextMenuProxyEfl(EwkView* ewkView, WebPageProxy& page, const ContextMenuContextData& context, const UserData& userData) 41 43 : WebContextMenuProxy(context, userData) 44 , m_ewkView(ewkView) 45 , m_page(page) 42 46 { 43 47 } … … 49 53 void WebContextMenuProxyEfl::showContextMenu() 50 54 { 51 notImplemented(); 55 Vector<RefPtr<WebContextMenuItem>> proposedAPIItems; 56 for (auto& item : m_context.menuItems()) { 57 if (item.action() != ContextMenuItemTagShareMenu) 58 proposedAPIItems.append(WebContextMenuItem::create(item)); 59 } 60 61 Vector<RefPtr<WebContextMenuItem>> clientItems; 62 bool useProposedItems = true; 63 64 if (m_page.contextMenuClient().getContextMenuFromProposedMenu(m_page, proposedAPIItems, clientItems, m_context.webHitTestResultData(), m_page.process().transformHandlesToObjects(m_userData.object()).get())) 65 useProposedItems = false; 66 67 const Vector<RefPtr<WebContextMenuItem>>& items = useProposedItems ? proposedAPIItems : clientItems; 68 69 if (items.isEmpty()) 70 return; 71 72 Vector<RefPtr<API::Object>> menuItems; 73 menuItems.reserveInitialCapacity(items.size()); 74 75 for (const auto& menuItem : items) 76 menuItems.uncheckedAppend(menuItem); 77 78 if (m_ewkView) 79 m_ewkView->showContextMenu(toAPI(m_context.menuLocation()), toAPI(API::Array::create(WTF::move(menuItems)).ptr())); 52 80 } 53 81 -
trunk/Source/WebKit2/UIProcess/efl/WebContextMenuProxyEfl.h
r191239 r191282 55 55 private: 56 56 WebContextMenuProxyEfl(EwkView*, WebPageProxy&, const ContextMenuContextData&, const UserData&); 57 58 EwkView* m_ewkView; 59 WebPageProxy& m_page; 57 60 }; 58 61
Note: See TracChangeset
for help on using the changeset viewer.