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;