Title: [248667] trunk/Source/WebCore
- Revision
- 248667
- Author
- you...@apple.com
- Date
- 2019-08-14 03:25:00 -0700 (Wed, 14 Aug 2019)
Log Message
Make privateBrowsingStateDidChange take an explicit SessionID
https://bugs.webkit.org/show_bug.cgi?id=200666
Reviewed by Alex Christensen.
Instead of stating that the page session ID changed and get it from the page,
pass it directly to privateBrowsingStateDidChange.
No change of behavior.
* dom/Document.cpp:
(WebCore::Document::privateBrowsingStateDidChange):
* dom/Document.h:
* dom/Element.h:
(WebCore::Element::privateBrowsingStateDidChange):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::privateBrowsingStateDidChange):
* html/HTMLMediaElement.h:
* page/Page.cpp:
(WebCore::Page::setSessionID):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (248666 => 248667)
--- trunk/Source/WebCore/ChangeLog 2019-08-14 10:13:55 UTC (rev 248666)
+++ trunk/Source/WebCore/ChangeLog 2019-08-14 10:25:00 UTC (rev 248667)
@@ -1,3 +1,25 @@
+2019-08-14 Youenn Fablet <you...@apple.com>
+
+ Make privateBrowsingStateDidChange take an explicit SessionID
+ https://bugs.webkit.org/show_bug.cgi?id=200666
+
+ Reviewed by Alex Christensen.
+
+ Instead of stating that the page session ID changed and get it from the page,
+ pass it directly to privateBrowsingStateDidChange.
+ No change of behavior.
+
+ * dom/Document.cpp:
+ (WebCore::Document::privateBrowsingStateDidChange):
+ * dom/Document.h:
+ * dom/Element.h:
+ (WebCore::Element::privateBrowsingStateDidChange):
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::privateBrowsingStateDidChange):
+ * html/HTMLMediaElement.h:
+ * page/Page.cpp:
+ (WebCore::Page::setSessionID):
+
2019-08-13 Sam Weinig <wei...@apple.com>
Fix the WPE build.
Modified: trunk/Source/WebCore/dom/Document.cpp (248666 => 248667)
--- trunk/Source/WebCore/dom/Document.cpp 2019-08-14 10:13:55 UTC (rev 248666)
+++ trunk/Source/WebCore/dom/Document.cpp 2019-08-14 10:25:00 UTC (rev 248667)
@@ -5262,19 +5262,19 @@
securityOrigin().setStorageBlockingPolicy(settings().storageBlockingPolicy());
}
-void Document::privateBrowsingStateDidChange()
+void Document::privateBrowsingStateDidChange(PAL::SessionID sessionID)
{
- m_sessionID = SessionID::emptySessionID();
+ m_sessionID = sessionID;
if (m_logger)
- m_logger->setEnabled(this, sessionID().isAlwaysOnLoggingAllowed());
+ m_logger->setEnabled(this, sessionID.isAlwaysOnLoggingAllowed());
for (auto* element : m_privateBrowsingStateChangedElements)
- element->privateBrowsingStateDidChange();
+ element->privateBrowsingStateDidChange(sessionID);
#if ENABLE(SERVICE_WORKER)
- ASSERT(sessionID().isValid());
- if (RuntimeEnabledFeatures::sharedFeatures().serviceWorkerEnabled() && m_serviceWorkerConnection && sessionID().isValid())
- setServiceWorkerConnection(&ServiceWorkerProvider::singleton().serviceWorkerConnectionForSession(sessionID()));
+ ASSERT(sessionID.isValid());
+ if (RuntimeEnabledFeatures::sharedFeatures().serviceWorkerEnabled() && m_serviceWorkerConnection && sessionID.isValid())
+ setServiceWorkerConnection(&ServiceWorkerProvider::singleton().serviceWorkerConnectionForSession(sessionID));
#endif
}
Modified: trunk/Source/WebCore/dom/Document.h (248666 => 248667)
--- trunk/Source/WebCore/dom/Document.h 2019-08-14 10:13:55 UTC (rev 248666)
+++ trunk/Source/WebCore/dom/Document.h 2019-08-14 10:25:00 UTC (rev 248667)
@@ -1092,7 +1092,7 @@
void registerForPrivateBrowsingStateChangedCallbacks(Element&);
void unregisterForPrivateBrowsingStateChangedCallbacks(Element&);
void storageBlockingStateDidChange();
- void privateBrowsingStateDidChange();
+ void privateBrowsingStateDidChange(PAL::SessionID);
#if ENABLE(VIDEO_TRACK)
void registerForCaptionPreferencesChangedCallbacks(Element&);
Modified: trunk/Source/WebCore/dom/Element.h (248666 => 248667)
--- trunk/Source/WebCore/dom/Element.h 2019-08-14 10:13:55 UTC (rev 248666)
+++ trunk/Source/WebCore/dom/Element.h 2019-08-14 10:25:00 UTC (rev 248667)
@@ -419,7 +419,7 @@
virtual void mediaVolumeDidChange() { }
// Use Document::registerForPrivateBrowsingStateChangedCallbacks() to subscribe to this.
- virtual void privateBrowsingStateDidChange() { }
+ virtual void privateBrowsingStateDidChange(PAL::SessionID) { }
virtual void willBecomeFullscreenElement();
virtual void ancestorWillEnterFullscreen() { }
Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (248666 => 248667)
--- trunk/Source/WebCore/html/HTMLMediaElement.cpp 2019-08-14 10:13:55 UTC (rev 248666)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp 2019-08-14 10:25:00 UTC (rev 248667)
@@ -6436,13 +6436,12 @@
MediaPlayer::resetMediaEngines();
}
-void HTMLMediaElement::privateBrowsingStateDidChange()
+void HTMLMediaElement::privateBrowsingStateDidChange(PAL::SessionID sessionID)
{
if (!m_player)
return;
- bool privateMode = document().page() && document().page()->usesEphemeralSession();
- m_player->setPrivateBrowsingMode(privateMode);
+ m_player->setPrivateBrowsingMode(sessionID.isEphemeral());
}
MediaControls* HTMLMediaElement::mediaControls() const
Modified: trunk/Source/WebCore/html/HTMLMediaElement.h (248666 => 248667)
--- trunk/Source/WebCore/html/HTMLMediaElement.h 2019-08-14 10:13:55 UTC (rev 248666)
+++ trunk/Source/WebCore/html/HTMLMediaElement.h 2019-08-14 10:25:00 UTC (rev 248667)
@@ -456,7 +456,7 @@
void sourceWasRemoved(HTMLSourceElement&);
void sourceWasAdded(HTMLSourceElement&);
- void privateBrowsingStateDidChange() override;
+ void privateBrowsingStateDidChange(PAL::SessionID) override;
// Media cache management.
WEBCORE_EXPORT static void setMediaCacheDirectory(const String&);
Modified: trunk/Source/WebCore/page/Page.cpp (248666 => 248667)
--- trunk/Source/WebCore/page/Page.cpp 2019-08-14 10:13:55 UTC (rev 248666)
+++ trunk/Source/WebCore/page/Page.cpp 2019-08-14 10:25:00 UTC (rev 248667)
@@ -2517,7 +2517,7 @@
for (Frame* frame = &mainFrame(); frame; frame = frame->tree().traverseNext()) {
if (!frame->document())
continue;
- frame->document()->privateBrowsingStateDidChange();
+ frame->document()->privateBrowsingStateDidChange(m_sessionID);
}
// Collect the PluginViews in to a vector to ensure that action the plug-in takes
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes