Diff
Modified: trunk/LayoutTests/ChangeLog (116546 => 116547)
--- trunk/LayoutTests/ChangeLog 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/LayoutTests/ChangeLog 2012-05-09 18:40:25 UTC (rev 116547)
@@ -1,3 +1,15 @@
+2012-05-09 Christophe Dumez <[email protected]>
+
+ [EFL][DRT] EFL's DRT needs to support LayoutTestController.dumpIconChanges()
+ https://bugs.webkit.org/show_bug.cgi?id=84435
+
+ Reviewed by Antonio Gomes.
+
+ Unskip the test checking for DumpRenderTree's support for
+ LayoutTestController's dumpIconChanges() in EFL port.
+
+ * platform/efl/Skipped:
+
2012-05-09 Csaba Osztrogonác <[email protected]>
[Qt] Unreviewed gardening.
Modified: trunk/LayoutTests/platform/efl/Skipped (116546 => 116547)
--- trunk/LayoutTests/platform/efl/Skipped 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/LayoutTests/platform/efl/Skipped 2012-05-09 18:40:25 UTC (rev 116547)
@@ -2,10 +2,6 @@
# Tests which depend on features which have not been implemented yet
# --------------------------------------------------------------------
-# Needs API to receive notifications about changed icons
-# https://bugs.webkit.org/show_bug.cgi?id=33812
-fast/dom/icon-url-property.html
-
# EFL's EventSender does not implement dumpFilenameBeingDragged
fast/events/drag-image-filename.html
Modified: trunk/Source/WebKit/efl/ChangeLog (116546 => 116547)
--- trunk/Source/WebKit/efl/ChangeLog 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/Source/WebKit/efl/ChangeLog 2012-05-09 18:40:25 UTC (rev 116547)
@@ -1,3 +1,22 @@
+2012-05-09 Christophe Dumez <[email protected]>
+
+ [EFL][DRT] EFL's DRT needs to support LayoutTestController.dumpIconChanges()
+ https://bugs.webkit.org/show_bug.cgi?id=84435
+
+ Reviewed by Antonio Gomes.
+
+ Emit a "icon,changed" signal on the frame when its favion changed.
+ Clarify that the "icon,loaded" signal is only emitted for the main
+ frame.
+
+ * WebCoreSupport/FrameLoaderClientEfl.cpp:
+ (WebCore::FrameLoaderClientEfl::dispatchDidReceiveIcon):
+ (WebCore::FrameLoaderClientEfl::dispatchDidChangeIcons):
+ * ewk/ewk_frame.cpp:
+ (ewk_frame_icon_changed):
+ * ewk/ewk_frame.h:
+ * ewk/ewk_private.h:
+
2012-05-09 Mikhail Pozdnyakov <[email protected]>
[EFL][DRT] LayoutTestController addUserScript implementation
Modified: trunk/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp (116546 => 116547)
--- trunk/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp 2012-05-09 18:40:25 UTC (rev 116547)
@@ -596,9 +596,8 @@
void FrameLoaderClientEfl::dispatchDidReceiveIcon()
{
- /* report received favicon only for main frame. */
- if (ewk_view_frame_main_get(m_view) != m_frame)
- return;
+ // IconController loads icons only for the main frame.
+ ASSERT(ewk_view_frame_main_get(m_view) == m_frame);
ewk_view_frame_main_icon_received(m_view);
}
@@ -621,9 +620,11 @@
ewk_view_title_set(m_view, cs.data());
}
-void FrameLoaderClientEfl::dispatchDidChangeIcons(WebCore::IconType)
+void FrameLoaderClientEfl::dispatchDidChangeIcons(WebCore::IconType iconType)
{
- notImplemented();
+ // Other touch types are apple-specific
+ ASSERT(iconType == WebCore::Favicon);
+ ewk_frame_icon_changed(m_frame);
}
void FrameLoaderClientEfl::dispatchDidCommitLoad()
Modified: trunk/Source/WebKit/efl/ewk/ewk_frame.cpp (116546 => 116547)
--- trunk/Source/WebKit/efl/ewk/ewk_frame.cpp 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/Source/WebKit/efl/ewk/ewk_frame.cpp 2012-05-09 18:40:25 UTC (rev 116547)
@@ -1724,6 +1724,20 @@
/**
* @internal
+ * Reports frame favicon changed.
+ *
+ * @param ewkFrame Frame.
+ *
+ * Emits signal: "icon,changed" with no parameters.
+ */
+void ewk_frame_icon_changed(Evas_Object* ewkFrame)
+{
+ DBG("ewkFrame=%p", ewkFrame);
+ evas_object_smart_callback_call(ewkFrame, "icon,changed", 0);
+}
+
+/**
+ * @internal
* Reports uri changed and swap internal string reference.
*
* Emits signal: "uri,changed" with new uri as parameter.
Modified: trunk/Source/WebKit/efl/ewk/ewk_frame.h (116546 => 116547)
--- trunk/Source/WebKit/efl/ewk/ewk_frame.h 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/Source/WebKit/efl/ewk/ewk_frame.h 2012-05-09 18:40:25 UTC (rev 116547)
@@ -39,6 +39,7 @@
* were changed due new layout, script actions or any other events.
* - "editorclient,contents,changed", void: reports that editor client's
* contents were changed
+ * - "icon,changed", void: frame favicon changed.
* - "load,committed", void: reports load committed.
* - "load,document,finished", void: frame finished loading the document.
* - "load,error", const Ewk_Frame_Load_Error*: reports load failed
Modified: trunk/Source/WebKit/efl/ewk/ewk_private.h (116546 => 116547)
--- trunk/Source/WebKit/efl/ewk/ewk_private.h 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/Source/WebKit/efl/ewk/ewk_private.h 2012-05-09 18:40:25 UTC (rev 116547)
@@ -241,6 +241,7 @@
void ewk_frame_view_create_for_view(Evas_Object* ewkFrame, Evas_Object* view);
bool ewk_frame_uri_changed(Evas_Object* ewkFrame);
void ewk_frame_force_layout(Evas_Object* ewkFrame);
+void ewk_frame_icon_changed(Evas_Object* ewkFrame);
WTF::PassRefPtr<WebCore::Widget> ewk_frame_plugin_create(Evas_Object* ewkFrame, const WebCore::IntSize& pluginSize, WebCore::HTMLPlugInElement* element, const WebCore::KURL& url, const WTF::Vector<WTF::String>& paramNames, const WTF::Vector<WTF::String>& paramValues, const WTF::String& mimeType, bool loadManually);
Modified: trunk/Tools/ChangeLog (116546 => 116547)
--- trunk/Tools/ChangeLog 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/Tools/ChangeLog 2012-05-09 18:40:25 UTC (rev 116547)
@@ -1,3 +1,20 @@
+2012-05-09 Christophe Dumez <[email protected]>
+
+ [EFL][DRT] EFL's DRT needs to support LayoutTestController.dumpIconChanges()
+ https://bugs.webkit.org/show_bug.cgi?id=84435
+
+ Reviewed by Antonio Gomes.
+
+ Catch the "icon,changed" signal on the frames in EFL's DumpRenderTree
+ to support LayoutTestController's dumpIconChanges().
+
+ * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
+ (DumpRenderTreeChrome::createView):
+ (DumpRenderTreeChrome::onFrameIconChanged):
+ (DumpRenderTreeChrome::onFrameCreated):
+ * DumpRenderTree/efl/DumpRenderTreeChrome.h:
+ (DumpRenderTreeChrome):
+
2012-05-09 Dominik Röttsches <[email protected]>
webkit-patch upload Fails Behind Load-balancing Proxies
Modified: trunk/Tools/DumpRenderTree/efl/DumpRenderTreeChrome.cpp (116546 => 116547)
--- trunk/Tools/DumpRenderTree/efl/DumpRenderTreeChrome.cpp 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/Tools/DumpRenderTree/efl/DumpRenderTreeChrome.cpp 2012-05-09 18:40:25 UTC (rev 116547)
@@ -108,6 +108,7 @@
evas_object_smart_callback_add(view, "frame,created", onFrameCreated, 0);
Evas_Object* mainFrame = ewk_view_frame_main_get(view);
+ evas_object_smart_callback_add(mainFrame, "icon,changed", onFrameIconChanged, 0);
evas_object_smart_callback_add(mainFrame, "load,provisional", onFrameProvisionalLoad, 0);
evas_object_smart_callback_add(mainFrame, "load,committed", onFrameLoadCommitted, 0);
evas_object_smart_callback_add(mainFrame, "load,finished", onFrameLoadFinished, 0);
@@ -420,6 +421,14 @@
printf("UI DELEGATE STATUS CALLBACK: setStatusText:%s\n", statusbarText);
}
+void DumpRenderTreeChrome::onFrameIconChanged(void*, Evas_Object* frame, void*)
+{
+ if (!done && gLayoutTestController->dumpIconChanges()) {
+ const String frameName(DumpRenderTreeSupportEfl::suitableDRTFrameName(frame));
+ printf("%s - didChangeIcons\n", frameName.utf8().data());
+ }
+}
+
void DumpRenderTreeChrome::onTitleChanged(void*, Evas_Object*, void* eventInfo)
{
if (!gLayoutTestController->dumpTitleChanges())
@@ -508,6 +517,7 @@
{
Evas_Object* frame = static_cast<Evas_Object*>(eventInfo);
+ evas_object_smart_callback_add(frame, "icon,changed", onFrameIconChanged, 0);
evas_object_smart_callback_add(frame, "load,provisional", onFrameProvisionalLoad, 0);
evas_object_smart_callback_add(frame, "load,committed", onFrameLoadCommitted, 0);
evas_object_smart_callback_add(frame, "load,finished", onFrameLoadFinished, 0);
Modified: trunk/Tools/DumpRenderTree/efl/DumpRenderTreeChrome.h (116546 => 116547)
--- trunk/Tools/DumpRenderTree/efl/DumpRenderTreeChrome.h 2012-05-09 18:30:58 UTC (rev 116546)
+++ trunk/Tools/DumpRenderTree/efl/DumpRenderTreeChrome.h 2012-05-09 18:40:25 UTC (rev 116547)
@@ -91,6 +91,8 @@
static void onFrameCreated(void*, Evas_Object*, void*);
+ static void onFrameIconChanged(void*, Evas_Object*, void*);
+
static void onFrameProvisionalLoad(void*, Evas_Object*, void*);
static void onFrameLoadCommitted(void*, Evas_Object*, void*);