From 185ee835d38c02ca6fdf80159bba2c31f7c7ff7e Mon Sep 17 00:00:00 2001 From: "ty.an" Date: Wed, 29 Aug 2012 20:06:51 +0900 Subject: [PATCH] Modify "Paste" option not displaying in context menu [Title] Modify "Paste" option not displaying in context menu [Issue] WEB-1654 [Problem] Fails to "Paste" the Copied text , "Paste" option not displaying [Cause] changed some method in ewk_util_number_of_clipboard_items_get() [Solution] modify in ewk_util_number_of_clipboard_items_get() - Delete routine about send message to get number of clipboard items. - Change second parameter of XGetWindowProperty to CBHM Ecore_X_Window. Change-Id: I588ee12024d43f27e9ca9c35669c789f57d2cfab --- Source/WebKit2/UIProcess/API/efl/ewk_util.cpp | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/Source/WebKit2/UIProcess/API/efl/ewk_util.cpp b/Source/WebKit2/UIProcess/API/efl/ewk_util.cpp index 02412dc..eaf8886 100755 --- a/Source/WebKit2/UIProcess/API/efl/ewk_util.cpp +++ b/Source/WebKit2/UIProcess/API/efl/ewk_util.cpp @@ -105,7 +105,7 @@ int ewk_util_number_of_clipboard_items_get(Evas_Object* object) { #if OS(TIZEN) // 1. Get CBHM Ecore_X_Window. - Ecore_X_Window cbhmXWindow = 0; + Ecore_X_Window xWindow = 0; Ecore_X_Atom xAtom; unsigned char* data = 0; int numberOfWindow = 0; @@ -115,33 +115,19 @@ int ewk_util_number_of_clipboard_items_get(Evas_Object* object) return 0; int result = ecore_x_window_prop_property_get(0, xAtom, XA_WINDOW, 0, &data, &numberOfWindow); if (result && numberOfWindow) - memcpy(&cbhmXWindow, data, sizeof(Ecore_X_Window)); + memcpy(&xWindow, data, sizeof(Ecore_X_Window)); if (data) free(data); - if (!cbhmXWindow) + if (!xWindow) return 0; - // 2. Send Message to get number of clipboard items. - xAtom = ecore_x_atom_get("CBHM_MSG"); - if (!xAtom) - return 0; - Ecore_X_Window xWindow = ecore_evas_software_x11_window_get(ecore_evas_ecore_evas_get(evas_object_evas_get(object))); - Display* display = static_cast(ecore_x_display_get()); - XClientMessageEvent messageEvent; - memset(&messageEvent, 0, sizeof(messageEvent)); - messageEvent.type = ClientMessage; - messageEvent.display = display; - messageEvent.window = xWindow; - messageEvent.message_type = xAtom; - messageEvent.format = 8; - snprintf(messageEvent.data.b, 20, "%s", "get count"); - XSendEvent(display, cbhmXWindow, False, NoEventMask, reinterpret_cast(&messageEvent)); ecore_x_sync(); - // 3. Get number of clipboard items. + // 2. Get number of clipboard items. xAtom = ecore_x_atom_get("CBHM_cCOUNT"); if (!xAtom) return 0; + Display* display = static_cast(ecore_x_display_get()); int format; long unsigned int numberOfItems = 0; long unsigned int bytes = 0; -- 2.7.4