Title: [131729] trunk/Source/WebKit2
- Revision
- 131729
- Author
- carlo...@webkit.org
- Date
- 2012-10-18 05:16:46 -0700 (Thu, 18 Oct 2012)
Log Message
[GTK] Don't use the C API internally in WebKitHitTestResult
https://bugs.webkit.org/show_bug.cgi?id=96779
Reviewed by Xan Lopez.
Using the C++ classes directly instead of the C API wrappers we
avoid a lot of toImpl/toAPI casts, string conversions and
allocations. The code is also a lot simpler and easier to read.
* UIProcess/API/gtk/WebKitHitTestResult.cpp:
(webkitHitTestResultCreate):
(webkitHitTestResultCompare):
* UIProcess/API/gtk/WebKitHitTestResultPrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewMouseTargetChanged):
(webkitWebViewPopulateContextMenu):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (131728 => 131729)
--- trunk/Source/WebKit2/ChangeLog 2012-10-18 12:09:51 UTC (rev 131728)
+++ trunk/Source/WebKit2/ChangeLog 2012-10-18 12:16:46 UTC (rev 131729)
@@ -1,3 +1,22 @@
+2012-10-18 Carlos Garcia Campos <cgar...@igalia.com>
+
+ [GTK] Don't use the C API internally in WebKitHitTestResult
+ https://bugs.webkit.org/show_bug.cgi?id=96779
+
+ Reviewed by Xan Lopez.
+
+ Using the C++ classes directly instead of the C API wrappers we
+ avoid a lot of toImpl/toAPI casts, string conversions and
+ allocations. The code is also a lot simpler and easier to read.
+
+ * UIProcess/API/gtk/WebKitHitTestResult.cpp:
+ (webkitHitTestResultCreate):
+ (webkitHitTestResultCompare):
+ * UIProcess/API/gtk/WebKitHitTestResultPrivate.h:
+ * UIProcess/API/gtk/WebKitWebView.cpp:
+ (webkitWebViewMouseTargetChanged):
+ (webkitWebViewPopulateContextMenu):
+
2012-10-15 Balazs Kelemen <kbal...@webkit.org>
[Qt][WTR] Do a forced repaint before generating pixel results
Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitHitTestResult.cpp (131728 => 131729)
--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitHitTestResult.cpp 2012-10-18 12:09:51 UTC (rev 131728)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitHitTestResult.cpp 2012-10-18 12:16:46 UTC (rev 131729)
@@ -52,8 +52,6 @@
*
*/
-using namespace WebKit;
-
enum {
PROP_0,
@@ -237,27 +235,27 @@
g_type_class_add_private(hitTestResultClass, sizeof(WebKitHitTestResultPrivate));
}
-WebKitHitTestResult* webkitHitTestResultCreate(WKHitTestResultRef wkHitTestResult)
+WebKitHitTestResult* webkitHitTestResultCreate(WebHitTestResult* hitTestResult)
{
unsigned context = WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT;
- const String& linkURL = toImpl(wkHitTestResult)->absoluteLinkURL();
+ const String& linkURL = hitTestResult->absoluteLinkURL();
if (!linkURL.isEmpty())
context |= WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK;
- const String& imageURL = toImpl(wkHitTestResult)->absoluteImageURL();
+ const String& imageURL = hitTestResult->absoluteImageURL();
if (!imageURL.isEmpty())
context |= WEBKIT_HIT_TEST_RESULT_CONTEXT_IMAGE;
- const String& mediaURL = toImpl(wkHitTestResult)->absoluteMediaURL();
+ const String& mediaURL = hitTestResult->absoluteMediaURL();
if (!mediaURL.isEmpty())
context |= WEBKIT_HIT_TEST_RESULT_CONTEXT_MEDIA;
- if (WKHitTestResultIsContentEditable(wkHitTestResult))
+ if (hitTestResult->isContentEditable())
context |= WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE;
- const String& linkTitle = toImpl(wkHitTestResult)->linkTitle();
- const String& linkLabel = toImpl(wkHitTestResult)->linkLabel();
+ const String& linkTitle = hitTestResult->linkTitle();
+ const String& linkLabel = hitTestResult->linkLabel();
return WEBKIT_HIT_TEST_RESULT(g_object_new(WEBKIT_TYPE_HIT_TEST_RESULT,
"context", context,
@@ -274,15 +272,15 @@
return ((string.isEmpty() && cString.isNull()) || (string.utf8() == cString));
}
-bool webkitHitTestResultCompare(WebKitHitTestResult* hitTestResult, WKHitTestResultRef wkHitTestResult)
+bool webkitHitTestResultCompare(WebKitHitTestResult* hitTestResult, WebHitTestResult* webHitTestResult)
{
WebKitHitTestResultPrivate* priv = hitTestResult->priv;
- return WKHitTestResultIsContentEditable(wkHitTestResult) == webkit_hit_test_result_context_is_editable(hitTestResult)
- && stringIsEqualToCString(toImpl(wkHitTestResult)->absoluteLinkURL(), priv->linkURI)
- && stringIsEqualToCString(toImpl(wkHitTestResult)->linkTitle(), priv->linkTitle)
- && stringIsEqualToCString(toImpl(wkHitTestResult)->linkLabel(), priv->linkLabel)
- && stringIsEqualToCString(toImpl(wkHitTestResult)->absoluteImageURL(), priv->imageURI)
- && stringIsEqualToCString(toImpl(wkHitTestResult)->absoluteMediaURL(), priv->mediaURI);
+ return webHitTestResult->isContentEditable() == webkit_hit_test_result_context_is_editable(hitTestResult)
+ && stringIsEqualToCString(webHitTestResult->absoluteLinkURL(), priv->linkURI)
+ && stringIsEqualToCString(webHitTestResult->linkTitle(), priv->linkTitle)
+ && stringIsEqualToCString(webHitTestResult->linkLabel(), priv->linkLabel)
+ && stringIsEqualToCString(webHitTestResult->absoluteImageURL(), priv->imageURI)
+ && stringIsEqualToCString(webHitTestResult->absoluteMediaURL(), priv->mediaURI);
}
/**
Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitHitTestResultPrivate.h (131728 => 131729)
--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitHitTestResultPrivate.h 2012-10-18 12:09:51 UTC (rev 131728)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitHitTestResultPrivate.h 2012-10-18 12:16:46 UTC (rev 131729)
@@ -23,7 +23,9 @@
#include "WebKitHitTestResult.h"
#include "WebKitPrivate.h"
-WebKitHitTestResult* webkitHitTestResultCreate(WKHitTestResultRef);
-bool webkitHitTestResultCompare(WebKitHitTestResult*, WKHitTestResultRef);
+using namespace WebKit;
+WebKitHitTestResult* webkitHitTestResultCreate(WebHitTestResult*);
+bool webkitHitTestResultCompare(WebKitHitTestResult*, WebHitTestResult*);
+
#endif // WebKitHitTestResultPrivate_h
Modified: trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp (131728 => 131729)
--- trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp 2012-10-18 12:09:51 UTC (rev 131728)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp 2012-10-18 12:16:46 UTC (rev 131729)
@@ -1423,11 +1423,11 @@
WebKitWebViewPrivate* priv = webView->priv;
if (priv->mouseTargetHitTestResult
&& priv->mouseTargetModifiers == modifiers
- && webkitHitTestResultCompare(priv->mouseTargetHitTestResult.get(), toAPI(hitTestResult)))
+ && webkitHitTestResultCompare(priv->mouseTargetHitTestResult.get(), hitTestResult))
return;
priv->mouseTargetModifiers = modifiers;
- priv->mouseTargetHitTestResult = adoptGRef(webkitHitTestResultCreate(toAPI(hitTestResult)));
+ priv->mouseTargetHitTestResult = adoptGRef(webkitHitTestResultCreate(hitTestResult));
g_signal_emit(webView, signals[MOUSE_TARGET_CHANGED], 0, priv->mouseTargetHitTestResult.get(), modifiers);
}
@@ -1581,7 +1581,7 @@
if (webHitTestResult->isContentEditable())
webkitWebViewCreateAndAppendInputMethodsMenuItem(webView, contextMenu.get());
- GRefPtr<WebKitHitTestResult> hitTestResult = adoptGRef(webkitHitTestResultCreate(toAPI(webHitTestResult)));
+ GRefPtr<WebKitHitTestResult> hitTestResult = adoptGRef(webkitHitTestResultCreate(webHitTestResult));
GOwnPtr<GdkEvent> contextMenuEvent(webkitWebViewBaseTakeContextMenuEvent(webViewBase));
gboolean returnValue;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes