Changeset 167330 in webkit
- Timestamp:
- Apr 15, 2014 4:05:28 PM (10 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 1 added
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r167316 r167330 1 2014-04-15 Dan Bernstein <mitz@apple.com> 2 3 Introduce API::FormClient 4 https://bugs.webkit.org/show_bug.cgi?id=131714 5 6 Reviewed by Tim Horton. 7 8 * UIProcess/API/APIFormClient.h: Added. 9 (API::FormClient::~FormClient): 10 (API::FormClient::willSubmitForm): 11 12 * UIProcess/API/C/WKPage.cpp: 13 (WKPageSetPageFormClient): Changed to create a WebFormClient and call 14 WebPageProxy::setFormClient. 15 16 * UIProcess/WebFormClient.cpp: 17 (WebKit::WebFormClient::WebFormClient): Added a constructor from WKPageFormClientBase. 18 * UIProcess/WebFormClient.h: Added inheritance from API::FormClient, marked overrides as 19 such. 20 21 * UIProcess/WebPageProxy.cpp: 22 (WebKit::WebPageProxy::WebPageProxy): Initialize m_formClient member. 23 (WebKit::WebPageProxy::setFormClient): Added. Updates m_formClient. 24 (WebKit::WebPageProxy::close): Updated code to clear m_formClient. 25 (WebKit::WebPageProxy::willSubmitForm): Updated for type change. 26 (WebKit::WebPageProxy::initializeFormClient): Deleted. 27 * UIProcess/WebPageProxy.h: 28 29 * WebKit2.xcodeproj/project.pbxproj: Added reference to new file. 30 1 31 2014-04-15 Simon Fraser <simon.fraser@apple.com> 2 32 -
trunk/Source/WebKit2/UIProcess/API/C/WKPage.cpp
r167172 r167330 44 44 #include "WKPluginInformation.h" 45 45 #include "WebBackForwardList.h" 46 #include "WebFormClient.h" 46 47 #include "WebPageMessages.h" 47 48 #include "WebPageProxy.h" … … 741 742 void WKPageSetPageFormClient(WKPageRef pageRef, const WKPageFormClientBase* wkClient) 742 743 { 743 toImpl(pageRef)-> initializeFormClient(wkClient);744 toImpl(pageRef)->setFormClient(std::make_unique<WebFormClient>(wkClient)); 744 745 } 745 746 -
trunk/Source/WebKit2/UIProcess/WebFormClient.cpp
r160608 r167330 33 33 namespace WebKit { 34 34 35 WebFormClient::WebFormClient(const WKPageFormClientBase* wkClient) 36 { 37 initialize(wkClient); 38 } 39 35 40 bool WebFormClient::willSubmitForm(WebPageProxy* page, WebFrameProxy* frame, WebFrameProxy* sourceFrame, const Vector<std::pair<String, String>>& textFieldValues, API::Object* userData, WebFormSubmissionListenerProxy* listener) 36 41 { -
trunk/Source/WebKit2/UIProcess/WebFormClient.h
r159994 r167330 28 28 29 29 #include "APIClient.h" 30 #include "WKPage.h" 31 #include <utility> 32 #include <wtf/Forward.h> 33 #include <wtf/Vector.h> 30 #include "APIFormClient.h" 31 #include "WKPageFormClient.h" 34 32 35 33 namespace API { 36 class Object;37 38 34 template<> struct ClientTraits<WKPageFormClientBase> { 39 35 typedef std::tuple<WKPageFormClientV0> Versions; … … 43 39 namespace WebKit { 44 40 45 class Web PageProxy;46 class WebFrameProxy; 47 class WebFormSubmissionListenerProxy;41 class WebFormClient : public API::FormClient, API::Client<WKPageFormClientBase> { 42 public: 43 explicit WebFormClient(const WKPageFormClientBase*); 48 44 49 class WebFormClient : public API::Client<WKPageFormClientBase> { 50 public: 51 bool willSubmitForm(WebPageProxy*, WebFrameProxy*, WebFrameProxy*, const Vector<std::pair<String, String>>& textFieldValues, API::Object* userData, WebFormSubmissionListenerProxy*); 45 virtual bool willSubmitForm(WebPageProxy*, WebFrameProxy*, WebFrameProxy*, const Vector<std::pair<String, String>>& textFieldValues, API::Object* userData, WebFormSubmissionListenerProxy*) override; 52 46 }; 53 47 -
trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp
r167262 r167330 30 30 #include "APIArray.h" 31 31 #include "APIFindClient.h" 32 #include "APIFormClient.h" 32 33 #include "APILoaderClient.h" 33 34 #include "APIPolicyClient.h" … … 257 258 , m_loaderClient(std::make_unique<API::LoaderClient>()) 258 259 , m_policyClient(std::make_unique<API::PolicyClient>()) 260 , m_formClient(std::make_unique<API::FormClient>()) 259 261 , m_uiClient(std::make_unique<API::UIClient>()) 260 262 , m_findClient(std::make_unique<API::FindClient>()) … … 461 463 } 462 464 463 void WebPageProxy::initializeFormClient(const WKPageFormClientBase* formClient) 464 { 465 m_formClient.initialize(formClient); 465 void WebPageProxy::setFormClient(std::unique_ptr<API::FormClient> formClient) 466 { 467 if (!formClient) { 468 m_formClient = std::make_unique<API::FormClient>(); 469 return; 470 } 471 472 m_formClient = std::move(formClient); 466 473 } 467 474 … … 615 622 m_loaderClient = std::make_unique<API::LoaderClient>(); 616 623 m_policyClient = std::make_unique<API::PolicyClient>(); 617 m_formClient .initialize(0);624 m_formClient = std::make_unique<API::FormClient>(); 618 625 m_uiClient = std::make_unique<API::UIClient>(); 619 626 #if PLATFORM(EFL) … … 2735 2742 2736 2743 RefPtr<WebFormSubmissionListenerProxy> listener = frame->setUpFormSubmissionListenerProxy(listenerID); 2737 if (!m_formClient .willSubmitForm(this, frame, sourceFrame, textFieldValues, userData.get(), listener.get()))2744 if (!m_formClient->willSubmitForm(this, frame, sourceFrame, textFieldValues, userData.get(), listener.get())) 2738 2745 listener->continueSubmission(); 2739 2746 } -
trunk/Source/WebKit2/UIProcess/WebPageProxy.h
r167262 r167330 53 53 #include "WebCoreArgumentCoders.h" 54 54 #include "WebFindClient.h" 55 #include "WebFormClient.h"56 55 #include "WebFrameProxy.h" 57 56 #include "WebPageContextMenuClient.h" … … 104 103 namespace API { 105 104 class FindClient; 105 class FormClient; 106 106 class LoaderClient; 107 107 class PolicyClient; … … 479 479 void setFindClient(std::unique_ptr<API::FindClient>); 480 480 void initializeFindMatchesClient(const WKPageFindMatchesClientBase*); 481 void initializeFormClient(const WKPageFormClientBase*);481 void setFormClient(std::unique_ptr<API::FormClient>); 482 482 void setLoaderClient(std::unique_ptr<API::LoaderClient>); 483 483 void setPolicyClient(std::unique_ptr<API::PolicyClient>); … … 1396 1396 std::unique_ptr<API::LoaderClient> m_loaderClient; 1397 1397 std::unique_ptr<API::PolicyClient> m_policyClient; 1398 WebFormClientm_formClient;1398 std::unique_ptr<API::FormClient> m_formClient; 1399 1399 std::unique_ptr<API::UIClient> m_uiClient; 1400 1400 #if PLATFORM(EFL) -
trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj
r167169 r167330 706 706 37D0B5C81845232700F6CE7D /* WKErrorRecoveryAttempting.m in Sources */ = {isa = PBXBuildFile; fileRef = 37D0B5C71845232700F6CE7D /* WKErrorRecoveryAttempting.m */; }; 707 707 37DFA7001810BB92001F4A9F /* WKFoundation.h in Headers */ = {isa = PBXBuildFile; fileRef = 37DFA6FF1810BB92001F4A9F /* WKFoundation.h */; settings = {ATTRIBUTES = (Public, ); }; }; 708 37E25D6E18FDE5D6005D3A00 /* APIFormClient.h in Headers */ = {isa = PBXBuildFile; fileRef = 37E25D6D18FDE5D6005D3A00 /* APIFormClient.h */; }; 708 709 37F623B812A57B6200E3FDF6 /* WKFindOptions.h in Headers */ = {isa = PBXBuildFile; fileRef = 37F623B712A57B6200E3FDF6 /* WKFindOptions.h */; settings = {ATTRIBUTES = (Private, ); }; }; 709 710 37F90DE31376560E0051CF68 /* HTTPCookieAcceptPolicy.h in Headers */ = {isa = PBXBuildFile; fileRef = F638954F133BEF38008941D5 /* HTTPCookieAcceptPolicy.h */; }; … … 2530 2531 37D0B5C71845232700F6CE7D /* WKErrorRecoveryAttempting.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WKErrorRecoveryAttempting.m; sourceTree = "<group>"; }; 2531 2532 37DFA6FF1810BB92001F4A9F /* WKFoundation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKFoundation.h; sourceTree = "<group>"; }; 2533 37E25D6D18FDE5D6005D3A00 /* APIFormClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = APIFormClient.h; sourceTree = "<group>"; }; 2532 2534 37F623B712A57B6200E3FDF6 /* WKFindOptions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKFindOptions.h; sourceTree = "<group>"; }; 2533 2535 37FC19461850FBF2008CFA47 /* WKBrowsingContextLoadDelegatePrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBrowsingContextLoadDelegatePrivate.h; sourceTree = "<group>"; }; … … 5545 5547 1F7D36C018DA513F00D9D659 /* APIDownloadClient.h */, 5546 5548 00B9661518E24CBA00CE1F88 /* APIFindClient.h */, 5549 37E25D6D18FDE5D6005D3A00 /* APIFormClient.h */, 5547 5550 1A6637D618B2831F00C0BCF3 /* APIHistoryClient.h */, 5548 5551 1A2464F21891E45100234C5B /* APILoaderClient.h */, … … 6901 6904 1A2BB6D114117B4D000F35D4 /* PluginProcessConnectionMessages.h in Headers */, 6902 6905 1A2D90D21281C966001EB962 /* PluginProcessCreationParameters.h in Headers */, 6906 37E25D6E18FDE5D6005D3A00 /* APIFormClient.h in Headers */, 6903 6907 3743925818BC4C60001C8675 /* WKUIDelegatePrivate.h in Headers */, 6904 6908 1A0EC603124A9F2C007EF4A5 /* PluginProcessManager.h in Headers */,
Note: See TracChangeset
for help on using the changeset viewer.