Title: [211312] trunk/Source/WebKit2
Revision
211312
Author
[email protected]
Date
2017-01-27 16:33:17 -0800 (Fri, 27 Jan 2017)

Log Message

Move smartInsertDeleteEnabled to WebPageCreationParameters
https://bugs.webkit.org/show_bug.cgi?id=167530

Reviewed by Brady Eidson.

* Shared/WebPageCreationParameters.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::initializeWebPage):
(WebKit::WebPageProxy::creationParameters):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::createWindow):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::create):
(WebKit::WebPage::WebPage):
(WebKit::m_userInterfaceLayoutDirection):
(WebKit::WebPage::reinitializeWebPage):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::createWebPage):
* WebProcess/WebProcess.h:
Instead of making a WebPage then immediately sending it a message to set smartInsertDeleteEnabled,
just call setSmartInsertDeleteEnabled at the end of the WebPage creation.  No change in behaviour.

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (211311 => 211312)


--- trunk/Source/WebKit2/ChangeLog	2017-01-28 00:27:19 UTC (rev 211311)
+++ trunk/Source/WebKit2/ChangeLog	2017-01-28 00:33:17 UTC (rev 211312)
@@ -1,3 +1,28 @@
+2017-01-27  Alex Christensen  <[email protected]>
+
+        Move smartInsertDeleteEnabled to WebPageCreationParameters
+        https://bugs.webkit.org/show_bug.cgi?id=167530
+
+        Reviewed by Brady Eidson.
+
+        * Shared/WebPageCreationParameters.h:
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::initializeWebPage):
+        (WebKit::WebPageProxy::creationParameters):
+        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
+        (WebKit::WebChromeClient::createWindow):
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::create):
+        (WebKit::WebPage::WebPage):
+        (WebKit::m_userInterfaceLayoutDirection):
+        (WebKit::WebPage::reinitializeWebPage):
+        * WebProcess/WebPage/WebPage.h:
+        * WebProcess/WebProcess.cpp:
+        (WebKit::WebProcess::createWebPage):
+        * WebProcess/WebProcess.h:
+        Instead of making a WebPage then immediately sending it a message to set smartInsertDeleteEnabled,
+        just call setSmartInsertDeleteEnabled at the end of the WebPage creation.  No change in behaviour.
+
 2017-01-27  Brady Eidson  <[email protected]>
 
         IconLoadingClient API doesn't work asynchronously.

Modified: trunk/Source/WebKit2/Shared/WebPageCreationParameters.h (211311 => 211312)


--- trunk/Source/WebKit2/Shared/WebPageCreationParameters.h	2017-01-28 00:27:19 UTC (rev 211311)
+++ trunk/Source/WebKit2/Shared/WebPageCreationParameters.h	2017-01-28 00:33:17 UTC (rev 211312)
@@ -135,6 +135,9 @@
     float textAutosizingWidth;
     bool ignoresViewportScaleLimits;
 #endif
+#if PLATFORM(COCOA)
+    bool smartInsertDeleteEnabled;
+#endif
     bool appleMailPaginationQuirkEnabled;
     bool shouldScaleViewToFitDocument;
 

Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (211311 => 211312)


--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2017-01-28 00:27:19 UTC (rev 211311)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2017-01-28 00:33:17 UTC (rev 211312)
@@ -817,10 +817,6 @@
 
     process().send(Messages::WebProcess::CreateWebPage(m_pageID, creationParameters()), 0);
 
-#if PLATFORM(COCOA)
-    send(Messages::WebPage::SetSmartInsertDeleteEnabled(m_isSmartInsertDeleteEnabled));
-#endif
-
     m_needsToFinishInitializingWebPageAfterProcessLaunch = true;
     finishInitializingWebPageAfterProcessLaunch();
 }
@@ -5582,6 +5578,9 @@
 #else
     parameters.appleMailPaginationQuirkEnabled = false;
 #endif
+#if PLATFORM(COCOA)
+    parameters.smartInsertDeleteEnabled = m_isSmartInsertDeleteEnabled;
+#endif
     parameters.shouldScaleViewToFitDocument = m_shouldScaleViewToFitDocument;
     parameters.userInterfaceLayoutDirection = m_pageClient.userInterfaceLayoutDirection();
     parameters.observedLayoutMilestones = m_observedLayoutMilestones;

Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp (211311 => 211312)


--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp	2017-01-28 00:27:19 UTC (rev 211311)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp	2017-01-28 00:33:17 UTC (rev 211312)
@@ -257,7 +257,7 @@
     if (!newPageID)
         return nullptr;
 
-    webProcess.createWebPage(newPageID, parameters);
+    webProcess.createWebPage(newPageID, WTFMove(parameters));
     return webProcess.webPage(newPageID)->corePage();
 }
 

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (211311 => 211312)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2017-01-28 00:27:19 UTC (rev 211311)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp	2017-01-28 00:33:17 UTC (rev 211312)
@@ -314,9 +314,9 @@
 
 DEFINE_DEBUG_ONLY_GLOBAL(WTF::RefCountedLeakCounter, webPageCounter, ("WebPage"));
 
-Ref<WebPage> WebPage::create(uint64_t pageID, const WebPageCreationParameters& parameters)
+Ref<WebPage> WebPage::create(uint64_t pageID, WebPageCreationParameters&& parameters)
 {
-    Ref<WebPage> page = adoptRef(*new WebPage(pageID, parameters));
+    Ref<WebPage> page = adoptRef(*new WebPage(pageID, WTFMove(parameters)));
 
     if (page->pageGroup()->isVisibleToInjectedBundle() && WebProcess::singleton().injectedBundle())
         WebProcess::singleton().injectedBundle()->didCreatePage(page.ptr());
@@ -324,7 +324,7 @@
     return page;
 }
 
-WebPage::WebPage(uint64_t pageID, const WebPageCreationParameters& parameters)
+WebPage::WebPage(uint64_t pageID, WebPageCreationParameters&& parameters)
     : m_pageID(pageID)
     , m_viewSize(parameters.viewSize)
 #if ENABLE(PRIMARY_SNAPSHOTTED_PLUGIN_HEURISTIC)
@@ -558,10 +558,11 @@
 
 #if PLATFORM(COCOA)
     m_page->settings().setContentDispositionAttachmentSandboxEnabled(true);
+    setSmartInsertDeleteEnabled(parameters.smartInsertDeleteEnabled);
 #endif
 }
 
-void WebPage::reinitializeWebPage(const WebPageCreationParameters& parameters)
+void WebPage::reinitializeWebPage(WebPageCreationParameters&& parameters)
 {
     if (m_activityState != parameters.activityState)
         setActivityState(parameters.activityState, false, Vector<uint64_t>());

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h (211311 => 211312)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h	2017-01-28 00:27:19 UTC (rev 211311)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h	2017-01-28 00:33:17 UTC (rev 211312)
@@ -214,10 +214,10 @@
 
 class WebPage : public API::ObjectImpl<API::Object::Type::BundlePage>, public IPC::MessageReceiver, public IPC::MessageSender {
 public:
-    static Ref<WebPage> create(uint64_t pageID, const WebPageCreationParameters&);
+    static Ref<WebPage> create(uint64_t pageID, WebPageCreationParameters&&);
     virtual ~WebPage();
 
-    void reinitializeWebPage(const WebPageCreationParameters&);
+    void reinitializeWebPage(WebPageCreationParameters&&);
 
     void close();
 
@@ -977,7 +977,7 @@
     void setUseIconLoadingClient(bool);
 
 private:
-    WebPage(uint64_t pageID, const WebPageCreationParameters&);
+    WebPage(uint64_t pageID, WebPageCreationParameters&&);
 
     void updateThrottleState();
     void updateUserActivity();

Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (211311 => 211312)


--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp	2017-01-28 00:27:19 UTC (rev 211311)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp	2017-01-28 00:33:17 UTC (rev 211312)
@@ -555,7 +555,7 @@
     return m_pageMap.get(pageID);
 }
 
-void WebProcess::createWebPage(uint64_t pageID, const WebPageCreationParameters& parameters)
+void WebProcess::createWebPage(uint64_t pageID, WebPageCreationParameters&& parameters)
 {
     // It is necessary to check for page existence here since during a window.open() (or targeted
     // link) the WebPage gets created both in the synchronous handler and through the normal way. 
@@ -562,12 +562,12 @@
     HashMap<uint64_t, RefPtr<WebPage>>::AddResult result = m_pageMap.add(pageID, nullptr);
     if (result.isNewEntry) {
         ASSERT(!result.iterator->value);
-        result.iterator->value = WebPage::create(pageID, parameters);
+        result.iterator->value = WebPage::create(pageID, WTFMove(parameters));
 
         // Balanced by an enableTermination in removeWebPage.
         disableTermination();
     } else
-        result.iterator->value->reinitializeWebPage(parameters);
+        result.iterator->value->reinitializeWebPage(WTFMove(parameters));
 
     ASSERT(result.iterator->value);
 }

Modified: trunk/Source/WebKit2/WebProcess/WebProcess.h (211311 => 211312)


--- trunk/Source/WebKit2/WebProcess/WebProcess.h	2017-01-28 00:27:19 UTC (rev 211311)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.h	2017-01-28 00:33:17 UTC (rev 211312)
@@ -116,7 +116,7 @@
     WebConnectionToUIProcess* webConnectionToUIProcess() const { return m_webConnection.get(); }
 
     WebPage* webPage(uint64_t pageID) const;
-    void createWebPage(uint64_t pageID, const WebPageCreationParameters&);
+    void createWebPage(uint64_t pageID, WebPageCreationParameters&&);
     void removeWebPage(uint64_t pageID);
     WebPage* focusedWebPage() const;
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to