Author: stippi Date: Sat May 22 19:03:24 2010 New Revision: 516 URL: http://mmlr.dyndns.org/changeset/516 Log: Added API for retrieving the source of the main frame. Modified: webkit/trunk/WebKit/haiku/API/WebPage.cpp webkit/trunk/WebKit/haiku/API/WebPage.h Modified: webkit/trunk/WebKit/haiku/API/WebPage.cpp ============================================================================== --- webkit/trunk/WebKit/haiku/API/WebPage.cpp Sat May 22 13:51:29 2010 (r515) +++ webkit/trunk/WebKit/haiku/API/WebPage.cpp Sat May 22 19:03:24 2010 (r516) @@ -116,7 +116,8 @@ HANDLE_SET_STATUS_MESSAGE = 'stsm', HANDLE_RESEND_NOTIFICATIONS = 'rsnt', - HANDLE_SEND_EDITING_CAPABILITIES = 'sedc' + HANDLE_SEND_EDITING_CAPABILITIES = 'sedc', + HANDLE_SEND_PAGE_SOURCE = 'spsc' }; using namespace WebCore; @@ -327,6 +328,11 @@ Looper()->PostMessage(HANDLE_SEND_EDITING_CAPABILITIES, this); } +void BWebPage::SendPageSource() +{ + Looper()->PostMessage(HANDLE_SEND_PAGE_SOURCE, this); +} + /*static*/ void BWebPage::RequestDownload(const BString& url) { ResourceRequest request(url); @@ -886,6 +892,9 @@ case HANDLE_SEND_EDITING_CAPABILITIES: handleSendEditingCapabilities(message); break; + case HANDLE_SEND_PAGE_SOURCE: + handleSendPageSource(message); + break; case B_REFS_RECEIVED: { RefPtr<FileChooser>* chooser; @@ -1207,6 +1216,15 @@ dispatchMessage(message); } +void BWebPage::handleSendPageSource(BMessage*) +{ + BMessage message(B_PAGE_SOURCE_RESULT); + message.AddString("source", fMainFrame->FrameSource()); + message.AddString("url", fMainFrame->URL()); + + dispatchMessage(message); +} + // #pragma mark - status_t BWebPage::dispatchMessage(BMessage& message) const Modified: webkit/trunk/WebKit/haiku/API/WebPage.h ============================================================================== --- webkit/trunk/WebKit/haiku/API/WebPage.h Sat May 22 13:51:29 2010 (r515) +++ webkit/trunk/WebKit/haiku/API/WebPage.h Sat May 22 19:03:24 2010 (r516) @@ -65,7 +65,8 @@ B_FIND_STRING_RESULT = 'fsrs', B_DOWNLOAD_ADDED = 'dwna', B_DOWNLOAD_REMOVED = 'dwnr', - B_EDITING_CAPABILITIES_RESULT = 'cedr' + B_EDITING_CAPABILITIES_RESULT = 'cedr', + B_PAGE_SOURCE_RESULT = 'psrc' }; typedef enum { @@ -114,6 +115,7 @@ void ResendNotifications(); void SendEditingCapabilities(); + void SendPageSource(); static void RequestDownload(const BString& url); @@ -216,6 +218,7 @@ void handleFindString(BMessage* message); void handleResendNotifications(BMessage* message); void handleSendEditingCapabilities(BMessage* message); + void handleSendPageSource(BMessage* message); status_t dispatchMessage(BMessage& message) const;