WebKit Bugzilla
Attachment 369303 Details for
Bug 197271
: [WPE][GTK] Add WebKitWebPage::did-associate-form-controls-for-frame and deprecate original did-associate-form-controls
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-197271-20190507131438.patch (text/plain), 20.63 KB, created by
Michael Catanzaro
on 2019-05-07 11:14:39 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Michael Catanzaro
Created:
2019-05-07 11:14:39 PDT
Size:
20.63 KB
patch
obsolete
>Subversion Revision: 245017 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 26177d0480c0ee5f982bbef8fd38d16ff051bbee..d792b97a27590ed86970b3c7408a1a6392f5c0a2 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,15 @@ >+2019-05-07 Michael Catanzaro <mcatanzaro@igalia.com> >+ >+ [WPE][GTK] Add WebKitWebPage::did-associate-form-controls-for-frame and deprecate original did-associate-form-controls >+ https://bugs.webkit.org/show_bug.cgi?id=197271 >+ >+ Reviewed by Youenn Fablet. >+ >+ * dom/Document.cpp: >+ (WebCore::Document::didAssociateFormControlsTimerFired): >+ * loader/EmptyClients.h: >+ * page/ChromeClient.h: >+ > 2019-05-07 Antti Koivisto <antti@apple.com> > > <body> with overflow:hidden CSS is scrollable on iOS >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index 2dd38e246a5efc6e957a40e1f82829afaf03c0e0..6d00e576d7dab40695703c4e762ad71afa154c8c 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,24 @@ >+2019-05-07 Michael Catanzaro <mcatanzaro@igalia.com> >+ >+ [WPE][GTK] Add WebKitWebPage::did-associate-form-controls-for-frame and deprecate original did-associate-form-controls >+ https://bugs.webkit.org/show_bug.cgi?id=197271 >+ >+ Reviewed by Youenn Fablet. >+ >+ * WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h: >+ * WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp: >+ (webkit_web_page_class_init): >+ * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm: >+ (-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): >+ * WebProcess/InjectedBundle/APIInjectedBundleFormClient.h: >+ (API::InjectedBundle::FormClient::didAssociateFormControls): >+ * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp: >+ (WebKit::InjectedBundlePageFormClient::didAssociateFormControls): >+ * WebProcess/InjectedBundle/InjectedBundlePageFormClient.h: >+ * WebProcess/WebCoreSupport/WebChromeClient.cpp: >+ (WebKit::WebChromeClient::didAssociateFormControls): >+ * WebProcess/WebCoreSupport/WebChromeClient.h: >+ > 2019-05-07 Antti Koivisto <antti@apple.com> > > <body> with overflow:hidden shouldn't be keyboard scrollable on iOS >diff --git a/Source/WebCore/dom/Document.cpp b/Source/WebCore/dom/Document.cpp >index ce429277c7eac60022375d9cb89e8d651d43daa0..7791a368531515e32960e616d5fe295ec287da96 100644 >--- a/Source/WebCore/dom/Document.cpp >+++ b/Source/WebCore/dom/Document.cpp >@@ -6959,8 +6959,10 @@ void Document::didAssociateFormControlsTimerFired() > { > auto vector = copyToVector(m_associatedFormControls); > m_associatedFormControls.clear(); >- if (auto* page = this->page()) >- page->chrome().client().didAssociateFormControls(vector); >+ if (auto* page = this->page()) { >+ ASSERT(m_frame); >+ page->chrome().client().didAssociateFormControls(vector, *m_frame); >+ } > } > > void Document::setCachedDOMCookies(const String& cookies) >diff --git a/Source/WebCore/loader/EmptyClients.h b/Source/WebCore/loader/EmptyClients.h >index 6a663f826f3ae49c8c05bf03e3062ed7bb185630..d45228eed20eb995f5df2a462fb4e34b73b98f35 100644 >--- a/Source/WebCore/loader/EmptyClients.h >+++ b/Source/WebCore/loader/EmptyClients.h >@@ -194,7 +194,7 @@ class EmptyChromeClient : public ChromeClient { > > bool isEmptyChromeClient() const final { return true; } > >- void didAssociateFormControls(const Vector<RefPtr<Element>>&) final { } >+ void didAssociateFormControls(const Vector<RefPtr<Element>>&, Frame&) final { } > bool shouldNotifyOnFormChanges() final { return false; } > > RefPtr<Icon> createIconForFiles(const Vector<String>& /* filenames */) final { return nullptr; } >diff --git a/Source/WebCore/page/ChromeClient.h b/Source/WebCore/page/ChromeClient.h >index cddf13cae88930e236e9409f92efc2ffd40bf5d9..a8cf8eefadcecea284d718c75f86b805008a6a7f 100644 >--- a/Source/WebCore/page/ChromeClient.h >+++ b/Source/WebCore/page/ChromeClient.h >@@ -426,7 +426,7 @@ public: > virtual String plugInExtraStyleSheet() const { return String(); } > virtual String plugInExtraScript() const { return String(); } > >- virtual void didAssociateFormControls(const Vector<RefPtr<Element>>&) { }; >+ virtual void didAssociateFormControls(const Vector<RefPtr<Element>>&, Frame&) { }; > virtual bool shouldNotifyOnFormChanges() { return false; }; > > virtual void didAddHeaderLayer(GraphicsLayer&) { } >diff --git a/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h b/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h >index 3fc33b98d166f2056d9ba70e96bffe5fdd68bfa2..362a44dfa0c37644ba7d073b42745e53a783c795 100644 >--- a/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h >+++ b/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h >@@ -39,6 +39,7 @@ typedef void (*WKBundlePageWillSendSubmitEventCallback)(WKBundlePageRef page, WK > typedef void (*WKBundlePageDidFocusTextFieldCallback)(WKBundlePageRef page, WKBundleNodeHandleRef htmlInputElementHandle, WKBundleFrameRef frame, const void* clientInfo); > typedef bool (*WKBundlePageShouldNotifyOnFormChangesCallback)(WKBundlePageRef page, const void* clientInfo); > typedef void (*WKBundlePageDidAssociateFormControlsCallback)(WKBundlePageRef page, WKArrayRef elementHandles, const void* clientInfo); >+typedef void (*WKBundlePageDidAssociateFormControlsForFrameCallback)(WKBundlePageRef page, WKArrayRef elementHandles, WKBundleFrameRef frame, const void* clientInfo); > > typedef struct WKBundlePageFormClientBase { > int version; >@@ -92,4 +93,27 @@ typedef struct WKBundlePageFormClientV2 { > WKBundlePageDidAssociateFormControlsCallback didAssociateFormControls; > } WKBundlePageFormClientV2; > >+typedef struct WKBundlePageFormClientV3 { >+ WKBundlePageFormClientBase base; >+ >+ // Version 0. >+ WKBundlePageTextFieldDidBeginEditingCallback textFieldDidBeginEditing; >+ WKBundlePageTextFieldDidEndEditingCallback textFieldDidEndEditing; >+ WKBundlePageTextDidChangeInTextFieldCallback textDidChangeInTextField; >+ WKBundlePageTextDidChangeInTextAreaCallback textDidChangeInTextArea; >+ WKBundlePageShouldPerformActionInTextFieldCallback shouldPerformActionInTextField; >+ WKBundlePageWillSubmitFormCallback willSubmitForm; >+ >+ // Version 1. >+ WKBundlePageWillSendSubmitEventCallback willSendSubmitEvent; >+ >+ // version 2. >+ WKBundlePageDidFocusTextFieldCallback didFocusTextField; >+ WKBundlePageShouldNotifyOnFormChangesCallback shouldNotifyOnFormChanges; >+ WKBundlePageDidAssociateFormControlsCallback didAssociateFormControls; >+ >+ // version 3. >+ WKBundlePageDidAssociateFormControlsForFrameCallback didAssociateFormControlsForFrame; >+} WKBundlePageFormClientV3; >+ > #endif // WKBundlePageFormClient_h >diff --git a/Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp b/Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp >index 47f0f04ce7f905d2b52217156e5c8481ae3ca6a2..02d68b6711250efc0f8fc682d3e8f375cc736c46 100644 >--- a/Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp >+++ b/Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp >@@ -68,6 +68,7 @@ enum { > CONTEXT_MENU, > CONSOLE_MESSAGE_SENT, > FORM_CONTROLS_ASSOCIATED, >+ FORM_CONTROLS_ASSOCIATED_FOR_FRAME, > WILL_SUBMIT_FORM, > > LAST_SIGNAL >@@ -380,13 +381,14 @@ public: > fireFormSubmissionEvent(WEBKIT_FORM_SUBMISSION_WILL_SEND_DOM_EVENT, formElement, frame, sourceFrame, values); > } > >- void didAssociateFormControls(WebPage*, const Vector<RefPtr<Element>>& elements) override >+ void didAssociateFormControls(WebPage*, const Vector<RefPtr<Element>>& elements, WebFrame* frame) override > { > GRefPtr<GPtrArray> formElements = adoptGRef(g_ptr_array_sized_new(elements.size())); > for (size_t i = 0; i < elements.size(); ++i) > g_ptr_array_add(formElements.get(), WebKit::kit(elements[i].get())); > > g_signal_emit(m_webPage, signals[FORM_CONTROLS_ASSOCIATED], 0, formElements.get()); >+ g_signal_emit(m_webPage, signals[FORM_CONTROLS_ASSOCIATED_FOR_FRAME], 0, formElements.get(), webkitFrameGetOrCreate(frame)); > } > > bool shouldNotifyOnFormChanges(WebPage*) override { return true; } >@@ -565,16 +567,47 @@ static void webkit_web_page_class_init(WebKitWebPageClass* klass) > * keep them alive after the signal handler returns. > * > * Since: 2.16 >+ * >+ * Deprecated: 2.26, use WebKitWebPage::form-controls-associated-for-frame instead. > */ > signals[FORM_CONTROLS_ASSOCIATED] = g_signal_new( > "form-controls-associated", > G_TYPE_FROM_CLASS(klass), >- G_SIGNAL_RUN_LAST, >+ static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_DEPRECATED), > 0, 0, nullptr, > g_cclosure_marshal_VOID__BOXED, > G_TYPE_NONE, 1, > G_TYPE_PTR_ARRAY); > >+ /** >+ * WebKitWebPage::form-controls-associated-for-frame: >+ * @web_page: the #WebKitWebPage on which the signal is emitted >+ * @elements: (element-type WebKitDOMElement) (transfer none): a #GPtrArray of >+ * #WebKitDOMElement with the list of forms in the page >+ * @frame: the #WebKitFrame >+ * >+ * Emitted after form elements (or form associated elements) are associated to a particular web >+ * page. This is useful to implement form auto filling for web pages where form fields are added >+ * dynamically. This signal might be emitted multiple times for the same web page. >+ * >+ * Note that this signal could be also emitted when form controls are moved between forms. In >+ * that case, the @elements array carries the list of those elements which have moved. >+ * >+ * Clients should take a reference to the members of the @elements array if it is desired to >+ * keep them alive after the signal handler returns. >+ * >+ * Since: 2.26 >+ */ >+ signals[FORM_CONTROLS_ASSOCIATED_FOR_FRAME] = g_signal_new( >+ "form-controls-associated-for-frame", >+ G_TYPE_FROM_CLASS(klass), >+ G_SIGNAL_RUN_LAST, >+ 0, 0, nullptr, >+ g_cclosure_marshal_generic, >+ G_TYPE_NONE, 2, >+ G_TYPE_PTR_ARRAY, >+ WEBKIT_TYPE_FRAME); >+ > /** > * WebKitWebPage::will-submit-form: > * @web_page: the #WebKitWebPage on which the signal is emitted >diff --git a/Source/WebKit/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm b/Source/WebKit/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm >index 80caa2d597f517e3e861197183237c1162db4dbf..48800bb3179065e4e73293069054680e434af1ff 100644 >--- a/Source/WebKit/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm >+++ b/Source/WebKit/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm >@@ -526,7 +526,7 @@ - (void)_setFormDelegate:(id <WKWebProcessPlugInFormDelegatePrivate>)formDelegat > return [formDelegate _webProcessPlugInBrowserContextControllerShouldNotifyOnFormChanges:m_controller]; > } > >- void didAssociateFormControls(WebKit::WebPage*, const Vector<RefPtr<WebCore::Element>>& elements) override >+ void didAssociateFormControls(WebKit::WebPage*, const Vector<RefPtr<WebCore::Element>>& elements, WebKit::WebFrame*) override > { > auto formDelegate = m_controller->_formDelegate.get(); > >diff --git a/Source/WebKit/WebProcess/InjectedBundle/APIInjectedBundleFormClient.h b/Source/WebKit/WebProcess/InjectedBundle/APIInjectedBundleFormClient.h >index 92ebcfe013cc379896db7f143393710cd5b12ee9..0395b323f760123a07ba096e42b98dbe18d2f464 100644 >--- a/Source/WebKit/WebProcess/InjectedBundle/APIInjectedBundleFormClient.h >+++ b/Source/WebKit/WebProcess/InjectedBundle/APIInjectedBundleFormClient.h >@@ -70,7 +70,7 @@ public: > virtual bool shouldPerformActionInTextField(WebKit::WebPage*, WebCore::HTMLInputElement*, InputFieldAction, WebKit::WebFrame*) { return false; } > virtual void willSubmitForm(WebKit::WebPage*, WebCore::HTMLFormElement*, WebKit::WebFrame*, WebKit::WebFrame*, const Vector<std::pair<WTF::String, WTF::String>>&, RefPtr<API::Object>& userData) { UNUSED_PARAM(userData); } > virtual void willSendSubmitEvent(WebKit::WebPage*, WebCore::HTMLFormElement*, WebKit::WebFrame*, WebKit::WebFrame*, const Vector<std::pair<WTF::String, WTF::String>>&) { } >- virtual void didAssociateFormControls(WebKit::WebPage*, const Vector<RefPtr<WebCore::Element>>&) { } >+ virtual void didAssociateFormControls(WebKit::WebPage*, const Vector<RefPtr<WebCore::Element>>&, WebKit::WebFrame*) { } > virtual bool shouldNotifyOnFormChanges(WebKit::WebPage*) { return false; } > virtual void willBeginInputSession(WebKit::WebPage*, WebCore::Element*, WebKit::WebFrame*, bool userIsInteracting, RefPtr<API::Object>& userData) { UNUSED_PARAM(userData); } > }; >diff --git a/Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp b/Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp >index 02b5b53f2fab966b377080c43f454c57a39442e9..10f8fef9279ec55a32f654dd7934488a06075182 100644 >--- a/Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp >+++ b/Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp >@@ -157,9 +157,9 @@ void InjectedBundlePageFormClient::willSubmitForm(WebPage* page, HTMLFormElement > userData = adoptRef(toImpl(userDataToPass)); > } > >-void InjectedBundlePageFormClient::didAssociateFormControls(WebPage* page, const Vector<RefPtr<WebCore::Element>>& elements) >+void InjectedBundlePageFormClient::didAssociateFormControls(WebPage* page, const Vector<RefPtr<WebCore::Element>>& elements, WebFrame* frame) > { >- if (!m_client.didAssociateFormControls) >+ if (!m_client.didAssociateFormControls && !m_client.didAssociateFormControlsForFrame) > return; > > Vector<RefPtr<API::Object>> elementHandles; >@@ -168,7 +168,12 @@ void InjectedBundlePageFormClient::didAssociateFormControls(WebPage* page, const > for (const auto& element : elements) > elementHandles.uncheckedAppend(InjectedBundleNodeHandle::getOrCreate(element.get())); > >- m_client.didAssociateFormControls(toAPI(page), toAPI(API::Array::create(WTFMove(elementHandles)).ptr()), m_client.base.clientInfo); >+ if (!m_client.didAssociateFormControlsForFrame) { >+ m_client.didAssociateFormControls(toAPI(page), toAPI(API::Array::create(WTFMove(elementHandles)).ptr()), m_client.base.clientInfo); >+ return; >+ } >+ >+ m_client.didAssociateFormControlsForFrame(toAPI(page), toAPI(API::Array::create(WTFMove(elementHandles)).ptr()), toAPI(frame), m_client.base.clientInfo); > } > > bool InjectedBundlePageFormClient::shouldNotifyOnFormChanges(WebPage* page) >diff --git a/Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.h b/Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.h >index e9df5313db0309d2bf6101917723ffca1139442f..e35b21f58748a548d5a30938bf061df19b919e7b 100644 >--- a/Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.h >+++ b/Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.h >@@ -33,7 +33,7 @@ > namespace API { > > template<> struct ClientTraits<WKBundlePageFormClientBase> { >- typedef std::tuple<WKBundlePageFormClientV0, WKBundlePageFormClientV1, WKBundlePageFormClientV2> Versions; >+ typedef std::tuple<WKBundlePageFormClientV0, WKBundlePageFormClientV1, WKBundlePageFormClientV2, WKBundlePageFormClientV3> Versions; > }; > } > >@@ -51,7 +51,7 @@ public: > bool shouldPerformActionInTextField(WebPage*, WebCore::HTMLInputElement*, InputFieldAction, WebFrame*) override; > void willSubmitForm(WebPage*, WebCore::HTMLFormElement*, WebFrame*, WebFrame* sourceFrame, const Vector<std::pair<String, String>>&, RefPtr<API::Object>& userData) override; > void willSendSubmitEvent(WebPage*, WebCore::HTMLFormElement*, WebFrame*, WebFrame* sourceFrame, const Vector<std::pair<String, String>>&) override; >- void didAssociateFormControls(WebPage*, const Vector<RefPtr<WebCore::Element>>&) override; >+ void didAssociateFormControls(WebPage*, const Vector<RefPtr<WebCore::Element>>&, WebFrame*) override; > bool shouldNotifyOnFormChanges(WebPage*) override; > }; > >diff --git a/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp b/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp >index 9baa84d38ae0801118a12b81e204ea2e8f0e9ef4..d5512194ab21fff74b78b51e805e93f0ce6fc720 100644 >--- a/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp >+++ b/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp >@@ -845,9 +845,11 @@ RefPtr<Icon> WebChromeClient::createIconForFiles(const Vector<String>& filenames > > #endif > >-void WebChromeClient::didAssociateFormControls(const Vector<RefPtr<Element>>& elements) >+void WebChromeClient::didAssociateFormControls(const Vector<RefPtr<Element>>& elements, WebCore::Frame& frame) > { >- return m_page.injectedBundleFormClient().didAssociateFormControls(&m_page, elements); >+ WebFrame* webFrame = WebFrame::fromCoreFrame(frame); >+ ASSERT(webFrame); >+ return m_page.injectedBundleFormClient().didAssociateFormControls(&m_page, elements, webFrame); > } > > bool WebChromeClient::shouldNotifyOnFormChanges() >diff --git a/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h b/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h >index 705b25e9fc912a63b5b4577ef2b8d5e0717a3540..beda1a17db0d2683ce346b7206ed9c21be911ee3 100644 >--- a/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h >+++ b/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h >@@ -200,7 +200,7 @@ private: > void requestPointerUnlock() final; > #endif > >- void didAssociateFormControls(const Vector<RefPtr<WebCore::Element>>&) final; >+ void didAssociateFormControls(const Vector<RefPtr<WebCore::Element>>&, WebCore::Frame&) final; > bool shouldNotifyOnFormChanges() final; > > bool selectItemWritingDirectionIsNatural() final; >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index 7ed590a54fd3104ac0bd6c28f8332f61e832f212..7b110d21783a4b279d122b245201b726bcdb048e 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,15 @@ >+2019-05-07 Michael Catanzaro <mcatanzaro@igalia.com> >+ >+ [WPE][GTK] Add WebKitWebPage::did-associate-form-controls-for-frame and deprecate original did-associate-form-controls >+ https://bugs.webkit.org/show_bug.cgi?id=197271 >+ >+ Reviewed by Youenn Fablet. >+ >+ * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp: >+ (formControlsAssociatedForFrameCallback): >+ (pageCreatedCallback): >+ (formControlsAssociatedCallback): Deleted. >+ > 2019-05-07 Adrian Perez de Castro <aperez@igalia.com> > > [Flatpak] webkit-build fails due to missing GTK2 in build environment >diff --git a/Tools/TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp b/Tools/TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp >index 266455523cce1fb3bdc888cc1eafcce9816b1e77..1a565844daa02ba62a9acee696ef505b4164012a 100644 >--- a/Tools/TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp >+++ b/Tools/TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp >@@ -316,9 +316,8 @@ static void emitFormControlsAssociated(GDBusConnection* connection, const char* > g_assert_true(ok); > } > >-static void formControlsAssociatedCallback(WebKitWebPage* webPage, GPtrArray* formElements, WebKitWebExtension* extension) >+static void formControlsAssociatedForFrameCallback(WebKitWebPage* webPage, GPtrArray* formElements, WebKitFrame* frame, WebKitWebExtension* extension) > { >- auto* frame = webkit_web_page_get_main_frame(webPage); > GString* formIdsBuilder = g_string_new(nullptr); > for (guint i = 0; i < formElements->len; ++i) { > g_assert_true(WEBKIT_DOM_IS_ELEMENT(g_ptr_array_index(formElements, i))); >@@ -413,7 +412,7 @@ static void pageCreatedCallback(WebKitWebExtension* extension, WebKitWebPage* we > g_signal_connect(webPage, "send-request", G_CALLBACK(sendRequestCallback), nullptr); > g_signal_connect(webPage, "console-message-sent", G_CALLBACK(consoleMessageSentCallback), nullptr); > g_signal_connect(webPage, "context-menu", G_CALLBACK(contextMenuCallback), nullptr); >- g_signal_connect(webPage, "form-controls-associated", G_CALLBACK(formControlsAssociatedCallback), extension); >+ g_signal_connect(webPage, "form-controls-associated-for-frame", G_CALLBACK(formControlsAssociatedForFrameCallback), extension); > g_signal_connect(webPage, "will-submit-form", G_CALLBACK(willSubmitFormCallback), extension); > } >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 197271
:
368211
|
368433
|
368434
|
369281
| 369303