Title: [137776] trunk/Source
Revision
137776
Author
[email protected]
Date
2012-12-14 14:55:27 -0800 (Fri, 14 Dec 2012)

Log Message

Allow embedder to observe changes to frame names
https://bugs.webkit.org/show_bug.cgi?id=104404

Reviewed by Darin Fisher.

Source/WebCore:

* loader/FrameLoaderClient.h:
(WebCore::FrameLoaderClient::didChangeName):
(FrameLoaderClient):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::setName):

Source/WebKit/chromium:

* public/WebFrameClient.h:
(WebFrameClient):
(WebKit::WebFrameClient::didChangeName):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::didChangeName):
(WebKit):
* src/FrameLoaderClientImpl.h:
(FrameLoaderClientImpl):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (137775 => 137776)


--- trunk/Source/WebCore/ChangeLog	2012-12-14 22:51:13 UTC (rev 137775)
+++ trunk/Source/WebCore/ChangeLog	2012-12-14 22:55:27 UTC (rev 137776)
@@ -1,3 +1,16 @@
+2012-12-14  Fady Samuel  <[email protected]>
+
+        Allow embedder to observe changes to frame names
+        https://bugs.webkit.org/show_bug.cgi?id=104404
+
+        Reviewed by Darin Fisher.
+
+        * loader/FrameLoaderClient.h:
+        (WebCore::FrameLoaderClient::didChangeName):
+        (FrameLoaderClient):
+        * page/DOMWindow.cpp:
+        (WebCore::DOMWindow::setName):
+
 2012-12-14  James Simonsen  <[email protected]>
 
         [Resource Timing] Properly report reused connections

Modified: trunk/Source/WebCore/loader/FrameLoaderClient.h (137775 => 137776)


--- trunk/Source/WebCore/loader/FrameLoaderClient.h	2012-12-14 22:51:13 UTC (rev 137775)
+++ trunk/Source/WebCore/loader/FrameLoaderClient.h	2012-12-14 22:55:27 UTC (rev 137776)
@@ -340,6 +340,8 @@
         // Returns true if the embedder intercepted the postMessage call
         virtual bool willCheckAndDispatchMessageEvent(SecurityOrigin* /*target*/, MessageEvent*) const { return false; }
 
+        virtual void didChangeName(const String&) { }
+
 #if ENABLE(WEB_INTENTS)
         virtual void dispatchIntent(PassRefPtr<IntentRequest>) = 0;
 #endif

Modified: trunk/Source/WebCore/page/DOMWindow.cpp (137775 => 137776)


--- trunk/Source/WebCore/page/DOMWindow.cpp	2012-12-14 22:51:13 UTC (rev 137775)
+++ trunk/Source/WebCore/page/DOMWindow.cpp	2012-12-14 22:55:27 UTC (rev 137776)
@@ -1238,6 +1238,7 @@
         return;
 
     m_frame->tree()->setName(string);
+    m_frame->loader()->client()->didChangeName(string);
 }
 
 void DOMWindow::setStatus(const String& string) 

Modified: trunk/Source/WebKit/chromium/ChangeLog (137775 => 137776)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-12-14 22:51:13 UTC (rev 137775)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-12-14 22:55:27 UTC (rev 137776)
@@ -1,3 +1,19 @@
+2012-12-14  Fady Samuel  <[email protected]>
+
+        Allow embedder to observe changes to frame names
+        https://bugs.webkit.org/show_bug.cgi?id=104404
+
+        Reviewed by Darin Fisher.
+
+        * public/WebFrameClient.h:
+        (WebFrameClient):
+        (WebKit::WebFrameClient::didChangeName):
+        * src/FrameLoaderClientImpl.cpp:
+        (WebKit::FrameLoaderClientImpl::didChangeName):
+        (WebKit):
+        * src/FrameLoaderClientImpl.h:
+        (FrameLoaderClientImpl):
+
 2012-12-14  Joshua Bell  <[email protected]>
 
         [Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr<IDBDatabaseBackendInterface>)

Modified: trunk/Source/WebKit/chromium/public/WebFrameClient.h (137775 => 137776)


--- trunk/Source/WebKit/chromium/public/WebFrameClient.h	2012-12-14 22:51:13 UTC (rev 137775)
+++ trunk/Source/WebKit/chromium/public/WebFrameClient.h	2012-12-14 22:55:27 UTC (rev 137776)
@@ -120,6 +120,9 @@
     // when the document is being unloaded, due to new one committing.
     virtual void willClose(WebFrame*) { }
 
+    // This frame's name has changed.
+    virtual void didChangeName(WebFrame*, const WebString&) { }
+
     // Load commands -------------------------------------------------------
 
     // The client should handle the navigation externally.

Modified: trunk/Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp (137775 => 137776)


--- trunk/Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp	2012-12-14 22:51:13 UTC (rev 137775)
+++ trunk/Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp	2012-12-14 22:55:27 UTC (rev 137776)
@@ -1635,6 +1635,13 @@
         source, m_webFrame, WebSecurityOrigin(target), WebDOMMessageEvent(event));
 }
 
+void FrameLoaderClientImpl::didChangeName(const String& name)
+{
+    if (!m_webFrame->client())
+        return;
+    m_webFrame->client()->didChangeName(m_webFrame, name);
+}
+
 #if ENABLE(WEB_INTENTS_TAG)
 void FrameLoaderClientImpl::registerIntentService(
         const String& action,

Modified: trunk/Source/WebKit/chromium/src/FrameLoaderClientImpl.h (137775 => 137776)


--- trunk/Source/WebKit/chromium/src/FrameLoaderClientImpl.h	2012-12-14 22:51:13 UTC (rev 137775)
+++ trunk/Source/WebKit/chromium/src/FrameLoaderClientImpl.h	2012-12-14 22:55:27 UTC (rev 137776)
@@ -209,6 +209,7 @@
 
     virtual PassRefPtr<WebCore::FrameNetworkingContext> createNetworkingContext();
     virtual bool willCheckAndDispatchMessageEvent(WebCore::SecurityOrigin* target, WebCore::MessageEvent*) const;
+    virtual void didChangeName(const String&);
 
 #if ENABLE(WEB_INTENTS_TAG)
     virtual void registerIntentService(const String& action,
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to