summaryrefslogtreecommitdiff
path: root/Source/WebKit/gtk
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit/gtk')
-rw-r--r--Source/WebKit/gtk/ChangeLog-2012-05-2223357
-rw-r--r--Source/WebKit/gtk/GNUmakefile.am637
-rw-r--r--Source/WebKit/gtk/NEWS1435
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContext.h105
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContextGL.cpp397
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp79
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp1105
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h187
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp168
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h65
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.cpp69
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.h46
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.cpp68
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.h46
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.cpp126
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.h74
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp102
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h63
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp744
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h149
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp567
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.h153
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp1269
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h207
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.cpp42
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.h48
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.cpp102
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.h70
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.cpp154
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.h59
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp286
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h108
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.cpp44
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.h44
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h51
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.cpp156
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.h69
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.cpp96
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.h60
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.cpp58
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.h43
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.cpp117
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.h54
-rw-r--r--Source/WebKit/gtk/docs/webkitenvironment.xml64
-rw-r--r--Source/WebKit/gtk/docs/webkitgtk-docs.sgml137
-rw-r--r--Source/WebKit/gtk/docs/webkitgtk-overrides.txt0
-rw-r--r--Source/WebKit/gtk/docs/webkitgtk-sections.txt753
-rw-r--r--Source/WebKit/gtk/docs/webkitgtk.types26
-rw-r--r--Source/WebKit/gtk/gdom/ConvertToGCharPrivate.h48
-rw-r--r--Source/WebKit/gtk/resources/error.html60
-rw-r--r--Source/WebKit/gtk/tests/resources/blank.icobin198 -> 0 bytes
-rw-r--r--Source/WebKit/gtk/tests/resources/test.html6
-rw-r--r--Source/WebKit/gtk/tests/resources/test.oggbin30131 -> 0 bytes
-rw-r--r--Source/WebKit/gtk/tests/resources/test.pdfbin7421 -> 0 bytes
-rw-r--r--Source/WebKit/gtk/tests/resources/test.txt1
-rw-r--r--Source/WebKit/gtk/tests/test_utils.c51
-rw-r--r--Source/WebKit/gtk/tests/test_utils.h3
-rw-r--r--Source/WebKit/gtk/tests/testapplicationcache.c49
-rw-r--r--Source/WebKit/gtk/tests/testatk.c2117
-rw-r--r--Source/WebKit/gtk/tests/testatkroles.c426
-rw-r--r--Source/WebKit/gtk/tests/testcontextmenu.c314
-rw-r--r--Source/WebKit/gtk/tests/testcopyandpaste.c266
-rw-r--r--Source/WebKit/gtk/tests/testdomdocument.c428
-rw-r--r--Source/WebKit/gtk/tests/testdomdomwindow.c258
-rw-r--r--Source/WebKit/gtk/tests/testdomnode.c219
-rw-r--r--Source/WebKit/gtk/tests/testdownload.c322
-rw-r--r--Source/WebKit/gtk/tests/testfavicondatabase.c276
-rw-r--r--Source/WebKit/gtk/tests/testglobals.c110
-rw-r--r--Source/WebKit/gtk/tests/testhittestresult.c169
-rw-r--r--Source/WebKit/gtk/tests/testhttpbackend.c75
-rw-r--r--Source/WebKit/gtk/tests/testkeyevents.c390
-rw-r--r--Source/WebKit/gtk/tests/testloading.c435
-rw-r--r--Source/WebKit/gtk/tests/testmimehandling.c203
-rw-r--r--Source/WebKit/gtk/tests/testnetworkrequest.c96
-rw-r--r--Source/WebKit/gtk/tests/testnetworkresponse.c97
-rw-r--r--Source/WebKit/gtk/tests/testwebbackforwardlist.c326
-rw-r--r--Source/WebKit/gtk/tests/testwebdatasource.c242
-rw-r--r--Source/WebKit/gtk/tests/testwebframe.c220
-rw-r--r--Source/WebKit/gtk/tests/testwebhistoryitem.c70
-rw-r--r--Source/WebKit/gtk/tests/testwebinspector.c172
-rw-r--r--Source/WebKit/gtk/tests/testwebplugindatabase.c78
-rw-r--r--Source/WebKit/gtk/tests/testwebresource.c331
-rw-r--r--Source/WebKit/gtk/tests/testwebsettings.c153
-rw-r--r--Source/WebKit/gtk/tests/testwebview.c724
-rw-r--r--Source/WebKit/gtk/tests/testwindow.c119
-rw-r--r--Source/WebKit/gtk/webkit.pc.in11
-rw-r--r--Source/WebKit/gtk/webkit/webkit.h57
-rw-r--r--Source/WebKit/gtk/webkit/webkitapplicationcache.cpp82
-rw-r--r--Source/WebKit/gtk/webkit/webkitapplicationcache.h38
-rw-r--r--Source/WebKit/gtk/webkit/webkitauthenticationdialog.cpp63
-rw-r--r--Source/WebKit/gtk/webkit/webkitauthenticationdialog.h26
-rw-r--r--Source/WebKit/gtk/webkit/webkitdefines.h115
-rw-r--r--Source/WebKit/gtk/webkit/webkitdom.h25
-rw-r--r--Source/WebKit/gtk/webkit/webkitdownload.cpp968
-rw-r--r--Source/WebKit/gtk/webkit/webkitdownload.h135
-rw-r--r--Source/WebKit/gtk/webkit/webkitdownloadprivate.h36
-rw-r--r--Source/WebKit/gtk/webkit/webkiterror.cpp38
-rw-r--r--Source/WebKit/gtk/webkit/webkiterror.h103
-rw-r--r--Source/WebKit/gtk/webkit/webkitfavicondatabase.cpp645
-rw-r--r--Source/WebKit/gtk/webkit/webkitfavicondatabase.h95
-rw-r--r--Source/WebKit/gtk/webkit/webkitfavicondatabaseprivate.h25
-rw-r--r--Source/WebKit/gtk/webkit/webkitfilechooserrequest.cpp367
-rw-r--r--Source/WebKit/gtk/webkit/webkitfilechooserrequest.h71
-rw-r--r--Source/WebKit/gtk/webkit/webkitfilechooserrequestprivate.h30
-rw-r--r--Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp108
-rw-r--r--Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.h64
-rw-r--r--Source/WebKit/gtk/webkit/webkitgeolocationpolicydecisionprivate.h38
-rw-r--r--Source/WebKit/gtk/webkit/webkitglobals.cpp571
-rw-r--r--Source/WebKit/gtk/webkit/webkitglobals.h212
-rw-r--r--Source/WebKit/gtk/webkit/webkitglobalsprivate.h40
-rw-r--r--Source/WebKit/gtk/webkit/webkithittestresult.cpp338
-rw-r--r--Source/WebKit/gtk/webkit/webkithittestresult.h83
-rw-r--r--Source/WebKit/gtk/webkit/webkithittestresultprivate.h35
-rw-r--r--Source/WebKit/gtk/webkit/webkiticondatabase.cpp331
-rw-r--r--Source/WebKit/gtk/webkit/webkiticondatabase.h80
-rw-r--r--Source/WebKit/gtk/webkit/webkitnetworkrequest.cpp273
-rw-r--r--Source/WebKit/gtk/webkit/webkitnetworkrequest.h74
-rw-r--r--Source/WebKit/gtk/webkit/webkitnetworkrequestprivate.h33
-rw-r--r--Source/WebKit/gtk/webkit/webkitnetworkresponse.cpp322
-rw-r--r--Source/WebKit/gtk/webkit/webkitnetworkresponse.h77
-rw-r--r--Source/WebKit/gtk/webkit/webkitnetworkresponseprivate.h35
-rw-r--r--Source/WebKit/gtk/webkit/webkitsecurityorigin.cpp425
-rw-r--r--Source/WebKit/gtk/webkit/webkitsecurityorigin.h79
-rw-r--r--Source/WebKit/gtk/webkit/webkitsecurityoriginprivate.h51
-rw-r--r--Source/WebKit/gtk/webkit/webkitsoupauthdialog.cpp160
-rw-r--r--Source/WebKit/gtk/webkit/webkitsoupauthdialog.h52
-rw-r--r--Source/WebKit/gtk/webkit/webkitspellchecker.cpp172
-rw-r--r--Source/WebKit/gtk/webkit/webkitspellchecker.h70
-rw-r--r--Source/WebKit/gtk/webkit/webkitspellcheckerenchant.cpp136
-rw-r--r--Source/WebKit/gtk/webkit/webkitspellcheckerenchant.h58
-rw-r--r--Source/WebKit/gtk/webkit/webkitversion.cpp63
-rw-r--r--Source/WebKit/gtk/webkit/webkitversion.h.in59
-rw-r--r--Source/WebKit/gtk/webkit/webkitviewportattributes.cpp574
-rw-r--r--Source/WebKit/gtk/webkit/webkitviewportattributes.h62
-rw-r--r--Source/WebKit/gtk/webkit/webkitviewportattributesprivate.h54
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebbackforwardlist.cpp482
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebbackforwardlist.h123
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebbackforwardlistprivate.h34
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebdatabase.cpp525
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebdatabase.h96
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebdatasource.cpp443
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebdatasource.h96
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebdatasourceprivate.h35
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebframe.cpp1218
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebframe.h189
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebframeprivate.h59
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp530
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebhistoryitem.h90
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebhistoryitemprivate.h49
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebinspector.cpp575
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebinspector.h80
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebinspectorprivate.h38
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp375
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebnavigationaction.h103
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebnavigationactionprivate.h35
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebplugin.cpp286
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebplugin.h91
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebplugindatabase.cpp152
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebplugindatabase.h65
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebplugindatabaseprivate.h40
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebpluginprivate.h48
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebpolicydecision.cpp134
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebpolicydecision.h68
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebpolicydecisionprivate.h36
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebresource.cpp485
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebresource.h84
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebresourceprivate.h48
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebsettings.cpp1653
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebsettings.h85
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h101
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebview.cpp5547
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebview.h453
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebviewprivate.h149
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebwindowfeatures.cpp449
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebwindowfeatures.h68
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebwindowfeaturesprivate.h34
-rw-r--r--Source/WebKit/gtk/webkitmarshal.list32
177 files changed, 0 insertions, 65655 deletions
diff --git a/Source/WebKit/gtk/ChangeLog-2012-05-22 b/Source/WebKit/gtk/ChangeLog-2012-05-22
deleted file mode 100644
index 1bde28157..000000000
--- a/Source/WebKit/gtk/ChangeLog-2012-05-22
+++ /dev/null
@@ -1,23357 +0,0 @@
-2012-05-22 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] REGRESSION(r116135): Keys that confirm composition trigger a default action
- https://bugs.webkit.org/show_bug.cgi?id=86925
-
- Reviewed by Gustavo Noronha Silva.
-
- Instead of sending composition results with a keydown event, simply send whether
- or not the event had results. Activate the results after processing the event. This
- allows for input methods to modify the DOM after the keydown event and to still
- prevent the default action during handleInputMethodKeydown.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::respondToChangedSelection): This patch removes the m_updatingComposition
- so we no longer have to check it here.
- (WebKit::EditorClient::keyboardEventHadCompositionResults): Added.
- (WebKit::EditorClient::handleInputMethodKeydown): Now prevent the default action when
- the keyboard event had composition results.
- (WebKit::EditorClient::EditorClient):
- * WebCoreSupport/EditorClientGtk.h: Remove the m_updatingComposition member, as it's no
- longer used.
- * WebCoreSupport/WebViewInputMethodFilter.cpp:
- (WebKit::WebViewInputMethodFilter::sendKeyEventWithCompositionResults): Now send the
- composition results after the key event.
-
-2012-05-22 Zan Dobersek <zandobersek@gmail.com>
-
- [Gtk][LayoutTests] Repaint the complete WebKitWebView before dumping pixel results
- https://bugs.webkit.org/show_bug.cgi?id=86284
-
- Reviewed by Martin Robinson.
-
- Add an additional method to the ChromeClient through which it is
- possible to bypass the painting timer and force an immediate repaint of
- the current dirty regions.
-
- Add a new method to DumpRenderTreeSupportGtk class that calls that
- method, making it possible to force an instant paint from
- DumpRenderTree.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient):
- (WebKit::ChromeClient::paint): Only delay the painting if the paint is
- not forced.
- (WebKit::ChromeClient::forcePaint):
- (WebKit):
- * WebCoreSupport/ChromeClientGtk.h:
- (ChromeClient):
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::getFrameChildren): Refactor getFrameChildren
- to use the kit() function on the core child frames rather than using
- the FrameLoaderClient of that frame, which is what the kit() function does in the first
- place. This makes it possible to remove the inclusion of the FrameLoaderClientGtk.h
- header which causes symbol name conflicts when included along with ChromeClientGtk.h
- that originate in the Xlib headers included through the former header.
- (DumpRenderTreeSupportGtk::forceWebViewPaint):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-05-21 Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com>
-
- [GTK] DRT support for layoutTestController.setSerializeHTTPLoads
- https://bugs.webkit.org/show_bug.cgi?id=86653
-
- Reviewed by Gustavo Noronha Silva.
-
- Add support for setSerializeHTTPLoads in DumpRenderTreeSupportGtk
- to allow testing resource load order.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setSerializeHTTPLoads):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-05-18 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r117628.
- http://trac.webkit.org/changeset/117628
- https://bugs.webkit.org/show_bug.cgi?id=86936
-
- triggers 20+ timeouts in the editing test suite (Requested by
- philn on #webkit).
-
- * WebCoreSupport/TextCheckerClientGtk.cpp:
- (WebKit::TextCheckerClientGtk::checkSpellingOfString):
- * webkit/webkitspellcheckerenchant.cpp:
- (checkSpellingOfString):
-
-2012-05-18 Martin Robinson <mrobinson@igalia.com>
-
- Spell checker doesn't recognize contractions (apostrophes)
- https://bugs.webkit.org/show_bug.cgi?id=86118
-
- Reviewed by Gustavo Noronha Silva.
-
- The Enchant spell checker was breaking words on apostrophes, because
- apparently they were always being detected as Pango word-end
- characters. In reality, to know whether or not the apostrophe is a
- word end character requires looking at a string with a larger
- granularity than one character. In reality, WebCore has already
- ensured that any apostrophes in the string belong to contractions by
- using the WordBreakIterator.
-
- Simplify the way the we break strings, by just manually trimming off
- all non-graphable characters from the string and then finding the end
- of the first word by looking for the next non-graphable character.
- This has the side effect of removing the dependency on Pango and
- eliminating one copy.
-
- This change also cleans up some misbehavior on the part of the
- WebCoreSupport layer which was not converting from Unicode character
- offsets to UTF-16. These offsets can be different if any of the
- characters in the UTF-16 string are surrogate pairs (non BMP
- characters).
-
- * WebCoreSupport/TextCheckerClientGtk.cpp:
- (WebKit::TextCheckerClientGtk::checkSpellingOfString): Properly
- convert from Unicode offsets to UTF-16 offsets.
- * webkit/webkitspellcheckerenchant.cpp:
- (findByteOffsetToFirstNonGraphableCharacter): Added this helper.
- (checkSpellingOfString): Don't split words on apostrophes.
-
-2012-05-18 Martin Robinson <mrobinson@igalia.com>
-
- OOM running webgl/sdk/tests/conformance/context/context-creation-and-destruction.html
- https://bugs.webkit.org/show_bug.cgi?id=80509
-
- Reviewed by Alejandro G. Castro.
-
- AcceleratedCompositingContext context now fully owns the GLContext for its
- window. This simplifies this quite a bit. We also properly clean it up when
- destroying the layer tree, to go more easily on resources.
-
- * WebCoreSupport/AcceleratedCompositingContext.h:
- (AcceleratedCompositingContext):
- * WebCoreSupport/AcceleratedCompositingContextGL.cpp:
- (WebKit::AcceleratedCompositingContext::glContext):
- (WebKit::AcceleratedCompositingContext::attachRootGraphicsLayer):
-
-2012-05-18 MORITA Hajime <morrita@google.com>
-
- Another unreviewed attempt to fix build breakage on r117572.
-
- * WebCoreSupport/EditorClientGtk.h:
- (WebKit::EditorClient::frameWillDetachPage):
-
-2012-05-18 MORITA Hajime <morrita@google.com>
-
- https://bugs.webkit.org/show_bug.cgi?id=85515
- Stale frame in WebCore::SpellChecker::didCheckSucceeded
-
- Reviewed by Ryosuke Niwa.
-
- * WebCoreSupport/EditorClientGtk.h:
- (WebKit::EditorClient::frameWillDetachPage):
-
-2012-05-17 Hironori Bono <hbono@chromium.org>
-
- [Refactoring] Move platform-specific code in Editor::respondToChangedSelection to the WebKit layer
- https://bugs.webkit.org/show_bug.cgi?id=86591
-
- Reviewed by Ryosuke Niwa.
-
- This change adds a TextCheckerClient::shouldEraseMarkersAfterChangeSelection
- function to remove platform-specific code from Editor::respondToChangedSelection
- function.
-
- No new tests, no change in behavior.
-
- * WebCoreSupport/TextCheckerClientGtk.cpp:
- (WebKit::TextCheckerClientGtk::shouldEraseMarkersAfterChangeSelection):
- (WebKit):
- * WebCoreSupport/TextCheckerClientGtk.h:
- (TextCheckerClientGtk):
-
-2012-05-17 Dan Bernstein <mitz@apple.com>
-
- REGRESSION (r117428): WebKit API/SPI was removed
- https://bugs.webkit.org/show_bug.cgi?id=86748
-
- Reverted r117428.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setDomainRelaxationForbiddenForURLScheme):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-05-17 Gyuyoung Kim <gyuyoung.kim@samsung.com>
-
- Convert setDomainRelaxationForbiddenForURLScheme to use InternalSettings interface
- https://bugs.webkit.org/show_bug.cgi?id=86704
-
- Reviewed by Eric Seidel.
-
- Remove setDomainRelaxationForbiddenForURLScheme functions, because it is able to work in the
- cross-port way through the InternalSettings interface.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::deliverAllMutationsIfNecessary):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-05-14 Thiago Marcos P. Santos <thiago.santos@intel.com>
-
- [GTK] Wrong documentation for Web Database
- https://bugs.webkit.org/show_bug.cgi?id=86362
-
- Reviewed by Martin Robinson.
-
- Fixed docs for webkit_set_default_web_database_quota().
-
- * webkit/webkitwebdatabase.cpp:
-
-2012-05-11 Gustavo Noronha Silva <gns@gnome.org>
-
- REGRESSION(r116205): [GTK]: build no longer supports thin archives
- https://bugs.webkit.org/show_bug.cgi?id=86207
-
- * GNUmakefile.am: link libWebCoreModules into the webkitgtk shared
- library.
-
-2012-05-10 Gyuyoung Kim <gyuyoung.kim@samsung.com>
-
- Move resumeAnimations to use Internals interface
- https://bugs.webkit.org/show_bug.cgi?id=86063
-
- Reviewed by Alexey Proskuryakov.
-
- Remove resumeAnimations functions, because it is able to work in the
- cross-port way through the Internals interface.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-05-09 Gyuyoung Kim <gyuyoung.kim@samsung.com>
-
- Move suspendAnimations to use Internals interface.
- https://bugs.webkit.org/show_bug.cgi?id=85986
-
- Reviewed by Ryosuke Niwa.
-
- Remove suspendAnimations functions, because it is able to work in the
- cross-port way through the Internals interface.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-05-09 Simon Pena <spena@igalia.com>
-
- [GTK] Missing WebPreferences for media playback requiring user gestures and inline playback
- https://bugs.webkit.org/show_bug.cgi?id=85194
-
- Reviewed by Martin Robinson.
-
- Expose WebPreferences for media playback requires user gesture and
- media playback allows inline to GTK side.
-
- This adds two properties (mediaPlaybackRequiresUserGesture and
- mediaPlaybackAllowsInline) to GTK WebKit WebSettings, and connects
- them to the WebKit WebView, so clients can programmatically modify
- them.
-
- * webkit/webkitwebsettings.cpp: install new properties and update
- setter and getter
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- * webkit/webkitwebsettingsprivate.h: add media playback related
- properties
- * webkit/webkitwebview.cpp: connect newly added properties
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2012-05-09 Dan Winship <danw@gnome.org>
-
- [GTK] don't use soup_session_pause_message in webkitdownload
- https://bugs.webkit.org/show_bug.cgi?id=85931
-
- Reviewed by Martin Robinson.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_new_with_handle):
- (webkit_download_start):
-
-2012-05-06 Gyuyoung Kim <gyuyoung.kim@samsung.com>
-
- Convert isPageBoxVisible to use Internals interface.
- https://bugs.webkit.org/show_bug.cgi?id=85692
-
- Reviewed by Darin Adler.
-
- Remove isPageBoxVisible functions, because it is able to work in the
- cross-port way through the Internals interface.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-05-05 Martin Robinson <mrobinson@igalia.com>
-
- Fix the GTK+ TextureMapper accelerated compositing build.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_realize): Properly access the private data
- structure of the WebKitWebView.
-
-2012-05-05 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] WebKit should properly set the input method context window location
- https://bugs.webkit.org/show_bug.cgi?id=84981
-
- Reviewed by Gustavo Noronha Silva.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::paint): During painting, update the cursor rectangle
- if possible.
-
-2012-05-05 Gustavo Noronha Silva <gns@gnome.org>
-
- Unreviewed preparation for 1.9.2.
-
- * NEWS: changes from 1.9.1.
-
-2012-05-04 Gustavo Noronha Silva <gns@gnome.org>
-
- [GTK] Simplify how libWebCoreModules is linked in, and fix WebKit2 build
- https://bugs.webkit.org/show_bug.cgi?id=85691
-
- * GNUmakefile.am: no longer link libwebkitgtk to libWebCoreModules.
-
-2012-05-04 Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com>
-
- [GTK] DRT needs an implementation of LayoutTestController::setDefersLoading and ::goBack
- https://bugs.webkit.org/show_bug.cgi?id=85134
-
- Reviewed by Martin Robinson.
-
- Add support for setDefersLoading in DumpRenderTreeSupportGtk.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setDefersLoading):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-05-04 Martin Robinson <mrobinson@igalia.com>
-
- Fix the GTK+ debug build after the r116114.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleInputMethodKeyboardEvent): Update an
- assertion to reflect a real method name in PlatformKeyboardEvent
- and remove an unnecessary call to preventDefault() which triggered
- an assertion failure higher in the call stack.
-
-2012-05-04 Nate Chapin <japhet@chromium.org>
-
- Don't require FrameLoaderClient to manufacture a commitData() call for empty documents.
- https://bugs.webkit.org/show_bug.cgi?id=85533
-
- Reviewed by Alexey Proskuryakov.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit):
- (WebKit::FrameLoaderClient::finishedLoading):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- (WebKit::FrameLoaderClient::makeRepresentation):
- (WebKit::FrameLoaderClient::revertToProvisionalState):
- (FrameLoaderClient):
-
-2012-05-03 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Rework IME handling to fix bugs and prepare for WebKit2
- https://bugs.webkit.org/show_bug.cgi?id=84556
-
- Reviewed by Gustavo Noronha Silva.
-
- Rework input method handling logic into a class called GtkInputMethodFilter.
- This filter now runs before WebCore event handling, allowing the code to more
- easily fake simple compositions that should be seen as keystrokes. We can also
- filter keypresses that should not go to web content at all, such as key up events
- related to key down events that were filtered.
-
- Also added is a WebViewInputMethodFilter which is a concrete implementation of
- GtkInputMethodFilter. This class contains logic for actually sending events to
- WebCore. In WebKit2 an implementation of GtkInputMethodFilter will send events
- across the IPC channel.
-
- * GNUmakefile.am: Add new files to the source list.
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::inputMethodsMenuItem): Access the input method context via the filter.
- * WebCoreSupport/EditorClientGtk.cpp: Remove the tricky logic of input method
- events from this class, because it's now in the GtkInputMethodFilter.
- (WebKit::EditorClient::setInputMethodState): Call into the filter.
- (WebKit::EditorClient::shouldBeginEditing): We no longer need to update the composition here.
- This is handled by the focus in and focus out logic in the filter.
- (WebKit::EditorClient::shouldEndEditing): Ditto.
- (WebKit::EditorClient::respondToChangedSelection): Call into the filter now.
- (WebKit::EditorClient::handleInputMethodKeyboardEvent): Added this helper which executes
- any pending composition confirmation or preedit update actions as the default action of
- the keydown event.
- (WebKit::EditorClient::handleKeyboardEvent): Call handleInputMethodKeyboardEvent to do
- any pending composition action.
- (WebKit::EditorClient::handleInputMethodKeydown): Remove all the logic from this method.
- Keys are filtered before they are sent to WebCore now and the actual action of input method
- events happens in the keydown default action to increase compatibility with other browsers.
- (WebKit::EditorClient::EditorClient): Remove context signal management.
- (WebKit::EditorClient::~EditorClient): Ditto.
- * WebCoreSupport/EditorClientGtk.h:
- (EditorClient): No longer has some members that tracked IME status.
- * WebCoreSupport/WebViewInputMethodFilter.cpp: Added.
- * WebCoreSupport/WebViewInputMethodFilter.h: Added.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_property): Get the context from the filter now.
- (webkit_web_view_key_press_event): Just send events straight to the filter.
- The filter will decide whether or not to send them to WebCore.
- (webkit_web_view_key_release_event): Ditto.
- (webkit_web_view_button_press_event): Use the filter to handle button press
- events related to IME.
- (webkit_web_view_focus_in_event): Notify the filter now.
- (webkit_web_view_focus_out_event): Ditto.
- (webkit_web_view_realize): The filter takes care of listening for realize now.
- (webkit_web_view_init): Set the WebView widget on the filter.
- * webkit/webkitwebviewprivate.h: Change the GtkIMContext member to be a GtkInputMethodFilter member.
-
-2012-05-03 Fady Samuel <fsamuel@chromium.org>
-
- Removing line in computeViewportAttributes that enforces a minimum scale factor to never allow zooming out more than viewport
- https://bugs.webkit.org/show_bug.cgi?id=70609
-
- Reviewed by Kenneth Rohde Christiansen.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::dumpConfigurationForViewport):
-
-2012-04-18 Jon Honeycutt <jhoneycutt@apple.com>
-
- FrameLoaderClient::dispatchWillSendSubmitEvent() should be given more
- information about the form being submitted
- https://bugs.webkit.org/show_bug.cgi?id=84297
-
- Reviewed by Andy Estes.
-
- * WebCoreSupport/FrameLoaderClientGtk.h:
- (WebKit::FrameLoaderClient::dispatchWillSendSubmitEvent):
- Updated method declaration.
-
-2012-05-01 Ryosuke Niwa <rniwa@webkit.org>
-
- *Command.h files shouldn't be exported to WebKit layer
- https://bugs.webkit.org/show_bug.cgi?id=74778
-
- Reviewed by Eric Seidel.
-
- * webkit/webkitwebframe.cpp:
-
-2012-04-30 Emil A Eklund <eae@chromium.org>
-
- [gtk, qt, chromium, win] Fix usage of LayoutUnits and rounding in platform code
- https://bugs.webkit.org/show_bug.cgi?id=85222
-
- Reviewed by Eric Seidel.
-
- Update platform code to use the pixel snapped values for painting rects
- to line up with device pixels and change platform specific hit testing
- code to use roundedPoint as hit testing is still mostly done on integer
- bounds.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
- * webkit/webkithittestresult.cpp:
- (WebKit::kit):
- * webkit/webkitwebview.cpp:
- (getLocationForKeyboardGeneratedContextMenu):
- (webkit_web_view_query_tooltip):
-
-2012-04-30 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Update NEWS and configure.ac for 1.9.1 release
- https://bugs.webkit.org/show_bug.cgi?id=85175
-
- Reviewed by Philippe Normand.
-
- * NEWS: Added release notes for 1.9.1.
-
-2012-04-30 Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com>
-
- [GTK] DRT support for layoutTestController.removeOriginAccessWhitelistEntry
- https://bugs.webkit.org/show_bug.cgi?id=85156
-
- Reviewed by Martin Robinson.
-
- Add support for removeOriginAccessWhitelistEntry which allow
- layout tests to remove origins whitelisting.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::removeWhiteListAccessFromOrigin):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-04-29 Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com>
-
- [GTK] DRT needs an implementation of layoutTestController.setDomainRelaxationForbiddenForURLScheme
- https://bugs.webkit.org/show_bug.cgi?id=85131
-
- Reviewed by Martin Robinson.
-
- Add support for setDomainRelaxationForbiddenForURLScheme which allow
- disabling domain relaxation.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setDomainRelaxationForbiddenForURLScheme):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-04-22 Adrian Bunk <bunk@stusta.de>
-
- [GTK] Remove the obsolete Hildon UI extensions
- https://bugs.webkit.org/show_bug.cgi?id=83420
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am:
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::setInputMethodState):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_release_event):
-
-2012-04-20 Zan Dobersek <zandobersek@gmail.com>
-
- [Gtk][WK1] Use mock scrollbars when testing
- https://bugs.webkit.org/show_bug.cgi?id=79577
-
- Reviewed by Daniel Bates.
-
- Enable mock scrollbars if running DumpRenderTree.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
-
-2012-04-18 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r114506.
- http://trac.webkit.org/changeset/114506
- https://bugs.webkit.org/show_bug.cgi?id=84254
-
- Seems to be making gtk's DumpRenderTree crash occasionally
- (Requested by tomz on #webkit).
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- * webkit/webkitwebsettingsprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2012-04-18 Simon Pena <spena@igalia.com>
-
- [GTK] r114021 triggered media flakyness
- https://bugs.webkit.org/show_bug.cgi?id=83874
-
- Reviewed by Philippe Normand.
-
- When the MediaPlaybackRequiresUserGesture setting was added, no gtk
- API was implemented to access it.
-
- This adds a property to gtk WebKit WebSettings, and connects it to
- WebKit WebView, thus allowing clients to programmatically modify it.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- * webkit/webkitwebsettingsprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2012-04-17 Carlos Garnacho <carlos@lanedo.com>
-
- [GTK] Enable back double buffering on WebKitWebView to fix flickering
- https://bugs.webkit.org/show_bug.cgi?id=84149
-
- Reviewed by Martin Robinson.
-
- Despite having WebKitWebView its own backing buffer, calling
- gtk_widget_set_double_buffered(...,FALSE) may still pose side
- effects, such as ensuring that all drawing operations are
- flushed to the X server before rendering a non-double buffered
- widget, which may translate into flickering of the parent
- GdkWindow before the WebKitWebView itself is rendered.
-
- Enabling back double buffering solves this as all contents are
- first composited together before getting to the front buffer,
- but effectively acts as 3rd buffer. This is sort of unavoidable
- unless GTK+ gains a "let me take ownership of the backing buffer
- for this widget", which currently lacks.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init): Remove call to gtk_widget_set_double_buffered(..., FALSE)
-
-2012-04-06 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Accelerated compositing is broken after recent TextureMapper reorganizations
- https://bugs.webkit.org/show_bug.cgi?id=83393
-
- Reviewed by Noam Rosenthal.
-
- Ensure that the layer tree is synced when the root layer is resized.
-
- * WebCoreSupport/AcceleratedCompositingContextGL.cpp:
- (WebKit::AcceleratedCompositingContext::resizeRootLayer): Ensure that the layer
- tree is synced when the root layer resizes and remove a call to recomposite
- the tree, as it happens anyway.
-
-2012-04-05 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Scrolling some iframes that are partially out of the viewport leads to repaint errors
- https://bugs.webkit.org/show_bug.cgi?id=83309
-
- Reviewed by Gustavo Noronha Silva.
-
- Instead of only updating scrollRect - preservedRegion, update
- scrollRect - (preservedRegion - offscreenPreservedRegion). This ensures that
- when part of the scroll rect is moved onscreen from offscreen that part is
- queued for a redraw.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::scroll): Properly calculate the area to repaint.
-
-2012-04-04 Mariusz Grzegorczyk <mariusz.g@samsung.com>
-
- Fix build break when CONTEXT_MENUS is disabled.
- https://bugs.webkit.org/show_bug.cgi?id=82342
-
- Reviewed by Andreas Kling.
-
- Fixes build break in WebKit-Gtk, and WebKit-EFL ports when CONTEXT_MENUS macro is disabled.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * WebCoreSupport/ContextMenuClientGtk.h:
- * webkit/webkitglobals.cpp:
- (webkit_context_menu_item_get_action):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_press_event):
- (webkit_web_view_class_init):
- (webkit_web_view_init):
-
-2012-04-03 Simon Pena <spena@igalia.com>
-
- [GTK] DRT missing didRunInsecureContent notification
- https://bugs.webkit.org/show_bug.cgi?id=59367
-
- Reviewed by Philippe Normand.
-
- Add a new signal "insecure-content-run" to the WebFrame to notify
- when insecure HTTP content (such as CSS, an iframe or a script) is
- run from a secure HTTPS WebFrame. Implement didRunInsecureContent
- in gtk's FrameLoaderClient by means of emitting that signal.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp: Implement
- didRunInsecureContent by emitting WebFrame's
- "insecure-content-run" signal
- (WebKit::FrameLoaderClient::didRunInsecureContent):
- * webkit/webkitwebframe.cpp: Add "insecure-content-run" signal
- (webkit_web_frame_class_init):
-
-2012-03-30 Mark Pilgrim <pilgrim@chromium.org>
-
- GEOLOCATION should be implemented as Page Supplement
- https://bugs.webkit.org/show_bug.cgi?id=82228
-
- Reviewed by Adam Barth.
-
- Geolocation is now a Supplement in Page so the interface
- has changed for setting up the page's geolocation client
- initially and accessing the controller later.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::resetGeolocationClientMock):
- (DumpRenderTreeSupportGtk::setMockGeolocationPermission):
- (DumpRenderTreeSupportGtk::setMockGeolocationPosition):
- (DumpRenderTreeSupportGtk::setMockGeolocationError):
- (DumpRenderTreeSupportGtk::numberOfPendingGeolocationPermissionRequests):
- * WebCoreSupport/GeolocationClientGtk.cpp:
- (WebKit::GeolocationClient::updatePosition):
- (WebKit::GeolocationClient::errorOccured):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2012-03-29 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r112553.
- http://trac.webkit.org/changeset/112553
- https://bugs.webkit.org/show_bug.cgi?id=82638
-
- It made all tests crash on Qt WK2 (Requested by Ossy_away on
- #webkit).
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::resetGeolocationClientMock):
- (DumpRenderTreeSupportGtk::setMockGeolocationPermission):
- (DumpRenderTreeSupportGtk::setMockGeolocationPosition):
- (DumpRenderTreeSupportGtk::setMockGeolocationError):
- (DumpRenderTreeSupportGtk::numberOfPendingGeolocationPermissionRequests):
- * WebCoreSupport/GeolocationClientGtk.cpp:
- (WebKit::GeolocationClient::updatePosition):
- (WebKit::GeolocationClient::errorOccured):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2012-03-29 Mark Pilgrim <pilgrim@chromium.org>
-
- GEOLOCATION should be implemented as Page Supplement
- https://bugs.webkit.org/show_bug.cgi?id=82228
-
- Reviewed by Adam Barth.
-
- Geolocation is now a Supplement in Page so the interface
- has changed for setting up the page's geolocation client
- initially and accessing the controller later.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::resetGeolocationClientMock):
- (DumpRenderTreeSupportGtk::setMockGeolocationPermission):
- (DumpRenderTreeSupportGtk::setMockGeolocationPosition):
- (DumpRenderTreeSupportGtk::setMockGeolocationError):
- (DumpRenderTreeSupportGtk::numberOfPendingGeolocationPermissionRequests):
- * WebCoreSupport/GeolocationClientGtk.cpp:
- (WebKit::GeolocationClient::updatePosition):
- (WebKit::GeolocationClient::errorOccured):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2012-03-28 Nate Chapin <japhet@chromium.org>
-
- Remove dispatchDidLoadMainResource callback, since no
- port implements it.
- https://bugs.webkit.org/show_bug.cgi?id=82539
-
- Reviewed by Alexey Proskuryakov.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- (FrameLoaderClient):
-
-2012-03-28 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Implement PlatformStrategies
- https://bugs.webkit.org/show_bug.cgi?id=82454
-
- Reviewed by Xan Lopez.
-
- * GNUmakefile.am: Add new files to compilation.
- * WebCoreSupport/PlatformStrategiesGtk.cpp: Added.
- (PlatformStrategiesGtk::initialize): Initialize platform
- strategies.
- (PlatformStrategiesGtk::PlatformStrategiesGtk):
- (PlatformStrategiesGtk::createCookiesStrategy): Return this.
- (PlatformStrategiesGtk::createPluginStrategy): Ditto.
- (PlatformStrategiesGtk::createVisitedLinkStrategy): Ditto.
- (PlatformStrategiesGtk::createPasteboardStrategy): Return 0, since
- PasteboardStrategy is only used by mac code for now.
- (PlatformStrategiesGtk::notifyCookiesChanged):
- (PlatformStrategiesGtk::refreshPlugins): Refresh the plugin
- database.
- (PlatformStrategiesGtk::getPluginInfo): Initialize plugins and
- populate the given vector with plugins information.
- (PlatformStrategiesGtk::isLinkVisited): Return whether the given
- hash is a visited link of the page group.
- (PlatformStrategiesGtk::addVisitedLink): Add the given hash to the
- page group visited links.
- * WebCoreSupport/PlatformStrategiesGtk.h: Added.
- * webkit/webkitglobals.cpp:
- (webkitInit): Initialize PlatformStrategiesGtk.
-
-2012-03-26 Joone Hur <joone.hur@collabora.co.uk>
-
- [GTK] Build fix for Accelerated Compositing with Clutter
- https://bugs.webkit.org/show_bug.cgi?id=81785
-
- Reviewed by Martin Robinson.
-
- AcceleratedCompositingContext was introduced to isolate different accelerated
- compositing implementations(r104194), but the Clutter implementation doesn't
- build with it. This fixes the build error.
-
- * WebCoreSupport/AcceleratedCompositingContext.h:
- (AcceleratedCompositingContext):
- * WebCoreSupport/AcceleratedCompositingContextClutter.cpp:
- (WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext):
- (WebKit::AcceleratedCompositingContext::renderLayersToWindow):
- (WebKit::AcceleratedCompositingContext::resizeRootLayer):
- (WebKit::AcceleratedCompositingContext::syncLayersNow):
- (WebKit::AcceleratedCompositingContext::syncLayersTimeout):
- (WebKit):
-
-2012-03-26 Gary Kramlich <grim@reaperworld.com>
-
- WebKitWebView signals with GError parameters cause crashes when using GObject Introspection
- https://bugs.webkit.org/show_bug.cgi?id=81977
-
- Reviewed by Martin Robinson.
-
- Added marshalers for BOOLEAN:OBJECT,STRING,BOXED and VOID:OBJECT,OBJECT,BOXED
- and changed the signal signatures for WebKitWebView::load-fail and
- WebKitWebView::resource-load-failed to use the new marshalers since
- GError has been a GBoxed type since Gtk 2.26. This fixes these signals
- for the gobject-introspection bindings.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
- * webkitmarshal.list:
-
-2012-03-24 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Replace occurrences of "uri" in the documentation with "URI"
- https://bugs.webkit.org/show_bug.cgi?id=82025
-
- Reviewed by Gustavo Noronha Silva.
-
- In documentation "uri" should really be written as "URI" so
- we should fix all existing strings.
-
- * webkit/webkitdownload.cpp: Replace "uri" with "URI."
- * webkit/webkitnetworkrequest.cpp: Ditto.
- * webkit/webkitnetworkresponse.cpp: Ditto.
- * webkit/webkitwebhistoryitem.cpp: Ditto.
- * webkit/webkitwebresource.cpp: Ditto.
- (webkit_web_resource_class_init):
-
-2012-03-23 Zan Dobersek <zandobersek@gmail.com>
-
- [Gtk] Webkit fails to build with --disable-geolocation
- https://bugs.webkit.org/show_bug.cgi?id=81451
-
- Reviewed by Benjamin Poulain.
-
- Wrap uses of WebCore::Geolocation in WebKitGeolocationPolicyDecision
- and WebKitWebView in ifdefs, removing compilation errors when compiling
- with geolocation support disabled. Affected public API methods are then
- stubs, throwing a warning that feature was not enabled at compile-time.
-
- * webkit/webkitgeolocationpolicydecision.cpp:
- (_WebKitGeolocationPolicyDecisionPrivate):
- (webkit_geolocation_policy_decision_new):
- (webkit_geolocation_policy_allow):
- (webkit_geolocation_policy_deny):
- * webkit/webkitgeolocationpolicydecisionprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2012-03-23 Zan Dobersek <zandobersek@gmail.com>
-
- [GObject bindings] Supplemental interfaces are not disabled with the "Conditional" attribute
- https://bugs.webkit.org/show_bug.cgi?id=80030
-
- Reviewed by Martin Robinson.
-
- Add a private macro that can be used when necessary to throw a warning
- about a future not enabled at compile-time.
-
- * webkit/webkitglobalsprivate.h:
-
-2012-03-23 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Add a way to expose well known names for items in the default context menu
- https://bugs.webkit.org/show_bug.cgi?id=67660
-
- Reviewed by Martin Robinson.
-
- Add WebKitContextMenuAction enum containing all possible context
- menu item actions.
-
- * GNUmakefile.am: Add new files to compilation.
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::inputMethodsMenuItem): Use WebCore context menu classes
- to create the context menu and its items to make sure all items
- have a GtkAction associated.
- (WebKit::insertControlCharacter):
- (WebKit::unicodeMenuItem): Ditto.
- * tests/testcontextmenu.c: Added.
- (testInfoNew):
- (testInfoDestroy):
- (contextMenuFixtureSetup):
- (contextMenuFixtureTeardown):
- (checkAction):
- (checkActionWithSubmenu):
- (checkSeparator):
- (contextMenuCallback):
- (pushEvent):
- (loadStatusCallback):
- (mapEventCallback):
- (testContextMenu):
- (contextMenuCustomItemCallback):
- (testContextMenuCustomItem):
- (main):
- * webkit/webkitglobals.cpp:
- (webkit_context_menu_item_get_action): Return the
- WebKitContextMenuAction for the given context menu item.
- * webkit/webkitglobals.h:
-
-2012-03-23 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Unreviewed. Rename a variable name in API documentation.
-
- Rename keyboard_mode to triggered_with_keyboard in
- WebKitWebView::context-menu signal documentation as suggested by
- Martin and Gustavo. I forgot to make this change before landing
- previous patch.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2012-03-23 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Add a signal to allow applications to handle its own context menu
- https://bugs.webkit.org/show_bug.cgi?id=49904
-
- Reviewed by Gustavo Noronha Silva.
-
- * tests/testhittestresult.c:
- (load_status_cb): Test x, y properties of WebKitHitTestResult.
- * webkit/webkithittestresult.cpp:
- (webkit_hit_test_result_get_property):
- (webkit_hit_test_result_set_property):
- (webkit_hit_test_result_class_init): Add x and y construct only
- properties to keep the coordinates of the event relative to view's
- widget.
- (WebKit::kit):
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init): Mark enable-default-context-menu
- property as deprecated.
- * webkit/webkitwebview.cpp:
- (prepareMouseEventForFrame):
- (defaultContextMenuEnabled): Helper function to check whether
- default context menu setting is enabled or not.
- (webkit_web_view_forward_context_menu_event): Emit the new
- context-menu signal.
- (webkit_web_view_popup_menu_handler):
- (webkit_web_view_button_press_event):
- (webkit_web_view_class_init): Add new context-menu signal and mark
- populate-popup as deprecated.
- * webkitmarshal.list:
-
-2012-03-23 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Unreviewed. Fix GTK+ build after r111707.
-
- * WebCoreSupport/UserMediaClientGtk.h:
-
-2012-03-22 Mao Yujie <yujie.mao@intel.com>
-
- [GTK] Add MediaStream feature to avoid MediaStream test failure
- https://bugs.webkit.org/show_bug.cgi?id=81727
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am:
- * WebCoreSupport/UserMediaClientGtk.cpp: Added.
- (WebKit):
- (WebKit::UserMediaClientGtk::UserMediaClientGtk):
- (WebKit::UserMediaClientGtk::~UserMediaClientGtk):
- (WebKit::UserMediaClientGtk::pageDestroyed):
- (WebKit::UserMediaClientGtk::requestUserMedia):
- (WebKit::UserMediaClientGtk::cancelUserMediaRequest):
- * WebCoreSupport/UserMediaClientGtk.h: Added.
- (WebKit):
- (UserMediaClientGtk):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2012-03-22 Sergio Villar Senin <svillar@igalia.com>
-
- [GTK] icon database requests not dispatched until new data arrives
- https://bugs.webkit.org/show_bug.cgi?id=81665
-
- Reviewed by Martin Robinson.
-
- Wait for the import to finish before reporting that the favicon
- cache does not have a pixbuf for an URL.
-
- Changes already covered by the favicon database unit tests.
-
- * webkit/webkitfavicondatabase.cpp:
- (webkit_favicon_database_get_favicon_pixbuf):
-
-2012-03-22 Carlos Garcia Campos <cgarcia@bb-webkit-rel-64.local.igalia.com>
-
- [GTK] Use the angle-bracket form to include wtf headers
- https://bugs.webkit.org/show_bug.cgi?id=81884
-
- Reviewed by Eric Seidel.
-
- Use #include <wtf/foo> instead of #include "foo".
-
- * WebCoreSupport/DocumentLoaderGtk.cpp:
- * WebCoreSupport/DragClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * WebCoreSupport/FullscreenVideoController.h:
- * WebCoreSupport/GeolocationClientGtk.h:
- * WebCoreSupport/InspectorClientGtk.h:
- * WebCoreSupport/TextCheckerClientGtk.cpp:
- * WebCoreSupport/TextCheckerClientGtk.h:
- * webkit/webkitdownload.cpp:
- * webkit/webkitfavicondatabase.cpp:
- * webkit/webkitglobals.cpp:
- * webkit/webkithittestresult.cpp:
- * webkit/webkitnetworkrequest.cpp:
- * webkit/webkitnetworkresponse.cpp:
- * webkit/webkitspellcheckerenchant.cpp:
- * webkit/webkitwebdatasourceprivate.h:
- * webkit/webkitwebsettings.cpp:
- * webkit/webkitwebsettingsprivate.h:
- * webkit/webkitwebviewprivate.h:
-
-2012-03-20 Gyuyoung Kim <gyuyoung.kim@samsung.com>
-
- Convert hasSpellingMarker to use Internals interface.
- https://bugs.webkit.org/show_bug.cgi?id=81300
-
- Reviewed by Ryosuke Niwa.
-
- Remove DumpRenderTreeSupportGtk::webkitWebFrameSelectionHasSpellingMarker support,
- since it can support in the cross-port way through the Internals interface.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-03-19 Adam Barth <abarth@webkit.org>
-
- Remove support for "magic" iframe
- https://bugs.webkit.org/show_bug.cgi?id=81590
-
- Reviewed by Eric Seidel.
-
- Remove FrameLoaderClient methods that no longer exist.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- (FrameLoaderClient):
-
-2012-03-19 Gustavo Noronha Silva <gns@gnome.org>
-
- [GTK] libWebCore.la has become too big for make
- https://bugs.webkit.org/show_bug.cgi?id=81582
-
- Unreviewed build fix.
-
- * GNUmakefile.am: link-in the new libDerivedWebCore.la
-
-2012-03-16 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Allow running run-gtk-tests during 'make dist'
- https://bugs.webkit.org/show_bug.cgi?id=81415
-
- Reviewed by Philippe Normand.
-
- * GNUmakefile.am: Remove 'make check' rules from the makefile
- Instead this functionality is now in the Tools makefile.
-
-2012-03-16 Victor Lucero <victor.lucero@ipartner.cl>
-
- [GTK] WebKitWebResource::load-failed uses the wrong marshaller
- https://bugs.webkit.org/show_bug.cgi?id=81229
-
- Reviewed by Philippe Normand.
-
- * webkit/webkitwebresource.cpp:
- (webkit_web_resource_class_init): load-failed signal in WebkitWebResource was using the wrong marshaller
-
-2012-03-14 Landry Breuil <landry@openbsd.org>
-
- WebKit/gtk/resources/error.html font-size error
- https://bugs.webkit.org/show_bug.cgi?id=39232
-
- Reviewed by Martin Robinson.
-
- Fix font-size in the 404 error page. Apparently the % is filtered out,
- so 120% becomes 120 and the error message is huge. Experienced in epiphany.
-
- * resources/error.html: Double the % so it doesn't get filtered
-
-2012-03-16 Carlos Garcia Campos <cgarcia@igalia.com> and Sergio Villar Senin <svillar@igalia.com>
-
- [GTK] WebKitIconDatabase doesn't keep icons cached
- https://bugs.webkit.org/show_bug.cgi?id=56200
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am: Added new files to compilation.
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::registerForIconNotification): instruct
- the WebView to listen to IconDatabase's notifications.
- (WebKit::FrameLoaderClient::dispatchDidReceiveIcon): ask both
- WebView and IconDatabase to issue notifications for a new icon.
- * docs/webkitgtk-docs.sgml: updated docs.
- * docs/webkitgtk-sections.txt: ditto.
- * docs/webkitgtk.types: ditto.
- * tests/testicondatabase.c: Added.
- (server_callback):
- (deleteDatabaseFileIfExists):
- (testWebkitIconDatabaseSetPath):
- (iconDatabaseGetIconValidCallback):
- (iconDatabaseGetIconInvalidCallback):
- (iconDatabaseGetIconCancelledCallback):
- (mainLoopQuitIfLoadCompleted):
- (idleQuitLoopCallback):
- (webkitWebViewIconLoaded):
- (loadURI):
- (faviconDatabaseGetFaviconValidIdle):
- (faviconDatabaseGetFaviconInvalidIdle):
- (faviconDatabaseGetFaviconCancelledIdle):
- (testWebKitFaviconDatabaseGetFavicon):
- (testWebKitFaviconDatabaseGetFaviconURI):
- (testWebKitFaviconDatabaseRemoveAll):
- (testWebKitFaviconDatabaseCloseDatabase):
- (main):
- * webkit/webkit.h: added new API.
- * webkit/webkitdefines.h: added WebKitFaviconDatabase.
- * webkit/webkitfavicondatabase.cpp:
- (IconDatabaseClientGtk): IconDatabaseClient implementation.
- (IconDatabaseClientGtk::performImport):
- (IconDatabaseClientGtk::didRemoveAllIcons):
- (IconDatabaseClientGtk::didImportIconURLForPageURL):
- (IconDatabaseClientGtk::didImportIconDataForPageURL):
- (IconDatabaseClientGtk::didChangeIconForPageURL):
- (IconDatabaseClientGtk::didFinishURLImport):
- (PendingIconRequest): machinery for asynchronous calls.
- (PendingIconRequest::PendingIconRequest):
- (PendingIconRequest::~PendingIconRequest):
- (PendingIconRequest::pageURI):
- (PendingIconRequest::asyncResult):
- (PendingIconRequest::asyncResultCancel):
- (PendingIconRequest::asyncResultCompleteInIdle):
- (PendingIconRequest::asyncResultComplete):
- (_WebKitIconDatabasePrivate):
- (webkit_favicon_database_dispose): GObject stuff.
- (webkit_favicon_database_set_property): ditto.
- (webkit_favicon_database_get_property): ditto.
- (webkit_favicon_database_class_init): ditto.
- (webkit_favicon_database_init): ditto.
- (webkitFaviconDatabaseNotifyAndUpdateExpiration): notify about new
- icons and update expiration times.
- (webkitFaviconDatabaseDispatchDidReceiveIcon): "protected" method
- called by the FrameLoaderClient to inform about new icons.
- (webkit_favicon_database_get_path): retrieves database path.
- (selectQueryCallback): releases expired icons to let IconDatabase
- prune them.
- (webkitFaviconDatabasePruneExpiredIcons): selects the icons to be
- pruned by the IconDatabase.
- (webkitFaviconDatabaseClose): close the database.
- (createExpirationTimesDatabaseTableIfNotExists): creates the
- database used to control expiration times.
- (webkit_favicon_database_set_path): opens the database delaying the
- cleanup of icons until the import is complete.
- (webkit_favicon_database_get_favicon_uri): returns the uri of the
- favicon.
- (getIconPixbufSynchronously): helper function to call
- IconDatabase::synchronousIconURLForPageURL().
- (webkit_favicon_database_try_get_favicon_pixbuf): returns the
- favicon if exists and is loaded from disk.
- (webkitFaviconDatabaseGetOrCreateRequests): helper function to get
- the vector of pending requests for the given uri.
- (webkitfavicondatabaseDeleteRequests): helper function to remove the
- vector of pending requests for the given uri.
- (getIconPixbufCancelled):
- (webkitFaviconDatabaseGetIconPixbufCancelled):
- (webkit_favicon_database_get_favicon_pixbuf): asynchronously
- retrieve icons from the database.
- (webkit_favicon_database_get_favicon_pixbuf_finish): finishes an
- operation started with webkit_icon_database_get_icon_pixbuf().
- (webkitFaviconDatabaseProcessPendingIconsForURI): process pending
- requests once the import is finished.
- (webkitFaviconDatabaseImportFinished): check pending requests and
- delete those that ask for icons that do not exist in the database.
- (webkit_favicon_database_clear): clears the database.
- * webkit/webkitfavicondatabase.h: added.
- (_WebKitFaviconDatabase):
- (_WebKitFaviconDatabaseClass):
- * webkit/webkitfavicondatabaseprivate.h: Added.
- * webkit/webkitglobals.cpp:
- (webkit_get_favicon_database): retrieves the new
- WebKitFaviconDatabase.
- (webkitExit): unref icon database on exit.
- * webkit/webkitglobals.h: added new API.
- * webkit/webkiticondatabase.cpp: added deprecation documentation.
- (webkit_icon_database_class_init):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_try_get_icon_pixbuf): new API that uses the new
- WebKitFaviconDatabase API.
- (webkitWebViewIconLoaded): dispatch the icon-loaded signal when
- requested by the FrameLoaderClient.
- (webkitWebViewRegisterForIconNotification): starts/stops listening
- to icon database notifications.
- * webkit/webkitwebview.h: added new API.
- * webkit/webkitwebviewprivate.h: added some protected methods.
-
-2012-03-16 Zan Dobersek <zandobersek@gmail.com>
-
- [Gtk] Add computedStyleIncludingVisitedInfo to DumpRenderTreeSupport
- https://bugs.webkit.org/show_bug.cgi?id=81232
-
- Reviewed by Philippe Normand.
-
- Add computedStyleIncludingVisitedInfo helper method to
- DumpRenderTreeSupportGtk.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::computedStyleIncludingVisitedInfo):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-03-16 Zan Dobersek <zandobersek@gmail.com>
-
- [Gtk] Properly set forms tests-specific settings
- https://bugs.webkit.org/show_bug.cgi?id=81237
-
- Reviewed by Philippe Normand.
-
- Call Settings::setInteractiveFormValidationEnabled and
- Settings::setValidationMessageTimerMagnification with
- proper values when in testing mode.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2012-03-15 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Implement unicode submenu items
- https://bugs.webkit.org/show_bug.cgi?id=81117
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::getUnicodeMenuItemPosition): Helper function to get the
- position of the unicode menu item in the default context menu.
- (WebKit::ContextMenuClient::getCustomMenuFromDefaultItems): Remove
- code to build the unicode menu, since it's now built by WebCore.
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::shouldShowUnicodeMenu): Check whether
- unicode menu should be shown based on gtk-show-unicode-menu GtkSetting.
- * WebCoreSupport/EditorClientGtk.h:
-
-2012-03-13 Adam Barth <abarth@webkit.org> && Benjamin Poulain <bpoulain@apple.com>
-
- Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
- https://bugs.webkit.org/show_bug.cgi?id=78853
-
- Reviewed by Adam Barth.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit):
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::scrollRectIntoView):
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::resetGeolocationClientMock):
- (DumpRenderTreeSupportGtk::setMockGeolocationPermission):
- (DumpRenderTreeSupportGtk::setMockGeolocationPosition):
- (DumpRenderTreeSupportGtk::setMockGeolocationError):
- (DumpRenderTreeSupportGtk::numberOfPendingGeolocationPermissionRequests):
- * WebCoreSupport/GeolocationClientGtk.cpp:
- (WebKit::GeolocationClient::requestPermission):
- (WebKit::GeolocationClient::cancelPermissionRequest):
- * WebCoreSupport/GeolocationClientGtk.h:
- (WebKit):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2012-03-12 Antonio Gomes <agomes@rim.com>
-
- Convert nodesFromRect tests to use Internals interface
- https://bugs.webkit.org/show_bug.cgi?id=80886
-
- Reviewed by Ryosuke Niwa.
-
- Removed DRTSupportGtk::nodesFromRect support, since
- it can work in the cross-port way through the
- Internals interface.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-03-07 Kangil Han <kangil.han@samsung.com>
-
- [DRT] Remove PlainTextController implementations.
- https://bugs.webkit.org/show_bug.cgi?id=79959
-
- Reviewed by Hajime Morita.
-
- PlainTextController usages in existing tests have been
- replaced by internals API by bug 78570.
- So this patch will remove PlainTextController implementations
- to avoid further usage in new tests.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-03-06 Martin Robinson <mrobinson@igalia.com>
-
- Fix a compilation warning encountered during the GTK+ build.
-
- Reviewed by Gustavo Noronha Silva.
-
- * tests/testcopyandpaste.c:
- (test_copy_and_paste): Cast the WebKitWebView to a GtkWidget.
-
-2012-03-06 Philippe Normand <pnormand@igalia.com>
-
- [GTK] FrameLoader signals: gtk-doc fixes
- https://bugs.webkit.org/show_bug.cgi?id=79495
-
- Reviewed by Martin Robinson.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_class_init):
- * webkit/webkitwebresource.cpp:
- (webkit_web_resource_class_init):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2012-01-26 Philippe Normand <pnormand@igalia.com>
-
- [GStreamer] disable GStreamerGWorld when building against 0.11
- https://bugs.webkit.org/show_bug.cgi?id=77088
-
- Disable the FullscreenVideoController if we build against
- GStreamer 0.11. This code depends on GStreamerGWorld which wasn't
- ported to 0.11 because it will soon be removed anyway.
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/FullscreenVideoController.cpp:
- * WebCoreSupport/FullscreenVideoController.h:
- * webkit/webkitwebview.cpp:
- (webViewEnterFullscreen):
- (webViewExitFullscreen):
- * webkit/webkitwebviewprivate.h:
- (_WebKitWebViewPrivate):
-
-2012-03-05 Zan Dobersek <zandobersek@gmail.com>
-
- [GTK] plugins/netscape-plugin-page-cache-works.html fails
- https://bugs.webkit.org/show_bug.cgi?id=74409
-
- Reviewed by Martin Robinson.
-
- Add a method to override page-cache-for-plugins preference.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setPageCacheSupportsPlugins):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-03-04 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] "Console: undefined @0: ReferenceError: Can't find variable: WebInspector" during testwebinspector
- https://bugs.webkit.org/show_bug.cgi?id=80235
-
- Reviewed by Philippe Normand.
-
- Wait to inspect the WebView until the page has finished loading. Also
- clean up some minor style errors.
-
- * tests/testwebinspector.c:
- (closeInspector): Small style fixes.
- (showInspector): Ditto.
- (loadFinished): Ditto.
- (test_webkit_web_inspector_close_and_inspect): Wait to inspect until the page has loaded.
- (test_webkit_web_inspector_destroy_inspected_web_view): Ditto.
- (main): Small style fixes.
-
-2012-03-04 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] REGRESSION: r108278 broke some tests that expect focus
- https://bugs.webkit.org/show_bug.cgi?id=79084
-
- Reviewed by Philippe Normand.
-
- Grab focus before running the test. This ensures that if the
- WebView lost focus, it has it before sending events.
-
- * tests/testcopyandpaste.c:
- (test_copy_and_paste): Grab focus.
-
-2012-02-18 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] [AC] Generalize WindowContextGL
- https://bugs.webkit.org/show_bug.cgi?id=78969
-
- Reviewed by Gustavo Noronha Silva.
-
- Use GLContext instead of WindowContextGL. Remove a few unnecessary
- namespace specifiers in the implementation of AcceleratedCompositingContext.
-
- * WebCoreSupport/AcceleratedCompositingContext.h: Now we find the GLContext
- of our widget, which is cached in WebCore. Remove m_initialized as it isn't needed.
- (AcceleratedCompositingContext):
- * WebCoreSupport/AcceleratedCompositingContextGL.cpp:
- (WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext): No longer initialize
- m_initialized.
- (WebKit::AcceleratedCompositingContext::glContext): Added.
- (WebKit::AcceleratedCompositingContext::renderLayersToWindow): Use glContext() now.
- (WebKit::AcceleratedCompositingContext::attachRootGraphicsLayer): Ditto.
- (WebKit::AcceleratedCompositingContext::notifyAnimationStarted): Remove unnecessary namespace specifier.
- (WebKit::AcceleratedCompositingContext::notifySyncRequired): Ditto.
- (WebKit::AcceleratedCompositingContext::paintContents): Ditto.
- (WebKit::AcceleratedCompositingContext::showDebugBorders): Ditto.
- (WebKit::AcceleratedCompositingContext::showRepaintCounter): Ditto.
-
-2012-03-02 Zan Dobersek <zandobersek@gmail.com>
-
- [GTK] Smooth scrolling support
- https://bugs.webkit.org/show_bug.cgi?id=16123
-
- Reviewed by Martin Robinson.
-
- Add a new settings option to enable smooth scrolling.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- * webkit/webkitwebsettingsprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2012-03-01 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Simplify the code to adjust font sizes depending on screen DPI
- https://bugs.webkit.org/show_bug.cgi?id=80032
-
- Reviewed by Martin Robinson.
-
- * webkit/webkitwebview.cpp:
- (screenDPI): Helper function to get the DPI of a given
- GdkScreen. Added also fallback code when gdk_screen_resolution
- returns -1.
- (webViewGetDPI): Use screenDPI() from WebCore.
- (webViewConvertFontSizeToPixels): This is the existing
- pixelsFromSize(), renamed and moved to be used also in
- webkit_web_view_screen_changed().
- (webkit_web_view_screen_changed): Use
- webViewConvertFontSizeToPixels() instead of duplicating the code.
- (webkit_web_view_settings_notify): Use
- webViewConvertFontSizeToPixels() instead of pixelsFromSize().
-
-2012-02-27 Vincent Untz <vuntz@gnome.org>> and Gustavo Noronha Silva <gns@gnome.org>
-
- Build fix for building with GTK+ 2.x.
-
- * tests/testwebview.c:
-
-2012-02-26 Hajime Morrita <morrita@chromium.org>
-
- Move ChromeClient::showContextMenu() to ContextMenuClient
- https://bugs.webkit.org/show_bug.cgi?id=79427
-
- Reviewed by Adam Barth.
-
- * WebCoreSupport/ChromeClientGtk.h:
- (ChromeClient):
-
-2012-02-24 Shinya Kawanaka <shinyak@chromium.org>
-
- SpellCheckRequest needs to know the context where the spellcheck happened.
- https://bugs.webkit.org/show_bug.cgi?id=79320
-
- Reviewed by Hajime Morita.
-
- * WebCoreSupport/TextCheckerClientGtk.h:
- (WebKit::TextCheckerClientGtk::requestCheckingOfString):
-
-2012-02-23 ChangSeok Oh <shivamidow@gmail.com>
-
- [GTK] DRT doesn't support scheduleAsynchronousKeyDown.
- https://bugs.webkit.org/show_bug.cgi?id=78481
-
- Reviewed by Gustavo Noronha Silva.
-
- Added a new API to deliver all mutations explicitly.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::deliverAllMutationsIfNecessary):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-02-23 Philippe Normand <pnormand@igalia.com>
-
- [GTK] FullScreen signals
- https://bugs.webkit.org/show_bug.cgi?id=76181
-
- Reviewed by Martin Robinson.
-
- Added entering-fullscreen and leaving-fullscreen signals, meant to
- be used by the user agent to be notified when an element requests
- full screen display and when the full screen display is to be
- disabled.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::supportsFullScreenForElement):
- (WebKit::onFullscreenGtkKeyPressEvent):
- (WebKit::ChromeClient::cancelFullScreen):
- (WebKit::ChromeClient::enterFullScreenForElement):
- (WebKit::ChromeClient::exitFullScreenForElement):
- * WebCoreSupport/ChromeClientGtk.h:
- * tests/testwebview.c:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_real_entering_fullscreen):
- (webkit_web_view_real_leaving_fullscreen):
- (webkit_web_view_class_init):
- * webkit/webkitwebview.h:
-
-2012-02-21 Ryosuke Niwa <rniwa@webkit.org>
-
- Remove the remaining uses of CSSStyleDeclaration in Editor
- https://bugs.webkit.org/show_bug.cgi?id=78939
-
- Reviewed by Enrica Casucci.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::shouldApplyStyle):
- * WebCoreSupport/EditorClientGtk.h:
- (EditorClient):
-
-2012-02-22 Philippe Normand <pnormand@igalia.com>
-
- Unreviewed, rolling out r108522.
- http://trac.webkit.org/changeset/108522
- https://bugs.webkit.org/show_bug.cgi?id=76181
-
- Broke 4 fullscreen tests on GTK.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::supportsFullScreenForElement):
- (WebKit::ChromeClient::enterFullScreenForElement):
- (WebKit::ChromeClient::exitFullScreenForElement):
- * WebCoreSupport/ChromeClientGtk.h:
- (ChromeClient):
- * tests/testwebview.c:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
- * webkit/webkitwebview.h:
- (_WebKitWebViewClass):
-
-2012-02-20 Philippe Normand <pnormand@igalia.com>
-
- [GTK] FullScreen signals
- https://bugs.webkit.org/show_bug.cgi?id=76181
-
- Reviewed by Martin Robinson.
-
- Added entering-fullscreen and leaving-fullscreen signals, meant to
- be used by the user agent to be notified when an element requests
- full screen display and when the full screen display is to be
- disabled.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::supportsFullScreenForElement):
- (WebKit::onFullscreenGtkKeyPressEvent):
- (WebKit::ChromeClient::cancelFullScreen):
- (WebKit::ChromeClient::enterFullScreenForElement):
- (WebKit::ChromeClient::exitFullScreenForElement):
- * WebCoreSupport/ChromeClientGtk.h:
- * tests/testwebview.c:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_real_entering_fullscreen):
- (webkit_web_view_real_leaving_fullscreen):
- (webkit_web_view_class_init):
- * webkit/webkitwebview.h:
-
-2012-02-22 Ryosuke Niwa <rniwa@webkit.org>
-
- Remove the remaining uses of CSSStyleDeclaration in Editor
- https://bugs.webkit.org/show_bug.cgi?id=78939
-
- Reviewed by Enrica Casucci.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::shouldApplyStyle):
- * WebCoreSupport/EditorClientGtk.h:
- (EditorClient):
-
-2012-02-22 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Unreviewed, rolling out r107351.
- http://trac.webkit.org/changeset/107351
- https://bugs.webkit.org/show_bug.cgi?id=53600
-
- Several issues introduced in WebKitGTK+ API
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient):
- (WebKit::ChromeClient::chromeDestroyed):
- (WebKit::ChromeClient::canRunModal):
- (WebKit::ChromeClient::runModal):
- * WebCoreSupport/ChromeClientGtk.h:
- (ChromeClient):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2012-02-21 Philippe Normand <pnormand@igalia.com>
-
- Fix one more GTK+ unit test after r108278.
-
- Reviewed by Alejandro G. Castro.
-
- * tests/testkeyevents.c:
- (map_event_cb): No longer grab focus here.
- (setup_keyevent_test): Grabbing focus here seems to be late enough in the process.
-
-2012-02-20 Martin Robinson <mrobinson@igalia.com>
-
- Fix GTK+ unit tests after r108281.
-
- Reviewed by Alejandro G. Castro.
-
- * tests/testwebplugindatabase.c:
- (test_webkit_web_plugin_database_get_plugins): Update the description used
- in the test.
-
-2012-02-20 Martin Robinson <mrobinson@igalia.com>
-
- Fix GTK+ unit tests after r108278.
-
- Reviewed by Alejandro G. Castro.
-
- Now that WebCore is no longer stealing focus, we need to
- adjust where we grab focus to ensure that it actually succeeds.
-
- * tests/testcopyandpaste.c:
- (map_event_cb): No longer grab focus here.
- (runPasteTestCallback): Grabbing focus here seems to be late enough in the process.
-
-2012-02-20 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Web content oftens steals focus from other widgets
- https://bugs.webkit.org/show_bug.cgi?id=77791
-
- Reviewed by Gustavo Noronha Silva.
-
- * tests/testwebview.c: Added a WebKit1 test to verify this behavior.
-
-2012-02-20 Gustavo Noronha Silva <gns@gnome.org>
-
- [GTK] Needs to claim being a more up-to-date Chrome
- https://bugs.webkit.org/show_bug.cgi?id=79044
-
- Reviewed by Martin Robinson.
-
- * webkit/webkitwebsettings.cpp:
- (chromeUserAgent): update the version of Chrome we claim to be
- to avoid warnings from sites such as Wordpress saying that our
- browser is outdated.
-
-2012-02-19 Paweł Forysiuk <tuxator@o2.pl>
- [GTK] Can't find webinspector and error page redirection on Windows
- https://bugs.webkit.org/show_bug.cgi?id=51616
-
- Use an abstraction for finding shared resources on Windows.
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::inspectorFilesPath):
-
-2012-02-19 Gustavo Noronha Silva <gns@gnome.org>
-
- Unreviewed. Remove gsettings schema from EXTRA_DIST.
-
- * GNUmakefile.am:
-
-2012-02-19 Gustavo Noronha Silva <gns@gnome.org>
-
- [GTK] Remove unused GSettings stuff
- https://bugs.webkit.org/show_bug.cgi?id=78995
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am: remove GSettings-related stuff.
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit): Remove unused code.
- * org.webkitgtk.gschema.xml.in: Removed.
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_execute_script): remove gsettings-related helper.
- * webkit/webkitwebinspectorprivate.h: Ditto.
-
-2012-02-17 Gyuyoung Kim <gyuyoung.kim@samsung.com>
-
- [GTK] change the way of registering DeviceOrientation clients.
- https://bugs.webkit.org/show_bug.cgi?id=78680
-
- Reviewed by Gustavo Noronha Silva.
-
- Bug 78085 removed deviceOrientationClient and deviceMotionClient from PageClients. Instead,
- DeviceOrientationClient and DeviceMotionClient should be registered by PageSupplement class.
- Chromium, mac and qt ports are already changed by Bug 78085.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2012-02-16 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] [AC] Events can starve accelerated compositing updates
- https://bugs.webkit.org/show_bug.cgi?id=78826
-
- Reviewed by Gustavo Noronha Silva.
-
- Instead of using a WebCore timer, which can be starved by GdkEvents,
- use a raw GLib timer with GDK_PRIORITY_EVENTS to drive AC updates.
- This prevents dragging from blocking rendering.
-
- * WebCoreSupport/AcceleratedCompositingContext.h:
- (AcceleratedCompositingContext): Store a GLib source tag instead of a WebCore timer.
- * WebCoreSupport/AcceleratedCompositingContextClutter.cpp:
- (WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext):
- (WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext):
- Remove the timer upon destruction.
- (WebKit::syncLayersTimeoutCallback): Added this callback for the GLib timer.
- (WebKit::AcceleratedCompositingContext::markForSync): Use a GLib timer.
- (WebKit::AcceleratedCompositingContext::syncLayersTimeout): Ditto.
- * WebCoreSupport/AcceleratedCompositingContextGL.cpp:
- (WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext):
- (WebKit::AcceleratedCompositingContext::~AcceleratedCompositingContext):
- Remove the timer upon destruction.
- (WebKit::syncLayersTimeoutCallback): Added this callback for the GLib timer.
- (WebKit::AcceleratedCompositingContext::markForSync): Use a GLib timer.
- (WebKit::AcceleratedCompositingContext::syncLayersTimeout): Ditto.
-
-2012-02-16 Adam Barth <abarth@webkit.org>
-
- Attempt to fix the GTK build.
-
- * WebCoreSupport/GeolocationClientGtk.cpp:
- (WebKit::GeolocationClient::requestPermission):
- (WebKit::GeolocationClient::cancelPermissionRequest):
-
-2012-02-16 Sergio Villar Senin <svillar@igalia.com>
-
- [soup] Move important SoupSession feature initialization to WebCore
- https://bugs.webkit.org/show_bug.cgi?id=68602
-
- Reviewed by Martin Robinson.
-
- Moved content sniffer and decoder initialization from WebKit to
- WebCore because network stuff will not work as expected without
- them.
-
- No new tests required as we're just moving stuff from WebKit to
- WebCore.
-
- * webkit/webkitglobals.cpp:
- (webkitInit):
-
-2012-02-16 Philippe Normand <pnormand@igalia.com>
-
- Unreviewed, rolling out r107941.
- http://trac.webkit.org/changeset/107941
- https://bugs.webkit.org/show_bug.cgi?id=68602
-
- Broke 23 http tests on GTK
-
- * webkit/webkitglobals.cpp:
- (webkitInit):
-
-2012-02-16 Sergio Villar Senin <svillar@igalia.com>
-
- [soup] Move important SoupSession feature initialization to WebCore
- https://bugs.webkit.org/show_bug.cgi?id=68602
-
- Reviewed by Martin Robinson.
-
- Moved content sniffer and decoder initialization from WebKit to
- WebCore because network stuff will not work as expected without
- them.
-
- No new tests required as we're just moving stuff from WebKit to
- WebCore.
-
- * webkit/webkitglobals.cpp:
- (webkitInit):
-
-2012-01-31 Raphael Kubo da Costa <kubo@profusion.mobi>
-
- [soup] Add support for multiple SoupSessions.
- https://bugs.webkit.org/show_bug.cgi?id=77341
-
- Reviewed by Gustavo Noronha Silva.
-
- Adapt to the changes to FrameNetworkingContext in WebCore.
-
- * GNUmakefile.am:
- * WebCoreSupport/FrameNetworkingContextGtk.cpp: Copied from Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.h.
- (WebKit):
- (WebKit::FrameNetworkingContextGtk::soupSession): Always return ResourceHandle::defaultSession().
- * WebCoreSupport/FrameNetworkingContextGtk.h:
- (FrameNetworkingContextGtk):
-
-2012-02-15 Sadrul Habib Chowdhury <sadrul@chromium.org>
-
- Notify ChromeClient when touch-event handlers are installed/removed.
- https://bugs.webkit.org/show_bug.cgi?id=77440
-
- Reviewed by Darin Fisher and Ryosuke Niwa.
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::numTouchEventHandlersChanged):
-
-2012-02-15 No'am Rosenthal <noam.rosenthal@nokia.com>
-
- [Texmap] Divide TextureMapperNode.cpp to 3 files.
- https://bugs.webkit.org/show_bug.cgi?id=76660
-
- Rename TextureMapperNode to TextureMapperLayer.
-
- Reviewed by Kenneth Rohde Christiansen.
-
- * WebCoreSupport/AcceleratedCompositingContext.h:
- (AcceleratedCompositingContext):
- * WebCoreSupport/AcceleratedCompositingContextGL.cpp:
- (WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext):
- (WebKit::AcceleratedCompositingContext::enabled):
- (WebKit::AcceleratedCompositingContext::renderLayersToWindow):
- (WebKit::AcceleratedCompositingContext::attachRootGraphicsLayer):
- (WebKit::AcceleratedCompositingContext::syncLayersTimeout):
-
-2012-02-11 Nikolas Zimmermann <nzimmermann@rim.com>
-
- Convert svg/animations to use SMIL methods for driving the timeline
- https://bugs.webkit.org/show_bug.cgi?id=78422
-
- Reviewed by Dirk Schulze.
-
- Remove SVG animation sampling functionality provided for DRT, which no longer uses it.
- Instead we switched the svg/animations tests to use SVGSVGElement.setCurrentTime.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-02-13 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] Add GSList to the list of GObject types in GOwnPtr
- https://bugs.webkit.org/show_bug.cgi?id=78487
-
- Reviewed by Philippe Normand.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::runOpenPanel): Use GOwnPtr<GSList> for the
- list of filenames returned by gtk_file_chooser_get_filenames().
-
-2012-02-09 Zan Dobersek <zandobersek@gmail.com>
-
- [GTK] Add DRT support for modal dialogs
- https://bugs.webkit.org/show_bug.cgi?id=53600
-
- Reviewed by Martin Robinson.
-
- Add support for running modal dialogs.
-
- A new signal is added to the WebKitWebView. When emitted, the web view
- is requesting to be displayed as a modal dialog. If accepted, the
- ChromeClient then establishes a loop that is run until the chrome is destroyed.
- If denied, nothing is done.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient):
- (WebKit::ChromeClient::chromeDestroyed):
- (WebKit::ChromeClient::canRunModal):
- (WebKit::ChromeClient::runModal):
- * WebCoreSupport/ChromeClientGtk.h:
- (ChromeClient):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2012-02-09 Zan Dobersek <zandobersek@gmail.com>
-
- [Gtk] security/set-form-autocomplete-attribute.html fails
- https://bugs.webkit.org/show_bug.cgi?id=78261
-
- Reviewed by Martin Robinson.
-
- Add a helper function to DumpRenderTreeSupportGtk, returning
- whether or not an element does perform autocompletion.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::elementDoesAutoCompleteForElementWithId):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- (DumpRenderTreeSupportGtk):
-
-2012-02-09 Martin Robinson <mrobinson@igalia.com>
-
- Build fix for GTK+ 2.x after my previous commit.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_expose_event): The name of the event is expose_event and not expose.
-
-2012-02-08 Dan Vrátil <dvratil@redhat.com>, Milan Crha <mcrha@redhat.com>
-
- [GTK] Embedded GtkWidgets are not drawn
- https://bugs.webkit.org/show_bug.cgi?id=63451
-
- Insert plugin widgets to WebKitWebView container as it's children.
- Chain up to parent in webkit_web_view_draw() to ensure the child widgets are drawn.
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createPlugin):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_draw):
-
-2012-02-08 Mario Sanchez Prada <msanchez@igalia.com>
-
- [Gtk] atk_text_get_text_at_offset() fails to provide the correct line for list items whose text wraps
- https://bugs.webkit.org/show_bug.cgi?id=73431
-
- Reviewed by Chris Fleizach.
-
- Updated unit test to check text wrapping accross different lines
- inside list items with bullet markers.
-
- * tests/testatk.c:
- (testWebkitAtkGetTextAtOffsetWithSpecialCharacters): Updated test.
-
-2012-02-06 Martin Robinson <mrobinson@igalia.com> and Nayan Kumar K <nayankk@motorola.com>
-
- [GTK] Add TextureMapperGL implementation
- https://bugs.webkit.org/show_bug.cgi?id=75308
-
- Reviewed by Alejandro G. Castro.
-
- * GNUmakefile.am: Add AcceleratedCompositingContextGL to the list.
- * WebCoreSupport/AcceleratedCompositingContext.h:
- (AcceleratedCompositingContext): Added some members for AcceleratedCompositingContextGL.
- * WebCoreSupport/AcceleratedCompositingContextClutter.cpp: Added empty implementations
- for GraphicsLayerClient. This is only used for the GL variant.
- * WebCoreSupport/AcceleratedCompositingContextGL.cpp: Added.
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::performAllPendingScrolls): Update the root layer while scrolling.
- (WebKit::ChromeClient::paint): Update the root layer after painting.
- * webkit/webkitwebsettings.cpp: Added an enable-accelerated-compositing setting.
- * webkit/webkitwebsettingsprivate.h: Ditto.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_draw): Call into TextureMapper now.
- (webkit_web_view_realize): Use gdk_window_ensure_native here.
- (webkit_web_view_update_settings): Support the new enable-accelerated-compositing setting.
- (webkit_web_view_settings_notify): Ditto.
-
-2012-02-06 Gustavo Noronha Silva <gns@gnome.org>
-
- Do not try to chdir to the directory where the executable is in
- only if the path is absolute. This makes tests runnable from
- anywhere.
-
- Reviewed by Martin Robinson.
-
- * tests/test_utils.c:
- (testutils_relative_chdir):
-
-2012-02-06 Gustavo Noronha Silva <gns@gnome.org>
-
- Unreviewed fix for the new API test that is failing -
- WEBKIT_INSPECTOR_PATH needs to be set, since we do not install our
- builds.
-
- * tests/testwebinspector.c:
- (main):
-
-2012-02-05 Gustavo Noronha Silva <gns@gnome.org>
-
- [GTK] Insta-crash when closing browser with inspector window opened
- https://bugs.webkit.org/show_bug.cgi?id=50744
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am:
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::releaseFrontendPage): also let go of the
- frontend client when releasing the frontend page;
- (WebKit::InspectorFrontendClient::~InspectorFrontendClient(): Call releaseFrontendPage()
- like other ports do instead of just disconnectFrontendClient().
- (WebKit::InspectorFrontendClient::destroyInspectorWindow): Use GRefPtr for the
- inspector ref.
- (WebKit::InspectorFrontendClient::bringToFront): Adjust for GRefPtr usage.
- (WebKit::InspectorFrontendClient::attachWindow): Ditto.
- (WebKit::InspectorFrontendClient::detachWindow): Ditto.
- (WebKit::InspectorFrontendClient::inspectedURLChanged): Ditto.
- * WebCoreSupport/InspectorClientGtk.h:
- (InspectorFrontendClient): Use GRefPtr for inspector member.
- * tests/testwebinspector.c: Added. Test that killing a WebView with the inspector
- open does not crash, and that closing and reinspecting works.
- (quitLoop):
- (consoleMessageCallback):
- (inspectElementCallback):
- (closeInspector):
- (showInspector):
- (test_webkit_web_inspector_close_and_inspect):
- (test_webkit_web_inspector_destroy_inspected_web_view):
- (main):
-
-2012-02-06 Gustavo Noronha Silva <gns@gnome.org>
-
- Add a null check for the gdkwindow, that will happen if the window
- is not mapped.
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::setCursor):
-
-2012-02-06 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] WebKitWebView does a lot of work during size_allocate when not mapped
- https://bugs.webkit.org/show_bug.cgi?id=77743
-
- Reviewed by Gustavo Noronha Silva.
-
- Instead of resizing the guts of a WebView when it's not mapped, wait
- until it's mapped and do one resize. This prevents unmapped WebViews
- from adding to a container's resize cost.
-
- * webkit/webkitwebview.cpp:
- (resizeWebViewFromAllocation): Abstracted out this helper.
- (webkit_web_view_size_allocate): Wait until map to resize umapped widgets.
- (webkitWebViewMap): Added this vmethod implementation.
- (webkit_web_view_class_init): Added vmethod.
- * webkit/webkitwebviewprivate.h: Added new needsResizeOnMap member.
-
-2012-02-06 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Update NEWS and configure.ac for 1.7.5 release
- https://bugs.webkit.org/show_bug.cgi?id=77859
-
- Reviewed by Philippe Normand.
-
- * NEWS: Added release notes for 1.7.5.
-
-2012-02-06 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Fix several gtkdoc-fixxref warnings
- https://bugs.webkit.org/show_bug.cgi?id=77613
-
- Reviewed by Martin Robinson.
-
- * docs/webkitgtk-docs.sgml: Remove webkitspellcheckerenchant
- section.
- * docs/webkitgtk-sections.txt: Remove webkitspellcheckerenchant
- symbols and move WebKitWebNavigationReason from the private
- section to the global section.
- * webkit/webkitwebnavigationaction.h: Document
- WebKitWebNavigationReason enum.
-
-2012-02-02 Kalev Lember <kalevlember@gmail.com>
-
- [GTK] Don't use uint
- https://bugs.webkit.org/show_bug.cgi?id=77678
-
- Reviewed by Martin Robinson.
-
- With the MingGW cross compiler toolchain in Fedora, uint wasn't
- defined, so use unsigned int instead.
-
- * WebCoreSupport/ChromeClientGtk.h:
- (ChromeClient): Use unsigned int instead of uint
-
-2012-02-02 Claudio Saavedra <csaavedra@igalia.com> and Martin Robinson <mrobinson@igalia.com>
-
- [GTK] WebKitWebView won't work in a GtkOffscreenWindow
- https://bugs.webkit.org/show_bug.cgi?id=76911
-
- Reviewed by Philippe Normand.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::windowRect): Use the new widgetIsOnscreenToplevelWindow helper.
- (WebKit::ChromeClient::setWindowRect): Ditto.
- (WebKit::ChromeClient::unfocus): Ditto.
- (WebKit::ChromeClient::runOpenPanel): Ditto.
- * tests/testwebview.c: Added a test to ensure that loading a page in an offscreen window does not crash.
- * webkit/webkitglobals.cpp:
- (currentToplevelCallback):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_print_full):
- (webkit_web_frame_print):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_focus_in_event):
- (webkit_web_view_script_dialog):
-
-2012-02-02 Mario Sanchez Prada <msanchez@igalia.com>
-
- [Gtk] atk_text_get_text_at_offset() sometimes fails to provide the correct line
- https://bugs.webkit.org/show_bug.cgi?id=72382
-
- Reviewed by Martin Robinson.
-
- New unit test to ensure the right line is retrieved for the first
- position of each line in a multiline preformatted portion of text.
-
- * tests/testatk.c:
- (testWebkitAtkGetTextAtOffsetWithPreformattedText): New unit test.
- (main): Add the new unit test.
-
-2012-02-01 Philippe Normand <pnormand@igalia.com>
-
- [GStreamer] FFTFrame implementation
- https://bugs.webkit.org/show_bug.cgi?id=73545
-
- Reviewed by Chris Rogers.
-
- * GNUmakefile.am: Remove libfftw compilation flags.
-
-2012-02-01 Philippe Normand <pnormand@igalia.com>
-
- [GTK] unittests/testloading crashes
- https://bugs.webkit.org/show_bug.cgi?id=77544
-
- Reviewed by Xan Lopez.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFailLoading): Bail out
- early from dispatchDidFailLoading if the error is the result of an
- interrupted load.
-
-2012-02-01 Philippe Normand <pnormand@igalia.com> and Sergio Villar Senin <svillar@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Improve FrameLoader signals. Resource loading
- https://bugs.webkit.org/show_bug.cgi?id=49543
-
- New signals:
- WebKitWebFrame::resource-request-starting
- WebKitWebFrame::resource-response-received
- WebKitWebFrame::resource-load-finished
- WebKitWebFrame::resource-content-length-received
- WebKitWebFrame::resource-load-failed
- WebKitWebResource::response-received
- WebKitWebResource::load-failed
- WebKitWebResource::load-finished
- WebKitWebResource::content-length-received
- WebKitWebView::resource-response-received
- WebKitWebView::resource-load-finished
- WebKitWebView::resource-content-length-received
- WebKitWebView::resource-load-failed
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchWillSendRequest):
- (WebKit::FrameLoaderClient::dispatchDidReceiveResponse):
- (WebKit::FrameLoaderClient::dispatchDidReceiveContentLength):
- (WebKit::FrameLoaderClient::dispatchDidFinishLoading):
- (WebKit::FrameLoaderClient::dispatchDidFailLoading):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_class_init):
- * webkit/webkitwebresource.cpp:
- (webkit_web_resource_class_init):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
- * webkitmarshal.list:
-
-2012-01-23 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] Refactor GTK's accessibilitity code to be more modular
- https://bugs.webkit.org/show_bug.cgi?id=76783
-
- Reviewed by Martin Robinson.
-
- Update callers to WebKitAccessible's public functions.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::getFocusedAccessibleElement):
- (modifyAccessibilityValue):
- (DumpRenderTreeSupportGtk::accessibilityHelpText):
-
-2012-01-22 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] Refactor GTK's accessibilitity code to be more modular
- https://bugs.webkit.org/show_bug.cgi?id=76783
-
- Reviewed by Martin Robinson.
-
- Update the include for the AccessibilityObject wrapper header.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp: Update include.
- * webkit/webkitwebframe.cpp: Ditto.
-
-2012-01-22 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] ATK text-caret-moved and text-selection-changed events not being emitted
- https://bugs.webkit.org/show_bug.cgi?id=76069
-
- Reviewed by Martin Robinson.
-
- Update caret browsing related unit tests to check emissions of
- 'text-caret-moved' and 'text-selection-changed' signals.
-
- * tests/testatk.c:
- (textCaretMovedCallback): New callback for 'text-caret-moved'.
- (testWebkitAtkCaretOffsets): Check emissions of 'text-caret-moved'.
- (textSelectionChangedCallback): New callback for 'text-selection-changed'.
- (testWebkitAtkTextSelections): Check emissions of 'text-selection-changed'.
-
-2012-01-18 Evan Nemerson <evan@coeus-group.com>
-
- [GTK] WebKit-3.0.gir does not include information about C includes or exported packages
- https://bugs.webkit.org/show_bug.cgi?id=49875
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am: Add some information to the GIR generator to fix
- Vala binding generation.
-
-2012-01-18 Carlos Garnacho <carlosg@gnome.org>
-
- [GTK] Listen to GDK_SCROLL_MASK
- https://bugs.webkit.org/show_bug.cgi?id=76529
-
- Set GDK_SCROLL_MASK explicitly, as WebKitWebView does handle
- scroll events, scrolling currently works because GTK+ happens
- to send such events to widgets listening to GDK_BUTTON_PRESS_MASK,
- but this isn't the intended behavior, so it's subject to change.
-
- Reviewed by Martin Robinson.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_realize):
-
-2012-01-17 Martin Robinson <mrobinson@igalia.com>
-
- [Gtk] Input text field not repainted when value is changed
- https://bugs.webkit.org/show_bug.cgi?id=76279
-
- Reviewed by Gustavo Noronha Silva.
-
- Force pending relayouts before freezing the dirty region in a temporary.
- This prevents the following code from throwing the dirty updates away
- after the original paint is finished.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::paintWebView): Remove the relayout.
- (WebKit::ChromeClient::paint): Move the relayout here, before the
- dirty region is frozen.
-
-2012-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Update NEWS and configure.ac for 1.7.4 release
- https://bugs.webkit.org/show_bug.cgi?id=76375
-
- Reviewed by Philippe Normand.
-
- * NEWS: Added release notes for 1.7.4.
-
-2012-01-13 Mario Sanchez Prada <msanchez@igalia.com>
-
- Unreviewed, rolling out r104905.
- http://trac.webkit.org/changeset/104905
- https://bugs.webkit.org/show_bug.cgi?id=76267
-
- This patch broke tests in the GTK 64bit Debug bot (Requested
- by msanchez on #webkit).
-
- * tests/testatk.c:
- (testWebkitAtkCaretOffsets):
- (testWebkitAtkTextSelections):
-
-2012-01-13 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] ATK text-caret-moved and text-selection-changed events not being emitted
- https://bugs.webkit.org/show_bug.cgi?id=76069
-
- Reviewed by Martin Robinson.
-
- Update caret browsing related unit tests to check emissions of
- 'text-caret-moved' and 'text-selection-changed' signals.
-
- * tests/testatk.c:
- (textCaretMovedCallback): New callback for 'text-caret-moved'.
- (testWebkitAtkCaretOffsets): Check emissions of 'text-caret-moved'.
- (textSelectionChangedCallback): New callback for 'text-selection-changed'.
- (testWebkitAtkTextSelections): Check emissions of 'text-selection-changed'.
-
-2012-01-12 Mario Sanchez Prada <msanchez@igalia.com>
-
- [Gtk] Removed duplicated unit test.
-
- The unit test testWebkitAtkGetTextAtOffsetForms is exactly the
- same test case than testWebkitAtkGetTextAtOffset, so it makes no
- sense to have it duplicated.
-
- Rubber-stamped by Martin Robinson.
-
- * tests/testatk.c:
- (main): Removed testWebkitAtkGetTextAtOffsetForms.
-
-2012-01-10 Mario Sanchez Prada <msanchez@igalia.com>
-
- AX: support helpText() in DumpRenderTree
- https://bugs.webkit.org/show_bug.cgi?id=40193
-
- Reviewed by Chris Fleizach.
-
- Add support for retrieving WebCore's AccessibilityObject's
- helpText from the GTK DumpRenderTree.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::accessibilityHelpText): Returns result
- of calling to helpText() over the core accessibility object's.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2012-01-09 Mario Sanchez Prada <msanchez@igalia.com>
-
- [Gtk] Regression: text-inserted events lack text inserted and current line
- https://bugs.webkit.org/show_bug.cgi?id=72830
-
- Reviewed by Martin Robinson.
-
- Updated unit tests to check that both getting the current position
- for the caret and the exposed text at, before or after a given
- offset for an accessible object works as expected.
-
- * tests/testatk.c:
- (runGetTextTests): For objects implementing AtkEditableText, try
- to change the exposed text and retrieve it again as a full line.
- (testWebkitAtkCaretOffsets): For a text control (a text entry),
- set the caret offset to a value greater than 1 and retrieve it.
-
-2012-01-05 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] [AC] Introduce AcceleratedCompositingContext to isolate different accelerated compositing implementations
- https://bugs.webkit.org/show_bug.cgi?id=75519
-
- Reviewed by Alejandro G. Castro.
-
- Add an AcceleratedCompositingContext which will isolate all the different accelerated compositing
- implementations from one another. For right now this just includes the Clutter version.
-
- * GNUmakefile.am: Add the new files to the source list.
- * WebCoreSupport/AcceleratedCompositingContext.h: Added.
- * WebCoreSupport/AcceleratedCompositingContextClutter.cpp: Added. Existing
- clutter AC code has moved here.
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::attachRootGraphicsLayer): Use the new AccleratedCompositingContext now
- instead of calling into the WebView.
- (WebKit::ChromeClient::setNeedsOneShotDrawingSynchronization):Ditto.
- (WebKit::ChromeClient::scheduleCompositingLayerSync): Ditto.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_size_allocate): Call in the ACContext.
- (webkit_web_view_init): Initialize the ACContext.
- * webkit/webkitwebviewprivate.h: Add the ACContext as a private member.
-
-2012-01-03 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Use gdk_screen_get_monitor_workarea() when available for screenAvailableRect()
- https://bugs.webkit.org/show_bug.cgi?id=75435
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am: Make sure unit tests link to X11.
-
-2011-12-20 Yuta Kitamura <yutak@chromium.org>
-
- [GTK] Change default WebSocket protocol to the latest one
- https://bugs.webkit.org/show_bug.cgi?id=74064
-
- Reviewed by Martin Robinson.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- Use hybi WebSocket protocol by default.
-
-2011-12-19 Sam Weinig <sam@webkit.org>
-
- More PlatformEvent cleanup
- https://bugs.webkit.org/show_bug.cgi?id=74831
-
- Reviewed by Dan Bernstein.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_forward_context_menu_event):
- (webkit_web_view_get_hit_test_result):
- Update to use new names, access style.
-
-2011-12-16 Ryosuke Niwa <rniwa@webkit.org>
-
- Rename registerCommandFor(Undo|Redo) to register(Undo|Redo)Step
- https://bugs.webkit.org/show_bug.cgi?id=74748
-
- Reviewed by Eric Seidel.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::registerUndoStep):
- (WebKit::EditorClient::registerRedoStep):
- * WebCoreSupport/EditorClientGtk.h:
-
-2011-12-16 Sam Weinig <sam@webkit.org>
-
- Give PlatformEvents a base class
- https://bugs.webkit.org/show_bug.cgi?id=74685
-
- Reviewed by Anders Carlsson.
-
- Add a base class for PlatformMouseEvent, PlatformKeyboardEvent, PlatformWheelEvent
- and PlatformGestureEvent and move Type enumeration and modifiers down to it.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeyboardEvent):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_popup_menu_handler):
-
-2011-12-16 Ryosuke Niwa <rniwa@webkit.org>
-
- Only EditCommandComposition should implement unapply and reapply
- https://bugs.webkit.org/show_bug.cgi?id=74490
-
- Reviewed by Eric Seidel.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::registerCommandForUndo):
- (WebKit::EditorClient::registerCommandForRedo):
- (WebKit::EditorClient::undo):
- (WebKit::EditorClient::redo):
- * WebCoreSupport/EditorClientGtk.h:
-
-2011-12-16 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Update NEWS and configure.ac for 1.7.3 release
- https://bugs.webkit.org/show_bug.cgi?id=74699
-
- Reviewed by Philippe Normand.
-
- * NEWS: Added release notes for 1.7.3.
-
-2011-12-14 Jing Zhao <jingzhao@chromium.org>
-
- Opening two popup menus by dispatchEvent() makes problems.
- https://bugs.webkit.org/show_bug.cgi?id=73304
-
- Reviewed by Kent Tamura.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::hasOpenedPopup): Not implemented.
- * WebCoreSupport/ChromeClientGtk.h: Overrides hasOpenedPopup().
-
-2011-12-12 Ryosuke Niwa <rniwa@webkit.org>
-
- WebKit code shouldn't be calling applyCommand directly
- https://bugs.webkit.org/show_bug.cgi?id=74337
-
- Reviewed by Darin Adler.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_replace_selection):
-
-2011-12-12 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] gtk_widget_size_allocate for plugin widgets should happen in the WebView size-allocate method
- https://bugs.webkit.org/show_bug.cgi?id=72805
-
- Reviewed by Gustavo Noronha Silva.
-
- Instead of immediately calling gtk_widget_size during painting, defer
- this until the size-allocate method of the WebView.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::paint): If any child widgets have a pending allocation
- call gtk_widget_size_allocate.
- * webkit/webkitwebview.cpp:
- (updateChildAllocationFromPendingAllocation): Added this helper.
- (webkit_web_view_size_allocate): Call the helper on all child widgets.
-
-2011-12-09 Joone Hur <joone.hur@collabora.co.uk>
-
- [GTK] Initial implementation of Accelerated Compositing using Clutter
- https://bugs.webkit.org/show_bug.cgi?id=73319
-
- This patch allows to add a GtkClutterEmbed to embed Clutter Actors in WebKitWebView and
- set the root GraphicsLayer to WebKitWebView when Accelerated Compositing needs to be enabled.
-
- Reviewed by Gustavo Noronha Silva.
-
- * GNUmakefile.am:
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::attachRootGraphicsLayer): Set the root GraphicsLayer to WebKitWebView.
- (WebKit::ChromeClient::allowedCompositingTriggers): Allow to support CSS 3D Transforms only.
- * webkit/webkitglobals.cpp:
- (webkitInit): Call gtk_clutter_init().
- * webkit/webkitwebview.cpp:
- (webkit_web_view_size_allocate): Set the size of GtkClutterEmbed when the view is changed.
- (webkit_web_view_init)
- (webViewSetRootGraphicsLayer): Add the GtkClutterEmbed to the WebKitWebView as a child.
- (webViewDetachRootGraphicsLayer): Remove the GtkClutterEmbed from the WebKitWebView.
- (webViewSyncLayers): Commit layer changes.
- (webViewMarkForSync): Set to call webViewSyncLayers using g_timeout_add.
- * webkit/webkitwebviewprivate.h:
-
-2011-12-07 Mary Wu <mary.wu@torchmobile.com.cn>
-
- Change function name InitializeLoggingChannelsIfNecessary to follow coding style guideline
- https://bugs.webkit.org/show_bug.cgi?id=73986
-
- Reviewed by Kenneth Rohde Christiansen.
-
- * webkit/webkitglobals.cpp:
- (webkitInit):
-
-2011-12-05 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] Move emissions of AtkDocument signals down to WebCore
- https://bugs.webkit.org/show_bug.cgi?id=73750
-
- Reviewed by Chris Fleizach.
-
- Removed code for emission of AtkDocument signals.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::notifyStatus): Removed no longer used code.
-
-2011-12-04 Mario Sanchez Prada <msanchez@igalia.com>
-
- [Gtk] Check for the load-complete event only in the unit tests.
-
- There is currently a known issue happening in debug builds when
- reloading the webview if it was loaded before through the function
- webkit_web_view_load_string, resulting in a ASSERT failing (see
- bug 50331) so we can't check for the reload event here, since it
- makes the test to fail. Fortunately, checking for load-complete
- event is a good enough test, so this small patch is about that.
-
- Rubber-stamped by Philippe Normand.
-
- * tests/testatk.c:
- (testWebkitAtkDocumentLoadingEvents): Don't load and then reload
- to check events, just load once and check whether the
- 'load-complete' event has happened.
-
-2011-12-03 Mario Sanchez Prada <msanchez@igalia.com>
-
- Removing document related events from DRT
-
- [GTK] Don't log document events in DRT
- https://bugs.webkit.org/show_bug.cgi?id=73746
-
- Reviewed by Martin Robinson.
-
- New unit test to check events when reloading a document. This
- replaces the former document-reload-events.html layout test.
-
- * tests/testatk.c:
- (updateLoadingEventsResult): New, updates a global variable to
- allow checking later on that the right signals were emmitted.
- (documentLoadingEventCallback): New, global listener for load-complete
- and reload signals over the document object (the web area).
- (testWebkitAtkDocumentLoadingEvents): New unit test, globally
- connects to document-related signals and check they are properly
- emitted when reloading the web view.
- (main): Added new test.
-
-2011-12-03 Xan Lopez <xlopez@igalia.com>
-
- [GTK] Implement History API FrameLoaderClient methods
- https://bugs.webkit.org/show_bug.cgi?id=59017
-
- Reviewed by Gustavo Noronha Silva.
-
- Fake the load process when the new HTML5 History APIs are
- used. Otherwise the UA does not have a chance of updating the URL
- entry, back/forward buttons, etc.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidNavigateWithinPage): fake a
- load process.
- (WebKit::FrameLoaderClient::dispatchDidPushStateWithinPage): call
- dispatchDidNavigateWithinPage.
- (WebKit::FrameLoaderClient::dispatchDidReplaceStateWithinPage):
- ditto.
- (WebKit::FrameLoaderClient::dispatchDidPopStateWithinPage): do
- nothing, because push was already called, but note this in a
- comment.
- * WebCoreSupport/FrameLoaderClientGtk.h: add the new method.
-
-2011-12-02 Philippe Normand <pnormand@igalia.com>
-
- [GStreamer] Fullscreen controller support for the new WebKit Fullscreen API
- https://bugs.webkit.org/show_bug.cgi?id=66968
-
- Reviewed by Martin Robinson.
-
- If the element being fullscreened is a video use the native
- fullscreen controls.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::enterFullScreenForElement):
- (WebKit::ChromeClient::exitFullScreenForElement):
-
-2011-12-01 Philippe Normand <pnormand@igalia.com>
-
- [GTK] scrollbars interfering with fullscreen (in-window) video rendering
- https://bugs.webkit.org/show_bug.cgi?id=73577
-
- Reviewed by Martin Robinson.
-
- Disable scrollbars when switching to fullscreen.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::contentsSizeChanged): Ignore size changes
- when an element is being displayed fullscreen.
- (WebKit::ChromeClient::enterFullScreenForElement): Disable
- scrollbars when entering fullscreen.
- * WebCoreSupport/GtkAdjustmentWatcher.cpp: Added 2 methods to
- enable/disable scrollbars and one method to know whether they are
- enabled or not.
- (WebKit::GtkAdjustmentWatcher::GtkAdjustmentWatcher):
- (WebKit::updateAdjustmentFromScrollbar):
- (WebKit::GtkAdjustmentWatcher::updateAdjustmentsFromScrollbars):
- (WebKit::GtkAdjustmentWatcher::updateAdjustmentsFromScrollbarsLater):
- (WebKit::GtkAdjustmentWatcher::disableAllScrollbars):
- (WebKit::GtkAdjustmentWatcher::enableAllScrollbars):
- * WebCoreSupport/GtkAdjustmentWatcher.h:
- (WebKit::GtkAdjustmentWatcher::scrollbarsDisabled):
-
-2011-11-21 Philippe Normand <pnormand@igalia.com>
-
- [GTK] enable-webaudio websetting
- https://bugs.webkit.org/show_bug.cgi?id=69836
-
- Reviewed by Martin Robinson.
-
- * webkit/webkitwebsettings.cpp: New enable-webaudio boolean
- setting, set to FALSE by default.
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- * webkit/webkitwebsettingsprivate.h: Ditto.
- * webkit/webkitwebview.cpp: Update WebCore settings when
- enable-webaudio value changes.
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2011-11-30 Alexey Proskuryakov <ap@apple.com>
-
- Remove an unneeded argument from FrameLoaderClient::download
- https://bugs.webkit.org/show_bug.cgi?id=73486
-
- Reviewed by Andreas Kling.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::download):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- Updated for the change.
-
-2011-11-30 Alejandro G. Castro <alex@igalia.com>
-
- [GTK] Add TextureMapperCairo boilerplate implementation
- https://bugs.webkit.org/show_bug.cgi?id=73440
-
- Add texture mapper glue to the widget and chrome client.
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::attachRootGraphicsLayer):
- (WebKit::ChromeClient::setNeedsOneShotDrawingSynchronization):
- (WebKit::ChromeClient::scheduleCompositingLayerSync):
- (WebKit::ChromeClient::allowedCompositingTriggers):
- * webkit/webkitwebview.cpp:
- (webViewSetRootGraphicsLayer):
- (webViewMarkForSync):
- * webkit/webkitwebviewprivate.h:
-
-2011-11-30 Philippe Normand <pnormand@igalia.com>
-
- [GTK] HTML5 Youtube video fullscreen button doesn't work
- https://bugs.webkit.org/show_bug.cgi?id=73456
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::supportsFullScreenForElement): Ignore
- withKeyboard argument value, like Chrome's implementation.
-
-2011-11-29 Sergio Villar Senin <svillar@igalia.com>
-
- [GTK] SIGSEV when a WebKitDownload fails
- https://bugs.webkit.org/show_bug.cgi?id=72883
-
- Reviewed by Xan Lopez.
-
- After r100769 http status codes >= 400 trigger download
- failures. We must ensure that the download is properly cancelled
- before clearing the ResourceHandle client to avoid crashes.
-
- * webkit/webkitdownload.cpp:
- (DownloadClient::didReceiveResponse):
-
-2011-11-29 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Custom fonts on surlybikes.com and boingboing.net do not load
- https://bugs.webkit.org/show_bug.cgi?id=69115
-
- Reviewed by Gustavo Noronha Silva.
-
- Instead of pretending to be Safari/Linux, pretend to be a Linux Chrome.
- This fixes pages that assume that if a browser is Safari, but not OS X, it is
- the iOS version of Safari.
-
- * tests/testwebsettings.c:
- (test_webkit_web_settings_user_agent): Update the test to reflect that the
- user agent does not change.
- * webkit/webkitwebsettings.cpp:
- (chromeUserAgent): Renamed this from webkitUserAgent to more accurately
- describe what it is.
- (webkit_web_settings_class_init): Just use an empty string when initializing
- the user agent to reduce code duplication.
- (webkit_web_settings_set_property): Updated to reflect new method name.
- (userAgentForURL): We don't need to special case Google Calendar any longer.
-
-2011-11-29 Mario Sanchez Prada <msanchez@igalia.com>
-
- [Gtk] Regression: text-inserted events lack text inserted and current line
- https://bugs.webkit.org/show_bug.cgi?id=72830
-
- Reviewed by Chris Fleizach.
-
- Updated unit test to handle the new 'text-insert' and
- 'text-remove' signals, instead of the 'text-changed' one.
-
- * tests/testatk.c:
- (textChangedCb): Update a global variable with the result of the
- text change, so we can check its value later.
- (testWebkitAtkTextChangedNotifications): Connect to the
- 'text-insert' and 'text-remove' signals and check, in a way more
- carefully way than it was done before, that the signals are being
- properly emitted, and that the information attached to them is the
- right one for each case (insert/remove, offset, count and text).
-
-2011-11-28 Stefan Zwanenburg <stefanhetzwaantje@gmail.com>
-
- WebKitGTK+-1.7.2 build error due to a reference to gdk_disable_multidevice()
- https://bugs.webkit.org/show_bug.cgi?id=73206
-
- Reviewed by Martin Robinson.
-
- * tests/testatk.c:
- (initializeTestingFramework): Don't use gdk_disable_multidevice()
- when using GTK2.
-
-2011-11-26 Pavel Feldman <pfeldman@google.com>
-
- Web Inspector: remove disconnectFromBackend from the protocol.
- https://bugs.webkit.org/show_bug.cgi?id=73127
-
- Reviewed by Yury Semikhatsky.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::inspectorDestroyed):
- (WebKit::InspectorClient::closeInspectorFrontend):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2011-11-26 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r101193.
- http://trac.webkit.org/changeset/101193
- https://bugs.webkit.org/show_bug.cgi?id=73158
-
- Breaks Windows and Qt minimal. (Requested by pfeldman on
- #webkit).
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::inspectorDestroyed):
- (WebKit::InspectorFrontendClient::disconnectFromBackend):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2011-11-26 Pavel Feldman <pfeldman@google.com>
-
- Web Inspector: remove disconnectFromBackend from the protocol.
- https://bugs.webkit.org/show_bug.cgi?id=73127
-
- Reviewed by Yury Semikhatsky.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::inspectorDestroyed):
- (WebKit::InspectorClient::closeInspectorFrontend):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2011-11-17 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Integrate build-gtkdoc into build-webkit and make
- https://bugs.webkit.org/show_bug.cgi?id=72626
-
- Reviewed by Philippe Normand.
-
- * docs/GNUmakefile.am: Removed.
- * docs/version.xml.in: Removed.
-
-2011-11-23 Kaustubh Atrawalkar <kaustubh@motorola.com>
-
- Documentation fix for load-committed in webkitwebframe
- https://bugs.webkit.org/show_bug.cgi?id=72927
-
- Reviewed by Martin Robinson.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_class_init):
-
-2011-11-22 Pavel Feldman <pfeldman@google.com>
-
- Web Inspector: remove Inspector::bringToFront from the protocol.
- https://bugs.webkit.org/show_bug.cgi?id=72937
-
- Reviewed by Yury Semikhatsky.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::bringFrontendToFront):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2011-11-22 Pavel Feldman <pfeldman@google.com>
-
- Web Inspector: strip unused InspectorController methods.
- https://bugs.webkit.org/show_bug.cgi?id=72886
-
- Reviewed by Yury Semikhatsky.
-
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_set_property):
- (webkit_web_inspector_get_property):
-
-2011-11-21 Yuta Kitamura <yutak@chromium.org>
-
- [GTK] Enable WebSocket hybi tests
- https://bugs.webkit.org/show_bug.cgi?id=72870
-
- Reviewed by Xan Lopez.
-
- Change the settings value through DumpRenderTreeSupportGtk, because we do not
- want to expose this as a public API.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setHixie76WebSocketProtocolEnabled):
- Change the value of a flag in WebCore::Settings.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-11-21 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Update NEWS and configure.ac for 1.7.2 release
- https://bugs.webkit.org/show_bug.cgi?id=72868
-
- Reviewed by Xan Lopez.
-
- * NEWS: Added release notes for 1.7.2.
-
-2011-10-17 Antonio Gomes <agomes@rim.com>
-
- Pass a Frame* parameter in EditorClient::respondToChangedSelection
- https://bugs.webkit.org/show_bug.cgi?id=70248
-
- Reviewed by Ryosuke Niwa.
-
- * WebCoreSupport/EditorClientGtk.cpp: Make use of the newly added Frame* parameter.
- (WebKit::EditorClient::respondToChangedSelection):
- * WebCoreSupport/EditorClientGtk.h:
-
-2011-11-18 Martin Robinson <mrobinson@igalia.com>
-
- REGRESSION (r99924): broke 2 pasteboard tests on GTK
- https://bugs.webkit.org/show_bug.cgi?id=72131
-
- Reviewed by Tony Chang.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::setSelectionPrimaryClipboardIfNeeded): Use the new clearAll method.
-
-2011-11-18 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] Accessibility API tests not loading Gtk's accessibility implementation
- https://bugs.webkit.org/show_bug.cgi?id=72732
-
- Reviewed by Philippe Normand.
-
- Ensure that the GAIL module is being loaded by avoiding using
- gtk_test_init() directly, but a modified version of it.
-
- * tests/testatk.c:
- (testWebkitAtkParentForRootObject): Use a normal GtkWidget (a
- GtkWindow) as the parent container for the webView, instead of
- using a dummy webView for that, which was hackish.
- (testWebkitAtkSetParentForObject): Use normal GtkWidgets instead
- of dummy webViews (a GtkWindow and a GtkButton).
- (initializeTestingFramework): New function, identical to
- gtk_test_init(), but loading GAIL as the only GTK module.
- (main): Use initializeTestingFramework().
-
-2011-11-18 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Downloads not started by WebView only fail for transport errors
- https://bugs.webkit.org/show_bug.cgi?id=72718
-
- Reviewed by Martin Robinson.
-
- Abort the download with an error if the response contains an
- error code. It adds a new test case to the download unit tests.
-
- * tests/testdownload.c:
- (notifyDownloadStatusCallback):
- (serverCallback):
- (test_webkit_download_not_found):
- (main):
- * webkit/webkitdownload.cpp:
- (DownloadClient::didReceiveResponse): Check whether http status of
- the response is an error code and emit error signal in such case.
-
-2011-11-18 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] Accessibility API tests failing because of using non-WebKit GtkWidgets
- https://bugs.webkit.org/show_bug.cgi?id=72708
-
- Reviewed by Xan Lopez.
-
- Do not use non-WebKit GtkWidget's in unit tests, to avoid problems
- when GTK's accessibility implementation is not being loaded.
-
- * tests/testatk.c:
- (testWebkitAtkParentForRootObject): Use a dummy WebKitWebView
- widget as the parent container needed for this unit test.
- (testWebkitAtkSetParentForObject): Ditto.
-
-2011-11-17 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Remove the last remaining WebKit1 gtkdoc warnings
- https://bugs.webkit.org/show_bug.cgi?id=72627
-
- Reviewed by Philippe Normand.
-
- * webkit/webkitdownload.h: Add missing enum documentation.
- * webkit/webkiterror.h: Ditto.
- * webkit/webkitwebview.h: Ditto.
-
-2011-11-17 Mario Sanchez Prada <msanchez@igalia.com>
-
- [Gtk] Ensure the parent for the webView's a11y object is set.
-
- This should fix some accessibility related GTK API tests.
-
- Rubber-stamped by Philippe Normand.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_accessible): Always set the parent to make
- navigation across GTK and WebKit worlds work properly.
-
-2011-11-17 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] Consider parent AtkObject in webkit_accessible_get_parent(), if already set
- https://bugs.webkit.org/show_bug.cgi?id=72525
-
- Reviewed by Xan Lopez.
-
- * tests/testatk.c:
- (testWebkitAtkSetParentForObject): New unit test to check that
- calls to atk_object_get_parent() over a WebKitGTK's accessibility
- wrapper object returns its parent AtkObject if previously set.
- (main): Added new test.
-
-2011-11-17 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] ATK API tests failing because of patch for bug 72390
- https://bugs.webkit.org/show_bug.cgi?id=72592
-
- Reviewed by Philippe Normand.
-
- * tests/testatk.c:
- (testWebkitAtkParentForRootObject): Remove the offending line in
- the unit test, which is not actually required to test the new
- functionality and causes problems in some scenarios, due to the
- lazy creation mechanism of AtkObjects.
-
- * tests/testatkroles.c:
- (finish_loading): Reflect that the document frame object is no
- longer the root accessibility object (a scroll pane from now on),
- but the only child of that one. Thus, skip that root object.
-
-2011-11-16 Mario Sanchez Prada <msanchez@igalia.com>
-
- [GTK] Do not hide accessibility root object from AT's
- https://bugs.webkit.org/show_bug.cgi?id=72390
-
- Reviewed by Martin Robinson.
-
- * tests/testatk.c:
- (getWebAreaObject): New helper function, to bypass the new root
- object in the accessibility hierarchy, since it's not usually
- needed for the unit tests.
- (testWebkitAtkCaretOffsets): Use getWebAreaObject().
- (testWebkitAtkCaretOffsetsAndExtranousWhiteSpaces): Ditto.
- (testWebkitAtkComboBox): Ditto.
- (testWebkitAtkEmbeddedObjects): Ditto.
- (testWebkitAtkGetTextAtOffsetForms): Ditto.
- (testWebkitAtkGetTextAtOffset): Ditto.
- (testWebkitAtkGetTextAtOffsetNewlines): Ditto.
- (testWebkitAtkGetTextAtOffsetTextarea): Ditto.
- (testWebkitAtkGetTextAtOffsetTextInput): Ditto.
- (testWebkitAtkGetTextAtOffsetWithSpecialCharacters): Ditto.
- (testWebkitAtkGetTextInParagraphAndBodySimple): Ditto.
- (testWebkitAtkGetTextInParagraphAndBodyModerate): Ditto.
- (testWebkitAtkGetTextInTable): Ditto.
- (testWebkitAtkGetHeadersInTable): Ditto.
- (testWebkitAtkTextAttributes): Ditto.
- (testWebkitAtkTextSelections): Ditto.
- (testWebkitAtkGetExtents): Ditto.
- (testWebkitAtkLayoutAndDataTables): Ditto.
- (testWebkitAtkLinksWithInlineImages): Ditto.
- (testWebkitAtkHypertextAndHyperlinks): Ditto.
- (testWebkitAtkListsOfItems): Ditto.
- (testWebkitAtkTextChangedNotifications): Ditto.
- (testWebkitAtkParentForRootObject): New test, to make sure that
- both top-down and bottom-up navigation among GTK and WebKit worlds
- matches accordingly.
- (main): Added new test.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_accessible): Remove the hack introduced
- because of bug 51932, to bypass the root object here.
-
-2011-11-15 Anders Carlsson <andersca@apple.com>
-
- HostWindow screenToWindow/windowToScreen should be screenToRootView/rootViewToScreen
- https://bugs.webkit.org/show_bug.cgi?id=72397
-
- Reviewed by Dan Bernstein.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::rootViewToScreen):
- (WebKit::ChromeClient::screenToRootView):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-11-14 Anders Carlsson <andersca@apple.com>
-
- HostWindow invalidation functions should use root view coordinates
- https://bugs.webkit.org/show_bug.cgi?id=72338
-
- Reviewed by Dan Bernstein.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::invalidateRootView):
- (WebKit::ChromeClient::invalidateContentsAndRootView):
- (WebKit::ChromeClient::invalidateContentsForSlowScroll):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-11-15 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Implement download support in WebKit2
- https://bugs.webkit.org/show_bug.cgi?id=72258
-
- Reviewed by Martin Robinson.
-
- Use errors from WebCore to emit the error signals.
-
- * webkit/webkitdownload.cpp:
- (webkitDownloadEmitError): Helper function that emits the error
- signal for the given ResourceError.
- (webkit_download_open_stream_for_uri): Use webkitDownloadEmitError().
- (webkit_download_cancel): Ditto.
- (webkit_download_set_destination_uri): Ditto.
- (webkit_download_received_data): Ditto.
- (webkit_download_error): Ditto.
-
-2011-11-14 Ryuan Choi <ryuan.choi@samsung.com>
-
- [GTK] Possible crash when destroying after called widgetSizeChanged.
- https://bugs.webkit.org/show_bug.cgi?id=72237
-
- Reviewed by Martin Robinson.
-
- Crash can occur when ChromeclientGtk is removed before calling repaintEverythingSoonTimeout
- registered by widgetSizeChanged.
- This patch remove the m_repaintSoonSourceId glib source before destruction
- of the ChromeClientGtk to prevent the above crash.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::chromeDestroyed):
-
-2011-11-09 Philippe Normand <pnormand@igalia.com>
-
- [GTK][DRT] window internals object is not reset after each test
- https://bugs.webkit.org/show_bug.cgi?id=71890
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp: Remove problematic
- calls to WebCoreSupport which belongs to libWebCoreInternals, not libwebkitgtk.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-11-09 Philippe Normand <pnormand@igalia.com>
-
- [GTK][DRT] window internals object is not reset after each test
- https://bugs.webkit.org/show_bug.cgi?id=71890
-
- Reviewed by Xan Lopez.
-
- DRTSupport infrastructure to reset the Internals object, like in Qt.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::resetInternalsObject):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-11-07 Adam Barth <abarth@webkit.org>
-
- Move static "policy" state from SecurityOrigin.cpp to SecurityPolicy.cpp
- https://bugs.webkit.org/show_bug.cgi?id=71755
-
- Reviewed by Eric Seidel.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::whiteListAccessFromOrigin):
- (DumpRenderTreeSupportGtk::resetOriginAccessWhiteLists):
-
-2011-11-08 Zan Dobersek <zandobersek@gmail.com>
-
- [WK][GTK] Application cache directory is incorrectly set
- https://bugs.webkit.org/show_bug.cgi?id=71769
-
- Reviewed by Martin Robinson.
-
- Set the application cache directory to be placed in current user's
- cache directory and update documentation for
- webkit_application_cache_get_database_directory_path after these
- changes and changes in r80715;
-
- * webkit/webkitapplicationcache.cpp:
- * webkit/webkitglobals.cpp:
- (webkitInit): Switch one string formation to use GOwnPtr<gchar>.
-
-2011-11-03 Darin Adler <darin@apple.com>
-
- Change remaining callers of releaseRef to call leakRef
- https://bugs.webkit.org/show_bug.cgi?id=71422
-
- Reviewed by Darin Fisher.
-
- * webkit/webkitwebdatasource.cpp:
- (WebKit::kitNew):
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_web_history_item_new):
- (webkit_web_history_item_new_with_data):
- (webkit_web_history_item_copy):
- (WebKit::kit):
- * webkit/webkitwebresource.cpp:
- (webkit_web_resource_new_with_core_resource):
- (webkit_web_resource_init_with_core_resource):
- Use leakRef.
-
-2011-11-02 Darin Adler <darin@apple.com>
-
- Change remaining callers of releaseRef to call leakRef
- https://bugs.webkit.org/show_bug.cgi?id=71422
-
- Reviewed by Darin Fisher.
-
- * webkit/webkitwebdatasource.cpp:
- (WebKit::kitNew):
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_web_history_item_new):
- (webkit_web_history_item_new_with_data):
- (webkit_web_history_item_copy):
- (WebKit::kit):
- * webkit/webkitwebresource.cpp:
- (webkit_web_resource_new_with_core_resource):
- (webkit_web_resource_init_with_core_resource):
- Use leakRef.
-
-2011-11-03 Fady Samuel <fsamuel@chromium.org>
-
- Removing line in computeViewportAttributes that enforces a minimum scale factor to never allow zooming out more than viewport
- https://bugs.webkit.org/show_bug.cgi?id=70609
-
- Reviewed by Kenneth Rohde Christiansen.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::dumpConfigurationForViewport):
- * webkit/webkitviewportattributes.cpp:
- (webkitViewportAttributesRecompute):
-
-2011-11-02 Jon Lee <jonlee@apple.com>
-
- Expand DragController to provide more information about the dragging session
- https://bugs.webkit.org/show_bug.cgi?id=71324
- <rdar://problem/10379175>
-
- Reviewed by Darin Adler.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_drag_motion): Minor refactoring.
- (webkit_web_view_drag_data_received): Minor refactoring.
-
-2011-11-02 Tom Sepez <tsepez@chromium.org>
-
- XSSAuditor is silent
- https://bugs.webkit.org/show_bug.cgi?id=70973
-
- Reviewed by Adam Barth.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didDetectXSS):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-11-02 Zan Dobersek <zandobersek@gmail.com>
-
- [GTK] Visited links of a page group should be removed when clearing back/forward list
- https://bugs.webkit.org/show_bug.cgi?id=71052
-
- Reviewed by Martin Robinson.
-
- When clearing back-forward list, also remove the visited links from page's page group.
-
- * webkit/webkitwebbackforwardlist.cpp:
- (webkit_web_back_forward_list_clear):
-
-2011-10-31 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Install html and tmpl dirs in a $(DOC_MODULE) dir in tarball
- https://bugs.webkit.org/show_bug.cgi?id=71224
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.gtk-doc.am: Copy html and tmpl dirs to
- $(distdir)/$(DOC_MODULE).
-
-2011-10-29 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Switch to a backing store approach for painting WebKitWebView
- https://bugs.webkit.org/show_bug.cgi?id=70213
-
- Reviewed by Gustavo Noronha Silva.
-
- Paint the WebView into a backing store. This prevents expose events from
- triggering a layout, making scrolling and resizing much smoother.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient): Initialize new members.
- (WebKit::repaintEverythingSoonTimeout): Added this helper which repaints
- the WebView more quickly during resize events.
- (WebKit::clipOutOldWidgetArea): Clips out the old widget area, so that we
- can clear out invalid pixels when growing the widget into a pre-existing
- backing store.
- (WebKit::clearEverywhereInBackingStore): Clear out the entire backing store.
- (WebKit::ChromeClient::widgetSizeChanged): Handle widget size changes by
- intelligently resizing or reusing the existing backing store.
- (WebKit::coalesceRectsIfPossible): Moved this method from webkitwebview.cpp.
- (WebKit::paintWebView): Moved this method from webkitwebview.cpp.
- (WebKit::ChromeClient::performAllPendingScrolls): If there are any pending
- scrolling operations, perform them by scrolling the backing store.
- (WebKit::ChromeClient::paint): Added this timer callback, which paints the
- WebView after a short timeout.
- (WebKit::ChromeClient::invalidateWindow): No need to do anything here any longer.
- (WebKit::ChromeClient::invalidateContentsAndWindow): Now unite the rect with
- the existing dirty region and queue the paint timeout.
- (WebKit::ChromeClient::scroll): Now just queue a scroll event in the repaint timeout.
- Intelligently calculate the area to move and the dirty area using code derived
- from WebKit2.
- * WebCoreSupport/ChromeClientGtk.h: Added new method definitions and also use
- the WebCore namespace to avoid lots of uses of "WebCore::".
- * webkit/webkitwebview.cpp:
- (webkit_web_view_draw): Now just blit the backing store into the widget.
- (webkit_web_view_expose): Ditto.
- (webkit_web_view_size_allocate): Let the ChromeClient know the widget size changed.
- (webkit_web_view_init): Turn off GDK double buffering as we have our own double
- buffer.
- * webkit/webkitwebviewprivate.h: Add the backing store member.
-
-2011-10-28 Jochen Eisinger <jochen@chromium.org>
-
- Rename a number of methods mentioning JavaScript to just Script instead
- https://bugs.webkit.org/show_bug.cgi?id=71105
-
- Reviewed by Adam Barth.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidClearWindowObjectInWorld):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2011-10-27 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Remove most of the documentation errors from WebKit1
- https://bugs.webkit.org/show_bug.cgi?id=70670
-
- Reviewed by Gustavo Noronha Silva.
-
- Fix most of the documentation errors for WebKit and make many
- missing symbols show up in the documentation.
-
- * webkit/webkitglobals.h: Doc fixes.
- * webkit/webkitspellchecker.h: Ditto.
- * webkit/webkitspellcheckerenchant.cpp: Ditto.
- * webkit/webkitwebbackforwardlist.h: Ditto.
- * webkit/webkitwebdatasource.cpp: Ditto.
- * webkit/webkitwebframe.cpp: Ditto.
- * webkit/webkitwebinspector.cpp: Ditto.
- * webkit/webkitwebinspector.h: Ditto.
- * webkit/webkitwebplugin.h: Ditto.
- * webkit/webkitwebplugindatabase.cpp: Ditto.
- * webkit/webkitwebplugindatabase.h: Ditto.
- * webkit/webkitwebsettings.h: Ditto.
- * webkit/webkitwebview.cpp: Ditto.
- (webkit_web_view_class_init): Ditto.
- * webkit/webkitwebview.h: Ditto.
-
-2011-10-27 Philippe Normand <pnormand@igalia.com>
-
- [GStreamer] WebAudio AudioFileReader implementation
- https://bugs.webkit.org/show_bug.cgi?id=69834
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am: Link against libfftw.
-
-2011-10-26 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Update NEWS and configure.ac for 1.7.1 release
- https://bugs.webkit.org/show_bug.cgi?id=70932
-
- Reviewed by Martin Robinson.
-
- * NEWS: Added release notes.
-
-2011-10-26 Alejandro G. Castro <alex@igalia.com>
-
- [GTK] Fix distcheck compilation
- https://bugs.webkit.org/show_bug.cgi?id=70921
-
- Add new files required by doc compilation to the clean process.
-
- Reviewed by Martin Robinson.
-
- * docs/GNUmakefile.am:
-
-2011-10-26 Zalan Bujtas <zbujtas@gmail.com>
-
- Name viewport change event consistently.
- https://bugs.webkit.org/show_bug.cgi?id=70901
-
- Reviewed by Kenneth Rohde Christiansen.
-
- Use ViewportPropertiesDidChange term consistently throughout WebKit.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::dispatchViewportPropertiesDidChange):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-10-26 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Remove g_thread_init() calls from gtk-doc scanner too
- https://bugs.webkit.org/show_bug.cgi?id=70908
-
- Reviewed by Gustavo Noronha Silva.
-
- * docs/GNUmakefile.am:
-
-2011-10-25 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] GtkAdjustment watcher updates adjustments too lazily
- https://bugs.webkit.org/show_bug.cgi?id=70180
-
- Reviewed by Gustavo Noronha Silva.
-
- Increase the priority of the GtkAdjustments update in GtkAdjustmentWatcher. This
- means that adjustments will more quickly represent the state of the WebKitWebView
- when it scrolls. This fixes out-of-sync scrollbars and some visual artifacts.
-
- * WebCoreSupport/GtkAdjustmentWatcher.cpp:
- (WebKit::GtkAdjustmentWatcher::updateAdjustmentsFromScrollbarsLater): Use a timeout
- with the default priority.
-
-2011-10-24 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Remove g_thread_init() calls
- https://bugs.webkit.org/show_bug.cgi?id=70717
-
- Reviewed by Xan Lopez.
-
- With newer glib it's not needed anymore and with previous versions
- it was already called by g_type_init().
-
- * tests/testapplicationcache.c:
- (main):
- * tests/testatk.c:
- (main):
- * tests/testatkroles.c:
- (main):
- * tests/testcopyandpaste.c:
- (main):
- * tests/testdomdocument.c:
- (main):
- * tests/testdomdomwindow.c:
- (main):
- * tests/testdomnode.c:
- (main):
- * tests/testdownload.c:
- (main):
- * tests/testglobals.c:
- (main):
- * tests/testhittestresult.c:
- (main):
- * tests/testhttpbackend.c:
- (main):
- * tests/testkeyevents.c:
- (main):
- * tests/testloading.c:
- (main):
- * tests/testmimehandling.c:
- (main):
- * tests/testnetworkrequest.c:
- (main):
- * tests/testnetworkresponse.c:
- (main):
- * tests/testwebbackforwardlist.c:
- (main):
- * tests/testwebdatasource.c:
- (main):
- * tests/testwebframe.c:
- (main):
- * tests/testwebhistoryitem.c:
- (main):
- * tests/testwebplugindatabase.c:
- (main):
- * tests/testwebresource.c:
- (main):
- * tests/testwebsettings.c:
- (main):
- * tests/testwebview.c:
- * tests/testwindow.c:
- (main):
-
-2011-10-20 Gustavo Noronha Silva <gns@gnome.org>
-
- [GTK] webkitgtk's pkgconfig file needs to require javascriptcoregtk
- https://bugs.webkit.org/show_bug.cgi?id=70500
-
- Reviewed by Philippe Normand.
-
- * webkit.pc.in: add javascriptcoregtk to Requires
-
-2011-10-19 Gustavo Noronha Silva <gns@gnome.org>
-
- GTK+ build fix. Rename the INCLUDES variable so it is not picked
- up by random bystanders. Also do some more cleanup on stuff we
- inherited from gtk-doc.make.
-
- * GNUmakefile.gtk-doc.am:
- * docs/GNUmakefile.am:
-
-2011-10-19 Gustavo Noronha Silva <gns@gnome.org>
-
- [GTK] Streamline wk1 documentation build
- https://bugs.webkit.org/show_bug.cgi?id=70447
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am: move files pertaining to the docs build to the
- docs GNUmakefile.am;
- * GNUmakefile.gtk-doc.make: incorporate the gtk-doc makefile, and customize it
- to our non-recursive build;
- * docs/GNUmakefile.am: simplification and adaption to work with the
- rest of the build system.
-
-2011-10-19 Zan Dobersek <zandobersek@gmail.com>
-
- [Gtk][Geolocation] Build guards missing in geolocation clients
- https://bugs.webkit.org/show_bug.cgi?id=70420
-
- Reviewed by Gustavo Noronha Silva.
-
- Adds build guards that were forgotten when client-based
- geolocation was introduced in r97746. This should make builds
- without geolocation support succeed again.
-
- * WebCoreSupport/GeolocationClientGtk.cpp:
- * WebCoreSupport/GeolocationClientGtk.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2011-10-18 Zan Dobersek <zandobersek@gmail.com>
-
- [Gtk] Support for client-based geolocation
- https://bugs.webkit.org/show_bug.cgi?id=64970
-
- Reviewed by Martin Robinson.
-
- Add DumpRenderTree support functions for client-based geolocation tests
- and implement GeolocationClientGtk. The implementation is based on Zecke's
- implementation of GeolocationService class in WebCore, which is now redundant
- and subsequently removed.
-
- * GNUmakefile.am: Add GeolocationClientGtk.* files to compilation.
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp: Add support functions to operate
- with GeolocationClientMock.
- (DumpRenderTreeSupportGtk::resetGeolocationClientMock):
- (DumpRenderTreeSupportGtk::setMockGeolocationPermission):
- (DumpRenderTreeSupportGtk::setMockGeolocationPosition):
- (DumpRenderTreeSupportGtk::setMockGeolocationError):
- (DumpRenderTreeSupportGtk::numberOfPendingGeolocationPermissionRequests):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- * WebCoreSupport/GeolocationClientGtk.cpp: Added.
- (WebKit::getPositionCallback):
- (WebKit::positionChangedCallback):
- (WebKit::GeolocationClient::GeolocationClient):
- (WebKit::GeolocationClient::geolocationDestroyed):
- (WebKit::GeolocationClient::startUpdating):
- (WebKit::GeolocationClient::stopUpdating):
- (WebKit::GeolocationClient::setEnableHighAccuracy):
- (WebKit::GeolocationClient::lastPosition):
- (WebKit::GeolocationClient::requestPermission):
- (WebKit::GeolocationClient::cancelPermissionRequest):
- (WebKit::GeolocationClient::positionChanged):
- (WebKit::GeolocationClient::updatePosition):
- (WebKit::GeolocationClient::errorOccured):
- * WebCoreSupport/GeolocationClientGtk.h: Added.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init): Use GeolocationClientMock as geolocation client
- when running in DumpRenderTree.
-
-2011-10-12 Ryosuke Niwa <rniwa@webkit.org>
-
- Make the interface of locationAndLengthFromRange and rangeFromLocationAndLength consistent
- https://bugs.webkit.org/show_bug.cgi?id=69964
-
- Reviewed by Enrica Casucci.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::firstRectForCharacterRange):
-
-2011-09-28 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] Move drag-and-drop code which can be shared with WebKit2 to WebCore
- https://bugs.webkit.org/show_bug.cgi?id=66890
-
- Use the new GtkWidgetDragAndDropGlue class to hold the logic that will be
- common between WebKit1 and WebKit2. Modify WebKitWebView to use this class.
-
- Reviewed by Philippe Normand.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag): Inform the drag-and-drop glue about the drag.
- * webkit/webkitwebview.cpp: Use GtkWidgetDragAndDropGlue wherever this class was
- maintaining drag-and-drop state itself.
- * webkit/webkitwebviewprivate.h: Swap out the drag-and-drop state for an instance
- of the glue class.
-
-2011-09-28 Kaustubh Atrawalkar <kaustubh@motorola.com>
-
- [Gtk] Implement textInputController.doCommand
- https://bugs.webkit.org/show_bug.cgi?id=66496
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::doCommand): Function definition for doCommand
- callback. Converted Incoming command to match with WebCore::Editor CommandMap.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-09-27 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Reorganize header files
- https://bugs.webkit.org/show_bug.cgi?id=65616
-
- Reviewed by Martin Robinson.
-
- Install header files under $libwebkitgtkincludedir/webkit.
-
- * GNUmakefile.am: Use $libwebkitgtkincludedir.
- * webkit.pc.in: Use webkitgtk-<api-version> as include dir.
-
-2011-09-26 Gustavo Noronha Silva <gustavo.noronha@collabora.com>
-
- Fix documentation generation by specifying the sources
- directory with $(top_srcdir).
-
- Reviewed by Xan Lopez.
-
- * docs/GNUmakefile.am:
-
-2011-09-26 Gustavo Noronha Silva <gustavo.noronha@collabora.com>
-
- REGRESSION: Empathy crashes when switching theme
- https://bugs.webkit.org/show_bug.cgi?id=68600
-
- Reviewed by Martin Robinson.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_set_scroll_adjustments): use the existing
- set{Horizontal,Vertical}Adjustment functions, so the code is not
- duplicated
- (webkit_web_view_dispose): unset the adjustments during dispose,
- to avoid late adjustment change notifications hitting the
- adjustment watcher
-
-2011-09-24 Adam Barth <abarth@webkit.org>
-
- Always enable ENABLE(OFFLINE_WEB_APPLICATIONS)
- https://bugs.webkit.org/show_bug.cgi?id=68767
-
- Reviewed by Eric Seidel.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::reachedApplicationCacheOriginQuota):
- * WebCoreSupport/ChromeClientGtk.h:
- * webkit/webkitapplicationcache.cpp:
- (webkit_application_cache_get_maximum_size):
- (webkit_application_cache_set_maximum_size):
- (webkit_application_cache_get_database_directory_path):
- * webkit/webkitglobals.cpp:
- (webkitInit):
-
-2011-09-22 Gustavo Noronha Silva <gustavo.noronha@collabora.com>
-
- Remove useless empty WebKit namespace.
-
- Reviewed by Xan Lopez.
-
- * webkit/webkitglobals.cpp:
- (webkitInit):
-
-2011-09-20 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] WebProcess shouldn't use the GTK+ API
- https://bugs.webkit.org/show_bug.cgi?id=68062
-
- Reviewed by Martin Robinson.
-
- Use WebCore API to create errors in frame loader.
-
- * WebCoreSupport/AssertMatchingEnums.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::cancelledError):
- (WebKit::FrameLoaderClient::blockedError):
- (WebKit::FrameLoaderClient::cannotShowURLError):
- (WebKit::FrameLoaderClient::interruptedForPolicyChangeError):
- (WebKit::FrameLoaderClient::cannotShowMIMETypeError):
- (WebKit::FrameLoaderClient::fileDoesNotExistError):
- (WebKit::FrameLoaderClient::pluginWillHandleLoadError):
- * webkit/webkiterror.cpp:
- (webkit_network_error_quark):
- (webkit_policy_error_quark):
- (webkit_plugin_error_quark):
-
-2011-09-20 Philippe Normand <pnormand@igalia.com>
-
- [GTK] Update NEWS and configure.ac for 1.5.90 release
-
- Reviewed by Martin Robinson.
-
- * NEWS:
-
-2011-09-19 Leandro Pereira <leandro@profusion.mobi>
-
- GTK DRT leaks memory while comparing history items
- https://bugs.webkit.org/show_bug.cgi?id=68086
-
- Reviewed by Martin Robinson.
-
- webkit_web_history_item_get_target() function returns a g_strdup()'d
- string, so it should return "gchar*" instead of "const gchar*".
-
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_web_history_item_get_target): Change return type to "gchar*".
- * webkit/webkitwebhistoryitemprivate.h: Ditto.
-
-2011-09-19 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Fix distcheck build
- https://bugs.webkit.org/show_bug.cgi?id=68346
-
- Reviewed by Philippe Normand.
-
- * tests/testmimehandling.c: Remove ogg tests, since the behavious
- has changed in libsoup (https://bugzilla.gnome.org/show_bug.cgi?id=648846#c8)
- (server_callback):
- (mime_type_policy_decision_requested_cb):
- (main):
- * webkit/webkitwebplugin.cpp: Fix introspection annotation.
-
-2011-09-17 Mihai Parparita <mihaip@chromium.org>
-
- FrameLoaderClient BackForwardList-related methods are unsued
- https://bugs.webkit.org/show_bug.cgi?id=68293
-
- Reviewed by Darin Adler.
-
- Remove FrameLoaderClient methods that were added by r51629, since only
- the old (since-deleted) Android port needed them.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-09-15 Adam Barth <abarth@webkit.org>
-
- Rename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
- https://bugs.webkit.org/show_bug.cgi?id=68205
-
- Reviewed by Eric Seidel.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ChromeClientGtk.h:
- * webkit/webkitsecurityorigin.cpp:
- (webkit_security_origin_get_web_database_usage):
- (webkit_security_origin_get_web_database_quota):
- (webkit_security_origin_set_web_database_quota):
- (webkit_security_origin_get_all_web_databases):
- * webkit/webkitwebdatabase.cpp:
- (webkit_web_database_get_display_name):
- (webkit_web_database_get_expected_size):
- (webkit_web_database_get_size):
- (webkit_web_database_get_filename):
- (webkit_web_database_remove):
- (webkit_remove_all_web_databases):
- (webkit_get_web_database_directory_path):
- (webkit_set_web_database_directory_path):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2011-09-10 Adam Barth <abarth@webkit.org>
-
- Fix build break.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_encoding):
-
-2011-09-09 Fady Samuel <fsamuel@chromium.org>
-
- Move pageScaleFactor code from Frame.{h|cpp} to Page.{h|cpp}
- https://bugs.webkit.org/show_bug.cgi?id=67250
-
- Reviewed by Simon Fraser.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::scalePageBy):
-
-2011-09-08 Daniel Bates <dbates@webkit.org>
-
- Fix the GTK build after <http://trac.webkit.org/changeset/94810>
- (https://bugs.webkit.org/show_bug.cgi?id=67807).
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_encoding): Substitute DocumentWriter::deprecatedFrameEncoding() for
- DocumentWriter::encoding().
-
-2011-09-06 Ryosuke Niwa <rniwa@webkit.org>
-
- Rename confirmCompositionWithoutDisturbingSelection to cancelComposition
- https://bugs.webkit.org/show_bug.cgi?id=67569
-
- Reviewed by Antonio Gomes.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::respondToChangedSelection):
-
-2011-08-30 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r94142, r94144, r94145, and r94148.
- http://trac.webkit.org/changeset/94142
- http://trac.webkit.org/changeset/94144
- http://trac.webkit.org/changeset/94145
- http://trac.webkit.org/changeset/94148
- https://bugs.webkit.org/show_bug.cgi?id=67262
-
- Broke isindex element (Requested by rniwa on #webkit).
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setAutofilled):
- (DumpRenderTreeSupportGtk::setValueForUser):
-
-2011-08-30 Ryosuke Niwa <rniwa@webkit.org>
-
- GTK build fix after r94142.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setAutofilled):
- (DumpRenderTreeSupportGtk::setValueForUser):
-
-2011-08-30 Kaustubh Atrawalkar <kaustubh@motorola.com>
-
- The unused ScrollView* argument can and should be removed from
- scrollRectIntoView.
- https://bugs.webkit.org/show_bug.cgi?id=67117
-
- Reviewed by Darin Adler.
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::scrollRectIntoView):
-
-2011-08-26 Gustavo Noronha Silva <gns@gnome.org>
-
- Minor style fix in the sample code for WebKitWebFrame.
-
- * webkit/webkitwebframe.cpp:
-
-2011-08-17 Alejandro G. Castro <alex@igalia.com>
-
- [GTK] Fix compilation problems with deprecations in gtk+
- https://bugs.webkit.org/show_bug.cgi?id=66073
-
- Reviewed by Martin Robinson.
-
- * WebCoreSupport/FullscreenVideoController.cpp:
- (FullscreenVideoController::createHud): Added gtk_box_new
- conditional compilation for gtk+-3.
-
-2011-08-18 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
-
- [GTK] Change webview API tests to use "load-status" signal instead of "load-progress"
- https://bugs.webkit.org/show_bug.cgi?id=66243
-
- Reviewed by Martin Robinson.
-
- The idle_quit_loop_cb() already checks the "load-status" flag, so it is enough to
- call it only when the "load-status" change.
-
- This change is important in the context of bug 28851, which aims to change the
- order in which "progress finished" and "load finished" callbacks are called. In
- this new scenario, at the progress callback the load will never be finished.
-
- * tests/testwebview.c:
- (test_webkit_web_view_grab_focus):
-
-2011-08-17 Adam Roben <aroben@apple.com>
-
- Make WebCore keep track of the current device scale factor
-
- Fixes <http://webkit.org/b/66413> WebCore requires every WebKit port to keep track of the
- device scale factor
-
- Reviewed by Darin Adler.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ChromeClientGtk.h:
- Removed deviceScaleFactor.
-
-2011-08-16 Gustavo Noronha Silva <gustavo.noronha@collabora.com>
-
- Add javascriptcoregtk to the introspection build, to fix it.
-
- Reviewed by Xan Lopez.
-
- * GNUmakefile.am:
-
-2011-08-15 Dmitry Titov <dimich@chromium.org>
-
- FrameLoaderClient::transferLoadingResourceFromPage does not have enough parameters
- https://bugs.webkit.org/show_bug.cgi?id=66165
-
- Reviewed by Darin Fisher.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transferLoadingResourceFromPage):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-08-10 Adam Roben <aroben@apple.com>
-
- Clear up scale factor terminology
-
- WebKit by and large deals with two scale factors: one intrinsic to the device on which the
- software is running, and one that is per-Page and can be controlled via API calls. This
- patch names the former "deviceScaleFactor" and the latter "pageScaleFactor", and makes the
- code use those names. It should introduce no behavior changes.
-
- Fixes <http://webkit.org/b/55787> WebKit uses multiple conflicting names to refer to the
- device scale factor
-
- Reviewed by Simon Fraser.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-08-11 Gustavo Noronha Silva <gns@gnome.org>
-
- Add the javascript core dynamic library for gtk-doc's introspection helper.
-
- Reviewed by Xan Lopez.
-
- * docs/GNUmakefile.am:
-
-2011-08-11 Xan Lopez <xlopez@igalia.com>
-
- [GTK] Update NEWS and configure.ac for 1.5.2 release
-
- Reviewed by Gustavo Noronha.
-
- * NEWS: update for release.
-
-2011-08-10 Gustavo Noronha Silva <gns@gnome.org>
-
- [GTK] wrong annotation for the return value of webkit_web_view_get_hit_test_results()
- https://bugs.webkit.org/show_bug.cgi?id=65985
-
- Reviewed by Xan Lopez.
-
- * webkit/webkitwebview.cpp:
-
-2011-08-03 Pavel Feldman <pfeldman@google.com>
-
- Web Inspector: [Timeline] Hover on paint events and see rect outline around that area.
- https://bugs.webkit.org/show_bug.cgi?id=65510
-
- Reviewed by Yury Semikhatsky.
-
- * webkit/webkitwebview.cpp:
- (paintWebView):
-
-2011-08-03 Pavel Feldman <pfeldman@chromium.org>
-
- Web Inspector: remove Node parameter from the InspectorClient::highlight
- https://bugs.webkit.org/show_bug.cgi?id=65549
-
- Reviewed by Yury Semikhatsky.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::highlight):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2011-08-03 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Reorganize pkg-config files
- https://bugs.webkit.org/show_bug.cgi?id=65548
-
- Reviewed by Martin Robinson.
-
- * GNUmakefile.am: Remove javascriptcore pc file references.
-
-2011-07-30 Patrick Gansterer <paroga@webkit.org>
-
- Remove inclusion of MainThread.h from Threading.h
- https://bugs.webkit.org/show_bug.cgi?id=65081
-
- Reviewed by Darin Adler.
-
- Add missing include statements for MainThread.
-
- * webkit/webkitglobals.cpp:
-
-2011-07-26 Sadrul Habib Chowdhury <sadrul@chromium.org>
-
- Add support for download='filename' attribute in anchors.
- https://bugs.webkit.org/show_bug.cgi?id=64580
-
- Reviewed by Adam Barth.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::startDownload):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-07-26 Carlos Garcia Campos <cgarcia@igalia.com>
-
- [GTK] Remove header webkitwebviewcommon.h
- https://bugs.webkit.org/show_bug.cgi?id=65177
-
- Reviewed by Martin Robinson.
-
- Move webkitwebviewcommon.h contents back to webkitwebview.h.
-
- * GNUmakefile.am: Remove webkitwebviewcommon.h
- * webkit/webkitwebview.h:
- * webkit/webkitwebviewcommon.h: Removed.
-
-2011-06-07 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Use WebCore scrollbars for the DRT instead of GtkScrolledWindow
- https://bugs.webkit.org/show_bug.cgi?id=62252
-
- Added an undocumented self-scrolling property to WebKitWebView which
- communicates to WebCore whether or not this widget is expected to draw
- its own main frame scrollbars or not.
-
- * webkit/webkitwebview.cpp: Add the self-scrolling property.
- * webkit/webkitwebviewprivate.h: Add the selfScrolling private member.
-
-2011-07-11 Gustavo Noronha Silva <gns@gnome.org>
-
- [GTK] Google Calendar thinks we're mobile
- https://bugs.webkit.org/show_bug.cgi?id=63994
-
- Reviewed by Xan Lopez.
-
- Further special-case Google Calendar, for it thinks WebKit+Linux
- means mobile, so we also have to spoof the OS.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::userAgent): use the new WebKitGTK+
- private API that centralizes the logic now.
- * tests/testwebsettings.c: Add tests to make sure the Google
- special-cases only apply for the expected domains and when quirks
- special-casing is enabled.
- (test_non_quirky_user_agents):
- (test_webkit_web_settings_user_agent):
- * webkit/webkitwebsettings.cpp:
- (webkitUserAgent): make it static.
- (safariUserAgent): returns a fake Safari in Mac OS X User-Agent.
- (initializeDomainsList): moved from FrameLoaderClientGtk.
- (isGoogleDomain):ditto.
- (isGoogleCalendar): ditto.
- (userAgentForURL): ditto.
- (webkitWebSettingsUserAgentForUri): centralize the whole
- user agent spoofing logic in this new private API that can be used
- by the browser to know what's going to happen for a specific URI
- and also allows our API testing.
- * webkit/webkitwebsettingsprivate.h:
-
-2011-07-15 Dan Bernstein <mitz@apple.com>
-
- REGRESSION: Mouse cursor doesn’t hide when full screen video HUD hides
- https://bugs.webkit.org/show_bug.cgi?id=64615
-
- Reviewed by Anders Carlsson.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::setCursorHiddenUntilMouseMoves): Added this stub.
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-07-15 Martin Robinson <mrobinson@igalia.com>
-
- Build fixes for WebKit2. Ensure that all generated sources are
- on nodist primaries, that they are on forward declared variables
- so that BUILT_SOURCES is calculated properly and that zlib is
- included during linking (for WOFF support).
-
- * GNUmakefile.am:
-
-2011-07-14 Lukasz Slachciak <l.slachciak@samsung.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Fix GTK unit tests failures when WebKit is build outside repository directory.
- https://bugs.webkit.org/show_bug.cgi?id=62935
-
- WebKit can be build with WEBKITOUTPUTDIR env variable set using build-webkit script.
- In this case WEBKITOUTPUDIR may be outside repository structure. This causes testmimehandling and testwebview
- to fail because they use external test files in WebKit Source directory.
- This bug fixes this issue introducing optional environment variable WEBKITREPODIR
- Also coding style in existing functions is fixed.
-
-
- * tests/test_utils.c: Coding style fixes.
- (testutils_relative_chdir): If WEBKITREPODIR is set, change current directory to it.
- * tests/test_utils.h: Coding style fixes.
-
-2011-07-12 Joseph Pecoraro <joepeck@webkit.org>
-
- ApplicationCache update should not immediately fail when reaching per-origin quota
- https://bugs.webkit.org/show_bug.cgi?id=64177
-
- Reviewed by Alexey Proskuryakov.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::reachedApplicationCacheOriginQuota):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-06-14 Mike Stegeman <mrstegeman@gmail.com>
-
- Add API to WebKit-GTK to allow setting localStorage database path
- https://bugs.webkit.org/show_bug.cgi?id=62091
-
- Reviewed by Martin Robinson and Gustavo Noronha.
-
- Expose the path of the localStorage databases through a setting
- to allow HTML5 localStorage to be persistent. New setting is:
- html5-local-storage-database-path
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- * webkit/webkitwebsettingsprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2011-07-08 Gustavo Noronha Silva <gustavo.noronha@collabora.com>
-
- [GTK] testwebview API test fails after http://trac.webkit.org/changeset/90471
- https://bugs.webkit.org/show_bug.cgi?id=64159
-
- Rework the icon-uri change test so that the condition for quitting
- the mainloop is the icon-uri change itself, along with a timeout
- to avoid taking too long in case of failure. Since the conditions
- for considering a page loaded were changed we can't rely on that
- for this test anymore.
-
- Reviewed by Xan Lopez.
-
- * tests/testwebview.c:
- (timeout_cb): error out if it takes too long for the icon-uri
- change to happen.
- (icon_uri_changed_cb): quit the loop here instead of waiting on
- the page being loaded.
- (test_webkit_web_view_icon_uri):
-
-2011-07-01 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Add DeviceOrientation feature
- https://bugs.webkit.org/show_bug.cgi?id=63720
-
- Add empty implementation of DeviceMotionClient and DeviceOrientationClient callback methods.
-
- * GNUmakefile.am:
- * WebCoreSupport/DeviceMotionClientGtk.cpp: Added.
- (WebCore::DeviceMotionClientGtk::DeviceMotionClientGtk):
- (WebCore::DeviceMotionClientGtk::~DeviceMotionClientGtk):
- (WebCore::DeviceMotionClientGtk::deviceMotionControllerDestroyed):
- (WebCore::DeviceMotionClientGtk::setController):
- (WebCore::DeviceMotionClientGtk::startUpdating):
- (WebCore::DeviceMotionClientGtk::stopUpdating):
- (WebCore::DeviceMotionClientGtk::currentDeviceMotion):
- * WebCoreSupport/DeviceMotionClientGtk.h: Added.
- * WebCoreSupport/DeviceOrientationClientGtk.cpp: Added.
- (WebCore::DeviceOrientationClientGtk::DeviceOrientationClientGtk):
- (WebCore::DeviceOrientationClientGtk::~DeviceOrientationClientGtk):
- (WebCore::DeviceOrientationClientGtk::deviceOrientationControllerDestroyed):
- (WebCore::DeviceOrientationClientGtk::setController):
- (WebCore::DeviceOrientationClientGtk::startUpdating):
- (WebCore::DeviceOrientationClientGtk::stopUpdating):
- (WebCore::DeviceOrientationClientGtk::lastOrientation):
- * WebCoreSupport/DeviceOrientationClientGtk.h: Added.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2011-06-28 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Allow to build WebKitGtk+ with accelerated compositing
- https://bugs.webkit.org/show_bug.cgi?id=63404
-
- WebKitGtk+ needs to implement accelerated compositing for running CSS3 3D transforms
- and animation through GPU acceleration. We could implement GraphicsLayer using Clutter.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::attachRootGraphicsLayer): not implemented yet.
- (WebKit::ChromeClient::setNeedsOneShotDrawingSynchronization): Ditto.
- (WebKit::ChromeClient::scheduleCompositingLayerSync): Ditto.
- (WebKit::ChromeClient::allowedCompositingTriggers): Ditto.
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-06-27 ChangSeok Oh <shivamidow@gmail.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Fix build break to support webgl
- https://bugs.webkit.org/show_bug.cgi?id=63425
-
- A member variable enableWebGL in WebKitWebSettingsPrivate is changed to enableWebgl
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
-
-2011-06-24 Dominic Cooney <dominicc@chromium.org>
-
- Reviewed by Dimitri Glazkov.
-
- Convert shadow DOM-related tests to use window.internals
- https://bugs.webkit.org/show_bug.cgi?id=61671
-
- Remove shadow-DOM related methods from GTK DRT API. These are not
- required any more.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-06-20 Dimitri Glazkov <dglazkov@chromium.org>
-
- Reviewed by Kent Tamura.
-
- FileChooser should be only created when we need to choose files.
- https://bugs.webkit.org/show_bug.cgi?id=63039
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::runOpenPanel): Changed to use settings.
-
-2011-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Make sure libsoup password manager macro is defined before including libsoup in webkitsoupauthdialog
- https://bugs.webkit.org/show_bug.cgi?id=63124
-
- Fixes a crash when building with --enable-debug.
-
- * webkit/webkitsoupauthdialog.h: Define
- LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
- before including libsoup.h.
-
-2011-06-10 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] webkit_web_settings_copy does not copy all settings
- https://bugs.webkit.org/show_bug.cgi?id=62424
-
- Instead of trying to keep webkit_web_settings_copy up to date with
- property additions, create the object copy by dynamically initializing
- all webkit_web_settings properties at once.
-
- * tests/testwebsettings.c:
- (test_webkit_web_settings_copy): Create a test for webkit_web_settings copy.
- (main): Run the new test.
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_copy): Dynamically initialize all properties of the copy.
-
-2011-06-20 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Eric Seidel.
-
- [GTK] Clean up unecessary boilerplate from WebKitWebSettings and make private members meet WebKit style guidelines
- https://bugs.webkit.org/show_bug.cgi?id=61972
-
- Rename all private members of WebKitWebSettings to meet WebKit style guidelines and
- put the private struct definition in webkitwebsettingsprivate.h so it can be
- accessed from webkitwebview.cpp. This cuts down on the boilerplate immensely.
-
- * webkit/webkitwebsettings.cpp: Rename private members to meet WebKit style guidelines
- and allocate the private section with new/delete. This allows for using CString and removes
- the need for manual string memory management.
- * webkit/webkitwebsettingsprivate.h: Move the private struct definition here.
- * webkit/webkitwebview.cpp: Update to reflect new struct names. Remove boilerplate
- and other very small code cleanups.
-
-2011-06-20 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Split libWebCore into two libWebCore and libWebCoreGtk
- https://bugs.webkit.org/show_bug.cgi?id=60539
-
- * GNUmakefile.am: Link to libWebCoreGtk.la too.
-
-2011-06-18 Dimitri Glazkov <dglazkov@chromium.org>
-
- Reviewed by Darin Adler.
-
- Separate concerns of loading file icons and choosing files.
- https://bugs.webkit.org/show_bug.cgi?id=62931
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::loadIconForFiles): Renamed.
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-06-17 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Replace GdkRectangle by cairo_rectangle_int_t
- https://bugs.webkit.org/show_bug.cgi?id=60687
-
- Replace GdkRectangle by cairo_rectangle_int_t.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp: Replace GdkRectangle by cairo_rectangle_int_t.
- (DumpRenderTreeSupportGtk::firstRectForCharacterRange):
- (DumpRenderTreeSupportGtk::rectangleForSelection):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h: Ditto.
-
-2011-06-16 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r89026.
- http://trac.webkit.org/changeset/89026
- https://bugs.webkit.org/show_bug.cgi?id=62804
-
- These patches were likely correct. I'll investigate the
- browser_test failures. (Requested by abarth on #webkit).
-
- * WebCoreSupport/FullscreenVideoController.cpp:
- (FullscreenVideoController::play):
- (FullscreenVideoController::pause):
-
-2011-06-16 Vitaly Repeshko <vitalyr@chromium.org>
-
- Unreviewed.
-
- Revert Adam's user gesture patch series r89002, r89005, r89007, r89018
- https://bugs.webkit.org/show_bug.cgi?id=62796
-
- The patches broke chromium browser tests.
-2011-06-16 Adam Barth <abarth@webkit.org>
-
- Reviewed by Eric Seidel.
-
- Remove HTMLVideoElement::processingUserGesture
- https://bugs.webkit.org/show_bug.cgi?id=62784
-
- * WebCoreSupport/FullscreenVideoController.cpp:
- (FullscreenVideoController::play):
- (FullscreenVideoController::pause):
-
-2011-06-15 Claudio Saavedra <csaavedra@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Fix the build with introspection enabled
- https://bugs.webkit.org/show_bug.cgi?id=62705
-
- * GNUmakefile.am: Remove include of *.c files, since
- there are no such files anymore.
-
-2011-06-14 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Remove G_CONST_RETURN usage
- https://bugs.webkit.org/show_bug.cgi?id=62673
-
- Change G_CONST_RETURN for a simple "const" throughout the
- codebase, since G_CONST_RETURN is deprecated now. This should be
- totally equivalent since for all practical purposes the macro is
- always expanded to const.
-
- * webkit/webkitapplicationcache.cpp:
- (webkit_application_cache_get_database_directory_path): use const
- instead of G_CONST_RETURN.
- * webkit/webkitapplicationcache.h:
- * webkit/webkiticondatabase.cpp:
- (webkit_icon_database_get_path): ditto.
- * webkit/webkiticondatabase.h:
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_get_uri): ditto.
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitnetworkresponse.cpp:
- (webkit_network_response_get_uri): ditto.
- * webkit/webkitnetworkresponse.h:
- * webkit/webkitsecurityorigin.cpp:
- (webkit_security_origin_get_protocol): ditto.
- (webkit_security_origin_get_host): ditto.
- * webkit/webkitsecurityorigin.h:
- * webkit/webkitwebdatabase.cpp:
- (webkit_web_database_get_name): ditto.
- (webkit_web_database_get_display_name): ditto.
- (webkit_web_database_get_filename): ditto.
- (webkit_get_web_database_directory_path): ditto.
- * webkit/webkitwebdatabase.h:
- * webkit/webkitwebdatasource.cpp:
- (webkit_web_data_source_get_encoding): ditto.
- (webkit_web_data_source_get_unreachable_uri): ditto.
- * webkit/webkitwebdatasource.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_title): ditto.
- (webkit_web_frame_get_uri): ditto.
- (webkit_web_frame_get_name): ditto.
- * webkit/webkitwebframe.h:
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_web_history_item_get_title): ditto.
- (webkit_web_history_item_get_alternate_title): ditto.
- (webkit_web_history_item_get_uri): ditto.
- (webkit_web_history_item_get_original_uri): ditto.
- (webkit_web_history_item_get_target): ditto.
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebhistoryitemprivate.h:
- * webkit/webkitwebnavigationaction.cpp:
- (webkit_web_navigation_action_get_target_frame): ditto.
- * webkit/webkitwebnavigationaction.h:
- * webkit/webkitwebresource.cpp:
- (webkit_web_resource_get_uri): ditto.
- (webkit_web_resource_get_mime_type): ditto.
- (webkit_web_resource_get_encoding): ditto.
- (webkit_web_resource_get_frame_name): ditto.
- * webkit/webkitwebresource.h:
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_get_user_agent): ditto.
- * webkit/webkitwebsettings.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_title): ditto.
- (webkit_web_view_get_uri): ditto.
- (webkit_web_view_get_icon_uri): ditto.
- * webkit/webkitwebview.h:
- * webkit/webkitwebviewcommon.h:
-
-2011-06-14 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Rename convertWidgetRectToScreenRect() to convertWidgetPointToScreenPoint()
- https://bugs.webkit.org/show_bug.cgi?id=62626
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::windowToScreen): Update to use
- convertWidgetPointToScreenPoint()
- (WebKit::ChromeClient::screenToWindow): Ditto.
- * webkit/webkitwebview.cpp: Remove globalPointForClientPoint()
- since it does the same than convertWidgetPointToScreenPoint().
- (webkit_web_view_popup_menu_handler): Use
- convertWidgetPointToScreenPoint() instead of globalPointForClientPoint().
- (doDragLeaveLater): Ditto.
- (webkit_web_view_drag_motion): Ditto.
- (webkit_web_view_drag_data_received): Ditto.
- (webkit_web_view_drag_drop): Ditto.
-
-2011-06-14 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Support authentication dialogs in WebKit2
- https://bugs.webkit.org/show_bug.cgi?id=62366
-
- Move the common code of webkitsoupauthdialog to a common C++ class
- in WebCore so that it can be used by WebKit2 too. The file has
- been converted into a C++ file.
-
- * GNUmakefile.am: Rename webkitsoupauthdialog.c to
- webkitsoupauthdialog.cpp.
- * webkit/webkitsoupauthdialog.c: Removed.
- * webkit/webkitsoupauthdialog.cpp: Added.
- (webkit_soup_auth_dialog_class_init):
- (webkit_soup_auth_dialog_init):
- (webkit_soup_auth_dialog_session_feature_init):
- (sessionAuthenticate): Use GtkAuthenticationDialog object from
- WebCore.
- (attach):
- (detach):
- * webkit/webkitsoupauthdialog.h:
-
-2011-06-13 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Add configure option to enable/disable register protocol handler
- https://bugs.webkit.org/show_bug.cgi?id=62534
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::registerProtocolHandler): Added.
- * WebCoreSupport/ChromeClientGtk.h: Add the registerProtocolHandler method defintion.
-
-2011-06-13 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- Update gtkdoc files and inline documentation to reduce gtkdoc errors
- and ensure complete documentation output.
-
- * docs/webkitgtk-sections.txt: Add missing sections to the list and remove
- unneeded sections.
- * docs/webkitgtk.types: Update the types list.
- * webkit/webkithittestresult.cpp: Fix inline documentation errors.
- (webkit_hit_test_result_class_init): Ditto.
- * webkit/webkiticondatabase.cpp: Ditto.
- * webkit/webkitwebsettings.cpp: Ditto.
- (webkit_web_settings_class_init): Ditto.
- * webkit/webkitwebview.cpp: Ditto.
- (webkit_web_view_class_init): Ditto.
-
-2011-06-13 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Update the list of ignored GTK+ header files for the documentation
- generation.
-
- * docs/GNUmakefile.am: Update ignored header list.
-
-2011-06-13 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Update NEWS for 1.5.1 release.
-
- * NEWS: update.
-
-2011-06-13 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Distcheck fixes.
-
- * GNUmakefile.am:
-
-2011-06-13 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Export an API similar to WebKit1
- https://bugs.webkit.org/show_bug.cgi?id=57820
-
- * GNUmakefile.am: Add webkitwebviewcommon.h to public header list.
- * webkit/webkitwebview.h: Move declarations common to WebKit2 to
- webkitwebviewcommon.h.
- * webkit/webkitwebviewcommon.h: Added.
-
-2011-06-12 Adam Barth <abarth@webkit.org>
-
- Reviewed by Alexey Proskuryakov.
-
- Rename FrameLoaderClient::interruptForPolicyChangeError to use the past tense
- https://bugs.webkit.org/show_bug.cgi?id=62516
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::interruptedForPolicyChangeError):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-06-12 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Remove webkit_web_view_get_selected_text
- https://bugs.webkit.org/show_bug.cgi?id=62512
-
- It's no longer used and it's a private method, so it can be
- removed.
-
- * webkit/webkitwebview.cpp: kill it.
- * webkit/webkitwebviewprivate.h: ditto.
-
-2011-06-12 Adam Barth <abarth@webkit.org>
-
- Reviewed by Alexey Proskuryakov.
-
- Remove trival "forward-to-client" member functions from FrameLoader
- https://bugs.webkit.org/show_bug.cgi?id=62510
-
- Update to call the FrameLoaderClient directly. Also, remove cargo-cult
- code that checks whether FrameLoader is null.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_stop_loading):
- (webkit_web_view_can_show_mime_type):
-
-2011-06-09 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Eric Seidel.
-
- [GTK] Implement the next bit of the TextInputController (hasMarkedText and markedRange)
- https://bugs.webkit.org/show_bug.cgi?id=55603
-
- Added DumpRenderTreeSupport methods to support hasMarkedText and markedRange.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setComposition): Use start and length rather than start and
- end. This matches other ports. Only use GLib style early returns when checking the
- validity of GObjects.
- (DumpRenderTreeSupportGtk::hasComposition): Added.
- (DumpRenderTreeSupportGtk::compositionRange): Added.
- (DumpRenderTreeSupportGtk::confirmComposition): Cleanup as described above.
- (DumpRenderTreeSupportGtk::firstRectForCharacterRange): Cleanup as described above.
- (DumpRenderTreeSupportGtk::selectedRange): Cleanup as described above.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h: Added new declarations.
-
-2011-06-08 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Add WebKitSpellChecker interface and implementations
- https://bugs.webkit.org/show_bug.cgi?id=61787
-
- Expose the spell checking functionality to the UAs through a
- generic interface, and provide a default Enchant-based
- implementation. On top of allowing UAs to use this functionality
- this makes it possible to change the spell checking backend at
- runtime.
-
- * GNUmakefile.am: add new files.
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::EditorClient): set the spell checker using
- the new classes.
- * WebCoreSupport/TextCheckerClientEnchant.cpp: Removed.
- * WebCoreSupport/TextCheckerClientGtk.cpp: Added
- (WebKit::TextCheckerClientGtk::TextCheckerClientGtk): just
- chain up to the WebKitSpellChecker.
- (WebKit::TextCheckerClientGtk::~TextCheckerClientGtk): ditto.
- (WebKit::TextCheckerClientGtk::ignoreWordInSpellDocument): ditto.
- (WebKit::TextCheckerClientGtk::learnWord): ditto.
- (WebKit::TextCheckerClientGtk::checkSpellingOfString): ditto.
- (WebKit::TextCheckerClientGtk::getAutoCorrectSuggestionForMisspelledWord): ditto.
- (WebKit::TextCheckerClientGtk::getGuessesForWord): ditto.
- (WebKit::TextCheckerClientGtk::updateSpellCheckingLanguage): ditto.
- * WebCoreSupport/TextCheckerClientGtk.h: store a reference to
- the WebKitSpellChecker.
- * webkit/webkit.h: the webkitspellchecker.h header is public.
- * webkit/webkitdefines.h: defines for spell checker interface.
- * webkit/webkitglobals.cpp: Add APIs to get and set the global
- spell checker.
- (webkit_get_spell_checker): get API.
- (webkit_set_spell_checker): set API.
- * webkit/webkitglobals.h:
- * webkit/webkitspellchecker.cpp: Added. Spell checking interface.
- * webkit/webkitspellchecker.h: Added.
- * webkit/webkitspellcheckerenchant.cpp: Added. Default
- implemention, uses Enchant library.
- * webkit/webkitspellcheckerenchant.h: Added.
-
-2011-06-07 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] "webkithittestresult.h" is malformed
- https://bugs.webkit.org/show_bug.cgi?id=62117
-
- * webkit/webkithittestresult.h: fix typo in GET_CLASS macro.
-
-2011-05-31 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Ryosuke Niwa.
-
- [GTK] Support smart replace for the pasteboard
- https://bugs.webkit.org/show_bug.cgi?id=61734
-
- Add the EditorClient and DumpRenderTreeSupportGtk hooks for enabling
- smart replace in the tests.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag): targeListForDataObject now takes another
- parameter determining whether or not to add smart paste support. Add it here.
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setSmartInsertDeleteEnabled): Added.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h: Add new method definition.
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::toggleSmartInsertDelete): Added implementation.
- (WebKit::EditorClient::smartInsertDeleteEnabled): Added.
- (WebKit::EditorClient::EditorClient):
- * WebCoreSupport/EditorClientGtk.h: Add new method definition.
-
-2011-06-03 Sergio Villar Senin <svillar@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Unref the SoupSession used by WebKitGtk+ at exit
- https://bugs.webkit.org/show_bug.cgi?id=60165
-
- WebKitGtk+ creates a SoupSession instance to handle network stuff
- that is never freed. We should unref that object at exit time.
-
- * webkit/webkitglobals.cpp:
- (webkitExit):
- (webkitInit):
-
-2011-05-28 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Remove PastboardHelperGtk
- https://bugs.webkit.org/show_bug.cgi?id=61690
-
- Remove PasteboardHelperGtk and talk directly to WebCore for pasteboard
- activity. This change moves the PasteboardHelper singleton from WebKit
- to WebCore.
-
- * GNUmakefile.am: Remove PasteboardHelperGtk from the source list.
- * WebCoreSupport/AssertMatchingEnums.cpp: Added assertions verifying that the
- WebCore versions of the GtkClipboard enums match those in the WebKit API.
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag): Access the pasteboard helper via a static method.
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::setSelectionPrimaryClipboardIfNeeded): Ditto. Call into the helper to specify
- that the current clipboard is selection primary now.
- * WebCoreSupport/PasteboardHelperGtk.cpp: Removed.
- * webkit/webkitglobals.cpp: Remove function to set and get the pasteboard helper.
- * webkit/webkitglobalsprivate.h: Ditto.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_press_event): Access the pasteboard helper via a static method.
- (webkit_web_view_drag_data_get): Ditto.
- (webkit_web_view_drag_motion): Ditto.
- (webkit_web_view_drag_data_received): Ditto.
- (webkit_web_view_init): Ditto.
- (webkit_web_view_get_copy_target_list): Ditto.
- (webkit_web_view_get_paste_target_list): Ditto.
- * webkit/webkitwebviewprivate.h: Ditto.
-
-2011-06-02 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Only load dictionaries if spell check is enabled
- https://bugs.webkit.org/show_bug.cgi?id=32879
-
- We don't need to call enchant if enable-spell-checking is false.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings): Skip loading dictionaries when enable-spell-checking is false.
- (webkit_web_view_settings_notify): Ditto.
-
-2011-06-01 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Explictly request the size of a pointer in malloc. Otherwise this
- explodes in 64bit architectures, at least.
-
- * webkit/webkitwebplugin.cpp:
- (webkit_web_plugin_get_mimetypes): ditto.
-
-2011-06-01 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Utility methods for UA spellchecking
- https://bugs.webkit.org/show_bug.cgi?id=61788
-
- Adds a couple of utility methods needed to implement some aspects
- of spell checking support in a browser.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_replace_selection): method to replace the current
- selection with a string of text.
- (webkit_web_frame_get_range_for_word_around_caret): returns the DOM
- range for the word where the caret/selection currently is.
- * webkit/webkitwebframe.h: declare new methods.
-
-2011-05-31 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] gtkdoc run produces many warnings about missing declarations
- https://bugs.webkit.org/show_bug.cgi?id=61797
-
- * docs/webkitgtk-sections.txt: Remove inexistent symbols from this file
- to reduce the number of gtkdoc warnings.
-
-2011-05-31 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Provide custom DOM bindings methods to check if input/textareas have been edited
- https://bugs.webkit.org/show_bug.cgi?id=61791
-
- * GNUmakefile.am: add new files.
-
-2011-05-27 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Data directory is webkitgtk-x.y not webkit-x.y
- https://bugs.webkit.org/show_bug.cgi?id=61642
-
- * GNUmakefile.am: updated data directory.
-
-2011-05-28 Adam Barth <abarth@webkit.org>
-
- Reviewed by Alexey Proskuryakov.
-
- Audit all uses of KURL::prettyURL
- https://bugs.webkit.org/show_bug.cgi?id=61201
-
- Update callers of prettyURL to just call string.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidChangeLocationWithinPage):
- (WebKit::FrameLoaderClient::dispatchDidCommitLoad):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_icon_uri):
-
-2011-05-26 Gustavo Noronha Silva <gustavo.noronha@collabora.com>
-
- Reviewed by Martin Robinson.
-
- Cleanup postCommitFrameViewSetup parameters which are no longer
- necessary after the adjustments handling refactoring.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::postCommitFrameViewSetup):
- (WebKit::FrameLoaderClient::transitionToCommittedFromCachedFrame):
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2011-05-22 Adam Barth <abarth@webkit.org>
-
- Build fix. More public destructors needed to play nice with OwnPtr.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
-
-2011-05-22 Adam Barth <abarth@webkit.org>
-
- Build fix. InspectorFrontendClient needs a public destructor so that
- we can properly track ownership using OwnPtr.
-
- * WebCoreSupport/InspectorClientGtk.h:
-
-2011-05-22 Adam Barth <abarth@webkit.org>
-
- Strict PassOwnPtr build fix.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend):
- (WebKit::InspectorFrontendClient::InspectorFrontendClient):
-
-2011-05-22 Adam Barth <abarth@webkit.org>
-
- Strict PassOwnPtr build fix.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::addUserStyleSheet):
-
-2011-05-20 Simon Fraser <simon.fraser@apple.com>
-
- Reviewed by Sam Weinig.
-
- numberOfActiveAnimations() can include animations from documents in the page cache
- https://bugs.webkit.org/show_bug.cgi?id=53641
-
- Pass the Frame's document as the one to count animations on.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::numberOfActiveAnimations):
-
-2011-05-16 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Scrolling in Twitter is broken after r86102
- https://bugs.webkit.org/show_bug.cgi?id=60922
-
- Fix adjustment handling for pages that trigger the slow scrolling path.
- The slow scrolling path is triggered by WebCore when it determines that
- doing a simple invalidation is quicker than doing a normal scroll. This
- typically happens when there are large elements with fixed positions.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::invalidateContentsForSlowScroll): Poke the adjustment
- watcher to update its adjustments when a page triggers the slow scrolling path.
-
-2011-05-13 Jon Lee <jonlee@apple.com>
-
- Reviewed by Simon Fraser.
-
- Can't horizontally scroll iframes and overflow because wheel events are always accepted
- https://bugs.webkit.org/show_bug.cgi?id=60779
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::shouldRubberBandInDirection): Default impl of new ChromeClient method
- (WebKit::ChromeClient::numWheelEventHandlersChanged): Default impl of new ChromeClient method
-
-2011-05-13 Sam Weinig <sam@webkit.org>
-
- Reviewed by Anders Carlsson.
-
- Prune #includes from FrameView.h (Part 2)
- https://bugs.webkit.org/show_bug.cgi?id=60748
-
- - Update files that were depending on FrameView.h #including Frame.h or
- Page.h.
-
- * WebCoreSupport/GtkAdjustmentWatcher.cpp:
-
-2011-05-13 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Eric Seidel.
-
- [GTK] Share the GTK+ key binding code between WebKit1 and WebKit2
- https://bugs.webkit.org/show_bug.cgi?id=59765
-
- Use the new KeyBindingTranslator class from WebCore/platform/gtk. With this utility
- class we can now share the code with WebKit2.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::executePendingEditorCommands): Updated to reflect the fact that
- the command vector now contains WTF::string.
- (WebKit::EditorClient::handleKeyboardEvent): Use the new helper utility class.
- (WebKit::EditorClient::EditorClient):
- * WebCoreSupport/EditorClientGtk.h: Remove unnecessary member. Add the utility class.
-
-2011-05-12 Martin Robinson <mrobinson@igalia.com>
-
- Attempt to fix the GTK+ unit test testwebview on the 32-bit Release
- bot which appears to be more sensitive to timing issues than the
- other bots.
-
- * tests/testwebview.c: Add another short pause waiting for adjustments to update.
-
-2011-05-09 Martin Robinson <mrobinson@igalia.com>
-
- Fix a test after r86102. Scrollbars update asynchronously, so we
- must check the adjustments after a short delay.
-
- * tests/testwebview.c:
- (quit_after_short_delay_cb): Add a short delay before checking adjustments.
- (test_webkit_web_view_grab_focus): Ditto.
-
-2011-05-09 Xan Lopez <xlopez@igalia.com>
-
- Unreviewed build fix.
-
- Fix build, for real.
-
- * webkit/webkitwebview.cpp:
- (getHorizontalAdjustment):
-
-2011-05-09 Xan Lopez <xlopez@igalia.com>
-
- Unreviewed build fix..
-
- Fix GTK+3.x build.
-
- * webkit/webkitwebview.cpp:
- (getHorizontalAdjustment): the adjustment is in
- adjustmentWatcher() now.
- (getVerticalAdjustment): ditto.
-
-2011-04-29 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Untangle GtkAdjustments from WebCore
- https://bugs.webkit.org/show_bug.cgi?id=59821
-
- Have ChromeClient manage the GtkAdjustments of the parent widget instead of passing
- them to WebCore to manage. This simplifies the code quite a bit and should be less
- crash prone in the future.
-
- * GNUmakefile.am: Added new GtkAdjustmentWatcher class to the sources list.
- * WebCoreSupport/ChromeClientGtk.cpp: Added new GtkAdjustmentWatcher member.
- (WebKit::ChromeClient::ChromeClient) Initialize the new member.
- (WebKit::ChromeClient::scroll): Poke the adjustment watcher to update the adjustments.
- (WebKit::ChromeClient::contentsSizeChanged): Ditto.
- (WebKit::ChromeClient::scrollbarsModeDidChange): This may now be called at a time when there
- is no main frame, so do an early return in that case.
- * WebCoreSupport/ChromeClientGtk.h: Add the new member.
- (WebKit::ChromeClient::adjustmentWatcher): Add this getter for WebKitWebView.
- * WebCoreSupport/FrameLoaderClientGtk.cpp: Remove calls which pushed the adjustments into
- WebCore.
- (WebKit::FrameLoaderClient::savePlatformDataToCachedFrame):
- (WebKit::postCommitFrameViewSetup):
- * WebCoreSupport/GtkAdjustmentWatcher.cpp: Added.
- (WebKit::GtkAdjustmentWatcher::GtkAdjustmentWatcher):
- (WebKit::updateAdjustmentFromScrollbar):
- (WebKit::GtkAdjustmentWatcher::updateAdjustmentsFromScrollbars):
- (WebKit::updateAdjustmentCallback):
- (WebKit::GtkAdjustmentWatcher::updateAdjustmentsFromScrollbarsLater):
- (WebKit::adjustmentValueChangedCallback):
- (WebKit::setAdjustment):
- (WebKit::GtkAdjustmentWatcher::setHorizontalAdjustment):
- (WebKit::GtkAdjustmentWatcher::setVerticalAdjustment):
- (WebKit::GtkAdjustmentWatcher::adjustmentValueChanged):
- * WebCoreSupport/GtkAdjustmentWatcher.h: Added.
- (WebKit::GtkAdjustmentWatcher::horizontalAdjustment):
- (WebKit::GtkAdjustmentWatcher::verticalAdjustment):
- * webkit/webkitwebview.cpp:
- (setHorizontalAdjustment):
- (setVerticalAdjustment): Remove the adjustment member. Call into the adjustment watcher.
- (getHorizontalAdjustment): Ditto.
- (getVerticalAdjustment): Ditto.
- (webkit_web_view_size_allocate): Ditto.
- (webkit_web_view_set_scroll_adjustments): Ditto.
- (webkit_web_view_dispose): Ditto.
- (webkit_web_view_init): Ditto.
- * webkit/webkitwebviewprivate.h: Ditto.
-
-2011-05-06 Kent Tamura <tkent@chromium.org>
-
- Reviewed by Ryosuke Niwa.
-
- Eliminate WebCore/dom/InputElement.{cpp,h}
- https://bugs.webkit.org/show_bug.cgi?id=60262
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setAutofilled):
- Follow the return type change of Node::toInputElement().
- (DumpRenderTreeSupportGtk::setValueForUser): ditto.
-
-2011-05-06 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] [WebKit2] WebView::windowToScreen needs an implementation
- https://bugs.webkit.org/show_bug.cgi?id=55960
-
- Abstract the code to translate from widget space to screen space into
- a helper method in WebCore.
-
- * WebCoreSupport/ChromeClientGtk.cpp: Use the new helper method from GtkUtilities.
- (WebKit::ChromeClient::windowToScreen):
- (WebKit::ChromeClient::screenToWindow):
-
-2011-05-04 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Dimitri Glazkov.
-
- Implement LayoutTestController::pseudoShadowId()
- https://bugs.webkit.org/show_bug.cgi?id=60034
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::shadowPseudoId):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-05-05 Bharathwaaj Srinivasan <bharathwaaj.s@gmail.com>
-
- Reviewed by Holger Freyther.
-
- Fix build-webkit --minimal.
- https://bugs.webkit.org/show_bug.cgi?id=60257
-
- * webkit/webkitglobals.cpp:
- (webkitInit):
-
-2011-05-05 Ryosuke Niwa <rniwa@webkit.org>
-
- Reviewed by Eric Seidel.
-
- Rename SelectionController to FrameSelection
- https://bugs.webkit.org/show_bug.cgi?id=60234
-
- * webkit/webkitwebview.cpp:
- (getLocationForKeyboardGeneratedContextMenu):
-
-2011-05-04 Ryosuke Niwa <rniwa@webkit.org>
-
- GTK build fix attempt after r85823
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::webView):
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted):
- (WebKit::imContextPreeditChanged):
- * webkit/webkitwebview.cpp:
- (WebKit::kit):
-
-2011-05-04 Cris Neckar <cdn@chromium.org>
-
- Reviewed by Adam Barth.
-
- Expose WebView directly through ChromeClient.
- https://bugs.webkit.org/show_bug.cgi?id=49902
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::webView):
-
-2011-05-04 Tao Bai <michaelbai@chromium.org>
-
- Reviewed by David Kilzer.
-
- Populate touch-icon url to FrameLoaderClient
- https://bugs.webkit.org/show_bug.cgi?id=59143
-
- Respect the interface change in FrameLoaderClient.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidChangeIcons):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-05-03 Julien Chaffraix <jchaffraix@codeaurora.org>
-
- Reviewed by Dimitri Glazkov.
-
- Element:shadowRoot & Element::ensureShadowRoot should return ShadowRoot*
- https://bugs.webkit.org/show_bug.cgi?id=58703
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp: Added #include for ShadowRoot.h.
-
-2011-04-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk+] Crash when navigating back
- https://bugs.webkit.org/show_bug.cgi?id=59799
-
- The innerNode management in WebKitHitTestResult was relying on the
- old DOM bindings behavior where every DOM objects had to be
- disposed by the caller. Now the objects are garbage collected by
- WebKit when either the parent frame or document dies, so this is
- not needed anymore. Update the code to simply take ownership of
- the node, which effectively correctly balances the reference
- count.
-
- * webkit/webkithittestresult.cpp:
- (webkit_hit_test_result_dispose): call C++ dtors in private data.
- (webkit_hit_test_result_get_property): adatp to GRefPtr API.
- (webkit_hit_test_result_init): call C++ ctors in private data.
-
-2011-04-28 Xan Lopez <xlopez@igalia.com>
-
- Unreviewed build fix.
-
- * GNUmakefile.am:
-
-2011-04-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] Split JSC and WebCore builds
- https://bugs.webkit.org/show_bug.cgi?id=19428
-
- Add a pkg-config file for JavaScriptCoreGTK+.
-
- * GNUmakefile.am: take care of the pkg-config file.
- * javascriptcoregtk.pc.in: Added.
-
-2011-04-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] Split JSC and WebCore builds
- https://bugs.webkit.org/show_bug.cgi?id=19428
-
- Build JavaScriptCore as a libtool shared library instead of a
- private convenience library.
-
- * GNUmakefile.am: adapt to new name for javascriptcore target.
-
-2011-04-28 ojab <ojab@ojab.ru>
-
- Reviewed by Martin Robinson.
-
- Webkit-gtk build failure, no type/member 'Page' in namespace 'WebCore'
- https://bugs.webkit.org/show_bug.cgi?id=59585
-
- * webkit/webkitwebviewprivate.h:
-
-2011-04-28 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Click counting logic should be shared between WebKit1 and WebKit2
- https://bugs.webkit.org/show_bug.cgi?id=59715
-
- Switch WebKit1 to use the new GtkClickCounter for counting > 3 clicks in a row.
- This allows the code to be shared between WebKit1 and WebKit2.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag): Call GtkClickCounter::reset instead of fiddling
- the WebView private data directly.
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::postCommitFrameViewSetup): Ditto.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_press_event): Call into GtkClickCounter now.
- (webkit_web_view_init): Remove private member intialization.
- * webkit/webkitwebviewprivate.h: Remove unneeded private members.
-
-2011-04-27 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Eric Seidel.
-
- [GTK] Menulists do not follow text direction when rendering options with right-to-left text
- https://bugs.webkit.org/show_bug.cgi?id=54038
-
- Fix rendering of menulists that contain right-to-left text. Text direction
- inside a menulist now follows the alignment of its contents.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::selectItemWritingDirectionIsNatural): Return false instead of true.
- (WebKit::ChromeClient::selectItemAlignmentFollowsMenuWritingDirection): Return true instead of false.
-
-2011-04-27 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r84987.
- http://trac.webkit.org/changeset/84987
- https://bugs.webkit.org/show_bug.cgi?id=59618
-
- Caused crashes on the GTK+ debug bots. (Requested by mrobinson
- on #webkit).
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::exceededDatabaseQuota):
-
-2011-04-26 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] flaky crash storage/open-database-set-empty-version.html
- https://bugs.webkit.org/show_bug.cgi?id=58988
-
- Construct the security origin directly instead of getting it from the WebKitWebFrame object.
- This prevents failing to create the WebKitSecurityOrigin in cases where the frame is in
- some inconsistent state.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::exceededDatabaseQuota): Construct the origin directly.
-
-2011-04-22 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] fast/events/overflow-viewport-renderer-deleted.html crashes
- https://bugs.webkit.org/show_bug.cgi?id=58976
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::getInnerText): Guard against situations when the documentElement
- method of the document returns null.
-
-2011-04-22 Sam Weinig <sam@webkit.org>
-
- Reviewed by Gavin Barraclough.
-
- Remove remaining uses of deprecated version of toJS
- https://bugs.webkit.org/show_bug.cgi?id=59170
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::shadowRoot):
- (DumpRenderTreeSupportGtk::ensureShadowRoot):
- Replace use of deprecated toJS overload with explicit call to deprecatedGlobalObjectForPrototype.
-
-2011-04-22 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] DRT: implement eventSender.scalePageBy
- https://bugs.webkit.org/show_bug.cgi?id=59082
-
- Added support in DRT for webview scaling.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::scale):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-04-21 Ryosuke Niwa <rniwa@webkit.org>
-
- Reviewed by Sam Weinig.
-
- Add Frame* to the argument lists of canCopyCut and canPaste
- https://bugs.webkit.org/show_bug.cgi?id=59153
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::canCopyCut):
- (WebKit::EditorClient::canPaste):
- * WebCoreSupport/EditorClientGtk.h:
-
-2011-04-21 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] DRT: implement eventSender.scalePageBy
- https://bugs.webkit.org/show_bug.cgi?id=59082
-
- Rolling out r84507 since it broke many GTK+ tests.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-04-21 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] missing LayoutTestController::callShouldCloseOnWebView()
- https://bugs.webkit.org/show_bug.cgi?id=59086
-
- DRT::shouldClose(), used by the LayoutController.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::shouldClose):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-04-21 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] DRT: implement eventSender.scalePageBy
- https://bugs.webkit.org/show_bug.cgi?id=59082
-
- Added support in DRT for webview scaling.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::scalePageBy):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-04-20 Dominic Cooney <dominicc@chromium.org>
-
- Reviewed by Dimitri Glazkov.
-
- layoutTestController can create and destroy shadow DOM
- https://bugs.webkit.org/show_bug.cgi?id=59058
-
- Support for new methods in GTK DRT.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::ensureShadowRoot):
- (DumpRenderTreeSupportGtk::removeShadowRoot):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-04-20 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Build libWebCore with the gtk sources too
- https://bugs.webkit.org/show_bug.cgi?id=58968
-
- In some cases webcore files are compiled twice, so it improves the
- build time.
-
- * GNUmakefile.am: Remove webcore gtk sources from libwebkitgtk
- sources.
-
-2011-04-19 Vsevolod Vlasov <vsevik@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- Web Inspector: Rename lengthReceived to encodedDataLength/dataLength
- https://bugs.webkit.org/show_bug.cgi?id=58883
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidReceiveContentLength):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- * webkit/webkitdownload.cpp:
- (DownloadClient::didReceiveData):
-
-2011-04-18 Zan Dobersek <zandobersek@gmail.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Need support for dumping focus rectangles in pixel results
- https://bugs.webkit.org/show_bug.cgi?id=53647
-
- Add a support function that returns the rectangle of the current
- selection in frame.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::rectangleForSelection):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-04-12 Xan Lopez <xlopez@igalia.com>
-
- Unreviewed build fix.
-
- * webkit/webkitwebhistoryitem.cpp:
-
-2011-04-12 Stephanie Lewis <slewis@apple.com>
-
- Reviewed by Oliver Hunt.
-
- https://bugs.webkit.org/show_bug.cgi?id=58280
- <rdar://problem/9252824> javascript in an inconsistent state due to serialization returning an un-handled exception.
-
- Add a header include. Fallout from untangling some header files in WebCore.
-
- * webkit/webkitwebhistoryitem.cpp:
-
-2011-02-03 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Eric Seidel.
-
- [GTK] The GTK+ DRT needs an implementation of the PlainTextController
- https://bugs.webkit.org/show_bug.cgi?id=53605
-
- Added jsValueToDOMRange to DumpRenderTreeSupportGtk. This static method can convert
- a JSValueRef to a WebKitDOMRange. When it's possible to do this with the public
- API, we can remove this method.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::jsValueToDOMRange): Added.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h: Added declaration.
-
-2011-04-11 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Chris Fleizach.
-
- [Gtk] Implement support for Embedded Objects
- https://bugs.webkit.org/show_bug.cgi?id=52148
-
- New accessibility unit test for embedded objects.
-
- * tests/testatk.c:
- (testWebkitAtkEmbeddedObjects): New unit test.
- (main): Added the new unit test.
-
-2011-04-08 Dominic Cooney <dominicc@google.com>
-
- Reviewed by Adam Roben.
-
- Make layoutTestController.shadowRoot return null, not undefined,
- when its argument is invalid.
- https://bugs.webkit.org/show_bug.cgi?id=58121
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::shadowRoot):
-
-2011-04-08 Dominic Cooney <dominicc@google.com>
-
- Reviewed by Kent Tamura.
-
- layoutTestController.shadowRoot should return undefined if its
- argument is not an element.
- https://bugs.webkit.org/show_bug.cgi?id=58119
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::shadowRoot):
-
-2011-04-08 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Implement increment() and decrement() functions in DRT's AccessibilityUIElement
- https://bugs.webkit.org/show_bug.cgi?id=58039
-
- Implemented missing functions in GTK's DRT.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (modifyAccessibilityValue): Helper function to increment or decrement
- the current value for an object through the AccessibilityObject's API.
- (DumpRenderTreeSupportGtk::incrementAccessibilityValue): New function,
- to be used from GTK's DRT.
- (DumpRenderTreeSupportGtk::decrementAccessibilityValue): Ditto.
-
-2011-04-06 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Martin Robinson.
-
- [GTK] Need a way to get the path to a WebKitWebPlugin
- https://bugs.webkit.org/show_bug.cgi?id=57968
-
- Expose the path of the plugin through the WebKitWebPlugin object.
-
- * webkit/webkitwebplugin.cpp:
- (webkit_web_plugin_get_path):
- * webkit/webkitwebplugin.h:
- * webkit/webkitwebpluginprivate.h:
-
-2011-04-07 Alice Boxhall <aboxhall@chromium.org>
-
- Reviewed by Ryosuke Niwa.
-
- Move the MouseEventWithHitTestResults::targetNode() method on to EventHandler.
- https://bugs.webkit.org/show_bug.cgi?id=57921
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_forward_context_menu_event):
- Call subframeForHitTestResult rather than subframeForTargetNode as the targetNode()
- method has moved on to EventHandler.
-
-2011-04-05 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Eric Seidel.
-
- [Cairo] Better separate the concerns of GraphicsContextCairo
- https://bugs.webkit.org/show_bug.cgi?id=55150
-
- Add a PlatformContextCairo which right now stores the cairo_t* for a
- GraphicsContextCairo. Later patches will move logic for tracking ContextShadow
- and image masking layers into this PlatformContextCairo class.
-
- * webkit/webkitwebframe.cpp:
- (draw_page_callback):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_expose_event):
- (webkit_web_view_draw):
-
-2011-04-04 MORITA Hajime <morrita@google.com>
-
- Reviewed by Ryosuke Niwa.
-
- [Refactoring] SpellCheckingResult should be replaced with TextCheckingResult
- https://bugs.webkit.org/show_bug.cgi?id=56085
-
- * WebCoreSupport/TextCheckerClientEnchant.h:
- (WebKit::TextCheckerClientEnchant::requestCheckingOfString):
-
-2011-04-04 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] WebGL support
- https://bugs.webkit.org/show_bug.cgi?id=31517
-
- Add support for toggling WebGL at runtime when it's enabled.
-
- * webkit/webkitwebsettings.cpp: Add the enable-webgl property. When ENABLE_WEBGL
- is not enabled, it's a no-op.
- (webkit_web_settings_class_init): Update to support enable-webgl.
- (webkit_web_settings_set_property): Ditto.
- (webkit_web_settings_get_property): Ditto.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings): Ditto.
-
-2011-04-04 Alexey Proskuryakov <ap@apple.com>
-
- Reviewed by Dan Bernstein.
-
- REGRESSION (WebKit2): Caps-Lock indicator sometimes doesn't appear in WebKit2
- https://bugs.webkit.org/show_bug.cgi?id=51230
- <rdar://problem/8780989>
-
- * webkit/webkitwebview.cpp: (webkit_web_view_key_release_event): Moved Caps Lock handling from
- WebKits to WebCore, because WebKit shouldn't be smart.
-
-2011-04-04 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] webkit_web_view_popup_menu_handler should call SelectionController::localCaretRect
- https://bugs.webkit.org/show_bug.cgi?id=54633
-
- Remove use of legacy editing positions when positioning keyboard-driven context
- menus. Simplify the code greatly.
-
- * webkit/webkitwebview.cpp:
- (getLocationForKeyboardGeneratedContextMenu): Added this helper which calculates
- the context menu position.
- (webkit_web_view_popup_menu_handler): Simplify code preventing the menu from bumping
- into the edges of the view. Remove (0,-1) hack as it no longer seems to be important.
-
-2011-04-02 Dominic Cooney <dominicc@google.com>
-
- Reviewed by Martin Robinson.
-
- Add layoutTestController.shadowRoot to GTK DumpRenderTree.
- https://bugs.webkit.org/show_bug.cgi?id=57551
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::shadowRoot):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-04-01 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r82721.
- http://trac.webkit.org/changeset/82721
- https://bugs.webkit.org/show_bug.cgi?id=57687
-
- This patch introduced assertion failures on the GTK+ bots.
- (Requested by mrobinson on #webkit).
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-04-01 Dominic Cooney <dominicc@google.com>
-
- Reviewed by Martin Robinson.
-
- Add layoutTestController.shadowRoot to GTK DumpRenderTree.
- https://bugs.webkit.org/show_bug.cgi?id=57551
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::shadowRoot):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-03-31 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Link explicitly with XRender on Linux/Unix
- https://bugs.webkit.org/show_bug.cgi?id=57558
-
- * GNUmakefile.am: add XRender LIBS.
-
-2011-03-31 Evan Martin <evan@chromium.org>
-
- Build fix from previous change.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidReceiveTitle):
-
-2011-03-31 Evan Martin <evan@chromium.org>
-
- Reviewed by Eric Seidel.
-
- <title> should support dir attribute
- https://bugs.webkit.org/show_bug.cgi?id=50961
-
- Update to new FrameLoaderClient interface.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidReceiveTitle):
- (WebKit::FrameLoaderClient::setTitle):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-03-29 Philippe Normand <pnormand@igalia.com>
-
- Unreviewed, disable an assert in testwebview due to
- https://bugs.webkit.org/show_bug.cgi?id=57315
-
- * tests/testwebview.c:
-
-2011-03-28 Adele Peterson <adele@apple.com>
-
- Build fix.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::webkitWebFrameSelectionHasSpellingMarker):
-
-2011-03-28 Sergio Villar Senin <svillar@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Fullscreen tests failing after r82084
- https://bugs.webkit.org/show_bug.cgi?id=57219
-
- Added the withKeyboard parameter to supportsFullScreenForElement
- method in ChromeClient. Fullscreen will be disabled for keyboard
- access by default.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::supportsFullScreenForElement):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-03-25 Andy Estes <aestes@apple.com>
-
- Reviewed by Adele Peterson.
-
- REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
- https://bugs.webkit.org/show_bug.cgi?id=49016
-
- Update objectContentType() implementation to handle the
- shouldPreferPlugInsForImages flag.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::objectContentType):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-03-25 Priit Laes <plaes@plaes.org>
-
- Reviewed by Martin Robinson.
-
- [GTK] [PATCH] Avoid critical warning when free-ing list of plugins
- https://bugs.webkit.org/show_bug.cgi?id=57025
-
- * webkit/webkitwebplugindatabase.cpp:
- (webkit_web_plugin_database_plugins_list_free):
- Use regular check and return instead of g_return_if_fail.
-
-2011-03-24 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r81916 and r81917.
- http://trac.webkit.org/changeset/81916
- http://trac.webkit.org/changeset/81917
- https://bugs.webkit.org/show_bug.cgi?id=57071
-
- broke a test on platforms that do not have QuickTime installed
- (Requested by estes on #webkit).
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::objectContentType):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-03-24 Andy Estes <aestes@apple.com>
-
- Reviewed by Darin Adler.
-
- REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
- https://bugs.webkit.org/show_bug.cgi?id=49016
-
- Update objectContentType() implementation to handle the
- shouldPreferPlugInsForImages flag.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::objectContentType):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-03-23 Brady Eidson <beidson@apple.com>
-
- Reviewed by Sam Weinig.
-
- Change IconDatabase opening to allow for arbitrary filenames
- https://bugs.webkit.org/show_bug.cgi?id=56977
-
- * webkit/webkiticondatabase.cpp:
- (webkit_icon_database_set_path):
-
-2011-03-22 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Xan Lopez.
-
- Applications that include WebKit headers fail to build when using strict warnings
- because the signature for webkit_application_cache_get_maximum_size is missing a
- 'void' to make it explicit it takes no arguments.
-
- * webkit/webkitapplicationcache.h:
-
-2011-03-21 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] 1.3.13 release bump
- https://bugs.webkit.org/show_bug.cgi?id=56795
-
- Version bump for 1.3.13 and updated NEWS file with release notes.
-
- * NEWS:
-
-2011-03-21 Chang Shu <cshu@webkit.org>
-
- Reviewed by Alexey Proskuryakov.
-
- REGRESSION (r79953): Can't type in MS Outlook 2011
- https://bugs.webkit.org/show_bug.cgi?id=56665
-
- r79953 removed the WebView level editablity which is persistent no matter whether
- underlying document itself is changed and editability gets lost. The resolution is to
- set this WebView editable value to WebCore. This avoids the callback from WebCore to
- WebKit which was the main goal in r79953 to improve performance.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_editable):
- (webkit_web_view_set_editable):
-
-2011-03-21 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] [Stable] AtkHypertext exposes wrong offsets for links placed inside <span> nodes
- https://bugs.webkit.org/show_bug.cgi?id=56737
-
- * tests/testatk.c:
- (testWebkitAtkHypertextAndHyperlinks): Updated unit test to also
- check offsets for hyperlinks inside <span> nodes.
-
-2011-03-18 David Keijser <keijser@gmail.com> and Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] On-demand event-listeners for DOM event signals
- https://bugs.webkit.org/show_bug.cgi?id=49649
-
- * tests/testdomdomwindow.c: update unit tests for new APIs.
- (load_event_callback): ditto.
- (test_dom_domview_signals): ditto.
- (load_status_callback): ditto.
-
-2011-03-17 Brady Eidson <beidson@apple.com>
-
- Reviewed by Sam Weinig.
-
- https://bugs.webkit.org/show_bug.cgi?id=56425
- More groundwork for WebKit2 IconDatabase
-
- Update already-used function names:
- * webkit/webkiticondatabase.cpp:
- (webkit_icon_database_get_icon_uri):
- (webkit_icon_database_get_icon_pixbuf):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_icon_uri):
-
-2011-03-16 Joseph Pecoraro <joepeck@webkit.org>
-
- Reviewed by Kenneth Rohde Christiansen.
-
- Viewport no longer allows an auto value for "user-scalable"
- https://bugs.webkit.org/show_bug.cgi?id=55416
-
- Make the default value for userScalable be true.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::dumpConfigurationForViewport): update test output to include userScalable.
- * webkit/webkitviewportattributes.cpp:
- (webkitViewportAttributesRecompute):
-
-2011-03-15 Ilya Sherman <isherman@chromium.org>
-
- Reviewed by Tony Chang.
-
- Autofilled form elements are assigned fixed background color but not text color
- https://bugs.webkit.org/show_bug.cgi?id=48382
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setAutofilled): Added.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-03-14 Ryuan Choi <ryuan.choi@samsung.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Possible leaks after splitting TextCheckerClientEnchant.
- https://bugs.webkit.org/show_bug.cgi?id=55989
-
- Convert gchar* to GOwnPtr<gchar> and refactor the code.
-
- * WebCoreSupport/TextCheckerClientEnchant.cpp:
- (WebKit::TextCheckerClientEnchant::checkSpellingOfString):
-
-2011-03-11 Marco Peereboom <marco@peereboom.us>
-
- Reviewed by Gustavo Noronha Silva.
-
- Provide a knob to enable/disable DNS prefetching.
- DNS prefetching is enabled by default.
- https://bugs.webkit.org/show_bug.cgi?id=55973
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2011-03-08 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] close-web-view emitted on disposed WebView
- https://bugs.webkit.org/show_bug.cgi?id=55932
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (ChromeClient::chromeDestroyed): Remove the closeSoonTimer glib
- source before destruction of the ChromeClient.
-
-2011-03-11 Roland Steiner <rolandsteiner@chromium.org>
-
- Reviewed by Ryosuke Niwa.
-
- Bug 55570 - Remove dependency of dom/InputElement.cpp on html/ and wml/
- https://bugs.webkit.org/show_bug.cgi?id=55570
-
- Add a virtual function toInputElement() to Node that has a default
- implementation of returning 0.
- For HTMLInputElement and WMLInputElement (which derive from InputElement)
- override this to return the object.
- Change all calling sites of the old toInputElement to use the new member
- function. This also allows us to save some casts.
-
- No new tests (refactoring).
-
- * src/WebInputElement.cpp:
- (WebKit::toWebInputElement):
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setValueForUser):
-
-2011-03-10 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] unittests/testapplicationcache crashes
- https://bugs.webkit.org/show_bug.cgi?id=56083
-
- Removed the webkit_application_cache_get_database_directory_path
- API as the underlying ApplicationCacheStorage doesn't allow
- setting the cache path multiple times.
-
- * tests/testapplicationcache.c:
- (main):
- * webkit/webkitapplicationcache.cpp:
- (webkit_application_cache_get_database_directory_path):
- * webkit/webkitapplicationcache.h:
- * webkit/webkitglobals.cpp:
- (webkitInit):
-
-2011-03-09 Peter Kasting <pkasting@google.com>
-
- Reviewed by Mihai Parparita.
-
- Unify Windows version checks.
- https://bugs.webkit.org/show_bug.cgi?id=55979
-
- * webkit/webkitwebsettings.cpp:
- (webkitOSVersion):
-
-2011-03-08 Christian Dywan <christian@lanedo.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] provide an API to control the IconDatabase
- https://bugs.webkit.org/show_bug.cgi?id=32510
-
- * GNUmakefile.am:
- * WebCoreSupport/FrameLoaderClientGtk.cpp: Emit signals on
- the icon database for new icons.
- * webkit/webkit.h:
- * webkit/webkitdefines.h:
- * webkit/webkitglobals.cpp:
- * webkit/webkitglobals.h: Add a function to obtain the global
- icon database.
- * webkit/webkiticondatabase.cpp:
- * webkit/webkiticondatabase.h: Implement public icon database
- object with methods for obtaining icon URLs, pixbufs, clearing
- waiting for new icons.
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h: Add a method to obtain an icon pixbuf
- for the web view.
-2011-03-08 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Add layoutTestController.setValueForUser() after r80412
- https://bugs.webkit.org/show_bug.cgi?id=55862
-
- Add setValueForUser method to DumpRenderTreeSupportGTK.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setValueForUser):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-03-07 Sam Weinig <sam@webkit.org>
-
- Reviewed by Anders Carlsson.
-
- Replace WebKit2's decidePolicyForMIMEType with decidePolicyForResponse
- https://bugs.webkit.org/show_bug.cgi?id=55827
-
- Renamed FrameLoaderClient::dispatchDecidePolicyForMIMEType to dispatchDecidePolicyForResponse
- and pass the entire response, instead of just the MIMEType.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForResponse):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-03-01 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Windowless plugins override the view cursor
- https://bugs.webkit.org/show_bug.cgi?id=55531
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::setCursor): Moved the implementation of setCursor here
- which is more fitting since it sets the cursor for the entire window.
-
-2011-03-03 Brady Eidson <beidson@apple.com>
-
- Reviewed by Darin Adler.
-
- https://bugs.webkit.org/show_bug.cgi?id=55721
- Global IconDatabase should be returned by reference, not as a pointer
-
- * webkit/webkitglobals.cpp:
- (closeIconDatabaseOnExit):
- (WebKit::setIconDatabaseEnabled):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_icon_uri):
-
-2011-03-03 Alexey Proskuryakov <ap@apple.com>
-
- Removing an include of WebCoreKeyboardUIMode.h that Ive just added. It's already included
- via ChromeClient.h
-
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-03-02 Alexey Proskuryakov <ap@apple.com>
-
- Reviewed by Darin Adler.
-
- REGRESSION (WebKit2): Tab keys no longer observe Full Keyboard Access
- https://bugs.webkit.org/show_bug.cgi?id=55633
- <rdar://problem/8963023>
-
- * WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::keyboardUIMode):
- * WebCoreSupport/ChromeClientGtk.h:
- Implement keyboardUIMode() instead of tabsToLinks(). No change in functionality, since
- this platform doesn't observe or have full keyboard access state.
-
-2011-03-03 Lukasz Slachciak <l.slachciak@samsung.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Extended application cache database API and added unit tests file.
- https://bugs.webkit.org/show_bug.cgi?id=55335
-
- * GNUmakefile.am: Add testapplicationcache.c and remove webkitapplicationcacheprivate.h.
- * tests/testapplicationcache.c: Added.
- (test_applicationcache_maximum_size): Tests if application cache storage is set/get correctly.
- (test_applicationcache_database_directory_path): Tests if application cache directory path is set/get correctly.
- (main):
- * webkit/webkitapplicationcache.cpp:
- (webkit_application_cache_get_maximum_size): New API for getting application cache maximum storage size.
- * webkit/webkitapplicationcache.h: Declaration of API for getting/setting application cache maximum storage size.
- * webkit/webkitapplicationcacheprivate.h: Removed.
-2011-03-03 Peter Kasting <pkasting@google.com>
-
- Reviewed by James Robinson.
-
- Drop redundant "Windows; " from the Windows-specific User Agent string.
- https://bugs.webkit.org/show_bug.cgi?id=54567
-
- * webkit/webkitwebsettings.cpp:
- (webkitPlatform):
- (webkitUserAgent):
-
-2011-03-02 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Do a bit of cleanup in ChromeClientGtk. Instead of always fetching the
- WebKitWebView from the frame, simply get it from the member variable of
- the ChromeClientGtk instance itself.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::scrollbarsVisible):
- (WebKit::ChromeClient::exceededDatabaseQuota):
- (WebKit::ChromeClient::requestGeolocationPermissionForFrame):
- (WebKit::ChromeClient::cancelGeolocationPermissionRequestForFrame):
- (WebKit::ChromeClient::enterFullscreenForNode):
- (WebKit::ChromeClient::exitFullscreenForNode):
-
-2011-03-01 Joseph Pecoraro <joepeck@webkit.org>
-
- Unreviewed. Roll out r80068 and r80073 due to breaking WebKit2 Qt port.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::dumpConfigurationForViewport):
- * webkit/webkitviewportattributes.cpp:
- (webkitViewportAttributesRecompute):
-
-2011-03-01 Joseph Pecoraro <joepeck@webkit.org>
-
- Reviewed by Kenneth Rohde Christiansen.
-
- Viewport Warning/Error Messages Are Now Inaccurate
- https://bugs.webkit.org/show_bug.cgi?id=53707
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::dumpConfigurationForViewport): pass a Document into computeViewportAttributes for warnings to be reported to.
- * webkit/webkitviewportattributes.cpp:
- (webkitViewportAttributesRecompute): pass a Document into computeViewportAttributes for warnings to be reported to.
-
-2011-03-01 Kamil Blank <k.blank@samsung.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Fixing headers order in webkit.h.
- https://bugs.webkit.org/show_bug.cgi?id=55316
-
- * webkit/webkit.h: Style fix.
-
-2011-03-01 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Convert use of cairo_t to RefPtr<cairo_t> in webkitwebiew.cpp
- https://bugs.webkit.org/show_bug.cgi?id=55437
-
- * webkit/webkitwebview.cpp: Convert use of cairo_t to RefPtr<cairo_t>.
- (webkit_web_view_expose_event):
-
-2011-02-28 Chang Shu <cshu@webkit.org>
-
- Reviewed by Ryosuke Niwa.
-
- Remove the support of Frame::isContentEditable and its dependencies.
- https://bugs.webkit.org/show_bug.cgi?id=54292
-
- Remove the WebKit side implementation. Make WebKit support depend on Document::inDesignMode.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- * WebCoreSupport/EditorClientGtk.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
- (webkit_web_view_get_editable):
- (webkit_web_view_set_editable):
- * webkit/webkitwebviewprivate.h:
-
-2011-02-26 Lukasz Slachciak <l.slachciak@samsung.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Implemented API to set/get web application cache directory path database.
-
- * GNUmakefile.am: Add webkitapplicationcache.h file.
- * webkit/webkit.h: Add webkitapplicationcache.h file.
- * webkit/webkitapplicationcache.cpp: definition of API setting and getting
- web application cache directory path database.
- (webkit_application_cache_get_database_directory_path):
- (webkit_application_cache_set_database_directory_path):
- * webkit/webkitapplicationcache.h: Added new API file for setting and getting
- web application cache directory path database.
- * webkit/webkitglobals.cpp:
- (webkitInit): use webkit_application_cache_set_database_directory_path
- to set default web application cache directory path database.
-
-2011-02-26 Vsevolod Vlasov <vsevik@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- DumpRenderTree should reset frame opener between tests.
- https://bugs.webkit.org/show_bug.cgi?id=54874
-
- Added clearOpener method to DumpRenderTreeSupportGTK.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::clearOpener):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-02-26 Kenneth Rohde Christiansen <kenneth@webkit.org>
-
- Reviewed by Andreas Kling.
-
- Make it possible to test the targetdensity-dpi support
- https://bugs.webkit.org/show_bug.cgi?id=55142
-
- Test the viewport meta tag feature targetdensity-dpi by
- adding extra arguments to dumpConfigurationForViewport
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::dumpConfigurationForViewport):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-02-26 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r79764.
- http://trac.webkit.org/changeset/79764
- https://bugs.webkit.org/show_bug.cgi?id=55295
-
- "broke Chromium builds" (Requested by rniwa on #webkit).
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-02-26 Vsevolod Vlasov <vsevik@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- DumpRenderTree should reset frame opener between tests.
- https://bugs.webkit.org/show_bug.cgi?id=54874
-
- Added clearOpener method to DumpRenderTreeSupportGTK.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::clearOpener):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-02-24 Peter Kasting <pkasting@google.com>
-
- Reviewed by Eric Seidel.
-
- Drop the "U; " encryption level from the User Agent string.
- https://bugs.webkit.org/show_bug.cgi?id=54566
-
- * webkit/webkitwebsettings.cpp:
- (webkitUserAgent):
-
-2011-02-24 Andrew Wilson <atwilson@chromium.org>
-
- Unreviewed, rolling out r79570.
- http://trac.webkit.org/changeset/79570
- https://bugs.webkit.org/show_bug.cgi?id=54874
-
- Breaks chromium build because glue/mocks/mock_web_frame.h/cc
- was not updated
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-02-24 Vsevolod Vlasov <vsevik@chromium.org>
-
- Reviewed by Alexey Proskuryakov.
-
- DumpRenderTree should reset frame opener between tests.
- https://bugs.webkit.org/show_bug.cgi?id=54874
-
- Added clearOpener method to DumpRenderTreeSupportGTK.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::clearOpener):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-02-22 Laszlo Gombos <laszlo.1.gombos@nokia.com>
-
- Reviewed by Alexey Proskuryakov.
-
- Drop the language tag part from the User Agent string
- https://bugs.webkit.org/show_bug.cgi?id=54560
-
- * webkit/webkitwebsettings.cpp:
- (webkitUserAgent):
-
-2011-02-22 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] position:fixed elements flicker while scrolling after r74196
- https://bugs.webkit.org/show_bug.cgi?id=54981
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient): Initialize the new m_pendingScrollInvalidations
- boolean to false.
- (WebKit::ChromeClient::invalidateWindow): If this is an immediate invalidation and we
- having pending scrolling invalidations, instruct GDK to process updates now.
- (WebKit::ChromeClient::scroll): Remove the call to gdk_window_process_updates. Set
- m_pendingScrollInvalidations to true to force it to happen in invalidateWindow instead.
- * WebCoreSupport/ChromeClientGtk.h: Add new boolean member.
-
-2011-02-02 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] DRT needs an implementation of LayoutTestController.setSelectTrailingWhitespace
- https://bugs.webkit.org/show_bug.cgi?id=53603
-
- Add setSelectTrailingWhitespaceEnabled and selectTrailingWhitespaceEnabled which allow
- setting and querying the selectTrailingWhitespaceEnabled setting. EditorClient just
- listens to this value during DRT runs. Perhaps later we can expose this to the public
- API.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setSelectTrailingWhitespaceEnabled): Added
- (DumpRenderTreeSupportGtk::selectTrailingWhitespaceEnabled): Added
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::isSelectTrailingWhitespaceEnabled): Ask DRTSupportGtk
- for the appropriate return value.
-
-2011-02-21 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] [REGRESSION] After r79130, spell tests did not work
- https://bugs.webkit.org/show_bug.cgi?id=54860
-
- * WebCoreSupport/TextCheckerClientEnchant.cpp:
- (WebKit::TextCheckerClientEnchant::checkSpellingOfString): Avoided
- freeing the default PangoLanguage.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings): Initialized list of dictionaries.
-
-2011-02-17 Ryosuke Niwa <rniwa@webkit.org>
-
- Reviewed by Kent Tamura.
-
- Rename Position::node() to Position::deprecatedNode()
- https://bugs.webkit.org/show_bug.cgi?id=54622
-
- Done the rename. All calls to node() are replaced by calls to deprecatedNode().
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_popup_menu_handler):
-
-2011-02-19 Ryuan Choi <ryuan.choi@samsung.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Remove mandatory Enchant dependency
- https://bugs.webkit.org/show_bug.cgi?id=51587
-
- Extract TextCheckerClientEnchant From EditorClientGtk and remove
- enchant dependency from other files.
-
- * GNUmakefile.am:
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::EditorClient):
- * WebCoreSupport/EditorClientGtk.h:
- (WebKit::EditorClient::textChecker):
- * WebCoreSupport/TextCheckerClientEnchant.cpp: Added.
- (WebKit::TextCheckerClientEnchant::TextCheckerClientEnchant):
- (WebKit::TextCheckerClientEnchant::~TextCheckerClientEnchant):
- (WebKit::TextCheckerClientEnchant::ignoreWordInSpellDocument):
- (WebKit::TextCheckerClientEnchant::learnWord):
- (WebKit::TextCheckerClientEnchant::checkSpellingOfString):
- (WebKit::TextCheckerClientEnchant::getAutoCorrectSuggestionForMisspelledWord):
- (WebKit::TextCheckerClientEnchant::checkGrammarOfString):
- (WebKit::TextCheckerClientEnchant::getGuessesForWord):
- (WebKit::getAvailableDictionariesCallback):
- (WebKit::TextCheckerClientEnchant::updateSpellCheckingLanguage):
- (WebKit::TextCheckerClientEnchant::freeSpellCheckingLanguage):
- * WebCoreSupport/TextCheckerClientEnchant.h: Added.
- (WebKit::TextCheckerClientEnchant::requestCheckingOfString):
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_finalize):
- (webkit_web_settings_set_property):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_settings_notify):
-
-2011-02-19 Charlie Reis <creis@chromium.org>
-
- Reviewed by Mihai Parparita.
-
- Ensure loading has stopped in HistoryController::goToItem
- https://bugs.webkit.org/show_bug.cgi?id=54517
-
- Add a FrameLoaderClient callback for whether to stop loading before goToItem.
-
- Test: http/tests/navigation/forward-to-fragment-fires-onload.html
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClientGtk::shouldStopLoadingForHistoryItem): Added.
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-02-18 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] atk_text_get_selection/atk_text_set_selection fails for list items
- https://bugs.webkit.org/show_bug.cgi?id=53453
-
- Update unit test to check the fix for this bug.
-
- * tests/testatk.c:
- (testWebkitAtkTextSelections): Check that functions from AtkText
- interface to set and get text selections work with list items.
-
-2011-02-17 Robert Ancell <rober.ancell@gmail.com>
-
- Reviewed by Martin Robinson.
-
- [PATCH] GTK documentation fails to build due to changed paths
- https://bugs.webkit.org/show_bug.cgi?id=54600
-
- * docs/GNUmakefile.am: Update the paths that have now moved the Source
- directory.
-
-2011-02-16 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] Match more various WebKit API enum values with WebCore enum values
- https://bugs.webkit.org/show_bug.cgi?id=54352
-
- AssertMatchingEnums.cpp was added to assert that various WebKit API enum values
- continue matching WebCore defined enum values in the following changeset.
- http://trac.webkit.org/changeset/77868
- However, there are already enum values that have been asserted in other files,
- so these assert macros defined need to be moved to AssertMatchingEnum.cpp.
-
- * WebCoreSupport/AssertMatchingEnums.cpp: Add more enum values to be asserted.
- * webkit/webkitwebnavigationaction.cpp:
- (webkit_web_navigation_action_class_init): Move the assert macros of
- WEBKIT_WEB_NAVIGATION_REASON_* to AssertMatchingEnums.cpp.
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init): Move the assert macros of WEBKIT_EDITING_BEHAVIOR_*
- to AssertMatchingEnums.cpp.
-
-2011-02-16 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] events missing when a document is (re)loaded
- https://bugs.webkit.org/show_bug.cgi?id=25831
-
- Emit the right signals when reloading a document.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::notifyAccessibilityStatus): New function, to make sure
- the signals involved in reloading a document are properly emitted.
- (WebKit::notifyStatus): Also notify accessibility if enabled.
-
-2011-02-15 Kenneth Russell <kbr@google.com>
-
- Reviewed by Darin Fisher.
-
- Allow controlling minimum DOMTimer interval on a per-page basis
- https://bugs.webkit.org/show_bug.cgi?id=54312
-
- Added needed methods to implement LayoutTestController's new
- setMinimumTimerInterval method.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::defaultMinimumTimerInterval):
- (DumpRenderTreeSupportGtk::setMinimumTimerInterval):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-02-15 Christian Dywan <christian@lanedo.com>
-
- Rubber-stamped by Gustavo Noronha Silva.
-
- * webkit/webkitwebsettings.cpp: Correct a typo, it is
- acces*s*ibility with two s.
-
-2011-01-26 MORITA Hajime <morrita@google.com>
-
- Reviewed by Ryosuke Niwa.
-
- Refactoring: Extract TextCheckerClient from EditorClient
- https://bugs.webkit.org/show_bug.cgi?id=53213
-
- * WebCoreSupport/EditorClientGtk.h:
- (WebKit::EditorClient::textChecker):
-
-2011-02-07 Ryosuke Niwa <rniwa@webkit.org>
-
- Reviewed by Adam Barth.
-
- Add EditorClient callbacks to override isDOMPasteAllowed and javaScriptCanAccessClipboard
- https://bugs.webkit.org/show_bug.cgi?id=52417
-
- Added two callback functions, canCopyCut and canPaste to EditorClient. They are currently
- not implemented.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::canCopyCut): Added.
- (WebKit::EditorClient::canPaste): Added.
- * WebCoreSupport/EditorClientGtk.h:
-
-2011-02-14 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] testwebdatasource test fails in the bots
- https://bugs.webkit.org/show_bug.cgi?id=54414
-
- Changed the uri we check, added www to avoid the rewrite that we
- get when we as the uri to the request in case it finishes.
-
- * tests/testwebdatasource.c:
- (notify_load_status_cb):
-
-2011-02-11 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r78331.
- http://trac.webkit.org/changeset/78331
- https://bugs.webkit.org/show_bug.cgi?id=54295
-
- This patch broke 11 tests in GTK bots (Requested by svillar on
- #webkit).
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::notifyStatus):
-
-2011-02-10 Nate Chapin <japhet@chromium.org>
-
- Reviewed by Adam Barth.
-
- Update calls to DocumentWriter.
- https://bugs.webkit.org/show_bug.cgi?id=50489
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit::FrameLoaderClient::didRunInsecureContent):
- (WebKit::FrameLoaderClient::dispatchDidLoadMainResource):
- (WebKit::FrameLoaderClient::finishedLoading):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_encoding):
-
-2011-02-11 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] events missing when a document is (re)loaded
- https://bugs.webkit.org/show_bug.cgi?id=25831
-
- Emit the right signals when reloading a document.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::notifyAccessibilityStatus): New function, to make sure
- the signals involved in reloading a document are properly emitted.
- (WebKit::notifyStatus): Also notify accessibility if enabled.
-
-2011-02-08 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] DRT needs an implementation of LayoutTestController.setIconDatabaseEnabled
- https://bugs.webkit.org/show_bug.cgi?id=54033
-
- Add a DumpRenderTreeSupportGtk method for turning the icon database on and off.
- This is a likely candidate for a new API point.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setIconDatabaseEnabled): Added.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- * webkit/webkitglobals.cpp:
- (webkitInit): Call setIconDatabaseEnabled(true) on startup, instead
- of initializing the database manually.
- (WebKit::setIconDatabaseEnabled): Added.
- * webkit/webkitglobalsprivate.h: Added declarations.
-
-2011-02-08 Adam Barth <abarth@webkit.org>
-
- Reviewed by Eric Seidel.
-
- Remove orphan code from old parser
- https://bugs.webkit.org/show_bug.cgi?id=53984
-
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-02-02 Ilya Tikhonovsky <loislo@chromium.org>
-
- Reviewed by Yury Semikhatsky.
-
- Web Inspector: move InspectorController's methods from InspectorAgent to InspectorController.
-
- https://bugs.webkit.org/show_bug.cgi?id=53169
-
- Minor change enforced by major changes in WebCore/inspector/InspectorController.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_get_property):
-
-2011-02-08 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] DRT's TextInputController is unimplemented on GTK
- https://bugs.webkit.org/show_bug.cgi?id=52997
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::setComposition):
- (DumpRenderTreeSupportGtk::confirmComposition):
- (DumpRenderTreeSupportGtk::firstRectForCharacterRange):
- (DumpRenderTreeSupportGtk::selectedRange): New methods needed by
- TextInputController.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-02-07 Enrica Casucci <enrica@apple.com>
-
- Reviewed Adam Roben and Darin Adler.
-
- WebKit2: drag and drop support on Windows.
- https://bugs.webkit.org/show_bug.cgi?id=52775
-
- Removed createDragImageForLink from DragClient.
-
- * WebCoreSupport/DragClientGtk.cpp:
- * WebCoreSupport/DragClientGtk.h:
-
-2011-02-07 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [Gtk] Implement layoutTestController.findString
- https://bugs.webkit.org/show_bug.cgi?id=50237
-
- * GNUmakefile.am: Add AssertMatchingEnums.cpp.
- * WebCoreSupport/AssertMatchingEnums.cpp: Add this file to assert that various
- WebKit API enum values continue matching WebCore defined enum values.
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::findString):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-02-07 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Daniel Bates.
-
- [GTK] fast/history/history-subframe-with-name.html fails with GTK DRT
- https://bugs.webkit.org/show_bug.cgi?id=44784
-
- Call FrameLoader::loadURLIntoChildFrame on the parent frame's loader, not the child's.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame): Fix the call to FrameLoader::loadURLIntoChildFrame.
-
-2011-02-07 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] atk_text_get_caret_offset fails for list items
- https://bugs.webkit.org/show_bug.cgi?id=53436
-
- Update unit test to check the fix for this bug.
-
- * tests/testatk.c:
- (testWebkitAtkCaretOffsets): Check that the caret offset returned
- match the value previously set.
-
-2011-02-04 Joone Hur <joone.hur@collabora.co.uk>
-
- Unreviewed, Fix compilation warning.
-
- Constructor initialization list should follow the declaration order.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient): m_hasRepresentation is moved to
- the last position in the initialization list.
-
-2011-02-04 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] WebKitWebFrame can return a stale frame name when calling webkit_web_frame_get_name
- https://bugs.webkit.org/show_bug.cgi?id=53797
-
- When the frame name changes between different calls to webkit_web_frame_get_name
- on the same frame, return the new frame name instead of the one valid during the
- previous call.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_init): Initialize the frame name to 0.
- (webkit_web_frame_get_name): Check the current frame name first before
- returning the cached value.
-
-2011-02-04 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] fast/events/pagehide-timeout.html fails
- https://bugs.webkit.org/show_bug.cgi?id=53771
-
- Add the document browser cache model. This model is optimized for viewing
- a series of local files, while the document viewer is optimized for only
- viewing one local file. Improve the documentation on the mapping of these
- enum values to actual cache settings.
-
- * webkit/webkitglobals.cpp:
- (webkit_set_cache_model): Add support for the document browser cache model and
- improve comments in this section better explaining where the magic numbers come from.
- * webkit/webkitglobals.h: Added an enum value for the document browser cache model.
-
-2011-02-03 Yury Semikhatsky <yurys@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- Web Inspector: remove settings related methods from InspectorClient
- https://bugs.webkit.org/show_bug.cgi?id=53686
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorFrontendClient::InspectorFrontendClient):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2011-02-03 Adam Langley <agl@chromium.org>
-
- Reviewed by Adam Barth.
-
- Plumb mixed script URL to FrameLoaderClient
- https://bugs.webkit.org/show_bug.cgi?id=52384
-
- Regressions covered by http/tests/security/mixedContent/*
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didRunInsecureContent):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2011-02-03 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [Gtk] No need to set text encoding in the provisional phase
- https://bugs.webkit.org/show_bug.cgi?id=53487
-
- According to changeset 67253, setEncoding could be called multiple times from
- committedLoad, finishedLoading, dispatchDidFailLoading, and setMainDocumentError
- in FrameLoaderClient. To fix this, the relevant code was removed from
- FrameLoaderClient and moved to DocumentLoader::commitData. However, that
- code was not removed from FrameLoaderClient::finishedLoading in WebKitGtk+.
-
- Due to this reason, after loading a html document, other ports initialize the
- text encoding from FrameLoaderClient::finishedLoading, but WebKitGtk+ sets
- the same encoding again, even tries to set encoding in the provisional phase.
- This causes unnecessary encoding setting.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient): Set m_hasRepresentation to false.
- (WebKit::FrameLoaderClient::makeRepresentation): Set m_hasRepresentation to true.
- (WebKit::FrameLoaderClient::revertToProvisionalState): Set m_hasRepresentation to true.
- (WebKit::FrameLoaderClient::finishedLoading): Skip the encoding setting when
- m_hasRepresentation is false.
- * WebCoreSupport/FrameLoaderClientGtk.h: Added m_hasRepresentation.
-
-2011-02-02 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Update the NEWS file in preparation for the 1.3.11 release.
-
- * NEWS: Update the NEWS.
-
-2011-02-02 Dan Winship <danw@gnome.org>
-
- Reviewed by Martin Robinson.
-
- [GTK] drop soup cache stuff, which has been moved to libsoup
- https://bugs.webkit.org/show_bug.cgi?id=50747
-
- * GNUmakefile.am: Remove old cache files.
-
-2011-02-02 David Hyatt <hyatt@apple.com>
-
- Reviewed by Darin Adler.
-
- Removal of right()/bottom(), converting to maxX()/maxY().
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_popup_menu_handler):
-
-2011-02-01 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] atk_text_set_caret_offset fails for list items
- https://bugs.webkit.org/show_bug.cgi?id=53388
-
- Update unit test to check the fix for this bug.
-
- * tests/testatk.c:
- (testWebkitAtkCaretOffsets): Ensure setting the caret in a list
- item through the AtkText interface is possible.
-
-2011-02-01 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] character range extents is off when the end of a wrapped line is included
- https://bugs.webkit.org/show_bug.cgi?id=53323
-
- Update unit test to check the fix for this bug.
-
- * tests/testatk.c:
- (testWebkitAtkGetExtents): Check that the extent for a full line
- are the same height than for a partial section of the same line.
-
-2011-02-01 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Caret Offset is one off at the end of wrapped lines
- https://bugs.webkit.org/show_bug.cgi?id=53300
-
- Update unit test to check the fix for this bug.
-
- * tests/testatk.c:
- (testWebkitAtkCaretOffsetsAndExtranousWhiteSpaces): Set and get
- the caret offset at the edge of the line.
-
-2011-01-31 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] atk_text_set_caret_offset returns True even when it is unsuccessful
- https://bugs.webkit.org/show_bug.cgi?id=53389
-
- New unit test to check the fix for this bug.
-
- * tests/testatk.c:
- (testWebkitAtkCaretOffsets): New.
- (main): Add new test.
-
-2011-01-29 Dan Winship <danw@gnome.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] Remove HAVE_LIBSOUP_2_29_90 and HAVE_GSETTINGS conditionals;
- we depend on glib 2.27.4 and libsoup 2.33.1 now.
- https://bugs.webkit.org/show_bug.cgi?id=50675
-
- * GNUmakefile.am:
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::storeSetting):
- * webkit/webkitprivate.cpp:
- (inspectorGSettings):
- * webkit/webkitprivate.h:
-
-2011-01-28 Dan Bernstein <mitz@apple.com>
-
- Reviewed by Sam Weinig.
-
- <select> can't display right-to-left (rtl) languages
- https://bugs.webkit.org/show_bug.cgi?id=19785
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::selectItemAlignmentFollowsMenuWritingDirection): Added.
- * WebCoreSupport/ChromeClientGtk.h:
-
-2011-01-28 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Fix compilation warning
- https://bugs.webkit.org/show_bug.cgi?id=53292
-
- * webkit/webkitwebframe.cpp:
- (draw_page_callback): Cast the pageCount from size_t to int, it
- should be safe considering page_nr is the number of pages,
- 0-based.
-
-2011-01-27 Nate Chapin <japhet@chromium.org>
-
- Reviewed by Adam Barth.
-
- Use Document::url() instead of FrameLoader::url().
- https://bugs.webkit.org/show_bug.cgi?id=41165
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_icon_uri):
-
-2011-01-27 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Space characters in source document interfere with reported caret offset
- https://bugs.webkit.org/show_bug.cgi?id=53033
-
- New unit test to check the fix for this bug.
-
- * tests/testatk.c:
- (testWebkitAtkCaretOffsetsAndExtranousWhiteSpaces): New.
- (main): Add new unit test.
-
-2011-01-26 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Reliable crash with getTextAtOffset()
- https://bugs.webkit.org/show_bug.cgi?id=53131
-
- New unit test to check the fix for this bug.
-
- * tests/testatk.c:
- (testWebkitAtkGetTextAtOffsetWithSpecialCharacters): New.
- (main): Add new unit test.
-
-2011-01-21 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Show caps lock indicator in password fields
- https://bugs.webkit.org/show_bug.cgi?id=52878
-
- Test: manual-tests/password-caps-lock.html
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_key_release_event): Call
- capsLockStateMayHaveChanged() when caps lock key is pressed.
-
-2011-01-19 Joone Hur <joone.hur@collabora.co.uk>
-
- Reviewed by Andreas Kling.
-
- [GTK] No need to invalidate empty areas in ChromeClient::invalidateContentsAndWindow
- https://bugs.webkit.org/show_bug.cgi?id=52702
-
- Don't call gdk_window_invalidate_rect if an updated rectangle is empty.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::invalidateContentsAndWindow):
-
-2011-01-17 Philippe Normand <pnormand@igalia.com>
-
- Unreviewed, build fix for 2 GTK tests html file paths.
-
- * tests/testmimehandling.c:
- (main):
- * tests/testwebview.c:
-
-2011-01-16 Adam Barth <abarth@webkit.org>
-
- Rubber-stamped by Eric Seidel.
-
- Move WebKit into Source
- https://bugs.webkit.org/show_bug.cgi?id=52530
-
- * GNUmakefile.am:
-
-2011-01-14 Yuzo Fujishima <yuzo@google.com>
-
- Reviewed by Antti Koivisto.
-
- Rename cache() to memoryCache()
- https://bugs.webkit.org/show_bug.cgi?id=52433
-
- * webkit/webkitglobals.cpp:
- (webkit_set_cache_model):
-
-2011-01-14 Pavel Feldman <pfeldman@chromium.org>
-
- Not reviewed: gtk build fix (2).
-
- * webkit/webkitwebview.cpp:
-
-2011-01-14 Pavel Feldman <pfeldman@chromium.org>
-
- Not reviewed: gtk build fix.
-
- * webkit/webkitwebinspector.cpp:
-
-2011-01-13 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [gtk] Zero-sized font does not yet work
- https://bugs.webkit.org/show_bug.cgi?id=49793
-
- Allow 0 as a minimum-font-size value for the settings.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
-
-2011-01-12 Philippe Normand <pnormand@igalia.com>
-
- Unreviewed build fix for 32-bits Release. Include GRefPtrGtk.h so
- the GdkCursor templates are found and used at runtime.
-
- * WebCoreSupport/FullscreenVideoController.cpp:
-
-2011-01-11 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] GRefPtr should not be used with Gtk widgets
- https://bugs.webkit.org/show_bug.cgi?id=51241
-
- GRefPtr breaks the widget life-cycle, the main problem is
- that GRefPtr calls g_object_unref() when it's destroyed,
- which is undesirable for widgets. In gtk+ widgets are created with
- a floating reference and when added to a container, the container
- takes the ownership of the widget consuming the floating
- reference. So you don't usually need to call g_object_ref/unref on
- widgets (only for some operations like reparent a widget) and
- toplevel widgets are destroyed with gtk_widget_destroy().
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::DragClient):
- (WebKit::DragClient::~DragClient):
- (WebKit::DragClient::startDrag):
- * WebCoreSupport/DragClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::postCommitFrameViewSetup):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_dispose):
- * webkit/webkitwebviewprivate.h:
-
-2011-01-10 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Update the NEWS file in preparation for the 1.3.10 release.
-
- * NEWS: Update the NEWS.
-
-2011-01-10 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Remove use of deprecated GTK+ methods before the 1.3.10 release
- https://bugs.webkit.org/show_bug.cgi?id=52173
-
- * WebCoreSupport/FullscreenVideoController.cpp:
- (FullscreenVideoController::enterFullscreen): Use a GRefPtr here to avoid having to
- call either g_object_unref or gdk_cursor_unref.
- * webkit/webkitwebview.cpp: Guard use of deprecated methods.
- (webkit_web_view_realize): Ditto.
- (webkit_web_view_drag_end): Ditto.
-
-2011-01-10 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Fix gtk2 compilation for master
- https://bugs.webkit.org/show_bug.cgi?id=51885
-
- * webkit/webkitsoupauthdialog.c:
- (show_auth_dialog): Removed the call to
- gtk_dialog_set_has_separator API to remove a warning.
-
-2011-01-10 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Create intermediate libWebCore library
- https://bugs.webkit.org/show_bug.cgi?id=52116
-
- * GNUmakefile.am: add libWebCore.la to LIBADD and remove webcore
- sources from the libwebkit library SOURCES.
-
-2011-01-09 Xianzhu Wang <phnixwxz@gmail.com>
-
- Reviewed by Darin Fisher.
-
- https://bugs.webkit.org/show_bug.cgi?id=41441
- createWindow method should only do window-creating without URL navigation
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::createWindow):
-
-2011-01-08 Martin Robinson <mrobinson@igalia.com>
-
- GTK+ build fix. Adding missing headers to the source list, fixing make dist.
-
- * GNUmakefile.am: Fix make dist.
-
-2011-01-07 Adam Barth <abarth@webkit.org>
-
- Rubber-stamped by Eric Seidel.
-
- Move WebCore to Source
- https://bugs.webkit.org/show_bug.cgi?id=52050
-
- * GNUmakefile.am:
-
-2011-01-07 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Chris Fleizach.
-
- GTK: AX: atk tests need to be updated after recent changes
- https://bugs.webkit.org/show_bug.cgi?id=51932
-
- Fix gtk_widget_get_accessible() in WebKitWebView to keep returning
- the AtkObject of role ATK_ROLE_DOCUMENT_FRAME.
-
- With the change to support WK2 accessibility, the root object of
- the AX hierarchy is different from what GTK expects as the current
- hirarchy right now includes a new accessible object as the parent
- of the accessible web area (AXScrollView).
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_accessible): Return the first child of the
- wrapper associated to the root accessible object in the document,
- to keep everything in the GTK port working as it used to be.
-
- Re-enable skipped ATK unit tests now they are passing again.
-
- * tests/testatk.c:
- (main): Re-enable skipped tests.
- * tests/testatkroles.c:
- (main): Ditto.
-
-2011-01-06 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- GTK: AX: atk tests need to be updated after recent changes
- https://bugs.webkit.org/show_bug.cgi?id=51932
-
- Skip ATK unit tests until we can look into what is causing these failures.
-
- * tests/testatk.c:
- (main): Skip all tests.
- * tests/testatkroles.c:
- (main): Ditto.
-
-2011-01-06 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Include a new header in the static headers list. This is necessary
- so that "make install" installs the header.
-
- * GNUmakefile.am: Include webkitglobals.h in the header list.
-
-2011-01-05 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Build fix for GTK+ 3.x. Remove the call to gtk_range_set_update_policy.
- GTK+ 3.x has removed this method and the default in GTK+ 2.x is continuous,
- so this call is unnecessary.
-
- * WebCoreSupport/FullscreenVideoController.cpp:
- (FullscreenVideoController::createHud): Remove call to gtk_range_set_update_policy().
-
-2011-01-04 Chris Fleizach <cfleizach@apple.com>
-
- Reviewed by Martin Robinson.
-
- GTK: AX: DRT needs to use correct root object method.
- https://bugs.webkit.org/show_bug.cgi?id=51911
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::getRootAccessibleElement):
- (DumpRenderTreeSupportGtk::getFocusedAccessibleElement):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2011-01-04 Chris Fleizach <cfleizach@apple.com>
-
- Reviewed by Sam Weinig.
-
- WK2: Support Accessibility
- https://bugs.webkit.org/show_bug.cgi?id=51859
-
- Use rootObject() method to get top of ax tree.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::getFocusedAccessibleElement):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_accessible):
-
-2011-01-03 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Darin Adler.
-
- Remove the last non-GObject usage of PlatformRefPtr and move the code to GRefPtr
- https://bugs.webkit.org/show_bug.cgi?id=51846
-
- Changed all references to PlatformRefPtr in GTK+ code to GRefPtr.
-
-2011-01-03 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Split webkitprivate.{cpp,h} in more manageable chunks
- https://bugs.webkit.org/show_bug.cgi?id=50698
-
- Final patch, removing webkitprivate.{cpp,h}, and adding a
- webkitglobals module to hold non-object-specific functions and
- definitions that do not make sense on their own.
-
- * GNUmakefile.am:
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::createWindow):
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * WebCoreSupport/DocumentLoaderGtk.cpp:
- (WebKit::DocumentLoader::attachToFrame):
- * WebCoreSupport/DragClientGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::ignoreWordInSpellDocument):
- (WebKit::EditorClient::learnWord):
- (WebKit::EditorClient::checkSpellingOfString):
- (WebKit::EditorClient::getGuessesForWord):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createDocumentLoader):
- * WebCoreSupport/InspectorClientGtk.cpp:
- * webkit/webkit.h:
- * webkit/webkitapplicationcache.cpp:
- (webkit_application_cache_set_maximum_size):
- * webkit/webkitdownload.cpp:
- (webkit_download_class_init):
- * webkit/webkitgeolocationpolicydecision.cpp:
- * webkit/webkitglobals.cpp: Added.
- (webkit_get_default_session):
- (webkit_set_cache_model):
- (webkit_get_cache_model):
- (webkit_get_web_plugin_database):
- (currentToplevelCallback):
- (closeIconDatabaseOnExit):
- (webkitInit):
- (WebKit::pasteboardHelperInstance):
- * webkit/webkitglobals.h: Added.
- * webkit/webkitglobalsprivate.h: Copied from WebKit/gtk/webkit/webkitwebsettingsprivate.h.
- * webkit/webkithittestresult.cpp:
- (webkit_hit_test_result_class_init):
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_class_init):
- * webkit/webkitnetworkresponse.cpp:
- (webkit_network_response_class_init):
- * webkit/webkitprivate.cpp: Removed.
- * webkit/webkitprivate.h: Removed.
- * webkit/webkitsecurityorigin.cpp:
- * webkit/webkitviewportattributes.cpp:
- * webkit/webkitwebbackforwardlist.cpp:
- (webkit_web_back_forward_list_class_init):
- * webkit/webkitwebdatabase.cpp:
- * webkit/webkitwebdatasource.cpp:
- (webkit_web_data_source_class_init):
- (webkit_web_data_source_new_with_request):
- (WebKit::kitNew):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_class_init):
- * webkit/webkitwebframeprivate.h:
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_web_history_item_class_init):
- * webkit/webkitwebinspector.cpp:
- * webkit/webkitwebnavigationaction.cpp:
- * webkit/webkitwebplugin.cpp:
- (webkit_web_plugin_class_init):
- * webkit/webkitwebplugindatabase.cpp:
- (webkit_web_plugin_database_class_init):
- * webkit/webkitwebpluginprivate.h:
- * webkit/webkitwebpolicydecision.cpp:
- * webkit/webkitwebresource.cpp:
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkitWebViewGetEnchantDicts):
- (WebKit::core):
- * webkit/webkitwebsettingsprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
- * webkit/webkitwebview.h:
- * webkit/webkitwebwindowfeatures.cpp:
- (webkit_web_window_features_class_init):
- (WebKit::kitNew):
-
-2011-01-02 Xan Lopez <xlopez@igalia.com>
-
- Fix GTK+ build.
-
- * GNUmakefile.am: tests do actually include JSC.
-
-2011-01-02 Xan Lopez <xlopez@igalia.com>
-
- Fix GTK+ build.
-
- * GNUmakefile.am: remove individual -I$(srcdir)/Source when we'll
- already get them from javascriptcore_cppflags, and add it for the
- introspection build (which is not tested in the bots).
-
-2011-01-02 Adam Barth <abarth@webkit.org>
-
- Speculative build fix for GTK. Add Source to the include paths.
-
- * GNUmakefile.am:
-
-2011-01-01 Adam Barth <abarth@webkit.org>
-
- Reviewed by Eric Seidel.
-
- Move JavaScriptCore to Source
- https://bugs.webkit.org/show_bug.cgi?id=51604
-
- * GNUmakefile.am:
- * docs/GNUmakefile.am:
- - Point to JavaScriptCore in its new location.
-
-2010-12-29 Martin Robinson <mrobinson@igalia.com>
-
- Build fix for GTK+.
-
- * webkit/webkitwebinspector.cpp: Add missing DumpRenderTreeSupportGtk include.
-
-2010-12-29 Martin Robinson <mrobinson@igalia.com>
-
- [GTK] GSettings warning is concealing real warnings on the build bots
- https://bugs.webkit.org/show_bug.cgi?id=51691
-
- Reviewed by Xan Lopez.
-
- Do not print the GSettings warning message when running in DumpRenderTree.
-
- * webkit/webkitwebinspector.cpp:
- (inspectorGSettings): Do not print the GSettings warning if we are running
- in DumpRenderTree. This should clean up the test results page a great deal.
-
-2010-12-28 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Closing a window during an onload event can trigger serious GLib warnings
- https://bugs.webkit.org/show_bug.cgi?id=51686
-
- Don't emit the close-web-view signal immediately during execution of closeWindowSoon.
- The signal handler may choose to destroy the web view while handling that signal,
- which may remove the last reference to the web view. FrameLoaderClient depends on the
- view still existing though. Instead, let the caller finish executing and emit the signal
- after a 0 length timeout. This matches the behavior on the Windows and Mac ports.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient): Initialize the timer id.
- (WebKit::emitCloseWebViewSignalLater): Callback for the timer.
- (WebKit::ChromeClient::closeWindowSoon): Do the actual signal invocation after
- the caller finishes its tasks.
- * WebCoreSupport/ChromeClientGtk.h: Add a new member for the timer id. We
- can use this to prevent emitting the close-web-view signal twice.
-
-2010-12-28 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Eric Seidel.
-
- [GTK] Clean up usage of NULL in webkitwebframe.cpp
- https://bugs.webkit.org/show_bug.cgi?id=51685
-
- Replace occurrences of NULL with 0, in webkitwebframe.cpp. Not all
- uses of NULL have been changed, as certain GLib functions require
- an explicit NULL as a sentinel.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_data_source_from_core_loader):
- (webkit_web_frame_class_init):
- (webkit_web_frame_new):
- (webkit_web_frame_get_title):
- (webkit_web_frame_get_uri):
- (webkit_web_frame_get_web_view):
- (webkit_web_frame_get_name):
- (webkit_web_frame_get_parent):
- (webkit_web_frame_load_string):
- (webkit_web_frame_load_alternate_string):
- (webkit_web_frame_find_frame):
- (webkit_web_frame_get_global_context):
- (webkit_web_frame_get_data_source):
- (webkit_web_frame_get_provisional_data_source):
- (webkit_web_frame_print_full):
- (webkit_web_frame_get_security_origin):
- (webkit_web_frame_get_network_response):
-
-2010-12-27 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Ryosuke Niwa.
-
- [GTK] EditorClient::generateEditorCommands queues up "null string" commands
- https://bugs.webkit.org/show_bug.cgi?id=51569
-
- Prevent adding "null string" editor commands by first checking whether or not
- the command string is null in generateEditorCommands before appending it to the
- list of pending editor command strings.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::generateEditorCommands): Check for the null string (no
- command for this key combination) before appending a command string to the list of
- pending editor commands.
- (WebKit::EditorClient::executePendingEditorCommands): Add an ASSERT which detects
- null command strings.
-
-2010-12-27 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Remove unneeded includes from our headers.
-
- * WebCoreSupport/PasteboardHelperGtk.h: ditto.
- * webkit/webkitprivate.h: ditto.
- * webkit/webkitsoupauthdialog.h: ditto.
-
-2010-12-21 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Eric Seidel.
-
- [GTK] minimal build with --database fails
- https://bugs.webkit.org/show_bug.cgi?id=51394
-
- * webkit/webkitprivate.cpp:
- (webkit_init): Use cacheStorage() only if the
- OFFLINE_WEB_APPLICATIONS feature is enabled.
-
-2010-12-22 Sam Weinig <sam@webkit.org>
-
- Reviewed by Darin Adler.
-
- WebKit2 needs to mirror the frame tree in the UIProcess
- https://bugs.webkit.org/show_bug.cgi?id=51546
-
- - Add client functions to notify that a frame has been added or
- removed from the page cache.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didSaveToPageCache):
- (WebKit::FrameLoaderClient::didRestoreFromPageCache):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2010-12-22 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- * NEWS: update for 1.3.9 release.
-
-2010-12-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Add WebPlugin, WebPluginDatabase, and ViewportAttributes to the
- documentation control files, in preparation for 1.3.8. Also take
- the opportunity to add descriptions to WebPlugin and
- WebPluginDatabase.
-
- * docs/GNUmakefile.am:
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
- * webkit/webkitwebplugin.cpp:
- * webkit/webkitwebplugindatabase.cpp:
-
-2010-12-20 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- * GNUmakefile.am: add missing files.
- * NEWS: update for 1.3.8 release.
-
-2010-12-18 Antonio Gomes <agomes@rim.com>
-
- Reviewed by Xan Lopez.
-
- [GTK+] Simplify spatial navigation handling in EditorClientGtk.cpp
- https://bugs.webkit.org/show_bug.cgi?id=51302
-
- Patch changes:
- 1) The editor command for LEFT arrow key press without modifier
- from MoveBackward to MoveLeft;
- 2) And similarly changes the editor command for RIGHT arrow key
- press without modifier from MoveForward to MoveRight.
-
- It has no implications since SelectionController::modifyMovingRight()
- handles "MoveRight" equaly to how SelectionController::modifyMovingForward()
- handles "MoveForward" when granularity is 'CharacterGranularity'. The former
- falls back to the later in the case of other editor commands.
-
- Analogously, the same applies to how SelectionController::modifyMovingLeft() and
- SelectionController::modifyMovingForward() handle "MoveLeft" and "MoveBackward"
- editor commands, respectively.
-
- With this change we can remove the spatial navigation hack from moveCursorCallback(),
- in EditorClientGtk.cpp.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::moveCursorCallback):
-
-2010-12-16 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] scrolling artifacts
- https://bugs.webkit.org/show_bug.cgi?id=45029
-
- Call gdk_window_process_updates() right after moving the window
- when scrolling.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::scroll):
-
-2010-12-15 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r74117.
- http://trac.webkit.org/changeset/74117
- https://bugs.webkit.org/show_bug.cgi?id=51113
-
- This broke the GTK1 build. (Requested by mrobinson on
- #webkit).
-
- * GNUmakefile.am:
-
-2010-12-15 Amruth Raj <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla <ravi.kasibhatla@motorola.com>
-
- Reviewed by Martin Robinson.
-
- Changes to enable building WebKit2 for Gtk port.
- (https://bugs.webkit.org/show_bug.cgi?id=37369)
-
- * GNUmakefile.am: Added WebCore/bindings/gobject to webkitgtk_sources & webkitgtk_cppflags.
- They should get compiled only when WebKit/gtk/GNUmakefile.am is getting included but not
- with WebKit2/GNUmakefile.am inclusion.
-
-2010-12-14 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Simplify context-menu handling code
- https://bugs.webkit.org/show_bug.cgi?id=49658
-
- Use gtk_container_foreach() so that we only iterate the list of
- children once and we avoid creating/destroying the list. It also
- connects the activate signal for submenu items.
-
- * webkit/webkitwebview.cpp:
- (contextMenuConnectActivate):
- (webkit_web_view_forward_context_menu_event):
-
-2010-12-14 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Fix several issues in r73858
- https://bugs.webkit.org/show_bug.cgi?id=51032
-
- - It uses both glib private data and it allocates its own private
- structure.
- - It calls parent's dispose method from finalize.
- - webkit_web_plugin_get_mimetypes() uses a wrong annotation for the
- returned value, it should be transfer none rather than transfer
- container.
- - Since the mime type list is internal and we return the list and not a
- copy, it should never be freed by the caller, so
- webkit_web_plugin_mime_type_list_free() should be removed from the
- public API.
- - Mime types list is used uninitialized.
- - Mention in the docs that list returned by
- webkit_web_plugin_database_get_plugins() must be freed with
- webkit_web_plugin_database_plugins_list_free().
-
- * webkit/webkitwebplugin.cpp:
- (webkit_web_plugin_finalize):
- (webkit_web_plugin_class_init):
- (webkit_web_plugin_init):
- * webkit/webkitwebplugin.h:
- * webkit/webkitwebplugindatabase.cpp:
-
-2010-12-14 Diego Escalante Urrelo <descalante@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [gtk] misnamed gtk-doc strings for webkit_web_view_can_{c|c|p}_clipboard
- https://bugs.webkit.org/show_bug.cgi?id=50571
-
- * webkit/webkitwebview.cpp:
-
-2010-12-13 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Add API to enable/disable plugins at runtime
- https://bugs.webkit.org/show_bug.cgi?id=50891
-
- * tests/testwebplugindatabase.c:
- (test_webkit_web_plugin_database_get_plugins): test that disabling
- a plugin works.
- * webkit/webkitwebplugin.cpp:
- (webkit_web_plugin_get_property): hook 'enabled' property.
- (webkit_web_plugin_set_property): ditto.
- (webkit_web_plugin_class_init): define 'enabled' property.
- (webkit_web_plugin_set_enabled): setter for the property.
- (webkit_web_plugin_get_enabled): getter for the property.
- * webkit/webkitwebplugin.h: add the APIs to the header.
-
-2010-12-13 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Do not use GET_PRIVATE macros
- https://bugs.webkit.org/show_bug.cgi?id=50915
-
- GET_PRIVATE macros are slow and should only be used in the object
- init() method.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::inputMethodsMenuItem):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::postProgressFinishedNotification):
- (WebKit::FrameLoaderClient::setTitle):
- (WebKit::FrameLoaderClient::dispatchCreatePage):
- (WebKit::postCommitFrameViewSetup):
- * webkit/webkitdownload.cpp:
- (webkit_download_init):
- * webkit/webkitgeolocationpolicydecision.cpp:
- (webkit_geolocation_policy_decision_init):
- * webkit/webkithittestresult.cpp:
- (webkit_hit_test_result_init):
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_init):
- * webkit/webkitsecurityorigin.cpp:
- (webkit_security_origin_init):
- * webkit/webkitsecurityoriginprivate.h:
- * webkit/webkitviewportattributes.cpp:
- (webkit_viewport_attributes_init):
- * webkit/webkitwebbackforwardlist.cpp:
- (webkit_web_back_forward_list_init):
- * webkit/webkitwebdatabase.cpp:
- (webkit_web_database_init):
- * webkit/webkitwebdatasource.cpp:
- (webkit_web_data_source_init):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_init):
- (webkit_web_frame_new):
- * webkit/webkitwebframeprivate.h:
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_web_history_item_init):
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_init):
- * webkit/webkitwebnavigationaction.cpp:
- (webkit_web_navigation_action_init):
- * webkit/webkitwebplugin.cpp:
- (webkit_web_plugin_init):
- * webkit/webkitwebplugindatabase.cpp:
- (webkit_web_plugin_database_init):
- * webkit/webkitwebplugindatabaseprivate.h:
- * webkit/webkitwebpluginprivate.h:
- * webkit/webkitwebpolicydecision.cpp:
- (webkit_web_policy_decision_init):
- * webkit/webkitwebresource.cpp:
- (webkit_web_resource_init):
- * webkit/webkitwebresourceprivate.h:
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_init):
- * webkit/webkitwebview.cpp:
- (PopupMenuPositionFunc):
- (webkit_web_view_forward_context_menu_event):
- (webkit_web_view_drag_end):
- (webkit_web_view_drag_data_get):
- (webkit_web_view_query_tooltip):
- (webkit_web_view_init):
- * webkit/webkitwebwindowfeatures.cpp:
- (webkit_web_window_features_init):
-
-2010-10-28 MORITA Hajime <morrita@google.com>
-
- Reviewed by Ojan Vafai.
-
- spellcheck does not check pasted text
- https://bugs.webkit.org/show_bug.cgi?id=40092
-
- Added a stub implememntation.
-
- * WebCoreSupport/EditorClientGtk.h:
- (WebKit::EditorClient::requestCheckingOfString):
-
-2010-12-12 Xan Lopez <xlopez@igalia.com>
-
- Rubber-stamped by Martin Robinson.
-
- * webkit/webkitwebplugin.h: add a note about the extension list
- being a NULL-terminated array.
-
-2010-12-12 Xan Lopez <xlopez@igalia.com>
-
- Rubber-stamped by Gustavo Noronha.
-
- Stop checking for glib >= 2.16, we have dependend on a newer
- version for a long time now.
-
- * tests/testatk.c: Stop checking for glib >= 2.16.
- * tests/testatkroles.c: ditto.
- * tests/testdomdocument.c: ditto.
- * tests/testdomdomwindow.c: ditto.
- * tests/testdomnode.c: ditto.
- * tests/testglobals.c: ditto.
- * tests/testhttpbackend.c: ditto.
- * tests/testloading.c: ditto.
- * tests/testmimehandling.c: ditto.
- * tests/testnetworkrequest.c: ditto.
- * tests/testnetworkresponse.c: ditto.
- * tests/testwebbackforwardlist.c: ditto.
- * tests/testwebdatasource.c: ditto.
- * tests/testwebframe.c: ditto.
- * tests/testwebhistoryitem.c: ditto.
- * tests/testwebresource.c: ditto.
- * tests/testwebsettings.c: ditto.
- * tests/testwebview.c: ditto.
- * tests/testwindow.c: ditto.
-
-2010-12-11 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Add APIs for plugin management
- https://bugs.webkit.org/show_bug.cgi?id=50827
-
- Add WebKitWebPluginDatabase and WebKitWebPlugin classes for basic
- plugin management at the client level. For now they provide
- "read-only" access to the plugin list.
-
- * GNUmakefile.am: add new files to the build.
- * tests/testwebplugindatabase.c: Test that the database contains
- the test plugin, which should always be loaded.
- * webkit/webkit.h: add new headers.
- * webkit/webkitdefines.h: add new defines.
- * webkit/webkitwebplugin.cpp: An new class representing a plugin object.
- * webkit/webkitwebplugin.h: ditto.
- * webkit/webkitwebplugindatabase.cpp: A new class that contains the list of active plugins.
- * webkit/webkitwebplugindatabase.h: ditto.
- * webkit/webkitwebplugindatabaseprivate.h: Private header.
- * webkit/webkitwebpluginprivate.h: Private header.
- * webkit/webkitwebview.cpp:
- (webkit_get_web_plugin_database): returns the WebKitWebPluginDatabase for this session.
- * webkit/webkitwebview.h: add method to header.
-
-2010-12-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Split webkitprivate.{cpp,h} in more manageable chunks
- https://bugs.webkit.org/show_bug.cgi?id=50698
-
- Split private bits of several objects to their own private
- headers, and to their implementation files.
-
- * GNUmakefile.am:
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/EditorClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchWillSendRequest):
- * webkit/webkitdownload.cpp:
- (webkit_download_set_response):
- * webkit/webkitdownloadprivate.h: Added.
- * webkit/webkithittestresult.cpp:
- (WebKit::kit):
- * webkit/webkithittestresultprivate.h: Added.
- * webkit/webkitnetworkresponse.cpp:
- (WebKit::core):
- (WebKit::kitNew):
- * webkit/webkitnetworkresponseprivate.h: Added.
- * webkit/webkitprivate.cpp:
- * webkit/webkitprivate.h:
- * webkit/webkitsecurityorigin.cpp:
- (webkit_security_origin_get_web_database):
- (WebKit::core):
- (WebKit::kit):
- * webkit/webkitsecurityoriginprivate.h: Added.
- * webkit/webkitviewportattributes.cpp:
- * webkit/webkitviewportattributesprivate.h: Added.
- * webkit/webkitwebbackforwardlist.cpp:
- * webkit/webkitwebbackforwardlistprivate.h: Added.
- * webkit/webkitwebdatabase.cpp:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_network_response):
- * webkit/webkitwebhistoryitem.cpp:
- * webkit/webkitwebhistoryitemprivate.h: Added.
- * webkit/webkitwebnavigationaction.cpp:
- (WebKit::kit):
- (WebKit::core):
- * webkit/webkitwebnavigationactionprivate.h: Added.
- * webkit/webkitwebpolicydecision.cpp:
- * webkit/webkitwebpolicydecisionprivate.h: Added.
- * webkit/webkitwebresource.cpp:
- * webkit/webkitwebresourceprivate.h: Added.
- * webkit/webkitwebsettings.cpp:
- * webkit/webkitwebsettingsprivate.h: Added.
- * webkit/webkitwebview.cpp:
-
-2010-12-10 Alejandro G. Castro <alex@igalia.com>
-
- Unreviewed, fixed small typo in the name of a function.
-
- * webkit/webkitwebsettings.cpp:
- (getAvailableDictionariesCallback):
- (webkit_web_settings_set_property):
-
-2010-12-09 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Add hasSpellingMarker support to the DRT
- https://bugs.webkit.org/show_bug.cgi?id=50739
-
- Added a new private API function to support the spelling marker
- tests in the DRT.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::webkitWebFrameSelectionHasSpellingMarker):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2010-12-10 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Choose a dictionary in case there is no one defined or the
- env LANG does not propose one
- https://bugs.webkit.org/show_bug.cgi?id=50738
-
- In case no dict is set and we can not find one using the
- environment just get the first dictionary installed in the list.
-
- * webkit/webkitwebsettings.cpp:
- (getAvilableDictionariesCallback):
- (webkit_web_settings_set_property):
-
-2010-12-10 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- Remove unnecessary variable names from DumpRenderTreeSupportGtk
- https://bugs.webkit.org/show_bug.cgi?id=50815
-
- There were some unnecessary variable names in DumpRenderTreeSupportGtk,
- so remove them.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.h: Do it.
-
-2010-12-10 Joone Hur <joone@kldp.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] Unskipping some test cases in /userscripts dependent on addUserStyleSheet
- https://bugs.webkit.org/show_bug.cgi?id=50808
-
- Unskipping the following test cases:
- userscripts/mixed-case-stylesheet.html
- userscripts/simple-stylesheet.html
- userscripts/user-style-all-frames.html
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::addUserStyleSheet): Added "bool allFrames" parameter.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2010-12-10 Joone Hur <joone@kldp.org>
-
- Reviewed by Eric Seidel.
-
- [GTK] Add DRT support for pageProperty, isPageBoxVisible, pageSizeAndMarginsInPixels, and addUserStyleSheet
- https://bugs.webkit.org/show_bug.cgi?id=50783
-
- This patch allows to unskip the following test cases:
- printing/page-rule-selection.html
- printing/page-format-data.html
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::pageProperty): Added.
- (DumpRenderTreeSupportGtk::isPageBoxVisible): Ditto.
- (DumpRenderTreeSupportGtk::pageSizeAndMarginsInPixels): Ditto.
- (DumpRenderTreeSupportGtk::addUserStyleSheet): Ditto.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2010-12-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Split webkitprivate.{cpp,h} in more manageable chunks
- https://bugs.webkit.org/show_bug.cgi?id=50698
-
- Split private bits of WebKitWebInspector to its own private
- header, and to its implementation file.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- * webkit/webkitprivate.cpp:
- * webkit/webkitprivate.h:
- * webkit/webkitwebinspector.cpp:
- (isSchemaAvailable):
- (inspectorGSettings):
- * webkit/webkitwebinspectorprivate.h: Added.
- * webkit/webkitwebview.cpp:
-
-2010-12-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Split webkitprivate.{cpp,h} in more manageable chunks
- https://bugs.webkit.org/show_bug.cgi?id=50698
-
- Split private bits of WebKitNetworkRequest to its own private
- header, and to its implementation file. Also take the opportunity
- to use PlatformRefPtr for NetworkRequest where it makes sense, and
- make the creation less verbose by adding kitNew.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchWillSendRequest):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- (WebKit::FrameLoaderClient::download):
- (WebKit::FrameLoaderClient::startDownload):
- * webkit/webkitdownload.cpp:
- * webkit/webkitnetworkrequest.cpp:
- (WebKit::kitNew):
- (WebKit::core):
- * webkit/webkitnetworkrequestprivate.h: Added.
- * webkit/webkitprivate.cpp:
- * webkit/webkitprivate.h:
- * webkit/webkitwebdatasource.cpp:
- (webkit_web_data_source_get_initial_request):
- (webkit_web_data_source_get_request):
- * webkit/webkitwebframe.cpp:
-
-2010-12-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Split webkitprivate.{cpp,h} in more manageable chunks
- https://bugs.webkit.org/show_bug.cgi?id=50698
-
- Split private bits of WebKitWebFrame to its own private header, and
- to its implementation file.
-
- * GNUmakefile.am:
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/DragClientGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * webkit/webkitprivate.cpp:
- * webkit/webkitprivate.h:
- * webkit/webkitwebdatasource.cpp:
- * webkit/webkitwebframe.cpp:
- (WebKit::getViewFromFrame):
- (WebKit::core):
- (WebKit::kit):
- * webkit/webkitwebframeprivate.h: Added.
- * webkit/webkitwebpolicydecision.cpp:
- * webkit/webkitwebview.cpp:
-
-2010-12-09 Antonio Gomes <agomes@rim.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] Populate DumpRenderTreeSupportGtk (part IV)
- https://bugs.webkit.org/show_bug.cgi?id=48429
-
- Moved also webkit_worker_thread_count() to DumpRenderTreeSupportGtk,
- since it was only used by DRT for now.
-
- Since this method was the only one in webkitworker.cpp, the file was
- also removed.
-
- * GNUmakefile.am:
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::workerThreadCount):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- * webkit/webkitprivate.h:
- * webkit/webkitworkers.cpp: Removed.
-
-2010-12-06 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Support the Mozilla-style Fullscreen Javascript API
- https://bugs.webkit.org/show_bug.cgi?id=50572
-
- Fullscreen API support. It is controlled at runtime using a new
- setting called enable-fullscreen, set to FALSE by default.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::supportsFullScreenForElement):
- (WebKit::ChromeClient::enterFullScreenForElement):
- (WebKit::ChromeClient::exitFullScreenForElement):
- * WebCoreSupport/ChromeClientGtk.h:
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
-
-2010-12-09 Joone Hur <joone@kldp.org>
-
- Reviewed by Martin Robinson.
-
- [GTK] Support for viewport meta tag
- https://bugs.webkit.org/show_bug.cgi?id=45443
-
- This patch adds a new gobject to offer the viewport properties to user agents.
- It is WebKitViewportAttributes that contains the viewport size, initial scale with limits,
- and information about whether a user is able to scale the contents in the viewport.
-
- This feature was introduced by Safari on the iPhone. For more information on
- the viewport properties, refer to the Safari reference library at
- http://developer.apple.com/safari/library/documentation/appleapplications/reference/safarihtmlref/articles/metatags.html
-
- * GNUmakefile.am: Added webkitviewportattributes.h webkitviewportattributes.cpp.
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::dispatchViewportDataDidChange): Added this callback to know whether the viewport arguments is available.
- * WebCoreSupport/ChromeClientGtk.h:
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::dumpConfigurationForViewport): Added this function to compute the viewport attributes with the given availableWidth and availableHeight.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::postCommitFrameViewSetup): Invalidate the viewport attributes.
- * webkit/webkit.h:
- * webkit/webkitdefines.h:
- * webkit/webkitprivate.h: Added webkitViewportAttributesRecompute as a private function.
- * webkit/webkitviewportattributes.cpp: Added.
- (webkit_viewport_attributes_class_init):
- (webkit_viewport_attributes_init):
- (webkit_viewport_attributes_get_property):
- (webkit_viewport_attributes_set_property):
- (webkitViewportAttributesRecompute): Recompute the optimal viewport attributes and emit the viewport-attributes-changed signal.
- (webkit_viewport_attributes_recompute): a public API for calling webkitViewportAttributesRecompute.
- * webkit/webkitviewportattributes.h: Added.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_property): Added PROP_VIEWPORT_ATTRIBUTES.
- (webkit_web_view_dispose): Deallocate the WebKitViewportAttributes instance.
- (webkit_web_view_class_init): Added the viewport-attributes-recompute-requested and viewport-attributes-changed signals.
- (webkit_web_view_init): Set the WebKitViewportAttributes instance.
- (webkit_web_view_get_viewport_attributes): Added a getter to obtain the WebKitViewportAttributes instance held by the given WebKitWebView.
- * webkit/webkitwebview.h:
- * webkit/webkitwebviewprivate.h: Added WebKitViewportAttributes as a private variable.
-
-2010-12-09 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Fix 'make install' woes with some versions of automake.
-
- * GNUmakefile.am: use $(top_builddir) instead of $(builddir),
- since we actually want a valid path for the file regardless of the
- place from where the script is called.
-
-2010-12-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Build fix. Take webView{Enter,Exit}Fullscreen back out of the
- WebKit namespace, and remove a function signature that got in by
- mistake because of a bad merge.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (WebKit::core):
- (WebKit::kit):
-
-2010-12-08 Brian Weinstein <bweinstein@apple.com>
-
- Reviewed by John Sullivan.
-
- Layering Violation in ContextMenu - member variable of type HitTestResult
- https://bugs.webkit.org/show_bug.cgi?id=50586
-
- Update users of ContextMenu and ContextMenuController to match where the new functions
- are located.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::ContextMenuClient::getCustomMenuFromDefaultItems):
-
-2010-12-08 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by John Sullivan.
-
- [GTK] Layering violation in ContextMenuGtk.cpp
- https://bugs.webkit.org/show_bug.cgi?id=50676
-
- ContextMenuGtk accesses the page's ContextMenuController, which is a layering
- violation. This was fixed for Mac with change r73469. We make a similar fix here
- by moving the "activated" signal connection to the WebKit layer.
-
- * webkit/webkitwebview.cpp:
- (popupMenuItemActivated): Have ContextMenuController handle this signal.
- (webkit_web_view_forward_context_menu_event): For all items in the untouched
- context menu, connect their "activated" signal to the new popupMenuItemActivated
- handler.
-
-2010-12-08 Antonio Gomes <agomes@rim.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] Populate DumpRenderTreeSupportGtk (part III)
- https://bugs.webkit.org/show_bug.cgi?id=48429
-
- Adjusted some call sites of previously internal API declared
- webkitprivate.h that have moved to DumpRenderTreeSupportGtk.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::gcCollectJavascriptObjects):
- (DumpRenderTreeSupportGtk::gcCollectJavascriptObjectsOnAlternateThread):
- (DumpRenderTreeSupportGtk::gcCountJavascriptObjects):
- (DumpRenderTreeSupportGtk::layoutFrame):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
-
-2010-12-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Split webkitprivate.{cpp,h} in more manageable chunks
- https://bugs.webkit.org/show_bug.cgi?id=50698
-
- Split private bits of WebKitWebView to its own private header, and
- to its implementation file. Take the opportunity to fix includes
- sorting to comply with the style guide.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::enterFullscreenForNode):
- (WebKit::ChromeClient::exitFullscreenForNode):
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * WebCoreSupport/DragClientGtk.cpp:
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- * WebCoreSupport/EditorClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * WebCoreSupport/InspectorClientGtk.cpp:
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- * webkit/webkitprivate.cpp:
- (webkit_init):
- * webkit/webkitprivate.h:
- * webkit/webkitwebbackforwardlist.cpp:
- * webkit/webkitwebdatasource.cpp:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebview.cpp:
- (WebKit::core):
- (WebKit::kit):
- (WebKit::webViewEnterFullscreen):
- (WebKit::webViewExitFullscreen):
- * webkit/webkitwebviewprivate.h: Added.
-
-2010-12-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- The storage for the subresources is a GHashTable which does not
- guarantee order, so we need to make our checking more resilient.
-
- * tests/testwebresource.c:
- (test_web_resource_sub_resource_loading):
-
-2010-12-08 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- Fix assertion in the API test, we are requesting the favicon and
- the subresource so we have to make sure we are assigning just the
- first subresource.
-
- * tests/testwebresource.c:
- (resource_request_starting_sub_cb):
-
-2010-12-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] clears the subresources prematurely
- https://bugs.webkit.org/show_bug.cgi?id=50634
-
- Make adding the main resource explicit, and only clear
- subresources when the new load is committed, avoid clearing them
- prematurely.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::assignIdentifierToInitialRequest):
- (WebKit::FrameLoaderClient::provisionalLoadStarted):
- (WebKit::FrameLoaderClient::prepareForDataSourceReplacement):
- (WebKit::postCommitFrameViewSetup):
- * tests/testwebdatasource.c:
- (notify_load_status_lifetime_cb):
- (test_webkit_web_data_source_lifetime):
- (main):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_add_main_resource):
- (webkit_web_view_add_resource):
- (webkit_web_view_clear_resources):
-
-2010-12-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] testwebdatasource - unreachable test is broken
- https://bugs.webkit.org/show_bug.cgi?id=50629
-
- Fix, and disable testwebdatasource's unreachable test (it is not
- passing now that it actually tests what it should). This also
- fixes the wait timer to actually work as expected.
-
- * tests/testwebdatasource.c:
- (notify_load_status_unreachable_cb):
- (notify_load_status_cb):
- (test_webkit_web_data_source):
-
-2010-12-07 Martin Robinson <mrobinson@igalia.com>
-
- Unreviewed, rolling out r73392.
- http://trac.webkit.org/changeset/73392
- https://bugs.webkit.org/show_bug.cgi?id=50489
-
- This commit caused crashes on the GTK+ bots
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::finishedLoading):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_encoding):
-
-2010-12-06 Nate Chapin <japhet@chromium.org>
-
- Reviewed by Adam Barth.
-
- Update calls to DocumentWriter.
- https://bugs.webkit.org/show_bug.cgi?id=50489
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::finishedLoading):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_encoding):
-
-2010-12-06 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Build is broken after r73353
- https://bugs.webkit.org/show_bug.cgi?id=50568
-
- Fix the gtk-doc build by making all members of the cache model
- enum public. gtk-doc does not support making only some enum
- members private. We should also expose it so that users querying
- the cache model do not get mysterious, undocumented results.
-
- * webkit/webkitwebview.h: Fix gtk-doc for the cache model enum.
-
-2010-12-06 Derek Weitzel <djw8605@gmail.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] API Documentation referencing depreciated GTK_WIDGET_TOPLEVEL
- https://bugs.webkit.org/show_bug.cgi?id=50512
-
- Fixed reference to depreciated GTK_WIDGET_TOPLEVEL.
-
- * webkit/webkitwebview.cpp:
-
-2010-12-06 Joone Hur <joone@kldp.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] The webkit cache model needs to be set when WebFrameLoaderClient::didPerformFirstNavigation() is called
- https://bugs.webkit.org/show_bug.cgi?id=50430
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didPerformFirstNavigation): Set the webview cache model.
- * webkit/webkitprivate.cpp:
- (webkit_init): Removed the code of setting the webview cache model.
-
-2010-12-04 Antonio Gomes <agomes@rim.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] Populate DumpRenderTreeSupportGtk (Part II)
- https://bugs.webkit.org/show_bug.cgi?id=48429
-
- Moved more private method declared with WEBKIT_API to
- DumpRenderTreeSupportGtk, since they were only being used by DRT.
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::executeCoreCommandByName):
- (DumpRenderTreeSupportGtk::isCommandEnabled):
- (DumpRenderTreeSupportGtk::whiteListAccessFromOrigin):
- (DumpRenderTreeSupportGtk::resetOriginAccessWhiteLists):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- * webkit/webkitprivate.cpp:
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
-
-2010-11-08 Antonio Gomes <agomes@rim.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] Populate DumpRenderTreeSupportGtk
- https://bugs.webkit.org/show_bug.cgi?id=48429
-
- Moved most of the webkit_web_frame* methods defined as private APIs in webkitprivate.h
- to DumpRenderTreeSupportGtk, as static class methods. These methods had
- not gone throught the formal API review process and were only being used by DRT for now.
-
- The essence of each original method name were kept. For example
- webkit_web_frame_get_children(...) was renamed to DumpRenderTreeSupportGtk::getFrameChildren(...),
- and so on.
-
- Also some of the method bodies were changed to return non-glib types (gchar* -> CString).
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::getFrameChildren):
- (DumpRenderTreeSupportGtk::getInnerText):
- (DumpRenderTreeSupportGtk::dumpRenderTree):
- (DumpRenderTreeSupportGtk::counterValueForElementById):
- (DumpRenderTreeSupportGtk::pageNumberForElementById):
- (DumpRenderTreeSupportGtk::numberOfPagesForFrame):
- (DumpRenderTreeSupportGtk::getPendingUnloadEventCount):
- (DumpRenderTreeSupportGtk::pauseAnimation):
- (DumpRenderTreeSupportGtk::pauseTransition):
- (DumpRenderTreeSupportGtk::pauseSvgAnimation):
- (DumpRenderTreeSupportGtk::markerTextForListItem):
- (DumpRenderTreeSupportGtk::numberOfActiveAnimations):
- (DumpRenderTreeSupportGtk::suspendAnimations):
- (DumpRenderTreeSupportGtk::resumeAnimations):
- (DumpRenderTreeSupportGtk::clearMainFrameName):
- (DumpRenderTreeSupportGtk::getFocusedAccessibleElement):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
-
-2010-12-02 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] DumpRenderTree has two copies of JavaScriptCore
- https://bugs.webkit.org/show_bug.cgi?id=49877
-
- Keep WebKit/WebCore symbols hidden.
-
- * GNUmakefile.am: Move the symbol visibility rules here, because
- now JSC symbols are visible, but WebCore/WebKit symbols are hidden.
-
-2010-12-02 Daniel Bates <dbates@rim.com>
-
- Ignore WebKit/gtk/docs/GNUmakefile.in and WebKit/gtk/po/*.pot so that
- these files do not appear in an svn stat. This change makes SVN
- consistent with the current Git ignore behavior for these files.
-
- * docs: Added property svn:ignore.
- * po: Added property svn:ignore.
-
-2010-12-01 Jia Pu <jpu@apple.com>
-
- Reviewed by Darin Adler.
-
- Support multiple correction candidates panel for misspelled word on Mac OS X.
- https://bugs.webkit.org/show_bug.cgi?id=50137
- <rdar://problem/8568059>
-
- Adopted new function signature defined in base class.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::getGuessesForWord):
- * WebCoreSupport/EditorClientGtk.h:
-
-2010-11-30 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Fix wrong type in assert return value
- https://bugs.webkit.org/show_bug.cgi?id=50208
-
- Use appropriate return type in different g_return_val_if_fail(). This
- removes some compiler warning.
-
- * webkit/webkitwebdatasource.cpp:
- (webkit_web_data_source_is_loading):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_page_number_for_element_by_id):
- (webkit_web_frame_number_of_pages):
-
-2010-11-30 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Chris Fleizach.
-
- [GTK] Implement ROLE_COMBO_BOX
- https://bugs.webkit.org/show_bug.cgi?id=25678
-
- New test to check the implementation of the combo boxes.
-
- * tests/testatk.c:
- (testWebkitAtkComboBox): New test, checking that the roles and the
- implemented interfaces for a combo box and its descendants work.
- (main): Added the new unit test.
-
-2010-11-30 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Test fast/events/mouseover-mouseout2.html crashes
- https://bugs.webkit.org/show_bug.cgi?id=50214
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_query_tooltip):
-
-2010-11-30 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r72764.
- http://trac.webkit.org/changeset/72764
- https://bugs.webkit.org/show_bug.cgi?id=50215
-
- This change is causing assertion failures on the debug bots.
- (Requested by mrobinson on #webkit).
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::notifyStatus):
- * tests/testatk.c:
- (main):
-
-2010-11-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- * NEWS: update for 1.3.7 release.
-
-2010-11-29 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Tooltips should be fully keyboard accessible
- https://bugs.webkit.org/show_bug.cgi?id=25525
-
- Position the tooltip under the current focused element when the
- tooltip has been triggered using the keyboard.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_query_tooltip):
- (webkit_web_view_show_help):
- (webkit_web_view_class_init):
-
-2010-11-29 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Tooltips not shown when scrolling
- https://bugs.webkit.org/show_bug.cgi?id=50143
-
- Convert tooltip area to window coordinates so that tooltips are
- shown even after scrolling.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
-
-2010-11-26 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Inspector: add a way to inspect a WebKitDOMNode
- https://bugs.webkit.org/show_bug.cgi?id=49903
-
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_inspect_node):
- * webkit/webkitwebinspector.h:
-
-2010-11-26 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] events missing when a document is (re)loaded
- https://bugs.webkit.org/show_bug.cgi?id=25831
-
- Emit the right signals when reloading a document.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::notifyAccessibilityStatus): New function, to make sure
- the signals involved in reloading a document are properly emitted.
- (WebKit::notifyStatus): Also notify accessibility if enabled.
-
- New unit test to check the signals are being actually emitted.
-
- * tests/testatk.c:
- (stateChangedCb): Callback for 'state-change' signal emitted by
- the accessible object associated to the webView.
- (documentReloadCb): Callback for 'reload' signal.
- (documentLoadCompleteCb): Callback for 'load-complete' signal.
- (webviewLoadStatusChangedCb): Callback for 'notify::load-status'
- signal, emitted by the WebKitWebView object (not the AtkObject).
- (testWebkitAtkDocumentReloadEvents): New unit test.
- (main): Added the new unit test.
-
-2010-11-24 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Make kit() methods return the proper type instead of gpointer
- https://bugs.webkit.org/show_bug.cgi?id=50034
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::shouldDeleteRange): get rid of unneeded cast.
- (WebKit::EditorClient::shouldShowDeleteInterface): ditto.
- (WebKit::EditorClient::shouldBeginEditing): ditto.
- (WebKit::EditorClient::shouldEndEditing): ditto.
- (WebKit::EditorClient::shouldInsertText): ditto.
- (WebKit::EditorClient::shouldChangeSelectedRange): ditto.
- (WebKit::EditorClient::shouldApplyStyle): ditto.
- (WebKit::EditorClient::shouldInsertNode): ditto.
- * webkit/webkitprivate.cpp:
- (WebKit::kit): ditto.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_dom_document): ditto.
-
-2010-11-24 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Fix crashes in GTK+ bots. Use kit() instead of wrapFoo, otherwise
- the DOM objects won't be in the cache and we'll ASSERT when
- unreffing them.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::shouldDeleteRange): use kit to get the
- GObject wrapper for the DOM object.
- (WebKit::EditorClient::shouldShowDeleteInterface): ditto.
- (WebKit::EditorClient::shouldBeginEditing): ditto.
- (WebKit::EditorClient::shouldEndEditing): ditto.
- (WebKit::EditorClient::shouldInsertText): ditto.
- (WebKit::EditorClient::shouldChangeSelectedRange): ditto.
- (WebKit::EditorClient::shouldApplyStyle): ditto.
- (WebKit::EditorClient::shouldInsertNode): ditto.
-
-2010-11-24 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] The WebKitWebView should expose a set of signals encapsulating the behavior of the EditorClient
- https://bugs.webkit.org/show_bug.cgi?id=49143
-
- Add signals that encapsulate the functionality of the Mac EditingDelegate. These signals
- are private for now, but DRT consumes them to produce proper output for editing tests.
- After some time, these may be part of the public API.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::shouldDeleteRange): Fire the appropriate editing signal.
- (WebKit::EditorClient::shouldShowDeleteInterface): Ditto.
- (WebKit::EditorClient::shouldBeginEditing): Ditto.
- (WebKit::EditorClient::shouldEndEditing): Ditto.
- (WebKit::kit): Added helper function.
- (WebKit::EditorClient::shouldInsertText): Fire the appropriate editing signal.
- (WebKit::EditorClient::shouldChangeSelectedRange): Ditto.
- (WebKit::EditorClient::shouldApplyStyle): Ditto.
- (WebKit::EditorClient::didBeginEditing): Ditto.
- (WebKit::EditorClient::respondToChangedContents): Ditto.
- (WebKit::EditorClient::respondToChangedSelection): Ditto.
- (WebKit::EditorClient::didEndEditing): Ditto.
- (WebKit::EditorClient::shouldInsertNode): Ditto.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_real_should_allow_editing_action): Added this default signal
- callback which explicitly allows cancellable editing actions.
- (webkit_web_view_class_init): Add new editing signal declarations to the view.
- * webkit/webkitwebview.h:
- * webkitmarshal.list: Added some new marshaling definitions.
-
-2010-11-24 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r72499.
- http://trac.webkit.org/changeset/72499
- https://bugs.webkit.org/show_bug.cgi?id=50022
-
- This change is causing crashes on the bots. (Requested by
- mrobinson on #webkit).
-
- * tests/testatk.c:
- (main):
-
-2010-11-23 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Fix IFrame DOM bindings API
- https://bugs.webkit.org/show_bug.cgi?id=49980
-
- * tests/testdomdocument.c:
- (test_dom_document_garbage_collection): change to use the fixed
- IFrame APIs.
-
-2010-11-23 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- focus issue with links that have tooltips
- https://bugs.webkit.org/show_bug.cgi?id=49498
-
- Set the area of the widget where the tooltip should be shown when
- a new tooltip is set. Since the widget is the same (the view), if
- the tooltip area is not set and a new tooltip is triggered while
- the previous one is still visible, the text of the tooltip is
- updated but its position doesn't change.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_query_tooltip):
-
-2010-11-21 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Chris Fleizach.
-
- [GTK] Implement ROLE_COMBO_BOX
- https://bugs.webkit.org/show_bug.cgi?id=25678
-
- New test to check the implementation of the combo boxes.
-
- * tests/testatk.c:
- (testWebkitAtkComboBox): New test, checking that the roles and the
- implemented interfaces for a combo box and its descendants work.
- (main): Added the new unit test.
-
-2010-11-20 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Remove leftover code in unit test.
-
- * GNUmakefile.am: remove unneeded utils file in dependency list.
- * tests/testdomdocument.c:
- (main): do not change to the directory of a non existing resource
- list.
-
-2010-11-20 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Memory managament for DOM GObject wrappers
- https://bugs.webkit.org/show_bug.cgi?id=40302
-
- Initial attempt to have a kind of poor man's garbage collection
- for GObject DOM objects. We tie the object's lifecycle to their
- parent Frame and/or its document; that is, all objects will be
- collected when their parent frame is destroyed or when that frame
- transitions to a new document. Manual management (calling
- g_object_unref on them) is also allowed, and is required for
- objects that are not in the DOM tree (eg NodeLists).
-
- * GNUmakefile.am: add testutils file to testdomdocument.c
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::setMainFrameDocumentReady): collect
- DOM objects on document transition.
- * tests/testdomdocument.c:
- (dom_document_fixture_teardown): only destroy the view if it's not
- already destroyed, since the new test detroys it on its own.
- (test_dom_document_get_elements_by_tag_name): manually unref node list.
- (test_dom_document_get_elements_by_class_name): ditto.
- (test_dom_document_get_links): ditto.
- (test_dom_document_garbage_collection): test all possible
- scenarios for DOM object "garbage collection".
- (main): add new test.
- * tests/testdomnode.c:
- (test_dom_node_hierarchy_navigation): manually unref node list.
- (test_dom_node_insertion): ditto.
- * webkit/webkithittestresult.cpp:
- (webkit_hit_test_result_dispose): unref the inner node on dispose
- now that the memory management model is clarified.
- (webkit_hit_test_result_class_init): hook dispose.
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_core_frame_gone): clear DOM objects attached to this frame.
- (webkit_web_frame_finalize): ditto.
-
-2010-11-18 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Fix introspection build, we were missing a -I flag.
-
- * GNUmakefile.am:
-
-2010-11-18 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] atk_text_get_selection returns the wrong offsets after a link
- https://bugs.webkit.org/show_bug.cgi?id=49514
-
- Updated test case to also chech this specific subcase.
-
- We need to explicitly check the case of having a selection in a
- paragraph after an embedded object (i.e. a link) to make sure the
- right calculations are being done when the paragraph is composed
- of more than just one text object, and the current selection is
- made only in one of them.
-
- * tests/testatk.c:
- (testWebkitAtkTextSelections): Make sure that a selection after a
- link in a paragraph is working ok when asking for the text
- selection from the point of view of the paragraph.
-
-2010-11-17 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Changing any GNUmakefile.am in the source tree forces a rebuld of the DOM bindings and WebKit APi
- https://bugs.webkit.org/show_bug.cgi?id=49400
-
- Add GNUmakefile.am and include all WebKit API build rules. Make webkitenum.*
- depend on this new file, instead of the generated GNUmakefile.am.
-
- * GNUmakefile.am: Copied from GNUmakefile.am.
-
-2010-11-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- Fix a typo that leads to emitting the wrong signal if it is done
- by using the signals array.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2010-11-16 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Some key-press events can't be handled by WebView
- https://bugs.webkit.org/show_bug.cgi?id=48986
-
- The problem is that "popup-menu" and "show-help" signals are
- handled by GtkTextView, as they are added to the key bindings set
- of every widget in gtk_widget_class_init(). For all other bindings
- handled by GtkTextView we are stopping the signal emission in
- their callbacks, so we only need to do the same for "popup-menu"
- and "show-help" signals.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::toggleOverwriteCallback):
- (WebKit::popupMenuCallback):
- (WebKit::showHelpCallback):
- (WebKit::EditorClient::EditorClient):
-
-2010-11-16 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Show default context menu for the currently focused element when activated with keyboard
- https://bugs.webkit.org/show_bug.cgi?id=49376
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_popup_menu_handler):
-
-2010-11-11 Joone Hur <joone@kldp.org>
-
- Reviewed by Antonio Gomes.
-
- [GTK][DRT] Implement LayoutTestController::nodesFromRect
- https://bugs.webkit.org/show_bug.cgi?id=46598
-
- Support nodesFromRect in DRT
-
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
- (DumpRenderTreeSupportGtk::nodesFromRect): Added.
- * WebCoreSupport/DumpRenderTreeSupportGtk.h:
-
-2010-11-11 Chang Shu <chang.shu@nokia.com>
-
- Reviewed by Antonio Gomes.
-
- [GTK] Replace "MoveForward"/"MoveBackward" with "MoveRight"/"MoveLeft"
- to make spatial navigation work on input/textarea.
- https://bugs.webkit.org/show_bug.cgi?id=49056
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::moveCursorCallback):
-
-2010-11-08 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Link with target name set does not work
- https://bugs.webkit.org/show_bug.cgi?id=48865
-
- When a new page is created with a name (target=myFrame), the new
- mainFrame could not be found because they where not stored in the
- same PageGroup. As PageGroup are not exposed externally so the
- simpliest solution is to use a global page group name. This also fixes
- issue with visited link coloration across pages. After this change the
- private function webkit_web_view_set_group_name() was no longer used
- so it was removed completly.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::closeWindowSoon):
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2010-11-08 Alexey Proskuryakov <ap@apple.com>
-
- Reviewed by Darin Adler.
-
- https://bugs.webkit.org/show_bug.cgi?id=48685
- Notify UI process about focused frame
-
- Added an empty implementation of the new ChromeClient method.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::focusedFrameChanged):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-11-08 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Andreas Kling.
-
- [GTK] Error page templates are not filled properly
- https://bugs.webkit.org/show_bug.cgi?id=49148
-
- Replace a call to makeString with String::format. This was mistakenly
- changed to makeString in an earlier commit.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
-
-2010-11-08 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- * NEWS: update for release.
-
-2010-11-08 Csaba Osztrogonac <ossy@webkit.org>
-
- Unreviewed, rolling out r71466.
- http://trac.webkit.org/changeset/71466
- https://bugs.webkit.org/show_bug.cgi?id=48865
-
- It broke layout tests on GTK bots.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::closeWindowSoon):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
- (webkit_web_view_set_group_name):
-
-2010-11-07 Adam Barth <abarth@webkit.org>
-
- Reviewed by Eric Seidel.
-
- Rename Cache to MemoryCache
- https://bugs.webkit.org/show_bug.cgi?id=49159
-
- * webkit/webkitwebview.cpp:
-
-2010-11-05 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Link with target name set does not work correctly
- https://bugs.webkit.org/show_bug.cgi?id=48865
-
- When a new page is created with a name (target=myFrame), the new
- mainFrame could not be found because they where not stored in the
- same PageGroup. As PageGroup are not exposed externally so the
- simpliest solution is to use a global page group name. This also fixes
- issue with visited link coloration across pages. After this change the
- private function webkit_web_view_set_group_name() was no longer used
- so it was removed completly.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::closeWindowSoon):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2010-11-05 Chris Marrin <cmarrin@apple.com>
-
- Reviewed by Simon Fraser.
-
- Move resumeAnimations/suspendAnimations from Frame to AnimationController.
- https://bugs.webkit.org/show_bug.cgi?id=49073
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_suspend_animations):
- (webkit_web_frame_resume_animations):
-
-2010-11-05 Chris Marrin <cmarrin@apple.com>
-
- Unreviewed.
-
- Small fix to GTK build
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_suspend_animations):
- (webkit_web_frame_resume_animations):
-
-2010-11-05 Chris Marrin <cmarrin@apple.com>
-
- Reviewed by Simon Fraser.
-
- Make suspendAnimations/resumeAnimations and setCSSAnimations traverse through subframes and remember state
- https://bugs.webkit.org/show_bug.cgi?id=46945
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_suspend_animations):
- (webkit_web_frame_resume_animations):
-
-2010-11-03 Daniel Bates <dbates@rim.com>
-
- For unnamed frames, window.name returns a generated name
- https://bugs.webkit.org/show_bug.cgi?id=6751
-
- Part 1 of 2.
-
- Substitute FrameTree::uniqueName() for FrameTree::name() in the GTK port.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_name):
-
-2010-11-02 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Adam Barth.
-
- [Cairo] Remove PlatformRefPtrCairo
- https://bugs.webkit.org/show_bug.cgi?id=48192
-
- Replace instances of PlatformRefPtr smart pointers that wrap Cairo
- types with RefPtrs.
-
- * WebCoreSupport/DragClientGtk.cpp: Use RefPtr instead of PlatformRefPtr.
- (WebKit::dragIconWindowDrawEventCallback):
- * WebCoreSupport/DragClientGtk.h: Ditto.
-
-2010-11-02 Daniel Bates <dbates@rim.com>
-
- Reviewed by Martin Robinson.
-
- Set frame name before appending it to the frame tree in the Apple Windows,
- GTK, and EFL ports
- https://bugs.webkit.org/show_bug.cgi?id=48806
-
- Make the frame creation process in the GTK-port consistent with the
- Mac, Qt, and Haiku ports. In particular, set the name of the new
- frame before it's appended to the frame tree.
-
- At this time we cannot test this change since it is being masked by
- HTMLFrameElementBase::setName() <http://trac.webkit.org/browser/trunk/WebCore/html/HTMLFrameElementBase.cpp?rev=70976#L160>.
- We'll be able to test this once we fix bug #6751.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
-
-2010-11-01 Jennifer Braithwaite <jennb@google.com>
-
- Reviewed by Martin Robinson.
-
- GTK: Update resource tracking when moving a frame between documents
- https://bugs.webkit.org/show_bug.cgi?id=48362
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transferLoadingResourceFromPage):
- Assign resource id to current web view and remove from former web view.
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_remove_resource):
- Added.
-
-2010-11-01 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Cleanup needed in testatk.c file
- https://bugs.webkit.org/show_bug.cgi?id=48759
-
- Cleanup done in testatk.c, mainly addressing the following issues:
-
- - Removed any trace of extra main loops in tests, so now we just
- spin the original main loop in all of them to get the a11y
- objects.
-
- - As we no longer use the extra main loops, removed the bail_out
- function, used along with g_idle_add() to stop those extra loops.
-
- - As we now spin the loop in every test, created a new function
- waitForAccessibilityObjects() to write the loop just once.
-
- - Fixed name in incorrectly named test testWekitAtkTextSelections.
-
- - Alphabetically sorted the list of includes.
-
- - Renamed all identifiers to camel Case notation.
-
- - Declare variables when needed only (instead of declaring all of
- them at the beginning of the function).
-
- - Don't declare two variables of the same type in the same line.
-
- - No more short names like 'obj', 'textObj' or 'alloc'. Use names
- like 'object', 'textObject' and 'allocation' instead.
-
- - Fixed indentation.
-
- - Make sure all comments finish with '.'
-
- - Replace NULL's with 0's.
-
- * tests/testatk.c:
- (waitForAccessibleObjects): New, manually spins the main context
- to make sure accessible objects are created before continuing.
- (testGetTextFunction): Fixed this function to be compliant with
- the WebKit's coding style.
- (runGetTextTests): Ditto.
- (testWebkitAtkGetTextAtOffsetForms): Ditto.
- (testWebkitAtkGetTextAtOffset): Ditto.
- (testWebkitAtkGetTextAtOffsetNewlines): Ditto.
- (testWebkitAtkGetTextAtOffsetTextarea): Ditto.
- (testWebkitAtkGetTextAtOffsetTextInput): Ditto.
- (testWebkitAtkGetTextInParagraphAndBodySimple): Ditto.
- (testWebkitAtkGetTextInParagraphAndBodyModerate): Ditto.
- (testWebkitAtkGetTextInTable): Ditto.
- (testWebkitAtkGetHeadersInTable): Ditto.
- (compAtkAttribute): Ditto.
- (atkAttributeSetAttributeNameHasValue): Ditto.
- (testWebkitAtkTextAttributes): Ditto.
- (testWebkitAtkTextSelections): Ditto.
- (testWebkitAtkGetExtents): Ditto.
- (testWebkitAtkLayoutAndDataTables): Ditto.
- (testWebkitAtkLinksWithInlineImages): Ditto.
- (testWebkitAtkHypertextAndHyperlinks): Ditto.
- (testWebkitAtkListsOfItems): Ditto.
- (testWebkitAtkTextChangedNotifications): Ditto.
- (main): Ditto.
-
-2010-11-01 Brady Eidson <beidson@apple.com>
-
- Reviewed by Anders Carlsson.
-
- <rdar://problem/7660547> and https://bugs.webkit.org/show_bug.cgi?id=48699
- Context menu support for WebKit 2.
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::showContextMenu):
-
-2010-11-01 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Pasting markup into Thunderbird compose window produces no text
- https://bugs.webkit.org/show_bug.cgi?id=43737
-
- Added a test verifying that the meta tag prefix on markup data exists.
-
- * tests/testcopyandpaste.c:
- (load_status_cb): Add a check for the meta tag prefix.
-
-2010-11-01 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] AtkHyperlink needs to be implemented
- https://bugs.webkit.org/show_bug.cgi?id=33785
-
- New test to ensure the AtkHypertext/AtkHyperlink stuff works.
-
- * tests/testatk.c:
- (testWebkitAtkHypertextAndHyperlinks): New test, checking both the
- implementation of the AtkHypertext interface, the subclass of the
- AtkHyperlink abstract class, and the implementation of the
- AtkAction interface in that subclass.
- (main): Added the new unit test.
-
-2010-10-30 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Use new width for height APIs in GTK+ 3.x
- https://bugs.webkit.org/show_bug.cgi?id=48709
-
- Use the new width for height APIs in GTK+ 3.x, since size-request
- is deprecated.
-
- For now we just return the same value for preferred and minimum
- width/height, which should match the 2.x behavior. Probably we
- could do something smarter for the minimum values.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_preferred_width): return our preferred width.
- (webkit_web_view_get_preferred_height): return our preferred height.
- (webkit_web_view_class_init): hook the new default handlers.
-
-2010-10-29 Daniel Bates <dbates@rim.com>
-
- No review, rolling out 70971.
- http://trac.webkit.org/changeset/70971
- https://bugs.webkit.org/show_bug.cgi?id=6751
-
- Rolling out changeset 70971 <http://trac.webkit.org/changeset/70971> since
- it caused layout test failures on all bots. In particular, the
- child count in a generated frame name differs after this patch. We need
- to look into this further.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_name):
-
-2010-10-28 Antonio Gomes <agomes@rim.com>
-
- Reviewed by Ojan Vafai.
-
- Needs a "LinuxEditingBehavior", perhaps with a better name
- https://bugs.webkit.org/show_bug.cgi?id=36627
-
- Added the corresponding GTK+ setting to WebCore's EditingUnixBehavior: WEBKIT_EDITING_BEHAVIOR_UNIX.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- * webkit/webkitwebsettings.h:
-
-2010-10-29 Daniel Bates <dbates@rim.com>
-
- Reviewed by Adam Barth.
-
- For unnamed frames, window.name returns a generated name
- https://bugs.webkit.org/show_bug.cgi?id=6751
-
- Modified GTK-port to use FrameTree::uniqueName().
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_name):
-
-2010-10-29 Martin Robinson <mrobinson@igalia.com>
-
- Build fix for GTK+ after BackForwardListImpl introduction.
-
- * webkit/webkitwebbackforwardlist.cpp:
- (webkit_web_back_forward_list_new_with_web_view):
-
-2010-10-29 Darin Adler <darin@apple.com>
-
- Reviewed by Sam Weinig.
-
- Change BackForwardList clients to use BackForwardListImpl to prepare for further refactoring
- https://bugs.webkit.org/show_bug.cgi?id=48574
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebbackforwardlist.cpp:
- (webkit_web_back_forward_list_dispose):
- (webkit_web_back_forward_list_new_with_web_view):
- (webkit_web_back_forward_list_go_forward):
- (webkit_web_back_forward_list_go_back):
- (webkit_web_back_forward_list_contains_item):
- (webkit_web_back_forward_list_go_to_item):
- (webkit_web_back_forward_list_get_forward_list_with_limit):
- (webkit_web_back_forward_list_get_back_list_with_limit):
- (webkit_web_back_forward_list_get_back_item):
- (webkit_web_back_forward_list_get_current_item):
- (webkit_web_back_forward_list_get_forward_item):
- (webkit_web_back_forward_list_get_nth_item):
- (webkit_web_back_forward_list_get_back_length):
- (webkit_web_back_forward_list_get_forward_length):
- (webkit_web_back_forward_list_get_limit):
- (webkit_web_back_forward_list_set_limit):
- (webkit_web_back_forward_list_add_item):
- (webkit_web_back_forward_list_clear):
- (WebKit::core):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_set_maintains_back_forward_list):
- (webkit_web_view_get_back_forward_list):
- Use BackForwardListImpl.
-
-2010-10-29 Alexey Proskuryakov <ap@apple.com>
-
- Reviewed by Darin Adler.
-
- https://bugs.webkit.org/show_bug.cgi?id=48576
- Let WebKit2 client know when a frame is a frameset
-
- Added a blank implementation of the new FrameLoaderClient method.
-
- * WebCoreSupport/FrameLoaderClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidBecomeFrameset):
-
-2010-10-29 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Add the GtkScrollablePolicy property to the webview
- https://bugs.webkit.org/show_bug.cgi?id=48357
-
- Added the GtkScrollablePolicy properties to the webview widget, it
- is now required for GtkScrollable widgets in GTK+ 3.x.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (setHorizontalScrollPolicy): Added.
- (setVerticalScrollPolicy): Added.
- (getHorizontalScrollPolicy): Added.
- (getVerticalScrollPolicy): Added.
- (webkit_web_view_get_property):
- (webkit_web_view_set_property):
- (webkit_web_view_class_init):
-
-2010-10-28 Sergio Villar Senin <svillar@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] WebKitWebFrame's load-status is not properly notified to the tests
- https://bugs.webkit.org/show_bug.cgi?id=48048
-
- "frame-created" signal must be issued before loading any data,
- that way clients can correctly capture all the loading related
- signals for that frame.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
-
-2010-10-27 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- getTextAtOffset returns incorrect results if a link includes text and an image
- https://bugs.webkit.org/show_bug.cgi?id=47365
-
- New test to make sure this bug is actually fixed.
-
- * tests/testatk.c:
- (testWebkitAtkLinksWithInlineImages): New test.
- (main): Added new test.
-
-2010-10-26 Antonio Gomes <agomes@rim.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Implement DumpRenderTreeSupportGtk (similarly to DumpRenderTreeSupportQt idea)
- https://bugs.webkit.org/show_bug.cgi?id=48199
-
- Implemented an initial version of the DumpRenderTreeSupportGtk class.
- The main idea is that it groups together the bodies of many LayoutTestController
- methods, so they can directly access WebCore features. This way we eliminate the
- need of adding APIs to WebKitGTK just to expand its test coverage through DRT.
-
- The DumpRenderTreeSupportGtk class so far includes a getter and setter for the WebKitTabToLinksPreferenceKey
- property as a sample implementation. Also it makes it possible to unskip fast/events/tab-focus-anchor.html and
- to fix stderr messages from all 22 spatial-navigation tests in fast/events/spatial-navigation.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::tabsToLinks):
- * WebCoreSupport/DumpRenderTreeSupportGtk.cpp: Added.
- (DumpRenderTreeSupportGtk::DumpRenderTreeSupportGtk):
- (DumpRenderTreeSupportGtk::~DumpRenderTreeSupportGtk):
- (DumpRenderTreeSupportGtk::setDumpRenderTreeModeEnabled):
- (DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled): Getter to the WebKitTabToLinksPreferenceKey property.
- (DumpRenderTreeSupportGtk::setLinksIncludedInFocusChain): Setter to the WebKitTabToLinksPreferenceKey property.
- (DumpRenderTreeSupportGtk::linksIncludedInFocusChain):
- * WebCoreSupport/DumpRenderTreeSupportGtk.h: Added.
-
-2010-10-26 Jenn Braithwaite <jennb@chromium.org>
-
- Reviewed by Dmitry Titov.
-
- Resource tracking failure when trying to move a frame between documents
- https://bugs.webkit.org/show_bug.cgi?id=44713
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transferLoadingResourceFromPage):
- Empty method.
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2010-10-26 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Chris Fleizach.
-
- [Gtk] Layout tables should indicate that they are not data tables via an object attribute
- https://bugs.webkit.org/show_bug.cgi?id=35422
-
- New unit test to check the 'layout-guess' attribute in tables.
-
- * tests/testatk.c:
- (atkAttributeSetAttributeNameHasValue): New, looks for a attribute
- with a specific value, by the name of attribute.
- (atkAttributeSetContainsAttributeName): New, just checks whether
- an attribute with a specified name is present in the set.
- (atkAttributeSetAttributeHasValue): Modified to relay on the new
- function atkAttributeSetAttributeNameHasValue().
- (testWebkitAtkLayoutAndDataTables): New test.
- (main): Added the new test.
-
-2010-10-26 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Port to new GtkScrollable interface in GTK+ 3.x
- https://bugs.webkit.org/show_bug.cgi?id=48202
-
- Use the new GtkScrollable interface when compiling against GTK+
- 3.x.
-
- * webkit/webkitwebview.cpp:
- (setHorizontalAdjustment):
- (setVerticalAdjustment):
- (getHorizontalAdjustment):
- (getVerticalAdjustment):
- (webkit_web_view_get_property):
- (webkit_web_view_set_property):
- (webkit_web_view_class_init):
-
-2010-10-22 Sam Weinig <sam@webkit.org>
-
- Reviewed by Anders Carlsson.
-
- WebKit2 needs to pass the current event modifier flags when requesting a new window
- https://bugs.webkit.org/show_bug.cgi?id=48140
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::createWindow):
- * WebCoreSupport/ChromeClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchCreatePage):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- Add NavigationAction parameter.
-
-2010-10-20 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] use gtk_widget_hide instead of gtk_widget_hide_all in the fullscreen video conroller
- https://bugs.webkit.org/show_bug.cgi?id=47972
-
- * WebCoreSupport/FullscreenVideoController.cpp:
- (FullscreenVideoController::hideHud):
- (FullscreenVideoController::exitFullscreen):
-
-2010-10-19 Joone Hur <joone@kldp.org>
-
- Reviewed by Martin Robinson.
-
- [GTK] Needs fixing mistyped comments in the API documentation
- https://bugs.webkit.org/show_bug.cgi?id=47656
-
- Fixed mistyped comments in the API documenentation.
-
- * webkit/webkitwebsettings.cpp: Fixed a mistyped comment in the the section block.
- * webkit/webkitwebwindowfeatures.cpp: Fixed a mistyped comment in the section block.
-
-2010-10-18 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- * NEWS: update for 1.3.5 release.
- * docs/webkitgtk-sections.txt: add new APIs.
-
-2010-10-18 Pavel Feldman <pfeldman@chromium.org>
-
- Reviewed by Simon Fraser.
-
- Web Inspector: [crash] when Inspector Open in CSSStyleSelector::loadPendingImages().
- https://bugs.webkit.org/show_bug.cgi?id=46224
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::sendMessageToFrontend):
-
-2010-10-14 Antonio Gomes <agomes@rim.com>
-
- Reviewed by Martin Robinson and Xan Lopez.
-
- [Gtk]: DRT does not support frame flattening testing
- https://bugs.webkit.org/show_bug.cgi?id=38650
-
- Implement enable-frame-flattening API for Gtk+.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2010-10-15 Nikolas Zimmermann <nzimmermann@rim.com>
-
- Reviewed by Dirk Schulze.
-
- Replace some String::format() usages by StringConcatenate in WebKit
- https://bugs.webkit.org/show_bug.cgi?id=47714
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
- * webkit/webkitwebsettings.cpp:
- (webkitOSVersion):
- (webkitUserAgent):
-
-2010-10-14 Joone Hur <joone@kldp.org>
-
- Reviewed by Andreas Kling.
-
- [GTK] google.co.kr was missed when checking Google domains
- https://bugs.webkit.org/show_bug.cgi?id=47652
-
- WebKitGtk+ maintains a list of Google domains for working well with Google sites.
- Add google.co.kr also to the list to be checked with other Google domains.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::initializeDomainsList): Added google.co.kr.
-
-2010-10-13 Sergio Villar Senin <svillar@igalia.com>
-
- Reviewed by Martin Robinson.
-
- WebKitGtk+ to use the new API from the imported SoupURILoader code
-
- [GTK] Add HTTP caching support
- https://bugs.webkit.org/show_bug.cgi?id=44261
-
- ResourceHandleInternal m_msg is now called m_soupMessage.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_new_with_handle):
- (webkit_download_start):
-
-2010-10-13 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Remove more warnings from the g-i scanner run
- https://bugs.webkit.org/show_bug.cgi?id=47255
-
- Fixes almost all warnings coming from the g-i scanner.
-
- * webkit/webkitsecurityorigin.cpp: Rename parameter names in
- gtk-doc blurb to the actual name of the parameter.
- * webkit/webkitsoupauthdialog.c: ditto.
- (webkit_soup_auth_dialog_class_init): Write missing doc for the
- 'current-toplevel' signal.
- * webkit/webkitsoupauthdialog.h: Rename signal parameter to its
- actual name.
- * webkit/webkitwebdatabase.cpp: Rename parameter names in
- gtk-doc blurb to the actual name of the parameter.
- * webkit/webkitwebinspector.cpp: ditto.
- (webkit_web_inspector_class_init): ditto.
- * webkit/webkitwebview.cpp: ditto.
- (webkit_web_view_class_init): ditto.
- * webkit/webkitwebview.h: Rename the parameter names to be in sync
- with the ones we use in the function definition.
-
-2010-10-12 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r69589.
- http://trac.webkit.org/changeset/69589
- https://bugs.webkit.org/show_bug.cgi?id=47547
-
- Wrong patch landed from a bug with two patches (Requested by
- mrobinson on #webkit).
-
- * webkit/webkitdownload.cpp:
- (webkit_download_new_with_handle):
- (webkit_download_start):
-
-2010-10-12 Sergio Villar Senin <svillar@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Add HTTP caching support
- https://bugs.webkit.org/show_bug.cgi?id=44261
-
- ResourceHandle's m_msg renamed to m_soupMsg and it's also now a PlatformRefPtr
-
- * webkit/webkitdownload.cpp:
- (webkit_download_new_with_handle):
- (webkit_download_start):
-
-2010-10-09 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Removed unused callback in webkitwebview
- https://bugs.webkit.org/show_bug.cgi?id=47092
-
- In webkit_web_view_forward_context_menu_event() a callback is
- connected for the destroy signal of the popup menu, however we
- reuse the same menu always, holding a ref to it, so it's not
- destroyed when withdrawn by the user.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_forward_context_menu_event):
-
-2010-10-08 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Remove duplicate code in WebKit/gtk/WebCoreSupport/DragClientGtk.cpp
- https://bugs.webkit.org/show_bug.cgi?id=47367
-
- Remove as much duplicate code as possible from DragClientGtk. Most of this code
- is GTK2/GTK3 independent, so only the bits that aren't should be protected by
- #ifdefs.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::dragIconWindowDrawEventCallback): Modified the name of this callback
- so that it is shared between build types.
- (WebKit::DragClient::DragClient): Updated the signal connectors to reflect the change above.
- (WebKit::DragClient::~DragClient): The build types share the callback name, so remove
- the #ifdef here.
- (WebKit::DragClient::drawDragIconWindow): Changed the name of this method and make it
- independent of the build type.
- * WebCoreSupport/DragClientGtk.h: Update method declaration and remove #ifdefs.
-
-2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Use draw instead of expose_event in WebView when building with gtk3
- https://bugs.webkit.org/show_bug.cgi?id=47338
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_expose_event):
- (webkit_web_view_draw):
- (webkit_web_view_class_init):
-
-2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Don't use GtkObject
- https://bugs.webkit.org/show_bug.cgi?id=47090
-
- GtkObject has been removed in gtk3.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::generateEditorCommands):
- * WebCoreSupport/FullscreenVideoController.cpp:
- (FullscreenVideoController::createHud):
-
-2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Fix the build for GTK+ 3
- https://bugs.webkit.org/show_bug.cgi?id=47249
-
- Use GdkVisual instead of GdkColormap. GdkColormap has been removed
- in gtk3
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_realize):
-
-2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Fix the build for GTK+ 3
- https://bugs.webkit.org/show_bug.cgi?id=47249
-
- Do not use GdkDrawable deprecated API. Some methods of GdkDrawable
- are deprecated in gtk2 and have been removed in gtk3. Equivalent
- API has been added to GdkWindow.
-
- * tests/testcopyandpaste.c:
- (runPasteTestCallback):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_press_event):
-
-2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Use draw signal instead of expose_event in DragClientGtk when building with gtk3
- https://bugs.webkit.org/show_bug.cgi?id=47326
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::dragIconWindowDrawCallback):
- (WebKit::DragClient::DragClient):
- (WebKit::DragClient::~DragClient):
- (WebKit::DragClient::startDrag):
- (WebKit::DragClient::dragIconWindowDraw):
- * WebCoreSupport/DragClientGtk.h:
-
-2010-10-07 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Fix the build for GTK+ 3
- https://bugs.webkit.org/show_bug.cgi?id=47249
-
- Don't use gtk_size_request_get_size(). It has been removed,
- gtk_widget_get_preferred_size() should be used instead
-
- * webkit/webkitwebview.cpp:
- (PopupMenuPositionFunc):
-
-2010-10-06 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r69201.
- http://trac.webkit.org/changeset/69201
- https://bugs.webkit.org/show_bug.cgi?id=47279
-
- This change broke the WebKitGTK+ build for GTK+ 2.0.
- (Requested by mrobinson on #webkit).
-
- * tests/testcopyandpaste.c:
- (runPasteTestCallback):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_press_event):
-
-2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Port to gtk+3 (2.91.0)
- https://bugs.webkit.org/show_bug.cgi?id=47249
-
- Do not use GdkDrawable deprecated API
-
- Some methods of GdkDrawable are deprecated in gtk2 and have been
- remmoved in gtk3. Equivalent API has been added to GdkWindow.
-
- * tests/testcopyandpaste.c:
- (runPasteTestCallback):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_press_event):
-
-2010-09-28 Jenn Braithwaite <jennb@chromium.org>
-
- Reviewed by Dmitry Titov.
-
- Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument.
- https://bugs.webkit.org/show_bug.cgi?id=46663
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didTransferChildFrameToNewDocument):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2010-09-27 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Chris Fleizach.
-
- [Gtk] Adjust atk_text_get_text_at_offset to account for bullets/numbers in list items
- https://bugs.webkit.org/show_bug.cgi?id=45381
-
- Updated test to match the new exposure of list item markers.
-
- Also, added some extra assertions in that test to make sure the
- accessible objects associated to the items implement AtkText.
-
- * tests/testatk.c:
- (testWebkitAtkListsOfItems):
- (main):
-
-2010-09-27 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Doesn't build with gtk+ 2.14
- https://bugs.webkit.org/show_bug.cgi?id=46565
-
- Fixed the build for GTK+ 2.14. Don't use gdk_window_get_cursor()
- for that GTK+ version as I found no acceptable way to work-around
- its absence.
-
- * WebCoreSupport/FullscreenVideoController.cpp:
- (FullscreenVideoController::showHud):
- (FullscreenVideoController::hideHud):
- (FullscreenVideoController::enterFullscreen):
-
-2010-09-26 Jenn Braithwaite <jennb@chromium.org>
-
- Reviewed by Adam Barth.
-
- GTK client needs updating when live iframe element is moved
- between pages.
- https://bugs.webkit.org/show_bug.cgi?id=46300
-
- Test: fast/frames/iframe-reparenting-adopt-node.html
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didTransferChildFrameToNewDocument):
- Update the webView for the frame to match the parent frame's
- webView.
-
-2010-09-24 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] opening local files on win32
- https://bugs.webkit.org/show_bug.cgi?id=31066
-
- Add tests that check the mime type returned by local files loaded via file URLs.
-
- * tests/testmimehandling.c:
- (testRemoteMimeType): Added.
- (testLocalMimeType): Added.
- (main): Run tests by using g_test_add_data_func with either
- testRemoteMimeType or testLocalMimeType.
-
-2010-09-23 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Nate Chapin.
-
- [GTK] Some tests from r68174 fail on the GTK+ bots
- https://bugs.webkit.org/show_bug.cgi?id=46396
-
- Fix since version number in this new WebKitWebSettings property.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init): Fix the since version number.
-
-2010-09-23 Nate Chapin <japhet@chromium.org>
-
- Unreviewed, build fix.
-
- Add a missing comma in webkitwebsettings.cpp.
-
- * webkit/webkitwebsettings.cpp:
-
-2010-09-23 Nate Chapin <japhet@chromium.org>
-
- Reviewed by Darin Fisher.
-
- Add hyperlink auditing settings (i.e., <a ping>).
- https://bugs.webkit.org/show_bug.cgi?id=30458
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2010-09-22 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Replace instances of g_timeout_add() with g_idle_add() in testatk.c
- https://bugs.webkit.org/show_bug.cgi?id=46284
-
- Use g_idle_add() whenever g_timeout_add() was being used.
-
- This is desired because it's better to rely on the main loop to
- decide when it's a good moment to execute the task (when idle)
- than manually setting a timeout, which also sets a minimum amount
- of time needed to get the function executed.
-
- * tests/testatk.c:
- (testWekitAtkTextSelections):
- (testWebkitAtkGetExtents):
- (testWebkitAtkListsOfItems):
- (main):
-
-2010-09-22 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] object:text-changed events should be emitted for entries and password text
- https://bugs.webkit.org/show_bug.cgi?id=25898
-
- New unit test to make sure text-changed signals are emitted
-
- * tests/testatk.c:
- (textChangedCb): New. Signal handler for the
- text-changed::insert and text-changed::delete signals.
- (checkTextChangesAndBailOut): New. Source function to check
- the global result of the test and quit from the main loop.
- (testWebkitAtkTextChangedNotifications): New test.
- (main):
-
-2010-09-22 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Added information about drop shadow improvements to the NEWS file.
-
- * NEWS: Added information about drop shadow improvements.
-
-2010-09-21 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Fix transfer annotations for WebKitGTK+ static API
- https://bugs.webkit.org/show_bug.cgi?id=46244
-
- Deal with all the warnings related to transfer issues. Mostly the
- problem was the transfer being missing, but there were also typos
- in the function name or missing ':' at the end of the function
- name in the gtk-doc.
-
- * webkit/webkitdownload.cpp:
- * webkit/webkitnetworkrequest.cpp:
- * webkit/webkitnetworkresponse.cpp:
- * webkit/webkitsecurityorigin.cpp:
- * webkit/webkitwebdatabase.cpp:
- * webkit/webkitwebdatasource.cpp:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebhistoryitem.cpp:
- * webkit/webkitwebinspector.cpp:
- * webkit/webkitwebresource.cpp:
- * webkit/webkitwebsettings.cpp:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
- (webkit_web_view_get_main_frame):
-
-2010-09-21 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update for 1.3.4 release.
-
- * NEWS:
-
-2010-09-17 Darin Adler <darin@apple.com>
-
- Reviewed by Sam Weinig.
-
- REGRESSION (r60104): Zoom level is unexpectedly reset on page reload
- https://bugs.webkit.org/show_bug.cgi?id=42863
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_zoom_level):
- (webkit_web_view_apply_zoom_level):
- (webkit_web_view_set_full_content_zoom):
- Call functions on Frame instead of FrameView.
-
-2010-09-16 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Implement dissolveDragImageToFraction
- https://bugs.webkit.org/show_bug.cgi?id=45826
-
- To support full alpha in the drag icon, changed the drag icon to be a
- GtkWindow with an RGBA colormap. Added logic to support painting the drag
- image to this window during the expose event.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::dragIconWindowExposeEventCallback): Added.
- (WebKit::DragClient::DragClient): Initialize the new drag icon window.
- (WebKit::DragClient::~DragClient): Disconnect the expose event signal.
- (WebKit::DragClient::startDrag): Resize the drag icon window the appropriate size and
- if necessary, set its colormap.
- (WebKit::DragClient::dragIconWindowExposeEvent): Added.
- * WebCoreSupport/DragClientGtk.h: Added new member and method declarations.
-
-2010-09-14 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Eric Carlson and Martin Robinson.
-
- [GTK] eventSender.contextClick() should return the contents of the context menu
- https://bugs.webkit.org/show_bug.cgi?id=39102
-
- New private WebView API to retrieve the context-menu widget. This
- is used by DRT only.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_context_menu):
-
-2010-09-16 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- GTK+ 3.x. updates, gtk_widget_size_request is deprecated and
- "activate-slider" style property for scrollbars is gone.
-
- * webkit/webkitwebview.cpp:
- (PopupMenuPositionFunc):
-
-2010-09-15 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by David Levin.
-
- [GTK] [REGRESSION] r67591 broke the testwebbackforwardlist API test and introduced a memory leak
- https://bugs.webkit.org/show_bug.cgi?id=45865
-
- When initializing the backForwardList private member of the WebView, do
- so with adoptPlatformRef to prevent a memory leak.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init): Initialize member with adoptPlatformRef.
-
-2010-09-15 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Eric Seidel.
-
- [Gtk] Use GOwnPtr for code that needs it
- https://bugs.webkit.org/show_bug.cgi?id=21594
-
- Convert as reference counted private members of WebKitWebView to
- smart pointers as possible. This removes a lot of unecessary manual
- memory management. Also convert some pointer members away from pointer
- types, now that we are sure their destructors are called.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::inputMethodsMenuItem): Updated to reflect PlatformRefPtr changes.
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag): Ditto.
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::setInputMethodState): Ditto.
- (WebKit::EditorClient::respondToChangedSelection): Ditto.
- (WebKit::EditorClient::handleInputMethodKeydown): Ditto.
- (WebKit::EditorClient::handleInputMethodMousePress): Ditto.
- (WebKit::EditorClient::EditorClient): Ditto.
- (WebKit::EditorClient::~EditorClient): Ditto.
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::postCommitFrameViewSetup): Ditto.
- * webkit/webkitprivate.h: Ditto.
- * webkit/webkitwebview.cpp: Ditto.
- (destroy_menu_cb): Ditto.
- (webkit_web_view_forward_context_menu_event): Ditto.
- (webkit_web_view_key_release_event): Ditto.
- (webkit_web_view_button_press_event): Ditto.
- (webkit_web_view_button_release_event): Ditto.
- (webkit_web_view_focus_in_event): Ditto.
- (webkit_web_view_focus_out_event): Ditto.
- (webkit_web_view_realize): Ditto.
- (webkit_web_view_set_scroll_adjustments): Ditto.
- (webkit_web_view_dispose): Changed all g_object_unref calls to
- PlatformRefPtr.clear(). Although this will also be done by the manual
- call to the WebKitWebViewPrivate destructor, the order that these
- fields are zero'd in is still very sensitive.
- (webkit_web_view_finalize): Updated to reflect PlatformRefPtr changes.
- (webViewGetDPI): Ditto.
- (webkit_web_view_screen_changed): Ditto.
- (webkit_web_view_drag_end): Ditto.
- (webkit_web_view_drag_data_get): Ditto.
- (doDragLeaveLater): Ditto.
- (webkit_web_view_drag_leave): Ditto.
- (webkit_web_view_drag_motion): Ditto.
- (webkit_web_view_drag_data_received): Ditto.
- (webkit_web_view_drag_drop): Ditto.
- (webkit_web_view_get_im_context): Ditto.
- (webkit_web_view_update_settings): Ditto.
- (webkit_web_view_init): Ditto.
- (webkit_web_view_set_settings): Ditto.
- (webkit_web_view_get_settings): Ditto.
- (webkit_web_view_get_inspector): Ditto.
- (webkit_web_view_set_window_features): Ditto.
- (webkit_web_view_get_window_features): Ditto.
- (webkit_web_view_get_back_forward_list): Ditto.
- (webkit_web_view_zoom_in): Ditto.
- (webkit_web_view_zoom_out): Ditto.
- (webkit_web_view_add_resource): Ditto.
- (webkit_web_view_get_resource): Ditto.
- (webkit_web_view_get_main_resource): Ditto.
- (webkit_web_view_clear_resources): Ditto.
- (webkit_web_view_get_subresources): Ditto.
-
-2010-09-14 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] fast/events/keydown-numpad-keys.html produces many GLib warnings
- https://bugs.webkit.org/show_bug.cgi?id=45775
-
- Handle the toggle-overwrite signal on the GtkTextView used for generating editing
- commands. Ignore this signals, as the default handler assumes that the GtkTextView
- has a layout and this one does not.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::toggleOverwriteCallback): Added. Cancels the default handler.
- (WebKit::EditorClient::EditorClient): Attach a handler for toggle-overwrite.
-
-2010-09-14 Pavel Feldman <pfeldman@chromium.org>
-
- Reviewed by Yury Semikhatsky.
-
- Web Inspector: Provide network-based load timing.
- Before this change, inspector used timers taken from
- within WebCore notifications (that are by definition
- synchronous and serialized). As a result, timing was
- affected by the routines running on the main thread
- (JavaScript and such).
- https://bugs.webkit.org/show_bug.cgi?id=45664
-
- * webkit/webkitdownload.cpp:
- (DownloadClient::didFinishLoading):
-
-2010-09-15 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r67551.
- http://trac.webkit.org/changeset/67551
- https://bugs.webkit.org/show_bug.cgi?id=45816
-
- "Plugin tests fail" (Requested by yurys on #webkit).
-
- * webkit/webkitdownload.cpp:
- (DownloadClient::didFinishLoading):
-
-2010-09-14 Pavel Feldman <pfeldman@chromium.org>
-
- Reviewed by Yury Semikhatsky.
-
- Web Inspector: Provide network-based load timing.
- Before this change, inspector used timers taken from
- within WebCore notifications (that are by definition
- synchronous and serialized). As a result, timing was
- affected by the routines running on the main thread
- (JavaScript and such).
- https://bugs.webkit.org/show_bug.cgi?id=45664
-
- * webkit/webkitdownload.cpp:
- (DownloadClient::didFinishLoading):
-
-2010-09-13 Enrica Casucci <enrica@apple.com>
-
- Reviewed by Sam Weinig.
-
- Paste should be implemented in WebCore like Copy and Cut for Mac also.
- https://bugs.webkit.org/show_bug.cgi?id=45494
- <rdar://problem/7660537>
-
- On the Mac platform, the implementation of the paste operation is all done
- at the WebKit level. In order to support it on WebKit2 it is necessary to
- refactor the code and move this functionality at the level of WebCore like
- we already have on Windows.
- The original code relies on some in AppKit functions that call back into
- WebKit causing problems in WebKit2. All this functionality has been moved
- at the level of the editor client where it can be dealt with appropriately.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::canShowMIMETypeAsHTML): Added stub.
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2010-09-13 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Provide unit tests for AtkText's text selection functions
- https://bugs.webkit.org/show_bug.cgi?id=43919
-
- New tests to check getting, setting and removing text selections
-
- * tests/testatk.c:
- (testWekitAtkTextSelections): New unit tests to check all the text
- selection related functions altogether through a single test
- function.
- (main):
-
- Make sure that code dependant on getting information from the
- clipboard gets executed only when there's a GDK window associated
- to the webview widget, as that's not the case when executing the
- unit tests (the wedbview is not inside of any toplevel window) and
- will make the tests crash if not taken into account.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::respondToChangedSelection):
-
-2010-09-11 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] Make introspection work with g-o-i 0.9.5
- https://bugs.webkit.org/show_bug.cgi?id=45590
-
- Use new type syntax and bump version number of the gir file.
-
- * JSCore.gir.in:
-
-2010-09-10 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
-
- Reviewed by Darin Adler.
-
- Add NetworkingContext to avoid layer violations
- https://bugs.webkit.org/show_bug.cgi?id=42292
-
- * webkit/webkitdownload.cpp:
- (webkit_download_start):
- * webkit/webkitprivate.cpp:
- (currentToplevelCallback):
-
-2010-09-10 Sam Weinig <sam@webkit.org>
-
- Fix GTK build.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_set_full_content_zoom):
-
-2010-09-10 Sam Weinig <sam@webkit.org>
-
- Reviewed by Darin Adler.
-
- Remove unnecessary constraint in WebCore of choosing either text zoom or full page zoom.
- Precursor to <rdar://problem/7660657>
- https://bugs.webkit.org/show_bug.cgi?id=45522
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_zoom_level):
- (webkit_web_view_apply_zoom_level):
- (webkit_web_view_set_full_content_zoom):
-
-2010-09-10 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Fix warnings because of bad assignments in testatk.c
- https://bugs.webkit.org/show_bug.cgi?id=45538
-
- Use AtkObject and AtkText instances properly in the code.
-
- * tests/testatk.c:
- (testWebkitAtkListsOfItems):
-
-2010-09-10 Adam Barth <abarth@webkit.org>
-
- Reviewed by Darin Fisher.
-
- Move code from WebKit-layer to DocumentLoader
- https://bugs.webkit.org/show_bug.cgi?id=45569
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
-
-2010-09-10 Adam Barth <abarth@webkit.org>
-
- Reviewed by Eric Seidel.
-
- Main resource bytes shouldn't bounce through FrameLoader
- https://bugs.webkit.org/show_bug.cgi?id=45496
-
- Now return the bytes to the DocumentLoader.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
-
-2010-09-10 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Placement new / manual destructor invocation should be used on private GObject memory
- https://bugs.webkit.org/show_bug.cgi?id=45550
-
- GLib allocates and deallocates GObject private data structs itself. When
- those structs contain C++ members, their constructors and destructors are not
- called. This is not only dangerous, it makes RefPtr-type smart pointers much
- less useful. We can fix this problem by calling placement new on the private
- data struct during instance initialization and calling the destructor during
- finalization.
-
- This patch takes that approach and switches plain char* members of
- WebKitWebView (with manual memory allocation) to use CString.
-
- * webkit/webkitprivate.h: Switch char* members to CString.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_finalize): Manually call the destructor on the private
- data. Remove manual deallocation of members which are now CString.
- (webkit_web_view_query_tooltip): Update to reflect CString change.
- (webkit_web_view_init): Use placement new to initialize C++ members of
- the private data section.
- (webkit_web_view_get_encoding): Update to reflect CString change.
- (webkit_web_view_get_custom_encoding): Ditto.
- (webkit_web_view_add_resource): Ditto.
- (webkit_web_view_get_resource): Ditto.
- (webkit_web_view_clear_resources): Ditto.
- (webkit_web_view_set_tooltip_text): Ditto.
- (webkit_web_view_get_icon_uri): Ditto.
-
-2010-09-10 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Martin Robinson.
-
- [GTK] Google sites do not like WebKitGTK+
- https://bugs.webkit.org/show_bug.cgi?id=39617
-
- Special-case Google domains, and spoof User-Agent when talking to
- them, to stop being treated as a second-class citizen.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::initializeDomainsList):
- (WebKit::isGoogleDomain):
- (WebKit::FrameLoaderClient::userAgent): If enable-site-specific-quirks
- is enabled, send the standard WebKit User-Agent string, disregarding the
- custom one set by the browser for Google domains.
- * webkit/webkitprivate.h:
- * webkit/webkitwebsettings.cpp:
- (webkitPlatform): Fix style, and simplify.
- (webkitOSVersion): Ditto.
- (webkitUserAgent): Add the Version/x.y string Safari has been
- using since Safari 2.2.
-
-2010-09-10 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Fix compilation with GTK+ 3.x.
-
- GDK key macros were renamed from GDK_FOO to GDK_KEY_FOO, we need
- to include the compat header provided if we want to keep using the
- old names.
-
- * WebCoreSupport/FullscreenVideoController.cpp: include GtkVersioning.h
-
-2010-09-08 Darin Adler <darin@apple.com>
-
- Reviewed by Adam Barth.
-
- Move functions from Frame to Editor as planned
- https://bugs.webkit.org/show_bug.cgi?id=45218
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_set_highlight_text_matches):
- (webkit_web_view_get_selected_text):
- (webkit_web_view_set_editable):
- Changed call sites to use editor().
-
-2010-09-09 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [GTK] testmimehandling falsely succeeds testing Ogg mime type
- https://bugs.webkit.org/show_bug.cgi?id=45349
-
- Make this actually test an ogg file request instead of pdf and
- changed the expected result to match libsoup content-sniffing
- result in the case of ogg/vorbis file.
-
- * tests/testmimehandling.c:
- (mime_type_policy_decision_requested_cb):
- (test_mime_ogg):
-
-2010-09-08 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] A list item's number/bullet should not be a child of that list item
- https://bugs.webkit.org/show_bug.cgi?id=45190
-
- New unit test added.
-
- * tests/testatk.c:
- (testWebkitAtkListsOfItems): New test to check ordered/unordered
- list of items are properly exposed to AT technologies.
- (main):
-
-2010-09-07 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Fix some feature guards
- https://bugs.webkit.org/show_bug.cgi?id=45302
-
- * webkit/webkitprivate.h: Add ENABLE(VIDEO) guards for video specific members.
-
-2010-09-03 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
-
- Reviewed by Darin Adler.
-
- Add NetworkingContext to avoid layer violations
- https://bugs.webkit.org/show_bug.cgi?id=42292
-
- Add GTK's specific implementation of FrameNetworkingContext.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createNetworkingContext):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2010-09-03 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Dialog separators are gone in GTK+ 3.x.
-
- * webkit/webkitsoupauthdialog.c:
- (show_auth_dialog):
-
-2010-09-02 Yury Semikhatsky <yurys@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
- https://bugs.webkit.org/show_bug.cgi?id=44230
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::notifyWebViewDestroyed):
- (WebKit::InspectorFrontendClient::destroyInspectorWindow):
- (WebKit::InspectorFrontendClient::closeWindow):
- (WebKit::InspectorFrontendClient::disconnectFromBackend):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-08-31 Dave Hyatt <hyatt@apple.com>
-
- Reviewed by Sam Weinig.
-
- https://bugs.webkit.org/show_bug.cgi?id=44863, disentangle style recalc from layout, so that
- the former can occur in more places without having to do the latter.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_expose_event):
-
-2010-08-31 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Isolate all GTK+ typedefs into one file
- https://bugs.webkit.org/show_bug.cgi?id=44900
-
- * WebCoreSupport/EditorClientGtk.h: Remove GTK+ typedefs.
- * WebCoreSupport/FullscreenVideoController.h: Ditto.
-
-2010-08-31 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- Preparations for the 1.3.4 release.
-
- * NEWS:
- * docs/webkitgtk-docs.sgml:
-
-2010-08-31 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Minor documentation typo fix.
-
- * webkit/webkitwebview.cpp:
-
-2010-08-30 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Martin Robinson.
-
- [Gtk] gdk_display_get_core_pointer and gdk_device_get_core_pointer
- are deprecated
- https://bugs.webkit.org/show_bug.cgi?id=44787
-
- We have replaced GtkVersioning.cpp with GtkVersioning.c and
- created a function (getDefaultGDKPointerDevice) to get the pointer
- of the window with the new APIs. We added that function to DRT and
- copyandpaste unit test.
-
- * tests/testcopyandpaste.c:
- (runPasteTestCallback):
-
-2010-08-30 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r66198.
- http://trac.webkit.org/changeset/66198
- https://bugs.webkit.org/show_bug.cgi?id=44856
-
- It made tests crash on Qt bot (Requested by Ossy_ on #webkit).
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::notifyWebViewDestroyed):
- (WebKit::InspectorFrontendClient::destroyInspectorWindow):
- (WebKit::InspectorFrontendClient::closeWindow):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-08-27 Yury Semikhatsky <yurys@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
- https://bugs.webkit.org/show_bug.cgi?id=44230
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::notifyWebViewDestroyed):
- (WebKit::InspectorFrontendClient::destroyInspectorWindow):
- (WebKit::InspectorFrontendClient::closeWindow):
- (WebKit::InspectorFrontendClient::disconnectFromBackend):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-08-26 Yury Semikhatsky <yurys@chromium.org>
-
- Unreviewed. Revert r66103 since Qt tests are failing.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::notifyWebViewDestroyed):
- (WebKit::InspectorFrontendClient::destroyInspectorWindow):
- (WebKit::InspectorFrontendClient::closeWindow):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-08-26 Yury Semikhatsky <yurys@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
- https://bugs.webkit.org/show_bug.cgi?id=44230
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::notifyWebViewDestroyed):
- (WebKit::InspectorFrontendClient::destroyInspectorWindow):
- (WebKit::InspectorFrontendClient::closeWindow):
- (WebKit::InspectorFrontendClient::disconnectFromBackend):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-08-26 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Martin Robinson.
-
- [GTK] WebKitGTK+ needs proper introspection annotation for most types and methods
- https://bugs.webkit.org/show_bug.cgi?id=44565
-
- Add documentation and introspection specific information to a few
- getter and setter methods.
-
- * webkit/webkitwebview.cpp:
-
-2010-08-25 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- confirm dialog should show OK/Cancel instead of Yes/No for consistency
- https://bugs.webkit.org/show_bug.cgi?id=32877
-
- Change the button labels for the fallback confirmation dialog to be
- OK and Cancel.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_script_dialog):
-
-2010-08-25 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- Cairo and EFL port shouldn't depend on glib.
- https://bugs.webkit.org/show_bug.cgi?id=44354
-
- Replace occurrences of GRefPtr and adoptGRef with PlatformRefPtr and
- adoptPlatformRef.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::requestGeolocationPermissionForFrame):
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag):
- * WebCoreSupport/EditorClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchWillSendRequest):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType):
- (WebKit::FrameLoaderClient::createPlugin):
- * WebCoreSupport/FullscreenVideoController.h:
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::populateSetting):
- (WebKit::InspectorClient::storeSetting):
- * webkit/webkitdownload.cpp:
- (webkit_download_error):
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_new_with_core_request):
- * webkit/webkitnetworkresponse.cpp:
- (webkit_network_response_new_with_core_response):
-
-2010-08-24 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Martin Robinson.
-
- Set a device to the event struct when building with GTK+ 3.x, it's
- mandatory.
-
- * tests/testcopyandpaste.c:
- (runPasteTestCallback):
-
-2010-08-24 Martin Robinson <mrobinson@igalia.com>
-
- Build fix for GTK+.
-
- * tests/testkeyevents.c:
- (key_press_event_cb):
- (key_release_event_cb):
-
-2010-08-24 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] GTK3: EventSender and API tests should use gdk_event_new when synthesizing events
- https://bugs.webkit.org/show_bug.cgi?id=44534
-
- Fix an issue where a GdkEvent* is treated like a GdkEvent.
-
- * tests/testkeyevents.c:
- (key_press_event_cb):
- (key_release_event_cb):
-
-2010-08-24 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] GTK3: EventSender and API tests should use gdk_event_new when synthesizing events
- https://bugs.webkit.org/show_bug.cgi?id=44534
-
- * tests/testcopyandpaste.c:
- (runPasteTestCallback): Switch to using gdk_event_new and also reference the GdkWindow.
- when setting it on the event. It is dereferenced by gdk_event_free(...).
- * tests/testhittestresult.c:
- (load_status_cb): Switch to using gdk_event_new.
-
-2010-08-24 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Xan Lopez.
-
- Do not initialize the GSettings object in webkit_init - the other
- call sites are always called in the main thread so this is
- unnecessary.
-
- * webkit/webkitprivate.cpp:
- (webkit_init):
-
-2010-08-20 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Pavel Feldman.
-
- Web Inspector: Inspector tests were disabled for GTK.
- https://bugs.webkit.org/show_bug.cgi?id=43977
-
- Allow setting the inspector resources path via an environment variables
- and add a method, inspectorFilesPath, to the WebKit InspectorClient that
- encapsulates this logic.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend): Use the new inspectorFilesPath method to
- get the path to the resource.
- (WebKit::InspectorClient::inspectorFilesPath): Added.
- (WebKit::InspectorFrontendClient::localizedStringsURL): Use inspectorFilesPath method.
- * WebCoreSupport/InspectorClientGtk.h: Add method and member variables for caching the result.
-
-2010-08-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Kenneth Rohde Christiansen.
-
- [Gtk] Enable view mode media feature layout test
- https://bugs.webkit.org/show_bug.cgi?id=43278
-
- Add the view-mode property, to control the WebCore page's viewMode.
-
- * docs/webkitgtk-sections.txt:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_property):
- (webkit_web_view_set_property):
- (webkit_web_view_class_init):
- (webkit_web_view_set_view_mode):
- (webkit_web_view_get_view_mode):
- * webkit/webkitwebview.h:
-
-2010-08-19 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GStreamer] GTK XOverlay support in GStreamerGWorld
- https://bugs.webkit.org/show_bug.cgi?id=39474
-
- New FullscreenVideoController object, private in the webview. It
- is created when the user presses the fullscreen button of the
- video controls. Video is displayed in fullscreen, controls are
- displayed when the user moves the mouse and when the video is
- paused. There's also basic keyboard shortcuts support: F/f to
- leave fullscreen, space to toggle play/pause and up/down to
- control volume.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::supportsFullscreenForNode):
- (WebKit::ChromeClient::enterFullscreenForNode):
- (WebKit::ChromeClient::exitFullscreenForNode):
- * WebCoreSupport/ChromeClientGtk.h:
- * WebCoreSupport/FullscreenVideoController.cpp: Added.
- (hideHudCallback):
- (onFullscreenGtkMotionNotifyEvent):
- (onFullscreenGtkActiveNotification):
- (onFullscreenGtkConfigureEvent):
- (onFullscreenGtkDestroy):
- (togglePlayPauseActivated):
- (exitFullscreenActivated):
- (progressBarUpdateCallback):
- (timeScaleButtonPressed):
- (timeScaleButtonReleased):
- (timeScaleValueChanged):
- (volumeValueChanged):
- (playerVolumeChangedCallback):
- (playerMuteChangedCallback):
- (FullscreenVideoController::FullscreenVideoController):
- (FullscreenVideoController::~FullscreenVideoController):
- (FullscreenVideoController::setMediaElement):
- (FullscreenVideoController::gtkConfigure):
- (FullscreenVideoController::showHud):
- (FullscreenVideoController::hideHud):
- (onFullscreenGtkKeyPressEvent):
- (FullscreenVideoController::enterFullscreen):
- (FullscreenVideoController::updateHudPosition):
- (FullscreenVideoController::exitOnUserRequest):
- (FullscreenVideoController::exitFullscreen):
- (FullscreenVideoController::canPlay):
- (FullscreenVideoController::play):
- (FullscreenVideoController::pause):
- (FullscreenVideoController::playStateChanged):
- (FullscreenVideoController::togglePlay):
- (FullscreenVideoController::volume):
- (FullscreenVideoController::muted):
- (FullscreenVideoController::setVolume):
- (FullscreenVideoController::volumeChanged):
- (FullscreenVideoController::muteChanged):
- (FullscreenVideoController::currentTime):
- (FullscreenVideoController::setCurrentTime):
- (FullscreenVideoController::duration):
- (FullscreenVideoController::percentLoaded):
- (FullscreenVideoController::beginSeek):
- (FullscreenVideoController::doSeek):
- (FullscreenVideoController::endSeek):
- (timeToString):
- (FullscreenVideoController::updateHudProgressBar):
- (FullscreenVideoController::createHud):
- * WebCoreSupport/FullscreenVideoController.h: Added.
- (FullscreenVideoController::mediaElement):
- * webkit/webkitprivate.cpp:
- (webkit_web_view_enter_fullscreen):
- (webkit_web_view_exit_fullscreen):
- * webkit/webkitprivate.h:
-
-2010-08-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] WebBackForwardList's new_with_web_view should not be public
- https://bugs.webkit.org/show_bug.cgi?id=43802
-
- Deprecate the constructor. The introspection annotation has been
- fixed in a previous commit.
-
- * webkit/webkitwebbackforwardlist.cpp:
-
-2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>
-
- Reviewed by Yury Semikhatsky.
-
- Web Inspector: replace hand written InspectorBackendStub.js with generated one.
- https://bugs.webkit.org/show_bug.cgi?id=43791
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend):
-
-2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r65595.
- http://trac.webkit.org/changeset/65595
- https://bugs.webkit.org/show_bug.cgi?id=44161
-
- qt build failed (Requested by loislo on #webkit).
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend):
-
-2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>
-
- Reviewed by Yury Semikhatsky.
-
- Web Inspector: replace hand written InspectorBackendStub.js by generated one.
- https://bugs.webkit.org/show_bug.cgi?id=43791
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend):
-
-2010-08-17 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Fix the builds when HAVE_GSETTINGS is defined.
-
- * webkit/webkitprivate.cpp:
- (isSchemaAvailable):
- (inspectorGSettings):
-
-2010-08-17 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
-
- Reviewed by Darin Adler.
-
- Add NetworkingContext to avoid layer violations
- https://bugs.webkit.org/show_bug.cgi?id=42292
-
- Preparation: Just add the files to the build system.
-
- * WebCoreSupport/FrameNetworkingContextGtk.h: Added.
- Placeholder with tentative code that might be changed when landing
- the rest of it.
-
-2010-08-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- WebBackForwardList.get_{back|forward}_list_with_limit not introspectable
- https://bugs.webkit.org/show_bug.cgi?id=43054
-
- Annotate WebKitWebBackForwardList and the function that is used to fetch it from
- the WebKitWebView. More will follow.
-
- * webkit/webkitwebbackforwardlist.cpp: Annotations, and small
- improvements to the docs.
- * webkit/webkitwebbackforwardlist.h: Couple empty lines missing.
- * webkit/webkitwebview.cpp:
-
-2010-08-17 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Clean up WebCore/platform/graphics/gtk/ImageGtk.cpp
- https://bugs.webkit.org/show_bug.cgi?id=44069
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend): Switched to using the new WEBKITGTK_API_VERSION_STRING define.
- * webkit/webkitprivate.cpp:
- (inspectorGSettings): Ditto.
-
-2010-08-17 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r65500.
- http://trac.webkit.org/changeset/65500
- https://bugs.webkit.org/show_bug.cgi?id=44108
-
- Qt bots failed to compile. (Requested by loislo on #webkit).
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend):
-
-2010-08-17 Ilya Tikhonovsky <loislo@chromium.org>
-
- Reviewed by Yury Semikhatsky.
-
- Web Inspector: replace hand written InspectorBackendStub.js by generated one.
- https://bugs.webkit.org/show_bug.cgi?id=43791
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend):
-
-2010-08-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] GSettings support adds annoying warnings on systems with older glib versions
- https://bugs.webkit.org/show_bug.cgi?id=44056
-
- Use #ifdef instead of #if for HAVE_GSETTINGS to avoid warnings
- when it is not defined.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- * webkit/webkitprivate.cpp:
- (webkit_init):
- * webkit/webkitprivate.h:
-
-2010-08-12 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Really add a missing file. I wish I would remember running git add
- on them after applying a patch =(.
-
- * org.webkitgtk.gschema.xml.in: Added.
-
-2010-08-12 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Use GSettings to save/restore Web Inspector settings
- https://bugs.webkit.org/show_bug.cgi?id=43512
-
- Use GSettings to save/restore settings used by the Web Inspector.
- A few helper functions were added to have settings that use
- boolean values be actual booleans, and also to conform with the
- GSettings naming requirements for keys.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::toGSettingName):
- (WebKit::truthStringFromVariant):
- (WebKit::variantFromTruthString):
- (WebKit::InspectorClient::populateSetting):
- (WebKit::InspectorClient::storeSetting):
- * org.webkit.gtk.gschema.xml: Added.
- * webkit/webkitprivate.cpp:
- (inspectorGSettings):
- (webkit_init):
- * webkit/webkitprivate.h:
-
-2010-08-11 Joone Hur <joone@kldp.org>
-
- Reviewed by Martin Robinson.
-
- [GTK] Last Hangul letter is typed again when a composition is finished with mouse press
- https://bugs.webkit.org/show_bug.cgi?id=40518
-
- When a mouse press fires during a IME composition, the current composition character
- can be entered twice at the previous editing position and a new editing position.
- Because the IME commit signal is emitted after the mouse press event.
- This patch allows to prevent the commit signal during a composition when a mouse press fires.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted):
- (WebKit::EditorClient::handleInputMethodKeydown): Allow to accept the next composition commit.
- (WebKit::EditorClient::handleInputMethodMousePress): Added for handling IME when a mouse press fires.
- (WebKit::EditorClient::EditorClient): Initialize m_preventNextCompositionCommit
- * WebCoreSupport/EditorClientGtk.h:
- (WebKit::EditorClient::preventNextCompositionCommit): Added for checking whether skipping a commit.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_press_event): Call handleInputMethodMousePress()
-
-2010-08-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- Small improvement to the documentation of the geolocation-policy-decision-requested
- signal, stating more clearly what is expected from the handler.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2010-08-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Martin Robinson.
-
- [GTK] Geolocation policy decision object leaking
- https://bugs.webkit.org/show_bug.cgi?id=43884
-
- Use GRefPtr on the policy decision object to fix the leak.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::requestGeolocationPermissionForFrame):
-
-2010-08-10 Chris Marrin <cmarrin@apple.com>
-
- Reviewed by Oliver Hunt.
-
- Add suspendAnimations/resumeAnimation API to DRT
- https://bugs.webkit.org/show_bug.cgi?id=43733
-
- Gtk specific API.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_suspend_animations):
- (webkit_web_frame_resume_animations):
-
-2010-08-10 Gavin Barraclough <barraclough@apple.com>
-
- Rubber stamped by Sam Weinig.
-
- Bug 43786 - Move AtomicStringHash from WebCore to WTF
- Also remove deprecated string headers from WebCore/platform/text.
-
- * gdom/ConvertToGCharPrivate.h:
-
-2010-08-06 Gavin Barraclough <barraclough@apple.com>
-
- Rubber stamped by Sam Weinig
-
- Bug 43594 - Add string forwards to Forward.h
- This allows us to remove forward declarations for these classes from
- WebCore/WebKit (a step in moving these class from WebCore:: to WTF::).
-
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-08-09 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [gtk] gtk_im_context_focus_in() should only be called when an input-able element has focus
- https://bugs.webkit.org/show_bug.cgi?id=43602
-
- Only call gtk_im_context_focus_in() when we focus a frame which is currently in
- an editable node.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_focus_in_event): Conditionalize call to gtk_im_context_focus_in().
-
-2010-08-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Use the new paths, and also fix the path for localizedStrings.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend):
- (WebKit::InspectorFrontendClient::localizedStringsURL):
-
-2010-08-06 Jessie Berlin <jberlin@apple.com>
-
- Roll out http://trac.webkit.org/changeset/64801, which broke the Safari Windows Build.
- Unreviewed.
-
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-08-05 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Use correct path for Inspector data files in GTK+3.x builds
- https://bugs.webkit.org/show_bug.cgi?id=43445
-
- Use the right data path for inspector files when building with
- GTK+ 3.x.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::openInspectorFrontend):
-
-2010-08-03 Daniel Bates <dbates@rim.com>
-
- Fix misspelled word 'teh' in the description of the XSS Auditor setting.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
-
-2010-08-03 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Fix DOM event dispatch
- https://bugs.webkit.org/show_bug.cgi?id=40847
-
- Test DOM event dispatch.
-
- * tests/testdomdomwindow.c:
- (load_event_callback):
- (test_dom_domview_signals):
- (clicked_cb):
- (load_status_callback):
- (test_dom_domview_dispatch_event):
- (main):
-
-2010-08-03 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] Does not paint the node highlight used by the inspector
- https://bugs.webkit.org/show_bug.cgi?id=43429
-
- Implement highlighting the nodes when using the inspector.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::highlight):
- (WebKit::InspectorClient::hideHighlight):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_expose_event):
-
-2010-08-03 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update unit tests now that string parameters are 'const char*'.
-
- * tests/testdomdocument.c:
- (test_dom_document_title):
- (test_dom_document_get_elements_by_tag_name):
- (test_dom_document_get_elements_by_class_name):
- (test_dom_document_get_element_by_id):
- * tests/testdomnode.c:
- (test_dom_node_insertion):
-
-2010-08-02 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] DRT implement execCommand()
- https://bugs.webkit.org/show_bug.cgi?id=35351
-
- * webkit/webkitprivate.h: Add some private methods for the DRT which enable
- LayoutTestController.execCommand and LayoutTestController.isCommandEnabled:
- webkit_web_view_execute_core_command_by_name and webkit_web_view_is_command_enabled.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_execute_core_command_by_name): added.
- (webkit_web_view_is_command_enabled): Added.
-
-2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>
-
- Reviewed by Darin Fisher.
-
- PopupMenu refactoring in preparation to WebKit2
- https://bugs.webkit.org/show_bug.cgi?id=42592
-
- As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
- instances, concrete classes that inherit from ChromeClient needed to be changed to
- implement the new methods.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::selectItemWritingDirectionIsNatural):
- (WebKit::ChromeClient::createPopupMenu):
- (WebKit::ChromeClient::createSearchPopupMenu):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-08-02 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Create a frame-created signal
- https://bugs.webkit.org/show_bug.cgi?id=43284
-
- Add a frame-created signal, which will allow developers to track
- the beginning of a frame lifecycle and attach signal handlers to
- all new frames.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame): Emit the frame-created signal.
- * tests/testwebframe.c: Add a test which verifies that the correct number of
- frame-created signals is fired when a page with iframes loads.
- (createFrameSignalTestFrameCreatedCallback): Added.
- (createFrameSignalTestTimeout): Added.
- (test_webkit_web_frame_created_signal): Added.
- (main): Add a reference to the new test.
- * webkit/webkitprivate.h: De-normalize webkit_web_frame_init_with_web_view into
- the one place that it is used, so that the frame-created signal may be fired there.
- * webkit/webkitwebframe.cpp: Remove webkit_web_frame_init_with_web_view.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init): Add the frame-created signal declaration.
-
-2010-08-02 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Chris Fleizach.
-
- [GTK] Implement support for get_character_extents and get_range_extents
- https://bugs.webkit.org/show_bug.cgi?id=25677
-
- Added new unit tests to check get_character_extents and
- get_range_extents functions for the ATK_TEXT interface
-
- Based on a previous patch by Joanmarie Diggs.
-
- * tests/testatk.c:
- (test_webkit_atk_get_extents):
- (main):
-
-2010-08-02 Jeremy Orlow <jorlow@chromium.org>
-
- Speculative revert of 64425 due to Chromium instability
- https://bugs.webkit.org/show_bug.cgi?id=43347
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>
-
- Reviewed by Darin Fisher.
-
- PopupMenu refactoring in preparation to WebKit2
- https://bugs.webkit.org/show_bug.cgi?id=42592
-
- As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
- instances, concrete classes that inherit from ChromeClient needed to be changed to
- implement the new methods.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::selectItemWritingDirectionIsNatural):
- (WebKit::ChromeClient::createPopupMenu):
- (WebKit::ChromeClient::createSearchPopupMenu):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r64422.
- http://trac.webkit.org/changeset/64422
- https://bugs.webkit.org/show_bug.cgi?id=43304
-
- Build fixes are needed for Snow Leopard and Windows.
- (Requested by lca on #webkit).
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>
-
- Reviewed by Darin Fisher.
-
- PopupMenu refactoring in preparation to WebKit2
- https://bugs.webkit.org/show_bug.cgi?id=42592
-
- As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
- instances, concrete classes that inherit from ChromeClient needed to be changed to
- implement the new methods.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::selectItemWritingDirectionIsNatural):
- (WebKit::ChromeClient::createPopupMenu):
- (WebKit::ChromeClient::createSearchPopupMenu):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-07-30 Joseph Pecoraro <joepeck@webkit.org>
-
- Reviewed by David Kilzer.
-
- Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
- https://bugs.webkit.org/show_bug.cgi?id=40627
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::reachedApplicationCacheOriginQuota):
- * WebCoreSupport/ChromeClientGtk.h:
-2010-07-26 Steve Block <steveblock@google.com>
-
- Reviewed by Jeremy Orlow.
-
- Page clients should be passed to Page constructor via structure of pointers
- https://bugs.webkit.org/show_bug.cgi?id=42834
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2010-07-16 Zhe Su <suzhe@chromium.org>
-
- Reviewed by Darin Adler.
-
- REGRESSION(r61484): Broke focus behaviour on Qt and probably other platforms
- https://bugs.webkit.org/show_bug.cgi?id=42253
-
- Dummy implementation of EditorClient::willSetInputMethodState.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::willSetInputMethodState):
- * WebCoreSupport/EditorClientGtk.h:
-
-2010-07-16 Nate Chapin <japhet@chromium.org>
-
- Reviewed by Darin Fisher.
-
- Uncomment an assert that broke due to r63100.
-
- https://bugs.webkit.org/show_bug.cgi?id=42298
-
- * tests/testwebview.c:
-
-2010-07-14 Sam Weinig <sam@webkit.org>
-
- Reviewed by Darin Adler.
-
- Patch for https://bugs.webkit.org/show_bug.cgi?id=42232
- Make changing Cursors work in WebKit2.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::setCursor):
- * WebCoreSupport/ChromeClientGtk.h:
- Change prototype to match new one.
-
-2010-07-12 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] r63100 broke the testwebview test
- https://bugs.webkit.org/show_bug.cgi?id=42114
-
- * tests/testwebview.c: Disable a failing assertion in test_webkit_web_view_adjustments
- until we can get to the bottom of the failure.
-
-2010-07-12 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update for 1.3.3
-
- * NEWS:
-
-2010-07-12 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Fix compilation with sealed GTK+.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_drag_motion):
- (webkit_web_view_drag_data_received):
- (webkit_web_view_drag_drop):
-
-2010-07-11 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] WebKitWebView should support drops
- https://bugs.webkit.org/show_bug.cgi?id=39843
-
- Add support for dropping content onto GTK+ WebViews.
-
- * webkit/webkitprivate.h:
- Add a DroppingContext struct to keep track of drop data while the drop is
- in progress. Have WebKitWebView keep a map of GdkDragContexts to DroppingContexts.
- * webkit/webkitwebview.cpp: Add necessary includes and globalPointForClientPoint helper.
- (webkit_web_view_popup_menu_handler): Use globalPointForClientPoint helper.
- (webkit_web_view_dispose): Properly clean up droppingContexts member.
- (webkit_web_view_finalize): Delete droppingContext member.
- (globalPointForClientPoint): Added.
- (doDragLeaveLater): Added.
- (webkit_web_view_drag_leave): Added.
- (webkit_web_view_drag_motion): Added.
- (webkit_web_view_drag_data_received): Added.
- (webkit_web_view_drag_drop): Added.
- (webkit_web_view_class_init): Connect new drop signal handlers to the widget definition.
- (webkit_web_view_init): Set up the widget as a drop destination and initialize droppingContexts.
-
-2010-07-07 Sam Weinig <sam@webkit.org>
-
- Reviewed by Anders Carlsson.
-
- Patch for https://bugs.webkit.org/show_bug.cgi?id=41772
- Add basic piping for BackForwardControllerClient.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2010-06-19 Ilya Tikhonovsky <loislo@chromium.org>
-
- Reviewed by Yury Semikhatsky.
-
- WebInspector: js function name was fixed.
- dispatchMessageToFrontend -> dispatchMessageFromBackend.
- https://bugs.webkit.org/show_bug.cgi?id=40675
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::sendMessageToFrontend):
-
-2010-06-23 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Separate DerivedSources per-project
- https://bugs.webkit.org/show_bug.cgi?id=41109
-
- Separate WebKitGTK+ DerivedSources into per-project subdirectories to prepare
- for properly building WebKit2.
-
- * webkitmarshal.list: Touch this file to force a rebuild of the marshaling code.
-
-2010-07-01 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Stop using GdkRegion in 3.x mode
- https://bugs.webkit.org/show_bug.cgi?id=41463
-
- Make us compile without using GdkRegion, since it's gone from GTK+
- 3.x.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::scroll):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_expose_event):
-
-2010-07-01 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Convert WebKitWebView's private draggingDataObjects member to a pointer
- https://bugs.webkit.org/show_bug.cgi?id=40333
-
- Convert draggingDataObjects to a pointer. The constructor and destructor of the
- HashMap should be called explicitly. GObject memory allocation does not do this.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_dispose):
- (webkit_web_view_drag_end):
- (webkit_web_view_drag_data_get):
- (webkit_web_view_init):
-
-2010-06-30 Martin Robinson <mrobinson@igalia.com>
-
- Unreviewed, rolling out r62226.
- http://trac.webkit.org/changeset/62226
- https://bugs.webkit.org/show_bug.cgi?id=40333
-
- This change caused 13 new crashers.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_dispose):
- (webkit_web_view_drag_end):
- (webkit_web_view_drag_data_get):
- (webkit_web_view_init):
-
-2010-06-30 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Convert WebKitWebView's private draggingDataObjects member to a pointer
- https://bugs.webkit.org/show_bug.cgi?id=40333
-
- Convert draggingDataObjects to a pointer. The constructor and destructor of the
- HashMap should be called explicitly. GObject memory allocation does not do this.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_dispose):
- (webkit_web_view_drag_end):
- (webkit_web_view_drag_data_get):
- (webkit_web_view_init):
-
-2010-06-30 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Unit test for DOM insertion methods
- https://bugs.webkit.org/show_bug.cgi?id=40495
-
- Add unit test for webkit_dom_node_remove_child.
-
- * tests/testdomnode.c:
- (test_dom_node_insertion):
-
-2010-06-30 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Unit test for DOM insertion methods
- https://bugs.webkit.org/show_bug.cgi?id=40495
-
- Add unit tests for node insertion and replacement methods.
-
- * tests/testdomnode.c:
- (test_dom_node_insertion):
- (main):
-
-2010-06-30 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Random failure on 'testdownload' unit test
- https://bugs.webkit.org/show_bug.cgi?id=38256
-
- Make sure the set_filename function is called after handling the
- 'download-requested' signal for the asynchronous test. This change
- is needed because it could happen, with the current code, that the
- set_filename () function got called too early in the mainloop,
- therefore screwing the tests because the 'theDownload' global
- variable wouldn't be properly set yet.
-
- With this modification we ensure the set_filename() function gets
- called always after handling the download-requested signal,
- therefore avoiding potentialproblems.
-
- * tests/testdownload.c:
- (set_filename):
- (handle_download_requested_cb):
- (download_requested_cb):
- (download_requested_asynch_cb):
- (test_webkit_download_perform):
-
-2010-06-30 José Millán Soto <jmillan@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Text attributes not exposed
- https://bugs.webkit.org/show_bug.cgi?id=25528
-
- Added new tests for accessible text attributes
-
- * tests/testatk.c:
- (compAtkAttribute):
- (compAtkAttributeName):
- (atkAttributeSetAttributeHasValue):
- (atkAttributeSetAreEqual):
- (testWebkitAtkTextAttributes):
- (main):
-
-2010-06-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update for 1.3.2.
-
- * NEWS:
-
-2010-06-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Does not compile with -DGSEAL_ENABLE
- https://bugs.webkit.org/show_bug.cgi?id=37851
-
- Fix build with GSEAL enabled.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
- * webkit/webkitsoupauthdialog.c:
- (show_auth_dialog):
-
-2010-06-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Add support for GTK+3
- https://bugs.webkit.org/show_bug.cgi?id=41253
-
- Adapt build system to 3.x support, allow the JSCore gir and webkit
- pc files to be configurable at build time for different API
- versions.
-
- * JSCore-1.0.gir: Removed.
- * JSCore.gir.in: Added.
- * docs/GNUmakefile.am:
- * webkit.pc.in:
-
-2010-06-25 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Implement atk_table_get_column_header
- https://bugs.webkit.org/show_bug.cgi?id=30896
-
- Replace g_timeout_add() with g_idle_add().
-
- * tests/testatk.c:
- (test_webkit_atk_get_text_at_offset_forms):
- (test_webkit_atk_get_text_at_offset):
- (test_webkit_atk_get_text_at_offset_newlines):
- (test_webkit_atk_get_text_at_offset_textarea):
- (test_webkit_atk_get_text_at_offset_text_input):
- (testWebkitAtkGetTextInParagraphAndBodySimple):
- (testWebkitAtkGetTextInParagraphAndBodyModerate):
- (testWebkitAtkGetTextInTable):
- (testWebkitAtkGetHeadersInTable):
-
-2010-06-25 Mario Sanchez Prada <msanchez@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Implement atk_table_get_column_header
- https://bugs.webkit.org/show_bug.cgi?id=30896
-
- Added new test to check whether the implementation of
- get_column_headers() and get_row_headers() works ok.
-
- * tests/testatk.c:
- (testWebkitAtkGetHeadersInTable):
- (main):
-
-2010-06-25 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Pasteboard code does not take into account the nil character when getting and setting markup/netscape-url data
- https://bugs.webkit.org/show_bug.cgi?id=41221
-
- Add a test for this issue which simulates a paste keyboard event into an editable
- body. The pasteboard should contain a markup portion containing a null terminator.
-
- * tests/testcopyandpaste.c:
- (test_info_new):
- (test_info_destroy):
- (load_status_cb):
- (runPasteTestCallback):
- (window_object_cleared_callback):
- (pasting_test_get_data_callback):
- (pasting_test_clear_data_callback):
- (test_pasting_markup):
- (main):
-
-2010-06-24 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Cannot change the selection via the keyboard
- https://bugs.webkit.org/show_bug.cgi?id=41162
-
- Fix issue where the selection could not be extended via the keyboard by
- adjusting the logic guarding against inserting text in non-editable nodes.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeyboardEvent):
- Allow editor commands that do not insert text in non-editable nodes. This
- fixes keyboard selection extension in non-editable nodes. Move the existing
- check to after the execution of any editor commands.
-
-2010-06-15 Dumitru Daniliuc <dumi@chromium.org>
-
- Reviewed by Adam Barth.
-
- Move isAvailable()/setIsAvailable() from Database/DatabaseSync to AbstractDatabase.
- https://bugs.webkit.org/show_bug.cgi?id=39041
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
- (webkit_get_cache_model):
-
-2010-06-16 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Remove the abuse of GDK_CURRENT_TIME in the DRT
- https://bugs.webkit.org/show_bug.cgi?id=40600
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag): Reset the click count after a drag starts.
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::postCommitFrameViewSetup): Reset the click count after a load is committed.
- * webkit/webkitprivate.h: Move static click counting variables to be per-view.
- * webkit/webkitwebview.cpp:
- (getEventTime): Added.
- (webkit_web_view_button_press_event): If the event time is zero, use the current time.
- (webkit_web_view_finalize): Clean up click counting member.
- (webkit_web_view_init): Initialize click counting member.
-
-2010-06-15 Xan Lopez <xlopez@igalia.com>
-
- Fix compilation with older GTK+.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::pageRect):
-
-2010-06-15 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Does not compile with -DGSEAL_ENABLE
- https://bugs.webkit.org/show_bug.cgi?id=37851
-
- Fix compilation with GSEAL_ENABLE.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::pageRect):
- (WebKit::ChromeClient::contentsSizeChanged):
- * tests/testdomnode.c:
- (test_dom_node_insertion):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_realize):
- (webkit_web_view_script_dialog):
- (webkit_web_view_drag_end):
- (webkit_web_view_init):
-
-2010-06-14 Ilya Tikhonovsky <loislo@chromium.org>
-
- Unreviewed build fix.
-
- This is a fix for flaky inspector tests at gtk-debug bots.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorFrontendClient::destroyInspectorWindow):
-
-2010-06-14 Ilya Tikhonovsky <loislo@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
- data from inspected page to WebInspector as JSON string via http. The native
- serialization to JSON string is supported by InspectorValue's classes. This patch
- has the implementation of sendMessageToFrontend function. WebKit version of it still
- uses ScriptFunctionCall and will be switched to another transport a little bit later.
- https://bugs.webkit.org/show_bug.cgi?id=40134
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::releaseFrontendPage):
- (WebKit::InspectorClient::sendMessageToFrontend):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-06-10 Eric Seidel <eric@webkit.org>
-
- Reviewed by Adam Barth.
-
- Reduce FrameView.h includes to speed up build times
- https://bugs.webkit.org/show_bug.cgi?id=40408
-
- * webkit/webkitwebinspector.cpp:
- - Include RenderLayer.h
-
-2010-06-09 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r60889.
- http://trac.webkit.org/changeset/60889
- https://bugs.webkit.org/show_bug.cgi?id=40365
-
- gtk bot has some kind of memory corruption (Requested by
- loislo on #webkit).
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::InspectorClient):
- (WebKit::InspectorClient::openInspectorFrontend):
- (WebKit::InspectorFrontendClient::InspectorFrontendClient):
- (WebKit::InspectorFrontendClient::destroyInspectorWindow):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-06-07 Ilya Tikhonovsky <loislo@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
- data from inspected page to WebInspector as JSON string via http. The native
- serialization to JSON string is supported by InspectorValue's classes. This patch
- has the implementation of sendMessageToFrontend function. WebKit version of it still
- uses ScriptFunctionCall and will be switched to another transport a little bit later.
- https://bugs.webkit.org/show_bug.cgi?id=40134
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::releaseFrontendPage):
- (WebKit::InspectorClient::sendMessageToFrontend):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-06-08 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Unit testing for WebKitDOMNode hierarchy walk
- https://bugs.webkit.org/show_bug.cgi?id=40171
-
- Add some DOM node unit testing.
-
- * tests/testdomnode.c: Added.
- (finish_loading):
- (dom_node_fixture_setup):
- (dom_node_fixture_teardown):
- (test_dom_node_hierarchy_navigation):
- (main):
-
-2010-06-08 Antonio Gomes <tonikitoo@webkit.org>
-
- Reviewed by Ojan Vafai and Darin Adler.
-
- Refactor platform dependent editing behavior code out of Settings
- https://bugs.webkit.org/show_bug.cgi?id=39854
-
- EditingBehavior enum was renamed to EditingBehaviorTypes and moved out from Settings.h to
- EditingBehaviorTypes.h . Call sites in WebKit/ adjusted accordingly.
-
- * webkit/webkitprivate.cpp:
- (WebKit::core):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2010-06-08 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Add inner-node property to WebKitHitTestResult
- https://bugs.webkit.org/show_bug.cgi?id=40131
-
- Add a 'inner-node' property to WebKitHitTestResult, carrying the
- DOM node where the hit test happened.
-
- * tests/testhittestresult.c:
- (load_status_cb):
- * webkit/webkithittestresult.cpp:
- (webkit_hit_test_result_get_property):
- (webkit_hit_test_result_set_property):
- (webkit_hit_test_result_class_init):
- * webkit/webkitprivate.cpp:
- (WebKit::kit):
-
-2010-06-07 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] gtk_widget_get_window should replace widget->window
- https://bugs.webkit.org/show_bug.cgi?id=40180
-
- Replace uses of widget->window with gtk_widget_get_window.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::invalidateContentsAndWindow): Replace widget->window uses.
- (WebKit::ChromeClient::scroll): Ditto.
- (WebKit::widgetScreenPosition): Ditto.
- * WebCoreSupport/DragClientGtk.cpp: Move gtk_widget_get_window define to GtkVersioning.h.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_popup_menu_handler): Replace widget->window uses.
- (webkit_web_view_button_press_event): Ditto.
-
-2010-06-04 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Drag gesture can take mouse grab indefinitely
- https://bugs.webkit.org/show_bug.cgi?id=32840
-
- Initiate drag events with the current GTK+ event instead of synthesizing
- an event. Something about synthesized events is causing a drag freeze in
- certain situations.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag): Start the drag with the current GTK+ event.
-
-2010-06-03 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r60632.
- http://trac.webkit.org/changeset/60632
- https://bugs.webkit.org/show_bug.cgi?id=40143
-
- This change broke the 64-bit bots. (Requested by mrobinson on
- #webkit).
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::DragClient):
- (WebKit::DragClient::startDrag):
- * WebCoreSupport/DragClientGtk.h:
-
-2010-06-03 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Drag gesture can take mouse grab indefinitely
- https://bugs.webkit.org/show_bug.cgi?id=32840
-
- Start GTK+ drags with the previous mouse button down event instead of
- synthesizing the event. The synthesized event was not completely valid
- and froze some drags indefinitely.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::buttonPressEvent): Added.
- (WebKit::DragClient::DragClient):
- Connect to the 'button-press-event' signal of the WebView.
- (WebKit::DragClient::startDrag):
- Instead of synthesizing a button press event use the last real one.
- * WebCoreSupport/DragClientGtk.h:
- (WebKit::DragClient::setLastButtonPressEvent): Added.
-
-2010-06-01 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Memory Leak: The main resource of page is not free.
- https://bugs.webkit.org/show_bug.cgi?id=39973
-
- Fix refcount tracking of the main resource. Patch by Genhua Liu.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFinishLoading):
-
-2010-06-01 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Fix-up for previous leak fix, the identifier was not always duped.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_add_resource):
-
-2010-06-01 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Plug a small leak.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::assignIdentifierToInitialRequest):
-
-2010-06-01 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Double clicks cause three button press events
- https://bugs.webkit.org/show_bug.cgi?id=38853
-
- Handle click counting much like the Windows port. GTK+ only
- counts triple-clicks natively, so use GTK+ double-click settings
- to count clicks with even larger click counts. Also filter the
- extra GDK_BUTTON_PRESS before GDK_{2,3}BUTTON_PRESS events using
- gdk_event_peek().
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_press_event): Count clicks manually. Filter extra events.
-
-2010-05-31 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] Missing links to documentation of general functions
- https://bugs.webkit.org/show_bug.cgi?id=39964
-
- Add global functions section, and move those functions that are
- currently in WebKitWebView's source file to the bottom, along with
- the description.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_dom_document):
- (webkit_get_default_session):
-
-2010-05-31 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Text copied from a WebView cannot be pasted into gnome-terminal
- https://bugs.webkit.org/show_bug.cgi?id=39827
-
- Add a test to prevent regressions for this issue.
-
- * tests/testcopyandpaste.c: Added.
- (test_info_new):
- (test_info_destroy):
- (copy_and_paste_fixture_setup):
- (copy_and_paste_fixture_teardown):
- (load_status_cb):
- (map_event_cb):
- (test_copy_and_paste):
- (main):
-
-2010-05-27 Gustavo Noronha Silva <gns@gnome.org>
-
- Update documentation control files, and fix Since tags for 1.3.1.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
- * webkit/webkitwebbackforwardlist.cpp:
- * webkit/webkitwebview.cpp:
-
-2010-05-27 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update for 1.3.1 release.
-
- * NEWS:
-
-2010-05-27 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Dragging onto the desktop causes a critical GLib warning
- https://bugs.webkit.org/show_bug.cgi?id=39718
-
- Only increment the window reference count if it is not null during drag-end
- signal processing.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_drag_end): Guard against null window values.
-
-2010-05-26 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Add support for DOM events in the GObject DOM bindings
- https://bugs.webkit.org/show_bug.cgi?id=38844
-
- Test DOMWindow signals.
-
- * tests/testdomdomwindow.c: Added.
- (finish_loading):
- (dom_domview_fixture_setup):
- (dom_domview_fixture_teardown):
- (loadedCallback):
- (clickedCallback):
- (map_event_cb):
- (load_event_callback):
- (test_dom_domview_signals):
- (main):
-
-2010-05-24 Darin Adler <darin@apple.com>
-
- Reviewed by Eric Seidel.
-
- Move view-related functions from Frame to FrameView
- https://bugs.webkit.org/show_bug.cgi?id=39366
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_set_editable): Remove call to empty function
- removeEditngStyleFromBodyElement.
- (webkit_web_view_get_zoom_level): Call functions on FrameView.
- (webkit_web_view_apply_zoom_level): Ditto.
-
-2010-05-22 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] webkit_web_view_drag_end should call EventHandler::dragSourceEndedAt
- https://bugs.webkit.org/show_bug.cgi?id=39465
-
- Properly call EventHandler::dragSourceEndedAt so that dragEnd events are processed in the DOM.
- dragSourceEndedAt is responsible for calling the dragEnd DOM event as well as cleaning up assets
- (such as the Clipboard) associated with the drag source.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_drag_end): Remember to call dragSourceEndedAt here.
-
-2010-05-22 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] WebKit/gtk/WebCoreSupport/DragClientGtk::startDrag should use the Clipboard::sourceOperation
- https://bugs.webkit.org/show_bug.cgi?id=39459
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag):
- Use Clipboard::sourceOperation instead of trying to figure out the GdkDragAction
- manually. The DOM may have changed the appropriate list of actions anyhow.
-
-2010-05-21 Steve Block <steveblock@google.com>
-
- Reviewed by Jeremy Orlow.
-
- Add DeviceOrientation and DeviceOrientationClient
- https://bugs.webkit.org/show_bug.cgi?id=39479
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2010-05-19 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r59240.
- http://trac.webkit.org/changeset/59240
- https://bugs.webkit.org/show_bug.cgi?id=39377
-
- "Might cause crashes in GTK+ bots" (Requested by xan_ on
- #webkit).
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::inputMethodsMenuItem):
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::setInputMethodState):
- (WebKit::EditorClient::respondToChangedSelection):
- (WebKit::EditorClient::handleInputMethodKeydown):
- (WebKit::EditorClient::EditorClient):
- (WebKit::EditorClient::~EditorClient):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::postCommitFrameViewSetup):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (destroy_menu_cb):
- (webkit_web_view_forward_context_menu_event):
- (webkit_web_view_key_release_event):
- (webkit_web_view_button_release_event):
- (webkit_web_view_focus_in_event):
- (webkit_web_view_focus_out_event):
- (webkit_web_view_realize):
- (webkit_web_view_set_scroll_adjustments):
- (webkit_web_view_dispose):
- (webkit_web_view_finalize):
- (webViewGetDPI):
- (webkit_web_view_screen_changed):
- (webkit_web_view_query_tooltip):
- (webkit_web_view_get_im_context):
- (webkit_web_view_update_settings):
- (webkit_web_view_init):
- (webkit_web_view_set_settings):
- (webkit_web_view_get_settings):
- (webkit_web_view_get_inspector):
- (webkit_web_view_set_window_features):
- (webkit_web_view_get_window_features):
- (webkit_web_view_get_back_forward_list):
- (webkit_web_view_zoom_in):
- (webkit_web_view_zoom_out):
- (webkit_web_view_get_encoding):
- (webkit_web_view_get_custom_encoding):
- (webkit_web_view_add_resource):
- (webkit_web_view_get_resource):
- (webkit_web_view_get_main_resource):
- (webkit_web_view_clear_resources):
- (webkit_web_view_get_subresources):
- (webkit_web_view_set_tooltip_text):
- (webkit_web_view_get_icon_uri):
-
-2010-05-18 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] DragClientGtk::startDrag leaks GdkEvents
- https://bugs.webkit.org/show_bug.cgi?id=39322
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::startDrag): Properly clean up allocated GdkEvent.
-
-2010-05-12 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Use GOwnPtr for code that needs it
- https://bugs.webkit.org/show_bug.cgi?id=21594
-
- Convert many uses of raw pointers to GRefPtr and GOwnPtr in WebKitWebView.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::inputMethodsMenuItem):
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::setInputMethodState):
- (WebKit::EditorClient::respondToChangedSelection):
- (WebKit::EditorClient::handleInputMethodKeydown):
- (WebKit::EditorClient::EditorClient):
- (WebKit::EditorClient::~EditorClient):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::postCommitFrameViewSetup):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (destroy_menu_cb):
- (webkit_web_view_forward_context_menu_event):
- (webkit_web_view_key_release_event):
- (webkit_web_view_button_release_event):
- (webkit_web_view_focus_in_event):
- (webkit_web_view_focus_out_event):
- (webkit_web_view_realize):
- (webkit_web_view_set_scroll_adjustments):
- (webkit_web_view_dispose):
- (webkit_web_view_finalize):
- (webViewGetDPI):
- (webkit_web_view_screen_changed):
- (webkit_web_view_query_tooltip):
- (webkit_web_view_get_im_context):
- (webkit_web_view_update_settings):
- (webkit_web_view_init):
- (webkit_web_view_set_settings):
- (webkit_web_view_get_settings):
- (webkit_web_view_get_inspector):
- (webkit_web_view_set_window_features):
- (webkit_web_view_get_window_features):
- (webkit_web_view_get_back_forward_list):
- (webkit_web_view_zoom_in):
- (webkit_web_view_zoom_out):
- (webkit_web_view_get_encoding):
- (webkit_web_view_get_custom_encoding):
- (webkit_web_view_add_resource):
- (webkit_web_view_get_resource):
- (webkit_web_view_get_main_resource):
- (webkit_web_view_clear_resources):
- (webkit_web_view_get_subresources):
- (webkit_web_view_set_tooltip_text):
- (webkit_web_view_get_icon_uri):
-
-2010-05-11 Martin Robinson <mrobinson@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Doesn't support gtk-key-themes
- https://bugs.webkit.org/show_bug.cgi?id=28257
-
- Add support for GTK+ key themes.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::backspaceCallback): Added.
- (WebKit::cutClipboardCallback): Added.
- (WebKit::copyClipboardCallback): Added.
- (WebKit::pasteClipboardCallback): Added.
- (WebKit::selectAllCallback): Added.
- (WebKit::deleteFromCursorCallback): Added.
- (WebKit::moveCursorCallback): Added.
- (WebKit::EditorClient::generateEditorCommands): Added.
- (WebKit::EditorClient::executePendingEditorCommands): Added.
- (WebKit::EditorClient::handleKeyboardEvent): Derive editor commands both from internal text widget and a list of fallbacks.
- (WebKit::EditorClient::EditorClient): Add m_nativeWidget initializer.
- * WebCoreSupport/EditorClientGtk.h:
- (WebKit::EditorClient::addPendingEditorCommand): Add m_nativeWidget member.
-
-2010-05-06 Martin Robinson <mrobinson@webkit.org>
-
- Reviewed by Xan Lopez.
-
- Remove use of GOwnPtr to hold GObject types.
- https://bugs.webkit.org/show_bug.cgi?id=38669
-
- Change use of GOwnPtr to GRefPtr to types which are natively reference-counted.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchWillSendRequest): Change GOwnPtr to GRefPtr in some places.
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType): Ditto.
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_new_with_core_request): Ditto.
- * webkit/webkitnetworkresponse.cpp:
- (webkit_network_response_new_with_core_response): Ditto.
- * webkit/webkitprivate.cpp: Remove GOwnPtr reference counting template specialization.
- * webkit/webkitprivate.h: Ditto.
-
-2010-05-06 Martin Robinson <mrobinson@webkit.org>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Enable DOM clipboard and drag-and-drop access
- https://bugs.webkit.org/show_bug.cgi?id=30623
-
- Convert dragging portion of drag-and-drop to use DataObjectGtk.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::willPerformDragDestinationAction): Remove the notImplemented. It is implemented, it's just a no-op.
- (WebKit::DragClient::startDrag): Start the drag context via the ClipboardGtk and PasteboardHelper now.
- * WebCoreSupport/DragClientGtk.h: Small style fix.
- * webkit/webkitprivate.h: Add a HashMap of contexts and DataObjects here to to represent all current drag operations.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_dispose): Clear all data objects during disposal.
- (webkit_web_view_drag_end): When a drag is over, just remove it from the map.
- (webkit_web_view_drag_data_get): To get the drag data, just grab it from the DataObject.
-
-2010-05-03 Abhishek Arya <inferno@chromium.org>
-
- Reviewed by Adam Barth.
-
- Add support for controlling clipboard access from javascript.
- Clipboard access from javascript is disabled by default.
- https://bugs.webkit.org/show_bug.cgi?id=27751
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2010-05-03 Jens Alfke <snej@chromium.org>
-
- Reviewed by Darin Fisher.
-
- [chromium] Add "willSendSubmitEvent" hook to WebFrameClient and FrameLoaderClient
- https://bugs.webkit.org/show_bug.cgi?id=38397
-
- No tests (functionality is exposed only through native WebKit API.)
-
- * WebCoreSupport/FrameLoaderClientGtk.h:
- (WebKit::FrameLoaderClient::dispatchWillSendSubmitEvent):
-
-2010-05-01 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Oliver Hunt.
-
- [GTK] GObject DOM bindings
- https://bugs.webkit.org/show_bug.cgi?id=33590
-
- Test webkit_dom_document_get_links.
-
- * tests/testdomdocument.c:
- (test_dom_document_get_links):
- (main):
-
-2010-04-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] GObject DOM bindings
- https://bugs.webkit.org/show_bug.cgi?id=33590
-
- Test webkit_dom_document_get_element_by_id;
-
- * tests/testdomdocument.c:
- (test_dom_document_get_element_by_id):
- (main):
-
-2010-04-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] GObject DOM bindings
- https://bugs.webkit.org/show_bug.cgi?id=33590
-
- Test webkit_dom_document_get_elements_by_class_name.
-
- * tests/testdomdocument.c:
- (test_dom_document_get_elements_by_class_name):
- (main):
-
-2010-04-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] GObject DOM bindings
- https://bugs.webkit.org/show_bug.cgi?id=33590
-
- Test webkit_dom_document_get_elements_by_tag_name.
-
- * tests/testdomdocument.c:
- (test_dom_document_get_elements_by_tag_name):
- (main):
-
-2010-04-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] GObject DOM bindings
- https://bugs.webkit.org/show_bug.cgi?id=33590
-
- Move WebKitDOMDocument unit tests to their own file.
-
- * tests/testdomdocument.c: Added.
- (finish_loading):
- (dom_document_fixture_setup):
- (dom_document_fixture_teardown):
- (test_dom_document_title):
- (main):
- * tests/testwebview.c:
-
-2010-04-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] GObject DOM bindings
- https://bugs.webkit.org/show_bug.cgi?id=33590
-
- Include <webkit/webkitdom.h> in the main webkit.h header.
-
- * webkit/webkit.h:
-
-2010-04-25 Sam Weinig <sam@webkit.org>
-
- Reviewed by Maciej Stachowiak.
-
- Fix for https://bugs.webkit.org/show_bug.cgi?id=38097
- Disentangle initializing the main thread from initializing threading
-
- * webkit/webkitprivate.cpp:
- (webkit_init): Add call to initializeMainThread.
-
-2010-04-22 Dave Moore <davemoore@chromium.org>
-
- Reviewed by Dimitri Glazkov.
-
- Added notification when the favicons for a page are changed
- from a script.
- The Document object will notify the frame loader, which will
- notify the client. Implementations of FrameLoaderClient will
- have to add one method; dispatchDidChangeIcons().
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidChangeIcons):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2010-04-22 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] GObject DOM bindings
- https://bugs.webkit.org/show_bug.cgi?id=33590
-
- Add webkit_web_view_get_document to retrieve the WebKitDOMDocument
- from a WebKitWebView, and a very simple test for it.
-
- * tests/testwebview.c:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_document):
- * webkit/webkitwebview.h:
-
-2010-04-22 Diego Escalante Urrelo <descalante@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Evaluate and create tests for all the AtkRole's implemented by
- WebKitGtk
- https://bugs.webkit.org/show_bug.cgi?id=34449
-
- Expand testatkroles to test ATK_ROLE_COMBO_BOX.
-
- * tests/testatkroles.c:
- (test_webkit_atk_get_role_combobox):
- (main):
-
-2010-04-22 Diego Escalante Urrelo <descalante@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Evaluate and create tests for all the AtkRole's implemented by
- WebKitGtk
- https://bugs.webkit.org/show_bug.cgi?id=34449
-
- Expand testatkroles to test ATK_ROLE_SEPARATOR.
-
- * tests/testatkroles.c:
- (test_webkit_atk_get_role_separator):
- (main):
-
-2010-04-22 Adam Barth <abarth@webkit.org>
-
- Unreviewed, rolling out r58069.
- http://trac.webkit.org/changeset/58069
- https://bugs.webkit.org/show_bug.cgi?id=27751
-
- Broke compile on Windows.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2010-04-22 Abhishek Arya <inferno@chromium.org>
-
- Reviewed by Adam Barth.
-
- Add support for controlling clipboard access from javascript.
- Clipboard access from javascript is disabled by default.
- https://bugs.webkit.org/show_bug.cgi?id=27751
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2010-04-21 Jakub Wieczorek <jwieczorek@webkit.org>
-
- Reviewed by Darin Adler.
-
- List item markers are not always updated after changes in the DOM.
- https://bugs.webkit.org/show_bug.cgi?id=37060
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_marker_text_for_list_item): Add a private API to get the marker text for a list item.
-
-2010-04-21 Diego Escalante Urrelo <descalante@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Evaluate and create tests for all the AtkRole's implemented by
- WebKitGtk
- https://bugs.webkit.org/show_bug.cgi?id=34449
-
- Expand testatkroles to test ATK_ROLE_FORM.
-
- * tests/testatkroles.c:
- (test_webkit_atk_get_role_form):
- (main):
-
-2010-04-20 Adam Barth <abarth@webkit.org>
-
- Reviewed by Eric Seidel.
-
- Factor DocumentWriter out of FrameLoader
- https://bugs.webkit.org/show_bug.cgi?id=37175
-
- Update these callsites because the method moved to DocumentWriter.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
- (WebKit::FrameLoaderClient::finishedLoading):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_encoding):
-
-2010-04-20 Kent Tamura <tkent@chromium.org>
-
- Reviewed by Darin Adler.
-
- Change a parameter type of chooseIconForFiles()
- https://bugs.webkit.org/show_bug.cgi?id=37504
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::chooseIconForFiles):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-04-20 Martin Robinson <mrobinson@webkit.org>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Enable DOM clipboard and drag-and-drop access
- https://bugs.webkit.org/show_bug.cgi?id=30623
-
- Move most of the PasteboardHelper logic into WebCore. This helps
- prepare for WebKit2 and leads to a clearer separation of concerns
- between the WebKit and WebCore layers.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::collapseSelection): Converted this logic to a GClosure callback.
- (WebKit::EditorClient::respondToChangedSelection): Collapse selection via GClosure now.
- * WebCoreSupport/PasteboardHelperGtk.cpp: Moved most of the code to WebCore.
- (WebKit::PasteboardHelperGtk::PasteboardHelperGtk): This constructor just initializes the target list.
- (WebKit::PasteboardHelperGtk::~PasteboardHelperGtk): The destructor no longer needs to free the target list.
- (WebKit::PasteboardHelperGtk::getIdForTargetType): Added, virtual method for getting target ids.
- (WebKit::PasteboardHelperGtk::usePrimarySelectionClipboard): Added, virtual method for querying current clipboard.
- * WebCoreSupport/PasteboardHelperGtk.h: Update method list to reflect reduced functionality.
-
-2010-04-19 Diego Escalante Urrelo <descalante@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Evaluate and create tests for all the AtkRole's implemented by
- WebKitGtk
- https://bugs.webkit.org/show_bug.cgi?id=34449
-
- Expand testatkroles to test ATK form roles.
-
- * tests/testatkroles.c:
- (test_webkit_atk_get_role_check_box):
- (test_webkit_atk_get_role_entry):
- (test_webkit_atk_get_role_label):
- (test_webkit_atk_get_role_listbox):
- (test_webkit_atk_get_role_password_text):
- (test_webkit_atk_get_role_push_button):
- (test_webkit_atk_get_role_radio_button):
- (main):
-
-2010-04-19 Diego Escalante Urrelo <descalante@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Evaluate and create tests for all the AtkRole's implemented by
- WebKitGtk
- https://bugs.webkit.org/show_bug.cgi?id=34449
-
- Add testatkroles to test ATK non form roles.
-
- * tests/testatkroles.c: Added.
- (finish_loading):
- (atk_roles_fixture_setup):
- (atk_roles_fixture_teardown):
- (get_child_and_test_role):
- (test_webkit_atk_get_role_document_frame):
- (test_webkit_atk_get_role_heading):
- (test_webkit_atk_get_role_image):
- (test_webkit_atk_get_role_link):
- (test_webkit_atk_get_role_list_and_item):
- (test_webkit_atk_get_role_paragraph):
- (test_webkit_atk_get_role_section):
- (test_webkit_atk_get_role_table):
- (main):
-
-2010-04-17 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- We have to initialize the timer attribute after destroying it, not
- doing it was causing crashes in some situations.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_finalize):
-
-2010-04-13 Timothy Hatcher <timothy@apple.com>
-
- Rename SecurityOrigin::whiteListAccessFromOrigin to addOriginAccessWhitelistEntry.
- And SecurityOrigin::resetOriginAccessWhiteLists to resetOriginAccessWhitelists.
-
- SecurityOrigin needs a way to remove individual OriginAccessEntries
- https://bugs.webkit.org/show_bug.cgi?id=37449
-
- Reviewed by Dave Hyatt.
-
- * webkit/webkitprivate.cpp:
- (webkit_white_list_access_from_origin):
- (webkit_reset_origin_access_white_lists):
-
-2010-04-11 Sheriff Bot <webkit.review.bot@gmail.com>
-
- Unreviewed, rolling out r57468.
- http://trac.webkit.org/changeset/57468
- https://bugs.webkit.org/show_bug.cgi?id=37433
-
- Broke the world... Must have applied the patch wrong
- (Requested by abarth on #webkit).
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
- (WebKit::FrameLoaderClient::finishedLoading):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_encoding):
-
-2010-04-11 Adam Barth <abarth@webkit.org>
-
- Reviewed by Eric Seidel.
-
- Factor DocumentWriter out of FrameLoader
- https://bugs.webkit.org/show_bug.cgi?id=37175
-
- Update these callsites because the method moved to DocumentWriter.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
- (WebKit::FrameLoaderClient::finishedLoading):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_encoding):
-
-2010-04-07 Andrey Kosyakov <caseq@chromium.org>
-
- Reviewed by Yury Semikhatsky.
-
- Removed redundant FrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest()
- https://bugs.webkit.org/show_bug.cgi?id=36949
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2010-04-01 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- [GTK] webkit_get_default_session() should make sure webkit_init() is called
- https://bugs.webkit.org/show_bug.cgi?id=36754
-
- Make sure global functions that do not require a WebKitWebView to
- be created call webkit_init() before doing their job. Also add an
- API test to check for that.
-
- * tests/testglobals.c: Added.
- (test_globals_default_session):
- (main):
- * webkit/webkitwebview.cpp:
- (webkit_get_default_session):
- (webkit_set_cache_model):
- (webkit_get_cache_model):
-
-2010-03-31 Marcus Bulach <bulach@chromium.org>
-
- Reviewed by Jeremy Orlow.
-
- Adds Geolocation param for cancelGeolocationPermissionRequestForFrame.
- https://bugs.webkit.org/show_bug.cgi?id=35031
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::cancelGeolocationPermissionRequestForFrame):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-03-30 Gavin Barraclough <barraclough@apple.com>
-
- Rubber stamped by Sam Weinig.
-
- https://bugs.webkit.org/show_bug.cgi?id=36866
- Move CString to WTF
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * WebCoreSupport/EditorClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * WebCoreSupport/InspectorClientGtk.cpp:
- * gdom/ConvertToGCharPrivate.h:
- * webkit/webkitdownload.cpp:
- * webkit/webkithittestresult.cpp:
- * webkit/webkitnetworkrequest.cpp:
- * webkit/webkitprivate.h:
- * webkit/webkitsecurityorigin.cpp:
- * webkit/webkitwebdatabase.cpp:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_web_history_item_finalize):
- (webkit_web_history_item_get_target):
- * webkit/webkitwebresource.cpp:
- * webkit/webkitwebsettings.cpp:
- * webkit/webkitwebview.cpp:
-
-2010-03-28 Alexey Proskuryakov <ap@apple.com>
-
- Build fix. Include WindowsKeyboardCodes.h instead of KeyboardCodes.h.
-
- * WebCoreSupport/EditorClientGtk.cpp:
-
-2010-03-27 Sergio Villar Senin <svillar@igalia.com>
-
- Reviewed by Eric Seidel.
-
- FrameLoader emits onload-event when handling
- dispatchDidHandleOnloadEvents
-
- [GTK] Improve reporting of frame loader callbacks in DRT
- https://bugs.webkit.org/show_bug.cgi?id=36454
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidHandleOnloadEvents):
- implemented, now it emits onload-event signal
- * webkit/webkitwebview.cpp: added onload-event signal
-
-2010-03-25 Sergio Villar Senín <svillar@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Added new API webkit_web_back_forward_list_clear. This function
- clears the back forward list
-
- [GTK] http/history tests are failing
- https://bugs.webkit.org/show_bug.cgi?id=36173
-
- * tests/testwebbackforwardlist.c:
- (test_webkit_web_back_forward_list_clear):
- (main): added new unit test for the new API
- * webkit/webkitwebbackforwardlist.cpp:
- (webkit_web_back_forward_list_clear):
- * webkit/webkitwebbackforwardlist.h: new function that clears the
- back forward list
-
-2010-03-24 Kent Tamura <tkent@chromium.org>
-
- Reviewed by Darin Adler.
-
- Make Icon::createIconForFiles() optional.
- https://bugs.webkit.org/show_bug.cgi?id=35072
-
- - Rename iconForFiles() to chooseIconForFiles().
- - Call Icon::createIconForFiles() from chooseIconForFiles().
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-03-23 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- [GTK] Does not build with latest GTK+ development release
- https://bugs.webkit.org/show_bug.cgi?id=36398
-
- Fix building with newest GTK+ versions.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::windowRect):
- (WebKit::ChromeClient::setWindowRect):
- (WebKit::ChromeClient::unfocus):
- (WebKit::ChromeClient::canTakeFocus):
- (WebKit::ChromeClient::contentsSizeChanged):
- * webkit/webkitprivate.cpp:
- (currentToplevelCallback):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_print_full):
- (webkit_web_frame_print):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_grab_focus):
- (webkit_web_view_focus_in_event):
- (webkit_web_view_script_dialog):
-
-2010-03-18 Philip Chimento <philip.chimento@gmail.com>
-
- Reviewed by Oliver Hunt.
-
- Setting the GObject WebKitWebView property 'window-features' to NULL
- causes a crash.
- https://bugs.webkit.org/show_bug.cgi?id=36144
-
- * tests/testwebview.c: Add unit test for this bug.
- * webkit/webkitwebview.cpp: Don't allow the 'window-features' property
- to be set to NULL.
- * webkit/webkitwebwindowfeatures.cpp:
- (webkit_web_window_features_equal): Don't examine the members of either
- web_window_features argument if either is NULL, just return that they
- are not equal. Additionally, if they are the same object, return that
- they are equal.
-
-2010-03-16 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update for 1.1.90 release.
-
- * NEWS:
-
-2010-03-16 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Fix one too many empty lines in documentation of
- window-obejct-cleared signal, which caused the documentation to be
- rendered funny. Thanks to Martin Robinson for noticing.
-
- * webkit/webkitwebview.cpp:
-
-2010-03-16 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Add missing symbol to GeoLocation documentation
- section.
-
- * docs/webkitgtk-sections.txt:
-
-2010-03-16 Martin Robinson <mrobinson@webkit.org>
-
- Reviewed by Xan Lopez.
-
- can't input korean into lower all input box except adress input box in webkit gtk launcher
- https://bugs.webkit.org/show_bug.cgi?id=32290
-
- Make the GTK+ EditorClient properly handle different types of input module
- behavior such as commit and preedit signals that happen outside of key event
- filtering and multiple times in a row. Filter keyup events as well as keydown
- events and call gtk_im_context_focus_{in/out} when the WebView focus changes.
-
- Added tests for this behavior to the GTK+ unit tests.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted): Handle this signal properly when it happens outside of
- key event filtering.
- (WebKit::imContextPreeditChanged): Immediately update the preedit state and do not reject
- empty preedits, so that cancellation works properly.
- (WebKit::EditorClient::updatePendingComposition): Add this method, which handles the
- situation where a commit signal happens when there is still a pending commit.
- (WebKit::EditorClient::shouldBeginEditing): Clear pending composition state before editing
- starts.
- (WebKit::EditorClient::shouldEndEditing): Clear pending composition state before editing ends.
- (WebKit::EditorClient::handleKeyboardEvent): No longer special case preedits which happen during
- key event filtering. When confirming a pending composition use insertText instead of confirmComposition.
- (WebKit::EditorClient::handleInputMethodKeydown):
- * WebCoreSupport/EditorClientGtk.h: Make pendingComposition a member, so that multiple WebViews
- do not share state.
- (WebKit::EditorClient::webView): Added.
- (WebKit::EditorClient::treatContextCommitAsKeyEvent): Added.
- (WebKit::EditorClient::clearPendingComposition): Added.
- * tests/testkeyevents.c:
- (test_keypress_events_load_status_cb):
- (map_event_cb):
- (setup_keyevent_test):
- (test_keypress_events):
- (element_text_equal_to):
- (test_ime_load_status_cb):
- (test_ime):
- (main):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_key_release_event):
- (webkit_web_view_focus_in_event):
-
-2010-03-16 Yury Semikhatsky <yurys@chromium.org>
-
- Reviewed by Pavel Feldman.
-
- Introduce InspectorFrontendClient that provides InspectorFrontend with an interface to the embedder. InspectorClient now serves as a delegate for InspectorController and does not contain methods for managing inspector frontend window. That allows to create remote InspectorFrontendHost.
-
- Introduce InspectorFrontendClient that would provide InspectorFrontend with an interface to the embedder
- https://bugs.webkit.org/show_bug.cgi?id=35036
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::notifyWebViewDestroyed):
- (WebKit::InspectorClient::InspectorClient):
- (WebKit::InspectorClient::inspectorDestroyed):
- (WebKit::InspectorClient::openInspectorFrontend):
- (WebKit::InspectorClient::highlight):
- (WebKit::InspectorClient::hideHighlight):
- (WebKit::InspectorClient::populateSetting):
- (WebKit::InspectorClient::storeSetting):
- (WebKit::InspectorFrontendClient::InspectorFrontendClient):
- (WebKit::InspectorFrontendClient::~InspectorFrontendClient):
- (WebKit::InspectorFrontendClient::destroyInspectorWindow):
- (WebKit::InspectorFrontendClient::localizedStringsURL):
- (WebKit::InspectorFrontendClient::hiddenPanels):
- (WebKit::InspectorFrontendClient::bringToFront):
- (WebKit::InspectorFrontendClient::closeWindow):
- (WebKit::InspectorFrontendClient::attachWindow):
- (WebKit::InspectorFrontendClient::detachWindow):
- (WebKit::InspectorFrontendClient::setAttachedWindowHeight):
- (WebKit::InspectorFrontendClient::inspectedURLChanged):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2010-03-15 Joanmarie Diggs <joanmarie.diggs@gmail.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=35502
- [Gtk] Objects of ATK_ROLE_TABLE should not implement AtkText
-
- New test to be sure we do not accidentally implement AtkText for tables
-
- * tests/testatk.c
- (testWebkitAtkGetTextInTable):
- (main):
-
-2010-03-09 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Holger Freyther.
-
- [GTK] GTK_WIDGET_IS_SENSITIVE is deprecated in GTK+ 2.20
- https://bugs.webkit.org/show_bug.cgi?id=35909
-
- * webkit/webkitwebview.cpp: GTK_WIDGET_IS_SENSITIVE has been
- deprecated in gtk 2.20. Use gtk_widget_is_sensitive when available.
-
-2010-03-12 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Kenneth Rohde Christiansen.
-
- Misc documentation fixes. Fixes (almost) all warnings emitted by
- the documentation build process. Only the broken references to JSC
- objects remain.
-
- * webkit/webkitsecurityorigin.cpp:
- * webkit/webkitwebbackforwardlist.cpp:
- * webkit/webkitwebdatasource.cpp:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebhistoryitem.cpp:
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_class_init):
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- * webkit/webkitwebview.cpp:
- (DNDContentsRequest::webkit_web_view_class_init):
-
-2010-03-11 Anders Carlsson <andersca@apple.com>
-
- Reviewed by David Hyatt.
-
- Remove invalidateContents, it isn't used and it never makes sense to only invalidate the contents.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-03-09 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] testkeyevents doesn't stop if input event injection fails
- https://bugs.webkit.org/show_bug.cgi?id=35922
-
- * tests/testkeyevents.c:
- (load_status_cb): Added a safeguard to exit from the test if the
- input event injection failed.
-
-2010-03-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Documentation control files update for 1.1.23.
-
- * docs/webkitgtk-docs.sgml:
-
-2010-03-08 Csaba Osztrogonác <ossy@webkit.org>
-
- [GTK] Unreviewed buildfix after r55688.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_start):
-
-2010-03-02 Adam Treat <atreat@rim.com>
-
- Reviewed by Dave Hyatt.
-
- Adapt the gtk port to the refactoring of repaint methods.
-
- https://bugs.webkit.org/show_bug.cgi?id=34214
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-03-08 Eric Uhrhane <ericu@chromium.org>
-
- Reviewed by David Levin.
-
- Remove the now-redundant Settings fields for the Database
- https://bugs.webkit.org/show_bug.cgi?id=35763
-
- No new tests; this code isn't called.
-
- * webkit/webkitwebview.cpp: Remove the calls into Settings.
- (DNDContentsRequest::webkit_web_view_update_settings):
- (DNDContentsRequest::webkit_web_view_settings_notify):
-
-2010-03-06 Arno Renevier <arno@renevier.net>
-
- Reviewed by Eric Seidel.
-
- [Gtk] GEOLOCATION_POLICY_DECISION_CANCELLED unused
- https://bugs.webkit.org/show_bug.cgi?id=35803
-
- * webkit/webkitwebview.cpp:
- (DNDContentsRequest::webkit_web_view_class_init):
-
-2010-03-03 Antonio Gomes <tonikitoo@webkit.org>
-
- Reviewed by Gustavo Noronha.
- Patch by Antonio Gomes <tonikitoo@webkit.org>
-
- [Gtk] Add 'enable-spatial-navigation' setting for toggle Spatial Navigation on/off
- https://bugs.webkit.org/show_bug.cgi?id=35701
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (DNDContentsRequest::webkit_web_view_update_settings):
- (DNDContentsRequest::webkit_web_view_settings_notify):
-
-2010-03-03 Fridrich Strba <fridrich.strba@bluewin.ch>
-
- Reviewed by Xan Lopez.
-
- Miscellaneous little fixes for the windows build of webkit-gtk
- https://bugs.webkit.org/show_bug.cgi?id=35640
-
- * webkit/webkitdownload.cpp: Windows headers define ERROR
- which breaks the build. Undef ERROR if it is defined.
-
-2010-03-03 Philippe Normand <pnormand@igalia.com>
-
- Unreviewed, build fix after r55452.
-
- * webkit/webkitwebview.cpp:
- (DNDContentsRequest::webkit_web_view_settings_notify): added missing braces.
-
-2010-03-02 Eric Uhrhane <ericu@chromium.org>
-
- Reviewed by David Levin.
-
- Move database enable bit fully out of settings
- This is stage one of a three-stage commit [webkit, then chromium, then
- webkit again]. In this change I'm adding calls to
- Database::setIsAvailable inside Settings::setDatabaseEnabled and
- anywhere else that called it, and switching webkit fully over to using
- that flag [added in a previous checkin]. Phase two will remove
- Chromium's use of Settings for the Database, and phase three will remove
- the Setting for the Database enable entirely, leaving only
- Database::isAvailable/setIsAvailable.
-
- No new tests; tested by existing storage tests.
-
- https://bugs.webkit.org/show_bug.cgi?id=35310
-
- * webkit/webkitwebview.cpp: Add calls to Database::setIsAvailable
- (DNDContentsRequest::webkit_web_view_update_settings):
- (DNDContentsRequest::webkit_web_view_settings_notify):
-
-2010-03-02 Arno Renevier <arno@renevier.net>
-
- Reviewed by Gustavo Noronha Silva.
-
- [Gtk] implements ChromeClient::requestGeolocationPermissionForFrame
- https://bugs.webkit.org/show_bug.cgi?id=35210
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ChromeClientGtk.h:
- * docs/webkitgtk-sections.txt:
- * webkit/webkit.h:
- * webkit/webkitdefines.h:
- * webkit/webkitgeolocationpolicydecision.cpp: Added.
- (webkit_geolocation_policy_decision_class_init):
- (webkit_geolocation_policy_decision_init):
- (webkit_geolocation_policy_decision_new):
- (webkit_geolocation_policy_allow):
- (webkit_geolocation_policy_deny):
- * webkit/webkitgeolocationpolicydecision.h: Added.
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (DNDContentsRequest::webkit_web_view_class_init):
- * webkitmarshal.list:
-
-2010-03-01 José Millán Soto <jmillan@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Right click does not activate text entry
- https://bugs.webkit.org/show_bug.cgi?id=29177
-
- Makes the frame handle the mouse click event before sending the
- context menu event.
-
- * webkit/webkitwebview.cpp:
- (PopupMenuPositionFunc):
- Function created to make the popup menu appear in the correct position, especially
- when invoked from the keyboard.
- (webkit_web_view_forward_context_menu_event):
- Mouse click event is sent to frame before creating context menu,
- PopupMenuPositionFunc used to determine the position where the menu should appear.
- (webkit_web_view_popup_menu_handler):
- Improved focused node position detection. Event button set to right button.
-
-2010-03-01 Jakob Petsovits <jpetsovits@rim.com>
-
- Reviewed by Adam Barth.
-
- Adapt to the new ZoomMode enum.
- https://bugs.webkit.org/show_bug.cgi?id=35347
-
- * webkit/webkitwebview.cpp:
- (DNDContentsRequest::webkit_web_view_apply_zoom_level):
-
-2010-03-01 Kalle Vahlman <zuh@iki.fi>
-
- Reviewed by Gustavo Noronha Silva.
-
- Queue a resize when either of the content dimensions change
- https://bugs.webkit.org/show_bug.cgi?id=35489
-
- The check for size changes only queued a resize if both of the content
- dimensions change, leaving the widget size out-of-sync if eg. only the
- width changes.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
-
-2009-12-04 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] Needs proper reporting of frame loader callbacks, in DRT
- https://bugs.webkit.org/show_bug.cgi?id=32170
-
- Add new signal to report when the document load is finished for a
- frame.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFinishDocumentLoad):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2010-02-26 Antonio Gomes <tonikitoo@webkit.org>
-
- Complementary commit of r55300. Missing "notify::" to signal name.
-
- * tests/testwebview.c:
- (test_webkit_web_view_grab_focus):
-
-2010-02-26 Antonio Gomes <tonikitoo@webkit.org>
-
- Reviewed by Xan Lopez.
- Patch by Antonio Gomes <tonikitoo@webkit.org>
-
- [GTK] Make webkit_web_view_grab_focus to active focus controller.
- https://bugs.webkit.org/show_bug.cgi?id=35402
-
- When programatically setting focus to an element in an inner document,
- calling "hasFocus()" from this document returns FALSE, because
- document's FocusController is not activated. It does not happen
- if |document| is the main document.
-
- Making webkit_web_view_grab_focus to actually activate the FocusController,
- fixes the issue.
-
- * tests/testwebview.c:
- (server_callback):
- (test_webkit_web_view_grab_focus):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_grab_focus):
-
-2010-02-26 Alejandro G. Castro <alex@igalia.com>
-
- Unreviewed.
-
- Reverted last patch (r55295), it causes problems with the frames.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
-
-2010-02-19 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Some region checks in scroll are not required
- https://bugs.webkit.org/show_bug.cgi?id=35142
-
- Removes some of the operations checking the moved and invalidated
- regions when scrolling, it is done already in
- gdk_window_move_region.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
-
-2010-02-25 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [Gtk] crashed when destroying
- https://bugs.webkit.org/show_bug.cgi?id=31271
-
- NULL-check the page before relaying the focus out event, since
- this might happen when destroying the widget without destroying
- its parent, and we currently crash.
-
- * tests/testwebview.c:
- (delayed_destroy):
- (test_webkit_web_view_destroy):
- (main):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_focus_in_event):
-
-2010-02-24 Krzysztof Kotlenga <pocek@users.sf.net>
-
- Reviewed by Gustavo Noronha Silva.
-
- [Gtk] Creation of a WebkitWebView widget is very slow
- https://bugs.webkit.org/show_bug.cgi?id=30032
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::ignoreWordInSpellDocument): Change 'langs' to 'dicts'
- to reflect the fact that the list just holds Enchant dictionaries now.
- (WebKit::EditorClient::learnWord): Ditto.
- (WebKit::EditorClient::checkSpellingOfString): Ditto.
- (WebKit::EditorClient::getGuessesForWord): Ditto.
- * webkit/webkitprivate.h: Remove the now unused SpellLanguage struct.
- * webkit/webkitwebsettings.cpp: Change function call to reflect new
- webkit_web_settings_get_enchant_dicts name.
- (get_enchant_broker): Add this method which returns the enchant broker singleton.
- (free_spell_checking_language): The list contents have changed, so change
- the way each element is freed.
- (webkit_web_settings_finalize): Change to reflect 'spell_checking_languages_list'
- to 'enchant_dicts' member name change.
- (webkit_web_settings_set_property): Use the broker singleton here instead of making
- a new one for each language. The Enchant dictionary is now the list payload.
- (webkit_web_settings_copy): More name-change updates.
- (webkit_web_settings_get_enchant_dicts): Ditto.
-
-2010-02-23 Leandro Pereira <leandro@profusion.mobi>
-
- Reviewed by Gustavo Noronha Silva.
-
- Fixes references to GOwnPtr and GRefPtr so the GTK+ port builds
- again.
- http://webkit.org/b/35084
-
- * WebKit/gtk/webkit/webkitwebview.cpp:
-
-2010-02-23 Shinichiro Hamaji <hamaji@chromium.org>
-
- Reviewed by Eric Seidel.
-
- [Gtk] Implement layoutTestController.numberOfPages
- https://bugs.webkit.org/show_bug.cgi?id=35228
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_number_of_pages):
-
-2010-02-23 José Millán Soto <jmillan@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Server message not shown on http authentication
- https://bugs.webkit.org/show_bug.cgi?id=34219
-
- * webkit/webkitsoupauthdialog.c:
- (show_auth_dialog):
- Server message is displayed, messageLabel and message variables were
- renamed to avoid confusion.
-
-2010-02-23 Steve Block <steveblock@google.com>
-
- Reviewed by Darin Adler.
-
- Adds ChromeClient::cancelGeolocationPermissionRequestForFrame
- https://bugs.webkit.org/show_bug.cgi?id=34962
-
- This method is required so that a Geolocation object can cancel an
- asynchronous permission request. This allows the chrome client to cancel
- any UI it is showing for the permission request.
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::cancelGeolocationPermissionRequestForFrame):
-
-2010-02-23 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Do not do unnecessary work during size_allocate.
-
- FrameView::resize will already queue a layout, so there's no need
- to force one ourselves. On top of that, the layout function
- already adjusts the view size when needed, so there's no need to
- do that manually either. No change in the layout tests or unit
- tests after this.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_size_allocate):
-
-2010-02-22 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update for release.
-
- * NEWS:
-
-2010-02-22 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [Soup] loses information related to message flags when converting from/to Resource{Request,Response}
- https://bugs.webkit.org/show_bug.cgi?id=35093
-
- Update the flags that are stored in the request, when the response
- is received.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidReceiveResponse):
-
-2010-02-20 Gustavo Noronha Silva <gns@gnome.org>
-
- Unreviewed. Trivial fix - unnecessary variable got added by
- mistake.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidReceiveResponse):
-
-2010-02-18 Diego Escalante Urrelo <descalante@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] WebKitDownload documentation is incomplete
- https://bugs.webkit.org/show_bug.cgi?id=35018
-
- Concretely the error signal was undocumented. Also two relevant enums
- were not included.
-
- * docs/webkitgtk-sections.txt:
- * docs/webkitgtk.types:
- * webkit/webkitdownload.cpp:
- (webkit_download_class_init):
-
-2010-02-17 Dmitry Titov <dimich@chromium.org>
-
- Reviewed by David Levin, Darin Fisher, Simon Hausmann.
-
- When a live iframe element is moved between pages, it still depends on the old page.
- https://bugs.webkit.org/show_bug.cgi?id=34382
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didTransferChildFrameToNewDocument):
- Added empty implementation of a new virtual method.
-
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2010-02-17 Kent Tamura <tkent@chromium.org>
-
- Reviewed by Eric Seidel.
-
- Introduces new Icon loading interface in order to support
- asynchronous loading.
- https://bugs.webkit.org/show_bug.cgi?id=32054
-
- Add an empty implementation of ChromeClient::iconForFiles().
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::iconForFiles):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2010-02-17 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Rename 'enable-java' setting to 'enable-java-applet', since it
- only controls whether <applet> is supported or not instead of
- whether all Java content is supported or not.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (DNDContentsRequest::webkit_web_view_update_settings):
- (DNDContentsRequest::webkit_web_view_settings_notify):
-
-2010-02-17 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [Linux] Webkit incompatible with Java plugins
- https://bugs.webkit.org/show_bug.cgi?id=24912
-
- Implement FrameLoaderClient::createJavaAppletWidget.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createJavaAppletWidget):
-
-2010-02-17 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [Linux] Webkit incompatible with Java plugins
- https://bugs.webkit.org/show_bug.cgi?id=24912
-
- Add a WebKitWebSetting to enable/disable the Java plugin support.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2010-02-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Test that data URIs that cause downloads to be started do not crash.
-
- * tests/testdownload.c:
- (mime_type_policy_decision_requested_cb):
- (idle_quit_loop_cb):
- (test_webkit_download_data):
- (main):
-
-2010-02-17 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Missing property warning after r54873
- https://bugs.webkit.org/show_bug.cgi?id=35023
-
- Add a new WebKitWebSettings setting, 'enable-file-access-from-file-uris', set to
- FALSE by default, that when enabled will assign each file:// URI
- their own security domain.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
-
-2010-02-16 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Check if the handle has a SoupMessage before trying to use
- it. This will be the case in non-HTTP(S) URLs.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_new_with_handle):
- (webkit_download_start):
-
-2010-02-16 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Add a new WebKitWebSettings setting, 'auto-resize-window', set to
- FALSE by default, that when enabled will apply any resizes or
- moves done by a page through various DOM methods (moveTo,
- resizeTo, moveBy, resizeBy).
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
-
-2010-02-15 Emilio Pozuelo Monfort <pochu27@gmail.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Fails to build on GNU/Hurd because of PATH_MAX usage
- https://bugs.webkit.org/show_bug.cgi?id=34920
-
- Use dynamic allocation instead of fixed PATH_MAX size buffers to
- fix the build on GNU/Hurd, where PATH_MAX is undefined.
-
- * tests/testmimehandling.c:
- (main):
- * tests/testwebview.c:
- (main):
-
-2010-02-14 Diego Escalante Urrelo <descalante@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [gtk] WebKitDownload's currentSize property is guint, should be guint64
- https://bugs.webkit.org/show_bug.cgi?id=34829
-
- Actually use a guint64 for current-size property in WebKitDownload, we
- were using a guint which is likely the cause for wrong sizes for files
- over 4 Gb.
-
- * webkit/webkitdownload.cpp:
-
-2010-02-09 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] Hits assertion on history back, with page cache enabled, in specific conditions
- https://bugs.webkit.org/show_bug.cgi?id=34773
-
- Make sure cached frames have their scrollbars disconnected from
- the WebView's adjustments.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::savePlatformDataToCachedFrame):
-
-2010-02-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] Set GtkAdjustments on our FrameView when loading a page in the PageCache
- https://bugs.webkit.org/show_bug.cgi?id=34754
-
- Test that lower, and upper bounds are kept when goibg back with
- page cache enabled, and disabled. Page cache behaviour is still a
- bit broken (see FIXME).
-
- * tests/testwebview.c:
- (server_callback):
- (map_event_cb):
- (do_test_webkit_web_view_adjustments):
- (test_webkit_web_view_adjustments):
- (main):
-
-2010-02-09 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Set GtkAdjustments on our FrameView when loading a page in the PageCache
- https://bugs.webkit.org/show_bug.cgi?id=34754
-
- Set the Gtk Adjustments of the FrameViews when they are restored
- from the PageCache too. Right we only do it for the newly created
- FrameViews in transitionToCommittedForNewPage, but we it also
- needs to be done in the equilavent transition method for cached
- pages.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::postCommitFrameViewSetup):
- (WebKit::FrameLoaderClient::transitionToCommittedFromCachedFrame):
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2010-02-08 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Implement FrameLoaderClient::hasWebView
- https://bugs.webkit.org/show_bug.cgi?id=34682
-
- Used for sanity-check ASSERTS in the FrameLoader code.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::hasWebView):
-
-2010-02-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- News about 1.1.21.
-
- * NEWS:
-
-2010-02-05 Shinichiro Hamaji <hamaji@chromium.org>
-
- Reviewed by Gustavo Noronha Silva.
-
- [Gtk] Implement layoutTestController.pageNumberForElementById
- https://bugs.webkit.org/show_bug.cgi?id=34572
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_page_number_for_element_by_id):
-
-2010-02-04 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Add and cleanup return values of signals in view and frame
- https://bugs.webkit.org/show_bug.cgi?id=33484
-
- Add missing and cleanup return values of web frame and web view signals.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_class_init):
- * webkit/webkitwebview.cpp:
- (DNDContentsRequest::webkit_web_view_class_init):
-
-2010-02-02 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- Changes in 1.1.20, and documentation control files update.
-
- * NEWS:
- * docs/webkitgtk-docs.sgml:
-
-2010-02-02 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] When selection changes selections in other WebView are not collapsed
- https://bugs.webkit.org/show_bug.cgi?id=34043
-
- Collapse the selection of a WebView even when the new selection owner is
- a new WebView.
-
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- (WebKit::clearClipboardContentsCallback): Only clear the DataObject we are setting
- is not the same as the one referenced in this callback. Use the same behavior for
- collapsing the selection.
- (WebKit::PasteboardHelperGtk::writeClipboardContents): Instead of recording a boolean
- record the actual data used while writing to the clipboard.
-
-2010-01-27 Martin Robinson <mrobinson@webkit.org>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Expose the IM context via the API
- https://bugs.webkit.org/show_bug.cgi?id=33327
-
- Expose the GtkIMMultiContext as a property of WebKitWebView. This will
- allow embedders to generate the input method context menu entries and
- make testing certain IM context behavior possible.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_property):
- (DNDContentsRequest::webkit_web_view_get_im_context):
- (DNDContentsRequest::webkit_web_view_class_init):
-
-2010-01-19 Joanmarie Diggs <joanmarie.diggs@gmail.com>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=30883
- [Gtk] Implement AtkText for HTML elements which contain text
-
- Adds two news tests.
-
- * tests/testatk.c
- (testWebkitAtkGetTextInParagraphAndBodySimple):
- (testWebkitAtkGetTextInParagraphAndBodyModerate):
- (main):
-
-2010-01-19 Gustavo Noronha Silva <gns@gnome.org>
-
- Unreviewed. Changes to the test I forgot to make after a last
- minute change before landing 53294 - this causes make distcheck to
- fail.
-
- * tests/testloading.c:
- (load_error_status_changed_cb):
- (test_loading_error):
-
-2010-01-19 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- News items for 1.1.19.
-
- * NEWS:
-
-2010-01-19 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] More crashes related to the clipboard management
- https://bugs.webkit.org/show_bug.cgi?id=33746
-
- Pass the WebKitWebView object (which is a GObject, thus
- ref-counted) to the clipboard functions instead of passing the
- Page - this allows us to explicitely protect the object inbetween
- the clipboard call and its callbacks, which fixes the crash.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::respondToChangedSelection):
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- (WebKit::getClipboardContentsCallback):
- (WebKit::clearClipboardContentsCallback):
- (WebKit::PasteboardHelperGtk::writeClipboardContents):
-
-2010-01-15 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Original patch by David Ronis <david.ronis@mcgill.ca>
-
- Upgrade 1.1.17->1.1.18 fails: GTK_WIDGET_TOPLEVEL' was not declared in this scope
- https://bugs.webkit.org/show_bug.cgi?id=33486
-
- Deprecated symbols replaced for gtk+ versions over 2.18.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::windowRect):
- * webkit/webkitprivate.cpp:
- (currentToplevelCallback):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_print_full):
- (webkit_web_frame_print):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_focus_in_event):
-
-2010-01-14 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Eric Seidel.
-
- [GTK] Crashes cleaning clipboard contents, with page cache enabled
- https://bugs.webkit.org/show_bug.cgi?id=32900
-
- Null-check the focus controller to avoid crashing. Could not find
- a way to reproduce this consistently, thus no test.
-
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- (WebKit::clearClipboardContentsCallback):
-
-2010-01-14 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Oliver Hunter.
-
- [GTK] couple fixes for signal emissions, and property notifications
- https://bugs.webkit.org/show_bug.cgi?id=33428
-
- Do not emit signals and property notifications for error
- pages. The notifications are not really useful for anything, you
- can get them back by overriding the error pages, and it avoids a
- number of hacks.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit::FrameLoaderClient::dispatchDidFinishLoad):
- (WebKit::FrameLoaderClient::dispatchDidReceiveIcon):
- (WebKit::FrameLoaderClient::dispatchDidStartProvisionalLoad):
- (WebKit::FrameLoaderClient::dispatchDidReceiveTitle):
- (WebKit::FrameLoaderClient::dispatchDidCommitLoad):
- (WebKit::FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- * tests/testloading.c:
- (load_error_status_changed_cb):
- (test_loading_error):
-
-2010-01-14 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Enable DOM clipboard and drag-and-drop access
- https://bugs.webkit.org/show_bug.cgi?id=30623
-
- Use DataObjectGtk when setting and clearing pasteboard data on
- the GDK_SELECTION_PRIMARY clipboard.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::respondToChangedSelection):
- (WebKit::EditorClient::EditorClient):
- * WebCoreSupport/EditorClientGtk.h:
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- (WebKit::fillSelectionData):
- (WebKit::targetListForDataObject):
- (WebKit::getClipboardContentsCallback):
- (WebKit::clearClipboardContentsCallback):
- (WebKit::PasteboardHelperGtk::writeClipboardContents):
- * WebCoreSupport/PasteboardHelperGtk.h:
-
-2010-01-14 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Review the tooltip implementation
- https://bugs.webkit.org/show_bug.cgi?id=32819
-
- Change the GTK tooltip implementation to avoid the workaround that
- we are currently using. Now we use a new private API to set the
- text and all the tooltip handling is done in the webview widget.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_set_tooltip_text): Added, new private API.
- (webkit_web_view_query_tooltip): Added
-
-2010-01-09 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] couple fixes for signal emissions, and property notifications
- https://bugs.webkit.org/show_bug.cgi?id=33428
-
- Fix commitedLoad being called where it should not, causing it to
- be called one time too many in some cases. We now match Qt's and
- Mac's behavior here.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::finishedLoading):
- * tests/testloading.c:
- (load_error_status_changed_cb):
-
-2010-01-08 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] loading test should use SoupServer instead of actual sites
- https://bugs.webkit.org/show_bug.cgi?id=33353
-
- Make all the loading tests use SoupServer, instead of fetching
- stuff from the Internet.
-
- * tests/testloading.c:
- (server_callback):
- (get_uri_for_path):
- (test_loading_status):
- (test_loading_error):
- (test_loading_cancelled):
- (load_wentback_status_changed_cb):
- (load_error_test):
- (test_loading_goback):
- (main):
-
-2010-01-06 Joanmarie Diggs <joanmarie.diggs@gmail.com>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=30883
- [Gtk] Implement AtkText for HTML elements which contain text
-
- * tests/testatk.c
- (test_webkit_atk_get_text_at_offset):
- (test_webkit_atk_get_text_at_offset_forms):
- (test_webkit_atk_get_text_at_offset_newlines):
-
-2010-01-05 Gustavo Noronha Silva <gns@gnome.org>
-
- Updated docs for 1.1.18 release.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2010-01-05 Xan Lopez <xlopez@igalia.com>
-
- Update for 1.1.18 release.
-
- * NEWS:
-
-2010-01-04 Maciej Stachowiak <mjs@apple.com>
-
- Reviewed by Darin Fisher.
-
- Reorganize, document and rename OS() platform macros.
- https://bugs.webkit.org/show_bug.cgi?id=33198
-
- Adapt to name changes.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_get_user_agent):
-
-2010-01-04 Maciej Stachowiak <mjs@apple.com>
-
- Reviewed by Adam Barth.
-
- Reorganize, document and rename CPU() platform macros.
- https://bugs.webkit.org/show_bug.cgi?id=33145
-
- * webkit/webkitwebsettings.cpp:
- (webkit_get_user_agent):
-
-2009-12-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Remove emission of signal that does not exist.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::inspectorDestroyed):
- (WebKit::InspectorClient::webViewDestroyed):
-
-2009-12-20 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Unset the adjustments in our FrameView when detaching from
- parent. Fixes some crashers when transitioning to a new page from
- a scrolled page.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::detachedFromParent2):
-
-2009-12-20 Xan Lopez <xlopez@igalia.com>
-
- Rubber-stamped by Gustavo Noronha.
-
- Disable the page cache by default since:
-
- - It was previously off by default.
- - There are still some issues when enabling it.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
-
-2009-12-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Provides a new API to copy WebKitWebHistoryItem objects.
-
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_web_history_item_copy):
- * webkit/webkitwebhistoryitem.h:
-
-2009-12-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Make sure we get the URI that is being loaded when updating
- WebKitWebFrame's knowledge of it. This was causing problems now
- that page cache is enabled.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidCommitLoad):
- * tests/testloading.c:
- (load_goback_status_changed_cb):
- (load_wentback_status_changed_cb):
- (test_loading_goback):
- (main):
-
-2009-12-20 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] Cache control APIs
- https://bugs.webkit.org/show_bug.cgi?id=24001
-
- Original patch by Bobby Powers <bobby@laptop.org>
-
- Added new API to specify cache models for GTK port.
-
- * webkit/webkitprivate.cpp:
- (webkit_init): set a default cache model.
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
- (webkit_set_cache_model): Added function.
- (webkit_get_cache_model): Added function.
-
-2009-12-20 Xan Lopez <xlopez@igalia.com>
-
- Revert the previous patch, it introduces some failures in the
- bots.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2009-12-20 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] crash when loading new page
- https://bugs.webkit.org/show_bug.cgi?id=32752
-
- Wait until the document is attached to adjust our alignments,
- since we need to make sure the FrameView in the document content
- render object matches the newly created FrameView for the new
- page, otherwise we'll try to relayout the wrong view.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2009-12-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Create a new WebKitDataSource object when attaching to a frame, if
- one does not exist. This may happen when we are fetching data from
- the page cache.
-
- * WebCoreSupport/DocumentLoaderGtk.cpp:
- (WebKit::DocumentLoader::attachToFrame):
- (WebKit::DocumentLoader::unrefDataSource):
-
-2009-12-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Xan Lopez.
-
- Make sure the text encoding machinery is initialized from the main
- frame, before opening the icon database.
-
- * webkit/webkitprivate.cpp:
- (webkit_init):
-
-2009-12-19 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- Fixed the problem when pasting in the same window with the
- middle-button, now we store a reference to the range instead of
- requesting it every time, and we do not release it until the
- clipboard is requested.
- https://bugs.webkit.org/show_bug.cgi?id=28153
-
- * WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp:
- * WebKit/gtk/WebCoreSupport/EditorClientGtk.h:
-
-2009-12-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Protect download objects when reporting errors, to make sure the
- download stays alive between the status change notification, and
- the error signal emission.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_error):
-
-2009-12-18 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Fix gtk-doc of webkit_web_resource_new.
-
- * webkit/webkitwebresource.cpp:
-
-2009-12-18 Adam Roben <aroben@apple.com>
-
- GTK build fix
-
- * webkit/webkitprivate.cpp: Added #include.
-
-2009-12-18 Kalle Vahlman <kalle.vahlman@movial.com> and Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Add enable-page-cache property to WebSettings for disabling the Page Cache
-
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::):
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- (_WebKitWebSettingsPrivate::webkit_web_settings_set_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
-
-2009-12-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- More make distcheck fixes. Use a more robust solution to making
- sure we are in the correct directory for running these tests.
-
- * tests/testmimehandling.c:
- (main):
- * tests/testwebview.c:
- (main):
-
-2009-12-17 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] Don't assume downloads are always synchronous
- http://bugs.webkit.org/show_bug.cgi?id=32359
-
- * tests/testdownload.c:
- (download_requested_cb):
- (set_filename):
- (test_webkit_download_perform):
- (test_webkit_download_synch):
- (test_webkit_download_asynch):
- (main): Test downloads synchronously and asynchronously.
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
- (webkit_web_view_request_download): Only try to start a requested
- download if the destination URI is set and clarify the documentation.
-
-2009-12-17 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Xan Lopez.
-
- Deprecate the title-changed signal of WebKitWebFrame.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_class_init):
-
-2009-12-17 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] WebKit GTK needs a wrapper for ref counted glib/gobject structs
- https://bugs.webkit.org/show_bug.cgi?id=21599
-
- Convert a use of GOwnPtr for a reference counted type to GRefPtr.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createPlugin):
-
-2009-12-17 Evan Martin <evan@chromium.org>
-
- Reviewed by Xan Lopez.
-
- Expose the page workarounds ("quirks") setting to the GTK+ WebKit API.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
-
-2009-12-16 Dan Winship <danw@gnome.org>
-
- Reviewed by Gustavo Noronha Silva.
-
- Content-Encoding support
-
- https://bugs.webkit.org/show_bug.cgi?id=522772
-
- * webkit/webkitprivate.cpp:
- (webkit_init): add a SoupContentDecoder feature to the session
-
-2009-12-16 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha Silva.
-
- Deprecate the old loading signals load-started, load-committed,
- load-finished, load-progress-changed and change unit tests to use
- load-status instead.
-
- * tests/testmimehandling.c:
- (idle_quit_loop_cb):
- (test_mime_type): use notify::load-status
- * tests/testwebdatasource.c:
- (notify_load_status_unreachable_cb):
- (notify_load_status_cb):
- (test_webkit_web_data_source):
- (test_webkit_web_data_source_unreachable_uri): Remove uses of
- g_main_loop_is_running. It's an error if the loop is wrongly terminated.
- * tests/testwebresource.c:
- (notify_load_status_cb):
- (test_web_resource_loading):
- (notify_load_status_sub_cb):
- (test_web_resource_sub_resource_loading): use notify::load-status
- * tests/testwebview.c:
- (idle_quit_loop_cb):
- (test_webkit_web_view_icon_uri):
- * tests/testwindow.c:
- (notify_load_status_cb):
- (test_webkit_window_scrollbar_policy): use notify::load-status
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_class_init):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init): Deprecate old load signals.
-
-2009-12-16 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha Silva.
-
- Take into account favicon.ico in the webresource test.
-
- * tests/testwebresource.c:
- (test_web_resource_sub_resource_loading):
-
-2009-12-16 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Xan Lopez.
-
- Add tab_key_cycles_through_elements to copies of
- WebKitWebSettings.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_copy):
-
-2009-12-16 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Gustavo Noronha Silva.
-
- [GTK] webkit_web_navigation_action_get_button() documentation
- https://bugs.webkit.org/show_bug.cgi?id=25555
-
- Small documentation improvement for webkit_web_navigation_action_get_button.
-
- * webkit/webkitwebnavigationaction.cpp:
-
-2009-12-13 Sam Weinig <sam@webkit.org>
-
- Reviewed by Dan Bernstein.
-
- Fix for https://bugs.webkit.org/show_bug.cgi?id=32499
- Add client based Geolocation provider
-
- Add first cut of a client based Geolocation provider. This is guarded by
- ENABLE(CLIENT_BASED_GEOLOCATION) and is off by default for now. This adds a
- GeolocationControllerClient interface that no-one currently implements,
- but will in a subsequent patch.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
-
-2009-12-14 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- New setting to allow applications to completely suppress the
- default context menu that is generated by WebKit. This allows them
- to still pass the event to the default handler without needing to
- use ugly hacks such as handling populate-popup, and removing all
- the items from the default context menu.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_forward_context_menu_event):
-
-2009-12-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Also give the right click event to the frame's event handler, if
- there WebCore decides to not generate the default context
- menu. This fixes some pages that handle right-button clicks for
- things other than context menu creation.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_forward_context_menu_event):
-
-2009-12-13 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Holger Freyther.
-
- http://bugs.webkit.org/show_bug.cgi?id=31014
- [Gtk] Build fails with gtk+-2.10 (no tested with older releases)
-
- Guard GTK+ 2.12 specific tooltip code with #ifdef.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
-
-2009-12-11 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Eric Seidel.
-
- [GTK] Build with --disable-svg is broken
- http://bugs.webkit.org/show_bug.cgi?id=32361
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_pause_svg_animation): Fix ENABLE(SVG) guards.
-
-2009-12-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Add a missing null-check, that is causing some crash reports.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
-
-2009-12-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] Should provide an API to control the IconDatabase
- https://bugs.webkit.org/show_bug.cgi?id=32334
-
- First step towards a full IconDatabase API. This provides
- notification for pages with favicons, and lets clients handle
- them.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::registerForIconNotification):
- (WebKit::FrameLoaderClient::dispatchDidReceiveIcon):
- * tests/resources/blank.ico: Added.
- * tests/testwebview.c: Added.
- (server_callback):
- (idle_quit_loop_cb):
- (icon_uri_changed_cb):
- (icon_loaded_cb):
- (test_webkit_web_view_icon_uri):
- (main):
- * webkit/webkitprivate.cpp:
- (closeIconDatabaseOnExit):
- (webkit_init):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_property):
- (webkit_web_view_finalize):
- (webkit_web_view_class_init):
- (webkit_web_view_get_icon_uri):
- * webkit/webkitwebview.h:
-
-2009-12-08 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha Silva.
-
- Point out the meaning of "Content-Disposition" when implementing the
- mime-type-policy-decision-requested signal.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2009-12-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] Doesn't respect Content-Disposition for downloads, and provides no way for apps to do that
- https://bugs.webkit.org/show_bug.cgi?id=32247
-
- Provide a way for applications to respect Content-Disposition, by
- fetching the WebKitNetworkResponse from the frame during
- mime-type-policy-decision-requested.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType): Download
- content when Content-Disposition is attachment.
- * tests/testmimehandling.c:
- (server_callback):
- (mime_type_policy_decision_requested_cb):
- * tests/testwebframe.c:
- (test_webkit_web_frame_response):
- (main):
- * webkit/webkitprivate.cpp:
- (WebKit::core):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_network_response):
- * webkit/webkitwebframe.h:
-
-2009-12-07 Gyuyoung Kim <gyuyoung@gmail.com>
-
- Reviewed by Eric Seidel.
-
- https://bugs.webkit.org/show_bug.cgi?id=32024
- [GTK] WebKit does not compile without JAVASCRIPT_DEBUGGER
-
- Fix build errors when javascript-debugger is disabled on GTK
-
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_set_property):
- (webkit_web_inspector_get_property):
-
-2009-12-07 Joanmarie Diggs <joanmarie.diggs@gmail.com>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=25415
- [GTK][ATK] Please implement support for get_text_at_offset
-
- Eliminate the segfaults which occur when accessing the text interface now
- implemented by text controls.
-
- * tests/testatk.c
- (test_webkit_atk_get_text_at_offset_textarea):
- (test_webkit_atk_get_text_at_offset_text_input):
- (main):
-
-2009-12-06 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- New test to make sure we do not regress this feature anymore. All
- test files were created by me.
-
- [GTK] REGRESSION: webkit thinks it can render PDFs
- https://bugs.webkit.org/show_bug.cgi?id=32183
-
- * tests/resources/test.html: Added.
- * tests/resources/test.ogg: Added.
- * tests/resources/test.pdf: Added.
- * tests/resources/test.txt: Added.
- * tests/testmimehandling.c: Added.
- (server_callback):
- (idle_quit_loop_cb):
- (mime_type_policy_decision_requested_cb):
- (test_mime_type):
- (test_mime_pdf):
- (test_mime_html):
- (test_mime_text):
- (test_mime_ogg):
- (main):
-
-2009-12-05 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Use a better URI for the unreachable test. localhost:80 is very
- likely to be open.
-
- * tests/testwebdatasource.c:
- (load_finished_unreachable_cb):
- (test_webkit_web_data_source_unreachable_uri):
-
-2009-12-03 Brady Eidson <beidson@apple.com>
-
- Reviewed by Sam Weinig.
-
- <rdar://problem/7214236> and http://webkit.org/b/32052 - Implement HTML5 state object history API
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidPushStateWithinPage):
- (WebKit::FrameLoaderClient::dispatchDidReplaceStateWithinPage):
- (WebKit::FrameLoaderClient::dispatchDidPopStateWithinPage):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-12-03 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
-
- Reviewed by Timothy Hatcher.
-
- Web Inspector: Simplify the settings support in inspector controller.
-
- https://bugs.webkit.org/show_bug.cgi?id=32076
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::populateSetting):
- (WebKit::InspectorClient::storeSetting):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2009-12-03 Ben Murdoch <benm@google.com>
-
- Reviewed by Brady Eidson.
-
- [Android] The FrameLoaderClient is unaware of BackForwardList changes.
- https://bugs.webkit.org/show_bug.cgi?id=31914
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation. Method added to FrameLoaderClient by Android (see bug).
- (WebKit::FrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto.
- (WebKit::FrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto.
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-12-01 Nikolas Zimmermann <nzimmermann@rim.com>
-
- Reviewed by Simon Fraser.
-
- Add SVG animation test framework with 'snapshot' functionality
- https://bugs.webkit.org/show_bug.cgi?id=31897
-
- Add API used by the new 'sampleSVGAnimationForElementAtTime' DRT method,
- forwarding the call to SVGDocumentExtensions, if SVG is enabled.
-
- Implemented just like the existing pauseAnimation* methods for CSS animations.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_pause_svg_animation):
-
-2009-11-30 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Prepare for 1.1.17 release.
-
- * NEWS:
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
-
-2009-11-26 Laszlo Gombos <laszlo.1.gombos@nokia.com>
-
- Reviewed by Oliver Hunt.
-
- Move GOwnPtr* from wtf to wtf/gtk
- https://bugs.webkit.org/show_bug.cgi?id=31793
-
- * webkit/webkitwebview.cpp: Change the path for GOwnPtr.h.
-
-2009-11-24 Joanmarie Diggs <joanmarie.diggs@gmail.com>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=25415
- [GTK][ATK] Please implement support for get_text_at_offset
-
- When building up the pango layout from text boxes, only append a
- newline char after verifying there are no more boxes on this line.
-
- * tests/testatk.c
- (test_webkit_atk_get_text_at_offset_newlines):
- (main):
-
-2009-11-19 Pavel Feldman <pfeldman@chromium.org>
-
- Reviewed by Gustavo Noronha Silva.
-
- Web Inspector: Implement "show inspector" in WebKit GTK
- API and enable console tests.
-
- https://bugs.webkit.org/show_bug.cgi?id=31669
-
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_show):
- * webkit/webkitwebinspector.h:
-
-2009-11-18 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Tab key does not cycle through elements by default
- https://bugs.webkit.org/show_bug.cgi?id=31505
-
- Properly localize documentation strings for the
- tab-key-cycles-through-elements property.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
-
-2009-11-17 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Tab key does not cycle through elements by default
- https://bugs.webkit.org/show_bug.cgi?id=31505
-
- Ensure that WebKitWebSettings tab-key-cycles-through-elements
- property is true by default with the G_PARAM_CONSTRUCT_FLAG.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
-
-2009-11-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] Failing test media/video-document-types.html
- https://bugs.webkit.org/show_bug.cgi?id=31352
-
- Match what Mac has been doing since r36001: cancel the main load,
- and handle failures caused by 'will be handled by plugin' errors.
-
- Covered by test media/video-document-types.html
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
- (WebKit::FrameLoaderClient::shouldFallBack):
-
-2009-11-17 Pavel Feldman <pfeldman@chromium.org>
-
- Reviewed by Timothy Hatcher.
-
- Web Inspector: Make DRT show web inspector for tests in inspector/ folder.
- - Updated DRT to show/close inspector for all tests under /inspector
- - Introduced LayoutTestController::setTimelineProfilingEnabled and
- WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled
- - Removed reload on each inspector test
- - Renamed fast/inspector to fast/inspector-support in order not to trigger
- inspector for those.
- - Reimplemented timeline tests in order to get rid of reload there.
- - Moved tests that don't require harness into the fast group.
-
- https://bugs.webkit.org/show_bug.cgi?id=31472
-
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_class_init):
- (webkit_web_inspector_set_property):
- (webkit_web_inspector_get_property):
-
-2009-11-13 Adam Roben <aroben@apple.com>
-
- Update for changes to FrameLoaderClient
-
- Fixes <http://webkit.org/b/31124> Tell the WebFrameLoadDelegate when
- window objects in isolated worlds are cleared
-
- Reviewed by Dave Hyatt.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidClearWindowObjectInWorld):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- Replaced windowObjectCleared with this function. Does nothing if the
- passed-in world is not the mainThreadNormalWorld().
-
-2009-11-12 Shinichiro Hamaji <hamaji@chromium.org>
-
- Reviewed by Darin Adler.
-
- externalRepresentation should take Frame as the argument
- https://bugs.webkit.org/show_bug.cgi?id=31393
-
- No new tests as this is just a refactoring.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_dump_render_tree):
-
-2009-11-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- Should not print javascript console messages to stdout
- https://bugs.webkit.org/show_bug.cgi?id=31346
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_real_console_message): Print console messages to
- stderr instead, using the recommended method (a g_log variant).
-
-2009-11-11 Philippe Normand <pnormand@igalia.com>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=30221
- [GTK] fails to load media embedded in iframe element
-
- The FrameLoader can show Media if the audio/video support is
- enabled at compile time.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::canShowMIMEType):
-
-2009-11-10 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Jan Alonzo.
-
- [GTK] Remove WebSocket configuration from WebKitWebSettings
- https://bugs.webkit.org/show_bug.cgi?id=31244
-
- Remove non-functional enable-web-sockets property from WebKitWebSettings.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
-
-2009-11-09 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Jan Alonzo.
-
- [GTK] Expose Page::tabKeyCyclesThroughElements in the API
- https://bugs.webkit.org/show_bug.cgi?id=30482
-
- Expose Page::tabKeyCyclesThroughElements as a property of
- WebKitWebSettings.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2009-11-04 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Jan Alonzo.
-
- [GTK] Enable DOM clipboard and drag-and-drop access
- https://bugs.webkit.org/show_bug.cgi?id=30623
-
- Move handling of target list to PasteboardHelperGtk.
-
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- (WebKit::PasteboardHelperGtk::PasteboardHelperGtk):
- (WebKit::PasteboardHelperGtk::~PasteboardHelperGtk):
- (WebKit::PasteboardHelperGtk::fullTargetList):
- * WebCoreSupport/PasteboardHelperGtk.h:
- * webkit/webkitprivate.cpp:
- (WebKit::pasteboardHelperInstance):
- (webkit_init):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_dispose):
- (webkit_web_view_init):
- (webkit_web_view_get_copy_target_list):
- (webkit_web_view_get_paste_target_list):
-
-2009-10-30 Evan Stade <estade@chromium.org>
-
- Reviewed by David Levin.
-
- Notify the chrome when the focused node has changed.
- https://bugs.webkit.org/show_bug.cgi?id=30832
-
- Added stub implementation for new ChromeClient function.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::focusedNodeChanged):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2009-10-29 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Trivial fix - move public API declaration into the
- public subsection of the doc.
-
- * docs/webkitgtk-sections.txt:
-
-2009-10-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Jan Alonzo.
-
- [GTK] API to start inspector for a WebView
- https://bugs.webkit.org/show_bug.cgi?id=22551
-
- Provide a simple, coordinates-based API to start the inspector.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::createPage): Use files from the source
- tree when running from the top of the source directory.
- (WebKit::InspectorClient::localizedStringsURL): Ditto.
- * webkit/webkitprivate.h:
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_inspect_coordinates):
- (webkit_web_inspector_close):
- (webkit_web_inspector_execute_script):
- * webkit/webkitwebinspector.h:
-
-2009-10-27 Shinichiro Hamaji <hamaji@chromium.org>
-
- Reviewed by Darin Adler.
-
- Provide a way to get counter values with layoutTestContoller
- https://bugs.webkit.org/show_bug.cgi?id=30555
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_counter_value_for_element_by_id):
-
-2009-10-28 Joe Mason <jmason@rim.com>
-
- Reviewed by Adam Treat.
-
- Call the shared FrameLoader::defaultObjectContentType instead of
- copying code into FrameLoaderClient::objectContentType. This causes no
- behavioural change.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::objectContentType):
-
-2009-10-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- [Gtk] Extraneous object of ROLE_PANEL in hierarchy for entries
- https://bugs.webkit.org/show_bug.cgi?id=25897
-
- Update test to also check that entries implement the AtkText
- interface.
-
- * tests/testatk.c:
- (run_get_text_tests):
- (test_webkit_atk_get_text_at_offset_forms):
- (test_webkit_atk_get_text_at_offset):
- (main):
-
-2009-10-26 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Update documentation control files for 1.1.16.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2009-10-26 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=30759
- [GTK] Should use WebKitNetworkResponse, and expose it
-
- WebKitDownload now uses our WebKitNetworkResponse instead of using
- ResourceResponse directly. By exposing the response, like we do
- with the request, we give our users the ability to look at the
- response headers, status code, and so on, through the SoupMessage
- object.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_dispose):
- (webkit_download_finalize):
- (webkit_download_get_property):
- (webkit_download_set_property):
- (webkit_download_class_init):
- (webkit_download_get_network_response):
- (webkit_download_set_response):
- (webkit_download_get_total_size):
- (webkit_download_get_progress):
- (webkit_download_received_data):
- * webkit/webkitdownload.h:
-
-2009-10-26 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update for 1.1.16 release.
-
- * NEWS:
-
-2009-10-22 Gavin Barraclough <barraclough@apple.com>
-
- Reviewed by NOBODY (build fix).
- Build fix following bug #30696.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::windowObjectCleared):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_global_context):
-
-2009-10-22 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- m_webView should be private attribute of the EditorClientGtk.
- https://bugs.webkit.org/show_bug.cgi?id=30664
-
- * WebKit/gtk/WebCoreSupport/EditorClientGtk.h:
-
-2009-10-20 Fumitoshi Ukai <ukai@chromium.org>
-
- Reviewed by David Levin.
-
- Removed WebSocket runtime settings.
- https://bugs.webkit.org/show_bug.cgi?id=29896
-
- WebSocket runtime configuration is supported by chromium/v8 only.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2009-10-19 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Alexey Proskuryakov.
-
- [Gtk] ApplicationCacheStorage error while compiling WebKit/gtk/webkit/webkitapplicationcache.cpp
- https://bugs.webkit.org/show_bug.cgi?id=30358
-
- Guard calls to cacheStorage() with ENABLE(OFFLINE_WEB_APPLICATIONS).
-
- * webkit/webkitapplicationcache.cpp:
-
-2009-10-19 Zan Dobersek <zandobersek@gmail.com>
-
- Reviewed by Gustavo Noronha.
-
- Add a settings to allow DOM pastes to be performed.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2009-10-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Make WebKitHitTestResult actually appear in the
- documentation index.
-
- * docs/webkitgtk-docs.sgml:
-
-2009-10-15 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Protect WebSocket calls in case the feature is not compiled in.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2009-10-15 Zan Dobersek <zandobersek@gmail.com>
-
- Reviewed by Gustavo Noronha.
-
- Add a settings to enable support for experimental Web Sockets.
- Currently this comes in handy in layout tests.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2009-10-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- page transition may crash webkit
- https://bugs.webkit.org/show_bug.cgi?id=29890
-
- There are actually cases in which a resource may be asked using
- webkit_web_view_get_resource after a new load has already been
- started, so protect ourselves from crashes in this case.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFinishLoading):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_resource):
-
-2009-10-12 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Xan Lopez.
-
- Remove unnecessary self-include.
-
- * webkit/webkitsecurityorigin.h:
-
-2009-10-12 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Crash when right-clicking misspelled word
- https://bugs.webkit.org/show_bug.cgi?id=29772
-
- Make sure the dictionary exist before adding it to the list of
- dictionaries.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::checkSpellingOfString):
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_set_property):
-
-2009-10-08 Adam Barth <abarth@webkit.org>
-
- Reviewed by Eric Seidel.
-
- Move executeScript from FrameLoader to ScriptController
- https://bugs.webkit.org/show_bug.cgi?id=30200
-
- Update API call.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_execute_script):
-
-2009-10-07 Xan Lopez <xlopez@igalia.com>
-
- Fix the GTK+ build.
-
- * webkit/webkitwebpolicydecision.cpp:
- (webkit_web_policy_decision_use):
- (webkit_web_policy_decision_ignore):
- (webkit_web_policy_decision_download):
-
-2009-10-07 Adam Barth <abarth@webkit.org>
-
- Reviewed by Darin Adler.
-
- Factor PolicyChecker out of FrameLoader
- https://bugs.webkit.org/show_bug.cgi?id=30155
-
- Move the policy callback to the policy object.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchWillSubmitForm):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
-
-2009-10-07 Martin Robinson <martin.james.robinson@gmail.com>
-
- [GTK] Segfault while testing fast/events/keydown-keypress-preventDefault.html
- https://bugs.webkit.org/show_bug.cgi?id=30121
-
- Clear previous preedit or pending composition before storing new ones.
- This can happen when a WebView receives a native keydown event without
- a matching keyup event or when preventDefault() is called on DOM keydown
- events.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::setPendingComposition):
- (WebKit::setPendingPreedit):
- (WebKit::clearPendingIMData):
- (WebKit::imContextCommitted):
- (WebKit::imContextPreeditChanged):
-
-2009-10-06 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Eric Seidel.
-
- https://bugs.webkit.org/show_bug.cgi?id=25526
- [Gtk] Additional support is needed for caret browsing
-
- Remove special cases for caret browsing, they are now handled in
- cross-platform code.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeyboardEvent):
-
-2009-10-06 Pavel Feldman <pfeldman@chromium.org>
-
- Reviewed by Timothy Hatcher.
-
- Web Inspector: close inspector client view on
- InspectorController::close API call.
-
- In order to run batch web inspector layout tests (and not affect
- subsequent tests) we should close inspector client's view upon
- InspectorController::close API call.
-
- https://bugs.webkit.org/show_bug.cgi?id=30009
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::createPage):
-
-2009-10-06 Alejandro G. Castro <alex@igalia.com>
-
- Reviewed by Xan Lopez.
-
- ASSERT executing the webhistory unittest in a debug build
- https://bugs.webkit.org/show_bug.cgi?id=28947
-
- We have to call g_object_new first to initialize webkit threading
- before creating the KURL.
-
- * WebKit/gtk/webkit/webkitwebhistoryitem.cpp:
-
-2009-10-06 José Millán Soto <fid@gpul.org>
-
- Reviewed by Xan Lopez.
-
- Header files of WebKitGTK do not comply with WebKit coding style (Patch attached)
- https://bugs.webkit.org/show_bug.cgi?id=30076
-
- Solves various issues in header files.
-
- * WebCoreSupport/DocumentLoaderGtk.h: Added "headed guards"
- * webkit/webkitdefines.h:
- * webkit/webkitdownload.h:
- * webkit/webkiterror.h:
- * webkit/webkithittestresult.h:
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitnetworkresponse.h:
- * webkit/webkitprivate.h:
- * webkit/webkitsecurityorigin.h:
- * webkit/webkitsoupauthdialog.h:
- * webkit/webkitversion.h.in:
- * webkit/webkitwebbackforwardlist.h:
- * webkit/webkitwebdatabase.h:
- * webkit/webkitwebdatasource.h:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebinspector.h:
- * webkit/webkitwebnavigationaction.h:
- * webkit/webkitwebpolicydecision.h:
- * webkit/webkitwebresource.h:
- * webkit/webkitwebsettings.h:
- * webkit/webkitwebview.h:
- * webkit/webkitwebwindowfeatures.h:
-
-2009-10-03 Adam Barth <abarth@webkit.org>
-
- More build fixing.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_go_back_or_forward):
- (webkit_web_view_can_go_back_or_forward):
-
-2009-10-03 Adam Barth <abarth@webkit.org>
-
- Unreviewed build fix.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_go_back_or_forward):
-
-2009-10-03 Adam Barth <abarth@webkit.org>
-
- Reviewed by Sam Weinig.
-
- Factor PageController out of FrameLoader and Page
- https://bugs.webkit.org/show_bug.cgi?id=30037
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_can_go_back_or_forward):
-
-2009-10-01 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Set the type for the fake event, otherwise the test ASSERTs in
- debug builds.
-
- * tests/testhittestresult.c:
- (load_status_cb):
-
-2009-10-01 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] GtkIMContext filtering interferes with DOM key events
- https://bugs.webkit.org/show_bug.cgi?id=28733
-
- Ensure that keyboard events filtered by the GtkIMContext still create
- the proper DOM events.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::clearPendingIMData):
- (WebKit::imContextCommitted):
- (WebKit::imContextPreeditChanged):
- (WebKit::EditorClient::shouldBeginEditing):
- (WebKit::EditorClient::shouldEndEditing):
- (WebKit::interpretEditorCommandKeyEvent):
- (WebKit::handleCaretBrowsingKeyboardEvent):
- (WebKit::EditorClient::handleKeyboardEvent):
- (WebKit::EditorClient::handleInputMethodKeydown):
- * tests/testkeyevents.c: Added.
- (test_info_new):
- (test_info_destroy):
- (key_event_fixture_setup):
- (key_event_fixture_teardown):
- (key_press_event_cb):
- (key_release_event_cb):
- (load_status_cb):
- (map_event_cb):
- (test_keypress):
- (main):
-
-2009-09-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Do not set a non-default parent window for child widgets. We are
- just doing the same than the default path does, and on top of that
- if the widget's window changes (for example, during DnD widgets
- are usually unrealized/realized) the child widget will we left
- pointing to a dead window.
-
- For examples of crashers caused by this see
- https://bugzilla.gnome.org/show_bug.cgi?id=596397 and
- https://bugzilla.gnome.org/show_bug.cgi?id=596398
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_container_add):
-
-2009-09-29 Xan Lopez <xlopez@igalia.com>
-
- Rubber-stamped by Eric Seidel.
-
- [Gtk] Crash when saving a password
- https://bugs.webkit.org/show_bug.cgi?id=28070
-
- Disconnect the 'got-headers' callback when we are done with
- it. The signal can be emitted more than once if the message is
- retransmitted, but each time that happens authData is created
- again and a new callback connected, so we have to get rid of the
- old one (which will crash because we free authData).
-
- * webkit/webkitsoupauthdialog.c:
- (save_password_callback):
-
-2009-09-25 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Pop down the context menu when the page transitions to committed,
- to avoid keeping a context menu out of context.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (destroy_menu_cb):
- (webkit_web_view_forward_context_menu_event):
-
-2009-09-24 Jon Honeycutt <jhoneycutt@apple.com>
-
- Reviewed by Alice Liu.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_init):
- Pass 0 for new Page constructor argument.
-
-2009-09-24 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha and Jan Alonzo.
- [GTK] Add WEBKIT_LOAD_ERROR status
- https://bugs.webkit.org/show_bug.cgi?id=29644
-
- Add a new load-status enum value, WEBKIT_LOAD_FAILED, emitted when
- there's an error during the load process. This is needed if we
- want notify::load-status to be able to handle all situations,
- since WEBKIT_LOAD_FINISHED is not emitted when there's an error
- and we are lacking a notification of the load being stopped.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
- * tests/testloading.c:
- (web_loading_fixture_setup):
- (load_error_status_changed_cb):
- (load_error_cb):
- (test_loading_error):
- (load_cancelled_cb):
- (stop_load):
- (load_cancelled_status_changed_cb):
- (test_loading_cancelled):
- (main):
- * webkit/webkitwebframe.h:
-
-2009-09-24 Xan Lopez <xlopez@igalia.com>
-
- Revert r48697, since it broke key handling notification to GTK+.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted):
- (WebKit::imContextPreeditChanged):
- (WebKit::EditorClient::shouldBeginEditing):
- (WebKit::EditorClient::shouldEndEditing):
- (WebKit::interpretKeyEvent):
- (WebKit::handleEditingKeyboardEvent):
- (WebKit::EditorClient::handleKeyboardEvent):
- (WebKit::EditorClient::handleInputMethodKeydown):
-
-2009-09-23 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Xan Lopez.
-
- [GTK] REGRESSION: BitmapImage::getGdkPixbuf fails for non-square images
- https://bugs.webkit.org/show_bug.cgi?id=29654
-
- Ensure that even when GTKSimpleIMContext filters non-IME keystrokes,
- keyboard events are fired properly.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::clearPendingIMData):
- (WebKit::imContextCommitted):
- (WebKit::imContextPreeditChanged):
- (WebKit::EditorClient::shouldBeginEditing):
- (WebKit::EditorClient::shouldEndEditing):
- (WebKit::interpretEditorCommandKeyEvent):
- (WebKit::handleCaretBrowsingKeyboardEvent):
- (WebKit::EditorClient::handleKeyboardEvent):
- (WebKit::EditorClient::handleInputMethodKeydown):
-
-2009-09-23 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- [GTK] need to dump number of pending unload handlers
- https://bugs.webkit.org/show_bug.cgi?id=29685
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_pending_unload_event_count): New function to
- satisfy DRT needs.
-
-2009-09-23 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez.
-
- Minor reorganization to the patch landed in
- http://trac.webkit.org/changeset/48670. Also move JSCore-1.0.gir
- in the gtk directory as that's only useful to the Gtk port at the
- moment.
-
- * JSCore-1.0.gir: Renamed from JSCore-1.0.gir.
-
-2009-09-22 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- Hardcode element positions at 0,0 so that we know where to
- generate events to test WebKitHitTestResult.
-
- * tests/testhittestresult.c:
- (load_status_cb):
- (test_webkit_hit_test_result):
- (main):
-
-2009-09-22 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- [GTK] WebKitHitTestResult is completely broken in gmail
- https://bugs.webkit.org/show_bug.cgi?id=29527
-
- We need to use the main or focused frame when doing the coordinate
- transformation instead of always using the main frame.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_hit_test_result):
-
-2009-09-21 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Update documentation control files to 1.1.15.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2009-09-21 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed docs build fix. Current CFLAGS and LIBS variables no
- longer bring gthread in.
-
- * docs/GNUmakefile.am:
-
-2009-09-21 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update for release.
-
- * NEWS:
-
-2009-09-20 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Small documentation fix.
-
- * webkit/webkithittestresult.cpp:
-
-2009-09-18 Xan Lopez <xlopez@igalia.com>
-
- Build fix.
-
- Add missing file to the repository.
-
- * tests/testhittestresult.c: Added.
- (test_info_new):
- (test_info_destroy):
- (hit_test_result_fixture_setup):
- (hit_test_result_fixture_teardown):
- (load_status_cb):
- (test_webkit_hit_test_result):
- (main):
-
-2009-09-18 Kenneth Rohde Christiansen <kenneth@webkit.org>
-
- [Gtk] Unreviewed build fix.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::platformPageClient):
-
-2009-09-17 Kenneth Rohde Christiansen <kenneth@webkit.org>
-
- Reviewed by Simon Hausmann.
-
- Make PlatformWindow return something else than PlatformWidget
- https://bugs.webkit.org/show_bug.cgi?id=29085
-
- Reflect the rename of platformWindow and it's return type.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::platformPageClient):
- (WebKit::ChromeClient::runOpenPanel):
- * WebCoreSupport/ChromeClientGtk.h:
- * webkit/webkitprivate.cpp:
- (currentToplevelCallback):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_popup_menu_handler):
-
-2009-09-18 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- Document webkit_web_view_stop_loading.
-
- * webkit/webkitwebview.cpp:
-
-2009-09-18 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha and Jan Alonzo.
-
- [GTK] context menu overriding API is very limited
- https://bugs.webkit.org/show_bug.cgi?id=27546
-
- Add webkit_web_view_get_hit_test_result, a function to get a hit
- test result from a GdkEventButton. Useful to let applications
- decide between several actions on button press depending on what
- is being pressed.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_stop_loading):
- (documentPointForWindowPoint):
- (webkit_web_view_get_hit_test_result):
- * webkit/webkitwebview.h:
-
-2009-09-18 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha and Jan Alonzo.
-
- [GTK] context menu overriding API is very limited
- https://bugs.webkit.org/show_bug.cgi?id=27546
-
- Add WebKitHitTestResult, a wrapper over HitTestResult. It contains
- context information about a point in the web page.
-
- * webkit/webkit.h:
- * webkit/webkitdefines.h:
- * webkit/webkithittestresult.cpp: Added.
- (webkit_hit_test_result_finalize):
- (webkit_hit_test_result_get_property):
- (webkit_hit_test_result_set_property):
- (webkit_hit_test_result_class_init):
- (webkit_hit_test_result_init):
- * webkit/webkithittestresult.h: Added.
- * webkit/webkitprivate.cpp:
- (WebKit::kit):
- * webkit/webkitprivate.h:
-
-2009-09-14 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez and Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=29134
- [GTK] Add API to access sub resources
-
- Implement getting subresources, and improve testing of
- main, and sub resources loading.
-
-2009-09-11 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- [GTK] Use gtk_style_set_background instead of gdk_window_set_background
- https://bugs.webkit.org/show_bug.cgi?id=29173
-
- Use gtk_style_set_background instead of gdk_window_set_background,
- as suggested by the documentation. Also, use GTK_STATE_NORMAL
- directly, since that's the default state of a GtkWidget.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_realize):
-
-2009-09-09 Zan Dobersek <zandobersek@gmail.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] DumpRenderTree needs eventSender object and implementation
- https://bugs.webkit.org/show_bug.cgi?id=25990
-
- Creates a function that is accessible from the DumpRenderTree tool
- and calls the layout method on the frame view.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_layout):
-
-2009-09-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=29044
- [GTK] Should update suggested-filename when the response is received
-
- Set suggested filename also when the response only comes after the
- download has started.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_set_response):
- (webkit_download_set_suggested_filename):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_request_download):
-
-2009-09-08 Priit Laes <plaes@plaes.org>
-
- Reviewed by Gustavo Noronha.
-
- Fix up erroneus 'Since: @version@' tags in documentation.
-
- * webkit/webkitwebdatasource.cpp:
- * webkit/webkitwebresource.cpp:
- (webkit_web_resource_class_init):
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
- * webkit/webkitwebwindowfeatures.cpp:
-
-2009-09-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Link new objects documents in the main document.
-
- * docs/webkitgtk-docs.sgml:
-
-2009-09-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Documentation control files updated for 1.1.14.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2009-09-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- What's new for 1.1.14.
-
- * NEWS:
-
-2009-09-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Xan Lopez.
-
- Use g_return_if_fail to check for the SoupURI creation, instead of
- printing a custom warning.
-
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_set_uri):
-
-2009-09-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=26854
- [GTK] Needs API to allow more control over outgoing requests
-
- Map the willSendRequest delegate to the 'resource-request-starting'
- signal, allowing more control of the resources that are fetched.
-
- Mapping willSendRequest properly requires an appropriate Response
- object, so we are introducing WebKitNetworkResponse, which works in a
- way similar to WebKitNetworkRequest.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchWillSendRequest):
- (WebKit::FrameLoaderClient::assignIdentifierToInitialRequest):
- (WebKit::FrameLoaderClient::dispatchDidFinishLoading):
- (WebKit::FrameLoaderClient::dispatchDidFailLoading):
- * tests/testnetworkresponse.c: Added.
- (test_network_response_create_destroy):
- (test_network_response_properties):
- (main):
- * tests/testwebresource.c:
- (resource_request_starting_cb):
- (load_finished_cb):
- (test_web_resource_loading):
- (main):
- * webkit/webkit.h:
- * webkit/webkitdefines.h:
- * webkit/webkitnetworkrequest.cpp:
- * webkit/webkitnetworkresponse.cpp: Added.
- (webkit_network_response_dispose):
- (webkit_network_response_finalize):
- (webkit_network_response_get_property):
- (webkit_network_response_set_property):
- (webkit_network_response_class_init):
- (webkit_network_response_init):
- (webkit_network_response_new_with_core_response):
- (webkit_network_response_new):
- (webkit_network_response_set_uri):
- (webkit_network_response_get_uri):
- (webkit_network_response_get_message):
- * webkit/webkitnetworkresponse.h: Added.
- * webkit/webkitprivate.cpp:
- (WTF::SoupMessage):
- (WTF::WebKitNetworkRequest):
- (WTF::WebKitNetworkResponse):
- (WTF::WebKitWebResource):
- * webkit/webkitprivate.h:
- * webkit/webkitwebresource.cpp:
- (webkit_web_resource_cleanup):
- (webkit_web_resource_finalize):
- (webkit_web_resource_class_init):
- (webkit_web_resource_set_property):
- (webkit_web_resource_get_uri):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
- * webkitmarshal.list:
-
-2009-09-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=28979
- [GTK] Misc improvments to NetworkRequest
-
- Unref message in dispose, as it should be, not in finalize.
-
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_dispose):
- (webkit_network_request_finalize):
- (webkit_network_request_class_init):
-
-2009-09-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=28979
- [GTK] Misc improvments to NetworkRequest
-
- Bring documentation up-to-date with reality regarding NetworkRequest.
-
- * webkit/webkitnetworkrequest.cpp:
-
-2009-09-07 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Make the auth dialog usable when libsoup does not have a
- SoupPasswordManager, since it might go away in the next
- development cycle.
-
- * webkit/webkitsoupauthdialog.c:
- (response_callback):
- (session_can_save_passwords):
- (session_authenticate):
-2009-09-06 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update the unitests to latest changes wrt scrollbar policy.
-
- * tests/testwindow.c:
- (test_webkit_window_scrollbar_policy):
-
-2009-09-06 Martin Robinson <martin.james.robinson@gmail.com>
-
- Reviewed by Gustavo Noronha, Jan Alonzo and Xan Lopez.
-
- [Gtk] Expose a database API
- https://bugs.webkit.org/show_bug.cgi?id=27899
-
- Expose an HTML5 database API for GTK+.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::print):
- * webkit/webkit.h:
- * webkit/webkitdefines.h:
- * webkit/webkitprivate.cpp:
- (webkit_init):
- * webkit/webkitprivate.h:
- * webkit/webkitsecurityorigin.cpp: Added.
- (webkit_security_origin_finalize):
- (webkit_security_origin_dispose):
- (webkit_security_origin_set_property):
- (webkit_security_origin_get_property):
- (webkit_security_origins):
- (webkit_security_origin_class_init):
- (webkit_security_origin_init):
- (webkit_security_origin_get_protocol):
- (webkit_security_origin_get_host):
- (webkit_security_origin_get_port):
- (webkit_security_origin_get_web_database_usage):
- (webkit_security_origin_get_web_database_quota):
- (webkit_security_origin_set_web_database_quota):
- (webkit_security_origin_get_all_web_databases):
- (WebKit::kit):
- (WebKit::core):
- (webkit_security_origin_get_web_database):
- * webkit/webkitsecurityorigin.h: Added.
- * webkit/webkitwebdatabase.cpp: Added.
- (webkit_web_database_finalize):
- (webkit_web_database_dispose):
- (webkit_web_database_set_property):
- (webkit_web_database_get_property):
- (webkit_web_database_class_init):
- (webkit_web_database_init):
- (webkit_web_database_set_security_origin):
- (webkit_web_database_set_name):
- (webkit_web_database_get_security_origin):
- (webkit_web_database_get_name):
- (webkit_web_database_get_display_name):
- (webkit_web_database_get_expected_size):
- (webkit_web_database_get_size):
- (webkit_web_database_get_filename):
- (webkit_web_database_remove):
- (webkit_remove_all_web_databases):
- (webkit_get_web_database_directory_path):
- (webkit_set_web_database_directory_path):
- (webkit_get_default_web_database_quota):
- * webkit/webkitwebdatabase.h: Added.
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_new):
- (webkit_web_frame_get_focused_accessible_element):
- (webkit_web_frame_get_horizontal_scrollbar_policy):
- * webkit/webkitwebframe.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2009-09-03 Adam Barth <abarth@webkit.org>
-
- Reviewed by eric@webkit.org.
-
- https://bugs.webkit.org/show_bug.cgi?id=24696
-
- Stub implementations of mixed content methods of FrameLoaderClient.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didDisplayInsecureContent):
- (WebKit::FrameLoaderClient::didRunInsecureContent):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-09-03 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Access private member variables directly instead of using the
- accessor.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
- (WebKit::FrameLoaderClient::windowObjectCleared):
-
-2009-09-03 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Remove bogus asserts that break Debug builds at runtime.
-
- * WebCoreSupport/DocumentLoaderGtk.cpp:
- (WebKit::DocumentLoader::detachFromFrame):
- (WebKit::DocumentLoader::decreaseLoadCount):
-
-2009-09-02 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez and Gustavo Noronha.
-
- [Gtk] Implement a WebDataSource for the gtk port
- https://bugs.webkit.org/show_bug.cgi?id=24758
-
- Add data source API getters to WebKitWebFrame.
- Also add WebKitWebDataSource unit test.
-
- * tests/testwebdatasource.c: Added.
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebframe.h:
-
-2009-09-02 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez and Gustavo Noronha.
-
- [Gtk] Implement a WebDataSource for the gtk port
- https://bugs.webkit.org/show_bug.cgi?id=24758
-
- Subclass DocumentLoader for Gtk and implement it under the WebKit
- namespace. Add WebKitWebDataSource implementation that closely
- follows the mac implementation of the API.
-
- * WebCoreSupport/DocumentLoaderGtk.cpp: Added.
- * WebCoreSupport/DocumentLoaderGtk.h: Added.
- * webkit/webkitwebdatasource.cpp: Added.
- * webkit/webkitwebdatasource.h: Added.
-
-2009-09-01 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Avoid causing unexpected issues with window sizing when sites
- disable scrollbars completely.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::scrollbarsModeDidChange):
- * tests/testwindow.c:
- (test_webkit_window_scrollbar_policy):
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_class_init):
-
-2009-09-01 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez and Gustavo Noronha.
-
- [Gtk] Implement a WebDataSource for the gtk port
- https://bugs.webkit.org/show_bug.cgi?id=24758
-
- Implement WebKitWebResource for the resource-related API for
- WebKitWebDataSource.
-
- * GNUmakefile.am:
-
-2009-09-01 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=28842
- [GTK] Do not emit extra FINISHED load-status signals
-
- Do not emit FINISHED load-status signals on our own, just rely on
- WebCore for that. Avoids emitting FINISHED several times when we
- fail to load a URI.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFailProvisionalLoad):
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
- * tests/testloading.c:
- (web_loading_fixture_setup):
- (web_loading_fixture_teardown):
- (load_finished_cb):
- (status_changed_cb):
- (test_loading_status):
- (load_error_status_changed_cb):
- (load_error_cb):
- (test_loading_error):
- (main):
- * webkit/webkitwebframe.h:
-
-2009-08-31 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=28466
- When downloading a file, two GET requests are sent to the HTTP server
-
- Support reusing a connection that is already ongoing, instead of
- cancelling the connection and creating another.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::download):
- * webkit/webkitdownload.cpp:
- (webkit_download_new_with_handle):
- (webkit_download_start):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_request_download):
-
-2009-08-31 Alexey Proskuryakov <ap@apple.com>
-
- Gtk build fix.
-
- This is also a behavior fix, at least on debug builds - a caller of
- webkit_web_history_item_new_with_data() could pass an URL that could cause an assertion
- failure in KURL.
-
- * webkit/webkitwebhistoryitem.cpp: (webkit_web_history_item_new_with_data): Pass a null
- KURL as base to parse properly.
-
-2009-08-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=25889
- [GTK] scrollbar policy for main frame is not implementable
-
- Add properties and a signal to report scrollbar policy changes to
- client code, and a default handler that does the right thing when
- using GtkScrolledWindow.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::scrollbarsModeDidChange):
- * WebCoreSupport/ChromeClientGtk.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_property):
- (webkit_web_frame_class_init):
- (webkit_web_frame_get_horizontal_scrollbar_policy):
- (webkit_web_frame_get_vertical_scrollbar_policy):
- * webkit/webkitwebframe.h:
- * tests/testwindow.c: Added.
- (load_finished_cb):
- (test_webkit_window_scrollbar_policy):
- (main):
-
-2009-08-28 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Gustavo Noronha and Xan Lopez.
-
- [Gtk] Add view source mode API
- https://bugs.webkit.org/show_bug.cgi?id=28805
-
- Implement setter and getter for "view source" mode.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_set_view_source_mode):
- (webkit_web_frame_get_view_source_mode):
- * webkit/webkitwebview.h:
-
-2009-08-26 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=28738
- Expose undo/redo functionality in WebKitWebView
-
- Expose undo/redo functionality in WebKitWebView, keeping the
- default bindings as they were.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_real_undo):
- (webkit_web_view_real_redo):
- (webkit_web_view_class_init):
- (webkit_web_view_can_undo):
- (webkit_web_view_undo):
- (webkit_web_view_can_redo):
- (webkit_web_view_redo):
- * webkit/webkitwebview.h:
-
-2009-08-24 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- News about the 1.1.13 release.
-
- * NEWS:
-
-2009-08-24 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Add new symbols, and an index of new symbols for the 1.1.13
- release.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2009-08-23 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Fix a couple of typos.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
-
-2009-08-23 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update editing-behavior property here too.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_settings_notify):
-
-2009-08-23 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Rubberstamped by Gustavo Noronha.
-
- Fix regressions introduced by http://trac.webkit.org/changeset/47690.
-
- Update the setting whenever the property gets set.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_settings_notify):
-
-2009-08-23 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez.
-
- [Gtk] API for disabling local file access to web URLs
- https://bugs.webkit.org/show_bug.cgi?id=28663
-
- Add a setting to enable or disable file access to web URLs. It's
- disabled by default for security reasons.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
-
-2009-08-22 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=28154
- clicking below end of text in a textarea moves cursor to wrong position
-
- Expose the EditingBehavior setting and set it by default to Mac,
- since that what matches the GTK+ default behavior.
-
- * webkit/webkitprivate.cpp:
- (WebKit::core):
- * webkit/webkitprivate.h:
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebsettings.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
-
-2009-08-20 Aaron Boodman <aa@chromium.org>
-
- Hopefully the last speculative build for gtk.
-
- * webkit/webkitprivate.cpp:
- (webkit_white_list_access_from_origin):
- * webkit/webkitprivate.h:
-
-2009-08-20 David Levin <levin@chromium.org>
-
- Another speculative build for gtk.
-
- * webkit/webkitprivate.cpp:
- (webkit_white_list_access_to_origin):
-
-2009-08-20 David Levin <levin@chromium.org>
-
- Speculative build for gtk.
-
- * webkit/webkitprivate.cpp:
- (webkit_white_list_access_to_origin):
-
-2009-08-19 Aaron Boodman <aa@chromium.org>
-
- Fix build break.
-
- * webkit/webkitprivate.h: "WEBKIT API" -> "WEBKIT_API"
-
-2009-08-19 Aaron Boodman <aa@chromium.org>
-
- Reviewed by David Levin.
-
- https://bugs.webkit.org/show_bug.cgi?id=24853: Provide a way for WebKit clients to
- specify a more granular policy for cross-origin XHR access.
-
- * webkit/webkitprivate.cpp:
- (webkit_white_list_access_to_origin): Add API to manipulate origin access whitelists.
- (webkit_reset_origin_access_white_lists): Ditto.
- * webkit/webkitprivate.h: Ditto.
-
-2009-08-18 Xan Lopez <xlopez@igalia.com>
-
- Rubber-stamped by Holger Freyther.
-
- Remove an unneeded include.
-
- * WebCoreSupport/DragClientGtk.cpp:
-
-2009-08-18 Fumitoshi Ukai <ukai@chromium.org>
-
- Reviewed by Eric Seidel.
-
- https://bugs.webkit.org/show_bug.cgi?id=28443
- Fix build break with gtk older than 2.14.
-
- WebKit gtk port requires gtk 2.10 or later, but DragClientGtk.cpp
- uses gtk_widget_get_window that is introduced in 2.14.
-
- * WebCoreSupport/DragClientGtk.cpp:
- define gtk_widget_get_window for gtk older than 2.14.
-
-2009-08-18 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Oliver Hunt.
-
- [Gtk] crash when closing page from javascript
- https://bugs.webkit.org/show_bug.cgi?id=27439
-
- Do not unref the WebView in ChromeClientGtk::closeWindowSoon
- because (1) a create-web-view handler can return a NULL WebView,
- (2) the created WebView is owned by its containing widget, and (3)
- clients may not handle the close-web-view signal so this avoids
- unreffing a WebView more than once.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::closeWindowSoon):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2009-08-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=19360
- Frags on current page don't generate "navigation-requested" events
-
- Fix order of parameters for the creation of SubstituteData object,
- so that normal data loads do not have an unreachable URL. Also
- remove a confusion about the purpose of the last parameter.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_load_data):
-
-2009-08-18 Drew Wilson <atwilson@google.com>
-
- Reviewed by Eric Seidel.
-
- Need to extend DumpRenderTree to expose number of worker threads
- https://bugs.webkit.org/show_bug.cgi?id=28292
-
- * webkit/webkitprivate.h:
- * webkit/webkitworkers.cpp: Added.
- (webkit_worker_thread_count):
- Exposed WebCore::WorkerThread::workerThreadCount() for the gtk version of DumpRenderTree.
-
-2009-08-18 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Fix the ATK unit test.
-
- We now support line boundaries in the get_text functions, so we
- need to make sure the test has the layout we expect by giving it
- enough space to fit in one line.
-
- * tests/testatk.c:
- (test_webkit_atk_get_text_at_offset):
-
-2009-08-15 Zan Dobersek <zandobersek@gmail.com>
-
- Reviewed by Xan Lopez.
-
- Fix compiler warnings.
-
- * webkit/webkitwebview.cpp:
- (clipboard_contents_received):
- (webkit_web_view_drag_data_get):
-
-2009-08-14 Jiahua Huang <jhuangjiahua@gmail.com>
-
- Reviewed by Jan Alonzo.
-
- [gtk] Pasteboard/GtkClipboard can't handle the "text/html" target.
- https://bugs.webkit.org/show_bug.cgi?id=27028
-
- Add a function in WebKit::PasteboardHelperGtk that will return the
- value of WEBKIT_WEB_VIEW_TARGET_INFO_HTML,
- and WebCore::clipboard_get_contents_cb will use that.
-
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- (WebKit::PasteboardHelperGtk::getWebViewTargetInfoHtml):
- * WebCoreSupport/PasteboardHelperGtk.h:
-
-2009-08-14 Benjamin Otte <otte@gnome.org>
-
- Reviewed by Gustavo Noronha.
-
- Fix webkit_web_view_set_highlight_text_matches() so that highlighting
- works properly in documents with frames.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_set_highlight_text_matches):
-
-2009-08-13 Zan Dobersek <zandobersek@gmail.com>
-
- Reviewed by Gustavo Noronha.
-
- [GTK] Drag and drop support
- https://bugs.webkit.org/show_bug.cgi?id=23642
-
- Adds support for drag actions in WebKitWebView and DragClient.
-
- Defines a support structure that can hold additional drag and drop data,
- such as selection data or target IDs (infos) and can be passed through
- clipboard requests.
-
- Implements DragClient functions that gather start position of the drag
- and start the GTK drag.
-
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::DragClient):
- (WebKit::DragClient::willPerformDragSourceAction):
- (WebKit::DragClient::startDrag):
- (WebKit::DragClient::createDragImageForLink): A small style fix.
- * WebCoreSupport/DragClientGtk.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_drag_end):
- (clipboard_contents_received): GtkClipboard callback.
- (webkit_web_view_drag_data_get):
- (webkit_web_view_class_init):
- (webkit_web_view_init):
- * webkit/webkitwebview.h: Add GTK selection targets.
-
-2009-08-12 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed build fix.
-
- Last-minute change on the new soup API to use the keyring was not
- reflected in our usage - the documentation says we should use
- g_slist_free, and soup_auth_free_saved_users doesn't exist.
-
- * webkit/webkitsoupauthdialog.c:
- (session_authenticate):
-
-2009-08-12 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- [GTK] Remove keyring optional features
- https://bugs.webkit.org/show_bug.cgi?id=28173
-
- Remove keyring support from our code and rely on libsoup to store
- the authentication data if the user requests that support in their
- application/library.
-
- * webkit/webkitsoupauthdialog.c:
- (response_callback):
- (show_auth_dialog):
- (session_authenticate):
-
-2009-08-11 Benjamin Otte <otte@gnome.org>
-
- Reviewed by Xan Lopez.
-
- When instructed to print an out-of-range page, print an empty page
- instead of crashing.
-
- * webkit/webkitwebframe.cpp:
- (draw_page_callback):
-
-2009-08-10 Brady Eidson <beidson@apple.com>
-
- GTK build fix.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_get_suggested_filename):
-
-2009-08-08 Xan Lopez <xlopez@igalia.com>
-
- Roll out r46928, since it wasn't done in accordance with the
- agreed naming.
-
- * ChangeLog:
-
- Remove the ChangeLog entry, since it was added at the bottom of
- the file.
-
- * gdom/GdomDOMObject.h: Removed.
- * gdom/GdomDOMObjectPrivate.h: Removed.
-
-2009-08-08 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Enable accessibility in Gtk DRT
- https://bugs.webkit.org/show_bug.cgi?id=25989
-
- Add SPI to get the focused accessible element to be used by DRT.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_focused_accessible_element):
-
-2009-07-30 Martin Robinson <mrobinson@appcelerator.com>
-
- Reviewed by Xan Lopez, Gustavo Noronha and Jan Alonzo.
-
- [GTK] new-window-policy-decision-requested provides no information about the target frame
- https://bugs.webkit.org/show_bug.cgi?id=27792
-
- Add frameName property to the WebKitWebNavigation object.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::getNavigationAction):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- * webkit/webkitwebnavigationaction.cpp:
- (webkit_web_navigation_action_get_property):
- (webkit_web_navigation_action_set_property):
- (webkit_web_navigation_action_class_init):
- (webkit_web_navigation_action_get_target_frame):
- (webkit_web_navigation_action_set_target_frame):
- * webkit/webkitwebnavigationaction.h:
-
-2009-07-29 Kevin McCullough <kmccullough@apple.com>
-
- Reviewed by Darin Adler.
-
- Added foundation work to allow a testing infrastructure for the Web
- Inspector.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::inspectorWindowObjectCleared):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2009-07-29 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Eric Seidel and Xan Lopez.
-
- [Gtk] Enable http/tests/appcache tests
- https://bugs.webkit.org/show_bug.cgi?id=27674
-
- Add 'enable-offline-web-application-cache' WebSetting to enable
- or disable the appcache. Also, Add appcache SPI for DRT to use.
-
- * webkit/webkitapplicationcache.cpp: Added.
- (webkit_application_cache_set_maximum_size):
- * webkit/webkitprivate.cpp:
- (webkit_init):
- * webkit/webkitprivate.h:
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2009-07-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Add information about the regression fix for WEBKIT_DEBUG.
-
- * NEWS:
-
-2009-07-28 Priit Laes <plaes@plaes.org>
-
- Reviewed by Xan Lopez.
-
- Fix mnemonics in the soup authentication dialog.
-
- * webkit/webkitsoupauthdialog.c:
- (show_auth_dialog):
-
-2009-07-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- * NEWS: update for 1.1.12 release.
-
-2009-07-27 Alexey Proskuryakov <ap@webkit.org>
-
- Build fix.
-
- * webkit/webkitwebframe.cpp: (webkit_gc_count_javascript_objects): Added a namespace to
- SilenceAssertionsOnly.
-
-2009-07-27 Alexey Proskuryakov <ap@webkit.org>
-
- Reviewed by Darin Adler.
-
- https://bugs.webkit.org/show_bug.cgi?id=27735
- Give a helpful name to JSLock constructor argument
-
- * webkit/webkitwebframe.cpp:
- (webkit_gc_count_javascript_objects):
-
-2009-07-24 Priit Laes <plaes@plaes.org>
-
- Reviewed by Xan Lopez.
-
- [Gtk] Password is saved into gnome-keyring even if auth. fails
- https://bugs.webkit.org/show_bug.cgi?id=27560
-
- Check authentication result and save password only when authentication
- succeeds.
-
- * webkit/webkitsoupauthdialog.c:
- (free_authData):
- (response_callback):
- (save_password_callback):
-
-2009-07-24 Andrei Popescu <andreip@google.com>
-
- Reviewed by Anders Carlsson.
-
- ApplicationCache should have size limit
- https://bugs.webkit.org/show_bug.cgi?id=22700
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::reachedMaxAppCacheSize):
- Adds empty implementation of reachedMaxAppCacheSize.
- * WebCoreSupport/ChromeClientGtk.h:
-
-2009-07-23 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Eric Seidel.
-
- [Gtk] Add implementation of GCController for DRT
- https://bugs.webkit.org/show_bug.cgi?id=27636
-
- Add SPI for GCController to use.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_gc_collect_javascript_objects):
- (webkit_gc_collect_javascript_objects_on_alternate_thread):
- (webkit_gc_count_javascript_objects):
-
-2009-07-22 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Mark Rowe.
-
- Fix compiler warning.
-
- * tests/testwebsettings.c:
- (test_webkit_web_settings_user_agent):
-
-2009-07-22 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Remove unused variables.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_grab_focus):
- (webkit_web_view_focus_in_event):
-
-2009-07-21 Priit Laes <plaes@plaes.org>
-
- Reviewed by Holger Freyther.
-
- [GTK+] Missing accelerator in authentication dialog
- https://bugs.webkit.org/show_bug.cgi?id=25509
-
- Add accelerator to checkbox text.
-
- * WebKit/gtk/webkit/webkitsoupauthdialog.c:
- (show_auth_dialog):
-
-2009-07-21 Priit Laes <plaes@plaes.org>
-
- Reviewed by Holger Freyther.
-
- [GTK] http auth dialog pops up twice after a cancelled atempt
- https://bugs.webkit.org/show_bug.cgi?id=24818
-
- Remove workaround required for libsoup versions <=2.26.2 as we depend
- on 2.27.4 now.
-
- * webkit/webkitsoupauthdialog.c:
- (session_authenticate):
-
-2009-07-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- [GTK] Widget size negotiation
- https://bugs.webkit.org/show_bug.cgi?id=17154
-
- Implement proper size request for the WebView widget.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::contentsSizeChanged):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_size_request):
- (webkit_web_view_class_init):
-
-2009-07-16 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Jan Alonzo.
-
- [GTK+] Update the focus handling code.
-
- Change focus-in to always call setActive(true), call
- FocusController::setFocusedFrame when no focused frame exists
- other SelectionController::setActive. This is matching Windows
- and Qt.
-
- On focus-out call FocusController::setActive(false) and
- SelectionController::setFocued(false). This is matching Windows
- and Qt as well.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_focus_in_event):
- (webkit_web_view_focus_out_event):
-
-2009-07-16 Xiaomei Ji <xji@chromium.org>
-
- Reviewed by Dan Bernstein.
-
- This is the 2nd part of fixing "RTL: tooltip does not get its directionlity from its element's."
- https://bugs.webkit.org/show_bug.cgi?id=24187
-
- Add one extra parameter to the callee of HitTestResult::title() due to the signature change.
-
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement): Add direction as a parameter to the callee of HitTestResult::title().
-
-2009-07-16 Xiaomei Ji <xji@chromium.org>
-
- Reviewed by Darin Adler.
-
- Fix tooltip does not get its directionality from its element's directionality.
- https://bugs.webkit.org/show_bug.cgi?id=24187
-
- Per mitz's suggestion in comment #6, while getting the plain-text
- title, we also get the directionality of the title. How to handle
- the directionality is up to clients. Clients could ignore it,
- or use attribute or unicode control characters to display the title
- as what they want.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::setToolTip): Add directionality as 2nd parameter to setToopTip() (without handling it yet).
- * WebCoreSupport/ChromeClientGtk.h: Add directionality as 2nd parameter to setToolTip().
-
-2009-07-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Jan Alonzo.
-
- Fix enable-xss-auditor property documentation, and default value
- to match the fact that it is now enabled by default.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
-
-2009-07-14 Zoltan Horvath <hzoltan@inf.u-szeged.hu>
-
- Reviewed by Darin Adler.
-
- Change all Noncopyable inheriting visibility to public.
- https://bugs.webkit.org/show_bug.cgi?id=27225
-
- Change all Noncopyable inheriting visibility to public because
- it is needed to the custom allocation framework (bug #20422).
-
- * webkit/webkitdownload.cpp:
-
-2009-07-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Late NEWS file for 1.1.11.
-
- * NEWS:
-
-2009-07-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Changes to the doc control files for 1.1.11.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2009-07-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Holger Freyther.
-
- Fix unit test to use the correct assumption that the SoupMessage
- will be NULL when WebKitNetworkRequest is created from an URI.
-
- * tests/testnetworkrequest.c:
- (test_network_request_create_destroy):
-
-2009-07-13 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- <https://bugs.webkit.org/show_bug.cgi?id=27171> [Gtk]
- REGRESSION (r45440): fails at fast/events/frame-programmatic-focus.html
-
- Reviewed by Gustavo Noronha.
-
- focus-in and focus-out events only get triggered when there's user
- interaction, hence setFocused(bool) never gets called when
- focusEvent is triggered when running the layout tests. The
- solution seems to be to implement grab-focus too so we can call
- setFocused(bool) when a widget has focus.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_grab_focus):
- (webkit_web_view_focus_in_event):
- (webkit_web_view_class_init):
-
-2009-07-13 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- https://bugs.webkit.org/show_bug.cgi?id=26718 [Gtk] Add support for javascript windows for DRT
-
- Reviewed by Gustavo Noronha and Xan Lopez.
-
- Add API to support opening and closing of JavaScript windows automatically.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::closeWindowSoon):
- * webkit/webkitprivate.h:
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_real_close_web_view):
- (webkit_web_view_class_init):
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
- (webkit_web_view_set_group_name):
- * webkit/webkitwebview.h:
-
-2009-07-12 Brent Fulgham <bfulgham@gmail.com>
-
- Speculative build fix after http://trac.webkit.org/changeset/45786.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::addMessageToConsole):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2009-07-09 Beth Dakin and Jon Honeycutt <bdakin@apple.com>
-
- Reviewed by Dave Hyatt.
-
- Make Widget RefCounted to fix:
-
- <rdar://problem/7038831> REGRESSION (TOT): In Mail, a crash occurs
- at WebCore::Widget::afterMouseDown() after clicking To Do's close
- box
- <rdar://problem/6978804> WER #16: Repro Access Violation in
- WebCore::PluginView::bindingInstance (1310178023)
- -and-
- <rdar://problem/6991251> WER #13: Crash in WebKit!
- WebCore::PluginView::performRequest+203 (1311461169)
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createPlugin):
- (WebKit::FrameLoaderClient::createJavaAppletWidget):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-07-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Jan Alonzo.
-
- Use soup's content sniffing
- https://bugs.webkit.org/show_bug.cgi?id=26982
-
- Add the new Content Sniffing feature provided by libsoup.
-
- * webkit/webkitprivate.cpp:
- (webkit_init):
-
-2009-07-05 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Xan Lopez.
-
- Always initialize WebCore.
-
- It is possible that WebKitWebSettings and other classes get
- constructed before the WebKitWebView. In this case WebCore is
- not yet properly initialized. Add webkit_init to every class
- that can be constructed by API users.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_class_init):
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_class_init):
- * webkit/webkitwebbackforwardlist.cpp:
- (webkit_web_back_forward_list_class_init):
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_web_history_item_class_init):
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- * webkit/webkitwebwindowfeatures.cpp:
- (webkit_web_window_features_class_init):
-
-2009-07-03 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez and Gustavo Noronha.
-
- Set user-agent from application
- https://bugs.webkit.org/show_bug.cgi?id=17375
-
- Add 'user-agent' setter/getter API to WebSettings.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit::FrameLoaderClient::userAgent):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- * webkit/webkitprivate.h:
- * webkit/webkitversion.h.in:
- * webkit/webkitwebsettings.cpp:
- (webkit_get_user_agent):
- (webkit_web_settings_class_init):
- (webkit_web_settings_finalize):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- (webkit_web_settings_get_user_agent):
- * webkit/webkitwebsettings.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_dispose):
-
-2009-07-02 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Holger Freyther.
-
- Update the new boolean property in FocusController that keeps
- track of whether or not the Page is focused.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_focus_in_event):
- (webkit_web_view_focus_out_event):
-
-2009-06-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- Fix a couple of compiler warnings.
-
- * webkit/webkitwebnavigationaction.cpp:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_real_move_cursor):
-
-2009-06-28 Xan Lopez <xlopez@igalia.com>
-
- Fix the GTK+ build.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::ContextMenuClient::isSpeaking):
- * WebCoreSupport/ContextMenuClientGtk.h:
-
-2009-06-24 Jiahua Huang <jhuangjiahua@gmail.com>
-
- Reviewed by Holger Freyther.
-
- [Gtk] Add Undo/Redo support to WebKitGtk
- https://bugs.webkit.org/show_bug.cgi?id=26573
-
- Implement EditorClient::undo and other interested funcs.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::registerCommandForUndo):
- (WebKit::EditorClient::registerCommandForRedo):
- (WebKit::EditorClient::clearUndoRedoOperations):
- (WebKit::EditorClient::canUndo):
- (WebKit::EditorClient::canRedo):
- (WebKit::EditorClient::undo):
- (WebKit::EditorClient::redo):
- (WebKit::EditorClient::EditorClient):
- * WebCoreSupport/EditorClientGtk.h:
-
-2009-06-20 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Gustavo Noronha and Xan Lopez.
-
- [Gtk] Implement DRT XSS auditor support
- https://bugs.webkit.org/show_bug.cgi?id=26571
-
- Add a setting "enable-xss-auditor" to enable this feature.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2009-06-20 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Gustavo Noronha and Xan Lopez.
-
- webkit_web_back_forward_list_add_item() should add a ref for the history item
- https://bugs.webkit.org/show_bug.cgi?id=26517
-
- Add a ref to the WebHistoryItem when it's added to the back
- forward list through webkit_web_back_forward_list_add_item.
- This keeps the history item alive and prevents pywebkitgtk from
- crashing
-
- * tests/testwebbackforwardlist.c:
- (test_webkit_web_history_item_lifetime):
- (test_webkit_web_back_forward_list_order):
- (test_webkit_web_back_forward_list_add_item):
- * webkit/webkitwebbackforwardlist.cpp:
- (webkit_web_back_forward_list_add_item):
-
-2009-06-20 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Jan Alonzo.
-
- Initial test case for loading statuses.
-
- * tests/testloading.c: Added.
- (load_finished_cb):
- (status_changed_cb):
- (test_loading_status):
- (main):
-
-2009-06-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Jan Alonzo.
-
- Fix the ordering in which the new load status goes into the enum
- to avoid ABI breakage.
-
- * webkit/webkitwebframe.h:
-
-2009-06-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez and Christian Dywan.
-
- Add a new load status to report that the first visually non-empty
- layout has been done.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
- * webkit/webkitwebframe.h:
-
-2009-06-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Fix parameters of navigation-policy-decision-requested callback,
- to be correct in number and type
-
- * tests/testhttpbackend.c:
- (navigation_policy_decision_requested_cb):
-
-2009-06-18 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::loadDone):
- (WebKit::FrameLoaderClient::dispatchDidFinishLoad):
- (WebKit::FrameLoaderClient::dispatchDidFailProvisionalLoad):
- (WebKit::FrameLoaderClient::dispatchDidFailLoad): Introduce the static
- function loadDone to emit "load-done" and update the status and update
- the relevent places. We missed some status notifications before.
-
-2009-06-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Xan Lopez.
-
- Be consistent in always using the term URI instead of URL in the
- documentation of WebKitWebView signals.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2009-06-16 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Do not use g_assert_cmpint to test for NULL pointer, just
- g_assert.
-
- * tests/testnetworkrequest.c:
- (test_network_request_create_destroy):
-
-2009-06-15 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=26377
- [GTK] Confusion about range of 'progress' property
-
- Range for the progress property is 0.0 .. 1.0, don't multiply it
- by 100 to make it a percentage.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_progress):
-
-2009-06-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Add new symbols list for 1.1.10 release.
-
- * docs/webkitgtk-docs.sgml:
-
-2009-06-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Xan Lopez.
-
- Fix Since tags for the new uri and message properties.
-
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_class_init):
-
-2009-06-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Adding new documented API to the generated
- documentation.
-
- * docs/webkitgtk-sections.txt:
-
-2009-06-15 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Update NEWS for 1.1.10 release.
-
- * NEWS:
-
-2009-06-11 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- Add a test to perform an actual download.
-
- * tests/testdownload.c:
- (navigation_policy_decision_requested_cb):
- (notify_status_cb):
- (download_requested_cb):
- (test_webkit_download_perform):
- (main):
-
-2009-06-11 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- Fix crash when downloading, caused by assuming SoupMessage would
- be there. This change factors the logic required to create a
- ResourceRequest from a WebKitNetworkRequest into a core()
- function, like we have for some other classes.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_start):
- * webkit/webkitprivate.cpp:
- (WebKit::core):
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_load_request):
-
-2009-06-10 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- Make WebKitNetworkRequest a proper GObject, making URI and
- SoupMessage properties. Also adding unit tests for creation and
- destruction.
-
- * tests/testnetworkrequest.c: Added.
- (test_network_request_create_destroy):
- (test_network_request_properties):
- (main):
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_get_property):
- (webkit_network_request_set_property):
- (webkit_network_request_class_init):
- (webkit_network_request_init):
- (webkit_network_request_constructor):
- (webkit_network_request_new_with_core_request):
- (webkit_network_request_new):
- (webkit_network_request_set_uri):
- (webkit_network_request_get_uri):
- * webkit/webkitnetworkrequest.h:
-
-2009-06-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- News for 1.1.9.
-
- * NEWS:
-
-2009-06-09 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Gustavo Noronha.
-
- Clear the frame name before we run each tests so we don't get
- "someFloaString" or "3" in the target frame name.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_clear_main_frame_name):
-
-
-2009-06-10 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=25415
- [GTK][ATK] Please implement support for get_text_at_offset
-
- Update test for new implementation (it fixes two bugs and adds
- actual implementations for LINE boundaries).
-
- * tests/testatk.c:
- (test_webkit_atk_get_text_at_offset):
-
-2009-06-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=26104
- [GTK] Make NetworkRequest a proper GObject and expose SoupMessage
-
- Refactor how SoupMessage is handled, so that our ResourceRequest
- object doesn't have to store it as a member, which complicates
- managing ResourceRequest's lifetvime.
-
- * tests/testhttpbackend.c:
- (navigation_policy_decision_requested_cb):
- (test_soup_message_lifetime):
- * webkit/webkitnetworkrequest.cpp:
- (WTF::SoupMessage):
- (webkit_network_request_new_with_core_request):
-
-2009-06-08 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=26240
- [GTK] Try again button loses query strings
-
- Only trigger reload, when try again is clicked, this way we do not
- lose the query strings, like we did when also triggering a form
- submission.
-
- * resources/error.html:
-
-2009-06-06 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=26175
- [GTK] Download progress notification should be throttled, for the benefit of download managers
-
- Throttle notifications for the 'progress' property of the Download
- object, and update documentation to note the fact that this is
- being done, and how to get all notifications if you really care
- about them.
-
- * webkit/webkitdownload.cpp:
- (webkit_download_class_init):
- (webkit_download_received_data):
-
-2009-05-29 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Gustavo Noronha.
-
- Fixed compile warning when comparing the different navigation types
-
- * webkit/webkitwebnavigationaction.cpp:
- (webkit_web_navigation_action_class_init):
-
-2009-05-29 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=26075
- [GTK] Refactor key scrolling code
-
- After the scrolling changes in r44177 we can now use the
- FrameView::scroll method like the other ports, keeping the magic
- constants for the scrolling amounts inside WebCore proper.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_real_move_cursor):
-
-2009-05-29 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Jan Alonzo.
-
- Make NetworkRequest carry a reference of the SoupMessage used by
- ResourceRequest, and use that to create new ResourceRequests where
- needed, so that no information is lost while passing around
- NetworkRequest objects.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- (WebKit::FrameLoaderClient::startDownload):
- * webkit/webkitdownload.cpp:
- (webkit_download_start):
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_finalize):
- (webkit_network_request_new_with_core_request):
- (webkit_network_request_new):
- (webkit_network_request_get_message):
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_load_request):
-
-2009-05-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=26048
- navigation-policy-decision-requested documentation incomplete
-
- Fix documentation for all policy decision request signals, to
- mention that an actual decision is expected when you return TRUE,
- meaning that you handled the signal.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2009-05-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Mention the implementation of the new AtkText methods.
-
- * NEWS:
-
-2009-05-19 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo and Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=25415
- [GTK][ATK] Please implement support for get_text_at_offset
-
- New test file for ATK functionality.
-
- * tests/testatk.c: Added.
- (bail_out):
- (test_get_text_function):
- (test_webkit_atk_get_text_at_offset):
- (main):
-
-2009-05-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Document changes worth noting for 1.1.8.
-
- * NEWS:
-
-2009-05-27 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=26039
- [GTK] WebKitWebHistoryItem lifetime fixes
-
- Modify the management of history items by the BackForward list.
-
- Having the objects add themselves to a hash table with an extra
- reference made impossible for the cleanup code in the dispose
- method to be ever called in normal conditions, since dispose is
- called before getting rid of the last reference, which the objects
- were making to themselves. Get rid of this extra reference and
- move the responsibility of the cleanup to the BackForward list
- itself, which effectively owns the WebKitWebHistoryItems now.
-
- Also, update the tests to reflect this change.
-
- * tests/testwebbackforwardlist.c:
- (test_webkit_web_history_item_lifetime):
- (test_webkit_web_back_forward_list_order):
- (test_webkit_web_back_forward_list_add_item):
- * tests/testwebhistoryitem.c:
- (web_history_item_fixture_setup):
- (web_history_item_fixture_teardown):
- * webkit/webkitprivate.h:
- * webkit/webkitwebbackforwardlist.cpp:
- (webkit_web_back_forward_list_dispose):
- (webkit_web_back_forward_list_class_init):
- * webkit/webkitwebhistoryitem.cpp:
- (webkit_history_items):
- (webkit_history_item_add):
- (webkit_web_history_item_dispose):
- (WebKit::kit):
-
-2009-05-26 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=26039
- [GTK] WebKitWebHistoryItem lifetime fixes
-
- Delete the BackForwardList before the Page, otherwise the references
- to the WebKitWebHistoryItems will be gone.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_dispose):
-
-2009-05-27 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- Add comment to clarify why scrolling is done as it is and not with
- gdk_window_scroll.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::scroll):
-
-2009-05-27 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Adding new symbols index for 1.1.8.
-
- * docs/webkitgtk-docs.sgml:
-
-2009-05-26 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Xan Lopez.
-
- Add a new signal called "create-plugin-widget" and emit it from
- within the FrameLoaderClientGtk::createPlugin method. If a
- GtkWidget gets returned it will be embedded as a WebCore::Widget
- using the new GtkPluginWidget.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createPlugin):
- * webkit/webkitwebview.cpp:
- (webkit_signal_accumulator_object_handled):
- (webkit_web_view_class_init):
- * webkitmarshal.list:
-
-2009-05-24 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Mark Rowe.
-
- https://bugs.webkit.org/show_bug.cgi?id=25987
- [GTK] Clarify WebKitWebView::download-requested documentation
-
- Explain a bit why this signal is not emitted by default and offer
- a common solution/setup for that issue.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_class_init):
-
-2009-05-23 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Rubber-stamped by Gustavo Noronha.
-
- Break the switch once private browsing is selected.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
-
-2009-05-23 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Gustavo Noronha and Xan Lopez.
-
- [Gtk] Enable database and localStorage support
- https://bugs.webkit.org/show_bug.cgi?id=25629
-
- Add settings to enable or disable database and localStorage
- support and enable them by default. This allows databases to be
- shown in the WebInspector as well as allow us to run the storage
- layout tests.
-
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_class_init):
- (webkit_web_settings_set_property):
- (webkit_web_settings_get_property):
- (webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- (webkit_web_view_update_settings):
- (webkit_web_view_settings_notify):
-
-2009-05-23 David Kilzer <ddkilzer@apple.com>
-
- Part 2 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr
-
- <https://bugs.webkit.org/show_bug.cgi?id=25495>
-
- Reviewed by Oliver Hunt.
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::createHTMLParserQuirks): Return a
- PassOwnPtr<> instead of a raw HTMLParserQuirks pointer.
-
-2009-05-22 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Jan Alonzo.
-
- Improve NetworkRequest documentation.
-
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_class_init):
- (webkit_network_request_init):
-
-2009-05-21 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Maciej Stachowiak.
-
- https://bugs.webkit.org/show_bug.cgi?id=24818
- [GTK] http auth dialog pops up twice after a cancelled atempt
-
- Workaround libsoup bug
- http://bugzilla.gnome.org/show_bug.cgi?id=583462, which made
- libsoup emit the 'authenticate' signal more often than it was
- expected.
-
- We'll be able to remove this when we depend on libsoup > 2.26.2.
-
- * webkit/webkitsoupauthdialog.c:
- (session_authenticate):
-
-2009-05-21 Darin Fisher <darin@chromium.org>
-
- Fix build bustage.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::getAutoCorrectSuggestionForMisspelledWord): Add stub for method.
- * WebCoreSupport/EditorClientGtk.h:
-
-2009-05-20 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Darin Adler.
-
- https://bugs.webkit.org/show_bug.cgi?id=25834
-
- Make ChromeClient a interface again
-
- With recent additions to ChromeClient.h empty defaults were
- added. This is bad for porters as these changes go unnoticed
- and at runtime no notImplemented warning is logged and grepping
- for notImplemented will not show anything. Change this Client
- to be like the other Clients again and always have pure virtuals
- (but for stuff inside #ifdef PLATFORM(MAC)).
-
- Update the various WebKit/* implementations to compile again.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::setCursor):
- (WebKit::ChromeClient::requestGeolocationPermissionForFrame):
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::scrollRectIntoView):
-
-2009-05-19 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Jan Alonzo.
-
- Do not try to free enchant broker and dictionary if they do not
- exist, those functions aren't NULL-safe.
-
- * webkit/webkitwebsettings.cpp:
- (free_spell_checking_language):
-
-2009-05-15 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Jan Alonzo.
-
- Plug memory leak.
-
- * webkit/webkitwebsettings.cpp:
- (free_spell_checking_language):
- (webkit_web_settings_finalize):
- (webkit_web_settings_set_property):
-
-2009-05-15 Fridrich Strba <fridrich.strba@bluewin.ch>
-
- Reviewed by Jan Alonzo.
-
- Converting filename to uri by concatenating strings is broken
- on Windows. Use proper glib conversion functions.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_open):
- * tests/testdownload.c:
- (test_webkit_download_create):
-
-2009-05-13 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Do not handle KeyEvents with Ctrl or Alt modifiers that we
- otherwise know nothing about. Otherwise shortcuts defined in the
- WebView will never be executed.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::handleEditingKeyboardEvent):
-
-2009-05-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Add information about the SVG index bounds check committed in
- r43590.
-
- * NEWS:
-
-2009-05-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Note changes since 1.1.6.
-
- * NEWS:
-
-2009-05-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Updated control file, and main file for the 1.1.7
- release.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2009-05-11 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=25685
- [GTK] Middle click paste form the pasteboard
-
- For paste from middle button (button==2) we want to use
- the GDK_PRIMARY_SELECTION. Implement the new getCurrentTarget
- method in PasteboardHelperGtk by asking the WebView which
- clipboard to use.
-
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- (WebKit::PasteboardHelperGtk::getCurrentTarget):
- * WebCoreSupport/PasteboardHelperGtk.h:
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_button_press_event):
- (webkit_web_view_use_primary_for_paste):
-
-2009-05-12 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Holger Freyther.
-
- [Gtk] Various autotools build refactoring and fixes
- https://bugs.webkit.org/show_bug.cgi?id=25286
-
- Add glib-2.0 to the list of required package.
-
- * webkit.pc.in:
-
-2009-05-11 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=25697
- [GTK] Warnings building WebKit/gtk/tests/testwebframe.c
-
- * tests/testwebframe.c:
- (test_webkit_web_frame_create_destroy): Declare webView as a GtkWidget*
- to fix pointer type incompatibility warnings.
-
-2009-05-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Make the scan program call g_thread_init(NULL) in addition to
- g_type_init(), so that it actually works.
-
- * docs/GNUmakefile.am:
-
-2009-05-08 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Unify scrolling code via adjustments and keys. Use the WebCore
- defined constants, since that's what people are most used to at
- this point.
-
- * ChangeLog:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_real_move_cursor):
-
-2009-05-07 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidChangeLocationWithinPage):
- (WebKit::FrameLoaderClient::dispatchDidCommitLoad): Add missing
- call to notifyStatus in the committed case and a missing property notify.
-
-2009-05-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=24786
- WebKitDownload sometimes suggests peculiar filenames
-
- When a download is requested by an ongoing request, use the already
- provided response to set the suggested filename for the WebKitDownload
- object, if available.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::download):
- * webkit/webkitdownload.cpp:
- (_WebKitDownloadPrivate::webkit_download_set_property):
- (_WebKitDownloadPrivate::webkit_download_get_suggested_filename):
- (_WebKitDownloadPrivate::webkit_download_set_suggested_filename):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
-
-2009-05-06 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Holger Freyther.
-
- GTK+ API implementation files have bogus extern "C" entries
- https://bugs.webkit.org/show_bug.cgi?id=24322
-
- Remove bogus extern "C" from the source files.
-
- * webkit/webkitdownload.cpp:
- (DownloadClient::cannotShowURL):
- * webkit/webkiterror.cpp:
- (webkit_plugin_error_quark):
- * webkit/webkitnetworkrequest.cpp:
- (webkit_network_request_get_uri):
- * webkit/webkitprivate.cpp:
- (webkit_init):
- * webkit/webkitversion.cpp:
- (webkit_micro_version):
- * webkit/webkitwebbackforwardlist.cpp:
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_get_load_status):
- * webkit/webkitwebhistoryitem.cpp:
- * webkit/webkitwebinspector.cpp:
- (webkit_web_inspector_set_inspector_client):
- * webkit/webkitwebnavigationaction.cpp:
- (webkit_web_navigation_action_get_modifier_state):
- * webkit/webkitwebpolicydecision.cpp:
- (webkit_web_policy_decision_cancel):
- * webkit/webkitwebsettings.cpp:
- (webkit_web_settings_get_spell_languages):
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebwindowfeatures.cpp:
- (webkit_web_window_features_equal):
-
-2009-05-06 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Holger Freyther.
-
- Misc fixes to InspectorClientGtk.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::createPage): use g_filename_to_uri to
- get the URI and use web_view_load_uri instead of the deprecated
- web_view_open method for loading the URI.
- (WebKit::InspectorClient::localizedStringsURL): implement.
-
-2009-05-05 Ben Murdoch <benm@google.com>
-
- Reviewed by Eric Seidel.
-
- Add #if ENABLE(DATABASE) guards around database code so toggling ENABLE_DATABASE off does not break builds.
- https://bugs.webkit.org/show_bug.cgi?id=24776
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::exceededDatabaseQuota):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2009-05-06 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Gustavo Noronha.
-
- http://bugs.webkit.org/show_bug.cgi?id=17066
- [GTK] Improve frameloader signals
-
- Implement load-status and progress properties on the view, as well as
- load-status on the frame. This supersedes the different load signals
- load-progress-changed, load-committed, load-done, load-started and
- load-finished which are not only misnamed but broken by design.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::notifyStatus):
- (WebKit::FrameLoaderClient::postProgressStartedNotification):
- (WebKit::FrameLoaderClient::postProgressEstimateChangedNotification):
- (WebKit::FrameLoaderClient::dispatchDidFinishLoad):
- (WebKit::FrameLoaderClient::dispatchDidStartProvisionalLoad):
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2009-05-05 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Holger Freyther.
-
- Fix memory leaks.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::checkSpellingOfString):
-
-2009-05-02 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=25466
- WebKitGtk+ 1.1.6 prints weird error messages in Liferea
-
- Use strlen instead of g_utf8_strlen when calculating the size of
- the data that is being given to webkit_web_frame_load_string to be
- loaded, so that we don't miss any of the content.
-
- * webkit/webkitwebframe.cpp:
-
-2009-05-01 Dimitri Glazkov <dglazkov@chromium.org>
-
- Unreviewed, bulid fix.
-
- Fix mis-applied patch.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
-
-2009-05-01 Pavel Feldman <pfeldman@chromium.org>
-
- Reviewed by Timothy Hatcher.
-
- Add a FrameLoaderClient callback for the ResourceRetrievedByXMLHttpRequest.
-
- https://bugs.webkit.org/show_bug.cgi?id=25347
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-04-30 David Kilzer <ddkilzer@apple.com>
-
- Provide a mechanism to create a quirks delegate for HTMLParser
-
- Reviewed by David Hyatt.
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::createHTMLParserQuirks): Added. The
- default implementation of this factory method returns 0.
-
-2009-04-30 Pavel Feldman <pfeldman@chromium.org>
-
- Reviewed by Dimitri Glazkov.
-
- https://bugs.webkit.org/show_bug.cgi?id=25342
- Add MessageSource and MessageLevel parameters to the ChromeClient::addMessageToConsole.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::addMessageToConsole):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2009-04-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Update gtk-doc control and base sgml files for 1.1.6.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2009-04-28 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Updated with news for the 1.1.6 release.
-
- * NEWS:
-
-2009-04-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Leave a bit of space from the previous page when advacing a whole
- page. This matches the behavior of our scrollbar scrolling code
- and is just nicer in general.
-
- * webkit/webkitwebview.cpp:
-
-2009-04-28 Xan Lopez <xlopez@igalia.com>
-
- Unreviewed: committed a few bits by mistake, remove them.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::handleEditingKeyboardEvent):
-
-2009-04-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=16135
- [GTK] Support caret browsing
-
- Refactor keyboard event handling to work properly under caret
- browsing mode. Most of the code comes from the Windows port.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::):
- (WebKit::interpretKeyEvent):
- (WebKit::handleEditingKeyboardEvent):
- (WebKit::EditorClient::handleKeyboardEvent):
-
-2009-04-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=16135
- [GTK] Support caret browsing
-
- Based on a patch by Alp Toker.
-
- Add enable-caret-browsing setting to WebKitWebView.
-
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::):
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- (_WebKitWebSettingsPrivate::webkit_web_settings_set_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
-
-2009-04-27 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=25409
- [GTK] incorrectly fallsback on cancellation
-
- Check whether we should fallback also on didFailLoad, so that we
- don't get error pages showing up in parts of the content of some
- sites because of, for instance, location changes.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
-
-2009-04-27 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=25409
- [GTK] incorrectly fallsback on cancellation
-
- Correctly handle cancellation and frame loading interruption
- caused by policy change. This also fixes
- fast/frames/location-change.html.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::shouldFallBack):
-
-2009-04-26 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Mark Rowe.
-
- Plug memory leak.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
-
-2009-04-26 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=25391
- G_SIGNAL_ACTION flag in WebKitWebView signals
-
- Most of the signals in WebKitGTK+ have the G_SIGNAL_ACTION flag,
- but I don't think this makes sense. The flag is meant for those
- signals that can be emitted by the user to trigger some action in
- the view, as if it were a normal API, which is not the case for
- most of them.
-
- * webkit/webkitdownload.cpp:
- (_WebKitDownloadPrivate::webkit_download_class_init):
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebinspector.cpp:
- (_WebKitWebInspectorPrivate::webkit_web_inspector_class_init):
- * webkit/webkitwebview.cpp:
-
-2009-04-26 Xan Lopez <xlopez@igalia.com>
-
- Unreviewed, actually apply the right patch.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_move_cursor):
-
-2009-04-26 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- Pass a variable to hold the return value of the 'move-cursor'
- signal, otherwise a crash can happen.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_move_cursor):
-
-2009-04-25 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=24786
- WebKitDownload sometimes suggests peculiar filenames
-
- Refactor the emission of the download-requested signal so that we
- have less code duplication.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::ContextMenuClient::downloadURL):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::startDownload):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
-
-2009-04-25 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] Error reporting
- https://bugs.webkit.org/show_bug.cgi?id=18344
-
- Update FrameLoad errors to use WebKitErrors.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::cancelledError):
- (WebKit::FrameLoaderClient::blockedError):
- (WebKit::FrameLoaderClient::cannotShowURLError):
- (WebKit::FrameLoaderClient::interruptForPolicyChangeError):
- (WebKit::FrameLoaderClient::cannotShowMIMETypeError):
- (WebKit::FrameLoaderClient::fileDoesNotExistError):
- (WebKit::FrameLoaderClient::pluginWillHandleLoadError):
- (WebKit::FrameLoaderClient::shouldFallBack):
- * webkit/webkiterror.h: Added.
- * webkit/webkiterror.cpp: Added.
-
-2009-04-25 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] Error reporting
- https://bugs.webkit.org/show_bug.cgi?id=18344
-
- Display a default error page for load errors.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
- * resources/error.html: Added.
-
-2009-04-25 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Xan Lopez.
-
- [GTK] Error reporting
- https://bugs.webkit.org/show_bug.cgi?id=18344
-
- Add a WebKitWebFrame API to load alternate content for unreachable URLs.
- Also add a new signal "load-error" for handling load errors.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::postProgressFinishedNotification):
- (WebKit::FrameLoaderClient::dispatchDidFailLoading):
- (WebKit::FrameLoaderClient::dispatchDidFailProvisionalLoad):
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebview.cpp:
-
-2009-04-24 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Rubber-stamped by Gustavo Noronha.
-
- Fix braces to comply with style guidelines.
-
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- (WebKit::PasteboardHelperGtk::getClipboard):
- (WebKit::PasteboardHelperGtk::getCopyTargetList):
- (WebKit::PasteboardHelperGtk::getPasteTargetList):
-
-2009-04-24 Sergio García-Cuevas <sergio_gcg@telefonica.net>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=17267
- [GTK] Primary selection/clipboard support
-
- Add a method for getting the primary selection.
-
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- (WebKit::PasteboardHelperGtk::getPrimary):
- * WebCoreSupport/PasteboardHelperGtk.h:
-
-2009-04-24 Johan Bilien <jobi@via.ecp.fr>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=25373
- Popup menu has the wrong size when popped up near the edge
- of the screen
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_forward_context_menu_event): Let GTK place
- the popup menu instead of trying to do better and failing
-
-2009-04-24 Christian Dywan <christian@twotoasts.de>
-
- Rubber-stamped by Gustavo Noronha.
-
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init): Reword the
- description of the enable-spell-checking property and correct the
- mentioning of the default language used.
-
-2009-04-24 Diego Escalante Urrelo <diegoe@gnome.org>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=15616
- [GTK] Add spell checking
-
- Implement EditorClient::ignoreWordInSpellDocument,
- EditorClient::learnWord and EditorClient::getGuessesForWord. This
- enables the corresponding user actions.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::ignoreWordInSpellDocument):
- (WebKit::EditorClient::learnWord):
- (WebKit::EditorClient::getGuessesForWord):
-
-2009-04-24 Diego Escalante Urrelo <diegoe@gnome.org>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=15616
- [GTK] Add spell checking
-
- Implement EditorClient::checkSpellingOfString; enabling spell checking
- to actually happen, this is the basis for other spelling functions.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::checkSpellingOfString):
-
-2009-04-24 Diego Escalante Urrelo <diegoe@gnome.org>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=15616
- [GTK] Add spell checking
-
- Add spell-checking-languages property to WebKitWebSettings.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::):
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- (_WebKitWebSettingsPrivate::webkit_web_settings_init):
- (_WebKitWebSettingsPrivate::webkit_web_settings_finalize):
- (_WebKitWebSettingsPrivate::webkit_web_settings_set_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_copy):
- (_WebKitWebSettingsPrivate::webkit_web_settings_get_spell_languages):
-
-2009-04-24 Diego Escalante Urrelo <diegoe@gnome.org>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=15616
- [GTK] Add spell checking
-
- Add enable-spell-checking property to WebKitWebSettings and implement
- EditorClient::isContinuousSpellCheckingEnabled and
- EditorClient::toggleContinuousSpellChecking to allow the UI to
- enable check as you type spell checking.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::isContinuousSpellCheckingEnabled):
- (WebKit::EditorClient::toggleContinuousSpellChecking):
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::):
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- (_WebKitWebSettingsPrivate::webkit_web_settings_set_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_copy):
-
-2009-04-21 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Gustavo Noronha.
-
- https://bugs.webkit.org/show_bug.cgi?id=21546
- [GTK] ATK accessibility enhancements
-
- Implement window<->screen coordinate transformation functions.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::widgetScreenPosition):
- (WebKit::ChromeClient::windowToScreen):
- (WebKit::ChromeClient::screenToWindow):
-
-2009-04-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- https://bugs.webkit.org/show_bug.cgi?id=24786
- WebKitDownload sometimes suggests peculiar filenames
-
- Remove query and ref from the URI that is to be downloaded when
- using it to provide a file name suggestion.
-
- * webkit/webkitdownload.cpp:
- (_WebKitDownloadPrivate::webkit_download_set_property):
-
-2009-04-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Xan Lopez.
-
- Handle the case when the plugin view is destroyed during
- didReceiveResponse, to avoid crashing.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::committedLoad):
-
-2009-04-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=25251
- Crash when frame creation removes it from the parent
-
- This brings us up-to-date with the expectations of sub-frame
- creation, following what Mac has done. It fixes crashes when
- calling init on the child frame removes it from the page.
-
- This makes the following test pass instead of crash:
-
- fast/loader/frame-creation-removal.html
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
-
-2009-04-16 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Holger Freyther.
-
- http://bugs.webkit.org/show_bug.cgi?id=25042
- destroying webview widget directly causes crash.
-
- * tests/testwebframe.c:
- (test_webkit_web_frame_create_destroy): Add a test case for destroying
- a web view shortly after packing it in a window.
-
-2009-04-16 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Sam Weinig.
-
- https://bugs.webkit.org/show_bug.cgi?id=25241
- Remove superfluous NotImplemented.h includes.
-
- * webkit/webkitprivate.cpp:
-
-2009-04-14 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Update gtk-doc control and base sgml files for 1.1.5.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2009-04-14 Xan Lopez <xlopez@igalia.com>
-
- * NEWS: updated for 1.1.5 release.
-
-2009-04-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=22898
- [GTK] need proper API for printing
-
- Added simple printing unit tests.
-
- * tests/testwebframe.c:
- (print_requested_cb):
- (print_timeout):
- (test_webkit_web_frame_printing):
- (main):
-
-2009-04-13 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=22898
- [GTK] need proper API for printing
-
- Implement proper printing API, using the GTK+ printing API.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::print):
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebview.cpp:
-
-2009-04-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=25124
- [GTK] many strings still missing translation calls
-
- Mark the missing strings for translation.
-
- * webkit/webkitdownload.cpp:
- (_WebKitDownloadPrivate::webkit_download_cancel):
- * webkit/webkitsoupauthdialog.c:
- (show_auth_dialog):
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_class_init):
- * webkit/webkitwebinspector.cpp:
- (_WebKitWebInspectorPrivate::webkit_web_inspector_class_init):
- * webkit/webkitwebnavigationaction.cpp:
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_class_init):
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- * webkit/webkitwebview.cpp:
-
-2009-04-08 Alejandro Piñeiro <apinheiro@igalia.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=21546
- [GTK] ATK accessibility enhancements
-
- Use getOrCreate instead of just get, as we need to actually create
- the wrapper object the first time this function is called.
-
- * webkit/webkitwebview.cpp:
-
-2009-04-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Rubber-stamped by Sam Weinig.
-
- https://bugs.webkit.org/show_bug.cgi?id=20575
- No localization in WebKitGtk
-
- Implemented localization support for WebKitGTK+.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * po/POTFILES: Added.
- * po/README: Added.
- * po/webkit.pot: Added.
- * webkit/webkitdownload.cpp:
- (_WebKitDownloadPrivate::webkit_download_class_init):
- * webkit/webkitprivate.cpp:
- (webkit_init):
- * webkit/webkitwebframe.cpp:
-
-2009-04-05 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=25042
- destroying webview widget directly causes crash.
-
- Do not connect the WebView to its own screen-changed signal, set a
- default handler instead.
-
- * webkit/webkitwebview.cpp:
-
-2009-04-05 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=25042
- destroying webview widget directly causes crash.
-
- GtkWidget::screen-changed can be emitted when a widget is being
- destroyed, protect against it.
-
- * webkit/webkitwebview.cpp:
-
-2009-04-05 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Holger Freyther.
-
- [Gtk] Implement LayoutTestControllerGtk::setPrivateBrowsingEnabled
- https://bugs.webkit.org/show_bug.cgi?id=24487
-
- Updated documentation and put more information about the
- private-browsing setting for WebKitGtk.
-
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
-
-2009-04-03 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- Remove pre-processor checks for GTK+ >= 2.10, since we now require
- at least that version.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::clipboard_clear_contents_cb):
- (WebKit::EditorClient::respondToChangedSelection):
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebview.cpp:
-
-2009-04-02 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=24844
- Unit test WebKitDownload
-
- Extra checks to avoid crashing and a critical message when
- property accessor functions are called before the download is
- started.
-
- * webkit/webkitdownload.cpp:
- (_WebKitDownloadPrivate::webkit_download_get_progress):
- (_WebKitDownloadPrivate::webkit_download_get_elapsed_time):
-
-2009-04-01 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Holger Freyther.
-
- * tests/testdownload.c: Added.
- (test_webkit_download_create):
- (main): Add an initial unit test for downloading.
-
-2009-04-01 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed typo fixes, and naming normalization in the
- documentation.
-
- * docs/webkitenvironment.xml:
- * webkit/webkitwebview.cpp:
-
-2009-03-31 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- Updated gtk-doc configuration files for the 1.1.1, 1.1.2, 1.1.3,
- and 1.1.4 versions of WebKitGTK+.
-
- * docs/webkitgtk-docs.sgml:
- * docs/webkitgtk-sections.txt:
-
-2009-03-31 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=17045
- [GTK] Documentation
-
- Added header documentation for WebKitWebNavigationAction and
- WebKitWebPolicyDecision.
-
- Added missing documentation pieces for WebKitSoupAuthDialog,
- WebKitDownload and WebKitWebPolicyDecision.
-
- Wrote a section about using the WEBKIT_DEBUG environment variable.
-
- * docs/GNUmakefile.am:
- * docs/webkitenvironment.xml: Added.
- * docs/webkitgtk-docs.sgml:
- * webkit/webkitdownload.cpp:
- * webkit/webkitsoupauthdialog.c:
- * webkit/webkitwebnavigationaction.cpp:
- * webkit/webkitwebpolicydecision.cpp:
-
-2009-03-30 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- Integrate gtk-doc into the Gtk+ buildsystem.
-
- Based on original work by Holger Freyther.
-
- Integrate gtk-doc into our buildsystem. We are forced to
- use recursive make for gtk-doc itself as the to be installed
- gtk-doc.make (done by gtkdocize) is not working in a non
- recursive environment.
-
- The documentation can only be generated when srcdir == builddir.
- In all other cases the generated files will not be found. This
- limitation can be found in pango and gtk+ as well. There is no
- easy way around. The resulting html documentation will be saved
- in the srcdir as well.
-
- * docs/GNUmakefile.am: Added.
- * docs/version.xml.in: Added.
- * docs/webkitgtk-docs.sgml:
-
-2009-03-30 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Documenting what changed since the 1.1.3 release, in
- the GTK+ port.
-
- * NEWS:
-
-2009-03-30 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
-
- Unreviewed. Add information on the bug-fix-only 1.1.3 release.
-
- * NEWS:
-
-2009-03-30 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=24878
- [GTK] Use GtkBinding system to handle key events in WebView
-
- Use GtkBinding system for key events in WebKitWebView. Allows the
- user to reconfigure the bindings and fixes a bunch of bugs along
- the way (we were not checking modifier keys in most actions).
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_move_cursor):
- * webkit/webkitwebview.h:
- * webkitmarshal.list:
-
-2009-03-28 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Mark Rowe.
-
- https://bugs.webkit.org/show_bug.cgi?id=24790
- [GTK] webkitsoupauthdialog.h lacks WEBKIT_API before function
-
- Set the right visibility to the WebKitSoupAuthDialog get_type
- function.
-
- * webkit/webkitsoupauthdialog.h:
-
-2009-03-28 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Gtk build fix. Not reviewed.
-
- FrameLoader::loadURL and FrameLoader::detachChildren went private
- per changes in http://trac.webkit.org/changeset/42055. Follow
- Mac's behaviour and use FrameLoader::loadURLIntoChildFrame for
- loadURL and FrameLoader::detachParent for detachChildrem.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
- * webkit/webkitwebview.cpp:
-
-2009-03-25 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=15793
- [GTK] tooltip position doesn't update when hovering consecutive links
-
- Work-around tooltips not updating their location when the elements
- are consecutive, by clearing the tooltip when handling
- mouseDidMoveOverElement.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
-
-2009-03-23 Alejandro Garcia Castro <alex@igalia.com>
-
- Reviewed by Holger Freyther.
-
- [Gtk] Current API does not allow us to open target="_blank" links
- in new tabs instead of windows
- https://bugs.webkit.org/show_bug.cgi?id=23932
-
- Added a signal to the API (new-window-policy-decision-requested)
- that allows the browser to decide the policy for the new window
- request, if the signal is not handled we open the new window as
- usual.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::getNavigationAction):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- * webkit/webkitwebview.cpp:
-
-2009-03-20 Jan Michael Alonzo <jmalonzo@gmail.com>
-
- Not reviewed. Fix style issues with my previous commit (r41866) as
- suggested by Holger in https://bugs.webkit.org/show_bug.cgi?id=24493
-
- * tests/testwebhistoryitem.c:
- (test_webkit_web_history_item_get_data):
- (test_webkit_web_history_item_alternate_title):
-
-2009-03-20 Jan Michael Alonzo <jmalonzo@gmail.com>
-
- Reviewed by Holger Freyther.
-
- [GTK] Misc patches for WebKitWebHistoryItem
- https://bugs.webkit.org/show_bug.cgi?id=24493
-
- Add unit test for WebKitWebHistoryItem
-
- * tests/testwebhistoryitem.c: Added.
- (web_history_item_fixture_setup):
- (web_history_item_fixture_teardown):
- (test_webkit_web_history_item_get_data):
- (test_webkit_web_history_item_alternate_title):
- (main):
-
-2009-03-20 Jan Michael Alonzo <jmalonzo@gmail.com>
-
- Reviewed by Holger Freyther.
-
- Separate gtk unit tests
- https://bugs.webkit.org/show_bug.cgi?id=24039
-
- Split the current single-file unit test to make it more
- modularized and manageable in the future as more unit tests are
- written.
-
- * tests/main.c: Removed.
- * tests/testwebbackforwardlist.c: Copied from WebKit/gtk/tests/main.c.
- (main):
- * tests/testwebframe.c: Copied from WebKit/gtk/tests/main.c.
- (main):
-
-2009-03-16 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Adam Roben.
-
- [gtk] API implementation: url and title
- http://bugs.webkit.org/show_bug.cgi?id=14807
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidChangeLocationWithinPage):
- (WebKit::FrameLoaderClient::dispatchDidReceiveTitle):
- (WebKit::FrameLoaderClient::dispatchDidCommitLoad):
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h: Implement "title" and "uri" properties as well
- as according functions. "uri" always reflects the current location
- including navigation inside the same page. title-changed is deprecated.
-
-2009-03-15 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Anders Carlsson.
-
- Fix default policy decision to be ignore, on MIME checks, if
- WebKit doesn't know how to handle the MIME type. The documentation
- is already correct, and this was an oversight when the policy
- decision code was first committed. Since 1.1.2 will be the first
- release to support download, there is no practical change in
- behavior.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType):
-
-2009-03-15 Xan Lopez <xlopez@igalia.com>
-
- * NEWS: update for 1.1.2.
-
-2009-03-14 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Holger Freyther.
-
- [GTK] use of confirm dialog (yes/no) causes segfault
- https://bugs.webkit.org/show_bug.cgi?id=20940
-
- Change the script-confirm marshaller from OBJECT,STRING,BOOLEAN to
- OBJECT,STRING,POINTER
-
- * webkit/webkitwebview.cpp:
- * webkitmarshal.list:
-
-2009-03-12 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=24553
- [GTK] Improvements to WebKitDownload
-
- Rename 'state' to 'status' to match the naming in the frame
- loader rework that we plan to land soonish, and make it a
- property, for the same reason.
-
- * webkit/webkitdownload.cpp:
- (_WebKitDownloadPrivate::):
- (_WebKitDownloadPrivate::webkit_download_finalize):
- (_WebKitDownloadPrivate::webkit_download_get_property):
- (_WebKitDownloadPrivate::webkit_download_set_property):
- (_WebKitDownloadPrivate::webkit_download_class_init):
- (_WebKitDownloadPrivate::webkit_download_init):
- (_WebKitDownloadPrivate::webkit_download_start):
- (_WebKitDownloadPrivate::webkit_download_cancel):
- (_WebKitDownloadPrivate::webkit_download_set_destination_uri):
- (_WebKitDownloadPrivate::webkit_download_get_status):
- (_WebKitDownloadPrivate::webkit_download_set_status):
- (_WebKitDownloadPrivate::webkit_download_received_data):
- (_WebKitDownloadPrivate::webkit_download_finished_loading):
- (_WebKitDownloadPrivate::webkit_download_error):
- * webkit/webkitdownload.h:
-
-2009-03-12 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=24553
- [GTK] Improvements to WebKitDownload
-
- Improved documentation for the download-requested signal, to make
- its usage clear.
-
- * webkit/webkitwebview.cpp:
-
-2009-03-12 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=24541
- Scrolling with home and end keys not always works
-
- Also make page up and page down keys be handled by the webview key
- event code, so that they also work in cases where the GTK+
- scrollbars don't handle them directly, like in the bugzill's patch
- review page.
-
- * webkit/webkitwebview.cpp:
-
-2009-03-12 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=24541
- Scrolling with home and end keys not always works
-
- Make home and end keys behave more consistently for scrolling the
- view.
-
- * webkit/webkitwebview.cpp:
-
-2009-03-12 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=24254
- [GTK] spacebar doesn't scroll down
-
- Make spacebar and shift+spacebar scroll like page up and down
- respectively would.
-
- * webkit/webkitwebview.cpp:
-
-2009-03-10 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=24493
- [GTK] Misc patches for WebKitWebHistoryItem
-
- Only run code in dispose once per instance.
-
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_dispose):
-
-2009-03-10 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=24493
- [GTK] Misc patches for WebKitWebHistoryItem
-
- Call deref() on our internal HistoryItem on dispose, as we always
- acquire it with a releaseRef() call to a PassRefPtr, which passes
- ownership.
-
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_dispose):
-
-2009-03-10 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=24493
- [GTK] Misc patches for WebKitWebHistoryItem
-
- return foo? foo : NULL == return foo
-
- * webkit/webkitwebhistoryitem.cpp:
- (WebKit::core):
-
-2009-03-11 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Holger Freyther.
-
- Gtk] Implement LayoutTestControllerGtk::setPrivateBrowsingEnabled
- https://bugs.webkit.org/show_bug.cgi?id=24487
-
- Add private browsing option "enable-private-browsing" to WebKitWebSettings.
-
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::):
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- (_WebKitWebSettingsPrivate::webkit_web_settings_set_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
-
-2009-03-11 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Holger Freyther.
-
- [GTK] BackForward history leak?
- https://bugs.webkit.org/show_bug.cgi?id=19528
-
- Don't ref the history items when returning the back/forward list
- Added test_webkit_web_history_item_lifetime test case for this.
-
- * tests/main.c:
- (test_webkit_web_history_item_lifetime):
- (test_webkit_web_back_forward_list_order): Style fix.
- (test_webkit_web_back_forward_list_add_item): Style fix.
- (main):
- * webkit/webkitwebbackforwardlist.cpp:
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_list_with_limit):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_list_with_limit):
-
-2009-03-10 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=24493
- [GTK] Misc patches for WebKitWebHistoryItem
-
- Use g_hash_table_new_full so we can save the manual unref on the
- values when removing them from the table.
-
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_dispose):
-
-2009-03-10 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=24493
- [GTK] Misc patches for WebKitWebHistoryItem
-
- Use 'if (foo)' instead of 'if (foo != NULL)', per coding style
- guidelines.
-
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_history_item_remove):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_alternate_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_uri):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_original_uri):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_last_visited_time):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_target):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_is_target_item):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_children):
-
-2009-03-10 Xan Lopez <xlopez@igalia.com>
-
- Reviewed by Alexey Proskuryakov.
-
- Correct return value to false instead of NULL.
-
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_is_target_item):
-
-2009-03-08 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Mark Rowe.
-
- Add javascript-profiling-enabled property and implement it. This
- will enable/disable the profiler on the InstpectorController.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebinspector.cpp:
- (_WebKitWebInspectorPrivate::webkit_web_inspector_class_init):
- (_WebKitWebInspectorPrivate::webkit_web_inspector_set_property):
- (_WebKitWebInspectorPrivate::webkit_web_inspector_get_property):
- (_WebKitWebInspectorPrivate::webkit_web_inspector_set_inspector_client):
- * webkit/webkitwebview.cpp:
-
-2009-03-05 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Olliej.
-
- https://bugs.webkit.org/show_bug.cgi?id=24295
- webkit_web_back_forward_list_add_item needs a Since tag
-
- Add missing Since tag to webkit_web_back_forward_list_add_item
- documentation.
-
- * webkit/webkitwebbackforwardlist.cpp:
-
-2009-03-05 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Mark Rowe.
-
- https://bugs.webkit.org/show_bug.cgi?id=24417
- [GTK] WebKitDownload's _cancel and _dispose methods may emit warnings
-
- NULL-check for timer on _cancel and _dispose, to avoid bad
- warnings.
-
- * webkit/webkitdownload.cpp:
- (_WebKitDownloadPrivate::webkit_download_finalize):
- (_WebKitDownloadPrivate::webkit_download_cancel):
-
-2009-03-02 Xan Lopez <xan@gnome.org>
-
- Reviewed by Mark Rowe.
-
- https://bugs.webkit.org/show_bug.cgi?id=24287
- [GTK] Move auth dialog feature to WebKit/
-
- Add WebKitSoupAuthDialog and add it to the session in webkit_init.
-
- * webkit/webkitprivate.cpp:
- (currentToplevelCallback):
- (webkit_init):
- * webkit/webkitsoupauthdialog.c: Added.
- (webkit_soup_auth_dialog_class_init):
- (webkit_soup_auth_dialog_init):
- (webkit_soup_auth_dialog_session_feature_init):
- (free_authData):
- (set_password_callback):
- (response_callback):
- (table_add_entry):
- (show_auth_dialog):
- (find_password_callback):
- (session_authenticate):
- (attach):
- * webkit/webkitsoupauthdialog.h: Added.
-
-2009-03-03 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=16826
- [Gtk] Implement WebKitDownload
-
- Implement download, and provide a nice object wrapping the
- download process. Initial work done by Marco Barisione and
- Pierre-Luc Beaudoin for Collabora.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::ContextMenuClient::downloadURL):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::download):
- (WebKit::FrameLoaderClient::startDownload):
- * webkit/webkit.h:
- * webkit/webkitdefines.h:
- * webkit/webkitdownload.cpp: Added.
- (_WebKitDownloadPrivate::):
- (_WebKitDownloadPrivate::webkit_download_dispose):
- (_WebKitDownloadPrivate::webkit_download_finalize):
- (_WebKitDownloadPrivate::webkit_download_get_property):
- (_WebKitDownloadPrivate::webkit_download_set_property):
- (_WebKitDownloadPrivate::webkit_download_class_init):
- (_WebKitDownloadPrivate::webkit_download_init):
- (_WebKitDownloadPrivate::webkit_download_new):
- (_WebKitDownloadPrivate::webkit_download_open_stream_for_uri):
- (_WebKitDownloadPrivate::webkit_download_close_stream):
- (_WebKitDownloadPrivate::webkit_download_start):
- (_WebKitDownloadPrivate::webkit_download_cancel):
- (_WebKitDownloadPrivate::webkit_download_get_uri):
- (_WebKitDownloadPrivate::webkit_download_get_network_request):
- (_WebKitDownloadPrivate::webkit_download_set_response):
- (_WebKitDownloadPrivate::webkit_download_get_suggested_filename):
- (_WebKitDownloadPrivate::webkit_download_get_destination_uri):
- (_WebKitDownloadPrivate::webkit_download_set_destination_uri):
- (_WebKitDownloadPrivate::webkit_download_get_state):
- (_WebKitDownloadPrivate::webkit_download_get_total_size):
- (_WebKitDownloadPrivate::webkit_download_get_current_size):
- (_WebKitDownloadPrivate::webkit_download_get_progress):
- (_WebKitDownloadPrivate::webkit_download_get_elapsed_time):
- (_WebKitDownloadPrivate::webkit_download_received_data):
- (_WebKitDownloadPrivate::webkit_download_finished_loading):
- (_WebKitDownloadPrivate::webkit_download_error):
- (_WebKitDownloadPrivate::DownloadClient::DownloadClient):
- (_WebKitDownloadPrivate::DownloadClient::didReceiveResponse):
- (_WebKitDownloadPrivate::DownloadClient::didReceiveData):
- (_WebKitDownloadPrivate::DownloadClient::didFinishLoading):
- (_WebKitDownloadPrivate::DownloadClient::didFail):
- (_WebKitDownloadPrivate::DownloadClient::wasBlocked):
- (_WebKitDownloadPrivate::DownloadClient::cannotShowURL):
- * webkit/webkitdownload.h: Added.
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- * webkitmarshal.list:
-
-2009-03-01 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Holger Freyther.
-
- [Gtk] get the HTTP layout tests going
- https://bugs.webkit.org/show_bug.cgi?id=24259
-
- Added API to get the response mime type from a frame. We need this
- so we can decide if we need to dump the frame as text or its
- render tree
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
-
-2009-03-01 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Holger Freyther.
-
- [Gtk] get the HTTP layout tests going
- https://bugs.webkit.org/show_bug.cgi?id=24259
-
- Create a WebKitWebHistoryItem for each WebCore::HistoryItem when
- necessary.
- Add necessary API additions for us to be able to dump a WebKitWebHistoryItem
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebbackforwardlist.cpp:
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_list_with_limit):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_list_with_limit):
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_core_item):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_target):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_is_target_item):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_children):
- (WebKit::core):
- (WebKit::kit):
-
-2009-03-01 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Holger Freyther.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_get_encoding):
- * webkit/webkitwebview.h: Implement 'encoding' and 'custom-encoding'
- properties as well as webkit_web_view_get_encoding.
-
-2009-03-01 Gustavo Noronha Silva <gns@gnome.org>
-
- Unreviewed simple wording fix for the NEWS file.
-
- * NEWS:
-
-2009-03-01 Xan Lopez <xan@gnome.org>
-
- Add NEWS file to track progress between releases.
-
- * NEWS: Added.
-
-2009-02-28 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Holger Freyther.
-
- * webkit/webkitwebview.cpp: Let webkit_web_view_open add file:// if a
- locale path is passed for compatibility, since we used to support that.
-
-2009-02-27 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by David Hyatt.
-
- Automatically ignore empty requests to avoid crashing. This fixes
- the crash in fast/loader/empty-embed-src-attribute.html.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
-
-2009-02-27 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=24221
- [GTK] Do not emit load-finished when being disposed
-
- webkit_web_view_stop_load() is called from dispose() on
- WebKitWebView. This eventually calls postProgressFinishedNotification
- in FrameLoaderClientGtk, which emits load-finished. Add
- a 'disposing' flag to WebView that we can check here, so
- we avoid emitting signals on objects on their way to be
- destroyed. This fixes a bunch of critical warnings when
- closing a loading WebView.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::postProgressFinishedNotification):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
-
-2009-02-27 Xan Lopez <xan@gnome.org>
-
- Rubber-stamped by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=24222
- [GTK] Remove checks for old glib versions
-
- libsoup, which is a hard dependency, needs at least glib 2.15.3,
- so remove all glib checks for versions older than that.
-
- * webkit/webkitwebview.cpp:
-
-2009-02-26 Xan Lopez <xan@gnome.org>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=16947
- [GTK] Missing HTTP Auth challenge
-
- Add new marshalers list.
-
- * webkitmarshal.list: Added.
-
-2009-02-26 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=24193
- [GTK] Checkbuttons not activated with space
-
- Do not swallow key events with GtkIMContext for non-editable
- content.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleInputMethodKeydown):
-
-2009-02-26 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=24103
- [GTK] Use correct return value for WebView button-release handler
-
- We are returning whatever the core code tells us it did, but this
- does not play well with the GTK+ model. GTK+ in general expects it
- will see a button-release if it saw a button-press and no
- motion/leave/etc events in between. EventHandler.cpp will, in some
- cases, not handle press but handle release, confusing the parent
- container of the WebView.
-
- As a workaround return always FALSE for button-release (this is
- the same than the Windows port does).
-
- * webkit/webkitwebview.cpp:
-
-2009-02-26 Xan Lopez <xan@gnome.org>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=17585
- [gtk] get|set encoding api
-
- Add functions to get and set a custom encoding an a view.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- (webkit_web_view_set_custom_encoding):
- (webkit_web_view_get_custom_encoding):
- * webkit/webkitwebview.h:
-
-2009-02-23 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=22624
- [SOUP][GTK] Need API to get SoupSession from WebKit.
-
- Add API to get the default soup session.
-
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2009-02-23 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=22624
- [SOUP][GTK] Need API to get SoupSession from WebKit.
-
- Add soup dependency to pc file.
-
- * webkit.pc.in:
-
-2009-02-23 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Mark Rowe.
-
- [GTK] Back / Forward history menus are flipped
- https://bugs.webkit.org/show_bug.cgi?id=22694
-
- Don't call g_list_reverse when returning the back or forward list.
-
- * tests/main.c:
- (test_webkit_web_back_forward_list_order):
- (main):
- * webkit/webkitwebbackforwardlist.cpp:
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_list_with_limit):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_list_with_limit):
-
-2009-02-17 Xan Lopez <xan@gnome.org>
-
- Rubber-stamped by Alexey Proskuryakov.
-
- Restoring change landed in r40715, which was accidentally undone
- by r40918.
-
- * webkit/webkitwebframe.cpp:
-
-2009-02-12 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Holger Freyther.
-
- http://bugs.webkit.org/show_bug.cgi?id=17176
- [GTK] API: hovering-over-link and webkit_web_view_open /_load_foo
-
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h: Introduce webkit_web_frame_load_uri,
- webkit_web_frame_load_string, webkit_web_view_load_uri and
- webkit_web_view_load_request and unify implementations.
-
-2009-02-11 Dimitri Dupuis-latour <dupuislatour@apple.com>
-
- Stub out InspectorClient::hiddenPanels.
-
- Reviewed by Timothy Hatcher.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::hiddenPanels):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2009-02-07 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Unreviewed build fix Use toNormalizedRange().
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::clipboard_get_contents_cb):
-
-2009-02-06 Geoffrey Garen <ggaren@apple.com>
-
- Build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::updateGlobalHistoryRedirectLinks):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-02-06 Xan Lopez <xan@gnome.org>
-
- Reviewed by Holger Freyther.
-
- Reported by Daniel Macks.
-
- https://bugs.webkit.org/show_bug.cgi?id=20412
-
- Use positive numbers for the target info IDs, gtk_target_list_add
- casts them to 'guint'. Also just start them from 0, since the
- values are not relevant or magic in any way, they are just used as
- tokens for the user of the API.
-
- * webkit/webkitwebview.h:
-
-2009-02-06 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=23769
-
- Do not use empty ResourceError errors.
-
- Rather create bogus but non-null errors, since some codepaths
- expect these. For example, see DocumentLoader::mainReceivedError.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::cancelledError):
- (WebKit::FrameLoaderClient::blockedError):
- (WebKit::FrameLoaderClient::cannotShowURLError):
- (WebKit::FrameLoaderClient::interruptForPolicyChangeError):
- (WebKit::FrameLoaderClient::cannotShowMIMETypeError):
- (WebKit::FrameLoaderClient::fileDoesNotExistError):
- (WebKit::FrameLoaderClient::pluginWillHandleLoadError):
-
-2009-02-06 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alexey Proskuryakov.
-
- https://bugs.webkit.org/show_bug.cgi?id=23761
-
- Use two-arg KURL ctor.
-
- We are using the one-arg ctor currently, but:
-
- - It assumes the strings are already encoded, which is not
- necesarily the case for us.
-
- - The single-argument KURL ctors expect their input to already be
- the output of a previous KURL::parse call, so for the general
- case (ie, random user input) we need to use the two-arg ctor
- anyway.
-
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebview.cpp:
-
-2009-02-05 Aaron Boodman <aa@chromium.org>
-
- Reviewed by Dave Hyatt.
-
- https://bugs.webkit.org/show_bug.cgi?id=23708
- Adds documentElementAvailable() callback to FrameLoaderClient.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::documentElementAvailable):
- Stub out documentElementAvailable()
- * WebCoreSupport/FrameLoaderClientGtk.h:
- Ditto.
-
-2009-02-03 Hiroyuki Ikezoe <poincare@ikezoe.net>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=22988
- [GTK] Need a public method to add a WebKitWebHistoryItem to
- WebKitWebBackForwardList.
-
- Wrap WebCore::BackForwardList::addItem.
-
- * tests/main.c:
- (test_webkit_web_back_forward_list_add_item):
- (main):
- * webkit/webkitwebbackforwardlist.cpp:
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_add_item):
- * webkit/webkitwebbackforwardlist.h:
-
-2009-02-02 Geoffrey Garen <ggaren@apple.com>
-
- Build fix.
-
- * webkit/webkitwebview.cpp:
-
-2009-02-02 Geoffrey Garen <ggaren@apple.com>
-
- Build fix.
-
- * webkit/webkitwebframe.cpp:
-
-2009-02-02 Geoffrey Garen <ggaren@apple.com>
-
- Build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
-
-2009-02-02 Geoffrey Garen <ggaren@apple.com>
-
- Reviewed by Sam Weinig.
-
- Track redirects in global history.
-
- Keep GTK building.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
- (WebKit::FrameLoaderClient::updateGlobalHistoryForRedirectWithoutHistoryItem):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-02-02 Anders Carlsson <andersca@apple.com>
-
- Build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-02-02 Anders Carlsson <andersca@apple.com>
-
- Reviewed by Dan Bernstein.
-
- Update for changes to WebCore.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createPlugin):
- (WebKit::FrameLoaderClient::createJavaAppletWidget):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-02-02 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Darin Adler.
-
- Move Frame::forceLayout, Frame::adjustPageHeight and Frame::forceLayoutWithPageWidthRange to FrameView
-
- https://bugs.webkit.org/show_bug.cgi?id=23428
-
- FrameView::forceLayout could be killed but the comment might
- contain a value over the the plain FrameView::layout...
-
- Adjust the WebCore/WebKit consumers of these methods.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::forceLayout):
- * webkit/webkitwebview.cpp:
-
-2009-01-30 Geoffrey Garen <ggaren@apple.com>
-
- Build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
-
-2009-01-30 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Simon Hausmann.
-
- https://bugs.webkit.org/show_bug.cgi?id=22056
-
- Kill FrameLoaderClient.cpp, move the code over to Frame::createView
-
- FrameLoaderClient is supposed to be an interface, move the
- to be shared code to Frame which is a controller and is
- allowed to create a FrameView.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2009-01-27 Brady Eidson <beidson@apple.com>
-
- Reviewed by Dan Bernstein
-
- Rework FrameLoaderClient to work on a CachedFrame basis instead of CachedPage
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::savePlatformDataToCachedFrame):
- (WebKit::FrameLoaderClient::transitionToCommittedFromCachedFrame):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2009-01-25 Darin Adler <darin@apple.com>
-
- Try to fix GTK build.
-
- * webkit/webkitwebview.cpp: Added include of FloatQuad.h.
-
-2009-01-13 Alexander V. Butenko <alex@digiqube.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=23279
-
- Fix crash on WebView dispose stage.
-
- Add null checks to webkit_web_view_set_scroll_adjustments and
- webkit_web_view_get_accessible as they get called from within
- the dispose.
-
- * webkit/webkitwebview.cpp:
-
-2009-01-11 Xan Lopez <xan@gnome.org>
-
- Reviewed by Holger Freyther.
-
- Use NULL instead of 0 when dealing with pointers, as agreed for
- the coding style of the WebKit GTK port for its GTK+ specific
- files.
-
- * webkit/webkitwebview.cpp:
-
-2009-01-11 Xan Lopez <xan@gnome.org>
-
- Reviewed by Holger Freyther.
-
- Add padding to the class structs to avoid breaking ABI each time
- we add stuff there.
-
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitwebbackforwardlist.h:
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebnavigationaction.h:
- * webkit/webkitwebpolicydecision.h:
- * webkit/webkitwebview.h:
-
-2009-01-09 Benjamin Otte <otte@gnome.org>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=23194
-
- make the finalize function the dispose function. Not releasing held
- objects in dispose can cause crashers later.
-
- * webkit/webkitwebview.cpp:
-
-2009-01-09 Benjamin Otte <otte@gnome.org>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=23194
-
- Remove broken code that uses a fallback. The previous code did 2
- policy decisions which caused crashes.
- Download is still notImplemented();
-
- * webkit/webkitwebpolicydecision.cpp:
- (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_download):
-
-2009-01-03 Xan Lopez <xan@gnome.org>
-
- Reviewed by Holger Freyther.
-
- [GTK] Need a public method to reload view bypassing cache
- https://bugs.webkit.org/show_bug.cgi?id=19815
-
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
- Add webkit_web_view_reload_bypass_cache.
-
-2009-01-07 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Maciej Stachowiak.
-
- Add private API to get the number of active animations of
- a frame. This is required by the DumpRenderTree utility.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
-
-2009-01-05 Adam Treat <adam.treat@torchmobile.com>
-
- Fix build
-
- * WebCoreSupport/ChromeClientGtk.h:
-
-2009-01-05 Adam Treat <adam.treat@torchmobile.com>
-
- Reviewed by George Staikos.
-
- Build fix for contentsSizeChanged
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::contentsSizeChanged):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2009-01-04 Adam Treat <adam.treat@torchmobile.com>
-
- Reviewed by George Staikos.
-
- Make the gtk port build with the new fixedLayoutSize feature
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2009-01-03 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Darin Adler.
-
- [GTK] Fix the reference counting of WebKitWebFrames
-
- The ownership is the following: WebKitWebView owns a WebCore::Page.
- WebKitWebView is creating one WebKitWebFrame which will be the
- mainFrame of the WebCore::Page (having the reference on the Frame).
-
- The FrameLoaderClient has the reference of the WebKitWebFrame for
- the main frame and also any other frame. This means when the
- WebCore::Frame goes away the FrameLoaderClient will go away which
- will normally remove the last reference of the WebKitWebFrame. Because
- an API user might have g_object_ref'ed the WebKitWebFrame null
- checks had to be added to WebKitWebFrame.
-
- For WebCore::Frames created by the FrameLoaderClient the ownership
- will be passed down to the FrameTree, the WebKitWebFrame is not holding
- a reference to the WebCore::Frame.
-
- Do not g_object_unref the mainFrame in the destructor of the
- WebKitWebFrame as this will happen from within the WebCore::Page
- destruction. Do not hold a reference to the WebCore::Frame (circle) in
- WebKitWebFrame, add null checks as the WebCore::Frame might have gone
- away. Do not keep track of the FrameLoaderClient in the private
- structures as it was mostly unusued.
-
- https://bugs.webkit.org/show_bug.cgi?id=21837
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::frameLoaderDestroyed):
- (WebKit::FrameLoaderClient::createFrame):
- * tests/main.c: Add test case.
- (test_webkit_web_frame_create_destroy):
- (test_webkit_web_frame_lifetime):
- (main):
- * webkit/webkitprivate.cpp:
- (WebKit::core):
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebview.cpp:
-
-2009-01-02 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Unreviewed build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
-
-2008-12-31 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Nikolas Zimmermann.
-
- https://bugs.webkit.org/show_bug.cgi?id=17045
-
- Add section information for View, Frame, Settings, HistoryItem, BackForwardList, WindowFeatures and Inspector
-
- Add section information and informal examples for WebKitWebView,
- WebKitWebFrame, WebKitWebSettings, WebKitWebNetworkRequest,
- WebKitWebWindowFeatures, WebKitWebHistoryItem,
- WebKitWebBackForwardList and WebKitWebInspector.
-
- * docs/webkitgtk-sections.txt: Decide to not document some bits
- * webkit/webkitnetworkrequest.cpp:
- * webkit/webkitwebbackforwardlist.cpp:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebhistoryitem.cpp:
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebinspector.cpp:
- * webkit/webkitwebsettings.cpp:
- * webkit/webkitwebsettings.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebwindowfeatures.cpp:
-
-2008-12-21 Xan Lopez <xan@gnome.org>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=16092
- [GTK] Middle-mouse click should allow opening a URL in a new tab
-
- Add mouse button and keyboard state modifiers info to navigation action.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- * webkit/webkitwebnavigationaction.cpp:
- (_WebKitWebNavigationActionPrivate::):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_property):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_set_property):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_class_init):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_button):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_modifier_state):
- * webkit/webkitwebnavigationaction.h:
-
-2008-12-19 Marco Barisione <marco.barisione@collabora.co.uk>
-
- Reviewed by Holger Freyther.
-
- http://bugs.webkit.org/show_bug.cgi?id=16562
- [gtk] Implement WebPolicyDelegate methods
-
- Original work by Pierre-Luc Beaudoin. Final touches by Gustavo
- Noronha.
-
- This implements the delegates methods of WebPolicyDelegate.
- Since Gtk+/C doesn't have delegate methods, they are replaced with
- signals.
-
- A new object WebKitWebPolicyDecision allows the browser to delay its
- response in certain cases. WebKitWebNavigationAction contains the
- information about what caused a navigation request.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit::FrameLoaderClient::~FrameLoaderClient):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForMIMEType):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- (WebKit::FrameLoaderClient::cancelPolicyCheck):
- (WebKit::FrameLoaderClient::canShowMIMEType):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- * webkit/webkit.h:
- * webkit/webkitdefines.h:
- * webkit/webkitprivate.cpp:
- (WebKit::kit):
- (WebKit::core):
- * webkit/webkitprivate.h:
- * webkit/webkitwebnavigationaction.cpp: Added.
- (_WebKitWebNavigationActionPrivate::):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_property):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_set_property):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_init):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_finalize):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_class_init):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_reason):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_set_reason):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_get_original_uri):
- (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_set_original_uri):
- * webkit/webkitwebnavigationaction.h: Added.
- * webkit/webkitwebpolicydecision.cpp: Added.
- (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_class_init):
- (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_init):
- (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_new):
- (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_use):
- (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_ignore):
- (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_download):
- (_WebKitWebPolicyDecisionPrivate::webkit_web_policy_decision_cancel):
- * webkit/webkitwebpolicydecision.h: Added.
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-12-18 Dan Bernstein <mitz@apple.com>
-
- Reviewed by Sam Weinig.
-
- - stub out FrameLoaderClient::shouldUseCredentialStorage().
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::shouldUseCredentialStorage):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2008-12-18 Sam Weinig <sam@webkit.org>
-
- Reviewed by John Sullivan.
-
- Stub out FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout()
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2008-12-13 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Cameron Zwarich.
-
- [GTK] Fix crash with LayoutTests/fast/loader/frame-creation-removal.html
-
- Call WebCore::Frame::init after the frame has been given
- a name and been added to the FrameTree of the parent.
-
- Removing the call to init is fine as FrameLoaderClientGtk::createFrame
- is the only user of webkit_web_frame_init_with_web_view and is already
- calling WebCore::Frame::init.
-
- * webkit/webkitwebframe.cpp:
-
-2008-12-13 Adam Bergkvist <adam.bergkvist@ericsson.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=22779
-
- Check for GTK version >= 2.14.0 before using gtk_test_init.
-
- * tests/main.c:
- (main):
-
-2008-12-13 Zan Dobersek <zandobersek@gmail.com>
-
- Reviewed by Darin Adler.
-
- https://bugs.webkit.org/show_bug.cgi?id=22039
-
- Implement animation and transition pausing as needed by DumpRenderTree.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
-
-2008-11-29 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Rubber-stamped by Simon Hausmann.
-
- https://bugs.webkit.org/show_bug.cgi?id=22574
-
- Make webkit_web_view_set_window_features internal
-
- Calling this method will not result in a notify::window-features
- signal being emitted. This would allow replacing a
- WebKitWebWindowFeature on a WebKitWebView without anyone noticing
- and the client code would monitor the wrong object.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::createWindow):
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-12-09 Brett Wilson <brettw@chromium.org>
-
- Reviewed by Dave Hyatt.
-
- https://bugs.webkit.org/show_bug.cgi?id=22177
-
- Add a callback on ChromeClient that the state of form elements on
- the page has changed. This is to allow clients implementing session
- saving to know when the current state is dirty.
-
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::formStateDidChange):
-
-2008-12-07 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Eric Seidel.
-
- [Gtk+] Use glib's unit test facilities to test the WebKit/Gtk+ API
-
- https://bugs.webkit.org/show_bug.cgi?id=22491
-
- Add the skeleton to WebKit/gtk/tests and integrate that into the
- buildsystem. Testing support was added in glib 2.16. For versions
- using glib < 2.16 we compile an empty application.
-
- * tests/main.c: Added. https://bugs.webkit.org/show_bug.cgi?id=21837
- will be the first consumer.
- (main):
-
-2008-12-06 Simon Fraser <simon.fraser@apple.com>
-
- Reviewed by Dave Hyatt
-
- https://bugs.webkit.org/show_bug.cgi?id=15671
-
- Renderer::caretRect() is now localCaretRect(), which needs
- converting to absolute coordinates (taking transforms into account).
-
- * webkit/webkitwebview.cpp:
-
-2008-12-01 Xan Lopez <xan@gnome.org>
-
- Reviewed by Holger Freyther.
-
- http://bugs.webkit.org/show_bug.cgi?id=22553
- Remove unneeded GObject casts.
-
- Remove unneeded casts to GObject in functions that take a gpointer
- argument.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::setWindowRect):
- (WebKit::ChromeClient::createWindow):
- (WebKit::ChromeClient::setToolbarsVisible):
- (WebKit::ChromeClient::toolbarsVisible):
- (WebKit::ChromeClient::setStatusbarVisible):
- (WebKit::ChromeClient::statusbarVisible):
- (WebKit::ChromeClient::setScrollbarsVisible):
- (WebKit::ChromeClient::scrollbarsVisible):
- (WebKit::ChromeClient::setMenubarVisible):
- (WebKit::ChromeClient::menubarVisible):
- (WebKit::ChromeClient::setToolTip):
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::createPage):
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebwindowfeatures.cpp:
- (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_new_from_core_features):
-
-2008-11-29 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Holger Freyther.
-
- http://bugs.webkit.org/show_bug.cgi?id=17122
- [GTK] Bad font default settings
-
- Implement a property "enforce-96-dpi" in WebKitWebSettings
- that can be enabled to force the view to assume 96 DPI.
-
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::):
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- (_WebKitWebSettingsPrivate::webkit_web_settings_set_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
- * webkit/webkitwebview.cpp:
-
-2008-11-28 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Nikolas Zimmermann.
-
- Simplify the code. There is no reason to have code like
- if (true) return false; which is using temporary variables.
-
- * webkit/webkitwebview.cpp:
-
-2008-11-28 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Nikolas Zimmermann.
-
- Remove bogus null checks. The WebKitWebView own's a WebCore::Page
- which is owning a WebCore::ChromeClient. There is no way that a
- WebCore::ChromeClient is still around when the WebKitWebView is gone.
-
- m_webView can only be null when a ChromeClient gets constructed with
- a null WebKitWebView which is not allowed.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient):
- (WebKit::ChromeClient::windowRect):
- (WebKit::ChromeClient::setWindowRect):
- (WebKit::ChromeClient::pageRect):
- (WebKit::ChromeClient::focus):
- (WebKit::ChromeClient::unfocus):
- (WebKit::ChromeClient::show):
- (WebKit::ChromeClient::setToolbarsVisible):
- (WebKit::ChromeClient::toolbarsVisible):
- (WebKit::ChromeClient::setStatusbarVisible):
- (WebKit::ChromeClient::statusbarVisible):
- (WebKit::ChromeClient::setScrollbarsVisible):
- (WebKit::ChromeClient::setMenubarVisible):
- (WebKit::ChromeClient::menubarVisible):
- (WebKit::ChromeClient::canTakeFocus):
- (WebKit::ChromeClient::repaint):
- (WebKit::ChromeClient::scroll):
- (WebKit::ChromeClient::platformWindow):
-
-2008-11-28 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed and slightly modified by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=19130
-
- ChromeClient::createWindow and friends need to be implemented
-
- Code from Gustavo Noronha and Marco Barisione
- <marco.barisione@collabora.co.uk> in this change set.
-
- Implemented all the ChromeClient interfaces needed to have new
- window creation functioning and exposed to client code. We
- implemented a mirror GObject to the WindowFeatures object provided
- by WebCore.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::windowRect):
- (WebKit::ChromeClient::setWindowRect):
- (WebKit::ChromeClient::unfocus):
- (WebKit::ChromeClient::createWindow):
- (WebKit::ChromeClient::show):
- (WebKit::ChromeClient::setToolbarsVisible):
- (WebKit::ChromeClient::toolbarsVisible):
- (WebKit::ChromeClient::setStatusbarVisible):
- (WebKit::ChromeClient::statusbarVisible):
- (WebKit::ChromeClient::setScrollbarsVisible):
- (WebKit::ChromeClient::scrollbarsVisible):
- (WebKit::ChromeClient::setMenubarVisible):
- (WebKit::ChromeClient::menubarVisible):
- (WebKit::ChromeClient::setResizable):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
- (WebKit::FrameLoaderClient::dispatchShow):
- (WebKit::FrameLoaderClient::dispatchCreatePage):
- * webkit/webkit.h:
- * webkit/webkitdefines.h:
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
- * webkit/webkitwebwindowfeatures.cpp: Added.
- (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_class_init):
- (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_init):
- (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_finalize):
- (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_set_property):
- (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_get_property):
- (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_new):
- (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_new_from_core_features):
- (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_equal):
- * webkit/webkitwebwindowfeatures.h: Added.
-
-2008-11-24 Darin Fisher <darin@chromium.org>
-
- Fix bustage.
-
- http://bugs.webkit.org/show_bug.cgi?id=15643
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::isSelectTrailingWhitespaceEnabled):
- * WebCoreSupport/EditorClientGtk.h:
-
-2008-11-24 Darin Adler <darin@apple.com>
-
- Reviewed by Dan Bernstein.
-
- - https://bugs.webkit.org/show_bug.cgi?id=22470
- remove unneeded URL argument from FrameLoaderClient::updateGlobalHistory
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::updateGlobalHistory): Remove argument.
- * WebCoreSupport/FrameLoaderClientGtk.h: Ditto.
-
-2008-11-24 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Holger Freyther.
-
- http://bugs.webkit.org/show_bug.cgi?id=17122
- [GTK] Bad font default settings
-
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- Use default font size 12 instead of 10
-
-2008-11-24 Zan Dobersek <zandobersek@gmail.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=22039
-
- Implement a semi-private function for adding a directory to
- PluginDatabase's paths.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::webkit_web_settings_add_extra_plugin_directory):
-
-2008-11-23 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Rubber-stamped by Sam Weinig.
-
- Add gtk-doc configuration/source for the WebKit/Gtk+ Reference Manual
-
- These files will be used by gtk-doc to generate the documentation. They
- contain information how to group the symbols of our API, which objects
- to inspect during the generation of the manual and how to display the
- manual.
-
- * docs/webkitgtk-docs.sgml: Added.
- * docs/webkitgtk-overrides.txt: Added.
- * docs/webkitgtk-sections.txt: Added.
- * docs/webkitgtk.types: Added.
-
-2008-11-23 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Sam Weinig.
-
- Make gtk-doc happy with the existing API documentation
-
- - Mark the *Private pointers in the struct private
- - Use Returns: where gtk-doc wants us to
- - Fix the parameters to make gtk-doc happy
- - Fix signal references
-
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitwebbackforwardlist.cpp:
- * webkit/webkitwebbackforwardlist.h:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebhistoryitem.cpp:
- * webkit/webkitwebinspector.cpp:
- (_WebKitWebInspectorPrivate::webkit_web_inspector_class_init):
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-11-19 Darin Fisher <darin@chromium.org>
-
- Bustage fix.
-
- https://bugs.webkit.org/show_bug.cgi?id=22373
- Ports busted by addition of ScriptValue.{h,cpp}
-
- * webkit/webkitwebview.cpp:
-
-2008-11-18 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Simon Hausmann.
-
- Attempt to share transitionToCommittedForNewPage of FrameLoaderClient with the different ports
-
- After Hyatt's work on Widget and ScrollView there is little difference
- between the implementation of Qt, Gtk+ and Win. In fact any kind of
- difference is mostly a bug. Alp has fixed two of such errors for the Gtk+
- port and the Qt port has at least one of them left.
-
- The only difference between the implementations is in getting the the
- IntSize for the new FrameView, the background color to be applied and
- eventually some post processing.
-
- Unify the implementations by providing a static helper function that
- takes a Frame, IntSize, color and transparency bit and calling it from
- the Gtk+, the Qt and the Windows port.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2008-11-16 Christian Dywan <christian@twoasts.de>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=22207
- [Gtk] Font sizes are not handled properly when updated at runtime
-
- * webkit/webkitwebview.cpp: Move the DPI/ conversion into a
- helper function and apply the logic in the notification callback.
-
-2008-11-06 Alp Toker <alp@nuanti.com>
-
- Reviewed by Darin Adler.
-
- https://bugs.webkit.org/show_bug.cgi?id=22047
- GTK: Add support for multiple file selection in the file upload control
-
- Implemented with GtkFileChooser.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::runOpenPanel):
-
-2008-11-03 Cameron Zwarich <zwarich@apple.com>
-
- Rubber-stamped by Maciej Stachowiak.
-
- Move more files into the runtime subdirectory of JavaScriptCore.
-
- * webkit/webkitprivate.cpp:
-
-2008-11-03 Alp Toker <alp@nuanti.com>
-
- Reviewed by Holger Freyther.
-
- Deprecate flawed webkit_web_frame_new() function. This would never
- have worked properly when used outside WebCore since Frame::create()
- can only be called without an owner element once in the lifetime of a
- Page and would result in assertions, leaks and an unusable WebView
- instance.
-
- Frame creation may be exposed in API some time later via the DOM
- binding but probably not in the WebKit GTK+ core API.
-
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebframe.h:
-
-2008-11-03 Alp Toker <alp@nuanti.com>
-
- Reviewed by Holger Freyther.
-
- Redundant scrollbars appear in frames where they shouldn't be visible
- eg. embedded Google adverts.
-
- Call setCanHaveScrollbars() when necessary. The Mac and Win ports
- already have this but it was missing in FrameLoaderClientGtk.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2008-11-03 Alp Toker <alp@nuanti.com>
-
- Rubber-stamped by Holger Freyther.
-
- Sync WebKit GTK+ default UA version string to 528.5+. (We're still
- doing this manually!)
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::composeUserAgent):
-
-2008-10-31 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Mark Rowe.
-
- http://bugs.webkit.org/show_bug.cgi?id=22018
- enable-developer-extras doesn't toggle WebInspector
-
- * webkit/webkitwebview.cpp:
- Add missing 'if' in notification for 'enable-developer-extras'.
-
-2008-10-30 Alp Toker <alp@nuanti.com>
-
- Reviewed by Dave Hyatt.
-
- Fix GIF animations. WebCore will not update animated GIFs if
- the WebView is marked offscreen so we need to call
- frameView->setParentVisible() when necessary like the Mac and Win
- ports do. Regression was introduced around r37155 during the
- HostWindow refactor.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2008-10-30 Alp Toker <alp@nuanti.com>
-
- Rubber-stamped by Holger Freyther.
-
- Fix typo in recently added web inspector signal. dettach -> detach.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::detachWindow):
- * webkit/webkitwebinspector.cpp:
- (_WebKitWebInspectorPrivate::webkit_web_inspector_class_init):
-
-2008-10-30 Alp Toker <alp@nuanti.com>
-
- Fix version comments for the web inspector added in r37982. Available
- since 1.0.3, not 1.0.2.
-
- * webkit/webkitwebinspector.cpp:
- (_WebKitWebInspectorPrivate::webkit_web_inspector_class_init):
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- * webkit/webkitwebview.cpp:
-
-2008-10-29 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed and slightly changed by Holger Freyther.
-
- Implemented a new WebKitWebInspector class to provide a GObject
- API for the Web Inspector. Also implemented InspectorClient.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::notifyWebViewDestroyed):
- (WebKit::InspectorClient::InspectorClient):
- (WebKit::InspectorClient::inspectorDestroyed):
- (WebKit::InspectorClient::webViewDestroyed):
- (WebKit::InspectorClient::createPage):
- (WebKit::InspectorClient::showWindow):
- (WebKit::InspectorClient::closeWindow):
- (WebKit::InspectorClient::attachWindow):
- (WebKit::InspectorClient::detachWindow):
- (WebKit::InspectorClient::inspectedURLChanged):
- * WebCoreSupport/InspectorClientGtk.h:
- * webkit/webkit.h:
- * webkit/webkit-marshal.list:
- * webkit/webkitdefines.h:
- * webkit/webkitprivate.h:
- * webkit/webkitwebinspector.cpp: Added.
- (_WebKitWebInspectorPrivate::webkit_inspect_web_view_request_handled):
- (_WebKitWebInspectorPrivate::webkit_web_inspector_class_init):
- (_WebKitWebInspectorPrivate::webkit_web_inspector_init):
- (_WebKitWebInspectorPrivate::webkit_web_inspector_finalize):
- (_WebKitWebInspectorPrivate::webkit_web_inspector_set_property):
- (_WebKitWebInspectorPrivate::webkit_web_inspector_get_property):
- (_WebKitWebInspectorPrivate::webkit_web_inspector_set_web_view):
- * webkit/webkitwebinspector.h: Added.
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::):
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- (_WebKitWebSettingsPrivate::webkit_web_settings_set_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_copy):
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-10-27 Michael Tross <michael@tross.org>
-
- Reviewed by Alp Toker. Landed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=21827
- [GTK] Fix memory leak in webkit_web_view_load_string
-
- * webkit/webkitwebview.cpp:
-
-2008-10-24 Sam Weinig <sam@webkit.org>
-
- Fix the Gtk build.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
-
-2008-10-24 Sam Weinig <sam@webkit.org>
-
- Reviewed by Dan Bernstein.
-
- Fix https://bugs.webkit.org/show_bug.cgi?id=21759
- Layering violation: FileChooser should not depend on Document/Frame/Page
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::runOpenPanel):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2008-10-24 Timothy Hatcher <timothy@apple.com>
-
- Stub out new InspectorClient methods.
-
- https://bugs.webkit.org/show_bug.cgi?id=21856
-
- Reviewed by Darin Adler.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::populateSetting): Not implemented.
- (WebKit::InspectorClient::storeSetting): Ditto.
- (WebKit::InspectorClient::removeSetting): Ditto.
- * WebCoreSupport/InspectorClientGtk.h:
-
-2008-10-22 Alp Toker <alp@nuanti.com>
-
- Build fix for older GTK+ versions where GTK_TYPE_TARGET_LIST isn't
- defined.
-
- * webkit/webkitwebview.cpp:
-
-2008-10-22 Alp Toker <alp@nuanti.com>
-
- Reviewed by Adam Roben.
-
- Avoid critical warnings on older GTK+ versions (2.8) by not checking
- for GTK+ setting properties when we know they don't exist.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::inputMethodsMenuItem):
- (WebKit::unicodeMenuItem):
-
-2008-10-20 Sam Weinig <sam@webkit.org>
-
- Reviewed by Anders Carlsson.
-
- Remove FrameLoaderClient::detachedFromParent4. It is no longer used by any port.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2008-10-20 Alp Toker <alp@nuanti.com>
-
- Reviewed by Dave Hyatt.
-
- https://bugs.webkit.org/show_bug.cgi?id=21303
- [GTK] Scrolling glitches
-
- Implement a buffering scheme to avoid full repaints when scrolling
- views or subframes significantly improving scrolling performance.
-
- Improve rendering performance by coalescing large numbers of small
- repaints.
-
- Also fixes long-running issues with scrollbar positioning and frame
- invalidation.
-
- Rendering in the GTK+ port should be more similar to other ports after
- these changes.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::repaint):
- (WebKit::ChromeClient::scroll):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::forceLayout):
- * webkit/webkitwebview.cpp:
-
-2008-10-17 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
-
- Reviewed by Mark Rowe. Landed by Jan Alonzo.
-
- https://bugs.webkit.org/show_bug.cgi?id=20403
- [Gtk] Segfault after a table with an iframe is attempted to be added twice to DOM model with javascript
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::frameLoaderDestroyed):
- (WebKit::FrameLoaderClient::detachedFromParent4):
-
-2008-10-06 David Hyatt <hyatt@apple.com>
-
- Enable viewless Mac WebKit to paint some basic pages.
-
- Reviewed by Sam Weinig
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2008-10-03 David Hyatt <hyatt@apple.com>
-
- Fix Gtk bustage from use of containingWindow() over on the WebKit side. Replace with HostWindow use.
-
- * webkit/webkitwebview.cpp:
-
-2008-10-03 David Hyatt <hyatt@apple.com>
-
- https://bugs.webkit.org/show_bug.cgi?id=21340
-
- Remove "containingWindow()/setContainingWindow()" from Widget. HostWindow covers this now.
-
- Reviewed by Dan Bernstein & Darin Adler
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
-
-2008-10-03 Alp Toker <alp@nuanti.com>
-
- Remove some left-over GTK+ includes. No change in functionality.
-
- * webkit/webkitwebhistoryitem.h:
-
-2008-10-03 Alp Toker <alp@nuanti.com>
-
- Build fix following r37234. Remove addToDirtyRegion from the header
- too.
-
- * WebCoreSupport/ChromeClientGtk.h:
-
-2008-10-03 David Hyatt <hyatt@apple.com>
-
- Remove addToDirtyRegion.
-
- Reviewed by Oliver Hunt
-
- * WebCoreSupport/ChromeClientGtk.cpp:
-
-2008-10-02 David Hyatt <hyatt@apple.com>
-
- https://bugs.webkit.org/show_bug.cgi?id=21314
-
- Make scrollBackingStore cross-platform.
-
- Reviewed by Sam Weinig
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::repaint):
- (WebKit::ChromeClient::scroll):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2008-10-01 David Hyatt <hyatt@apple.com>
-
- https://bugs.webkit.org/show_bug.cgi?id=21282
-
- Make contentsToScreen/screenToContents cross-platform. Only implemented by Mac/Win right now.
-
- Reviewed by Adam Roben
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::windowToScreen):
- (WebKit::ChromeClient::screenToWindow):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2008-09-30 Dave Hyatt <hyatt@apple.com>
-
- http://bugs.webkit.org/show_bug.cgi?id=21250
-
- Rename updateContents to repaintContentRectangle and make it cross-platform by always sending
- repaints up through the ChromeClient.
-
- Reviewed by Darin Adler
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::repaint):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2008-09-16 Alp Toker <alp@nuanti.com>
-
- Suggested by Dave Hyatt.
-
- Build fix and cleanup. Rename ScrollBar to Scrollbar.
-
- * webkit/webkitwebview.cpp:
-
-2008-09-13 Adrien Nader <camaradetux@gmail.com>
-
- Gtk build fix, not reviewed.
-
- * webkit/webkitwebview.cpp:
-
-2008-09-10 Alp Toker <alp@nuanti.com>
-
- Reviewed by Mark Rowe.
-
- https://bugs.webkit.org/show_bug.cgi?id=17267
- [GTK] Primary selection/clipboard support
-
- Implement primary selection support (copying only, no paste yet).
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::clipboard_get_contents_cb):
- (WebKit::clipboard_clear_contents_cb):
- (WebKit::EditorClient::respondToChangedSelection):
-
-2008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
-
- Reviewed by Maciej Stachowiak.
-
- Bug 20704: Replace the KJS namespace
- <https://bugs.webkit.org/show_bug.cgi?id=20704>
-
- Rename the KJS namespace to JSC.
-
- * webkit/webkitprivate.cpp:
- (webkit_init):
-
-2008-09-05 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=18346
- [GTK] Remove build warnings
-
- Removed/commented code that is not (yet) used, and reordered
- member variables initialization for FrameLoaderClient, so that the
- compiler is happy and prints less warnings when building.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
-
-2008-09-03 Alp Toker <alp@nuanti.com>
-
- Build fix following r36073. Include config.h where necessary.
-
- * WebCoreSupport/PasteboardHelperGtk.cpp:
- * webkit/webkitversion.cpp:
-
-2008-09-01 Alp Toker <alp@nuanti.com>
-
- Reviewed by Eric Seidel.
-
- https://bugs.webkit.org/show_bug.cgi?id=19939
- [GTK] webkit_web_history_item_get_title() fails with assertion
-
- Make sure newly constructed WebHistoryItem objects wrap a WebCore
- history item when necessary. Avoid G_PARAM_CONSTRUCT since it destroys
- history data -- use WEBKIT_PARAM flags instead as they do the right
- thing. This restores history functionality.
-
- Also use CString to simplify UTF-8 string management.
-
- * webkit/webkitwebbackforwardlist.cpp:
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_list_with_limit):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_list_with_limit):
- No need to initialize the vector with a size since it's cleared by the
- callee.
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_finalize):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_class_init):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_core_item):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_alternate_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_set_alternate_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_uri):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_original_uri):
-
-2008-08-27 Adrien Nader <camaradetux@gmail.com>
-
- Reviewed by Eric Seidel.
-
- https://bugs.webkit.org/show_bug.cgi?id=20099
- [GTK] SHIFT+PAGE_UP/DOWN doesn't extend selection
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeyboardEvent):
-
-2008-08-27 Brady Eidson <beidson@apple.com>
-
- Reviewed by Anders
-
- <rdar://problem/6134133> - Crash when loading large movie as a standalone document
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::pluginWillHandleLoadError): Stubbed for now
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2008-08-18 Alp Toker <alp@nuanti.com>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=20350
- [GTK] Get DumpRenderTree working
-
- Add a private function to WebFrame to dump the render tree as required
- for the DumpRenderTree testing tool.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
-
-2008-08-12 Timothy Hatcher <timothy@apple.com>
-
- Add a stub for InspectorClient::setAttachedWindowHeight.
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::setAttachedWindowHeight):
- Call notImplemented().
- * WebCoreSupport/InspectorClientGtk.h:
-
-2008-08-10 Alp Toker <alp@nuanti.com>
-
- Remove leftover qmake/GTK+ build files.
-
- * webkit/headers.pri: Removed.
-
-2008-08-02 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Eric Seidel.
-
- Remove webkit-marshal.list, which was made obsolete in #19742
-
- * webkit/webkit-marshal.list: Removed.
-
-2008-08-01 Wouter Bolsterlee <uws@xs4all.nl>
-
- Reviewed by Eric Seidel.
-
- https://bugs.webkit.org/show_bug.cgi?id=20035
- [GTK] Fix return value for webkit_web_view_go_to_back_forward_item()
-
- * webkit/webkitwebview.cpp:
-
-2008-07-30 Marco Barisione <marco.barisione@collabora.co.uk>
-
- Reviewed by Holger.
-
- http://bugs.webkit.org/show_bug.cgi?id=19742
- [GTK] Auto generate webkitmarshal.list
-
- Auto generate webkitmarshal.list from source files to reduce the
- number of conflicts when merging git branches or when applying
- patches.
- Also rename webkit-marshal.* to webkitmarshal.* for consistency.
-
- * webkit/webkitwebframe.cpp: Include webkitmarshal.h instead of
- webkit-marshal.h.
- * webkit/webkitwebview.cpp: Ditto.
-
-2008-07-30 Gustavo Noronha Silva <gns@gnome.org>
-
- Reviewed by Sam.
-
- https://bugs.webkit.org/show_bug.cgi?id=20205
- Typo in comment for bracer ending block
-
- * webkit/webkitprivate.cpp: Typo fix in comment for the brace
- that ends the WebKit namespace; WebCore -> WebKit
-
-2008-07-26 Mark Rowe <mrowe@apple.com>
-
- Build fix. Changes to accommodate newly named/signatured loading methods in WebCore.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
-
-2008-07-17 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Holger Freyther.
-
- https://bugs.webkit.org/show_bug.cgi?id=19813
- [GTK] WebKit crashes on invalid settings notify callback
-
- * webkit/webkitwebview.cpp: Disconnect in webkit_web_view_finalize
-
-2008-07-08 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Reviewed by Christian Dywan.
-
- Replace 'const' with G_CONST_RETURN macro to make it flexible to
- disable constness
-
- * webkit/webkitnetworkrequest.cpp:
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebhistoryitem.cpp:
- * webkit/webkitwebhistoryitem.h:
-
-2008-06-18 Marco Barisione <marco.barisione@collabora.co.uk>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=19171
- [GTK] GTypes for enumerations
-
- Generate GTypes for public enumerations so they can be used as
- properties.
-
- * GNUmakefile.am: Generate webkit-enum-types.cpp and
- webkit-enum-types.h.
-
-2008-06-17 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp.
-
- [GTK] WebKitWebHistoryItem needs properties
- https://bugs.webkit.org/show_bug.cgi?id=19558
-
- Implement properties matching the existing accessors.
-
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_class_init):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_set_property):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_property):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_set_alternate_title):
-
-2008-06-15 Darin Adler <darin@apple.com>
-
- - give Frame object functions shorter names: scriptProxy() -> script(),
- selectionController() -> selection(), animationController() -> animation()
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeyboardEvent):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::windowObjectCleared):
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebview.cpp:
-
-2008-06-15 Darin Adler <darin@apple.com>
-
- - undo bogus renaming done by the script
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitwebbackforwardlist.h:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebsettings.h:
-
-2008-06-15 Darin Adler <darin@apple.com>
-
- - new names for a few key JavaScriptCore files
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitwebbackforwardlist.h:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebsettings.h:
-
-2008-06-15 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- [GTK] Property setters do not call g_object_notify()
- https://bugs.webkit.org/show_bug.cgi?id=18405
-
- * webkit/webkitwebview.cpp:
-
-2008-06-15 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- Tiny documentation fix, s/capacity/limit
-
- * webkit/webkitwebbackforwardlist.cpp:
-
-2008-06-14 Darin Adler <darin@apple.com>
-
- Rubber stamped by Sam.
-
- - new names for kjs_binding.h and kjs_proxy.h
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * webkit/webkitwebframe.cpp:
-
-2008-06-14 Darin Adler <darin@apple.com>
-
- - fix build
-
- * webkit/webkitwebframe.cpp: Remove a bogus release() call.
-
-2008-06-14 Darin Adler <darin@apple.com>
-
- Reviewed by Sam.
-
- - more https://bugs.webkit.org/show_bug.cgi?id=17257
- start ref counts at 1 instead of 0 for speed
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createDocumentLoader): Use create instead of new.
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_new): Ditto.
- (webkit_web_frame_init_with_web_view): Ditto.
-
-2008-06-13 Darin Adler <darin@apple.com>
-
- - try to fix build
-
- * WebCoreSupport/FrameLoaderClientGtk.h: Add missing argument.
-
-2008-06-13 Darin Adler <darin@apple.com>
-
- Reviewed by John Sullivan.
-
- - updated for addition of FormState argument to action policy functions
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
-
-2008-06-10 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker and Darin Adler.
-
- https://bugs.webkit.org/show_bug.cgi?id=16676
- Apply GTK coding style to WebKit Gtk public headers
-
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitwebbackforwardlist.h:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebsettings.h:
- * webkit/webkitwebview.h:
-
-2008-06-07 Jan Michael Alonzo <jmalonzo@webkit.org>
-
- Confirmed by Christian Dywan.
-
- Gtk build fix for r34432
-
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_history_item_add):
- (_WebKitWebHistoryItemPrivate::webkit_history_item_remove):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_dispose):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_core_item):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data):
- (WebKit::core):
-
-2008-06-07 Darin Adler <darin@apple.com>
-
- - try to fix build after HistoryItem changes
-
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new): Use HistoryItem::create.
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data): Ditto. I also
- believe this fixes a memory leak in the old version.
-
-2008-06-07 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=17324
- Remove PLATFORM ifdefs from ContextMenu.cpp
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::ContextMenuClient::ContextMenuClient):
- (WebKit::ContextMenuClient::contextMenuDestroyed):
- (WebKit::inputMethodsMenuItem):
- (WebKit::):
- (WebKit::insertControlCharacter):
- (WebKit::unicodeMenuItem):
- (WebKit::ContextMenuClient::getCustomMenuFromDefaultItems):
- * WebCoreSupport/ContextMenuClientGtk.h:
- * webkit/webkitwebview.cpp:
-
-2008-06-05 Alp Toker <alp@nuanti.com>
-
- Add 'Since' documentation for API versioning functions.
-
- * webkit/webkitversion.cpp:
-
-2008-06-05 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=14141
- Please add a version to the Gtk port
-
- * webkit/webkit.h:
- * webkit/webkitversion.cpp: Added.
- * webkit/webkitversion.h.in: Added.
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- * webkit/webkitwebview.cpp:
-
-2008-06-01 Alp Toker <alp@nuanti.com>
-
- Suggested by Christian Dywan.
-
- Use float literals for zoom values and improve documentation wording.
-
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- * webkit/webkitwebview.cpp:
-
-2008-06-01 Alp Toker <alp@nuanti.com>
-
- Reviewed by Oliver.
-
- Remove webkit_web_view_go_backward(),
- webkit_web_view_can_go_backward(). These have been obsoleted by
- the back() versions for quite a while.
-
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-05-31 Alp Toker <alp@nuanti.com>
-
- Fix inconsistent zoom docs and enum name landed in r34249. Issue
- noticed by Marco Barisione.
-
- * webkit/webkitwebview.cpp:
-
-2008-05-30 Carlos Martín Nieto <carlos@cmartin.tk>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=18383
- [GTK] The "hovering-over-link" signal arguments aren't documented.
-
- * webkit/webkitwebview.cpp:
-
-2008-05-29 Marco Barisione <marco@collabora.co.uk>
-
- Reviewed (and tweaked) by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=18281
- [GTK] add functions to set/get the zoom level
-
- * webkit/webkitwebsettings.cpp:
- (_WebKitWebSettingsPrivate::):
- (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
- (_WebKitWebSettingsPrivate::webkit_web_settings_set_property):
- (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
- * webkit/webkitwebview.cpp: Add functions to get and set the zoom
- level.
- * webkit/webkitwebview.h: Ditto.
- * webkit/webkitprivate.h:
-
-2008-05-28 Alp Toker <alp@nuanti.com>
-
- Reviewed by Alexey Proskuryakov.
-
- http://bugs.webkit.org/show_bug.cgi?id=18704
- [gtk] cannot type letters with dead keys in textarea
-
- http://bugs.webkit.org/show_bug.cgi?id=14120
- [GDK] Support input methods
-
- Add support for input method composition.
-
- Remove some old hacks so we handle input method events more
- consistently.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted):
- (WebKit::imContextPreeditChanged):
- (WebKit::EditorClient::setInputMethodState):
- (WebKit::EditorClient::respondToChangedSelection):
- (WebKit::EditorClient::handleInputMethodKeydown):
- (WebKit::EditorClient::EditorClient):
- (WebKit::EditorClient::~EditorClient):
- (WebKit::EditorClient::textFieldDidBeginEditing):
- (WebKit::EditorClient::textFieldDidEndEditing):
- (WebKit::EditorClient::textDidChangeInTextField):
- (WebKit::EditorClient::doTextFieldCommandFromEvent):
- * webkit/webkitwebview.cpp:
-
-2008-05-25 Alp Toker <alp@nuanti.com>
-
- Reviewed by Niko.
-
- Drop WebView focus when the widget is focused out.
-
- * webkit/webkitwebview.cpp:
-
-2008-05-25 Sriram Neelakandan <sriram.neelakandan@gmail.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=18935
- [Gtk] Plugin Load crashes with NP_FULL mode
-
- Fix crash due to uninitialized variable.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
-
-2008-05-24 Alp Toker <alp@nuanti.com>
-
- https://bugs.webkit.org/show_bug.cgi?id=18825
- webkitgtk fails to build from source: "Database Tracker" has not been declared
-
- GTK+ fix for building without database support.
- exceededDatabaseQuota() still needs to be present, just a no-op.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::exceededDatabaseQuota):
-
-2008-05-23 Alp Toker <alp@nuanti.com>
-
- GTK+ fixes for building without database support.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
-
-2008-05-19 Alp Toker <alp@nuanti.com>
-
- Reviewed by Anders and Beth.
-
- http://bugs.webkit.org/show_bug.cgi?id=16495
- [GTK] Accessibility support with ATK/AT-SPI
-
- Initial ATK/AT-SPI accessibility support for the GTK+ port.
-
- * webkit/webkitwebview.cpp:
-
-2008-05-06 Christian Dywan <christian@twotoasts.de>
-
- Rubber stamped by Alp.
-
- Back out 17626. It wasn't ready for commit.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-05-01 Marc Ordinas i Llopis <marc.ordinasillopis@collabora.co.uk>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=14750
- Added support for NPAPI plugins on Gtk and Qt-x11 ports.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit::FrameLoaderClient::committedLoad):
- (WebKit::FrameLoaderClient::createPlugin):
- (WebKit::FrameLoaderClient::redirectDataToPlugin):
- (WebKit::FrameLoaderClient::finishedLoading):
- (WebKit::FrameLoaderClient::setMainDocumentError):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2008-04-30 Sean Egan <seanegan@gmail.com>
-
- Reviewed and modified by Holger.
-
- https://bugs.webkit.org/show_bug.cgi?id=17626
- Support setting background color and a 16-bit alpha channel.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-04-24 Dan Bernstein <mitz@apple.com>
-
- - build fix
-
- * webkit/webkitwebview.cpp:
-
-2008-04-24 Anders Carlsson <andersca@apple.com>
-
- Reviewed by Sam.
-
- Change some String arguments to be const references instead.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::shouldInsertText):
- * WebCoreSupport/EditorClientGtk.h:
-
-2008-04-23 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- Emit a warning about an unknown setting only if it is
- not a valid property. Otherwise applications can't
- subclass WebKitWebSettings to add new properties.
-
- * webkit/webkitwebview.cpp:
-
-2008-04-20 Simon Hausmann <hausmann@webkit.org>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=18578
- Share the printing code between the Gtk and the Qt port
-
- Share the printing code between the Gtk and the Qt port
- and added printing to the Qt WebKit API.
-
- * webkit/webkitwebframe.cpp: Removed PrintContext in favour of
- page/Printcontext.cpp/h
-
-2008-04-19 Alp Toker <alp@nuanti.com>
-
- Reviewed by Maciej.
-
- Enable visited link tracking by default at startup.
-
- With this patch, the GTK+ port rendering of Acid3 now matches the
- reference page.
-
- * webkit/webkitprivate.cpp:
- (WebKit::core):
- (webkit_init):
-
-2008-04-11 Mark Rowe <mrowe@apple.com>
-
- Gtk build fix after r32231.
-
- * webkit/webkitwebview.cpp: Update to use contentRenderer.
-
-2008-04-18 Alp Toker <alp@atoker.com>
-
- Rubber-stamped by Holger Freyther.
-
- http://bugs.webkit.org/show_bug.cgi?id=18218
- [Gtk] segfault when clicking on a disabled button
-
- Always use the main frame for mouse events (not the focused frame)
- since it knows best how to get the event through to the right target.
-
- This also fixes a null crasher.
-
- * webkit/webkitwebview.cpp:
-
-2008-04-17 Alp Toker <alp@atoker.com>
-
- Rubber-stamped by Holger Freyther.
-
- Reduce hard-coded page-cache count to 3 based on research done for the
- Mac port on value / page.
-
- We will need to make this more dynamic or configurable at some point
- but for now it's best to keep closer to the behaviour before page
- caching was enabled.
-
- Issue spotted by Mark Rowe.
-
- * webkit/webkitprivate.cpp:
- (webkit_init):
-
-2008-04-17 Daniele Metilli <daniele.metilli@gmail.com>
-
- Reviewed by Eric.
-
- Fixed a typo in the copyright header.
-
- * webkit/webkitprivate.h:
-
-2008-04-14 Holger Freyther <zecke@selfish.org>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=18411
- Enable Page caching and create FrameViews on the fly
-
- Create the FrameView on the fly and cache pages
-
- - Keep a copy of the GtkAdjustment to be able to reuse it for the
- FrameViews
- - Do not initially create a FrameView and update the WebKit code to
- cope with not having a view.
- - Cache seven pages by default.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
- (WebKit::FrameLoaderClient::canCachePage):
- (WebKit::FrameLoaderClient::savePlatformDataToCachedPage):
- (WebKit::FrameLoaderClient::transitionToCommittedFromCachedPage):
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
- * webkit/webkitprivate.cpp:
- (webkit_init):
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebview.cpp:
-
-2008-04-10 Mario Bensi <mbensi@pleyo.com>
-
- Reviewed by Alp Toker.
-
- https://bugs.webkit.org/show_bug.cgi?id=18400
- Database example doesn't work on Gtk port
-
- Fix quota in ChromeClient
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::exceededDatabaseQuota):
-
-2008-04-08 Adam Roben <aroben@apple.com>
-
- Move callOnMainThread to WTF
-
- Reviewed by Alexey Proskuryakov.
-
- * webkit/webkitprivate.cpp: Updated #include.
- (webkit_init): Changed to call KJS::initializeThreading.
-
-2008-04-06 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- Fix webkit_web_view_get_transparent() return value.
-
- * webkit/webkitwebview.cpp:
-
-2008-03-31 Jasper Bryant-Greene <jasper@unix.geek.nz>
-
- Reviewed by Darin Adler.
-
- Resolves http://bugs.webkit.org/show_bug.cgi?id=18010
- "WebKitNetworkRequestPrivate is defined in two places unnecessarily"
-
- Removed unnecessary definition of WebKitNetworkRequestPrivate in
- webkitprivate.h
-
- * webkit/webkitprivate.h:
-
-2008-03-25 Brady Eidson <beidson@apple.com>
-
- Reviewed by Darin
-
- Remove newly obsolete FrameLoaderClient methods
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2008-03-20 Alp Toker <alp@atoker.com>
-
- GTK+ build fix. Back out r31183. This patch also introduced API style
- issues.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- * webkit/headers.pri:
- * webkit/webkit-marshal.list:
- * webkit/webkitdefines.h:
- * webkit/webkitnavigationaction.cpp: Removed.
- * webkit/webkitnavigationaction.h: Removed.
- * webkit/webkitprivate.cpp:
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-03-20 Jasper Bryant-Greene <jasper@unix.geek.nz>
-
- Reviewed and tweaked by Anders.
-
- Resolves http://bugs.webkit.org/show_bug.cgi?id=16092
- "[GTK] Middle-mouse click should allow opening a URL in a new tab"
-
- Created WebKitNavigationAction object exported through the API. The
- navigation-requested signal provides this object as context for the
- requested navigation, allowing the application to decide what to do
- with the navigation based on which mouse button was used, which
- modifier keys were held down, etc. This allows, for example, the
- application to open links in a new tab when either middle-click or
- control-click are used to initiate the navigation.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- * webkit/headers.pri:
- * webkit/webkit-marshal.list:
- * webkit/webkitdefines.h:
- * webkit/webkitnavigationaction.cpp: Added.
- (webkit_navigation_action_finalize):
- (webkit_navigation_action_class_init):
- (webkit_navigation_action_init):
- (webkit_navigation_action_get_button):
- (webkit_navigation_action_get_modifier_flags):
- (webkit_navigation_action_get_navigation_type):
- (webkit_navigation_action_get_original_url):
- * webkit/webkitnavigationaction.h: Added.
- * webkit/webkitprivate.cpp:
- (WebKit::kit):
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-03-18 Rodney Dawes <dobey@wayofthemonkey.com>
-
- Reviewed and landed by jhoneycutt.
-
- Update to check if the MIME type is supported by a plugin.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (FrameLoaderClient::objectContentType):
-
-2008-03-18 Rodney Dawes <dobey@wayofthemonkey.com>
-
- Reviewed by Jon Honeycutt.
-
- Update setContainingWindow() calls to pass a GtkWidget.
-
- * webkit/webkitwebframe.cpp:
- (webkit_web_frame_new):
- (webkit_web_frame_init_with_web_view):
-
-2008-03-13 Rodney Dawes <dobey@wayofthemonkey.com>
-
- Fix GTK+ build for SharedBuffer changes.
-
- * webkit/webkitwebview.cpp:
- (webkit_web_view_load_string):
-
-2008-03-12 Tommi Komulainen <tommi.komulainen@iki.fi>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=17799
- WebView signals should use more specific types
-
- * webkit/webkitwebview.cpp: Use WEBKIT_TYPE_WEB_FRAME argument
- type in "script-alert", "script-confirm", "script-script-prompt"
- signals so that it gets more clearly documented rather than just
- plain GObject.
-
-2008-03-10 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alp Toker.
-
- Fix "missing braces" compiler warning.
-
- * webkit/webkitwebview.cpp:
-
-2008-03-04 Sam Weinig <sam@webkit.org>
-
- Reviewed by Mark Rowe.
-
- - Remove all unnecessary includes of JSDOMWindowBase.h, we prefer including
- JSDOMWindow.h
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * webkit/webkitwebframe.cpp:
-
-2008-03-03 Sam Weinig <sam@webkit.org>
-
- GTK+ build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::windowObjectCleared):
-
-2008-03-03 Alp Toker <alp@atoker.com>
-
- Fix the GTK+ build following breakage introduced in r30712.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted):
-
-2008-03-02 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- Split the WebKit GTK+ build out of the WebCore build and change the
- shared object name to match the package name.
-
- * webkit.pc.in:
-
-2008-02-27 Adam Roben <aroben@apple.com>
-
- Attempt to fix the GTK+ build
-
- * webkit/webkitwebframe.cpp:
-
-2008-02-24 Darin Adler <darin@apple.com>
-
- Reviewed by Sam.
-
- - remove separate client calls for "standard" and "reload' history
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::updateGlobalHistory):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2008-02-23 Alexey Proskuryakov <ap@webkit.org>
-
- Build fix.
-
- * webkit/webkitprivate.cpp:
- (webkit_init): Renamed initializeThreading to initializeThreadingAndMainThread.
-
-2008-02-18 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- http://bugs.webkit.org/show_bug.cgi?id=17312
- [GTK] Webview Transparent Background
-
- Add support for WebView background transparency.
-
- * webkit/webkitprivate.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-02-18 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- Implement webkit_web_view_get_focused_frame()
-
- Equivalent to selectedFrame in the Mac API.
-
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-02-17 Jan Michael Alonzo <jmalonzo@unpluggable.com>
-
- Reviewed by Mark Rowe.
-
- Fix a crash introduced in changeset #29985 by moving the dereference to after
- the null check.
-
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_core_item):
-
-2008-02-15 Alp Toker <alp@atoker.com>
-
- Fix the GTK+ build following breakage introduced in r30243.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::objectContentType):
-
-2008-02-15 Darin Adler <darin@apple.com>
-
- - another try at fixing the build
-
- * webkit/webkitwebview.cpp: Added some explicit conversions to KURL.
-
-2008-02-14 Darin Adler <darin@apple.com>
-
- * webkit/webkitwebframe.cpp: Removed DeprecatedString use to try to keep it building.
- * webkit/webkitwebview.cpp: Ditto.
-
-2008-02-14 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Alp.
-
- * Make the handling of the coreFrame consistent. We construct the coreFrame
- at the beginning and it will live until the end. Change the g_return_(val_)if
- to ASSERTs as having a 0 coreFrame can never happen.
-
- * webkit/webkitwebframe.cpp:
- (PrintContext::webkit_web_frame_print):
-
-2008-02-14 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Alp.
-
- * Make sure that the WebCore::Frame is living as long as the WebKitWebFrame
- wrapped around it. All current calls to WebCore::Frame from within the
- WebKitWebFrame are safe, even in the case where the WebCore::Frame is already
- detached from the WebCore::Page.
- * For the mainFrame the WebKitWebView is holding the initial reference and
- will unref on destruction.
- * For sub-frames the FramerLoaderClientGtk.cpp will do the unrefing when the
- frame gets detached from the parent.
- * Make sure FrameLoader::detachFromParent gets called by calling FrameLoader::detachChildren
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::detachedFromParent4):
- * webkit/webkitprivate.cpp:
- (WebKit::core):
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebview.cpp:
-
-2008-02-14 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Alp.
-
- WebCore::Frame is RefCounted, do not manually delete it!
-
- * webkit/webkitwebframe.cpp:
-
-2008-02-14 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Alp.
-
- * Plug a leak
-
- * webkit/webkitwebframe.cpp:
-
-2008-02-14 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Alp.
-
- * Update the Copyright Information
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * webkit/webkitprivate.h:
- * webkit/webkitwebframe.cpp:
-
-2008-02-13 Alp Toker <alp@atoker.com>
-
- Reviewed by Adam Roben.
-
- Fix very small, upside down, inside out text on GTK+/DirectFB.
-
- Based on an initial patch by Sriram Neelakandan <sriram.neelakandan@gmail.com>
-
- Test the result of gdk_screen_get_resolution() and use a default
- fallback in case of failure.
-
- Also remove an unhelpful runtime warning.
-
- * webkit/webkitwebview.cpp:
-
-2008-02-08 Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=17009
- [Gtk] Webkit strips accents from some dead-key combinations
-
- KeyEvents have to go through the gtk input method.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted):
- (WebKit::EditorClient::doTextFieldCommandFromEvent):
-
-2008-02-05 Mark Rowe <mrowe@apple.com>
-
- Reviewed by Alp Toker.
-
- Fix warnings seen on the Gtk port by declaring variables and using constants of the correct types.
-
- * webkit/webkitwebbackforwardlist.cpp:
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_contains_item):
- * webkit/webkitwebhistoryitem.cpp:
- * webkit/webkitwebview.cpp:
-
-2008-02-04 Christian Dywan <christian@imendio.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=17065
- [GTK] Use a consistent coding style
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted):
- (WebKit::EditorClient::EditorClient):
- (WebKit::EditorClient::~EditorClient):
- (WebKit::EditorClient::textFieldDidEndEditing):
- * webkit/webkitdefines.h:
- * webkit/webkitnetworkrequest.cpp:
- (_WebKitNetworkRequestPrivate::webkit_network_request_finalize):
- (_WebKitNetworkRequestPrivate::webkit_network_request_class_init):
- (_WebKitNetworkRequestPrivate::webkit_network_request_init):
- (_WebKitNetworkRequestPrivate::webkit_network_request_new):
- (_WebKitNetworkRequestPrivate::webkit_network_request_set_uri):
- (_WebKitNetworkRequestPrivate::webkit_network_request_get_uri):
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitprivate.cpp:
- (WebKit::getViewFromFrame):
- (WebKit::core):
- * webkit/webkitprivate.h:
- * webkit/webkitwebbackforwardlist.cpp:
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_new_with_web_view):
- * webkit/webkitwebbackforwardlist.h:
- * webkit/webkitwebframe.cpp:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_dispose):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_finalize):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_core_item):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_alternate_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_set_alternate_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_uri):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_original_uri):
- (WebKit::core):
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebsettings.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-02-04 Alp Toker <alp@atoker.com>
-
- Rubber-stamped by Mark Rowe.
-
- Remove all trailing whitespace in the GTK+ port and related
- components.
-
- * WebCoreSupport/DragClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.h:
- * WebCoreSupport/InspectorClientGtk.h:
- * WebCoreSupport/PasteboardHelperGtk.h:
- * webkit/webkitprivate.h:
- * webkit/webkitwebbackforwardlist.cpp:
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_contains_item):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_list_with_limit):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_item):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_length):
- * webkit/webkitwebhistoryitem.cpp:
- (_WebKitWebHistoryItemPrivate::webkit_history_items):
- (_WebKitWebHistoryItemPrivate::webkit_history_item_add):
- (_WebKitWebHistoryItemPrivate::webkit_history_item_remove):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_dispose):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_alternate_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_set_alternate_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_original_uri):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_last_visited_time):
- (WebKit::kit):
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebview.cpp:
- * webkit/webkitwebview.h:
-
-2008-02-03 Christian Dywan <christian@imendio.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=17046
- [GTK] Context menu fixes and customisation suport
-
- * webkit/webkitwebview.cpp:
-
-2008-01-31 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- Fix the pkg-config file to follow GTK+ package naming and versioning
- conventions.
-
- Remove unneeded dependency listings.
-
- * WebKitGtk.pc.in: Removed.
- * webkit.pc.in: Copied from WebKit/gtk/WebKitGtk.pc.in.
-
-2008-01-31 Alp Toker <alp@atoker.com>
-
- Rubber-stamped by Adam Roben.
-
- http://bugs.webkit.org/show_bug.cgi?id=17006
- [GTK] Header path should be webkit/webkit.h
-
- Move the GTK+ API sources as needed and update the build systems.
-
- * WebView: Removed.
- * WebView/headers.pri: Removed.
- * WebView/webkit-marshal.list: Removed.
- * WebView/webkit.h: Removed.
- * WebView/webkitdefines.h: Removed.
- * WebView/webkitnetworkrequest.cpp: Removed.
- * WebView/webkitnetworkrequest.h: Removed.
- * WebView/webkitprivate.cpp: Removed.
- * WebView/webkitprivate.h: Removed.
- * WebView/webkitwebbackforwardlist.cpp: Removed.
- * WebView/webkitwebbackforwardlist.h: Removed.
- * WebView/webkitwebframe.cpp: Removed.
- * WebView/webkitwebframe.h: Removed.
- * WebView/webkitwebhistoryitem.cpp: Removed.
- * WebView/webkitwebhistoryitem.h: Removed.
- * WebView/webkitwebsettings.cpp: Removed.
- * WebView/webkitwebsettings.h: Removed.
- * WebView/webkitwebview.cpp: Removed.
- * WebView/webkitwebview.h: Removed.
- * webkit: Copied from WebKit/gtk/WebView.
- * webkit/webkit.h:
- * webkit/webkitnetworkrequest.h:
- * webkit/webkitprivate.h:
- * webkit/webkitwebbackforwardlist.h:
- * webkit/webkitwebframe.h:
- * webkit/webkitwebhistoryitem.h:
- * webkit/webkitwebsettings.h:
- * webkit/webkitwebview.h:
-
-2008-01-27 Jan Michael Alonzo <jmalonzo@unpluggable.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=14811
- [gtk] [request] add a webkit_gtk_page_go_to_history_item function
-
- implement back/forward list and history item
-
- * WebView/headers.pri:
- * WebView/webkit.h:
- * WebView/webkitprivate.cpp:
- * WebView/webkitprivate.h:
- * WebView/webkitwebbackforwardlist.cpp: Added.
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_dispose):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_class_init):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_init):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_new_with_web_view):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_go_forward):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_go_back):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_contains_item):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_go_to_item):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_list_with_limit):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_list_with_limit):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_item):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_current_item):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_item):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_nth_item):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_back_length):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_forward_length):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_get_limit):
- (_WebKitWebBackForwardListPrivate::webkit_web_back_forward_list_set_limit):
- * WebView/webkitwebbackforwardlist.h: Added.
- * WebView/webkitwebhistoryitem.cpp: Added.
- (_WebKitWebHistoryItemPrivate::webkit_history_items):
- (_WebKitWebHistoryItemPrivate::webkit_history_item_add):
- (_WebKitWebHistoryItemPrivate::webkit_history_item_remove):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_dispose):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_finalize):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_class_init):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_init):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_core_item):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_new_with_data):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_alternate_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_set_alternate_title):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_uri):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_original_uri):
- (_WebKitWebHistoryItemPrivate::webkit_web_history_item_get_last_visited_time):
- (WebKit::core):
- (WebKit::kit):
- * WebView/webkitwebhistoryitem.h: Added.
- * WebView/webkitwebview.cpp:
- * WebView/webkitwebview.h:
-
-2008-01-25 Ori Bernstein <ori@eigenstate.org>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16795
- WebKitGtk crashes when there is no focused Frame
-
- Add a null check. focusedFrame() isn't used directly anywhere else so
- this is the only case that needs to be fixed.
-
- * WebView/webkitwebview.cpp:
-
-2008-01-22 Christian Dywan <christian@imendio.com>
-
- Reviewed by Alp Toker.
-
- [GTK] API: WebKitWebSettings is not usable
- http://bugs.webkit.org/show_bug.cgi?id=16219
-
- Implement WebKitWebSettings.
-
- * WebView/headers.pri:
- * WebView/webkit.h:
- * WebView/webkitprivate.cpp:
- * WebView/webkitprivate.h:
- * WebView/webkitsettings.cpp: Removed.
- * WebView/webkitsettings.h: Removed.
- * WebView/webkitwebsettings.cpp: Added.
- * WebView/webkitwebsettings.h: Added.
- * WebView/webkitwebview.cpp:
- * WebView/webkitwebview.h:
-
-2008-01-21 Alp Toker <alp@atoker.com>
-
- GTK+ build fix for breakage introduced in r29698.
-
- * WebCoreSupport/ChromeClientGtk.h:
-
-2008-01-21 Darin Adler <darin@apple.com>
-
- Reviewed by John Sullivan.
-
- - updated for changes to database functions
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::exceededDatabaseQuota):
- * WebCoreSupport/ChromeClientGtk.h:
- * WebView/webkitprivate.cpp:
- (webkit_init):
-
-2008-01-20 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- Attach the widget's style to its window and set the background to the
- base background to avoid black flicker when repainting. This is
- similar to what GtkTextView does.
-
- * WebView/webkitwebview.cpp:
-
-2008-01-19 Christian Dywan <christian@imendio.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16882
- [GTK] ChromeClientGtk is incompete
-
- Implement these functions.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::windowRect):
- (WebKit::ChromeClient::pageRect):
- (WebKit::ChromeClient::scaleFactor):
- (WebKit::ChromeClient::focus):
- (WebKit::ChromeClient::unfocus):
- (WebKit::ChromeClient::canTakeFocus):
- (WebKit::ChromeClient::takeFocus):
- (WebKit::ChromeClient::canRunBeforeUnloadConfirmPanel):
-
-2008-01-18 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16910
- [GTK] REGRESSION: keyboard cursor doesn't blink
-
- http://bugs.webkit.org/show_bug.cgi?id=16863
- [GTK] REGRESSION: tab focusing doesn't work
-
- * WebView/webkitwebview.cpp:
- (webkit_web_view_focus_in_event): Added. Set the active frame.
- (webkit_web_view_class_init):
-
-2008-01-16 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- http://bugs.webkit.org/show_bug.cgi?id=16218
- [GTK] API: Should this entry point be called go_back rather than go_backward?
-
- Obsolete 'backward' terminology in API in favour of 'back'. Introduce
- step-based back/forward functions.
-
- Document more functions.
-
- * WebView/webkitdefines.h:
- * WebView/webkitwebview.cpp:
- * WebView/webkitwebview.h:
-
-2008-01-10 Maciej Stachowiak <mjs@apple.com>
-
- Reviewed by Sam.
-
- - remove SecurityOriginData and fold its functionality into SecurityOrigin
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::requestQuotaIncreaseForNewDatabase):
- (WebKit::ChromeClient::requestQuotaIncreaseForDatabaseOperation):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2008-01-09 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16802
- [GTK] Missing gtk properties
-
- Add missing properties to WebKitViewFrame and WebKitWebView.
-
- * WebView/webkitprivate.h: add some useful defines for param specs
- * WebView/webkitwebframe.cpp:
- (webkit_web_frame_get_property): added
- (webkit_web_frame_class_init): add name, title and uri read-only properties
- * WebView/webkitwebview.cpp:
- (webkit_web_view_get_property): add editable property read
- (webkit_web_view_set_property): added for editable property write
- (webkit_web_view_class_init): add read-write editable property
-
-2008-01-03 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16654
- [GTK] Signal "navigation-requested" does not react correctly on
- return TRUE from callbacks
-
- * WebView/webkitwebview.cpp: use our own accumulator for signals
- returning WebKitNavigationResponse. The emission will be stopped
- when any callback returns anything but
- WEBKIT_NAVIGATION_RESPONSE_ACCEPT.
-
-2008-01-02 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Rubber stamped by Darin Adler.
-
- Coding Style fix. Do not use an else because we use a return in the
- if branch.
-
- * WebView/webkitwebview.cpp:
-
-2008-01-02 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16115
- [GTK] ContextMenu and ContextMenuItem lacks an implementation
-
- Add context menu support.
-
- Based on a patch by Holger Freyther.
-
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::ContextMenuClient::getCustomMenuFromDefaultItems):
- * WebView/webkitprivate.h:
- * WebView/webkitwebview.cpp:
-
-2007-12-29 Jan Michael Alonzo <jmalonzo@unpluggable.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16669
- autotools update and fixes
-
- pkgconfig file and icon database inclusion fix
-
- * WebKitGtk.pc.in: Remove ICU_FLAGS from Cflags
- * WebView/webkitprivate.cpp: Guard ICONDATABASE inclusions
-
-2007-12-28 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16642
- [GTK] webkit_web_view_has_selection returns the opposite result
-
- Invert the return value.
-
- * WebView/webkitwebview.cpp:
-
-2007-12-26 Jan Michael Alonzo <jmalonzo@unpluggable.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16390
- Use autotools or GNU make as the build system for the GTK port
-
- * WebKitGtk.pc.in: Added.
-
-2007-12-24 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/attachment.cgi?id=18099
- There are no NULL checks for strings in public api
-
- Add missing NULL checks for string parameters.
-
- Provide sensible defaults when NULL is passed for the optional
- parameters in webkit_web_view_load_string(). UTF-8 is the default
- encoding used by GLib and text/html is a reasonable default content
- type.
-
- * WebView/webkitnetworkrequest.cpp:
- * WebView/webkitwebview.cpp:
-
-2007-12-22 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alp Toker.
-
- Use webView, web_view, etc for variable names instead of page, which
- was left over from the old API.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted):
- (WebKit::EditorClient::EditorClient):
- (WebKit::EditorClient::~EditorClient):
- (WebKit::EditorClient::textFieldDidBeginEditing):
- (WebKit::EditorClient::textFieldDidEndEditing):
- * WebCoreSupport/EditorClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::postProgressStartedNotification):
- (WebKit::FrameLoaderClient::postProgressEstimateChangedNotification):
- (WebKit::FrameLoaderClient::postProgressFinishedNotification):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- (WebKit::FrameLoaderClient::windowObjectCleared):
- (WebKit::FrameLoaderClient::dispatchDidReceiveIcon):
- (WebKit::FrameLoaderClient::dispatchDidReceiveTitle):
- (WebKit::FrameLoaderClient::dispatchDidCommitLoad):
-
-2007-12-22 Alp Toker <alp@atoker.com>
-
- GTK+ build fix
-
- GTK_TARGET_OTHER_APP is not available in older GTK+ versions. Pass
- empty target flags for now.
-
- Check GTK+, not GLib versions, since they are different.
-
- * WebView/webkitwebview.cpp:
-
-2007-12-22 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16311
- [Gtk] Copy rich text to clipboard as text/plain and text/html.
-
- Add copy and paste targets for WebView and implement
- WebCore::PasteboardHelper.
-
- * WebCoreSupport/PasteboardHelperGtk.cpp: Added.
- (WebKit::PasteboardHelperGtk::getClipboard):
- (WebKit::PasteboardHelperGtk::getCopyTargetList):
- (WebKit::PasteboardHelperGtk::getPasteTargetList):
- * WebCoreSupport/PasteboardHelperGtk.h: Added.
- * WebView/webkitprivate.cpp:
- (webkit_init): set the PasteboardHelperGtk as WebCore::Pasteboard helper
- * WebView/webkitprivate.h:
- (_WebKitWebViewPrivate::copy_target_list): added
- (_WebKitWebViewPrivate::paste_target_list): added
- * WebView/webkitwebview.cpp:
- (webkit_web_view_get_property): added
- (webkit_web_view_finalize):
- (webkit_web_view_class_init): create properties for COPY_TARGET and PASTE_TARGET and create the copy and paste target lists
- (webkit_web_view_get_copy_target_list): added
- (webkit_web_view_get_paste_target_list): added
- * WebView/webkitwebview.h:
- (webkit_web_view_get_copy_target_list): added
- (webkit_web_view_get_paste_target_list): added
-
-2007-12-22 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alp Toker.
-
- Follow up to http://bugs.webkit.org/show_bug.cgi?id=16144
-
- * WebView/webkitwebview.cpp:
- Fix signal id arguments for g_signal_emit in
- clipboard functions.
-
-2007-12-21 Alp Toker <alp@atoker.com>
-
- Documentation typo fix: s/wether/whether
-
- * WebView/webkitwebview.cpp:
-
-2007-12-21 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16144
- [GTK] Clipboard/ selection handling functions
-
- * WebView/webkitprivate.h:
- * WebView/webkitwebview.cpp:
- * WebView/webkitwebview.h:
-
-2007-12-19 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16222
- [GTK] Implement inline search and highlighting of matching strings.
-
- * WebView/webkitwebview.cpp:
- * WebView/webkitwebview.h:
-
-2007-12-19 Alp Toker <alp@atoker.com>
-
- Reviewed by Holger Freyther.
-
- Delete when Destroy functions are called to avoid leaks
-
- This matches the Mac port.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * WebCoreSupport/InspectorClientGtk.cpp:
-
-2007-12-14 Juan A. Suarez Romero <jasuarez@igalia.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16042
- [GTK] Eliminate webkit_init()
-
- Move webkit initialization to WebView class init.
-
- * WebView/headers.pri:
- * WebView/webkit.h:
- * WebView/webkitglobal.cpp: Removed.
- * WebView/webkitglobal.h: Removed.
- * WebView/webkitprivate.cpp:
- (WebKit::webkit_init):
- * WebView/webkitprivate.h:
- * WebView/webkitwebframe.cpp:
- * WebView/webkitwebview.cpp:
-
-2007-12-17 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=13542
- gdklauncher doesnt change URL in adress GTKEntry.
-
- Let DOMDocument observers do their work before emitting title-changed.
- The load-committed signal has been added for both the view and the frame.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDidReceiveTitle): emit title-changed
- (WebKit::FrameLoaderClient::setTitle): set private title
- (WebKit::FrameLoaderClient::dispatchDidCommitLoad): update the frame uri and emit load-committed
- * WebView/webkit-marshal.list:
- * WebView/webkitprivate.h:
- (_WebKitWebFramePrivate): rename location to uri
- * WebView/webkitwebframe.cpp:
- (webkit_web_frame_get_location): renamed to *_get_uri
- (webkit_web_frame_get_uri):
- (webkit_web_frame_real_title_changed): removed (see FrameLoaderClient::setTitle)
- (webkit_web_frame_class_init): pass the frame and the title in title-changed, not the uri
- (webkit_web_frame_finalize):
- * WebView/webkitwebframe.h:
- (_WebKitWebFrameClass): removed title_changed
- * WebView/webkitwebview.cpp:
- (webkit_web_view_class_init): pass only the title in title-changed
-
-2007-12-14 Alp Toker <alp@atoker.com>
-
- Fix inconsistent indentation in the license header. Maciej was right!
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
-
-2007-12-14 Alp Toker <alp@atoker.com>
-
- Reviewed by Maciej.
-
- http://bugs.webkit.org/show_bug.cgi?id=16432
- [GTK] Update license headers
-
- Consent has been given by the authors of these files to change license
- to the LGPL as outlined in the bug report.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * WebCoreSupport/DragClientGtk.cpp:
- * WebCoreSupport/EditorClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::makeRepresentation):
- (WebKit::FrameLoaderClient::forceLayout):
- (WebKit::FrameLoaderClient::forceLayoutForNonHTML):
- (WebKit::FrameLoaderClient::setCopiesOnScroll):
- (WebKit::FrameLoaderClient::detachedFromParent1):
- (WebKit::FrameLoaderClient::detachedFromParent2):
- (WebKit::FrameLoaderClient::detachedFromParent3):
- (WebKit::FrameLoaderClient::detachedFromParent4):
- (WebKit::FrameLoaderClient::loadedFromCachedPage):
- (WebKit::FrameLoaderClient::dispatchDidHandleOnloadEvents):
- (WebKit::FrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
- (WebKit::FrameLoaderClient::dispatchDidCancelClientRedirect):
- (WebKit::FrameLoaderClient::dispatchWillPerformClientRedirect):
- (WebKit::FrameLoaderClient::dispatchDidChangeLocationWithinPage):
- (WebKit::FrameLoaderClient::dispatchWillClose):
- (WebKit::FrameLoaderClient::dispatchDidCommitLoad):
- (WebKit::FrameLoaderClient::dispatchDidFinishDocumentLoad):
- (WebKit::FrameLoaderClient::dispatchDidFirstLayout):
- (WebKit::FrameLoaderClient::dispatchShow):
- (WebKit::FrameLoaderClient::cancelPolicyCheck):
- (WebKit::FrameLoaderClient::dispatchDidLoadMainResource):
- (WebKit::FrameLoaderClient::revertToProvisionalState):
- (WebKit::FrameLoaderClient::clearUnarchivingState):
- (WebKit::FrameLoaderClient::willChangeTitle):
- (WebKit::FrameLoaderClient::didChangeTitle):
- (WebKit::FrameLoaderClient::finalSetupForReplace):
- (WebKit::FrameLoaderClient::setDefersLoading):
- (WebKit::FrameLoaderClient::isArchiveLoadPending):
- (WebKit::FrameLoaderClient::cancelPendingArchiveLoad):
- (WebKit::FrameLoaderClient::clearArchivedResources):
- (WebKit::FrameLoaderClient::canHandleRequest):
- (WebKit::FrameLoaderClient::canShowMIMEType):
- (WebKit::FrameLoaderClient::representationExistsForURLScheme):
- (WebKit::FrameLoaderClient::generatedMIMETypeForURLScheme):
- (WebKit::FrameLoaderClient::dispatchDidReceiveContentLength):
- (WebKit::FrameLoaderClient::dispatchDidFinishLoading):
- (WebKit::FrameLoaderClient::dispatchDidFailLoading):
- (WebKit::FrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
- (WebKit::FrameLoaderClient::download):
- (WebKit::FrameLoaderClient::cancelledError):
- (WebKit::FrameLoaderClient::blockedError):
- (WebKit::FrameLoaderClient::cannotShowURLError):
- (WebKit::FrameLoaderClient::interruptForPolicyChangeError):
- (WebKit::FrameLoaderClient::cannotShowMIMETypeError):
- (WebKit::FrameLoaderClient::fileDoesNotExistError):
- (WebKit::FrameLoaderClient::shouldFallBack):
- (WebKit::FrameLoaderClient::willUseArchive):
- (WebKit::FrameLoaderClient::canCachePage):
- (WebKit::FrameLoaderClient::dispatchCreatePage):
- (WebKit::FrameLoaderClient::dispatchUnableToImplementPolicy):
- (WebKit::FrameLoaderClient::setMainDocumentError):
- (WebKit::FrameLoaderClient::startDownload):
- (WebKit::FrameLoaderClient::updateGlobalHistoryForStandardLoad):
- (WebKit::FrameLoaderClient::updateGlobalHistoryForReload):
- (WebKit::FrameLoaderClient::savePlatformDataToCachedPage):
- (WebKit::FrameLoaderClient::transitionToCommittedFromCachedPage):
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
- * WebCoreSupport/InspectorClientGtk.cpp:
- * WebView/webkitwebview.cpp:
-
-2007-12-14 Darin Adler <darin@apple.com>
-
- Reviewed by Alexey.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeyboardEvent): Changed to use Editor::command
- instead of Editor::execCommand.
- * WebView/webkitwebview.cpp: Ditto.
-
-2007-12-12 Brady Eidson <beidson@apple.com>
-
- Reviewed by Sam Weinig
-
- As part of doing some CachedPage and client cleanup, keep GTK building
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::savePlatformDataToCachedPage):
- (WebKit::FrameLoaderClient::transitionToCommittedFromCachedPage):
- (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-12-12 Alp Toker <alp@atoker.com>
-
- Reviewed by Holger Freyther.
-
- http://bugs.webkit.org/show_bug.cgi?id=15576
- [GTK] Printing support
-
- Add printing support.
-
- The API will be kept internal for the time being, but printing can now
- be triggered by Web pages or the JSC API using JavaScript.
-
- The print spooler and pagination code is fairly abstract and could be
- shared by other ports including Win and Qt once complete. It doesn't
- have header/footer support yet.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::print):
- * WebView/webkitprivate.h:
- * WebView/webkitwebframe.cpp:
- (PrintContext::begin_print):
- (PrintContext::draw_page):
- (PrintContext::end_print):
- (PrintContext::webkit_web_frame_print):
-
-2007-12-12 Sam Weinig <sam@webkit.org>
-
- Build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didChangeTitle):
-
-2007-12-12 Sam Weinig <sam@webkit.org>
-
- Build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
-
-2007-12-11 George Wright <george.wright@collabora.co.uk>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=14120
- [GDK] Support input methods
-
- This patch adds infrastructure for input method support.
-
- It also adds Hildon features for the Maemo mobile platform sufficient
- to support the virtual keyboard.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::imContextCommitted):
- (WebKit::EditorClient::EditorClient):
- (WebKit::EditorClient::~EditorClient):
- (WebKit::EditorClient::textFieldDidBeginEditing):
- (WebKit::EditorClient::textFieldDidEndEditing):
- * WebCoreSupport/EditorClientGtk.h:
- * WebView/webkitprivate.h:
- * WebView/webkitwebview.cpp:
-
-2007-12-07 Alexey Proskuryakov <ap@webkit.org>
-
- Reviewed by Darin Adler.
-
- <rdar://problem/5535636>
- Have to press 4 times instead of 2 times to get the expected result of ^^ with german keyboard.
-
- http://bugs.webkit.org/show_bug.cgi?id=13916
- JavaScript detects Tab as a character input on a textfield validation
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeyboardEvent):
- (WebKit::EditorClient::handleInputMethodKeydown):
- * WebCoreSupport/EditorClientGtk.h:
- Updated for cross-platform changes as much as it was possible without a gtk build environment.
-
-2007-12-08 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16346
- [GTK] Some webview parts must use the focused frame.
-
- Also update some old code.
-
- * WebView/webkitprivate.cpp:
- (getFrameFromView): removed
-
- * WebView/webkitprivate.h:
- (getFrameFromView): removed
-
- * WebView/webkitwebview.cpp:
- (webkit_web_view_expose_event):
- (webkit_web_view_key_press_event): use focused frame
- (webkit_web_view_key_release_event): use focused frame
- (webkit_web_view_button_press_event):
- (webkit_web_view_button_release_event):
- (webkit_web_view_motion_event):
- (webkit_web_view_scroll_event):
- (webkit_web_view_size_allocate):
- (webkit_web_view_set_scroll_adjustments):
- (webkit_web_view_execute_script):
- (webkit_web_view_stop_loading):
- (webkit_web_view_load_string):
- (webkit_web_view_reload):
- (webkit_web_view_open):
- (webkit_web_view_can_go_forward):
- (webkit_web_view_can_go_backward):
- (webkit_web_view_go_forward):
- (webkit_web_view_go_backward):
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeypress): fix for page up and page down keys for editable contents
-
-2007-12-07 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16333
- [GTK] Key bindings must work with focused frames.
-
- There are still more cases where getFrameFromView() is mis-used that
- need to be fixed, but this is a good start.
-
- * WebView/webkitwebview.cpp:
- (webkit_web_view_real_select_all):
- (webkit_web_view_real_cut_clipboard):
- (webkit_web_view_real_copy_clipboard):
- (webkit_web_view_real_paste_clipboard):
-
-2007-12-06 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16329
- [GTK] Two small cleanups
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::createWindow):
- (WebKit::ChromeClient::addMessageToConsole):
- (WebKit::ChromeClient::runJavaScriptAlert):
- (WebKit::ChromeClient::runJavaScriptConfirm):
- (WebKit::ChromeClient::runJavaScriptPrompt):
- (WebKit::ChromeClient::setStatusbarText):
- (WebKit::ChromeClient::mouseDidMoveOverElement):
- (WebKit::ChromeClient::setToolTip):
- * WebCoreSupport/ChromeClientGtk.h:
- * WebView/webkitprivate.cpp:
- (WebKit::kit):
- s/m_webPage/m_webView/
- * WebView/webkitwebview.cpp:
- Chain up to the parent class to activate bindings instead
- of doing it explicitely.
-
-2007-12-06 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=16173
- Licensing change
-
- Change license from BSD to LGPL.
-
- * WebCoreSupport/ChromeClientGtk.h:
- * WebView/webkitdefines.h:
- * WebView/webkitglobal.cpp:
- * WebView/webkitglobal.h:
- * WebView/webkitnetworkrequest.cpp:
- * WebView/webkitnetworkrequest.h:
- * WebView/webkitprivate.cpp:
- * WebView/webkitprivate.h:
- * WebView/webkitsettings.cpp:
- * WebView/webkitsettings.h:
- * WebView/webkitwebframe.cpp:
- * WebView/webkitwebframe.h:
- * WebView/webkitwebview.h:
-
-2007-12-05 Michael Natterer <mitch@imendio.com>
-
- Reviewed by Alp Toker.
-
- * WebView/webkitwebview.cpp: split key and button event handlers
- into separate press and release functions.
-
-2007-12-05 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- Handle events for Home and End keys.
-
- * WebView/webkitwebview.cpp:
- (webkit_web_view_key_event):
- * WebCoreSupport/EditorClientGtk.cpp:
- (EditorClient::handleKeypress):
-
-2007-12-05 Michael Natterer <mitch@imendio.com>
-
- Reviewed by Alp Toker.
-
- * WebView/webkitwebview.cpp
- * WebCoreSupport/ChromeClientGtk.cpp
- * WebCoreSupport/FrameLoaderClientGtk.cpp: canonicalize signal names.
-
-2007-12-04 Darin Adler <darin@apple.com>
-
- Reviewed by Kevin Decker.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp: Removed obsolete privateBrowsingEnabled.
- * WebCoreSupport/FrameLoaderClientGtk.h: Ditto.
-
-2007-12-04 Michael Natterer <mitch@imendio.com>
-
- Reviewed by Alp Toker.
-
- * WebView/webkitwebframe.cpp: don't redeclare the marshaller
- prototype but simply include "webkit-marshal.h" now that its build
- is fixed.
-
-2007-12-04 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- Fix a regression in key press propagation in r28386.
-
- Fix indentation (was off by two spaces).
-
- * WebView/webkitwebview.cpp:
-
-2007-12-04 Luca Bruno <lethalman88@gmail.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=15911
- [GTK] Use GtkBindingSet to make key bindings user-configurable
-
- This patch doesn't cover the full range of bindings, only the ones
- that seem obviously correct and have clear public API.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeypress): do not handle clipboard operations and select-all
- * WebView/webkitwebview.cpp: add cut, copy, paste and select-all signals and allow binding sets (issue #15911 and #16144)
- * WebView/webkitwebview.h:
-
-2007-12-04 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=15561
- GTK port needs DumpRenderTree implementation
-
- Start work on the GTK+ DRT.
-
- Add a couple of proposed new API entry points. They are currently for
- internal use only by DRT and not in the public headers.
-
- * WebView/webkitprivate.h:
- * WebView/webkitwebframe.cpp:
-
-2007-12-03 Dan Bernstein <mitz@apple.com>
-
- Reviewed by Dave Hyatt.
-
- - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
-
- * WebView/webkitwebview.cpp: Remove the call to sendResizeEvent() since
- FrameView sends it now.
-
-2007-12-03 Alp Toker <alp@atoker.com>
-
- globalObject() GTK+ build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::windowObjectCleared):
-
-2007-12-03 Geoffrey Garen <ggaren@apple.com>
-
- GTK Build fix: get globalExec from the right place.
-
- * WebView/webkitwebframe.cpp:
-
-2007-12-01 Alp Toker <alp@atoker.com>
-
- Reviewed by Adam Roben.
-
- Wrap type definitions in webkitdefines.h with G_BEGIN_DECLS, which
- takes care of extern "C".
-
- Introduce a webkit.h convenience header.
-
- Remove another left-over from the old API.
-
- * WebView/headers.pri:
- * WebView/webkit.h: Added.
- * WebView/webkitdefines.h:
-
-2007-12-01 Alp Toker <alp@atoker.com>
-
- Reviewed by Adam Roben.
-
- http://bugs.webkit.org/show_bug.cgi?id=15687
- [Gtk] Allow API clients to interact with JavaScript in web pages
-
- Include the necessary JavaScriptCore headers directly in the public
- API headers.
-
- This is the last of a series of changes needed to allow GTK+
- applications to access the JS API.
-
- Until http://bugs.webkit.org/show_bug.cgi?id=16029 is resolved,
- developers will still have to include the individual JS API headers
- individually if they want to use it in their applications.
-
- Patch also removes some old legacy use of GDK that was in
- WebKitWebFrame. No ABI change.
-
- * WebView/webkitdefines.h:
- * WebView/webkitwebframe.h:
- * WebView/webkitwebview.h:
-
-2007-11-30 Jan Michael Alonzo <jmalonzo@unpluggable.com>
-
- Fix for GTK+ Debug build breakage introduced in r28273.
-
- * WebView/webkitprivate.cpp:
- (WebKit::kit):
-
-2007-11-30 Alp Toker <alp@atoker.com>
-
- Reviewed by Adam Roben.
-
- http://bugs.webkit.org/show_bug.cgi?id=15691
- [GTK] Public API does not follow GTK+ conventions
-
- Refactor the WebKit/GTK+ public API. Changes:
- WebKitPage -> WebKitWebView
- WebKitFrame -> WebKitWebFrame
-
- Public API source and header names have been updated to mirror the API
- changes.
-
- The API is now kept in WebKit/gtk/WebView to match other ports in the
- same class such as Mac and Win.
-
- API/ABI-breaking change.
-
- * Api: Removed.
- * Api/headers.pri: Removed.
- * Api/webkitgtk-marshal.list: Removed.
- * Api/webkitgtkdefines.h: Removed.
- * Api/webkitgtkframe.cpp: Removed.
- * Api/webkitgtkframe.h: Removed.
- * Api/webkitgtkglobal.cpp: Removed.
- * Api/webkitgtkglobal.h: Removed.
- * Api/webkitgtknetworkrequest.cpp: Removed.
- * Api/webkitgtknetworkrequest.h: Removed.
- * Api/webkitgtkpage.cpp: Removed.
- * Api/webkitgtkpage.h: Removed.
- * Api/webkitgtkprivate.cpp: Removed.
- * Api/webkitgtkprivate.h: Removed.
- * Api/webkitgtksettings.cpp: Removed.
- * Api/webkitgtksettings.h: Removed.
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient):
- (WebKit::ChromeClient::createWindow):
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::webPage):
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::isEditable):
- (WebKit::EditorClient::EditorClient):
- * WebCoreSupport/EditorClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit::FrameLoaderClient::postProgressStartedNotification):
- (WebKit::FrameLoaderClient::postProgressEstimateChangedNotification):
- (WebKit::FrameLoaderClient::postProgressFinishedNotification):
- (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- (WebKit::FrameLoaderClient::createFrame):
- (WebKit::FrameLoaderClient::windowObjectCleared):
- (WebKit::FrameLoaderClient::dispatchDidReceiveIcon):
- (WebKit::FrameLoaderClient::setTitle):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- (WebKit::FrameLoaderClient::webFrame):
- * WebView: Added.
- * WebView/headers.pri: Added.
- * WebView/webkit-marshal.list: Added.
- * WebView/webkitdefines.h: Added.
- * WebView/webkitglobal.cpp: Added.
- * WebView/webkitglobal.h: Added.
- * WebView/webkitnetworkrequest.cpp: Added.
- * WebView/webkitnetworkrequest.h: Added.
- * WebView/webkitprivate.cpp: Added.
- (WebKit::apply):
- (WebKit::create):
- (WebKit::getFrameFromView):
- (WebKit::getViewFromFrame):
- (WebKit::core):
- (WebKit::kit):
- * WebView/webkitprivate.h: Added.
- * WebView/webkitsettings.cpp: Added.
- * WebView/webkitsettings.h: Added.
- * WebView/webkitwebframe.cpp: Added.
- * WebView/webkitwebframe.h: Added.
- * WebView/webkitwebview.cpp: Added.
- * WebView/webkitwebview.h: Added.
-
-2007-11-28 Alp Toker <alp@atoker.com>
-
- Reviewed by Timothy Hatcher.
-
- http://bugs.webkit.org/show_bug.cgi?id=16174
- [GTK] Use "URI" not "URL" in public API
-
- Replace use of the term "URL" with "URI" in public headers,
- documentation and some internal code to match GLib/GTK+ convention.
-
- This is now mentioned in the API guidelines:
- http://trac.webkit.org/projects/webkit/wiki/HackingGtk
-
- API/ABI-breaking change.
-
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtknetworkrequest.cpp:
- * Api/webkitgtknetworkrequest.h:
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
- * Api/webkitgtkprivate.h:
- * Api/webkitgtksettings.h:
-
-2007-11-29 Brady Eidson <beidson@apple.com>
-
- Better build fix for Gtk
-
- * WebCoreSupport/ChromeClientGtk.h:
-
-2007-11-29 Brady Eidson <beidson@apple.com>
-
- Keep it building with new client method
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::requestQuotaIncreaseForNewDatabase):
- (WebKit::ChromeClient::requestQuotaIncreaseForDatabaseOperation):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2007-11-26 Alp Toker <alp@atoker.com>
-
- Reviewed by Adam Roben.
-
- http://bugs.webkit.org/show_bug.cgi?id=16149
- Implement the window-object-cleared signal
-
- This implementation provides the JSGlobalContextRef and JSObjectRef
- directly rather than using an intermediate JS wrapper object, similar
- to the approach taken by the Win port.
-
- * Api/webkitgtk-marshal.list:
- * Api/webkitgtkframe.h:
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::windowObjectCleared):
-
-2007-11-24 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- http://bugs.webkit.org/show_bug.cgi?id=15691
- [GTK] Public API does not follow GTK+ conventions
-
- Public API enhancements:
-
- Implement webkit_page_get_editable() and webkit_page_set_editable().
-
- Implement webkit_frame_get_name().
-
- Remove definitions for functions that are unusable or not implemented.
- This has caused much confusion for application developers.
-
- Improve documentation.
-
- Correct/constify some return types.
-
- Add parameter checks.
-
- Make the default fixed font "Courier New" to match the other Web
- font names.
-
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtkframe.h:
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
- * Api/webkitgtkprivate.h:
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::isEditable):
-
-2007-11-24 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- http://bugs.webkit.org/show_bug.cgi?id=16125
- [GTK] Up key doesn't work properly when content is editable
-
- Add a missing 'break' to avoid falling through to the next case when
- handling VK_UP keystrokes. This was noticed when working on editing
- support in the GTK+ port.
-
- I've checked the other cases for similar typos and they seem fine.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeypress):
-
-2007-11-24 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=15745
- [GTK] Arrow keys do not Scroll
-
- * Api/webkitgtkpage.cpp:
-
- Support Up/Down/Right/Left keys to scroll. Slight hack, see FIXME for
- details.
-
-2007-11-24 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=15891
- [GTK] Javascript console and dialogs are not implemented
-
- Fix call to gtk_message_dialog_new() which expects a format string.
-
- * Api/webkitgtkpage.cpp:
-
-2007-11-24 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=15793
- [GTK] Webkit doesn't show title attribute tooltip when hovering over an image
-
- Implement tooltip support using the new Tooltip API.
-
- Support for older versions of GTK+ is still lacking.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::setToolTip):
-
-2007-11-22 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- Implement and document several WebKitFrame functions, some of which
- are necessary to support DRT.
-
- Correct NULL handling and improve run-time checks.
-
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtkframe.h:
- * Api/webkitgtkprivate.cpp:
-
-2007-11-22 Alp Toker <alp@atoker.com>
-
- Whitespace fixes only.
-
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
- * Api/webkitgtkprivate.h:
- * WebCoreSupport/ChromeClientGtk.cpp:
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- * WebCoreSupport/ContextMenuClientGtk.h:
- * WebCoreSupport/DragClientGtk.h:
- * WebCoreSupport/EditorClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::dispatchWillSendRequest):
- (WebKit::FrameLoaderClient::assignIdentifierToInitialRequest):
- (WebKit::FrameLoaderClient::postProgressEstimateChangedNotification):
- (WebKit::FrameLoaderClient::createFrame):
- (WebKit::FrameLoaderClient::createJavaAppletWidget):
- (WebKit::FrameLoaderClient::registerForIconNotification):
- (WebKit::FrameLoaderClient::setMainFrameDocumentReady):
- (WebKit::FrameLoaderClient::dispatchDidFinishLoad):
- (WebKit::FrameLoaderClient::frameLoadCompleted):
- (WebKit::FrameLoaderClient::saveViewStateToItem):
- (WebKit::FrameLoaderClient::restoreViewState):
- (WebKit::FrameLoaderClient::shouldGoToHistoryItem):
- (WebKit::FrameLoaderClient::setTitle):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-11-22 Michael Natterer <mitch@imendio.com>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=15984
- Implement "navigation-requested" signal for WebKit Gtk
-
- * Api/webkitgtknetworkrequest.h: fix parent class member.
-
- * Api/webkitgtknetworkrequest.cpp
- * Api/webkitgtkprivate.h: basic implementation featuring an
- "url" member and API.
-
- * Api/webkitgtkdefines.h: added network request typedefs.
-
- * Api/webkitgtkpage.h: fix enum name:
- s/WEBKIT_NAVIGATION_REQUEST_RESPONSE/WebKitNavigationRequestResponse/
- and sanitized enum values.
-
- * Api/webkitgtkpage.cpp: made "navigation-requested" a signal.
-
- * Api/webkitgtk-marshal.list: added INT:OBJECT,OBJECT
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp: emit the new signal in
- dispatchDecidePolicyForNavigationAction().
-
-2007-11-18 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp.
-
- http://bugs.webkit.org/show_bug.cgi?id=15891
- [GTK] Javascript console and dialogs are not implemented
-
- Correct script-prompt to return NULL when cancelled.
-
- Small changes to avoid compiler warnings.
-
- * Api/webkitgtkpage.cpp:
-
-2007-11-17 Timothy Hatcher <timothy@apple.com>
-
- Reviewed by Mark Rowe.
-
- Bug 13470: i18n: The Web Inspector is not localizable
- http://bugs.webkit.org/show_bug.cgi?id=13470
-
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::localizedStringsURL): Empty stub.
- * WebCoreSupport/InspectorClientGtk.h: Add localizedStringsURL.
-
-2007-11-13 Mark Rowe <mrowe@apple.com>
-
- Gtk build fix. Replace incorrect use of the LOG macro with g_print.
-
- * Api/webkitgtkpage.cpp:
-
-2007-11-13 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Alp.
-
- http://bugs.webkit.org/show_bug.cgi?id=15891
- [GTK] Javascript console and dialogs are not implemented
-
- Implement signals for script dialogs and console messages.
-
- * Api/webkitgtk-marshal.list:
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::addMessageToConsole):
- (WebKit::ChromeClient::runJavaScriptAlert):
- (WebKit::ChromeClient::runJavaScriptConfirm):
- (WebKit::ChromeClient::runJavaScriptPrompt):
-
-2007-11-11 Alp Toker <alp@atoker.com>
-
- Reviewed by Anders.
-
- Initialize m_userAgent.
-
- Fix typos in GDK_WINDOWING conditionals.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit::agentPlatform):
-
-2007-11-11 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- Mention Safari in the UserAgent string to improve site compatibility.
-
- Also bump the hard-coded AppleWebKit version number.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::composeUserAgent):
-
-2007-11-09 Xan Lopez <xan@gnome.org>
-
- Reviewed by Alp.
-
- Fix http://bugs.webkit.org/show_bug.cgi?id=15926
- [GTK] WebKitPage map handler is redundant.
-
- * Api/webkitgtkpage.cpp:
- The map handler for WebKitPage is redundant, GtkContainer does
- the same (and more correctly).
-
-2007-11-08 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- http://bugs.webkit.org/show_bug.cgi?id=15653
- [GTK] Text editor does not handle common keystrokes
-
- Handle more keystrokes in EditorClientGtk. Note that this is a
- temporary measure pending a proper solution using GtkBindingSet (see
- http://bugs.webkit.org/show_bug.cgi?id=15911).
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeypress):
-
-2007-11-08 Kevin McCullough <kmccullough@apple.com>
-
- Reviewed by Sam.
-
- - windowObjectCleared() is no longer const. It needs to setup the
- script debugger and cannot be const to do so.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::windowObjectCleared):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-11-06 Rodney Dawes <dobey@wayofthemonkey.com>
-
- Fix http://bugs.webkit.org/attachment.cgi?id=17043&action=view
- Bug 15766: [GTK] WebKit sometimes spews binary data as text/plain into iframes
-
- FrameLoaderClient::objectContentType needs to check with the MIMETypeRegistry
- to determine whether the given MIME type is displayable as an image or non-image.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (FrameLoaderClient::objectContentType): Change logic to match that in
- the Windows and Mac ports.
-
-2007-11-05 Christian Dywan <christian@twotoasts.de>
-
- Reviewed by Maciej.
-
- http://bugs.webkit.org/show_bug.cgi?id=15409
- FrameLoaderClientGtk hardcodes data, including platform to Linux i686
-
- Compute a proper user agent string.
-
- Patch includes fixes by Alp.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::agentPlatform):
- (WebKit::agentOS):
- (WebKit::composeUserAgent):
- (WebKit::FrameLoaderClient::userAgent):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-11-05 Mark Rowe <mrowe@apple.com>
-
- Rubber-stamped by Alp Toker.
-
- Remove unused m_firstData member from FrameLoaderClientGtk.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-11-05 Mark Rowe <mrowe@apple.com>
-
- Reviewed by Alp Toker.
-
- Fix http://bugs.webkit.org/show_bug.cgi?id=15842
- Bug 15842: [Gtk] about:blank doesn't work
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::finishedLoading): Set the encoding on the frame loader to
- get work done that is normally done when the first bit of data is received, even in the
- case of a document with no data (like about:blank).
-
-2007-11-03 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- Restore correct double and triple click behaviour
-
- We ended up ignoring GDK_2BUTTON_PRESS and GDK_3BUTTON_PRESS after
- recent refactoring.
-
- * Api/webkitgtkpage.cpp:
-
-2007-11-03 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- Frame scrolling and invalidation fixes
-
- Make upward scroll events have a positive delta to match other ports.
-
- Fix the invalidation rect offset for frames so that scrolling works properly.
-
- Avoid allocating negative sizes to widgets to avoid GTK+ warnings.
-
- Allow tabbing to all widgets and links.
-
- Fix event returns, improving the focus situation and correcting scroll wheel
- behavior.
-
- * Api/webkitgtkpage.cpp:
- * WebCoreSupport/ChromeClientGtk.cpp:
-
-2007-10-29 Alp Toker <alp@atoker.com>
-
- Reviewed by Maciej.
-
- Do not allow control to reach end of non-void functions
-
- * Api/webkitgtksettings.cpp:
-
-2007-10-28 Lars Lindner <lars.lindner@gmail.com>
-
- Reviewed by Alp.
-
- http://bugs.webkit.org/show_bug.cgi?id=15466
- [gtk] widget does not take focus on mouse click
-
- Grab widget focus in mouse press callback.
-
- * Api/webkitgtkpage.cpp:
-
-2007-10-25 Alp Toker <alp@atoker.com>
-
- Reviewed by Brady.
-
- http://bugs.webkit.org/show_bug.cgi?id=15686
- GtkLauncher aborts on launch due to uninitialized threading subsystem
-
- Re-enable database support in the GTK+ port, with a fix.
-
- Initialize GLib threading as early as possible.
-
- * Api/webkitgtkglobal.cpp:
-
-2007-10-25 Alp Toker <alp@atoker.com>
-
- Unreviewed fix to make the GTK+ port run.
-
- http://bugs.webkit.org/show_bug.cgi?id=15686
- GtkLauncher aborts on launch due to uninitialized threading subsystem
-
- http://bugs.webkit.org/show_bug.cgi?id=15688
- [GTK] Make it possible to disable database support
-
- Make database path initialization conditional on database support
- being enabled.
-
- * Api/webkitgtkglobal.cpp:
-
-2007-10-24 Mark Rowe <mrowe@apple.com>
-
- Gtk build fix. Track WebCore changes in r27004.
-
- * Api/webkitgtkglobal.cpp:
-
-2007-10-22 Alp Toker <alp@atoker.com>
-
- Reviewed by Mark Rowe.
-
- http://bugs.webkit.org/show_bug.cgi?id=15611
- [GTK] Text selection behaviour different in Debug and Release builds
-
- http://bugs.webkit.org/show_bug.cgi?id=15578
- [GTK] Text editor caret does not blink
-
- Never allow control to reach the end of non-void functions.
-
- Return more sensible values, or in some cases, nulls.
-
- * Api/webkitgtksettings.cpp:
- * Api/webkitgtksettings.h:
- * WebCoreSupport/DragClientGtk.cpp:
- (WebKit::DragClient::actionMaskForDrag):
- (WebKit::DragClient::dragSourceActionMaskForPoint):
- (WebKit::DragClient::createDragImageForLink):
-
-2007-10-20 Mark Rowe <mrowe@apple.com>
-
- Reviewed by Alp.
-
- Gtk changes needed to enable HTML 5 client-side database storage.
-
- * Api/webkitgtkglobal.cpp: Set a default database path based on the user data directory.
- This should become configurable by client applications in the future.
-
-2007-10-20 Mark Rowe <mrowe@apple.com>
-
- Reviewed by Eric.
-
- Don't allow control characters to be inserted into editable regions.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::handleKeypress):
-
-2007-10-19 Alp Toker <alp@atoker.com>
-
- Reviewed by Oliver.
-
- GTK+ build fix enabling the new local database storage feature.
- There is also a prospective Qt build fix.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::runDatabaseSizeLimitPrompt):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2007-10-14 Jan Michael Alonzo <jmalonzo@unpluggable.com>
-
- Reviewed by Adam.
-
- http://bugs.webkit.org/show_bug.cgi?id=15299
- Fix "hovering_over_link" signal not emitted when consecutive links
- are hovered.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
- * WebCoreSupport/ChromeClientGtk.h:
- - Remove m_didSendLinkSignal as it is superseded by m_hoveredLinkURL
-
-2007-10-10 Alice Liu <alice.liu@apple.com>
-
- Reviewed by Geoff Garen.
-
- changes to keep the build from breaking
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createFrame):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-10-03 Alp Toker <alp@atoker.com>
-
- Reviewed by Adam.
-
- http://bugs.webkit.org/show_bug.cgi?id=14726
- [gtk] API design. Mapping the WebView delegates to signals.
-
- Change the API namespace of the Gtk+ port from 'WebKitGtk' to 'WebKit'.
-
- * Api/webkitgtkdefines.h:
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtkframe.h:
- * Api/webkitgtkglobal.cpp:
- * Api/webkitgtkglobal.h:
- * Api/webkitgtknetworkrequest.h:
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
- * Api/webkitgtkprivate.cpp:
- (WebKit::apply):
- (WebKit::create):
- (WebKit::getFrameFromPage):
- (WebKit::getPageFromFrame):
- (WebKit::core):
- (WebKit::kit):
- * Api/webkitgtkprivate.h:
- * Api/webkitgtksettings.cpp:
- * Api/webkitgtksettings.h:
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient):
- (WebKit::ChromeClient::createWindow):
- (WebKit::ChromeClient::addMessageToConsole):
- (WebKit::ChromeClient::runJavaScriptAlert):
- (WebKit::ChromeClient::runJavaScriptConfirm):
- (WebKit::ChromeClient::runJavaScriptPrompt):
- * WebCoreSupport/ChromeClientGtk.h:
- (WebKit::ChromeClient::webPage):
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::EditorClient):
- * WebCoreSupport/EditorClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit::FrameLoaderClient::postProgressStartedNotification):
- (WebKit::FrameLoaderClient::postProgressEstimateChangedNotification):
- (WebKit::FrameLoaderClient::postProgressFinishedNotification):
- (WebKit::FrameLoaderClient::createFrame):
- (WebKit::FrameLoaderClient::dispatchDidReceiveIcon):
- (WebKit::FrameLoaderClient::setTitle):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- (WebKit::FrameLoaderClient::webFrame):
-
-2007-10-02 Cosimo Cecchi <cosimoc@svn.gnome.org>
-
- Reviewed by Mark.
-
- http://bugs.webkit.org/show_bug.cgi?id=15299
- Fix "hovering_over_link" signal being fired every time mouse moves.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient):
- (WebKit::ChromeClient::mouseDidMoveOverElement):
- * WebCoreSupport/ChromeClientGtk.h:
-
-2007-09-21 Sean Egan <seanegan@gmail.com>
-
- Reviewed by Alp.
-
- Add an "execute_script" method to programmatically call Javascript
- http://bugs.webkit.org/show_bug.cgi?id=15255
-
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
-
-2007-09-29 Lars Lindner <lars.lindner@gmail.com>
-
- Reviewed by Adam.
-
- ChromeClientGtk.cpp does not implement mouseDidMoveOverElement()
- http://bugs.webkit.org/show_bug.cgi?id=15299
-
- Implementing "hovering_over_link" signal.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::mouseDidMoveOverElement):
-
-2007-09-26 Mark Rowe <mrowe@apple.com>
-
- Gtk build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp: Check for empty URL instead of invalid URL.
-
-2007-09-17 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- WebKitGtkPage and WebKitGtkFrame have a dependency on each other. To
- allow client code to include both headers the typedef's for
- WebKitGtkFrame, WebKitGtkPage, WebKitGtkFrameData and WebKitGtkNetworkRequest
- are moved into webkitgtkdefines.h and included by both webkitgtkpage.h and
- webkitgtkframe.h
-
- * Api/webkitgtkdefines.h:
- * Api/webkitgtkframe.h:
- * Api/webkitgtkpage.h:
-
-2007-09-17 Cyril Brulebois <cyril.brulebois@enst-bretagne.fr>
-
- Reviewed by Mark, some Coding Style changes by Holger.
-
- This is from http://bugs.webkit.org/show_bug.cgi?id=14812.
-
- Add title and location to WebKitGtkFramePrivate, add
- webkit_gtk_frame_get_location to the WebKitGtkFrame API as well
- as a title_changed callback, implement
- webkit_gtk_frame_get_title and webkit_gtk_frame_get_location.
-
- Initial patch by Diego Escalante Urrelo.
-
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtkframe.h:
- * Api/webkitgtkprivate.h:
-
-2007-09-15 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Mark.
-
- Use the new WebCore::String::fromUTF8 function to convert
- from the Gtk+ representation of a string to WebCore::String.
-
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::runJavaScriptPrompt):
-
-2007-09-10 Nigel Tao <nigeltao@gnome.org>
-
- Reviewed by Mark Rowe.
-
- Fix a typo where webkit_gtk_page_can_copy was declared twice,
- rather than webkit_gtk_page_can_paste.
-
- * Api/webkitgtkpage.h:
-
-2007-09-08 Brady Eidson <beidson@apple.com>
-
- Better build fix
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::registerForIconNotification):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-09-08 Brady Eidson <beidson@apple.com>
-
- Build fix
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::registerForIconNotification):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-09-05 Geoffrey Garen <ggaren@apple.com>
-
- Reviewed by Darin Adler, Maciej Stachowiak, Mark Rowe, Tim Hatcher.
-
- Fixed <rdar://problem/5326009> Make non-browser WebKit clients have no
- memory cache, or a very tiny one
-
- Keep the GTK build working with an empty stub.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::didPerformFirstNavigation):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-09-01 Oliver Hunt <oliver@apple.com>
-
- Reviewed by Sam.
-
- <rdar://problem/5344848> IME is incorrectly used for key events when on non-editable regions
-
- EditorClient::setInputMethodState stub
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::setInputMethodState):
- * WebCoreSupport/EditorClientGtk.h:
-
-2007-08-18 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Build fix. Add const to the first parameter of createPlugin
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
-
-2007-08-17 Anders Carlsson <andersca@apple.com>
-
- Build fix.
-
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::createPlugin):
- * WebCoreSupport/FrameLoaderClientGtk.h:
-
-2007-08-11 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- To not hit the needsLayout() assert of Frame::paint for subframes we need to
- make sure they are layed out. Use the newly created FrameView::layoutIfNeededRecursive
- method to do this.
-
- * Api/webkitgtkpage.cpp:
-
-2007-08-11 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- Fix text selection by setting a DragClient when creating the Page. Now
- that we have a DragClient we can free the Page when WebKitGtkPage gets
- destructed.
-
- * Api/webkitgtkpage.cpp:
- * WebCoreSupport/DragClientGtk.cpp: Added.
- (WebKit::DragClient::willPerformDragDestinationAction):
- (WebKit::DragClient::willPerformDragSourceAction):
- (WebKit::DragClient::actionMaskForDrag):
- (WebKit::DragClient::dragSourceActionMaskForPoint):
- (WebKit::DragClient::startDrag):
- (WebKit::DragClient::createDragImageForLink):
- * WebCoreSupport/DragClientGtk.h: Added.
-
-2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Anders.
-
- Make WebKitGtkPage a GtkContainer to avoid a size_allocate
- race of GtkScrollBar and GtkLayout.
-
- * Api/webkitgtk-marshal.list:
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
- * Api/webkitgtkprivate.h:
-
-2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Niko.
-
- Minor changes to the WebKit::EditorClient to allow removing
- of text from TextFields. Remove the selectWordBeforeMenuEvent method
- which is not used and not within WebCore::EditorClient.
-
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::shouldDeleteRange):
- (WebKit::EditorClient::shouldBeginEditing):
- (WebKit::EditorClient::shouldEndEditing):
- (WebKit::EditorClient::shouldApplyStyle):
- (WebKit::EditorClient::shouldInsertNode):
- * WebCoreSupport/EditorClientGtk.h:
-
-2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Mark.
-
- Rename the namespace from WebKitGtk to WebKit. Move the various *Client
- classes into the WebKit namespace. Change the class names to not contain Gtk.
- The file names have to contain the Gtk suffix to not clash with files in WebCore (e.g.
- bridge/EditorClient.h).
-
-
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkprivate.cpp:
- * Api/webkitgtkprivate.h:
- * ChangeLog:
- * WebCoreSupport/ChromeClientGtk.cpp:
- (WebKit::ChromeClient::ChromeClient):
- (WebKit::ChromeClient::chromeDestroyed):
- (WebKit::ChromeClient::windowRect):
- (WebKit::ChromeClient::setWindowRect):
- (WebKit::ChromeClient::pageRect):
- (WebKit::ChromeClient::scaleFactor):
- (WebKit::ChromeClient::focus):
- (WebKit::ChromeClient::unfocus):
- (WebKit::ChromeClient::createWindow):
- (WebKit::ChromeClient::createModalDialog):
- (WebKit::ChromeClient::show):
- (WebKit::ChromeClient::canRunModal):
- (WebKit::ChromeClient::runModal):
- (WebKit::ChromeClient::setToolbarsVisible):
- (WebKit::ChromeClient::toolbarsVisible):
- (WebKit::ChromeClient::setStatusbarVisible):
- (WebKit::ChromeClient::statusbarVisible):
- (WebKit::ChromeClient::setScrollbarsVisible):
- (WebKit::ChromeClient::scrollbarsVisible):
- (WebKit::ChromeClient::setMenubarVisible):
- (WebKit::ChromeClient::menubarVisible):
- (WebKit::ChromeClient::setResizable):
- (WebKit::ChromeClient::closeWindowSoon):
- (WebKit::ChromeClient::canTakeFocus):
- (WebKit::ChromeClient::takeFocus):
- (WebKit::ChromeClient::canRunBeforeUnloadConfirmPanel):
- (WebKit::ChromeClient::runBeforeUnloadConfirmPanel):
- (WebKit::ChromeClient::runJavaScriptAlert):
- (WebKit::ChromeClient::runJavaScriptConfirm):
- (WebKit::ChromeClient::setStatusbarText):
- (WebKit::ChromeClient::shouldInterruptJavaScript):
- (WebKit::ChromeClient::tabsToLinks):
- (WebKit::ChromeClient::windowResizerRect):
- (WebKit::ChromeClient::addToDirtyRegion):
- (WebKit::ChromeClient::scrollBackingStore):
- (WebKit::ChromeClient::updateBackingStore):
- (WebKit::ChromeClient::mouseDidMoveOverElement):
- (WebKit::ChromeClient::setToolTip):
- * WebCoreSupport/ChromeClientGtk.h:
- * WebCoreSupport/ContextMenuClientGtk.cpp:
- (WebKit::ContextMenuClient::contextMenuDestroyed):
- (WebKit::ContextMenuClient::getCustomMenuFromDefaultItems):
- (WebKit::ContextMenuClient::contextMenuItemSelected):
- (WebKit::ContextMenuClient::downloadURL):
- (WebKit::ContextMenuClient::copyImageToClipboard):
- (WebKit::ContextMenuClient::searchWithGoogle):
- (WebKit::ContextMenuClient::lookUpInDictionary):
- (WebKit::ContextMenuClient::speak):
- * WebCoreSupport/ContextMenuClientGtk.h:
- * WebCoreSupport/EditorClientGtk.cpp:
- (WebKit::EditorClient::shouldDeleteRange):
- (WebKit::EditorClient::shouldShowDeleteInterface):
- (WebKit::EditorClient::isContinuousSpellCheckingEnabled):
- (WebKit::EditorClient::isGrammarCheckingEnabled):
- (WebKit::EditorClient::spellCheckerDocumentTag):
- (WebKit::EditorClient::shouldBeginEditing):
- (WebKit::EditorClient::shouldEndEditing):
- (WebKit::EditorClient::shouldInsertText):
- (WebKit::EditorClient::shouldChangeSelectedRange):
- (WebKit::EditorClient::shouldApplyStyle):
- (WebKit::EditorClient::shouldMoveRangeAfterDelete):
- (WebKit::EditorClient::didBeginEditing):
- (WebKit::EditorClient::respondToChangedContents):
- (WebKit::EditorClient::respondToChangedSelection):
- (WebKit::EditorClient::didEndEditing):
- (WebKit::EditorClient::didWriteSelectionToPasteboard):
- (WebKit::EditorClient::didSetSelectionTypesForPasteboard):
- (WebKit::EditorClient::selectWordBeforeMenuEvent):
- (WebKit::EditorClient::isEditable):
- (WebKit::EditorClient::registerCommandForUndo):
- (WebKit::EditorClient::registerCommandForRedo):
- (WebKit::EditorClient::clearUndoRedoOperations):
- (WebKit::EditorClient::canUndo):
- (WebKit::EditorClient::canRedo):
- (WebKit::EditorClient::undo):
- (WebKit::EditorClient::redo):
- (WebKit::EditorClient::shouldInsertNode):
- (WebKit::EditorClient::pageDestroyed):
- (WebKit::EditorClient::smartInsertDeleteEnabled):
- (WebKit::EditorClient::toggleContinuousSpellChecking):
- (WebKit::EditorClient::toggleGrammarChecking):
- (WebKit::EditorClient::handleInputMethodKeypress):
- (WebKit::EditorClient::EditorClient):
- (WebKit::EditorClient::textFieldDidBeginEditing):
- (WebKit::EditorClient::textFieldDidEndEditing):
- (WebKit::EditorClient::textDidChangeInTextField):
- (WebKit::EditorClient::doTextFieldCommandFromEvent):
- (WebKit::EditorClient::textWillBeDeletedInTextField):
- (WebKit::EditorClient::textDidChangeInTextArea):
- (WebKit::EditorClient::ignoreWordInSpellDocument):
- (WebKit::EditorClient::learnWord):
- (WebKit::EditorClient::checkSpellingOfString):
- (WebKit::EditorClient::checkGrammarOfString):
- (WebKit::EditorClient::updateSpellingUIWithGrammarString):
- (WebKit::EditorClient::updateSpellingUIWithMisspelledWord):
- (WebKit::EditorClient::showSpellingUI):
- (WebKit::EditorClient::spellingUIIsShowing):
- * WebCoreSupport/EditorClientGtk.h:
- * WebCoreSupport/FrameLoaderClientGtk.cpp:
- (WebKit::FrameLoaderClient::FrameLoaderClient):
- (WebKit::FrameLoaderClient::userAgent):
- (WebKit::FrameLoaderClient::createDocumentLoader):
- (WebKit::FrameLoaderClient::committedLoad):
- (WebKit::FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
- (WebKit::FrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
- (WebKit::FrameLoaderClient::dispatchWillSendRequest):
- (WebKit::FrameLoaderClient::assignIdentifierToInitialRequest):
- (WebKit::FrameLoaderClient::postProgressStartedNotification):
- (WebKit::FrameLoaderClient::postProgressFinishedNotification):
- (WebKit::FrameLoaderClient::frameLoaderDestroyed):
- (WebKit::FrameLoaderClient::dispatchDidReceiveResponse):
- (WebKit::FrameLoaderClient::createPlugin):
- (WebKit::FrameLoaderClient::redirectDataToPlugin):
- (WebKit::FrameLoaderClient::createJavaAppletWidget):
- (WebKit::FrameLoaderClient::overrideMediaType):
- (WebKit::FrameLoaderClient::windowObjectCleared):
- (WebKit::FrameLoaderClient::setMainFrameDocumentReady):
- (WebKit::FrameLoaderClient::hasWebView):
- (WebKit::FrameLoaderClient::hasFrameView):
- (WebKit::FrameLoaderClient::dispatchDidFinishLoad):
- (WebKit::FrameLoaderClient::frameLoadCompleted):
- (WebKit::FrameLoaderClient::saveViewStateToItem):
- (WebKit::FrameLoaderClient::restoreViewState):
- (WebKit::FrameLoaderClient::privateBrowsingEnabled):
- (WebKit::FrameLoaderClient::makeDocumentView):
- (WebKit::FrameLoaderClient::makeRepresentation):
- (WebKit::FrameLoaderClient::forceLayout):
- (WebKit::FrameLoaderClient::forceLayoutForNonHTML):
- (WebKit::FrameLoaderClient::setCopiesOnScroll):
- (WebKit::FrameLoaderClient::detachedFromParent1):
- (WebKit::FrameLoaderClient::detachedFromParent2):
- (WebKit::FrameLoaderClient::detachedFromParent3):
- (WebKit::FrameLoaderClient::detachedFromParent4):
- (WebKit::FrameLoaderClient::loadedFromCachedPage):
- (WebKit::FrameLoaderClient::dispatchDidHandleOnloadEvents):
- (WebKit::FrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
- (WebKit::FrameLoaderClient::dispatchDidCancelClientRedirect):
- (WebKit::FrameLoaderClient::dispatchWillPerformClientRedirect):
- (WebKit::FrameLoaderClient::dispatchDidChangeLocationWithinPage):
- (WebKit::FrameLoaderClient::dispatchWillClose):
- (WebKit::FrameLoaderClient::dispatchDidReceiveIcon):
- (WebKit::FrameLoaderClient::dispatchDidStartProvisionalLoad):
- (WebKit::FrameLoaderClient::dispatchDidReceiveTitle):
- (WebKit::FrameLoaderClient::dispatchDidCommitLoad):
- (WebKit::FrameLoaderClient::dispatchDidFinishDocumentLoad):
- (WebKit::FrameLoaderClient::dispatchDidFirstLayout):
- (WebKit::FrameLoaderClient::dispatchShow):
- (WebKit::FrameLoaderClient::cancelPolicyCheck):
- (WebKit::FrameLoaderClient::dispatchDidLoadMainResource):
- (WebKit::FrameLoaderClient::revertToProvisionalState):
- (WebKit::FrameLoaderClient::clearUnarchivingState):
- (WebKit::FrameLoaderClient::willChangeTitle):
- (WebKit::FrameLoaderClient::didChangeTitle):
- (WebKit::FrameLoaderClient::finishedLoading):
- (WebKit::FrameLoaderClient::finalSetupForReplace):
- (WebKit::FrameLoaderClient::setDefersLoading):
- (WebKit::FrameLoaderClient::isArchiveLoadPending):
- (WebKit::FrameLoaderClient::cancelPendingArchiveLoad):
- (WebKit::FrameLoaderClient::clearArchivedResources):
- (WebKit::FrameLoaderClient::canHandleRequest):
- (WebKit::FrameLoaderClient::canShowMIMEType):
- (WebKit::FrameLoaderClient::representationExistsForURLScheme):
- (WebKit::FrameLoaderClient::generatedMIMETypeForURLScheme):
- (WebKit::FrameLoaderClient::provisionalLoadStarted):
- (WebKit::FrameLoaderClient::didFinishLoad):
- (WebKit::FrameLoaderClient::setDocumentViewFromCachedPage):
- (WebKit::FrameLoaderClient::dispatchDidReceiveContentLength):
- (WebKit::FrameLoaderClient::dispatchDidFinishLoading):
- (WebKit::FrameLoaderClient::dispatchDidFailLoading):
- (WebKit::FrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
- (WebKit::FrameLoaderClient::dispatchDidFailProvisionalLoad):
- (WebKit::FrameLoaderClient::dispatchDidFailLoad):
- (WebKit::FrameLoaderClient::download):
- (WebKit::FrameLoaderClient::cancelledError):
- (WebKit::FrameLoaderClient::blockedError):
- (WebKit::FrameLoaderClient::cannotShowURLError):
- (WebKit::FrameLoaderClient::interruptForPolicyChangeError):
- (WebKit::FrameLoaderClient::cannotShowMIMETypeError):
- (WebKit::FrameLoaderClient::fileDoesNotExistError):
- (WebKit::FrameLoaderClient::shouldFallBack):
- (WebKit::FrameLoaderClient::willUseArchive):
- (WebKit::FrameLoaderClient::saveDocumentViewToCachedPage):
- (WebKit::FrameLoaderClient::canCachePage):
- (WebKit::FrameLoaderClient::dispatchCreatePage):
- (WebKit::FrameLoaderClient::dispatchUnableToImplementPolicy):
- * WebCoreSupport/FrameLoaderClientGtk.h:
- * WebCoreSupport/InspectorClientGtk.cpp:
- (WebKit::InspectorClient::inspectorDestroyed):
- (WebKit::InspectorClient::createPage):
- (WebKit::InspectorClient::showWindow):
- (WebKit::InspectorClient::closeWindow):
- (WebKit::InspectorClient::attachWindow):
- (WebKit::InspectorClient::detachWindow):
- (WebKit::InspectorClient::highlight):
- (WebKit::InspectorClient::hideHighlight):
- * WebCoreSupport/InspectorClientGtk.h:
-
-2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- As of http://bugs.webkit.org/show_bug.cgi?id=14727 move the
- various *ClientGdk.{cpp,h} files from WebCore to WebKit/gtk/WebCoreSupport and
- rename it from Gdk to Gtk.
-
- * Api/webkitgtkdefines.h:
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtkframe.h:
- * Api/webkitgtkglobal.cpp:
- * Api/webkitgtkglobal.h:
- * Api/webkitgtknetworkrequest.cpp:
- * Api/webkitgtknetworkrequest.h:
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
- * Api/webkitgtkprivate.cpp:
- * Api/webkitgtkprivate.h:
- * Api/webkitgtksettings.cpp:
- * Api/webkitgtksettings.h:
- * WebCoreSupport/ChromeClientGtk.cpp: Renamed from WebKit/gtk/WebCoreSupport/ChromeClientGdk.cpp.
- (WebKitGtk::ChromeClientGtk::ChromeClientGtk):
- (WebKitGtk::ChromeClientGtk::chromeDestroyed):
- (WebKitGtk::ChromeClientGtk::windowRect):
- (WebKitGtk::ChromeClientGtk::setWindowRect):
- (WebKitGtk::ChromeClientGtk::pageRect):
- (WebKitGtk::ChromeClientGtk::scaleFactor):
- (WebKitGtk::ChromeClientGtk::focus):
- (WebKitGtk::ChromeClientGtk::unfocus):
- (WebKitGtk::ChromeClientGtk::createWindow):
- (WebKitGtk::ChromeClientGtk::createModalDialog):
- (WebKitGtk::ChromeClientGtk::show):
- (WebKitGtk::ChromeClientGtk::canRunModal):
- (WebKitGtk::ChromeClientGtk::runModal):
- (WebKitGtk::ChromeClientGtk::setToolbarsVisible):
- (WebKitGtk::ChromeClientGtk::toolbarsVisible):
- (WebKitGtk::ChromeClientGtk::setStatusbarVisible):
- (WebKitGtk::ChromeClientGtk::statusbarVisible):
- (WebKitGtk::ChromeClientGtk::setScrollbarsVisible):
- (WebKitGtk::ChromeClientGtk::scrollbarsVisible):
- (WebKitGtk::ChromeClientGtk::setMenubarVisible):
- (WebKitGtk::ChromeClientGtk::menubarVisible):
- (WebKitGtk::ChromeClientGtk::setResizable):
- (WebKitGtk::ChromeClientGtk::closeWindowSoon):
- (WebKitGtk::ChromeClientGtk::canTakeFocus):
- (WebKitGtk::ChromeClientGtk::takeFocus):
- (WebKitGtk::ChromeClientGtk::canRunBeforeUnloadConfirmPanel):
- (WebKitGtk::ChromeClientGtk::runBeforeUnloadConfirmPanel):
- (WebKitGtk::ChromeClientGtk::addMessageToConsole):
- (WebKitGtk::ChromeClientGtk::runJavaScriptAlert):
- (WebKitGtk::ChromeClientGtk::runJavaScriptConfirm):
- (WebKitGtk::ChromeClientGtk::runJavaScriptPrompt):
- (WebKitGtk::ChromeClientGtk::setStatusbarText):
- (WebKitGtk::ChromeClientGtk::shouldInterruptJavaScript):
- (WebKitGtk::ChromeClientGtk::tabsToLinks):
- (WebKitGtk::ChromeClientGtk::windowResizerRect):
- (WebKitGtk::ChromeClientGtk::addToDirtyRegion):
- (WebKitGtk::ChromeClientGtk::scrollBackingStore):
- (WebKitGtk::ChromeClientGtk::updateBackingStore):
- (WebKitGtk::ChromeClientGtk::mouseDidMoveOverElement):
- (WebKitGtk::ChromeClientGtk::setToolTip):
- * WebCoreSupport/ChromeClientGtk.h: Renamed from WebKit/gtk/WebCoreSupport/ChromeClientGdk.h.
- (WebKitGtk::ChromeClientGtk::webPage):
- * WebCoreSupport/ContextMenuClientGtk.cpp: Renamed from WebCore/page/gdk/ContextMenuClientGdk.cpp.
- (WebCore::ContextMenuClientGtk::contextMenuDestroyed):
- (WebCore::ContextMenuClientGtk::getCustomMenuFromDefaultItems):
- (WebCore::ContextMenuClientGtk::contextMenuItemSelected):
- (WebCore::ContextMenuClientGtk::downloadURL):
- (WebCore::ContextMenuClientGtk::copyImageToClipboard):
- (WebCore::ContextMenuClientGtk::searchWithGoogle):
- (WebCore::ContextMenuClientGtk::lookUpInDictionary):
- (WebCore::ContextMenuClientGtk::speak):
- (WebCore::ContextMenuClientGtk::stopSpeaking):
- * WebCoreSupport/ContextMenuClientGtk.h: Renamed from WebCore/page/gdk/ContextMenuClientGdk.h.
- * WebCoreSupport/EditorClientGtk.cpp: Renamed from WebCore/platform/gdk/EditorClientGdk.cpp.
- (WebCore::EditorClientGtk::shouldDeleteRange):
- (WebCore::EditorClientGtk::shouldShowDeleteInterface):
- (WebCore::EditorClientGtk::isContinuousSpellCheckingEnabled):
- (WebCore::EditorClientGtk::isGrammarCheckingEnabled):
- (WebCore::EditorClientGtk::spellCheckerDocumentTag):
- (WebCore::EditorClientGtk::shouldBeginEditing):
- (WebCore::EditorClientGtk::shouldEndEditing):
- (WebCore::EditorClientGtk::shouldInsertText):
- (WebCore::EditorClientGtk::shouldChangeSelectedRange):
- (WebCore::EditorClientGtk::shouldApplyStyle):
- (WebCore::EditorClientGtk::shouldMoveRangeAfterDelete):
- (WebCore::EditorClientGtk::didBeginEditing):
- (WebCore::EditorClientGtk::respondToChangedContents):
- (WebCore::EditorClientGtk::respondToChangedSelection):
- (WebCore::EditorClientGtk::didEndEditing):
- (WebCore::EditorClientGtk::didWriteSelectionToPasteboard):
- (WebCore::EditorClientGtk::didSetSelectionTypesForPasteboard):
- (WebCore::EditorClientGtk::selectWordBeforeMenuEvent):
- (WebCore::EditorClientGtk::isEditable):
- (WebCore::EditorClientGtk::registerCommandForUndo):
- (WebCore::EditorClientGtk::registerCommandForRedo):
- (WebCore::EditorClientGtk::clearUndoRedoOperations):
- (WebCore::EditorClientGtk::canUndo):
- (WebCore::EditorClientGtk::canRedo):
- (WebCore::EditorClientGtk::undo):
- (WebCore::EditorClientGtk::redo):
- (WebCore::EditorClientGtk::shouldInsertNode):
- (WebCore::EditorClientGtk::pageDestroyed):
- (WebCore::EditorClientGtk::smartInsertDeleteEnabled):
- (WebCore::EditorClientGtk::toggleContinuousSpellChecking):
- (WebCore::EditorClientGtk::toggleGrammarChecking):
- (WebCore::EditorClientGtk::handleKeypress):
- (WebCore::EditorClientGtk::handleInputMethodKeypress):
- (WebCore::EditorClientGtk::EditorClientGtk):
- (WebCore::EditorClientGtk::textFieldDidBeginEditing):
- (WebCore::EditorClientGtk::textFieldDidEndEditing):
- (WebCore::EditorClientGtk::textDidChangeInTextField):
- (WebCore::EditorClientGtk::doTextFieldCommandFromEvent):
- (WebCore::EditorClientGtk::textWillBeDeletedInTextField):
- (WebCore::EditorClientGtk::textDidChangeInTextArea):
- (WebCore::EditorClientGtk::ignoreWordInSpellDocument):
- (WebCore::EditorClientGtk::learnWord):
- (WebCore::EditorClientGtk::checkSpellingOfString):
- (WebCore::EditorClientGtk::checkGrammarOfString):
- (WebCore::EditorClientGtk::updateSpellingUIWithGrammarString):
- (WebCore::EditorClientGtk::updateSpellingUIWithMisspelledWord):
- (WebCore::EditorClientGtk::showSpellingUI):
- (WebCore::EditorClientGtk::spellingUIIsShowing):
- (WebCore::EditorClientGtk::getGuessesForWord):
- * WebCoreSupport/EditorClientGtk.h: Renamed from WebCore/platform/gdk/EditorClientGdk.h.
- * WebCoreSupport/FrameLoaderClientGtk.cpp: Renamed from WebCore/loader/gdk/FrameLoaderClientGdk.cpp.
- (WebCore::FrameLoaderClientGtk::FrameLoaderClientGtk):
- (WebCore::FrameLoaderClientGtk::userAgent):
- (WebCore::FrameLoaderClientGtk::createDocumentLoader):
- (WebCore::FrameLoaderClientGtk::dispatchWillSubmitForm):
- (WebCore::FrameLoaderClientGtk::committedLoad):
- (WebCore::FrameLoaderClientGtk::dispatchDidReceiveAuthenticationChallenge):
- (WebCore::FrameLoaderClientGtk::dispatchDidCancelAuthenticationChallenge):
- (WebCore::FrameLoaderClientGtk::dispatchWillSendRequest):
- (WebCore::FrameLoaderClientGtk::assignIdentifierToInitialRequest):
- (WebCore::FrameLoaderClientGtk::postProgressStartedNotification):
- (WebCore::FrameLoaderClientGtk::postProgressEstimateChangedNotification):
- (WebCore::FrameLoaderClientGtk::postProgressFinishedNotification):
- (WebCore::FrameLoaderClientGtk::frameLoaderDestroyed):
- (WebCore::FrameLoaderClientGtk::dispatchDidReceiveResponse):
- (WebCore::FrameLoaderClientGtk::dispatchDecidePolicyForMIMEType):
- (WebCore::FrameLoaderClientGtk::dispatchDecidePolicyForNewWindowAction):
- (WebCore::FrameLoaderClientGtk::dispatchDecidePolicyForNavigationAction):
- (WebCore::FrameLoaderClientGtk::createPlugin):
- (WebCore::FrameLoaderClientGtk::createFrame):
- (WebCore::FrameLoaderClientGtk::redirectDataToPlugin):
- (WebCore::FrameLoaderClientGtk::createJavaAppletWidget):
- (WebCore::FrameLoaderClientGtk::objectContentType):
- (WebCore::FrameLoaderClientGtk::overrideMediaType):
- (WebCore::FrameLoaderClientGtk::windowObjectCleared):
- (WebCore::FrameLoaderClientGtk::setMainFrameDocumentReady):
- (WebCore::FrameLoaderClientGtk::hasWebView):
- (WebCore::FrameLoaderClientGtk::hasFrameView):
- (WebCore::FrameLoaderClientGtk::dispatchDidFinishLoad):
- (WebCore::FrameLoaderClientGtk::frameLoadCompleted):
- (WebCore::FrameLoaderClientGtk::saveViewStateToItem):
- (WebCore::FrameLoaderClientGtk::restoreViewState):
- (WebCore::FrameLoaderClientGtk::shouldGoToHistoryItem):
- (WebCore::FrameLoaderClientGtk::privateBrowsingEnabled):
- (WebCore::FrameLoaderClientGtk::makeDocumentView):
- (WebCore::FrameLoaderClientGtk::makeRepresentation):
- (WebCore::FrameLoaderClientGtk::forceLayout):
- (WebCore::FrameLoaderClientGtk::forceLayoutForNonHTML):
- (WebCore::FrameLoaderClientGtk::setCopiesOnScroll):
- (WebCore::FrameLoaderClientGtk::detachedFromParent1):
- (WebCore::FrameLoaderClientGtk::detachedFromParent2):
- (WebCore::FrameLoaderClientGtk::detachedFromParent3):
- (WebCore::FrameLoaderClientGtk::detachedFromParent4):
- (WebCore::FrameLoaderClientGtk::loadedFromCachedPage):
- (WebCore::FrameLoaderClientGtk::dispatchDidHandleOnloadEvents):
- (WebCore::FrameLoaderClientGtk::dispatchDidReceiveServerRedirectForProvisionalLoad):
- (WebCore::FrameLoaderClientGtk::dispatchDidCancelClientRedirect):
- (WebCore::FrameLoaderClientGtk::dispatchWillPerformClientRedirect):
- (WebCore::FrameLoaderClientGtk::dispatchDidChangeLocationWithinPage):
- (WebCore::FrameLoaderClientGtk::dispatchWillClose):
- (WebCore::FrameLoaderClientGtk::dispatchDidReceiveIcon):
- (WebCore::FrameLoaderClientGtk::dispatchDidStartProvisionalLoad):
- (WebCore::FrameLoaderClientGtk::dispatchDidReceiveTitle):
- (WebCore::FrameLoaderClientGtk::dispatchDidCommitLoad):
- (WebCore::FrameLoaderClientGtk::dispatchDidFinishDocumentLoad):
- (WebCore::FrameLoaderClientGtk::dispatchDidFirstLayout):
- (WebCore::FrameLoaderClientGtk::dispatchShow):
- (WebCore::FrameLoaderClientGtk::cancelPolicyCheck):
- (WebCore::FrameLoaderClientGtk::dispatchDidLoadMainResource):
- (WebCore::FrameLoaderClientGtk::revertToProvisionalState):
- (WebCore::FrameLoaderClientGtk::clearUnarchivingState):
- (WebCore::FrameLoaderClientGtk::willChangeTitle):
- (WebCore::FrameLoaderClientGtk::didChangeTitle):
- (WebCore::FrameLoaderClientGtk::finishedLoading):
- (WebCore::FrameLoaderClientGtk::finalSetupForReplace):
- (WebCore::FrameLoaderClientGtk::setDefersLoading):
- (WebCore::FrameLoaderClientGtk::isArchiveLoadPending):
- (WebCore::FrameLoaderClientGtk::cancelPendingArchiveLoad):
- (WebCore::FrameLoaderClientGtk::clearArchivedResources):
- (WebCore::FrameLoaderClientGtk::canHandleRequest):
- (WebCore::FrameLoaderClientGtk::canShowMIMEType):
- (WebCore::FrameLoaderClientGtk::representationExistsForURLScheme):
- (WebCore::FrameLoaderClientGtk::generatedMIMETypeForURLScheme):
- (WebCore::FrameLoaderClientGtk::provisionalLoadStarted):
- (WebCore::FrameLoaderClientGtk::didFinishLoad):
- (WebCore::FrameLoaderClientGtk::prepareForDataSourceReplacement):
- (WebCore::FrameLoaderClientGtk::setTitle):
- (WebCore::FrameLoaderClientGtk::setDocumentViewFromCachedPage):
- (WebCore::FrameLoaderClientGtk::dispatchDidReceiveContentLength):
- (WebCore::FrameLoaderClientGtk::dispatchDidFinishLoading):
- (WebCore::FrameLoaderClientGtk::dispatchDidFailLoading):
- (WebCore::FrameLoaderClientGtk::dispatchDidLoadResourceFromMemoryCache):
- (WebCore::FrameLoaderClientGtk::dispatchDidFailProvisionalLoad):
- (WebCore::FrameLoaderClientGtk::dispatchDidFailLoad):
- (WebCore::FrameLoaderClientGtk::download):
- (WebCore::FrameLoaderClientGtk::cancelledError):
- (WebCore::FrameLoaderClientGtk::blockedError):
- (WebCore::FrameLoaderClientGtk::cannotShowURLError):
- (WebCore::FrameLoaderClientGtk::interruptForPolicyChangeError):
- (WebCore::FrameLoaderClientGtk::cannotShowMIMETypeError):
- (WebCore::FrameLoaderClientGtk::fileDoesNotExistError):
- (WebCore::FrameLoaderClientGtk::shouldFallBack):
- (WebCore::FrameLoaderClientGtk::willUseArchive):
- (WebCore::FrameLoaderClientGtk::saveDocumentViewToCachedPage):
- (WebCore::FrameLoaderClientGtk::canCachePage):
- (WebCore::FrameLoaderClientGtk::dispatchCreatePage):
- (WebCore::FrameLoaderClientGtk::dispatchUnableToImplementPolicy):
- * WebCoreSupport/FrameLoaderClientGtk.h: Renamed from WebCore/loader/gdk/FrameLoaderClientGdk.h.
- (WebCore::FrameLoaderClientGtk::~FrameLoaderClientGtk):
- (WebCore::FrameLoaderClientGtk::webFrame):
- * WebCoreSupport/InspectorClientGtk.cpp: Renamed from WebCore/page/gdk/InspectorClientGdk.cpp.
- (WebCore::InspectorClientGtk::inspectorDestroyed):
- (WebCore::InspectorClientGtk::createPage):
- (WebCore::InspectorClientGtk::showWindow):
- (WebCore::InspectorClientGtk::closeWindow):
- (WebCore::InspectorClientGtk::attachWindow):
- (WebCore::InspectorClientGtk::detachWindow):
- (WebCore::InspectorClientGtk::highlight):
- (WebCore::InspectorClientGtk::hideHighlight):
- (WebCore::InspectorClientGtk::inspectedURLChanged):
- * WebCoreSupport/InspectorClientGtk.h: Renamed from WebCore/page/gdk/InspectorClientGdk.h.
-
-2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Build fix.
-
- * Api/webkitgtkframe.cpp:
-
-2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- Remove the create_frame virtual method of WebKitGtkPage. This method was inspired
- by the Qt port but to be useful for reimplementations WebKitGtkFrameData would need
- to export/expose WebCore types. WebView doesn't offer such a method so I decided to
- remove it.
- Add a internal constructor to WebKitGtkFrame to be used for constructing Sub-Frames. This
- is currently used by FrameLoaderClientGdk::createFrame.
-
- * Api/webkitgtkframe.cpp:
- * Api/webkitgtkframedata.cpp: Removed.
- * Api/webkitgtkframedata.h: Removed.
- * Api/webkitgtkpage.cpp:
- * Api/webkitgtkpage.h:
- * Api/webkitgtkprivate.h:
-
-2007-08-10 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- Follow the changes of ScrollView in WebCore and call setContainingWindow, set the
- GtkAdjustment of the GtkLayout and reimplement the set_scroll_adjustments method and pass
- the GtkAdjustments to ScrollView.
- This makes having one GdkWindow for the complete FrameTree possible.
-
-
- * gtk/Api/webkitgtkframe.cpp:
- * gtk/Api/webkitgtkpage.cpp:
-
-2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Niko.
-
- We only need to set the Settings of the Page once so do it in
- WebKitGtkPage instead of WebKitGtkFrame.
-
- * gtk/Api/webkitgtkframe.cpp:
- * gtk/Api/webkitgtkpage.cpp:
-
-2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Niko.
-
- Instead of reimplementing the general event method, reimplement
- the specific mouse, expose, keyboard event methods.
-
- Call the finalize implementation of the base class from WebKitGtkPage
- and WebKitGtkFrame.
-
- * gtk/Api/webkitgtkframe.cpp:
- * gtk/Api/webkitgtkpage.cpp:
-
-2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Niko.
-
- Remove the custom painting in favor of the Widget::paint
- implementation.
-
- * gtk/Api/webkitgtkpage.cpp:
-
-2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- Moved code from class FrameGdk into WebKitGtkFrame. Update the
- webkitgrkprivate.h header file to not include FrameGdk.h.
-
- * gtk/Api/webkitgtkframe.cpp:
- * gtk/Api/webkitgtkprivate.h:
-
-2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- Change variable names to follow the Coding-Style. Replace occurences
- of a_b with aB and place the '*' correctly.
-
- * gtk/Api/webkitgtkframe.cpp:
- * gtk/Api/webkitgtkpage.cpp:
- * gtk/Api/webkitgtkprivate.h:
-
-2007-08-08 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- Reimplement GtkWidget::event and handle the keyboard and mouse
- events inside WebKitGtkPage.
-
- * gtk/Api/webkitgtkpage.cpp:
- (FrameGdkExposeData::frame_gdk_expose_child):
- (FrameGdkExposeData::webkit_gtk_page_rendering_area_handle_gdk_event):
- (FrameGdkExposeData::webkit_gtk_page_register_rendering_area_events):
- (FrameGdkExposeData::webkit_gtk_page_class_init):
-
-2007-08-07 Xan Lopez <xan@gnome.org>
-
- Reviewed by Mark Rowe.
-
- http://bugs.webkit.org/show_bug.cgi?id=14815
- [gtk] API implementation: reload
-
- * gtk/Api/webkitgtkpage.cpp: Implement the webkit_gtk_page_reload()
- function.
-
-2007-07-30 Diego Escalante Urrelo <diegoe@gnome.org>
-
- Reviewed by Adam.
-
- http://bugs.webkit.org/show_bug.cgi?id=14806
- Implement can_go_backward and can_go_forward in webkitgtkpage.cpp
-
- * gtk/Api/webkitgtkpage.cpp: Implement webkit_gtk_page_can_go_backward() and
- webkit_gtk_page_can_go_forward() functions.
-
-2007-07-30 Diego Escalante Urrelo <diegoe@gnome.org>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=14810
- Bad n_params on load_finished's g_signal_new in webkitgtkpage.cpp
-
- This is the proper fix for #14810.
-
- * gtk/Api/webkitgtkframe.cpp:
- * gtk/Api/webkitgtkpage.cpp: Fix the marshaller type of the "load_finished" signal and
- correct the class_offset parameters.
-
-2007-07-29 Diego Escalante Urrelo <diegoe@gnome.org>
-
- Reviewed by Alp Toker.
-
- http://bugs.webkit.org/show_bug.cgi?id=14810
- Bad n_params on load_finished's g_signal_new in webkitgtkpage.cpp
-
- * gtk/Api/webkitgtkpage.cpp: Use a correct n_params value and the corresponding types for
- them in the "load_finished" signal.
-
-2007-07-22 Holger Hans Peter Freyther <zecke@selfish.org>
-
- Reviewed by Adam.
-
- Add the first API and partial implementation of the WebKit/Gtk port as
- of http://bugs.webkit.org/show_bug.cgi?id=14678.
-
- The delegates of WebView will be modeled as signals. Delegates like the
- WebPolicyDelegate will be implemented as signals with default handlers.
-
- Start moving files to WebKit/gtk/WebCoreSupport.
-
- * gtk: Added.
- * gtk/Api: Added.
- * gtk/Api/headers.pri: Added.
- * gtk/Api/webkitgtk-marshal.list: Added.
- * gtk/Api/webkitgtkdefines.h: Added.
- * gtk/Api/webkitgtkframe.cpp: Added.
- * gtk/Api/webkitgtkframe.h: Added.
- * gtk/Api/webkitgtkframedata.cpp: Added.
- * gtk/Api/webkitgtkframedata.h: Added.
- * gtk/Api/webkitgtkglobal.cpp: Added.
- * gtk/Api/webkitgtkglobal.h: Added.
- * gtk/Api/webkitgtknetworkrequest.cpp: Added.
- * gtk/Api/webkitgtknetworkrequest.h: Added.
- * gtk/Api/webkitgtkpage.cpp: Added.
- * gtk/Api/webkitgtkpage.h: Added.
- * gtk/Api/webkitgtkprivate.cpp: Added.
- * gtk/Api/webkitgtkprivate.h: Added.
- * gtk/Api/webkitgtksettings.cpp: Added.
- * gtk/Api/webkitgtksettings.h: Added.
- * gtk/WebCoreSupport: Added.
- * gtk/WebCoreSupport/ChromeClientGdk.cpp: Added.
- (WebCore::ChromeClientGdk::ChromeClientGdk):
- (WebCore::ChromeClientGdk::chromeDestroyed):
- (WebCore::ChromeClientGdk::windowRect):
- (WebCore::ChromeClientGdk::setWindowRect):
- (WebCore::ChromeClientGdk::pageRect):
- (WebCore::ChromeClientGdk::scaleFactor):
- (WebCore::ChromeClientGdk::focus):
- (WebCore::ChromeClientGdk::unfocus):
- (WebCore::ChromeClientGdk::createWindow):
- (WebCore::ChromeClientGdk::createModalDialog):
- (WebCore::ChromeClientGdk::show):
- (WebCore::ChromeClientGdk::canRunModal):
- (WebCore::ChromeClientGdk::runModal):
- (WebCore::ChromeClientGdk::setToolbarsVisible):
- (WebCore::ChromeClientGdk::toolbarsVisible):
- (WebCore::ChromeClientGdk::setStatusbarVisible):
- (WebCore::ChromeClientGdk::statusbarVisible):
- (WebCore::ChromeClientGdk::setScrollbarsVisible):
- (WebCore::ChromeClientGdk::scrollbarsVisible):
- (WebCore::ChromeClientGdk::setMenubarVisible):
- (WebCore::ChromeClientGdk::menubarVisible):
- (WebCore::ChromeClientGdk::setResizable):
- (WebCore::ChromeClientGdk::closeWindowSoon):
- (WebCore::ChromeClientGdk::canTakeFocus):
- (WebCore::ChromeClientGdk::takeFocus):
- (WebCore::ChromeClientGdk::canRunBeforeUnloadConfirmPanel):
- (WebCore::ChromeClientGdk::runBeforeUnloadConfirmPanel):
- (WebCore::ChromeClientGdk::addMessageToConsole):
- (WebCore::ChromeClientGdk::runJavaScriptAlert):
- (WebCore::ChromeClientGdk::runJavaScriptConfirm):
- (WebCore::ChromeClientGdk::runJavaScriptPrompt):
- (WebCore::ChromeClientGdk::setStatusbarText):
- (WebCore::ChromeClientGdk::shouldInterruptJavaScript):
- (WebCore::ChromeClientGdk::tabsToLinks):
- (WebCore::ChromeClientGdk::windowResizerRect):
- (WebCore::ChromeClientGdk::addToDirtyRegion):
- (WebCore::ChromeClientGdk::scrollBackingStore):
- (WebCore::ChromeClientGdk::updateBackingStore):
- (WebCore::ChromeClientGdk::mouseDidMoveOverElement):
- (WebCore::ChromeClientGdk::setToolTip):
- (WebCore::ChromeClientGdk::print):
- * gtk/WebCoreSupport/ChromeClientGdk.h: Added.
-
diff --git a/Source/WebKit/gtk/GNUmakefile.am b/Source/WebKit/gtk/GNUmakefile.am
deleted file mode 100644
index 520c84cd3..000000000
--- a/Source/WebKit/gtk/GNUmakefile.am
+++ /dev/null
@@ -1,637 +0,0 @@
-if ENABLE_WEBKIT1
-lib_LTLIBRARIES += \
- libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
-endif
-
-nodist_libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \
- $(webkitgtk_built_sources)
-
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_ladir = $(libwebkitgtkincludedir)/webkit
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_HEADERS = \
- $(webkitgtk_static_h_api)
-
-nodist_libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_HEADERS = \
- $(webkitgtk_built_h_api) \
- $(GENSOURCES_WEBKIT)/webkitenumtypes.h
-
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \
- $(webkitgtk_sources)
-
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CXXFLAGS = \
- -fvisibility-inlines-hidden \
- $(global_cxxflags)
-
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CFLAGS = \
- -fvisibility=hidden \
- $(global_cflags)
-
-if ENABLE_SPELLCHECK
-webkitgtk_sources += \
- Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.h
-endif
-
-# When building WebCore/WebKit, we want WebCore/config.h and NOT JavaScriptCore/config.h,
-# hence, it's important that WebCore/ should come first before JavaScriptCore in the
-# include path.
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS = \
- -DBUILDING_WEBKIT \
- -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \
- -DDATA_DIR=\"${datadir}\" \
- -I$(WebCore)/bindings \
- -I$(WebCore)/bindings/gobject \
- -I$(WebKit) \
- -I$(WebKit)/WebCoreSupport \
- -I$(WebKit)/webkit \
- -I$(GENSOURCES_WEBKIT) \
- -I$(GENSOURCES_WEBKITDOM) \
- -ISource/WebKit/gtk/webkit \
- $(global_cppflags) \
- $(platform_cppflags) \
- $(platformgtk_cppflags) \
- $(platform_webcore_cppflags) \
- $(webcore_cppflags) \
- $(webcoregtk_cppflags) \
- $(javascriptcore_cppflags) \
- $(webkitgtk_cppflags) \
- -fno-strict-aliasing \
- $(COVERAGE_CFLAGS) \
- $(ENCHANT_CFLAGS) \
- $(FREETYPE_CFLAGS) \
- $(GAIL_CFLAGS) \
- $(GEOCLUE_CFLAGS) \
- $(GLIB_CFLAGS) \
- $(GSTREAMER_CFLAGS) \
- $(GTK_CFLAGS) \
- $(LIBSOUP_CFLAGS) \
- $(LIBXML_CFLAGS) \
- $(LIBXSLT_CFLAGS) \
- $(SQLITE3_CFLAGS) \
- $(UNICODE_CFLAGS) \
- $(XCOMPOSITE_CFLAGS) \
- $(XDAMAGE_CFLAGS) \
- $(XT_CFLAGS) \
- $(ZLIB_CFLAGS)
-
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LDFLAGS = \
- -version-info @LIBWEBKITGTK_VERSION@ \
- $(version_script) \
- $(no_undefined)
-
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD := \
- -lpthread \
- libPlatform.la \
- libPlatformGtk.la \
- libWebCore.la \
- libWebCorePlatform.la \
- libWebCoreModules.la \
- libWebCoreDOM.la \
- libWebCoreGtk.la
-
-if ENABLE_INDEXED_DATABASE
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD += \
- libLevelDB.la
-endif
-
-if USE_OPENGL
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD += \
- libANGLE.la
-endif
-
-if ENABLE_SVG
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD += \
- libWebCoreSVG.la
-endif
-
-libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD += \
- libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \
- $(CAIRO_LIBS) \
- $(COVERAGE_LDFLAGS) \
- $(ENCHANT_LIBS) \
- $(FREETYPE_LIBS) \
- $(GAIL_LIBS) \
- $(GAMEPAD_LIBS) \
- $(GEOCLUE_LIBS) \
- $(GLIB_LIBS) \
- $(GSTREAMER_LIBS) \
- $(GTK_LIBS) \
- $(JPEG_LIBS) \
- $(LIBSECRET_LIBS) \
- $(LIBSOUP_LIBS) \
- $(LIBXML_LIBS) \
- $(LIBXSLT_LIBS) \
- $(OPENGL_LIBS) \
- $(PANGO_LIBS) \
- $(PNG_LIBS) \
- $(SQLITE3_LIBS) \
- $(UNICODE_LIBS) \
- $(WEBP_LIBS) \
- $(XCOMPOSITE_LIBS) \
- $(XDAMAGE_LIBS) \
- $(XRENDER_LIBS) \
- $(XT_LIBS) \
- $(WINMM_LIBS) \
- $(SHLWAPI_LIBS) \
- $(OLE32_LIBS) \
- $(ZLIB_LIBS)
-
-webkitgtk_static_h_api += \
- $(srcdir)/Source/WebKit/gtk/webkit/webkit.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitapplicationcache.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitdefines.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitdom.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitdownload.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkiterror.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitfavicondatabase.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitfilechooserrequest.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitglobals.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkithittestresult.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkiticondatabase.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitnetworkrequest.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitnetworkresponse.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitsecurityorigin.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitsoupauthdialog.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitspellchecker.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitviewportattributes.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebbackforwardlist.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebdatabase.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebdatasource.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebframe.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebhistoryitem.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebinspector.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebnavigationaction.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebplugin.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebplugindatabase.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebpolicydecision.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebresource.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebsettings.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebwindowfeatures.h \
- $(srcdir)/Source/WebKit/gtk/webkit/webkitwebview.h
-
-webkitgtk_built_h_api += \
- Source/WebKit/gtk/webkit/webkitversion.h
-
-webkitgtk_h_api += \
- $(webkitgtk_built_h_api) \
- $(webkitgtk_static_h_api)
-
-# webkitenumtypes.{h,cpp} cannot be in webkitgtk_built_h_api, because
-# the rule that builds it depends on webkitgtk_built_h_api (circular dependency).
-webkitgtk_built_sources += \
- DerivedSources/webkit/webkitenumtypes.cpp \
- DerivedSources/webkit/webkitenumtypes.h \
- DerivedSources/webkit/webkitmarshal.cpp \
- DerivedSources/webkit/webkitmarshal.h \
- $(webkitgtk_built_h_api)
-
-BUILT_SOURCES += $(webkitgtk_built_sources)
-
-webkitgtk_sources += \
- Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContext.h \
- Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContextGL.cpp \
- Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp \
- Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.h \
- Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h \
- Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.h \
- Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.cpp \
- Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.h \
- Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h \
- Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.h \
- Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.cpp \
- Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.h \
- Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.cpp \
- Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.h \
- Source/WebKit/gtk/webkit/webkitapplicationcache.cpp \
- Source/WebKit/gtk/webkit/webkitauthenticationdialog.cpp \
- Source/WebKit/gtk/webkit/webkitauthenticationdialog.h \
- Source/WebKit/gtk/webkit/webkitdownload.cpp \
- Source/WebKit/gtk/webkit/webkitdownloadprivate.h \
- Source/WebKit/gtk/webkit/webkiterror.cpp \
- Source/WebKit/gtk/webkit/webkitfavicondatabase.cpp \
- Source/WebKit/gtk/webkit/webkitfavicondatabaseprivate.h \
- Source/WebKit/gtk/webkit/webkitfilechooserrequest.cpp \
- Source/WebKit/gtk/webkit/webkitfilechooserrequest.h \
- Source/WebKit/gtk/webkit/webkitfilechooserrequestprivate.h \
- Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp \
- Source/WebKit/gtk/webkit/webkitgeolocationpolicydecisionprivate.h \
- Source/WebKit/gtk/webkit/webkitglobals.cpp \
- Source/WebKit/gtk/webkit/webkitglobals.h \
- Source/WebKit/gtk/webkit/webkitglobalsprivate.h \
- Source/WebKit/gtk/webkit/webkithittestresult.cpp \
- Source/WebKit/gtk/webkit/webkithittestresultprivate.h \
- Source/WebKit/gtk/webkit/webkiticondatabase.cpp \
- Source/WebKit/gtk/webkit/webkitnetworkrequest.cpp \
- Source/WebKit/gtk/webkit/webkitnetworkrequestprivate.h \
- Source/WebKit/gtk/webkit/webkitnetworkresponse.cpp \
- Source/WebKit/gtk/webkit/webkitnetworkresponseprivate.h \
- Source/WebKit/gtk/webkit/webkitsecurityorigin.cpp \
- Source/WebKit/gtk/webkit/webkitsecurityoriginprivate.h \
- Source/WebKit/gtk/webkit/webkitsoupauthdialog.cpp \
- Source/WebKit/gtk/webkit/webkitspellchecker.cpp \
- Source/WebKit/gtk/webkit/webkitspellcheckerenchant.cpp \
- Source/WebKit/gtk/webkit/webkitspellcheckerenchant.h \
- Source/WebKit/gtk/webkit/webkitversion.cpp \
- Source/WebKit/gtk/webkit/webkitviewportattributes.cpp \
- Source/WebKit/gtk/webkit/webkitviewportattributesprivate.h \
- Source/WebKit/gtk/webkit/webkitwebbackforwardlist.cpp \
- Source/WebKit/gtk/webkit/webkitwebbackforwardlistprivate.h \
- Source/WebKit/gtk/webkit/webkitwebdatabase.cpp \
- Source/WebKit/gtk/webkit/webkitwebdatasource.cpp \
- Source/WebKit/gtk/webkit/webkitwebdatasourceprivate.h \
- Source/WebKit/gtk/webkit/webkitwebframe.cpp \
- Source/WebKit/gtk/webkit/webkitwebframeprivate.h \
- Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp \
- Source/WebKit/gtk/webkit/webkitwebhistoryitemprivate.h \
- Source/WebKit/gtk/webkit/webkitwebinspector.cpp \
- Source/WebKit/gtk/webkit/webkitwebinspectorprivate.h \
- Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp \
- Source/WebKit/gtk/webkit/webkitwebnavigationactionprivate.h \
- Source/WebKit/gtk/webkit/webkitwebpolicydecision.cpp \
- Source/WebKit/gtk/webkit/webkitwebpolicydecisionprivate.h \
- Source/WebKit/gtk/webkit/webkitwebresource.cpp \
- Source/WebKit/gtk/webkit/webkitwebresourceprivate.h \
- Source/WebKit/gtk/webkit/webkitwebplugin.cpp \
- Source/WebKit/gtk/webkit/webkitwebpluginprivate.h \
- Source/WebKit/gtk/webkit/webkitwebplugindatabase.cpp \
- Source/WebKit/gtk/webkit/webkitwebplugindatabaseprivate.h \
- Source/WebKit/gtk/webkit/webkitwebsettings.cpp \
- Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h \
- Source/WebKit/gtk/webkit/webkitwebview.cpp \
- Source/WebKit/gtk/webkit/webkitwebviewprivate.h \
- Source/WebKit/gtk/webkit/webkitwebwindowfeatures.cpp \
- Source/WebKit/gtk/webkit/webkitwebwindowfeaturesprivate.h
-
-if ENABLE_WEBKIT1
-pkgconfig_DATA += Source/WebKit/gtk/@WEBKITGTK_PC_NAME@-@WEBKITGTK_API_VERSION@.pc
-
-if ENABLE_INTROSPECTION
-WebKit-@WEBKITGTK_API_VERSION@.gir: $(G_IR_SCANNER) JavaScriptCore-@WEBKITGTK_API_VERSION@.gir libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la
- $(AM_V_GEN) \
- CFLAGS="$(CFLAGS) -Wno-deprecated-declarations" \
- $(G_IR_SCANNER) \
- --quiet \
- --warn-all \
- --symbol-prefix=webkit \
- --identifier-prefix=WebKit \
- --namespace=WebKit \
- --nsversion=@WEBKITGTK_API_VERSION@ \
- --include=GObject-2.0 \
- --include=Gtk-@GTK_API_VERSION@ \
- --include=JavaScriptCore-@WEBKITGTK_API_VERSION@ \
- --include=Soup-2.4 \
- --library=webkitgtk-@WEBKITGTK_API_VERSION@ \
- --library=javascriptcoregtk-@WEBKITGTK_API_VERSION@ \
- --libtool="$(LIBTOOL)" \
- --pkg=gobject-2.0 \
- --pkg=gtk+-@GTK_API_VERSION@ \
- --pkg=libsoup-2.4 \
- --pkg-export=webkitgtk-@WEBKITGTK_API_VERSION@ \
- --output=$@ \
- --add-include-path=$(WebKit) \
- --add-include-path=$(top_builddir) \
- --c-include="webkit/webkit.h" \
- -DBUILDING_WEBKIT \
- -I$(srcdir)/Source \
- -I$(WebKit) \
- -I$(GENSOURCES) \
- -I$(GENSOURCES_WEBKITDOM) \
- -I$(GENSOURCES_WEBKIT) \
- -I$(top_builddir)/Source/WebKit/gtk \
- -I$(top_srcdir)/Source/JavaScriptCore/ForwardingHeaders \
- -I$(top_srcdir) \
- $(GENSOURCES_WEBKIT)/webkitenumtypes.h \
- $(webkitgtk_h_api) \
- $(webkitgtk_gdom_built_h_api) \
- $(WebKit)/webkit/*.cpp
-
-WebKit-@WEBKITGTK_API_VERSION@.typelib: WebKit-@WEBKITGTK_API_VERSION@.gir $(G_IR_COMPILER)
- $(AM_V_GEN)$(G_IR_COMPILER) --includedir $(WebKit) --includedir $(top_builddir) $< -o $@
-
-gir_DATA += WebKit-@WEBKITGTK_API_VERSION@.gir
-typelibs_DATA += WebKit-@WEBKITGTK_API_VERSION@.typelib
-CLEANFILES += WebKit-@WEBKITGTK_API_VERSION@.gir WebKit-@WEBKITGTK_API_VERSION@.typelib
-endif
-endif
-
-WEBKIT_MARSHAL_LIST = $(WebKit)/webkitmarshal.list
-$(GENSOURCES_WEBKIT)/webkitmarshal.cpp: stamp-webkitmarshal.cpp
- @true
-$(GENSOURCES_WEBKIT)/webkitmarshal.h: stamp-webkitmarshal.h
- @true
-
-stamp-webkitmarshal.cpp: $(WEBKIT_MARSHAL_LIST)
- $(AM_V_GEN) echo "extern \"C\" {" > $(GENSOURCES_WEBKIT)/webkitmarshal.cpp && \
- $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --body >> $(GENSOURCES_WEBKIT)/webkitmarshal.cpp && \
- echo '}' >> $(GENSOURCES_WEBKIT)/webkitmarshal.cpp && \
- echo timestamp > $(@F)
-
-stamp-webkitmarshal.h: $(WEBKIT_MARSHAL_LIST)
- $(AM_V_GEN)$(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --header > $(GENSOURCES_WEBKIT)/webkitmarshal.h && \
- echo timestamp > $(@F)
-
-$(GENSOURCES_WEBKIT)/webkitenumtypes.h: stamp-webkitenumtypes.h
- @true
-stamp-webkitenumtypes.h: $(webkitgtk_h_api) $(WebKit)/GNUmakefile.am
- $(AM_V_GEN)glib-mkenums \
- --fhead "#ifndef WEBKIT_ENUM_TYPES_H\n" \
- --fhead "#define WEBKIT_ENUM_TYPES_H\n\n" \
- --fhead "#include <glib-object.h>\n\n" \
- --fhead "#include <webkit/webkitdefines.h>\n\n" \
- --fhead "G_BEGIN_DECLS\n\n" \
- --ftail "G_END_DECLS\n\n" \
- --ftail "#endif\n" \
- --fprod "#include <webkit/@basename@>\n\n" \
- --eprod "#define WEBKIT_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n\n" \
- --eprod "WEBKIT_API GType\n@enum_name@_get_type(void);\n\n" \
- $(webkitgtk_h_api) | \
- sed 's,web_kit,webkit,' | \
- sed 's,WEBKIT_TYPE_KIT,WEBKIT_TYPE,' \
- > xgen-gth \
- && (cmp -s xgen-gth $(GENSOURCES_WEBKIT)/webkitenumtypes.h || cp xgen-gth $(GENSOURCES_WEBKIT)/webkitenumtypes.h) \
- && rm -f xgen-gth \
- && echo timestamp > $(@F)
-
-$(GENSOURCES_WEBKIT)/webkitenumtypes.cpp: $(webkitgtk_h_api) $(WebKit)/GNUmakefile.am
- $(AM_V_GEN)glib-mkenums \
- --fhead "#include <config.h>\n" \
- --fhead "#include <glib-object.h>\n" \
- --fhead "#include \"$(GENSOURCES_WEBKIT)/webkitenumtypes.h\"\n\n" \
- --fhead "extern \"C\" {\n\n" \
- --fprod "\n/* enumerations from \"@filename@\" */" \
- --vhead "static const G@Type@Value _@enum_name@_values[] = {" \
- --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
- --vtail " { 0, NULL, NULL }\n};\n\n" \
- --vtail "GType @enum_name@_get_type(void)\n{\n" \
- --vtail " static GType type = 0;\n\n" \
- --vtail " if (!type)\n" \
- --vtail " type = g_@type@_register_static(\"@EnumName@\", _@enum_name@_values);\n\n" \
- --vtail " return type;\n}\n\n" \
- --ftail "}\n" \
- $(webkitgtk_h_api) | \
- sed 's,web_kit,webkit,' \
- > xgen-gtc \
- && cp xgen-gtc $@ \
- && rm -f xgen-gtc
-
-EXTRA_DIST += \
- $(WebKit)/ChangeLog \
- $(WebKit)/NEWS \
- $(WebKit)/docs/webkitgtk-docs.sgml \
- $(WebKit)/docs/webkitgtk-sections.txt \
- $(WebKit)/docs/webkitgtk.types \
- $(WebKit)/docs/webkitenvironment.xml \
- $(WebKit)/docs/webkitgtk-overrides.txt \
- $(WebKit)/webkitmarshal.list \
- $(WebKit)/resources/* \
- $(WebKit)/tests/resources/* \
- $(WebKit)/tests/test_utils.h
-
-# extra resource files
-resourcesdir = ${datadir}/webkitgtk-@WEBKITGTK_API_VERSION@/resources
-dist_resources_DATA = \
- $(shell ls $(srcdir)/Source/WebKit/gtk/resources/*.html)
-
-# Build unit tests
-webkit_tests_cflags = \
- -fno-strict-aliasing \
- -I$(srcdir)/Source/JavaScriptCore/ForwardingHeaders \
- -I$(WebKit) \
- -I$(GENSOURCES) \
- -I$(top_builddir)/Source/WebKit/gtk \
- -I$(top_srcdir)/Source/WebCore/bindings \
- -I$(top_srcdir)/Source/WebCore/bindings/gobject \
- $(global_cppflags) \
- $(global_cflags) \
- $(javascriptcore_cppflags) \
- $(FREETYPE_CFLAGS) \
- $(GLIB_CFLAGS) \
- $(GTK_CFLAGS) \
- $(LIBSOUP_CFLAGS) \
- $(XRENDER_CFLAGS) \
- $(XT_CFLAGS)
-
-webkit_tests_ldadd = \
- libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \
- libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \
- $(FREETYPE_LIBS) \
- $(GTK_LIBS) \
- $(GLIB_LIBS) \
- $(LIBSOUP_LIBS) \
- $(XRENDER_LIBS)
-
-webkit_tests_ldflags = \
- -no-install \
- -no-fast-install
-
-if ENABLE_WEBKIT1
-noinst_PROGRAMS += \
- Programs/unittests/testapplicationcache \
- Programs/unittests/testcontextmenu \
- Programs/unittests/testdomdocument \
- Programs/unittests/testdomdomwindow \
- Programs/unittests/testdomnode \
- Programs/unittests/testhttpbackend \
- Programs/unittests/testfavicondatabase \
- Programs/unittests/testloading \
- Programs/unittests/testglobals \
- Programs/unittests/testmimehandling \
- Programs/unittests/testnetworkrequest \
- Programs/unittests/testnetworkresponse \
- Programs/unittests/testwebframe \
- Programs/unittests/testwebbackforwardlist \
- Programs/unittests/testwebhistoryitem \
- Programs/unittests/testwindow \
- Programs/unittests/testdownload \
- Programs/unittests/testatk \
- Programs/unittests/testatkroles \
- Programs/unittests/testhittestresult \
- Programs/unittests/testwebinspector \
- Programs/unittests/testwebsettings \
- Programs/unittests/testwebresource \
- Programs/unittests/testwebdatasource \
- Programs/unittests/testwebplugindatabase \
- Programs/unittests/testwebview \
- Programs/unittests/testkeyevents \
- Programs/unittests/testcopyandpaste
-endif
-
-# Add additional tests here
-Programs_unittests_testapplicationcache_SOURCES = Source/WebKit/gtk/tests/testapplicationcache.c
-Programs_unittests_testapplicationcache_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testapplicationcache_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testapplicationcache_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testcontextmenu_SOURCES = Source/WebKit/gtk/tests/testcontextmenu.c
-Programs_unittests_testcontextmenu_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testcontextmenu_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testcontextmenu_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testdomdocument_SOURCES = Source/WebKit/gtk/tests/testdomdocument.c
-Programs_unittests_testdomdocument_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testdomdocument_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testdomdocument_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testdomdomwindow_SOURCES = Source/WebKit/gtk/tests/testdomdomwindow.c
-Programs_unittests_testdomdomwindow_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testdomdomwindow_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testdomdomwindow_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testdomnode_SOURCES = Source/WebKit/gtk/tests/testdomnode.c
-Programs_unittests_testdomnode_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testdomnode_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testdomnode_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testhttpbackend_SOURCES = Source/WebKit/gtk/tests/testhttpbackend.c
-Programs_unittests_testhttpbackend_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testhttpbackend_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testhttpbackend_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testfavicondatabase_SOURCES = Source/WebKit/gtk/tests/testfavicondatabase.c Source/WebKit/gtk/tests/test_utils.c
-Programs_unittests_testfavicondatabase_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testfavicondatabase_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testfavicondatabase_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testglobals_SOURCES = Source/WebKit/gtk/tests/testglobals.c
-Programs_unittests_testglobals_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testglobals_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testglobals_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testloading_SOURCES = Source/WebKit/gtk/tests/testloading.c
-Programs_unittests_testloading_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testloading_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testloading_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testmimehandling_SOURCES = Source/WebKit/gtk/tests/testmimehandling.c Source/WebKit/gtk/tests/test_utils.c
-Programs_unittests_testmimehandling_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testmimehandling_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testmimehandling_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testnetworkrequest_SOURCES = Source/WebKit/gtk/tests/testnetworkrequest.c
-Programs_unittests_testnetworkrequest_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testnetworkrequest_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testnetworkrequest_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testnetworkresponse_SOURCES = Source/WebKit/gtk/tests/testnetworkresponse.c
-Programs_unittests_testnetworkresponse_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testnetworkresponse_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testnetworkresponse_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testwebframe_SOURCES = Source/WebKit/gtk/tests/testwebframe.c
-Programs_unittests_testwebframe_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testwebframe_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testwebframe_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testwebplugindatabase_SOURCES = Source/WebKit/gtk/tests/testwebplugindatabase.c
-Programs_unittests_testwebplugindatabase_CFLAGS = -DTEST_PLUGIN_DIR=\"${shell pwd}/${top_builddir}/TestNetscapePlugin/.libs\" $(webkit_tests_cflags)
-Programs_unittests_testwebplugindatabase_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testwebplugindatabase_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testwebbackforwardlist_SOURCES = Source/WebKit/gtk/tests/testwebbackforwardlist.c
-Programs_unittests_testwebbackforwardlist_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testwebbackforwardlist_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testwebbackforwardlist_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testwebhistoryitem_SOURCES = Source/WebKit/gtk/tests/testwebhistoryitem.c
-Programs_unittests_testwebhistoryitem_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testwebhistoryitem_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testwebhistoryitem_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testwindow_SOURCES = Source/WebKit/gtk/tests/testwindow.c
-Programs_unittests_testwindow_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testwindow_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testwindow_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testdownload_SOURCES = Source/WebKit/gtk/tests/testdownload.c
-Programs_unittests_testdownload_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testdownload_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testdownload_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testatk_SOURCES = Source/WebKit/gtk/tests/testatk.c
-Programs_unittests_testatk_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testatk_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testatk_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testatkroles_SOURCES = Source/WebKit/gtk/tests/testatkroles.c
-Programs_unittests_testatkroles_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testatkroles_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testatkroles_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testwebinspector_SOURCES = Source/WebKit/gtk/tests/testwebinspector.c Source/WebKit/gtk/tests/test_utils.c
-Programs_unittests_testwebinspector_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testwebinspector_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testwebinspector_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testwebsettings_SOURCES = Source/WebKit/gtk/tests/testwebsettings.c
-Programs_unittests_testwebsettings_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testwebsettings_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testwebsettings_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testwebresource_SOURCES = Source/WebKit/gtk/tests/testwebresource.c
-Programs_unittests_testwebresource_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testwebresource_LDADD = $(webkit_tests_ldadd)
-
-Programs_unittests_testwebdatasource_SOURCES = Source/WebKit/gtk/tests/testwebdatasource.c
-Programs_unittests_testwebdatasource_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testwebdatasource_LDADD = $(webkit_tests_ldadd)
-
-Programs_unittests_testwebview_SOURCES = Source/WebKit/gtk/tests/testwebview.c Source/WebKit/gtk/tests/test_utils.c
-Programs_unittests_testwebview_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testwebview_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testwebview_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testhittestresult_SOURCES = Source/WebKit/gtk/tests/testhittestresult.c
-Programs_unittests_testhittestresult_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testhittestresult_LDADD = $(webkit_tests_ldadd)
-
-Programs_unittests_testkeyevents_SOURCES = Source/WebKit/gtk/tests/testkeyevents.c
-Programs_unittests_testkeyevents_CFLAGS = $(webkit_tests_cflags)
-Programs_unittests_testkeyevents_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testkeyevents_LDFLAGS = $(webkit_tests_ldflags)
-
-Programs_unittests_testcopyandpaste_SOURCES = Source/WebKit/gtk/tests/testcopyandpaste.c \
- Source/WebCore/platform/gtk/GtkVersioning.c
-Programs_unittests_testcopyandpaste_CFLAGS = $(webkit_tests_cflags) \
- -I$(srcdir)/Source/WebCore/platform/gtk \
- -I$(srcdir)/Source/WebCore
-Programs_unittests_testcopyandpaste_LDADD = $(webkit_tests_ldadd)
-Programs_unittests_testcopyandpaste_LDFLAGS = $(webkit_tests_ldflags)
-
-# Project-wide clean rules
-# Files that will be cleaned
-CLEANFILES += \
- $(BUILT_SOURCES) \
- $(top_builddir)/stamp-webkitmarshal.cpp \
- $(top_builddir)/stamp-webkitmarshal.h \
- $(top_builddir)/stamp-webkitenumtypes.cpp \
- $(top_builddir)/stamp-webkitenumtypes.h \
- $(top_builddir)/Programs/GtkLauncher
-
-DISTCLEANFILES += \
- $(top_builddir)/Source/WebKit/gtk/@WEBKITGTK_PC_NAME@-@WEBKITGTK_API_VERSION@.pc \
- $(top_builddir)/Source/WebKit/gtk/org.webkitgtk-@WEBKITGTK_API_VERSION@.gschema.xml \
- $(top_builddir)/Source/WebKit/gtk/webkit/webkitversion.h
diff --git a/Source/WebKit/gtk/NEWS b/Source/WebKit/gtk/NEWS
deleted file mode 100644
index bc2ea8b64..000000000
--- a/Source/WebKit/gtk/NEWS
+++ /dev/null
@@ -1,1435 +0,0 @@
-=================
-WebKitGTK+ 2.1.3
-=================
-
-What's new in WebKitGTK+ 2.1.3?
-
- - Add support for preload="metadata" to GStreamer media backend.
- - Do not expose '\n' for wrapped lines with ATK_TEXT_BOUNDARY_CHAR.
- - Fix potential race condition in GStreamer media backend when
- getting the video sink caps.
- - Fix performance issues rendering a page with animations.
- - Several fixes and improvements in GStreamer video accelerated
- compositing support.
- - Adjust internal size on GStreamer HTTP source element when
- receiving data if necessary.
- - Actually disable the memory cache when DOCUMENT_VIEWER cache model
- is used in WebKit1.
- - Fix runtime critical warning in WebKit2 when unloading a module
- that failed to load.
- - Fix several memory leaks.
-
-=================
-WebKitGTK+ 2.1.2
-=================
-
-What's new in WebKitGTK+ 2.1.2?
-
- - Set the subresources load priority using new libsoup API available
- in 2.43.
- - Do not use X11 WidgetBackingStore implementation in Wayland.
- - Support using GLContext from multiple threads.
- - Make sure gstreamer source element is thread-safe.
- - Prevent race condition when pad caps is set on gstreamer player.
- - Invalidate the ProcessLauncher when the process is terminated
- before it has finished launching
- - Use custom cairo code instead of Pango API for highlighting
- misspelled words.
- - Respect PKG_CONFIG env variable when generating gtk-doc.
- - Fix a crash due to an assert in gstreamer backend when seeking.
- - Fix memory leak when web process is terminated.
- - Translation updates: Telugu, Hindi, Kannada, Odia.
-
-=================
-WebKitGTK+ 2.1.1
-=================
-
-What's new in WebKitGTK+ 2.1.1?
-
- - Add webkit_uri_scheme_request_finish_error to WebKit2 GTK+ API.
- - Add a setting to control whether or not accelerated 2D canvas is
- enabled in WebKit2.
- - Add a setting to WebKit2 to allow sending console log messages to
- stdout.
- - Always use EGL to create the GL context when running on Wayland.
- - Fix rendering of WebKitWebView child widgets with recent GTK+.
- - Notify the web process in WebKitURISchemeRequest when we fail to read
- from the user InputStream.
- - Fixed race conditions closing the socket descriptor when the web
- process crashes.
- - Add video accelerated compositing support to the GStreamer backend.
- - Add support for audio/speex MIME type to the GStreamer backend.
- - Fix seek after video finished in GStreamer backend.
- - Initialize WebKitWebPlugin path to prevent double-free in WebKit1.
- - Fix several GObject instrospection warnings.
- - Fixed several memory leaks.
-
-=================
-WebKitGTK+ 1.11.5
-=================
-
-What's new in WebKitGTK+ 1.11.5?
-
- - Fix crashes related to libsoup, gstreamer, and accessibility.
- - Implement the WebKit2 resources API using the injected bundle.
- - Add API to prefetch DNS of a given hostname to the WebKit2 API.
- - Move Authentication and Downloads from WebProcess to Shared in
- WebKit2.
- - Many improvements to the GStreamer backend including the resurrection of
- the native fullscreen mode for increased performance, support for
- setPreservesPitch, bug fixes, support for Opus files, and
- some other performance improvements.
- - New features enabled: CSS Image Resolution, CSS Image Orientation,
- and the performance timeline in the Web Inspector via resource timing
- and navigation timing.
- - Add support for blend modes to the Cairo backend.
- - Fix for checkSpellingOfString erroneously treating multiple words
- as spelled correctly.
- - Characters outside the BMP are now properly rendered.
- - Synthetic bold is now applied to fallback fonts properly.
- - Better drag and drop icons during drags on non-composited desktops.
- - The page title is now preserved in WebKit when disappearing when clicking on
- an anchor link.
- - The web database path setting in WebKit1 now also controls where IndexedDB
- databases are stored.
- - Fix various issues in the build tools, testing tools, Web Inspector, and
- MiniBrowser.
-
-
-=================
-WebKitGTK+ 1.11.4
-=================
-
-What's new in WebKitGTK+ 1.11.4?
-
- - Add support for loading web process extensions to WebKit2 GTK+.
- - Embed the HTTP authentication dialog into the WebView in WebKit2.
- - Add support for IME Composition to WebKit2.
- - Add API to notify about display/execution of insecure content to
- WebKit2 GTK+ API.
- - Add GTK+ API to set a WebKitWebView in view source mode to WebKit2.
- - Add API to set a TLS errors policy to WebKit2 GTK+ API.
- - Add WEBKIT_HIT_TEST_RESULT_CONTEXT_SCROLLBAR to WebKit2 GTK+ API.
- - Add support for remote Web Inspector to WebKit2.
- - Complete the documentation od sections in WebKit2 GTK+ API.
- - Fix cookies and custom URI requests when the web process is
- re-launched after a crash.
- - Fix a crash in WebKit2 when running inside Xvfb.
- - Fix a crash in WebKit2 when the WebView is resized with the
- inspector attached.
- - Use Harfbuzz instead of Pango in GTK+ port.
- - Add support for WebP image.
- - Port WebAudio backend to GStreamer 1.0 API.
- - Fix the buffering ranges reported with GStreamer 1.0.
- - Implement multipart/x-mixed-replace in the soup network backend.
- - Fix invalid entries for plugins in navigator.plugins.
- - Add implementation for AccessibilityUIElementGtk::isSelectable()
- and AccessibilityUIElementGtk::isMultiSelectable().
- - Expose ARIA roles for tab, tabpanel and tablist.
- - Fixed several memory leaks.
-
-=================
-WebKitGTK+ 1.11.2
-=================
-
-What's new in WebKitGTK+ 1.11.2?
-
- - Implement inspector server on Linux for remote debugging.
- - Add support for password remembering to HTTP authentication
- dialog in WebKit2 using libsecret.
- - Add API to get favicons to WebKit2 GTK+ API.
- - Add API to get the WebKitWebView associated to a WebKitDownload to
- WebKit2 GTK+.
- - Add GObject introspection support to WebKit2 GTK+ API.
-
-=================
-WebKitGTK+ 1.11.1
-=================
-
-What's new in WebKitGTK+ 1.11.1?
-
- - Make WebKitWebView work again inside a GtkOverlay by not using a
- native window for Accelerated Compositing implementation.
- - Use XDamage to improve accelerated compositing performance.
- - Enable the edge distance anti-aliasing for accelerated compositing
- layers.
- - Add support to build with EGL OpenGL backend.
- - Add support for WebAudio.
- - Fix several API breaks in DOM bindings introduced in 1.9.6.
- - Save the original URI for downloaded files as GIO metadata of the
- destination file.
- - Add API for controlling the user agent to WebKit2.
- - Add API to WebKit2 to allow running JavaScripts from a
- WebKitWebView using a GResource containing the script.
- - Add Undo/Redo and SelectAll predefined editing commands to WebKit2
- GTK+ API.
- - Add a setting to enable/disable smooth scrolling to WebKit2 GTK+
- API.
- - Add API to get the web view that initiated a custom URI request to
- WebKit2 GTK+.
- - Implement ViewState methods of WebKitWebView in WebKit2.
- - Add API to get/set the security policy of a given URI scheme to
- WebKit2 GTK+.
- - Add WebKitWebView:is-loading property to WebKit2 GTK+ API.
- - Change spellchecker languages API in WebKit2 to use a GStrv for
- the list of languages to make the API more consistent and
- convenient to use.
- - Add destroy notify parameter to
- webkit_web_context_register_uri_scheme in WebKit2 GTK+ API.
- - Replace webkit_web_view_replace_content with
- webkit_web_view_load_alternate_html in WebKit2 GTK+ API.
- - Rename WebKitWebView "print-requested" signal to "print" in
- WebKit2 GTK+ API for consistenty.
- - Add API to set preferred languages to WebKit2 GTK+.
- - Add webkit_uri_response_get_suggested_filename to WebKit2 GTK+
- API.
- - Add API to save a web page in MHTML format to WebKit2 GTK+.
- - Implement smart separators for context menu in WebKit2 GTK+.
- - Sanitize the suggested filename when building the download
- destination URI in WebKit2.
- - Fix disk cache in WebKit2 to actually dump the contents to disk.
- - Fix a crash in WebKit2 when navigating between pages in the
- history cache.
- - Fix a crash in WebKit2 when a download initiated by the policy
- checker fails.
- - Fix a crash in network backend with non-UTF8 HTTP header names.
- - Properly close audio device after playing sound.
- - Purge unused favicons from IconDatabase after 30 days.
- - Properly expose <legend> elements to ATs.
- - The new accessibility CanvasRole is now mapped to ATK_ROLE_CANVAS.
- - Fix an infinite loop in accessibility code.
- - Fix a crash in
- AccessibilityObject::accessibilityPlatformIncludesObject().
- - Fix a crash in WebCore::HTMLSelectElement::selectedIndex().
- - Fix caret-moved events not emitted for certain content.
- - Fix incorrect/unexpected characters in the text of certain
- accessibles.
- - Implement AccessibilityUIElement::titleUIElement() and
- AccessibilityUIElement::stringValue().
- - Expose ROLE_TOGGLE_BUTTON instead of ROLE_PUSH_BUTTON when
- aria-pressed is present.
- - Fix LLint build with -g -02.
- - Properly process GDK_SMOOTH_SCROLL events.
- - Fix several memory leaks.
-
-=================
-WebKitGTK+ 1.9.6
-=================
-
-What's new in WebKitGTK+ 1.9.6?
-
- - Add spell checker API to WebKit2 GTK+ API.
- - Add WebKitWebView::submit-form signal to WebKit2 GTK+ API.
- - Add API to get the suggested filename from a
- WebKitNetworkResponse.
- - Add webkit_web_view_get_snapshot() to WebKit1 API.
- - Paste primary selection when middle clicking in X11 WebKit2.
- - Make sure WebKitWebView always has a main resource and it has
- already been set when the load has been committed, even for pages
- loaded from the history cache in WebKit2.
- - Fix a run time critical warning when gdk_window_get_cursor() is
- called before WebKitWebView has been realized in WebKit2.
- - Fix continuous insertion of newlines in Etherpad.
- - Fix several memory leaks.
-
-=================
-WebKitGTK+ 1.9.5
-=================
-
-What's new in WebKitGTK+ 1.9.5?
-
- - Add API to get HTTPS status to WebKit2 GTK+.
- - Add API to clear the cache to WebKit2 GTK+.
- - Add webkit_cookie_manager_set_persistent_storage() to WebKit2 GTK+
- API.
- - Improve performance of searching in WebKit2.
- - Implement disk cache in WebKit2.
- - Add site specific quirks setting to WebKit2 GTK+ API.
- - Add a setting to enable/disable page cache to WebKit2 GTK+ API.
- - Add WebKitWebView::context-menu-dismissed signal to WebKit2 GTK+
- API.
- - Add webkit_web_frame_get_dom_document() to WebKit GTK+ API.
- - Use soup_cookie_jar_is_persistent() to set whether cookie is a
- session one or not.
- - Fix recognition of contractions (apostrophes) in spell checker.
- - Fix a crash when showing the context menu in the Web Inspector.
- - WebKitWebView::mouse-target-changed is not emitted when moved
- to/from editable content.
- - Fix inspector detach when inspector was attached by the client in
- WebKit2.
- - Don't show accel labels in WebKit2 context menu items.
- - Cache the video dimensions to not query the video-sink sink-pad
- caps every time.
- - Fix several memory leaks.
-
-=================
-WebKitGTK+ 1.9.4
-=================
-
-What's new in WebKitGTK+ 1.9.4?
-
- - Add an accelerated compositing implementation for WebKit2.
- - Add API to register custom URI schemes to WebKit2 GTK+ API.
- - Add support for window.showModalDialog in WebKit2 GTK+ API.
- - Add webkit_download_get_received_data_length to WebKit2 GTK+ API.
- - Add ContextMenu API to WebKit2 GTK+.
- - Add Geolocation permission requests API to WebKit2 GTK.
- - Add API to get the library version to WebKit2 GTK+.
- - Add WebKitWebView::run-file-chooser signal to WebKit1 API.
- - Port the video sink to GStreamer 0.11 API.
- - Add TextureMapper ImageBuffer support as a fallback from the
- hardware accelerated path
- - Add input methods submenu item to the default context menu for
- editable content.
- - Unmark highlighted text matches when find operation finishes.
- - Honor the device scale factor property when drawing.
- - Prevent setting or editing httpOnly cookies from JavaScript.
- - Fix several memory leaks.
-
-=================
-WebKitGTK+ 1.9.3
-=================
-
-What's new in WebKitGTK+ 1.9.3?
-
- - Add webkit_download_get_request to WebKit2 GTK+ API.
- - Add API to get the list of plugins to WebKit2 GTK+.
- - Add webkit_web_view_can_show_mime_type() to WebKit2 GTK+ API.
- - Add GCancellable parameter to all methods using gio async pattern
- in WebKit2 GTK+ API.
- - Add settings to enable and disable composited layer indicators to
- WebKit2 GTK+ API.
- - Add generic permission requests API to WebKit2 GTK+ API.
- - Add initial inspector API to WebKit2 GTK+.
- - Allow to attach/detach the inspector in WebKit2.
- - Add media-playback-requires-user-gesture and
- media-playback-allows-inline settings to WebKit1 and WebKit2 GTK+.
- - Use defers loading instead of pausing the soup message in
- WebKitDownload.
- - Properly set the input method context window location.
- - Fix a crash in the WebProcess when a download is started from
- an existing ResourceHandle.
- - Fix cursor used for ne-resize.
- - Fix contractions recognition by the spell checker.
- - Fix a crash rendering scrollbars on GTK wxWebkit.
- - Fix KURL::fileSystemPath() implementation to strip the query part
- of the uri.
- - Check for GTK2/GTK3 symbol mismatch earlier to fix plugins run
- with nspluginwrapper.
- - Fix thin archives support while building GTK+ port.
- - Fix several memory leaks.
- - Fix several compilation warnings.
-
-=================
-WebKitGTK+ 1.9.2
-=================
-
-What's new in WebKitGTK+ 1.9.2?
-
- - Fix exceeding arguments list build problem, by splitting more
- files off libWebCore into the new libWebCoreModules convenience
- library.
- - Remove left over soup_session_pause_message() and properly handle
- that case for defersLoading.
- - Fix response being the new one instead of the one that caused the
- redirect when emitting WebKitWebView::resource-request-starting.
- - Refactor of IME handling to fix bugs and prepare for sharing with
- WebKit2.
- - Add file chooser API to WebKit2.
-
-=================
-WebKitGTK+ 1.9.1
-=================
-
-What's new in WebKitGTK+ 1.9.1?
-
- - Geolocation support is built by default now. Use
- --disable-geolocation during build to disable it.
- - LINGUAS environment variable is honored now.
- - Throttle DNS prefetching to avoid overloading the resolver.
- - Remove defunct WebInspector GSettings mapping.
- - Fix a crash when emitting signals with a GError parameter when
- using GObject Introspection.
- - Fix flickering during scrolling and resizing in newer versions of
- GTK+.
- - Fix a bug where the Content-Length header was not sent for certain
- XMLHttpRequests.
- - Fix a WebProcess segmentation fault related to clipboard handling.
- - Fix a repainting error that occurred during interior frame
- scrolling.
- - Fix a crash when WebKitWebView is created without a WebContext.
- - Fix a crash that could occur during synchronous XMLHttpRequests.
- - Fix rendering of combobox / menulist buttons that do not have
- separators.
- - Fix the rendering of toggle buttons with larger-than-default
- widths and heights with the Adwaita theme.
- - Fix misrendering of text shadow extents in some situations.
- - Fix a crash when closing browser with inspector window opened.
- - Now interpret plugin metadata as UTF-8.
- - Fix rendering of GtkWidgets embedded on WebKitWebView.
- - Web content (except plugins) should no longer steal focus from
- other GTK+ widgets.
- - WebKit will try to use the default libsoup proxy resolver
- automatically.
- - Performance improvements in WebKitWebView by avoiding doing a lot
- of work in size_allocate when the view is not mapped.
- - Web Timing is now enabled.
- - Add support for smooth scrolling.
- - Implement unicode submenu items.
- - FFTFrame implementation in GStreamer backend.
- - More work on GStreamer 0.11 support.
- - Add support for windowed plugins in WebKit2.
- - Add full printing support to WebKit2.
- - Add a new favicon database API that corrects the problems of the
- old one.
- - Add WebKitWebView::context-menu signal to allow applications to
- handle its own context menu. WebKitWebView::populate-popup signal
- and default-context setting are now deprecated.
- - Well known names for menu items in the default context menu are
- now exposed in an enumeration.
- - Add entering/leaving fullscreen signals to WebKit API.
- - Add enable-webaudio setting to WebKit2 GTK+ API.
- - Add support for registering custom uri schemes in WebKit2.
- - Add WebKitWebView::mouse-target-changed signal to WebKit2 GTK+
- API.
- - Add enter/leave fullscreen signals to WebKit2 GTK+ API.
- - Add find API to WebKit2 GTK+ API.
- - Use a single signal for script dialogs in WebKit2 GTK+ API.
- - Add cookies API to WebKit2 GTK+ API.
- - Add webkit_print_operation_print() to WebKit2 GTK+ API.
- - Add resources API to WebKit2 GTK+ API.
- - Add support for Response policy decisions to WebKit2 GTK+ API.
- - Add javascript clipboard functionality settings to WebKit2 GTK+
- API.
- - Add cut, copy and paste methods to WebKit2 GTK+ API.
- - Add zoom-text-only setting to WebKit2 GTK+ API.
- - Add webkit_web_view_run_javascript() to WebKit2 GTK+ API.
-
-=================
-WebKitGTK+ 1.7.5
-=================
-
-What's new in WebKitGTK+ 1.7.5?
-
- - Add new signals to track resources loading.
- - Add --no-timeout command line option to DumpRenderTree.
- - Expose accessibility hierarchy in WebKit2 to ATK/AT-SPI based ATs.
- - Allow to build using extra jhbuild modulesets.
- - Fix emission of ATK text-caret-moved and text-selection-changed
- events.
- - Update primary clipboard with the current selection in X11
- platforms in WebKit2.
- - Implement the policy client in WebKit2 GTK+ API.
- - Add basic printing support to WebKit2.
- - Do not add unnecessary blanks at the end of a line of text to fix.
- the line returned by atk_text_get_text_at_offset().
- - Make sure input text field is repainted when value is changed.
- - Add print-backgrounds setting to WebKit2 GTK+ API.
- - Respect the has-backward-stepper and has-forward-stepper
- properties when drawing scrollbars.
- - WebKit-3.0.gir now includes information about C includes or
- exported packages.
- - WebKit1 API documentation was not generated when building with
- gtk-2.0.
- - Make WebKitWebView work inside a GtkOffscreenWindow.
- - Implement DownloadClient and add downloads API to WebKit2 GTK+
- API.
-
-=================
-WebKitGTK+ 1.7.4
-=================
-
-What's new in WebKitGTK+ 1.7.4?
-
- - Fix a11y regression: text-inserted events lack text inserted and
- current line.
- - Fix scrollbars in WebKit2 that were drawn behind the window resize
- grip.
- - Fix a memory leak in WebKitWebSourceGStreamer.
- - Slider thumb is not centered on the track with the unico theme.
- - Fix context menu in WebKit2 to not dissapear right after it's shown.
- - Use GtkOrientable style class in GTK+ 3 theming code.
- - Change default WebSocket protocol to the latest one (hybi-17).
- - Fix scrollbars size with GTK+ 3.x to follow the current theme.
- - Use gdk_screen_get_monitor_workarea() when available for
- screenAvailableRect().
- - Rename webkit_web_view_load_alternate_html as
- webkit_web_view_replace_content in WebKit2 GTK+.
- - Fix emission of ATK text-caret-moved and text-selection-changed events.
- - Add methods to get/set the WebView zoom level to WebKit2 GTK+ API.
- - Make WebProcess and PluginProcess use the same locale as the UI process.
- - Simplify WebKit2 loader client API.
-
-=================
-WebKitGTK+ 1.7.3
-=================
-
-What's new in WebKitGTK+ 1.7.3?
-
- - WebGL is now enabled by default.
- - Initial support for accelerated compositing has been added.
- - Add fullscreen setting to WebKit2 GTK+ API.
- - Fix regression of Push buttons that didn't expose their displayed
- text/name to accessibility toolkit.
- - Initial UI client implementation for WebKit2 GTK+ API.
- - Implement HTML5 History APIs.
- - Implement cookies management in WebKit2.
- - Fix a crash when a download fails.
- - Add support for javascript dialogs in WebKit2 GTK+ API.
- - Add 'enable-dns-prefetching' setting to WebKit2 GTK+ API.
- - Initial support for WebAudio data playback.
- - Add enable-webaudio setting.
- - Links are now focused with Tab by default in WebKit2.
- - Fix HTML5 Youtube video fullscreen button.
- - Improve description of WebSocket errors.
- - Add WebKitWindowProperties to WebKit2 GTK+ API.
- - Fullscreen controller support for the new WebKit Fullscreen API.
- - Add WebKitURIResponse to WebKit2 GTK+ API.
- - Fix random crash in pages containing plugins.
- - Fix loading of custom fonts in some web sites like surlybikes.com
- or boingboing.net.
-
-=================
-WebKitGTK+ 1.7.2
-=================
-
-What's new in WebKitGTK+ 1.7.2?
-
- - Fix process freeze when right-clicking on windowless Flash.
- - Performance improvements by avoiding unnecessary clips while
- painting.
- - Notify errors happening on downloads not started by a web view.
- - Allow building with GLib >= 2.31.
- - Significant JavaScript performance improvements on x86 and x86-64.
- - Fix application cache directory in WebKit2.
- - Add initial support for cookies in WebKit2.
- - Implement support for downloads in WebKit2.
- - Add methods to load HTML and plain text to WebKit2 GTK+ API.
- - Add webkit_web_view_get_uri() to WebKit2 GTK+ API.
- - Don't show items in option elements with display:none.
- - Add webkit_web_view_load_request() to WebKit2 GTK+ API.
- - Add support for WebAudio AudioFileReader.
- - Port MiniBrowser to use WebKit2 GTK+ API instead of the C API.
- - Add more settings to WebKitSettings in WebKit2 GTK+ API: Private
- browsing, developer extras, resizable text areas, tabs to links,
- caret mode, font settings, default charset.
- - Fix windowless plugins drawing in WebKit2.
- - Fix memory leak when fullscreening a video.
- - Remove visited links from page's page group when clearing back
- forward list.
- - Switch to a backing store approach for painting WebKitWebView. It
- improves scrolling performance.
- - Add methods to get/set the settings of a web view to WebKit2 GTK+
- API.
- - Add webkit_settings_new_with_settings() to WebKit2 GTK+ API.
- - Add title property to WebKitWebView in WebKit2 GTK+ API.
-
-=================
-WebKitGTK+ 1.7.1
-=================
-
-What's new in WebKitGTK+ 1.7.1?
-
- - Fix a problem with scroll adjustments tha made scrollbars become
- out of sync with the page contents.
- - Show title of option control items in a tooltip.
- - Improve scrolling performance for pages containing windowed
- plugins.
- - Use GtkGrid instead of GtkTable in authentication dialogs.
- - Fix compatibility issues with DOM bindings.
- - Fix video pause/play in fullscreen.
- - Add support for pseudo-italics on freetype fonts when italic font
- is requested but Fontconfig gives one that is neither oblique
- nor italic.
- - Fix test rendering issues due to custom fonts which use synthetic
- oblique rendering.
- - Support for client-based geolocation.
- - Add support for sending encoded blob data during network requests.
- - Use SOCK_SEQPACKET when available for sockets used to communicate
- processes in WebKit2.
- - Add gtk-doc support to generate WebKit2 GTK+ API documentation.
- - Implement default error pages in WebKit2.
- - Initial implementation of WebInspector for WebKit2.
- - Implement drag and drop support in WebKit2.
- - TextChecker implementation for WebKit2.
- - Initial implementation of back forward list for WebKit2 GTK+ API.
- - Initial implementation of view settings for WebKit2 GTK+ API.
- - Initial implementation of loader client for WebKit2 GTK+ API.
- - Implement cache model for WebKit2
- - Initial implementation of web context for WebKit2 GTK+ API.
- - Add methods to get/set a custom text enconding to WebKit2 GTK+
- API.
- - Add WebKitError to WebKit2 GTK+ API.
-
-This is the first release providing a minimal working WebKit2 GTK+
-API. This API is still under design and development, so use it
-carefully and take into account that it might change.
-
-=================
-WebKitGTK+ 1.5.90
-=================
-
-What's new in WebKitGTK+ 1.5.90?
-
- - Bumped GStreamer requirement to 0.10.30.
- - Switch to GTK+3 by default. GTK+2 is still required for the
- WebKit2 plugin process though.
- - Create pot files in builddir.
- - Improvements in the WebKit2GTK+ port.
- - Lots of bugfixes.
-
-================
-WebKitGTK+ 1.5.2
-================
-
-What's new in WebKitGTK+ 1.5.2?
-
- - Remove G_CONST_RETURN usage througout WebKit, it's deprecated in
- glib.
- - Add plugin process support in WebKit2. Now (GTK+2) plugins can
- work again with a GTK+3 build.
- - Add API to set local storage database path.
- - Further UA spoofing for Google Calendar, since it assumes
- Linux+WebKit means mobile (ugh).
- - Lots of bugfixes.
-
-================
-WebKitGTK+ 1.5.1
-================
-
-What's new in WebKitGTK+ 1.5.1?
-
- - The JSC library is now available independently. It's called
- "libjavascriptcoregtk", and it comes with its own pkg-config file.
- - New spellchecking APIs, useful to implement spellchecking features
- in the UAs.
- - New DOM methods to check if editable areas have been modified by
- the user (webkit_dom_html_{input,text_area}_is_edited).
- - Lots of improvements in the WebKit2GTK+ port.
- - Lots of bugfixes.
-
-=================
-WebKitGTK+ 1.3.13
-=================
-
-What's new in WebKitGTK+ 1.3.13?
-
-In this release the GObject DOM Bindings contain a major change. Explicit
-invocation of DOM objects' addEventListener methods has replaced the GObject
-signal method of DOM event handling. For intance, where before a developer
-would connect to the "click-event" signal, a developer must now call:
-webkit_dom_event_target_add_event_listener. For a more illustrative example see:
-http://trac.webkit.org/changeset/81486/trunk/Source/WebKit/gtk/tests/testdomdomwindow.c
-
-Added API to control the IconDatabase and the cache database APIs.
-
-WebKit bugs mostly relevant with the GTK+ port fixed since 1.3.12:
-
-Bug 23526 - [CAIRO] Support ImageBuffers clip operation on all Cairo ports (Martin Robinson)
-Bug 56180 - [GTK] JSC crashes in 32bit Release bots after r80743 (Martin Robinson)
-Bug 56180 - [GTK] JSC crashes in 32bit Release bots after r80743 (Geoffrey Garen)
-Bug 49649 - [GTK] On-demand event-listeners for DOM event signals (David Keijser)
-Bug 56333 - [GTK] [WebKit2] The UIProcess never changes the mouse cursor (Martin Robinson)
-Bug 55989 - [GTK] Possible leaks after splitting TextCheckerClientEnchant. (Ryuan Choi)
-Bug 50497 - Add all web audio auto-generated files to GTK make system (Chris Rogers)
-Bug 56180 - [GTK] JSC crashes in 32bit Release bots after r80743 (Sergio Villar Senin)
-Bug 55932 - [GTK] close-web-view emitted on disposed WebView (Philippe Normand)
-Bug 53098 - [GTK] Implement spin buttons for GTK+ 2.x (Martin Robinson)
-Bug 56125 - [GTK] [Webkit2] There are no scrollbars visible in the MiniBrowser (Martin Robinson)
-Bug 41903 - [GTK] plugins/return-negative-one-from-write.html crashes (Martin Robinson)
-Bug 32510 - [GTK] provide an API to control the IconDatabase (Christian Dywan)
-Bug 55868 - [GTK] Do not set juntion sides on scrollbar stepper buttons (Carlos Garcia Campos)
-Bug 55866 - [GTK] Use doubles instead of integers for coordinates when rendering arrows (Carlos Garcia Campos)
-Bug 55878 - [Gtk] toDataURL uses incorrect quality value when saving GdkPixbuf to buffer (Zan Dobersek)
-Bug 55531 - [GTK] Windowless plugins override the view cursor (Martin Robinson)
-Bug 55136 - Enable Copy Image Address context menu item in the Gtk port (Christian Dywan)
-Bug 53960 - [GTK] DRT needs implementation of EventSender.scheduleAsynchronousClick (Carlos Garcia Campos)
-Bug 55335 - [GTK] Extended application cache database API and added unit tests file. (Lukasz Slachciak)
-Bug 53146 - [GTK] Combo boxes should emit object:selection-changed even when collapsed (Mario Sanchez Prada)
-Bug 55473 - [GTK] Add support for external protocol handlers (Sergio Villar Senin)
-Bug 53228 - [Gtk] Resource size is incorrectly reported to WebCore (Sergio Villar Senin)
-Bug 48510 - [GTK] Implement WebContext and NativeKeyboardEvent classes for WebKit2 (Amruth Raj)
-Bug 48509 - [GTK] Implement WebView and WebKitWebView classes for WebKit2 (Amruth Raj)
-Bug 48510 - [GTK] Implement WebEventFactory, WebErrors classes for WebKit2 ( Amruth Raj)
-Bug 54658 - [gtk] Failing collinear arcTo canvas tests (Zan Dobersek)
-Bug 37769 - [Gtk] Flash item placed on wrong location right after load (Martin Robinson)
-Bug 54981 - [GTK] position:fixed elements flicker while scrolling after r74196 (Martin Robinson)
-Bug 56180 - [GTK] JSC crashes in 32bit Release bots after r80743 (Oliver Hunt)
-Bug 56737 - [GTK] [Stable] AtkHypertext exposes wrong offsets for links placed inside <span> nodes (Mario Sanchez Prada)
-Bug 56201 - WebKitIconDatabase may trigger crash in cairoImageSurfaceToGdkPixbuf (Christian Dywan)
-Bug 56690 - Stop inserting when the parent is removed (Justin Schuh)
-
-=================
-WebKitGTK+ 1.3.12
-=================
-
-What's new in WebKitGTK+ 1.3.12?
-
- - Removed mandatory Enchant dependency.
- - Libsoup required version bumped to 2.33.6.
- - HTML5 media volume managment improvements.
- - Updated translations.
- - A11y bugfixes.
- - Many other bugfixes.
-
-
-WebKit bugs mostly relevant with the GTK+ port fixed since 1.3.11:
-
-Bug 42496 - Update Simplified Chinese (zh_CN) translation of WebKitGtk (Christian Dywan)
-Bug 53771 - [GTK] fast/events/pagehide-timeout.html fails (Martin Robinson)
-Bug 13343 - getComputedStyle returns wrong value for margin-right (Jarred Nicholls)
-Bug 53797 - [GTK] WebKitWebFrame can return a stale frame name when calling webkit_web_frame_get_name (Martin Robinson)
-Bug 52775 - WebKit2: add support for drag and drop on Windows (Enrica Casucci)
-Bug 54312 - Allow controlling minimum DOMTimer interval on a per-page basis (Kenneth Russell)
-Bug 54323 - [Freetype] Better map CSS font weight to Fontconfig font weight (Martin Robinson)
-Bug 50237 - [Gtk] Implement layoutTestController.findString (Joone Hur)
-Bug 53686 - Web Inspector: remove settings related methods from InspectorClient (Yury Semikhatsky)
-Bug 53833 - [GTK] plugins/plugin-document-back-forward.html fails (Martin Robinson, Adam Barth)
-Bug 54860 - [GTK] [REGRESSION] After r79130, spell tests did not work (Alejandro G. Castro)
-Bug 54352 - [GTK] Match more various WebKit API enum values with WebCore enum values (Joone Hur)
-Bug 54116 - [GTK] Add support in DRT to log "accessibility events" (Mario Sanchez Prada)
-Bug 52836 - [GTK] Move scrollbar rendering out of gtk2drawing.c (Martin Robinson)
-Bug 39022 - [GTK] Some test results are one pixel different between the x86_64 and i386 bots (Alejandro G. Castro)
-Bug 54895 - [GTK] editing/pasteboard/dataTransfer-setData-getData.html fails (Martin Robinson, Alejandro G. Castro)
-Bug 54389 - [GTK] http/tests/misc/generated-content-inside-table.html does not work in the bots (Alejandro G. Castro)
-Bug 54410 - SVG animation doesn't support attribute value 'inherit' (Dirk Schulze)
-Bug 54414 - [GTK] testwebdatasource test fails in the bots (Alejandro G. Castro)
-Bug 52880 - [GTK] Implement PlatformKeyboardEvent::getCurrentModifierState() (Carlos Garcia Campos)
-Bug 54418 - r78499 causes assertion failure in http/tests/xmlhttprequest/cache-override.html (Mario Sanchez Prada)
-Bug 54427 - [Chromium] Rendering error of spin buttons on layers (Kent Tamura)
-Bug 52384 - Plumb mixed script URL to FrameLoaderClient (Adam Langley)
-Bug 53104 - Intermittent crash in fast/files/read-blob-async.html on the GTK+ debug bots (Jian Li)
-Bug 54437 - Web Inspector: move rest of the tests off old harness. (Pavel Feldman)
-Bug 54449 - notImplemented() should behave identical in WebCore and WebKit2 (Balazs Kelemen)
-Bug 34482 - Please add Greek translation of WebkitGTK+ (Christian Dywan)
-Bug 51379 - Convert <keygen> option elements to a shadow DOM (Dominic Cooney)
-Bug 52919 - Stop instantiating legacy editing Positions in VisiblePosition (Levi Weintraub)
-Bug 54458 - [Gtk] Cleanup in the canvas tests (Zan Dobersek)
-Bug 53436 - [Gtk] atk_text_get_caret_offset fails for list items (Mario Sanchez Prada)
-Bug 53962 - [GTK] EventSender.keyDown does not support non-array modifier arguments (Martin Robinson)
-Bug 52417 - Add EditorClient callbacks to override isDOMPasteAllowed and javaScriptCanAccessClipboard (Ryosuke Niwa)
-Bug 53954 - Move the sputnik test suite out of fast/js/ (James Robinson)
-Bug 54470 - [GTK] svg/text/select-textLength-spacing-squeeze-1.svg crashes due to ASSERT failing (Mario Sanchez Prada)
-Bug 54474 - Pixel tests differences on 10.6.6 32bit vs. 64bit (Nikolas Zimmermann)
-Bug 53453 - [Gtk] atk_text_get_selection/atk_text_set_selection fails for list items (Mario Sanchez Prada)
-Bug 54491 - [cairo][canvas] Drawing from/into float rectangles with width or height in range 0 to 1 fails (Zan Dobersek)
-Bug 54495 - Crash in EventHandler::sendContextMenuEventForKey (Emil A Eklund)
-Bug 53984 - Remove orphan code from old parser (Adam Barth)
-Bug 3812 - XMLHttpRequest: PUT, DELETE, HEAD and all other methods but POST actually do a GET (Sergio Villar Senin)
-Bug 53989 - svg/custom/use-multiple-on-nested-disallowed-font.html sometimes fails an assertion in StyleSelectorParentPusher (Mario Sanchez Prada)
-Bug 50918 - [GStreamer] media/video-zoom-controls.html fails (Philippe Normand)
-Bug 25831 - [GTK] events missing when a document is (re)loaded (Mario Sanchez Prada)
-Bug 53992 - fast/loader/onload-willSendRequest-null-for-frame.html times out in GTK 32-bit debug bot (Mario Sanchez Prada)
-Bug 53995 - editing/selection/end-of-document.html is failing in the GTK 64-bit debug bot (Mario Sanchez Prada)
-Bug 34543 - [Gtk] Please add Hungarian translation (Christian Dywan)
-Bug 44784 - [GTK] fast/history/history-subframe-with-name.html fails with GTK DRT (Martin Robinson)
-Bug 54517 - Ensure loading has stopped in HistoryController::goToItem (Charlie Reis)
-Bug 54011 - [GTK] Fix after r77874, m_isConnected is initialized before the socket is opened (Alejandro G. Castro)
-Bug 54014 - [GTK] Incorrect assertion in WorkQueueGtk, we need to register more than one handle (Alejandro G. Castro)
-Bug 54015 - [GTK] Avoid WebProcessMain compilation, we are used a gtk specific main (Alejandro G. Castro)
-Bug 39168 - Canvas: 2d.fillStyle.parse.system.html fails (Andreas Kling)
-Bug 52997 - [GTK] DRT's TextInputController is unimplemented on GTK (Carlos Garcia Campos)
-Bug 49414 - Implement ECMAScript I18N APIs (proposed) (Nebojsa Ciric)
-Bug 54537 - [Gtk] Add support for layoutTestController.setWillSendRequestClearHeader (Sergio Villar Senin)
-Bug 54033 - [GTK] DRT needs an implementation of LayoutTestController.setIconDatabaseEnabled (Martin Robinson)
-Bug 54035 - [GTK] Remove the last remnants of the Mozilla theme drawing code (Martin Robinson)
-Bug 53529 - [fileapi] Add support for filesystem: URI handling (Adam Klein)
-Bug 54557 - [GTK] libsoup critical warnings (Philippe Normand)
-Bug 54057 - [GTK] Build break with 2.18.3 (Ryuan Choi)
-Bug 50489 - Move DocumentWriter to DocumentLoader (Nate Chapin)
-Bug 53898 - Add built-in decoder for UTF-8 for improved performance (Darin Adler)
-Bug 54078 - [GTK] Add WebGraphicsContext stub to the compilation (Alejandro G. Castro)
-Bug 54080 - [GTK] Implement UpdateChunk, ChunkedUpdateDrawingArea/Proxy classes for WebKit2 (Chandra Vallala <chandra.vallala@motorola.com> and Alejandro G. Castro)
-Bug 54081 - [GTK] Implement WKBaseGtk API for Webkit2 (Chandra Vallala <chandra.vallala@motorola.com> and Alejandro G. Castro)
-Bug 54600 - [PATCH] GTK documentation fails to build due to changed paths (Robert Ancell)
-Bug 42833 - Brazilian Portuguese Translation Update (Christian Dywan)
-Bug 50518 - [GTK] media/controls-without-preload.html is flacky on 32-bits Debug (Philippe Normand)
-Bug 54106 - frames/flattening/iframe-flattening-crash.html fails on GTK. (Yael Aharon)
-Bug 54622 - Rename Position::node() to Position::deprecatedNode() (Ryosuke Niwa)
-Bug 54626 - [GTK] accessibility/canvas-fallback-content.html is failing on GTK bots (Mario Sanchez Prada)
-Bug 54627 - [GStreamer] URI queries support in webkitwebsrc (Andoni Morales Alastruey)
-Bug 54628 - [GStreamer] Add 'location' property in webkitwebsrc (Andoni Morales Alastruey)
-Bug 54117 - Replace static_cast<HTMLElement*> with toHTMLElement (Yael Aharon)
-Bug 54631 - [GTK] media/video-controls-in-media-document.html potentially flaky (Philippe Normand)
-Bug 53991 - fast/frames/sandboxed-iframe-storage.html is flaky (Mario Sanchez Prada)
-Bug 54637 - [GTK] media/video-display-toggle.html is flaky on debug bots (Philippe Normand)
-Bug 44400 - Attached is the Bulgarian translation of WebKit Gtk (Christian Dywan)
-Bug 30580 - [GTK] Failing canvas security tests (Sergio Villar Senin)
-Bug 46455 - [l10n] Indonesian translation (Christian Dywan)
-Bug 52090 - [Soup] ResourceHandleSoup does not ever call didSendData for file uploads (Martin Robinson)
-Bug 54140 - [GStreamer] Video player sets system volume to 100% (Philippe Normand)
-Bug 48510 - [GTK] Implement WebEventFactory, WebErrors classes for WebKit2 (Amruth Raj <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla)
-Bug 54592 - [GTK] r78718 introduced some assertion failures in some HTTP tests (Martin Robinson)
-Bug 51587 - [GTK] Remove mandatory Enchant dependency (Ryuan Choi)
-Bug 53125 - [GTK] LayoutTests/media/audio-mpeg4-supported.html fails (Philippe Normand)
-Bug 54157 - [GTK] Default error page is interfering with tests which require failed loads (Martin Robinson)
-Bug 51602 - [GStreamer] wrong media duration report in media/controls-after-reload.html (Philippe Normand)
-Bug 53146 - [GTK] Combo boxes should emit object:selection-changed even when collapsed (Philippe Normand, Mario Sanchez Prada)
-Bug 53487 - [Gtk] No need to set text encoding in the provisional phase (Joone Hur)
-Bug 53667 - [GTK] fast/history/timed-refresh-in-cached-frame.html fails after r77355 (Philippe Normand)
-Bug 54185 - [GTK] Reset GTK' DRT's AccessibilityController to consistent value before every test (Mario Sanchez Prada)
-Bug 53680 - [GTK] fast/frames/sandboxed-iframe-scripting.html is flaky (Philippe Normand)
-Bug 53169 - Web Inspector: move InspectorController's methods from InspectorAgent to InspectorController (Ilya Tikhonovsky)
-Bug 53683 - [GTK] Flaky websocket tests on 32-bits Release (Philippe Normand)
-Bug 54198 - [GTK] Log signals from AtkDocument interface also in AccessibilityController (Mario Sanchez Prada)
-Bug 36340 - Arabic translation (Christian Dywan)
-Bug 54210 - [GTK] fast/text/atsui* tests failing on 32-bit Debug (Philippe Normand)
-Bug 54212 - [GTK] fast/text/international/hindi-whitespace.html fails (Philippe Normand)
-Bug 50126 - Fallback content in canvas element not focusable (Dominic Mazzoni)
-Bug 53716 - JSC::Bindings m_rootObject->isValid() assert fails when running layout tests (Michael Saboff, Martin Robinson)
-Bug 54231 - [GDOM] Video element needs proper wrapping (Gustavo Noronha Silva)
-Bug 53213 - Refactoring: Extract TextCheckerClient from EditorClient (MORITA Hajime)
-Bug 54244 - Convert the line box tree to floating point and eliminate font rounding hacks (David Hyatt)
-Bug 53733 - Timers can fire after a frame has been put into the page cache (Sergio Villar Senin)
-Bug 46567 - [l10n] Polish translation of WebKitGTK+ (Christian Dywan)
-Bug 54260 - HTML5 <details> and <summary>: localized text (Luiz Agostini)
-Bug 53673 - [GTK] fast/files/workers/worker-read-blob-async.html is flaky (Philippe Normand)
-Bug 26108 - French translation for Webkit/GTK (Christian Dywan)
-Bug 53247 - [GTK] media/audio-delete-while-slider-thumb-clicked.html is flaky (Philippe Normand)
-
-
-
-=================
-WebKitGTK+ 1.3.11
-=================
-
-What's new in WebKitGTK+ 1.3.11?
-
- - Add a beginDragWithFiles implementation for the GTK+ event sender.
- - ResourceHandleSoup do not wait for streams to close to issue
- didFinishLoading.
- - Move the request/cache code to libsoup.
- - A11y bugfixes.
- - Many other bugfixes.
-
-=================
-WebKitGTK+ 1.3.10
-=================
-
-What's new in WebKitGTK+ 1.3.10?
-
- - Port form control theming code to GtkStyleContext.
- - Add a new 'make jsc' target to build only JavaScriptCore and the jsc binary.
- - Initial support for drag-and-drop file uploads.
- - WOFF font face support.
- - Many other bugfixes.
-
-================
-WebKitGTK+ 1.3.9
-================
-
-What's new in WebKitGTK+ 1.3.9?
-
- - Compilation fixes for the final GTK+ 2.91.7 release.
-
-================
-WebKitGTK+ 1.3.8
-================
-
-What's new in WebKitGTK+ 1.3.8?
-
- - New WebKitWebPluginDatabase and WebKitWebPlugin classes for plugin
- management.
- - The usual fixes for GTK+ 3.x API changes. We are still using the
- old GtkStyle APIs, that should be gone by the next release.
- - Add support for Mozilla-style JS fullscreen API.
- - Add support for the viewport metatag.
- - Many other bugfixes.
-
-================
-WebKitGTK+ 1.3.7
-================
-
-What's new in WebKitGTK+ 1.3.7?
-
- - Fix error pages template's not being filled properly.
- - Fix context menu activation through keyboard.
- - Add automatic garbage collection for most GObject DOM objects (all
- those that are actually in the DOM tree). This gets rid of most of
- the leaks when using the bindings.
- - Add an Inspector API to inspect a DOM node.
- - Tons of a11y bugfixes.
- - Tons of fixes for the in-tree SoupCache, should work much better
- now.
- - Many other bugfixes.
-
-================
-WebKitGTK+ 1.3.6
-================
-
-What's new in WebKitGTK+ 1.3.6?
-
- - Update to compile with GTK+ 3.x 2.91.4.
- - Many, many other bugfixes.
-
-================
-WebKitGTK+ 1.3.5
-================
-
-What's new in WebKitGTK+ 1.3.5?
-
- - Add a HTTP cache implementation. This will be eventually
- integrated in libsoup itself, but for now it can be accessed from
- WebKit through the WebKitSoupCache APIs.
- - Updated to work with GTK+ 3.x 2.91.1.
- - Add frame-flattening support, used by some mobile browser sto
- merge all frames in a page into a continuous view.
- - Many other bugfixes.
-
-================
-WebKitGTK+ 1.3.4
-================
-
-What's new in WebKitGTK+ 1.3.4?
-
- - File reader/writer APIs are now enabled.
- - The javascript JIT is now enabled by default on ARM.
- - Clipboard data is no longer lost when the process exists.
- - Image DnD support.
- - GSettings support to save/restore Web Inspector settings.
- - Add WebSocket support, now enabled by default.
- - Added WebKitWebView::frame-created signal, emitted when a frame
- other than the main frame is created in a view.
- - Added WebKitWebView::view-mode, holding information about how the
- view is being presented. See the property documentation and
- http://www.w3.org/TR/view-mode/ for details.
- - Fullscreen support for HTML5 media player.
- - Identify as WebKit/Safari in Google domains when
- enable-site-specific-quirks is activated. Otherwise we'll get a
- degraded user experience due to their poor UA detection
- algorihtms.
- - Added simple media playback options in the context menu for the
- media elements.
- - Update (and require) to work with gobjet-introspection 0.9.5.
- - Updated to work with GTK+ 3.x 2.90.7 when in GTK+ 3.x mode.
- - Make --disable-jit actually work.
- - Add --enable-opcode-stats configure flag. When enabled, statistics
- about opcode generation will be printed by JSC.
- - Many a11y fixes, particularly in the AtkText interface.
- - CSS box shadows render much faster in many cases.
- - Many other bugfixes.
-
-================
-WebKitGTK+ 1.3.3
-================
-
-What's new in WebKitGTK+ 1.3.3?
-
- - Fixes to compile with latest GTK+ 2.90.x.
- - Add support for dropping content in WebKitWebViews.
- - Many other bugfixes.
-
-================
-WebKitGTK+ 1.3.2
-================
-
-What's new in WebKitGTK+ 1.3.2?
-
-*** This release is an ABI break ***
-
-The library has been renamed to libwebkitgtk, so you'll need to
-recompile your applications when upgrading to 1.3.2.
-
- - Add support for GTK+ 3.x. A new configure flag, --with-gtk, has
- been added, which allows to control which GTK+ version you want to
- build against. The default value is '2.0', for GTK+ 2.x
- support. With '3.0' the library will be compiled against GTK+ 3.x
- (2.90.4 or newer required). In the 3.x mode the .pc file has been
- renamed from webkit-X.X.pc to webkitgtk-X.X.pc, so you'll need to
- update your autotools setup accordingly.
- - Many fixes for the DOM bindings, including support to dispatch
- events to any Node through webkit_event_target_dispatch_event.
- - Added a 'inner-node' property to WebKitHitTestResult, carrying the
- DOM node where the hit test happened.
- - Many DnD fixes, including a fix for the infamous hang-of-death
- while dragging the mouse.
- - Support for <input type="range">.
- - Many other bugfixes.
-
-================
-WebKitGTK+ 1.3.1
-================
-
-What's new in WebKitGTK+ 1.3.1?
-
- - Initial support for GObject DOM bindings. Present in this release
- is a substantial subset of the basic DOM APIs (Document, HTML
- elements, Node, etc) including access to the DOM events through
- GObject signals. Keep in mind that all the APIs are still
- unstable, and will probably be subject to changes before the next
- stable release.
- - Add webkit_web_back_forward_list_clear, to completely clear the
- BackForward list.
- - Lots of improvements in DOM clipboard and drag-drop access.
- - Add support for GTK+ key themes.
- - Significant improvements in a11y, including improved role support
- and many bugfixes.
-
-=================
-WebKitGTK+ 1.1.90
-=================
-
-What's new in WebKitGTK+ 1.1.90?
-
- - Display server side messages during HTTP auth, since they
- sometimes contain important information for the authentication
- process.
- - Reduce creation time for WebKitWebView widgets by reusing
- dictionary structs used for spell-checking instead of creating a
- new one for each instance.
- - Implement WebKitWebView::geolocation-policy-decision-requested,
- emitted when a frame inside the WebView wants to get its position
- through geolocation.
- - Add WebKitWebSettings::enable-spatial-navigation to control
- whether Spatial Navigation is enabled or not. Spatial Navigation
- allows the user to move through the elements in a page using only
- the keyboard; this is similar to caret browsing, but with less
- focus on accessibility since instead of presenting the exact
- layout of the page to the user a more "logical" way of browsing
- through its contents is allowed. A specification of this feature
- can be seen at
- http://www.w3.org/TR/WICD/#current-focus-point-algorithm
- - Add a new build option, --enable-fast-mobile-scrolling. At the
- moment this only disables fixed backgrounds when there are no
- other fixed elements in a page, since they generally make
- scrolling very slow and thus are a big burden in some mobile
- environments.
- - GTK+ Input Method support has received a big overhaul, and most of
- them should work pretty well now.
- - All known redraw issues in the plugin support (especially with the
- Java plugin) have been fixed.
- - Various fixes to the MediaPlayer code to improve responsiveness
- and avoid lagging on position reporting.
- - Lots of bugfixes and other improvements.
-
-=================
-WebKitGTK+ 1.1.22
-=================
-
-What's new in WebKitGTK+ 1.1.22?
-
- - Preliminary support for Java plugins. Basic functionality is
- there, but there are still a few rough edges. Also newly
- introduced is a new WebKitWebSetting, 'enable-java-applet', which
- controls whether WebKit will recognize the non-standard <applet>
- tag.
- - Add WebKitWebSettings::auto-resize-window; when enabled, WebKit
- will act upon the DOM methods that change the size and/or position
- of the window containing a WebView (window.{moveTo, resizeTo,
- moveBy, resizeBy}).
- - Add WebKitWebSettings::enable-file-access-from-file-uris; when
- enabled, each file:// URI will be assigned its own security
- domain.
- - Lots of bugfixes, especially in the PageCache support.
-
-=================
-WebKitGTK+ 1.1.21
-=================
-
-What's new in WebKitGTK+ 1.1.21?
-
- - New custom-made GStreamer source element that uses the WebCore
- network layer to download media data; this makes sure any headers
- and cookies will automatically get added when making requests.
- - WebKit will now let libsoup know who the first party for a given
- message is, making it possible to implement accept/deny policies in
- Soup.
- - The usual stream of fixes, and improvements
-
-=================
-WebKitGTK+ 1.1.20
-=================
-
-What's new in WebKitGTK+ 1.1.20?
-
- - Fixes to the HTML5 Media Player infrastructure to satisfy sites
- that require cookies, and Referer to be sent; this makes
- WebKitGTK+ able to support the new HTML5 support added to Youtube,
- and Vimeo, for instance.
- - Windowless plugin support is finally here, making it possible to
- get plugins to behave on various web pages.
- - The usual stream of fixes, and improvements
-
-=================
-WebKitGTK+ 1.1.19
-=================
-
-What's new in WebKitGTK+ 1.1.19?
-
- - Improvements to AtkText implementation
- - RGBA colormap support has been added
- - Improvements to the HTML5 media player
- - Crashes related to clipboard handling, which were hitting many
- users and seemed to be random have been fixed
-
-=================
-WebKitGTK+ 1.1.18
-=================
-
-What's new in WebKitGTK+ 1.1.18?
-
- - Add methods to set and get a cache model in WebKitGTK+. We offer
- two possibilites: document viewer (no caches are used) and browser
- (similar to the previous defaults).
- - Add WebKitWebSettings::enable-page-cache. Controls whether the
- Page Cache is enabled or not. For details about what the page
- cache is and does see
- http://webkit.org/blog/427/webkit-page-cache-i-the-basics/
- The page cache is disabled by default, since the gtk+ port still
- presents some small bugs when it's enabled.
- - Add WebKitWebSettings::enable-site-specific-quirks. Controls
- whether a series of page-specific workarounds are used by WebKit.
- - Use Content-Encoding support available in libsoup 2.28.2 and
- newer.
- - Add WebKitWebSettings::enable-default-context-menu. Controls
- whether webkitgtk+ will show a default context menu on right click
- in the view. Note that even with the property set to FALSE right
- clicks can be handled by the page, either by actions or by
- ad-hoc in-page context menus.
- - Make the WebKitWebView::icon-loaded signal carry a string with the
- favicon's URI. This is an API break, but the signal already had a
- broken signature and was useless anyway, so it's extremely
- unlikely that anybody was using it. Also, add the 'icon-uri'
- property to the view, holding the URI for its current favicon.
- - Respect Content-Disposition header in downloads (fixes downloads
- in gmail).
- - Various accessibility improvements.
- - Many bugfixes.
-
-=================
-WebKitGTK+ 1.1.17
-=================
-
-What's new in WebKitGTK+ 1.1.17?
-
- - New APIs to show and close the web inspector and to inspect an
- element at the given coordinates.
- - New property, WebKitWebSettings::tab-key-cycles-through-elements,
- controls whether TAB is simply interpreted as another keystroke or
- is used to cycle through the elements in a page.
- - Many a11y improvements.
- - The usual amount of random bugfixes.
-
-=================
-WebKitGTK+ 1.1.16
-=================
-
-What's new in WebKitGTK+ 1.1.16?
-
- - Add optional support to generate the gobject-introspection
- gir/typelib files. Enable with --enable-introspection, it's off by
- default.
- - Add a new load status value, WEBKIT_LOAD_FAILED, emitted when
- there's an error during the load process. This is the natural
- companion to WEBKIT_LOAD_FINISHED, which is only emitted when the
- load finished succesfuly.
- - Ensure that keyboard events filtered by GtkIMContext still create
- the proper DOM events.
- - Many a11y improvements: caret browsing fixes, expose heading
- levels, more accessible roles supported, more work in correctly
- showing the element's ancestry list, improved support for lists,
- etc.
- - Many improvements to our media support.
- - Add a new setting to control DOM pastes
- (document.execCommand("Paste"))
- - Many, many bugfixes all over the place.
-
-=================
-WebKitGTK+ 1.1.15
-=================
-
-What's new in WebKitGTK+ 1.1.15?
-
- - New API to get the subresources from a WebKitWebDataSource. This
- provides a way of accessing all the resources that compose the
- view to which the data source is attached.
- - A new function, webkit_web_view_get_hit_test_result, which allows
- to do a 'hit test' on the coordinates specified by a mouse
- event. A hit test provides context information about that point in
- the document, like whether it's an image, a link, an input box,
- etc.
- - Our DumpRenderTree implementation now supports eventSender, which
- allows us to run many more LayoutTests and make WebKitGTK+ more
- stable and feature-complete.
- - JSNES runs 6x faster: http://trac.webkit.org/changeset/48573
- - The usual small improvements and bugfixes.
-
-=================
-WebKitGTK+ 1.1.14
-=================
-
-What's new in WebKitGTK+ 1.1.14?
-
- - New API has been added to WebKitWebFrame to allow applying
- scrollbars policy as requested by web applications to the main
- frame; if the parent of the WebKitWebView widget is a
- GtkScrolledWindow, policy is applied by the default handler.
- - A new API has been added to help dealing with the various
- resources that are downloaded to compose the final rendering; you
- can now obtain the source code for a page that is loaded, for
- instance.
- - A new property has been added to WebKitWebView to allow setting it
- to "View Source" mode.
- - HTML5 database has gained API to manage the individual databases,
- including usage and quota.
- - A new signal `resource-request-starting' has been added to the
- WebKitWebView to allow modification of outgoing requests for every
- resource.
- - Connection limit has been increased to 60 total connections, 6
- per-host, matching other browsers more closely; this seems to have
- improved loading time of some sites.
- - Undo/redo support has been added to editable texts.
- - The usual stream of small improvements and bug fixes.
-
-=================
-WebKitGTK+ 1.1.13
-=================
-
-What's new in WebKitGTK+ 1.1.13?
-
- - GNOME Keyring support was removed in favor of the new Password
- Manager soup feature; to get exactly the same behavior,
- applications should use SoupPasswordManagerGNOME. This requires
- libsoup 2.27.91 or newer.
- - Several accessibility improvements, including support for testing
- the a11y infrastructure in our layout tests.
- - You can now enable/disable HTML5 offline application cache using a
- new setting added to WebKitWebSettings.
- - Drag support has landed, meaning you can start playing with HTML5
- drag and drop support; drop support is still missing.
- - A crash with scripts closing windows has been fixed.
- - Image cursors support has been added.
- - The usual stream of small improvements and bug fixes.
-
-=================
-WebKitGTK+ 1.1.12
-=================
-
-What's new in WebKitGTK+ 1.1.12?
-
- - Fix WebKitSoupAuthDialog to only save passwords in gnome-keyring
- (if enabled) when authentication succeeds.
- - Implement a proper size_request method for WebKitWebView. The
- widget will request the size of the whole page as its size
- requisition.
- - Many a11y improvements.
- - The usual amount of other misc fixes.
- - WEBKIT_DEBUG variable now accepts channel names in any case
- again.
-
-=================
-WebKitGTK+ 1.1.11
-=================
-
-What's new in WebKitGTK+ 1.1.11?
-
- - WebKit has got a new feature - a XSS auditor, that should improve
- security; this feature is still experimental, and disabled by
- default, but applications can enable it using the setting.
- - The hackish content sniffing code that was beig used to avoid
- pages requesting downloads instead of displaying content has been
- replaced by usage of a new Soup feature, which implements proper
- content sniffing.
- - More accessibility work, including fixes for problems which were
- critical for a possible GNOME 2.28 release.
- - Pasting rich text from other browsers should now work as expected.
- - The usual amount of misc fixes.
-
-=================
-WebKitGTK+ 1.1.10
-=================
-
-What's new in WebKitGTK+ 1.1.10?
-
- - WebKitNetworkRequest has now GObject properties for its URI and
- the SoupMessage that backs it up.
- - Fix AtkText methods get_selection and get_n_selections to not use
- the global selection but only the selection that belongs to the
- object being used.
- - Fix a crasher when emitting the a11y signal 'text-caret-moved' in
- some situations with debug builds.
-
-================
-WebKitGTK+ 1.1.9
-================
-
-What's new in WebKitGTK+ 1.1.9?
-
- - Scrolling once again received a lot of love, and many subtle
- problems and bugs were killed, and we now get correct behavior in
- acid2; a number of smaller improvements are in the queue.
- - Accessibility keeps gaining better support. On this release a lot
- of work was done on the AtkText interface implementation.
- - WebKitNetworkRequest now carries with it all the information
- regarding the request, not only the URI. This means you will no
- longer miss headers such as Referer when passing NetworkRequest
- objects from a callback to webkit_web_frame_load_request.
-
-================
-WebKitGTK+ 1.1.8
-================
-
-What's new in WebKitGTK+ 1.1.8?
-
- - We found out that WebKitWebHistoryItems were being kept with a
- reference count of 2 instead of 1 as they should; nobody should be
- relying on that, but if you hit reference counting problems with
- items you were creating yourself, this is for you.
- - You can now copy images from the web page to the clipboard.
- - Improvements were made to the Plugin handling code.
- - Scroll events will now be correctly reported to web applications.
- - You can now embed arbitrary widgets as if it was a plugin, with
- the new "create-plugin-widget" signal.
- - The atk_text_get_text_{at,after,before}_offset methods are now
- implemented for all boundary types except LINE_AFTER and
- LINE_BEFORE.
- - The usual stream of minor fixes and improvements, as always.
-
-================
-WebKitGTK+ 1.1.7
-================
-
-What's new in WebKitGTK+ 1.1.7?
-
- - This release includes a security fix:
- SVGList::insertItemBefore would not perform a bounds check on the
- index it was provided, potentially leading to a buffer overflow.
- - New frame loading properties supersede various load-* signals, and
- are also accessible in the WebView, for convenience, making this
- API saner.
- - JIT is now supported for X86-64 on Linux, and enabled by default!
- - A regression on webkit_web_view_load_string has been fixed, making
- it work correctly again when the document uses encodings which may
- use more than 1 byte per character.
- - Yet more work has been done to the ATK support, caret browsing
- support improvements in particular.
- - Filenames suggested by the Download functionality now correctly
- use the filename given by the host, if available.
- - Build fixes for IA64, and AMD64
- - gtk-doc support has also improved, and you should now be able to
- cd WebKit/gtk/docs and type make docs, if you --enable-gtk-doc on
- configure, as long as you build with srcdir == builddir.
- - More crashes and other bugs fixed, and small improvements made
- under the hood.
-
-================
-WebKitGTK+ 1.1.6
-================
-
-What's new in WebKitGTK+ 1.1.6?
-
- - Several ATK support additions and fixes got landed, with many
- roles being now implemented, providing better accessibility.
- - Caret browsing is now available.
- - Spelling check has been implemented using Enchant; the API is
- still lacking, and some of the functionality still needs to be
- improved, though.
- - Error reporting is now available, with default error pages, and
- API that allows the application to override the default behavior;
- localization of those pages is still not supported, but planned.
- - More crashes and other bugs fixed.
-
-================
-WebKitGTK+ 1.1.5
-================
-
-What's new in WebKitGTK+ 1.1.5?
-
- - Added gtk-doc support to the build system. It is not fully
- integrated yet, so some manual tweaking is still needed.
- - Minimum required GTK+ version is now 2.10.
- - Added l10n support with gettext. Translations are stored in
- WebKit/gtk/po/.
- - Many improvements to the ATK support. It's good enough to provide
- a basic user experience with Accerciser now, but we'll keep
- improving it in further releases.
- - New printing API that allows applications to control and monitor
- the printing process, when requested by javascript or started by
- the user.
- - Many bugfixes.
-
-================
-WebKitGTK+ 1.1.4
-================
-
-What's new in WebKitGTK+ 1.1.4?
-
- - WebKitWebView gained uri and title properties, deprecating the
- usage of the title-changed signal.
- - Basic functionality for HTML5 media tags has been achieved; there
- are many unimplented methods, and rough edges still, though.
- - Font rendering received quite some love, with layouting, and
- memory handling fixes, and at least one less crash.
- - A new signal, new-window-policy-decision-requested, has been added
- to WebKitWebView, that makes it possible for the application to
- correctly decide what to do when new windows are requested.
- - A bug that made tooltips for consecutive links not update their
- location was fixed.
- - Several improvements were made to the HTTP backend, including
- making it more robust when talking to servers which send bad
- Content-Type headers.
- - WebKitWebView now uses the GtkBinding system to handle key events,
- which means that the user is now able to customize the keys used
- for various operations, and that many subtle bugs have been fixed.
-
-================
-WebKitGTK+ 1.1.3
-================
-
-The 1.1.3 release was just a quick bug fix release, because we made a
-mistake in library versioning.
-
-================
-WebKitGTK+ 1.1.2
-================
-
-What's new in WebKitGTK+ 1.1.2?
-
- - Added support for downloads: a new signal, 'download-requested',
- will be emitted by WebKit when a dowload is requested. On top of
- that, the download process has been encapsulated in a new object,
- WebKitDownload, which allows the user to control it or to start
- new downloads from the client side.
- - Added webkit_web_view_get_encoding to get the automatic encoding
- of the current page.
- - Added GObject properties for 'encoding' and 'custom-encoding'.
- - Added 'javascript-profiling-enabled' property to the WebInspector,
- which allows to enable and disable the profiling functionality.
- - Added API to create and add history items to WebKit's history.
- - Improved debugging support with WEBKIT_DEBUG environment
- variable. Most of the settings will only give useful output for
- debug builds, but WEBKIT_DEBUG=Network will log all HTTP traffic
- form libsoup to console. See WebCore/platform/gtk/LoggingGtk.cpp
- for all the options available.
- - Lots of bugfixes.
-
-================
-WebKitGTK+ 1.1.1
-================
-
-What's new in WebKitGTK+ 1.1.1?
-
- - ABI compatibility with 1.0.3 was broken, so you will need to
- recompile your application against 1.1.1
- - Support for the CURL backend was dropped, libsoup is the only HTTP
- backend now.
- - webkit_get_default_session, to get the SoupSession used internally
- by WebKit.
- - 'create-web-view' signal, emitted when the creation of a new
- window is requested.
- - 'navigation-policy-decision-requested' signal, emitted when a
- navigation to another page is requested.
- - 'mime-type-policy-decision-requested' signal, emitted each time
- WebKit is about to show a URI with a given MIME type.
- - Support for the Web Inspector
- (see http://webkit.org/blog/197/web-inspector-redesign/)
- - HTTP authentication support, with optional gnome-keyring storage.
- - New load functions: webkit_web_view_open, webkit_web_view_load_uri
- and webkit_web_view_load_request. The old
- webkit_web_view_load_string and webkit_web_view_load_html_string
- are now deprecated.
- - webkit_web_view_reload_bypass_cache
- - webkit_web_view_{get,set}_custom_encoding, to override the
- encoding of the current page.
- - Improved stability and lots of bugfixes.
-
diff --git a/Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContext.h b/Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContext.h
deleted file mode 100644
index bd673554b..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContext.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (C) 2011 Igalia, S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef AcceleratedCompositingContext_h
-#define AcceleratedCompositingContext_h
-
-#include "GraphicsLayer.h"
-#include "GraphicsLayerClient.h"
-#include "IntRect.h"
-#include "IntSize.h"
-#include "Timer.h"
-#include "webkitwebview.h"
-#include <wtf/PassOwnPtr.h>
-
-#if USE(TEXTURE_MAPPER)
-#include "TextureMapperLayer.h"
-#endif
-
-#if USE(TEXTURE_MAPPER_GL)
-#include "GLContext.h"
-#include "RedirectedXCompositeWindow.h"
-#include "TextureMapperFPSCounter.h"
-#endif
-
-#if USE(ACCELERATED_COMPOSITING)
-
-namespace WebKit {
-
-class AcceleratedCompositingContext : public WebCore::GraphicsLayerClient {
- WTF_MAKE_NONCOPYABLE(AcceleratedCompositingContext);
-public:
- static PassOwnPtr<AcceleratedCompositingContext> create(WebKitWebView* webView)
- {
- return adoptPtr(new AcceleratedCompositingContext(webView));
- }
-
- virtual ~AcceleratedCompositingContext();
- void setRootCompositingLayer(WebCore::GraphicsLayer*);
- void setNonCompositedContentsNeedDisplay(const WebCore::IntRect&);
- void scheduleLayerFlush();
- void resizeRootLayer(const WebCore::IntSize&);
- bool renderLayersToWindow(cairo_t*, const WebCore::IntRect& clipRect);
- bool enabled();
-
- // GraphicsLayerClient
- virtual void notifyAnimationStarted(const WebCore::GraphicsLayer*, double time);
- virtual void notifyFlushRequired(const WebCore::GraphicsLayer*);
- virtual void paintContents(const WebCore::GraphicsLayer*, WebCore::GraphicsContext&, WebCore::GraphicsLayerPaintingPhase, const WebCore::IntRect& rectToPaint);
-
- void initialize();
-
- enum CompositePurpose { ForResize, NotForResize };
- void compositeLayersToContext(CompositePurpose = NotForResize);
-
- void flushAndRenderLayers();
- bool flushPendingLayerChanges();
- void scrollNonCompositedContents(const WebCore::IntRect& scrollRect, const WebCore::IntSize& scrollOffset);
-
-private:
- WebKitWebView* m_webView;
- unsigned int m_layerFlushTimerCallbackId;
-
-#if USE(TEXTURE_MAPPER_GL)
- OwnPtr<WebCore::RedirectedXCompositeWindow> m_redirectedWindow;
- OwnPtr<WebCore::GraphicsLayer> m_rootLayer;
- OwnPtr<WebCore::GraphicsLayer> m_nonCompositedContentLayer;
- OwnPtr<WebCore::TextureMapper> m_textureMapper;
- double m_lastFlushTime;
- double m_redrawPendingTime;
- bool m_needsExtraFlush;
- WebCore::TextureMapperFPSCounter m_fpsCounter;
-
- void layerFlushTimerFired();
- void stopAnyPendingLayerFlush();
- static gboolean layerFlushTimerFiredCallback(AcceleratedCompositingContext*);
- WebCore::GLContext* prepareForRendering();
- void clearEverywhere();
-#elif USE(TEXTURE_MAPPER)
- WebCore::TextureMapperLayer* m_rootTextureMapperLayer;
- OwnPtr<WebCore::GraphicsLayer> m_rootGraphicsLayer;
- OwnPtr<WebCore::TextureMapper> m_textureMapper;
-#endif
-
- AcceleratedCompositingContext(WebKitWebView*);
-};
-
-} // namespace WebKit
-
-#endif // USE(ACCELERATED_COMPOSITING)
-#endif // AcceleratedCompositingContext_h
diff --git a/Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContextGL.cpp b/Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContextGL.cpp
deleted file mode 100644
index 1ac385615..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/AcceleratedCompositingContextGL.cpp
+++ /dev/null
@@ -1,397 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia, S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "AcceleratedCompositingContext.h"
-
-#if USE(ACCELERATED_COMPOSITING) && USE(TEXTURE_MAPPER_GL)
-
-#include "CairoUtilities.h"
-#include "Chrome.h"
-#include "ChromeClientGtk.h"
-#include "Frame.h"
-#include "FrameView.h"
-#include "GraphicsLayerTextureMapper.h"
-#include "PlatformContextCairo.h"
-#include "Settings.h"
-#include "TextureMapperGL.h"
-#include "TextureMapperLayer.h"
-#include "webkitwebviewprivate.h"
-#include <wtf/CurrentTime.h>
-
-#if USE(OPENGL_ES_2)
-#include <GLES2/gl2.h>
-#else
-#include <GL/gl.h>
-#endif
-
-#include <cairo.h>
-#include <gdk/gdk.h>
-#include <gtk/gtk.h>
-
-const double gFramesPerSecond = 60;
-
-// There seems to be a delicate balance between the main loop being flooded
-// with motion events (that force flushes) and starving the main loop of events
-// with flush callbacks. This delay is entirely empirical.
-const double gScheduleDelay = (1.0 / (gFramesPerSecond / 3.0));
-
-using namespace WebCore;
-
-namespace WebKit {
-
-AcceleratedCompositingContext::AcceleratedCompositingContext(WebKitWebView* webView)
- : m_webView(webView)
- , m_layerFlushTimerCallbackId(0)
- , m_lastFlushTime(0)
- , m_redrawPendingTime(0)
- , m_needsExtraFlush(false)
-{
-}
-
-static IntSize getWebViewSize(WebKitWebView* webView)
-{
- GtkAllocation allocation;
- gtk_widget_get_allocation(GTK_WIDGET(webView), &allocation);
- return IntSize(allocation.width, allocation.height);
-}
-
-void redirectedWindowDamagedCallback(void* data)
-{
- gtk_widget_queue_draw(GTK_WIDGET(data));
-}
-
-void AcceleratedCompositingContext::initialize()
-{
- if (m_rootLayer)
- return;
-
- IntSize pageSize = getWebViewSize(m_webView);
- if (!m_redirectedWindow) {
- if (m_redirectedWindow = RedirectedXCompositeWindow::create(pageSize))
- m_redirectedWindow->setDamageNotifyCallback(redirectedWindowDamagedCallback, m_webView);
- } else
- m_redirectedWindow->resize(pageSize);
-
- if (!m_redirectedWindow)
- return;
-
- m_rootLayer = GraphicsLayer::create(0, this);
- m_rootLayer->setDrawsContent(false);
- m_rootLayer->setSize(pageSize);
-
- // The non-composited contents are a child of the root layer.
- m_nonCompositedContentLayer = GraphicsLayer::create(0, this);
- m_nonCompositedContentLayer->setDrawsContent(true);
- m_nonCompositedContentLayer->setContentsOpaque(!m_webView->priv->transparent);
- m_nonCompositedContentLayer->setSize(pageSize);
- if (core(m_webView)->settings()->acceleratedDrawingEnabled())
- m_nonCompositedContentLayer->setAcceleratesDrawing(true);
-
-#ifndef NDEBUG
- m_rootLayer->setName("Root layer");
- m_nonCompositedContentLayer->setName("Non-composited content");
-#endif
-
- m_rootLayer->addChild(m_nonCompositedContentLayer.get());
- m_nonCompositedContentLayer->setNeedsDisplay();
-
- // The creation of the TextureMapper needs an active OpenGL context.
- GLContext* context = m_redirectedWindow->context();
- context->makeContextCurrent();
-
- m_textureMapper = TextureMapperGL::create();
- static_cast<TextureMapperGL*>(m_textureMapper.get())->setEnableEdgeDistanceAntialiasing(true);
- toTextureMapperLayer(m_rootLayer.get())->setTextureMapper(m_textureMapper.get());
-
- scheduleLayerFlush();
-}
-
-AcceleratedCompositingContext::~AcceleratedCompositingContext()
-{
- stopAnyPendingLayerFlush();
-}
-
-void AcceleratedCompositingContext::stopAnyPendingLayerFlush()
-{
- if (!m_layerFlushTimerCallbackId)
- return;
- g_source_remove(m_layerFlushTimerCallbackId);
- m_layerFlushTimerCallbackId = 0;
-}
-
-bool AcceleratedCompositingContext::enabled()
-{
- return m_redirectedWindow && m_rootLayer && m_textureMapper;
-}
-
-bool AcceleratedCompositingContext::renderLayersToWindow(cairo_t* cr, const IntRect& clipRect)
-{
- m_redrawPendingTime = 0;
-
- if (!enabled())
- return false;
-
- cairo_surface_t* windowSurface = m_redirectedWindow->cairoSurfaceForWidget(GTK_WIDGET(m_webView));
- if (!windowSurface)
- return true;
-
- cairo_rectangle(cr, clipRect.x(), clipRect.y(), clipRect.width(), clipRect.height());
- cairo_set_source_surface(cr, windowSurface, 0, 0);
- cairo_set_operator(cr, CAIRO_OPERATOR_SOURCE);
- cairo_fill(cr);
-
- if (!m_layerFlushTimerCallbackId && (toTextureMapperLayer(m_rootLayer.get())->descendantsOrSelfHaveRunningAnimations() || m_needsExtraFlush)) {
- m_needsExtraFlush = false;
- double nextFlush = max((1 / gFramesPerSecond) - (currentTime() - m_lastFlushTime), 0.0);
- m_layerFlushTimerCallbackId = g_timeout_add_full(GDK_PRIORITY_EVENTS, 1000 * nextFlush, reinterpret_cast<GSourceFunc>(layerFlushTimerFiredCallback), this, 0);
- }
-
- return true;
-}
-
-GLContext* AcceleratedCompositingContext::prepareForRendering()
-{
- if (!enabled())
- return 0;
-
- GLContext* context = m_redirectedWindow->context();
- if (!context)
- return 0;
-
- if (!context->makeContextCurrent())
- return 0;
-
- return context;
-}
-
-void AcceleratedCompositingContext::compositeLayersToContext(CompositePurpose purpose)
-{
- GLContext* context = prepareForRendering();
- if (!context)
- return;
-
- const IntSize& windowSize = m_redirectedWindow->size();
- glViewport(0, 0, windowSize.width(), windowSize.height());
-
- if (purpose == ForResize) {
- glClearColor(1, 1, 1, 0);
- glClear(GL_COLOR_BUFFER_BIT);
- }
-
- m_textureMapper->beginPainting();
- toTextureMapperLayer(m_rootLayer.get())->paint();
- m_fpsCounter.updateFPSAndDisplay(m_textureMapper.get());
- m_textureMapper->endPainting();
-
- context->swapBuffers();
-}
-
-void AcceleratedCompositingContext::clearEverywhere()
-{
- GLContext* context = prepareForRendering();
- if (!context)
- return;
-
- const IntSize& windowSize = m_redirectedWindow->size();
- glViewport(0, 0, windowSize.width(), windowSize.height());
- glClearColor(1, 1, 1, 1);
- glClear(GL_COLOR_BUFFER_BIT);
-
- context->swapBuffers();
-
- // FIXME: It seems that when using double-buffering (and on some drivers single-buffering)
- // and XComposite window redirection, two swap buffers are required to force the pixmap
- // to update. This isn't a problem during animations, because swapBuffer is continuously
- // called. For non-animation situations we use this terrible hack until we can get to the
- // bottom of the issue.
- if (!toTextureMapperLayer(m_rootLayer.get())->descendantsOrSelfHaveRunningAnimations()) {
- context->swapBuffers();
- context->swapBuffers();
- }
-}
-
-void AcceleratedCompositingContext::setRootCompositingLayer(GraphicsLayer* graphicsLayer)
-{
- // Clearing everywhere when turning on or off the layer tree prevents us from flashing
- // old content before the first flush.
- clearEverywhere();
-
- if (!graphicsLayer) {
- stopAnyPendingLayerFlush();
-
- // Shrink the offscreen window to save memory while accelerated compositing is turned off.
- if (m_redirectedWindow)
- m_redirectedWindow->resize(IntSize(1, 1));
- m_rootLayer = nullptr;
- m_nonCompositedContentLayer = nullptr;
- m_textureMapper = nullptr;
- return;
- }
-
- // Add the accelerated layer tree hierarchy.
- initialize();
- if (!m_redirectedWindow)
- return;
-
- m_nonCompositedContentLayer->removeAllChildren();
- m_nonCompositedContentLayer->addChild(graphicsLayer);
-
- stopAnyPendingLayerFlush();
-
- // FIXME: Two flushes seem necessary to get the proper rendering in some cases. It's unclear
- // if this is a bug with the RedirectedXComposite window or with this class.
- m_needsExtraFlush = true;
- scheduleLayerFlush();
-
- m_layerFlushTimerCallbackId = g_timeout_add_full(GDK_PRIORITY_EVENTS, 500, reinterpret_cast<GSourceFunc>(layerFlushTimerFiredCallback), this, 0);
-}
-
-void AcceleratedCompositingContext::setNonCompositedContentsNeedDisplay(const IntRect& rect)
-{
- if (!m_rootLayer)
- return;
- if (rect.isEmpty()) {
- m_rootLayer->setNeedsDisplay();
- return;
- }
- m_nonCompositedContentLayer->setNeedsDisplayInRect(rect);
- scheduleLayerFlush();
-}
-
-void AcceleratedCompositingContext::resizeRootLayer(const IntSize& newSize)
-{
- if (!enabled())
- return;
-
- if (m_rootLayer->size() == newSize)
- return;
-
- m_redirectedWindow->resize(newSize);
- m_rootLayer->setSize(newSize);
-
- // If the newSize exposes new areas of the non-composited content a setNeedsDisplay is needed
- // for those newly exposed areas.
- FloatSize oldSize = m_nonCompositedContentLayer->size();
- m_nonCompositedContentLayer->setSize(newSize);
-
- if (newSize.width() > oldSize.width()) {
- float height = std::min(static_cast<float>(newSize.height()), oldSize.height());
- m_nonCompositedContentLayer->setNeedsDisplayInRect(FloatRect(oldSize.width(), 0, newSize.width() - oldSize.width(), height));
- }
-
- if (newSize.height() > oldSize.height())
- m_nonCompositedContentLayer->setNeedsDisplayInRect(FloatRect(0, oldSize.height(), newSize.width(), newSize.height() - oldSize.height()));
-
- m_nonCompositedContentLayer->setNeedsDisplayInRect(IntRect(IntPoint(), newSize));
- compositeLayersToContext(ForResize);
- scheduleLayerFlush();
-}
-
-void AcceleratedCompositingContext::scrollNonCompositedContents(const IntRect& scrollRect, const IntSize& scrollOffset)
-{
- m_nonCompositedContentLayer->setNeedsDisplayInRect(scrollRect);
- scheduleLayerFlush();
-}
-
-gboolean AcceleratedCompositingContext::layerFlushTimerFiredCallback(AcceleratedCompositingContext* context)
-{
- context->layerFlushTimerFired();
- return FALSE;
-}
-
-void AcceleratedCompositingContext::scheduleLayerFlush()
-{
- if (!enabled())
- return;
-
- if (m_layerFlushTimerCallbackId)
- return;
-
- // We use a GLib timer because otherwise GTK+ event handling during dragging can
- // starve WebCore timers, which have a lower priority.
- double nextFlush = max(gScheduleDelay - (currentTime() - m_lastFlushTime), 0.0);
- m_layerFlushTimerCallbackId = g_timeout_add_full(GDK_PRIORITY_EVENTS, nextFlush * 1000, reinterpret_cast<GSourceFunc>(layerFlushTimerFiredCallback), this, 0);
-}
-
-bool AcceleratedCompositingContext::flushPendingLayerChanges()
-{
- m_rootLayer->flushCompositingStateForThisLayerOnly();
- m_nonCompositedContentLayer->flushCompositingStateForThisLayerOnly();
- return core(m_webView)->mainFrame()->view()->flushCompositingStateIncludingSubframes();
-}
-
-void AcceleratedCompositingContext::flushAndRenderLayers()
-{
- if (!enabled())
- return;
-
- Frame* frame = core(m_webView)->mainFrame();
- if (!frame || !frame->contentRenderer() || !frame->view())
- return;
- frame->view()->updateLayoutAndStyleIfNeededRecursive();
-
- if (!enabled())
- return;
-
- GLContext* context = m_redirectedWindow->context();
- if (context && !context->makeContextCurrent())
- return;
-
- if (!flushPendingLayerChanges())
- return;
-
- m_lastFlushTime = currentTime();
- compositeLayersToContext();
-
- // If it's been a long time since we've actually painted, which means that events might
- // be starving the main loop, we should force a draw now. This seems to prevent display
- // lag on http://2012.beercamp.com.
- if (m_redrawPendingTime && currentTime() - m_redrawPendingTime > gScheduleDelay) {
- gtk_widget_queue_draw(GTK_WIDGET(m_webView));
- gdk_window_process_updates(gtk_widget_get_window(GTK_WIDGET(m_webView)), FALSE);
- } else if (!m_redrawPendingTime)
- m_redrawPendingTime = currentTime();
-}
-
-void AcceleratedCompositingContext::layerFlushTimerFired()
-{
- m_layerFlushTimerCallbackId = 0;
- flushAndRenderLayers();
-}
-
-void AcceleratedCompositingContext::notifyAnimationStarted(const GraphicsLayer*, double time)
-{
-
-}
-void AcceleratedCompositingContext::notifyFlushRequired(const GraphicsLayer*)
-{
-
-}
-
-void AcceleratedCompositingContext::paintContents(const GraphicsLayer*, GraphicsContext& context, GraphicsLayerPaintingPhase, const IntRect& rectToPaint)
-{
- context.save();
- context.clip(rectToPaint);
- core(m_webView)->mainFrame()->view()->paint(&context, rectToPaint);
- context.restore();
-}
-
-} // namespace WebKit
-
-#endif // USE(ACCELERATED_COMPOSITING) && USE(TEXTURE_MAPPER_GL)
diff --git a/Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp b/Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp
deleted file mode 100644
index c2fe809ed..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright (C) 2011 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-// Use this file to assert that various WebKit API enum values continue
-// matching WebCore defined enum values.
-
-#include "config.h"
-
-#include "DumpRenderTreeSupportGtk.h"
-#include "EditingBehaviorTypes.h"
-#include "ErrorsGtk.h"
-#include "FindOptions.h"
-#include "FrameLoaderTypes.h"
-#include "PasteboardHelper.h"
-#include "webkiterror.h"
-#include "webkitwebnavigationaction.h"
-#include "webkitwebsettings.h"
-#include "webkitwebview.h"
-#include <wtf/Assertions.h>
-
-#define COMPILE_ASSERT_MATCHING_ENUM(webkit_name, webcore_name) \
- COMPILE_ASSERT(int(webkit_name) == int(WebCore::webcore_name), mismatching_enums)
-
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_EDITING_BEHAVIOR_MAC, EditingMacBehavior);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_EDITING_BEHAVIOR_WINDOWS, EditingWindowsBehavior);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_EDITING_BEHAVIOR_UNIX, EditingUnixBehavior);
-
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_NAVIGATION_REASON_LINK_CLICKED, NavigationTypeLinkClicked);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_NAVIGATION_REASON_FORM_SUBMITTED, NavigationTypeFormSubmitted);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_NAVIGATION_REASON_BACK_FORWARD, NavigationTypeBackForward);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_NAVIGATION_REASON_RELOAD, NavigationTypeReload);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_NAVIGATION_REASON_FORM_RESUBMITTED, NavigationTypeFormResubmitted);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_NAVIGATION_REASON_OTHER, NavigationTypeOther);
-
-COMPILE_ASSERT_MATCHING_ENUM(WebKit::WebFindOptionsAtWordStarts, AtWordStarts);
-COMPILE_ASSERT_MATCHING_ENUM(WebKit::WebFindOptionsTreatMedialCapitalAsWordStart, TreatMedialCapitalAsWordStart);
-COMPILE_ASSERT_MATCHING_ENUM(WebKit::WebFindOptionsBackwards, Backwards);
-COMPILE_ASSERT_MATCHING_ENUM(WebKit::WebFindOptionsWrapAround, WrapAround);
-COMPILE_ASSERT_MATCHING_ENUM(WebKit::WebFindOptionsStartInSelection, StartInSelection);
-
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_VIEW_TARGET_INFO_HTML, PasteboardHelper::TargetTypeMarkup);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_VIEW_TARGET_INFO_TEXT, PasteboardHelper::TargetTypeText);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_VIEW_TARGET_INFO_IMAGE, PasteboardHelper::TargetTypeImage);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_VIEW_TARGET_INFO_URI_LIST, PasteboardHelper::TargetTypeURIList);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_WEB_VIEW_TARGET_INFO_NETSCAPE_URL, PasteboardHelper::TargetTypeNetscapeURL);
-
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_NETWORK_ERROR_FAILED, NetworkErrorFailed);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_NETWORK_ERROR_TRANSPORT, NetworkErrorTransport);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_NETWORK_ERROR_UNKNOWN_PROTOCOL, NetworkErrorUnknownProtocol);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_NETWORK_ERROR_CANCELLED, NetworkErrorCancelled);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_NETWORK_ERROR_FILE_DOES_NOT_EXIST, NetworkErrorFileDoesNotExist);
-
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_POLICY_ERROR_FAILED, PolicyErrorFailed);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_POLICY_ERROR_CANNOT_SHOW_MIME_TYPE, PolicyErrorCannotShowMimeType);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_POLICY_ERROR_CANNOT_SHOW_URL, PolicyErrorCannotShowURL);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_POLICY_ERROR_FRAME_LOAD_INTERRUPTED_BY_POLICY_CHANGE, PolicyErrorFrameLoadInterruptedByPolicyChange);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_POLICY_ERROR_CANNOT_USE_RESTRICTED_PORT, PolicyErrorCannotUseRestrictedPort);
-
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_PLUGIN_ERROR_FAILED, PluginErrorFailed);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_PLUGIN_ERROR_CANNOT_FIND_PLUGIN, PluginErrorCannotFindPlugin);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_PLUGIN_ERROR_CANNOT_LOAD_PLUGIN, PluginErrorCannotLoadPlugin);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_PLUGIN_ERROR_JAVA_UNAVAILABLE, PluginErrorJavaUnavailable);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_PLUGIN_ERROR_CONNECTION_CANCELLED, PluginErrorConnectionCancelled);
-COMPILE_ASSERT_MATCHING_ENUM(WEBKIT_PLUGIN_ERROR_WILL_HANDLE_LOAD, PluginErrorWillHandleLoad);
diff --git a/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
deleted file mode 100644
index 90e76363a..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
+++ /dev/null
@@ -1,1105 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 Holger Hans Peter Freyther
- * Copyright (C) 2007, 2008 Christian Dywan <christian@imendio.com>
- * Copyright (C) 2008 Nuanti Ltd.
- * Copyright (C) 2008 Alp Toker <alp@atoker.com>
- * Copyright (C) 2008 Gustavo Noronha Silva <gns@gnome.org>
- * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
- * Copyright (C) 2012 Igalia S. L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "ChromeClientGtk.h"
-
-#include "Chrome.h"
-#include "Console.h"
-#include "DumpRenderTreeSupportGtk.h"
-#include "Editor.h"
-#include "Element.h"
-#include "FileChooser.h"
-#include "FileIconLoader.h"
-#include "FileSystem.h"
-#include "FloatRect.h"
-#include "FocusController.h"
-#include "FrameLoadRequest.h"
-#include "FrameSelection.h"
-#include "FrameView.h"
-#include "GtkUtilities.h"
-#include "GtkVersioning.h"
-#include "HTMLNames.h"
-#include "HitTestResult.h"
-#include "Icon.h"
-#include "InspectorController.h"
-#include "IntRect.h"
-#include "KURL.h"
-#include "NavigationAction.h"
-#include "NotImplemented.h"
-#include "PopupMenuClient.h"
-#include "PopupMenuGtk.h"
-#include "RefPtrCairo.h"
-#include "SearchPopupMenuGtk.h"
-#include "SecurityOrigin.h"
-#include "WebKitDOMHTMLElementPrivate.h"
-#include "WindowFeatures.h"
-#include "webkitfilechooserrequestprivate.h"
-#include "webkitgeolocationpolicydecision.h"
-#include "webkitgeolocationpolicydecisionprivate.h"
-#include "webkitnetworkrequest.h"
-#include "webkitsecurityoriginprivate.h"
-#include "webkitviewportattributesprivate.h"
-#include "webkitwebframeprivate.h"
-#include "webkitwebview.h"
-#include "webkitwebviewprivate.h"
-#include "webkitwebwindowfeaturesprivate.h"
-#include <gdk/gdk.h>
-#include <gdk/gdkkeysyms.h>
-#include <glib.h>
-#include <glib/gi18n-lib.h>
-#include <gtk/gtk.h>
-#include <wtf/CurrentTime.h>
-#include <wtf/MathExtras.h>
-#include <wtf/text/CString.h>
-#include <wtf/text/WTFString.h>
-
-#ifdef GDK_WINDOWING_X11
-#define Font XFont
-#define Cursor XCursor
-#define Region XRegion
-#include <gdk/gdkx.h>
-#undef Font
-#undef Cursor
-#undef Region
-#undef None
-#undef Status
-#endif
-
-#if ENABLE(SQL_DATABASE)
-#include "DatabaseManager.h"
-#endif
-
-#if ENABLE(VIDEO) && USE(NATIVE_FULLSCREEN_VIDEO)
-#include "HTMLMediaElement.h"
-#endif
-
-#ifdef GDK_WINDOWING_X11
-#include "WidgetBackingStoreGtkX11.h"
-#endif
-#include "WidgetBackingStoreCairo.h"
-
-using namespace WebCore;
-
-namespace WebKit {
-
-static PassOwnPtr<WidgetBackingStore> createBackingStore(GtkWidget* widget, const IntSize& size)
-{
-#ifdef GDK_WINDOWING_X11
- GdkDisplay* display = gdk_display_manager_get_default_display(gdk_display_manager_get());
- if (GDK_IS_X11_DISPLAY(display))
- return WebCore::WidgetBackingStoreGtkX11::create(widget, size);
-#endif
- return WebCore::WidgetBackingStoreCairo::create(widget, size);
-}
-
-ChromeClient::ChromeClient(WebKitWebView* webView)
- : m_webView(webView)
- , m_adjustmentWatcher(webView)
- , m_closeSoonTimer(0)
- , m_displayTimer(this, &ChromeClient::paint)
- , m_forcePaint(false)
- , m_lastDisplayTime(0)
- , m_repaintSoonSourceId(0)
-{
- ASSERT(m_webView);
-}
-
-void ChromeClient::chromeDestroyed()
-{
- if (m_closeSoonTimer)
- g_source_remove(m_closeSoonTimer);
-
- if (m_repaintSoonSourceId)
- g_source_remove(m_repaintSoonSourceId);
-
- delete this;
-}
-
-FloatRect ChromeClient::windowRect()
-{
- GtkWidget* window = gtk_widget_get_toplevel(GTK_WIDGET(m_webView));
- if (widgetIsOnscreenToplevelWindow(window)) {
- gint left, top, width, height;
- gtk_window_get_position(GTK_WINDOW(window), &left, &top);
- gtk_window_get_size(GTK_WINDOW(window), &width, &height);
- return IntRect(left, top, width, height);
- }
- return FloatRect();
-}
-
-void ChromeClient::setWindowRect(const FloatRect& rect)
-{
- IntRect intrect = IntRect(rect);
- WebKitWebWindowFeatures* webWindowFeatures = webkit_web_view_get_window_features(m_webView);
-
- g_object_set(webWindowFeatures,
- "x", intrect.x(),
- "y", intrect.y(),
- "width", intrect.width(),
- "height", intrect.height(),
- NULL);
-
- gboolean autoResizeWindow;
- WebKitWebSettings* settings = webkit_web_view_get_settings(m_webView);
- g_object_get(settings, "auto-resize-window", &autoResizeWindow, NULL);
-
- if (!autoResizeWindow)
- return;
-
- GtkWidget* window = gtk_widget_get_toplevel(GTK_WIDGET(m_webView));
- if (widgetIsOnscreenToplevelWindow(window)) {
- gtk_window_move(GTK_WINDOW(window), intrect.x(), intrect.y());
- if (!intrect.isEmpty())
- gtk_window_resize(GTK_WINDOW(window), intrect.width(), intrect.height());
- }
-}
-
-static IntRect getWebViewRect(WebKitWebView* webView)
-{
- GtkAllocation allocation;
- gtk_widget_get_allocation(GTK_WIDGET(webView), &allocation);
- return IntRect(allocation.x, allocation.y, allocation.width, allocation.height);
-}
-
-FloatRect ChromeClient::pageRect()
-{
- return getWebViewRect(m_webView);
-}
-
-void ChromeClient::focus()
-{
- gtk_widget_grab_focus(GTK_WIDGET(m_webView));
-}
-
-void ChromeClient::unfocus()
-{
- GtkWidget* window = gtk_widget_get_toplevel(GTK_WIDGET(m_webView));
- if (widgetIsOnscreenToplevelWindow(window))
- gtk_window_set_focus(GTK_WINDOW(window), NULL);
-}
-
-Page* ChromeClient::createWindow(Frame* frame, const FrameLoadRequest& frameLoadRequest, const WindowFeatures& coreFeatures, const NavigationAction&)
-{
- WebKitWebView* webView = 0;
-
- g_signal_emit_by_name(m_webView, "create-web-view", kit(frame), &webView);
-
- if (!webView)
- return 0;
-
- GRefPtr<WebKitWebWindowFeatures> webWindowFeatures(adoptGRef(kitNew(coreFeatures)));
- g_object_set(webView, "window-features", webWindowFeatures.get(), NULL);
-
- return core(webView);
-}
-
-void ChromeClient::show()
-{
- webkit_web_view_notify_ready(m_webView);
-}
-
-bool ChromeClient::canRunModal()
-{
- notImplemented();
- return false;
-}
-
-void ChromeClient::runModal()
-{
- notImplemented();
-}
-
-void ChromeClient::setToolbarsVisible(bool visible)
-{
- WebKitWebWindowFeatures* webWindowFeatures = webkit_web_view_get_window_features(m_webView);
-
- g_object_set(webWindowFeatures, "toolbar-visible", visible, NULL);
-}
-
-bool ChromeClient::toolbarsVisible()
-{
- WebKitWebWindowFeatures* webWindowFeatures = webkit_web_view_get_window_features(m_webView);
- gboolean visible;
-
- g_object_get(webWindowFeatures, "toolbar-visible", &visible, NULL);
- return visible;
-}
-
-void ChromeClient::setStatusbarVisible(bool visible)
-{
- WebKitWebWindowFeatures* webWindowFeatures = webkit_web_view_get_window_features(m_webView);
-
- g_object_set(webWindowFeatures, "statusbar-visible", visible, NULL);
-}
-
-bool ChromeClient::statusbarVisible()
-{
- WebKitWebWindowFeatures* webWindowFeatures = webkit_web_view_get_window_features(m_webView);
- gboolean visible;
-
- g_object_get(webWindowFeatures, "statusbar-visible", &visible, NULL);
- return visible;
-}
-
-void ChromeClient::setScrollbarsVisible(bool visible)
-{
- WebKitWebWindowFeatures* webWindowFeatures = webkit_web_view_get_window_features(m_webView);
-
- g_object_set(webWindowFeatures, "scrollbar-visible", visible, NULL);
-}
-
-bool ChromeClient::scrollbarsVisible()
-{
- WebKitWebWindowFeatures* webWindowFeatures = webkit_web_view_get_window_features(m_webView);
- gboolean visible;
-
- g_object_get(webWindowFeatures, "scrollbar-visible", &visible, NULL);
- return visible;
-}
-
-void ChromeClient::setMenubarVisible(bool visible)
-{
- WebKitWebWindowFeatures* webWindowFeatures = webkit_web_view_get_window_features(m_webView);
-
- g_object_set(webWindowFeatures, "menubar-visible", visible, NULL);
-}
-
-bool ChromeClient::menubarVisible()
-{
- WebKitWebWindowFeatures* webWindowFeatures = webkit_web_view_get_window_features(m_webView);
- gboolean visible;
-
- g_object_get(webWindowFeatures, "menubar-visible", &visible, NULL);
- return visible;
-}
-
-void ChromeClient::setResizable(bool)
-{
- // Ignored for now
-}
-
-static gboolean emitCloseWebViewSignalLater(WebKitWebView* view)
-{
- gboolean isHandled;
- g_signal_emit_by_name(view, "close-web-view", &isHandled);
- return FALSE;
-}
-
-void ChromeClient::closeWindowSoon()
-{
- // We may not have a WebView as create-web-view can return NULL.
- if (!m_webView)
- return;
- if (m_closeSoonTimer) // Don't call close-web-view more than once.
- return;
-
- // We need to remove the parent WebView from WebViewSets here, before it actually
- // closes, to make sure that JavaScript code that executes before it closes
- // can't find it. Otherwise, window.open will select a closed WebView instead of
- // opening a new one <rdar://problem/3572585>.
- m_webView->priv->corePage->setGroupName("");
-
- // We also need to stop the load to prevent further parsing or JavaScript execution
- // after the window has torn down <rdar://problem/4161660>.
- webkit_web_view_stop_loading(m_webView);
-
- // Clients commonly destroy the web view during the close-web-view signal, but our caller
- // may need to send more signals to the web view. For instance, if this happened in the
- // onload handler, it will need to call FrameLoaderClient::dispatchDidHandleOnloadEvents.
- // Instead of firing the close-web-view signal now, fire it after the caller finishes.
- // This seems to match the Mac/Windows port behavior.
- m_closeSoonTimer = g_timeout_add(0, reinterpret_cast<GSourceFunc>(emitCloseWebViewSignalLater), m_webView);
-}
-
-bool ChromeClient::canTakeFocus(FocusDirection)
-{
- return gtk_widget_get_can_focus(GTK_WIDGET(m_webView));
-}
-
-void ChromeClient::takeFocus(FocusDirection)
-{
- unfocus();
-}
-
-void ChromeClient::focusedNodeChanged(Node*)
-{
-}
-
-void ChromeClient::focusedFrameChanged(Frame*)
-{
-}
-
-bool ChromeClient::canRunBeforeUnloadConfirmPanel()
-{
- return true;
-}
-
-bool ChromeClient::runBeforeUnloadConfirmPanel(const WTF::String& message, WebCore::Frame* frame)
-{
- return runJavaScriptConfirm(frame, message);
-}
-
-void ChromeClient::addMessageToConsole(WebCore::MessageSource source, WebCore::MessageLevel level, const WTF::String& message, unsigned lineNumber, unsigned columnNumber, const WTF::String& sourceId)
-{
- gboolean retval;
- g_signal_emit_by_name(m_webView, "console-message", message.utf8().data(), lineNumber, sourceId.utf8().data(), &retval);
-}
-
-void ChromeClient::runJavaScriptAlert(Frame* frame, const String& message)
-{
- gboolean retval;
- g_signal_emit_by_name(m_webView, "script-alert", kit(frame), message.utf8().data(), &retval);
-}
-
-bool ChromeClient::runJavaScriptConfirm(Frame* frame, const String& message)
-{
- gboolean retval;
- gboolean didConfirm;
- g_signal_emit_by_name(m_webView, "script-confirm", kit(frame), message.utf8().data(), &didConfirm, &retval);
- return didConfirm == TRUE;
-}
-
-bool ChromeClient::runJavaScriptPrompt(Frame* frame, const String& message, const String& defaultValue, String& result)
-{
- gboolean retval;
- gchar* value = 0;
- g_signal_emit_by_name(m_webView, "script-prompt", kit(frame), message.utf8().data(), defaultValue.utf8().data(), &value, &retval);
- if (value) {
- result = String::fromUTF8(value);
- g_free(value);
- return true;
- }
- return false;
-}
-
-void ChromeClient::setStatusbarText(const String& string)
-{
- CString stringMessage = string.utf8();
- g_signal_emit_by_name(m_webView, "status-bar-text-changed", stringMessage.data());
-}
-
-bool ChromeClient::shouldInterruptJavaScript()
-{
- notImplemented();
- return false;
-}
-
-KeyboardUIMode ChromeClient::keyboardUIMode()
-{
- bool tabsToLinks = true;
- if (DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled())
- tabsToLinks = DumpRenderTreeSupportGtk::linksIncludedInFocusChain();
-
- return tabsToLinks ? KeyboardAccessTabsToLinks : KeyboardAccessDefault;
-}
-
-IntRect ChromeClient::windowResizerRect() const
-{
- notImplemented();
- return IntRect();
-}
-
-static gboolean repaintEverythingSoonTimeout(ChromeClient* client)
-{
- client->paint(0);
- return FALSE;
-}
-
-static void clipOutOldWidgetArea(cairo_t* cr, const IntSize& oldSize, const IntSize& newSize)
-{
- cairo_move_to(cr, oldSize.width(), 0);
- cairo_line_to(cr, newSize.width(), 0);
- cairo_line_to(cr, newSize.width(), newSize.height());
- cairo_line_to(cr, 0, newSize.height());
- cairo_line_to(cr, 0, oldSize.height());
- cairo_line_to(cr, oldSize.width(), oldSize.height());
- cairo_close_path(cr);
- cairo_clip(cr);
-}
-
-static void clearEverywhereInBackingStore(WebKitWebView* webView, cairo_t* cr)
-{
- // The strategy here is to quickly draw white into this new canvas, so that
- // when a user quickly resizes the WebView in an environment that has opaque
- // resizing (like Gnome Shell), there are no drawing artifacts.
- if (!webView->priv->transparent) {
- cairo_set_source_rgb(cr, 1, 1, 1);
- cairo_set_operator(cr, CAIRO_OPERATOR_SOURCE);
- } else
- cairo_set_operator(cr, CAIRO_OPERATOR_CLEAR);
- cairo_paint(cr);
-}
-
-void ChromeClient::widgetSizeChanged(const IntSize& oldWidgetSize, IntSize newSize)
-{
-#if USE(ACCELERATED_COMPOSITING)
- AcceleratedCompositingContext* compositingContext = m_webView->priv->acceleratedCompositingContext.get();
- if (compositingContext->enabled()) {
- m_webView->priv->acceleratedCompositingContext->resizeRootLayer(newSize);
- return;
- }
-#endif
-
- // Grow the backing store by at least 1.5 times the current size. This prevents
- // lots of unnecessary allocations during an opaque resize.
- WidgetBackingStore* backingStore = m_webView->priv->backingStore.get();
- if (backingStore && oldWidgetSize == newSize)
- return;
-
- if (backingStore) {
- const IntSize& oldSize = backingStore->size();
- if (newSize.width() > oldSize.width())
- newSize.setWidth(std::max(newSize.width(), static_cast<int>(oldSize.width() * 1.5)));
- if (newSize.height() > oldSize.height())
- newSize.setHeight(std::max(newSize.height(), static_cast<int>(oldSize.height() * 1.5)));
- }
-
- // If we did not have a backing store before or if the backing store is growing, we need
- // to reallocate a new one and set it up so that we don't see artifacts while resizing.
- if (!backingStore
- || newSize.width() > backingStore->size().width()
- || newSize.height() > backingStore->size().height()) {
-
- OwnPtr<WidgetBackingStore> newBackingStore = createBackingStore(GTK_WIDGET(m_webView), newSize);
- RefPtr<cairo_t> cr = adoptRef(cairo_create(newBackingStore->cairoSurface()));
-
- clearEverywhereInBackingStore(m_webView, cr.get());
-
- // Now we copy the old backing store image over the new cleared surface to prevent
- // annoying flashing as the widget grows. We do the "real" paint in a timeout
- // since we don't want to block resizing too long.
- if (backingStore) {
- cairo_set_source_surface(cr.get(), backingStore->cairoSurface(), 0, 0);
- cairo_rectangle(cr.get(), 0, 0, backingStore->size().width(), backingStore->size().height());
- cairo_fill(cr.get());
- }
-
- m_webView->priv->backingStore = newBackingStore.release();
- backingStore = m_webView->priv->backingStore.get();
-
- } else if (oldWidgetSize.width() < newSize.width() || oldWidgetSize.height() < newSize.height()) {
- // The widget is growing, but we did not need to create a new backing store.
- // We should clear any old data outside of the old widget region.
- RefPtr<cairo_t> cr = adoptRef(cairo_create(backingStore->cairoSurface()));
- clipOutOldWidgetArea(cr.get(), oldWidgetSize, newSize);
- clearEverywhereInBackingStore(m_webView, cr.get());
- }
-
- // We need to force a redraw and ignore the framerate cap.
- m_lastDisplayTime = 0;
- m_dirtyRegion.unite(IntRect(IntPoint(), backingStore->size()));
-
- // WebCore timers by default have a lower priority which leads to more artifacts when opaque
- // resize is on, thus we use g_timeout_add here to force a higher timeout priority.
- if (!m_repaintSoonSourceId)
- m_repaintSoonSourceId = g_timeout_add(0, reinterpret_cast<GSourceFunc>(repaintEverythingSoonTimeout), this);
-}
-
-static void coalesceRectsIfPossible(const IntRect& clipRect, Vector<IntRect>& rects)
-{
- const unsigned int cRectThreshold = 10;
- const float cWastedSpaceThreshold = 0.75f;
- bool useUnionedRect = (rects.size() <= 1) || (rects.size() > cRectThreshold);
- if (!useUnionedRect) {
- // Attempt to guess whether or not we should use the unioned rect or the individual rects.
- // We do this by computing the percentage of "wasted space" in the union. If that wasted space
- // is too large, then we will do individual rect painting instead.
- float unionPixels = (clipRect.width() * clipRect.height());
- float singlePixels = 0;
- for (size_t i = 0; i < rects.size(); ++i)
- singlePixels += rects[i].width() * rects[i].height();
- float wastedSpace = 1 - (singlePixels / unionPixels);
- if (wastedSpace <= cWastedSpaceThreshold)
- useUnionedRect = true;
- }
-
- if (!useUnionedRect)
- return;
-
- rects.clear();
- rects.append(clipRect);
-}
-
-static void paintWebView(WebKitWebView* webView, Frame* frame, const Region& dirtyRegion)
-{
- if (!webView->priv->backingStore)
- return;
-
- Vector<IntRect> rects = dirtyRegion.rects();
- coalesceRectsIfPossible(dirtyRegion.bounds(), rects);
-
- RefPtr<cairo_t> backingStoreContext = adoptRef(cairo_create(webView->priv->backingStore->cairoSurface()));
- GraphicsContext gc(backingStoreContext.get());
- gc.applyDeviceScaleFactor(frame->page()->deviceScaleFactor());
- for (size_t i = 0; i < rects.size(); i++) {
- const IntRect& rect = rects[i];
-
- gc.save();
- gc.clip(rect);
- if (webView->priv->transparent)
- gc.clearRect(rect);
- frame->view()->paint(&gc, rect);
- gc.restore();
- }
-
- gc.save();
- gc.clip(dirtyRegion.bounds());
- frame->page()->inspectorController()->drawHighlight(gc);
- gc.restore();
-}
-
-void ChromeClient::performAllPendingScrolls()
-{
- if (!m_webView->priv->backingStore)
- return;
-
- // Scroll all pending scroll rects and invalidate those parts of the widget.
- for (size_t i = 0; i < m_rectsToScroll.size(); i++) {
- IntRect& scrollRect = m_rectsToScroll[i];
- m_webView->priv->backingStore->scroll(scrollRect, m_scrollOffsets[i]);
- gtk_widget_queue_draw_area(GTK_WIDGET(m_webView), scrollRect.x(), scrollRect.y(), scrollRect.width(), scrollRect.height());
- }
-
- m_rectsToScroll.clear();
- m_scrollOffsets.clear();
-}
-
-void ChromeClient::paint(WebCore::Timer<ChromeClient>*)
-{
- static const double minimumFrameInterval = 1.0 / 60.0; // No more than 60 frames a second.
- double timeSinceLastDisplay = currentTime() - m_lastDisplayTime;
- double timeUntilNextDisplay = minimumFrameInterval - timeSinceLastDisplay;
-
- if (timeUntilNextDisplay > 0 && !m_forcePaint) {
- m_displayTimer.startOneShot(timeUntilNextDisplay);
- return;
- }
-
- Frame* frame = core(m_webView)->mainFrame();
- if (!frame || !frame->contentRenderer() || !frame->view())
- return;
-
- frame->view()->updateLayoutAndStyleIfNeededRecursive();
- performAllPendingScrolls();
- paintWebView(m_webView, frame, m_dirtyRegion);
-
- HashSet<GtkWidget*> children = m_webView->priv->children;
- HashSet<GtkWidget*>::const_iterator end = children.end();
- for (HashSet<GtkWidget*>::const_iterator current = children.begin(); current != end; ++current) {
- if (static_cast<GtkAllocation*>(g_object_get_data(G_OBJECT(*current), "delayed-allocation"))) {
- gtk_widget_queue_resize_no_redraw(GTK_WIDGET(m_webView));
- break;
- }
- }
-
- const IntRect& rect = m_dirtyRegion.bounds();
- gtk_widget_queue_draw_area(GTK_WIDGET(m_webView), rect.x(), rect.y(), rect.width(), rect.height());
-
- m_dirtyRegion = Region();
- m_lastDisplayTime = currentTime();
- m_repaintSoonSourceId = 0;
-
- // We update the IM context window location here, because we want it to be
- // synced with cursor movement. For instance, a text field can move without
- // the selection changing.
- Frame* focusedFrame = core(m_webView)->focusController()->focusedOrMainFrame();
- if (focusedFrame && focusedFrame->editor().canEdit())
- m_webView->priv->imFilter.setCursorRect(frame->selection()->absoluteCaretBounds());
-}
-
-void ChromeClient::forcePaint()
-{
-#if USE(ACCELERATED_COMPOSITING)
- if (m_webView->priv->acceleratedCompositingContext->enabled())
- return;
-#endif
-
- m_forcePaint = true;
- paint(0);
- m_forcePaint = false;
-}
-
-void ChromeClient::invalidateRootView(const IntRect&, bool immediate)
-{
-}
-
-void ChromeClient::invalidateContentsAndRootView(const IntRect& updateRect, bool immediate)
-{
-#if USE(ACCELERATED_COMPOSITING)
- AcceleratedCompositingContext* acContext = m_webView->priv->acceleratedCompositingContext.get();
- if (acContext->enabled()) {
- acContext->setNonCompositedContentsNeedDisplay(updateRect);
- return;
- }
-#endif
-
- if (updateRect.isEmpty())
- return;
- m_dirtyRegion.unite(updateRect);
- m_displayTimer.startOneShot(0);
-}
-
-void ChromeClient::invalidateContentsForSlowScroll(const IntRect& updateRect, bool immediate)
-{
- m_adjustmentWatcher.updateAdjustmentsFromScrollbarsLater();
-
-#if USE(ACCELERATED_COMPOSITING)
- AcceleratedCompositingContext* acContext = m_webView->priv->acceleratedCompositingContext.get();
- if (acContext->enabled()) {
- acContext->setNonCompositedContentsNeedDisplay(updateRect);
- return;
- }
-#endif
-
- invalidateContentsAndRootView(updateRect, immediate);
-}
-
-void ChromeClient::scroll(const IntSize& delta, const IntRect& rectToScroll, const IntRect& clipRect)
-{
- m_adjustmentWatcher.updateAdjustmentsFromScrollbarsLater();
-
-#if USE(ACCELERATED_COMPOSITING)
- AcceleratedCompositingContext* compositingContext = m_webView->priv->acceleratedCompositingContext.get();
- if (compositingContext->enabled()) {
- ASSERT(!rectToScroll.isEmpty());
- ASSERT(delta.width() || delta.height());
-
- compositingContext->scrollNonCompositedContents(rectToScroll, delta);
- return;
- }
-#endif
-
- m_rectsToScroll.append(rectToScroll);
- m_scrollOffsets.append(delta);
-
- // The code to calculate the scroll repaint region is originally from WebKit2.
- // Get the part of the dirty region that is in the scroll rect.
- Region dirtyRegionInScrollRect = intersect(rectToScroll, m_dirtyRegion);
- if (!dirtyRegionInScrollRect.isEmpty()) {
- // There are parts of the dirty region that are inside the scroll rect.
- // We need to subtract them from the region, move them and re-add them.
- m_dirtyRegion.subtract(rectToScroll);
-
- // Move the dirty parts.
- Region movedDirtyRegionInScrollRect = intersect(translate(dirtyRegionInScrollRect, delta), rectToScroll);
-
- // And add them back.
- m_dirtyRegion.unite(movedDirtyRegionInScrollRect);
- }
-
- // Compute the scroll repaint region. We ensure that we are not subtracting areas
- // that we've scrolled from outside the viewport from the repaint region.
- IntRect onScreenScrollRect = rectToScroll;
- onScreenScrollRect.intersect(IntRect(IntPoint(), enclosingIntRect(pageRect()).size()));
- Region scrollRepaintRegion = subtract(rectToScroll, translate(onScreenScrollRect, delta));
-
- m_dirtyRegion.unite(scrollRepaintRegion);
- m_displayTimer.startOneShot(0);
-}
-
-IntRect ChromeClient::rootViewToScreen(const IntRect& rect) const
-{
- return IntRect(convertWidgetPointToScreenPoint(GTK_WIDGET(m_webView), rect.location()), rect.size());
-}
-
-IntPoint ChromeClient::screenToRootView(const IntPoint& point) const
-{
- IntPoint widgetPositionOnScreen = convertWidgetPointToScreenPoint(GTK_WIDGET(m_webView), IntPoint());
- IntPoint result(point);
- result.move(-widgetPositionOnScreen.x(), -widgetPositionOnScreen.y());
- return result;
-}
-
-PlatformPageClient ChromeClient::platformPageClient() const
-{
- return GTK_WIDGET(m_webView);
-}
-
-void ChromeClient::contentsSizeChanged(Frame* frame, const IntSize& size) const
-{
- if (m_adjustmentWatcher.scrollbarsDisabled())
- return;
-
- // We need to queue a resize request only if the size changed,
- // otherwise we get into an infinite loop!
- GtkWidget* widget = GTK_WIDGET(m_webView);
- GtkRequisition requisition;
- gtk_widget_get_preferred_size(widget, &requisition, 0);
- if (gtk_widget_get_realized(widget)
- && (requisition.height != size.height()
- || requisition.width != size.width()))
- gtk_widget_queue_resize_no_redraw(widget);
-
- // If this was a main frame size change, update the scrollbars.
- if (frame != frame->page()->mainFrame())
- return;
- m_adjustmentWatcher.updateAdjustmentsFromScrollbarsLater();
-}
-
-void ChromeClient::scrollbarsModeDidChange() const
-{
- WebKitWebFrame* webFrame = webkit_web_view_get_main_frame(m_webView);
- if (!webFrame)
- return;
-
- g_object_notify(G_OBJECT(webFrame), "horizontal-scrollbar-policy");
- g_object_notify(G_OBJECT(webFrame), "vertical-scrollbar-policy");
-
- gboolean isHandled;
- g_signal_emit_by_name(webFrame, "scrollbars-policy-changed", &isHandled);
-
- if (isHandled)
- return;
-
- GtkWidget* parent = gtk_widget_get_parent(GTK_WIDGET(m_webView));
- if (!parent || !GTK_IS_SCROLLED_WINDOW(parent))
- return;
-
- GtkPolicyType horizontalPolicy = webkit_web_frame_get_horizontal_scrollbar_policy(webFrame);
- GtkPolicyType verticalPolicy = webkit_web_frame_get_vertical_scrollbar_policy(webFrame);
-
- // ScrolledWindow doesn't like to display only part of a widget if
- // the scrollbars are completely disabled; We have a disparity
- // here on what the policy requested by the web app is and what we
- // can represent; the idea is not to show scrollbars, only.
- if (horizontalPolicy == GTK_POLICY_NEVER)
- horizontalPolicy = GTK_POLICY_AUTOMATIC;
-
- if (verticalPolicy == GTK_POLICY_NEVER)
- verticalPolicy = GTK_POLICY_AUTOMATIC;
-
- gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(parent),
- horizontalPolicy, verticalPolicy);
-}
-
-void ChromeClient::mouseDidMoveOverElement(const HitTestResult& hit, unsigned modifierFlags)
-{
- // check if the element is a link...
- bool isLink = hit.isLiveLink();
- if (isLink) {
- KURL url = hit.absoluteLinkURL();
- if (!url.isEmpty() && url != m_hoveredLinkURL) {
- TextDirection dir;
- CString titleString = hit.title(dir).utf8();
- CString urlString = url.string().utf8();
- g_signal_emit_by_name(m_webView, "hovering-over-link", titleString.data(), urlString.data());
- m_hoveredLinkURL = url;
- }
- } else if (!isLink && !m_hoveredLinkURL.isEmpty()) {
- g_signal_emit_by_name(m_webView, "hovering-over-link", 0, 0);
- m_hoveredLinkURL = KURL();
- }
-
- if (Node* node = hit.innerNonSharedNode()) {
- Frame* frame = node->document()->frame();
- FrameView* view = frame ? frame->view() : 0;
- m_webView->priv->tooltipArea = view ? view->contentsToWindow(node->pixelSnappedBoundingBox()) : IntRect();
- } else
- m_webView->priv->tooltipArea = IntRect();
-}
-
-void ChromeClient::setToolTip(const String& toolTip, TextDirection)
-{
- webkit_web_view_set_tooltip_text(m_webView, toolTip.utf8().data());
-}
-
-void ChromeClient::print(Frame* frame)
-{
- WebKitWebFrame* webFrame = kit(frame);
- gboolean isHandled = false;
- g_signal_emit_by_name(m_webView, "print-requested", webFrame, &isHandled);
-
- if (isHandled)
- return;
-
- webkit_web_frame_print(webFrame);
-}
-
-#if ENABLE(SQL_DATABASE)
-void ChromeClient::exceededDatabaseQuota(Frame* frame, const String& databaseName, DatabaseDetails)
-{
- guint64 defaultQuota = webkit_get_default_web_database_quota();
- DatabaseManager::manager().setQuota(frame->document()->securityOrigin(), defaultQuota);
-
- WebKitWebFrame* webFrame = kit(frame);
- WebKitSecurityOrigin* origin = webkit_web_frame_get_security_origin(webFrame);
- WebKitWebDatabase* webDatabase = webkit_security_origin_get_web_database(origin, databaseName.utf8().data());
- g_signal_emit_by_name(m_webView, "database-quota-exceeded", webFrame, webDatabase);
-}
-#endif
-
-void ChromeClient::reachedMaxAppCacheSize(int64_t spaceNeeded)
-{
- // FIXME: Free some space.
- notImplemented();
-}
-
-void ChromeClient::reachedApplicationCacheOriginQuota(SecurityOrigin*, int64_t)
-{
- notImplemented();
-}
-
-void ChromeClient::runOpenPanel(Frame*, PassRefPtr<FileChooser> prpFileChooser)
-{
- GRefPtr<WebKitFileChooserRequest> request = adoptGRef(webkit_file_chooser_request_create(prpFileChooser));
- webkitWebViewRunFileChooserRequest(m_webView, request.get());
-}
-
-void ChromeClient::loadIconForFiles(const Vector<WTF::String>& filenames, WebCore::FileIconLoader* loader)
-{
- loader->notifyFinished(Icon::createIconForFiles(filenames));
-}
-
-void ChromeClient::dispatchViewportPropertiesDidChange(const ViewportArguments& arguments) const
-{
- // Recompute the viewport attributes making it valid.
- webkitViewportAttributesRecompute(webkit_web_view_get_viewport_attributes(m_webView));
-}
-
-void ChromeClient::setCursor(const Cursor& cursor)
-{
- // [GTK] Widget::setCursor() gets called frequently
- // http://bugs.webkit.org/show_bug.cgi?id=16388
- // Setting the cursor may be an expensive operation in some backends,
- // so don't re-set the cursor if it's already set to the target value.
- GdkWindow* window = gtk_widget_get_window(platformPageClient());
- if (!window)
- return;
-
- GdkCursor* currentCursor = gdk_window_get_cursor(window);
- GdkCursor* newCursor = cursor.platformCursor().get();
- if (currentCursor != newCursor)
- gdk_window_set_cursor(window, newCursor);
-}
-
-void ChromeClient::setCursorHiddenUntilMouseMoves(bool)
-{
- notImplemented();
-}
-
-bool ChromeClient::selectItemWritingDirectionIsNatural()
-{
- return false;
-}
-
-bool ChromeClient::selectItemAlignmentFollowsMenuWritingDirection()
-{
- return true;
-}
-
-bool ChromeClient::hasOpenedPopup() const
-{
- notImplemented();
- return false;
-}
-
-PassRefPtr<WebCore::PopupMenu> ChromeClient::createPopupMenu(WebCore::PopupMenuClient* client) const
-{
- return adoptRef(new PopupMenuGtk(client));
-}
-
-PassRefPtr<WebCore::SearchPopupMenu> ChromeClient::createSearchPopupMenu(WebCore::PopupMenuClient* client) const
-{
- return adoptRef(new SearchPopupMenuGtk(client));
-}
-
-#if ENABLE(VIDEO) && USE(NATIVE_FULLSCREEN_VIDEO)
-bool ChromeClient::supportsFullscreenForNode(const Node* node)
-{
- return node->hasTagName(HTMLNames::videoTag);
-}
-
-void ChromeClient::enterFullscreenForNode(Node* node)
-{
- if (!node)
- return;
-
- HTMLElement* element = static_cast<HTMLElement*>(node);
- if (element && element->isMediaElement()) {
- HTMLMediaElement* mediaElement = toHTMLMediaElement(element);
- if (mediaElement->player() && mediaElement->player()->canEnterFullscreen())
- mediaElement->player()->enterFullscreen();
- }
-}
-
-void ChromeClient::exitFullscreenForNode(Node* node)
-{
- if (!node)
- return;
-
- HTMLElement* element = static_cast<HTMLElement*>(node);
- if (element && element->isMediaElement()) {
- HTMLMediaElement* mediaElement = toHTMLMediaElement(element);
- if (mediaElement->player())
- mediaElement->player()->exitFullscreen();
- }
-}
-#endif
-
-#if ENABLE(FULLSCREEN_API)
-bool ChromeClient::supportsFullScreenForElement(const WebCore::Element* element, bool withKeyboard)
-{
- return !withKeyboard;
-}
-
-static gboolean onFullscreenGtkKeyPressEvent(GtkWidget* widget, GdkEventKey* event, ChromeClient* chromeClient)
-{
- switch (event->keyval) {
- case GDK_KEY_Escape:
- case GDK_KEY_f:
- case GDK_KEY_F:
- chromeClient->cancelFullScreen();
- return TRUE;
- default:
- break;
- }
-
- return FALSE;
-}
-
-void ChromeClient::cancelFullScreen()
-{
- ASSERT(m_fullScreenElement);
- m_fullScreenElement->document()->webkitCancelFullScreen();
-}
-
-void ChromeClient::enterFullScreenForElement(WebCore::Element* element)
-{
- gboolean returnValue;
- GRefPtr<WebKitDOMHTMLElement> kitElement(adoptGRef(kit(reinterpret_cast<HTMLElement*>(element))));
- g_signal_emit_by_name(m_webView, "entering-fullscreen", kitElement.get(), &returnValue);
- if (returnValue)
- return;
-
-#if ENABLE(VIDEO) && USE(NATIVE_FULLSCREEN_VIDEO)
- if (element && element->isMediaElement()) {
- HTMLMediaElement* mediaElement = toHTMLMediaElement(element);
- if (mediaElement->player() && mediaElement->player()->canEnterFullscreen()) {
- element->document()->webkitWillEnterFullScreenForElement(element);
- mediaElement->player()->enterFullscreen();
- m_fullScreenElement = element;
- element->document()->webkitDidEnterFullScreenForElement(element);
- }
- return;
- }
-#endif
-
- GtkWidget* window = gtk_widget_get_toplevel(GTK_WIDGET(m_webView));
- if (!widgetIsOnscreenToplevelWindow(window))
- return;
-
- g_signal_connect(window, "key-press-event", G_CALLBACK(onFullscreenGtkKeyPressEvent), this);
-
- m_fullScreenElement = element;
-
- element->document()->webkitWillEnterFullScreenForElement(element);
- m_adjustmentWatcher.disableAllScrollbars();
- gtk_window_fullscreen(GTK_WINDOW(window));
- element->document()->webkitDidEnterFullScreenForElement(element);
-}
-
-void ChromeClient::exitFullScreenForElement(WebCore::Element*)
-{
- // The element passed into this function is not reliable, i.e. it could
- // be null. In addition the parameter may be disappearing in the future.
- // So we use the reference to the element we saved above.
- ASSERT(m_fullScreenElement);
-
- gboolean returnValue;
- GRefPtr<WebKitDOMHTMLElement> kitElement(adoptGRef(kit(reinterpret_cast<HTMLElement*>(m_fullScreenElement.get()))));
- g_signal_emit_by_name(m_webView, "leaving-fullscreen", kitElement.get(), &returnValue);
- if (returnValue)
- return;
-
-#if ENABLE(VIDEO) && USE(NATIVE_FULLSCREEN_VIDEO)
- if (m_fullScreenElement && m_fullScreenElement->isMediaElement()) {
- m_fullScreenElement->document()->webkitWillExitFullScreenForElement(m_fullScreenElement.get());
- HTMLMediaElement* mediaElement = toHTMLMediaElement(m_fullScreenElement.get());
- if (mediaElement->player()) {
- mediaElement->player()->exitFullscreen();
- m_fullScreenElement->document()->webkitDidExitFullScreenForElement(m_fullScreenElement.get());
- m_fullScreenElement.clear();
- }
- return;
- }
-#endif
-
- GtkWidget* window = gtk_widget_get_toplevel(GTK_WIDGET(m_webView));
- ASSERT(widgetIsOnscreenToplevelWindow(window));
- g_signal_handlers_disconnect_by_func(window, reinterpret_cast<void*>(onFullscreenGtkKeyPressEvent), this);
-
- m_fullScreenElement->document()->webkitWillExitFullScreenForElement(m_fullScreenElement.get());
- gtk_window_unfullscreen(GTK_WINDOW(window));
- m_adjustmentWatcher.enableAllScrollbars();
- m_fullScreenElement->document()->webkitDidExitFullScreenForElement(m_fullScreenElement.get());
- m_fullScreenElement.clear();
-}
-#endif
-
-#if USE(ACCELERATED_COMPOSITING)
-void ChromeClient::attachRootGraphicsLayer(Frame* frame, GraphicsLayer* rootLayer)
-{
- AcceleratedCompositingContext* context = m_webView->priv->acceleratedCompositingContext.get();
- bool turningOffCompositing = !rootLayer && context->enabled();
- bool turningOnCompositing = rootLayer && !context->enabled();
-
- context->setRootCompositingLayer(rootLayer);
-
- if (turningOnCompositing) {
- m_displayTimer.stop();
- m_webView->priv->backingStore = createBackingStore(GTK_WIDGET(m_webView), IntSize(1, 1));
- }
-
- if (turningOffCompositing) {
- m_webView->priv->backingStore = createBackingStore(GTK_WIDGET(m_webView), getWebViewRect(m_webView).size());
- RefPtr<cairo_t> cr = adoptRef(cairo_create(m_webView->priv->backingStore->cairoSurface()));
- clearEverywhereInBackingStore(m_webView, cr.get());
- }
-}
-
-void ChromeClient::setNeedsOneShotDrawingSynchronization()
-{
- m_webView->priv->acceleratedCompositingContext->scheduleLayerFlush();
-}
-
-void ChromeClient::scheduleCompositingLayerFlush()
-{
- m_webView->priv->acceleratedCompositingContext->scheduleLayerFlush();
-}
-
-ChromeClient::CompositingTriggerFlags ChromeClient::allowedCompositingTriggers() const
-{
- if (!platformPageClient())
- return false;
-#if USE(CLUTTER)
- // Currently, we only support CSS 3D Transforms.
- return ThreeDTransformTrigger | AnimationTrigger;
-#else
- return AllTriggers;
-#endif
-}
-#endif
-
-}
diff --git a/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h
deleted file mode 100644
index 38fc1466f..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h
+++ /dev/null
@@ -1,187 +0,0 @@
-/*
- * Copyright (C) 2007 Holger Hans Peter Freyther
- * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef ChromeClientGtk_h
-#define ChromeClientGtk_h
-
-#include "ChromeClient.h"
-#include "GtkAdjustmentWatcher.h"
-#include "IntRect.h"
-#include "IntSize.h"
-#include "KURL.h"
-#include "PopupMenu.h"
-#include "Region.h"
-#include "SearchPopupMenu.h"
-#include "Timer.h"
-
-using namespace WebCore;
-typedef struct _WebKitWebView WebKitWebView;
-
-namespace WebCore {
-class PopupMenuClient;
-}
-
-namespace WebKit {
-
- class ChromeClient : public WebCore::ChromeClient {
- public:
- ChromeClient(WebKitWebView*);
- GtkAdjustmentWatcher* adjustmentWatcher() { return &m_adjustmentWatcher; }
-
- virtual void chromeDestroyed();
-
- virtual void setWindowRect(const FloatRect&);
- virtual FloatRect windowRect();
-
- virtual FloatRect pageRect();
-
- virtual void focus();
- virtual void unfocus();
-
- virtual bool canTakeFocus(FocusDirection);
- virtual void takeFocus(FocusDirection);
-
- virtual void focusedNodeChanged(Node*);
- virtual void focusedFrameChanged(Frame*);
-
- virtual Page* createWindow(Frame*, const FrameLoadRequest&, const WindowFeatures&, const NavigationAction&);
- virtual void show();
-
- virtual bool canRunModal();
- virtual void runModal();
-
- virtual void setToolbarsVisible(bool);
- virtual bool toolbarsVisible();
-
- virtual void setStatusbarVisible(bool);
- virtual bool statusbarVisible();
-
- virtual void setScrollbarsVisible(bool);
- virtual bool scrollbarsVisible();
-
- virtual void setMenubarVisible(bool);
- virtual bool menubarVisible();
-
- virtual void setResizable(bool);
-
- virtual void addMessageToConsole(MessageSource, MessageLevel, const WTF::String& message, unsigned lineNumber, unsigned columnNumber, const WTF::String& sourceID);
-
- virtual bool canRunBeforeUnloadConfirmPanel();
- virtual bool runBeforeUnloadConfirmPanel(const WTF::String& message, Frame* frame);
-
- virtual void closeWindowSoon();
-
- virtual void runJavaScriptAlert(Frame*, const WTF::String&);
- virtual bool runJavaScriptConfirm(Frame*, const WTF::String&);
- virtual bool runJavaScriptPrompt(Frame*, const WTF::String& message, const WTF::String& defaultValue, WTF::String& result);
- virtual void setStatusbarText(const WTF::String&);
- virtual bool shouldInterruptJavaScript();
- virtual KeyboardUIMode keyboardUIMode();
-
- virtual IntRect windowResizerRect() const;
- virtual void invalidateRootView(const IntRect&, bool);
- virtual void invalidateContentsAndRootView(const IntRect&, bool);
- virtual void invalidateContentsForSlowScroll(const IntRect&, bool);
- virtual void scroll(const IntSize& scrollDelta, const IntRect& rectToScroll, const IntRect& clipRect);
-
- virtual IntPoint screenToRootView(const IntPoint&) const;
- virtual IntRect rootViewToScreen(const IntRect&) const;
- virtual PlatformPageClient platformPageClient() const;
- virtual void contentsSizeChanged(Frame*, const IntSize&) const;
-
- virtual void scrollbarsModeDidChange() const;
- virtual void mouseDidMoveOverElement(const HitTestResult&, unsigned modifierFlags);
-
- virtual void setToolTip(const WTF::String&, TextDirection);
-
- virtual void dispatchViewportPropertiesDidChange(const ViewportArguments&) const;
-
- virtual void print(Frame*);
-#if ENABLE(SQL_DATABASE)
- virtual void exceededDatabaseQuota(Frame*, const WTF::String&, DatabaseDetails);
-#endif
- virtual void reachedMaxAppCacheSize(int64_t spaceNeeded);
- virtual void reachedApplicationCacheOriginQuota(SecurityOrigin*, int64_t totalSpaceNeeded);
- virtual void runOpenPanel(Frame*, PassRefPtr<FileChooser>);
- virtual void loadIconForFiles(const Vector<WTF::String>&, FileIconLoader*);
-
- virtual void formStateDidChange(const Node*) { }
-
- virtual void setCursor(const Cursor&);
- virtual void setCursorHiddenUntilMouseMoves(bool);
-
- virtual void scrollRectIntoView(const IntRect&) const { }
-
- virtual bool selectItemWritingDirectionIsNatural();
- virtual bool selectItemAlignmentFollowsMenuWritingDirection();
- virtual bool hasOpenedPopup() const;
- virtual PassRefPtr<PopupMenu> createPopupMenu(PopupMenuClient*) const;
- virtual PassRefPtr<SearchPopupMenu> createSearchPopupMenu(PopupMenuClient*) const;
-#if ENABLE(VIDEO) && USE(NATIVE_FULLSCREEN_VIDEO)
- virtual bool supportsFullscreenForNode(const Node*);
- virtual void enterFullscreenForNode(Node*);
- virtual void exitFullscreenForNode(Node*);
-#endif
-
-#if ENABLE(FULLSCREEN_API)
- virtual bool supportsFullScreenForElement(const Element*, bool withKeyboard);
- virtual void enterFullScreenForElement(Element*);
- virtual void exitFullScreenForElement(Element*);
- void cancelFullScreen();
-#endif
-
- virtual bool shouldRubberBandInDirection(ScrollDirection) const { return true; }
- virtual void numWheelEventHandlersChanged(unsigned) { }
-
-#if USE(ACCELERATED_COMPOSITING)
- virtual void attachRootGraphicsLayer(Frame*, GraphicsLayer*);
- virtual void setNeedsOneShotDrawingSynchronization();
- virtual void scheduleCompositingLayerFlush();
- virtual CompositingTriggerFlags allowedCompositingTriggers() const;
-#endif
-
- void performAllPendingScrolls();
- void paint(Timer<ChromeClient>*);
- void forcePaint();
- void widgetSizeChanged(const IntSize& oldWidgetSize, IntSize newSize);
-
- WebKitWebView* webView() { return m_webView; }
-
- private:
- WebKitWebView* m_webView;
- GtkAdjustmentWatcher m_adjustmentWatcher;
- KURL m_hoveredLinkURL;
- unsigned int m_closeSoonTimer;
-
- Timer <ChromeClient> m_displayTimer;
- bool m_forcePaint;
- Region m_dirtyRegion;
- Vector<IntRect> m_rectsToScroll;
- Vector<IntSize> m_scrollOffsets;
- double m_lastDisplayTime;
- unsigned int m_repaintSoonSourceId;
-
-#if ENABLE(FULLSCREEN_API)
- RefPtr<Element> m_fullScreenElement;
-#endif
- };
-}
-
-#endif // ChromeClient_h
diff --git a/Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp
deleted file mode 100644
index e0c3ed9d1..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * Copyright (C) 2008 Nuanti Ltd.
- * Copyright (C) 2009 Gustavo Noronha Silva <gns@gnome.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-
-#if ENABLE(CONTEXT_MENUS)
-
-#include "ContextMenuClientGtk.h"
-
-#include "ContextMenu.h"
-#include "ContextMenuController.h"
-#include "HitTestResult.h"
-#include "KURL.h"
-#include "LocalizedStrings.h"
-#include "NotImplemented.h"
-#include "Page.h"
-#include "webkitwebviewprivate.h"
-#include <glib-object.h>
-#include <glib/gi18n-lib.h>
-#include <gtk/gtk.h>
-#include <wtf/text/CString.h>
-
-using namespace WebCore;
-
-namespace WebKit {
-
-ContextMenuClient::ContextMenuClient(WebKitWebView *webView)
- : m_webView(webView)
-{
-}
-
-void ContextMenuClient::contextMenuDestroyed()
-{
- delete this;
-}
-
-static GtkWidget* inputMethodsMenuItem (WebKitWebView* webView)
-{
- if (gtk_major_version > 2 || (gtk_major_version == 2 && gtk_minor_version >= 10)) {
- GtkSettings* settings = webView ? gtk_widget_get_settings(GTK_WIDGET(webView)) : gtk_settings_get_default();
-
- gboolean showMenu = TRUE;
- if (settings)
- g_object_get(settings, "gtk-show-input-method-menu", &showMenu, NULL);
- if (!showMenu)
- return 0;
- }
-
- WebKitWebViewPrivate* priv = webView->priv;
- ContextMenu imContextMenu;
- gtk_im_multicontext_append_menuitems(GTK_IM_MULTICONTEXT(priv->imFilter.context()), GTK_MENU_SHELL(imContextMenu.platformDescription()));
-
- ContextMenuItem menuItem(ActionType, ContextMenuItemTagInputMethods, contextMenuItemTagInputMethods(), &imContextMenu);
- imContextMenu.releasePlatformDescription();
-
- return GTK_WIDGET(menuItem.releasePlatformDescription());
-}
-
-static int getUnicodeMenuItemPosition(GtkMenu* menu)
-{
- GOwnPtr<GList> items(gtk_container_get_children(GTK_CONTAINER(menu)));
- int unicodeMenuItemPosition = -1;
- GList* iter;
- int i = 0;
- for (iter = items.get(), i = 0; iter; iter = g_list_next(iter), ++i) {
- GtkMenuItem* item = GTK_MENU_ITEM(iter->data);
- if (GTK_IS_SEPARATOR_MENU_ITEM(item))
- continue;
- if (String::fromUTF8(gtk_menu_item_get_label(item)) == contextMenuItemTagUnicode()) {
- unicodeMenuItemPosition = i;
- break;
- }
- }
- return unicodeMenuItemPosition;
-}
-
-PlatformMenuDescription ContextMenuClient::getCustomMenuFromDefaultItems(ContextMenu* menu)
-{
- GtkMenu* gtkmenu = menu->releasePlatformDescription();
-
- WebKitWebView* webView = m_webView;
- HitTestResult result = core(webView)->contextMenuController()->hitTestResult();
-
- if (result.isContentEditable()) {
- GtkWidget* imContextMenu = inputMethodsMenuItem(webView);
- if (!imContextMenu)
- return gtkmenu;
-
- // Place the im context menu item right before the unicode menu item
- // if it's present.
- int unicodeMenuItemPosition = getUnicodeMenuItemPosition(gtkmenu);
- if (unicodeMenuItemPosition == -1) {
- GtkWidget* separator = gtk_separator_menu_item_new();
- gtk_menu_shell_append(GTK_MENU_SHELL(gtkmenu), separator);
- gtk_widget_show(separator);
- }
-
- gtk_menu_shell_insert(GTK_MENU_SHELL(gtkmenu), imContextMenu, unicodeMenuItemPosition);
- gtk_widget_show(imContextMenu);
- }
-
- return gtkmenu;
-}
-
-void ContextMenuClient::contextMenuItemSelected(ContextMenuItem*, const ContextMenu*)
-{
- notImplemented();
-}
-
-void ContextMenuClient::downloadURL(const KURL& url)
-{
- WebKitNetworkRequest* networkRequest = webkit_network_request_new(url.string().utf8().data());
-
- webkit_web_view_request_download(m_webView, networkRequest);
- g_object_unref(networkRequest);
-}
-
-void ContextMenuClient::copyImageToClipboard(const HitTestResult&)
-{
- notImplemented();
-}
-
-void ContextMenuClient::searchWithGoogle(const Frame*)
-{
- notImplemented();
-}
-
-void ContextMenuClient::lookUpInDictionary(Frame*)
-{
- notImplemented();
-}
-
-void ContextMenuClient::speak(const String&)
-{
- notImplemented();
-}
-
-void ContextMenuClient::stopSpeaking()
-{
- notImplemented();
-}
-
-bool ContextMenuClient::isSpeaking()
-{
- notImplemented();
- return false;
-}
-
-}
-
-#endif // ENABLE(CONTEXT_MENUS)
-
diff --git a/Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h
deleted file mode 100644
index d6774b583..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright (C) 2006 Zack Rusin <zack@kde.org>
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef ContextMenuClientGtk_h
-#define ContextMenuClientGtk_h
-
-#if ENABLE(CONTEXT_MENUS)
-
-#include "ContextMenuClient.h"
-
-typedef struct _WebKitWebView WebKitWebView;
-
-namespace WebCore {
- class ContextMenu;
-}
-
-namespace WebKit {
-
- class ContextMenuClient : public WebCore::ContextMenuClient
- {
- public:
- ContextMenuClient(WebKitWebView*);
-
- virtual void contextMenuDestroyed();
-
- virtual WebCore::PlatformMenuDescription getCustomMenuFromDefaultItems(WebCore::ContextMenu*);
- virtual void contextMenuItemSelected(WebCore::ContextMenuItem*, const WebCore::ContextMenu*);
-
- virtual void downloadURL(const WebCore::KURL& url);
- virtual void copyImageToClipboard(const WebCore::HitTestResult&);
- virtual void searchWithGoogle(const WebCore::Frame*);
- virtual void lookUpInDictionary(WebCore::Frame*);
- virtual void speak(const WTF::String&);
- virtual void stopSpeaking();
- virtual bool isSpeaking();
-
- private:
- WebKitWebView* m_webView;
- };
-}
-
-#endif // ENABLE(CONTEXT_MENUS)
-#endif
diff --git a/Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.cpp
deleted file mode 100644
index 4ad927eff..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.cpp
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
- * Copyright (C) 2011 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#include "config.h"
-
-#if ENABLE(DEVICE_ORIENTATION)
-#include "DeviceMotionClientGtk.h"
-
-#include "NotImplemented.h"
-
-using namespace WebCore;
-
-namespace WebKit {
-
-DeviceMotionClientGtk::DeviceMotionClientGtk()
-{
-}
-
-DeviceMotionClientGtk::~DeviceMotionClientGtk()
-{
-}
-
-void DeviceMotionClientGtk::deviceMotionControllerDestroyed()
-{
- delete this;
-}
-
-void DeviceMotionClientGtk::setController(DeviceMotionController* controller)
-{
- m_controller = controller;
-}
-
-void DeviceMotionClientGtk::startUpdating()
-{
- notImplemented();
-}
-
-void DeviceMotionClientGtk::stopUpdating()
-{
- notImplemented();
-}
-
-DeviceMotionData* DeviceMotionClientGtk::lastMotion() const
-{
- notImplemented();
- return 0;
-}
-
-} // namespece WebKit
-
-#endif
diff --git a/Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.h
deleted file mode 100644
index 3c5f45bbb..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DeviceMotionClientGtk.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
- * Copyright (C) 2011 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-#ifndef DeviceMotionClientGtk_h
-#define DeviceMotionClientGtk_h
-
-#include "DeviceMotionClient.h"
-#include "DeviceMotionData.h"
-
-namespace WebKit {
-
-class DeviceMotionClientGtk : public WebCore::DeviceMotionClient {
-public:
- DeviceMotionClientGtk();
- virtual ~DeviceMotionClientGtk();
-
- virtual void setController(WebCore::DeviceMotionController*);
- virtual void startUpdating();
- virtual void stopUpdating();
- virtual WebCore::DeviceMotionData* lastMotion() const;
- virtual void deviceMotionControllerDestroyed();
-
-private:
- WebCore::DeviceMotionController* m_controller;
-};
-
-} // namespece WebKit
-
-#endif // DeviceMotionClientGtk_h
diff --git a/Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.cpp
deleted file mode 100644
index 36d303b27..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.cpp
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
- * Copyright (C) 2011 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#include "config.h"
-
-#if ENABLE(DEVICE_ORIENTATION)
-#include "DeviceOrientationClientGtk.h"
-
-#include "NotImplemented.h"
-
-using namespace WebCore;
-
-namespace WebKit {
-
-DeviceOrientationClientGtk::DeviceOrientationClientGtk()
-{
-}
-
-DeviceOrientationClientGtk::~DeviceOrientationClientGtk()
-{
-}
-
-void DeviceOrientationClientGtk::deviceOrientationControllerDestroyed()
-{
- delete this;
-}
-
-void DeviceOrientationClientGtk::setController(DeviceOrientationController* controller)
-{
- m_controller = controller;
-}
-
-void DeviceOrientationClientGtk::startUpdating()
-{
- notImplemented();
-}
-
-void DeviceOrientationClientGtk::stopUpdating()
-{
- notImplemented();
-}
-
-WebCore::DeviceOrientationData* DeviceOrientationClientGtk::lastOrientation() const
-{
- notImplemented();
- return 0;
-}
-
-} // namespace WebKit
-#endif
diff --git a/Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.h
deleted file mode 100644
index fcaa2d2e8..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DeviceOrientationClientGtk.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
- * Copyright (C) 2011 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-#ifndef DeviceOrientationClientGtk_h
-#define DeviceOrientationClientGtk_h
-
-#include "DeviceOrientationClient.h"
-#include "DeviceOrientationData.h"
-
-namespace WebKit {
-
-class DeviceOrientationClientGtk : public WebCore::DeviceOrientationClient {
-public:
- DeviceOrientationClientGtk();
- virtual ~DeviceOrientationClientGtk();
-
- virtual void setController(WebCore::DeviceOrientationController*);
- virtual void startUpdating();
- virtual void stopUpdating();
- virtual WebCore::DeviceOrientationData* lastOrientation() const;
- virtual void deviceOrientationControllerDestroyed();
-
-private:
- WebCore::DeviceOrientationController* m_controller;
-};
-
-} // namespace WebKit
-
-#endif // DeviceOrientationClientGtk_h
diff --git a/Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.cpp
deleted file mode 100644
index 1edc71260..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.cpp
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
- * Copyright (C) 2009 Jan Michael Alonzo
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
- * its contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "DocumentLoaderGtk.h"
-
-#include "webkitwebdatasource.h"
-#include "webkitwebdatasourceprivate.h"
-#include <wtf/gobject/GRefPtr.h>
-
-using namespace WebCore;
-
-namespace WebKit {
-
-DocumentLoader::DocumentLoader(const ResourceRequest& request, const SubstituteData& substituteData)
- : WebCore::DocumentLoader(request, substituteData)
- , m_isDataSourceReffed(false)
- , m_dataSource(0)
-{
-}
-
-void DocumentLoader::setDataSource(WebKitWebDataSource* dataSource)
-{
- ASSERT(!m_dataSource);
-
- m_dataSource = dataSource;
- refDataSource();
-}
-
-void DocumentLoader::detachDataSource()
-{
- unrefDataSource();
-}
-
-void DocumentLoader::attachToFrame()
-{
- WebCore::DocumentLoader::attachToFrame();
-
- if (m_dataSource) {
- refDataSource();
- return;
- }
-
- // We may get to here without having a datasource, when the data
- // is coming from the page cache.
- GRefPtr<WebKitWebDataSource> dataSource(adoptGRef(kitNew(this)));
- setDataSource(dataSource.get());
-}
-
-void DocumentLoader::detachFromFrame()
-{
- WebCore::DocumentLoader::detachFromFrame();
-
- if (m_loadingResources.isEmpty())
- unrefDataSource();
-}
-
-void DocumentLoader::increaseLoadCount(unsigned long identifier)
-{
- ASSERT(m_dataSource);
-
- if (m_loadingResources.contains(identifier))
- return;
- m_loadingResources.add(identifier);
- refDataSource();
-}
-
-void DocumentLoader::decreaseLoadCount(unsigned long identifier)
-{
- HashSet<unsigned long>::iterator it = m_loadingResources.find(identifier);
-
- // It is valid for a load to be cancelled before it's started.
- if (it == m_loadingResources.end())
- return;
-
- m_loadingResources.remove(it);
-
- if (m_loadingResources.isEmpty() && !frame())
- unrefDataSource();
-}
-
-// helper methos to avoid ref count churn
-void DocumentLoader::refDataSource()
-{
- if (!m_dataSource || m_isDataSourceReffed)
- return;
- m_isDataSourceReffed = true;
- g_object_ref(m_dataSource);
-}
-void DocumentLoader::unrefDataSource()
-{
- if (!m_isDataSourceReffed)
- return;
- ASSERT(m_dataSource);
- m_isDataSourceReffed = false;
- g_object_unref(m_dataSource);
- m_dataSource = 0;
-}
-
-} // end namespace WebKit
diff --git a/Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.h b/Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.h
deleted file mode 100644
index c601bc50a..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.h
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
- * Copyright (C) 2009 Jan Michael Alonzo
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
- * its contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef DocumentLoaderGtk_h
-#define DocumentLoaderGtk_h
-
-#include "DocumentLoader.h"
-#include "webkitdefines.h"
-#include "wtf/HashSet.h"
-
-namespace WebCore {
- class ResourceRequest;
- class SubstituteData;
-}
-
-namespace WebKit {
-
-class DocumentLoader : public WebCore::DocumentLoader {
-public:
- static PassRefPtr<WebKit::DocumentLoader> create(const WebCore::ResourceRequest& request, const WebCore::SubstituteData& data)
- {
- return adoptRef(new DocumentLoader(request, data));
- }
-
- void setDataSource(WebKitWebDataSource*);
- void detachDataSource();
- WebKitWebDataSource* dataSource() const { return m_dataSource; }
-
- void increaseLoadCount(unsigned long identifier);
- void decreaseLoadCount(unsigned long identifier);
-
-private:
- DocumentLoader(const WebCore::ResourceRequest&, const WebCore::SubstituteData&);
-
- virtual void attachToFrame();
- virtual void detachFromFrame();
-
- void refDataSource();
- void unrefDataSource();
-
- bool m_isDataSourceReffed;
- WebKitWebDataSource* m_dataSource;
- HashSet<unsigned long> m_loadingResources;
-};
-
-} // end namespace WebKit
-
-#endif
diff --git a/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp
deleted file mode 100644
index e39b470e2..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (C) 2009, 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "DragClientGtk.h"
-
-#include "Clipboard.h"
-#include "ClipboardUtilitiesGtk.h"
-#include "DataObjectGtk.h"
-#include "Document.h"
-#include "DragController.h"
-#include "Element.h"
-#include "Frame.h"
-#include "GOwnPtrGtk.h"
-#include "GRefPtrGtk.h"
-#include "GtkVersioning.h"
-#include "NotImplemented.h"
-#include "Pasteboard.h"
-#include "PasteboardHelper.h"
-#include "RenderObject.h"
-#include "webkitwebframeprivate.h"
-#include "webkitwebviewprivate.h"
-#include "webkitwebview.h"
-#include <gdk/gdk.h>
-#include <gtk/gtk.h>
-
-using namespace WebCore;
-
-namespace WebKit {
-
-DragClient::DragClient(WebKitWebView* webView)
- : m_webView(webView)
- , m_startPos(0, 0)
-{
-}
-
-DragClient::~DragClient()
-{
-}
-
-void DragClient::willPerformDragDestinationAction(DragDestinationAction, DragData*)
-{
-}
-
-void DragClient::willPerformDragSourceAction(DragSourceAction, const IntPoint& startPos, Clipboard*)
-{
- m_startPos = startPos;
-}
-
-DragDestinationAction DragClient::actionMaskForDrag(DragData*)
-{
- notImplemented();
- return DragDestinationActionAny;
-}
-
-DragSourceAction DragClient::dragSourceActionMaskForPoint(const IntPoint&)
-{
- notImplemented();
- return DragSourceActionAny;
-}
-
-void DragClient::startDrag(DragImageRef image, const IntPoint& dragImageOrigin, const IntPoint& eventPos, Clipboard* clipboard, Frame* frame, bool linkDrag)
-{
- WebKitWebView* webView = webkit_web_frame_get_web_view(kit(frame));
- RefPtr<DataObjectGtk> dataObject = clipboard->pasteboard().dataObject();
- GRefPtr<GtkTargetList> targetList = adoptGRef(PasteboardHelper::defaultPasteboardHelper()->targetListForDataObject(dataObject.get()));
- GOwnPtr<GdkEvent> currentEvent(gtk_get_current_event());
-
- GdkDragContext* context = gtk_drag_begin(GTK_WIDGET(m_webView), targetList.get(), dragOperationToGdkDragActions(clipboard->sourceOperation()), 1, currentEvent.get());
- webView->priv->dragAndDropHelper.startedDrag(context, dataObject.get());
-
- // A drag starting should prevent a double-click from happening. This might
- // happen if a drag is followed very quickly by another click (like in the DRT).
- webView->priv->clickCounter.reset();
-
- if (image) {
- m_dragIcon.setImage(image);
- m_dragIcon.useForDrag(context, IntPoint(eventPos - dragImageOrigin));
- } else
- gtk_drag_set_icon_default(context);
-}
-
-void DragClient::dragControllerDestroyed()
-{
- delete this;
-}
-}
diff --git a/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h
deleted file mode 100644
index 76c759601..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (C) 2007 Apple Inc. All rights reserved.
- * Copyright (C) 2007 Holger Hans Peter Freyther
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Apple, Inc. ("Apple") nor the names of
- * its contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef DragClientGtk_h
-#define DragClientGtk_h
-
-#include "DragClient.h"
-#include "DragIcon.h"
-#include <wtf/gobject/GRefPtr.h>
-
-typedef struct _WebKitWebView WebKitWebView;
-
-namespace WebKit {
-
- class DragClient : public WebCore::DragClient {
- public:
- DragClient(WebKitWebView*);
- ~DragClient();
-
- virtual void willPerformDragDestinationAction(WebCore::DragDestinationAction, WebCore::DragData*);
- virtual void willPerformDragSourceAction(WebCore::DragSourceAction, const WebCore::IntPoint&, WebCore::Clipboard*);
- virtual WebCore::DragDestinationAction actionMaskForDrag(WebCore::DragData*);
-
- virtual WebCore::DragSourceAction dragSourceActionMaskForPoint(const WebCore::IntPoint& windowPoint);
-
- virtual void startDrag(WebCore::DragImageRef dragImage, const WebCore::IntPoint& dragImageOrigin, const WebCore::IntPoint& eventPos, WebCore::Clipboard*, WebCore::Frame*, bool linkDrag = false);
-
- virtual void dragControllerDestroyed();
-
- private:
- WebKitWebView* m_webView;
- WebCore::IntPoint m_startPos;
- WebCore::DragIcon m_dragIcon;
- };
-}
-
-#endif
diff --git a/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp
deleted file mode 100644
index 4174a1eb1..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp
+++ /dev/null
@@ -1,744 +0,0 @@
-/*
- * Copyright (C) Research In Motion Limited 2010. All rights reserved.
- * Copyright (C) 2010 Joone Hur <joone@kldp.org>
- * Copyright (C) 2009 Google Inc. All rights reserved.
- * Copyright (C) 2011 Igalia S.L.
- * Copyright (C) 2012 Apple Inc. All Rights Reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "DumpRenderTreeSupportGtk.h"
-
-#include "APICast.h"
-#include "AXObjectCache.h"
-#include "AccessibilityObject.h"
-#include "AnimationController.h"
-#include "ApplicationCacheStorage.h"
-#include "Chrome.h"
-#include "ChromeClientGtk.h"
-#include "DOMWrapperWorld.h"
-#include "Document.h"
-#include "Editor.h"
-#include "EditorClientGtk.h"
-#include "Element.h"
-#include "FocusController.h"
-#include "FrameTree.h"
-#include "FrameView.h"
-#include "GCController.h"
-#include "GeolocationClientMock.h"
-#include "GeolocationController.h"
-#include "GeolocationError.h"
-#include "GeolocationPosition.h"
-#include "GraphicsContext.h"
-#include "HTMLInputElement.h"
-#include "JSCJSValue.h"
-#include "JSCSSStyleDeclaration.h"
-#include "JSDOMWindow.h"
-#include "JSDocument.h"
-#include "JSElement.h"
-#include "JSLock.h"
-#include "JSNodeList.h"
-#include "MemoryCache.h"
-#include "MutationObserver.h"
-#include "NodeList.h"
-#include "PageGroup.h"
-#include "PrintContext.h"
-#include "RenderListItem.h"
-#include "RenderTreeAsText.h"
-#include "RenderView.h"
-#include "ResourceLoadScheduler.h"
-#include "RuntimeEnabledFeatures.h"
-#include "SchemeRegistry.h"
-#include "SecurityOrigin.h"
-#include "SecurityPolicy.h"
-#include "Settings.h"
-#include "TextIterator.h"
-#include "WebKitAccessibleWrapperAtk.h"
-#include "webkitglobalsprivate.h"
-#include "webkitwebframe.h"
-#include "webkitwebframeprivate.h"
-#include "webkitwebview.h"
-#include "webkitwebviewprivate.h"
-#include <JavaScriptCore/APICast.h>
-#include <wtf/text/WTFString.h>
-
-using namespace JSC;
-using namespace WebCore;
-using namespace WebKit;
-
-bool DumpRenderTreeSupportGtk::s_drtRun = false;
-bool DumpRenderTreeSupportGtk::s_linksIncludedInTabChain = true;
-DumpRenderTreeSupportGtk::FrameLoadEventCallback DumpRenderTreeSupportGtk::s_frameLoadEventCallback = 0;
-DumpRenderTreeSupportGtk::AuthenticationCallback DumpRenderTreeSupportGtk::s_authenticationCallback = 0;
-
-DumpRenderTreeSupportGtk::DumpRenderTreeSupportGtk()
-{
-}
-
-DumpRenderTreeSupportGtk::~DumpRenderTreeSupportGtk()
-{
-}
-
-void DumpRenderTreeSupportGtk::setDumpRenderTreeModeEnabled(bool enabled)
-{
- s_drtRun = enabled;
-}
-
-bool DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled()
-{
- return s_drtRun;
-}
-void DumpRenderTreeSupportGtk::setLinksIncludedInFocusChain(bool enabled)
-{
- s_linksIncludedInTabChain = enabled;
-}
-
-bool DumpRenderTreeSupportGtk::linksIncludedInFocusChain()
-{
- return s_linksIncludedInTabChain;
-}
-
-/**
- * getFrameChildren:
- * @frame: a #WebKitWebFrame
- *
- * Return value: child frames of @frame
- */
-GSList* DumpRenderTreeSupportGtk::getFrameChildren(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return 0;
-
- GSList* children = 0;
- for (Frame* child = coreFrame->tree()->firstChild(); child; child = child->tree()->nextSibling()) {
- WebKitWebFrame* kitFrame = kit(child);
- if (kitFrame)
- children = g_slist_append(children, kitFrame);
- }
-
- return children;
-}
-
-/**
- * getInnerText:
- * @frame: a #WebKitWebFrame
- *
- * Return value: inner text of @frame
- */
-CString DumpRenderTreeSupportGtk::getInnerText(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), CString(""));
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return CString("");
-
- FrameView* view = coreFrame->view();
- if (view && view->layoutPending())
- view->layout();
-
- Element* documentElement = coreFrame->document()->documentElement();
- if (!documentElement)
- return CString("");
- return documentElement->innerText().utf8();
-}
-
-/**
- * dumpRenderTree:
- * @frame: a #WebKitWebFrame
- *
- * Return value: Non-recursive render tree dump of @frame
- */
-CString DumpRenderTreeSupportGtk::dumpRenderTree(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), CString(""));
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return CString("");
-
- FrameView* view = coreFrame->view();
-
- if (view && view->layoutPending())
- view->layout();
-
- return externalRepresentation(coreFrame).utf8();
-}
-
-void DumpRenderTreeSupportGtk::addUserScript(WebKitWebFrame* frame, const char* sourceCode, bool runAtStart, bool allFrames)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return;
-
- WebKitWebView* webView = getViewFromFrame(frame);
- Page* page = core(webView);
- page->group().addUserScriptToWorld(mainThreadNormalWorld(), sourceCode, KURL(), Vector<String>(), Vector<String>(),
- runAtStart ? InjectAtDocumentStart : InjectAtDocumentEnd, allFrames ? InjectInAllFrames : InjectInTopFrameOnly);
-}
-
-/**
- * addUserStyleSheet
- * @frame: a #WebKitWebFrame
- * @sourceCode: code of a user stylesheet
- *
- */
-void DumpRenderTreeSupportGtk::addUserStyleSheet(WebKitWebFrame* frame, const char* sourceCode, bool allFrames)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return;
-
- WebKitWebView* webView = getViewFromFrame(frame);
- Page* page = core(webView);
- page->group().addUserStyleSheetToWorld(mainThreadNormalWorld(), sourceCode, KURL(), Vector<String>(), Vector<String>(), allFrames ? InjectInAllFrames : InjectInTopFrameOnly);
-}
-
-/**
- * getPendingUnloadEventCount:
- * @frame: a #WebKitWebFrame
- *
- * Return value: number of pending unload events
- */
-guint DumpRenderTreeSupportGtk::getPendingUnloadEventCount(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- return core(frame)->document()->domWindow()->pendingUnloadEventListeners();
-}
-
-void DumpRenderTreeSupportGtk::clearMainFrameName(WebKitWebFrame* frame)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
-
- core(frame)->tree()->clearName();
-}
-
-AtkObject* DumpRenderTreeSupportGtk::getRootAccessibleElement(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
-#if HAVE(ACCESSIBILITY)
- if (!AXObjectCache::accessibilityEnabled())
- AXObjectCache::enableAccessibility();
-
- WebKitWebFramePrivate* priv = frame->priv;
- if (!priv->coreFrame || !priv->coreFrame->document())
- return 0;
-
- AtkObject* wrapper = priv->coreFrame->document()->axObjectCache()->rootObject()->wrapper();
- if (!wrapper)
- return 0;
-
- return wrapper;
-#else
- return 0;
-#endif
-}
-
-AtkObject* DumpRenderTreeSupportGtk::getFocusedAccessibleElement(WebKitWebFrame* frame)
-{
-#if HAVE(ACCESSIBILITY)
- AtkObject* wrapper = getRootAccessibleElement(frame);
- if (!wrapper)
- return 0;
-
- return webkitAccessibleGetFocusedElement(WEBKIT_ACCESSIBLE(wrapper));
-#else
- return 0;
-#endif
-}
-
-void DumpRenderTreeSupportGtk::executeCoreCommandByName(WebKitWebView* webView, const gchar* name, const gchar* value)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(name);
- g_return_if_fail(value);
-
- core(webView)->focusController()->focusedOrMainFrame()->editor().command(name).execute(value);
-}
-
-bool DumpRenderTreeSupportGtk::isCommandEnabled(WebKitWebView* webView, const gchar* name)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
- g_return_val_if_fail(name, FALSE);
-
- return core(webView)->focusController()->focusedOrMainFrame()->editor().command(name).isEnabled();
-}
-
-void DumpRenderTreeSupportGtk::setComposition(WebKitWebView* webView, const char* text, int start, int length)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(text);
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- if (!frame)
- return;
-
- Editor& editor = frame->editor();
- if (!editor.canEdit() && !editor.hasComposition())
- return;
-
- String compositionString = String::fromUTF8(text);
- Vector<CompositionUnderline> underlines;
- underlines.append(CompositionUnderline(0, compositionString.length(), Color(0, 0, 0), false));
- editor.setComposition(compositionString, underlines, start, start + length);
-}
-
-bool DumpRenderTreeSupportGtk::hasComposition(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), false);
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- if (!frame)
- return false;
-
- return frame->editor().hasComposition();
-}
-
-bool DumpRenderTreeSupportGtk::compositionRange(WebKitWebView* webView, int* start, int* length)
-{
- g_return_val_if_fail(start && length, false);
- *start = *length = 0;
-
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), false);
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- if (!frame)
- return false;
-
- Editor& editor = frame->editor();
- if (!editor.hasComposition())
- return false;
-
- *start = editor.compositionStart();
- *length = editor.compositionEnd() - *start;
- return true;
-}
-
-void DumpRenderTreeSupportGtk::confirmComposition(WebKitWebView* webView, const char* text)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- if (!frame)
- return;
-
- Editor& editor = frame->editor();
-
- if (!editor.hasComposition()) {
- editor.insertText(String::fromUTF8(text), 0);
- return;
- }
- if (text) {
- editor.confirmComposition(String::fromUTF8(text));
- return;
- }
- editor.confirmComposition();
-}
-
-void DumpRenderTreeSupportGtk::doCommand(WebKitWebView* webView, const char* command)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- if (!frame)
- return;
-
- Editor& editor = frame->editor();
-
- String commandString(command);
- // Remove ending : here.
- if (commandString.endsWith(":", true))
- commandString = commandString.left(commandString.length() - 1);
-
- // Make the first char in upper case.
- String firstChar = commandString.left(1);
- commandString = commandString.right(commandString.length() - 1);
- firstChar.makeUpper();
- commandString.insert(firstChar, 0);
-
- editor.command(commandString).execute();
-}
-
-bool DumpRenderTreeSupportGtk::firstRectForCharacterRange(WebKitWebView* webView, int location, int length, cairo_rectangle_int_t* rect)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), false);
- g_return_val_if_fail(rect, false);
-
- if ((location + length < location) && (location + length))
- length = 0;
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- if (!frame)
- return false;
-
- Editor& editor = frame->editor();
-
- RefPtr<Range> range = TextIterator::rangeFromLocationAndLength(frame->selection()->rootEditableElementOrDocumentElement(), location, length);
- if (!range)
- return false;
-
- *rect = editor.firstRectForRange(range.get());
- return true;
-}
-
-bool DumpRenderTreeSupportGtk::selectedRange(WebKitWebView* webView, int* start, int* length)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), false);
- g_return_val_if_fail(start && length, false);
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- if (!frame)
- return false;
-
- RefPtr<Range> range = frame->selection()->toNormalizedRange().get();
- if (!range)
- return false;
-
- Element* selectionRoot = frame->selection()->rootEditableElement();
- Element* scope = selectionRoot ? selectionRoot : frame->document()->documentElement();
-
- RefPtr<Range> testRange = Range::create(scope->document(), scope, 0, range->startContainer(), range->startOffset());
- ASSERT(testRange->startContainer() == scope);
- *start = TextIterator::rangeLength(testRange.get());
-
- ExceptionCode ec;
- testRange->setEnd(range->endContainer(), range->endOffset(), ec);
- ASSERT(testRange->startContainer() == scope);
- *length = TextIterator::rangeLength(testRange.get());
-
- return true;
-}
-
-void DumpRenderTreeSupportGtk::setDefersLoading(WebKitWebView* webView, bool defers)
-{
- core(webView)->setDefersLoading(defers);
-}
-
-void DumpRenderTreeSupportGtk::forceWebViewPaint(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- static_cast<WebKit::ChromeClient*>(core(webView)->chrome().client())->forcePaint();
-}
-
-void DumpRenderTreeSupportGtk::whiteListAccessFromOrigin(const gchar* sourceOrigin, const gchar* destinationProtocol, const gchar* destinationHost, bool allowDestinationSubdomains)
-{
- SecurityPolicy::addOriginAccessWhitelistEntry(*SecurityOrigin::createFromString(sourceOrigin), destinationProtocol, destinationHost, allowDestinationSubdomains);
-}
-
-void DumpRenderTreeSupportGtk::removeWhiteListAccessFromOrigin(const char* sourceOrigin, const char* destinationProtocol, const char* destinationHost, bool allowDestinationSubdomains)
-{
- SecurityPolicy::removeOriginAccessWhitelistEntry(*SecurityOrigin::createFromString(sourceOrigin), destinationProtocol, destinationHost, allowDestinationSubdomains);
-}
-
-void DumpRenderTreeSupportGtk::resetOriginAccessWhiteLists()
-{
- SecurityPolicy::resetOriginAccessWhitelists();
-}
-
-void DumpRenderTreeSupportGtk::gcCollectJavascriptObjects()
-{
- gcController().garbageCollectNow();
-}
-
-void DumpRenderTreeSupportGtk::gcCollectJavascriptObjectsOnAlternateThread(bool waitUntilDone)
-{
- gcController().garbageCollectOnAlternateThreadForDebugging(waitUntilDone);
-}
-
-unsigned long DumpRenderTreeSupportGtk::gcCountJavascriptObjects()
-{
- JSC::JSLockHolder lock(JSDOMWindow::commonVM());
- return JSDOMWindow::commonVM()->heap.objectCount();
-}
-
-void DumpRenderTreeSupportGtk::layoutFrame(WebKitWebFrame* frame)
-{
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return;
-
- FrameView* view = coreFrame->view();
- if (!view)
- return;
-
- view->layout();
-}
-
-void DumpRenderTreeSupportGtk::clearOpener(WebKitWebFrame* frame)
-{
- Frame* coreFrame = core(frame);
- if (coreFrame)
- coreFrame->loader()->setOpener(0);
-}
-
-bool DumpRenderTreeSupportGtk::findString(WebKitWebView* webView, const gchar* targetString, WebKitFindOptions findOptions)
-{
- return core(webView)->findString(String::fromUTF8(targetString), findOptions);
-}
-
-CString DumpRenderTreeSupportGtk::accessibilityHelpText(AtkObject* axObject)
-{
- if (!axObject || !WEBKIT_IS_ACCESSIBLE(axObject))
- return CString();
-
- AccessibilityObject* coreObject = webkitAccessibleGetAccessibilityObject(WEBKIT_ACCESSIBLE(axObject));
- if (!coreObject)
- return CString();
-
- return coreObject->helpText().utf8();
-}
-
-void DumpRenderTreeSupportGtk::setValueForUser(JSContextRef context, JSValueRef nodeObject, JSStringRef value)
-{
- JSC::ExecState* exec = toJS(context);
- Element* element = toElement(toJS(exec, nodeObject));
- if (!element)
- return;
- HTMLInputElement* inputElement = element->toInputElement();
- if (!inputElement)
- return;
-
- size_t bufferSize = JSStringGetMaximumUTF8CStringSize(value);
- GOwnPtr<gchar> valueBuffer(static_cast<gchar*>(g_malloc(bufferSize)));
- JSStringGetUTF8CString(value, valueBuffer.get(), bufferSize);
- inputElement->setValueForUser(String::fromUTF8(valueBuffer.get()));
-}
-
-void DumpRenderTreeSupportGtk::rectangleForSelection(WebKitWebFrame* frame, cairo_rectangle_int_t* rectangle)
-{
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return;
-
- IntRect bounds = enclosingIntRect(coreFrame->selection()->bounds());
- rectangle->x = bounds.x();
- rectangle->y = bounds.y();
- rectangle->width = bounds.width();
- rectangle->height = bounds.height();
-}
-
-bool DumpRenderTreeSupportGtk::shouldClose(WebKitWebFrame* frame)
-{
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return true;
- return coreFrame->loader()->shouldClose();
-}
-
-void DumpRenderTreeSupportGtk::scalePageBy(WebKitWebView* webView, float scaleFactor, float x, float y)
-{
- core(webView)->setPageScaleFactor(scaleFactor, IntPoint(x, y));
-}
-
-void DumpRenderTreeSupportGtk::resetGeolocationClientMock(WebKitWebView* webView)
-{
-#if ENABLE(GEOLOCATION)
- GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(GeolocationController::from(core(webView))->client());
- mock->reset();
-#endif
-}
-
-void DumpRenderTreeSupportGtk::setMockGeolocationPermission(WebKitWebView* webView, bool allowed)
-{
-#if ENABLE(GEOLOCATION)
- GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(GeolocationController::from(core(webView))->client());
- mock->setPermission(allowed);
-#endif
-}
-
-void DumpRenderTreeSupportGtk::setMockGeolocationPosition(WebKitWebView* webView, double latitude, double longitude, double accuracy)
-{
-#if ENABLE(GEOLOCATION)
- GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(GeolocationController::from(core(webView))->client());
-
- double timestamp = g_get_real_time() / 1000000.0;
- mock->setPosition(GeolocationPosition::create(timestamp, latitude, longitude, accuracy));
-#endif
-}
-
-void DumpRenderTreeSupportGtk::setMockGeolocationPositionUnavailableError(WebKitWebView* webView, const gchar* errorMessage)
-{
-#if ENABLE(GEOLOCATION)
- GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(GeolocationController::from(core(webView))->client());
- mock->setPositionUnavailableError(errorMessage);
-#endif
-}
-
-int DumpRenderTreeSupportGtk::numberOfPendingGeolocationPermissionRequests(WebKitWebView* webView)
-{
-#if ENABLE(GEOLOCATION)
- GeolocationClientMock* mock = static_cast<GeolocationClientMock*>(GeolocationController::from(core(webView))->client());
- return mock->numberOfPendingPermissionRequests();
-#else
- return 0;
-#endif
-}
-
-void DumpRenderTreeSupportGtk::setPageCacheSupportsPlugins(WebKitWebView* webView, bool enabled)
-{
- core(webView)->settings()->setPageCacheSupportsPlugins(enabled);
-}
-
-void DumpRenderTreeSupportGtk::setCSSGridLayoutEnabled(WebKitWebView* webView, bool enabled)
-{
- core(webView)->settings()->setCSSGridLayoutEnabled(enabled);
-}
-
-void DumpRenderTreeSupportGtk::setCSSRegionsEnabled(WebKitWebView* webView, bool enabled)
-{
- RuntimeEnabledFeatures::setCSSRegionsEnabled(enabled);
-}
-
-void DumpRenderTreeSupportGtk::setCSSCustomFilterEnabled(WebKitWebView* webView, bool enabled)
-{
-#if ENABLE(CSS_SHADERS)
- core(webView)->settings()->setCSSCustomFilterEnabled(enabled);
-#endif
-}
-
-void DumpRenderTreeSupportGtk::setExperimentalContentSecurityPolicyFeaturesEnabled(bool enabled)
-{
-#if ENABLE(CSP_NEXT)
- RuntimeEnabledFeatures::setExperimentalContentSecurityPolicyFeaturesEnabled(enabled);
-#endif
-}
-
-void DumpRenderTreeSupportGtk::setSeamlessIFramesEnabled(bool enabled)
-{
-#if ENABLE(IFRAME_SEAMLESS)
- RuntimeEnabledFeatures::setSeamlessIFramesEnabled(enabled);
-#endif
-}
-
-void DumpRenderTreeSupportGtk::setShadowDOMEnabled(bool enabled)
-{
-#if ENABLE(SHADOW_DOM)
- RuntimeEnabledFeatures::setShadowDOMEnabled(enabled);
-#endif
-}
-
-void DumpRenderTreeSupportGtk::setStyleScopedEnabled(bool enabled)
-{
-#if ENABLE(STYLE_SCOPED)
- RuntimeEnabledFeatures::setStyleScopedEnabled(enabled);
-#endif
-}
-
-void DumpRenderTreeSupportGtk::deliverAllMutationsIfNecessary()
-{
- MutationObserver::deliverAllMutations();
-}
-
-void DumpRenderTreeSupportGtk::setDomainRelaxationForbiddenForURLScheme(bool forbidden, const char* urlScheme)
-{
- SchemeRegistry::setDomainRelaxationForbiddenForURLScheme(forbidden, String::fromUTF8(urlScheme));
-}
-
-void DumpRenderTreeSupportGtk::setSerializeHTTPLoads(bool enabled)
-{
- resourceLoadScheduler()->setSerialLoadingEnabled(enabled);
-}
-
-void DumpRenderTreeSupportGtk::setTracksRepaints(WebKitWebFrame* frame, bool tracks)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
-
- Frame* coreFrame = core(frame);
- if (coreFrame && coreFrame->view())
- coreFrame->view()->setTracksRepaints(tracks);
-}
-
-bool DumpRenderTreeSupportGtk::isTrackingRepaints(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), false);
-
- Frame* coreFrame = core(frame);
- if (coreFrame && coreFrame->view())
- return coreFrame->view()->isTrackingRepaints();
-
- return false;
-}
-
-GSList* DumpRenderTreeSupportGtk::trackedRepaintRects(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- Frame* coreFrame = core(frame);
- if (!coreFrame || !coreFrame->view())
- return 0;
-
- GSList* rects = 0;
- const Vector<IntRect>& repaintRects = coreFrame->view()->trackedRepaintRects();
- for (unsigned i = 0; i < repaintRects.size(); i++) {
- GdkRectangle* rect = g_new0(GdkRectangle, 1);
- rect->x = repaintRects[i].x();
- rect->y = repaintRects[i].y();
- rect->width = repaintRects[i].width();
- rect->height = repaintRects[i].height();
- rects = g_slist_append(rects, rect);
- }
-
- return rects;
-}
-
-void DumpRenderTreeSupportGtk::resetTrackedRepaints(WebKitWebFrame* frame)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
-
- Frame* coreFrame = core(frame);
- if (coreFrame && coreFrame->view())
- coreFrame->view()->resetTrackedRepaints();
-}
-
-void DumpRenderTreeSupportGtk::clearMemoryCache()
-{
- memoryCache()->evictResources();
-}
-
-void DumpRenderTreeSupportGtk::clearApplicationCache()
-{
- cacheStorage().empty();
- cacheStorage().vacuumDatabaseFile();
-}
-
-void DumpRenderTreeSupportGtk::setFrameLoadEventCallback(FrameLoadEventCallback frameLoadEventCallback)
-{
- s_frameLoadEventCallback = frameLoadEventCallback;
-}
-
-void DumpRenderTreeSupportGtk::setAuthenticationCallback(AuthenticationCallback authenticationCallback)
-{
- s_authenticationCallback = authenticationCallback;
-}
-
-void DumpRenderTreeSupportGtk::setPageVisibility(WebKitWebView* webView, WebCore::PageVisibilityState visibilityState, bool isInitialState)
-{
-#if ENABLE(PAGE_VISIBILITY_API)
- Page* page = core(webView);
- if (!page)
- return;
-
- page->setVisibilityState(visibilityState, isInitialState);
-#endif
-}
diff --git a/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h b/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h
deleted file mode 100644
index 649e6a799..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * Copyright (C) Research In Motion Limited 2010. All rights reserved.
- * Copyright (C) 2012 Apple Inc. All Rights Reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef DumpRenderTreeSupportGtk_h
-#define DumpRenderTreeSupportGtk_h
-
-#include "JSStringRef.h"
-#include "PageVisibilityState.h"
-#include <atk/atk.h>
-#include <glib.h>
-#include <webkit/webkitdefines.h>
-#include <wtf/text/CString.h>
-
-namespace WebKit {
-
-enum {
- WebFindOptionsCaseInsensitive = 1 << 0,
- WebFindOptionsAtWordStarts = 1 << 1,
- WebFindOptionsTreatMedialCapitalAsWordStart = 1 << 2,
- WebFindOptionsBackwards = 1 << 3,
- WebFindOptionsWrapAround = 1 << 4,
- WebFindOptionsStartInSelection = 1 << 5
-};
-
-}
-typedef unsigned WebKitFindOptions;
-
-class DumpRenderTreeSupportGtk {
-
-public:
- DumpRenderTreeSupportGtk();
- ~DumpRenderTreeSupportGtk();
-
- static void setDumpRenderTreeModeEnabled(bool);
- static bool dumpRenderTreeModeEnabled();
-
- static void setLinksIncludedInFocusChain(bool);
- static bool linksIncludedInFocusChain();
-
- static void clearOpener(WebKitWebFrame*);
-
- // FIXME: Move these to webkitwebframe.h once their API has been discussed.
- static GSList* getFrameChildren(WebKitWebFrame*);
- static WTF::CString getInnerText(WebKitWebFrame*);
- static WTF::CString dumpRenderTree(WebKitWebFrame*);
- static void addUserScript(WebKitWebFrame*, const char*, bool, bool);
- static void addUserStyleSheet(WebKitWebFrame*, const char* sourceCode, bool allFrames);
- static guint getPendingUnloadEventCount(WebKitWebFrame*);
- static void clearMainFrameName(WebKitWebFrame*);
- static AtkObject* getFocusedAccessibleElement(WebKitWebFrame*);
- static AtkObject* getRootAccessibleElement(WebKitWebFrame*);
- static void layoutFrame(WebKitWebFrame*);
- static void setValueForUser(JSContextRef, JSValueRef, JSStringRef);
- static bool shouldClose(WebKitWebFrame*);
-
- // WebKitWebView
- static void executeCoreCommandByName(WebKitWebView*, const gchar* name, const gchar* value);
- static bool isCommandEnabled(WebKitWebView*, const gchar* name);
- static bool findString(WebKitWebView*, const gchar*, WebKitFindOptions);
- static void rectangleForSelection(WebKitWebFrame*, cairo_rectangle_int_t*);
- static void scalePageBy(WebKitWebView*, float, float, float);
- static void setDefersLoading(WebKitWebView*, bool);
- static void forceWebViewPaint(WebKitWebView*);
-
- // Accessibility
- static WTF::CString accessibilityHelpText(AtkObject*);
-
- // TextInputController
- static void setComposition(WebKitWebView*, const char*, int start, int length);
- static bool hasComposition(WebKitWebView*);
- static bool compositionRange(WebKitWebView*, int* start, int* length);
- static void confirmComposition(WebKitWebView*, const char*);
- static bool firstRectForCharacterRange(WebKitWebView*, int location, int length, cairo_rectangle_int_t*);
- static bool selectedRange(WebKitWebView*, int* start, int* length);
- static void doCommand(WebKitWebView*, const char*);
- // GC
- static void gcCollectJavascriptObjects();
- static void gcCollectJavascriptObjectsOnAlternateThread(bool waitUntilDone);
- static unsigned long gcCountJavascriptObjects();
-
- static void whiteListAccessFromOrigin(const gchar* sourceOrigin, const gchar* destinationProtocol, const gchar* destinationHost, bool allowDestinationSubdomains);
- static void removeWhiteListAccessFromOrigin(const char* sourceOrigin, const char* destinationProtocol, const char* destinationHost, bool allowDestinationSubdomains);
- static void resetOriginAccessWhiteLists();
-
- static void resetGeolocationClientMock(WebKitWebView*);
- static void setMockGeolocationPermission(WebKitWebView*, bool allowed);
- static void setMockGeolocationPosition(WebKitWebView*, double latitude, double longitude, double accuracy);
- static void setMockGeolocationPositionUnavailableError(WebKitWebView*, const gchar* errorMessage);
- static int numberOfPendingGeolocationPermissionRequests(WebKitWebView*);
-
- static void setPageCacheSupportsPlugins(WebKitWebView*, bool enabled);
- static void setCSSGridLayoutEnabled(WebKitWebView*, bool enabled);
- static void setCSSRegionsEnabled(WebKitWebView*, bool enabled);
- static void setCSSCustomFilterEnabled(WebKitWebView*, bool enabled);
- static void setExperimentalContentSecurityPolicyFeaturesEnabled(bool);
- static void setSeamlessIFramesEnabled(bool);
- static void setShadowDOMEnabled(bool);
- static void setStyleScopedEnabled(bool);
-
- static void deliverAllMutationsIfNecessary();
- static void setDomainRelaxationForbiddenForURLScheme(bool forbidden, const char* urlScheme);
- static void setSerializeHTTPLoads(bool enabled);
-
- static void setTracksRepaints(WebKitWebFrame*, bool tracks);
- static bool isTrackingRepaints(WebKitWebFrame*);
- static GSList* trackedRepaintRects(WebKitWebFrame*);
- static void resetTrackedRepaints(WebKitWebFrame*);
-
- static void clearMemoryCache();
- static void clearApplicationCache();
-
- enum FrameLoadEvent {
- WillPerformClientRedirectToURL,
- DidCancelClientRedirect,
- DidReceiveServerRedirectForProvisionalLoad,
- DidDisplayInsecureContent,
- DidDetectXSS,
- };
- typedef void (*FrameLoadEventCallback)(WebKitWebFrame*, FrameLoadEvent, const char* url);
- static void setFrameLoadEventCallback(FrameLoadEventCallback);
- static FrameLoadEventCallback s_frameLoadEventCallback;
-
- typedef bool (*AuthenticationCallback) (CString& username, CString& password);
- static void setAuthenticationCallback(AuthenticationCallback);
- static AuthenticationCallback s_authenticationCallback;
- static void setPageVisibility(WebKitWebView*, WebCore::PageVisibilityState, bool);
-
-private:
- static bool s_drtRun;
- static bool s_linksIncludedInTabChain;
-};
-
-#endif
diff --git a/Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp
deleted file mode 100644
index 509090473..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp
+++ /dev/null
@@ -1,567 +0,0 @@
-/*
- * Copyright (C) 2007 Alp Toker <alp@atoker.com>
- * Copyright (C) 2008 Nuanti Ltd.
- * Copyright (C) 2009 Diego Escalante Urrelo <diegoe@gnome.org>
- * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
- * Copyright (C) 2009, 2010 Igalia S.L.
- * Copyright (C) 2010, Martin Robinson <mrobinson@webkit.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "EditorClientGtk.h"
-
-#include "DataObjectGtk.h"
-#include "DumpRenderTreeSupportGtk.h"
-#include "Editor.h"
-#include "EventNames.h"
-#include "FocusController.h"
-#include "Frame.h"
-#include <glib.h>
-#include "KeyboardEvent.h"
-#include "markup.h"
-#include "NotImplemented.h"
-#include "Page.h"
-#include "PasteboardHelper.h"
-#include "PlatformKeyboardEvent.h"
-#include "Settings.h"
-#include "StylePropertySet.h"
-#include "UndoStep.h"
-#include "WebKitDOMCSSStyleDeclarationPrivate.h"
-#include "WebKitDOMHTMLElementPrivate.h"
-#include "WebKitDOMNodePrivate.h"
-#include "WebKitDOMRangePrivate.h"
-#include "WindowsKeyboardCodes.h"
-#include "webkitglobals.h"
-#include "webkitglobalsprivate.h"
-#include "webkitmarshal.h"
-#include "webkitspellchecker.h"
-#include "webkitwebsettingsprivate.h"
-#include "webkitwebviewprivate.h"
-#include <wtf/text/CString.h>
-
-// Arbitrary depth limit for the undo stack, to keep it from using
-// unbounded memory. This is the maximum number of distinct undoable
-// actions -- unbroken stretches of typed characters are coalesced
-// into a single action.
-#define maximumUndoStackDepth 1000
-
-using namespace WebCore;
-
-namespace WebKit {
-
-void EditorClient::willSetInputMethodState()
-{
-}
-
-void EditorClient::setInputMethodState(bool active)
-{
- m_webView->priv->imFilter.setEnabled(active);
-}
-
-bool EditorClient::shouldShowUnicodeMenu()
-{
- if (gtk_major_version > 2 || (gtk_major_version == 2 && gtk_minor_version >= 10)) {
- GtkSettings* settings = gtk_widget_get_settings(GTK_WIDGET(m_webView));
- if (!settings)
- return true;
-
- gboolean enabled;
- g_object_get(settings, "gtk-show-unicode-menu", &enabled, NULL);
- return enabled;
- }
-
- return true;
-}
-
-bool EditorClient::shouldDeleteRange(Range* range)
-{
- gboolean accept = TRUE;
- GRefPtr<WebKitDOMRange> kitRange(adoptGRef(kit(range)));
- g_signal_emit_by_name(m_webView, "should-delete-range", kitRange.get(), &accept);
- return accept;
-}
-
-bool EditorClient::isContinuousSpellCheckingEnabled()
-{
- WebKitWebSettings* settings = webkit_web_view_get_settings(m_webView);
-
- gboolean enabled;
- g_object_get(settings, "enable-spell-checking", &enabled, NULL);
-
- return enabled;
-}
-
-bool EditorClient::isGrammarCheckingEnabled()
-{
- notImplemented();
- return false;
-}
-
-int EditorClient::spellCheckerDocumentTag()
-{
- notImplemented();
- return 0;
-}
-
-bool EditorClient::shouldBeginEditing(WebCore::Range* range)
-{
- gboolean accept = TRUE;
- GRefPtr<WebKitDOMRange> kitRange(adoptGRef(kit(range)));
- g_signal_emit_by_name(m_webView, "should-begin-editing", kitRange.get(), &accept);
- return accept;
-}
-
-bool EditorClient::shouldEndEditing(WebCore::Range* range)
-{
- gboolean accept = TRUE;
- GRefPtr<WebKitDOMRange> kitRange(adoptGRef(kit(range)));
- g_signal_emit_by_name(m_webView, "should-end-editing", kitRange.get(), &accept);
- return accept;
-}
-
-static WebKitInsertAction kit(EditorInsertAction action)
-{
- switch (action) {
- case EditorInsertActionTyped:
- return WEBKIT_INSERT_ACTION_TYPED;
- case EditorInsertActionPasted:
- return WEBKIT_INSERT_ACTION_PASTED;
- case EditorInsertActionDropped:
- return WEBKIT_INSERT_ACTION_DROPPED;
- }
- ASSERT_NOT_REACHED();
- return WEBKIT_INSERT_ACTION_TYPED;
-}
-
-bool EditorClient::shouldInsertText(const String& string, Range* range, EditorInsertAction action)
-{
- gboolean accept = TRUE;
- GRefPtr<WebKitDOMRange> kitRange(adoptGRef(kit(range)));
- g_signal_emit_by_name(m_webView, "should-insert-text", string.utf8().data(), kitRange.get(), kit(action), &accept);
- return accept;
-}
-
-static WebKitSelectionAffinity kit(EAffinity affinity)
-{
- switch (affinity) {
- case UPSTREAM:
- return WEBKIT_SELECTION_AFFINITY_UPSTREAM;
- case DOWNSTREAM:
- return WEBKIT_SELECTION_AFFINITY_DOWNSTREAM;
- }
- ASSERT_NOT_REACHED();
- return WEBKIT_SELECTION_AFFINITY_UPSTREAM;
-}
-
-bool EditorClient::shouldChangeSelectedRange(Range* fromRange, Range* toRange, EAffinity affinity, bool stillSelecting)
-{
- gboolean accept = TRUE;
- GRefPtr<WebKitDOMRange> kitFromRange(fromRange ? adoptGRef(kit(fromRange)) : 0);
- GRefPtr<WebKitDOMRange> kitToRange(toRange ? adoptGRef(kit(toRange)) : 0);
- g_signal_emit_by_name(m_webView, "should-change-selected-range", kitFromRange.get(), kitToRange.get(),
- kit(affinity), stillSelecting, &accept);
- return accept;
-}
-
-bool EditorClient::shouldApplyStyle(WebCore::StylePropertySet* set, WebCore::Range* range)
-{
- gboolean accept = TRUE;
- GRefPtr<WebKitDOMCSSStyleDeclaration> kitDeclaration(kit(set->mutableCopy()->ensureCSSStyleDeclaration()));
- GRefPtr<WebKitDOMRange> kitRange(adoptGRef(kit(range)));
- g_signal_emit_by_name(m_webView, "should-apply-style", kitDeclaration.get(), kitRange.get(), &accept);
- return accept;
-}
-
-bool EditorClient::shouldMoveRangeAfterDelete(WebCore::Range*, WebCore::Range*)
-{
- notImplemented();
- return true;
-}
-
-void EditorClient::didBeginEditing()
-{
- g_signal_emit_by_name(m_webView, "editing-began");
-}
-
-void EditorClient::respondToChangedContents()
-{
- g_signal_emit_by_name(m_webView, "user-changed-contents");
-}
-
-static WebKitWebView* viewSettingClipboard = 0;
-static void collapseSelection(GtkClipboard* clipboard, WebKitWebView* webView)
-{
- if (viewSettingClipboard && viewSettingClipboard == webView)
- return;
-
- WebCore::Page* corePage = core(webView);
- if (!corePage || !corePage->focusController())
- return;
-
- Frame* frame = corePage->focusController()->focusedOrMainFrame();
-
- // Collapse the selection without clearing it
- ASSERT(frame);
- frame->selection()->setBase(frame->selection()->extent(), frame->selection()->affinity());
-}
-
-#if PLATFORM(X11)
-static void setSelectionPrimaryClipboardIfNeeded(WebKitWebView* webView)
-{
- if (!gtk_widget_has_screen(GTK_WIDGET(webView)))
- return;
-
- GtkClipboard* clipboard = gtk_widget_get_clipboard(GTK_WIDGET(webView), GDK_SELECTION_PRIMARY);
- DataObjectGtk* dataObject = DataObjectGtk::forClipboard(clipboard);
- WebCore::Page* corePage = core(webView);
- Frame* targetFrame = corePage->focusController()->focusedOrMainFrame();
-
- if (!targetFrame->selection()->isRange())
- return;
-
- dataObject->clearAll();
- dataObject->setRange(targetFrame->selection()->toNormalizedRange());
-
- viewSettingClipboard = webView;
- GClosure* callback = g_cclosure_new_object(G_CALLBACK(collapseSelection), G_OBJECT(webView));
- g_closure_set_marshal(callback, g_cclosure_marshal_VOID__VOID);
- PasteboardHelper::defaultPasteboardHelper()->writeClipboardContents(clipboard, PasteboardHelper::DoNotIncludeSmartPaste, callback);
- viewSettingClipboard = 0;
-}
-#endif
-
-void EditorClient::respondToChangedSelection(Frame* frame)
-{
- g_signal_emit_by_name(m_webView, "selection-changed");
-
- if (!frame)
- return;
-
-#if PLATFORM(X11)
- setSelectionPrimaryClipboardIfNeeded(m_webView);
-#endif
-
- if (frame->editor().cancelCompositionIfSelectionIsInvalid())
- m_webView->priv->imFilter.resetContext();
-}
-
-void EditorClient::didEndEditing()
-{
- g_signal_emit_by_name(m_webView, "editing-ended");
-}
-
-void EditorClient::didWriteSelectionToPasteboard()
-{
- notImplemented();
-}
-
-void EditorClient::willWriteSelectionToPasteboard(WebCore::Range*)
-{
-}
-
-void EditorClient::getClientPasteboardDataForRange(WebCore::Range*, Vector<String>&, Vector<RefPtr<WebCore::SharedBuffer> >&)
-{
-}
-
-void EditorClient::didSetSelectionTypesForPasteboard()
-{
- notImplemented();
-}
-
-void EditorClient::registerUndoStep(WTF::PassRefPtr<WebCore::UndoStep> step)
-{
- if (undoStack.size() == maximumUndoStackDepth)
- undoStack.removeFirst();
- if (!m_isInRedo)
- redoStack.clear();
- undoStack.append(step);
-}
-
-void EditorClient::registerRedoStep(WTF::PassRefPtr<WebCore::UndoStep> step)
-{
- redoStack.append(step);
-}
-
-void EditorClient::clearUndoRedoOperations()
-{
- undoStack.clear();
- redoStack.clear();
-}
-
-bool EditorClient::canCopyCut(WebCore::Frame*, bool defaultValue) const
-{
- return defaultValue;
-}
-
-bool EditorClient::canPaste(WebCore::Frame*, bool defaultValue) const
-{
- return defaultValue;
-}
-
-bool EditorClient::canUndo() const
-{
- return !undoStack.isEmpty();
-}
-
-bool EditorClient::canRedo() const
-{
- return !redoStack.isEmpty();
-}
-
-void EditorClient::undo()
-{
- if (canUndo()) {
- RefPtr<WebCore::UndoStep> step(*(--undoStack.end()));
- undoStack.remove(--undoStack.end());
- // unapply will call us back to push this command onto the redo stack.
- step->unapply();
- }
-}
-
-void EditorClient::redo()
-{
- if (canRedo()) {
- RefPtr<WebCore::UndoStep> step(*(--redoStack.end()));
- redoStack.remove(--redoStack.end());
-
- ASSERT(!m_isInRedo);
- m_isInRedo = true;
- // reapply will call us back to push this command onto the undo stack.
- step->reapply();
- m_isInRedo = false;
- }
-}
-
-bool EditorClient::shouldInsertNode(Node* node, Range* range, EditorInsertAction action)
-{
- gboolean accept = TRUE;
- GRefPtr<WebKitDOMRange> kitRange(adoptGRef(kit(range)));
- GRefPtr<WebKitDOMNode> kitNode(adoptGRef(kit(node)));
- g_signal_emit_by_name(m_webView, "should-insert-node", kitNode.get(), kitRange.get(), kit(action), &accept);
- return accept;
-}
-
-void EditorClient::pageDestroyed()
-{
- delete this;
-}
-
-bool EditorClient::smartInsertDeleteEnabled()
-{
- WebCore::Page* corePage = core(m_webView);
- if (!corePage)
- return false;
- return corePage->settings()->smartInsertDeleteEnabled();
-}
-
-bool EditorClient::isSelectTrailingWhitespaceEnabled()
-{
- WebCore::Page* corePage = core(m_webView);
- if (!corePage)
- return false;
- return corePage->settings()->selectTrailingWhitespaceEnabled();
-}
-
-void EditorClient::toggleContinuousSpellChecking()
-{
- WebKitWebSettings* settings = webkit_web_view_get_settings(m_webView);
-
- gboolean enabled;
- g_object_get(settings, "enable-spell-checking", &enabled, NULL);
-
- g_object_set(settings, "enable-spell-checking", !enabled, NULL);
-}
-
-void EditorClient::toggleGrammarChecking()
-{
-}
-
-bool EditorClient::executePendingEditorCommands(Frame* frame, bool allowTextInsertion)
-{
- Vector<Editor::Command> commands;
- for (size_t i = 0; i < m_pendingEditorCommands.size(); i++) {
- Editor::Command command = frame->editor().command(m_pendingEditorCommands.at(i).utf8().data());
- if (command.isTextInsertion() && !allowTextInsertion)
- return false;
-
- commands.append(command);
- }
-
- bool success = true;
- for (size_t i = 0; i < commands.size(); i++) {
- if (!commands.at(i).execute()) {
- success = false;
- break;
- }
- }
-
- m_pendingEditorCommands.clear();
- return success;
-}
-
-static bool keyboardEventHadCompositionResults(KeyboardEvent* event)
-{
- if (event->type() != eventNames().keydownEvent)
- return false;
-
- const PlatformKeyboardEvent* platformEvent = event->keyEvent();
- if (!platformEvent)
- return false;
-
- return platformEvent->compositionResults().compositionUpdated();
-}
-
-void EditorClient::handleKeyboardEvent(KeyboardEvent* event)
-{
- Node* node = event->target()->toNode();
- ASSERT(node);
- Frame* frame = node->document()->frame();
- ASSERT(frame);
-
- const PlatformKeyboardEvent* platformEvent = event->keyEvent();
- if (!platformEvent)
- return;
-
- if (keyboardEventHadCompositionResults(event))
- return;
-
- KeyBindingTranslator::EventType type = event->type() == eventNames().keydownEvent ?
- KeyBindingTranslator::KeyDown : KeyBindingTranslator::KeyPress;
- m_keyBindingTranslator.getEditorCommandsForKeyEvent(platformEvent->gdkEventKey(), type, m_pendingEditorCommands);
- if (m_pendingEditorCommands.size() > 0) {
-
- // During RawKeyDown events if an editor command will insert text, defer
- // the insertion until the keypress event. We want keydown to bubble up
- // through the DOM first.
- if (platformEvent->type() == PlatformEvent::RawKeyDown) {
- if (executePendingEditorCommands(frame, false))
- event->setDefaultHandled();
-
- return;
- }
-
- // Only allow text insertion commands if the current node is editable.
- if (executePendingEditorCommands(frame, frame->editor().canEdit())) {
- event->setDefaultHandled();
- return;
- }
- m_pendingEditorCommands.clear();
- }
-
- // Don't allow text insertion for nodes that cannot edit.
- if (!frame->editor().canEdit())
- return;
-
- // This is just a normal text insertion, so wait to execute the insertion
- // until a keypress event happens. This will ensure that the insertion will not
- // be reflected in the contents of the field until the keyup DOM event.
- if (event->type() != eventNames().keypressEvent)
- return;
-
- // Don't insert null or control characters as they can result in unexpected behaviour
- if (event->charCode() < ' ')
- return;
-
- // Don't insert anything if a modifier is pressed
- if (platformEvent->ctrlKey() || platformEvent->altKey())
- return;
-
- if (frame->editor().insertText(platformEvent->text(), event))
- event->setDefaultHandled();
-}
-
-void EditorClient::handleInputMethodKeydown(KeyboardEvent* event)
-{
- // Input method results are handled in handleKeyboardEvent, so that we can wait
- // to trigger composition updates until after the keydown event handler. This better
- // matches other browsers.
- const PlatformKeyboardEvent* platformEvent = event->keyEvent();
- if (platformEvent && platformEvent->compositionResults().compositionUpdated())
- event->preventDefault();
-}
-
-EditorClient::EditorClient(WebKitWebView* webView)
- : m_isInRedo(false)
-#if ENABLE(SPELLCHECK)
- , m_textCheckerClient(WEBKIT_SPELL_CHECKER(webkit_get_text_checker()))
-#endif
- , m_webView(webView)
-{
-}
-
-EditorClient::~EditorClient()
-{
-}
-
-void EditorClient::textFieldDidBeginEditing(Element*)
-{
-}
-
-void EditorClient::textFieldDidEndEditing(Element*)
-{
-}
-
-void EditorClient::textDidChangeInTextField(Element*)
-{
-}
-
-bool EditorClient::doTextFieldCommandFromEvent(Element*, KeyboardEvent*)
-{
- return false;
-}
-
-void EditorClient::textWillBeDeletedInTextField(Element*)
-{
- notImplemented();
-}
-
-void EditorClient::textDidChangeInTextArea(Element*)
-{
- notImplemented();
-}
-
-void EditorClient::updateSpellingUIWithGrammarString(const String&, const GrammarDetail&)
-{
- notImplemented();
-}
-
-void EditorClient::updateSpellingUIWithMisspelledWord(const String&)
-{
- notImplemented();
-}
-
-void EditorClient::showSpellingUI(bool)
-{
- notImplemented();
-}
-
-bool EditorClient::spellingUIIsShowing()
-{
- notImplemented();
- return false;
-}
-
-bool EditorClient::supportsGlobalSelection()
-{
-#if PLATFORM(X11)
- return true;
-#else
- return false;
-#endif
-}
-
-}
diff --git a/Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.h
deleted file mode 100644
index c99f71eb6..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.h
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
- * Copyright (C) 2006 Zack Rusin <zack@kde.org>
- * Copyright (C) 2006 Apple Computer, Inc.
- * Copyright (C) 2010 Martin Robinson <mrobinson@webkit.org>
- *
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef EditorClientGtk_h
-#define EditorClientGtk_h
-
-#include "EditorClient.h"
-#include "KeyBindingTranslator.h"
-#include "TextCheckerClient.h"
-#include <wtf/Deque.h>
-#include <wtf/Forward.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/gobject/GRefPtr.h>
-
-#if ENABLE(SPELLCHECK)
-#include "TextCheckerClientGtk.h"
-#else
-#include "EmptyClients.h"
-#endif
-
-typedef struct _WebKitWebView WebKitWebView;
-
-namespace WebCore {
-class Frame;
-class KeyboardEvent;
-}
-
-namespace WebKit {
-
-class EditorClient : public WebCore::EditorClient {
- protected:
- bool m_isInRedo;
-
- WTF::Deque<WTF::RefPtr<WebCore::UndoStep> > undoStack;
- WTF::Deque<WTF::RefPtr<WebCore::UndoStep> > redoStack;
-
- public:
- EditorClient(WebKitWebView*);
- ~EditorClient();
- WebKitWebView* webView() { return m_webView; }
- void addPendingEditorCommand(const char* command) { m_pendingEditorCommands.append(command); }
- void generateEditorCommands(const WebCore::KeyboardEvent*);
- bool executePendingEditorCommands(WebCore::Frame*, bool);
-
- // from EditorClient
- virtual void pageDestroyed();
- virtual void frameWillDetachPage(WebCore::Frame*) { }
-
- virtual bool shouldDeleteRange(WebCore::Range*);
- virtual bool smartInsertDeleteEnabled();
- virtual bool isSelectTrailingWhitespaceEnabled();
- virtual bool isContinuousSpellCheckingEnabled();
- virtual void toggleContinuousSpellChecking();
- virtual bool isGrammarCheckingEnabled();
- virtual void toggleGrammarChecking();
- virtual int spellCheckerDocumentTag();
-
- virtual bool shouldBeginEditing(WebCore::Range*);
- virtual bool shouldEndEditing(WebCore::Range*);
- virtual bool shouldInsertNode(WebCore::Node*, WebCore::Range*, WebCore::EditorInsertAction);
- virtual bool shouldInsertText(const WTF::String&, WebCore::Range*, WebCore::EditorInsertAction);
- virtual bool shouldChangeSelectedRange(WebCore::Range* fromRange, WebCore::Range* toRange, WebCore::EAffinity, bool stillSelecting);
-
- virtual bool shouldApplyStyle(WebCore::StylePropertySet*, WebCore::Range*);
-
- virtual bool shouldMoveRangeAfterDelete(WebCore::Range*, WebCore::Range*);
-
- virtual void didBeginEditing();
- virtual void respondToChangedContents();
- virtual void respondToChangedSelection(WebCore::Frame*);
- virtual void didEndEditing();
- virtual void willWriteSelectionToPasteboard(WebCore::Range*);
- virtual void didWriteSelectionToPasteboard();
- virtual void getClientPasteboardDataForRange(WebCore::Range*, Vector<String>& pasteboardTypes, Vector<RefPtr<WebCore::SharedBuffer> >& pasteboardData);
- virtual void didSetSelectionTypesForPasteboard();
-
- virtual void registerUndoStep(WTF::PassRefPtr<WebCore::UndoStep>);
- virtual void registerRedoStep(WTF::PassRefPtr<WebCore::UndoStep>);
- virtual void clearUndoRedoOperations();
-
- virtual bool canCopyCut(WebCore::Frame*, bool defaultValue) const;
- virtual bool canPaste(WebCore::Frame*, bool defaultValue) const;
- virtual bool canUndo() const;
- virtual bool canRedo() const;
-
- virtual void undo();
- virtual void redo();
-
- virtual void handleKeyboardEvent(WebCore::KeyboardEvent*);
- virtual void handleInputMethodKeydown(WebCore::KeyboardEvent*);
-
- virtual void textFieldDidBeginEditing(WebCore::Element*);
- virtual void textFieldDidEndEditing(WebCore::Element*);
- virtual void textDidChangeInTextField(WebCore::Element*);
- virtual bool doTextFieldCommandFromEvent(WebCore::Element*, WebCore::KeyboardEvent*);
- virtual void textWillBeDeletedInTextField(WebCore::Element*);
- virtual void textDidChangeInTextArea(WebCore::Element*);
-
- virtual WebCore::TextCheckerClient* textChecker() { return &m_textCheckerClient; }
-
- virtual void updateSpellingUIWithGrammarString(const WTF::String&, const WebCore::GrammarDetail&);
- virtual void updateSpellingUIWithMisspelledWord(const WTF::String&);
- virtual void showSpellingUI(bool show);
- virtual bool spellingUIIsShowing();
- virtual void willSetInputMethodState();
- virtual void setInputMethodState(bool enabled);
-
- virtual bool shouldShowUnicodeMenu();
-
- virtual bool supportsGlobalSelection() OVERRIDE;
-
- private:
-#if ENABLE(SPELLCHECK)
- TextCheckerClientGtk m_textCheckerClient;
-#else
- WebCore::EmptyTextCheckerClient m_textCheckerClient;
-#endif
- WebKitWebView* m_webView;
- WebCore::KeyBindingTranslator m_keyBindingTranslator;
- Vector<WTF::String> m_pendingEditorCommands;
- };
-}
-
-#endif
-
-// vim: ts=4 sw=4 et
diff --git a/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp
deleted file mode 100644
index 4cac20606..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp
+++ /dev/null
@@ -1,1269 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 Alp Toker <alp@atoker.com>
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2007 Christian Dywan <christian@twotoasts.de>
- * Copyright (C) 2008, 2009 Collabora Ltd. All rights reserved.
- * Copyright (C) 2009, 2010 Gustavo Noronha Silva <gns@gnome.org>
- * Copyright (C) Research In Motion Limited 2009. All rights reserved.
- * Copyright (C) 2010 Igalia S.L.
- * Copyright (C) 2011 Apple Inc. All rights reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "FrameLoaderClientGtk.h"
-
-#include "ArchiveResource.h"
-#include "CachedFrame.h"
-#include "Color.h"
-#include "DOMObjectCache.h"
-#include "DocumentLoader.h"
-#include "DocumentLoaderGtk.h"
-#include "DumpRenderTreeSupportGtk.h"
-#include "ErrorsGtk.h"
-#include "FileSystem.h"
-#include "FormState.h"
-#include "FrameLoader.h"
-#include "FrameNetworkingContextGtk.h"
-#include "FrameTree.h"
-#include "FrameView.h"
-#include "GtkPluginWidget.h"
-#include "GtkUtilities.h"
-#include "HTMLAppletElement.h"
-#include "HTMLFormElement.h"
-#include "HTMLFrameElement.h"
-#include "HTMLFrameOwnerElement.h"
-#include "HTMLNames.h"
-#include "HTMLPlugInElement.h"
-#include "JSDOMBinding.h"
-#include "JSDOMWindow.h"
-#include "Language.h"
-#include "MIMETypeRegistry.h"
-#include "MouseEvent.h"
-#include "NotImplemented.h"
-#include "Page.h"
-#include "PluginDatabase.h"
-#include "ProgressTracker.h"
-#include "RenderPart.h"
-#include "RenderView.h"
-#include "ResourceHandle.h"
-#include "ResourceLoader.h"
-#include "ResourceRequest.h"
-#include "ScriptController.h"
-#include "Settings.h"
-#include "webkitauthenticationdialog.h"
-#include "webkiterror.h"
-#include "webkitfavicondatabase.h"
-#include "webkitfavicondatabaseprivate.h"
-#include "webkitglobals.h"
-#include "webkitglobalsprivate.h"
-#include "webkitnetworkrequest.h"
-#include "webkitnetworkrequestprivate.h"
-#include "webkitnetworkresponse.h"
-#include "webkitnetworkresponseprivate.h"
-#include "webkitsecurityoriginprivate.h"
-#include "webkitviewportattributes.h"
-#include "webkitviewportattributesprivate.h"
-#include "webkitwebdatasourceprivate.h"
-#include "webkitwebframe.h"
-#include "webkitwebframeprivate.h"
-#include "webkitwebnavigationaction.h"
-#include "webkitwebnavigationactionprivate.h"
-#include "webkitwebpolicydecision.h"
-#include "webkitwebpolicydecisionprivate.h"
-#include "webkitwebresource.h"
-#include "webkitwebresourceprivate.h"
-#include "webkitwebsettingsprivate.h"
-#include "webkitwebview.h"
-#include "webkitwebviewprivate.h"
-#include <JavaScriptCore/APICast.h>
-#include <gio/gio.h>
-#include <glib.h>
-#include <glib/gi18n-lib.h>
-#include <stdio.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/gobject/GRefPtr.h>
-#include <wtf/text/CString.h>
-#include <wtf/text/StringConcatenate.h>
-
-using namespace WebCore;
-
-namespace WebKit {
-
-FrameLoaderClient::FrameLoaderClient(WebKitWebFrame* frame)
- : m_frame(frame)
- , m_policyDecision(0)
- , m_loadingErrorPage(false)
- , m_pluginView(0)
- , m_hasSentResponseToPlugin(false)
-{
- ASSERT(m_frame);
-}
-
-FrameLoaderClient::~FrameLoaderClient()
-{
- if (m_policyDecision)
- g_object_unref(m_policyDecision);
-}
-
-
-String FrameLoaderClient::userAgent(const KURL& url)
-{
- WebKitWebSettings* settings = webkit_web_view_get_settings(getViewFromFrame(m_frame));
- GOwnPtr<gchar> userAgentString(webkitWebSettingsUserAgentForURI(settings, url.string().utf8().data()));
- return String::fromUTF8(userAgentString.get());
-}
-
-static void notifyStatus(WebKitWebFrame* frame, WebKitLoadStatus loadStatus)
-{
- frame->priv->loadStatus = loadStatus;
- g_object_notify(G_OBJECT(frame), "load-status");
-
- WebKitWebView* webView = getViewFromFrame(frame);
- if (frame == webkit_web_view_get_main_frame(webView)) {
- webView->priv->loadStatus = loadStatus;
- g_object_notify(G_OBJECT(webView), "load-status");
- }
-}
-
-WTF::PassRefPtr<WebCore::DocumentLoader> FrameLoaderClient::createDocumentLoader(const WebCore::ResourceRequest& request, const SubstituteData& substituteData)
-{
- RefPtr<WebKit::DocumentLoader> loader = WebKit::DocumentLoader::create(request, substituteData);
-
- GRefPtr<WebKitWebDataSource> webDataSource(adoptGRef(kitNew(loader.get())));
- loader->setDataSource(webDataSource.get());
-
- return loader.release();
-}
-
-void FrameLoaderClient::dispatchWillSubmitForm(FramePolicyFunction policyFunction, PassRefPtr<FormState>)
-{
- // FIXME: This is surely too simple
- ASSERT(policyFunction);
- if (!policyFunction)
- return;
- (core(m_frame)->loader()->policyChecker()->*policyFunction)(PolicyUse);
-}
-
-void FrameLoaderClient::committedLoad(WebCore::DocumentLoader* loader, const char* data, int length)
-{
- if (!m_pluginView) {
- ASSERT(loader->frame());
- loader->commitData(data, length);
-
- Frame* coreFrame = loader->frame();
- if (coreFrame && coreFrame->document()->isMediaDocument())
- loader->cancelMainResourceLoad(coreFrame->loader()->client()->pluginWillHandleLoadError(loader->response()));
- }
-
- if (m_pluginView) {
- if (!m_hasSentResponseToPlugin) {
- m_pluginView->didReceiveResponse(loader->response());
- m_hasSentResponseToPlugin = true;
- }
-
- // FIXME: We may want to investigate refactoring our plugin loading
- // code to be similar to mac's.
- // Also, see http://trac.webkit.org/changeset/24118.
- if (!m_pluginView)
- return;
-
- m_pluginView->didReceiveData(data, length);
- }
-}
-
-bool FrameLoaderClient::shouldUseCredentialStorage(WebCore::DocumentLoader*, unsigned long identifier)
-{
- return true;
-}
-
-void FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge(WebCore::DocumentLoader*, unsigned long identifier, const AuthenticationChallenge& challenge)
-{
- if (DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled()) {
- CString username;
- CString password;
- if (!DumpRenderTreeSupportGtk::s_authenticationCallback || !DumpRenderTreeSupportGtk::s_authenticationCallback(username, password)) {
- challenge.authenticationClient()->receivedRequestToContinueWithoutCredential(challenge);
- return;
- }
-
- challenge.authenticationClient()->receivedCredential(challenge, Credential(String::fromUTF8(username.data()), String::fromUTF8(password.data()), CredentialPersistenceForSession));
- return;
- }
-
- WebKitWebView* view = webkit_web_frame_get_web_view(m_frame);
-
- CredentialStorageMode credentialStorageMode;
- if (core(view)->settings()->privateBrowsingEnabled())
- credentialStorageMode = DisallowPersistentStorage;
- else
- credentialStorageMode = AllowPersistentStorage;
-
- GtkWidget* toplevel = gtk_widget_get_toplevel(GTK_WIDGET(view));
- GtkWidget* authDialog = createAuthenticationDialog(widgetIsOnscreenToplevelWindow(toplevel) ? GTK_WINDOW(toplevel) : 0, challenge, credentialStorageMode);
- gtk_widget_show(authDialog);
-}
-
-void FrameLoaderClient::dispatchDidCancelAuthenticationChallenge(WebCore::DocumentLoader*, unsigned long identifier, const AuthenticationChallenge&)
-{
- notImplemented();
-}
-
-// We convert this to string because it's easier to use strings as
-// keys in a GHashTable.
-static char* toString(unsigned long identifier)
-{
- return g_strdup_printf("%ld", identifier);
-}
-
-void FrameLoaderClient::dispatchWillSendRequest(WebCore::DocumentLoader* loader, unsigned long identifier, ResourceRequest& request, const ResourceResponse& redirectResponse)
-{
- GRefPtr<WebKitNetworkResponse> networkResponse(0);
-
- // We are adding one more resource to the load, or maybe we are
- // just redirecting a load.
- if (redirectResponse.isNull())
- static_cast<WebKit::DocumentLoader*>(loader)->increaseLoadCount(identifier);
- else
- networkResponse = adoptGRef(kitNew(redirectResponse));
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- GOwnPtr<gchar> identifierString(toString(identifier));
- WebKitWebResource* webResource = webkit_web_view_get_resource(webView, identifierString.get());
- GRefPtr<WebKitNetworkRequest> networkRequest(adoptGRef(kitNew(request)));
-
- if (!redirectResponse.isNull()) {
- // This is a redirect, so we need to update the WebResource's knowledge
- // of the URI.
- g_free(webResource->priv->uri);
- webResource->priv->uri = g_strdup(request.url().string().utf8().data());
- }
-
- g_signal_emit_by_name(webView, "resource-request-starting", m_frame, webResource, networkRequest.get(), networkResponse.get());
- g_signal_emit_by_name(m_frame, "resource-request-starting", webResource, networkRequest.get(), networkResponse.get());
-
- // Feed any changes back into the ResourceRequest object.
- SoupMessage* message = webkit_network_request_get_message(networkRequest.get());
- if (!message) {
- request.setURL(KURL(KURL(), String::fromUTF8(webkit_network_request_get_uri(networkRequest.get()))));
- return;
- }
-
- request.updateFromSoupMessage(message);
-}
-
-void FrameLoaderClient::assignIdentifierToInitialRequest(unsigned long identifier, WebCore::DocumentLoader* loader, const ResourceRequest& request)
-{
- GOwnPtr<gchar> identifierString(toString(identifier));
-
- WebKitWebResource* webResource = WEBKIT_WEB_RESOURCE(g_object_new(WEBKIT_TYPE_WEB_RESOURCE, "uri", request.url().string().utf8().data(), 0));
-
- if (loader == loader->frameLoader()->provisionalDocumentLoader()
- && loader->frameLoader()->isLoadingMainFrame()) {
- webkit_web_view_add_main_resource(getViewFromFrame(m_frame), identifierString.get(), webResource);
- return;
- }
-
- webkit_web_view_add_resource(getViewFromFrame(m_frame), identifierString.get(), webResource);
-}
-
-void FrameLoaderClient::postProgressStartedNotification()
-{
- WebKitWebView* webView = getViewFromFrame(m_frame);
- g_signal_emit_by_name(webView, "load-started", m_frame);
-
- g_object_notify(G_OBJECT(webView), "progress");
-}
-
-void FrameLoaderClient::postProgressEstimateChangedNotification()
-{
- WebKitWebView* webView = getViewFromFrame(m_frame);
- Page* corePage = core(webView);
-
- g_signal_emit_by_name(webView, "load-progress-changed", lround(corePage->progress()->estimatedProgress()*100));
-
- g_object_notify(G_OBJECT(webView), "progress");
-}
-
-void FrameLoaderClient::postProgressFinishedNotification()
-{
- WebKitWebView* webView = getViewFromFrame(m_frame);
- WebKitWebViewPrivate* privateData = webView->priv;
-
- // We can get a stopLoad() from dispose when the object is being
- // destroyed, don't emit the signal in that case.
- if (!privateData->disposing)
- g_signal_emit_by_name(webView, "load-finished", m_frame);
-}
-
-void FrameLoaderClient::frameLoaderDestroyed()
-{
- webkit_web_frame_core_frame_gone(m_frame);
- g_object_unref(m_frame);
- m_frame = 0;
- delete this;
-}
-
-void FrameLoaderClient::dispatchDidReceiveResponse(WebCore::DocumentLoader* loader, unsigned long identifier, const ResourceResponse& response)
-{
- // Update our knowledge of request soup flags - some are only set
- // after the request is done.
- loader->request().setSoupMessageFlags(response.soupMessageFlags());
-
- m_response = response;
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- GOwnPtr<gchar> identifierString(toString(identifier));
- WebKitWebResource* webResource = webkit_web_view_get_resource(webView, identifierString.get());
- GRefPtr<WebKitNetworkResponse> networkResponse(adoptGRef(kitNew(response)));
-
- g_signal_emit_by_name(webResource, "response-received", networkResponse.get());
- g_signal_emit_by_name(m_frame, "resource-response-received", webResource, networkResponse.get());
- g_signal_emit_by_name(webView, "resource-response-received", m_frame, webResource, networkResponse.get());
-}
-
-void FrameLoaderClient::dispatchDecidePolicyForResponse(FramePolicyFunction policyFunction, const ResourceResponse& response, const ResourceRequest& resourceRequest)
-{
- ASSERT(policyFunction);
- if (!policyFunction)
- return;
-
- if (resourceRequest.isNull()) {
- (core(m_frame)->loader()->policyChecker()->*policyFunction)(PolicyIgnore);
- return;
- }
-
- WebKitWebView* page = getViewFromFrame(m_frame);
- GRefPtr<WebKitNetworkRequest> request(adoptGRef(kitNew(resourceRequest)));
-
- WebKitWebPolicyDecision* policyDecision = webkit_web_policy_decision_new(m_frame, policyFunction);
- if (m_policyDecision)
- g_object_unref(m_policyDecision);
- m_policyDecision = policyDecision;
-
- String mimeType = response.mimeType();
-
- gboolean isHandled = false;
- g_signal_emit_by_name(page, "mime-type-policy-decision-requested", m_frame, request.get(), mimeType.utf8().data(), policyDecision, &isHandled);
-
- if (isHandled)
- return;
-
- GRefPtr<WebKitNetworkResponse> networkResponse(adoptGRef(webkit_web_frame_get_network_response(m_frame)));
- if (networkResponse) {
- ResourceResponse response = core(networkResponse.get());
- if (response.isAttachment()) {
- webkit_web_policy_decision_download(policyDecision);
- return;
- }
- }
-
- if (canShowMIMEType(mimeType))
- webkit_web_policy_decision_use(policyDecision);
- else
- webkit_web_policy_decision_ignore(policyDecision);
-}
-
-static WebKitWebNavigationAction* getNavigationAction(const NavigationAction& action, const char* targetFrame)
-{
- gint button = -1;
-
- const Event* event = action.event();
- if (event && event->isMouseEvent()) {
- const MouseEvent* mouseEvent = static_cast<const MouseEvent*>(event);
- // DOM button values are 0, 1 and 2 for left, middle and right buttons.
- // GTK+ uses 1, 2 and 3, so let's add 1 to remain consistent.
- button = mouseEvent->button() + 1;
- }
-
- gint modifierFlags = 0;
- UIEventWithKeyState* keyStateEvent = findEventWithKeyState(const_cast<Event*>(event));
- if (keyStateEvent) {
- if (keyStateEvent->shiftKey())
- modifierFlags |= GDK_SHIFT_MASK;
- if (keyStateEvent->ctrlKey())
- modifierFlags |= GDK_CONTROL_MASK;
- if (keyStateEvent->altKey())
- modifierFlags |= GDK_MOD1_MASK;
- if (keyStateEvent->metaKey())
- modifierFlags |= GDK_MOD2_MASK;
- }
-
- return WEBKIT_WEB_NAVIGATION_ACTION(g_object_new(WEBKIT_TYPE_WEB_NAVIGATION_ACTION,
- "reason", kit(action.type()),
- "original-uri", action.url().string().utf8().data(),
- "button", button,
- "modifier-state", modifierFlags,
- "target-frame", targetFrame,
- NULL));
-}
-
-void FrameLoaderClient::dispatchDecidePolicyForNewWindowAction(FramePolicyFunction policyFunction, const NavigationAction& action, const ResourceRequest& resourceRequest, PassRefPtr<FormState>, const String& frameName)
-{
- ASSERT(policyFunction);
- if (!policyFunction)
- return;
-
- if (resourceRequest.isNull()) {
- (core(m_frame)->loader()->policyChecker()->*policyFunction)(PolicyIgnore);
- return;
- }
-
- WebKitWebPolicyDecision* policyDecision = webkit_web_policy_decision_new(m_frame, policyFunction);
-
- if (m_policyDecision)
- g_object_unref(m_policyDecision);
- m_policyDecision = policyDecision;
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- GRefPtr<WebKitNetworkRequest> request(adoptGRef(webkit_network_request_new(resourceRequest.url().string().utf8().data())));
- GRefPtr<WebKitWebNavigationAction> navigationAction(adoptGRef(getNavigationAction(action, frameName.utf8().data())));
- gboolean isHandled = false;
-
- g_signal_emit_by_name(webView, "new-window-policy-decision-requested", m_frame, request.get(), navigationAction.get(), policyDecision, &isHandled);
-
- // FIXME: I think Qt version marshals this to another thread so when we
- // have multi-threaded download, we might need to do the same
- if (!isHandled)
- (core(m_frame)->loader()->policyChecker()->*policyFunction)(PolicyUse);
-}
-
-void FrameLoaderClient::dispatchDecidePolicyForNavigationAction(FramePolicyFunction policyFunction, const NavigationAction& action, const ResourceRequest& resourceRequest, PassRefPtr<FormState>)
-{
- ASSERT(policyFunction);
- if (!policyFunction)
- return;
-
- if (resourceRequest.isNull()) {
- (core(m_frame)->loader()->policyChecker()->*policyFunction)(PolicyIgnore);
- return;
- }
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- GRefPtr<WebKitNetworkRequest> request(adoptGRef(kitNew(resourceRequest)));
- WebKitNavigationResponse response;
- /*
- * We still support the deprecated navigation-requested signal, if the
- * application doesn't ignore the navigation then the new signal is
- * emitted.
- * navigation-policy-decision-requested must be emitted after
- * navigation-requested as the policy decision can be async.
- */
- g_signal_emit_by_name(webView, "navigation-requested", m_frame, request.get(), &response);
-
- if (response == WEBKIT_NAVIGATION_RESPONSE_IGNORE) {
- (core(m_frame)->loader()->policyChecker()->*policyFunction)(PolicyIgnore);
- return;
- }
-
- WebKitWebPolicyDecision* policyDecision = webkit_web_policy_decision_new(m_frame, policyFunction);
- if (m_policyDecision)
- g_object_unref(m_policyDecision);
- m_policyDecision = policyDecision;
-
- GRefPtr<WebKitWebNavigationAction> navigationAction(adoptGRef(getNavigationAction(action, 0)));
- gboolean isHandled = false;
- g_signal_emit_by_name(webView, "navigation-policy-decision-requested", m_frame, request.get(), navigationAction.get(), policyDecision, &isHandled);
-
- // FIXME Implement default behavior when we can query the backend what protocols it supports
- if (!isHandled)
- webkit_web_policy_decision_use(m_policyDecision);
-}
-
-PassRefPtr<Widget> FrameLoaderClient::createPlugin(const IntSize& pluginSize, HTMLPlugInElement* element, const KURL& url, const Vector<String>& paramNames, const Vector<String>& paramValues, const String& mimeType, bool loadManually)
-{
- /* Check if we want to embed a GtkWidget, fallback to plugins later */
- CString urlString = url.string().utf8();
- CString mimeTypeString = mimeType.utf8();
-
- ASSERT(paramNames.size() == paramValues.size());
- GRefPtr<GHashTable> hash = adoptGRef(g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free));
- for (unsigned i = 0; i < paramNames.size(); ++i) {
- g_hash_table_insert(hash.get(),
- g_strdup(paramNames[i].utf8().data()),
- g_strdup(paramValues[i].utf8().data()));
- }
-
- GtkWidget* gtkWidget = 0;
- g_signal_emit_by_name(getViewFromFrame(m_frame), "create-plugin-widget",
- mimeTypeString.data(), urlString.data(), hash.get(), &gtkWidget);
- if (gtkWidget) {
- gtk_container_add(GTK_CONTAINER(getViewFromFrame(m_frame)), gtkWidget);
- return adoptRef(new GtkPluginWidget(gtkWidget));
- }
-
- RefPtr<PluginView> pluginView = PluginView::create(core(m_frame), pluginSize, element, url, paramNames, paramValues, mimeType, loadManually);
-
- if (pluginView->status() == PluginStatusLoadedSuccessfully)
- return pluginView;
-
- return 0;
-}
-
-PassRefPtr<Frame> FrameLoaderClient::createFrame(const KURL& url, const String& name, HTMLFrameOwnerElement* ownerElement,
- const String& referrer, bool allowsScrolling, int marginWidth, int marginHeight)
-{
- ASSERT(m_frame);
- Frame* parentFrame = core(m_frame);
- WebKitWebView* webView = getViewFromFrame(m_frame);
- WebCore::Page* page = core(webView);
- ASSERT(page == parentFrame->page());
-
- WebKitWebFrame* kitFrame = WEBKIT_WEB_FRAME(g_object_new(WEBKIT_TYPE_WEB_FRAME, NULL));
- WebKitWebFramePrivate* framePrivate = kitFrame->priv;
- framePrivate->webView = webView;
-
- RefPtr<Frame> childFrame = Frame::create(page, ownerElement, new FrameLoaderClient(kitFrame));
- framePrivate->coreFrame = childFrame.get();
-
- childFrame->tree()->setName(name);
- parentFrame->tree()->appendChild(childFrame);
- childFrame->init();
-
- // The creation of the frame may have run arbitrary JavaScript that removed it from the page already.
- if (!childFrame->page())
- return 0;
-
- g_signal_emit_by_name(webView, "frame-created", kitFrame);
-
- parentFrame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
-
- // The frame's onload handler may have removed it from the document.
- if (!childFrame->tree()->parent())
- return 0;
-
- return childFrame.release();
-}
-
-void FrameLoaderClient::redirectDataToPlugin(Widget* pluginWidget)
-{
- m_pluginView = toPluginView(pluginWidget);
- if (pluginWidget)
- m_hasSentResponseToPlugin = false;
-}
-
-PassRefPtr<Widget> FrameLoaderClient::createJavaAppletWidget(const IntSize& pluginSize, HTMLAppletElement* element, const KURL& baseURL, const Vector<String>& paramNames, const Vector<String>& paramValues)
-{
- return FrameLoaderClient::createPlugin(pluginSize, element, baseURL, paramNames, paramValues, "application/x-java-applet", false);
-}
-
-ObjectContentType FrameLoaderClient::objectContentType(const KURL& url, const String& mimeType, bool shouldPreferPlugInsForImages)
-{
- return FrameLoader::defaultObjectContentType(url, mimeType, shouldPreferPlugInsForImages);
-}
-
-String FrameLoaderClient::overrideMediaType() const
-{
- notImplemented();
- return String();
-}
-
-void FrameLoaderClient::dispatchDidClearWindowObjectInWorld(DOMWrapperWorld* world)
-{
- if (world != mainThreadNormalWorld())
- return;
-
- // Is this obsolete now?
- g_signal_emit_by_name(m_frame, "cleared");
-
- Frame* coreFrame = core(m_frame);
- ASSERT(coreFrame);
-
- Settings* settings = coreFrame->settings();
- if (!settings || !settings->isScriptEnabled())
- return;
-
- // TODO: Consider using g_signal_has_handler_pending() to avoid the overhead
- // when there are no handlers.
- JSGlobalContextRef context = toGlobalRef(coreFrame->script()->globalObject(mainThreadNormalWorld())->globalExec());
- JSObjectRef windowObject = toRef(coreFrame->script()->globalObject(mainThreadNormalWorld()));
- ASSERT(windowObject);
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- g_signal_emit_by_name(webView, "window-object-cleared", m_frame, context, windowObject);
-
- // TODO: Re-attach debug clients if present.
- // The Win port has an example of how we might do this.
-}
-
-void FrameLoaderClient::documentElementAvailable()
-{
-}
-
-void FrameLoaderClient::didPerformFirstNavigation() const
-{
- WebKitCacheModel cacheModel = webkit_get_cache_model();
- // If user agents do not determine the cache model, we use WEBKIT_CACHE_MODEL_WEB_BROWSER by default.
- if (cacheModel == WEBKIT_CACHE_MODEL_DEFAULT)
- webkit_set_cache_model(WEBKIT_CACHE_MODEL_WEB_BROWSER);
-}
-
-void FrameLoaderClient::registerForIconNotification(bool shouldRegister)
-{
- webkitWebViewRegisterForIconNotification(getViewFromFrame(m_frame), shouldRegister);
-}
-
-void FrameLoaderClient::setMainFrameDocumentReady(bool ready)
-{
- if (!ready)
- DOMObjectCache::clearByFrame(core(m_frame));
-}
-
-bool FrameLoaderClient::hasWebView() const
-{
- return getViewFromFrame(m_frame);
-}
-
-void FrameLoaderClient::dispatchDidFinishLoad()
-{
- if (m_loadingErrorPage) {
- m_loadingErrorPage = false;
- return;
- }
- notifyStatus(m_frame, WEBKIT_LOAD_FINISHED);
-}
-
-void FrameLoaderClient::frameLoadCompleted()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::saveViewStateToItem(HistoryItem*)
-{
- notImplemented();
-}
-
-void FrameLoaderClient::restoreViewState()
-{
- notImplemented();
-}
-
-bool FrameLoaderClient::shouldGoToHistoryItem(HistoryItem* item) const
-{
- // FIXME: This is a very simple implementation. More sophisticated
- // implementation would delegate the decision to a PolicyDelegate.
- // See mac implementation for example.
- return item != 0;
-}
-
-bool FrameLoaderClient::shouldStopLoadingForHistoryItem(HistoryItem* item) const
-{
- return true;
-}
-
-void FrameLoaderClient::didDisplayInsecureContent()
-{
- if (!DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled() || !DumpRenderTreeSupportGtk::s_frameLoadEventCallback)
- return;
- DumpRenderTreeSupportGtk::s_frameLoadEventCallback(m_frame, DumpRenderTreeSupportGtk::DidDisplayInsecureContent, 0);
-}
-
-void FrameLoaderClient::didRunInsecureContent(SecurityOrigin* coreOrigin, const KURL& url)
-{
- g_signal_emit_by_name(m_frame, "insecure-content-run", kit(coreOrigin), url.string().utf8().data());
-}
-
-void FrameLoaderClient::didDetectXSS(const KURL&, bool)
-{
- if (!DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled() || !DumpRenderTreeSupportGtk::s_frameLoadEventCallback)
- return;
- DumpRenderTreeSupportGtk::s_frameLoadEventCallback(m_frame, DumpRenderTreeSupportGtk::DidDetectXSS, 0);
-}
-
-void FrameLoaderClient::forceLayout()
-{
- FrameView* view = core(m_frame)->view();
- if (view)
- view->forceLayout(true);
-}
-
-void FrameLoaderClient::forceLayoutForNonHTML()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::setCopiesOnScroll()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::detachedFromParent2()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::detachedFromParent3()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::dispatchDidHandleOnloadEvents()
-{
- g_signal_emit_by_name(getViewFromFrame(m_frame), "onload-event", m_frame);
-}
-
-void FrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad()
-{
- if (!DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled() || !DumpRenderTreeSupportGtk::s_frameLoadEventCallback)
- return;
- DumpRenderTreeSupportGtk::s_frameLoadEventCallback(m_frame, DumpRenderTreeSupportGtk::DidReceiveServerRedirectForProvisionalLoad, 0);
-}
-
-void FrameLoaderClient::dispatchDidCancelClientRedirect()
-{
- if (!DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled() || !DumpRenderTreeSupportGtk::s_frameLoadEventCallback)
- return;
- DumpRenderTreeSupportGtk::s_frameLoadEventCallback(m_frame, DumpRenderTreeSupportGtk::DidCancelClientRedirect, 0);
-}
-
-void FrameLoaderClient::dispatchWillPerformClientRedirect(const KURL& url, double, double)
-{
- if (!DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled() || !DumpRenderTreeSupportGtk::s_frameLoadEventCallback)
- return;
- DumpRenderTreeSupportGtk::s_frameLoadEventCallback(m_frame, DumpRenderTreeSupportGtk::WillPerformClientRedirectToURL, url.string().utf8().data());
-}
-
-void FrameLoaderClient::dispatchDidChangeLocationWithinPage()
-{
- WebKitWebFramePrivate* priv = m_frame->priv;
- g_free(priv->uri);
- priv->uri = g_strdup(core(m_frame)->document()->url().string().utf8().data());
- g_object_notify(G_OBJECT(m_frame), "uri");
- WebKitWebView* webView = getViewFromFrame(m_frame);
- if (m_frame == webkit_web_view_get_main_frame(webView))
- g_object_notify(G_OBJECT(webView), "uri");
-}
-
-void FrameLoaderClient::dispatchDidNavigateWithinPage()
-{
- WebKitWebView* webView = getViewFromFrame(m_frame);
- WebKitWebFrame* mainFrame = webView->priv->mainFrame;
- WebKitWebDataSource* dataSource = webkit_web_frame_get_data_source(mainFrame);
- bool loaderCompleted = !webkit_web_data_source_is_loading(dataSource);
-
- if (!loaderCompleted)
- return;
-
- // No provisional load started, because:
- // - It will break (no provisional data source at this point).
- // - There's no provisional load going on anyway, the URI is being
- // programatically changed.
- // FIXME: this is not ideal, but it seems safer than changing our
- // current contract with the clients about provisional data
- // sources not being '0' during the provisional load stage.
- dispatchDidCommitLoad(true);
- dispatchDidFinishLoad();
-}
-
-void FrameLoaderClient::dispatchDidPushStateWithinPage()
-{
- dispatchDidNavigateWithinPage();
-}
-
-void FrameLoaderClient::dispatchDidReplaceStateWithinPage()
-{
- dispatchDidNavigateWithinPage();
-}
-
-void FrameLoaderClient::dispatchDidPopStateWithinPage()
-{
- // No need to do anything, we already called
- // dispatchDidNavigateWithinPage() in PushStateWithinPage().
-}
-
-void FrameLoaderClient::dispatchWillClose()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::dispatchDidReceiveIcon()
-{
- if (m_loadingErrorPage)
- return;
-
- // IconController loads icons only for the main frame.
- WebKitWebView* webView = getViewFromFrame(m_frame);
- ASSERT(m_frame == webkit_web_view_get_main_frame(webView));
-
- const char* frameURI = webkit_web_frame_get_uri(m_frame);
- WebKitFaviconDatabase* database = webkit_get_favicon_database();
- webkitFaviconDatabaseDispatchDidReceiveIcon(database, frameURI);
- webkitWebViewIconLoaded(database, frameURI, webView);
-}
-
-void FrameLoaderClient::dispatchDidStartProvisionalLoad()
-{
- if (m_loadingErrorPage)
- return;
-
- notifyStatus(m_frame, WEBKIT_LOAD_PROVISIONAL);
-}
-
-void FrameLoaderClient::dispatchDidReceiveTitle(const StringWithDirection& title)
-{
- if (m_loadingErrorPage)
- return;
-
- WebKitWebFramePrivate* priv = m_frame->priv;
- g_free(priv->title);
- // FIXME: use direction of title.
- priv->title = g_strdup(title.string().utf8().data());
-
- g_signal_emit_by_name(m_frame, "title-changed", priv->title);
- g_object_notify(G_OBJECT(m_frame), "title");
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- if (m_frame == webkit_web_view_get_main_frame(webView)) {
- g_signal_emit_by_name(webView, "title-changed", m_frame, title.string().utf8().data());
- g_object_notify(G_OBJECT(webView), "title");
- }
-}
-
-void FrameLoaderClient::dispatchDidChangeIcons(WebCore::IconType)
-{
- notImplemented();
-}
-
-void FrameLoaderClient::dispatchDidCommitLoad()
-{
- FrameLoaderClient::dispatchDidCommitLoad(false);
-}
-
-void FrameLoaderClient::dispatchDidCommitLoad(bool isNavigatingWithinPage)
-{
- if (m_loadingErrorPage)
- return;
-
- /* Update the URI once first data has been received.
- * This means the URI is valid and successfully identify the page that's going to be loaded.
- */
- g_object_freeze_notify(G_OBJECT(m_frame));
-
- WebKitWebFramePrivate* priv = m_frame->priv;
- g_free(priv->uri);
- priv->uri = g_strdup(core(m_frame)->loader()->activeDocumentLoader()->url().string().utf8().data());
- g_object_notify(G_OBJECT(m_frame), "uri");
- if (!isNavigatingWithinPage) {
- g_free(priv->title);
- priv->title = 0;
- g_object_notify(G_OBJECT(m_frame), "title");
- }
-
- g_signal_emit_by_name(m_frame, "load-committed");
- notifyStatus(m_frame, WEBKIT_LOAD_COMMITTED);
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- if (m_frame == webkit_web_view_get_main_frame(webView)) {
- g_object_freeze_notify(G_OBJECT(webView));
- g_object_notify(G_OBJECT(webView), "uri");
- g_object_thaw_notify(G_OBJECT(webView));
- if (!isNavigatingWithinPage)
- g_object_notify(G_OBJECT(webView), "title");
- g_signal_emit_by_name(webView, "load-committed", m_frame);
- }
-
- g_object_thaw_notify(G_OBJECT(m_frame));
-}
-
-void FrameLoaderClient::dispatchDidFinishDocumentLoad()
-{
- WebKitWebView* webView = getViewFromFrame(m_frame);
- g_signal_emit_by_name(webView, "document-load-finished", m_frame);
-}
-
-void FrameLoaderClient::dispatchDidLayout(LayoutMilestones milestones)
-{
- if (m_loadingErrorPage)
- return;
-
- if (milestones & DidFirstVisuallyNonEmptyLayout)
- notifyStatus(m_frame, WEBKIT_LOAD_FIRST_VISUALLY_NON_EMPTY_LAYOUT);
-}
-
-void FrameLoaderClient::dispatchShow()
-{
- WebKitWebView* webView = getViewFromFrame(m_frame);
- webkit_web_view_notify_ready(webView);
-}
-
-void FrameLoaderClient::cancelPolicyCheck()
-{
- //FIXME Add support for more than one policy decision at once
- if (m_policyDecision)
- webkit_web_policy_decision_cancel(m_policyDecision);
-}
-
-void FrameLoaderClient::willChangeTitle(WebCore::DocumentLoader*)
-{
- notImplemented();
-}
-
-void FrameLoaderClient::didChangeTitle(WebCore::DocumentLoader *l)
-{
- setTitle(l->title(), l->url());
-}
-
-bool FrameLoaderClient::canHandleRequest(const ResourceRequest&) const
-{
- notImplemented();
- return true;
-}
-
-bool FrameLoaderClient::canShowMIMETypeAsHTML(const String& MIMEType) const
-{
- notImplemented();
- return false;
-}
-
-bool FrameLoaderClient::canShowMIMEType(const String& type) const
-{
- return (MIMETypeRegistry::canShowMIMEType(type)
- || PluginDatabase::installedPlugins()->isMIMETypeRegistered(type));
-}
-
-bool FrameLoaderClient::representationExistsForURLScheme(const String&) const
-{
- notImplemented();
- return false;
-}
-
-String FrameLoaderClient::generatedMIMETypeForURLScheme(const String&) const
-{
- notImplemented();
- return String();
-}
-
-void FrameLoaderClient::finishedLoading(WebCore::DocumentLoader*)
-{
- if (m_pluginView) {
- m_pluginView->didFinishLoading();
- m_pluginView = 0;
- m_hasSentResponseToPlugin = false;
- }
-}
-
-
-void FrameLoaderClient::provisionalLoadStarted()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::didFinishLoad() {
- notImplemented();
-}
-
-void FrameLoaderClient::prepareForDataSourceReplacement()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::setTitle(const StringWithDirection& title, const KURL& url)
-{
- WebKitWebFramePrivate* frameData = m_frame->priv;
- g_free(frameData->title);
- // FIXME: use direction of title.
- frameData->title = g_strdup(title.string().utf8().data());
-}
-
-void FrameLoaderClient::dispatchDidReceiveContentLength(WebCore::DocumentLoader*, unsigned long identifier, int dataLength)
-{
- WebKitWebView* webView = getViewFromFrame(m_frame);
- GOwnPtr<gchar> identifierString(toString(identifier));
- WebKitWebResource* webResource = webkit_web_view_get_resource(webView, identifierString.get());
-
- g_signal_emit_by_name(webResource, "content-length-received", dataLength);
- g_signal_emit_by_name(m_frame, "resource-content-length-received", webResource, dataLength);
- g_signal_emit_by_name(webView, "resource-content-length-received", m_frame, webResource, dataLength);
-}
-
-void FrameLoaderClient::dispatchDidFinishLoading(WebCore::DocumentLoader* loader, unsigned long identifier)
-{
- static_cast<WebKit::DocumentLoader*>(loader)->decreaseLoadCount(identifier);
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- GOwnPtr<gchar> identifierString(toString(identifier));
- WebKitWebResource* webResource = webkit_web_view_get_resource(webView, identifierString.get());
-
- // A NULL WebResource means the load has been interrupted, and
- // replaced by another one while this resource was being loaded.
- if (!webResource)
- return;
-
- const char* uri = webkit_web_resource_get_uri(webResource);
- RefPtr<ArchiveResource> coreResource(loader->subresource(KURL(KURL(), uri)));
-
- // If coreResource is NULL here, the resource failed to load,
- // unless it's the main resource.
- if (!coreResource && webResource != webkit_web_view_get_main_resource(webView))
- return;
-
- if (!coreResource)
- coreResource = loader->mainResource();
-
- webkit_web_resource_init_with_core_resource(webResource, coreResource.get());
-
- g_signal_emit_by_name(webResource, "load-finished");
- g_signal_emit_by_name(m_frame, "resource-load-finished", webResource);
- g_signal_emit_by_name(webView, "resource-load-finished", m_frame, webResource);
-
- webkitWebViewRemoveSubresource(webView, identifierString.get());
-}
-
-void FrameLoaderClient::dispatchDidFailLoading(WebCore::DocumentLoader* loader, unsigned long identifier, const ResourceError& error)
-{
- static_cast<WebKit::DocumentLoader*>(loader)->decreaseLoadCount(identifier);
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- GOwnPtr<gchar> identifierString(toString(identifier));
- WebKitWebResource* webResource = webkit_web_view_get_resource(webView, identifierString.get());
-
- // A NULL WebResource means the load has been interrupted, and
- // replaced by another one while this resource was being loaded.
- if (!webResource)
- return;
-
- GOwnPtr<GError> webError(g_error_new_literal(g_quark_from_string(error.domain().utf8().data()),
- error.errorCode(),
- error.localizedDescription().utf8().data()));
-
- g_signal_emit_by_name(webResource, "load-failed", webError.get());
- g_signal_emit_by_name(m_frame, "resource-load-failed", webResource, webError.get());
- g_signal_emit_by_name(webView, "resource-load-failed", m_frame, webResource, webError.get());
-
- webkitWebViewRemoveSubresource(webView, identifierString.get());
-}
-
-bool FrameLoaderClient::dispatchDidLoadResourceFromMemoryCache(WebCore::DocumentLoader*, const ResourceRequest&, const ResourceResponse&, int length)
-{
- notImplemented();
- return false;
-}
-
-void FrameLoaderClient::dispatchDidFailProvisionalLoad(const ResourceError& error)
-{
- dispatchDidFailLoad(error);
-}
-
-void FrameLoaderClient::dispatchDidFailLoad(const ResourceError& error)
-{
- if (m_loadingErrorPage)
- return;
-
- notifyStatus(m_frame, WEBKIT_LOAD_FAILED);
-
- WebKitWebView* webView = getViewFromFrame(m_frame);
- GOwnPtr<GError> webError(g_error_new_literal(
- g_quark_from_string(error.domain().utf8().data()),
- error.errorCode(),
- error.localizedDescription().utf8().data()));
- gboolean isHandled = false;
- g_signal_emit_by_name(webView, "load-error", m_frame, error.failingURL().utf8().data(), webError.get(), &isHandled);
-
- if (isHandled || !shouldFallBack(error))
- return;
-
- m_loadingErrorPage = true;
-
- String content;
- GOwnPtr<gchar> errorPath(g_build_filename(sharedResourcesPath().data(), "resources", "error.html", NULL));
- GRefPtr<GFile> errorFile = adoptGRef(g_file_new_for_path(errorPath.get()));
-
- if (!errorFile)
- content = makeString("<html><body>", webError->message, "</body></html>");
- else {
- GOwnPtr<gchar> fileContent;
- if (!g_file_load_contents(errorFile.get(), 0, &fileContent.outPtr(), 0, 0, 0))
- content = makeString("<html><body>", webError->message, "</body></html>");
- else
- content = String::format(fileContent.get(), error.failingURL().utf8().data(), webError->message);
- }
-
- webkit_web_frame_load_alternate_string(m_frame, content.utf8().data(), 0, error.failingURL().utf8().data());
-}
-
-void FrameLoaderClient::convertMainResourceLoadToDownload(WebCore::DocumentLoader* documentLoader, const ResourceRequest& request, const ResourceResponse& response)
-{
- GRefPtr<WebKitNetworkRequest> networkRequest(adoptGRef(kitNew(request)));
- WebKitWebView* view = getViewFromFrame(m_frame);
-
- webkit_web_view_request_download(view, networkRequest.get(), response, documentLoader->mainResourceLoader()->handle());
-}
-
-ResourceError FrameLoaderClient::cancelledError(const ResourceRequest& request)
-{
- return WebCore::cancelledError(request);
-}
-
-ResourceError FrameLoaderClient::blockedError(const ResourceRequest& request)
-{
- return WebCore::blockedError(request);
-}
-
-ResourceError FrameLoaderClient::cannotShowURLError(const ResourceRequest& request)
-{
- return WebCore::cannotShowURLError(request);
-}
-
-ResourceError FrameLoaderClient::interruptedForPolicyChangeError(const ResourceRequest& request)
-{
- return WebCore::interruptedForPolicyChangeError(request);
-}
-
-ResourceError FrameLoaderClient::cannotShowMIMETypeError(const ResourceResponse& response)
-{
- return WebCore::cannotShowMIMETypeError(response);
-}
-
-ResourceError FrameLoaderClient::fileDoesNotExistError(const ResourceResponse& response)
-{
- return WebCore::fileDoesNotExistError(response);
-}
-
-ResourceError FrameLoaderClient::pluginWillHandleLoadError(const ResourceResponse& response)
-{
- return WebCore::pluginWillHandleLoadError(response);
-}
-
-bool FrameLoaderClient::shouldFallBack(const ResourceError& error)
-{
- return !(error.isCancellation() || error.errorCode() == WEBKIT_POLICY_ERROR_FRAME_LOAD_INTERRUPTED_BY_POLICY_CHANGE || error.errorCode() == WEBKIT_PLUGIN_ERROR_WILL_HANDLE_LOAD);
-}
-
-bool FrameLoaderClient::canCachePage() const
-{
- return true;
-}
-
-Frame* FrameLoaderClient::dispatchCreatePage(const NavigationAction&)
-{
- WebKitWebView* webView = getViewFromFrame(m_frame);
- WebKitWebView* newWebView = 0;
-
- g_signal_emit_by_name(webView, "create-web-view", m_frame, &newWebView);
-
- if (!newWebView)
- return 0;
-
- WebKitWebViewPrivate* privateData = newWebView->priv;
- return core(privateData->mainFrame);
-}
-
-void FrameLoaderClient::dispatchUnableToImplementPolicy(const ResourceError&)
-{
- notImplemented();
-}
-
-void FrameLoaderClient::setMainDocumentError(WebCore::DocumentLoader*, const ResourceError& error)
-{
- if (m_pluginView) {
- m_pluginView->didFail(error);
- m_pluginView = 0;
- m_hasSentResponseToPlugin = false;
- }
-}
-
-void FrameLoaderClient::startDownload(const ResourceRequest& request, const String& /* suggestedName */)
-{
- GRefPtr<WebKitNetworkRequest> networkRequest(adoptGRef(kitNew(request)));
- WebKitWebView* view = getViewFromFrame(m_frame);
-
- webkit_web_view_request_download(view, networkRequest.get());
-}
-
-void FrameLoaderClient::updateGlobalHistory()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::updateGlobalHistoryRedirectLinks()
-{
- notImplemented();
-}
-
-void FrameLoaderClient::savePlatformDataToCachedFrame(CachedFrame* cachedFrame)
-{
-}
-
-static void postCommitFrameViewSetup(WebKitWebFrame *frame)
-{
- WebKitWebView* containingWindow = getViewFromFrame(frame);
- webkit_web_view_clear_resources(containingWindow);
-
- // Invalidate the viewport attributes - they will only be valid
- // again if the page we're beginning to load now has an
- // appropriate viewport meta tag.
- WebKitWebViewPrivate* priv = containingWindow->priv;
- priv->viewportAttributes->priv->isValid = FALSE;
- g_object_notify(G_OBJECT(priv->viewportAttributes.get()), "valid");
-
- if (priv->currentMenu) {
- gtk_widget_destroy(GTK_WIDGET(priv->currentMenu));
- priv->currentMenu = 0;
- }
-
- // Do not allow click counting between main frame loads.
- priv->clickCounter.reset();
-}
-
-void FrameLoaderClient::transitionToCommittedFromCachedFrame(CachedFrame* cachedFrame)
-{
- ASSERT(cachedFrame->view());
-
- Frame* frame = core(m_frame);
- if (frame != frame->page()->mainFrame())
- return;
-
- postCommitFrameViewSetup(m_frame);
-}
-
-void FrameLoaderClient::transitionToCommittedForNewPage()
-{
- WebKitWebView* containingWindow = getViewFromFrame(m_frame);
- GtkAllocation allocation;
- gtk_widget_get_allocation(GTK_WIDGET(containingWindow), &allocation);
- IntSize size = IntSize(allocation.width, allocation.height);
- bool transparent = webkit_web_view_get_transparent(containingWindow);
- Color backgroundColor = transparent ? WebCore::Color::transparent : WebCore::Color::white;
- Frame* frame = core(m_frame);
- ASSERT(frame);
-
- frame->createView(size, backgroundColor, transparent);
-
- // We need to do further manipulation on the FrameView if it was the mainFrame
- if (frame != frame->page()->mainFrame())
- return;
-
- postCommitFrameViewSetup(m_frame);
-}
-
-void FrameLoaderClient::didSaveToPageCache()
-{
-}
-
-void FrameLoaderClient::didRestoreFromPageCache()
-{
-}
-
-void FrameLoaderClient::dispatchDidBecomeFrameset(bool)
-{
-}
-
-PassRefPtr<FrameNetworkingContext> FrameLoaderClient::createNetworkingContext()
-{
- return FrameNetworkingContextGtk::create(core(m_frame));
-}
-
-}
diff --git a/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h
deleted file mode 100644
index 655511deb..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h
+++ /dev/null
@@ -1,207 +0,0 @@
-/*
- * Copyright (C) 2006 Zack Rusin <zack@kde.org>
- * Copyright (C) 2006, 2011 Apple Inc. All rights reserved.
- * Copyright (C) 2008 Collabora Ltd. All rights reserved.
- *
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef FrameLoaderClientGtk_h
-#define FrameLoaderClientGtk_h
-
-#include "FrameLoaderClient.h"
-#include "ResourceResponse.h"
-#include "PluginView.h"
-#include "webkitwebpolicydecision.h"
-
-typedef struct _WebKitWebFrame WebKitWebFrame;
-
-namespace WebKit {
-
- class FrameLoaderClient : public WebCore::FrameLoaderClient {
- public:
- FrameLoaderClient(WebKitWebFrame*);
- virtual ~FrameLoaderClient();
- virtual void frameLoaderDestroyed();
-
- WebKitWebFrame* webFrame() const { return m_frame; }
-
- virtual bool hasWebView() const;
-
- virtual void makeRepresentation(WebCore::DocumentLoader*) { }
- virtual void forceLayout();
- virtual void forceLayoutForNonHTML();
-
- virtual void setCopiesOnScroll();
-
- virtual void detachedFromParent2();
- virtual void detachedFromParent3();
-
- virtual void assignIdentifierToInitialRequest(unsigned long identifier, WebCore::DocumentLoader*, const WebCore::ResourceRequest&);
-
- virtual void dispatchWillSendRequest(WebCore::DocumentLoader*, unsigned long identifier, WebCore::ResourceRequest&, const WebCore::ResourceResponse& redirectResponse);
- virtual bool shouldUseCredentialStorage(WebCore::DocumentLoader*, unsigned long identifier);
- virtual void dispatchDidReceiveAuthenticationChallenge(WebCore::DocumentLoader*, unsigned long identifier, const WebCore::AuthenticationChallenge&);
- virtual void dispatchDidCancelAuthenticationChallenge(WebCore::DocumentLoader*, unsigned long identifier, const WebCore::AuthenticationChallenge&);
- virtual void dispatchDidReceiveResponse(WebCore::DocumentLoader*, unsigned long identifier, const WebCore::ResourceResponse&);
- virtual void dispatchDidReceiveContentLength(WebCore::DocumentLoader*, unsigned long identifier, int dataLength);
- virtual void dispatchDidFinishLoading(WebCore::DocumentLoader*, unsigned long identifier);
- virtual void dispatchDidFailLoading(WebCore::DocumentLoader*, unsigned long identifier, const WebCore::ResourceError&);
- virtual bool dispatchDidLoadResourceFromMemoryCache(WebCore::DocumentLoader*, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, int length);
-
- virtual void dispatchDidHandleOnloadEvents();
- virtual void dispatchDidReceiveServerRedirectForProvisionalLoad();
- virtual void dispatchDidCancelClientRedirect();
- virtual void dispatchWillPerformClientRedirect(const WebCore::KURL&, double, double);
- virtual void dispatchDidChangeLocationWithinPage();
- virtual void dispatchDidNavigateWithinPage();
- virtual void dispatchDidPushStateWithinPage();
- virtual void dispatchDidReplaceStateWithinPage();
- virtual void dispatchDidPopStateWithinPage();
- virtual void dispatchWillClose();
- virtual void dispatchDidReceiveIcon();
- virtual void dispatchDidStartProvisionalLoad();
- virtual void dispatchDidReceiveTitle(const WebCore::StringWithDirection&);
- virtual void dispatchDidChangeIcons(WebCore::IconType);
- virtual void dispatchDidCommitLoad();
- virtual void dispatchDidFailProvisionalLoad(const WebCore::ResourceError&);
- virtual void dispatchDidFailLoad(const WebCore::ResourceError&);
- virtual void dispatchDidFinishDocumentLoad();
- virtual void dispatchDidFinishLoad();
- virtual void dispatchDidLayout(WebCore::LayoutMilestones);
-
- virtual WebCore::Frame* dispatchCreatePage(const WebCore::NavigationAction&);
- virtual void dispatchShow();
-
- virtual void dispatchDecidePolicyForResponse(WebCore::FramePolicyFunction, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&);
- virtual void dispatchDecidePolicyForNewWindowAction(WebCore::FramePolicyFunction, const WebCore::NavigationAction&, const WebCore::ResourceRequest&, WTF::PassRefPtr<WebCore::FormState>, const WTF::String& frameName);
- virtual void dispatchDecidePolicyForNavigationAction(WebCore::FramePolicyFunction, const WebCore::NavigationAction&, const WebCore::ResourceRequest&, WTF::PassRefPtr<WebCore::FormState>);
- virtual void cancelPolicyCheck();
-
- virtual void dispatchUnableToImplementPolicy(const WebCore::ResourceError&);
-
- virtual void dispatchWillSendSubmitEvent(WTF::PassRefPtr<WebCore::FormState>) { }
- virtual void dispatchWillSubmitForm(WebCore::FramePolicyFunction, WTF::PassRefPtr<WebCore::FormState>);
-
- virtual void revertToProvisionalState(WebCore::DocumentLoader*) { }
- virtual void setMainDocumentError(WebCore::DocumentLoader*, const WebCore::ResourceError&);
-
- virtual void postProgressStartedNotification();
- virtual void postProgressEstimateChangedNotification();
- virtual void postProgressFinishedNotification();
-
- virtual PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL& url, const WTF::String& name, WebCore::HTMLFrameOwnerElement* ownerElement,
- const WTF::String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
- virtual PassRefPtr<WebCore::Widget> createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const WTF::Vector<WTF::String>&, const WTF::Vector<WTF::String>&, const WTF::String&, bool);
- virtual void recreatePlugin(WebCore::Widget*) { }
- virtual void redirectDataToPlugin(WebCore::Widget* pluginWidget);
- virtual PassRefPtr<WebCore::Widget> createJavaAppletWidget(const WebCore::IntSize&, WebCore::HTMLAppletElement*, const WebCore::KURL& baseURL, const WTF::Vector<WTF::String>& paramNames, const WTF::Vector<WTF::String>& paramValues);
- virtual WTF::String overrideMediaType() const;
- virtual void dispatchDidClearWindowObjectInWorld(WebCore::DOMWrapperWorld*);
- virtual void documentElementAvailable();
- virtual void didPerformFirstNavigation() const;
-
- virtual void registerForIconNotification(bool);
-
- virtual WebCore::ObjectContentType objectContentType(const WebCore::KURL&, const WTF::String& mimeType, bool shouldPreferPlugInsForImages);
-
- virtual void setMainFrameDocumentReady(bool);
-
- virtual void startDownload(const WebCore::ResourceRequest&, const String& suggestedName = String());
-
- virtual void willChangeTitle(WebCore::DocumentLoader*);
- virtual void didChangeTitle(WebCore::DocumentLoader*);
-
- virtual void committedLoad(WebCore::DocumentLoader*, const char*, int);
- virtual void finishedLoading(WebCore::DocumentLoader*);
-
- virtual void updateGlobalHistory();
- virtual void updateGlobalHistoryRedirectLinks();
- virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
- virtual bool shouldStopLoadingForHistoryItem(WebCore::HistoryItem*) const;
-
- virtual void didDisplayInsecureContent();
- virtual void didRunInsecureContent(WebCore::SecurityOrigin*, const WebCore::KURL&);
- virtual void didDetectXSS(const WebCore::KURL&, bool didBlockEntirePage);
-
- virtual WebCore::ResourceError cancelledError(const WebCore::ResourceRequest&);
- virtual WebCore::ResourceError blockedError(const WebCore::ResourceRequest&);
- virtual WebCore::ResourceError cannotShowURLError(const WebCore::ResourceRequest&);
- virtual WebCore::ResourceError interruptedForPolicyChangeError(const WebCore::ResourceRequest&);
-
- virtual WebCore::ResourceError cannotShowMIMETypeError(const WebCore::ResourceResponse&);
- virtual WebCore::ResourceError fileDoesNotExistError(const WebCore::ResourceResponse&);
- virtual WebCore::ResourceError pluginWillHandleLoadError(const WebCore::ResourceResponse&);
-
- virtual bool shouldFallBack(const WebCore::ResourceError&);
-
- virtual bool canHandleRequest(const WebCore::ResourceRequest&) const;
- virtual bool canShowMIMEType(const WTF::String&) const;
- virtual bool canShowMIMETypeAsHTML(const String& MIMEType) const;
- virtual bool representationExistsForURLScheme(const WTF::String&) const;
- virtual WTF::String generatedMIMETypeForURLScheme(const WTF::String&) const;
-
- virtual void frameLoadCompleted();
- virtual void saveViewStateToItem(WebCore::HistoryItem*);
- virtual void restoreViewState();
- virtual void provisionalLoadStarted();
- virtual void didFinishLoad();
- virtual void prepareForDataSourceReplacement();
-
- virtual WTF::PassRefPtr<WebCore::DocumentLoader> createDocumentLoader(const WebCore::ResourceRequest&, const WebCore::SubstituteData&);
- virtual void setTitle(const WebCore::StringWithDirection& title, const WebCore::KURL&);
-
- virtual WTF::String userAgent(const WebCore::KURL&);
-
- virtual void savePlatformDataToCachedFrame(WebCore::CachedFrame*);
- virtual void transitionToCommittedFromCachedFrame(WebCore::CachedFrame*);
- virtual void transitionToCommittedForNewPage();
-
- virtual void didSaveToPageCache();
- virtual void didRestoreFromPageCache();
-
- virtual void dispatchDidBecomeFrameset(bool);
-
- virtual bool canCachePage() const;
- virtual void convertMainResourceLoadToDownload(WebCore::DocumentLoader*, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&);
-
- virtual PassRefPtr<WebCore::FrameNetworkingContext> createNetworkingContext();
-
- private:
- WebKitWebFrame* m_frame;
- WebCore::ResourceResponse m_response;
- WebKitWebPolicyDecision* m_policyDecision;
-
- bool m_loadingErrorPage;
-
- // Plugin view to redirect data to
- WebCore::PluginView* m_pluginView;
- bool m_hasSentResponseToPlugin;
-
- virtual void dispatchDidCommitLoad(bool isNavigatingWithinPage);
- };
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.cpp
deleted file mode 100644
index fae137eac..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.cpp
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
- Copyright (C) 2012 ProFUSION embedded systems
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public License
- along with this library; see the file COPYING.LIB. If not, write to
- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
-*/
-
-#include "config.h"
-#include "FrameNetworkingContextGtk.h"
-
-#include "NetworkStorageSession.h"
-#include "NotImplemented.h"
-
-using namespace WebCore;
-
-namespace WebKit {
-
-NetworkStorageSession& FrameNetworkingContextGtk::storageSession() const
-{
- return NetworkStorageSession::defaultStorageSession();
-}
-
-uint64_t FrameNetworkingContextGtk::initiatingPageID() const
-{
- notImplemented();
- return 0;
-}
-
-}
diff --git a/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.h b/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.h
deleted file mode 100644
index 642dfb1b4..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public License
- along with this library; see the file COPYING.LIB. If not, write to
- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
-*/
-
-#ifndef FrameNetworkingContextGtk_h
-#define FrameNetworkingContextGtk_h
-
-#include "FrameNetworkingContext.h"
-
-namespace WebKit {
-
-class FrameNetworkingContextGtk : public WebCore::FrameNetworkingContext {
-public:
- static PassRefPtr<FrameNetworkingContextGtk> create(WebCore::Frame* frame)
- {
- return adoptRef(new FrameNetworkingContextGtk(frame));
- }
-
- WebCore::Frame* coreFrame() const { return frame(); }
- virtual uint64_t initiatingPageID() const;
-
-private:
- virtual WebCore::NetworkStorageSession& storageSession() const;
-
- FrameNetworkingContextGtk(WebCore::Frame* frame)
- : WebCore::FrameNetworkingContext(frame)
- {
- }
-};
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.cpp
deleted file mode 100644
index faf4ea91d..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.cpp
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (C) 2008 Holger Hans Peter Freyther <zecke@selfish.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#include "config.h"
-#include "GeolocationClientGtk.h"
-
-#if ENABLE(GEOLOCATION)
-
-#include "Chrome.h"
-#include "ChromeClient.h"
-#include "Geolocation.h"
-#include "GeolocationController.h"
-#include "GeolocationError.h"
-#include "GeolocationPosition.h"
-#include "webkitgeolocationpolicydecisionprivate.h"
-#include "webkitwebframeprivate.h"
-#include "webkitwebviewprivate.h"
-#include <glib/gi18n-lib.h>
-#include <wtf/gobject/GRefPtr.h>
-
-namespace WebKit {
-
-GeolocationClient::GeolocationClient(WebKitWebView* webView)
- : m_webView(webView)
- , m_provider(this)
-{
-}
-
-void GeolocationClient::geolocationDestroyed()
-{
- delete this;
-}
-
-void GeolocationClient::startUpdating()
-{
- m_provider.startUpdating();
-}
-
-void GeolocationClient::stopUpdating()
-{
- m_provider.stopUpdating();
-}
-
-void GeolocationClient::setEnableHighAccuracy(bool enable)
-{
- m_provider.setEnableHighAccuracy(enable);
-}
-
-WebCore::GeolocationPosition* GeolocationClient::lastPosition()
-{
- return m_lastPosition.get();
-}
-
-void GeolocationClient::requestPermission(WebCore::Geolocation* geolocation)
-{
- WebKitWebFrame* webFrame = kit(geolocation->frame());
- GRefPtr<WebKitGeolocationPolicyDecision> policyDecision(adoptGRef(webkit_geolocation_policy_decision_new(webFrame, geolocation)));
-
- gboolean isHandled = FALSE;
- g_signal_emit_by_name(m_webView, "geolocation-policy-decision-requested", webFrame, policyDecision.get(), &isHandled);
- if (!isHandled)
- webkit_geolocation_policy_deny(policyDecision.get());
-}
-
-void GeolocationClient::cancelPermissionRequest(WebCore::Geolocation* geolocation)
-{
- g_signal_emit_by_name(m_webView, "geolocation-policy-decision-cancelled", kit(geolocation->frame()));
-}
-
-void GeolocationClient::notifyPositionChanged(int timestamp, double latitude, double longitude, double altitude, double accuracy, double altitudeAccuracy)
-{
- m_lastPosition = WebCore::GeolocationPosition::create(static_cast<double>(timestamp), latitude, longitude, accuracy,
- true, altitude, true, altitudeAccuracy, false, 0, false, 0);
- WebCore::GeolocationController::from(core(m_webView))->positionChanged(m_lastPosition.get());
-}
-
-void GeolocationClient::notifyErrorOccurred(const char* message)
-{
- RefPtr<WebCore::GeolocationError> error = WebCore::GeolocationError::create(WebCore::GeolocationError::PositionUnavailable, message);
- WebCore::GeolocationController::from(core(m_webView))->errorOccurred(error.get());
-}
-
-}
-
-#endif // ENABLE(GEOLOCATION)
diff --git a/Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.h
deleted file mode 100644
index 937e69761..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/GeolocationClientGtk.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (C) 2008 Holger Hans Peter Freyther <zecke@selfish.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef GeolocationClientGtk_h
-#define GeolocationClientGtk_h
-
-#if ENABLE(GEOLOCATION)
-
-#include "GeolocationClient.h"
-#include "GeolocationPosition.h"
-#include "GeolocationProviderGeoclue.h"
-#include "GeolocationProviderGeoclueClient.h"
-#include <wtf/RefPtr.h>
-
-typedef struct _WebKitWebView WebKitWebView;
-
-namespace WebCore {
-class Geolocation;
-}
-
-namespace WebKit {
-
-class GeolocationClient : public WebCore::GeolocationClient, public WebCore::GeolocationProviderGeoclueClient {
-public:
- GeolocationClient(WebKitWebView*);
-
- void geolocationDestroyed();
-
- void startUpdating();
- void stopUpdating();
-
- void setEnableHighAccuracy(bool);
- WebCore::GeolocationPosition* lastPosition();
-
- void requestPermission(WebCore::Geolocation*);
- void cancelPermissionRequest(WebCore::Geolocation*);
-
-private:
- // GeolocationProviderGeoclueClient interface.
- virtual void notifyPositionChanged(int timestamp, double latitude, double longitude, double altitude, double accuracy, double altitudeAccuracy);
- virtual void notifyErrorOccurred(const char* message);
-
- WebKitWebView* m_webView;
-
- WebCore::GeolocationProviderGeoclue m_provider;
- RefPtr<WebCore::GeolocationPosition> m_lastPosition;
-};
-
-} // namespace WebKit
-
-#endif // ENABLE(GEOLOCATION)
-
-#endif // GeolocationClientGtk_h
diff --git a/Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.cpp b/Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.cpp
deleted file mode 100644
index 24b040386..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.cpp
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * Copyright (C) 2011 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "GtkAdjustmentWatcher.h"
-
-#include "Frame.h"
-#include "FrameView.h"
-#include "Page.h"
-#include "Scrollbar.h"
-#include "webkitwebviewprivate.h"
-#include <gtk/gtk.h>
-
-using namespace WebCore;
-
-namespace WebKit {
-
-GtkAdjustmentWatcher::GtkAdjustmentWatcher(WebKitWebView* webView)
- : m_webView(webView)
- , m_scrollbarsDisabled(false)
- , m_handlingGtkAdjustmentChange(false)
- , m_updateAdjustmentCallbackId(0)
-{
-}
-
-GtkAdjustmentWatcher::~GtkAdjustmentWatcher()
-{
- if (m_updateAdjustmentCallbackId)
- g_source_remove(m_updateAdjustmentCallbackId);
-}
-
-static void updateAdjustmentFromScrollbar(GtkAdjustment* adjustment, Scrollbar* scrollbar)
-{
- if (!adjustment)
- return;
- if (!scrollbar) {
- gtk_adjustment_configure(adjustment, 0, 0, 0, 0, 0, 0); // These are the settings which remove the scrollbar.
- return;
- }
- gtk_adjustment_configure(adjustment, scrollbar->value(), 0, scrollbar->totalSize(),
- scrollbar->lineStep(), scrollbar->pageStep(), scrollbar->visibleSize());
-}
-
-void GtkAdjustmentWatcher::updateAdjustmentsFromScrollbars()
-{
- if (m_scrollbarsDisabled)
- return;
- if (m_handlingGtkAdjustmentChange)
- return;
- if (!core(m_webView) || !core(m_webView)->mainFrame())
- return;
-
- FrameView* frameView = core(m_webView)->mainFrame()->view();
- updateAdjustmentFromScrollbar(m_horizontalAdjustment.get(), frameView->horizontalScrollbar());
- updateAdjustmentFromScrollbar(m_verticalAdjustment.get(), frameView->verticalScrollbar());
- if (m_updateAdjustmentCallbackId) {
- g_source_remove(m_updateAdjustmentCallbackId);
- m_updateAdjustmentCallbackId = 0;
- }
-}
-
-gboolean GtkAdjustmentWatcher::updateAdjustmentCallback(GtkAdjustmentWatcher* watcher)
-{
- watcher->m_updateAdjustmentCallbackId = 0;
- watcher->updateAdjustmentsFromScrollbars();
- return FALSE;
-}
-
-void GtkAdjustmentWatcher::updateAdjustmentsFromScrollbarsLater() const
-{
- // We've already scheduled an update. No need to schedule another.
- if (m_updateAdjustmentCallbackId || m_scrollbarsDisabled)
- return;
-
- // The fact that this method was called means that we need to update the scrollbars, but at the
- // time of invocation they are not updated to reflect the scroll yet. We set a short timeout
- // here, which means that they will be updated as soon as WebKit returns to the main loop.
- m_updateAdjustmentCallbackId = g_timeout_add(0, reinterpret_cast<GSourceFunc>(updateAdjustmentCallback),
- const_cast<void*>(static_cast<const void*>(this)));
-}
-
-static void adjustmentValueChangedCallback(GtkAdjustment* adjustment, GtkAdjustmentWatcher* watcher)
-{
- watcher->adjustmentValueChanged(adjustment);
-}
-
-static void setAdjustment(GtkAdjustmentWatcher* watcher, GRefPtr<GtkAdjustment>& adjustmentMember, GtkAdjustment* newAdjustment)
-{
- if (adjustmentMember) {
- g_signal_handlers_disconnect_by_func(adjustmentMember.get(),
- reinterpret_cast<void*>(adjustmentValueChangedCallback), watcher);
- }
-
- adjustmentMember = newAdjustment;
- if (newAdjustment)
- g_signal_connect(newAdjustment, "value-changed", G_CALLBACK(adjustmentValueChangedCallback), watcher);
-}
-
-void GtkAdjustmentWatcher::setHorizontalAdjustment(GtkAdjustment* newAdjustment)
-{
- setAdjustment(this, m_horizontalAdjustment, newAdjustment);
-}
-
-void GtkAdjustmentWatcher::setVerticalAdjustment(GtkAdjustment* newAdjustment)
-{
- setAdjustment(this, m_verticalAdjustment, newAdjustment);
-}
-
-void GtkAdjustmentWatcher::adjustmentValueChanged(GtkAdjustment* adjustment)
-{
- FrameView* frameView = core(m_webView)->mainFrame()->view();
- Scrollbar* scrollbar = (adjustment == m_horizontalAdjustment.get()) ?
- frameView->horizontalScrollbar() : frameView->verticalScrollbar();
- if (!scrollbar)
- return;
-
- int newValue = static_cast<int>(gtk_adjustment_get_value(adjustment));
- if (newValue != scrollbar->value()) {
- m_handlingGtkAdjustmentChange = true;
- frameView->scrollToOffsetWithoutAnimation(scrollbar->orientation(), newValue);
- m_handlingGtkAdjustmentChange = false;
- }
-}
-
-void GtkAdjustmentWatcher::disableAllScrollbars()
-{
- updateAdjustmentFromScrollbar(m_horizontalAdjustment.get(), 0);
- updateAdjustmentFromScrollbar(m_verticalAdjustment.get(), 0);
- m_scrollbarsDisabled = true;
-}
-
-void GtkAdjustmentWatcher::enableAllScrollbars()
-{
- m_scrollbarsDisabled = false;
- updateAdjustmentsFromScrollbars();
-}
-
-} // namespace WebKit
-
diff --git a/Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.h b/Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.h
deleted file mode 100644
index e569cdc24..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/GtkAdjustmentWatcher.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright (C) 2011 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef GtkAdjustmentWatcher_h
-#define GtkAdjustmentWatcher_h
-
-#include "GRefPtrGtk.h"
-
-typedef struct _WebKitWebView WebKitWebView;
-
-namespace WebKit {
-
-class GtkAdjustmentWatcher {
-public:
- GtkAdjustmentWatcher(WebKitWebView*);
- ~GtkAdjustmentWatcher();
-
- void setHorizontalAdjustment(GtkAdjustment*);
- void setVerticalAdjustment(GtkAdjustment*);
- GtkAdjustment* horizontalAdjustment() { return m_horizontalAdjustment.get(); };
- GtkAdjustment* verticalAdjustment() { return m_verticalAdjustment.get(); };
- void adjustmentValueChanged(GtkAdjustment*);
- void updateAdjustmentsFromScrollbars();
- void updateAdjustmentsFromScrollbarsLater() const;
- void disableAllScrollbars();
- void enableAllScrollbars();
- bool scrollbarsDisabled() const { return m_scrollbarsDisabled; };
-
-private:
- static gboolean updateAdjustmentCallback(GtkAdjustmentWatcher*);
-
- WebKitWebView* m_webView;
- GRefPtr<GtkAdjustment> m_horizontalAdjustment;
- GRefPtr<GtkAdjustment> m_verticalAdjustment;
- bool m_scrollbarsDisabled;
- bool m_handlingGtkAdjustmentChange;
- mutable unsigned m_updateAdjustmentCallbackId;
-};
-
-}
-
-#endif // GtkAdjustmentWatcher_h
-
diff --git a/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp
deleted file mode 100644
index fb60f035b..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp
+++ /dev/null
@@ -1,286 +0,0 @@
-/*
- * Copyright (C) 2008, 2012 Gustavo Noronha Silva
- * Copyright (C) 2010 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "InspectorClientGtk.h"
-
-#include "FileSystem.h"
-#include "Frame.h"
-#include "InspectorController.h"
-#include "NotImplemented.h"
-#include "Page.h"
-#include "webkitversion.h"
-#include "webkitwebinspector.h"
-#include "webkitwebinspectorprivate.h"
-#include "webkitwebview.h"
-#include "webkitwebviewprivate.h"
-#include <wtf/text/CString.h>
-#include <wtf/text/WTFString.h>
-
-using namespace WebCore;
-
-namespace WebKit {
-
-static void notifyWebViewDestroyed(WebKitWebView* webView, InspectorFrontendClient* inspectorFrontendClient)
-{
- inspectorFrontendClient->destroyInspectorWindow(true);
-}
-
-namespace {
-
-class InspectorFrontendSettingsGtk : public InspectorFrontendClientLocal::Settings {
-public:
- virtual ~InspectorFrontendSettingsGtk() { }
-
-private:
- virtual String getProperty(const String& name)
- {
- notImplemented();
- return String();
- }
-
- virtual void setProperty(const String& name, const String& value)
- {
- notImplemented();
- }
-};
-
-} // namespace
-
-InspectorClient::InspectorClient(WebKitWebView* webView)
- : m_inspectedWebView(webView)
- , m_frontendPage(0)
- , m_frontendClient(0)
-{}
-
-InspectorClient::~InspectorClient()
-{
- if (m_frontendClient) {
- m_frontendClient->disconnectInspectorClient();
- m_frontendClient = 0;
- }
-}
-
-void InspectorClient::inspectorDestroyed()
-{
- closeInspectorFrontend();
- delete this;
-}
-
-InspectorFrontendChannel* InspectorClient::openInspectorFrontend(InspectorController* controller)
-{
- // This g_object_get will ref the inspector. We're not doing an
- // unref if this method succeeds because the inspector object must
- // be alive even after the inspected WebView is destroyed - the
- // close-window and destroy signals still need to be
- // emitted.
- WebKitWebInspector* webInspector = 0;
- g_object_get(m_inspectedWebView, "web-inspector", &webInspector, NULL);
- ASSERT(webInspector);
-
- WebKitWebView* inspectorWebView = 0;
- g_signal_emit_by_name(webInspector, "inspect-web-view", m_inspectedWebView, &inspectorWebView);
-
- if (!inspectorWebView) {
- g_object_unref(webInspector);
- return 0;
- }
-
- webkit_web_inspector_set_web_view(webInspector, inspectorWebView);
-
- GOwnPtr<gchar> inspectorPath(g_build_filename(inspectorFilesPath(), "inspector.html", NULL));
- GOwnPtr<gchar> inspectorURI(g_filename_to_uri(inspectorPath.get(), 0, 0));
- webkit_web_view_load_uri(inspectorWebView, inspectorURI.get());
-
- gtk_widget_show(GTK_WIDGET(inspectorWebView));
-
- m_frontendPage = core(inspectorWebView);
- OwnPtr<InspectorFrontendClient> frontendClient = adoptPtr(new InspectorFrontendClient(m_inspectedWebView, inspectorWebView, webInspector, m_frontendPage, this));
- m_frontendClient = frontendClient.get();
- m_frontendPage->inspectorController()->setInspectorFrontendClient(frontendClient.release());
-
- // The inspector must be in it's own PageGroup to avoid deadlock while debugging.
- m_frontendPage->setGroupName("");
-
- return this;
-}
-
-void InspectorClient::closeInspectorFrontend()
-{
- if (m_frontendClient)
- m_frontendClient->destroyInspectorWindow(false);
-}
-
-void InspectorClient::bringFrontendToFront()
-{
- m_frontendClient->bringToFront();
-}
-
-void InspectorClient::releaseFrontendPage()
-{
- m_frontendPage = 0;
- m_frontendClient = 0;
-}
-
-void InspectorClient::highlight()
-{
- hideHighlight();
-}
-
-void InspectorClient::hideHighlight()
-{
- // FIXME: we should be able to only invalidate the actual rects of
- // the new and old nodes. We need to track the nodes, and take the
- // actual highlight size into account when calculating the damage
- // rect.
- gtk_widget_queue_draw(GTK_WIDGET(m_inspectedWebView));
-}
-
-bool InspectorClient::sendMessageToFrontend(const String& message)
-{
- return doDispatchMessageOnFrontendPage(m_frontendPage, message);
-}
-
-const char* InspectorClient::inspectorFilesPath()
-{
- if (m_inspectorFilesPath)
- return m_inspectorFilesPath.get();
-
- const char* environmentPath = getenv("WEBKIT_INSPECTOR_PATH");
- if (environmentPath && g_file_test(environmentPath, G_FILE_TEST_IS_DIR))
- m_inspectorFilesPath.set(g_strdup(environmentPath));
- else
- m_inspectorFilesPath.set(g_build_filename(sharedResourcesPath().data(), "webinspector", NULL));
-
- return m_inspectorFilesPath.get();
-}
-
-InspectorFrontendClient::InspectorFrontendClient(WebKitWebView* inspectedWebView, WebKitWebView* inspectorWebView, WebKitWebInspector* webInspector, Page* inspectorPage, InspectorClient* inspectorClient)
- : InspectorFrontendClientLocal(core(inspectedWebView)->inspectorController(), inspectorPage, adoptPtr(new InspectorFrontendSettingsGtk()))
- , m_inspectorWebView(inspectorWebView)
- , m_inspectedWebView(inspectedWebView)
- , m_webInspector(webInspector)
- , m_inspectorClient(inspectorClient)
-{
- g_signal_connect(m_inspectorWebView, "destroy",
- G_CALLBACK(notifyWebViewDestroyed), (gpointer)this);
-}
-
-InspectorFrontendClient::~InspectorFrontendClient()
-{
- if (m_inspectorClient) {
- m_inspectorClient->releaseFrontendPage();
- m_inspectorClient = 0;
- }
-
- ASSERT(!m_webInspector);
-}
-
-void InspectorFrontendClient::destroyInspectorWindow(bool notifyInspectorController)
-{
- if (!m_webInspector)
- return;
-
- GRefPtr<WebKitWebInspector> webInspector = adoptGRef(m_webInspector.leakRef());
-
- if (m_inspectorWebView) {
- g_signal_handlers_disconnect_by_func(m_inspectorWebView, reinterpret_cast<gpointer>(notifyWebViewDestroyed), this);
- m_inspectorWebView = 0;
- }
-
- if (notifyInspectorController)
- core(m_inspectedWebView)->inspectorController()->disconnectFrontend();
-
- if (m_inspectorClient)
- m_inspectorClient->releaseFrontendPage();
-
- gboolean handled = FALSE;
- g_signal_emit_by_name(webInspector.get(), "close-window", &handled);
- ASSERT(handled);
-
- // Please do not use member variables here because InspectorFrontendClient object pointed by 'this'
- // has been implicitly deleted by "close-window" function.
-}
-
-String InspectorFrontendClient::localizedStringsURL()
-{
- GOwnPtr<gchar> stringsPath(g_build_filename(m_inspectorClient->inspectorFilesPath(), "localizedStrings.js", NULL));
- GOwnPtr<gchar> stringsURI(g_filename_to_uri(stringsPath.get(), 0, 0));
-
- // FIXME: support l10n of localizedStrings.js
- return String::fromUTF8(stringsURI.get());
-}
-
-void InspectorFrontendClient::bringToFront()
-{
- if (!m_inspectorWebView)
- return;
-
- gboolean handled = FALSE;
- g_signal_emit_by_name(m_webInspector.get(), "show-window", &handled);
-}
-
-void InspectorFrontendClient::closeWindow()
-{
- destroyInspectorWindow(true);
-}
-
-void InspectorFrontendClient::attachWindow(DockSide)
-{
- if (!m_inspectorWebView)
- return;
-
- gboolean handled = FALSE;
- g_signal_emit_by_name(m_webInspector.get(), "attach-window", &handled);
-}
-
-void InspectorFrontendClient::detachWindow()
-{
- if (!m_inspectorWebView)
- return;
-
- gboolean handled = FALSE;
- g_signal_emit_by_name(m_webInspector.get(), "detach-window", &handled);
-}
-
-void InspectorFrontendClient::setAttachedWindowHeight(unsigned height)
-{
- notImplemented();
-}
-
-void InspectorFrontendClient::setAttachedWindowWidth(unsigned width)
-{
- notImplemented();
-}
-
-void InspectorFrontendClient::setToolbarHeight(unsigned height)
-{
- notImplemented();
-}
-
-void InspectorFrontendClient::inspectedURLChanged(const String& newURL)
-{
- if (!m_inspectorWebView)
- return;
-
- webkit_web_inspector_set_inspected_uri(m_webInspector.get(), newURL.utf8().data());
-}
-
-}
-
diff --git a/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h
deleted file mode 100644
index 31fde8059..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (C) 2007 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
- * its contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef InspectorClientGtk_h
-#define InspectorClientGtk_h
-
-#include "InspectorClient.h"
-#include "InspectorFrontendChannel.h"
-#include "InspectorFrontendClientLocal.h"
-#include "webkitwebinspector.h"
-#include "webkitwebview.h"
-#include <wtf/Forward.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/gobject/GRefPtr.h>
-
-namespace WebCore {
-class Page;
-}
-
-namespace WebKit {
-
-class InspectorFrontendClient;
-
-class InspectorClient : public WebCore::InspectorClient, public WebCore::InspectorFrontendChannel {
-public:
- explicit InspectorClient(WebKitWebView*);
- ~InspectorClient();
-
- void disconnectFrontendClient() { m_frontendClient = 0; }
-
- virtual void inspectorDestroyed();
-
- virtual WebCore::InspectorFrontendChannel* openInspectorFrontend(WebCore::InspectorController*);
- virtual void closeInspectorFrontend();
- virtual void bringFrontendToFront();
-
- virtual void highlight();
- virtual void hideHighlight();
-
- virtual bool sendMessageToFrontend(const WTF::String&);
-
- void releaseFrontendPage();
- const char* inspectorFilesPath();
-
-private:
- WebKitWebView* m_inspectedWebView;
- WebCore::Page* m_frontendPage;
- InspectorFrontendClient* m_frontendClient;
- GOwnPtr<gchar> m_inspectorFilesPath;
-};
-
-class InspectorFrontendClient : public WebCore::InspectorFrontendClientLocal {
-public:
- InspectorFrontendClient(WebKitWebView* inspectedWebView, WebKitWebView* inspectorWebView, WebKitWebInspector*, WebCore::Page* inspectorPage, InspectorClient*);
- virtual ~InspectorFrontendClient();
-
- void disconnectInspectorClient() { m_inspectorClient = 0; }
-
- void destroyInspectorWindow(bool notifyInspectorController);
-
- virtual WTF::String localizedStringsURL();
-
- virtual void bringToFront();
- virtual void closeWindow();
-
- virtual void attachWindow(DockSide);
- virtual void detachWindow();
-
- virtual void setAttachedWindowHeight(unsigned);
- virtual void setAttachedWindowWidth(unsigned);
- virtual void setToolbarHeight(unsigned) OVERRIDE;
-
- virtual void inspectedURLChanged(const WTF::String& newURL);
-
-private:
- WebKitWebView* m_inspectorWebView;
- WebKitWebView* m_inspectedWebView;
- GRefPtr<WebKitWebInspector> m_webInspector;
- InspectorClient* m_inspectorClient;
-};
-}
-
-#endif
diff --git a/Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.cpp
deleted file mode 100644
index 905769c35..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.cpp
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2012 Samsung Electronics
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "NavigatorContentUtilsClientGtk.h"
-
-#if ENABLE(NAVIGATOR_CONTENT_UTILS)
-
-#include "NotImplemented.h"
-#include <wtf/text/CString.h>
-
-namespace WebKit {
-
-PassOwnPtr<NavigatorContentUtilsClient> NavigatorContentUtilsClient::create()
-{
- return adoptPtr(new NavigatorContentUtilsClient);
-}
-
-NavigatorContentUtilsClient::NavigatorContentUtilsClient()
-{
-}
-
-void NavigatorContentUtilsClient::registerProtocolHandler(const String& scheme, const String& baseURL, const String& url, const String& title)
-{
- notImplemented();
-}
-
-}
-#endif // ENABLE(NAVIGATOR_CONTENT_UTILS)
diff --git a/Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.h
deleted file mode 100644
index a6f3e2361..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/NavigatorContentUtilsClientGtk.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2012 Samsung Electronics
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef NavigatorContentUtilsClientGtk_h
-#define NavigatorContentUtilsClientGtk_h
-
-#if ENABLE(NAVIGATOR_CONTENT_UTILS)
-#include "NavigatorContentUtilsClient.h"
-
-#include <wtf/PassOwnPtr.h>
-
-namespace WebKit {
-
-class NavigatorContentUtilsClient : public WebCore::NavigatorContentUtilsClient {
-public:
- static PassOwnPtr<NavigatorContentUtilsClient> create();
-
- ~NavigatorContentUtilsClient() { }
-
- virtual void registerProtocolHandler(const String& scheme, const String& baseURL, const String& url, const String& title);
-
-private:
- NavigatorContentUtilsClient();
-};
-
-}
-
-#endif
-#endif // NavigatorContentUtilsClientGtk_h
diff --git a/Source/WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h b/Source/WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h
deleted file mode 100644
index d00333ce6..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (C) 2007 Luca Bruno <lethalman88@gmail.com>
- * Copyright (C) 2009 Holger Hans Peter Freyther
- * Copyright (C) 2010 Martin Robinson <mrobinson@webkit.org>
- * All rights reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef PasteboardHelperGtk_h
-#define PasteboardHelperGtk_h
-
-/*
- * FIXME: this is for WebCore support and must be removed once
- * a better solution is found
- */
-
-#include "Frame.h"
-#include "PasteboardHelper.h"
-
-using namespace WebCore;
-
-namespace WebKit {
-
-class PasteboardHelperGtk : public PasteboardHelper {
-public:
- PasteboardHelperGtk();
- ~PasteboardHelperGtk();
- virtual guint getIdForTargetType(PasteboardTargetType);
-
-protected:
- virtual bool usePrimarySelectionClipboard(GtkWidget*);
-};
-
-}
-
-#endif // PasteboardHelperGtk_h
diff --git a/Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.cpp
deleted file mode 100644
index f9ed5ad0d..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.cpp
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "PlatformStrategiesGtk.h"
-
-#include "NotImplemented.h"
-#include "Page.h"
-#include "PageGroup.h"
-#include "PlatformCookieJar.h"
-#include "PluginDatabase.h"
-#include "PluginPackage.h"
-
-using namespace WebCore;
-
-void PlatformStrategiesGtk::initialize()
-{
- DEFINE_STATIC_LOCAL(PlatformStrategiesGtk, platformStrategies, ());
- setPlatformStrategies(&platformStrategies);
-}
-
-PlatformStrategiesGtk::PlatformStrategiesGtk()
-{
-}
-
-CookiesStrategy* PlatformStrategiesGtk::createCookiesStrategy()
-{
- return this;
-}
-
-DatabaseStrategy* PlatformStrategiesGtk::createDatabaseStrategy()
-{
- return this;
-}
-
-LoaderStrategy* PlatformStrategiesGtk::createLoaderStrategy()
-{
- return this;
-}
-
-PasteboardStrategy* PlatformStrategiesGtk::createPasteboardStrategy()
-{
- // This is currently used only by Mac code.
- notImplemented();
- return 0;
-}
-
-PluginStrategy* PlatformStrategiesGtk::createPluginStrategy()
-{
- return this;
-}
-
-SharedWorkerStrategy* PlatformStrategiesGtk::createSharedWorkerStrategy()
-{
- return this;
-}
-
-StorageStrategy* PlatformStrategiesGtk::createStorageStrategy()
-{
- return this;
-}
-
-VisitedLinkStrategy* PlatformStrategiesGtk::createVisitedLinkStrategy()
-{
- return this;
-}
-
-// CookiesStrategy
-String PlatformStrategiesGtk::cookiesForDOM(const NetworkStorageSession& session, const KURL& firstParty, const KURL& url)
-{
- return WebCore::cookiesForDOM(session, firstParty, url);
-}
-
-void PlatformStrategiesGtk::setCookiesFromDOM(const NetworkStorageSession& session, const KURL& firstParty, const KURL& url, const String& cookieString)
-{
- WebCore::setCookiesFromDOM(session, firstParty, url, cookieString);
-}
-
-bool PlatformStrategiesGtk::cookiesEnabled(const NetworkStorageSession& session, const KURL& firstParty, const KURL& url)
-{
- return WebCore::cookiesEnabled(session, firstParty, url);
-}
-
-String PlatformStrategiesGtk::cookieRequestHeaderFieldValue(const NetworkStorageSession& session, const KURL& firstParty, const KURL& url)
-{
- return WebCore::cookieRequestHeaderFieldValue(session, firstParty, url);
-}
-
-bool PlatformStrategiesGtk::getRawCookies(const NetworkStorageSession& session, const KURL& firstParty, const KURL& url, Vector<Cookie>& rawCookies)
-{
- return WebCore::getRawCookies(session, firstParty, url, rawCookies);
-}
-
-void PlatformStrategiesGtk::deleteCookie(const NetworkStorageSession& session, const KURL& url, const String& cookieName)
-{
- WebCore::deleteCookie(session, url, cookieName);
-}
-
-// PluginStrategy
-void PlatformStrategiesGtk::refreshPlugins()
-{
- PluginDatabase::installedPlugins()->refresh();
-}
-
-void PlatformStrategiesGtk::getPluginInfo(const Page* page, Vector<PluginInfo>& outPlugins)
-{
- PluginDatabase* database = PluginDatabase::installedPlugins();
- const Vector<PluginPackage*> &plugins = database->plugins();
-
- for (size_t i = 0; i < plugins.size(); ++i) {
- PluginPackage* package = plugins[i];
-
- PluginInfo pluginInfo;
- pluginInfo.name = package->name();
- pluginInfo.file = package->fileName();
- pluginInfo.desc = package->description();
-
- const MIMEToDescriptionsMap& mimeToDescriptions = package->mimeToDescriptions();
- MIMEToDescriptionsMap::const_iterator end = mimeToDescriptions.end();
- for (MIMEToDescriptionsMap::const_iterator it = mimeToDescriptions.begin(); it != end; ++it) {
- MimeClassInfo mime;
- mime.type = it->key;
- mime.desc = it->value;
- mime.extensions = package->mimeToExtensions().get(mime.type);
- pluginInfo.mimes.append(mime);
- }
-
- outPlugins.append(pluginInfo);
- }
-}
-
-// VisitedLinkStrategy
-bool PlatformStrategiesGtk::isLinkVisited(Page* page, LinkHash hash, const KURL&, const AtomicString&)
-{
- return page->group().isLinkVisited(hash);
-}
-
-void PlatformStrategiesGtk::addVisitedLink(Page* page, LinkHash hash)
-{
- page->group().addVisitedLinkHash(hash);
-}
diff --git a/Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.h b/Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.h
deleted file mode 100644
index b5f0762e5..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/PlatformStrategiesGtk.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef PlatformStrategiesGtk_h
-#define PlatformStrategiesGtk_h
-
-#include "CookiesStrategy.h"
-#include "DatabaseStrategy.h"
-#include "LoaderStrategy.h"
-#include "PasteboardStrategy.h"
-#include "PlatformStrategies.h"
-#include "PluginStrategy.h"
-#include "SharedWorkerStrategy.h"
-#include "StorageStrategy.h"
-#include "VisitedLinkStrategy.h"
-
-class PlatformStrategiesGtk : public WebCore::PlatformStrategies, private WebCore::CookiesStrategy, private WebCore::DatabaseStrategy, private WebCore::LoaderStrategy, private WebCore::PluginStrategy, private WebCore::SharedWorkerStrategy, private WebCore::StorageStrategy, private WebCore::VisitedLinkStrategy {
-public:
- static void initialize();
-
-private:
- PlatformStrategiesGtk();
-
- // WebCore::PlatformStrategies
- virtual WebCore::CookiesStrategy* createCookiesStrategy();
- virtual WebCore::DatabaseStrategy* createDatabaseStrategy();
- virtual WebCore::LoaderStrategy* createLoaderStrategy();
- virtual WebCore::PasteboardStrategy* createPasteboardStrategy();
- virtual WebCore::PluginStrategy* createPluginStrategy();
- virtual WebCore::SharedWorkerStrategy* createSharedWorkerStrategy();
- virtual WebCore::StorageStrategy* createStorageStrategy();
- virtual WebCore::VisitedLinkStrategy* createVisitedLinkStrategy();
-
- // WebCore::CookiesStrategy
- virtual String cookiesForDOM(const WebCore::NetworkStorageSession&, const WebCore::KURL& firstParty, const WebCore::KURL&);
- virtual void setCookiesFromDOM(const WebCore::NetworkStorageSession&, const WebCore::KURL& firstParty, const WebCore::KURL&, const String&);
- virtual bool cookiesEnabled(const WebCore::NetworkStorageSession&, const WebCore::KURL& firstParty, const WebCore::KURL&);
- virtual String cookieRequestHeaderFieldValue(const WebCore::NetworkStorageSession&, const WebCore::KURL& firstParty, const WebCore::KURL&);
- virtual bool getRawCookies(const WebCore::NetworkStorageSession&, const WebCore::KURL& firstParty, const WebCore::KURL&, Vector<WebCore::Cookie>&);
- virtual void deleteCookie(const WebCore::NetworkStorageSession&, const WebCore::KURL&, const String&);
-
- // WebCore::DatabaseStrategy
- // - Using default implementation.
-
- // WebCore::PluginStrategy
- virtual void refreshPlugins();
- virtual void getPluginInfo(const WebCore::Page*, Vector<WebCore::PluginInfo>&);
-
- // WebCore::VisitedLinkStrategy
- virtual bool isLinkVisited(WebCore::Page*, WebCore::LinkHash, const WebCore::KURL& baseURL, const WTF::AtomicString& attributeURL);
- virtual void addVisitedLink(WebCore::Page*, WebCore::LinkHash);
-};
-
-#endif // PlatformStrategiesGtk_h
diff --git a/Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.cpp
deleted file mode 100644
index 23238f485..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.cpp
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Copyright (C) 2007 Alp Toker <alp@atoker.com>
- * Copyright (C) 2008 Nuanti Ltd.
- * Copyright (C) 2009 Diego Escalante Urrelo <diegoe@gnome.org>
- * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
- * Copyright (C) 2009, 2010, 2011 Igalia S.L.
- * Copyright (C) 2010, Martin Robinson <mrobinson@webkit.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "TextCheckerClientGtk.h"
-
-#include "NotImplemented.h"
-#include "webkitspellchecker.h"
-#include "webkitwebsettingsprivate.h"
-#include <glib.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/text/CString.h>
-
-using namespace WebCore;
-
-namespace WebKit {
-
-TextCheckerClientGtk::TextCheckerClientGtk(WebKitSpellChecker* spellChecker)
- : m_spellChecker(spellChecker)
-{
-}
-
-TextCheckerClientGtk::~TextCheckerClientGtk()
-{
-}
-
-bool TextCheckerClientGtk::shouldEraseMarkersAfterChangeSelection(TextCheckingType) const
-{
- return true;
-}
-
-void TextCheckerClientGtk::ignoreWordInSpellDocument(const String& text)
-{
- webkit_spell_checker_ignore_word(m_spellChecker.get(), text.utf8().data());
-}
-
-void TextCheckerClientGtk::learnWord(const String& text)
-{
- webkit_spell_checker_learn_word(m_spellChecker.get(), text.utf8().data());
-}
-
-void TextCheckerClientGtk::checkSpellingOfString(const UChar* text, int length, int* misspellingLocation, int* misspellingLength)
-{
- String textAsString(text, length);
- webkit_spell_checker_check_spelling_of_string(m_spellChecker.get(), textAsString.utf8().data(), misspellingLocation, misspellingLength);
-}
-
-String TextCheckerClientGtk::getAutoCorrectSuggestionForMisspelledWord(const String& inputWord)
-{
- return webkit_spell_checker_get_autocorrect_suggestions_for_misspelled_word(m_spellChecker.get(), inputWord.utf8().data());
-}
-
-void TextCheckerClientGtk::checkGrammarOfString(const UChar*, int, Vector<GrammarDetail>&, int*, int*)
-{
- notImplemented();
-}
-
-void TextCheckerClientGtk::getGuessesForWord(const String& word, const String& context, WTF::Vector<String>& guesses)
-{
- char** suggestions = webkit_spell_checker_get_guesses_for_word(m_spellChecker.get(), word.utf8().data(), context.utf8().data());
- if (!suggestions)
- return;
-
- guesses.clear();
-
- for (int i = 0; suggestions[i]; i++)
- guesses.append(String::fromUTF8(suggestions[i]));
-
- g_strfreev(suggestions);
-}
-
-void TextCheckerClientGtk::updateSpellCheckingLanguage(const char* spellCheckingLanguages)
-{
- webkit_spell_checker_update_spell_checking_languages(m_spellChecker.get(), spellCheckingLanguages);
-}
-}
diff --git a/Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.h
deleted file mode 100644
index b4861df36..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org>
- * Copyright (C) 2006 Zack Rusin <zack@kde.org>
- * Copyright (C) 2006 Apple Computer, Inc.
- * Copyright (C) 2010 Martin Robinson <mrobinson@webkit.org>
- *
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef TextCheckerClientGtk_h
-#define TextCheckerClientGtk_h
-
-#include "TextCheckerClient.h"
-#include <wtf/gobject/GRefPtr.h>
-
-typedef struct _WebKitSpellChecker WebKitSpellChecker;
-
-namespace WebKit {
-
-class TextCheckerClientGtk : public WebCore::TextCheckerClient {
- public:
- TextCheckerClientGtk(WebKitSpellChecker*);
- ~TextCheckerClientGtk();
- virtual bool shouldEraseMarkersAfterChangeSelection(WebCore::TextCheckingType) const;
- virtual void ignoreWordInSpellDocument(const WTF::String&);
- virtual void learnWord(const WTF::String&);
- virtual void checkSpellingOfString(const UChar*, int length, int* misspellingLocation, int* misspellingLength);
- virtual WTF::String getAutoCorrectSuggestionForMisspelledWord(const WTF::String&);
- virtual void checkGrammarOfString(const UChar*, int length, WTF::Vector<WebCore::GrammarDetail>&, int* badGrammarLocation, int* badGrammarLength);
- virtual void getGuessesForWord(const WTF::String& word, const WTF::String& context, WTF::Vector<WTF::String>& guesses);
- virtual void requestCheckingOfString(WTF::PassRefPtr<WebCore::TextCheckingRequest>) { }
-
- void updateSpellCheckingLanguage(const char*);
- private:
- GRefPtr<WebKitSpellChecker> m_spellChecker;
- };
-}
-#endif
-
diff --git a/Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.cpp
deleted file mode 100644
index 391676afb..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.cpp
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (C) 2012 Intel Inc. All rights reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#include "config.h"
-#include "UserMediaClientGtk.h"
-
-#if ENABLE(MEDIA_STREAM)
-#include "MediaStreamSource.h"
-#include "NotImplemented.h"
-#include "UserMediaRequest.h"
-
-using namespace WebCore;
-
-namespace WebKit {
-
-UserMediaClientGtk::UserMediaClientGtk()
-{
-}
-
-UserMediaClientGtk::~UserMediaClientGtk()
-{
-}
-
-void UserMediaClientGtk::pageDestroyed()
-{
- notImplemented();
-}
-
-void UserMediaClientGtk::requestUserMedia(WTF::PassRefPtr<UserMediaRequest> prpRequest, const MediaStreamSourceVector& audioSource, const MediaStreamSourceVector& videoSource)
-{
- notImplemented();
-}
-
-void UserMediaClientGtk::cancelUserMediaRequest(UserMediaRequest* request)
-{
- notImplemented();
-}
-
-} // namespace WebKit;
-
-#endif // MEDIA_STREAM
diff --git a/Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.h
deleted file mode 100644
index 0362a4a3d..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/UserMediaClientGtk.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2012 Intel Inc. All rights reserved.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-#ifndef UserMediaClientGtk_h
-#define UserMediaClientGtk_h
-
-#if ENABLE(MEDIA_STREAM)
-
-#include "UserMediaClient.h"
-
-namespace WebKit {
-
-class UserMediaClientGtk : public WebCore::UserMediaClient {
-public:
- UserMediaClientGtk();
- virtual ~UserMediaClientGtk();
-
- virtual void pageDestroyed();
- virtual void requestUserMedia(WTF::PassRefPtr<WebCore::UserMediaRequest>, const WebCore::MediaStreamSourceVector&, const WebCore::MediaStreamSourceVector&);
- virtual void cancelUserMediaRequest(WebCore::UserMediaRequest*);
-};
-
-} // namespace WebKit
-
-#endif // ENABLE(MEDIA_STREAM)
-
-#endif // UserMediaClientGtk_h
diff --git a/Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.cpp b/Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.cpp
deleted file mode 100644
index 9877fca19..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.cpp
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "WebViewInputMethodFilter.h"
-
-#include "Editor.h"
-#include "EventHandler.h"
-#include "FocusController.h"
-#include "Frame.h"
-#include "PlatformKeyboardEvent.h"
-#include "webkitwebviewprivate.h"
-#include <wtf/text/CString.h>
-
-using namespace WebCore;
-
-namespace WebKit {
-
-Frame* WebViewInputMethodFilter::focusedOrMainFrame()
-{
- ASSERT(m_webView);
- Page* page = core(m_webView);
- if (!page)
- return 0;
-
- return page->focusController()->focusedOrMainFrame();
-}
-
-void WebViewInputMethodFilter::setWebView(WebKitWebView* webView)
-{
- m_webView = webView;
- GtkInputMethodFilter::setWidget(GTK_WIDGET(webView));
-}
-
-bool WebViewInputMethodFilter::canEdit()
-{
- Frame* frame = focusedOrMainFrame();
- return frame && frame->editor().canEdit();
-}
-
-bool WebViewInputMethodFilter::sendSimpleKeyEvent(GdkEventKey* event, WTF::String simpleString, EventFakedForComposition)
-{
- PlatformKeyboardEvent platformEvent(event, CompositionResults(simpleString));
- return focusedOrMainFrame()->eventHandler()->keyEvent(platformEvent);
-}
-
-bool WebViewInputMethodFilter::sendKeyEventWithCompositionResults(GdkEventKey* event, ResultsToSend resultsToSend, EventFakedForComposition)
-{
- PlatformKeyboardEvent platformEvent(event, CompositionResults(CompositionResults::WillSendCompositionResultsSoon));
- if (!focusedOrMainFrame()->eventHandler()->keyEvent(platformEvent))
- return false;
-
- if (resultsToSend & Composition && !m_confirmedComposition.isNull())
- confirmCompositionText(m_confirmedComposition);
- if (resultsToSend & Preedit && !m_preedit.isNull())
- setPreedit(m_preedit, m_cursorOffset);
- return true;
-}
-
-void WebViewInputMethodFilter::confirmCompositionText(String text)
-{
- Frame* frame = focusedOrMainFrame();
- if (!frame || !frame->editor().canEdit())
- return;
-
- if (text.isNull()) {
- confirmCurrentComposition();
- return;
- }
- frame->editor().confirmComposition(m_confirmedComposition);
-}
-
-void WebViewInputMethodFilter::confirmCurrentComposition()
-{
- Frame* frame = focusedOrMainFrame();
- if (!frame || !frame->editor().canEdit())
- return;
- frame->editor().confirmComposition();
-}
-
-void WebViewInputMethodFilter::cancelCurrentComposition()
-{
- Frame* frame = focusedOrMainFrame();
- if (!frame || !frame->editor().canEdit())
- return;
- frame->editor().cancelComposition();
-}
-
-void WebViewInputMethodFilter::setPreedit(String newPreedit, int cursorOffset)
-{
- Frame* frame = focusedOrMainFrame();
- if (!frame || !frame->editor().canEdit())
- return;
-
- // TODO: We should parse the PangoAttrList that we get from the IM context here.
- Vector<CompositionUnderline> underlines;
- underlines.append(CompositionUnderline(0, newPreedit.length(), Color(1, 1, 1), false));
- frame->editor().setComposition(newPreedit, underlines, m_cursorOffset, m_cursorOffset);
-}
-
-} // namespace WebKit
diff --git a/Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.h b/Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.h
deleted file mode 100644
index b077ae005..000000000
--- a/Source/WebKit/gtk/WebCoreSupport/WebViewInputMethodFilter.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef WebViewInputMethodFilter_h
-#define WebViewInputMethodFilter_h
-
-#include "GtkInputMethodFilter.h"
-
-namespace WebCore {
-class Frame;
-}
-
-typedef struct _WebKitWebView WebKitWebView;
-
-namespace WebKit {
-
-class WebViewInputMethodFilter : public WebCore::GtkInputMethodFilter {
-public:
- void setWebView(WebKitWebView*);
-
-protected:
- virtual bool sendSimpleKeyEvent(GdkEventKey*, WTF::String eventString, EventFakedForComposition);
- virtual bool sendKeyEventWithCompositionResults(GdkEventKey*, ResultsToSend, EventFakedForComposition);
- virtual bool canEdit();
- virtual void confirmCompositionText(String);
- virtual void confirmCurrentComposition();
- virtual void cancelCurrentComposition();
- virtual void setPreedit(String, int cursorOffset);
-
-private:
- WebCore::Frame* focusedOrMainFrame();
-
- WebKitWebView* m_webView;
-};
-
-} // namespace WebKit
-
-#endif // WebViewInputMethodFilter_h
diff --git a/Source/WebKit/gtk/docs/webkitenvironment.xml b/Source/WebKit/gtk/docs/webkitenvironment.xml
deleted file mode 100644
index 68e2a8ce4..000000000
--- a/Source/WebKit/gtk/docs/webkitenvironment.xml
+++ /dev/null
@@ -1,64 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
-<refentry id="webkit-environment">
-<refmeta>
-<refentrytitle>Environment</refentrytitle>
-<manvolnum>7</manvolnum>
-<refmiscinfo>WEBKITGTK Library</refmiscinfo>
-</refmeta>
-
-<refnamediv>
-<refname>Environment</refname>
-<refpurpose>How does the environment affect applications that use WebKitGTK+</refpurpose>
-</refnamediv>
-
-<refsect2>
-<title>Logging</title>
-
-<para>
-You can make WebKitGTK+ log some of what it is doing internally by
-using the <literal>WEBKIT_DEBUG</literal> environment variable. It
-takes a space-separated list of names, representing the various
-aspects of the work the library performs. Notice that most of the
-logging is only done in debug builds (that you get when you pass
-<literal>--enable-debug</literal> to the <literal>configure</literal>
-script).
-</para>
-
-<para>
-A list of possible values for the environment variable follows:
-</para>
-
-<variablelist>
- <varlistentry><term>BackForward</term></varlistentry>
- <varlistentry><term>Editing</term></varlistentry>
- <varlistentry><term>Events</term></varlistentry>
- <varlistentry><term>Frames</term></varlistentry>
- <varlistentry><term>FTP</term></varlistentry>
- <varlistentry><term>History</term></varlistentry>
- <varlistentry><term>IconDatabase</term></varlistentry>
- <varlistentry><term>Loading</term></varlistentry>
- <varlistentry><term>Media</term></varlistentry>
- <varlistentry><term>Network</term></varlistentry>
- <varlistentry><term>NotYetImplemented</term></varlistentry>
- <varlistentry><term>PageCache</term></varlistentry>
- <varlistentry><term>PlatformLeaks</term></varlistentry>
- <varlistentry><term>ResourceLoading</term></varlistentry>
- <varlistentry><term>Animations</term></varlistentry>
- <varlistentry><term>Plugins</term></varlistentry>
- <varlistentry><term>PopupBlocking</term></varlistentry>
- <varlistentry><term>Progress</term></varlistentry>
- <varlistentry><term>SpellingAndGrammar</term></varlistentry>
- <varlistentry><term>SQLDatabase</term></varlistentry>
- <varlistentry><term>StorageAPI</term></varlistentry>
- <varlistentry><term>Threading</term></varlistentry>
- <varlistentry><term>FileAPI</term></varlistentry>
- <varlistentry><term>WebAudio</term></varlistentry>
- <varlistentry><term>Compositing</term></varlistentry>
- <varlistentry><term>Gamepad</term></varlistentry>
-</variablelist>
-
-</refsect2>
-
-</refentry>
diff --git a/Source/WebKit/gtk/docs/webkitgtk-docs.sgml b/Source/WebKit/gtk/docs/webkitgtk-docs.sgml
deleted file mode 100644
index 72106522f..000000000
--- a/Source/WebKit/gtk/docs/webkitgtk-docs.sgml
+++ /dev/null
@@ -1,137 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
-<!ENTITY version SYSTEM "version.xml">
-]>
-<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
- <bookinfo>
- <title>WebKitGTK+ Reference Manual</title>
- <releaseinfo>for WebKitGTK+ &version;</releaseinfo>
- </bookinfo>
-
- <chapter>
- <title>Global functions</title>
- <xi:include href="xml/webkit.xml"/>
- </chapter>
-
- <chapter>
- <title>Class Overview</title>
- <xi:include href="xml/webkitwebview.xml"/>
- <xi:include href="xml/webkitwebframe.xml"/>
- <xi:include href="xml/webkitwebsettings.xml"/>
- <xi:include href="xml/webkitwebbackforwardlist.xml"/>
- <xi:include href="xml/webkitwebhistoryitem.xml"/>
- <xi:include href="xml/webkitwebnavigationaction.xml"/>
- <xi:include href="xml/webkitwebpolicydecision.xml"/>
- <xi:include href="xml/webkitgeolocationpolicydecision.xml"/>
- <xi:include href="xml/webkitnetworkrequest.xml"/>
- <xi:include href="xml/webkitnetworkresponse.xml"/>
- <xi:include href="xml/webkitwebinspector.xml"/>
- <xi:include href="xml/webkitwebdatabase.xml"/>
- <xi:include href="xml/webkitwebdatasource.xml"/>
- <xi:include href="xml/webkitwebresource.xml"/>
- <xi:include href="xml/webkitdownload.xml"/>
- <xi:include href="xml/webkitviewportattributes.xml"/>
- <xi:include href="xml/webkithittestresult.xml"/>
- <xi:include href="xml/webkitwebplugin.xml"/>
- <xi:include href="xml/webkitwebplugindatabase.xml"/>
- <xi:include href="xml/webkitsoupauthdialog.xml"/>
- <xi:include href="xml/webkitsecurityorigin.xml"/>
- <xi:include href="xml/webkitwebwindowfeatures.xml"/>
- <xi:include href="xml/webkiticondatabase.xml"/>
- <xi:include href="xml/webkitspellchecker.xml"/>
- <xi:include href="xml/webkitfavicondatabase.xml"/>
- <xi:include href="xml/webkitfilechooserrequest.xml"/>
- </chapter>
-
- <chapter>
- <title>Running WebKitGTK+-based programs</title>
- <xi:include href="webkitenvironment.xml"/>
- </chapter>
-
- <index id="index-all">
- <title>Index</title>
- </index>
- <index id="index-deprecated" role="deprecated">
- <title>Index of deprecated symbols</title>
- </index>
- <index id="index-1.0.1" role="1.0.1">
- <title>Index of new symbols in 1.0.1</title>
- </index>
- <index id="index-1.0.2" role="1.0.2">
- <title>Index of new symbols in 1.0.2</title>
- </index>
- <index id="index-1.0.3" role="1.0.3">
- <title>Index of new symbols in 1.0.3</title>
- </index>
- <index id="index-1.1.1" role="1.1.1">
- <title>Index of new symbols in 1.1.1</title>
- </index>
- <index id="index-1.1.2" role="1.1.2">
- <title>Index of new symbols in 1.1.2</title>
- </index>
- <index id="index-1.1.3" role="1.1.3">
- <title>Index of new symbols in 1.1.3</title>
- </index>
- <index id="index-1.1.4" role="1.1.4">
- <title>Index of new symbols in 1.1.4</title>
- </index>
- <index id="index-1.1.5" role="1.1.5">
- <title>Index of new symbols in 1.1.5</title>
- </index>
- <index id="index-1.1.6" role="1.1.6">
- <title>Index of new symbols in 1.1.6</title>
- </index>
- <index id="index-1.1.7" role="1.1.7">
- <title>Index of new symbols in 1.1.7</title>
- </index>
- <index id="index-1.1.8" role="1.1.8">
- <title>Index of new symbols in 1.1.8</title>
- </index>
- <index id="index-1.1.10" role="1.1.10">
- <title>Index of new symbols in 1.1.10</title>
- </index>
- <index id="index-1.1.11" role="1.1.11">
- <title>Index of new symbols in 1.1.11</title>
- </index>
- <index id="index-1.1.13" role="1.1.13">
- <title>Index of new symbols in 1.1.13</title>
- </index>
- <index id="index-1.1.14" role="1.1.14">
- <title>Index of new symbols in 1.1.14</title>
- </index>
- <index id="index-1.1.15" role="1.1.15">
- <title>Index of new symbols in 1.1.15</title>
- </index>
- <index id="index-1.1.16" role="1.1.16">
- <title>Index of new symbols in 1.1.16</title>
- </index>
- <index id="index-1.1.17" role="1.1.17">
- <title>Index of new symbols in 1.1.17</title>
- </index>
- <index id="index-1.1.18" role="1.1.18">
- <title>Index of new symbols in 1.1.18</title>
- </index>
- <index id="index-1.1.20" role="1.1.20">
- <title>Index of new symbols in 1.1.20</title>
- </index>
- <index id="index-1.1.23" role="1.1.23">
- <title>Index of new symbols in 1.1.23</title>
- </index>
- <index id="index-1.3.1" role="1.3.1">
- <title>Index of new symbols in 1.3.1</title>
- </index>
- <index id="index-1.3.2" role="1.3.2">
- <title>Index of new symbols in 1.3.2</title>
- </index>
- <index id="index-1.3.3" role="1.3.3">
- <title>Index of new symbols in 1.3.3</title>
- </index>
- <index id="index-1.3.4" role="1.3.4">
- <title>Index of new symbols in 1.3.4</title>
- </index>
- <index id="index-1.3.8" role="1.3.8">
- <title>Index of new symbols in 1.3.8</title>
- </index>
- <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
-</book>
diff --git a/Source/WebKit/gtk/docs/webkitgtk-overrides.txt b/Source/WebKit/gtk/docs/webkitgtk-overrides.txt
deleted file mode 100644
index e69de29bb..000000000
--- a/Source/WebKit/gtk/docs/webkitgtk-overrides.txt
+++ /dev/null
diff --git a/Source/WebKit/gtk/docs/webkitgtk-sections.txt b/Source/WebKit/gtk/docs/webkitgtk-sections.txt
deleted file mode 100644
index b707bf83d..000000000
--- a/Source/WebKit/gtk/docs/webkitgtk-sections.txt
+++ /dev/null
@@ -1,753 +0,0 @@
-<SECTION>
-<FILE>webkitwebsettings</FILE>
-<TITLE>WebKitWebSettings</TITLE>
-WebKitWebSettings
-WebKitEditingBehavior
-webkit_web_settings_copy
-webkit_web_settings_new
-webkit_web_settings_get_user_agent
-<SUBSECTION Standard>
-WEBKIT_WEB_SETTINGS
-WEBKIT_IS_WEB_SETTINGS
-WEBKIT_TYPE_WEB_SETTINGS
-WEBKIT_WEB_SETTINGS_CLASS
-WEBKIT_IS_WEB_SETTINGS_CLASS
-WEBKIT_WEB_SETTINGS_GET_CLASS
-<SUBSECTION Private>
-WebKitWebSettingsClass
-WebKitWebSettingsPrivate
-webkit_web_settings_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebbackforwardlist</FILE>
-<TITLE>WebKitWebBackForwardList</TITLE>
-WebKitWebBackForwardList
-webkit_web_back_forward_list_add_item
-webkit_web_back_forward_list_clear
-webkit_web_back_forward_list_contains_item
-webkit_web_back_forward_list_get_back_item
-webkit_web_back_forward_list_get_back_length
-webkit_web_back_forward_list_get_back_list_with_limit
-webkit_web_back_forward_list_get_current_item
-webkit_web_back_forward_list_get_forward_item
-webkit_web_back_forward_list_get_forward_length
-webkit_web_back_forward_list_get_forward_list_with_limit
-webkit_web_back_forward_list_get_limit
-webkit_web_back_forward_list_get_nth_item
-webkit_web_back_forward_list_go_back
-webkit_web_back_forward_list_go_forward
-webkit_web_back_forward_list_go_to_item
-webkit_web_back_forward_list_new_with_web_view
-webkit_web_back_forward_list_set_limit
-<SUBSECTION Standard>
-WEBKIT_WEB_BACK_FORWARD_LIST
-WEBKIT_IS_WEB_BACK_FORWARD_LIST
-WEBKIT_TYPE_WEB_BACK_FORWARD_LIST
-WEBKIT_WEB_BACK_FORWARD_LIST_CLASS
-WEBKIT_IS_WEB_BACK_FORWARD_LIST_CLASS
-WEBKIT_WEB_BACK_FORWARD_LIST_GET_CLASS
-<SUBSECTION Private>
-WebKitWebBackForwardListPrivate
-webkit_web_back_forward_list_get_type
-WebKitWebBackForwardListClass
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebhistoryitem</FILE>
-<TITLE>WebKitWebHistoryItem</TITLE>
-WebKitWebHistoryItem
-webkit_web_history_item_copy
-webkit_web_history_item_get_alternate_title
-webkit_web_history_item_get_last_visited_time
-webkit_web_history_item_get_original_uri
-webkit_web_history_item_get_title
-webkit_web_history_item_get_uri
-webkit_web_history_item_new
-webkit_web_history_item_new_with_data
-webkit_web_history_item_set_alternate_title
-<SUBSECTION Standard>
-WEBKIT_WEB_HISTORY_ITEM
-WEBKIT_IS_WEB_HISTORY_ITEM
-WEBKIT_TYPE_WEB_HISTORY_ITEM
-WEBKIT_WEB_HISTORY_ITEM_CLASS
-WEBKIT_IS_WEB_HISTORY_ITEM_CLASS
-WEBKIT_WEB_HISTORY_ITEM_GET_CLASS
-<SUBSECTION Private>
-webkit_web_history_item_get_type
-WebKitWebHistoryItemPrivate
-WebKitWebHistoryItemClass
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebframe</FILE>
-<TITLE>WebKitWebFrame</TITLE>
-WebKitLoadStatus
-WebKitWebFrame
-webkit_web_frame_find_frame
-webkit_web_frame_get_data_source
-webkit_web_frame_get_dom_document
-webkit_web_frame_get_global_context
-webkit_web_frame_get_horizontal_scrollbar_policy
-webkit_web_frame_get_load_status
-webkit_web_frame_get_name
-webkit_web_frame_get_network_response
-webkit_web_frame_get_parent
-webkit_web_frame_get_provisional_data_source
-webkit_web_frame_get_security_origin
-webkit_web_frame_get_title
-webkit_web_frame_get_uri
-webkit_web_frame_get_vertical_scrollbar_policy
-webkit_web_frame_get_web_view
-webkit_web_frame_load_alternate_string
-webkit_web_frame_load_request
-webkit_web_frame_load_string
-webkit_web_frame_load_uri
-webkit_web_frame_new
-webkit_web_frame_print
-webkit_web_frame_print_full
-webkit_web_frame_reload
-webkit_web_frame_stop_loading
-<SUBSECTION Standard>
-WEBKIT_WEB_FRAME
-WEBKIT_IS_WEB_FRAME
-WEBKIT_TYPE_WEB_FRAME
-WEBKIT_WEB_FRAME_CLASS
-WEBKIT_IS_WEB_FRAME_CLASS
-WEBKIT_WEB_FRAME_GET_CLASS
-<SUBSECTION Private>
-WebKitWebFramePrivate
-WebKitWebFrameClass
-webkit_web_frame_get_type
-webkit_web_frame_get_range_for_word_around_caret
-webkit_web_frame_replace_selection
-</SECTION>
-
-<SECTION>
-<FILE>webkitdownload</FILE>
-WebKitDownloadError
-WebKitDownloadStatus
-<TITLE>WebKitDownload</TITLE>
-WebKitDownload
-webkit_download_cancel
-webkit_download_get_current_size
-webkit_download_get_destination_uri
-webkit_download_get_elapsed_time
-webkit_download_get_network_request
-webkit_download_get_network_response
-webkit_download_get_progress
-webkit_download_get_status
-webkit_download_get_suggested_filename
-webkit_download_get_total_size
-webkit_download_get_uri
-webkit_download_new
-webkit_download_set_destination_uri
-webkit_download_start
-<SUBSECTION Standard>
-WEBKIT_DOWNLOAD
-WEBKIT_DOWNLOAD_CLASS
-WEBKIT_DOWNLOAD_GET_CLASS
-WEBKIT_IS_DOWNLOAD
-WEBKIT_IS_DOWNLOAD_CLASS
-WEBKIT_TYPE_DOWNLOAD
-<SUBSECTION Private>
-webkit_download_get_type
-WebKitDownloadClass
-WebKitDownloadPrivate
-</SECTION>
-
-<SECTION>
-<FILE>webkitsecurityorigin</FILE>
-<TITLE>WebKitSecurityOrigin</TITLE>
-WebKitSecurityOrigin
-webkit_security_origin_get_all_web_databases
-webkit_security_origin_get_host
-webkit_security_origin_get_port
-webkit_security_origin_get_protocol
-webkit_security_origin_get_type
-webkit_security_origin_get_web_database_quota
-webkit_security_origin_get_web_database_usage
-webkit_security_origin_set_web_database_quota
-<SUBSECTION Standard>
-WEBKIT_SECURITY_ORIGIN
-WEBKIT_SECURITY_ORIGIN_CLASS
-WEBKIT_SECURITY_ORIGIN_GET_CLASS
-WEBKIT_IS_SECURITY_ORIGIN
-WEBKIT_IS_SECURITY_ORIGIN_CLASS
-WEBKIT_TYPE_SECURITY_ORIGIN
-<SUBSECTION Private>
-WebKitSecurityOriginClass
-WebKitSecurityOriginPrivate
-</SECTION>
-
-<SECTION>
-<FILE>webkithittestresult</FILE>
-<TITLE>WebKitHitTestResult</TITLE>
-WebKitHitTestResult
-WebKitHitTestResultContext
-<SUBSECTION Standard>
-WEBKIT_HIT_TEST_RESULT
-WEBKIT_HIT_TEST_RESULT_CLASS
-WEBKIT_HIT_TEST_RESULT_GET_CLASS
-WEBKIT_IS_HIT_TEST_RESULT
-WEBKIT_IS_HIT_TEST_RESULT_CLASS
-WEBKIT_TYPE_HIT_TEST_RESULT
-<SUBSECTION Private>
-WebKitHitTestResultClass
-WebKitHitTestResultPrivate
-webkit_hit_test_result_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebdatasource</FILE>
-<TITLE>WebKitWebDataSource</TITLE>
-WebKitWebDataSource
-webkit_web_data_source_get_data
-webkit_web_data_source_get_encoding
-webkit_web_data_source_get_initial_request
-webkit_web_data_source_get_main_resource
-webkit_web_data_source_get_request
-webkit_web_data_source_get_subresources
-webkit_web_data_source_get_unreachable_uri
-webkit_web_data_source_get_web_frame
-webkit_web_data_source_is_loading
-webkit_web_data_source_new
-<SUBSECTION Standard>
-WEBKIT_IS_WEB_DATA_SOURCE
-WEBKIT_IS_WEB_DATA_SOURCE_CLASS
-WEBKIT_TYPE_WEB_DATA_SOURCE
-WEBKIT_WEB_DATA_SOURCE
-WEBKIT_WEB_DATA_SOURCE_CLASS
-WEBKIT_WEB_DATA_SOURCE_GET_CLASS
-<SUBSECTION Private>
-WebKitWebDataSourceClass
-WebKitWebDataSourcePrivate
-webkit_web_data_source_new_with_request
-webkit_web_data_source_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebdatabase</FILE>
-<TITLE>WebKitWebDatabase</TITLE>
-WebKitWebDatabase
-webkit_web_database_get_display_name
-webkit_web_database_get_expected_size
-webkit_web_database_get_filename
-webkit_web_database_get_name
-webkit_web_database_get_security_origin
-webkit_web_database_get_size
-webkit_web_database_remove
-<SUBSECTION Standard>
-WEBKIT_IS_WEB_DATABASE
-WEBKIT_IS_WEB_DATABASE_CLASS
-WEBKIT_TYPE_WEB_DATABASE
-WEBKIT_WEB_DATABASE
-WEBKIT_WEB_DATABASE_CLASS
-WEBKIT_WEB_DATABASE_GET_CLASS
-<SUBSECTION Private>
-WebKitWebDatabaseClass
-WebKitWebDatabasePrivate
-webkit_web_database_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitsoupauthdialog</FILE>
-<TITLE>WebKitSoupAuthDialog</TITLE>
-WebKitSoupAuthDialog
-<SUBSECTION Standard>
-WEBKIT_IS_SOUP_AUTH_DIALOG
-WEBKIT_IS_SOUP_AUTH_DIALOG_CLASS
-WEBKIT_SOUP_AUTH_DIALOG
-WEBKIT_SOUP_AUTH_DIALOG_CLASS
-WEBKIT_SOUP_AUTH_DIALOG_GET_CLASS
-WEBKIT_TYPE_SOUP_AUTH_DIALOG
-<SUBSECTION Private>
-webkit_soup_auth_dialog_get_type
-WebKitSoupAuthDialogClass
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebinspector</FILE>
-<TITLE>WebKitWebInspector</TITLE>
-WebKitWebInspector
-webkit_web_inspector_get_inspected_uri
-webkit_web_inspector_get_web_view
-webkit_web_inspector_inspect_coordinates
-webkit_web_inspector_show
-webkit_web_inspector_close
-webkit_web_inspector_inspect_node
-<SUBSECTION Standard>
-WEBKIT_WEB_INSPECTOR
-WEBKIT_IS_WEB_INSPECTOR
-WEBKIT_TYPE_WEB_INSPECTOR
-WEBKIT_WEB_INSPECTOR_CLASS
-WEBKIT_IS_WEB_INSPECTOR_CLASS
-WEBKIT_WEB_INSPECTOR_GET_CLASS
-<SUBSECTION Private>
-webkit_web_inspector_get_type
-WebKitWebInspectorPrivate
-WebKitWebInspectorClass
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebnavigationaction</FILE>
-<TITLE>WebKitWebNavigationAction</TITLE>
-WebKitWebNavigationAction
-WebKitWebNavigationReason
-webkit_web_navigation_action_get_button
-webkit_web_navigation_action_get_modifier_state
-webkit_web_navigation_action_get_original_uri
-webkit_web_navigation_action_get_reason
-webkit_web_navigation_action_get_target_frame
-webkit_web_navigation_action_set_original_uri
-webkit_web_navigation_action_set_reason
-<SUBSECTION Standard>
-WEBKIT_IS_WEB_NAVIGATION_ACTION
-WEBKIT_IS_WEB_NAVIGATION_ACTION_CLASS
-WEBKIT_TYPE_WEB_NAVIGATION_ACTION
-WEBKIT_WEB_NAVIGATION_ACTION
-WEBKIT_WEB_NAVIGATION_ACTION_CLASS
-WEBKIT_WEB_NAVIGATION_ACTION_GET_CLASS
-<SUBSECTION Private>
-WebKitWebNavigationActionClass
-WebKitWebNavigationActionPrivate
-webkit_web_navigation_action_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebpolicydecision</FILE>
-<TITLE>WebKitWebPolicyDecision</TITLE>
-WebKitWebPolicyDecision
-webkit_web_policy_decision_download
-webkit_web_policy_decision_ignore
-webkit_web_policy_decision_use
-<SUBSECTION Standard>
-WEBKIT_IS_WEB_POLICY_DECISION
-WEBKIT_IS_WEB_POLICY_DECISION_CLASS
-WEBKIT_TYPE_WEB_POLICY_DECISION
-WEBKIT_WEB_POLICY_DECISION
-WEBKIT_WEB_POLICY_DECISION_CLASS
-WEBKIT_WEB_POLICY_DECISION_GET_CLASS
-<SUBSECTION Private>
-WebKitWebPolicyDecisionClass
-WebKitWebPolicyDecisionPrivate
-webkit_web_policy_decision_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitgeolocationpolicydecision</FILE>
-<TITLE>WebKitGeolocationPolicyDecision</TITLE>
-WebKitGeolocationPolicyDecision
-webkit_geolocation_policy_allow
-webkit_geolocation_policy_deny
-<SUBSECTION Standard>
-WEBKIT_IS_GEOLOCATION_POLICY_DECISION
-WEBKIT_IS_GEOLOCATION_POLICY_DECISION_CLASS
-WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION
-WEBKIT_GEOLOCATION_POLICY_DECISION
-WEBKIT_GEOLOCATION_POLICY_DECISION_CLASS
-WEBKIT_GEOLOCATION_POLICY_DECISION_GET_CLASS
-<SUBSECTION Private>
-WebKitGeolocationPolicyDecisionClass
-WebKitGeolocationPolicyDecisionPrivate
-webkit_geolocation_policy_decision_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitnetworkrequest</FILE>
-<TITLE>WebKitNetworkRequest</TITLE>
-WebKitNetworkRequest
-webkit_network_request_new
-webkit_network_request_get_uri
-webkit_network_request_get_message
-webkit_network_request_set_uri
-<SUBSECTION Standard>
-WEBKIT_NETWORK_REQUEST
-WEBKIT_IS_NETWORK_REQUEST
-WEBKIT_TYPE_NETWORK_REQUEST
-WEBKIT_NETWORK_REQUEST_CLASS
-WEBKIT_IS_NETWORK_REQUEST_CLASS
-WEBKIT_NETWORK_REQUEST_GET_CLASS
-<SUBSECTION Private>
-WebKitNetworkRequestPrivate
-WebKitNetworkRequestClass
-webkit_network_request_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitnetworkresponse</FILE>
-<TITLE>WebKitNetworkResponse</TITLE>
-WebKitNetworkResponse
-webkit_network_response_get_uri
-webkit_network_response_get_message
-webkit_network_response_get_suggested_filename
-webkit_network_response_set_uri
-<SUBSECTION Standard>
-WEBKIT_NETWORK_RESPONSE
-WEBKIT_IS_NETWORK_RESPONSE
-WEBKIT_TYPE_NETWORK_RESPONSE
-WEBKIT_NETWORK_RESPONSE_CLASS
-WEBKIT_IS_NETWORK_RESPONSE_CLASS
-WEBKIT_NETWORK_RESPONSE_GET_CLASS
-<SUBSECTION Private>
-WebKitNetworkResponsePrivate
-WebKitNetworkResponseClass
-webkit_network_response_new
-webkit_network_response_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebview</FILE>
-WebKitNavigationResponse
-WebKitWebViewTargetInfo
-WebKitWebViewViewMode
-<TITLE>WebKitWebView</TITLE>
-WebKitWebView
-webkit_web_view_can_copy_clipboard
-webkit_web_view_can_cut_clipboard
-webkit_web_view_can_go_back
-webkit_web_view_can_go_back_or_forward
-webkit_web_view_can_go_forward
-webkit_web_view_can_paste_clipboard
-webkit_web_view_can_redo
-webkit_web_view_can_show_mime_type
-webkit_web_view_can_undo
-webkit_web_view_copy_clipboard
-webkit_web_view_cut_clipboard
-webkit_web_view_delete_selection
-webkit_web_view_execute_script
-webkit_web_view_get_back_forward_list
-webkit_web_view_get_copy_target_list
-webkit_web_view_get_custom_encoding
-webkit_web_view_get_dom_document
-webkit_web_view_get_editable
-webkit_web_view_get_encoding
-webkit_web_view_get_focused_frame
-webkit_web_view_get_full_content_zoom
-webkit_web_view_get_hit_test_result
-webkit_web_view_get_icon_pixbuf
-webkit_web_view_get_icon_uri
-webkit_web_view_get_inspector
-webkit_web_view_get_load_status
-webkit_web_view_get_main_frame
-webkit_web_view_get_paste_target_list
-webkit_web_view_get_progress
-webkit_web_view_get_settings
-webkit_web_view_get_title
-webkit_web_view_get_transparent
-webkit_web_view_get_uri
-webkit_web_view_get_view_mode
-webkit_web_view_get_view_source_mode
-webkit_web_view_get_viewport_attributes
-webkit_web_view_get_zoom_level
-webkit_web_view_go_back
-webkit_web_view_go_back_or_forward
-webkit_web_view_go_forward
-webkit_web_view_go_to_back_forward_item
-webkit_web_view_has_selection
-webkit_web_view_load_html_string
-webkit_web_view_load_request
-webkit_web_view_load_string
-webkit_web_view_load_uri
-webkit_web_view_mark_text_matches
-webkit_web_view_move_cursor
-webkit_web_view_new
-webkit_web_view_open
-webkit_web_view_paste_clipboard
-webkit_web_view_redo
-webkit_web_view_reload
-webkit_web_view_reload_bypass_cache
-webkit_web_view_search_text
-webkit_web_view_select_all
-webkit_web_view_set_custom_encoding
-webkit_web_view_set_editable
-webkit_web_view_set_full_content_zoom
-webkit_web_view_set_highlight_text_matches
-webkit_web_view_set_maintains_back_forward_list
-webkit_web_view_set_settings
-webkit_web_view_set_transparent
-webkit_web_view_set_view_mode
-webkit_web_view_set_view_source_mode
-webkit_web_view_set_zoom_level
-webkit_web_view_stop_loading
-webkit_web_view_try_get_favicon_pixbuf
-webkit_web_view_undo
-webkit_web_view_unmark_text_matches
-webkit_web_view_zoom_in
-webkit_web_view_zoom_out
-webkit_web_view_get_window_features
-webkit_web_view_get_snapshot
-<SUBSECTION Standard>
-WEBKIT_WEB_VIEW
-WEBKIT_IS_WEB_VIEW
-WEBKIT_TYPE_WEB_VIEW
-WEBKIT_WEB_VIEW_CLASS
-WEBKIT_IS_WEB_VIEW_CLASS
-WEBKIT_WEB_VIEW_GET_CLASS
-<SUBSECTION Private>
-webkit_web_view_get_type
-WebKitWebViewPrivate
-WebKitWebViewClass
-WebKitInsertAction
-WebKitSelectionAffinity
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebwindowfeatures</FILE>
-<TITLE>WebKitWebWindowFeatures</TITLE>
-WebKitWebWindowFeatures
-webkit_web_window_features_equal
-webkit_web_window_features_new
-<SUBSECTION Standard>
-WEBKIT_IS_WEB_WINDOW_FEATURES
-WEBKIT_IS_WEB_WINDOW_FEATURES_CLASS
-WEBKIT_TYPE_WEB_WINDOW_FEATURES
-WEBKIT_WEB_WINDOW_FEATURES
-WEBKIT_WEB_WINDOW_FEATURES_CLASS
-WEBKIT_WEB_WINDOW_FEATURES_GET_CLASS
-<SUBSECTION Private>
-webkit_web_window_features_get_type
-WebKitWebWindowFeaturesClass
-WebKitWebWindowFeaturesPrivate
-</SECTION>
-
-<SECTION>
-<FILE>webkit</FILE>
-<TITLE>Global functions</TITLE>
-webkit_get_default_session
-webkit_get_default_web_database_quota
-webkit_get_web_database_directory_path
-webkit_get_web_plugin_database
-webkit_remove_all_web_databases
-webkit_set_default_web_database_quota
-webkit_set_web_database_directory_path
-webkit_get_favicon_database
-webkit_get_icon_database
-webkit_get_text_checker
-webkit_set_text_checker
-<SUBSECTION ApplicationCache>
-webkit_application_cache_get_database_directory_path
-webkit_application_cache_get_maximum_size
-webkit_application_cache_set_maximum_size
-<SUBSECTION CacheModel>
-WebKitCacheModel
-webkit_get_cache_model
-webkit_set_cache_model
-<SUBSECTION ContextMenuItem>
-WebKitContextMenuAction
-webkit_context_menu_item_get_action
-<SUBSECTION SecurityPolicy>
-WebKitSecurityPolicy
-webkit_set_security_policy_for_uri_scheme
-webkit_get_security_policy_for_uri_scheme
-<SUBSECTION Private>
-WEBKITGTK_API_VERSION
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebresource</FILE>
-<TITLE>WebKitWebResource</TITLE>
-WebKitWebResource
-webkit_web_resource_get_data
-webkit_web_resource_get_encoding
-webkit_web_resource_get_frame_name
-webkit_web_resource_get_mime_type
-webkit_web_resource_get_uri
-webkit_web_resource_new
-<SUBSECTION Standard>
-WEBKIT_WEB_RESOURCE
-WEBKIT_IS_WEB_RESOURCE
-WEBKIT_TYPE_WEB_RESOURCE
-WEBKIT_WEB_RESOURCE_CLASS
-WEBKIT_IS_WEB_RESOURCE_CLASS
-WEBKIT_WEB_RESOURCE_GET_CLASS
-<SUBSECTION Private>
-webkit_web_resource_get_type
-WebKitWebResourcePrivate
-WebKitWebResourceClass
-</SECTION>
-
-<SECTION>
-<FILE>webkitviewportattributes</FILE>
-<TITLE>WebKitViewportAttributes</TITLE>
-WebKitViewportAttributes
-webkit_viewport_attributes_recompute
-<SUBSECTION Standard>
-WEBKIT_IS_VIEWPORT_ATTRIBUTES
-WEBKIT_IS_VIEWPORT_ATTRIBUTES_CLASS
-WEBKIT_TYPE_VIEWPORT_ATTRIBUTES
-WEBKIT_VIEWPORT_ATTRIBUTES
-WEBKIT_VIEWPORT_ATTRIBUTES_CLASS
-WEBKIT_VIEWPORT_ATTRIBUTES_GET_CLASS
-<SUBSECTION Private>
-webkit_viewport_attributes_get_type
-WebKitViewportAttributesClass
-WebKitViewportAttributesPrivate
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebplugin</FILE>
-<TITLE>WebKitWebPlugin</TITLE>
-WebKitWebPlugin
-WebKitWebPluginMIMEType
-webkit_web_plugin_get_description
-webkit_web_plugin_get_enabled
-webkit_web_plugin_get_mimetypes
-webkit_web_plugin_get_name
-webkit_web_plugin_set_enabled
-webkit_web_plugin_get_path
-<SUBSECTION Standard>
-WEBKIT_IS_WEB_PLUGIN
-WEBKIT_IS_WEB_PLUGIN_CLASS
-WEBKIT_TYPE_WEB_PLUGIN
-WEBKIT_WEB_PLUGIN
-WEBKIT_WEB_PLUGIN_CLASS
-WEBKIT_WEB_PLUGIN_GET_CLASS
-<SUBSECTION Private>
-WebKitWebPluginClass
-WebKitWebPluginPrivate
-webkit_web_plugin_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitwebplugindatabase</FILE>
-<TITLE>WebKitWebPluginDatabase</TITLE>
-WebKitWebPluginDatabase
-webkit_web_plugin_database_get_plugin_for_mimetype
-webkit_web_plugin_database_get_plugins
-webkit_web_plugin_database_plugins_list_free
-webkit_web_plugin_database_refresh
-<SUBSECTION Standard>
-WEBKIT_IS_WEB_PLUGIN_DATABASE
-WEBKIT_IS_WEB_PLUGIN_DATABASE_CLASS
-WEBKIT_TYPE_WEB_PLUGIN_DATABASE
-WEBKIT_WEB_PLUGIN_DATABASE
-WEBKIT_WEB_PLUGIN_DATABASE_CLASS
-WEBKIT_WEB_PLUGIN_DATABASE_GET_CLASS
-<SUBSECTION Private>
-WebKitWebPluginDatabaseClass
-WebKitWebPluginDatabasePrivate
-webkit_web_plugin_database_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitspellchecker</FILE>
-<TITLE>WebKitSpellChecker</TITLE>
-WebKitSpellChecker
-webkit_spell_checker_check_spelling_of_string
-webkit_spell_checker_get_guesses_for_word
-webkit_spell_checker_update_spell_checking_languages
-webkit_spell_checker_get_autocorrect_suggestions_for_misspelled_word
-webkit_spell_checker_learn_word
-webkit_spell_checker_ignore_word
-<SUBSECTION Standard>
-WEBKIT_TYPE_SPELL_CHECKER
-WEBKIT_SPELL_CHECKER
-WEBKIT_IS_SPELL_CHECKER
-WEBKIT_SPELL_CHECKER_GET_IFACE
-<SUBSECTION Private>
-WebKitSpellCheckerInterface
-webkit_spell_checker_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkiterror</FILE>
-WEBKIT_NETWORK_ERROR
-WEBKIT_PLUGIN_ERROR
-WEBKIT_POLICY_ERROR
-WebKitNetworkError
-WebKitPluginError
-WebKitPolicyError
-webkit_network_error_quark
-webkit_plugin_error_quark
-webkit_policy_error_quark
-</SECTION>
-
-<SECTION>
-<FILE>webkiticondatabase</FILE>
-<TITLE>WebKitIconDatabase</TITLE>
-WebKitIconDatabase
-webkit_icon_database_clear
-webkit_icon_database_get_icon_pixbuf
-webkit_icon_database_get_icon_uri
-webkit_icon_database_get_path
-webkit_icon_database_get_type
-webkit_icon_database_set_path
-<SUBSECTION Standard>
-WEBKIT_TYPE_ICON_DATABASE
-WEBKIT_ICON_DATABASE
-WEBKIT_ICON_DATABASE_CLASS
-WEBKIT_ICON_DATABASE_GET_CLASS
-WEBKIT_IS_ICON_DATABASE
-WEBKIT_IS_ICON_DATABASE_CLASS
-<SUBSECTION Private>
-WebKitIconDatabaseClass
-WebKitIconDatabasePrivate
-</SECTION>
-
-<SECTION>
-<FILE>webkitfavicondatabase</FILE>
-<TITLE>WebKitFaviconDatabase</TITLE>
-WebKitFaviconDatabase
-webkit_favicon_database_clear
-webkit_favicon_database_get_favicon_pixbuf
-webkit_favicon_database_get_favicon_pixbuf_finish
-webkit_favicon_database_get_favicon_uri
-webkit_favicon_database_get_path
-webkit_favicon_database_get_type
-webkit_favicon_database_set_path
-webkit_favicon_database_try_get_favicon_pixbuf
-<SUBSECTION Standard>
-WEBKIT_TYPE_FAVICON_DATABASE
-WEBKIT_FAVICON_DATABASE
-WEBKIT_FAVICON_DATABASE_CLASS
-WEBKIT_FAVICON_DATABASE_GET_CLASS
-WEBKIT_IS_FAVICON_DATABASE
-WEBKIT_IS_FAVICON_DATABASE_CLASS
-<SUBSECTION Private>
-WebKitFaviconDatabaseClass
-WebKitFaviconDatabasePrivate
-</SECTION>
-
-<SECTION>
-<FILE>webkitfilechooserrequest</FILE>
-<TITLE>WebKitFileChooserRequest</TITLE>
-WebKitFileChooserRequest
-webkit_file_chooser_request_get_select_multiple
-webkit_file_chooser_request_get_mime_types
-webkit_file_chooser_request_get_mime_types_filter
-webkit_file_chooser_request_get_selected_files
-webkit_file_chooser_request_select_files
-
-<SUBSECTION Standard>
-WEBKIT_TYPE_FILE_CHOOSER_REQUEST
-WEBKIT_FILE_CHOOSER_REQUEST
-WEBKIT_IS_FILE_CHOOSER_REQUEST
-WEBKIT_FILE_CHOOSER_REQUEST_CLASS
-WEBKIT_IS_FILE_CHOOSER_REQUEST_CLASS
-WEBKIT_FILE_CHOOSER_REQUEST_GET_CLASS
-
-<SUBSECTION Private>
-WebKitFileChooserRequestClass
-WebKitFileChooserRequestPrivate
-webkit_file_chooser_request_get_type
-</SECTION>
-
-<SECTION>
-<FILE>webkitdefines</FILE>
-WEBKIT_API
-WEBKITGTK_API_VERSION
-WEBKIT_OBSOLETE_API
-WEBKIT_CHECK_VERSION
-WEBKIT_MAJOR_VERSION
-WEBKIT_MICRO_VERSION
-WEBKIT_MINOR_VERSION
-webkit_check_version
-webkit_major_version
-webkit_micro_version
-webkit_minor_version
-<SUBSECTION Private>
-LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
-WEBKIT_USER_AGENT_MAJOR_VERSION
-WEBKIT_USER_AGENT_MINOR_VERSION
-</SECTION>
diff --git a/Source/WebKit/gtk/docs/webkitgtk.types b/Source/WebKit/gtk/docs/webkitgtk.types
deleted file mode 100644
index 8049b5c04..000000000
--- a/Source/WebKit/gtk/docs/webkitgtk.types
+++ /dev/null
@@ -1,26 +0,0 @@
-#include <webkit/webkit.h>
-webkit_download_get_type
-webkit_favicon_database_get_type
-webkit_file_chooser_request_get_type
-webkit_geolocation_policy_decision_get_type
-webkit_hit_test_result_get_type
-webkit_icon_database_get_type
-webkit_network_request_get_type
-webkit_network_response_get_type
-webkit_security_origin_get_type
-webkit_soup_auth_dialog_get_type
-webkit_viewport_attributes_get_type
-webkit_web_back_forward_list_get_type
-webkit_web_database_get_type
-webkit_web_data_source_get_type
-webkit_web_frame_get_type
-webkit_web_history_item_get_type
-webkit_web_inspector_get_type
-webkit_web_navigation_action_get_type
-webkit_web_plugin_database_get_type
-webkit_web_plugin_get_type
-webkit_web_policy_decision_get_type
-webkit_web_resource_get_type
-webkit_web_settings_get_type
-webkit_web_view_get_type
-webkit_web_window_features_get_type
diff --git a/Source/WebKit/gtk/gdom/ConvertToGCharPrivate.h b/Source/WebKit/gtk/gdom/ConvertToGCharPrivate.h
deleted file mode 100644
index 2c32f2c9a..000000000
--- a/Source/WebKit/gtk/gdom/ConvertToGCharPrivate.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2008, 2009 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef ConvertToGCharPrivate_h
-#define ConvertToGCharPrivate_h
-
-#include "KURL.h"
-#include <wtf/text/CString.h>
-#include <wtf/text/AtomicString.h>
-#include <wtf/text/WTFString.h>
-
-inline gchar* copyAsGchar(WTF::String const& s)
-{
- return g_strdup(s.utf8().data());
-}
-
-inline gchar* copyAsGchar(WebCore::KURL const& s)
-{
- return copyAsGchar(s.string());
-}
-
-inline gchar* copyAsGchar(const String& s)
-{
- return g_strdup(s.UTF8String().c_str());
-}
-
-inline gchar* copyAsGchar(WTF::AtomicString const& s)
-{
- return g_strdup(s.string().utf8().data());
-}
-
-#endif /* ConvertToGCharPrivate_h*/
diff --git a/Source/WebKit/gtk/resources/error.html b/Source/WebKit/gtk/resources/error.html
deleted file mode 100644
index 229be2c42..000000000
--- a/Source/WebKit/gtk/resources/error.html
+++ /dev/null
@@ -1,60 +0,0 @@
-<html>
-<head>
-<title>Error</title>
-<style type="text/css">
-body {
- background-color: #fff;
- margin: 0;
- padding: 0;
-}
-
-#errorContainer {
- background: #fff;
- min-width: 35em;
- max-width: 35em;
- position: absolute;
- top: 2em;
- left: 1em;
- padding: 10px;
- border: 2px solid #eee;
- -webkit-border-radius: 5px;
-}
-
-#errorTitleText {
- font-size: 120%%;
- font-weight: bold;
-}
-
-#errorMessageText {
- font-size: 80%%;
-}
-
-</style>
-<script type="text/javascript">
-
-function tryagain()
-{
- location.reload();
-}
-</script>
-</head>
-<body>
-<div id="errorContainer">
-
-<div id="errorTitle">
- <p id="errorTitleText">Unable to load page</p>
-</div>
-<div id="errorMessage">
- <p>Problem occurred while loading the URL %s</p>
- <p id="errorMessageText">%s</a>
-</p>
-</div>
-
-<form name="bl">
-<input type="button" value="Try again" onclick="javascript:tryagain()" />
-</form>
-
-</div>
-
-</body>
-</html>
diff --git a/Source/WebKit/gtk/tests/resources/blank.ico b/Source/WebKit/gtk/tests/resources/blank.ico
deleted file mode 100644
index ea848b991..000000000
--- a/Source/WebKit/gtk/tests/resources/blank.ico
+++ /dev/null
Binary files differ
diff --git a/Source/WebKit/gtk/tests/resources/test.html b/Source/WebKit/gtk/tests/resources/test.html
deleted file mode 100644
index 98f7d4fd9..000000000
--- a/Source/WebKit/gtk/tests/resources/test.html
+++ /dev/null
@@ -1,6 +0,0 @@
-<html>
-<head><title>test</title></head>
-<body>test</body>
-</html>></head>
-<body>test</body>
-</html>
diff --git a/Source/WebKit/gtk/tests/resources/test.ogg b/Source/WebKit/gtk/tests/resources/test.ogg
deleted file mode 100644
index 7f3a3b9c5..000000000
--- a/Source/WebKit/gtk/tests/resources/test.ogg
+++ /dev/null
Binary files differ
diff --git a/Source/WebKit/gtk/tests/resources/test.pdf b/Source/WebKit/gtk/tests/resources/test.pdf
deleted file mode 100644
index 2424c19d9..000000000
--- a/Source/WebKit/gtk/tests/resources/test.pdf
+++ /dev/null
Binary files differ
diff --git a/Source/WebKit/gtk/tests/resources/test.txt b/Source/WebKit/gtk/tests/resources/test.txt
deleted file mode 100644
index 9daeafb98..000000000
--- a/Source/WebKit/gtk/tests/resources/test.txt
+++ /dev/null
@@ -1 +0,0 @@
-test
diff --git a/Source/WebKit/gtk/tests/test_utils.c b/Source/WebKit/gtk/tests/test_utils.c
deleted file mode 100644
index 6bb645d0d..000000000
--- a/Source/WebKit/gtk/tests/test_utils.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (C) 2010 Arno Renevier
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "test_utils.h"
-
-#include <glib.h>
-#include <glib/gstdio.h>
-
-int testutils_relative_chdir(const gchar *targetFilename, const gchar *executablePath)
-{
- /* user can set location of the webkit repository directory if it differs from build directory */
- const gchar *repoPath = g_getenv("WEBKITREPODIR");
- if (repoPath) {
- if (g_chdir(repoPath))
- return -1;
- } else if (g_chdir(g_path_get_dirname(executablePath)))
- return -1;
-
- while (!g_file_test(targetFilename, G_FILE_TEST_EXISTS)) {
- gchar *pathName;
- if (g_chdir(".."))
- return -1;
- g_assert(!g_str_equal((pathName = g_get_current_dir()), "/"));
- g_free(pathName);
- }
-
- gchar *dirName = g_path_get_dirname(targetFilename);
- if (g_chdir(dirName)) {
- g_free(dirName);
- return -1;
- }
-
- g_free(dirName);
- return 0;
-}
diff --git a/Source/WebKit/gtk/tests/test_utils.h b/Source/WebKit/gtk/tests/test_utils.h
deleted file mode 100644
index ec60da3f0..000000000
--- a/Source/WebKit/gtk/tests/test_utils.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#include <glib.h>
-
-int testutils_relative_chdir(const gchar *targetFilename, const gchar *executablePath);
diff --git a/Source/WebKit/gtk/tests/testapplicationcache.c b/Source/WebKit/gtk/tests/testapplicationcache.c
deleted file mode 100644
index 3a2909e26..000000000
--- a/Source/WebKit/gtk/tests/testapplicationcache.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright (C) 2011 Lukasz Slachciak
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2,1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <glib.h>
-#include <glib/gprintf.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-static void test_application_cache_maximum_size()
-{
- unsigned long long maxSize = 8192;
- webkit_application_cache_set_maximum_size(maxSize);
-
- // Creating a WebView - make sure that it didn't change anything
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- g_object_unref(webView);
-
- g_assert(maxSize == webkit_application_cache_get_maximum_size());
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/application_cache/maximum_size",
- test_application_cache_maximum_size);
-
- return g_test_run();
-}
-
diff --git a/Source/WebKit/gtk/tests/testatk.c b/Source/WebKit/gtk/tests/testatk.c
deleted file mode 100644
index 242f1d78a..000000000
--- a/Source/WebKit/gtk/tests/testatk.c
+++ /dev/null
@@ -1,2117 +0,0 @@
-/*
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <locale.h>
-#include <unistd.h>
-#include <webkit/webkit.h>
-
-static const char* centeredContents = "<html><body><p style='text-align: center;'>Short line</p><p style='text-align: center;'>Long-size line with some foo bar baz content</p><p style='text-align: center;'>Short line</p><p style='text-align: center;'>This is a multi-line paragraph<br />where the first line<br />is the biggest one</p></body></html>";
-
-static const char* contents = "<html><body><p>This is a test. This is the second sentence. And this the third.</p></body></html>";
-
-static const char* contentsWithNewlines = "<html><body><p>This is a test. \n\nThis\n is the second sentence. And this the third.</p></body></html>";
-
-static const char* contentsWithPreformattedText = "<html><body><pre>\n\t\n\tfirst line\n\tsecond line\n</pre></body></html>";
-
-static const char* contentsWithSpecialChars = "<html><body><p>&laquo;&nbsp;This is a paragraph with &ldquo;special&rdquo; characters inside.&nbsp;&raquo;</p><ul><li style='max-width:100px;'>List item with some text that wraps across different lines.</li><li style='max-width:100px;'><p>List item with some text that wraps across different lines.</p></li></ul></body></html>";
-
-static const char* contentsInTextarea = "<html><body><textarea cols='80'>This is a test. This is the second sentence. And this the third.</textarea></body></html>";
-
-static const char* contentsInTextInput = "<html><body><input type='text' size='80' value='This is a test. This is the second sentence. And this the third.'/></body></html>";
-
-static const char* contentsInParagraphAndBodySimple = "<html><body><p>This is a test.</p>Hello world.</body></html>";
-
-static const char* contentsInParagraphAndBodyModerate = "<html><body><p>This is a test.</p>Hello world.<br /><font color='#00cc00'>This sentence is green.</font><br />This one is not.</body></html>";
-
-static const char* contentsInTable = "<html><body><table><tr><td>foo</td><td>bar</td></tr></table></body></html>";
-
-static const char* contentsInTableWithHeaders = "<html><body><table><tr><th>foo</th><th>bar</th><th colspan='2'>baz</th></tr><tr><th>qux</th><td>1</td><td>2</td><td>3</td></tr><tr><th rowspan='2'>quux</th><td>4</td><td>5</td><td>6</td></tr><tr><td>6</td><td>7</td><td>8</td></tr><tr><th>corge</th><td>9</td><td>10</td><td>11</td></tr></table><table><tr><td>1</td><td>2</td></tr><tr><td>3</td><td>4</td></tr></table></body></html>";
-
-static const char* contentsWithExtraneousWhiteSpaces = "<html><head><body><p>This\n paragraph\n is\n borked!</p></body></html>";
-
-static const char* contentsWithWrappedLines = "<html><body><p style='max-width:150px;'>This is one line wrapped because of the maximum width of its container.</p><p>This is another line wrapped<br>because of one forced<br>line break in the middle.</body></html>";
-
-static const char* comboBoxSelector = "<html><body><select><option selected value='foo'>foo</option><option value='bar'>bar</option></select></body></html>";
-
-static const char* embeddedObjects = "<html><body><p>Choose: <input value='foo' type='checkbox'/>foo <input value='bar' type='checkbox'/>bar (pick one)</p><p>Choose: <select name='foo'><option>bar</option><option>baz</option></select> (pick one)</p><p><input name='foobarbutton' value='foobar' type='button'/></p></body></html>";
-
-static const char* formWithTextInputs = "<html><body><form><input type='text' name='entry' /><input type='password' name='passwordEntry' /></form></body></html>";
-
-static const char* hypertextAndHyperlinks = "<html><body><p>A paragraph with no links at all</p><p><a href='http://foo.bar.baz/'>A line</a> with <a href='http://bar.baz.foo/'>a link in the middle</a> as well as at the beginning and <a href='http://baz.foo.bar/'>at the end</a></p><ol><li>List item with a <span><a href='http://foo.bar.baz/'>link inside a span node</a></span></li></ol></body></html>";
-
-static const char* layoutAndDataTables = "<html><body><table><tr><th>Odd</th><th>Even</th></tr><tr><td>1</td><td>2</td></tr></table><table><tr><td>foo</td><td>bar</td></tr></table></body></html>";
-
-static const char* linksWithInlineImages = "<html><head><style>a.http:before {content: url(no-image.png);}</style><body><p><a class='http' href='foo'>foo</a> bar baz</p><p>foo <a class='http' href='bar'>bar</a> baz</p><p>foo bar <a class='http' href='baz'>baz</a></p></body></html>";
-
-static const char* listsOfItems = "<html><body><ul><li>text only</li><li><a href='foo'>link only</a></li><li>text and a <a href='bar'>link</a></li></ul><ol><li>text only</li><li><a href='foo'>link only</a></li><li>text and a <a href='bar'>link</a></li></ol></body></html>";
-
-static const char* textForCaretBrowsing = "<html><body><h1>A text header</h1><p>A paragraph <a href='http://foo.bar.baz/'>with a link</a> in the middle</p><ol><li>A list item</li><li><span style='display:block;'>Block span in a list item</span><span>Inline span in a list item</span></li><li><a href='foo'><span style='display:block;'>Block span in a link in a list item</span><span>Inline span in a link in a list item</span></a></li></ol><select><option selected value='foo'>An option in a combo box</option></select><input type='text' name='foo' value='foo bar baz' /><table><tr><td>a table cell</td><td></td><td><a href='foo'><span style='display:block;'>Block span in a link in a table cell</span><span>Inline span in a link in a table cell</span></a></td><td><span style='display:block;'>Block span in a table cell</span><span>Inline span in a table cell</span></td></tr></table><h4><a href='foo'><span style='display:block;'>Block span in a link in a heading</span><span>Inline span in a link in a heading</span></h4><h4><span style='display:block;'>Block span in a heading</span><span>Inline span in a heading</span></h4></body></html>";
-
-static const char* textForSelections = "<html><body><p>A paragraph with plain text</p><p>A paragraph with <a href='http://webkit.org'>a link</a> in the middle</p><ol><li>A list item</li></ol><select></body></html>";
-
-static const char* textWithAttributes = "<html><head><style>.st1 {font-family: monospace; color:rgb(120,121,122);} .st2 {text-decoration:underline; background-color:rgb(80,81,82);}</style></head><body><p style=\"font-size:14; text-align:right;\">This is the <i>first</i><b> sentence of this text.</b></p><p class=\"st1\">This sentence should have an style applied <span class=\"st2\">and this part should have another one</span>.</p><p>x<sub>1</sub><sup>2</sup>=x<sub>2</sub><sup>3</sup></p><p style=\"text-align:center;\">This sentence is the <strike>last</strike> one.</p></body></html>";
-
-static AtkObject* getWebAreaObject(WebKitWebView* webView)
-{
- /* Manually spin the main context to make sure the accessible
- objects are properly created before continuing. */
- while (g_main_context_pending(0))
- g_main_context_iteration(0, TRUE);
-
- AtkObject* rootObject = gtk_widget_get_accessible(GTK_WIDGET(webView));
- if (!rootObject)
- return NULL;
-
- AtkObject* webAreaObject = atk_object_ref_accessible_child(rootObject, 0);
- if (!webAreaObject)
- return NULL;
-
- /* We don't need the extra ref here. */
- g_object_unref(webAreaObject);
-
- return webAreaObject;
-}
-
-typedef gchar* (*AtkGetTextFunction) (AtkText*, gint, AtkTextBoundary, gint*, gint*);
-
-static void testGetTextFunction(AtkText* textObject, AtkGetTextFunction fn, AtkTextBoundary boundary, gint offset, const char* textResult, gint startOffsetResult, gint endOffsetResult)
-{
- gint startOffset;
- gint endOffset;
- char* text = fn(textObject, offset, boundary, &startOffset, &endOffset);
- g_assert_cmpstr(text, ==, textResult);
- g_assert_cmpint(startOffset, ==, startOffsetResult);
- g_assert_cmpint(endOffset, ==, endOffsetResult);
- g_free(text);
-}
-
-static void runGetTextTests(AtkText* textObject)
-{
- char* text = atk_text_get_text(textObject, 0, -1);
- g_assert_cmpstr(text, ==, "This is a test. This is the second sentence. And this the third.");
- g_free(text);
-
- /* ATK_TEXT_BOUNDARY_CHAR */
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_CHAR,
- 0, "T", 0, 1);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_CHAR,
- 0, "h", 1, 2);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_CHAR,
- 0, "", 0, 0);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_CHAR,
- 1, "T", 0, 1);
-
- /* ATK_TEXT_BOUNDARY_WORD_START */
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_START,
- 0, "This ", 0, 5);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_START,
- 4, "This ", 0, 5);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_START,
- 10, "test. ", 10, 16);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_START,
- 58, "third.", 58, 64);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_WORD_START,
- 5, "This ", 0, 5);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_WORD_START,
- 7, "This ", 0, 5);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_WORD_START,
- 0, "is ", 5, 8);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_WORD_START,
- 4, "is ", 5, 8);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_WORD_START,
- 3, "is ", 5, 8);
-
- /* ATK_TEXT_BOUNDARY_WORD_END */
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 0, "This", 0, 4);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 4, " is", 4, 7);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 5, " is", 4, 7);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 9, " test", 9, 14);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 5, "This", 0, 4);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 4, "This", 0, 4);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 7, " is", 4, 7);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 5, " a", 7, 9);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 4, " a", 7, 9);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_END,
- 58, " third", 57, 63);
-
- /* ATK_TEXT_BOUNDARY_SENTENCE_START */
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_SENTENCE_START,
- 0, "This is a test. ", 0, 16);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_SENTENCE_START,
- 15, "This is a test. ", 0, 16);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_SENTENCE_START,
- 0, "This is the second sentence. ", 16, 45);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_SENTENCE_START,
- 15, "This is the second sentence. ", 16, 45);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_SENTENCE_START,
- 16, "This is a test. ", 0, 16);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_SENTENCE_START,
- 44, "This is a test. ", 0, 16);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_SENTENCE_START,
- 15, "", 0, 0);
-
- /* ATK_TEXT_BOUNDARY_SENTENCE_END */
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 0, "This is a test.", 0, 15);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 15, " This is the second sentence.", 15, 44);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 16, " This is the second sentence.", 15, 44);
-
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 17, " This is the second sentence.", 15, 44);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 0, " This is the second sentence.", 15, 44);
-
- testGetTextFunction(textObject, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 15, " And this the third.", 44, 64);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 16, "This is a test.", 0, 15);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 15, "This is a test.", 0, 15);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 14, "", 0, 0);
-
- testGetTextFunction(textObject, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_SENTENCE_END,
- 44, " This is the second sentence.", 15, 44);
-
- /* It's tricky to test these properly right now, since our a11y
- implementation splits different lines in different a11y items. */
- /* ATK_TEXT_BOUNDARY_LINE_START */
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START,
- 0, "This is a test. This is the second sentence. And this the third.", 0, 64);
-
- /* ATK_TEXT_BOUNDARY_LINE_END */
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END,
- 0, "This is a test. This is the second sentence. And this the third.", 0, 64);
-
- /* For objects implementing AtkEditableText, try to change the
- exposed text and retrieve it again as a full line.
- (see https://bugs.webkit.org/show_bug.cgi?id=72830) */
- if (ATK_IS_EDITABLE_TEXT(textObject)) {
- atk_editable_text_set_text_contents(ATK_EDITABLE_TEXT(textObject), "foo bar baz");
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 0, "foo bar baz", 0, 11);
- testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END, 0, "foo bar baz", 0, 11);
- }
-}
-
-static gchar* textCaretMovedResult = 0;
-
-static void textCaretMovedCallback(AtkText* text, gint pos, gpointer data)
-{
- g_assert(ATK_IS_TEXT(text));
-
- g_free(textCaretMovedResult);
- AtkRole role = atk_object_get_role(ATK_OBJECT(text));
- textCaretMovedResult = g_strdup_printf("|%s|%d|", atk_role_get_name(role), pos);
-}
-
-static void testWebkitAtkCaretOffsets()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, textForCaretBrowsing, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkObject* header = atk_object_ref_accessible_child(object, 0);
- g_assert(ATK_IS_TEXT(header));
- g_signal_connect(header, "text-caret-moved", G_CALLBACK(textCaretMovedCallback), 0);
-
- gchar* text = atk_text_get_text(ATK_TEXT(header), 0, -1);
- g_assert_cmpstr(text, ==, "A text header");
- g_free (text);
-
- /* It should be possible to place the caret inside a header. */
- gboolean result = atk_text_set_caret_offset(ATK_TEXT(header), 5);
- g_assert_cmpint(result, ==, TRUE);
- gint offset = atk_text_get_caret_offset(ATK_TEXT(header));
- g_assert_cmpint(offset, ==, 5);
- g_assert_cmpstr(textCaretMovedResult, ==, "|heading|5|");
-
- AtkObject* paragraph = atk_object_ref_accessible_child(object, 1);
- g_assert(ATK_IS_TEXT(paragraph));
- g_signal_connect(paragraph, "text-caret-moved", G_CALLBACK(textCaretMovedCallback), 0);
-
- text = atk_text_get_text(ATK_TEXT(paragraph), 0, -1);
- g_assert_cmpstr(text, ==, "A paragraph with a link in the middle");
- g_free (text);
-
- /* It should be possible to place the caret inside a paragraph and a link. */
- result = atk_text_set_caret_offset(ATK_TEXT(paragraph), 5);
- g_assert_cmpint(result, ==, TRUE);
- offset = atk_text_get_caret_offset(ATK_TEXT(paragraph));
- g_assert_cmpint(offset, ==, 5);
- g_assert_cmpstr(textCaretMovedResult, ==, "|paragraph|5|");
-
- result = atk_text_set_caret_offset(ATK_TEXT(paragraph), 20);
- g_assert_cmpint(result, ==, TRUE);
- offset = atk_text_get_caret_offset(ATK_TEXT(paragraph));
- g_assert_cmpint(offset, ==, 20);
- g_assert_cmpstr(textCaretMovedResult, ==, "|paragraph|20|");
-
- result = atk_text_set_caret_offset(ATK_TEXT(paragraph), 30);
- g_assert_cmpint(result, ==, TRUE);
- offset = atk_text_get_caret_offset(ATK_TEXT(paragraph));
- g_assert_cmpint(offset, ==, 30);
- g_assert_cmpstr(textCaretMovedResult, ==, "|paragraph|30|");
-
- AtkObject* link = atk_object_ref_accessible_child(paragraph, 0);
- g_assert(ATK_IS_TEXT(link));
- text = atk_text_get_text(ATK_TEXT(link), 0, -1);
- g_assert_cmpstr(text, ==, "with a link");
- g_free (text);
-
- result = atk_text_set_caret_offset(ATK_TEXT(link), 5);
- g_assert_cmpint(result, ==, TRUE);
- offset = atk_text_get_caret_offset(ATK_TEXT(link));
- g_assert_cmpint(offset, ==, 5);
- /* Positions inside links are reported relative to the paragraph. */
- g_assert_cmpstr(textCaretMovedResult, ==, "|paragraph|17|");
-
- AtkObject* list = atk_object_ref_accessible_child(object, 2);
- g_assert(ATK_OBJECT(list));
- g_assert(atk_object_get_role(list) == ATK_ROLE_LIST);
- g_assert_cmpint(atk_object_get_n_accessible_children(list), ==, 3);
-
- AtkObject* listItem = atk_object_ref_accessible_child(list, 0);
- g_assert(ATK_IS_TEXT(listItem));
- text = atk_text_get_text(ATK_TEXT(listItem), 0, -1);
- g_assert_cmpstr(text, ==, "1. A list item");
- g_free (text);
-
- listItem = atk_object_ref_accessible_child(list, 1);
- g_assert(ATK_IS_TEXT(listItem));
- text = atk_text_get_text(ATK_TEXT(listItem), 0, -1);
- g_assert_cmpstr(text, ==, "2. Block span in a list item\nInline span in a list item");
- g_free (text);
-
- listItem = atk_object_ref_accessible_child(list, 2);
- g_assert(ATK_IS_TEXT(listItem));
- text = atk_text_get_text(ATK_TEXT(listItem), 0, -1);
- g_assert_cmpstr(text, ==, "3. Block span in a link in a list item\nInline span in a link in a list item");
- g_free (text);
-
- /* It's not possible to place the caret inside an item's marker. */
- result = atk_text_set_caret_offset(ATK_TEXT(listItem), 1);
- g_assert_cmpint(result, ==, FALSE);
-
- /* It should be possible to place the caret inside an item's text. */
- result = atk_text_set_caret_offset(ATK_TEXT(listItem), 5);
- g_assert_cmpint(result, ==, TRUE);
- offset = atk_text_get_caret_offset(ATK_TEXT(listItem));
- g_assert_cmpint(offset, ==, 5);
-
- AtkObject* panel = atk_object_ref_accessible_child(object, 3);
- g_assert(ATK_IS_OBJECT(panel));
- g_assert(atk_object_get_role(panel) == ATK_ROLE_PANEL);
-
- AtkObject* comboBox = atk_object_ref_accessible_child(panel, 0);
- g_assert(ATK_IS_OBJECT(comboBox));
- g_assert(!ATK_IS_TEXT(comboBox));
- g_assert(atk_object_get_role(comboBox) == ATK_ROLE_COMBO_BOX);
-
- AtkObject* menuPopup = atk_object_ref_accessible_child(comboBox, 0);
- g_assert(ATK_IS_OBJECT(menuPopup));
- g_assert(!ATK_IS_TEXT(menuPopup));
- g_assert(atk_object_get_role(menuPopup) == ATK_ROLE_MENU);
-
- AtkObject* comboBoxOption = atk_object_ref_accessible_child(menuPopup, 0);
- g_assert(ATK_IS_OBJECT(comboBoxOption));
- g_assert(atk_object_get_role(comboBoxOption) == ATK_ROLE_MENU_ITEM);
- g_assert(ATK_IS_TEXT(comboBoxOption));
- text = atk_text_get_text(ATK_TEXT(comboBoxOption), 0, -1);
- g_assert_cmpstr(text, ==, "An option in a combo box");
- g_free(text);
-
- /* It's not possible to place the caret inside an option for a combobox. */
- result = atk_text_set_caret_offset(ATK_TEXT(comboBoxOption), 1);
- g_assert_cmpint(result, ==, FALSE);
-
- AtkObject* textEntry = atk_object_ref_accessible_child(panel, 1);
- g_assert(ATK_IS_OBJECT(textEntry));
- g_assert(atk_object_get_role(textEntry) == ATK_ROLE_ENTRY);
- g_assert(ATK_IS_TEXT(textEntry));
- text = atk_text_get_text(ATK_TEXT(textEntry), 0, -1);
- g_assert_cmpstr(text, ==, "foo bar baz");
- g_free(text);
-
- result = atk_text_set_caret_offset(ATK_TEXT(textEntry), 5);
- g_assert_cmpint(result, ==, TRUE);
- offset = atk_text_get_caret_offset(ATK_TEXT(textEntry));
- g_assert_cmpint(offset, ==, 5);
-
- AtkObject* table = atk_object_ref_accessible_child(object, 4);
- g_assert(ATK_IS_OBJECT(table));
- g_assert(!ATK_IS_TEXT(table));
- g_assert(atk_object_get_role(table) == ATK_ROLE_TABLE);
- g_assert_cmpint(atk_object_get_n_accessible_children(table), ==, 4);
-
- AtkObject* tableCell = atk_object_ref_accessible_child(table, 0);
- g_assert(ATK_IS_TEXT(tableCell));
- g_assert(atk_object_get_role(tableCell) == ATK_ROLE_TABLE_CELL);
- text = atk_text_get_text(ATK_TEXT(tableCell), 0, -1);
- g_assert_cmpstr(text, ==, "a table cell");
- g_free(text);
-
- result = atk_text_set_caret_offset(ATK_TEXT(tableCell), 2);
- g_assert_cmpint(result, ==, TRUE);
- offset = atk_text_get_caret_offset(ATK_TEXT(tableCell));
- g_assert_cmpint(offset, ==, 2);
-
- /* Even empty table cells should implement AtkText, but report an empty string */
- tableCell = atk_object_ref_accessible_child(table, 1);
- g_assert(ATK_IS_TEXT(tableCell));
- g_assert(atk_object_get_role(tableCell) == ATK_ROLE_TABLE_CELL);
- text = atk_text_get_text(ATK_TEXT(tableCell), 0, -1);
- g_assert_cmpstr(text, ==, "");
- g_free(text);
-
- tableCell = atk_object_ref_accessible_child(table, 2);
- g_assert(ATK_IS_TEXT(tableCell));
- g_assert(atk_object_get_role(tableCell) == ATK_ROLE_TABLE_CELL);
- text = atk_text_get_text(ATK_TEXT(tableCell), 0, -1);
- g_assert_cmpstr(text, ==, "Block span in a link in a table cell\nInline span in a link in a table cell");
- g_free(text);
-
- tableCell = atk_object_ref_accessible_child(table, 3);
- g_assert(ATK_IS_TEXT(tableCell));
- g_assert(atk_object_get_role(tableCell) == ATK_ROLE_TABLE_CELL);
- text = atk_text_get_text(ATK_TEXT(tableCell), 0, -1);
- g_assert_cmpstr(text, ==, "Block span in a table cell\nInline span in a table cell");
- g_free(text);
-
- header = atk_object_ref_accessible_child(object, 5);
- g_assert(ATK_IS_TEXT(header));
- g_assert(atk_object_get_role(header) == ATK_ROLE_HEADING);
- text = atk_text_get_text(ATK_TEXT(header), 0, -1);
- g_assert_cmpstr(text, ==, "Block span in a link in a heading\nInline span in a link in a heading");
- g_free(text);
-
- header = atk_object_ref_accessible_child(object, 6);
- g_assert(ATK_IS_TEXT(header));
- g_assert(atk_object_get_role(header) == ATK_ROLE_HEADING);
- text = atk_text_get_text(ATK_TEXT(header), 0, -1);
- g_assert_cmpstr(text, ==, "Block span in a heading\nInline span in a heading");
- g_free(text);
-
- g_free(textCaretMovedResult);
-
- g_object_unref(header);
- g_object_unref(paragraph);
- g_object_unref(link);
- g_object_unref(list);
- g_object_unref(listItem);
- g_object_unref(panel);
- g_object_unref(comboBox);
- g_object_unref(menuPopup);
- g_object_unref(comboBoxOption);
- g_object_unref(textEntry);
- g_object_unref(table);
- g_object_unref(tableCell);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkCaretOffsetsAndExtranousWhiteSpaces()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsWithExtraneousWhiteSpaces, 0, 0, 0);
-
- /* Enable caret browsing. */
- WebKitWebSettings* settings = webkit_web_view_get_settings(webView);
- g_object_set(G_OBJECT(settings), "enable-caret-browsing", TRUE, NULL);
- webkit_web_view_set_settings(webView, settings);
-
- /* Get to the inner AtkText object. */
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
- object = atk_object_ref_accessible_child(object, 0);
- g_assert(object);
-
- AtkText* textObject = ATK_TEXT(object);
- g_assert(ATK_IS_TEXT(textObject));
-
- gchar* text = atk_text_get_text(textObject, 0, -1);
- g_assert_cmpstr(text, ==, "This paragraph is borked!");
- g_free(text);
-
- gint characterCount = atk_text_get_character_count(textObject);
- g_assert_cmpint(characterCount, ==, 25);
-
- gboolean result = atk_text_set_caret_offset(textObject, characterCount - 1);
- g_assert_cmpint(result, ==, TRUE);
-
- gint caretOffset = atk_text_get_caret_offset(textObject);
- g_assert_cmpint(caretOffset, ==, characterCount - 1);
-
- result = atk_text_set_caret_offset(textObject, characterCount);
- g_assert_cmpint(result, ==, TRUE);
-
- caretOffset = atk_text_get_caret_offset(textObject);
- g_assert_cmpint(caretOffset, ==, characterCount);
-
- g_object_unref(webView);
-}
-
-static void testWebkitAtkComboBox()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, comboBoxSelector, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkObject* formObject = atk_object_ref_accessible_child(object, 0);
- g_assert(formObject);
-
- AtkObject* comboBox = atk_object_ref_accessible_child(formObject, 0);
- g_assert(ATK_IS_OBJECT(comboBox));
-
- AtkObject* menuPopup = atk_object_ref_accessible_child(comboBox, 0);
- g_assert(ATK_IS_OBJECT(menuPopup));
-
- AtkObject* item1 = atk_object_ref_accessible_child(menuPopup, 0);
- g_assert(ATK_IS_OBJECT(item1));
-
- AtkObject* item2 = atk_object_ref_accessible_child(menuPopup, 1);
- g_assert(ATK_IS_OBJECT(item2));
-
- /* Check roles. */
- g_assert(atk_object_get_role(comboBox) == ATK_ROLE_COMBO_BOX);
- g_assert(atk_object_get_role(menuPopup) == ATK_ROLE_MENU);
- g_assert(atk_object_get_role(item1) == ATK_ROLE_MENU_ITEM);
- g_assert(atk_object_get_role(item2) == ATK_ROLE_MENU_ITEM);
-
- /* Check the implementation of the AtkSelection interface. */
- g_assert(ATK_IS_SELECTION(comboBox));
- AtkSelection* atkSelection = ATK_SELECTION(comboBox);
- g_assert_cmpint(atk_selection_get_selection_count(atkSelection), ==, 1);
- g_assert(atk_selection_is_child_selected(atkSelection, 0));
- g_assert(!atk_selection_is_child_selected(atkSelection, 1));
- AtkObject* selectedItem = atk_selection_ref_selection(atkSelection, 0);
- g_assert(selectedItem == item1);
- g_object_unref(selectedItem);
-
- /* Check that the menu popup has 0 links and doesn't crash from checking. */
- gint nLinks = atk_hypertext_get_n_links(ATK_HYPERTEXT(menuPopup));
- g_assert_cmpint(nLinks, ==, 0);
-
- /* Check the implementations of the AtkAction interface. */
- g_assert(ATK_IS_ACTION(comboBox));
- AtkAction* atkAction = ATK_ACTION(comboBox);
- g_assert_cmpint(atk_action_get_n_actions(atkAction), ==, 1);
- g_assert(atk_action_do_action(atkAction, 0));
-
- g_assert(ATK_IS_ACTION(menuPopup));
- atkAction = ATK_ACTION(menuPopup);
- g_assert_cmpint(atk_action_get_n_actions(atkAction), ==, 1);
- g_assert(atk_action_do_action(atkAction, 0));
-
- g_assert(ATK_IS_ACTION(item1));
- atkAction = ATK_ACTION(item1);
- g_assert_cmpint(atk_action_get_n_actions(atkAction), ==, 1);
- g_assert(atk_action_do_action(atkAction, 0));
-
- g_assert(ATK_IS_ACTION(item2));
- atkAction = ATK_ACTION(item2);
- g_assert_cmpint(atk_action_get_n_actions(atkAction), ==, 1);
- g_assert(atk_action_do_action(atkAction, 0));
-
- /* After selecting the second item, selection should have changed. */
- g_assert_cmpint(atk_selection_get_selection_count(atkSelection), ==, 1);
- g_assert(!atk_selection_is_child_selected(atkSelection, 0));
- g_assert(atk_selection_is_child_selected(atkSelection, 1));
- selectedItem = atk_selection_ref_selection(atkSelection, 0);
- g_assert(selectedItem == item2);
- g_object_unref(selectedItem);
-
- /* Check the implementation of the AtkText interface. */
- g_assert(ATK_IS_TEXT(item1));
- AtkText* atkText = ATK_TEXT(item1);
- char *text = atk_text_get_text(atkText, 0, -1);
- g_assert_cmpstr(text, ==, "foo");
- g_free(text);
- text = atk_text_get_text(atkText, 0, 2);
- g_assert_cmpstr(text, ==, "fo");
- g_free(text);
-
- g_assert(ATK_IS_TEXT(item2));
- atkText = ATK_TEXT(item2);
- text = atk_text_get_text(atkText, 0, -1);
- g_assert_cmpstr(text, ==, "bar");
- g_free(text);
- text = atk_text_get_text(atkText, 1, 3);
- g_assert_cmpstr(text, ==, "ar");
- g_free(text);
-
- g_object_unref(formObject);
- g_object_unref(comboBox);
- g_object_unref(menuPopup);
- g_object_unref(item1);
- g_object_unref(item2);
- g_object_unref(webView);
-}
-
-static gchar* loadingEventsResult = 0;
-
-static void updateLoadingEventsResult(const gchar* signalName)
-{
- g_assert(signalName);
-
- gchar* previousResult = loadingEventsResult;
- loadingEventsResult = g_strdup_printf("%s|%s", previousResult, signalName);
- g_free(previousResult);
-}
-
-static gboolean documentLoadingEventCallback(GSignalInvocationHint *signalHint, guint numParamValues, const GValue *paramValues, gpointer data)
-{
- // At least we should receive the instance emitting the signal.
- if (numParamValues < 1)
- return TRUE;
-
- GSignalQuery signal_query;
- g_signal_query(signalHint->signal_id, &signal_query);
-
- updateLoadingEventsResult(signal_query.signal_name);
- return TRUE;
-}
-
-static void testWebkitAtkDocumentLoadingEvents()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
-
- /* Connect globally to see those events during a future load. */
- guint loadCompleteListenerId = atk_add_global_event_listener(documentLoadingEventCallback, "ATK:AtkDocument:load-complete");
-
- /* Do the load, so we can see those events happening. */
- loadingEventsResult = g_strdup("");
- webkit_web_view_load_string(webView, contents, 0, 0, 0);
-
- /* Trigger the creation of the full accessibility hierarchy by
- asking for the webArea object, so we can listen to events. */
- getWebAreaObject(webView);
-
- atk_remove_global_event_listener(loadCompleteListenerId);
-
- g_assert_cmpstr(loadingEventsResult, ==, "|load-complete");
-
- g_free(loadingEventsResult);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkEmbeddedObjects()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, embeddedObjects, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkText* paragraph1 = ATK_TEXT(atk_object_ref_accessible_child(object, 0));
- g_assert(ATK_IS_TEXT(paragraph1));
- g_assert(ATK_IS_HYPERTEXT(paragraph1));
-
- const gchar* expectedText = "Choose: \357\277\274foo \357\277\274bar (pick one)";
- char* text = atk_text_get_text(paragraph1, 0, -1);
- g_assert_cmpstr(text, ==, expectedText);
- g_free(text);
-
- gint nLinks = atk_hypertext_get_n_links(ATK_HYPERTEXT(paragraph1));
- g_assert_cmpint(nLinks, ==, 2);
-
- AtkHyperlink* hLink = atk_hypertext_get_link(ATK_HYPERTEXT(paragraph1), 0);
- g_assert(ATK_HYPERLINK(hLink));
- AtkObject* hLinkObject = atk_hyperlink_get_object(hLink, 0);
- g_assert(ATK_OBJECT(hLinkObject));
- g_assert(atk_object_get_role(hLinkObject) == ATK_ROLE_CHECK_BOX);
- g_assert_cmpint(atk_hyperlink_get_start_index(hLink), ==, 8);
- g_assert_cmpint(atk_hyperlink_get_end_index(hLink), ==, 9);
- g_assert_cmpint(atk_hyperlink_get_n_anchors(hLink), ==, 1);
- g_assert_cmpstr(atk_hyperlink_get_uri(hLink, 0), ==, 0);
-
- AtkText* paragraph2 = ATK_TEXT(atk_object_ref_accessible_child(object, 1));
- g_assert(ATK_IS_TEXT(paragraph2));
- g_assert(ATK_IS_HYPERTEXT(paragraph2));
-
- expectedText = "Choose: \357\277\274 (pick one)";
- text = atk_text_get_text(paragraph2, 0, -1);
- g_assert_cmpstr(text, ==, expectedText);
- g_free(text);
-
- nLinks = atk_hypertext_get_n_links(ATK_HYPERTEXT(paragraph2));
- g_assert_cmpint(nLinks, ==, 1);
-
- hLink = atk_hypertext_get_link(ATK_HYPERTEXT(paragraph2), 0);
- g_assert(ATK_HYPERLINK(hLink));
- hLinkObject = atk_hyperlink_get_object(hLink, 0);
- g_assert(ATK_OBJECT(hLinkObject));
- g_assert(atk_object_get_role(hLinkObject) == ATK_ROLE_COMBO_BOX);
- g_assert_cmpint(atk_hyperlink_get_start_index(hLink), ==, 8);
- g_assert_cmpint(atk_hyperlink_get_end_index(hLink), ==, 9);
- g_assert_cmpint(atk_hyperlink_get_n_anchors(hLink), ==, 1);
- g_assert_cmpstr(atk_hyperlink_get_uri(hLink, 0), ==, 0);
-
- AtkText* paragraph3 = ATK_TEXT(atk_object_ref_accessible_child(object, 2));
- g_assert(ATK_IS_TEXT(paragraph3));
- g_assert(ATK_IS_HYPERTEXT(paragraph3));
-
- expectedText = "\357\277\274";
- text = atk_text_get_text(paragraph3, 0, -1);
- g_assert_cmpstr(text, ==, expectedText);
- g_free(text);
-
- nLinks = atk_hypertext_get_n_links(ATK_HYPERTEXT(paragraph3));
- g_assert_cmpint(nLinks, ==, 1);
-
- hLink = atk_hypertext_get_link(ATK_HYPERTEXT(paragraph3), 0);
- g_assert(ATK_HYPERLINK(hLink));
- hLinkObject = atk_hyperlink_get_object(hLink, 0);
- g_assert(ATK_OBJECT(hLinkObject));
- g_assert(atk_object_get_role(hLinkObject) == ATK_ROLE_PUSH_BUTTON);
- g_assert_cmpint(atk_hyperlink_get_start_index(hLink), ==, 0);
- g_assert_cmpint(atk_hyperlink_get_end_index(hLink), ==, 1);
- g_assert_cmpint(atk_hyperlink_get_n_anchors(hLink), ==, 1);
- g_assert_cmpstr(atk_hyperlink_get_uri(hLink, 0), ==, 0);
-
- g_object_unref(paragraph1);
- g_object_unref(paragraph2);
- g_object_unref(paragraph3);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextAtOffset()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contents, 0, 0, 0);
-
- /* Get to the inner AtkText object. */
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
- object = atk_object_ref_accessible_child(object, 0);
- g_assert(object);
-
- AtkText* textObject = ATK_TEXT(object);
- g_assert(ATK_IS_TEXT(textObject));
-
- runGetTextTests(textObject);
-
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextAtOffsetNewlines()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsWithNewlines, 0, 0, 0);
-
- /* Get to the inner AtkText object. */
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
- object = atk_object_ref_accessible_child(object, 0);
- g_assert(object);
-
- AtkText* textObject = ATK_TEXT(object);
- g_assert(ATK_IS_TEXT(textObject));
-
- runGetTextTests(textObject);
-
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextAtOffsetTextarea()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsInTextarea, 0, 0, 0);
-
- /* Get to the inner AtkText object. */
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
- object = atk_object_ref_accessible_child(object, 0);
- g_assert(object);
- object = atk_object_ref_accessible_child(object, 0);
- g_assert(object);
-
- AtkText* textObject = ATK_TEXT(object);
- g_assert(ATK_IS_TEXT(textObject));
-
- runGetTextTests(textObject);
-
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextAtOffsetTextInput()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsInTextInput, 0, 0, 0);
-
- /* Get to the inner AtkText object. */
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
- object = atk_object_ref_accessible_child(object, 0);
- g_assert(object);
- object = atk_object_ref_accessible_child(object, 0);
- g_assert(object);
-
- AtkText* textObject = ATK_TEXT(object);
- g_assert(ATK_IS_TEXT(textObject));
-
- runGetTextTests(textObject);
-
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextAtOffsetWithPreformattedText()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsWithPreformattedText, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkObject* preformattedText = atk_object_ref_accessible_child(object, 0);
- g_assert(ATK_IS_OBJECT(preformattedText));
- g_assert(atk_object_get_role(preformattedText) == ATK_ROLE_PANEL);
- g_assert(ATK_IS_TEXT(preformattedText));
- char* text = atk_text_get_text(ATK_TEXT(preformattedText), 0, -1);
- g_assert_cmpstr(text, ==, "\t\n\tfirst line\n\tsecond line\n");
- g_free(text);
-
- /* Try retrieving all the lines indicating the position of the offsets at the beginning of each of them. */
- testGetTextFunction(ATK_TEXT(preformattedText), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 0, "\t\n", 0, 2);
- testGetTextFunction(ATK_TEXT(preformattedText), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 2, "\tfirst line\n", 2, 14);
- testGetTextFunction(ATK_TEXT(preformattedText), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 14, "\tsecond line\n", 14, 27);
-
- g_object_unref(preformattedText);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextAtOffsetWithSpecialCharacters()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsWithSpecialChars, 0, 0, 0);
-
- /* Get to the inner AtkText object. */
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkObject* paragraph = atk_object_ref_accessible_child(object, 0);
- g_assert(ATK_IS_TEXT(paragraph));
-
- gchar* expectedText = g_strdup("\302\253\302\240This is a paragraph with \342\200\234special\342\200\235 characters inside.\302\240\302\273");
- char* text = atk_text_get_text(ATK_TEXT(paragraph), 0, -1);
- g_assert_cmpstr(text, ==, expectedText);
- g_free(text);
-
- /* Check that getting the text with ATK_TEXT_BOUNDARY_LINE_START
- and ATK_TEXT_BOUNDARY_LINE_END does not crash because of not
- properly handling characters inside the UTF-8 string. */
- testGetTextFunction(ATK_TEXT(paragraph), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 0, expectedText, 0, 57);
- testGetTextFunction(ATK_TEXT(paragraph), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END, 0, expectedText, 0, 57);
- g_free(expectedText);
-
- AtkObject* list = atk_object_ref_accessible_child(object, 1);
- g_assert(ATK_OBJECT(list));
-
- AtkText* listItem = ATK_TEXT(atk_object_ref_accessible_child(list, 0));
- g_assert(ATK_IS_TEXT(listItem));
-
- text = atk_text_get_text(ATK_TEXT(listItem), 0, -1);
- g_assert_cmpstr(text, ==, "\342\200\242 List item with some text that wraps across different lines.");
- g_free(text);
-
- /* Check that getting the text with ATK_TEXT_BOUNDARY_LINE_START
- and ATK_TEXT_BOUNDARY_LINE_END for line items with bullets
- (special character) and wrapped text always return the right
- piece of text for each line. */
- testGetTextFunction(ATK_TEXT(listItem), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 3, "\342\200\242 List item ", 0, 12);
- testGetTextFunction(ATK_TEXT(listItem), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 13, "with some ", 12, 22);
- testGetTextFunction(ATK_TEXT(listItem), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END, 0, "\342\200\242 List item", 0, 11);
- testGetTextFunction(ATK_TEXT(listItem), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END, 12, " with some", 11, 21);
-
- g_object_unref(listItem);
-
- listItem = ATK_TEXT(atk_object_ref_accessible_child(list, 1));
- g_assert(ATK_IS_TEXT(listItem));
-
- /* Check that placing the same text in a paragraph doesn't break things. */
- text = atk_text_get_text(ATK_TEXT(listItem), 0, -1);
- g_assert_cmpstr(text, ==, "\342\200\242 List item with some text that wraps across different lines.");
- g_free(text);
-
- testGetTextFunction(ATK_TEXT(listItem), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 3, "\342\200\242 List item ", 0, 12);
- testGetTextFunction(ATK_TEXT(listItem), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 13, "with some ", 12, 22);
- testGetTextFunction(ATK_TEXT(listItem), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END, 0, "\342\200\242 List item", 0, 11);
- testGetTextFunction(ATK_TEXT(listItem), atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END, 12, " with some", 11, 21);
-
- g_object_unref(list);
- g_object_unref(listItem);
- g_object_unref(paragraph);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextAtOffsetWithWrappedLines()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsWithWrappedLines, 0, 0, 0);
-
- /* Enable caret browsing. */
- WebKitWebSettings* settings = webkit_web_view_get_settings(webView);
- g_object_set(settings, "enable-caret-browsing", TRUE, NULL);
- webkit_web_view_set_settings(webView, settings);
-
- /* Get to the inner AtkText object. */
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- /* Check the paragraph with the text wrapped because of max-width. */
- AtkText* paragraph1 = ATK_TEXT(atk_object_ref_accessible_child(object, 0));
- g_assert(ATK_IS_TEXT(paragraph1));
-
- gchar* text = atk_text_get_text(paragraph1, 0, -1);
- g_assert_cmpstr(text, ==, "This is one line wrapped because of the maximum width of its container.");
- g_free(text);
-
- testGetTextFunction(paragraph1, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_CHAR, 16, "e", 15, 16);
- testGetTextFunction(paragraph1, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_CHAR, 16, " ", 16, 17);
- testGetTextFunction(paragraph1, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_CHAR, 16, "w", 17, 18);
-
- testGetTextFunction(paragraph1, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_WORD_START, 16, "one ", 8, 12);
- testGetTextFunction(paragraph1, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_START, 16, "line ", 12, 17);
- testGetTextFunction(paragraph1, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_WORD_START, 16, "wrapped ", 17, 25);
-
- testGetTextFunction(paragraph1, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_WORD_END, 16, " line", 11, 16);
- testGetTextFunction(paragraph1, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_END, 16, " wrapped", 16, 24);
- testGetTextFunction(paragraph1, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_WORD_END, 16, " because", 24, 32);
-
- testGetTextFunction(paragraph1, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_LINE_START, 17, "This is one line ", 0, 17);
- testGetTextFunction(paragraph1, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 17, "wrapped because ", 17, 33);
- testGetTextFunction(paragraph1, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_LINE_START, 17, "of the maximum ", 33, 48);
-
- /* The following line won't work at the moment because of a bug in GailTextUtil.
- see https://bugzilla.gnome.org/show_bug.cgi?id=703554
- testGetTextFunction(paragraph1, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_LINE_END, 17, "This is one line", 0, 16); */
- testGetTextFunction(paragraph1, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END, 17, " wrapped because", 16, 32);
- testGetTextFunction(paragraph1, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_LINE_END, 17, " of the maximum", 32, 47);
-
- g_object_unref(paragraph1);
-
- /* Check the paragraph with the text wrapped because of <br> elements. */
- AtkText* paragraph2 = ATK_TEXT(atk_object_ref_accessible_child(object, 1));
- g_assert(ATK_IS_TEXT(paragraph2));
-
- text = atk_text_get_text(paragraph2, 0, -1);
- g_assert_cmpstr(text, ==, "This is another line wrapped\nbecause of one forced\nline break in the middle.");
- g_free(text);
-
- testGetTextFunction(paragraph2, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_CHAR, 28, "d", 27, 28);
- testGetTextFunction(paragraph2, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_CHAR, 28, "\n", 28, 29);
- testGetTextFunction(paragraph2, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_CHAR, 28, "b", 29, 30);
-
- testGetTextFunction(paragraph2, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_WORD_START, 28, "line ", 16, 21);
- testGetTextFunction(paragraph2, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_START, 28, "wrapped\n", 21, 29);
- testGetTextFunction(paragraph2, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_WORD_START, 28, "because ", 29, 37);
-
- testGetTextFunction(paragraph2, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_WORD_END, 28, " wrapped", 20, 28);
- testGetTextFunction(paragraph2, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_WORD_END, 28, "\nbecause", 28, 36);
- testGetTextFunction(paragraph2, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_WORD_END, 28, " of", 36, 39);
-
- testGetTextFunction(paragraph2, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_LINE_START, 30, "This is another line wrapped\n", 0, 29);
- testGetTextFunction(paragraph2, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 30, "because of one forced\n", 29, 51);
- testGetTextFunction(paragraph2, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_LINE_START, 30, "line break in the middle.", 51, 76);
-
- /* The following line won't work at the moment because of a bug in GailTextUtil.
- see https://bugzilla.gnome.org/show_bug.cgi?id=703554
- testGetTextFunction(paragraph2, atk_text_get_text_before_offset, ATK_TEXT_BOUNDARY_LINE_END, 30, "This is another line wrapped", 0, 28); */
- testGetTextFunction(paragraph2, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END, 30, "\nbecause of one forced", 28, 50);
- testGetTextFunction(paragraph2, atk_text_get_text_after_offset, ATK_TEXT_BOUNDARY_LINE_END, 30, "\nline break in the middle.", 50, 76);
-
- g_object_unref(paragraph2);
-
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextInParagraphAndBodySimple()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsInParagraphAndBodySimple, 0, 0, 0);
-
- /* Get to the inner AtkText object. */
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
- AtkObject* object1 = atk_object_ref_accessible_child(object, 0);
- g_assert(object1);
- AtkObject* object2 = atk_object_ref_accessible_child(object, 1);
- g_assert(object2);
-
- AtkText* textObject1 = ATK_TEXT(object1);
- g_assert(ATK_IS_TEXT(textObject1));
- AtkText* textObject2 = ATK_TEXT(object2);
- g_assert(ATK_IS_TEXT(textObject2));
-
- char *text = atk_text_get_text(textObject1, 0, -1);
- g_assert_cmpstr(text, ==, "This is a test.");
-
- text = atk_text_get_text(textObject2, 0, 12);
- g_assert_cmpstr(text, ==, "Hello world.");
-
- g_object_unref(object1);
- g_object_unref(object2);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextInParagraphAndBodyModerate()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsInParagraphAndBodyModerate, 0, 0, 0);
-
- /* Get to the inner AtkText object. */
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
- AtkObject* object1 = atk_object_ref_accessible_child(object, 0);
- g_assert(object1);
- AtkObject* object2 = atk_object_ref_accessible_child(object, 1);
- g_assert(object2);
-
- AtkText* textObject1 = ATK_TEXT(object1);
- g_assert(ATK_IS_TEXT(textObject1));
- AtkText* textObject2 = ATK_TEXT(object2);
- g_assert(ATK_IS_TEXT(textObject2));
-
- char *text = atk_text_get_text(textObject1, 0, -1);
- g_assert_cmpstr(text, ==, "This is a test.");
-
- text = atk_text_get_text(textObject2, 0, 53);
- g_assert_cmpstr(text, ==, "Hello world.\nThis sentence is green.\nThis one is not.");
-
- g_object_unref(object1);
- g_object_unref(object2);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetTextInTable()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsInTable, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
- object = atk_object_ref_accessible_child(object, 0);
- g_assert(object);
-
- /* Tables should not implement AtkText. */
- g_assert(!G_TYPE_INSTANCE_GET_INTERFACE(object, ATK_TYPE_TEXT, AtkTextIface));
-
- g_object_unref(object);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetHeadersInTable()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contentsInTableWithHeaders, 0, 0, 0);
-
- AtkObject* axWebView = getWebAreaObject(webView);
- g_assert(axWebView);
-
- /* Check table with both column and row headers. */
- AtkObject* table = atk_object_ref_accessible_child(axWebView, 0);
- g_assert(table);
- g_assert(atk_object_get_role(table) == ATK_ROLE_TABLE);
-
- AtkObject* colHeader = atk_table_get_column_header(ATK_TABLE(table), 0);
- g_assert(colHeader);
- g_assert(atk_object_get_role(colHeader) == ATK_ROLE_TABLE_CELL);
- g_assert(atk_object_get_index_in_parent(colHeader) == 0);
-
- colHeader = atk_table_get_column_header(ATK_TABLE(table), 1);
- g_assert(colHeader);
- g_assert(atk_object_get_role(colHeader) == ATK_ROLE_TABLE_CELL);
- g_assert(atk_object_get_index_in_parent(colHeader) == 1);
-
- colHeader = atk_table_get_column_header(ATK_TABLE(table), 2);
- g_assert(colHeader);
- g_assert(atk_object_get_role(colHeader) == ATK_ROLE_TABLE_CELL);
- g_assert(atk_object_get_index_in_parent(colHeader) == 2);
-
- colHeader = atk_table_get_column_header(ATK_TABLE(table), 3);
- g_assert(colHeader);
- g_assert(atk_object_get_role(colHeader) == ATK_ROLE_TABLE_CELL);
- g_assert(atk_object_get_index_in_parent(colHeader) == 2);
-
- AtkObject* rowHeader = atk_table_get_row_header(ATK_TABLE(table), 0);
- g_assert(rowHeader);
- g_assert(atk_object_get_role(rowHeader) == ATK_ROLE_TABLE_CELL);
- g_assert(atk_object_get_index_in_parent(rowHeader) == 0);
-
- rowHeader = atk_table_get_row_header(ATK_TABLE(table), 1);
- g_assert(rowHeader);
- g_assert(atk_object_get_role(rowHeader) == ATK_ROLE_TABLE_CELL);
- g_assert(atk_object_get_index_in_parent(rowHeader) == 3);
-
- rowHeader = atk_table_get_row_header(ATK_TABLE(table), 2);
- g_assert(rowHeader);
- g_assert(atk_object_get_role(rowHeader) == ATK_ROLE_TABLE_CELL);
- g_assert(atk_object_get_index_in_parent(rowHeader) == 7);
-
- rowHeader = atk_table_get_row_header(ATK_TABLE(table), 3);
- g_assert(rowHeader);
- g_assert(atk_object_get_role(rowHeader) == ATK_ROLE_TABLE_CELL);
- g_assert(atk_object_get_index_in_parent(rowHeader) == 7);
-
- g_object_unref(table);
-
- /* Check table with no headers at all. */
- table = atk_object_ref_accessible_child(axWebView, 1);
- g_assert(table);
- g_assert(atk_object_get_role(table) == ATK_ROLE_TABLE);
-
- colHeader = atk_table_get_column_header(ATK_TABLE(table), 0);
- g_assert(colHeader == 0);
-
- colHeader = atk_table_get_column_header(ATK_TABLE(table), 1);
- g_assert(colHeader == 0);
-
- rowHeader = atk_table_get_row_header(ATK_TABLE(table), 0);
- g_assert(rowHeader == 0);
-
- rowHeader = atk_table_get_row_header(ATK_TABLE(table), 1);
- g_assert(rowHeader == 0);
-
- g_object_unref(table);
- g_object_unref(webView);
-}
-
-static gint compAtkAttribute(AtkAttribute* a1, AtkAttribute* a2)
-{
- gint strcmpVal = g_strcmp0(a1->name, a2->name);
- if (strcmpVal)
- return strcmpVal;
- return g_strcmp0(a1->value, a2->value);
-}
-
-static gint compAtkAttributeName(AtkAttribute* a1, AtkAttribute* a2)
-{
- return g_strcmp0(a1->name, a2->name);
-}
-
-static gboolean atkAttributeSetAttributeNameHasValue(AtkAttributeSet* set, const gchar* attributeName, const gchar* value)
-{
- AtkAttribute at;
- at.name = (gchar*)attributeName;
- GSList* element = g_slist_find_custom(set, &at, (GCompareFunc)compAtkAttributeName);
- return element && !g_strcmp0(((AtkAttribute*)(element->data))->value, value);
-}
-
-static gboolean atkAttributeSetContainsAttributeName(AtkAttributeSet* set, const gchar* attributeName)
-{
- AtkAttribute at;
- at.name = (gchar*)attributeName;
- return g_slist_find_custom(set, &at, (GCompareFunc)compAtkAttributeName) ? true : false;
-}
-
-static gboolean atkAttributeSetAttributeHasValue(AtkAttributeSet* set, AtkTextAttribute attribute, const gchar* value)
-{
- return atkAttributeSetAttributeNameHasValue(set, atk_text_attribute_get_name(attribute), value);
-}
-
-static gboolean atkAttributeSetAreEqual(AtkAttributeSet* set1, AtkAttributeSet* set2)
-{
- if (!set1)
- return !set2;
-
- set1 = g_slist_sort(set1, (GCompareFunc)compAtkAttribute);
- set2 = g_slist_sort(set2, (GCompareFunc)compAtkAttribute);
-
- while (set1) {
- if (!set2 || compAtkAttribute(set1->data, set2->data))
- return FALSE;
-
- set1 = set1->next;
- set2 = set2->next;
- }
-
- return (!set2);
-}
-
-static void testWebkitAtkTextAttributes()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, textWithAttributes, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkObject* child = atk_object_ref_accessible_child(object, 0);
- g_assert(child && ATK_IS_TEXT(child));
- AtkText* childText = ATK_TEXT(child);
-
- gint startOffset;
- gint endOffset;
- AtkAttributeSet* set1 = atk_text_get_run_attributes(childText, 0, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 0);
- g_assert_cmpint(endOffset, ==, 12);
- g_assert(atkAttributeSetAreEqual(set1, 0));
-
- AtkAttributeSet* set2 = atk_text_get_run_attributes(childText, 15, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 12);
- g_assert_cmpint(endOffset, ==, 17);
- g_assert(atkAttributeSetAttributeHasValue(set2, ATK_TEXT_ATTR_STYLE, "italic"));
-
- AtkAttributeSet* set3 = atk_text_get_run_attributes(childText, 17, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 17);
- g_assert_cmpint(endOffset, ==, 40);
- g_assert(atkAttributeSetAttributeHasValue(set3, ATK_TEXT_ATTR_WEIGHT, "700"));
-
- AtkAttributeSet* set4 = atk_text_get_default_attributes(childText);
- g_assert(atkAttributeSetAttributeHasValue(set4, ATK_TEXT_ATTR_STYLE, "normal"));
- g_assert(atkAttributeSetAttributeHasValue(set4, ATK_TEXT_ATTR_JUSTIFICATION, "right"));
- g_assert(atkAttributeSetAttributeHasValue(set4, ATK_TEXT_ATTR_SIZE, "14"));
- atk_attribute_set_free(set1);
- atk_attribute_set_free(set2);
- atk_attribute_set_free(set3);
- atk_attribute_set_free(set4);
-
- child = atk_object_ref_accessible_child(object, 1);
- g_assert(child && ATK_IS_TEXT(child));
- childText = ATK_TEXT(child);
-
- set1 = atk_text_get_default_attributes(childText);
- g_assert(atkAttributeSetAttributeHasValue(set1, ATK_TEXT_ATTR_FAMILY_NAME, "monospace"));
- g_assert(atkAttributeSetAttributeHasValue(set1, ATK_TEXT_ATTR_STYLE, "normal"));
- g_assert(atkAttributeSetAttributeHasValue(set1, ATK_TEXT_ATTR_STRIKETHROUGH, "false"));
- g_assert(atkAttributeSetAttributeHasValue(set1, ATK_TEXT_ATTR_WEIGHT, "400"));
- g_assert(atkAttributeSetAttributeHasValue(set1, ATK_TEXT_ATTR_FG_COLOR, "120,121,122"));
-
- set2 = atk_text_get_run_attributes(childText, 43, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 43);
- g_assert_cmpint(endOffset, ==, 80);
- /* Checks that default attributes of text are not returned when called to atk_text_get_run_attributes. */
- g_assert(!atkAttributeSetAttributeHasValue(set2, ATK_TEXT_ATTR_FG_COLOR, "120,121,122"));
- g_assert(atkAttributeSetAttributeHasValue(set2, ATK_TEXT_ATTR_UNDERLINE, "single"));
- g_assert(atkAttributeSetAttributeHasValue(set2, ATK_TEXT_ATTR_BG_COLOR, "80,81,82"));
- atk_attribute_set_free(set1);
- atk_attribute_set_free(set2);
-
- child = atk_object_ref_accessible_child(object, 2);
- g_assert(child && ATK_IS_TEXT(child));
- childText = ATK_TEXT(child);
-
- set1 = atk_text_get_run_attributes(childText, 0, &startOffset, &endOffset);
- set2 = atk_text_get_run_attributes(childText, 3, &startOffset, &endOffset);
- g_assert(atkAttributeSetAreEqual(set1, set2));
- atk_attribute_set_free(set2);
-
- set2 = atk_text_get_run_attributes(childText, 1, &startOffset, &endOffset);
- set3 = atk_text_get_run_attributes(childText, 5, &startOffset, &endOffset);
- g_assert(atkAttributeSetAreEqual(set2, set3));
- g_assert(!atkAttributeSetAreEqual(set1, set2));
- atk_attribute_set_free(set3);
-
- set3 = atk_text_get_run_attributes(childText, 2, &startOffset, &endOffset);
- set4 = atk_text_get_run_attributes(childText, 6, &startOffset, &endOffset);
- g_assert(atkAttributeSetAreEqual(set3, set4));
- g_assert(!atkAttributeSetAreEqual(set1, set3));
- g_assert(!atkAttributeSetAreEqual(set2, set3));
- atk_attribute_set_free(set1);
- atk_attribute_set_free(set2);
- atk_attribute_set_free(set3);
- atk_attribute_set_free(set4);
-
- child = atk_object_ref_accessible_child(object, 3);
- g_assert(child && ATK_IS_TEXT(child));
- childText = ATK_TEXT(child);
- set1 = atk_text_get_run_attributes(childText, 24, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 21);
- g_assert_cmpint(endOffset, ==, 25);
- g_assert(atkAttributeSetAttributeHasValue(set1, ATK_TEXT_ATTR_STRIKETHROUGH, "true"));
-
- set2 = atk_text_get_run_attributes(childText, 25, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 25);
- g_assert_cmpint(endOffset, ==, 30);
- g_assert(atkAttributeSetAreEqual(set2, 0));
-
- set3 = atk_text_get_default_attributes(childText);
- g_assert(atkAttributeSetAttributeHasValue(set3, ATK_TEXT_ATTR_JUSTIFICATION, "center"));
- atk_attribute_set_free(set1);
- atk_attribute_set_free(set2);
- atk_attribute_set_free(set3);
-}
-
-static gchar* textSelectionChangedResult = 0;
-
-static void textSelectionChangedCallback(AtkText* text, gpointer data)
-{
- g_assert(ATK_IS_TEXT(text));
-
- g_free(textSelectionChangedResult);
- AtkRole role = atk_object_get_role(ATK_OBJECT(text));
- int startOffset = 0;
- int endOffset = 0;
- atk_text_get_selection(ATK_TEXT(text), 0, &startOffset, &endOffset);
- textSelectionChangedResult = g_strdup_printf("|%s|%d|%d|", atk_role_get_name(role), startOffset, endOffset);
-}
-
-static void testWebkitAtkTextSelections()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, textForSelections, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkText* paragraph1 = ATK_TEXT(atk_object_ref_accessible_child(object, 0));
- g_assert(ATK_IS_TEXT(paragraph1));
- g_signal_connect(paragraph1, "text-selection-changed", G_CALLBACK(textSelectionChangedCallback), 0);
-
- AtkText* paragraph2 = ATK_TEXT(atk_object_ref_accessible_child(object, 1));
- g_assert(ATK_IS_TEXT(paragraph2));
- g_signal_connect(paragraph2, "text-selection-changed", G_CALLBACK(textSelectionChangedCallback), 0);
-
- AtkText* link = ATK_TEXT(atk_object_ref_accessible_child(ATK_OBJECT(paragraph2), 0));
- g_assert(ATK_IS_TEXT(link));
-
- AtkObject* list = atk_object_ref_accessible_child(object, 2);
- g_assert(ATK_OBJECT(list));
-
- AtkText* listItem = ATK_TEXT(atk_object_ref_accessible_child(list, 0));
- g_assert(ATK_IS_TEXT(listItem));
-
- /* First paragraph (simple text). */
-
- /* Basic initial checks. */
- g_assert_cmpint(atk_text_get_n_selections(paragraph1), ==, 0);
-
- gint startOffset;
- gint endOffset;
- gchar* selectedText = atk_text_get_selection(paragraph1, 0, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 0);
- g_assert_cmpint(endOffset, ==, 0);
- g_assert_cmpstr(selectedText, ==, 0);
- g_free (selectedText);
-
- /* Try removing a non existing (yet) selection. */
- gboolean result = atk_text_remove_selection(paragraph1, 0);
- g_assert(!result);
-
- /* Try setting a 0-char selection. */
- result = atk_text_set_selection(paragraph1, 0, 5, 5);
- g_assert(result);
-
- /* Make a selection and test it. */
- result = atk_text_set_selection(paragraph1, 0, 5, 25);
- g_assert(result);
- g_assert_cmpint(atk_text_get_n_selections(paragraph1), ==, 1);
- g_assert_cmpstr(textSelectionChangedResult, ==, "|paragraph|5|25|");
- selectedText = atk_text_get_selection(paragraph1, 0, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 5);
- g_assert_cmpint(endOffset, ==, 25);
- g_assert_cmpstr(selectedText, ==, "agraph with plain te");
- g_free (selectedText);
-
- /* Try removing the selection from other AtkText object (should fail). */
- result = atk_text_remove_selection(paragraph2, 0);
- g_assert(!result);
-
- /* Remove the selection and test everything again. */
- result = atk_text_remove_selection(paragraph1, 0);
- g_assert(result);
- g_assert_cmpint(atk_text_get_n_selections(paragraph1), ==, 0);
- selectedText = atk_text_get_selection(paragraph1, 0, &startOffset, &endOffset);
- /* Now offsets should be the same, set to the last position of the caret. */
- g_assert_cmpint(startOffset, ==, endOffset);
- g_assert_cmpint(startOffset, ==, 25);
- g_assert_cmpint(endOffset, ==, 25);
- g_assert_cmpstr(selectedText, ==, 0);
- g_free (selectedText);
-
- /* Second paragraph (text + link + text). */
-
- /* Set a selection partially covering the link and test it. */
- result = atk_text_set_selection(paragraph2, 0, 7, 21);
- g_assert(result);
-
- /* Test the paragraph first. */
- g_assert_cmpint(atk_text_get_n_selections(paragraph2), ==, 1);
- selectedText = atk_text_get_selection(paragraph2, 0, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 7);
- g_assert_cmpint(endOffset, ==, 21);
- g_assert_cmpstr(selectedText, ==, "raph with a li");
- g_free (selectedText);
-
- /* Now test just the link. */
- g_assert_cmpint(atk_text_get_n_selections(link), ==, 1);
- selectedText = atk_text_get_selection(link, 0, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 0);
- g_assert_cmpint(endOffset, ==, 4);
- g_assert_cmpstr(selectedText, ==, "a li");
- g_free (selectedText);
-
- /* Make a selection after the link and check selection for the whole paragraph. */
- result = atk_text_set_selection(paragraph2, 0, 27, 37);
- g_assert(result);
- g_assert_cmpint(atk_text_get_n_selections(paragraph2), ==, 1);
- g_assert_cmpstr(textSelectionChangedResult, ==, "|paragraph|27|37|");
- selectedText = atk_text_get_selection(paragraph2, 0, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 27);
- g_assert_cmpint(endOffset, ==, 37);
- g_assert_cmpstr(selectedText, ==, "the middle");
- g_free (selectedText);
-
- /* Remove selections and text everything again. */
- result = atk_text_remove_selection(paragraph2, 0);
- g_assert(result);
- g_assert_cmpint(atk_text_get_n_selections(paragraph2), ==, 0);
- selectedText = atk_text_get_selection(paragraph2, 0, &startOffset, &endOffset);
- /* Now offsets should be the same (no selection). */
- g_assert_cmpint(startOffset, ==, endOffset);
- g_assert_cmpstr(selectedText, ==, 0);
- g_free (selectedText);
-
- g_assert_cmpint(atk_text_get_n_selections(link), ==, 0);
- selectedText = atk_text_get_selection(link, 0, &startOffset, &endOffset);
- /* Now offsets should be the same (no selection). */
- g_assert_cmpint(startOffset, ==, endOffset);
- g_assert_cmpstr(selectedText, ==, 0);
- g_free (selectedText);
-
- /* List item */
-
- g_assert(atk_object_get_role(list) == ATK_ROLE_LIST);
- g_assert_cmpint(atk_object_get_n_accessible_children(list), ==, 1);
-
- gchar* text = atk_text_get_text(listItem, 0, -1);
- g_assert_cmpstr(text, ==, "1. A list item");
- g_free (text);
-
- /* It's not possible to select text inside an item's marker. */
- result = atk_text_set_selection (listItem, 0, 0, 9);
- g_assert(!result);
- result = atk_text_set_selection (listItem, 0, 9, 1);
- g_assert(!result);
-
- /* It should be possible to select text inside an item's text. */
- result = atk_text_set_selection (listItem, 0, 3, 9);
- g_assert(result);
-
- g_assert_cmpint(atk_text_get_n_selections(listItem), ==, 1);
- selectedText = atk_text_get_selection(listItem, 0, &startOffset, &endOffset);
- g_assert_cmpint(startOffset, ==, 3);
- g_assert_cmpint(endOffset, ==, 9);
- g_assert_cmpstr(selectedText, ==, "A list");
- g_free (selectedText);
-
- g_free(textSelectionChangedResult);
-
- g_object_unref(paragraph1);
- g_object_unref(paragraph2);
- g_object_unref(list);
- g_object_unref(listItem);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkGetExtents()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, centeredContents, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkText* shortText1 = ATK_TEXT(atk_object_ref_accessible_child(object, 0));
- g_assert(ATK_IS_TEXT(shortText1));
- AtkText* longText = ATK_TEXT(atk_object_ref_accessible_child(object, 1));
- g_assert(ATK_IS_TEXT(longText));
- AtkText* shortText2 = ATK_TEXT(atk_object_ref_accessible_child(object, 2));
- g_assert(ATK_IS_TEXT(shortText2));
- AtkText* multilineText = ATK_TEXT(atk_object_ref_accessible_child(object, 3));
- g_assert(ATK_IS_TEXT(multilineText));
-
- /* Start with window extents. */
- AtkTextRectangle sline_window1, sline_window2, lline_window, mline_window;
- atk_text_get_range_extents(shortText1, 0, 10, ATK_XY_WINDOW, &sline_window1);
- atk_text_get_range_extents(longText, 0, 44, ATK_XY_WINDOW, &lline_window);
- atk_text_get_range_extents(shortText2, 0, 10, ATK_XY_WINDOW, &sline_window2);
- atk_text_get_range_extents(multilineText, 0, 60, ATK_XY_WINDOW, &mline_window);
-
- /* Check vertical line position. */
- g_assert_cmpint(sline_window1.y + sline_window1.height, <=, lline_window.y);
- g_assert_cmpint(lline_window.y + lline_window.height + sline_window2.height, <=, mline_window.y);
-
- /* Paragraphs 1 and 3 have identical text and alignment. */
- g_assert_cmpint(sline_window1.x, ==, sline_window2.x);
- g_assert_cmpint(sline_window1.width, ==, sline_window2.width);
- g_assert_cmpint(sline_window1.height, ==, sline_window2.height);
-
- /* All lines should be the same height; line 2 is the widest line. */
- g_assert_cmpint(sline_window1.height, ==, lline_window.height);
- g_assert_cmpint(sline_window1.width, <, lline_window.width);
-
- /* Make sure the character extents jive with the range extents. */
- gint x;
- gint y;
- gint width;
- gint height;
-
- /* First paragraph (short text). */
- atk_text_get_character_extents(shortText1, 0, &x, &y, &width, &height, ATK_XY_WINDOW);
- g_assert_cmpint(x, ==, sline_window1.x);
- g_assert_cmpint(y, ==, sline_window1.y);
- g_assert_cmpint(height, ==, sline_window1.height);
-
- atk_text_get_character_extents(shortText1, 9, &x, &y, &width, &height, ATK_XY_WINDOW);
- g_assert_cmpint(x, ==, sline_window1.x + sline_window1.width - width);
- g_assert_cmpint(y, ==, sline_window1.y);
- g_assert_cmpint(height, ==, sline_window1.height);
-
- /* Second paragraph (long text). */
- atk_text_get_character_extents(longText, 0, &x, &y, &width, &height, ATK_XY_WINDOW);
- g_assert_cmpint(x, ==, lline_window.x);
- g_assert_cmpint(y, ==, lline_window.y);
- g_assert_cmpint(height, ==, lline_window.height);
-
- atk_text_get_character_extents(longText, 43, &x, &y, &width, &height, ATK_XY_WINDOW);
- g_assert_cmpint(x, ==, lline_window.x + lline_window.width - width);
- g_assert_cmpint(y, ==, lline_window.y);
- g_assert_cmpint(height, ==, lline_window.height);
-
- /* Third paragraph (short text). */
- atk_text_get_character_extents(shortText2, 0, &x, &y, &width, &height, ATK_XY_WINDOW);
- g_assert_cmpint(x, ==, sline_window2.x);
- g_assert_cmpint(y, ==, sline_window2.y);
- g_assert_cmpint(height, ==, sline_window2.height);
-
- atk_text_get_character_extents(shortText2, 9, &x, &y, &width, &height, ATK_XY_WINDOW);
- g_assert_cmpint(x, ==, sline_window2.x + sline_window2.width - width);
- g_assert_cmpint(y, ==, sline_window2.y);
- g_assert_cmpint(height, ==, sline_window2.height);
-
- /* Four paragraph (3 lines multi-line text). */
- atk_text_get_character_extents(multilineText, 0, &x, &y, &width, &height, ATK_XY_WINDOW);
- g_assert_cmpint(x, ==, mline_window.x);
- g_assert_cmpint(y, ==, mline_window.y);
- g_assert_cmpint(3 * height, ==, mline_window.height);
-
- atk_text_get_character_extents(multilineText, 59, &x, &y, &width, &height, ATK_XY_WINDOW);
- /* Last line won't fill the whole width of the rectangle. */
- g_assert_cmpint(x, <=, mline_window.x + mline_window.width - width);
- g_assert_cmpint(y, ==, mline_window.y + mline_window.height - height);
- g_assert_cmpint(height, <=, mline_window.height);
-
- /* Check that extent for a full line are the same height than for
- a partial section of the same line */
- gint startOffset;
- gint endOffset;
- gchar* text = atk_text_get_text_at_offset(multilineText, 0, ATK_TEXT_BOUNDARY_LINE_START, &startOffset, &endOffset);
- g_free(text);
-
- AtkTextRectangle fline_window;
- AtkTextRectangle afline_window;
- atk_text_get_range_extents(multilineText, startOffset, endOffset, ATK_XY_WINDOW, &fline_window);
- atk_text_get_range_extents(multilineText, startOffset, endOffset - 1, ATK_XY_WINDOW, &afline_window);
- g_assert_cmpint(fline_window.x, ==, afline_window.x);
- g_assert_cmpint(fline_window.y, ==, afline_window.y);
- g_assert_cmpint(fline_window.height, ==, afline_window.height);
-
- g_object_unref(shortText1);
- g_object_unref(shortText2);
- g_object_unref(longText);
- g_object_unref(multilineText);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkLayoutAndDataTables()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, layoutAndDataTables, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- /* Check the non-layout table (data table). */
-
- AtkObject* table1 = atk_object_ref_accessible_child(object, 0);
- g_assert(ATK_IS_TABLE(table1));
- AtkAttributeSet* set1 = atk_object_get_attributes(table1);
- g_assert(set1);
- g_assert(!atkAttributeSetContainsAttributeName(set1, "layout-guess"));
- atk_attribute_set_free(set1);
-
- /* Check the layout table. */
-
- AtkObject* table2 = atk_object_ref_accessible_child(object, 1);
- g_assert(ATK_IS_TABLE(table2));
- AtkAttributeSet* set2 = atk_object_get_attributes(table2);
- g_assert(set2);
- g_assert(atkAttributeSetContainsAttributeName(set2, "layout-guess"));
- g_assert(atkAttributeSetAttributeNameHasValue(set2, "layout-guess", "true"));
- atk_attribute_set_free(set2);
-
- g_object_unref(table1);
- g_object_unref(table2);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkLinksWithInlineImages()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, linksWithInlineImages, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- /* First paragraph (link at the beginning). */
- AtkObject* paragraph = atk_object_ref_accessible_child(object, 0);
- g_assert(ATK_IS_TEXT(paragraph));
- gint startOffset;
- gint endOffset;
- gchar* text = atk_text_get_text_at_offset(ATK_TEXT(paragraph), 0, ATK_TEXT_BOUNDARY_LINE_START, &startOffset, &endOffset);
- g_assert(text);
- g_assert_cmpstr(text, ==, "foo bar baz");
- g_assert_cmpint(startOffset, ==, 0);
- g_assert_cmpint(endOffset, ==, 11);
- g_free(text);
- g_object_unref(paragraph);
-
- /* Second paragraph (link in the middle). */
- paragraph = atk_object_ref_accessible_child(object, 1);
- g_assert(ATK_IS_TEXT(paragraph));
- text = atk_text_get_text_at_offset(ATK_TEXT(paragraph), 0, ATK_TEXT_BOUNDARY_LINE_START, &startOffset, &endOffset);
- g_assert(text);
- g_assert_cmpstr(text, ==, "foo bar baz");
- g_assert_cmpint(startOffset, ==, 0);
- g_assert_cmpint(endOffset, ==, 11);
- g_free(text);
- g_object_unref(paragraph);
-
- /* Third paragraph (link at the end). */
- paragraph = atk_object_ref_accessible_child(object, 2);
- g_assert(ATK_IS_TEXT(paragraph));
- text = atk_text_get_text_at_offset(ATK_TEXT(paragraph), 0, ATK_TEXT_BOUNDARY_LINE_START, &startOffset, &endOffset);
- g_assert(text);
- g_assert_cmpstr(text, ==, "foo bar baz");
- g_assert_cmpint(startOffset, ==, 0);
- g_assert_cmpint(endOffset, ==, 11);
- g_free(text);
- g_object_unref(paragraph);
-
- g_object_unref(webView);
-}
-
-static void testWebkitAtkHypertextAndHyperlinks()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, hypertextAndHyperlinks, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkObject* paragraph1 = atk_object_ref_accessible_child(object, 0);
- g_assert(ATK_OBJECT(paragraph1));
- g_assert(atk_object_get_role(paragraph1) == ATK_ROLE_PARAGRAPH);
- g_assert(ATK_IS_HYPERTEXT(paragraph1));
-
- /* No links in the first paragraph. */
- gint nLinks = atk_hypertext_get_n_links(ATK_HYPERTEXT(paragraph1));
- g_assert_cmpint(nLinks, ==, 0);
-
- AtkObject* paragraph2 = atk_object_ref_accessible_child(object, 1);
- g_assert(ATK_OBJECT(paragraph2));
- g_assert(atk_object_get_role(paragraph2) == ATK_ROLE_PARAGRAPH);
- g_assert(ATK_IS_HYPERTEXT(paragraph2));
-
- /* Check links in the second paragraph.
- nLinks = atk_hypertext_get_n_links(ATK_HYPERTEXT(paragraph2));
- g_assert_cmpint(nLinks, ==, 3); */
-
- AtkHyperlink* hLink1 = atk_hypertext_get_link(ATK_HYPERTEXT(paragraph2), 0);
- g_assert(ATK_HYPERLINK(hLink1));
- AtkObject* hLinkObject1 = atk_hyperlink_get_object(hLink1, 0);
- g_assert(ATK_OBJECT(hLinkObject1));
- g_assert(atk_object_get_role(hLinkObject1) == ATK_ROLE_LINK);
- g_assert_cmpint(atk_hyperlink_get_start_index(hLink1), ==, 0);
- g_assert_cmpint(atk_hyperlink_get_end_index(hLink1), ==, 6);
- g_assert_cmpint(atk_hyperlink_get_n_anchors(hLink1), ==, 1);
- g_assert_cmpstr(atk_hyperlink_get_uri(hLink1, 0), ==, "http://foo.bar.baz/");
-
- AtkHyperlink* hLink2 = atk_hypertext_get_link(ATK_HYPERTEXT(paragraph2), 1);
- g_assert(ATK_HYPERLINK(hLink2));
- AtkObject* hLinkObject2 = atk_hyperlink_get_object(hLink2, 0);
- g_assert(ATK_OBJECT(hLinkObject2));
- g_assert(atk_object_get_role(hLinkObject2) == ATK_ROLE_LINK);
- g_assert_cmpint(atk_hyperlink_get_start_index(hLink2), ==, 12);
- g_assert_cmpint(atk_hyperlink_get_end_index(hLink2), ==, 32);
- g_assert_cmpint(atk_hyperlink_get_n_anchors(hLink2), ==, 1);
- g_assert_cmpstr(atk_hyperlink_get_uri(hLink2, 0), ==, "http://bar.baz.foo/");
-
- AtkHyperlink* hLink3 = atk_hypertext_get_link(ATK_HYPERTEXT(paragraph2), 2);
- g_assert(ATK_HYPERLINK(hLink3));
- AtkObject* hLinkObject3 = atk_hyperlink_get_object(hLink3, 0);
- g_assert(ATK_OBJECT(hLinkObject3));
- g_assert(atk_object_get_role(hLinkObject3) == ATK_ROLE_LINK);
- g_assert_cmpint(atk_hyperlink_get_start_index(hLink3), ==, 65);
- g_assert_cmpint(atk_hyperlink_get_end_index(hLink3), ==, 75);
- g_assert_cmpint(atk_hyperlink_get_n_anchors(hLink3), ==, 1);
- g_assert_cmpstr(atk_hyperlink_get_uri(hLink3, 0), ==, "http://baz.foo.bar/");
-
- AtkObject* list = atk_object_ref_accessible_child(object, 2);
- g_assert(ATK_OBJECT(list));
- g_assert(atk_object_get_role(list) == ATK_ROLE_LIST);
- g_assert_cmpint(atk_object_get_n_accessible_children(list), ==, 1);
-
- AtkObject* listItem = atk_object_ref_accessible_child(list, 0);
- g_assert(ATK_IS_TEXT(listItem));
- g_assert(ATK_IS_HYPERTEXT(listItem));
-
- AtkHyperlink* hLinkInListItem = atk_hypertext_get_link(ATK_HYPERTEXT(listItem), 0);
- g_assert(ATK_HYPERLINK(hLinkInListItem));
- AtkObject* hLinkObject = atk_hyperlink_get_object(hLinkInListItem, 0);
- g_assert(ATK_OBJECT(hLinkObject));
- g_assert(atk_object_get_role(hLinkObject) == ATK_ROLE_LINK);
- g_assert_cmpint(atk_hyperlink_get_start_index(hLinkInListItem), ==, 20);
- g_assert_cmpint(atk_hyperlink_get_end_index(hLinkInListItem), ==, 43);
- g_assert_cmpint(atk_hyperlink_get_n_anchors(hLinkInListItem), ==, 1);
- g_assert_cmpstr(atk_hyperlink_get_uri(hLinkInListItem, 0), ==, "http://foo.bar.baz/");
-
- /* Finally check the AtkAction interface for a given AtkHyperlink. */
- g_assert(ATK_IS_ACTION(hLink1));
- g_assert_cmpint(atk_action_get_n_actions(ATK_ACTION(hLink1)), ==, 1);
- g_assert_cmpstr(atk_action_get_keybinding(ATK_ACTION(hLink1), 0), ==, "");
- g_assert_cmpstr(atk_action_get_name(ATK_ACTION(hLink1), 0), ==, "jump");
- g_assert(atk_action_do_action(ATK_ACTION(hLink1), 0));
-
- g_object_unref(paragraph1);
- g_object_unref(paragraph2);
- g_object_unref(list);
- g_object_unref(listItem);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkListsOfItems()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, listsOfItems, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- /* Unordered list. */
-
- AtkObject* uList = atk_object_ref_accessible_child(object, 0);
- g_assert(ATK_OBJECT(uList));
- g_assert(atk_object_get_role(uList) == ATK_ROLE_LIST);
- g_assert_cmpint(atk_object_get_n_accessible_children(uList), ==, 3);
-
- AtkObject* item1 = atk_object_ref_accessible_child(uList, 0);
- g_assert(ATK_IS_TEXT(item1));
- AtkObject* item2 = atk_object_ref_accessible_child(uList, 1);
- g_assert(ATK_IS_TEXT(item2));
- AtkObject* item3 = atk_object_ref_accessible_child(uList, 2);
- g_assert(ATK_IS_TEXT(item3));
-
- g_assert_cmpint(atk_object_get_n_accessible_children(item1), ==, 0);
- g_assert_cmpint(atk_object_get_n_accessible_children(item2), ==, 1);
- g_assert_cmpint(atk_object_get_n_accessible_children(item3), ==, 1);
-
- g_assert_cmpstr(atk_text_get_text(ATK_TEXT(item1), 0, -1), ==, "\342\200\242 text only");
- g_assert_cmpstr(atk_text_get_text(ATK_TEXT(item2), 0, -1), ==, "\342\200\242 link only");
- g_assert_cmpstr(atk_text_get_text(ATK_TEXT(item3), 0, -1), ==, "\342\200\242 text and a link");
-
- g_object_unref(item1);
- g_object_unref(item2);
- g_object_unref(item3);
-
- /* Ordered list. */
-
- AtkObject* oList = atk_object_ref_accessible_child(object, 1);
- g_assert(ATK_OBJECT(oList));
- g_assert(atk_object_get_role(oList) == ATK_ROLE_LIST);
- g_assert_cmpint(atk_object_get_n_accessible_children(oList), ==, 3);
-
- item1 = atk_object_ref_accessible_child(oList, 0);
- g_assert(ATK_IS_TEXT(item1));
- item2 = atk_object_ref_accessible_child(oList, 1);
- g_assert(ATK_IS_TEXT(item2));
- item3 = atk_object_ref_accessible_child(oList, 2);
- g_assert(ATK_IS_TEXT(item3));
-
- g_assert_cmpstr(atk_text_get_text(ATK_TEXT(item1), 0, -1), ==, "1. text only");
- g_assert_cmpstr(atk_text_get_text(ATK_TEXT(item2), 0, -1), ==, "2. link only");
- g_assert_cmpstr(atk_text_get_text(ATK_TEXT(item3), 0, -1), ==, "3. text and a link");
-
- g_assert_cmpint(atk_object_get_n_accessible_children(item1), ==, 0);
- g_assert_cmpint(atk_object_get_n_accessible_children(item2), ==, 1);
- g_assert_cmpint(atk_object_get_n_accessible_children(item3), ==, 1);
-
- g_object_unref(item1);
- g_object_unref(item2);
- g_object_unref(item3);
-
- g_object_unref(uList);
- g_object_unref(oList);
- g_object_unref(webView);
-}
-
-typedef enum {
- TEXT_CHANGE_INSERT = 1,
- TEXT_CHANGE_REMOVE = 2
-} TextChangeType;
-
-static gchar* textChangedResult = 0;
-
-static void textChangedCb(AtkText* text, gint pos, gint len, gchar* modifiedText, gpointer data)
-{
- g_assert(text && ATK_IS_OBJECT(text));
-
- TextChangeType type = GPOINTER_TO_INT(data);
- g_free(textChangedResult);
- textChangedResult = g_strdup_printf("|%d|%d|%d|'%s'|", type, pos, len, modifiedText);
-}
-
-static void testWebkitAtkTextChangedNotifications()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, formWithTextInputs, 0, 0, 0);
-
- AtkObject* object = getWebAreaObject(webView);
- g_assert(object);
-
- AtkObject* form = atk_object_ref_accessible_child(object, 0);
- g_assert(ATK_IS_OBJECT(form));
-
- /* First check normal text entries. */
- AtkObject* textEntry = atk_object_ref_accessible_child(form, 0);
- g_assert(ATK_IS_EDITABLE_TEXT(textEntry));
- g_assert(atk_object_get_role(ATK_OBJECT(textEntry)) == ATK_ROLE_ENTRY);
-
- g_signal_connect(textEntry, "text-insert",
- G_CALLBACK(textChangedCb),
- GINT_TO_POINTER(TEXT_CHANGE_INSERT));
- g_signal_connect(textEntry, "text-remove",
- G_CALLBACK(textChangedCb),
- GINT_TO_POINTER(TEXT_CHANGE_REMOVE));
-
- gint pos = 0;
- atk_editable_text_insert_text(ATK_EDITABLE_TEXT(textEntry), "foo bar baz", 11, &pos);
- char* text = atk_text_get_text(ATK_TEXT(textEntry), 0, -1);
- g_assert_cmpstr(text, ==, "foo bar baz");
- g_assert_cmpstr(textChangedResult, ==, "|1|0|11|'foo bar baz'|");
- g_free(text);
-
- atk_editable_text_delete_text(ATK_EDITABLE_TEXT(textEntry), 4, 7);
- text = atk_text_get_text(ATK_TEXT(textEntry), 0, -1);
- g_assert_cmpstr(text, ==, "foo baz");
- g_assert_cmpstr(textChangedResult, ==, "|2|4|3|'bar'|");
- g_free(text);
-
- pos = 4;
- atk_editable_text_insert_text(ATK_EDITABLE_TEXT(textEntry), "qux quux tobeignored", 8, &pos);
- text = atk_text_get_text(ATK_TEXT(textEntry), 0, -1);
- g_assert_cmpstr(text, ==, "foo qux quux baz");
- g_assert_cmpstr(textChangedResult, ==, "|1|4|8|'qux quux'|");
- g_free(text);
-
- /* Now check for password entries. */
- AtkObject* passwordEntry = atk_object_ref_accessible_child(form, 1);
- g_assert(ATK_IS_EDITABLE_TEXT(passwordEntry));
- g_assert(atk_object_get_role(ATK_OBJECT(passwordEntry)) == ATK_ROLE_PASSWORD_TEXT);
-
- g_signal_connect(passwordEntry, "text-insert",
- G_CALLBACK(textChangedCb),
- GINT_TO_POINTER(TEXT_CHANGE_INSERT));
- g_signal_connect(passwordEntry, "text-remove",
- G_CALLBACK(textChangedCb),
- GINT_TO_POINTER(TEXT_CHANGE_REMOVE));
-
- pos = 0;
- /* A single bullet character is '\342\200\242' */
- atk_editable_text_insert_text(ATK_EDITABLE_TEXT(passwordEntry), "foobar", 6, &pos);
- g_assert_cmpstr(textChangedResult, ==, "|1|0|6|'\342\200\242\342\200\242\342\200\242\342\200\242\342\200\242\342\200\242'|");
- text = atk_text_get_text(ATK_TEXT(passwordEntry), 0, -1);
- g_assert_cmpstr(text, ==, "\342\200\242\342\200\242\342\200\242\342\200\242\342\200\242\342\200\242");
- g_free(text);
-
- atk_editable_text_delete_text(ATK_EDITABLE_TEXT(passwordEntry), 2, 4);
- g_assert_cmpstr(textChangedResult, ==, "|2|2|2|'\342\200\242\342\200\242'|");
-
- text = atk_text_get_text(ATK_TEXT(passwordEntry), 0, -1);
- g_assert_cmpstr(text, ==, "\342\200\242\342\200\242\342\200\242\342\200\242");
- g_free(text);
-
- pos = 3;
- atk_editable_text_insert_text(ATK_EDITABLE_TEXT(passwordEntry), "qux tobeignored", 3, &pos);
- g_assert_cmpstr(textChangedResult, ==, "|1|3|3|'\342\200\242\342\200\242\342\200\242'|");
-
- text = atk_text_get_text(ATK_TEXT(passwordEntry), 0, -1);
- g_assert_cmpstr(text, ==, "\342\200\242\342\200\242\342\200\242\342\200\242\342\200\242\342\200\242\342\200\242");
- g_free(text);
-
- g_free(textChangedResult);
-
- g_object_unref(form);
- g_object_unref(textEntry);
- g_object_unref(passwordEntry);
- g_object_unref(webView);
-}
-
-static void testWebkitAtkParentForRootObject()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contents, 0, 0, 0);
-
- /* We need a parent container widget for the webview. */
- GtkWidget* parentContainer = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- g_object_ref_sink(parentContainer);
- gtk_container_add(GTK_CONTAINER(parentContainer), GTK_WIDGET(webView));
-
- AtkObject* axParent = gtk_widget_get_accessible(parentContainer);
- g_assert(ATK_IS_OBJECT(axParent));
-
- AtkObject* axRoot = gtk_widget_get_accessible(GTK_WIDGET(webView));
- g_assert(ATK_IS_OBJECT(axRoot));
-
- /* The child for the parent container's accessibility object
- should be the accessibility object for the WebView's root. */
- AtkObject* axParentChild = atk_object_ref_accessible_child(axParent, 0);
- g_assert(axParentChild == axRoot);
-
- /* Bottom-up navigation should match top-down one. */
- g_assert(atk_object_get_parent(axParentChild) == axParent);
-
- g_object_unref(axParentChild);
- g_object_unref(parentContainer);
-}
-
-static void testWebkitAtkSetParentForObject()
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- GtkAllocation allocation = { 0, 0, 800, 600 };
- gtk_widget_size_allocate(GTK_WIDGET(webView), &allocation);
- webkit_web_view_load_string(webView, contents, 0, 0, 0);
-
- /* Put the webview in a parent container widget to check that the
- normal behaviour keeps working as expected by default. */
- GtkWidget* parentContainer = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- g_object_ref_sink(parentContainer);
- gtk_container_add(GTK_CONTAINER(parentContainer), GTK_WIDGET(webView));
-
- AtkObject* axRoot = gtk_widget_get_accessible(GTK_WIDGET(webView));
- g_assert(ATK_IS_OBJECT(axRoot));
-
- AtkObject* axParent = gtk_widget_get_accessible(parentContainer);
- g_assert(ATK_IS_OBJECT(axParent));
-
- /* The parent of the root object is the parent container's a11y object. */
- g_assert(atk_object_get_parent(axRoot) == axParent);
-
- /* We now need to use something as a an alternative parent for
- the a11y object associated with the root of the DOM tree. */
- GtkWidget* alternativeParent = gtk_button_new();
- g_object_ref_sink(alternativeParent);
-
- AtkObject* axAlternativeParent = gtk_widget_get_accessible(alternativeParent);
- g_assert(ATK_IS_OBJECT(axAlternativeParent));
-
- /* Manually set the alternative parent's accessibility object as
- the parent for the WebKit accessibility root object and check. */
- atk_object_set_parent(axRoot, axAlternativeParent);
- g_assert(atk_object_get_parent(axRoot) == axAlternativeParent);
-
- g_object_unref(alternativeParent);
- g_object_unref(parentContainer);
-}
-
-/* FIXME: Please remove this function and replace its usage by
- gtk_test_init() when upgrading to GTK 3.2 or greater. */
-static void initializeTestingFramework(int argc, char** argv)
-{
- /* Ensure GAIL is the only module loaded. */
- g_setenv("GTK_MODULES", "gail", TRUE);
-
- /* Following lines were taken from gtk_test_init(). */
- g_test_init(&argc, &argv, 0);
- gtk_disable_setlocale();
- setlocale(LC_ALL, "C");
-
-#ifndef GTK_API_VERSION_2
- /* gdk_disable_multidevice() available since GTK+ 3.0 only. */
- gdk_disable_multidevice();
-#endif
-
- gtk_init(&argc, &argv);
-}
-
-int main(int argc, char** argv)
-{
- /* We can't just call to gtk_test_init() in this case because its
- implementation makes sure that no GTK+ module will be loaded, and
- we will need to load GAIL for tests that need to use AtkObjects
- from non-WebKit GtkWidgets (e.g parentForRootObject). However, it
- shouldn't be needed to do this in the future, as GAIL won't longer
- be a separate module (but part of GTK+) since GTK+ 3.2 on. */
- initializeTestingFramework(argc, argv);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/atk/caretOffsets", testWebkitAtkCaretOffsets);
- g_test_add_func("/webkit/atk/caretOffsetsAndExtranousWhiteSpaces", testWebkitAtkCaretOffsetsAndExtranousWhiteSpaces);
- g_test_add_func("/webkit/atk/comboBox", testWebkitAtkComboBox);
- g_test_add_func("/webkit/atk/documentLoadingEvents", testWebkitAtkDocumentLoadingEvents);
- g_test_add_func("/webkit/atk/embeddedObjects", testWebkitAtkEmbeddedObjects);
- g_test_add_func("/webkit/atk/getTextAtOffset", testWebkitAtkGetTextAtOffset);
- g_test_add_func("/webkit/atk/getTextAtOffsetNewlines", testWebkitAtkGetTextAtOffsetNewlines);
- g_test_add_func("/webkit/atk/getTextAtOffsetTextarea", testWebkitAtkGetTextAtOffsetTextarea);
- g_test_add_func("/webkit/atk/getTextAtOffsetTextInput", testWebkitAtkGetTextAtOffsetTextInput);
- g_test_add_func("/webkit/atk/getTextAtOffsetWithPreformattedText", testWebkitAtkGetTextAtOffsetWithPreformattedText);
- g_test_add_func("/webkit/atk/getTextAtOffsetWithSpecialCharacters", testWebkitAtkGetTextAtOffsetWithSpecialCharacters);
- g_test_add_func("/webkit/atk/getTextAtOffsetWithWrappedLines", testWebkitAtkGetTextAtOffsetWithWrappedLines);
- g_test_add_func("/webkit/atk/getTextInParagraphAndBodySimple", testWebkitAtkGetTextInParagraphAndBodySimple);
- g_test_add_func("/webkit/atk/getTextInParagraphAndBodyModerate", testWebkitAtkGetTextInParagraphAndBodyModerate);
- g_test_add_func("/webkit/atk/getTextInTable", testWebkitAtkGetTextInTable);
- g_test_add_func("/webkit/atk/getHeadersInTable", testWebkitAtkGetHeadersInTable);
- g_test_add_func("/webkit/atk/textAttributes", testWebkitAtkTextAttributes);
- g_test_add_func("/webkit/atk/textSelections", testWebkitAtkTextSelections);
- g_test_add_func("/webkit/atk/getExtents", testWebkitAtkGetExtents);
- g_test_add_func("/webkit/atk/hypertextAndHyperlinks", testWebkitAtkHypertextAndHyperlinks);
- g_test_add_func("/webkit/atk/layoutAndDataTables", testWebkitAtkLayoutAndDataTables);
- g_test_add_func("/webkit/atk/linksWithInlineImages", testWebkitAtkLinksWithInlineImages);
- g_test_add_func("/webkit/atk/listsOfItems", testWebkitAtkListsOfItems);
- g_test_add_func("/webkit/atk/textChangedNotifications", testWebkitAtkTextChangedNotifications);
- g_test_add_func("/webkit/atk/parentForRootObject", testWebkitAtkParentForRootObject);
- g_test_add_func("/webkit/atk/setParentForObject", testWebkitAtkSetParentForObject);
- return g_test_run ();
-}
-
diff --git a/Source/WebKit/gtk/tests/testatkroles.c b/Source/WebKit/gtk/tests/testatkroles.c
deleted file mode 100644
index da7833ea9..000000000
--- a/Source/WebKit/gtk/tests/testatkroles.c
+++ /dev/null
@@ -1,426 +0,0 @@
-/*
- * Copyright © 2010 Joanmarie Diggs
- * Copyright © 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-/* Non form roles */
-#define HTML_DOCUMENT_FRAME "<html><body>This is a test.</body></html>"
-#define HTML_HEADING "<html><body><h1>1</h1><h2>2</h2><h3>3</h3><h4>4</h4><h5>5</h5><h6>6</h6></body></html>"
-#define HTML_IMAGE "<html><body><img src='foobar.png' alt='This is a test.'/></body></html>"
-#define HTML_LINK_TEXT "<html><body><a href='foobar.html'>This is a test.</a></body></html>"
-#define HTML_LIST "<html><body><ul><li>1</li><li>2</li></ul><ol><li>1</li><li>2</li></ol></body></html>"
-#define HTML_PARAGRAPH "<html><body><p>This is a test.</p></body></html>"
-#define HTML_SECTION "<html><body><div>This is a test.</div></body></html>"
-#define HTML_TABLE "<html><body><table border='1'><tr><td>This is</td><td>a test.</td></tr></table></body></html>"
-#define HTML_SEPARATOR "<html><body><hr/></body></html>"
-#define HTML_COMBOBOX "<html><body><select size='1'><option>one</option><option>two</option><option>three</option></select></body></html>"
-/* Form roles */
-#define HTML_FORM "<html><body><form>This is a test.</form></body></html>"
-#define HTML_CHECK_BOX "<html><body><input type='checkbox' />This is a test.</body></html>"
-#define HTML_LABELED_ENTRY "<html><body><label for='foo'>Name:</label><input type='text' id='foo' /></body></html>"
-#define HTML_LISTBOX "<html><body><select size='3'><option>one</option><option>two</option><option>three</option></select></body></html>"
-#define HTML_PASSWORD_TEXT "<html><body><input type='password' /></body></html>"
-#define HTML_PUSH_BUTTON "<html><body><input type='submit' value='ok' />This is a test.</body></html>"
-#define HTML_RADIO_BUTTON "<html><body><input type='radio' />This is a test.</body></html>"
-
-typedef struct {
- AtkObject* documentFrame;
- AtkObject* obj;
- AtkRole role;
- GtkWidget* webView;
- GtkAllocation alloc;
- GMainLoop* loop;
-} AtkRolesFixture;
-
-static gboolean finish_loading(AtkRolesFixture* fixture)
-{
- if (g_main_loop_is_running(fixture->loop))
- g_main_loop_quit(fixture->loop);
-
- // With the change to support WK2 accessibility, the root object
- // has changed and it's no longer the document frame, but a scroll
- // pane containing the document frame as its only child. See the
- // bug 72390 for more details on this change.
- // https://bugs.webkit.org/show_bug.cgi?id=72390
- AtkObject* rootObject = gtk_widget_get_accessible(fixture->webView);
- fixture->documentFrame = atk_object_ref_accessible_child(rootObject, 0);
- g_assert(fixture->documentFrame);
-
- // Remove the reference added by ref_accessible_child() and
- // return, since we don't need to keep that extra ref at all.
- g_object_unref(fixture->documentFrame);
- return FALSE;
-}
-
-static void atk_roles_fixture_setup(AtkRolesFixture* fixture, gconstpointer data)
-{
- fixture->loop = g_main_loop_new(NULL, TRUE);
- fixture->alloc = (GtkAllocation) { 0, 0, 800, 600 };
- fixture->webView = webkit_web_view_new();
- g_object_ref_sink(fixture->webView);
-
- gtk_widget_size_allocate(fixture->webView, &fixture->alloc);
-
- if (data != NULL)
- webkit_web_view_load_string(WEBKIT_WEB_VIEW (fixture->webView), (const char*) data, NULL, NULL, NULL);
-
- g_idle_add((GSourceFunc) finish_loading, fixture);
- g_main_loop_run(fixture->loop);
-}
-
-static void atk_roles_fixture_teardown(AtkRolesFixture* fixture, gconstpointer data)
-{
- g_object_unref(fixture->webView);
- g_main_loop_unref(fixture->loop);
-}
-
-static void get_child_and_test_role(AtkObject* obj, gint pos, AtkRole role)
-{
- AtkObject* child;
- AtkRole child_role;
-
- child = atk_object_ref_accessible_child(obj, pos);
- g_assert(child);
- child_role = atk_object_get_role(child);
- g_assert(child_role == role);
-
- g_object_unref(child);
-}
-
-static void test_webkit_atk_get_role_document_frame(AtkRolesFixture* fixture, gconstpointer data)
-{
- fixture->role = atk_object_get_role(fixture->documentFrame);
- g_assert(fixture->role == ATK_ROLE_DOCUMENT_FRAME);
-}
-
-static void test_webkit_atk_get_role_heading(AtkRolesFixture* fixture, gconstpointer data)
-{
- get_child_and_test_role(fixture->documentFrame, 0, ATK_ROLE_HEADING);
- get_child_and_test_role(fixture->documentFrame, 1, ATK_ROLE_HEADING);
- get_child_and_test_role(fixture->documentFrame, 2, ATK_ROLE_HEADING);
- get_child_and_test_role(fixture->documentFrame, 3, ATK_ROLE_HEADING);
- get_child_and_test_role(fixture->documentFrame, 4, ATK_ROLE_HEADING);
- get_child_and_test_role(fixture->documentFrame, 5, ATK_ROLE_HEADING);
-}
-
-static void test_webkit_atk_get_role_image(AtkRolesFixture* fixture, gconstpointer data)
-{
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- get_child_and_test_role(fixture->obj, 0, ATK_ROLE_IMAGE);
-
- g_object_unref(fixture->obj);
-}
-
-static void test_webkit_atk_get_role_link(AtkRolesFixture* fixture, gconstpointer data)
-{
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- get_child_and_test_role(fixture->obj, 0, ATK_ROLE_LINK);
-
- g_object_unref(fixture->obj);
-}
-
-static void test_webkit_atk_get_role_list_and_item(AtkRolesFixture* fixture, gconstpointer data)
-{
- AtkObject* listObj;
-
- listObj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(listObj);
- fixture->role = atk_object_get_role(listObj);
- g_assert(fixture->role == ATK_ROLE_LIST);
-
- get_child_and_test_role(listObj, 0, ATK_ROLE_LIST_ITEM);
- get_child_and_test_role(listObj, 1, ATK_ROLE_LIST_ITEM);
- g_object_unref(listObj);
-
- listObj = atk_object_ref_accessible_child(fixture->documentFrame, 1);
- g_assert(listObj);
- fixture->role = atk_object_get_role(listObj);
- g_assert(fixture->role == ATK_ROLE_LIST);
-
- get_child_and_test_role(listObj, 0, ATK_ROLE_LIST_ITEM);
- get_child_and_test_role(listObj, 1, ATK_ROLE_LIST_ITEM);
- g_object_unref(listObj);
-}
-
-static void test_webkit_atk_get_role_paragraph(AtkRolesFixture* fixture, gconstpointer data)
-{
- get_child_and_test_role(fixture->documentFrame, 0, ATK_ROLE_PARAGRAPH);
-}
-
-static void test_webkit_atk_get_role_section(AtkRolesFixture* fixture, gconstpointer data)
-{
- get_child_and_test_role(fixture->documentFrame, 0, ATK_ROLE_SECTION);
-}
-
-// Does not yet test table cells because of bug 30895.
-static void test_webkit_atk_get_role_table(AtkRolesFixture* fixture, gconstpointer data)
-{
- get_child_and_test_role(fixture->documentFrame, 0, ATK_ROLE_TABLE);
-}
-
-static void test_webkit_atk_get_role_separator(AtkRolesFixture *fixture, gconstpointer data)
-{
- get_child_and_test_role(fixture->documentFrame, 0, ATK_ROLE_SEPARATOR);
-}
-
-static void test_webkit_atk_get_role_combobox(AtkRolesFixture *fixture, gconstpointer data)
-{
- AtkObject* comboboxMenu;
-
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- fixture->obj = atk_object_ref_accessible_child(fixture->obj, 0);
- g_assert(fixture->obj);
- fixture->role = atk_object_get_role(fixture->obj);
- g_assert(fixture->role == ATK_ROLE_COMBO_BOX);
-
- comboboxMenu = atk_object_ref_accessible_child(fixture->obj, 0);
- g_assert(comboboxMenu);
- fixture->role = atk_object_get_role(comboboxMenu);
- g_assert(fixture->role == ATK_ROLE_MENU);
-
- get_child_and_test_role(comboboxMenu, 0, ATK_ROLE_MENU_ITEM);
- get_child_and_test_role(comboboxMenu, 1, ATK_ROLE_MENU_ITEM);
- get_child_and_test_role(comboboxMenu, 2, ATK_ROLE_MENU_ITEM);
-
- g_object_unref(fixture->obj);
- g_object_unref(comboboxMenu);
-}
-
-/* Form roles */
-static void test_webkit_atk_get_role_form(AtkRolesFixture *fixture, gconstpointer data)
-{
- get_child_and_test_role(fixture->documentFrame, 0, ATK_ROLE_FORM);
-}
-
-static void test_webkit_atk_get_role_check_box(AtkRolesFixture* fixture, gconstpointer data)
-{
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- get_child_and_test_role(fixture->obj, 0, ATK_ROLE_CHECK_BOX);
-
- g_object_unref(fixture->obj);
-}
-
-static void test_webkit_atk_get_role_entry(AtkRolesFixture* fixture, gconstpointer data)
-{
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- get_child_and_test_role(fixture->obj, 1, ATK_ROLE_ENTRY);
-
- g_object_unref(fixture->obj);
-}
-
-static void test_webkit_atk_get_role_label(AtkRolesFixture* fixture, gconstpointer data)
-{
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- get_child_and_test_role(fixture->obj, 0, ATK_ROLE_LABEL);
-
- g_object_unref(fixture->obj);
-}
-
-static void test_webkit_atk_get_role_listbox(AtkRolesFixture* fixture, gconstpointer data)
-{
- AtkObject* listboxObj;
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- listboxObj = atk_object_ref_accessible_child(fixture->obj, 0);
- g_assert(listboxObj);
- fixture->role = atk_object_get_role(listboxObj);
- g_assert(fixture->role == ATK_ROLE_LIST);
-
- get_child_and_test_role(listboxObj, 0, ATK_ROLE_LIST_ITEM);
- get_child_and_test_role(listboxObj, 1, ATK_ROLE_LIST_ITEM);
- get_child_and_test_role(listboxObj, 2, ATK_ROLE_LIST_ITEM);
-
- g_object_unref(fixture->obj);
- g_object_unref(listboxObj);
-}
-
-static void test_webkit_atk_get_role_password_text(AtkRolesFixture* fixture, gconstpointer data)
-{
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- get_child_and_test_role(fixture->obj, 0, ATK_ROLE_PASSWORD_TEXT);
-
- g_object_unref(fixture->obj);
-}
-
-static void test_webkit_atk_get_role_push_button(AtkRolesFixture* fixture, gconstpointer data)
-{
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- get_child_and_test_role(fixture->obj, 0, ATK_ROLE_PUSH_BUTTON);
-
- g_object_unref(fixture->obj);
-}
-
-static void test_webkit_atk_get_role_radio_button(AtkRolesFixture* fixture, gconstpointer data)
-{
- // This is an extraneous object of ATK_ROLE_PANEL which we should get rid of.
- fixture->obj = atk_object_ref_accessible_child(fixture->documentFrame, 0);
- g_assert(fixture->obj);
-
- get_child_and_test_role(fixture->obj, 0, ATK_ROLE_RADIO_BUTTON);
-
- g_object_unref(fixture->obj);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_document_frame",
- AtkRolesFixture, HTML_DOCUMENT_FRAME,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_document_frame,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_heading",
- AtkRolesFixture, HTML_HEADING,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_heading,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_image",
- AtkRolesFixture, HTML_IMAGE,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_image,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_link",
- AtkRolesFixture, HTML_LINK_TEXT,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_link,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_list_and_item",
- AtkRolesFixture, HTML_LIST,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_list_and_item,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_paragraph",
- AtkRolesFixture, HTML_PARAGRAPH,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_paragraph,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_section",
- AtkRolesFixture, HTML_SECTION,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_section,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_table",
- AtkRolesFixture, HTML_TABLE,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_table,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_separator",
- AtkRolesFixture, HTML_SEPARATOR,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_separator,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_combobox",
- AtkRolesFixture, HTML_COMBOBOX,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_combobox,
- atk_roles_fixture_teardown);
-
- /* Form roles */
- g_test_add("/webkit/atk/test_webkit_atk_get_role_form",
- AtkRolesFixture, HTML_FORM,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_form,
- atk_roles_fixture_teardown);
- g_test_add("/webkit/atk/test_webkit_atk_get_role_check_box",
- AtkRolesFixture, HTML_CHECK_BOX,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_check_box,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_entry",
- AtkRolesFixture, HTML_LABELED_ENTRY,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_entry,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_label",
- AtkRolesFixture, HTML_LABELED_ENTRY,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_label,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_listbox",
- AtkRolesFixture, HTML_LISTBOX,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_listbox,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_password_text",
- AtkRolesFixture, HTML_PASSWORD_TEXT,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_password_text,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_push_button",
- AtkRolesFixture, HTML_PUSH_BUTTON,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_push_button,
- atk_roles_fixture_teardown);
-
- g_test_add("/webkit/atk/test_webkit_atk_get_role_radio_button",
- AtkRolesFixture, HTML_RADIO_BUTTON,
- atk_roles_fixture_setup,
- test_webkit_atk_get_role_radio_button,
- atk_roles_fixture_teardown);
-
- return g_test_run();
-}
diff --git a/Source/WebKit/gtk/tests/testcontextmenu.c b/Source/WebKit/gtk/tests/testcontextmenu.c
deleted file mode 100644
index fbf4ede5d..000000000
--- a/Source/WebKit/gtk/tests/testcontextmenu.c
+++ /dev/null
@@ -1,314 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2,1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <webkit/webkit.h>
-
-typedef struct {
- char *data;
- guint flag;
-} TestInfo;
-
-static GMainLoop *loop;
-
-typedef struct {
- WebKitWebView *webView;
- TestInfo *info;
-} ContextMenuFixture;
-
-static TestInfo *testInfoNew(const char *data, guint flag)
-{
- TestInfo *info = g_slice_new(TestInfo);
- info->data = g_strdup(data);
- info->flag = flag;
-
- return info;
-}
-
-static void testInfoDestroy(TestInfo *info)
-{
- g_free(info->data);
- g_slice_free(TestInfo, info);
-}
-
-static void contextMenuFixtureSetup(ContextMenuFixture *fixture, gconstpointer data)
-{
- fixture->webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- loop = g_main_loop_new(NULL, TRUE);
- fixture->info = (TestInfo *)data;
-}
-
-static void contextMenuFixtureTeardown(ContextMenuFixture *fixture, gconstpointer data)
-{
- g_object_unref(fixture->webView);
- g_main_loop_unref(loop);
- testInfoDestroy(fixture->info);
-}
-
-static GList *checkAction(GList *iter, WebKitContextMenuAction action)
-{
- GtkMenuItem *item = (GtkMenuItem *)iter->data;
-
- g_assert(GTK_IS_MENU_ITEM(item));
- g_assert(webkit_context_menu_item_get_action(item) == action);
-
- return iter->next;
-}
-
-static GList *checkActionWithSubmenu(GList *iter, WebKitContextMenuAction action)
-{
- GtkMenuItem *item = (GtkMenuItem *)iter->data;
-
- g_assert(GTK_IS_MENU_ITEM(item));
- g_assert(webkit_context_menu_item_get_action(item) == action);
- g_assert(GTK_IS_MENU(gtk_menu_item_get_submenu(item)));
-
- return iter->next;
-}
-
-static GList *checkSeparator(GList *iter)
-{
- GtkMenuItem *item = (GtkMenuItem *)iter->data;
-
- g_assert(GTK_IS_SEPARATOR_MENU_ITEM(item));
-
- return iter->next;
-}
-
-static gboolean contextMenuCallback(WebKitWebView *webView, GtkWidget *defaultMenu, WebKitHitTestResult *hitTestResult, gboolean keyboardMode, gpointer userData)
-{
- TestInfo *info = (TestInfo *)userData;
- guint context;
- GList *items;
- GList *iter;
-
- /* Check signal parameters */
- g_assert(WEBKIT_IS_WEB_VIEW(webView));
- g_assert(GTK_IS_MENU(defaultMenu));
- g_assert(WEBKIT_IS_HIT_TEST_RESULT(hitTestResult));
- g_assert(!keyboardMode);
-
- g_object_get(hitTestResult, "context", &context, NULL);
- g_assert(context & info->flag);
-
- items = gtk_container_get_children(GTK_CONTAINER(defaultMenu));
- switch (info->flag) {
- case WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT:
- iter = items;
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_GO_BACK);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_GO_FORWARD);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_STOP);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_RELOAD);
- g_assert(!iter);
-
- break;
- case WEBKIT_HIT_TEST_RESULT_CONTEXT_IMAGE:
- iter = items;
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_OPEN_IMAGE_IN_NEW_WINDOW);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_IMAGE_TO_DISK);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_TO_CLIPBOARD);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_URL_TO_CLIPBOARD);
- g_assert(!iter);
-
- break;
- case WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE:
- iter = items;
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_CUT);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_COPY);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_PASTE);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_DELETE);
- iter = checkSeparator(iter);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_SELECT_ALL);
- iter = checkSeparator(iter);
- iter = checkActionWithSubmenu(iter, WEBKIT_CONTEXT_MENU_ACTION_INPUT_METHODS);
- iter = checkActionWithSubmenu(iter, WEBKIT_CONTEXT_MENU_ACTION_UNICODE);
- g_assert(!iter);
-
- break;
- case WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK:
- iter = items;
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK_IN_NEW_WINDOW);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_LINK_TO_DISK);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_COPY_LINK_TO_CLIPBOARD);
- g_assert(!iter);
-
- break;
- default:
- g_assert_not_reached();
- }
-
- g_list_free(items);
- g_main_loop_quit(loop);
-
- return TRUE;
-}
-
-static void pushEvent(WebKitWebView *webView)
-{
- GdkEvent *event = gdk_event_new(GDK_BUTTON_PRESS);
-#if GTK_CHECK_VERSION(3, 0, 0)
- GdkDeviceManager *deviceManager;
-#endif
-
- event->any.window = g_object_ref(gtk_widget_get_window(GTK_WIDGET(webView)));
- event->any.send_event = FALSE;
- event->button.time = GDK_CURRENT_TIME;
- event->button.button = 3;
- event->button.x = event->button.y = 5;
- event->button.x_root = event->button.x;
- event->button.y_root = event->button.y;
-#if GTK_CHECK_VERSION(3, 0, 0)
- deviceManager = gdk_display_get_device_manager(gdk_display_get_default());
- event->button.device = gdk_device_manager_get_client_pointer(deviceManager);
-#endif
-
- gdk_event_put(event);
- gdk_event_free(event);
-}
-
-static void loadStatusCallback(WebKitWebView *webView, GParamSpec *spec, gpointer data)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
- TestInfo *info = (TestInfo *)data;
-
- g_assert(status != WEBKIT_LOAD_FAILED);
-
- if (status != WEBKIT_LOAD_FINISHED)
- return;
-
- g_signal_connect(webView, "context-menu", G_CALLBACK(contextMenuCallback), info);
- pushEvent(webView);
-}
-
-static gboolean mapEventCallback(GtkWidget *widget, GdkEvent *event, gpointer data)
-{
- gtk_widget_grab_focus(widget);
- ContextMenuFixture *fixture = (ContextMenuFixture *)data;
- webkit_web_view_load_string(fixture->webView,
- fixture->info->data,
- "text/html",
- "utf-8",
- "file://");
- g_signal_connect(fixture->webView, "notify::load-status", G_CALLBACK(loadStatusCallback), fixture->info);
- return FALSE;
-}
-
-static void testContextMenu(ContextMenuFixture *fixture, gconstpointer data)
-{
- GtkAllocation allocation = { 0, 0, 50, 50 };
- GtkWidget *window = gtk_window_new(GTK_WINDOW_POPUP);
-
- gtk_window_resize(GTK_WINDOW(window), 50, 50);
- gtk_window_move(GTK_WINDOW(window), 0, 0);
- gtk_widget_size_allocate(GTK_WIDGET(fixture->webView), &allocation);
- gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(fixture->webView));
- g_signal_connect(window, "map-event", G_CALLBACK(mapEventCallback), fixture);
- gtk_widget_show_all(window);
-
- g_main_loop_run(loop);
-}
-
-static gboolean contextMenuCustomItemCallback(WebKitWebView *webView, GtkWidget *defaultMenu, WebKitHitTestResult *hitTestResult, gboolean keyboardMode, gpointer userData)
-{
- TestInfo *info = (TestInfo *)userData;
- guint context;
- GList *items;
- GList *iter;
- GtkWidget *menuItem;
- GtkAction *action;
-
- /* Check signal parameters */
- g_assert(WEBKIT_IS_WEB_VIEW(webView));
- g_assert(GTK_IS_MENU(defaultMenu));
- g_assert(WEBKIT_IS_HIT_TEST_RESULT(hitTestResult));
- g_assert(!keyboardMode);
-
- g_object_get(hitTestResult, "context", &context, NULL);
- g_assert(context & info->flag);
-
- action = gtk_action_new("TestAction", "Custom Action", "Custom Action Tooltip", NULL);
- menuItem = gtk_action_create_menu_item(action);
- g_object_unref(action);
-
- gtk_menu_shell_append(GTK_MENU_SHELL(defaultMenu), menuItem);
- gtk_widget_show(menuItem);
-
- items = gtk_container_get_children(GTK_CONTAINER(defaultMenu));
- iter = items;
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_GO_BACK);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_GO_FORWARD);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_STOP);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_RELOAD);
- iter = checkAction(iter, WEBKIT_CONTEXT_MENU_ACTION_NO_ACTION);
- g_assert(!iter);
-
- g_list_free(items);
- g_main_loop_quit(loop);
-
- return TRUE;
-}
-
-static void testContextMenuCustomItem(ContextMenuFixture *fixture, gconstpointer data)
-{
- GtkWidget *window = gtk_window_new(GTK_WINDOW_POPUP);
- gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(fixture->webView));
- gtk_widget_show_all(window);
- gtk_widget_grab_focus(GTK_WIDGET(fixture->webView));
-
- webkit_web_view_load_string(fixture->webView,
- fixture->info->data,
- "text/html",
- "utf-8",
- "file://");
- g_signal_connect(fixture->webView, "context-menu", G_CALLBACK(contextMenuCustomItemCallback), fixture->info);
- pushEvent(fixture->webView);
-}
-
-int main(int argc, char **argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
-
- g_test_add("/webkit/testcontextmenu/document", ContextMenuFixture,
- testInfoNew("<html><body><h1>WebKitGTK+!</h1></body></html>",
- WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT),
- contextMenuFixtureSetup, testContextMenu, contextMenuFixtureTeardown);
- /* We hardcode all elements to be at 0,0 so that we know where to generate the button events */
- g_test_add("/webkit/testcontextmenu/image", ContextMenuFixture,
- testInfoNew("<html><body><img style='position:absolute; left:0; top:0' src='0xdeadbeef' width=50 height=50></img></body></html>",
- WEBKIT_HIT_TEST_RESULT_CONTEXT_IMAGE),
- contextMenuFixtureSetup, testContextMenu, contextMenuFixtureTeardown);
- g_test_add("/webkit/testcontextmenu/editable", ContextMenuFixture,
- testInfoNew("<html><body><input style='position:absolute; left:0; top:0' size='35'></input>></body></html>",
- WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE),
- contextMenuFixtureSetup, testContextMenu, contextMenuFixtureTeardown);
- g_test_add("/webkit/testcontextmenu/link", ContextMenuFixture,
- testInfoNew("<html><body><a style='position:absolute; left:0; top:0' href='http://www.example.com'>HELLO WORLD</a></body></html>",
- WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK),
- contextMenuFixtureSetup, testContextMenu, contextMenuFixtureTeardown);
- g_test_add("/webkit/testcontextmenu/customitem", ContextMenuFixture,
- testInfoNew("<html><body><h1>WebKitGTK+!</h1></body></html>",
- WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT),
- contextMenuFixtureSetup, testContextMenuCustomItem, contextMenuFixtureTeardown);
-
- return g_test_run();
-}
-
diff --git a/Source/WebKit/gtk/tests/testcopyandpaste.c b/Source/WebKit/gtk/tests/testcopyandpaste.c
deleted file mode 100644
index 5557ff875..000000000
--- a/Source/WebKit/gtk/tests/testcopyandpaste.c
+++ /dev/null
@@ -1,266 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2,1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <unistd.h>
-#include <string.h>
-#include <glib/gstdio.h>
-#include <webkit/webkit.h>
-#include <JavaScriptCore/JSStringRef.h>
-#include <JavaScriptCore/JSContextRef.h>
-
-typedef struct {
- char* page;
- char* expectedContent;
-} TestInfo;
-
-typedef struct {
- GtkWidget* window;
- WebKitWebView* webView;
- GMainLoop* loop;
- TestInfo* info;
-} CopyAndPasteFixture;
-
-TestInfo*
-test_info_new(const char* page, const char* expectedContent)
-{
- TestInfo* info;
- info = g_slice_new0(TestInfo);
- info->page = g_strdup(page);
- if (expectedContent)
- info->expectedContent = g_strdup(expectedContent);
- return info;
-}
-
-void
-test_info_destroy(TestInfo* info)
-{
- g_free(info->page);
- g_free(info->expectedContent);
- g_slice_free(TestInfo, info);
-}
-
-static void copy_and_paste_fixture_setup(CopyAndPasteFixture* fixture, gconstpointer data)
-{
- fixture->loop = g_main_loop_new(NULL, TRUE);
-
- fixture->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- fixture->webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
-
- gtk_container_add(GTK_CONTAINER(fixture->window), GTK_WIDGET(fixture->webView));
-}
-
-static void copy_and_paste_fixture_teardown(CopyAndPasteFixture* fixture, gconstpointer data)
-{
- gtk_widget_destroy(fixture->window);
- g_main_loop_unref(fixture->loop);
- test_info_destroy(fixture->info);
-}
-
-static void load_status_cb(WebKitWebView* webView, GParamSpec* spec, gpointer data)
-{
- CopyAndPasteFixture* fixture = (CopyAndPasteFixture*)data;
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
- if (status != WEBKIT_LOAD_FINISHED)
- return;
-
- GtkClipboard* clipboard = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD);
- gtk_clipboard_clear(clipboard);
-
- webkit_web_view_copy_clipboard(webView);
-
- gchar* text = gtk_clipboard_wait_for_text(clipboard);
- g_assert(text || !fixture->info->expectedContent);
- g_assert(!text || !strcmp(text, fixture->info->expectedContent));
- g_free(text);
-
- // Verify that the markup starts with the proper content-type meta tag prefix.
- GtkSelectionData* selectionData = gtk_clipboard_wait_for_contents(clipboard, gdk_atom_intern("text/html", FALSE));
- if (selectionData) {
- static const char* markupPrefix = "<meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\">";
- char* markup = g_strndup((const char*) gtk_selection_data_get_data(selectionData),
- gtk_selection_data_get_length(selectionData));
- g_assert(strlen(markupPrefix) <= strlen(markup));
- g_assert(!strncmp(markupPrefix, markup, strlen(markupPrefix)));
- g_free(markup);
- }
-
- g_assert(!gtk_clipboard_wait_is_uris_available(clipboard));
- g_assert(!gtk_clipboard_wait_is_image_available(clipboard));
-
- g_main_loop_quit(fixture->loop);
-}
-
-gboolean map_event_cb(GtkWidget *widget, GdkEvent* event, gpointer data)
-{
- CopyAndPasteFixture* fixture = (CopyAndPasteFixture*)data;
- webkit_web_view_load_string(fixture->webView, fixture->info->page,
- "text/html", "utf-8", "file://");
- return FALSE;
-}
-
-static void test_copy_and_paste(CopyAndPasteFixture* fixture, gconstpointer data)
-{
- fixture->info = (TestInfo*)data;
- g_signal_connect(fixture->window, "map-event",
- G_CALLBACK(map_event_cb), fixture);
-
- gtk_widget_show(fixture->window);
- gtk_widget_show(GTK_WIDGET(fixture->webView));
- gtk_window_present(GTK_WINDOW(fixture->window));
- gtk_widget_grab_focus(GTK_WIDGET(fixture->webView));
-
- g_signal_connect(fixture->webView, "notify::load-status",
- G_CALLBACK(load_status_cb), fixture);
-
- g_main_loop_run(fixture->loop);
-}
-
-static CopyAndPasteFixture* currentFixture;
-static JSValueRef runPasteTestCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
-{
- gtk_widget_grab_focus(GTK_WIDGET(currentFixture->webView));
-
- // Simulate a paste keyboard sequence.
- GdkEvent* event = gdk_event_new(GDK_KEY_PRESS);
- event->key.keyval = gdk_unicode_to_keyval('v');
- event->key.state = GDK_CONTROL_MASK;
- event->key.window = gtk_widget_get_window(GTK_WIDGET(currentFixture->webView));
- g_object_ref(event->key.window);
-#ifndef GTK_API_VERSION_2
- GdkDeviceManager* manager = gdk_display_get_device_manager(gdk_window_get_display(event->key.window));
- gdk_event_set_device(event, gdk_device_manager_get_client_pointer(manager));
-#endif
-
- GdkKeymapKey* keys;
- gint n_keys;
- if (gdk_keymap_get_entries_for_keyval(gdk_keymap_get_default(), event->key.keyval, &keys, &n_keys)) {
- event->key.hardware_keycode = keys[0].keycode;
- g_free(keys);
- }
-
- gtk_main_do_event(event);
- event->key.type = GDK_KEY_RELEASE;
- gtk_main_do_event(event);
- gdk_event_free(event);
-
- JSStringRef scriptString = JSStringCreateWithUTF8CString("document.body.innerHTML;");
- JSValueRef value = JSEvaluateScript(context, scriptString, 0, 0, 0, 0);
- JSStringRelease(scriptString);
-
- g_assert(JSValueIsString(context, value));
- JSStringRef actual = JSValueToStringCopy(context, value, exception);
- g_assert(!exception || !*exception);
- g_assert(currentFixture->info->expectedContent);
- JSStringRef expected = JSStringCreateWithUTF8CString(currentFixture->info->expectedContent);
- g_assert(JSStringIsEqual(expected, actual));
-
- JSStringRelease(expected);
- JSStringRelease(actual);
- g_main_loop_quit(currentFixture->loop);
- return JSValueMakeUndefined(context);
-}
-
-static void window_object_cleared_callback(WebKitWebView* web_view, WebKitWebFrame* web_frame, JSGlobalContextRef context, JSObjectRef window_object, gpointer data)
-{
- JSStringRef name = JSStringCreateWithUTF8CString("runTest");
- JSObjectRef testComplete = JSObjectMakeFunctionWithCallback(context, name, runPasteTestCallback);
- JSObjectSetProperty(context, window_object, name, testComplete, kJSPropertyAttributeNone, 0);
- JSStringRelease(name);
-}
-
-static void pasting_test_get_data_callback(GtkClipboard* clipboard, GtkSelectionData* selection_data, guint info, gpointer data)
-{
- gtk_selection_data_set(selection_data, gdk_atom_intern("text/html", FALSE), 8, (const guchar*) data, strlen((char*)data) + 1);
-}
-
-static void pasting_test_clear_data_callback(GtkClipboard* clipboard, gpointer data)
-{
- g_free(data);
-}
-
-static void test_pasting_markup(CopyAndPasteFixture* fixture, gconstpointer data)
-{
- fixture->info = (TestInfo*)data;
- currentFixture = fixture;
-
- GtkTargetList* targetList = gtk_target_list_new(0, 0);
- gtk_target_list_add(targetList, gdk_atom_intern("text/html", FALSE), 0, 0);
-
- int numberOfTargets = 1;
- GtkTargetEntry* targetTable = gtk_target_table_new_from_list(targetList, &numberOfTargets);
- gtk_clipboard_set_with_data(gtk_clipboard_get(GDK_SELECTION_CLIPBOARD),
- targetTable, numberOfTargets,
- pasting_test_get_data_callback,
- pasting_test_clear_data_callback,
- g_strdup(fixture->info->expectedContent));
- gtk_target_list_unref(targetList);
- gtk_target_table_free(targetTable, numberOfTargets);
-
- g_signal_connect(fixture->window, "map-event",
- G_CALLBACK(map_event_cb), fixture);
- g_signal_connect(fixture->webView, "window-object-cleared",
- G_CALLBACK(window_object_cleared_callback), fixture);
-
- gtk_widget_show(fixture->window);
- gtk_widget_show(GTK_WIDGET(fixture->webView));
- gtk_window_present(GTK_WINDOW(fixture->window));
-
- g_main_loop_run(fixture->loop);
-}
-
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- const char* selected_span_html = "<html><body>"
- "<span id=\"mainspan\">All work and no play <span>make Jack a dull</span> boy.</span>"
- "<script>document.getSelection().collapse();\n"
- "document.getSelection().selectAllChildren(document.getElementById('mainspan'));\n"
- "</script></body></html>";
- const char* no_selection_html = "<html><body>"
- "<span id=\"mainspan\">All work and no play <span>make Jack a dull</span> boy</span>"
- "<script>document.getSelection().collapse();\n"
- "</script></body></html>";
-
- g_test_add("/webkit/copyandpaste/selection", CopyAndPasteFixture,
- test_info_new(selected_span_html, "All work and no play make Jack a dull boy."),
- copy_and_paste_fixture_setup,
- test_copy_and_paste,
- copy_and_paste_fixture_teardown);
- g_test_add("/webkit/copyandpaste/no-selection", CopyAndPasteFixture,
- test_info_new(no_selection_html, 0),
- copy_and_paste_fixture_setup,
- test_copy_and_paste,
- copy_and_paste_fixture_teardown);
-
- const char* paste_test_html = "<html>"
- "<body onLoad=\"document.body.focus(); runTest();\" contentEditable=\"true\">"
- "</body></html>";
- g_test_add("/webkit/copyandpaste/paste-markup", CopyAndPasteFixture,
- test_info_new(paste_test_html, "bobby"),
- copy_and_paste_fixture_setup,
- test_pasting_markup,
- copy_and_paste_fixture_teardown);
-
- return g_test_run();
-}
diff --git a/Source/WebKit/gtk/tests/testdomdocument.c b/Source/WebKit/gtk/tests/testdomdocument.c
deleted file mode 100644
index 573159316..000000000
--- a/Source/WebKit/gtk/tests/testdomdocument.c
+++ /dev/null
@@ -1,428 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include "test_utils.h"
-
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-#define HTML_DOCUMENT_TITLE "<html><head><title>This is the title</title></head><body></body></html>"
-#define HTML_DOCUMENT_ELEMENTS "<html><body><ul><li>1</li><li>2</li><li>3</li></ul></body></html>"
-#define HTML_DOCUMENT_ELEMENTS_CLASS "<html><body><div class=\"test\"></div><div class=\"strange\"></div><div class=\"test\"></div></body></html>"
-#define HTML_DOCUMENT_ELEMENTS_ID "<html><body><div id=\"testok\"></div><div id=\"testbad\">first</div><div id=\"testbad\">second</div></body></html>"
-#define HTML_DOCUMENT_LINKS "<html><head><title>Title</title></head><body><a href=\"about:blank\">blank</a><a href=\"http://www.google.com\">google</a><a href=\"http://www.webkit.org\">webkit</a></body></html>"
-#define HTML_DOCUMENT_IFRAME "<html><head><title>IFrame</title></head><body><iframe id='iframe'></iframe><div id='test'></div></body></html>"
-#define HTML_DOCUMENT_TABLE "<html><body><table id=\"table\"></table></body></html>"
-#define HTML_DOCUMENT_EVALUATE "<html><head><title></title></head><body><div>First div</div><div>Second div</div></body></html>"
-
-typedef struct {
- GtkWidget* webView;
- GMainLoop* loop;
-} DomDocumentFixture;
-
-static gboolean finish_loading(DomDocumentFixture* fixture)
-{
- if (g_main_loop_is_running(fixture->loop))
- g_main_loop_quit(fixture->loop);
-
- return FALSE;
-}
-
-static void dom_document_fixture_setup(DomDocumentFixture* fixture, gconstpointer data)
-{
- fixture->loop = g_main_loop_new(NULL, TRUE);
- fixture->webView = webkit_web_view_new();
- g_object_ref_sink(fixture->webView);
-
- if (data != NULL)
- webkit_web_view_load_string(WEBKIT_WEB_VIEW (fixture->webView), (const char*) data, NULL, NULL, NULL);
-
- g_idle_add((GSourceFunc)finish_loading, fixture);
- g_main_loop_run(fixture->loop);
-}
-
-static void dom_document_fixture_teardown(DomDocumentFixture* fixture, gconstpointer data)
-{
- if (fixture->webView)
- g_object_unref(fixture->webView);
- g_main_loop_unref(fixture->loop);
-}
-
-static void test_dom_document_title(DomDocumentFixture* fixture, gconstpointer data)
-{
- g_assert(fixture);
- WebKitWebView* view = (WebKitWebView*)fixture->webView;
- g_assert(view);
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(view);
- g_assert(document);
- gchar* title = webkit_dom_document_get_title(document);
- g_assert(title);
- g_assert_cmpstr(title, ==, "This is the title");
- g_free(title);
- webkit_dom_document_set_title(document, "This is the second title");
- title = webkit_dom_document_get_title(document);
- g_assert(title);
- g_assert_cmpstr(title, ==, "This is the second title");
- g_free(title);
-}
-
-static void test_dom_document_get_elements_by_tag_name(DomDocumentFixture* fixture, gconstpointer data)
-{
- g_assert(fixture);
- WebKitWebView* view = (WebKitWebView*)fixture->webView;
- g_assert(view);
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(view);
- g_assert(document);
- WebKitDOMNodeList* list = webkit_dom_document_get_elements_by_tag_name(document, "li");
- g_assert(list);
- gulong length = webkit_dom_node_list_get_length(list);
- g_assert_cmpint(length, ==, 3);
-
- guint i;
-
- for (i = 0; i < length; i++) {
- WebKitDOMNode* item = webkit_dom_node_list_item(list, i);
- g_assert(item);
- WebKitDOMElement* element = (WebKitDOMElement*)item;
- g_assert(element);
- g_assert_cmpstr(webkit_dom_element_get_tag_name(element), ==, "LI");
- WebKitDOMHTMLElement* htmlElement = (WebKitDOMHTMLElement*)element;
- char* n = g_strdup_printf("%d", i+1);
- g_assert_cmpstr(webkit_dom_html_element_get_inner_text(htmlElement), ==, n);
- g_free(n);
- }
-
- g_object_unref(list);
-}
-
-static void test_dom_document_get_elements_by_class_name(DomDocumentFixture* fixture, gconstpointer data)
-{
- g_assert(fixture);
- WebKitWebView* view = (WebKitWebView*)fixture->webView;
- g_assert(view);
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(view);
- g_assert(document);
- WebKitDOMNodeList* list = webkit_dom_document_get_elements_by_class_name(document, "test");
- g_assert(list);
- gulong length = webkit_dom_node_list_get_length(list);
- g_assert_cmpint(length, ==, 2);
-
- guint i;
-
- for (i = 0; i < length; i++) {
- WebKitDOMNode* item = webkit_dom_node_list_item(list, i);
- g_assert(item);
- WebKitDOMElement* element = (WebKitDOMElement*)item;
- g_assert(element);
- g_assert_cmpstr(webkit_dom_element_get_tag_name(element), ==, "DIV");
- }
-
- g_object_unref(list);
-}
-
-static void test_dom_document_get_element_by_id(DomDocumentFixture* fixture, gconstpointer data)
-{
- g_assert(fixture);
- WebKitWebView* view = (WebKitWebView*)fixture->webView;
- g_assert(view);
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(view);
- g_assert(document);
- WebKitDOMElement* element = webkit_dom_document_get_element_by_id(document, "testok");
- g_assert(element);
- element = webkit_dom_document_get_element_by_id(document, "this-id-does-not-exist");
- g_assert(element == 0);
- /* The DOM spec says the return value is undefined when there's
- * more than one element with the same id; in our case the first
- * one will be returned */
- element = webkit_dom_document_get_element_by_id(document, "testbad");
- g_assert(element);
- WebKitDOMHTMLElement* htmlElement = (WebKitDOMHTMLElement*)element;
- g_assert_cmpstr(webkit_dom_html_element_get_inner_text(htmlElement), ==, "first");
-}
-
-static void test_dom_document_get_links(DomDocumentFixture* fixture, gconstpointer data)
-{
- g_assert(fixture);
- WebKitWebView* view = (WebKitWebView*)fixture->webView;
- g_assert(view);
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(view);
- g_assert(document);
- WebKitDOMHTMLCollection *collection = webkit_dom_document_get_links(document);
- g_assert(collection);
- gulong length = webkit_dom_html_collection_get_length(collection);
- g_assert_cmpint(length, ==, 3);
-
- guint i;
-
- for (i = 0; i < length; i++) {
- static const char* names[] = { "blank", "google", "webkit" };
- static const char* uris[] = { "about:blank", "http://www.google.com/", "http://www.webkit.org/" };
- WebKitDOMNode *node = webkit_dom_html_collection_item(collection, i);
- g_assert(node);
- WebKitDOMElement* element = (WebKitDOMElement*)node;
- g_assert_cmpstr(webkit_dom_element_get_tag_name(element), ==, "A");
- WebKitDOMHTMLElement *htmlElement = (WebKitDOMHTMLElement*)element;
- g_assert_cmpstr(webkit_dom_html_element_get_inner_text(htmlElement), ==, names[i]);
- WebKitDOMHTMLAnchorElement *anchor = (WebKitDOMHTMLAnchorElement*)element;
- g_assert_cmpstr(webkit_dom_html_anchor_element_get_href(anchor), ==, uris[i]);
- }
- g_object_unref(collection);
-}
-
-static void test_dom_document_insert_row(DomDocumentFixture* fixture, gconstpointer data)
-{
- g_assert(fixture);
- WebKitWebView* view = (WebKitWebView*)fixture->webView;
- g_assert(view);
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(view);
- g_assert(WEBKIT_DOM_IS_DOCUMENT(document));
- WebKitDOMElement* table = webkit_dom_document_get_element_by_id(document, "table");
- g_assert(WEBKIT_DOM_IS_HTML_ELEMENT(table));
- WebKitDOMHTMLCollection* rows = webkit_dom_html_table_element_get_rows(WEBKIT_DOM_HTML_TABLE_ELEMENT(table));
- g_assert(WEBKIT_DOM_IS_HTML_COLLECTION(rows));
-
- // Table is initially empty.
- g_assert_cmpint(webkit_dom_html_collection_get_length(rows), ==, 0);
- WebKitDOMHTMLElement* row = webkit_dom_html_table_element_insert_row(WEBKIT_DOM_HTML_TABLE_ELEMENT(table), -1, NULL);
- g_assert(WEBKIT_DOM_IS_HTML_TABLE_ROW_ELEMENT(row));
- rows = webkit_dom_html_table_element_get_rows(WEBKIT_DOM_HTML_TABLE_ELEMENT(table));
- g_assert(WEBKIT_DOM_IS_HTML_COLLECTION(rows));
- g_assert_cmpint(webkit_dom_html_collection_get_length(rows), ==, 1);
-}
-
-static void test_dom_document_evaluate(DomDocumentFixture* fixture, gconstpointer data)
-{
- g_assert(fixture);
- WebKitWebView* view = (WebKitWebView*)fixture->webView;
- g_assert(view);
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(view);
- g_assert(WEBKIT_DOM_IS_DOCUMENT(document));
- WebKitDOMNodeList* list = webkit_dom_document_get_elements_by_tag_name(document, "html");
- g_assert(list);
- gulong length = webkit_dom_node_list_get_length(list);
- g_assert_cmpint(length, ==, 1);
- WebKitDOMNode* html = webkit_dom_node_list_item(list, 0);
- g_assert(WEBKIT_DOM_IS_NODE(html));
-
- WebKitDOMXPathResult* result = webkit_dom_document_evaluate(document, "//div", html, NULL, 0, NULL, NULL);
- g_assert(WEBKIT_DOM_IS_XPATH_RESULT(result));
-
- int i = 0;
- WebKitDOMNode* node;
- while ( (node = webkit_dom_xpath_result_iterate_next(result, NULL)) != NULL) {
- g_assert(node);
- WebKitDOMElement* element = (WebKitDOMElement*)node;
- g_assert_cmpstr(webkit_dom_element_get_tag_name(element), ==, "DIV");
- i++;
- }
- g_assert_cmpint(i, ==, 2);
-
- g_object_unref(list);
-}
-
-static void weak_notify(gpointer data, GObject* zombie)
-{
- guint* count = (guint*)data;
- (*count)++;
-}
-
-static void test_dom_document_garbage_collection(DomDocumentFixture* fixture, gconstpointer data)
-{
- guint count = 0;
- g_assert(fixture);
- WebKitWebView* view = (WebKitWebView*)fixture->webView;
- g_assert(view);
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(view);
- g_assert(document);
- g_object_weak_ref(G_OBJECT(document), (GWeakNotify)weak_notify, &count);
- WebKitDOMHTMLHeadElement* head = webkit_dom_document_get_head(document);
- g_assert(head);
- g_object_weak_ref(G_OBJECT(head), (GWeakNotify)weak_notify, &count);
- WebKitDOMHTMLElement* body = webkit_dom_document_get_body(document);
- g_assert(body);
- g_object_weak_ref(G_OBJECT(body), (GWeakNotify)weak_notify, &count);
- WebKitDOMHTMLCollection *collection = webkit_dom_document_get_links(document);
- g_assert(collection);
- g_object_weak_ref(G_OBJECT(collection), (GWeakNotify)weak_notify, &count);
-
- webkit_web_view_load_string(WEBKIT_WEB_VIEW(view), HTML_DOCUMENT_LINKS, NULL, NULL, NULL);
-
- while (g_main_context_pending(NULL))
- g_main_context_iteration(NULL, FALSE);
-
- g_assert_cmpuint(count, ==, 3);
-
- g_object_unref(collection);
- g_assert_cmpuint(count, ==, 4);
-
- count = 0;
-
- document = webkit_web_view_get_dom_document(view);
- g_assert(document);
- g_object_weak_ref(G_OBJECT(document), (GWeakNotify)weak_notify, &count);
- head = webkit_dom_document_get_head(document);
- g_assert(head);
- g_object_weak_ref(G_OBJECT(head), (GWeakNotify)weak_notify, &count);
- body = webkit_dom_document_get_body(document);
- g_assert(body);
- g_object_weak_ref(G_OBJECT(body), (GWeakNotify)weak_notify, &count);
- collection = webkit_dom_document_get_links(document);
- g_assert(collection);
- g_object_weak_ref(G_OBJECT(collection), (GWeakNotify)weak_notify, &count);
- /* Ask twice for the same object */
- WebKitDOMHTMLCollection* collection2 = webkit_dom_document_get_links(document);
- g_assert(collection2);
- g_object_weak_ref(G_OBJECT(collection2), (GWeakNotify)weak_notify, &count);
-
- g_object_unref(document);
- g_object_unref(head);
- g_object_unref(body);
- g_object_unref(collection);
- g_object_unref(collection2);
-
- g_assert_cmpuint(count, ==, 5);
-
- webkit_web_view_load_string(WEBKIT_WEB_VIEW(view), HTML_DOCUMENT_IFRAME, NULL, NULL, NULL);
-
- while (g_main_context_pending(NULL))
- g_main_context_iteration(NULL, FALSE);
-
- count = 0;
-
- document = webkit_web_view_get_dom_document(view);
- WebKitDOMElement* div = webkit_dom_document_get_element_by_id(document, "test");
- g_assert(div);
- g_object_weak_ref(G_OBJECT(div), (GWeakNotify)weak_notify, &count);
- WebKitDOMElement* iframe = webkit_dom_document_get_element_by_id(document, "iframe");
- g_assert(iframe);
-
- webkit_dom_element_set_attribute(iframe, "src", "data:<html><head></head></html>", NULL);
-
- while (g_main_context_pending(NULL))
- g_main_context_iteration(NULL, FALSE);
-
- WebKitDOMDocument* iframeDocument = webkit_dom_html_iframe_element_get_content_document(WEBKIT_DOM_HTML_IFRAME_ELEMENT(iframe));
- g_assert(iframeDocument);
- head = webkit_dom_document_get_head(iframeDocument);
- g_assert(head);
- g_object_weak_ref(G_OBJECT(head), (GWeakNotify)weak_notify, &count);
-
- webkit_dom_element_set_attribute(iframe, "src", "about:blank", NULL);
-
- while (g_main_context_pending(NULL))
- g_main_context_iteration(NULL, FALSE);
-
- g_assert_cmpuint(count, ==, 1);
-
- webkit_web_view_load_string(WEBKIT_WEB_VIEW(view), HTML_DOCUMENT_LINKS, NULL, NULL, NULL);
-
- while (g_main_context_pending(NULL))
- g_main_context_iteration(NULL, FALSE);
-
- g_assert_cmpuint(count, ==, 2);
-
- count = 0;
-
- document = webkit_web_view_get_dom_document(view);
- g_assert(document);
- g_object_weak_ref(G_OBJECT(document), (GWeakNotify)weak_notify, &count);
- /* Ask twice for the Document */
- WebKitDOMDocument* document2 = webkit_web_view_get_dom_document(view);
- g_assert(document2);
- g_object_weak_ref(G_OBJECT(document2), (GWeakNotify)weak_notify, &count);
- head = webkit_dom_document_get_head(document);
- g_assert(head);
- g_object_weak_ref(G_OBJECT(head), (GWeakNotify)weak_notify, &count);
- body = webkit_dom_document_get_body(document);
- g_assert(body);
- g_object_weak_ref(G_OBJECT(body), (GWeakNotify)weak_notify, &count);
- collection = webkit_dom_document_get_links(document);
- g_assert(collection);
- g_object_weak_ref(G_OBJECT(collection), (GWeakNotify)weak_notify, &count);
-
- gtk_widget_destroy(fixture->webView);
- fixture->webView = NULL;
-
- g_assert_cmpuint(count, ==, 4);
-
- g_object_unref(collection);
-
- g_assert_cmpuint(count, ==, 5);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
-
- g_test_add("/webkit/domdocument/test_title",
- DomDocumentFixture, HTML_DOCUMENT_TITLE,
- dom_document_fixture_setup,
- test_dom_document_title,
- dom_document_fixture_teardown);
-
- g_test_add("/webkit/domdocument/test_get_elements_by_tag_name",
- DomDocumentFixture, HTML_DOCUMENT_ELEMENTS,
- dom_document_fixture_setup,
- test_dom_document_get_elements_by_tag_name,
- dom_document_fixture_teardown);
-
- g_test_add("/webkit/domdocument/test_get_elements_by_class_name",
- DomDocumentFixture, HTML_DOCUMENT_ELEMENTS_CLASS,
- dom_document_fixture_setup,
- test_dom_document_get_elements_by_class_name,
- dom_document_fixture_teardown);
-
- g_test_add("/webkit/domdocument/test_get_element_by_id",
- DomDocumentFixture, HTML_DOCUMENT_ELEMENTS_ID,
- dom_document_fixture_setup,
- test_dom_document_get_element_by_id,
- dom_document_fixture_teardown);
-
- g_test_add("/webkit/domdocument/test_get_links",
- DomDocumentFixture, HTML_DOCUMENT_LINKS,
- dom_document_fixture_setup,
- test_dom_document_get_links,
- dom_document_fixture_teardown);
-
- g_test_add("/webkit/domdocument/test_table_insert_row",
- DomDocumentFixture, HTML_DOCUMENT_TABLE,
- dom_document_fixture_setup,
- test_dom_document_insert_row,
- dom_document_fixture_teardown);
-
- g_test_add("/webkit/domdocument/test_document_evaluate",
- DomDocumentFixture, HTML_DOCUMENT_EVALUATE,
- dom_document_fixture_setup,
- test_dom_document_evaluate,
- dom_document_fixture_teardown);
-
- g_test_add("/webkit/domdocument/test_garbage_collection",
- DomDocumentFixture, HTML_DOCUMENT_LINKS,
- dom_document_fixture_setup,
- test_dom_document_garbage_collection,
- dom_document_fixture_teardown);
-
- return g_test_run();
-}
-
diff --git a/Source/WebKit/gtk/tests/testdomdomwindow.c b/Source/WebKit/gtk/tests/testdomdomwindow.c
deleted file mode 100644
index 701df4f17..000000000
--- a/Source/WebKit/gtk/tests/testdomdomwindow.c
+++ /dev/null
@@ -1,258 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include "test_utils.h"
-
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-#define HTML_DOCUMENT "<html><head><title></title></head><style type='text/css'>#test { font-size: 16px; }</style><body><p id='test'>test</p></body></html>"
-
-typedef struct {
- GtkWidget* webView;
- GtkWidget* window;
- WebKitDOMDOMWindow* domWindow;
- GMainLoop* loop;
-
- gboolean loaded;
- gboolean clicked;
- gconstpointer data;
-} DomDomviewFixture;
-
-static gboolean finish_loading(DomDomviewFixture* fixture)
-{
- if (g_main_loop_is_running(fixture->loop))
- g_main_loop_quit(fixture->loop);
-
- return FALSE;
-}
-
-static void dom_domview_fixture_setup(DomDomviewFixture* fixture, gconstpointer data)
-{
- fixture->loop = g_main_loop_new(NULL, TRUE);
- fixture->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- fixture->webView = webkit_web_view_new();
- fixture->data = data;
-
- gtk_container_add(GTK_CONTAINER(fixture->window), GTK_WIDGET(fixture->webView));
-}
-
-static void dom_domview_fixture_teardown(DomDomviewFixture* fixture, gconstpointer data)
-{
- gtk_widget_destroy(fixture->window);
- g_main_loop_unref(fixture->loop);
-}
-
-static void dom_dom_window_fixture_setup(DomDomviewFixture* fixture, gconstpointer data)
-{
- fixture->loop = g_main_loop_new(NULL, TRUE);
- fixture->webView = webkit_web_view_new();
- g_object_ref_sink(fixture->webView);
-
- if (data != NULL)
- webkit_web_view_load_string(WEBKIT_WEB_VIEW (fixture->webView), (const char*) data, NULL, NULL, NULL);
-
- g_idle_add((GSourceFunc)finish_loading, fixture);
- g_main_loop_run(fixture->loop);
-}
-
-static void dom_dom_window_fixture_teardown(DomDomviewFixture* fixture, gconstpointer data)
-{
- if (fixture->webView)
- g_object_unref(fixture->webView);
- g_main_loop_unref(fixture->loop);
-}
-
-static gboolean loadedCallback(WebKitDOMDOMWindow* view, WebKitDOMEvent* event, DomDomviewFixture* fixture)
-{
- g_assert(fixture->loaded == FALSE);
- fixture->loaded = TRUE;
-
- return FALSE;
-}
-
-static gboolean clickedCallback(WebKitDOMDOMWindow* view, WebKitDOMEvent* event, DomDomviewFixture* fixture)
-{
- WebKitDOMEventTarget* target;
- gushort phase;
-
- g_assert(event);
- g_assert(WEBKIT_DOM_IS_EVENT(event));
-
- // We should catch this in the bubbling up phase, since we are connecting to the toplevel object
- phase = webkit_dom_event_get_event_phase(event);
- g_assert_cmpint(phase, ==, 3);
-
- target = webkit_dom_event_get_current_target(event);
- g_assert(target == WEBKIT_DOM_EVENT_TARGET(view));
-
- g_assert(fixture->clicked == FALSE);
- fixture->clicked = TRUE;
-
- finish_loading(fixture);
-
- return FALSE;
-}
-
-gboolean map_event_cb(GtkWidget *widget, GdkEvent* event, DomDomviewFixture* fixture)
-{
- webkit_web_view_load_string(WEBKIT_WEB_VIEW (fixture->webView), (const char*)fixture->data, NULL, NULL, NULL);
-
- return FALSE;
-}
-
-static void load_event_callback(WebKitWebView* webView, GParamSpec* spec, DomDomviewFixture* fixture)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
- if (status == WEBKIT_LOAD_FINISHED) {
- webkit_dom_event_target_add_event_listener(WEBKIT_DOM_EVENT_TARGET(fixture->domWindow), "click", G_CALLBACK(clickedCallback), false, fixture);
-
- g_assert(fixture->clicked == FALSE);
- gtk_test_widget_click(GTK_WIDGET(fixture->webView), 1, 0);
- }
-
-}
-
-static void test_dom_domview_signals(DomDomviewFixture* fixture, gconstpointer data)
-{
- g_assert(fixture);
- WebKitWebView* view = (WebKitWebView*)fixture->webView;
- g_assert(view);
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(view);
- g_assert(document);
- WebKitDOMDOMWindow* domWindow = webkit_dom_document_get_default_view(document);
- g_assert(domWindow);
-
- fixture->domWindow = domWindow;
-
- webkit_dom_event_target_add_event_listener(WEBKIT_DOM_EVENT_TARGET(fixture->domWindow), "load", G_CALLBACK(loadedCallback), false, fixture);
- g_signal_connect(fixture->window, "map-event", G_CALLBACK(map_event_cb), fixture);
- g_signal_connect(fixture->webView, "notify::load-status", G_CALLBACK(load_event_callback), fixture);
-
- gtk_widget_show_all(fixture->window);
- gtk_window_present(GTK_WINDOW(fixture->window));
-
- g_main_loop_run(fixture->loop);
-
- g_assert(fixture->loaded);
- g_assert(fixture->clicked);
-}
-
-static gboolean
-clicked_cb(WebKitDOMEventTarget* target, WebKitDOMEvent* event, DomDomviewFixture* fixture)
-{
- g_assert(fixture->clicked == FALSE);
- fixture->clicked = TRUE;
- finish_loading(fixture);
- return FALSE;
-}
-
-static void load_status_callback(WebKitWebView* webView, GParamSpec* spec, DomDomviewFixture* fixture)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
- if (status == WEBKIT_LOAD_FINISHED) {
- WebKitDOMDocument* document;
- WebKitDOMDOMWindow* domWindow;
- WebKitDOMElement* element;
- WebKitDOMEvent* event;
- glong clientX, clientY;
-
- document = webkit_web_view_get_dom_document(WEBKIT_WEB_VIEW(fixture->webView));
- g_assert(document);
- domWindow = webkit_dom_document_get_default_view(document);
- g_assert(domWindow);
- fixture->domWindow = domWindow;
-
- element = webkit_dom_document_get_element_by_id(document, "test");
- g_assert(element);
- event = webkit_dom_document_create_event(document, "MouseEvent", NULL);
- g_assert(event);
- g_assert(WEBKIT_DOM_IS_EVENT(event));
- g_assert(WEBKIT_DOM_IS_MOUSE_EVENT(event));
- clientX = webkit_dom_element_get_client_left(element);
- clientY = webkit_dom_element_get_client_top(element);
- webkit_dom_mouse_event_init_mouse_event(WEBKIT_DOM_MOUSE_EVENT(event),
- "click", TRUE, TRUE,
- fixture->domWindow, 0, 0, 0, clientX, clientY,
- FALSE, FALSE, FALSE, FALSE,
- 1, WEBKIT_DOM_EVENT_TARGET(element));
- webkit_dom_event_target_add_event_listener(WEBKIT_DOM_EVENT_TARGET(element), "click", G_CALLBACK(clicked_cb), false, fixture);
- g_assert(fixture->clicked == FALSE);
- webkit_dom_event_target_dispatch_event(WEBKIT_DOM_EVENT_TARGET(element), event, NULL);
- }
-
-}
-
-static void test_dom_domview_dispatch_event(DomDomviewFixture* fixture, gconstpointer data)
-{
- g_signal_connect(fixture->window, "map-event", G_CALLBACK(map_event_cb), fixture);
- g_signal_connect(fixture->webView, "notify::load-status", G_CALLBACK(load_status_callback), fixture);
-
- gtk_widget_show_all(fixture->window);
- gtk_window_present(GTK_WINDOW(fixture->window));
-
- g_main_loop_run (fixture->loop);
- g_assert(fixture->clicked);
-}
-
-static void test_dom_dom_window_get_computed_style(DomDomviewFixture* fixture, gconstpointer data)
-{
- WebKitDOMDocument* document = webkit_web_view_get_dom_document(WEBKIT_WEB_VIEW(fixture->webView));
- g_assert(document);
- WebKitDOMDOMWindow* domWindow = webkit_dom_document_get_default_view(document);
- g_assert(domWindow);
-
- WebKitDOMElement* element = webkit_dom_document_get_element_by_id(document, "test");
- g_assert(element);
- g_assert(WEBKIT_DOM_IS_ELEMENT(element));
- WebKitDOMCSSStyleDeclaration* cssStyle = webkit_dom_dom_window_get_computed_style(domWindow, element, NULL);
- gchar* fontSize = webkit_dom_css_style_declaration_get_property_value(cssStyle, "font-size");
- g_assert_cmpstr(fontSize, ==, "16px");
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
-
- g_test_add("/webkit/domdomview/signals",
- DomDomviewFixture, HTML_DOCUMENT,
- dom_domview_fixture_setup,
- test_dom_domview_signals,
- dom_domview_fixture_teardown);
-
- g_test_add("/webkit/domdomview/dispatch_event",
- DomDomviewFixture, HTML_DOCUMENT,
- dom_domview_fixture_setup,
- test_dom_domview_dispatch_event,
- dom_domview_fixture_teardown);
-
- g_test_add("/webkit/domdomwindow/get_computed_style",
- DomDomviewFixture, HTML_DOCUMENT,
- dom_dom_window_fixture_setup,
- test_dom_dom_window_get_computed_style,
- dom_dom_window_fixture_teardown);
-
- return g_test_run();
-}
-
diff --git a/Source/WebKit/gtk/tests/testdomnode.c b/Source/WebKit/gtk/tests/testdomnode.c
deleted file mode 100644
index 0521d1715..000000000
--- a/Source/WebKit/gtk/tests/testdomnode.c
+++ /dev/null
@@ -1,219 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include "test_utils.h"
-
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-#define HTML_DOCUMENT_HIERARCHY_NAVIGATION "<html><head><title>This is the title</title></head><body><p>1</p><p>2</p><p>3</p></body></html>"
-#define HTML_DOCUMENT_NODE_INSERTION "<html><body></body></html>"
-
-typedef struct {
- GtkWidget* webView;
- GMainLoop* loop;
-} DomNodeFixture;
-
-static gboolean finish_loading(DomNodeFixture* fixture)
-{
- if (g_main_loop_is_running(fixture->loop))
- g_main_loop_quit(fixture->loop);
-
- return FALSE;
-}
-
-static void dom_node_fixture_setup(DomNodeFixture* fixture, gconstpointer data)
-{
- fixture->loop = g_main_loop_new(NULL, TRUE);
- fixture->webView = webkit_web_view_new();
- g_object_ref_sink(fixture->webView);
-
- if (data != NULL)
- webkit_web_view_load_string(WEBKIT_WEB_VIEW(fixture->webView), (const char*)data, NULL, NULL, NULL);
-
- g_idle_add((GSourceFunc)finish_loading, fixture);
- g_main_loop_run(fixture->loop);
-}
-
-static void dom_node_fixture_teardown(DomNodeFixture* fixture, gconstpointer data)
-{
- g_object_unref(fixture->webView);
- g_main_loop_unref(fixture->loop);
-}
-
-static void test_dom_node_hierarchy_navigation(DomNodeFixture* fixture, gconstpointer data)
-{
- WebKitDOMDocument* document;
- WebKitDOMHTMLHeadElement* head;
- WebKitDOMHTMLBodyElement* body;
- WebKitDOMNodeList* list;
- WebKitDOMNode* ptr;
- gulong i, length;
-
- document = webkit_web_view_get_dom_document(WEBKIT_WEB_VIEW(fixture->webView));
- g_assert(document);
- g_assert(WEBKIT_DOM_IS_DOCUMENT(document));
- head = webkit_dom_document_get_head(document);
- g_assert(head);
- g_assert(WEBKIT_DOM_IS_HTML_HEAD_ELEMENT(head));
-
- /* Title, head's child */
- g_assert(webkit_dom_node_has_child_nodes(WEBKIT_DOM_NODE(head)));
- list = webkit_dom_node_get_child_nodes(WEBKIT_DOM_NODE(head));
- g_assert_cmpint(webkit_dom_node_list_get_length(list), ==, 1);
- ptr = webkit_dom_node_list_item(list, 0);
- g_assert(ptr);
- g_assert(WEBKIT_DOM_IS_HTML_TITLE_ELEMENT(ptr));
- g_object_unref(list);
-
- /* Body, Head sibling */
- ptr = webkit_dom_node_get_next_sibling(WEBKIT_DOM_NODE(head));
- g_assert(ptr);
- body = WEBKIT_DOM_HTML_BODY_ELEMENT(ptr);
- g_assert(WEBKIT_DOM_IS_HTML_BODY_ELEMENT(body));
-
- /* There is no third sibling */
- ptr = webkit_dom_node_get_next_sibling(ptr);
- g_assert(ptr == NULL);
-
- /* Body's previous sibling is Head */
- ptr = webkit_dom_node_get_previous_sibling(WEBKIT_DOM_NODE(body));
- g_assert(ptr);
- g_assert(WEBKIT_DOM_IS_HTML_HEAD_ELEMENT(ptr));
-
- /* Body has 3 children */
- g_assert(webkit_dom_node_has_child_nodes(WEBKIT_DOM_NODE(body)));
- list = webkit_dom_node_get_child_nodes(WEBKIT_DOM_NODE(body));
- length = webkit_dom_node_list_get_length(list);
- g_assert_cmpint(length, ==, 3);
-
- /* The three of them are P tags */
- for (i = 0; i < length; i++) {
- ptr = webkit_dom_node_list_item(list, i);
- g_assert(ptr);
- g_assert(WEBKIT_DOM_IS_HTML_PARAGRAPH_ELEMENT(ptr));
- }
-
- /* Go backwards */
- for (i = 0; ptr; ptr = webkit_dom_node_get_previous_sibling(ptr), i++)
- /* Nothing */;
-
- g_assert_cmpint(i, ==, 3);
- g_object_unref(list);
-}
-
-static void test_dom_node_insertion(DomNodeFixture* fixture, gconstpointer data)
-{
- WebKitDOMDocument* document;
- WebKitDOMHTMLElement* body;
- WebKitDOMElement* p, *div;
- WebKitDOMNodeList* list;
- WebKitDOMNode* node;
-
- document = webkit_web_view_get_dom_document(WEBKIT_WEB_VIEW(fixture->webView));
- g_assert(document);
- body = webkit_dom_document_get_body(document);
- g_assert(body);
- g_assert(WEBKIT_DOM_IS_HTML_ELEMENT(body));
-
- /* Body shouldn't have any children at this point */
- g_assert(webkit_dom_node_has_child_nodes(WEBKIT_DOM_NODE(body)) == FALSE);
-
- /* Insert one P element */
- p = webkit_dom_document_create_element(document, "P", NULL);
- webkit_dom_node_append_child(WEBKIT_DOM_NODE(body), WEBKIT_DOM_NODE(p), NULL);
-
- /* Now it should have one, the same that we inserted */
- g_assert(webkit_dom_node_has_child_nodes(WEBKIT_DOM_NODE(body)));
- list = webkit_dom_node_get_child_nodes(WEBKIT_DOM_NODE(body));
- g_assert_cmpint(webkit_dom_node_list_get_length(list), ==, 1);
- node = webkit_dom_node_list_item(list, 0);
- g_assert(node);
- g_assert(webkit_dom_node_is_same_node(WEBKIT_DOM_NODE(p), node));
- g_object_unref(list);
-
- /* Replace the P tag with a DIV tag */
- div = webkit_dom_document_create_element(document, "DIV", NULL);
- webkit_dom_node_replace_child(WEBKIT_DOM_NODE(body), WEBKIT_DOM_NODE(div), WEBKIT_DOM_NODE(p), NULL);
- g_assert(webkit_dom_node_has_child_nodes(WEBKIT_DOM_NODE(body)));
- list = webkit_dom_node_get_child_nodes(WEBKIT_DOM_NODE(body));
- g_assert_cmpint(webkit_dom_node_list_get_length(list), ==, 1);
- node = webkit_dom_node_list_item(list, 0);
- g_assert(node);
- g_assert(webkit_dom_node_is_same_node(WEBKIT_DOM_NODE(div), node));
- g_object_unref(list);
-
- /* Now remove the tag */
- webkit_dom_node_remove_child(WEBKIT_DOM_NODE(body), node, NULL);
- list = webkit_dom_node_get_child_nodes(WEBKIT_DOM_NODE(body));
- g_assert_cmpint(webkit_dom_node_list_get_length(list), ==, 0);
- g_object_unref(list);
-
- /* Test insert_before */
-
- /* If refChild is null, insert newChild as last element of parent */
- div = webkit_dom_document_create_element(document, "DIV", NULL);
- webkit_dom_node_insert_before(WEBKIT_DOM_NODE(body), WEBKIT_DOM_NODE(div), NULL, NULL);
- g_assert(webkit_dom_node_has_child_nodes(WEBKIT_DOM_NODE(body)));
- list = webkit_dom_node_get_child_nodes(WEBKIT_DOM_NODE(body));
- g_assert_cmpint(webkit_dom_node_list_get_length(list), ==, 1);
- node = webkit_dom_node_list_item(list, 0);
- g_assert(node);
- g_assert(webkit_dom_node_is_same_node(WEBKIT_DOM_NODE(div), node));
- g_object_unref(list);
-
- /* Now insert a 'p' before 'div' */
- p = webkit_dom_document_create_element(document, "P", NULL);
- webkit_dom_node_insert_before(WEBKIT_DOM_NODE(body), WEBKIT_DOM_NODE(p), WEBKIT_DOM_NODE(div), NULL);
- g_assert(webkit_dom_node_has_child_nodes(WEBKIT_DOM_NODE(body)));
- list = webkit_dom_node_get_child_nodes(WEBKIT_DOM_NODE(body));
- g_assert_cmpint(webkit_dom_node_list_get_length(list), ==, 2);
- node = webkit_dom_node_list_item(list, 0);
- g_assert(node);
- g_assert(webkit_dom_node_is_same_node(WEBKIT_DOM_NODE(p), node));
- node = webkit_dom_node_list_item(list, 1);
- g_assert(node);
- g_assert(webkit_dom_node_is_same_node(WEBKIT_DOM_NODE(div), node));
- g_object_unref(list);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
-
- g_test_add("/webkit/domnode/test_hierarchy_navigation",
- DomNodeFixture, HTML_DOCUMENT_HIERARCHY_NAVIGATION,
- dom_node_fixture_setup,
- test_dom_node_hierarchy_navigation,
- dom_node_fixture_teardown);
-
- g_test_add("/webkit/domnode/test_insertion",
- DomNodeFixture, HTML_DOCUMENT_NODE_INSERTION,
- dom_node_fixture_setup,
- test_dom_node_insertion,
- dom_node_fixture_teardown);
-
- return g_test_run();
-}
-
diff --git a/Source/WebKit/gtk/tests/testdownload.c b/Source/WebKit/gtk/tests/testdownload.c
deleted file mode 100644
index 106c346ce..000000000
--- a/Source/WebKit/gtk/tests/testdownload.c
+++ /dev/null
@@ -1,322 +0,0 @@
-/*
- * Copyright (C) 2009 Christian Dywan <christian@twotoasts.de>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2,1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <unistd.h>
-#include <glib/gstdio.h>
-#include <webkit/webkit.h>
-
-GMainLoop* loop;
-char* temporaryFilename = NULL;
-WebKitDownload* theDownload = NULL;
-
-static void
-test_webkit_download_create(void)
-{
- WebKitNetworkRequest* request;
- WebKitDownload* download;
- const gchar* uri = "http://example.com";
- gchar* tmpDir;
-
- request = webkit_network_request_new(uri);
- download = webkit_download_new(request);
- g_object_unref(request);
- g_assert_cmpstr(webkit_download_get_uri(download), ==, uri);
- g_assert(webkit_download_get_network_request(download) == request);
- g_assert(g_strrstr(uri, webkit_download_get_suggested_filename(download)));
- g_assert(webkit_download_get_status(download) == WEBKIT_DOWNLOAD_STATUS_CREATED);
- g_assert(!webkit_download_get_total_size(download));
- g_assert(!webkit_download_get_current_size(download));
- g_assert(!webkit_download_get_progress(download));
- g_assert(!webkit_download_get_elapsed_time(download));
- tmpDir = g_filename_to_uri(g_get_tmp_dir(), NULL, NULL);
- webkit_download_set_destination_uri(download, tmpDir);
- g_assert_cmpstr(tmpDir, ==, webkit_download_get_destination_uri(download));;
- g_free(tmpDir);
- g_object_unref(download);
-}
-
-static gboolean
-navigation_policy_decision_requested_cb(WebKitWebView* web_view,
- WebKitWebFrame* web_frame,
- WebKitNetworkRequest* request,
- WebKitWebNavigationAction* action,
- WebKitWebPolicyDecision* decision,
- gpointer data)
-{
- webkit_web_policy_decision_download(decision);
- return TRUE;
-}
-
-static void
-notify_status_cb(GObject* object, GParamSpec* pspec, gpointer data)
-{
- WebKitDownload* download = WEBKIT_DOWNLOAD(object);
- switch (webkit_download_get_status(download)) {
- case WEBKIT_DOWNLOAD_STATUS_FINISHED:
- case WEBKIT_DOWNLOAD_STATUS_ERROR:
- g_main_loop_quit(loop);
- break;
- case WEBKIT_DOWNLOAD_STATUS_CANCELLED:
- g_assert_not_reached();
- break;
- default:
- break;
- }
-}
-
-static gboolean
-set_filename(gchar* filename)
-{
- gchar *uri = g_filename_to_uri(filename, NULL, NULL);
-
- webkit_download_set_destination_uri(theDownload, uri);
- g_free(uri);
-
- webkit_download_start(theDownload);
- return FALSE;
-}
-
-static void
-handle_download_requested_cb(WebKitDownload* download,
- gboolean* beenThere,
- gboolean asynch)
-{
- theDownload = download;
- *beenThere = TRUE;
-
- if (temporaryFilename) {
- if (asynch) {
- g_idle_add((GSourceFunc)set_filename, temporaryFilename);
- } else {
- gchar *uri = g_filename_to_uri(temporaryFilename, NULL, NULL);
- if (uri)
- webkit_download_set_destination_uri(download, uri);
- g_free(uri);
- }
- }
-
- g_signal_connect(download, "notify::status",
- G_CALLBACK(notify_status_cb), NULL);
-}
-
-static gboolean
-download_requested_cb(WebKitWebView* web_view,
- WebKitDownload* download,
- gboolean* beenThere)
-{
- handle_download_requested_cb(download, beenThere, FALSE);
- return TRUE;
-}
-
-static gboolean
-download_requested_asynch_cb(WebKitWebView* web_view,
- WebKitDownload* download,
- gboolean* beenThere)
-{
- handle_download_requested_cb(download, beenThere, TRUE);
- return TRUE;
-}
-
-static void
-test_webkit_download_perform(gboolean asynch)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- GCallback downloadRequestCallback = NULL;
-
- g_object_ref_sink(G_OBJECT(webView));
-
- g_signal_connect(webView, "navigation-policy-decision-requested",
- G_CALLBACK(navigation_policy_decision_requested_cb),
- NULL);
-
- if (asynch)
- downloadRequestCallback = G_CALLBACK(download_requested_asynch_cb);
- else
- downloadRequestCallback = G_CALLBACK(download_requested_cb);
-
- gboolean beenThere = FALSE;
- g_signal_connect(webView, "download-requested",
- downloadRequestCallback, &beenThere);
-
- /* Preparation; FIXME: we should move this code to a test
- * utilities file, because we have a very similar one in
- * testwebframe.c */
- GError *error = NULL;
- gchar* filename;
- int fd = g_file_open_tmp("webkit-testwebdownload-XXXXXX", &filename, &error);
- close(fd);
-
- if (error)
- g_critical("Failed to open a temporary file for writing: %s.", error->message);
-
- if (g_unlink(filename) == -1)
- g_critical("Failed to delete the temporary file: %s.", g_strerror(errno));
-
- theDownload = NULL;
- temporaryFilename = filename;
-
- loop = g_main_loop_new(NULL, TRUE);
- webkit_web_view_load_uri(webView, "http://gnome.org/");
- g_main_loop_run(loop);
-
- g_assert_cmpint(beenThere, ==, TRUE);
-
- g_assert_cmpint(g_file_test(temporaryFilename, G_FILE_TEST_IS_REGULAR), ==, TRUE);
-
- g_unlink(temporaryFilename);
- g_free(temporaryFilename);
- temporaryFilename = NULL;
-
- g_main_loop_unref(loop);
- g_object_unref(webView);
-}
-
-static void
-test_webkit_download_synch(void)
-{
- test_webkit_download_perform(FALSE);
-}
-
-static void
-test_webkit_download_asynch(void)
-{
- test_webkit_download_perform(TRUE);
-}
-
-static gboolean mime_type_policy_decision_requested_cb(WebKitWebView* view, WebKitWebFrame* frame,
- WebKitNetworkRequest* request, const char* mime_type,
- WebKitWebPolicyDecision* decision, gpointer data)
-{
- webkit_web_policy_decision_download(decision);
- return TRUE;
-}
-
-static void idle_quit_loop_cb(WebKitWebView* web_view, GParamSpec* pspec, gpointer data)
-{
- if (webkit_web_view_get_load_status(web_view) == WEBKIT_LOAD_FINISHED ||
- webkit_web_view_get_load_status(web_view) == WEBKIT_LOAD_FAILED)
- g_main_loop_quit(loop);
-}
-
-static void
-test_webkit_download_data(void)
-{
- gboolean beenThere = FALSE;
- WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
-
- g_signal_connect(webView, "download-requested",
- G_CALLBACK(download_requested_cb),
- &beenThere);
-
- g_signal_connect(webView, "notify::load-status",
- G_CALLBACK(idle_quit_loop_cb),
- NULL);
-
- g_signal_connect(webView, "mime-type-policy-decision-requested",
- G_CALLBACK(mime_type_policy_decision_requested_cb),
- NULL);
-
- loop = g_main_loop_new(NULL, TRUE);
-
- /* We're testing for a crash, so just not crashing is a pass */
- webkit_web_view_load_uri(webView, "data:application/octect-stream,");
- g_main_loop_run(loop);
-
- g_assert_cmpint(beenThere, ==, TRUE);
-
- g_main_loop_unref(loop);
- g_object_unref(webView);
-}
-
-static void notifyDownloadStatusCallback(GObject *object, GParamSpec *pspec, gpointer data)
-{
- WebKitDownload *download = WEBKIT_DOWNLOAD(object);
- WebKitNetworkResponse *response = webkit_download_get_network_response(download);
- SoupMessage *message = webkit_network_response_get_message(response);
-
- switch (webkit_download_get_status(download)) {
- case WEBKIT_DOWNLOAD_STATUS_ERROR:
- g_assert_cmpint(message->status_code, ==, 404);
- g_main_loop_quit(loop);
- break;
- case WEBKIT_DOWNLOAD_STATUS_FINISHED:
- case WEBKIT_DOWNLOAD_STATUS_CANCELLED:
- g_assert_not_reached();
- break;
- default:
- break;
- }
-}
-
-static void serverCallback(SoupServer *server, SoupMessage *message, const char *path, GHashTable *query, SoupClientContext *context, gpointer userData)
-{
- if (message->method != SOUP_METHOD_GET) {
- soup_message_set_status(message, SOUP_STATUS_NOT_IMPLEMENTED);
- return;
- }
-
- soup_message_set_status(message, SOUP_STATUS_NOT_FOUND);
- soup_message_body_complete(message->response_body);
-}
-
-static void test_webkit_download_not_found(void)
-{
- SoupServer *server = soup_server_new(SOUP_SERVER_PORT, 0, NULL);
- soup_server_run_async(server);
- soup_server_add_handler(server, NULL, serverCallback, NULL, NULL);
- SoupURI *baseURI = soup_uri_new("http://127.0.0.1/");
- soup_uri_set_port(baseURI, soup_server_get_port(server));
-
- SoupURI *uri = soup_uri_new_with_base(baseURI, "/foo");
- char *uriString = soup_uri_to_string(uri, FALSE);
- soup_uri_free(uri);
-
- loop = g_main_loop_new(NULL, TRUE);
- WebKitNetworkRequest *request = webkit_network_request_new(uriString);
- g_free (uriString);
- WebKitDownload *download = webkit_download_new(request);
- g_object_unref(request);
-
- webkit_download_set_destination_uri(download, "file:///tmp/foo");
- g_signal_connect(download, "notify::status", G_CALLBACK(notifyDownloadStatusCallback), NULL);
-
- webkit_download_start(download);
- g_main_loop_run(loop);
-
- g_object_unref(download);
- g_main_loop_unref(loop);
- soup_uri_free(baseURI);
- g_object_unref(server);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/download/create", test_webkit_download_create);
- g_test_add_func("/webkit/download/synch", test_webkit_download_synch);
- g_test_add_func("/webkit/download/asynch", test_webkit_download_asynch);
- g_test_add_func("/webkit/download/data", test_webkit_download_data);
- g_test_add_func("/webkit/download/not-found", test_webkit_download_not_found);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testfavicondatabase.c b/Source/WebKit/gtk/tests/testfavicondatabase.c
deleted file mode 100644
index 971a7e734..000000000
--- a/Source/WebKit/gtk/tests/testfavicondatabase.c
+++ /dev/null
@@ -1,276 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include "test_utils.h"
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <string.h>
-#include <webkit/webkit.h>
-
-const int gIconSize = 16;
-
-GMainLoop *loop;
-char *baseURI;
-
-static void
-serverCallback(SoupServer *server, SoupMessage *message, const char *path, GHashTable *query, SoupClientContext *context, void *data)
-{
- if (message->method != SOUP_METHOD_GET) {
- soup_message_set_status(message, SOUP_STATUS_NOT_IMPLEMENTED);
- return;
- }
-
- soup_message_set_status(message, SOUP_STATUS_OK);
-
- char *contents;
- gsize length;
- if (g_str_equal(path, "/favicon.ico")) {
- GError *error = NULL;
-
- g_file_get_contents("blank.ico", &contents, &length, &error);
- g_assert(!error);
- } else {
- contents = g_strdup("<html><body>test</body></html>");
- length = strlen(contents);
- }
-
- soup_message_body_append(message->response_body, SOUP_MEMORY_TAKE, contents, length);
- soup_message_body_complete(message->response_body);
-}
-
-static void deleteDatabaseFileIfExists(const char *databasePath)
-{
- if (!g_file_test(databasePath, G_FILE_TEST_IS_DIR))
- return;
-
- char *databaseFilename = g_build_filename(databasePath, "WebpageIcons.db", NULL);
- if (g_unlink(databaseFilename) == -1) {
- g_free(databaseFilename);
- return;
- }
-
- g_free(databaseFilename);
- g_rmdir(databasePath);
-}
-
-static void testWebKitFaviconDatabaseSetPath()
-{
- char *databasePath = g_build_filename(g_get_tmp_dir(), "webkit-testfavicondatabase", NULL);
- deleteDatabaseFileIfExists(databasePath);
-
- WebKitFaviconDatabase *database = webkit_get_favicon_database();
- webkit_favicon_database_set_path(database, databasePath);
-
- g_assert_cmpstr(databasePath, ==, webkit_favicon_database_get_path(database));
-
- g_free(databasePath);
-}
-
-// See the comment in main() function that goes with this same guard.
-#ifdef NDEBUG
-
-static void faviconDatabaseGetValidFaviconCallback(GObject *sourceObject, GAsyncResult *result, void *userData)
-{
- gboolean *beenHere = (gboolean*)userData;
- GError *error = NULL;
- GdkPixbuf *icon = webkit_favicon_database_get_favicon_pixbuf_finish(WEBKIT_FAVICON_DATABASE(sourceObject), result, &error);
- g_assert(icon);
- g_object_unref(icon);
-
- *beenHere = TRUE;
-
- g_main_loop_quit(loop);
-}
-
-static void faviconDatabaseGetInvalidFaviconCallback(GObject *sourceObject, GAsyncResult *result, void *userData)
-{
- gboolean *beenHere = (gboolean*)userData;
- GError *error = NULL;
- GdkPixbuf *icon = webkit_favicon_database_get_favicon_pixbuf_finish(WEBKIT_FAVICON_DATABASE(sourceObject), result, &error);
- g_assert(!icon);
-
- *beenHere = TRUE;
-
- g_main_loop_quit(loop);
-}
-
-static void faviconDatabaseGetFaviconCancelledCallback(GObject *sourceObject, GAsyncResult *result, void *userData)
-{
- gboolean *beenHere = (gboolean*)userData;
- GError *error = NULL;
- GdkPixbuf *icon = webkit_favicon_database_get_favicon_pixbuf_finish(WEBKIT_FAVICON_DATABASE(sourceObject), result, &error);
- g_assert(!icon);
- g_assert(error && g_error_matches(error, G_IO_ERROR, G_IO_ERROR_CANCELLED));
-
- *beenHere = TRUE;
-
- g_main_loop_quit(loop);
-}
-
-static inline void quitMainLoopIfLoadCompleted(gboolean *iconOrPageLoaded)
-{
- if (*iconOrPageLoaded)
- g_main_loop_quit(loop);
- else
- *iconOrPageLoaded = TRUE;
-}
-
-static void idleQuitLoopCallback(WebKitWebView *webView, GParamSpec *paramSpec, gboolean *iconOrPageLoaded)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
-
- if (status == WEBKIT_LOAD_FINISHED || status == WEBKIT_LOAD_FAILED)
- quitMainLoopIfLoadCompleted(iconOrPageLoaded);
-}
-
-static void webkitWebViewIconLoaded(WebKitFaviconDatabase *database, const char *frameURI, gboolean *iconOrPageLoaded)
-{
- quitMainLoopIfLoadCompleted(iconOrPageLoaded);
-}
-
-static void loadURI(const char *uri)
-{
- WebKitWebView *view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- gboolean iconOrPageLoaded = FALSE;
-
- webkit_web_view_load_uri(view, uri);
-
- g_signal_connect(view, "notify::load-status", G_CALLBACK(idleQuitLoopCallback), &iconOrPageLoaded);
- g_signal_connect(view, "icon-loaded", G_CALLBACK(webkitWebViewIconLoaded), &iconOrPageLoaded);
-
- g_main_loop_run(loop);
-
- g_signal_handlers_disconnect_matched(view, G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, &iconOrPageLoaded);
-}
-
-static gboolean faviconDatabaseGetValidFaviconIdle(void *userData)
-{
- webkit_favicon_database_get_favicon_pixbuf(webkit_get_favicon_database(), baseURI,
- gIconSize, gIconSize, NULL,
- faviconDatabaseGetValidFaviconCallback, userData);
- return FALSE;
-}
-
-static gboolean faviconDatabaseGetInvalidFaviconIdle(void *userData)
-{
- webkit_favicon_database_get_favicon_pixbuf(webkit_get_favicon_database(), "http://www.webkitgtk.org/",
- gIconSize, gIconSize, NULL,
- faviconDatabaseGetInvalidFaviconCallback, userData);
- return FALSE;
-}
-
-static gboolean faviconDatabaseGetFaviconCancelledIdle(void *userData)
-{
- GCancellable *cancellable = g_cancellable_new();
- webkit_favicon_database_get_favicon_pixbuf(webkit_get_favicon_database(), baseURI,
- gIconSize, gIconSize, cancellable,
- faviconDatabaseGetFaviconCancelledCallback, userData);
- g_cancellable_cancel(cancellable);
- g_object_unref(cancellable);
- return FALSE;
-}
-
-static void testWebKitFaviconDatabaseGetFavicon()
-{
- gboolean beenToIconCallback;
-
- loop = g_main_loop_new(NULL, TRUE);
-
- /* Load uri to make sure favicon is added to database. */
- loadURI(baseURI);
-
- beenToIconCallback = FALSE;
- g_idle_add((GSourceFunc)faviconDatabaseGetValidFaviconIdle, &beenToIconCallback);
- g_main_loop_run(loop);
- g_assert(beenToIconCallback);
-
- beenToIconCallback = FALSE;
- g_idle_add((GSourceFunc)faviconDatabaseGetInvalidFaviconIdle, &beenToIconCallback);
- g_main_loop_run(loop);
- g_assert(beenToIconCallback);
-
- beenToIconCallback = FALSE;
- g_idle_add((GSourceFunc)faviconDatabaseGetFaviconCancelledIdle, &beenToIconCallback);
- g_main_loop_run(loop);
- g_assert(beenToIconCallback);
-}
-
-static void testWebKitFaviconDatabaseGetFaviconURI()
-{
- char *iconURI = webkit_favicon_database_get_favicon_uri(webkit_get_favicon_database(), baseURI);
- char *expectedURI = g_strdup_printf("%sfavicon.ico", baseURI);
- g_assert_cmpstr(iconURI, ==, expectedURI);
- g_free(expectedURI);
- g_free(iconURI);
-}
-
-#endif
-
-static void testWebKitFaviconDatabaseRemoveAll(void)
-{
- WebKitFaviconDatabase *database = webkit_get_favicon_database();
- webkit_favicon_database_clear(database);
- char *iconURI = webkit_favicon_database_get_favicon_uri(database, baseURI);
- g_assert(!iconURI);
- g_free(iconURI);
-}
-
-static void testWebKitFaviconDatabaseCloseDatabase(void)
-{
- WebKitFaviconDatabase *database = webkit_get_favicon_database();
- char *databasePath = g_strdup(webkit_favicon_database_get_path(database));
- webkit_favicon_database_set_path(database, 0);
- deleteDatabaseFileIfExists(databasePath);
- g_free(databasePath);
-}
-
-int main(int argc, char **argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- /* This hopefully makes the test independent of the path it's called from. */
- testutils_relative_chdir("Source/WebKit/gtk/tests/resources/test.html", argv[0]);
-
- SoupServer *server = soup_server_new(SOUP_SERVER_PORT, 0, NULL);
- soup_server_run_async(server);
-
- soup_server_add_handler(server, NULL, serverCallback, NULL, NULL);
-
- SoupURI *soupURI = soup_uri_new("http://127.0.0.1/");
- soup_uri_set_port(soupURI, soup_server_get_port(server));
-
- baseURI = soup_uri_to_string(soupURI, FALSE);
- soup_uri_free(soupURI);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/favicondatabase/set-path", testWebKitFaviconDatabaseSetPath);
-
- // These two tests will trigger an ASSERTION on debug builds due
- // to http://webkit.org/b/67582. Remove the guards once the bug is fixed.
-#ifdef NDEBUG
- g_test_add_func("/webkit/favicondatabase/get-favicon", testWebKitFaviconDatabaseGetFavicon);
- g_test_add_func("/webkit/favicondatabase/get-favicon-uri", testWebKitFaviconDatabaseGetFaviconURI);
-#endif
-
- g_test_add_func("/webkit/favicondatabase/remove-all", testWebKitFaviconDatabaseRemoveAll);
- g_test_add_func("/webkit/favicondatabase/close-db", testWebKitFaviconDatabaseCloseDatabase);
-
- return g_test_run();
-}
diff --git a/Source/WebKit/gtk/tests/testglobals.c b/Source/WebKit/gtk/tests/testglobals.c
deleted file mode 100644
index d7f316ccd..000000000
--- a/Source/WebKit/gtk/tests/testglobals.c
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright (C) 2010 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <gtk/gtk.h>
-#include <libsoup/soup.h>
-#include <webkit/webkit.h>
-
-// Make sure the session is initialized properly when webkit_get_default_session() is called.
-static void test_globals_default_session()
-{
- g_test_bug("36754");
-
- SoupSession* session = webkit_get_default_session();
- soup_session_remove_feature_by_type(session, WEBKIT_TYPE_SOUP_AUTH_DIALOG);
-
- // This makes sure our initialization ran.
- g_assert(soup_session_get_feature(session, SOUP_TYPE_CONTENT_DECODER) != NULL);
-
- // Creating a WebView should make sure the session is
- // initialized, and not mess with our changes.
- WebKitWebView* web_view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(web_view);
- g_object_unref(web_view);
-
- // These makes sure our modification was kept.
- g_assert(soup_session_get_feature(session, SOUP_TYPE_CONTENT_DECODER) != NULL);
- g_assert(soup_session_get_feature(session, WEBKIT_TYPE_SOUP_AUTH_DIALOG) == NULL);
-}
-
-static void test_globals_security_policy()
-{
- // Check default policy for well known schemes.
- WebKitSecurityPolicy policy = webkit_get_security_policy_for_uri_scheme("http");
- guint mask = WEBKIT_SECURITY_POLICY_CORS_ENABLED;
- g_assert_cmpuint(policy & mask, ==, mask);
-
- policy = webkit_get_security_policy_for_uri_scheme("https");
- mask = WEBKIT_SECURITY_POLICY_SECURE | WEBKIT_SECURITY_POLICY_CORS_ENABLED;
- g_assert_cmpuint(policy & mask, ==, mask);
-
- policy = webkit_get_security_policy_for_uri_scheme("file");
- mask = WEBKIT_SECURITY_POLICY_LOCAL;
- g_assert_cmpuint(policy & mask, ==, mask);
-
- policy = webkit_get_security_policy_for_uri_scheme("data");
- mask = WEBKIT_SECURITY_POLICY_NO_ACCESS_TO_OTHER_SCHEME | WEBKIT_SECURITY_POLICY_SECURE;
- g_assert_cmpuint(policy & mask, ==, mask);
-
- policy = webkit_get_security_policy_for_uri_scheme("about");
- mask = WEBKIT_SECURITY_POLICY_NO_ACCESS_TO_OTHER_SCHEME | WEBKIT_SECURITY_POLICY_SECURE | WEBKIT_SECURITY_POLICY_EMPTY_DOCUMENT;
- g_assert_cmpuint(policy & mask, ==, mask);
-
- // Custom scheme.
- policy = webkit_get_security_policy_for_uri_scheme("foo");
- g_assert(!policy);
-
- policy |= WEBKIT_SECURITY_POLICY_LOCAL;
- webkit_set_security_policy_for_uri_scheme("foo", policy);
- g_assert_cmpuint(webkit_get_security_policy_for_uri_scheme("foo"), ==, policy);
-
- policy |= WEBKIT_SECURITY_POLICY_NO_ACCESS_TO_OTHER_SCHEME;
- webkit_set_security_policy_for_uri_scheme("foo", policy);
- g_assert_cmpuint(webkit_get_security_policy_for_uri_scheme("foo"), ==, policy);
-
- policy |= WEBKIT_SECURITY_POLICY_DISPLAY_ISOLATED;
- webkit_set_security_policy_for_uri_scheme("foo", policy);
- g_assert_cmpuint(webkit_get_security_policy_for_uri_scheme("foo"), ==, policy);
-
- policy |= WEBKIT_SECURITY_POLICY_SECURE;
- webkit_set_security_policy_for_uri_scheme("foo", policy);
- g_assert_cmpuint(webkit_get_security_policy_for_uri_scheme("foo"), ==, policy);
-
- policy |= WEBKIT_SECURITY_POLICY_CORS_ENABLED;
- webkit_set_security_policy_for_uri_scheme("foo", policy);
- g_assert_cmpuint(webkit_get_security_policy_for_uri_scheme("foo"), ==, policy);
-
- policy |= WEBKIT_SECURITY_POLICY_EMPTY_DOCUMENT;
- webkit_set_security_policy_for_uri_scheme("foo", policy);
- g_assert_cmpuint(webkit_get_security_policy_for_uri_scheme("foo"), ==, policy);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/globals/default_session",
- test_globals_default_session);
- g_test_add_func("/webkit/globals/security-policy",
- test_globals_security_policy);
- return g_test_run();
-}
-
diff --git a/Source/WebKit/gtk/tests/testhittestresult.c b/Source/WebKit/gtk/tests/testhittestresult.c
deleted file mode 100644
index adbf98a8e..000000000
--- a/Source/WebKit/gtk/tests/testhittestresult.c
+++ /dev/null
@@ -1,169 +0,0 @@
-/*
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2,1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <unistd.h>
-#include <glib/gstdio.h>
-#include <webkit/webkit.h>
-
-typedef struct {
- char* data;
- guint flag;
-} TestInfo;
-
-static GMainLoop* loop;
-
-typedef struct {
- WebKitWebView* webView;
- TestInfo* info;
-} HitTestResultFixture;
-
-TestInfo*
-test_info_new(const char* data, guint flag)
-{
- TestInfo* info;
-
- info = g_slice_new(TestInfo);
- info->data = g_strdup(data);
- info->flag = flag;
-
- return info;
-}
-
-void
-test_info_destroy(TestInfo* info)
-{
- g_free(info->data);
- g_slice_free(TestInfo, info);
-}
-
-static void hit_test_result_fixture_setup(HitTestResultFixture* fixture, gconstpointer data)
-{
- fixture->webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(fixture->webView);
- loop = g_main_loop_new(NULL, TRUE);
- fixture->info = (TestInfo*)data;
-}
-
-static void hit_test_result_fixture_teardown(HitTestResultFixture* fixture, gconstpointer data)
-{
- g_object_unref(fixture->webView);
- g_main_loop_unref(loop);
- test_info_destroy(fixture->info);
-}
-
-static void
-load_status_cb(WebKitWebView* webView,
- GParamSpec* spec,
- gpointer data)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
- TestInfo* info = (TestInfo*)data;
-
- if (status == WEBKIT_LOAD_FINISHED) {
- WebKitHitTestResult* result;
- guint context;
- GdkEvent* event = gdk_event_new(GDK_BUTTON_PRESS);
- WebKitDOMNode* node;
- gint x, y;
-
- /* Close enough to 0,0 */
- event->button.x = 5;
- event->button.y = 5;
-
- result = webkit_web_view_get_hit_test_result(webView, (GdkEventButton*) event);
- gdk_event_free(event);
- g_assert(result);
-
- g_object_get(result, "context", &context, NULL);
- g_assert(context & info->flag);
-
- g_object_get(result, "inner-node", &node, NULL);
- g_assert(node);
- g_assert(WEBKIT_DOM_IS_NODE(node));
-
- g_object_get(result, "x", &x, "y", &y, NULL);
- g_assert_cmpint(x, ==, 5);
- g_assert_cmpint(y, ==, 5);
-
- /* We can only test these node types at the moment. In the
- * input case there seems to be an extra layer with a DIV on
- * top of the input, which gets assigned to the inner-node.
- * tag */
- if (info->flag == WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT)
- g_assert(WEBKIT_DOM_IS_HTML_HTML_ELEMENT(node));
- else if (info->flag == WEBKIT_HIT_TEST_RESULT_CONTEXT_IMAGE)
- g_assert(WEBKIT_DOM_IS_HTML_IMAGE_ELEMENT(node));
- else if (info->flag == WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK) {
- /* The hit test will give us the inner text node, we want
- * the A tag */
- WebKitDOMNode* parent = webkit_dom_node_get_parent_node(node);
- g_assert(WEBKIT_DOM_IS_HTML_ANCHOR_ELEMENT(parent));
- }
-
- g_object_unref(result);
- g_main_loop_quit(loop);
- }
-}
-
-static void
-test_webkit_hit_test_result(HitTestResultFixture* fixture, gconstpointer data)
-{
- TestInfo* info = (TestInfo*)data;
- GtkAllocation allocation = { 0, 0, 50, 50 };
-
- webkit_web_view_load_string(fixture->webView,
- info->data,
- "text/html",
- "utf-8",
- "file://");
- gtk_widget_size_allocate(GTK_WIDGET(fixture->webView), &allocation);
- g_signal_connect(fixture->webView, "notify::load-status", G_CALLBACK(load_status_cb), info);
- g_main_loop_run(loop);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
-
- g_test_add("/webkit/hittestresult/document", HitTestResultFixture,
- test_info_new("<html><body><h1>WebKitGTK+!</h1></body></html>",
- WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT),
- hit_test_result_fixture_setup, test_webkit_hit_test_result, hit_test_result_fixture_teardown);
- /* We hardcode all elements to be at 0,0 so that we know where to
- * generate the button events */
- g_test_add("/webkit/hittestresult/image", HitTestResultFixture,
- test_info_new("<html><body><img style='position:absolute; left:0; top:0'src='0xdeadbeef' width=50 height=50></img></body></html>",
- WEBKIT_HIT_TEST_RESULT_CONTEXT_IMAGE),
- hit_test_result_fixture_setup, test_webkit_hit_test_result, hit_test_result_fixture_teardown);
- g_test_add("/webkit/hittestresult/editable", HitTestResultFixture,
- test_info_new("<html><body><input style='position:absolute; left:0; top:0' size='35'></input>></body></html>",
- WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE),
- hit_test_result_fixture_setup, test_webkit_hit_test_result, hit_test_result_fixture_teardown);
- g_test_add("/webkit/hittestresult/link", HitTestResultFixture,
- test_info_new("<html><body><a style='position:absolute; left:0; top:0' href='http://www.example.com'>HELLO WORLD</a></body></html>",
- WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK),
- hit_test_result_fixture_setup, test_webkit_hit_test_result, hit_test_result_fixture_teardown);
-
- return g_test_run ();
-}
-
diff --git a/Source/WebKit/gtk/tests/testhttpbackend.c b/Source/WebKit/gtk/tests/testhttpbackend.c
deleted file mode 100644
index d50be96c2..000000000
--- a/Source/WebKit/gtk/tests/testhttpbackend.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 2009 Gustavo Noronha Silva
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <unistd.h>
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-// Not yet public API
-SoupMessage* webkit_network_request_get_message(WebKitNetworkRequest* request);
-
-static gboolean navigation_policy_decision_requested_cb(WebKitWebView* web_view,
- WebKitWebFrame* web_frame,
- WebKitNetworkRequest* request,
- WebKitWebNavigationAction* action,
- WebKitWebPolicyDecision* decision,
- gpointer data)
-{
- SoupMessage* message = webkit_network_request_get_message(request);
-
- /* 1 -> webkit_network_request_with_core_request
- *
- * The SoupMessage is created exclusively for the emission of this
- * signal.
- */
- g_assert_cmpint(G_OBJECT(message)->ref_count, ==, 1);
-
- return FALSE;
-}
-
-static void test_soup_message_lifetime()
-{
- WebKitWebView* web_view = WEBKIT_WEB_VIEW(webkit_web_view_new());
-
- g_object_ref_sink(web_view);
-
- g_signal_connect(web_view, "navigation-policy-decision-requested",
- G_CALLBACK(navigation_policy_decision_requested_cb),
- NULL);
-
- /* load_uri will trigger the navigation-policy-decision-requested
- * signal emission;
- */
- webkit_web_view_load_uri(web_view, "http://127.0.0.1/");
-
- g_object_unref(web_view);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/soupmessage/lifetime", test_soup_message_lifetime);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testkeyevents.c b/Source/WebKit/gtk/tests/testkeyevents.c
deleted file mode 100644
index ad8e398cb..000000000
--- a/Source/WebKit/gtk/tests/testkeyevents.c
+++ /dev/null
@@ -1,390 +0,0 @@
-/*
- * Copyright (C) 2009, 2010 Martin Robinson <mrobinson@webkit.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2,1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <unistd.h>
-#include <string.h>
-#include <glib/gstdio.h>
-#include <webkit/webkit.h>
-#include <JavaScriptCore/JSStringRef.h>
-#include <JavaScriptCore/JSContextRef.h>
-
-typedef struct {
- char* page;
- char* text;
- gboolean shouldBeHandled;
-} TestInfo;
-
-typedef struct {
- GtkWidget* window;
- WebKitWebView* webView;
- GMainLoop* loop;
- TestInfo* info;
-} KeyEventFixture;
-
-TestInfo*
-test_info_new(const char* page, gboolean shouldBeHandled)
-{
- TestInfo* info;
-
- info = g_slice_new(TestInfo);
- info->page = g_strdup(page);
- info->shouldBeHandled = shouldBeHandled;
- info->text = 0;
-
- return info;
-}
-
-void
-test_info_destroy(TestInfo* info)
-{
- g_free(info->page);
- g_free(info->text);
- g_slice_free(TestInfo, info);
-}
-
-static void key_event_fixture_setup(KeyEventFixture* fixture, gconstpointer data)
-{
- fixture->loop = g_main_loop_new(NULL, TRUE);
-
- fixture->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- fixture->webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
-
- gtk_container_add(GTK_CONTAINER(fixture->window), GTK_WIDGET(fixture->webView));
-}
-
-static void key_event_fixture_teardown(KeyEventFixture* fixture, gconstpointer data)
-{
- gtk_widget_destroy(fixture->window);
- g_main_loop_unref(fixture->loop);
- test_info_destroy(fixture->info);
-}
-
-static gboolean key_press_event_cb(WebKitWebView* webView, GdkEvent* event, gpointer data)
-{
- KeyEventFixture* fixture = (KeyEventFixture*)data;
- gboolean handled = GTK_WIDGET_GET_CLASS(fixture->webView)->key_press_event(GTK_WIDGET(fixture->webView), &event->key);
- g_assert_cmpint(handled, ==, fixture->info->shouldBeHandled);
-
- return FALSE;
-}
-
-static gboolean key_release_event_cb(WebKitWebView* webView, GdkEvent* event, gpointer data)
-{
- // WebCore never seems to mark keyup events as handled.
- KeyEventFixture* fixture = (KeyEventFixture*)data;
- gboolean handled = GTK_WIDGET_GET_CLASS(fixture->webView)->key_press_event(GTK_WIDGET(fixture->webView), &event->key);
- g_assert(!handled);
-
- g_main_loop_quit(fixture->loop);
-
- return FALSE;
-}
-
-static void test_keypress_events_load_status_cb(WebKitWebView* webView, GParamSpec* spec, gpointer data)
-{
- KeyEventFixture* fixture = (KeyEventFixture*)data;
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
- if (status == WEBKIT_LOAD_FINISHED) {
- g_signal_connect(fixture->webView, "key-press-event",
- G_CALLBACK(key_press_event_cb), fixture);
- g_signal_connect(fixture->webView, "key-release-event",
- G_CALLBACK(key_release_event_cb), fixture);
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('a'), 0))
- g_assert_not_reached();
- }
-
-}
-
-gboolean map_event_cb(GtkWidget *widget, GdkEvent* event, gpointer data)
-{
- KeyEventFixture* fixture = (KeyEventFixture*)data;
- webkit_web_view_load_string(fixture->webView, fixture->info->page,
- "text/html", "utf-8", "file://");
- return FALSE;
-}
-
-static void setup_keyevent_test(KeyEventFixture* fixture, gconstpointer data, GCallback load_event_callback)
-{
- fixture->info = (TestInfo*)data;
- g_signal_connect(fixture->window, "map-event",
- G_CALLBACK(map_event_cb), fixture);
-
- gtk_widget_grab_focus(GTK_WIDGET(fixture->webView));
- gtk_widget_show(fixture->window);
- gtk_widget_show(GTK_WIDGET(fixture->webView));
- gtk_window_present(GTK_WINDOW(fixture->window));
-
- g_signal_connect(fixture->webView, "notify::load-status",
- load_event_callback, fixture);
-
- g_main_loop_run(fixture->loop);
-}
-
-static void test_keypress_events(KeyEventFixture* fixture, gconstpointer data)
-{
- setup_keyevent_test(fixture, data, G_CALLBACK(test_keypress_events_load_status_cb));
-}
-
-static gboolean element_text_equal_to(JSContextRef context, const gchar* text)
-{
- JSStringRef scriptString = JSStringCreateWithUTF8CString(
- "window.document.getElementById(\"in\").value;");
- JSValueRef value = JSEvaluateScript(context, scriptString, 0, 0, 0, 0);
- JSStringRelease(scriptString);
-
- // If the value isn't a string, the element is probably a div
- // so grab the innerText instead.
- if (!JSValueIsString(context, value)) {
- JSStringRef scriptString = JSStringCreateWithUTF8CString(
- "window.document.getElementById(\"in\").innerText;");
- value = JSEvaluateScript(context, scriptString, 0, 0, 0, 0);
- JSStringRelease(scriptString);
- }
-
- g_assert(JSValueIsString(context, value));
- JSStringRef inputString = JSValueToStringCopy(context, value, 0);
- g_assert(inputString);
-
- gint size = JSStringGetMaximumUTF8CStringSize(inputString);
- gchar* cString = g_malloc(size);
- JSStringGetUTF8CString(inputString, cString, size);
- JSStringRelease(inputString);
-
- gboolean result = g_utf8_collate(cString, text) == 0;
- g_free(cString);
- return result;
-}
-
-static void test_ime_load_status_cb(WebKitWebView* webView, GParamSpec* spec, gpointer data)
-{
- KeyEventFixture* fixture = (KeyEventFixture*)data;
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
- if (status != WEBKIT_LOAD_FINISHED)
- return;
-
- JSGlobalContextRef context = webkit_web_frame_get_global_context(
- webkit_web_view_get_main_frame(webView));
- g_assert(context);
-
- GtkIMContext* imContext = 0;
- g_object_get(webView, "im-context", &imContext, NULL);
- g_assert(imContext);
-
- // Test that commits that happen outside of key events
- // change the text field immediately. This closely replicates
- // the behavior of SCIM.
- g_assert(element_text_equal_to(context, ""));
- g_signal_emit_by_name(imContext, "commit", "a");
- g_assert(element_text_equal_to(context, "a"));
- g_signal_emit_by_name(imContext, "commit", "b");
- g_assert(element_text_equal_to(context, "ab"));
- g_signal_emit_by_name(imContext, "commit", "c");
- g_assert(element_text_equal_to(context, "abc"));
-
- g_object_unref(imContext);
- g_main_loop_quit(fixture->loop);
-}
-
-static void test_ime(KeyEventFixture* fixture, gconstpointer data)
-{
- setup_keyevent_test(fixture, data, G_CALLBACK(test_ime_load_status_cb));
-}
-
-static gboolean verify_contents(gpointer data)
-{
- KeyEventFixture* fixture = (KeyEventFixture*)data;
- JSGlobalContextRef context = webkit_web_frame_get_global_context(
- webkit_web_view_get_main_frame(fixture->webView));
- g_assert(context);
-
- g_assert(element_text_equal_to(context, fixture->info->text));
- g_main_loop_quit(fixture->loop);
- return FALSE;
-}
-
-static void test_blocking_load_status_cb(WebKitWebView* webView, GParamSpec* spec, gpointer data)
-{
- KeyEventFixture* fixture = (KeyEventFixture*)data;
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
- if (status != WEBKIT_LOAD_FINISHED)
- return;
-
- // The first keypress event should not modify the field.
- fixture->info->text = g_strdup("bc");
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('a'), 0))
- g_assert_not_reached();
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('b'), 0))
- g_assert_not_reached();
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('c'), 0))
- g_assert_not_reached();
-
- g_idle_add(verify_contents, fixture);
-}
-
-static void test_blocking(KeyEventFixture* fixture, gconstpointer data)
-{
- setup_keyevent_test(fixture, data, G_CALLBACK(test_blocking_load_status_cb));
-}
-
-#if defined(GDK_WINDOWING_X11)
-static void test_xim_load_status_cb(WebKitWebView* webView, GParamSpec* spec, gpointer data)
-{
- KeyEventFixture* fixture = (KeyEventFixture*)data;
- WebKitLoadStatus status = webkit_web_view_get_load_status(webView);
- if (status != WEBKIT_LOAD_FINISHED)
- return;
-
- GtkIMContext* imContext = 0;
- g_object_get(webView, "im-context", &imContext, NULL);
- g_assert(imContext);
-
- gchar* originalId = g_strdup(gtk_im_multicontext_get_context_id(GTK_IM_MULTICONTEXT(imContext)));
- gtk_im_multicontext_set_context_id(GTK_IM_MULTICONTEXT(imContext), "xim");
-
- // Test that commits that happen outside of key events
- // change the text field immediately. This closely replicates
- // the behavior of SCIM.
- fixture->info->text = g_strdup("debian");
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('d'), 0))
- g_assert_not_reached();
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('e'), 0))
- g_assert_not_reached();
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('b'), 0))
- g_assert_not_reached();
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('i'), 0))
- g_assert_not_reached();
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('a'), 0))
- g_assert_not_reached();
- if (!gtk_test_widget_send_key(GTK_WIDGET(fixture->webView),
- gdk_unicode_to_keyval('n'), 0))
- g_assert_not_reached();
-
- gtk_im_multicontext_set_context_id(GTK_IM_MULTICONTEXT(imContext), originalId);
- g_free(originalId);
- g_object_unref(imContext);
-
- g_idle_add(verify_contents, fixture);
-}
-
-static void test_xim(KeyEventFixture* fixture, gconstpointer data)
-{
- setup_keyevent_test(fixture, data, G_CALLBACK(test_xim_load_status_cb));
-}
-#endif
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
-
-
- // We'll test input on a slew of different node types. Key events to
- // text inputs and editable divs should be marked as handled. Key events
- // to buttons and links should not.
- const char* textinput_html = "<html><body><input id=\"in\" type=\"text\">"
- "<script>document.getElementById('in').focus();</script></body></html>";
- const char* button_html = "<html><body><input id=\"in\" type=\"button\">"
- "<script>document.getElementById('in').focus();</script></body></html>";
- const char* link_html = "<html><body><a href=\"http://www.gnome.org\" id=\"in\">"
- "LINKY MCLINKERSON</a><script>document.getElementById('in').focus();</script>"
- "</body></html>";
- const char* div_html = "<html><body><div id=\"in\" contenteditable=\"true\">"
- "<script>document.getElementById('in').focus();</script></body></html>";
-
- // These are similar to the blocks above, but they should block the first
- // keypress modifying the editable node.
- const char* textinput_html_blocking = "<html><body>"
- "<input id=\"in\" type=\"text\" "
- "onkeypress=\"if (first) {event.preventDefault();first=false;}\">"
- "<script>first = true;\ndocument.getElementById('in').focus();</script>\n"
- "</script></body></html>";
- const char* div_html_blocking = "<html><body>"
- "<div id=\"in\" contenteditable=\"true\" "
- "onkeypress=\"if (first) {event.preventDefault();first=false;}\">"
- "<script>first = true; document.getElementById('in').focus();</script>\n"
- "</script></body></html>";
-
- g_test_add("/webkit/keyevents/event-textinput", KeyEventFixture,
- test_info_new(textinput_html, TRUE),
- key_event_fixture_setup,
- test_keypress_events,
- key_event_fixture_teardown);
- g_test_add("/webkit/keyevents/event-buttons", KeyEventFixture,
- test_info_new(button_html, FALSE),
- key_event_fixture_setup,
- test_keypress_events,
- key_event_fixture_teardown);
- g_test_add("/webkit/keyevents/event-link", KeyEventFixture,
- test_info_new(link_html, FALSE),
- key_event_fixture_setup,
- test_keypress_events,
- key_event_fixture_teardown);
- g_test_add("/webkit/keyevent/event-div", KeyEventFixture,
- test_info_new(div_html, TRUE),
- key_event_fixture_setup,
- test_keypress_events,
- key_event_fixture_teardown);
- g_test_add("/webkit/keyevent/ime-textinput", KeyEventFixture,
- test_info_new(textinput_html, TRUE),
- key_event_fixture_setup,
- test_ime,
- key_event_fixture_teardown);
- g_test_add("/webkit/keyevent/ime-div", KeyEventFixture,
- test_info_new(div_html, TRUE),
- key_event_fixture_setup,
- test_ime,
- key_event_fixture_teardown);
- g_test_add("/webkit/keyevent/block-textinput", KeyEventFixture,
- test_info_new(textinput_html_blocking, TRUE),
- key_event_fixture_setup,
- test_blocking,
- key_event_fixture_teardown);
- g_test_add("/webkit/keyevent/block-div", KeyEventFixture,
- test_info_new(div_html_blocking, TRUE),
- key_event_fixture_setup,
- test_blocking,
- key_event_fixture_teardown);
-#if defined(GDK_WINDOWING_X11)
- g_test_add("/webkit/keyevent/xim-textinput", KeyEventFixture,
- test_info_new(textinput_html, TRUE),
- key_event_fixture_setup,
- test_xim,
- key_event_fixture_teardown);
- g_test_add("/webkit/keyevent/xim-div", KeyEventFixture,
- test_info_new(div_html, TRUE),
- key_event_fixture_setup,
- test_xim,
- key_event_fixture_teardown);
-#endif
-
- return g_test_run();
-}
-
diff --git a/Source/WebKit/gtk/tests/testloading.c b/Source/WebKit/gtk/tests/testloading.c
deleted file mode 100644
index 7949951f7..000000000
--- a/Source/WebKit/gtk/tests/testloading.c
+++ /dev/null
@@ -1,435 +0,0 @@
-/*
- * Copyright (C) 2009, 2010 Gustavo Noronha Silva
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <gtk/gtk.h>
-#include <libsoup/soup.h>
-#include <string.h>
-#include <webkit/webkit.h>
-
-/* This string has to be rather big because of the cancelled test - it
- * looks like soup refuses to send or receive a too small chunk */
-#define HTML_STRING "<html><body>Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!Testing!</body></html>"
-
-SoupURI* base_uri;
-
-/* For real request testing */
-static void
-server_callback(SoupServer* server, SoupMessage* msg,
- const char* path, GHashTable* query,
- SoupClientContext* context, gpointer data)
-{
- if (msg->method != SOUP_METHOD_GET) {
- soup_message_set_status(msg, SOUP_STATUS_NOT_IMPLEMENTED);
- return;
- }
-
- soup_message_set_status(msg, SOUP_STATUS_OK);
-
- if (g_str_equal(path, "/test_loading_status") || g_str_equal(path, "/test_loading_status2"))
- soup_message_body_append(msg->response_body, SOUP_MEMORY_STATIC, HTML_STRING, strlen(HTML_STRING));
- else if (g_str_equal(path, "/test_load_error")) {
- soup_message_set_status(msg, SOUP_STATUS_CANT_CONNECT);
- } else if (g_str_equal(path, "/test_loading_cancelled")) {
- soup_message_headers_set_encoding(msg->response_headers, SOUP_ENCODING_CHUNKED);
- soup_message_body_append(msg->response_body, SOUP_MEMORY_STATIC, HTML_STRING, strlen(HTML_STRING));
- soup_server_unpause_message(server, msg);
- return;
- }
-
- soup_message_body_complete(msg->response_body);
-}
-
-typedef struct {
- WebKitWebView* webView;
- GMainLoop *loop;
- gboolean has_been_provisional;
- gboolean has_been_committed;
- gboolean has_been_first_visually_non_empty_layout;
- gboolean has_been_finished;
- gboolean has_been_failed;
- gboolean has_been_load_error;
-} WebLoadingFixture;
-
-static void web_loading_fixture_setup(WebLoadingFixture* fixture, gconstpointer data)
-{
- fixture->webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- fixture->loop = g_main_loop_new(NULL, TRUE);
- g_object_ref_sink(fixture->webView);
- fixture->has_been_provisional = FALSE;
- fixture->has_been_committed = FALSE;
- fixture->has_been_first_visually_non_empty_layout = FALSE;
- fixture->has_been_finished = FALSE;
- fixture->has_been_failed = FALSE;
- fixture->has_been_load_error = FALSE;
-}
-
-static void web_loading_fixture_teardown(WebLoadingFixture* fixture, gconstpointer data)
-{
- g_object_unref(fixture->webView);
- g_main_loop_unref(fixture->loop);
-}
-
-static char* get_uri_for_path(const char* path)
-{
- SoupURI* uri;
- char* uri_string;
-
- uri = soup_uri_new_with_base(base_uri, path);
- uri_string = soup_uri_to_string(uri, FALSE);
- soup_uri_free (uri);
-
- return uri_string;
-}
-
-static void load_finished_cb(WebKitWebView* web_view, WebKitWebFrame* web_frame, WebLoadingFixture* fixture)
-{
- g_assert(fixture->has_been_provisional);
- g_assert(fixture->has_been_committed);
- g_assert(fixture->has_been_first_visually_non_empty_layout);
-
- g_main_loop_quit(fixture->loop);
-}
-
-
-static void status_changed_cb(GObject* object, GParamSpec* pspec, WebLoadingFixture* fixture)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(WEBKIT_WEB_VIEW(object));
-
- switch (status) {
- case WEBKIT_LOAD_PROVISIONAL:
- g_assert(!fixture->has_been_provisional);
- g_assert(!fixture->has_been_committed);
- g_assert(!fixture->has_been_first_visually_non_empty_layout);
- fixture->has_been_provisional = TRUE;
- break;
- case WEBKIT_LOAD_COMMITTED:
- g_assert(fixture->has_been_provisional);
- g_assert(!fixture->has_been_committed);
- g_assert(!fixture->has_been_first_visually_non_empty_layout);
- fixture->has_been_committed = TRUE;
- break;
- case WEBKIT_LOAD_FIRST_VISUALLY_NON_EMPTY_LAYOUT:
- g_assert(fixture->has_been_provisional);
- g_assert(fixture->has_been_committed);
- g_assert(!fixture->has_been_first_visually_non_empty_layout);
- fixture->has_been_first_visually_non_empty_layout = TRUE;
- break;
- case WEBKIT_LOAD_FINISHED:
- g_assert(fixture->has_been_provisional);
- g_assert(fixture->has_been_committed);
- g_assert(fixture->has_been_first_visually_non_empty_layout);
- break;
- default:
- g_assert_not_reached();
- }
-}
-
-static void test_loading_status(WebLoadingFixture* fixture, gconstpointer data)
-{
- char* uri_string;
-
- g_assert_cmpint(webkit_web_view_get_load_status(fixture->webView), ==, WEBKIT_LOAD_PROVISIONAL);
-
- g_object_connect(G_OBJECT(fixture->webView),
- "signal::notify::load-status", G_CALLBACK(status_changed_cb), fixture,
- "signal::load-finished", G_CALLBACK(load_finished_cb), fixture,
- NULL);
-
- uri_string = get_uri_for_path("/test_loading_status");
-
- /* load_uri will trigger the navigation-policy-decision-requested
- * signal emission;
- */
- webkit_web_view_load_uri(fixture->webView, uri_string);
- g_free(uri_string);
-
- g_main_loop_run(fixture->loop);
-}
-
-static void load_error_status_changed_cb(GObject* object, GParamSpec* pspec, WebLoadingFixture* fixture)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(WEBKIT_WEB_VIEW(object));
-
- switch(status) {
- case WEBKIT_LOAD_PROVISIONAL:
- g_assert(!fixture->has_been_provisional);
- fixture->has_been_provisional = TRUE;
- break;
- case WEBKIT_LOAD_COMMITTED:
- g_assert(!fixture->has_been_committed);
- fixture->has_been_committed = TRUE;
- break;
- case WEBKIT_LOAD_FINISHED:
- g_assert(fixture->has_been_provisional);
- g_assert(fixture->has_been_load_error);
- g_assert(fixture->has_been_failed);
- g_assert(!fixture->has_been_finished);
- fixture->has_been_finished = TRUE;
- break;
- case WEBKIT_LOAD_FAILED:
- g_assert(!fixture->has_been_failed);
- fixture->has_been_failed = TRUE;
- g_main_loop_quit(fixture->loop);
- break;
- default:
- break;
- }
-}
-
-static gboolean load_error_cb(WebKitWebView* webView, WebKitWebFrame* frame, const char* uri, GError *error, WebLoadingFixture* fixture)
-{
- g_assert(fixture->has_been_provisional);
- g_assert(!fixture->has_been_load_error);
- fixture->has_been_load_error = TRUE;
-
- return FALSE;
-}
-
-static void test_loading_error(WebLoadingFixture* fixture, gconstpointer data)
-{
- char* uri_string;
-
- g_test_bug("28842");
-
- g_signal_connect(fixture->webView, "load-error", G_CALLBACK(load_error_cb), fixture);
- g_signal_connect(fixture->webView, "notify::load-status", G_CALLBACK(load_error_status_changed_cb), fixture);
-
- uri_string = get_uri_for_path("/test_load_error");
- webkit_web_view_load_uri(fixture->webView, uri_string);
- g_free(uri_string);
-
- g_main_loop_run(fixture->loop);
-
- g_assert(fixture->has_been_provisional);
- g_assert(!fixture->has_been_committed);
- g_assert(fixture->has_been_load_error);
- g_assert(fixture->has_been_failed);
- g_assert(!fixture->has_been_finished);
-}
-
-/* Cancelled load */
-
-static gboolean load_cancelled_cb(WebKitWebView* webView, WebKitWebFrame* frame, const char* uri, GError *error, WebLoadingFixture* fixture)
-{
- g_assert(fixture->has_been_provisional);
- g_assert(fixture->has_been_failed);
- g_assert(!fixture->has_been_load_error);
- g_assert(error->code == WEBKIT_NETWORK_ERROR_CANCELLED);
- fixture->has_been_load_error = TRUE;
-
- return TRUE;
-}
-
-static gboolean stop_load (gpointer data)
-{
- webkit_web_view_stop_loading(WEBKIT_WEB_VIEW(data));
- return FALSE;
-}
-
-static void load_cancelled_status_changed_cb(GObject* object, GParamSpec* pspec, WebLoadingFixture* fixture)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(WEBKIT_WEB_VIEW(object));
-
- switch(status) {
- case WEBKIT_LOAD_PROVISIONAL:
- g_assert(!fixture->has_been_provisional);
- g_assert(!fixture->has_been_failed);
- fixture->has_been_provisional = TRUE;
- break;
- case WEBKIT_LOAD_COMMITTED:
- g_idle_add (stop_load, object);
- break;
- case WEBKIT_LOAD_FAILED:
- g_assert(fixture->has_been_provisional);
- g_assert(!fixture->has_been_failed);
- g_assert(!fixture->has_been_load_error);
- fixture->has_been_failed = TRUE;
- g_main_loop_quit(fixture->loop);
- break;
- case WEBKIT_LOAD_FINISHED:
- g_assert_not_reached();
- break;
- default:
- break;
- }
-}
-
-static void test_loading_cancelled(WebLoadingFixture* fixture, gconstpointer data)
-{
- char* uri_string;
-
- g_test_bug("29644");
-
- g_signal_connect(fixture->webView, "load-error", G_CALLBACK(load_cancelled_cb), fixture);
- g_signal_connect(fixture->webView, "notify::load-status", G_CALLBACK(load_cancelled_status_changed_cb), fixture);
-
- uri_string = get_uri_for_path("/test_loading_cancelled");
- webkit_web_view_load_uri(fixture->webView, uri_string);
- g_free(uri_string);
-
- g_main_loop_run(fixture->loop);
-}
-
-static void load_goback_status_changed_cb(GObject* object, GParamSpec* pspec, WebLoadingFixture* fixture)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(WEBKIT_WEB_VIEW(object));
-
- switch(status) {
- case WEBKIT_LOAD_PROVISIONAL:
- g_assert(!fixture->has_been_provisional);
- fixture->has_been_provisional = TRUE;
- break;
- case WEBKIT_LOAD_COMMITTED:
- g_assert(fixture->has_been_provisional);
- fixture->has_been_committed = TRUE;
- break;
- case WEBKIT_LOAD_FAILED:
- g_assert_not_reached();
- break;
- case WEBKIT_LOAD_FINISHED:
- g_assert(fixture->has_been_provisional);
- g_assert(fixture->has_been_committed);
- fixture->has_been_finished = TRUE;
- g_main_loop_quit(fixture->loop);
- break;
- default:
- break;
- }
-}
-
-static void load_wentback_status_changed_cb(GObject* object, GParamSpec* pspec, WebLoadingFixture* fixture)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status(WEBKIT_WEB_VIEW(object));
- char* uri_string;
- char* uri_string2;
-
- uri_string = get_uri_for_path("/test_loading_status");
- uri_string2 = get_uri_for_path("/test_loading_status2");
-
- switch(status) {
- case WEBKIT_LOAD_PROVISIONAL:
- g_assert_cmpstr(webkit_web_view_get_uri(fixture->webView), ==, uri_string2);
- break;
- case WEBKIT_LOAD_COMMITTED:
- g_assert_cmpstr(webkit_web_view_get_uri(fixture->webView), ==, uri_string);
- break;
- case WEBKIT_LOAD_FAILED:
- g_assert_not_reached();
- break;
- case WEBKIT_LOAD_FINISHED:
- g_assert_cmpstr(webkit_web_view_get_uri(fixture->webView), ==, uri_string);
- g_main_loop_quit(fixture->loop);
- break;
- default:
- break;
- }
-
- g_free(uri_string);
- g_free(uri_string2);
-}
-
-static void load_error_test(WebKitWebView* webview, WebKitWebFrame* frame, const char* uri, GError* error)
-{
- g_debug("Error: %s", error->message);
-}
-
-static void test_loading_goback(WebLoadingFixture* fixture, gconstpointer data)
-{
- char* uri_string;
-
- g_signal_connect(fixture->webView, "notify::load-status", G_CALLBACK(load_goback_status_changed_cb), fixture);
-
- g_signal_connect(fixture->webView, "load-error", G_CALLBACK(load_error_test), fixture);
-
- uri_string = get_uri_for_path("/test_loading_status");
- webkit_web_view_load_uri(fixture->webView, uri_string);
- g_free(uri_string);
-
- g_main_loop_run(fixture->loop);
-
- fixture->has_been_provisional = FALSE;
- fixture->has_been_committed = FALSE;
- fixture->has_been_first_visually_non_empty_layout = FALSE;
- fixture->has_been_finished = FALSE;
- fixture->has_been_failed = FALSE;
- fixture->has_been_load_error = FALSE;
-
- uri_string = get_uri_for_path("/test_loading_status2");
- webkit_web_view_load_uri(fixture->webView, uri_string);
- g_free(uri_string);
-
- g_main_loop_run(fixture->loop);
-
- g_signal_handlers_disconnect_by_func(fixture->webView, load_goback_status_changed_cb, fixture);
-
- fixture->has_been_provisional = FALSE;
- fixture->has_been_committed = FALSE;
- fixture->has_been_first_visually_non_empty_layout = FALSE;
- fixture->has_been_finished = FALSE;
- fixture->has_been_failed = FALSE;
- fixture->has_been_load_error = FALSE;
-
- g_signal_connect(fixture->webView, "notify::load-status", G_CALLBACK(load_wentback_status_changed_cb), fixture);
- webkit_web_view_go_back(fixture->webView);
-
- g_main_loop_run(fixture->loop);
-
- g_signal_handlers_disconnect_by_func(fixture->webView, load_wentback_status_changed_cb, fixture);
-}
-
-int main(int argc, char** argv)
-{
- SoupServer* server;
-
- gtk_test_init(&argc, &argv, NULL);
-
- server = soup_server_new(SOUP_SERVER_PORT, 0, NULL);
- soup_server_run_async(server);
-
- soup_server_add_handler(server, NULL, server_callback, NULL, NULL);
-
- base_uri = soup_uri_new("http://127.0.0.1/");
- soup_uri_set_port(base_uri, soup_server_get_port(server));
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add("/webkit/loading/status",
- WebLoadingFixture, NULL,
- web_loading_fixture_setup,
- test_loading_status,
- web_loading_fixture_teardown);
- g_test_add("/webkit/loading/error",
- WebLoadingFixture, NULL,
- web_loading_fixture_setup,
- test_loading_error,
- web_loading_fixture_teardown);
- g_test_add("/webkit/loading/cancelled",
- WebLoadingFixture, NULL,
- web_loading_fixture_setup,
- test_loading_cancelled,
- web_loading_fixture_teardown);
- g_test_add("/webkit/loading/goback",
- WebLoadingFixture, NULL,
- web_loading_fixture_setup,
- test_loading_goback,
- web_loading_fixture_teardown);
- return g_test_run();
-}
-
diff --git a/Source/WebKit/gtk/tests/testmimehandling.c b/Source/WebKit/gtk/tests/testmimehandling.c
deleted file mode 100644
index ffaa7032d..000000000
--- a/Source/WebKit/gtk/tests/testmimehandling.c
+++ /dev/null
@@ -1,203 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael Alonzo
- * Copyright (C) 2009 Gustavo Noronha Silva
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include "test_utils.h"
-
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <libsoup/soup.h>
-#include <string.h>
-#include <webkit/webkit.h>
-#include <unistd.h>
-
-GMainLoop* loop;
-SoupSession *session;
-char* base_uri;
-
-/* For real request testing */
-static void
-server_callback(SoupServer *server, SoupMessage *msg,
- const char *path, GHashTable *query,
- SoupClientContext *context, gpointer data)
-{
- if (msg->method != SOUP_METHOD_GET) {
- soup_message_set_status(msg, SOUP_STATUS_NOT_IMPLEMENTED);
- return;
- }
-
- soup_message_set_status(msg, SOUP_STATUS_OK);
-
- /* PDF */
- if (g_str_equal(path, "/pdf")) {
- char* contents;
- gsize length;
- GError* error = NULL;
-
- g_file_get_contents("test.pdf", &contents, &length, &error);
- g_assert(!error);
-
- soup_message_body_append(msg->response_body, SOUP_MEMORY_TAKE, contents, length);
- } else if (g_str_equal(path, "/html")) {
- char* contents;
- gsize length;
- GError* error = NULL;
-
- g_file_get_contents("test.html", &contents, &length, &error);
- g_assert(!error);
-
- soup_message_body_append(msg->response_body, SOUP_MEMORY_TAKE, contents, length);
- } else if (g_str_equal(path, "/text")) {
- char* contents;
- gsize length;
- GError* error = NULL;
-
- soup_message_headers_append(msg->response_headers, "Content-Disposition", "attachment; filename=test.txt");
-
- g_file_get_contents("test.txt", &contents, &length, &error);
- g_assert(!error);
-
- soup_message_body_append(msg->response_body, SOUP_MEMORY_TAKE, contents, length);
- }
-
- soup_message_body_complete(msg->response_body);
-}
-
-static void idle_quit_loop_cb(WebKitWebView* web_view, GParamSpec* pspec, gpointer data)
-{
- if (webkit_web_view_get_load_status(web_view) == WEBKIT_LOAD_FINISHED ||
- webkit_web_view_get_load_status(web_view) == WEBKIT_LOAD_FAILED)
- g_main_loop_quit(loop);
-}
-
-static gboolean mime_type_policy_decision_requested_cb(WebKitWebView* view, WebKitWebFrame* frame,
- WebKitNetworkRequest* request, const char* mime_type,
- WebKitWebPolicyDecision* decision, gpointer data)
-{
- char* type = (char*)data;
-
- if (g_str_equal(type, "pdf")) {
- g_assert_cmpstr(mime_type, ==, "application/pdf");
- g_assert(!webkit_web_view_can_show_mime_type(view, mime_type));
- } else if (g_str_equal(type, "html")) {
- g_assert_cmpstr(mime_type, ==, "text/html");
- g_assert(webkit_web_view_can_show_mime_type(view, mime_type));
- } else if (g_str_equal(type, "text")) {
- WebKitNetworkResponse* response = webkit_web_frame_get_network_response(frame);
- SoupMessage* message = webkit_network_response_get_message(response);
- char* disposition;
-
- g_assert(message);
- soup_message_headers_get_content_disposition(message->response_headers,
- &disposition, NULL);
- g_object_unref(response);
-
- g_assert_cmpstr(disposition, ==, "attachment");
- g_free(disposition);
-
- g_assert_cmpstr(mime_type, ==, "text/plain");
- g_assert(webkit_web_view_can_show_mime_type(view, mime_type));
- }
-
- g_free(type);
-
- return FALSE;
-}
-
-static void testRemoteMimeType(const void* data)
-{
- const char* name = (const char*) data;
- WebKitWebView* view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(G_OBJECT(view));
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_object_connect(G_OBJECT(view),
- "signal::notify::load-status", idle_quit_loop_cb, NULL,
- "signal::mime-type-policy-decision-requested", mime_type_policy_decision_requested_cb, g_strdup(name),
- NULL);
-
- char* effective_uri = g_strdup_printf("%s%s", base_uri, name);
- webkit_web_view_load_uri(view, effective_uri);
- g_free(effective_uri);
-
- g_main_loop_run(loop);
-
- g_object_unref(view);
-}
-
-static void testLocalMimeType(const void* data)
-{
- const char* typeName = (const char*) data;
- WebKitWebView* view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(G_OBJECT(view));
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_object_connect(G_OBJECT(view),
- "signal::notify::load-status", idle_quit_loop_cb, NULL,
- "signal::mime-type-policy-decision-requested", mime_type_policy_decision_requested_cb, g_strdup(typeName),
- NULL);
-
- gchar* filename = g_strdup_printf("test.%s", typeName);
- GFile* file = g_file_new_for_path(filename);
- g_free(filename);
-
- gchar* fileURI = g_file_get_uri(file);
- g_object_unref(file);
-
- webkit_web_view_load_uri(view, fileURI);
- g_free(fileURI);
-
- g_main_loop_run(loop);
- g_object_unref(view);
-}
-
-int main(int argc, char** argv)
-{
- SoupServer* server;
- SoupURI* soup_uri;
-
- gtk_test_init(&argc, &argv, NULL);
-
- /* Hopefully make test independent of the path it's called from. */
- testutils_relative_chdir("Source/WebKit/gtk/tests/resources/test.html", argv[0]);
-
- server = soup_server_new(SOUP_SERVER_PORT, 0, NULL);
- soup_server_run_async(server);
-
- soup_server_add_handler(server, NULL, server_callback, NULL, NULL);
-
- soup_uri = soup_uri_new("http://127.0.0.1/");
- soup_uri_set_port(soup_uri, soup_server_get_port(server));
-
- base_uri = soup_uri_to_string(soup_uri, FALSE);
- soup_uri_free(soup_uri);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_data_func("/webkit/mime/remote-PDF", "pdf", testRemoteMimeType);
- g_test_add_data_func("/webkit/mime/remote-HTML", "html", testRemoteMimeType);
- g_test_add_data_func("/webkit/mime/remote-TEXT", "text", testRemoteMimeType);
- g_test_add_data_func("/webkit/mime/local-PDF", "pdf", testLocalMimeType);
- g_test_add_data_func("/webkit/mime/local-HTML", "html", testLocalMimeType);
- g_test_add_data_func("/webkit/mime/local-TEXT", "text", testLocalMimeType);
-
- return g_test_run();
-}
diff --git a/Source/WebKit/gtk/tests/testnetworkrequest.c b/Source/WebKit/gtk/tests/testnetworkrequest.c
deleted file mode 100644
index 2af471af9..000000000
--- a/Source/WebKit/gtk/tests/testnetworkrequest.c
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Copyright (C) 2009 Gustavo Noronha Silva
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <unistd.h>
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <stdlib.h>
-#include <webkit/webkit.h>
-
-static void test_network_request_create_destroy()
-{
- WebKitNetworkRequest* request;
- SoupMessage* message;
-
- /* Test creation with URI */
- request = WEBKIT_NETWORK_REQUEST(g_object_new(WEBKIT_TYPE_NETWORK_REQUEST, "uri", "http://debian.org/", NULL));
- g_assert(WEBKIT_IS_NETWORK_REQUEST(request));
- message = webkit_network_request_get_message(request);
- g_assert(!message);
- g_object_unref(request);
-
- /* Test creation with SoupMessage */
- message = soup_message_new("GET", "http://debian.org/");
- request = WEBKIT_NETWORK_REQUEST(g_object_new(WEBKIT_TYPE_NETWORK_REQUEST, "message", message, NULL));
- g_assert(WEBKIT_IS_NETWORK_REQUEST(request));
- g_assert_cmpint(G_OBJECT(message)->ref_count, ==, 2);
- g_object_unref(request);
- g_assert_cmpint(G_OBJECT(message)->ref_count, ==, 1);
- g_object_unref(message);
-
- /* Test creation with both SoupMessage and URI */
- message = soup_message_new("GET", "http://debian.org/");
- request = WEBKIT_NETWORK_REQUEST(g_object_new(WEBKIT_TYPE_NETWORK_REQUEST, "message", message, "uri", "http://gnome.org/", NULL));
- g_assert(WEBKIT_IS_NETWORK_REQUEST(request));
- g_assert_cmpint(G_OBJECT(message)->ref_count, ==, 2);
- g_assert_cmpstr(webkit_network_request_get_uri(request), ==, "http://gnome.org/");
- g_object_unref(request);
- g_assert_cmpint(G_OBJECT(message)->ref_count, ==, 1);
- g_object_unref(message);
-}
-
-static void test_network_request_properties()
-{
- WebKitNetworkRequest* request;
- SoupMessage* message;
- gchar* soupURI;
-
- /* Test URI is set correctly when creating with URI */
- request = webkit_network_request_new("http://debian.org/");
- g_assert(WEBKIT_IS_NETWORK_REQUEST(request));
- g_assert_cmpstr(webkit_network_request_get_uri(request), ==, "http://debian.org/");
- g_object_unref(request);
-
- /* Test URI is set correctly when creating with Message */
- message = soup_message_new("GET", "http://debian.org/");
- request = WEBKIT_NETWORK_REQUEST(g_object_new(WEBKIT_TYPE_NETWORK_REQUEST, "message", message, NULL));
- g_assert(WEBKIT_IS_NETWORK_REQUEST(request));
- g_object_unref(message);
-
- message = webkit_network_request_get_message(request);
- soupURI = soup_uri_to_string(soup_message_get_uri(message), FALSE);
- g_assert_cmpstr(soupURI, ==, "http://debian.org/");
- g_free(soupURI);
-
- g_assert_cmpstr(webkit_network_request_get_uri(request), ==, "http://debian.org/");
- g_object_unref(request);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/networkrequest/createdestroy", test_network_request_create_destroy);
- g_test_add_func("/webkit/networkrequest/properties", test_network_request_properties);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testnetworkresponse.c b/Source/WebKit/gtk/tests/testnetworkresponse.c
deleted file mode 100644
index 8b12f8208..000000000
--- a/Source/WebKit/gtk/tests/testnetworkresponse.c
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) 2009 Gustavo Noronha Silva
- * Copyright (C) 2009 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <unistd.h>
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <stdlib.h>
-#include <webkit/webkit.h>
-
-static void test_network_response_create_destroy()
-{
- WebKitNetworkResponse* response;
- SoupMessage* message;
-
- /* Test creation with URI */
- response = WEBKIT_NETWORK_RESPONSE(g_object_new(WEBKIT_TYPE_NETWORK_RESPONSE, "uri", "http://debian.org/", NULL));
- g_assert(WEBKIT_IS_NETWORK_RESPONSE(response));
- message = webkit_network_response_get_message(response);
- g_assert(!message);
- g_object_unref(response);
-
- /* Test creation with SoupMessage */
- message = soup_message_new("GET", "http://debian.org/");
- response = WEBKIT_NETWORK_RESPONSE(g_object_new(WEBKIT_TYPE_NETWORK_RESPONSE, "message", message, NULL));
- g_assert(WEBKIT_IS_NETWORK_RESPONSE(response));
- g_assert_cmpint(G_OBJECT(message)->ref_count, ==, 2);
- g_object_unref(response);
- g_assert_cmpint(G_OBJECT(message)->ref_count, ==, 1);
- g_object_unref(message);
-
- /* Test creation with both SoupMessage and URI */
- message = soup_message_new("GET", "http://debian.org/");
- response = WEBKIT_NETWORK_RESPONSE(g_object_new(WEBKIT_TYPE_NETWORK_RESPONSE, "message", message, "uri", "http://gnome.org/", NULL));
- g_assert(WEBKIT_IS_NETWORK_RESPONSE(response));
- g_assert_cmpint(G_OBJECT(message)->ref_count, ==, 2);
- g_assert_cmpstr(webkit_network_response_get_uri(response), ==, "http://gnome.org/");
- g_object_unref(response);
- g_assert_cmpint(G_OBJECT(message)->ref_count, ==, 1);
- g_object_unref(message);
-}
-
-static void test_network_response_properties()
-{
- WebKitNetworkResponse* response;
- SoupMessage* message;
- gchar* soupURI;
-
- /* Test URI is set correctly when creating with URI */
- response = webkit_network_response_new("http://debian.org/");
- g_assert(WEBKIT_IS_NETWORK_RESPONSE(response));
- g_assert_cmpstr(webkit_network_response_get_uri(response), ==, "http://debian.org/");
- g_object_unref(response);
-
- /* Test URI is set correctly when creating with Message */
- message = soup_message_new("GET", "http://debian.org/");
- response = WEBKIT_NETWORK_RESPONSE(g_object_new(WEBKIT_TYPE_NETWORK_RESPONSE, "message", message, NULL));
- g_assert(WEBKIT_IS_NETWORK_RESPONSE(response));
- g_object_unref(message);
-
- message = webkit_network_response_get_message(response);
- soupURI = soup_uri_to_string(soup_message_get_uri(message), FALSE);
- g_assert_cmpstr(soupURI, ==, "http://debian.org/");
- g_free(soupURI);
-
- g_assert_cmpstr(webkit_network_response_get_uri(response), ==, "http://debian.org/");
- g_object_unref(response);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/networkresponse/createdestroy", test_network_response_create_destroy);
- g_test_add_func("/webkit/networkresponse/properties", test_network_response_properties);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testwebbackforwardlist.c b/Source/WebKit/gtk/tests/testwebbackforwardlist.c
deleted file mode 100644
index 22acb45cb..000000000
--- a/Source/WebKit/gtk/tests/testwebbackforwardlist.c
+++ /dev/null
@@ -1,326 +0,0 @@
-/*
- * Copyright (C) 2008 Holger Hans Peter Freyther
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <glib.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-static void test_webkit_web_history_item_lifetime(void)
-{
- WebKitWebView* webView;
- WebKitWebBackForwardList* backForwardList;
- WebKitWebHistoryItem* currentItem;
- WebKitWebHistoryItem* forwardItem;
- WebKitWebHistoryItem* backItem;
- WebKitWebHistoryItem* nthItem;
- WebKitWebHistoryItem* item1;
- WebKitWebHistoryItem* item2;
- WebKitWebHistoryItem* item3;
- WebKitWebHistoryItem* item4;
- GList* backList = NULL;
- GList* forwardList = NULL;
- g_test_bug("19898");
-
- webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- backForwardList = webkit_web_view_get_back_forward_list(webView);
- g_assert_cmpint(G_OBJECT(backForwardList)->ref_count, ==, 1);
-
- /* add test items */
- item1 = webkit_web_history_item_new_with_data("http://example.com/1/", "Site 1");
- webkit_web_back_forward_list_add_item(backForwardList, item1);
- g_object_unref(item1);
-
- item2 = webkit_web_history_item_new_with_data("http://example.com/2/", "Site 2");
- webkit_web_back_forward_list_add_item(backForwardList, item2);
- g_object_unref(item2);
-
- item3 = webkit_web_history_item_new_with_data("http://example.com/3/", "Site 3");
- webkit_web_back_forward_list_add_item(backForwardList, item3);
- g_object_unref(item3);
-
- item4 = webkit_web_history_item_new_with_data("http://example.com/4/", "Site 4");
- webkit_web_back_forward_list_add_item(backForwardList, item4);
- g_object_unref(item4);
-
- /* make sure these functions don't add unnecessary ref to the history item */
- backItem = webkit_web_back_forward_list_get_back_item(backForwardList);
- g_object_ref(backItem);
- g_assert_cmpint(G_OBJECT(backItem)->ref_count, ==, 2);
- g_object_unref(backItem);
- g_assert_cmpint(G_OBJECT(backItem)->ref_count, ==, 1);
-
- currentItem = webkit_web_back_forward_list_get_current_item(backForwardList);
- g_object_ref(currentItem);
- g_assert_cmpint(G_OBJECT(currentItem)->ref_count, ==, 2);
- g_object_unref(currentItem);
- g_assert_cmpint(G_OBJECT(currentItem)->ref_count, ==, 1);
-
- webkit_web_back_forward_list_go_to_item(backForwardList, item2);
- forwardItem = webkit_web_back_forward_list_get_forward_item(backForwardList);
- g_object_ref(forwardItem);
- g_assert_cmpint(G_OBJECT(forwardItem)->ref_count, ==, 2);
- g_object_unref(forwardItem);
- g_assert_cmpint(G_OBJECT(forwardItem)->ref_count, ==, 1);
-
- nthItem = webkit_web_back_forward_list_get_nth_item(backForwardList, 1);
- g_object_ref(nthItem);
- g_assert_cmpint(G_OBJECT(nthItem)->ref_count, ==, 2);
- g_object_unref(nthItem);
- g_assert_cmpint(G_OBJECT(nthItem)->ref_count, ==, 1);
-
- backList = webkit_web_back_forward_list_get_back_list_with_limit(backForwardList, 5);
- for (; backList; backList = backList->next)
- g_assert_cmpint(G_OBJECT(backList->data)->ref_count, ==, 1);
-
- forwardList = webkit_web_back_forward_list_get_forward_list_with_limit(backForwardList, 5);
- for (; forwardList; forwardList = forwardList->next)
- g_assert_cmpint(G_OBJECT(forwardList->data)->ref_count, ==, 1);
-
- g_list_free(forwardList);
- g_list_free(backList);
- g_assert_cmpint(G_OBJECT(item1)->ref_count, ==, 1);
- g_assert_cmpint(G_OBJECT(item2)->ref_count, ==, 1);
- g_assert_cmpint(G_OBJECT(item3)->ref_count, ==, 1);
- g_assert_cmpint(G_OBJECT(item4)->ref_count, ==, 1);
- g_assert_cmpint(G_OBJECT(backForwardList)->ref_count, ==, 1);
- g_object_unref(webView);
-}
-
-static void test_webkit_web_back_forward_list_order(void)
-{
- WebKitWebView* webView;
- WebKitWebBackForwardList* webBackForwardList;
- WebKitWebHistoryItem* item1;
- WebKitWebHistoryItem* item2;
- WebKitWebHistoryItem* item3;
- WebKitWebHistoryItem* item4;
- WebKitWebHistoryItem* currentItem;
- GList* backList = NULL;
- GList* forwardList = NULL;
- g_test_bug("22694");
-
- webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
-
- webkit_web_view_set_maintains_back_forward_list(webView, TRUE);
- webBackForwardList = webkit_web_view_get_back_forward_list(webView);
- g_assert(webBackForwardList);
-
- // Check that there is no item.
- g_assert(!webkit_web_back_forward_list_get_current_item(webBackForwardList));
- g_assert_cmpint(webkit_web_back_forward_list_get_forward_length(webBackForwardList), ==, 0);
- g_assert_cmpint(webkit_web_back_forward_list_get_back_length(webBackForwardList), ==, 0);
- g_assert(!webkit_web_view_can_go_forward(webView));
- g_assert(!webkit_web_view_can_go_back(webView));
-
- // Add a new items
- item1 = webkit_web_history_item_new_with_data("http://example.com/1/", "Site 1");
- webkit_web_back_forward_list_add_item(webBackForwardList, item1);
- g_object_unref(item1);
- g_assert(webkit_web_back_forward_list_contains_item(webBackForwardList, item1));
-
- item2 = webkit_web_history_item_new_with_data("http://example.com/2/", "Site 2");
- webkit_web_back_forward_list_add_item(webBackForwardList, item2);
- g_object_unref(item2);
- g_assert(webkit_web_back_forward_list_contains_item(webBackForwardList, item2));
-
- item3 = webkit_web_history_item_new_with_data("http://example.com/3/", "Site 3");
- webkit_web_back_forward_list_add_item(webBackForwardList, item3);
- g_object_unref(item3);
- g_assert(webkit_web_back_forward_list_contains_item(webBackForwardList, item3));
-
- item4 = webkit_web_history_item_new_with_data("http://example.com/4/", "Site 4");
- webkit_web_back_forward_list_add_item(webBackForwardList, item4);
- g_object_unref(item4);
- g_assert(webkit_web_back_forward_list_contains_item(webBackForwardList, item4));
-
- // check the back list order
- backList = webkit_web_back_forward_list_get_back_list_with_limit(webBackForwardList, 5);
- g_assert(backList);
-
- currentItem = WEBKIT_WEB_HISTORY_ITEM(backList->data);
- g_assert_cmpstr(webkit_web_history_item_get_uri(currentItem), ==, "http://example.com/3/");
- g_assert_cmpstr(webkit_web_history_item_get_title(currentItem), ==, "Site 3");
- backList = backList->next;
-
- currentItem = WEBKIT_WEB_HISTORY_ITEM(backList->data);
- g_assert_cmpstr(webkit_web_history_item_get_uri(currentItem), ==, "http://example.com/2/");
- g_assert_cmpstr(webkit_web_history_item_get_title(currentItem), ==, "Site 2");
- backList = backList->next;
-
- currentItem = WEBKIT_WEB_HISTORY_ITEM(backList->data);
- g_assert_cmpstr(webkit_web_history_item_get_uri(currentItem), ==, "http://example.com/1/");
- g_assert_cmpstr(webkit_web_history_item_get_title(currentItem), ==, "Site 1");
- g_list_free(backList);
-
- // check the forward list order
- g_assert(webkit_web_view_go_to_back_forward_item(webView, item1));
- forwardList = webkit_web_back_forward_list_get_forward_list_with_limit(webBackForwardList,5);
- g_assert(forwardList);
-
- currentItem = WEBKIT_WEB_HISTORY_ITEM(forwardList->data);
- g_assert_cmpstr(webkit_web_history_item_get_uri(currentItem), ==, "http://example.com/4/");
- g_assert_cmpstr(webkit_web_history_item_get_title(currentItem), ==, "Site 4");
- forwardList = forwardList->next;
-
- currentItem = WEBKIT_WEB_HISTORY_ITEM(forwardList->data);
- g_assert_cmpstr(webkit_web_history_item_get_uri(currentItem), ==, "http://example.com/3/");
- g_assert_cmpstr(webkit_web_history_item_get_title(currentItem), ==, "Site 3");
- forwardList = forwardList->next;
-
- currentItem = WEBKIT_WEB_HISTORY_ITEM(forwardList->data);
- g_assert_cmpstr(webkit_web_history_item_get_uri(currentItem), ==, "http://example.com/2/");
- g_assert_cmpstr(webkit_web_history_item_get_title(currentItem), ==, "Site 2");
-
- g_list_free(forwardList);
- g_object_unref(webView);
-}
-
-static void test_webkit_web_back_forward_list_add_item(void)
-{
- WebKitWebView* webView;
- WebKitWebBackForwardList* webBackForwardList;
- WebKitWebHistoryItem* addItem1;
- WebKitWebHistoryItem* addItem2;
- WebKitWebHistoryItem* backItem;
- WebKitWebHistoryItem* currentItem;
- g_test_bug("22988");
-
- webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
-
- webkit_web_view_set_maintains_back_forward_list(webView, TRUE);
- webBackForwardList = webkit_web_view_get_back_forward_list(webView);
- g_assert(webBackForwardList);
-
- // Check that there is no item.
- g_assert(!webkit_web_back_forward_list_get_current_item(webBackForwardList));
- g_assert_cmpint(webkit_web_back_forward_list_get_forward_length(webBackForwardList), ==, 0);
- g_assert_cmpint(webkit_web_back_forward_list_get_back_length(webBackForwardList), ==, 0);
- g_assert(!webkit_web_view_can_go_forward(webView));
- g_assert(!webkit_web_view_can_go_back(webView));
-
- // Add a new item
- addItem1 = webkit_web_history_item_new_with_data("http://example.com/", "Added site");
- webkit_web_back_forward_list_add_item(webBackForwardList, addItem1);
- g_object_unref(addItem1);
- g_assert(webkit_web_back_forward_list_contains_item(webBackForwardList, addItem1));
-
- // Check that the added item is the current item.
- currentItem = webkit_web_back_forward_list_get_current_item(webBackForwardList);
- g_assert(currentItem);
- g_assert_cmpint(webkit_web_back_forward_list_get_forward_length(webBackForwardList), ==, 0);
- g_assert_cmpint(webkit_web_back_forward_list_get_back_length(webBackForwardList), ==, 0);
- g_assert(!webkit_web_view_can_go_forward(webView));
- g_assert(!webkit_web_view_can_go_back(webView));
- g_assert_cmpstr(webkit_web_history_item_get_uri(currentItem), ==, "http://example.com/");
- g_assert_cmpstr(webkit_web_history_item_get_title(currentItem), ==, "Added site");
-
- // Add another item.
- addItem2 = webkit_web_history_item_new_with_data("http://example.com/2/", "Added site 2");
- webkit_web_back_forward_list_add_item(webBackForwardList, addItem2);
- g_object_unref(addItem2);
- g_assert(webkit_web_back_forward_list_contains_item(webBackForwardList, addItem2));
-
- // Check that the added item is new current item.
- currentItem = webkit_web_back_forward_list_get_current_item(webBackForwardList);
- g_assert(currentItem);
- g_assert_cmpint(webkit_web_back_forward_list_get_forward_length(webBackForwardList), ==, 0);
- g_assert_cmpint(webkit_web_back_forward_list_get_back_length(webBackForwardList), ==, 1);
- g_assert(!webkit_web_view_can_go_forward(webView));
- g_assert(webkit_web_view_can_go_back(webView));
- g_assert_cmpstr(webkit_web_history_item_get_uri(currentItem), ==, "http://example.com/2/");
- g_assert_cmpstr(webkit_web_history_item_get_title(currentItem), ==, "Added site 2");
-
- backItem = webkit_web_back_forward_list_get_back_item(webBackForwardList);
- g_assert(backItem);
- g_assert_cmpstr(webkit_web_history_item_get_uri(backItem), ==, "http://example.com/");
- g_assert_cmpstr(webkit_web_history_item_get_title(backItem), ==, "Added site");
-
- // Go to the first added item.
- g_assert(webkit_web_view_go_to_back_forward_item(webView, addItem1));
- g_assert_cmpint(webkit_web_back_forward_list_get_forward_length(webBackForwardList), ==, 1);
- g_assert_cmpint(webkit_web_back_forward_list_get_back_length(webBackForwardList), ==, 0);
- g_assert(webkit_web_view_can_go_forward(webView));
- g_assert(!webkit_web_view_can_go_back(webView));
-
- g_object_unref(webView);
-}
-
-static void test_webkit_web_back_forward_list_clear(void)
-{
- WebKitWebView* webView;
- WebKitWebBackForwardList* webBackForwardList;
- WebKitWebHistoryItem* addItem;
- g_test_bug("36173");
-
- webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
-
- webBackForwardList = webkit_web_view_get_back_forward_list(webView);
- g_assert(webBackForwardList);
-
- // Check that there is no item.
- g_assert_cmpint(webkit_web_back_forward_list_get_forward_length(webBackForwardList), ==, 0);
- g_assert_cmpint(webkit_web_back_forward_list_get_back_length(webBackForwardList), ==, 0);
- g_assert(!webkit_web_back_forward_list_get_current_item(webBackForwardList));
- g_assert(!webkit_web_view_can_go_forward(webView));
- g_assert(!webkit_web_view_can_go_back(webView));
-
- // Check that clearing the empty list does not modify counters
- webkit_web_back_forward_list_clear(webBackForwardList);
- g_assert_cmpint(webkit_web_back_forward_list_get_forward_length(webBackForwardList), ==, 0);
- g_assert_cmpint(webkit_web_back_forward_list_get_back_length(webBackForwardList), ==, 0);
- g_assert(!webkit_web_back_forward_list_get_current_item(webBackForwardList));
- g_assert(!webkit_web_view_can_go_forward(webView));
- g_assert(!webkit_web_view_can_go_back(webView));
-
- // Add a new item
- addItem = webkit_web_history_item_new_with_data("http://example.com/", "Added site");
- webkit_web_back_forward_list_add_item(webBackForwardList, addItem);
- g_object_unref(addItem);
- g_assert(webkit_web_back_forward_list_contains_item(webBackForwardList, addItem));
-
- // Check that after clearing the list the added item is no longer in the list
- webkit_web_back_forward_list_clear(webBackForwardList);
- g_assert(!webkit_web_back_forward_list_contains_item(webBackForwardList, addItem));
-
- // Check that after clearing it, the list is empty
- g_assert_cmpint(webkit_web_back_forward_list_get_forward_length(webBackForwardList), ==, 0);
- g_assert_cmpint(webkit_web_back_forward_list_get_back_length(webBackForwardList), ==, 0);
- g_assert(!webkit_web_back_forward_list_get_current_item(webBackForwardList));
- g_assert(!webkit_web_view_can_go_forward(webView));
- g_assert(!webkit_web_view_can_go_back(webView));
-
- g_object_unref(webView);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/webbackforwardlist/add_item", test_webkit_web_back_forward_list_add_item);
- g_test_add_func("/webkit/webbackforwardlist/list_order", test_webkit_web_back_forward_list_order);
- g_test_add_func("/webkit/webhistoryitem/lifetime", test_webkit_web_history_item_lifetime);
- g_test_add_func("/webkit/webbackforwardlist/clear", test_webkit_web_back_forward_list_clear);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testwebdatasource.c b/Source/WebKit/gtk/tests/testwebdatasource.c
deleted file mode 100644
index ed73bdb09..000000000
--- a/Source/WebKit/gtk/tests/testwebdatasource.c
+++ /dev/null
@@ -1,242 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <glib.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-static const gshort defaultTimeout = 10;
-guint waitTimer;
-gboolean shouldWait;
-
-typedef struct {
- WebKitWebView* webView;
- WebKitWebFrame* mainFrame;
-} WebDataSourceFixture;
-
-static void test_webkit_web_data_source_get_initial_request()
-{
- WebKitWebView* view;
- WebKitWebFrame* frame;
- WebKitWebDataSource* dataSource;
- WebKitNetworkRequest* initialRequest;
-
- view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(view);
- frame = webkit_web_view_get_main_frame(view);
-
- WebKitNetworkRequest* request = webkit_network_request_new("http://www.google.com");
- webkit_web_frame_load_request(frame, request);
- g_object_unref(request);
-
- dataSource = webkit_web_frame_get_provisional_data_source(frame);
- g_assert(dataSource);
- initialRequest = webkit_web_data_source_get_initial_request(dataSource);
- g_assert_cmpstr(webkit_network_request_get_uri(initialRequest), ==, "http://www.google.com/");
-
- g_object_unref(view);
-}
-
-static void notify_load_status_unreachable_cb(WebKitWebView* view, GParamSpec* pspec, GMainLoop* loop)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status (view);
- WebKitWebFrame* frame = webkit_web_view_get_main_frame(view);
-
- g_assert(status != WEBKIT_LOAD_FINISHED);
-
- if (status != WEBKIT_LOAD_FAILED)
- return;
-
- WebKitWebDataSource* datasource = webkit_web_frame_get_data_source(frame);
-
- g_assert_cmpstr("http://this.host.does.not.exist/doireallyexist.html", ==,
- webkit_web_data_source_get_unreachable_uri(datasource));
-
- g_main_loop_quit(loop);
-}
-
-static void notify_load_status_cb(WebKitWebView* view, GParamSpec* pspec, GMainLoop* loop)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status (view);
- WebKitWebFrame* frame = webkit_web_view_get_main_frame(view);
- WebKitWebDataSource* dataSource = webkit_web_frame_get_data_source(frame);
-
- if (status == WEBKIT_LOAD_COMMITTED) {
- g_assert(webkit_web_data_source_is_loading(dataSource));
- return;
- }
- else if (status != WEBKIT_LOAD_FINISHED)
- return;
-
- /* Test get_request */
- g_test_message("Testing webkit_web_data_source_get_request");
- WebKitNetworkRequest* request = webkit_web_data_source_get_request(dataSource);
- g_assert_cmpstr(webkit_network_request_get_uri(request), ==, "http://www.webkit.org/");
-
- /* Test get_main_resource */
- g_test_message("Testing webkit_web_data_source_get_main_resource");
- WebKitWebResource* resource = webkit_web_data_source_get_main_resource(dataSource);
- g_assert_cmpstr("text/html", ==, webkit_web_resource_get_mime_type(resource));
- g_assert_cmpstr("http://www.webkit.org/", ==, webkit_web_resource_get_uri(resource));
-
- /* Test get_data. We just test if data has certain size for the mean time */
- g_test_message("Testing webkit_web_data_source_get_data has certain size");
- GString* data = webkit_web_data_source_get_data(dataSource);
- g_assert(data->len > 100);
-
- /* FIXME: Add test for get_encoding */
-
- g_main_loop_quit(loop);
-}
-
-static gboolean wait_timer_fired(GMainLoop* loop)
-{
- waitTimer = 0;
- g_main_loop_quit(loop);
-
- return FALSE;
-}
-
-static void test_webkit_web_data_source()
-{
- WebKitWebView* view;
- GMainLoop* loop;
-
- view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(view);
- loop = g_main_loop_new(NULL, TRUE);
- g_signal_connect(view, "notify::load-status", G_CALLBACK(notify_load_status_cb), loop);
- webkit_web_view_load_uri(view, "http://www.webkit.org");
-
- waitTimer = g_timeout_add_seconds(defaultTimeout, (GSourceFunc)wait_timer_fired, loop);
-
- g_main_loop_run(loop);
-
- if (waitTimer)
- g_source_remove(waitTimer);
-
- waitTimer = 0;
-
- g_main_loop_unref(loop);
- g_object_unref(view);
-}
-
-static void notify_load_status_lifetime_cb(WebKitWebView* view, GParamSpec* pspec, GMainLoop* loop)
-{
- WebKitLoadStatus status = webkit_web_view_get_load_status (view);
- WebKitWebFrame* frame = webkit_web_view_get_main_frame(view);
- WebKitWebDataSource* dataSource = webkit_web_frame_get_data_source(frame);
-
- if (status == WEBKIT_LOAD_COMMITTED) {
- g_assert(webkit_web_data_source_is_loading(dataSource));
- return;
- } else if (status != WEBKIT_LOAD_FINISHED)
- return;
-
- g_main_loop_quit(loop);
-}
-
-static void test_webkit_web_data_source_lifetime()
-{
- WebKitWebView* view;
- GMainLoop* loop;
-
- view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(view);
- loop = g_main_loop_new(NULL, TRUE);
- g_signal_connect(view, "notify::load-status", G_CALLBACK(notify_load_status_lifetime_cb), loop);
- webkit_web_view_load_uri(view, "http://www.webkit.org");
-
- waitTimer = g_timeout_add_seconds(defaultTimeout, (GSourceFunc)wait_timer_fired, loop);
-
- g_main_loop_run(loop);
-
- WebKitWebDataSource* dataSource = webkit_web_frame_get_data_source(webkit_web_view_get_main_frame(view));
- GList* subResources = webkit_web_data_source_get_subresources(dataSource);
- gint numberOfResources = g_list_length(subResources);
- g_list_free(subResources);
-
- g_assert_cmpint(webkit_web_view_get_load_status(view), ==, WEBKIT_LOAD_FINISHED);
-
- webkit_web_view_load_uri(view, "http://gnome.org");
-
- g_assert_cmpint(webkit_web_view_get_load_status(view), ==, WEBKIT_LOAD_PROVISIONAL);
-
- webkit_web_view_stop_loading(view);
-
- g_assert_cmpint(webkit_web_view_get_load_status(view), ==, WEBKIT_LOAD_FAILED);
-
- subResources = webkit_web_data_source_get_subresources(dataSource);
- g_assert_cmpint(numberOfResources, ==, g_list_length(subResources));
- g_list_free(subResources);
-
- if (waitTimer)
- g_source_remove(waitTimer);
-
- waitTimer = 0;
-
- g_main_loop_unref(loop);
- g_object_unref(view);
-}
-
-static void test_webkit_web_data_source_unreachable_uri()
-{
- /* FIXME: this test fails currently. */
- return;
-
- WebKitWebView* view;
- GMainLoop* loop;
-
- view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(view);
- loop = g_main_loop_new(NULL, TRUE);
- g_signal_connect(view, "notify::load-status", G_CALLBACK(notify_load_status_unreachable_cb), loop);
- webkit_web_view_load_uri(view, "http://this.host.does.not.exist/doireallyexist.html");
-
- waitTimer = g_timeout_add_seconds(defaultTimeout, (GSourceFunc)wait_timer_fired, loop);
-
- g_main_loop_run(loop);
-
- if (waitTimer)
- g_source_remove(waitTimer);
-
- waitTimer = 0;
-
- g_main_loop_unref(loop);
- g_object_unref(view);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_bug("24758");
- g_test_add_func("/webkit/webdatasource/get_initial_request",
- test_webkit_web_data_source_get_initial_request);
- g_test_add_func("/webkit/webdatasource/api",
- test_webkit_web_data_source);
- g_test_add_func("/webkit/webdatasource/unreachable_uri",
- test_webkit_web_data_source_unreachable_uri);
- g_test_add_func("/webkit/webdatasource/lifetime",
- test_webkit_web_data_source_lifetime);
-
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testwebframe.c b/Source/WebKit/gtk/tests/testwebframe.c
deleted file mode 100644
index 531fae281..000000000
--- a/Source/WebKit/gtk/tests/testwebframe.c
+++ /dev/null
@@ -1,220 +0,0 @@
-/*
- * Copyright (C) 2008 Holger Hans Peter Freyther
- * Copyright (C) 2009 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <unistd.h>
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-static int numberOfFramesCreated = 0;
-
-static void createFrameSignalTestFrameCreatedCallback(WebKitWebView* webView, WebKitWebFrame* frame, gpointer data)
-{
- numberOfFramesCreated++;
-}
-
-static gboolean createFrameSignalTestTimeout(gpointer data)
-{
- g_assert_cmpint(numberOfFramesCreated, ==, 2);
- g_main_loop_quit((GMainLoop*) data);
- return FALSE;
-}
-
-static void test_webkit_web_frame_created_signal(void)
-{
- GtkWidget* webView;
- GtkWidget* window;
- GMainLoop* loop = g_main_loop_new(NULL, TRUE);
-
- window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
-
- webView = webkit_web_view_new();
- g_signal_connect(webView, "frame-created", G_CALLBACK(createFrameSignalTestFrameCreatedCallback), loop);
-
- // We want to ensure that exactly two create-frame signals are
- // fired and no more, so we set a timeout here. There does not appear
- // to be a simple way via the API to figure out when all frames have
- // loaded.
- g_timeout_add(500, createFrameSignalTestTimeout, loop);
-
- gtk_container_add(GTK_CONTAINER(window), webView);
- gtk_widget_show(window);
- gtk_widget_show(webView);
-
- webkit_web_view_load_string(WEBKIT_WEB_VIEW(webView),
- "<html><body>Frames!"
- "<iframe></iframe>"
- "<iframe></iframe>"
- "</body></html>",
- "text/html", "utf-8", "file://");
- g_main_loop_run(loop);
-}
-
-static void test_webkit_web_frame_create_destroy(void)
-{
- GtkWidget *webView;
- GtkWidget *window;
-
- g_test_bug("21837");
- webView = webkit_web_view_new();
- g_object_ref_sink(webView);
- g_assert_cmpint(G_OBJECT(webView)->ref_count, ==, 1);
- // This crashed with the original version
- g_object_unref(webView);
-
- g_test_bug("25042");
- window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- webView = webkit_web_view_new();
- gtk_container_add(GTK_CONTAINER(window), webView);
- gtk_widget_show(window);
- gtk_widget_show(webView);
- gtk_widget_destroy(webView);
-}
-
-static void test_webkit_web_frame_lifetime(void)
-{
- WebKitWebView* webView;
- WebKitWebFrame* webFrame;
- g_test_bug("21837");
-
- webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- g_assert_cmpint(G_OBJECT(webView)->ref_count, ==, 1);
- webFrame = webkit_web_view_get_main_frame(webView);
- g_assert_cmpint(G_OBJECT(webFrame)->ref_count, ==, 1);
-
- // Add dummy reference on the WebKitWebFrame to keep it alive
- g_object_ref(webFrame);
- g_assert_cmpint(G_OBJECT(webFrame)->ref_count, ==, 2);
-
- // This crashed with the original version
- g_object_unref(webView);
-
- // Make sure that the frame got deleted as well. We did this
- // by adding an extra ref on the WebKitWebFrame and we should
- // be the one holding the last reference.
- g_assert_cmpint(G_OBJECT(webFrame)->ref_count, ==, 1);
- g_object_unref(webFrame);
-}
-
-static gboolean print_requested_cb(WebKitWebView* webView, WebKitWebFrame* webFrame, GMainLoop* loop)
-{
- g_object_set_data(G_OBJECT(webView), "signal-handled", GINT_TO_POINTER(TRUE));
- g_main_loop_quit(loop);
- return TRUE;
-}
-
-static void print_timeout(GMainLoop* loop)
-{
- if (g_main_loop_is_running(loop))
- g_main_loop_quit(loop);
-}
-
-static void test_webkit_web_frame_printing(void)
-{
- WebKitWebView* webView;
-
- webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(webView);
- g_assert_cmpint(G_OBJECT(webView)->ref_count, ==, 1);
-
- webkit_web_view_load_string(webView,
- "<html><body><h1>WebKitGTK+!</h1></body></html>",
- "text/html",
- "utf-8",
- "file://");
-
- GMainLoop* loop = g_main_loop_new(NULL, TRUE);
-
- // Does javascript print() work correctly?
- g_signal_connect(webView, "print-requested",
- G_CALLBACK(print_requested_cb),
- loop);
-
- g_object_set_data(G_OBJECT(webView), "signal-handled", GINT_TO_POINTER(FALSE));
- webkit_web_view_execute_script (webView, "print();");
-
- // Give javascriptcore some time to process the print request, but
- // prepare a timeout to avoid it running forever in case the signal is
- // never emitted.
- g_timeout_add(1000, (GSourceFunc)print_timeout, loop);
- g_main_loop_run(loop);
-
- g_assert_cmpint(GPOINTER_TO_INT(g_object_get_data(G_OBJECT(webView), "signal-handled")), ==, TRUE);
-
- // Does printing directly to a file?
- GError *error = NULL;
- gchar* temporaryFilename = NULL;
- gint fd = g_file_open_tmp ("webkit-testwebframe-XXXXXX", &temporaryFilename, &error);
- close(fd);
-
- if (error) {
- g_critical("Failed to open a temporary file for writing: %s.", error->message);
- g_error_free(error);
- goto cleanup;
- }
-
- // We delete the file, so that we can easily figure out that the
- // file got printed;
- if (g_unlink(temporaryFilename) == -1) {
- g_warning("Failed to delete the temporary file: %s.\nThis may cause the test to be bogus.", g_strerror(errno));
- }
-
- WebKitWebFrame* webFrame = webkit_web_view_get_main_frame(webView);
- GtkPrintOperation* operation = gtk_print_operation_new();
- GtkPrintOperationAction action = GTK_PRINT_OPERATION_ACTION_EXPORT;
- GtkPrintOperationResult result;
-
- gtk_print_operation_set_export_filename(operation, temporaryFilename);
- result = webkit_web_frame_print_full (webFrame, operation, action, NULL);
-
- g_assert_cmpint(result, ==, GTK_PRINT_OPERATION_RESULT_APPLY);
- g_assert_cmpint(g_file_test(temporaryFilename, G_FILE_TEST_IS_REGULAR), ==, TRUE);
-
- g_unlink(temporaryFilename);
- g_object_unref(operation);
-cleanup:
- g_object_unref(webView);
- g_free(temporaryFilename);
-}
-
-static void test_webkit_web_frame_response()
-{
- WebKitWebFrame* frame = g_object_new(WEBKIT_TYPE_WEB_FRAME, NULL);
- WebKitNetworkResponse* response = webkit_web_frame_get_network_response(frame);
- g_assert(!response);
- g_object_unref(frame);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/webview/create_destroy", test_webkit_web_frame_create_destroy);
- g_test_add_func("/webkit/webview/frame-created_signal", test_webkit_web_frame_created_signal);
- g_test_add_func("/webkit/webframe/lifetime", test_webkit_web_frame_lifetime);
- g_test_add_func("/webkit/webview/printing", test_webkit_web_frame_printing);
- g_test_add_func("/webkit/webview/response", test_webkit_web_frame_response);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testwebhistoryitem.c b/Source/WebKit/gtk/tests/testwebhistoryitem.c
deleted file mode 100644
index 40ced4c71..000000000
--- a/Source/WebKit/gtk/tests/testwebhistoryitem.c
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <glib.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-typedef struct {
- WebKitWebHistoryItem* item;
-} WebHistoryItemFixture;
-
-static void web_history_item_fixture_setup(WebHistoryItemFixture* fixture,
- gconstpointer data)
-{
- fixture->item = webkit_web_history_item_new_with_data("http://example.com/", "Example1");
- g_assert_cmpint(G_OBJECT(fixture->item)->ref_count, == , 1);
- g_assert(fixture->item != NULL);
-}
-
-static void web_history_item_fixture_teardown(WebHistoryItemFixture* fixture,
- gconstpointer data)
-{
- g_assert(fixture->item != NULL);
- g_assert_cmpint(G_OBJECT(fixture->item)->ref_count, ==, 1);
-}
-
-static void test_webkit_web_history_item_get_data(WebHistoryItemFixture* fixture,
- gconstpointer data)
-{
- g_assert_cmpstr(webkit_web_history_item_get_title(fixture->item), ==, "Example1");
- g_assert_cmpstr(webkit_web_history_item_get_uri(fixture->item), ==, "http://example.com/");
-}
-
-static void test_webkit_web_history_item_alternate_title(WebHistoryItemFixture* fixture,
- gconstpointer data)
-{
- webkit_web_history_item_set_alternate_title(fixture->item, "Alternate title");
- g_assert_cmpstr(webkit_web_history_item_get_alternate_title(fixture->item), ==, "Alternate title");
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add("/webkit/webhistoryitem/get_data",
- WebHistoryItemFixture, 0, web_history_item_fixture_setup,
- test_webkit_web_history_item_get_data, web_history_item_fixture_teardown);
- g_test_add("/webkit/webhistoryitem/alternate_title",
- WebHistoryItemFixture, 0, web_history_item_fixture_setup,
- test_webkit_web_history_item_alternate_title, web_history_item_fixture_teardown);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testwebinspector.c b/Source/WebKit/gtk/tests/testwebinspector.c
deleted file mode 100644
index 8de6904fd..000000000
--- a/Source/WebKit/gtk/tests/testwebinspector.c
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Copyright (C) 2012 Gustavo Noronha Silva <gns@gnome.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include "test_utils.h"
-
-#include <string.h>
-#include <glib.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-GMainLoop *loop;
-GtkWidget *window;
-
-static gboolean quitLoop(gpointer data)
-{
- g_main_loop_quit(loop);
- return TRUE;
-}
-
-/* Ignore simple translation-related messages and upgrade other
- * messages to warnings.
- */
-static gboolean consoleMessageCallback(WebKitWebView* webView, const char* message, unsigned int line, const char* sourceId)
-{
- if (strstr(message, "Localized string") || strstr(message, "Protocol Error: the message is for non-existing domain 'Profiler'"))
- return TRUE;
-
- g_warning("Console: %s @%d: %s\n", sourceId, line, message);
- return TRUE;
-}
-
-static WebKitWebView* inspectElementCallback(WebKitWebInspector *inspector, WebKitWebView *inspectedWebView, int *timesElementInspected)
-{
- *timesElementInspected = *timesElementInspected + 1;
-
- window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
-
- GtkWidget *newWebView = webkit_web_view_new();
- gtk_container_add(GTK_CONTAINER(window), newWebView);
-
- g_signal_connect(newWebView, "console-message",
- G_CALLBACK(consoleMessageCallback), NULL);
-
- return WEBKIT_WEB_VIEW(newWebView);
-}
-
-static gboolean closeInspector(WebKitWebInspector *inspector, int *timesClosed)
-{
- *timesClosed = *timesClosed + 1;
-
- gtk_widget_destroy(window);
- return TRUE;
-}
-
-static gboolean showInspector(WebKitWebInspector *inspector, gpointer data)
-{
- g_idle_add(quitLoop, NULL);
- return TRUE;
-}
-
-static void loadFinished(WebKitWebView *webView, WebKitWebFrame *frame, gboolean *isLoadFinished)
-{
- *isLoadFinished = TRUE;
- if (g_main_loop_is_running(loop))
- g_main_loop_quit(loop);
-}
-
-static void test_webkit_web_inspector_close_and_inspect()
-{
- WebKitWebView *webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- loop = g_main_loop_new(NULL, TRUE);
-
- gboolean isLoadFinished = FALSE;
- g_signal_connect(webView, "load-finished", G_CALLBACK(loadFinished), &isLoadFinished);
- webkit_web_view_load_string(webView,
- "<html><body><p>woohoo</p></body></html>",
- "text/html", "UTF-8", "file://");
- if (!isLoadFinished)
- g_main_loop_run(loop);
-
- g_object_set(webkit_web_view_get_settings(webView), "enable-developer-extras", TRUE, NULL);
- WebKitWebInspector *inspector = webkit_web_view_get_inspector(webView);
-
- int timesElementInspected = 0;
- int timesClosed = 0;
- g_object_connect(inspector,
- "signal::inspect-web-view", G_CALLBACK(inspectElementCallback), &timesElementInspected,
- "signal::show-window", G_CALLBACK(showInspector), NULL,
- "signal::close-window", G_CALLBACK(closeInspector), &timesClosed,
- NULL);
-
- webkit_web_inspector_inspect_coordinates(inspector, 0.0, 0.0);
- g_assert_cmpint(timesElementInspected, ==, 1);
-
- g_main_loop_run(loop);
-
- webkit_web_inspector_close(inspector);
- g_assert_cmpint(timesClosed, ==, 1);
-
- webkit_web_inspector_inspect_coordinates(inspector, 0.0, 0.0);
- g_assert_cmpint(timesElementInspected, ==, 2);
-
- g_main_loop_run(loop);
-
- gtk_widget_destroy(GTK_WIDGET(webView));
- g_assert_cmpint(timesClosed, ==, 2);
-
- g_main_loop_unref(loop);
-}
-
-static void test_webkit_web_inspector_destroy_inspected_web_view()
-{
- WebKitWebView *webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- loop = g_main_loop_new(NULL, TRUE);
-
- gboolean isLoadFinished = FALSE;
- g_signal_connect(webView, "load-finished", G_CALLBACK(loadFinished), &isLoadFinished);
- webkit_web_view_load_string(webView,
- "<html><body><p>woohoo</p></body></html>",
- "text/html", "UTF-8", "file://");
- if (!isLoadFinished)
- g_main_loop_run(loop);
-
- g_object_set(webkit_web_view_get_settings(webView), "enable-developer-extras", TRUE, NULL);
- WebKitWebInspector *inspector = webkit_web_view_get_inspector(webView);
-
- int timesElementInspected = 0;
- int timesClosed = 0;
- g_object_connect(inspector,
- "signal::inspect-web-view", G_CALLBACK(inspectElementCallback), &timesElementInspected,
- "signal::show-window", G_CALLBACK(showInspector), NULL,
- "signal::close-window", G_CALLBACK(closeInspector), &timesClosed,
- NULL);
-
- webkit_web_inspector_inspect_coordinates(inspector, 0.0, 0.0);
- g_assert_cmpint(timesElementInspected, ==, 1);
-
- g_main_loop_run(loop);
-
- gtk_widget_destroy(GTK_WIDGET(webView));
- g_assert_cmpint(timesClosed, ==, 1);
-
- g_main_loop_unref(loop);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/webinspector/destroy-inspected-web-view", test_webkit_web_inspector_destroy_inspected_web_view);
- g_test_add_func("/webkit/webinspector/close-and-inspect", test_webkit_web_inspector_close_and_inspect);
-
- return g_test_run();
-}
diff --git a/Source/WebKit/gtk/tests/testwebplugindatabase.c b/Source/WebKit/gtk/tests/testwebplugindatabase.c
deleted file mode 100644
index 7a1f7ec0e..000000000
--- a/Source/WebKit/gtk/tests/testwebplugindatabase.c
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <errno.h>
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-/* This function is not public, so we need an extern declaration */
-extern void webkit_web_settings_add_extra_plugin_directory(WebKitWebView* view, const gchar* directory);
-
-static void test_webkit_web_plugin_database_get_plugins()
-{
- WebKitWebView* view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- WebKitWebPluginDatabase* database;
- GSList* pluginList, *p;
- gboolean found = FALSE;
- gboolean enabled = FALSE;
-
- webkit_web_settings_add_extra_plugin_directory(view, TEST_PLUGIN_DIR);
- g_object_ref_sink(G_OBJECT(view));
-
- database = webkit_get_web_plugin_database();
- pluginList = webkit_web_plugin_database_get_plugins(database);
- for (p = pluginList; p; p = p->next) {
- WebKitWebPlugin* plugin = (WebKitWebPlugin*)p->data;
- if (!g_strcmp0(webkit_web_plugin_get_name(plugin), "WebKit Test PlugIn") &&
- !g_strcmp0(webkit_web_plugin_get_description(plugin), "Simple Netscape® plug-in that handles test content for WebKit")) {
- found = TRUE;
- enabled = webkit_web_plugin_get_enabled(plugin);
- webkit_web_plugin_set_enabled(plugin, FALSE);
- }
- }
- webkit_web_plugin_database_plugins_list_free(pluginList);
- g_assert(found);
- g_assert(enabled);
-
- webkit_web_plugin_database_refresh(database);
- pluginList = webkit_web_plugin_database_get_plugins(database);
-
- for (p = pluginList; p; p = p->next) {
- WebKitWebPlugin* plugin = (WebKitWebPlugin*)p->data;
- if (!g_strcmp0(webkit_web_plugin_get_name(plugin), "WebKit Test PlugIn") &&
- !g_strcmp0(webkit_web_plugin_get_description(plugin), "Simple Netscape® plug-in that handles test content for WebKit"))
- enabled = webkit_web_plugin_get_enabled(plugin);
- }
- webkit_web_plugin_database_plugins_list_free(pluginList);
- g_assert(!enabled);
-
- g_object_unref(view);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/webplugindatabase/getplugins", test_webkit_web_plugin_database_get_plugins);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testwebresource.c b/Source/WebKit/gtk/tests/testwebresource.c
deleted file mode 100644
index b91eb2c10..000000000
--- a/Source/WebKit/gtk/tests/testwebresource.c
+++ /dev/null
@@ -1,331 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <glib.h>
-#include <gtk/gtk.h>
-#include <libsoup/soup.h>
-#include <string.h>
-#include <webkit/webkit.h>
-
-#define INDEX_HTML "<html></html>"
-#define MAIN_HTML "<html><head><script language=\"javascript\" src=\"/javascript.js\"></script></head><body><h1>hah</h1></html>"
-#define JAVASCRIPT "function blah () { var a = 1; }"
-
-GMainLoop* loop;
-SoupSession *session;
-char *base_uri;
-WebKitWebResource* main_resource;
-WebKitWebResource* sub_resource;
-
-typedef struct {
- WebKitWebResource* webResource;
- WebKitWebView* webView;
-} WebResourceFixture;
-
-/* For real request testing */
-static void
-server_callback (SoupServer *server, SoupMessage *msg,
- const char *path, GHashTable *query,
- SoupClientContext *context, gpointer data)
-{
- if (msg->method != SOUP_METHOD_GET) {
- soup_message_set_status (msg, SOUP_STATUS_NOT_IMPLEMENTED);
- return;
- }
-
- soup_message_set_status (msg, SOUP_STATUS_OK);
-
- /* Redirect */
- if (g_str_equal (path, "/")) {
- soup_message_set_status (msg, SOUP_STATUS_MOVED_PERMANENTLY);
-
- soup_message_headers_append (msg->response_headers,
- "Location", "/index.html");
- } else if (g_str_equal (path, "/index.html")) {
- soup_message_body_append (msg->response_body,
- SOUP_MEMORY_COPY,
- INDEX_HTML,
- strlen (INDEX_HTML));
- } else if (g_str_equal (path, "/main.html")) {
- soup_message_body_append (msg->response_body,
- SOUP_MEMORY_COPY,
- MAIN_HTML,
- strlen (MAIN_HTML));
- } else if (g_str_equal (path, "/javascript.js")) {
- soup_message_body_append (msg->response_body,
- SOUP_MEMORY_COPY,
- JAVASCRIPT,
- strlen (JAVASCRIPT));
- }
-
-
- soup_message_body_complete (msg->response_body);
-}
-
-static void web_resource_fixture_setup(WebResourceFixture* fixture, gconstpointer data)
-{
- fixture->webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(fixture->webView);
- const gchar* webData = "<html></html>";
- fixture->webResource = webkit_web_resource_new(webData, strlen(webData), "http://example.com/", "text/html", "utf8", "Example.com");
- g_assert(fixture->webResource);
-}
-
-static void web_resource_fixture_teardown(WebResourceFixture* fixture, gconstpointer data)
-{
- g_assert(fixture->webResource);
- g_object_unref(fixture->webResource);
- g_object_unref(fixture->webView);
-}
-
-static void test_webkit_web_resource_get_url(WebResourceFixture* fixture, gconstpointer data)
-{
- gchar* url;
- g_object_get(G_OBJECT(fixture->webResource), "uri", &url, NULL);
- g_assert_cmpstr(url, ==, "http://example.com/");
- g_assert_cmpstr(webkit_web_resource_get_uri(fixture->webResource) ,==,"http://example.com/");
- g_free(url);
-}
-
-static void test_webkit_web_resource_get_data(WebResourceFixture* fixture, gconstpointer data)
-{
- GString* charData = webkit_web_resource_get_data(fixture->webResource);
- g_assert_cmpstr(charData->str, ==, "<html></html>");
-}
-
-static void test_webkit_web_resource_get_mime_type(WebResourceFixture* fixture, gconstpointer data)
-{
- gchar* mime_type;
- g_object_get(G_OBJECT(fixture->webResource), "mime-type", &mime_type, NULL);
- g_assert_cmpstr(mime_type, ==, "text/html");
- g_assert_cmpstr(webkit_web_resource_get_mime_type(fixture->webResource),==,"text/html");
- g_free(mime_type);
-}
-
-static void test_webkit_web_resource_get_encoding(WebResourceFixture* fixture, gconstpointer data)
-{
- gchar* text_encoding;
- g_object_get(G_OBJECT(fixture->webResource), "encoding", &text_encoding, NULL);
- g_assert_cmpstr(text_encoding, ==, "utf8");
- g_assert_cmpstr(webkit_web_resource_get_encoding(fixture->webResource),==,"utf8");
- g_free(text_encoding);
-}
-
-static void test_webkit_web_resource_get_frame_name(WebResourceFixture* fixture, gconstpointer data)
-{
- gchar* frame_name;
- g_object_get(G_OBJECT(fixture->webResource), "frame-name", &frame_name, NULL);
- g_assert_cmpstr(frame_name, ==, "Example.com");
- g_assert_cmpstr(webkit_web_resource_get_frame_name(fixture->webResource),==,"Example.com");
- g_free(frame_name);
-}
-
-static void resource_request_starting_cb(WebKitWebView* web_view, WebKitWebFrame* web_frame, WebKitWebResource* web_resource, WebKitNetworkRequest* request, WebKitNetworkResponse* response, gpointer data)
-{
- gint* been_there = data;
- *been_there = *been_there + 1;
-
- if (*been_there == 1) {
- g_assert(!main_resource);
- main_resource = g_object_ref(web_resource);
-
- g_assert_cmpstr(webkit_web_resource_get_uri(web_resource), ==, base_uri);
-
- /* This should be a redirect, so the response must be NULL */
- g_assert(!response);
- } else if (*been_there == 2) {
- char* uri = g_strdup_printf("%sindex.html", base_uri);
-
- g_assert_cmpstr(webkit_web_resource_get_uri(web_resource), ==, uri);
-
- /* Cancel the request. */
- webkit_network_request_set_uri(request, "about:blank");
-
- g_free(uri);
- }
-}
-
-static void notify_load_status_cb(WebKitWebView* web_view, GParamSpec* pspec, gpointer data)
-{
- if (webkit_web_view_get_load_status(web_view) == WEBKIT_LOAD_FINISHED) {
- gboolean* been_there = data;
- *been_there = TRUE;
-
- g_assert_cmpstr(webkit_web_view_get_uri(web_view), ==, "about:blank");
-
- g_main_loop_quit(loop);
- }
-}
-
-static void test_web_resource_loading()
-{
- WebKitWebView* web_view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- gint been_to_resource_request_starting = 0;
- gboolean been_to_load_finished = FALSE;
- WebKitWebFrame* web_frame;
- WebKitWebDataSource* data_source;
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_object_ref_sink(web_view);
-
- g_signal_connect(web_view, "resource-request-starting",
- G_CALLBACK(resource_request_starting_cb),
- &been_to_resource_request_starting);
-
- g_signal_connect(web_view, "notify::load-status",
- G_CALLBACK(notify_load_status_cb),
- &been_to_load_finished);
-
- webkit_web_view_load_uri(web_view, base_uri);
-
- /* We won't get finished immediately, because of the redirect */
- g_main_loop_run(loop);
-
- web_frame = webkit_web_view_get_main_frame(web_view);
- data_source = webkit_web_frame_get_data_source(web_frame);
-
- g_assert(main_resource);
- g_assert(webkit_web_data_source_get_main_resource(data_source) == main_resource);
- g_object_unref(main_resource);
-
- g_assert_cmpint(been_to_resource_request_starting, ==, 2);
- g_assert_cmpint(been_to_load_finished, ==, TRUE);
-
- g_object_unref(web_view);
- g_main_loop_unref(loop);
-}
-
-static void resource_request_starting_sub_cb(WebKitWebView* web_view, WebKitWebFrame* web_frame, WebKitWebResource* web_resource, WebKitNetworkRequest* request, WebKitNetworkResponse* response, gpointer data)
-{
- if (!main_resource)
- main_resource = g_object_ref(web_resource);
- else if (!sub_resource)
- sub_resource = g_object_ref(web_resource);
-}
-
-static void notify_load_status_sub_cb(WebKitWebView* web_view, GParamSpec* pspec, gpointer data)
-{
- if (webkit_web_view_get_load_status(web_view) == WEBKIT_LOAD_FINISHED)
- g_main_loop_quit(loop);
-}
-
-static gboolean idle_quit_loop_cb(gpointer data)
-{
- g_main_loop_quit(loop);
- return FALSE;
-}
-
-static void test_web_resource_sub_resource_loading()
-{
- WebKitWebView* web_view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- WebKitWebFrame* web_frame;
- WebKitWebDataSource* data_source;
- GList* sub_resources;
- char* uri = g_strdup_printf("%smain.html", base_uri);
-
- main_resource = NULL;
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_object_ref_sink(web_view);
-
- g_signal_connect(web_view, "resource-request-starting",
- G_CALLBACK(resource_request_starting_sub_cb),
- NULL);
-
- g_signal_connect(web_view, "notify::load-status",
- G_CALLBACK(notify_load_status_sub_cb),
- NULL);
-
- webkit_web_view_load_uri(web_view, uri);
-
- g_main_loop_run(loop);
-
- /* The main resource should be loaded; now let's wait for the sub-resource to load */
- g_idle_add(idle_quit_loop_cb, NULL);
- g_main_loop_run(loop);
-
- g_assert(main_resource && sub_resource);
- g_assert(main_resource != sub_resource);
-
- web_frame = webkit_web_view_get_main_frame(web_view);
- data_source = webkit_web_frame_get_data_source(web_frame);
-
- g_assert(webkit_web_data_source_get_main_resource(data_source) == main_resource);
- g_object_unref(main_resource);
-
- sub_resources = webkit_web_data_source_get_subresources(data_source);
- // Expected resources: javascripts.js, favicon.ico
- g_assert(sub_resources);
- g_assert(sub_resources->next);
- g_assert(!sub_resources->next->next);
-
- // Test that the object we got from the data source is the same
- // that went through resource-request-starting. Note that the order is
- // not important (and not guaranteed since the resources are stored in a
- // hashtable).
- g_assert(WEBKIT_WEB_RESOURCE(sub_resources->data) == sub_resource
- || WEBKIT_WEB_RESOURCE(sub_resources->next->data) == sub_resource);
-
- g_object_unref(web_view);
- g_main_loop_unref(loop);
-}
-
-int main(int argc, char** argv)
-{
- SoupServer* server;
- SoupURI* soup_uri;
-
- gtk_test_init(&argc, &argv, NULL);
-
- server = soup_server_new(SOUP_SERVER_PORT, 0, NULL);
- soup_server_run_async(server);
-
- soup_server_add_handler(server, NULL, server_callback, NULL, NULL);
-
- soup_uri = soup_uri_new("http://127.0.0.1/");
- soup_uri_set_port(soup_uri, soup_server_get_port(server));
-
- base_uri = soup_uri_to_string(soup_uri, FALSE);
- soup_uri_free(soup_uri);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add("/webkit/webresource/get_url",
- WebResourceFixture, 0, web_resource_fixture_setup,
- test_webkit_web_resource_get_url, web_resource_fixture_teardown);
- g_test_add("/webkit/webresource/get_mime_type",
- WebResourceFixture, 0, web_resource_fixture_setup,
- test_webkit_web_resource_get_mime_type, web_resource_fixture_teardown);
- g_test_add("/webkit/webresource/get_text_encoding_name",
- WebResourceFixture, 0, web_resource_fixture_setup,
- test_webkit_web_resource_get_encoding, web_resource_fixture_teardown);
- g_test_add("/webkit/webresource/get_frame_name",
- WebResourceFixture, 0, web_resource_fixture_setup,
- test_webkit_web_resource_get_frame_name, web_resource_fixture_teardown);
- g_test_add("/webkit/webresource/get_data",
- WebResourceFixture, 0, web_resource_fixture_setup,
- test_webkit_web_resource_get_data, web_resource_fixture_teardown);
-
- g_test_add_func("/webkit/webresource/loading", test_web_resource_loading);
- g_test_add_func("/webkit/webresource/sub_resource_loading", test_web_resource_sub_resource_loading);
-
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testwebsettings.c b/Source/WebKit/gtk/tests/testwebsettings.c
deleted file mode 100644
index 5ed5b185a..000000000
--- a/Source/WebKit/gtk/tests/testwebsettings.c
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <glib.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-/* Private API */
-char* webkitWebSettingsUserAgentForURI(WebKitWebSettings *settings, const char *uri);
-
-static void test_webkit_web_settings_copy(void)
-{
- WebKitWebSettings *settings = webkit_web_settings_new();
-
- // Set some non-default settings to verify that settings are properly copied.
- g_object_set(settings,
- "enable-webgl", TRUE,
- "enable-fullscreen", TRUE,
- "auto-load-images", FALSE,
- "default-encoding", "utf-8", NULL);
-
- WebKitWebSettings *copy = webkit_web_settings_copy(settings);
-
- gboolean enableWebGL = FALSE;
- gboolean enableFullscreen = FALSE;
- gboolean autoLoadImages = FALSE;
- char *defaultEncoding = 0;
- g_object_get(copy,
- "enable-fullscreen", &enableFullscreen,
- "enable-webgl", &enableWebGL,
- "auto-load-images", &autoLoadImages,
- "default-encoding", &defaultEncoding, NULL);
-
- g_assert(enableWebGL);
- g_assert(enableFullscreen);
- g_assert(!autoLoadImages);
- g_assert_cmpstr(defaultEncoding, ==, "utf-8");
- g_free(defaultEncoding);
-}
-
-static void test_non_quirky_user_agents(WebKitWebSettings *settings, const char *defaultUserAgent)
-{
- char *userAgent = 0;
-
- // test a custom UA string
- userAgent = 0;
- g_object_set(settings, "user-agent", "testwebsettings/0.1", NULL);
- g_object_get(settings,"user-agent", &userAgent, NULL);
- g_assert_cmpstr(userAgent, ==, "testwebsettings/0.1");
- g_free(userAgent);
-
- // setting it to NULL or an empty value should give us the default UA string
- userAgent = 0;
- g_object_set(settings, "user-agent", 0, NULL);
- g_object_get(settings,"user-agent", &userAgent, NULL);
- g_assert_cmpstr(userAgent, ==, defaultUserAgent);
- g_free(userAgent);
-
- userAgent = 0;
- g_object_set(settings, "user-agent", "", NULL);
- g_object_get(settings,"user-agent", &userAgent, NULL);
- g_assert_cmpstr(userAgent, ==, defaultUserAgent);
- g_free(userAgent);
-}
-
-static void test_webkit_web_settings_user_agent(void)
-{
- WebKitWebSettings *settings;
- GtkWidget *webView;
- char *defaultUserAgent;
- char *userAgent = 0;
- g_test_bug("17375");
-
- webView = webkit_web_view_new();
- g_object_ref_sink(webView);
-
- settings = webkit_web_view_get_settings(WEBKIT_WEB_VIEW(webView));
- defaultUserAgent = g_strdup(webkit_web_settings_get_user_agent(settings));
-
- test_non_quirky_user_agents(settings, defaultUserAgent);
-
- /* Test quirky google domains */
- g_object_set(settings, "user-agent", "testwebsettings/0.1", NULL);
-
- userAgent = webkitWebSettingsUserAgentForURI(settings, "http://www.google.com/");
- g_assert_cmpstr(userAgent, ==, "testwebsettings/0.1");
- g_free(userAgent);
-
- userAgent = webkitWebSettingsUserAgentForURI(settings, "http://gmail.com/");
- g_assert_cmpstr(userAgent, ==, "testwebsettings/0.1");
- g_free(userAgent);
-
- userAgent = webkitWebSettingsUserAgentForURI(settings, "http://www.google.com.br/");
- g_assert_cmpstr(userAgent, ==, "testwebsettings/0.1");
- g_free(userAgent);
-
- userAgent = webkitWebSettingsUserAgentForURI(settings, "http://calendar.google.com/");
- g_assert_cmpstr(userAgent, ==, "testwebsettings/0.1");
- g_free(userAgent);
-
- /* Now enable quirks handling */
- g_object_set(settings, "enable-site-specific-quirks", TRUE, NULL);
-
- test_non_quirky_user_agents(settings, defaultUserAgent);
-
- g_object_set(settings, "user-agent", "testwebsettings/0.1", NULL);
-
- userAgent = webkitWebSettingsUserAgentForURI(settings, "http://www.google.com/");
- g_assert_cmpstr(userAgent, ==, defaultUserAgent);
- g_free(userAgent);
-
- userAgent = webkitWebSettingsUserAgentForURI(settings, "http://gmail.com/");
- g_assert_cmpstr(userAgent, ==, defaultUserAgent);
- g_free(userAgent);
-
- userAgent = webkitWebSettingsUserAgentForURI(settings, "http://www.google.com.br/");
- g_assert_cmpstr(userAgent, ==, defaultUserAgent);
- g_free(userAgent);
-
- userAgent = webkitWebSettingsUserAgentForURI(settings, "http://www.google.uk.not.com.br/");
- g_assert_cmpstr(userAgent, ==, "testwebsettings/0.1");
- g_free(userAgent);
-
- g_free(defaultUserAgent);
- g_object_unref(webView);
-}
-
-int main(int argc, char **argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/websettings/user_agent", test_webkit_web_settings_user_agent);
- g_test_add_func("/webkit/websettings/copy", test_webkit_web_settings_copy);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testwebview.c b/Source/WebKit/gtk/tests/testwebview.c
deleted file mode 100644
index 90e6cc36a..000000000
--- a/Source/WebKit/gtk/tests/testwebview.c
+++ /dev/null
@@ -1,724 +0,0 @@
-/*
- * Copyright (C) 2008 Holger Hans Peter Freyther
- * Copyright (C) 2009, 2010 Collabora Ltd.
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include "test_utils.h"
-
-#include <errno.h>
-#include <unistd.h>
-#include <string.h>
-
-#include <glib.h>
-#include <glib/gstdio.h>
-#include <gdk/gdk.h>
-#include <gdk/gdkkeysyms.h>
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-GMainLoop* loop;
-SoupSession *session;
-char* base_uri;
-
-/* For real request testing */
-static void
-server_callback(SoupServer* server, SoupMessage* msg,
- const char* path, GHashTable* query,
- SoupClientContext* context, gpointer data)
-{
- if (msg->method != SOUP_METHOD_GET) {
- soup_message_set_status(msg, SOUP_STATUS_NOT_IMPLEMENTED);
- return;
- }
-
- soup_message_set_status(msg, SOUP_STATUS_OK);
-
- if (g_str_equal(path, "/favicon.ico")) {
- char* contents;
- gsize length;
- GError* error = NULL;
-
- g_file_get_contents("blank.ico", &contents, &length, &error);
- g_assert(!error);
-
- soup_message_body_append(msg->response_body, SOUP_MEMORY_TAKE, contents, length);
- } else if (g_str_equal(path, "/bigdiv.html")) {
- char* contents = g_strdup("<html><body><a id=\"link\" href=\"http://abc.def\">test</a><div style=\"background-color: green; height: 1200px;\"></div></body></html>");
- soup_message_body_append(msg->response_body, SOUP_MEMORY_TAKE, contents, strlen(contents));
- } else if (g_str_equal(path, "/iframe.html")) {
- char* contents = g_strdup("<html><body id=\"some-content\"><div style=\"background-color: green; height: 50px;\"></div><iframe src=\"bigdiv.html\"></iframe></body></html>");
- soup_message_body_append(msg->response_body, SOUP_MEMORY_TAKE, contents, strlen(contents));
- } else {
- char* contents = g_strdup("<html><body>test</body></html>");
- soup_message_body_append(msg->response_body, SOUP_MEMORY_TAKE, contents, strlen(contents));
- }
-
- soup_message_body_complete(msg->response_body);
-}
-
-static void idle_quit_loop_cb(WebKitWebView* web_view, GParamSpec* pspec, gpointer data)
-{
- if (webkit_web_view_get_load_status(web_view) == WEBKIT_LOAD_FINISHED ||
- webkit_web_view_get_load_status(web_view) == WEBKIT_LOAD_FAILED)
- g_main_loop_quit(loop);
-}
-
-static gboolean timeout_cb(gpointer data)
-{
- g_error("Didn't get icon-uri before timing out.");
- return FALSE;
-}
-
-static void icon_uri_changed_cb(WebKitWebView* web_view, GParamSpec* pspec, gpointer data)
-{
- char* expected_uri;
-
- g_assert_cmpstr(g_param_spec_get_name(pspec), ==, "icon-uri");
-
- expected_uri = g_strdup_printf("%sfavicon.ico", base_uri);
- g_assert_cmpstr(webkit_web_view_get_icon_uri(web_view), ==, expected_uri);
- g_free(expected_uri);
-
- g_main_loop_quit(loop);
-}
-
-static void icon_loaded_cb(WebKitWebView* web_view, char* icon_uri, gpointer data)
-{
- gboolean* been_here = (gboolean*)data;
- char* expected_uri = g_strdup_printf("%sfavicon.ico", base_uri);
- g_assert_cmpstr(icon_uri, ==, expected_uri);
- g_free(expected_uri);
-
- g_assert_cmpstr(icon_uri, ==, webkit_web_view_get_icon_uri(web_view));
-
- *been_here = TRUE;
-}
-
-static void test_webkit_web_view_icon_uri()
-{
- gboolean been_to_icon_loaded = FALSE;
- WebKitWebView* view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- g_object_ref_sink(G_OBJECT(view));
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_object_connect(G_OBJECT(view),
- "signal::notify::icon-uri", icon_uri_changed_cb, NULL,
- "signal::icon-loaded", icon_loaded_cb, &been_to_icon_loaded,
- NULL);
-
- webkit_web_view_load_uri(view, base_uri);
-
- guint timeout_id = g_timeout_add(500, timeout_cb, 0);
-
- g_main_loop_run(loop);
-
- g_source_remove(timeout_id);
-
- g_assert(been_to_icon_loaded);
-
- g_object_unref(view);
-}
-
-static gboolean map_event_cb(GtkWidget *widget, GdkEvent* event, gpointer data)
-{
- GMainLoop* loop = (GMainLoop*)data;
- g_main_loop_quit(loop);
-
- return FALSE;
-}
-
-static gboolean quit_after_short_delay_cb(gpointer data)
-{
- g_main_loop_quit((GMainLoop*)data);
- return FALSE;
-}
-
-static void test_webkit_web_view_grab_focus()
-{
- char* uri = g_strconcat(base_uri, "iframe.html", NULL);
- GtkWidget* window = gtk_window_new(GTK_WINDOW_POPUP);
- GtkWidget* scrolled_window = gtk_scrolled_window_new(NULL, NULL);
- WebKitWebView* view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- GtkAdjustment* adjustment;
-
- gtk_window_set_default_size(GTK_WINDOW(window), 400, 200);
-
- gtk_container_add(GTK_CONTAINER(window), scrolled_window);
- gtk_container_add(GTK_CONTAINER(scrolled_window), GTK_WIDGET(view));
-
- gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled_window),
- GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_signal_connect(view, "notify::load-status", G_CALLBACK(idle_quit_loop_cb), NULL);
-
- /* Wait for window to show up */
- gtk_widget_show_all(window);
- g_signal_connect(window, "map-event",
- G_CALLBACK(map_event_cb), loop);
- g_main_loop_run(loop);
-
- /* Load a page with a big div that will cause scrollbars to appear */
- webkit_web_view_load_uri(view, uri);
- g_main_loop_run(loop);
-
- adjustment = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(scrolled_window));
- g_assert_cmpfloat(gtk_adjustment_get_value(adjustment), ==, 0.0);
-
- /* Since webkit_web_view_execute_script does not return a value,
- it is impossible to know if an inner document has focus after
- a node of it was focused via .focus() method.
- The code below is an workaround: if the node has focus, a scroll
- action is performed and afterward it is checked if the adjustment
- has to be different from 0.
- */
- char script[] = "var innerDoc = document.defaultView.frames[0].document; \
- innerDoc.getElementById(\"link\").focus(); \
- if (innerDoc.hasFocus()) \
- window.scrollBy(0, 100);";
-
- /* Focus an element using JavaScript */
- webkit_web_view_execute_script(view, script);
-
- /* Adjustments update asynchronously, so we must wait a bit. */
- g_timeout_add(100, quit_after_short_delay_cb, loop);
- g_main_loop_run(loop);
-
- /* Make sure the ScrolledWindow noticed the scroll */
- g_assert_cmpfloat(gtk_adjustment_get_value(adjustment), !=, 0.0);
-
- g_free(uri);
- gtk_widget_destroy(window);
-}
-
-static void do_test_webkit_web_view_adjustments(gboolean with_page_cache)
-{
- char* effective_uri = g_strconcat(base_uri, "bigdiv.html", NULL);
- char* second_uri = g_strconcat(base_uri, "iframe.html", NULL);
- GtkWidget* window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- GtkWidget* scrolled_window = gtk_scrolled_window_new(NULL, NULL);
- WebKitWebView* view = WEBKIT_WEB_VIEW(webkit_web_view_new());
- GtkAdjustment* adjustment;
- double lower;
- double upper;
-
- if (with_page_cache) {
- WebKitWebSettings* settings = webkit_web_view_get_settings(view);
- g_object_set(settings, "enable-page-cache", TRUE, NULL);
- }
-
- gtk_window_set_default_size(GTK_WINDOW(window), 400, 200);
-
- gtk_container_add(GTK_CONTAINER(window), scrolled_window);
- gtk_container_add(GTK_CONTAINER(scrolled_window), GTK_WIDGET(view));
-
- gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled_window),
- GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_object_connect(G_OBJECT(view),
- "signal::notify::load-status", idle_quit_loop_cb, NULL,
- NULL);
-
- /* Wait for window to show up */
- gtk_widget_show_all(window);
- g_signal_connect(window, "map-event",
- G_CALLBACK(map_event_cb), loop);
- g_main_loop_run(loop);
-
- /* Load a page with a big div that will cause scrollbars to appear */
- webkit_web_view_load_uri(view, effective_uri);
- g_main_loop_run(loop);
-
- /* Adjustments update asynchronously, so we must wait a bit. */
- g_timeout_add(100, quit_after_short_delay_cb, loop);
- g_main_loop_run(loop);
-
- adjustment = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(scrolled_window));
- g_assert_cmpfloat(gtk_adjustment_get_value(adjustment), ==, 0.0);
-
- lower = gtk_adjustment_get_lower(adjustment);
- upper = gtk_adjustment_get_upper(adjustment);
-
- /* Scroll the view using JavaScript */
- webkit_web_view_execute_script(view, "window.scrollBy(0, 100)");
-
- /* Adjustments update asynchronously, so we must wait a bit. */
- g_timeout_add(100, quit_after_short_delay_cb, loop);
- g_main_loop_run(loop);
-
- /* Make sure the ScrolledWindow noticed the scroll */
- g_assert_cmpfloat(gtk_adjustment_get_value(adjustment), ==, 100.0);
-
- /* Load a second URI */
- webkit_web_view_load_uri(view, second_uri);
- g_main_loop_run(loop);
-
- /* The page loaded but the adjustments may not be updated yet. Wait a bit. */
- g_timeout_add(100, quit_after_short_delay_cb, loop);
- g_main_loop_run(loop);
-
- /* Make sure the scrollbar has been reset */
- g_assert_cmpfloat(gtk_adjustment_get_value(adjustment), ==, 0.0);
-
- /* Go back */
- webkit_web_view_go_back(view);
-
- /* When using page cache, go_back will return syncronously */
- if (!with_page_cache)
- g_main_loop_run(loop);
-
- /* Make sure GTK+ has time to process the changes in size, for the adjusments */
- while (gtk_events_pending())
- gtk_main_iteration();
-
- /* Make sure upper and lower bounds have been restored correctly */
- g_assert_cmpfloat(lower, ==, gtk_adjustment_get_lower(adjustment));
- g_assert_cmpfloat(upper, ==, gtk_adjustment_get_upper(adjustment));
- g_assert_cmpfloat(gtk_adjustment_get_value(adjustment), ==, 100.0);
-
- g_free(effective_uri);
- g_free(second_uri);
-
- gtk_widget_destroy(window);
-}
-
-static void test_webkit_web_view_adjustments()
-{
- /* Test this with page cache disabled, and enabled. */
- do_test_webkit_web_view_adjustments(FALSE);
- do_test_webkit_web_view_adjustments(TRUE);
-}
-
-gboolean delayed_destroy(gpointer data)
-{
- gtk_widget_destroy(GTK_WIDGET(data));
- g_main_loop_quit(loop);
- return FALSE;
-}
-
-static void test_webkit_web_view_destroy()
-{
- GtkWidget* window;
- GtkWidget* web_view;
-
- window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- web_view = webkit_web_view_new();
-
- gtk_container_add(GTK_CONTAINER(window), web_view);
-
- gtk_widget_show_all(window);
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_signal_connect(window, "map-event",
- G_CALLBACK(map_event_cb), loop);
- g_main_loop_run(loop);
-
- g_idle_add(delayed_destroy, web_view);
- g_main_loop_run(loop);
-
- gtk_widget_destroy(window);
-}
-
-static void test_webkit_web_view_window_features()
-{
- GtkWidget* window;
- GtkWidget* web_view;
-
- window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- web_view = webkit_web_view_new();
-
- gtk_container_add(GTK_CONTAINER(window), web_view);
-
- gtk_widget_show_all(window);
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_signal_connect(window, "map-event",
- G_CALLBACK(map_event_cb), loop);
- g_main_loop_run(loop);
-
- /* Bug #36144 */
- g_object_set(G_OBJECT(web_view), "window-features", NULL, NULL);
-
- gtk_widget_destroy(window);
-}
-
-static void test_webkit_web_view_in_offscreen_window_does_not_crash()
-{
- loop = g_main_loop_new(NULL, TRUE);
-
- GtkWidget *window = gtk_offscreen_window_new();
- GtkWidget *web_view = webkit_web_view_new();
-
- gtk_container_add(GTK_CONTAINER(window), web_view);
- gtk_widget_show_all(window);
- g_signal_connect(web_view, "notify::load-status", G_CALLBACK(idle_quit_loop_cb), NULL);
- webkit_web_view_load_uri(WEBKIT_WEB_VIEW(web_view), base_uri);
-
- g_main_loop_run(loop);
-
- gtk_widget_destroy(window);
- g_main_loop_unref(loop);
-}
-
-static void test_webkit_web_view_does_not_steal_focus()
-{
- loop = g_main_loop_new(NULL, TRUE);
-
- GtkWidget *window = gtk_offscreen_window_new();
- GtkWidget *webView = webkit_web_view_new();
- GtkWidget *entry = gtk_entry_new();
-
-#ifdef GTK_API_VERSION_2
- GtkWidget *box = gtk_hbox_new(FALSE, 0);
-#else
- GtkWidget *box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
-#endif
-
- gtk_container_add(GTK_CONTAINER(box), webView);
- gtk_container_add(GTK_CONTAINER(box), entry);
- gtk_container_add(GTK_CONTAINER(window), box);
- gtk_widget_show_all(window);
-
- gtk_widget_grab_focus(entry);
- g_assert(gtk_widget_is_focus(entry));
-
- g_signal_connect(webView, "notify::load-status", G_CALLBACK(idle_quit_loop_cb), NULL);
- webkit_web_view_load_html_string(WEBKIT_WEB_VIEW(webView),
- "<html><body>"
- " <input id=\"entry\" type=\"text\"/>"
- " <script>"
- " document.getElementById(\"entry\").focus();"
- " </script>"
- "</body></html>", "file://");
-
- g_main_loop_run(loop);
-
- g_assert(gtk_widget_is_focus(entry));
-
- gtk_widget_destroy(window);
- g_main_loop_unref(loop);
-}
-
-static gboolean emitKeyStroke(WebKitWebView* webView)
-{
- GdkEvent* pressEvent = gdk_event_new(GDK_KEY_PRESS);
- pressEvent->key.keyval = GDK_KEY_f;
- GdkWindow* window = gtk_widget_get_window(GTK_WIDGET(webView));
- pressEvent->key.window = window;
- g_object_ref(pressEvent->key.window);
-
-#ifndef GTK_API_VERSION_2
- GdkDeviceManager* manager = gdk_display_get_device_manager(gdk_window_get_display(window));
- gdk_event_set_device(pressEvent, gdk_device_manager_get_client_pointer(manager));
-#endif
-
- // When synthesizing an event, an invalid hardware_keycode value
- // can cause it to be badly processed by Gtk+.
- GdkKeymapKey* keys;
- gint n_keys;
- if (gdk_keymap_get_entries_for_keyval(gdk_keymap_get_default(), GDK_KEY_f, &keys, &n_keys)) {
- pressEvent->key.hardware_keycode = keys[0].keycode;
- g_free(keys);
- }
-
- GdkEvent* releaseEvent = gdk_event_copy(pressEvent);
- gtk_main_do_event(pressEvent);
- gdk_event_free(pressEvent);
- releaseEvent->key.type = GDK_KEY_RELEASE;
- gtk_main_do_event(releaseEvent);
- gdk_event_free(releaseEvent);
-
- return FALSE;
-}
-
-static gboolean entering_fullscreen_cb(WebKitWebView* webView, GObject* element, gboolean blocked)
-{
- if (blocked)
- g_main_loop_quit(loop);
- else
- g_timeout_add(200, (GSourceFunc) emitKeyStroke, webView);
- return blocked;
-}
-
-static gboolean leaving_fullscreen_cb(WebKitWebView* webView, GObject* element, gpointer data)
-{
- g_main_loop_quit(loop);
- return FALSE;
-}
-
-static void test_webkit_web_view_fullscreen(gconstpointer blocked)
-{
- GtkWidget* window;
- GtkWidget* web_view;
- WebKitWebSettings *settings;
-
- window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- web_view = webkit_web_view_new();
-
- settings = webkit_web_view_get_settings(WEBKIT_WEB_VIEW(web_view));
- g_object_set(settings, "enable-fullscreen", TRUE, NULL);
- webkit_web_view_set_settings(WEBKIT_WEB_VIEW(web_view), settings);
-
- gtk_container_add(GTK_CONTAINER(window), web_view);
-
- gtk_widget_show_all(window);
-
- loop = g_main_loop_new(NULL, TRUE);
-
- g_signal_connect(web_view, "entering-fullscreen", G_CALLBACK(entering_fullscreen_cb), (gpointer) blocked);
- g_signal_connect(web_view, "leaving-fullscreen", G_CALLBACK(leaving_fullscreen_cb), NULL);
-
- webkit_web_view_load_string(WEBKIT_WEB_VIEW(web_view), "<html><body>"
- "<script>"
- "var eventName = 'keypress';"
- "document.addEventListener(eventName, function () {"
- " document.documentElement.webkitRequestFullScreen();"
- "}, false);"
- "</script></body></html>", NULL, NULL, NULL);
-
- g_timeout_add(100, (GSourceFunc) emitKeyStroke, WEBKIT_WEB_VIEW(web_view));
- g_main_loop_run(loop);
-
- gtk_widget_destroy(window);
-}
-
-static gboolean checkMimeTypeForFilter(GtkFileFilter* filter, const gchar* mimeType)
-{
- GtkFileFilterInfo filter_info;
- filter_info.contains = GTK_FILE_FILTER_MIME_TYPE;
- filter_info.mime_type = mimeType;
- return gtk_file_filter_filter(filter, &filter_info);
-}
-
-static gboolean runFileChooserCbNoMultiselNoMime(WebKitWebView* webview, WebKitFileChooserRequest* request, gpointer data)
-{
- g_assert(!webkit_file_chooser_request_get_select_multiple(request));
-
- const gchar* const* mimeTypes = webkit_file_chooser_request_get_mime_types(request);
- g_assert(!mimeTypes);
- GtkFileFilter* filter = webkit_file_chooser_request_get_mime_types_filter(request);
- g_assert(!filter);
-
- const gchar* const* selectedFiles = webkit_file_chooser_request_get_selected_files(request);
- g_assert(!selectedFiles);
-
- g_main_loop_quit(loop);
- return TRUE;
-}
-
-static gboolean runFileChooserCbMultiselNoMime(WebKitWebView* webview, WebKitFileChooserRequest* request, gpointer data)
-{
- g_assert(webkit_file_chooser_request_get_select_multiple(request));
-
- const gchar* const* mimeTypes = webkit_file_chooser_request_get_mime_types(request);
- g_assert(!mimeTypes);
- GtkFileFilter* filter = webkit_file_chooser_request_get_mime_types_filter(request);
- g_assert(!filter);
- const gchar* const* selectedFiles = webkit_file_chooser_request_get_selected_files(request);
- g_assert(!selectedFiles);
-
- // Select some files.
- const gchar* filesToSelect[4] = { "/foo", "/foo/bar", "/foo/bar/baz", 0 };
- webkit_file_chooser_request_select_files(request, filesToSelect);
-
- // Check the files that have been just selected.
- selectedFiles = webkit_file_chooser_request_get_selected_files(request);
- g_assert(selectedFiles);
- g_assert_cmpstr(selectedFiles[0], ==, "/foo");
- g_assert_cmpstr(selectedFiles[1], ==, "/foo/bar");
- g_assert_cmpstr(selectedFiles[2], ==, "/foo/bar/baz");
- g_assert(!selectedFiles[3]);
-
- g_main_loop_quit(loop);
- return TRUE;
-}
-
-static gboolean runFileChooserCbSelectionRetained(WebKitWebView* webview, WebKitFileChooserRequest* request, gpointer data)
-{
- const gchar* const* selectedFiles = webkit_file_chooser_request_get_selected_files(request);
- g_assert(selectedFiles);
- g_assert_cmpstr(selectedFiles[0], ==, "/foo");
- g_assert_cmpstr(selectedFiles[1], ==, "/foo/bar");
- g_assert_cmpstr(selectedFiles[2], ==, "/foo/bar/baz");
- g_assert(!selectedFiles[3]);
-
- g_main_loop_quit(loop);
- return TRUE;
-}
-
-static gboolean runFileChooserCbNoMultiselAcceptTypes(WebKitWebView* webview, WebKitFileChooserRequest* request, gpointer data)
-{
- g_assert(!webkit_file_chooser_request_get_select_multiple(request));
-
- const gchar* const* mimeTypes = webkit_file_chooser_request_get_mime_types(request);
- g_assert(mimeTypes);
- g_assert_cmpstr(mimeTypes[0], ==, "audio/*");
- g_assert_cmpstr(mimeTypes[1], ==, "video/*");
- g_assert_cmpstr(mimeTypes[2], ==, "image/*");
- g_assert(!mimeTypes[3]);
-
- GtkFileFilter* filter = webkit_file_chooser_request_get_mime_types_filter(request);
- g_assert(GTK_IS_FILE_FILTER(filter));
- g_assert(checkMimeTypeForFilter(filter, "audio/*"));
- g_assert(checkMimeTypeForFilter(filter, "video/*"));
- g_assert(checkMimeTypeForFilter(filter, "image/*"));
-
- const gchar* const* selectedFiles = webkit_file_chooser_request_get_selected_files(request);
- g_assert(!selectedFiles);
-
- g_main_loop_quit(loop);
- return TRUE;
-}
-
-void doMouseButtonEvent(GtkWidget* widget, GdkEventType eventType, int x, int y, unsigned int button, unsigned int modifiers)
-{
- g_assert(gtk_widget_get_realized(widget));
-
- GdkEvent* event = gdk_event_new(eventType);
- event->button.window = gtk_widget_get_window(widget);
- g_object_ref(event->button.window);
-
- event->button.time = GDK_CURRENT_TIME;
- event->button.x = x;
- event->button.y = y;
- event->button.axes = 0;
- event->button.state = modifiers;
- event->button.button = button;
-
-#ifndef GTK_API_VERSION_2
- event->button.device = gdk_device_manager_get_client_pointer(gdk_display_get_device_manager(gtk_widget_get_display(widget)));
-#endif
-
- int xRoot, yRoot;
- gdk_window_get_root_coords(gtk_widget_get_window(widget), x, y, &xRoot, &yRoot);
- event->button.x_root = xRoot;
- event->button.y_root = yRoot;
- gtk_main_do_event(event);
-}
-
-static void clickMouseButton(GtkWidget* widget, int x, int y, unsigned int button, unsigned int modifiers)
-{
- doMouseButtonEvent(widget, GDK_BUTTON_PRESS, x, y, button, modifiers);
- doMouseButtonEvent(widget, GDK_BUTTON_RELEASE, x, y, button, modifiers);
-}
-
-static gboolean clickMouseButtonAndWaitForFileChooserRequest(WebKitWebView* webView)
-{
- clickMouseButton(GTK_WIDGET(webView), 5, 5, 1, 0);
- return TRUE;
-}
-
-static void test_webkit_web_view_file_chooser()
-{
- const gchar* htmlFormatBase = "<html><body>"
- "<input style='position:absolute;left:0;top:0;margin:0;padding:0' type='file' %s/>"
- "</body></html>";
-
- GtkWidget* window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- GtkWidget* webView = webkit_web_view_new();
- gtk_container_add(GTK_CONTAINER(window), webView);
- gtk_widget_show_all(window);
-
- loop = g_main_loop_new(NULL, TRUE);
-
- // Multiple selections not allowed, no MIME filtering.
- gulong handler = g_signal_connect(webView, "run-file-chooser", G_CALLBACK(runFileChooserCbNoMultiselNoMime), NULL);
- gchar* htmlFormat = g_strdup_printf(htmlFormatBase, "");
- webkit_web_view_load_string(WEBKIT_WEB_VIEW(webView), htmlFormat, NULL, NULL, NULL);
- g_free(htmlFormat);
-
- g_timeout_add(100, (GSourceFunc) clickMouseButtonAndWaitForFileChooserRequest, WEBKIT_WEB_VIEW(webView));
- g_main_loop_run(loop);
-
- g_signal_handler_disconnect(webView, handler);
-
- // Multiple selections allowed, no MIME filtering, some pre-selected files.
- handler = g_signal_connect(webView, "run-file-chooser", G_CALLBACK(runFileChooserCbMultiselNoMime), NULL);
- htmlFormat = g_strdup_printf(htmlFormatBase, "multiple");
- webkit_web_view_load_string(WEBKIT_WEB_VIEW(webView), htmlFormat, NULL, NULL, NULL);
- g_free(htmlFormat);
-
- g_timeout_add(100, (GSourceFunc) clickMouseButtonAndWaitForFileChooserRequest, WEBKIT_WEB_VIEW(webView));
- g_main_loop_run(loop);
-
- g_signal_handler_disconnect(webView, handler);
-
- // Perform another request to check if the list of files selected
- // in the previous step appears now as part of the new request.
- handler = g_signal_connect(webView, "run-file-chooser", G_CALLBACK(runFileChooserCbSelectionRetained), NULL);
- g_timeout_add(100, (GSourceFunc) clickMouseButtonAndWaitForFileChooserRequest, WEBKIT_WEB_VIEW(webView));
- g_main_loop_run(loop);
-
- g_signal_handler_disconnect(webView, handler);
-
- // Multiple selections not allowed, only accept images, audio and video files.
- handler = g_signal_connect(webView, "run-file-chooser", G_CALLBACK(runFileChooserCbNoMultiselAcceptTypes), NULL);
- htmlFormat = g_strdup_printf(htmlFormatBase, "accept='audio/*,video/*,image/*'");
- webkit_web_view_load_string(WEBKIT_WEB_VIEW(webView), htmlFormat, NULL, NULL, NULL);
- g_free(htmlFormat);
-
- g_timeout_add(100, (GSourceFunc) clickMouseButtonAndWaitForFileChooserRequest, WEBKIT_WEB_VIEW(webView));
- g_main_loop_run(loop);
-
- g_signal_handler_disconnect(webView, handler);
- gtk_widget_destroy(window);
-}
-
-int main(int argc, char** argv)
-{
- SoupServer* server;
- SoupURI* soup_uri;
-
- gtk_test_init(&argc, &argv, NULL);
-
- /* Hopefully make test independent of the path it's called from. */
- testutils_relative_chdir("Source/WebKit/gtk/tests/resources/test.html", argv[0]);
-
- server = soup_server_new(SOUP_SERVER_PORT, 0, NULL);
- soup_server_run_async(server);
-
- soup_server_add_handler(server, NULL, server_callback, NULL, NULL);
-
- soup_uri = soup_uri_new("http://127.0.0.1/");
- soup_uri_set_port(soup_uri, soup_server_get_port(server));
-
- base_uri = soup_uri_to_string(soup_uri, FALSE);
- soup_uri_free(soup_uri);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/webview/icon-uri", test_webkit_web_view_icon_uri);
- g_test_add_func("/webkit/webview/adjustments", test_webkit_web_view_adjustments);
- g_test_add_func("/webkit/webview/destroy", test_webkit_web_view_destroy);
- g_test_add_func("/webkit/webview/grab_focus", test_webkit_web_view_grab_focus);
- g_test_add_func("/webkit/webview/window-features", test_webkit_web_view_window_features);
- g_test_add_func("/webkit/webview/webview-in-offscreen-window-does-not-crash", test_webkit_web_view_in_offscreen_window_does_not_crash);
- g_test_add_func("/webkit/webview/webview-does-not-steal-focus", test_webkit_web_view_does_not_steal_focus);
- g_test_add_data_func("/webkit/webview/fullscreen", GINT_TO_POINTER(FALSE), test_webkit_web_view_fullscreen);
- g_test_add_data_func("/webkit/webview/fullscreen-blocked", GINT_TO_POINTER(TRUE), test_webkit_web_view_fullscreen);
- g_test_add_func("/webkit/webview/file-chooser", test_webkit_web_view_file_chooser);
-
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/tests/testwindow.c b/Source/WebKit/gtk/tests/testwindow.c
deleted file mode 100644
index ce66d4661..000000000
--- a/Source/WebKit/gtk/tests/testwindow.c
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright (C) 2009 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "autotoolsconfig.h"
-#include <gtk/gtk.h>
-#include <webkit/webkit.h>
-
-static void notify_load_status_cb(WebKitWebView* web_view, GParamSpec* pspec, gpointer data)
-{
- if (webkit_web_view_get_load_status(web_view) == WEBKIT_LOAD_FINISHED) {
- GMainLoop* loop = (GMainLoop*)data;
-
- g_main_loop_quit(loop);
- }
-}
-
-static void test_webkit_window_scrollbar_policy(void)
-{
- GMainLoop* loop;
- GtkWidget* scrolledWindow;
- GtkWidget* webView;
- WebKitWebFrame* mainFrame;
- GtkPolicyType horizontalPolicy;
- GtkPolicyType verticalPolicy;
-
- loop = g_main_loop_new(NULL, TRUE);
-
- scrolledWindow = gtk_scrolled_window_new(NULL, NULL);
- gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledWindow),
- GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
-
- webView = webkit_web_view_new();
- g_object_ref_sink(webView);
-
- g_signal_connect(webView, "notify::load-status",
- G_CALLBACK(notify_load_status_cb), loop);
-
- gtk_container_add(GTK_CONTAINER(scrolledWindow), webView);
-
- mainFrame = webkit_web_view_get_main_frame(WEBKIT_WEB_VIEW(webView));
-
- /* Test we correctly apply policy for not having scrollbars; This
- * case is special, because we turn the policy from NEVER to
- * AUTOMATIC, since we cannot easily represent the same thing
- * using GtkScrolledWindow */
- webkit_web_view_load_html_string(WEBKIT_WEB_VIEW(webView),
- "<html><body>WebKit!</body><script>document.getElementsByTagName('body')[0].style.overflow = 'hidden';</script></html>",
- "file://");
-
- g_main_loop_run(loop);
-
- gtk_scrolled_window_get_policy(GTK_SCROLLED_WINDOW(scrolledWindow),
- &horizontalPolicy, &verticalPolicy);
-
- g_assert(horizontalPolicy == GTK_POLICY_AUTOMATIC);
- g_assert(verticalPolicy == GTK_POLICY_AUTOMATIC);
-
- g_assert(GTK_POLICY_NEVER == webkit_web_frame_get_horizontal_scrollbar_policy(mainFrame));
- g_assert(GTK_POLICY_NEVER == webkit_web_frame_get_vertical_scrollbar_policy(mainFrame));
-
- /* Test we correctly apply policy for always having scrollbars */
- webkit_web_view_load_html_string(WEBKIT_WEB_VIEW(webView),
- "<html><body>WebKit!</body><script>document.getElementsByTagName('body')[0].style.overflow = 'scroll';</script></html>",
- "file://");
-
- g_main_loop_run(loop);
-
- gtk_scrolled_window_get_policy(GTK_SCROLLED_WINDOW(scrolledWindow),
- &horizontalPolicy, &verticalPolicy);
-
- g_assert(horizontalPolicy == GTK_POLICY_ALWAYS);
- g_assert(verticalPolicy == GTK_POLICY_ALWAYS);
-
- g_assert(horizontalPolicy == webkit_web_frame_get_horizontal_scrollbar_policy(mainFrame));
- g_assert(verticalPolicy == webkit_web_frame_get_vertical_scrollbar_policy(mainFrame));
-
- /* Test we correctly apply policy for having scrollbars when needed */
- webkit_web_view_load_html_string(WEBKIT_WEB_VIEW(webView),
- "<html><body>WebKit!</body><script>document.getElementsByTagName('body')[0].style.overflow = 'auto';</script></html>",
- "file://");
-
- g_main_loop_run(loop);
-
- gtk_scrolled_window_get_policy(GTK_SCROLLED_WINDOW(scrolledWindow),
- &horizontalPolicy, &verticalPolicy);
-
- g_assert(horizontalPolicy == GTK_POLICY_AUTOMATIC);
- g_assert(verticalPolicy == GTK_POLICY_AUTOMATIC);
-
- g_assert(horizontalPolicy == webkit_web_frame_get_horizontal_scrollbar_policy(mainFrame));
- g_assert(verticalPolicy == webkit_web_frame_get_vertical_scrollbar_policy(mainFrame));
-
- g_object_unref(webView);
-}
-
-int main(int argc, char** argv)
-{
- gtk_test_init(&argc, &argv, NULL);
-
- g_test_bug_base("https://bugs.webkit.org/");
- g_test_add_func("/webkit/window/scrollbar_policy", test_webkit_window_scrollbar_policy);
- return g_test_run ();
-}
diff --git a/Source/WebKit/gtk/webkit.pc.in b/Source/WebKit/gtk/webkit.pc.in
deleted file mode 100644
index 1d0c4e9bb..000000000
--- a/Source/WebKit/gtk/webkit.pc.in
+++ /dev/null
@@ -1,11 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: WebKit
-Description: Web content engine for GTK+
-Version: @VERSION@
-Requires: glib-2.0 gtk+-@GTK_API_VERSION@ libsoup-2.4 javascriptcoregtk-@WEBKITGTK_API_VERSION@
-Libs: -L${libdir} -lwebkitgtk-@WEBKITGTK_API_VERSION@
-Cflags: -I${includedir}/webkitgtk-@WEBKITGTK_API_VERSION@
diff --git a/Source/WebKit/gtk/webkit/webkit.h b/Source/WebKit/gtk/webkit/webkit.h
deleted file mode 100644
index aa7b93dbd..000000000
--- a/Source/WebKit/gtk/webkit/webkit.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (C) 2007 Alp Toker <alp@atoker.com>
- * Copyright (C) 2008 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef __WEBKIT_H__
-#define __WEBKIT_H__
-
-#include <webkit/webkitversion.h>
-#include <webkit/webkitapplicationcache.h>
-#include <webkit/webkitdefines.h>
-#include <webkit/webkitdom.h>
-#include <webkit/webkitdownload.h>
-#include <webkit/webkitenumtypes.h>
-#include <webkit/webkitfavicondatabase.h>
-#include <webkit/webkitfilechooserrequest.h>
-#include <webkit/webkitgeolocationpolicydecision.h>
-#include <webkit/webkitglobals.h>
-#include <webkit/webkithittestresult.h>
-#include <webkit/webkiticondatabase.h>
-#include <webkit/webkitnetworkrequest.h>
-#include <webkit/webkitnetworkresponse.h>
-#include <webkit/webkitsecurityorigin.h>
-#include <webkit/webkitsoupauthdialog.h>
-#include <webkit/webkitspellchecker.h>
-#include <webkit/webkitviewportattributes.h>
-#include <webkit/webkitwebbackforwardlist.h>
-#include <webkit/webkitwebdatabase.h>
-#include <webkit/webkitwebdatasource.h>
-#include <webkit/webkitwebframe.h>
-#include <webkit/webkitwebhistoryitem.h>
-#include <webkit/webkitwebinspector.h>
-#include <webkit/webkitwebnavigationaction.h>
-#include <webkit/webkitwebplugin.h>
-#include <webkit/webkitwebplugindatabase.h>
-#include <webkit/webkitwebpolicydecision.h>
-#include <webkit/webkitwebresource.h>
-#include <webkit/webkitwebsettings.h>
-#include <webkit/webkitwebview.h>
-#include <webkit/webkitwebwindowfeatures.h>
-
-#endif /* __WEBKIT_H__ */
diff --git a/Source/WebKit/gtk/webkit/webkitapplicationcache.cpp b/Source/WebKit/gtk/webkit/webkitapplicationcache.cpp
deleted file mode 100644
index df3635b5d..000000000
--- a/Source/WebKit/gtk/webkit/webkitapplicationcache.cpp
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael Alonzo <jmalonzo@gmail.com>
- * Copyright (C) 2011 Lukasz Slachciak
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitapplicationcache.h"
-
-#include "ApplicationCacheStorage.h"
-#include "FileSystem.h"
-#include <wtf/text/CString.h>
-
-// web application cache maximum storage size
-static unsigned long long cacheMaxSize = UINT_MAX;
-
-/**
- * webkit_application_cache_get_maximum_size:
- *
- * Returns the maximum size of the cache storage.
- * By default it is set to UINT_MAX i.e. no quota.
- *
- * Returns: the current application cache maximum storage size
- *
- * Since: 1.3.13
- **/
-unsigned long long webkit_application_cache_get_maximum_size()
-{
- return (cacheMaxSize = WebCore::cacheStorage().maximumSize());
-}
-
-/**
- * webkit_application_cache_set_maximum_size:
- * @size: the new web application cache maximum storage size
- *
- * Sets new application cache maximum storage size.
- * Changing the application cache storage size will clear the cache
- * and rebuild cache storage.
- *
- * Since: 1.3.13
- **/
-void webkit_application_cache_set_maximum_size(unsigned long long size)
-{
- if (size != cacheMaxSize) {
- WebCore::cacheStorage().empty();
- WebCore::cacheStorage().vacuumDatabaseFile();
- WebCore::cacheStorage().setMaximumSize(size);
- cacheMaxSize = size;
- }
-}
-
-/**
- * webkit_application_cache_get_database_directory_path:
- *
- * Returns the path to the directory WebKit will write web application
- * cache databases to. By default this path is set to
- * $XDG_CACHE_HOME/webkitgtk/applications and cannot be modified.
- *
- * Returns: the application cache database directory path
- *
- * Since: 1.3.13
- **/
-const gchar* webkit_application_cache_get_database_directory_path()
-{
- CString path = WebCore::fileSystemRepresentation(WebCore::cacheStorage().cacheDirectory());
- return path.data();
-}
-
diff --git a/Source/WebKit/gtk/webkit/webkitapplicationcache.h b/Source/WebKit/gtk/webkit/webkitapplicationcache.h
deleted file mode 100644
index 4fec1692b..000000000
--- a/Source/WebKit/gtk/webkit/webkitapplicationcache.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2011 Lukasz Slachciak
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2,1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitapplicationcache_h
-#define webkitapplicationcache_h
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-WEBKIT_API unsigned long long
-webkit_application_cache_get_maximum_size(void);
-
-WEBKIT_API void
-webkit_application_cache_set_maximum_size(unsigned long long size);
-
-WEBKIT_API const gchar*
-webkit_application_cache_get_database_directory_path(void);
-
-G_END_DECLS
-
-#endif /* webkitapplicationcache_h */
diff --git a/Source/WebKit/gtk/webkit/webkitauthenticationdialog.cpp b/Source/WebKit/gtk/webkit/webkitauthenticationdialog.cpp
deleted file mode 100644
index e26defa70..000000000
--- a/Source/WebKit/gtk/webkit/webkitauthenticationdialog.cpp
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (C) 2013 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "webkitauthenticationdialog.h"
-
-static void authenticationDialogResponseCallback(GtkWidget* authDialog, gint responseID, WebKitAuthenticationWidget* authWidget)
-{
- WebCore::AuthenticationChallenge challenge = webkitAuthenticationWidgetGetChallenge(authWidget);
- if (responseID == GTK_RESPONSE_OK) {
- WebCore::Credential credential = webkitAuthenticationWidgetCreateCredential(authWidget);
- challenge.authenticationClient()->receivedCredential(challenge, credential);
- } else
- challenge.authenticationClient()->receivedRequestToContinueWithoutCredential(challenge);
-
- gtk_widget_destroy(authDialog);
-}
-
-GtkWidget* createAuthenticationDialog(GtkWindow* parentWindow, const WebCore::AuthenticationChallenge& challenge, CredentialStorageMode mode)
-{
- GtkDialog* dialog = GTK_DIALOG(gtk_dialog_new());
- gtk_dialog_add_buttons(dialog, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
- gtk_dialog_set_default_response(dialog, GTK_RESPONSE_OK);
-
- GtkWidget* contentArea = gtk_dialog_get_content_area(dialog);
- gtk_container_set_border_width(GTK_CONTAINER(dialog), 5);
- gtk_box_set_spacing(GTK_BOX(contentArea), 2); /* 2 * 5 + 2 = 12 */
-
- GtkWidget* authWidget = webkitAuthenticationWidgetNew(challenge, mode);
- gtk_box_pack_start(GTK_BOX(contentArea), authWidget, TRUE, TRUE, 0);
- gtk_widget_show(authWidget);
-
- GtkWidget* actionArea = gtk_dialog_get_action_area(dialog);
- gtk_container_set_border_width(GTK_CONTAINER(actionArea), 5);
- gtk_box_set_spacing(GTK_BOX(actionArea), 6);
-
- GtkWindow* window = GTK_WINDOW(dialog);
- gtk_window_set_resizable(window, FALSE);
- gtk_window_set_title(window, "");
- gtk_window_set_icon_name(window, GTK_STOCK_DIALOG_AUTHENTICATION);
- gtk_window_set_destroy_with_parent (window, TRUE);
- if (parentWindow)
- gtk_window_set_transient_for(window, parentWindow);
-
- g_signal_connect(dialog, "response", G_CALLBACK(authenticationDialogResponseCallback), authWidget);
-
- return GTK_WIDGET(dialog);
-}
diff --git a/Source/WebKit/gtk/webkit/webkitauthenticationdialog.h b/Source/WebKit/gtk/webkit/webkitauthenticationdialog.h
deleted file mode 100644
index 393ac8411..000000000
--- a/Source/WebKit/gtk/webkit/webkitauthenticationdialog.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright (C) 2013 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef webkitauthenticationdialog_h
-#define webkitauthenticationdialog_h
-
-#include "WebKitAuthenticationWidget.h"
-
-GtkWidget* createAuthenticationDialog(GtkWindow* parentWindow, const WebCore::AuthenticationChallenge&, CredentialStorageMode);
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitdefines.h b/Source/WebKit/gtk/webkit/webkitdefines.h
deleted file mode 100644
index 89099b9b9..000000000
--- a/Source/WebKit/gtk/webkit/webkitdefines.h
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Copyright (C) 2007 Holger Hans Peter Freyther
- * Copyright (C) 2008 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitdefines_h
-#define webkitdefines_h
-
-#include <glib.h>
-
-#ifdef G_OS_WIN32
- #ifdef BUILDING_WEBKIT
- #define WEBKIT_API __declspec(dllexport)
- #else
- #define WEBKIT_API __declspec(dllimport)
- #endif
- #define WEBKIT_OBSOLETE_API WEBKIT_API
-#else
- #define WEBKIT_API __attribute__((visibility("default")))
- #define WEBKIT_OBSOLETE_API WEBKIT_API __attribute__((deprecated))
-#endif
-
-#ifndef WEBKIT_API
- #define WEBKIT_API
-#endif
-
-G_BEGIN_DECLS
-
-typedef struct _WebKitIconDatabase WebKitIconDatabase;
-typedef struct _WebKitIconDatabaseClass WebKitIconDatabaseClass;
-
-typedef struct _WebKitNetworkRequest WebKitNetworkRequest;
-typedef struct _WebKitNetworkRequestClass WebKitNetworkRequestClass;
-
-typedef struct _WebKitNetworkResponse WebKitNetworkResponse;
-typedef struct _WebKitNetworkResponseClass WebKitNetworkResponseClass;
-
-typedef struct _WebKitWebBackForwardList WebKitWebBackForwardList;
-typedef struct _WebKitWebBackForwardListClass WebKitWebBackForwardListClass;
-
-typedef struct _WebKitWebHistoryItem WebKitWebHistoryItem;
-typedef struct _WebKitWebHistoryItemClass WebKitWebHistoryItemClass;
-
-typedef struct _WebKitWebFrame WebKitWebFrame;
-typedef struct _WebKitWebFrameClass WebKitWebFrameClass;
-
-typedef struct _WebKitWebPolicyDecision WebKitWebPolicyDecision;
-typedef struct _WebKitWebPolicyDecisionClass WebKitWebPolicyDecisionClass;
-
-typedef struct _WebKitWebSettings WebKitWebSettings;
-typedef struct _WebKitWebSettingsClass WebKitWebSettingsClass;
-
-typedef struct _WebKitWebInspector WebKitWebInspector;
-typedef struct _WebKitWebInspectorClass WebKitWebInspectorClass;
-
-typedef struct _WebKitWebWindowFeatures WebKitWebWindowFeatures;
-typedef struct _WebKitWebWindowFeaturesClass WebKitWebWindowFeaturesClass;
-
-typedef struct _WebKitWebView WebKitWebView;
-typedef struct _WebKitWebViewClass WebKitWebViewClass;
-
-typedef struct _WebKitDownload WebKitDownload;
-typedef struct _WebKitDownloadClass WebKitDownloadClass;
-
-typedef struct _WebKitWebResource WebKitWebResource;
-typedef struct _WebKitWebResourceClass WebKitWebResourceClass;
-
-typedef struct _WebKitWebDataSource WebKitWebDataSource;
-typedef struct _WebKitWebDataSourceClass WebKitWebDataSourceClass;
-
-typedef struct _WebKitWebDatabase WebKitWebDatabase;
-typedef struct _WebKitWebDatabaseClass WebKitWebDatabaseClass;
-
-typedef struct _WebKitSecurityOrigin WebKitSecurityOrigin;
-typedef struct _WebKitSecurityOriginClass WebKitSecurityOriginClass;
-
-typedef struct _WebKitHitTestResult WebKitHitTestResult;
-typedef struct _WebKitHitTestResultClass WebKitHitTestResultClass;
-
-typedef struct _WebKitGeolocationPolicyDecision WebKitGeolocationPolicyDecision;
-typedef struct _WebKitGeolocationPolicyDecisionClass WebKitGeolocationPolicyDecisionClass;
-
-typedef struct _WebKitViewportAttributes WebKitViewportAttributes;
-typedef struct _WebKitViewportAttributesClass WebKitViewportAttributesClass;
-
-typedef struct _WebKitWebPluginDatabase WebKitWebPluginDatabase;
-typedef struct _WebKitWebPluginDatabaseClass WebKitWebPluginDatabaseClass;
-
-typedef struct _WebKitWebPlugin WebKitWebPlugin;
-typedef struct _WebKitWebPluginClass WebKitWebPluginClass;
-
-typedef struct _WebKitSpellChecker WebKitSpellChecker; /* dummy typedef */
-typedef struct _WebKitSpellCheckerInterface WebKitSpellCheckerInterface;
-
-typedef struct _WebKitFaviconDatabase WebKitFaviconDatabase;
-typedef struct _WebKitFaviconDatabaseClass WebKitFaviconDatabaseClass;
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitdom.h b/Source/WebKit/gtk/webkit/webkitdom.h
deleted file mode 100644
index 84b9ccde4..000000000
--- a/Source/WebKit/gtk/webkit/webkitdom.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef __webkitdom_h__
-#define __webkitdom_h__
-
-#include <webkitdom/webkitdom.h>
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitdownload.cpp b/Source/WebKit/gtk/webkit/webkitdownload.cpp
deleted file mode 100644
index d2d5597a5..000000000
--- a/Source/WebKit/gtk/webkit/webkitdownload.cpp
+++ /dev/null
@@ -1,968 +0,0 @@
-/*
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2009 Gustavo Noronha Silva <gns@gnome.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitdownload.h"
-
-#include "ErrorsGtk.h"
-#include "NotImplemented.h"
-#include "ResourceHandleClient.h"
-#include "ResourceHandleInternal.h"
-#include "ResourceRequest.h"
-#include "ResourceResponse.h"
-#include "webkitdownloadprivate.h"
-#include "webkitenumtypes.h"
-#include "webkitglobals.h"
-#include "webkitglobalsprivate.h"
-#include "webkitmarshal.h"
-#include "webkitnetworkrequestprivate.h"
-#include "webkitnetworkresponse.h"
-#include "webkitnetworkresponseprivate.h"
-#include <glib/gi18n-lib.h>
-#include <glib/gstdio.h>
-#include <wtf/Noncopyable.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/gobject/GRefPtr.h>
-#include <wtf/text/CString.h>
-
-#ifdef ERROR
-#undef ERROR
-#endif
-
-using namespace WebKit;
-using namespace WebCore;
-
-/**
- * SECTION:webkitdownload
- * @short_description: Object used to communicate with the application when downloading.
- *
- * #WebKitDownload carries information about a download request,
- * including a #WebKitNetworkRequest object. The application may use
- * this object to control the download process, or to simply figure
- * out what is to be downloaded, and do it itself.
- */
-
-class DownloadClient : public ResourceHandleClient {
- WTF_MAKE_NONCOPYABLE(DownloadClient);
- public:
- DownloadClient(WebKitDownload*);
-
- virtual void didReceiveResponse(ResourceHandle*, const ResourceResponse&);
- virtual void didReceiveData(ResourceHandle*, const char*, int, int);
- virtual void didFinishLoading(ResourceHandle*, double);
- virtual void didFail(ResourceHandle*, const ResourceError&);
- virtual void wasBlocked(ResourceHandle*);
- virtual void cannotShowURL(ResourceHandle*);
-
- private:
- WebKitDownload* m_download;
-};
-
-struct _WebKitDownloadPrivate {
- gchar* destinationURI;
- gchar* suggestedFilename;
- guint64 currentSize;
- GTimer* timer;
- WebKitDownloadStatus status;
- GFileOutputStream* outputStream;
- DownloadClient* downloadClient;
- WebKitNetworkRequest* networkRequest;
- WebKitNetworkResponse* networkResponse;
- RefPtr<ResourceHandle> resourceHandle;
-};
-
-enum {
- // Normal signals.
- ERROR,
- LAST_SIGNAL
-};
-
-static guint webkit_download_signals[LAST_SIGNAL] = { 0 };
-
-enum {
- PROP_0,
-
- PROP_NETWORK_REQUEST,
- PROP_DESTINATION_URI,
- PROP_SUGGESTED_FILENAME,
- PROP_PROGRESS,
- PROP_STATUS,
- PROP_CURRENT_SIZE,
- PROP_TOTAL_SIZE,
- PROP_NETWORK_RESPONSE
-};
-
-G_DEFINE_TYPE(WebKitDownload, webkit_download, G_TYPE_OBJECT);
-
-
-static void webkit_download_set_response(WebKitDownload* download, const ResourceResponse& response);
-static void webkit_download_set_status(WebKitDownload* download, WebKitDownloadStatus status);
-
-static void webkit_download_dispose(GObject* object)
-{
- WebKitDownload* download = WEBKIT_DOWNLOAD(object);
- WebKitDownloadPrivate* priv = download->priv;
-
- if (priv->outputStream) {
- g_object_unref(priv->outputStream);
- priv->outputStream = NULL;
- }
-
- if (priv->networkRequest) {
- g_object_unref(priv->networkRequest);
- priv->networkRequest = NULL;
- }
-
- if (priv->networkResponse) {
- g_object_unref(priv->networkResponse);
- priv->networkResponse = NULL;
- }
-
- G_OBJECT_CLASS(webkit_download_parent_class)->dispose(object);
-}
-
-static void webkit_download_finalize(GObject* object)
-{
- WebKitDownload* download = WEBKIT_DOWNLOAD(object);
- WebKitDownloadPrivate* priv = download->priv;
-
- // We don't call webkit_download_cancel() because we don't want to emit
- // signals when finalizing an object.
- if (priv->resourceHandle) {
- if (priv->status == WEBKIT_DOWNLOAD_STATUS_STARTED) {
- priv->resourceHandle->setClient(0);
- priv->resourceHandle->cancel();
- }
- priv->resourceHandle.release();
- }
-
- delete priv->downloadClient;
-
- // The download object may never have _start called on it, so we
- // need to make sure timer is non-NULL.
- if (priv->timer) {
- g_timer_destroy(priv->timer);
- priv->timer = NULL;
- }
-
- g_free(priv->destinationURI);
- g_free(priv->suggestedFilename);
-
- G_OBJECT_CLASS(webkit_download_parent_class)->finalize(object);
-}
-
-static void webkit_download_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec)
-{
- WebKitDownload* download = WEBKIT_DOWNLOAD(object);
-
- switch(prop_id) {
- case PROP_NETWORK_REQUEST:
- g_value_set_object(value, webkit_download_get_network_request(download));
- break;
- case PROP_NETWORK_RESPONSE:
- g_value_set_object(value, webkit_download_get_network_response(download));
- break;
- case PROP_DESTINATION_URI:
- g_value_set_string(value, webkit_download_get_destination_uri(download));
- break;
- case PROP_SUGGESTED_FILENAME:
- g_value_set_string(value, webkit_download_get_suggested_filename(download));
- break;
- case PROP_PROGRESS:
- g_value_set_double(value, webkit_download_get_progress(download));
- break;
- case PROP_STATUS:
- g_value_set_enum(value, webkit_download_get_status(download));
- break;
- case PROP_CURRENT_SIZE:
- g_value_set_uint64(value, webkit_download_get_current_size(download));
- break;
- case PROP_TOTAL_SIZE:
- g_value_set_uint64(value, webkit_download_get_total_size(download));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- }
-}
-
-static void webkit_download_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec *pspec)
-{
- WebKitDownload* download = WEBKIT_DOWNLOAD(object);
- WebKitDownloadPrivate* priv = download->priv;
-
- switch(prop_id) {
- case PROP_NETWORK_REQUEST:
- priv->networkRequest = WEBKIT_NETWORK_REQUEST(g_value_dup_object(value));
- break;
- case PROP_NETWORK_RESPONSE:
- priv->networkResponse = WEBKIT_NETWORK_RESPONSE(g_value_dup_object(value));
- break;
- case PROP_DESTINATION_URI:
- webkit_download_set_destination_uri(download, g_value_get_string(value));
- break;
- case PROP_STATUS:
- webkit_download_set_status(download, static_cast<WebKitDownloadStatus>(g_value_get_enum(value)));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- }
-}
-
-static void webkit_download_class_init(WebKitDownloadClass* downloadClass)
-{
- GObjectClass* objectClass = G_OBJECT_CLASS(downloadClass);
- objectClass->dispose = webkit_download_dispose;
- objectClass->finalize = webkit_download_finalize;
- objectClass->get_property = webkit_download_get_property;
- objectClass->set_property = webkit_download_set_property;
-
- webkitInit();
-
- /**
- * WebKitDownload::error:
- * @download: the object on which the signal is emitted
- * @error_code: the corresponding error code
- * @error_detail: detailed error code for the error, see
- * #WebKitDownloadError
- * @reason: a string describing the error
- *
- * Emitted when @download is interrupted either by user action or by
- * network errors, @error_detail will take any value of
- * #WebKitDownloadError.
- *
- * Since: 1.1.2
- */
- webkit_download_signals[ERROR] = g_signal_new("error",
- G_TYPE_FROM_CLASS(downloadClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__INT_INT_STRING,
- G_TYPE_BOOLEAN, 3,
- G_TYPE_INT,
- G_TYPE_INT,
- G_TYPE_STRING);
-
- // Properties.
-
- /**
- * WebKitDownload:network-request:
- *
- * The #WebKitNetworkRequest instance associated with the download.
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(objectClass,
- PROP_NETWORK_REQUEST,
- g_param_spec_object("network-request",
- _("Network Request"),
- _("The network request for the URI that should be downloaded"),
- WEBKIT_TYPE_NETWORK_REQUEST,
- (GParamFlags)(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitDownload:network-response:
- *
- * The #WebKitNetworkResponse instance associated with the download.
- *
- * Since: 1.1.16
- */
- g_object_class_install_property(objectClass,
- PROP_NETWORK_RESPONSE,
- g_param_spec_object("network-response",
- _("Network Response"),
- _("The network response for the URI that should be downloaded"),
- WEBKIT_TYPE_NETWORK_RESPONSE,
- (GParamFlags)(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitDownload:destination-uri:
- *
- * The URI of the save location for this download.
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(objectClass,
- PROP_DESTINATION_URI,
- g_param_spec_string("destination-uri",
- _("Destination URI"),
- _("The destination URI where to save the file"),
- "",
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitDownload:suggested-filename:
- *
- * The file name suggested as default when saving
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(objectClass,
- PROP_SUGGESTED_FILENAME,
- g_param_spec_string("suggested-filename",
- _("Suggested Filename"),
- _("The filename suggested as default when saving"),
- "",
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitDownload:progress:
- *
- * Determines the current progress of the download. Notice that,
- * although the progress changes are reported as soon as possible,
- * the emission of the notify signal for this property is
- * throttled, for the benefit of download managers. If you care
- * about every update, use WebKitDownload:current-size.
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(objectClass, PROP_PROGRESS,
- g_param_spec_double("progress",
- _("Progress"),
- _("Determines the current progress of the download"),
- 0.0, 1.0, 1.0,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitDownload:status:
- *
- * Determines the current status of the download.
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(objectClass, PROP_STATUS,
- g_param_spec_enum("status",
- _("Status"),
- _("Determines the current status of the download"),
- WEBKIT_TYPE_DOWNLOAD_STATUS,
- WEBKIT_DOWNLOAD_STATUS_CREATED,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitDownload:current-size:
- *
- * The length of the data already downloaded
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(objectClass,
- PROP_CURRENT_SIZE,
- g_param_spec_uint64("current-size",
- _("Current Size"),
- _("The length of the data already downloaded"),
- 0, G_MAXUINT64, 0,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitDownload:total-size:
- *
- * The total size of the file
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(objectClass,
- PROP_CURRENT_SIZE,
- g_param_spec_uint64("total-size",
- _("Total Size"),
- _("The total size of the file"),
- 0, G_MAXUINT64, 0,
- WEBKIT_PARAM_READABLE));
-
- g_type_class_add_private(downloadClass, sizeof(WebKitDownloadPrivate));
-}
-
-static void webkit_download_init(WebKitDownload* download)
-{
- WebKitDownloadPrivate* priv = G_TYPE_INSTANCE_GET_PRIVATE(download, WEBKIT_TYPE_DOWNLOAD, WebKitDownloadPrivate);
- download->priv = priv;
-
- priv->downloadClient = new DownloadClient(download);
- priv->currentSize = 0;
- priv->status = WEBKIT_DOWNLOAD_STATUS_CREATED;
-}
-
-/**
- * webkit_download_new:
- * @request: a #WebKitNetworkRequest
- *
- * Creates a new #WebKitDownload object for the given
- * #WebKitNetworkRequest object.
- *
- * Returns: the new #WebKitDownload
- *
- * Since: 1.1.2
- */
-WebKitDownload* webkit_download_new(WebKitNetworkRequest* request)
-{
- g_return_val_if_fail(request, NULL);
-
- return WEBKIT_DOWNLOAD(g_object_new(WEBKIT_TYPE_DOWNLOAD, "network-request", request, NULL));
-}
-
-// Internal usage only
-WebKitDownload* webkit_download_new_with_handle(WebKitNetworkRequest* request, WebCore::ResourceHandle* handle, const WebCore::ResourceResponse& response)
-{
- g_return_val_if_fail(request, NULL);
-
- WebKitDownload* download = WEBKIT_DOWNLOAD(g_object_new(WEBKIT_TYPE_DOWNLOAD, "network-request", request, NULL));
- WebKitDownloadPrivate* priv = download->priv;
-
- handle->ref();
- handle->setDefersLoading(true);
- priv->resourceHandle = handle;
-
- webkit_download_set_response(download, response);
-
- return download;
-}
-
-static void webkitDownloadEmitError(WebKitDownload* download, const ResourceError& error)
-{
- WebKitDownloadError errorCode;
- switch (error.errorCode()) {
- case DownloadErrorNetwork:
- errorCode = WEBKIT_DOWNLOAD_ERROR_NETWORK;
- break;
- case DownloadErrorCancelledByUser:
- errorCode = WEBKIT_DOWNLOAD_ERROR_CANCELLED_BY_USER;
- break;
- case DownloadErrorDestination:
- errorCode = WEBKIT_DOWNLOAD_ERROR_DESTINATION;
- break;
- default:
- g_assert_not_reached();
- }
-
- gboolean handled;
- g_signal_emit_by_name(download, "error", 0, errorCode, error.localizedDescription().utf8().data(), &handled);
-}
-
-static gboolean webkit_download_open_stream_for_uri(WebKitDownload* download, const gchar* uri, gboolean append=FALSE)
-{
- g_return_val_if_fail(uri, FALSE);
-
- WebKitDownloadPrivate* priv = download->priv;
- GRefPtr<GFile> file = adoptGRef(g_file_new_for_uri(uri));
- GOwnPtr<GError> error;
-
- if (append)
- priv->outputStream = g_file_append_to(file.get(), G_FILE_CREATE_NONE, NULL, &error.outPtr());
- else
- priv->outputStream = g_file_replace(file.get(), NULL, TRUE, G_FILE_CREATE_NONE, NULL, &error.outPtr());
-
- if (error) {
- webkitDownloadEmitError(download, downloadDestinationError(core(priv->networkResponse), error->message));
- return FALSE;
- }
-
- GRefPtr<GFileInfo> info = adoptGRef(g_file_info_new());
- g_file_info_set_attribute_string(info.get(), "metadata::download-uri", webkit_download_get_uri(download));
- g_file_set_attributes_async(file.get(), info.get(), G_FILE_QUERY_INFO_NONE, G_PRIORITY_DEFAULT, 0, 0, 0);
-
- return TRUE;
-}
-
-static void webkit_download_close_stream(WebKitDownload* download)
-{
- WebKitDownloadPrivate* priv = download->priv;
- if (priv->outputStream) {
- g_object_unref(priv->outputStream);
- priv->outputStream = NULL;
- }
-}
-
-/**
- * webkit_download_start:
- * @download: the #WebKitDownload
- *
- * Initiates the download. Notice that you must have set the
- * destination-uri property before calling this method.
- *
- * Since: 1.1.2
- */
-void webkit_download_start(WebKitDownload* download)
-{
- g_return_if_fail(WEBKIT_IS_DOWNLOAD(download));
-
- WebKitDownloadPrivate* priv = download->priv;
- g_return_if_fail(priv->destinationURI);
- g_return_if_fail(priv->status == WEBKIT_DOWNLOAD_STATUS_CREATED);
- g_return_if_fail(priv->timer == NULL);
-
- // For GTK, when downloading a file NetworkingContext is null
- if (!priv->resourceHandle)
- priv->resourceHandle = ResourceHandle::create(/* Null NetworkingContext */ NULL, core(priv->networkRequest), priv->downloadClient, false, false);
- else {
- priv->resourceHandle->setClient(priv->downloadClient);
- priv->resourceHandle->setDefersLoading(false);
- }
-
- priv->timer = g_timer_new();
- webkit_download_open_stream_for_uri(download, priv->destinationURI);
-}
-
-/**
- * webkit_download_cancel:
- * @download: the #WebKitDownload
- *
- * Cancels the download. Calling this will not free the
- * #WebKitDownload object, so you still need to call
- * g_object_unref() on it, if you are the owner of a reference. Notice
- * that cancelling the download provokes the emission of the
- * WebKitDownload::error signal, reporting that the download was
- * cancelled.
- *
- * Since: 1.1.2
- */
-void webkit_download_cancel(WebKitDownload* download)
-{
- g_return_if_fail(WEBKIT_IS_DOWNLOAD(download));
-
- WebKitDownloadPrivate* priv = download->priv;
-
- // Cancel may be called even if start was not called, so we need
- // to make sure timer is non-NULL.
- if (priv->timer)
- g_timer_stop(priv->timer);
-
- if (priv->resourceHandle)
- priv->resourceHandle->cancel();
-
- webkit_download_set_status(download, WEBKIT_DOWNLOAD_STATUS_CANCELLED);
- webkitDownloadEmitError(download, downloadCancelledByUserError(core(priv->networkResponse)));
-}
-
-/**
- * webkit_download_get_uri:
- * @download: the #WebKitDownload
- *
- * Convenience method to retrieve the URI from the
- * #WebKitNetworkRequest which is being downloaded.
- *
- * Returns: the URI
- *
- * Since: 1.1.2
- */
-const gchar* webkit_download_get_uri(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), NULL);
-
- WebKitDownloadPrivate* priv = download->priv;
- return webkit_network_request_get_uri(priv->networkRequest);
-}
-
-/**
- * webkit_download_get_network_request:
- * @download: the #WebKitDownload
- *
- * Retrieves the #WebKitNetworkRequest object that backs the download
- * process.
- *
- * Returns: (transfer none): the #WebKitNetworkRequest instance
- *
- * Since: 1.1.2
- */
-WebKitNetworkRequest* webkit_download_get_network_request(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), NULL);
-
- WebKitDownloadPrivate* priv = download->priv;
- return priv->networkRequest;
-}
-
-/**
- * webkit_download_get_network_response:
- * @download: the #WebKitDownload
- *
- * Retrieves the #WebKitNetworkResponse object that backs the download
- * process.
- *
- * Returns: (transfer none): the #WebKitNetworkResponse instance
- *
- * Since: 1.1.16
- */
-WebKitNetworkResponse* webkit_download_get_network_response(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), NULL);
-
- WebKitDownloadPrivate* priv = download->priv;
- return priv->networkResponse;
-}
-
-static void webkit_download_set_response(WebKitDownload* download, const ResourceResponse& response)
-{
- WebKitDownloadPrivate* priv = download->priv;
- priv->networkResponse = kitNew(response);
-
- if (!response.isNull() && !response.suggestedFilename().isEmpty())
- webkit_download_set_suggested_filename(download, response.suggestedFilename().utf8().data());
-}
-
-/**
- * webkit_download_get_suggested_filename:
- * @download: the #WebKitDownload
- *
- * Retrieves the filename that was suggested by the server, or the one
- * derived by WebKit from the URI.
- *
- * Returns: the suggested filename
- *
- * Since: 1.1.2
- */
-const gchar* webkit_download_get_suggested_filename(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), NULL);
-
- WebKitDownloadPrivate* priv = download->priv;
- if (priv->suggestedFilename)
- return priv->suggestedFilename;
-
- KURL url = KURL(KURL(), webkit_network_request_get_uri(priv->networkRequest));
- url.setQuery(String());
- url.removeFragmentIdentifier();
- priv->suggestedFilename = g_strdup(decodeURLEscapeSequences(url.lastPathComponent()).utf8().data());
- return priv->suggestedFilename;
-}
-
-// for internal use only
-void webkit_download_set_suggested_filename(WebKitDownload* download, const gchar* suggestedFilename)
-{
- WebKitDownloadPrivate* priv = download->priv;
- g_free(priv->suggestedFilename);
- priv->suggestedFilename = g_strdup(suggestedFilename);
-
- g_object_notify(G_OBJECT(download), "suggested-filename");
-}
-
-
-/**
- * webkit_download_get_destination_uri:
- * @download: the #WebKitDownload
- *
- * Obtains the URI to which the downloaded file will be written. This
- * must have been set by the application before calling
- * webkit_download_start(), and may be %NULL.
- *
- * Returns: the destination URI or %NULL
- *
- * Since: 1.1.2
- */
-const gchar* webkit_download_get_destination_uri(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), NULL);
-
- WebKitDownloadPrivate* priv = download->priv;
- return priv->destinationURI;
-}
-
-/**
- * webkit_download_set_destination_uri:
- * @download: the #WebKitDownload
- * @destination_uri: the destination URI
- *
- * Defines the URI that should be used to save the downloaded file to.
- *
- * Since: 1.1.2
- */
-void webkit_download_set_destination_uri(WebKitDownload* download, const gchar* destination_uri)
-{
- g_return_if_fail(WEBKIT_IS_DOWNLOAD(download));
- g_return_if_fail(destination_uri);
-
- WebKitDownloadPrivate* priv = download->priv;
- if (priv->destinationURI && !strcmp(priv->destinationURI, destination_uri))
- return;
-
- if (priv->status != WEBKIT_DOWNLOAD_STATUS_CREATED && priv->status != WEBKIT_DOWNLOAD_STATUS_CANCELLED) {
- ASSERT(priv->destinationURI);
-
- gboolean downloading = priv->outputStream != NULL;
- if (downloading)
- webkit_download_close_stream(download);
-
- GRefPtr<GFile> src = adoptGRef(g_file_new_for_uri(priv->destinationURI));
- GRefPtr<GFile> dest = adoptGRef(g_file_new_for_uri(destination_uri));
- GOwnPtr<GError> error;
-
- g_file_move(src.get(), dest.get(), G_FILE_COPY_BACKUP, 0, 0, 0, &error.outPtr());
-
- g_free(priv->destinationURI);
- priv->destinationURI = g_strdup(destination_uri);
-
- if (error) {
- webkitDownloadEmitError(download, downloadDestinationError(core(priv->networkResponse), error->message));
- return;
- }
-
- if (downloading) {
- if (!webkit_download_open_stream_for_uri(download, destination_uri, TRUE)) {
- webkit_download_cancel(download);
- return;
- }
- }
- } else {
- g_free(priv->destinationURI);
- priv->destinationURI = g_strdup(destination_uri);
- }
-
- // Only notify change if everything went fine.
- g_object_notify(G_OBJECT(download), "destination-uri");
-}
-
-/**
- * webkit_download_get_status:
- * @download: the #WebKitDownload
- *
- * Obtains the current status of the download, as a
- * #WebKitDownloadStatus.
- *
- * Returns: the current #WebKitDownloadStatus
- *
- * Since: 1.1.2
- */
-WebKitDownloadStatus webkit_download_get_status(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), WEBKIT_DOWNLOAD_STATUS_ERROR);
-
- WebKitDownloadPrivate* priv = download->priv;
- return priv->status;
-}
-
-static void webkit_download_set_status(WebKitDownload* download, WebKitDownloadStatus status)
-{
- g_return_if_fail(WEBKIT_IS_DOWNLOAD(download));
-
- WebKitDownloadPrivate* priv = download->priv;
- priv->status = status;
-
- g_object_notify(G_OBJECT(download), "status");
-}
-
-/**
- * webkit_download_get_total_size:
- * @download: the #WebKitDownload
- *
- * Returns the expected total size of the download. This is expected
- * because the server may provide incorrect or missing
- * Content-Length. Notice that this may grow over time, as it will be
- * always the same as current_size in the cases where current size
- * surpasses it.
- *
- * Returns: the expected total size of the downloaded file
- *
- * Since: 1.1.2
- */
-guint64 webkit_download_get_total_size(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), 0);
-
- WebKitDownloadPrivate* priv = download->priv;
- SoupMessage* message = priv->networkResponse ? webkit_network_response_get_message(priv->networkResponse) : NULL;
-
- if (!message)
- return 0;
-
- return MAX(priv->currentSize, static_cast<guint64>(soup_message_headers_get_content_length(message->response_headers)));
-}
-
-/**
- * webkit_download_get_current_size:
- * @download: the #WebKitDownload
- *
- * Current already downloaded size.
- *
- * Returns: the already downloaded size
- *
- * Since: 1.1.2
- */
-guint64 webkit_download_get_current_size(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), 0);
-
- WebKitDownloadPrivate* priv = download->priv;
- return priv->currentSize;
-}
-
-/**
- * webkit_download_get_progress:
- * @download: a #WebKitDownload
- *
- * Determines the current progress of the download.
- *
- * Returns: a #gdouble ranging from 0.0 to 1.0.
- *
- * Since: 1.1.2
- */
-gdouble webkit_download_get_progress(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), 1.0);
-
- WebKitDownloadPrivate* priv = download->priv;
- if (!priv->networkResponse)
- return 0.0;
-
- gdouble total_size = static_cast<gdouble>(webkit_download_get_total_size(download));
-
- if (total_size == 0)
- return 1.0;
-
- return ((gdouble)priv->currentSize) / total_size;
-}
-
-/**
- * webkit_download_get_elapsed_time:
- * @download: a #WebKitDownload
- *
- * Elapsed time for the download in seconds, including any fractional
- * part. If the download is finished, had an error or was cancelled
- * this is the time between its start and the event.
- *
- * Returns: seconds since the download was started, as a #gdouble
- *
- * Since: 1.1.2
- */
-gdouble webkit_download_get_elapsed_time(WebKitDownload* download)
-{
- g_return_val_if_fail(WEBKIT_IS_DOWNLOAD(download), 0.0);
-
- WebKitDownloadPrivate* priv = download->priv;
- if (!priv->timer)
- return 0;
-
- return g_timer_elapsed(priv->timer, NULL);
-}
-
-static void webkit_download_received_data(WebKitDownload* download, const gchar* data, int length)
-{
- WebKitDownloadPrivate* priv = download->priv;
-
- if (priv->currentSize == 0)
- webkit_download_set_status(download, WEBKIT_DOWNLOAD_STATUS_STARTED);
-
- ASSERT(priv->outputStream);
-
- gsize bytes_written;
- GOwnPtr<GError> error;
-
- g_output_stream_write_all(G_OUTPUT_STREAM(priv->outputStream),
- data, length, &bytes_written, NULL, &error.outPtr());
-
- if (error) {
- webkitDownloadEmitError(download, downloadDestinationError(core(priv->networkResponse), error->message));
- return;
- }
-
- priv->currentSize += length;
- g_object_notify(G_OBJECT(download), "current-size");
-
- ASSERT(priv->networkResponse);
- if (priv->currentSize > webkit_download_get_total_size(download))
- g_object_notify(G_OBJECT(download), "total-size");
-
- // Throttle progress notification to not consume high amounts of
- // CPU on fast links, except when the last notification occured
- // in more then 0.7 secs from now, or the last notified progress
- // is passed in 1% or we reached the end.
- static gdouble lastProgress = 0;
- static gdouble lastElapsed = 0;
- gdouble currentElapsed = g_timer_elapsed(priv->timer, NULL);
- gdouble currentProgress = webkit_download_get_progress(download);
-
- if (lastElapsed
- && lastProgress
- && (currentElapsed - lastElapsed) < 0.7
- && (currentProgress - lastProgress) < 0.01
- && currentProgress < 1.0) {
- return;
- }
- lastElapsed = currentElapsed;
- lastProgress = currentProgress;
-
- g_object_notify(G_OBJECT(download), "progress");
-}
-
-static void webkit_download_finished_loading(WebKitDownload* download)
-{
- webkit_download_close_stream(download);
-
- WebKitDownloadPrivate* priv = download->priv;
-
- g_timer_stop(priv->timer);
-
- g_object_notify(G_OBJECT(download), "progress");
- webkit_download_set_status(download, WEBKIT_DOWNLOAD_STATUS_FINISHED);
-}
-
-static void webkit_download_error(WebKitDownload* download, const ResourceError& error)
-{
- webkit_download_close_stream(download);
-
- WebKitDownloadPrivate* priv = download->priv;
- GRefPtr<WebKitDownload> protect(download);
-
- g_timer_stop(priv->timer);
- webkit_download_set_status(download, WEBKIT_DOWNLOAD_STATUS_ERROR);
- webkitDownloadEmitError(download, downloadNetworkError(error));
-}
-
-DownloadClient::DownloadClient(WebKitDownload* download)
- : m_download(download)
-{
-}
-
-void DownloadClient::didReceiveResponse(ResourceHandle*, const ResourceResponse& response)
-{
- webkit_download_set_response(m_download, response);
- if (response.httpStatusCode() >= 400) {
- m_download->priv->resourceHandle->cancel();
- webkit_download_error(m_download, ResourceError(errorDomainDownload, response.httpStatusCode(),
- response.url().string(), response.httpStatusText()));
- }
-}
-
-void DownloadClient::didReceiveData(ResourceHandle*, const char* data, int length, int encodedDataLength)
-{
- webkit_download_received_data(m_download, data, length);
-}
-
-void DownloadClient::didFinishLoading(ResourceHandle*, double)
-{
- webkit_download_finished_loading(m_download);
-}
-
-void DownloadClient::didFail(ResourceHandle*, const ResourceError& error)
-{
- webkit_download_error(m_download, error);
-}
-
-void DownloadClient::wasBlocked(ResourceHandle*)
-{
- // FIXME: Implement this when we have the new frame loader signals
- // and error handling.
- notImplemented();
-}
-
-void DownloadClient::cannotShowURL(ResourceHandle*)
-{
- // FIXME: Implement this when we have the new frame loader signals
- // and error handling.
- notImplemented();
-}
diff --git a/Source/WebKit/gtk/webkit/webkitdownload.h b/Source/WebKit/gtk/webkit/webkitdownload.h
deleted file mode 100644
index 820e08335..000000000
--- a/Source/WebKit/gtk/webkit/webkitdownload.h
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2009 Gustavo Noronha Silva <gns@gnome.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitdownload_h
-#define webkitdownload_h
-
-#include <webkit/webkitdefines.h>
-
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_DOWNLOAD (webkit_download_get_type())
-#define WEBKIT_DOWNLOAD(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_DOWNLOAD, WebKitDownload))
-#define WEBKIT_DOWNLOAD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_DOWNLOAD, WebKitDownloadClass))
-#define WEBKIT_IS_DOWNLOAD(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_DOWNLOAD))
-#define WEBKIT_IS_DOWNLOAD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_DOWNLOAD))
-#define WEBKIT_DOWNLOAD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_DOWNLOAD, WebKitDownloadClass))
-
-/**
- * WebKitDownloadStatus:
- * @WEBKIT_DOWNLOAD_STATUS_ERROR: The download failed because of an error other than user cancellation.
- * @WEBKIT_DOWNLOAD_STATUS_CREATED: The download has not started yet.
- * @WEBKIT_DOWNLOAD_STATUS_STARTED: The download has started, but has not completed yet.
- * @WEBKIT_DOWNLOAD_STATUS_CANCELLED: The user canceled the download.
- * @WEBKIT_DOWNLOAD_STATUS_FINISHED: The download completed successfully.
- *
- * Enum values used to denote the various states of a download.
- **/
-typedef enum {
- WEBKIT_DOWNLOAD_STATUS_ERROR = -1,
- WEBKIT_DOWNLOAD_STATUS_CREATED = 0,
- WEBKIT_DOWNLOAD_STATUS_STARTED,
- WEBKIT_DOWNLOAD_STATUS_CANCELLED,
- WEBKIT_DOWNLOAD_STATUS_FINISHED
-} WebKitDownloadStatus;
-
-/**
- * WebKitDownloadError:
- * @WEBKIT_DOWNLOAD_ERROR_CANCELLED_BY_USER: The download failed due to user cancellation.
- * @WEBKIT_DOWNLOAD_ERROR_DESTINATION: The download failed due to disk write failure.
- * @WEBKIT_DOWNLOAD_ERROR_NETWORK: The download failed due to a network error.
- *
- * Enum values used to denote the various download errors.
- **/
-typedef enum {
- WEBKIT_DOWNLOAD_ERROR_CANCELLED_BY_USER,
- WEBKIT_DOWNLOAD_ERROR_DESTINATION,
- WEBKIT_DOWNLOAD_ERROR_NETWORK
-} WebKitDownloadError;
-
-typedef struct _WebKitDownloadPrivate WebKitDownloadPrivate;
-
-struct _WebKitDownload {
- GObject parent_instance;
-
- WebKitDownloadPrivate *priv;
-};
-
-struct _WebKitDownloadClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_download_get_type (void);
-
-WEBKIT_API WebKitDownload*
-webkit_download_new (WebKitNetworkRequest *request);
-
-WEBKIT_API void
-webkit_download_start (WebKitDownload *download);
-
-WEBKIT_API void
-webkit_download_cancel (WebKitDownload *download);
-
-WEBKIT_API const gchar*
-webkit_download_get_uri (WebKitDownload *download);
-
-WEBKIT_API WebKitNetworkRequest*
-webkit_download_get_network_request (WebKitDownload *download);
-
-WEBKIT_API WebKitNetworkResponse*
-webkit_download_get_network_response (WebKitDownload *download);
-
-WEBKIT_API const gchar*
-webkit_download_get_suggested_filename (WebKitDownload *download);
-
-WEBKIT_API const gchar*
-webkit_download_get_destination_uri (WebKitDownload *download);
-
-WEBKIT_API void
-webkit_download_set_destination_uri (WebKitDownload *download,
- const gchar *destination_uri);
-
-WEBKIT_API gdouble
-webkit_download_get_progress (WebKitDownload *download);
-
-WEBKIT_API gdouble
-webkit_download_get_elapsed_time (WebKitDownload *download);
-
-WEBKIT_API guint64
-webkit_download_get_total_size (WebKitDownload *download);
-
-WEBKIT_API guint64
-webkit_download_get_current_size (WebKitDownload *download);
-
-WEBKIT_API WebKitDownloadStatus
-webkit_download_get_status (WebKitDownload *download);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitdownloadprivate.h b/Source/WebKit/gtk/webkit/webkitdownloadprivate.h
deleted file mode 100644
index 13cc2a49e..000000000
--- a/Source/WebKit/gtk/webkit/webkitdownloadprivate.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitdownloadprivate_h
-#define webkitdownloadprivate_h
-
-#include "webkitdownload.h"
-
-extern "C" {
-
-WebKitDownload* webkit_download_new_with_handle(WebKitNetworkRequest*, WebCore::ResourceHandle*, const WebCore::ResourceResponse&);
-
-void webkit_download_set_suggested_filename(WebKitDownload*, const gchar* suggestedFilename);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkiterror.cpp b/Source/WebKit/gtk/webkit/webkiterror.cpp
deleted file mode 100644
index 9e2afd346..000000000
--- a/Source/WebKit/gtk/webkit/webkiterror.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2008 Luca Bruno <lethalman88@gmail.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkiterror.h"
-
-#include "ErrorsGtk.h"
-
-GQuark webkit_network_error_quark(void)
-{
- return g_quark_from_static_string(WebCore::errorDomainNetwork);
-}
-
-GQuark webkit_policy_error_quark(void)
-{
- return g_quark_from_static_string(WebCore::errorDomainPolicy);
-}
-
-GQuark webkit_plugin_error_quark(void)
-{
- return g_quark_from_static_string(WebCore::errorDomainPlugin);
-}
diff --git a/Source/WebKit/gtk/webkit/webkiterror.h b/Source/WebKit/gtk/webkit/webkiterror.h
deleted file mode 100644
index 48fc2c31c..000000000
--- a/Source/WebKit/gtk/webkit/webkiterror.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (C) 2008 Luca Bruno <lethalman88@gmail.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkiterror_h
-#define webkiterror_h
-
-#include <glib.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_NETWORK_ERROR webkit_network_error_quark ()
-#define WEBKIT_POLICY_ERROR webkit_policy_error_quark ()
-#define WEBKIT_PLUGIN_ERROR webkit_plugin_error_quark ()
-
-/* The enum values are synchronized with Mac's WebKit error values. */
-
-/**
- * WebKitNetworkError:
- * @WEBKIT_NETWORK_ERROR_FAILED: Generic load failure
- * @WEBKIT_NETWORK_ERROR_TRANSPORT: Load failure due to transport error
- * @WEBKIT_NETWORK_ERROR_UNKNOWN_PROTOCOL: Load failure due to unknown protocol
- * @WEBKIT_NETWORK_ERROR_CANCELLED: Load failure due to cancellation
- * @WEBKIT_NETWORK_ERROR_FILE_DOES_NOT_EXIST: Load failure due to missing file
- *
- * Enum values used to denote the various network errors.
- **/
-typedef enum {
- WEBKIT_NETWORK_ERROR_FAILED = 399,
- WEBKIT_NETWORK_ERROR_TRANSPORT = 300,
- WEBKIT_NETWORK_ERROR_UNKNOWN_PROTOCOL = 301,
- WEBKIT_NETWORK_ERROR_CANCELLED = 302,
- WEBKIT_NETWORK_ERROR_FILE_DOES_NOT_EXIST = 303,
-} WebKitNetworkError;
-
-/**
- * WebKitPolicyError:
- * @WEBKIT_POLICY_ERROR_FAILED: Generic load failure due to policy error
- * @WEBKIT_POLICY_ERROR_CANNOT_SHOW_MIME_TYPE: Load failure due to unsupported mime type
- * @WEBKIT_POLICY_ERROR_CANNOT_SHOW_URL: Load failure due to URI that can not be shown
- * @WEBKIT_POLICY_ERROR_FRAME_LOAD_INTERRUPTED_BY_POLICY_CHANGE: Load failure due to frame load interruption by policy change
- * @WEBKIT_POLICY_ERROR_CANNOT_USE_RESTRICTED_PORT: Load failure due to port restriction
- *
- * Enum values used to denote the various policy errors.
- **/
-typedef enum {
- WEBKIT_POLICY_ERROR_FAILED = 199,
- WEBKIT_POLICY_ERROR_CANNOT_SHOW_MIME_TYPE = 100,
- WEBKIT_POLICY_ERROR_CANNOT_SHOW_URL = 101,
- WEBKIT_POLICY_ERROR_FRAME_LOAD_INTERRUPTED_BY_POLICY_CHANGE = 102,
- WEBKIT_POLICY_ERROR_CANNOT_USE_RESTRICTED_PORT = 103,
-} WebKitPolicyError;
-
-/**
- * WebKitPluginError:
- * @WEBKIT_PLUGIN_ERROR_FAILED: Generic plugin load failure
- * @WEBKIT_PLUGIN_ERROR_CANNOT_FIND_PLUGIN: Load failure due to missing plugin
- * @WEBKIT_PLUGIN_ERROR_CANNOT_LOAD_PLUGIN: Load failure due to inability to load plugin
- * @WEBKIT_PLUGIN_ERROR_JAVA_UNAVAILABLE: Load failue due to missing Java support that is required to load plugin
- * @WEBKIT_PLUGIN_ERROR_CONNECTION_CANCELLED: Load failure due to connection cancellation
- * @WEBKIT_PLUGIN_ERROR_WILL_HANDLE_LOAD: Load failure since plugin handles the load
- *
- * Enum values used to denote the various plugin errors.
- **/
-typedef enum {
- WEBKIT_PLUGIN_ERROR_FAILED = 299,
- WEBKIT_PLUGIN_ERROR_CANNOT_FIND_PLUGIN = 200,
- WEBKIT_PLUGIN_ERROR_CANNOT_LOAD_PLUGIN = 201,
- WEBKIT_PLUGIN_ERROR_JAVA_UNAVAILABLE = 202,
- WEBKIT_PLUGIN_ERROR_CONNECTION_CANCELLED = 203,
- WEBKIT_PLUGIN_ERROR_WILL_HANDLE_LOAD = 204,
-} WebKitPluginError;
-
-
-WEBKIT_API GQuark
-webkit_network_error_quark (void);
-
-WEBKIT_API GQuark
-webkit_policy_error_quark (void);
-
-WEBKIT_API GQuark
-webkit_plugin_error_quark (void);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitfavicondatabase.cpp b/Source/WebKit/gtk/webkit/webkitfavicondatabase.cpp
deleted file mode 100644
index 654ef2b30..000000000
--- a/Source/WebKit/gtk/webkit/webkitfavicondatabase.cpp
+++ /dev/null
@@ -1,645 +0,0 @@
-/*
- * Copyright (C) 2011 Christian Dywan <christian@lanedo.com>
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitfavicondatabase.h"
-
-#include "FileSystem.h"
-#include "GdkCairoUtilities.h"
-#include "IconDatabase.h"
-#include "IconDatabaseClient.h"
-#include "Image.h"
-#include "IntSize.h"
-#include "webkitfavicondatabaseprivate.h"
-#include "webkitglobals.h"
-#include "webkitglobalsprivate.h"
-#include "webkitmarshal.h"
-#include "webkitsecurityoriginprivate.h"
-#include "webkitwebframe.h"
-#include <glib/gi18n-lib.h>
-#include <wtf/MainThread.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/gobject/GRefPtr.h>
-#include <wtf/text/CString.h>
-
-/**
- * SECTION:webkitfavicondatabase
- * @short_description: A WebKit favicon database
- * @Title: WebKitFaviconDatabase
- *
- * #WebKitFaviconDatabase provides access to the icons associated with
- * web sites.
- *
- * WebKit will automatically look for available icons in link elements
- * on opened pages as well as an existing favicon.ico and load the
- * images found into a memory cache if possible. That cache is frozen
- * to an on-disk database for persistence.
- *
- * The database is disabled by default. In order for icons to be
- * stored and accessed, you will need to set an icon database path
- * using webkit_favicon_database_set_path(). Disable the database
- * again passing %NULL to the previous call.
- *
- * If WebKitWebSettings::enable-private-browsing is %TRUE new icons
- * won't be added to the on-disk database and no existing icons will
- * be deleted from it. Nevertheless, WebKit will still store them in
- * the in-memory cache during the current execution.
- *
- * Since: 1.8
- */
-
-using namespace WebKit;
-using namespace WebCore;
-
-class PendingIconRequest;
-
-static void webkitFaviconDatabaseProcessPendingIconsForURI(WebKitFaviconDatabase*, const String& pageURI);
-static void webkitFaviconDatabaseImportFinished(WebKitFaviconDatabase*);
-static void webkitFaviconDatabaseGetIconPixbufCancelled(GCancellable*, PendingIconRequest*);
-static void webkitFaviconDatabaseClose(WebKitFaviconDatabase* database);
-
-class IconDatabaseClientGtk : public IconDatabaseClient {
-public:
- // IconDatabaseClient interface
- virtual void didRemoveAllIcons() { };
-
- // Called when an icon is requested while the initial import is
- // going on.
- virtual void didImportIconURLForPageURL(const String& URL) { };
-
- // Called whenever a retained icon is read from database.
- virtual void didImportIconDataForPageURL(const String& URL)
- {
- WebKitFaviconDatabase* database = webkit_get_favicon_database();
- // We need to emit this here because webkitFaviconDatabaseDispatchDidReceiveIcon()
- // is only called for icons that have just being downloaded, and this is called
- // when icon data is imported from the database.
- g_signal_emit_by_name(database, "icon-loaded", URL.utf8().data());
-
- webkitFaviconDatabaseProcessPendingIconsForURI(database, URL);
- }
-
- virtual void didChangeIconForPageURL(const String& URL)
- {
- // Called when the the favicon for a particular URL changes.
- // It does not mean that the new icon data is available yet.
- }
-
- virtual void didFinishURLImport()
- {
- webkitFaviconDatabaseImportFinished(webkit_get_favicon_database());
-
- // Now that everything is imported enable pruning of old
- // icons. No icon will be removed during the import process
- // because we disable cleanups before opening the database.
- IconDatabase::allowDatabaseCleanup();
- }
-};
-
-class PendingIconRequest {
-public:
- PendingIconRequest(const String& pageURL, GSimpleAsyncResult* result, GCancellable* cancellable, IntSize iconSize)
- : m_pageURL(pageURL)
- , m_asyncResult(result)
- , m_cancellable(cancellable)
- , m_cancelledId(0)
- , m_iconSize(iconSize)
- {
- if (cancellable) {
- m_cancelledId = g_cancellable_connect(cancellable, G_CALLBACK(webkitFaviconDatabaseGetIconPixbufCancelled), this, 0);
- g_object_set_data_full(G_OBJECT(result), "cancellable", g_object_ref(cancellable), static_cast<GDestroyNotify>(g_object_unref));
- }
- }
-
- ~PendingIconRequest()
- {
- if (m_cancelledId > 0)
- g_cancellable_disconnect(m_cancellable.get(), m_cancelledId);
- }
-
- const String& pageURL() { return m_pageURL; }
- GSimpleAsyncResult* asyncResult() { return m_asyncResult.get(); }
- const IntSize& iconSize() { return m_iconSize; }
-
- void asyncResultCancel()
- {
- ASSERT(m_asyncResult);
- g_simple_async_result_set_error(m_asyncResult.get(), G_IO_ERROR, G_IO_ERROR_CANCELLED, "%s", _("Operation was cancelled"));
- g_simple_async_result_complete(m_asyncResult.get());
- }
-
- void asyncResultCompleteInIdle(GdkPixbuf* icon)
- {
- ASSERT(m_asyncResult);
- g_simple_async_result_set_op_res_gpointer(m_asyncResult.get(), icon, 0);
- g_simple_async_result_complete_in_idle(m_asyncResult.get());
- }
-
- void asyncResultComplete(GdkPixbuf* icon)
- {
- ASSERT(m_asyncResult);
- g_simple_async_result_set_op_res_gpointer(m_asyncResult.get(), icon, 0);
- g_simple_async_result_complete(m_asyncResult.get());
- }
-
-private:
- String m_pageURL;
- GRefPtr<GSimpleAsyncResult> m_asyncResult;
- GRefPtr<GCancellable> m_cancellable;
- gulong m_cancelledId;
- IntSize m_iconSize;
-};
-
-
-enum {
- PROP_0,
-
- PROP_PATH,
-};
-
-enum {
- ICON_LOADED,
-
- LAST_SIGNAL
-};
-
-static guint webkit_favicon_database_signals[LAST_SIGNAL] = { 0, };
-
-G_DEFINE_TYPE(WebKitFaviconDatabase, webkit_favicon_database, G_TYPE_OBJECT)
-
-typedef Vector<OwnPtr<PendingIconRequest> > PendingIconRequestVector;
-typedef HashMap<String, PendingIconRequestVector*> PendingIconRequestMap;
-
-struct _WebKitFaviconDatabasePrivate {
- GOwnPtr<gchar> path;
- IconDatabaseClientGtk iconDatabaseClient;
- PendingIconRequestMap pendingIconRequests;
- bool importFinished;
-};
-
-static void webkit_favicon_database_finalize(GObject* object)
-{
- WebKitFaviconDatabase* database = WEBKIT_FAVICON_DATABASE(object);
-
- webkitFaviconDatabaseClose(database);
- database->priv->~WebKitFaviconDatabasePrivate();
-
- G_OBJECT_CLASS(webkit_favicon_database_parent_class)->finalize(object);
-}
-
-static void webkit_favicon_database_set_property(GObject* object, guint propId, const GValue* value, GParamSpec* pspec)
-{
- WebKitFaviconDatabase* database = WEBKIT_FAVICON_DATABASE(object);
-
- switch (propId) {
- case PROP_PATH:
- webkit_favicon_database_set_path(database, g_value_get_string(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, pspec);
- break;
- }
-}
-
-static void webkit_favicon_database_get_property(GObject* object, guint propId, GValue* value, GParamSpec* pspec)
-{
- WebKitFaviconDatabase* database = WEBKIT_FAVICON_DATABASE(object);
-
- switch (propId) {
- case PROP_PATH:
- g_value_set_string(value, webkit_favicon_database_get_path(database));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, pspec);
- break;
- }
-}
-
-static void webkit_favicon_database_class_init(WebKitFaviconDatabaseClass* klass)
-{
- webkitInit();
-
- GObjectClass* gobjectClass = G_OBJECT_CLASS(klass);
- gobjectClass->finalize = webkit_favicon_database_finalize;
- gobjectClass->set_property = webkit_favicon_database_set_property;
- gobjectClass->get_property = webkit_favicon_database_get_property;
-
- /**
- * WebKitFaviconDatabase:path:
- *
- * The absolute path of the icon database folder.
- *
- * Since: 1.8
- */
- g_object_class_install_property(gobjectClass, PROP_PATH,
- g_param_spec_string("path",
- _("Path"),
- _("The absolute path of the icon database folder"),
- NULL,
- WEBKIT_PARAM_READWRITE));
-
-
- /**
- * WebKitFaviconDatabase::icon-loaded:
- * @database: the object on which the signal is emitted
- * @frame_uri: the URI of the main frame of a Web page containing
- * the icon
- *
- * This signal is fired if an icon is loaded on any
- * #WebKitWebView. If you are only interested in a particular
- * #WebKitWebView see #WebKitWebView::icon-loaded.
- *
- * Note that this signal carries the URI of the frame that loads
- * the icon, while #WebKitWebView::icon-loaded provides the URI
- * of the favicon.
- *
- * Since: 1.8
- */
- webkit_favicon_database_signals[ICON_LOADED] = g_signal_new("icon-loaded",
- G_TYPE_FROM_CLASS(klass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0, 0, 0,
- webkit_marshal_VOID__STRING,
- G_TYPE_NONE, 1,
- G_TYPE_STRING);
-
- g_type_class_add_private(klass, sizeof(WebKitFaviconDatabasePrivate));
-}
-
-static void webkit_favicon_database_init(WebKitFaviconDatabase* database)
-{
- database->priv = G_TYPE_INSTANCE_GET_PRIVATE(database, WEBKIT_TYPE_FAVICON_DATABASE, WebKitFaviconDatabasePrivate);
- new (database->priv) WebKitFaviconDatabasePrivate();
-}
-
-// Called from FrameLoaderClient::dispatchDidReceiveIcon()
-void webkitFaviconDatabaseDispatchDidReceiveIcon(WebKitFaviconDatabase* database, const char* frameURI)
-{
- g_signal_emit(database, webkit_favicon_database_signals[ICON_LOADED], 0, frameURI);
-
- // Retain the new icon.
- iconDatabase().retainIconForPageURL(String::fromUTF8(frameURI));
-}
-
-/**
- * webkit_favicon_database_get_path:
- * @database: a #WebKitFaviconDatabase
- *
- * Determines the absolute path to the database folder on disk.
- *
- * Returns: the absolute path of the database folder, or %NULL
- *
- * Since: 1.8
- */
-const gchar* webkit_favicon_database_get_path(WebKitFaviconDatabase* database)
-{
- g_return_val_if_fail(WEBKIT_IS_FAVICON_DATABASE(database), 0);
-
- return database->priv->path.get();
-}
-
-static void webkitFaviconDatabaseClose(WebKitFaviconDatabase* database)
-{
- if (iconDatabase().isEnabled()) {
- iconDatabase().setEnabled(false);
- iconDatabase().close();
- }
-}
-
-/**
- * webkit_favicon_database_set_path:
- * @database: a #WebKitFaviconDatabase
- * @path: (allow-none): an absolute path to the icon database folder
- * or %NULL to disable the database
- *
- * Specifies the absolute path to the database folder on disk. The
- * icon database will only be enabled after a call to this method.
- *
- * Passing %NULL or "" as path disables the icon database.
- *
- * Since: 1.8
- */
-void webkit_favicon_database_set_path(WebKitFaviconDatabase* database, const gchar* path)
-{
- g_return_if_fail(WEBKIT_IS_FAVICON_DATABASE(database));
-
- // Always try to close because the deprecated icondatabase is opened by default.
- webkitFaviconDatabaseClose(database);
-
- database->priv->importFinished = false;
- if (!path || !path[0]) {
- database->priv->path.set(0);
- iconDatabase().setEnabled(false);
- return;
- }
-
- iconDatabase().setClient(&database->priv->iconDatabaseClient);
- IconDatabase::delayDatabaseCleanup();
- iconDatabase().setEnabled(true);
- if (!iconDatabase().open(filenameToString(path), IconDatabase::defaultDatabaseFilename())) {
- IconDatabase::allowDatabaseCleanup();
- return;
- }
-
- database->priv->path.set(g_strdup(path));
-}
-
-/**
- * webkit_favicon_database_get_favicon_uri:
- * @database: a #WebKitFaviconDatabase
- * @page_uri: URI of the page containing the icon
- *
- * Obtains the URI for the favicon for the given page URI.
- * See also webkit_web_view_get_icon_uri().
- *
- * Returns: a newly allocated URI for the favicon, or %NULL
- *
- * Since: 1.8
- */
-gchar* webkit_favicon_database_get_favicon_uri(WebKitFaviconDatabase* database, const gchar* pageURI)
-{
- g_return_val_if_fail(WEBKIT_IS_FAVICON_DATABASE(database), 0);
- g_return_val_if_fail(pageURI, 0);
- ASSERT(isMainThread());
-
- String iconURI = iconDatabase().synchronousIconURLForPageURL(String::fromUTF8(pageURI));
- if (iconURI.isEmpty())
- return 0;
-
- return g_strdup(iconURI.utf8().data());
-}
-
-static GdkPixbuf* getIconPixbufSynchronously(WebKitFaviconDatabase* database, const String& pageURL, const IntSize& iconSize)
-{
- ASSERT(isMainThread());
-
- // The exact size we pass is irrelevant to the iconDatabase code.
- // We must pass something greater than 0x0 to get a pixbuf.
- RefPtr<cairo_surface_t> surface = iconDatabase().synchronousNativeIconForPageURL(pageURL, !iconSize.isZero() ? iconSize : IntSize(1, 1));
- if (!surface)
- return 0;
-
- GRefPtr<GdkPixbuf> pixbuf = adoptGRef(cairoImageSurfaceToGdkPixbuf(surface.get()));
- if (!pixbuf)
- return 0;
-
- // A size of (0, 0) means the maximum available size.
- int pixbufWidth = gdk_pixbuf_get_width(pixbuf.get());
- int pixbufHeight = gdk_pixbuf_get_height(pixbuf.get());
- if (!iconSize.isZero() && (pixbufWidth != iconSize.width() || pixbufHeight != iconSize.height()))
- pixbuf = adoptGRef(gdk_pixbuf_scale_simple(pixbuf.get(), iconSize.width(), iconSize.height(), GDK_INTERP_BILINEAR));
- return pixbuf.leakRef();
-}
-
-/**
- * webkit_favicon_database_try_get_favicon_pixbuf:
- * @database: a #WebKitFaviconDatabase
- * @page_uri: URI of the page containing the icon
- * @width: the desired width for the icon
- * @height: the desired height for the icon
- *
- * Obtains a #GdkPixbuf of the favicon for the given page URI, or
- * %NULL if there is no icon for the given page or it hasn't been
- * loaded from disk yet. Use webkit_favicon_database_get_favicon_uri()
- * if you need to distinguish these cases. To make sure this method
- * will return a valid icon when the given URI has one, you should
- * connect to #WebKitFaviconDatabase::icon-loaded and use this function
- * in the callback.
- *
- * If @width and @height ar both 0 then this method will return the
- * maximum available size for the icon. Note that if you specify a
- * different size the icon will be scaled each time you call this
- * function.
- *
- * Returns: (transfer full): a new reference to a #GdkPixbuf, or %NULL
- * if the given URI doesn't have an icon or it hasn't been loaded yet.
- *
- * Since: 1.8
- */
-GdkPixbuf* webkit_favicon_database_try_get_favicon_pixbuf(WebKitFaviconDatabase* database, const gchar* pageURI, guint width, guint height)
-{
- g_return_val_if_fail(WEBKIT_IS_FAVICON_DATABASE(database), 0);
- g_return_val_if_fail(pageURI, 0);
- g_return_val_if_fail((width && height) || (!width && !height), 0);
-
- return getIconPixbufSynchronously(database, String::fromUTF8(pageURI), IntSize(width, height));
-}
-
-static PendingIconRequestVector* webkitFaviconDatabaseGetOrCreateRequests(WebKitFaviconDatabase* database, const String& pageURL)
-{
- PendingIconRequestVector* icons = database->priv->pendingIconRequests.get(pageURL);
- if (!icons) {
- icons = new PendingIconRequestVector;
- database->priv->pendingIconRequests.set(pageURL, icons);
- }
-
- return icons;
-}
-
-static void webkitfavicondatabaseDeleteRequests(WebKitFaviconDatabase* database, PendingIconRequestVector* requests, const String& pageURL)
-{
- database->priv->pendingIconRequests.remove(pageURL);
- delete requests;
-}
-
-static void getIconPixbufCancelled(void* userData)
-{
- PendingIconRequest* request = static_cast<PendingIconRequest*>(userData);
- request->asyncResultCancel();
-
- const String& pageURL = request->pageURL();
- WebKitFaviconDatabase* database = webkit_get_favicon_database();
- PendingIconRequestVector* icons = database->priv->pendingIconRequests.get(pageURL);
- if (!icons)
- return;
-
- size_t itemIndex = icons->find(request);
- if (itemIndex != notFound)
- icons->remove(itemIndex);
- if (icons->isEmpty())
- webkitfavicondatabaseDeleteRequests(database, icons, pageURL);
-}
-
-static void webkitFaviconDatabaseGetIconPixbufCancelled(GCancellable* cancellable, PendingIconRequest* request)
-{
- // Handle cancelled in a in idle since it might be called from any thread.
- callOnMainThread(getIconPixbufCancelled, request);
-}
-
-/**
- * webkit_favicon_database_get_favicon_pixbuf:
- * @database: a #WebKitFaviconDatabase
- * @page_uri: URI of the page containing the icon
- * @width: the desired width for the icon
- * @height: the desired height for the icon
- * @cancellable: (allow-none): A #GCancellable or %NULL.
- * @callback: (allow-none): A #GAsyncReadyCallback to call when the request is
- * satisfied or %NULL if you don't care about the result.
- * @user_data: The data to pass to @callback.
- *
- * Asynchronously obtains a #GdkPixbuf of the favicon for the given
- * page URI. The advantage of this method over
- * webkit_favicon_database_try_get_favicon_pixbuf() is that it always returns the
- * cached icon if it's in the database asynchronously waiting for the
- * icon to be read from the database.
- *
- * This is an asynchronous method. When the operation is finished, callback will
- * be invoked. You can then call webkit_favicon_database_get_favicon_pixbuf_finish()
- * to get the result of the operation.
- * See also webkit_favicon_database_try_get_favicon_pixbuf().
- *
- * If @width and @height are both 0 then this method will return the
- * maximum available size for the icon. Note that if you specify a
- * different size the icon will be scaled each time you call this
- * function.
- *
- * Since: 1.8
- */
-void webkit_favicon_database_get_favicon_pixbuf(WebKitFaviconDatabase* database, const gchar* pageURI, guint width, guint height, GCancellable* cancellable, GAsyncReadyCallback callback, gpointer userData)
-{
- g_return_if_fail(WEBKIT_IS_FAVICON_DATABASE(database));
- g_return_if_fail(pageURI);
- g_return_if_fail((width && height) || (!width && !height));
-
- GRefPtr<GSimpleAsyncResult> result = adoptGRef(g_simple_async_result_new(G_OBJECT(database), callback, userData,
- reinterpret_cast<gpointer>(webkit_favicon_database_get_favicon_pixbuf)));
-
- // If we don't have an icon for the given URI or the database is not opened then return ASAP. We have to check that
- // because if the database is not opened it will skip (and not notify about) every single icon load request
- if ((database->priv->importFinished && iconDatabase().synchronousIconURLForPageURL(String::fromUTF8(pageURI)).isEmpty())
- || !iconDatabase().isOpen()) {
- g_simple_async_result_set_op_res_gpointer(result.get(), 0, 0);
- g_simple_async_result_complete_in_idle(result.get());
- return;
- }
-
- String pageURL = String::fromUTF8(pageURI);
- PendingIconRequest* request = new PendingIconRequest(pageURL, result.get(), cancellable, IntSize(width, height));
-
- // Register icon request before asking for the icon to avoid race conditions.
- PendingIconRequestVector* icons = webkitFaviconDatabaseGetOrCreateRequests(database, pageURL);
- ASSERT(icons);
- icons->append(adoptPtr(request));
-
- // We ask for the icon directly. If we don't get the icon data now,
- // we'll be notified later (even if the database is still importing icons).
- GdkPixbuf* pixbuf = getIconPixbufSynchronously(database, pageURL, IntSize(width, height));
- if (!pixbuf)
- return;
-
- request->asyncResultCompleteInIdle(pixbuf);
-
- // Remove the request we have just created as it isn't pending
- // anymore because we already have the pixbuf.
- ASSERT(icons->last().get() == request);
- icons->removeLast();
- if (icons->isEmpty())
- webkitfavicondatabaseDeleteRequests(database, icons, pageURL);
-}
-
-/**
- * webkit_favicon_database_get_favicon_pixbuf_finish:
- * @database: a #WebKitFaviconDatabase
- * @result: A #GAsyncResult obtained from the #GAsyncReadyCallback passed to webkit_favicon_database_get_favicon_pixbuf()
- * @error: (allow-none): Return location for error or %NULL.
- *
- * Finishes an operation started with webkit_favicon_database_get_favicon_pixbuf().
- *
- * Returns: (transfer full): a new reference to a #GdkPixbuf, or %NULL.
- *
- * Since: 1.8
- */
-GdkPixbuf* webkit_favicon_database_get_favicon_pixbuf_finish(WebKitFaviconDatabase* database, GAsyncResult* result, GError** error)
-{
- GSimpleAsyncResult* simpleResult = G_SIMPLE_ASYNC_RESULT(result);
- g_return_val_if_fail(g_simple_async_result_get_source_tag(simpleResult) == webkit_favicon_database_get_favicon_pixbuf, 0);
-
- if (g_simple_async_result_propagate_error(simpleResult, error))
- return 0;
-
- GCancellable* cancellable = static_cast<GCancellable*>(g_object_get_data(G_OBJECT(simpleResult), "cancellable"));
- if (cancellable && g_cancellable_is_cancelled(cancellable)) {
- g_set_error_literal(error, G_IO_ERROR, G_IO_ERROR_CANCELLED, _("Operation was cancelled"));
- return 0;
- }
-
- GdkPixbuf* icon = static_cast<GdkPixbuf*>(g_simple_async_result_get_op_res_gpointer(simpleResult));
- if (!icon)
- return 0;
-
- return static_cast<GdkPixbuf*>(icon);
-}
-
-static void webkitFaviconDatabaseProcessPendingIconsForURI(WebKitFaviconDatabase* database, const String& pageURL)
-{
- PendingIconRequestVector* icons = database->priv->pendingIconRequests.get(pageURL);
- if (!icons)
- return;
-
- for (size_t i = 0; i < icons->size(); ++i) {
- PendingIconRequest* request = icons->at(i).get();
- if (request->asyncResult())
- request->asyncResultComplete(getIconPixbufSynchronously(database, pageURL, request->iconSize()));
- }
- webkitfavicondatabaseDeleteRequests(database, icons, pageURL);
-}
-
-static void webkitFaviconDatabaseImportFinished(WebKitFaviconDatabase* database)
-{
- ASSERT(isMainThread());
- database->priv->importFinished = true;
-
- // Import is complete, process pending requests for pages that are not in the database,
- // since didImportIconDataForPageURL() will never be called for them.
- Vector<String> toDeleteURLs;
- PendingIconRequestMap::const_iterator end = database->priv->pendingIconRequests.end();
- for (PendingIconRequestMap::const_iterator iter = database->priv->pendingIconRequests.begin(); iter != end; ++iter) {
- String iconURL = iconDatabase().synchronousIconURLForPageURL(iter->key);
- if (!iconURL.isEmpty())
- continue;
-
- PendingIconRequestVector* icons = iter->value;
- for (size_t i = 0; i < icons->size(); ++i) {
- PendingIconRequest* request = icons->at(i).get();
- if (request->asyncResult())
- request->asyncResultComplete(0);
- }
-
- toDeleteURLs.append(iter->key);
- }
-
- for (size_t i = 0; i < toDeleteURLs.size(); ++i)
- webkitfavicondatabaseDeleteRequests(database, database->priv->pendingIconRequests.get(toDeleteURLs[i]), toDeleteURLs[i]);
-}
-
-/**
- * webkit_favicon_database_clear:
- * @database: a #WebKitFaviconDatabase
- *
- * Clears all icons from the database.
- *
- * Since: 1.8
- */
-void webkit_favicon_database_clear(WebKitFaviconDatabase* database)
-{
- g_return_if_fail(WEBKIT_IS_FAVICON_DATABASE(database));
-
- iconDatabase().removeAllIcons();
-}
diff --git a/Source/WebKit/gtk/webkit/webkitfavicondatabase.h b/Source/WebKit/gtk/webkit/webkitfavicondatabase.h
deleted file mode 100644
index 95d6b8442..000000000
--- a/Source/WebKit/gtk/webkit/webkitfavicondatabase.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright (C) 2011 Christian Dywan <christian@lanedo.com>
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitfavicondatabase_h
-#define webkitfavicondatabase_h
-
-#include <gdk-pixbuf/gdk-pixbuf.h>
-#include <glib-object.h>
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_FAVICON_DATABASE (webkit_favicon_database_get_type())
-#define WEBKIT_FAVICON_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_FAVICON_DATABASE, WebKitFaviconDatabase))
-#define WEBKIT_FAVICON_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_FAVICON_DATABASE, WebKitFaviconDatabaseClass))
-#define WEBKIT_IS_FAVICON_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_FAVICON_DATABASE))
-#define WEBKIT_IS_FAVICON_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_FAVICON_DATABASE))
-#define WEBKIT_FAVICON_DATABASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_FAVICON_DATABASE, WebKitFaviconDatabaseClass))
-
-typedef struct _WebKitFaviconDatabasePrivate WebKitFaviconDatabasePrivate;
-
-struct _WebKitFaviconDatabase {
- GObject parent_instance;
-
- /*< private >*/
- WebKitFaviconDatabasePrivate* priv;
-};
-
-struct _WebKitFaviconDatabaseClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
- void (*_webkit_reserved4) (void);
-};
-
-WEBKIT_API GType
-webkit_favicon_database_get_type (void);
-
-WEBKIT_API const gchar*
-webkit_favicon_database_get_path (WebKitFaviconDatabase* database);
-
-WEBKIT_API void
-webkit_favicon_database_set_path (WebKitFaviconDatabase* database,
- const gchar* path);
-
-WEBKIT_API gchar*
-webkit_favicon_database_get_favicon_uri (WebKitFaviconDatabase* database,
- const gchar* page_uri);
-
-WEBKIT_API GdkPixbuf*
-webkit_favicon_database_try_get_favicon_pixbuf (WebKitFaviconDatabase* database,
- const gchar* page_uri,
- guint width,
- guint height);
-
-WEBKIT_API void
-webkit_favicon_database_get_favicon_pixbuf (WebKitFaviconDatabase* database,
- const gchar* page_uri,
- guint width,
- guint height,
- GCancellable* cancellable,
- GAsyncReadyCallback callback,
- gpointer user_data);
-
-WEBKIT_API GdkPixbuf*
-webkit_favicon_database_get_favicon_pixbuf_finish (WebKitFaviconDatabase* database,
- GAsyncResult* result,
- GError** error);
-
-WEBKIT_API void
-webkit_favicon_database_clear (WebKitFaviconDatabase* database);
-
-G_END_DECLS
-
-#endif /* webkitfavicondatabase_h */
diff --git a/Source/WebKit/gtk/webkit/webkitfavicondatabaseprivate.h b/Source/WebKit/gtk/webkit/webkitfavicondatabaseprivate.h
deleted file mode 100644
index b7679a0f0..000000000
--- a/Source/WebKit/gtk/webkit/webkitfavicondatabaseprivate.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitfavicondatabaseprivate_h
-#define webkitfavicondatabaseprivate_h
-
-void webkitFaviconDatabaseDispatchDidReceiveIcon(WebKitFaviconDatabase*, const char* frameURI);
-
-#endif // webkitfavicondatabaseprivate_h
diff --git a/Source/WebKit/gtk/webkit/webkitfilechooserrequest.cpp b/Source/WebKit/gtk/webkit/webkitfilechooserrequest.cpp
deleted file mode 100644
index c1373ed49..000000000
--- a/Source/WebKit/gtk/webkit/webkitfilechooserrequest.cpp
+++ /dev/null
@@ -1,367 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitfilechooserrequest.h"
-
-#include "FileChooser.h"
-#include "FileSystem.h"
-#include "webkitfilechooserrequestprivate.h"
-#include "webkitglobalsprivate.h"
-#include <glib/gi18n-lib.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/gobject/GRefPtr.h>
-#include <wtf/text/CString.h>
-
-using namespace WebCore;
-
-/**
- * SECTION:webkitfilechooserrequest
- * @Short_description: A request to open a file chooser
- * @Title: WebKitFileChooserRequest
- * @See_also: #WebKitWebView
- *
- * Whenever the user interacts with an &lt;input type='file' /&gt;
- * HTML element, WebKit will need to show a dialog to choose one or
- * more files to be uploaded to the server along with the rest of the
- * form data. For that to happen in a general way, instead of just
- * opening a #GtkFileChooserDialog (which might be not desirable in
- * some cases, such as when an embedding applications prefers to use
- * its own file chooser dialog), WebKit will fire the
- * #WebKitWebView::run-file-chooser signal with a
- * #WebKitFileChooserRequest object, which will allow the client
- * application to specify the files to be selected, to inspect the
- * details of the request (e.g. if multiple selection should be
- * allowed) and to cancel the request, in case nothing was selected.
- *
- * In case the client application does not wish to handle this signal,
- * WebKit will provide a default handler which will asynchronously run
- * a regular #GtkFileChooserDialog for the user to interact with.
- */
-G_DEFINE_TYPE(WebKitFileChooserRequest, webkit_file_chooser_request, G_TYPE_OBJECT)
-
-struct _WebKitFileChooserRequestPrivate {
- RefPtr<FileChooser> chooser;
- GRefPtr<GtkFileFilter> filter;
- GRefPtr<GPtrArray> mimeTypes;
- GRefPtr<GPtrArray> selectedFiles;
-};
-
-enum {
- PROP_0,
- PROP_FILTER,
- PROP_MIME_TYPES,
- PROP_SELECT_MULTIPLE,
- PROP_SELECTED_FILES,
-};
-
-static void webkit_file_chooser_request_init(WebKitFileChooserRequest* request)
-{
- request->priv = G_TYPE_INSTANCE_GET_PRIVATE(request, WEBKIT_TYPE_FILE_CHOOSER_REQUEST, WebKitFileChooserRequestPrivate);
- new (request->priv) WebKitFileChooserRequestPrivate();
-}
-
-static void webkit_file_chooser_request_finalize(GObject* object)
-{
- WebKitFileChooserRequest* request = WEBKIT_FILE_CHOOSER_REQUEST(object);
-
- request->priv->~WebKitFileChooserRequestPrivate();
- G_OBJECT_CLASS(webkit_file_chooser_request_parent_class)->finalize(object);
-}
-
-static void webkit_file_chooser_request_get_property(GObject* object, guint propId, GValue* value, GParamSpec* paramSpec)
-{
- WebKitFileChooserRequest* request = WEBKIT_FILE_CHOOSER_REQUEST(object);
- switch (propId) {
- case PROP_FILTER:
- g_value_set_object(value, webkit_file_chooser_request_get_mime_types_filter(request));
- break;
- case PROP_MIME_TYPES:
- g_value_set_boxed(value, webkit_file_chooser_request_get_mime_types(request));
- break;
- case PROP_SELECT_MULTIPLE:
- g_value_set_boolean(value, webkit_file_chooser_request_get_select_multiple(request));
- break;
- case PROP_SELECTED_FILES:
- g_value_set_boxed(value, webkit_file_chooser_request_get_selected_files(request));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, paramSpec);
- break;
- }
-}
-
-static void webkit_file_chooser_request_class_init(WebKitFileChooserRequestClass* requestClass)
-{
- GObjectClass* objectClass = G_OBJECT_CLASS(requestClass);
- objectClass->finalize = webkit_file_chooser_request_finalize;
- objectClass->get_property = webkit_file_chooser_request_get_property;
- g_type_class_add_private(requestClass, sizeof(WebKitFileChooserRequestPrivate));
-
- /**
- * WebKitFileChooserRequest:filter:
- *
- * The filter currently associated with the request. See
- * webkit_file_chooser_request_get_mime_types_filter() for more
- * details.
- *
- * Since: 1.10
- */
- g_object_class_install_property(objectClass,
- PROP_FILTER,
- g_param_spec_object("filter",
- _("MIME types filter"),
- _("The filter currently associated with the request"),
- GTK_TYPE_FILE_FILTER,
- WEBKIT_PARAM_READABLE));
- /**
- * WebKitFileChooserRequest:mime-types:
- *
- * A %NULL-terminated array of strings containing the list of MIME
- * types the file chooser dialog should handle. See
- * webkit_file_chooser_request_get_mime_types() for more details.
- *
- * Since: 1.10
- */
- g_object_class_install_property(objectClass,
- PROP_MIME_TYPES,
- g_param_spec_boxed("mime-types",
- _("MIME types"),
- _("The list of MIME types associated with the request"),
- G_TYPE_STRV,
- WEBKIT_PARAM_READABLE)); /**
- * WebKitFileChooserRequest:select-multiple:
- *
- * Whether the file chooser should allow selecting multiple
- * files. See
- * webkit_file_chooser_request_get_select_multiple() for
- * more details.
- *
- * Since: 1.10
- */
- g_object_class_install_property(objectClass,
- PROP_SELECT_MULTIPLE,
- g_param_spec_boolean("select-multiple",
- _("Select multiple files"),
- _("Whether the file chooser should allow selecting multiple files"),
- FALSE,
- WEBKIT_PARAM_READABLE));
- /**
- * WebKitFileChooserRequest:selected-files:
- *
- * A %NULL-terminated array of strings containing the list of
- * selected files associated to the current request. See
- * webkit_file_chooser_request_get_selected_files() for more details.
- *
- * Since: 1.10
- */
- g_object_class_install_property(objectClass,
- PROP_SELECTED_FILES,
- g_param_spec_boxed("selected-files",
- _("Selected files"),
- _("The list of selected files associated with the request"),
- G_TYPE_STRV,
- WEBKIT_PARAM_READABLE));
-}
-
-WebKitFileChooserRequest* webkit_file_chooser_request_create(PassRefPtr<FileChooser> chooser)
-{
- WebKitFileChooserRequest* request = WEBKIT_FILE_CHOOSER_REQUEST(g_object_new(WEBKIT_TYPE_FILE_CHOOSER_REQUEST, NULL));
- request->priv->chooser = chooser;
- return request;
-}
-
-/**
- * webkit_file_chooser_request_get_mime_types:
- * @request: a #WebKitFileChooserRequest
- *
- * Get the list of MIME types the file chooser dialog should handle,
- * in the format specified in RFC 2046 for "media types". Its contents
- * depend on the value of the 'accept' attribute for HTML input
- * elements. This function should normally be called before presenting
- * the file chooser dialog to the user, to decide whether to allow the
- * user to select multiple files at once or only one.
- *
- * Returns: (array zero-terminated=1) (transfer none): a
- * %NULL-terminated array of strings if a list of accepted MIME types
- * is defined or %NULL otherwise, meaning that any MIME type should be
- * accepted. This array and its contents are owned by WebKitGTK+ and
- * should not be modified or freed.
- *
- * Since: 1.10
- */
-const gchar* const* webkit_file_chooser_request_get_mime_types(WebKitFileChooserRequest* request)
-{
- g_return_val_if_fail(WEBKIT_IS_FILE_CHOOSER_REQUEST(request), 0);
- if (request->priv->mimeTypes)
- return reinterpret_cast<gchar**>(request->priv->mimeTypes->pdata);
-
- FileChooserSettings settings = request->priv->chooser->settings();
- size_t numOfMimeTypes = settings.acceptMIMETypes.size();
- if (!numOfMimeTypes)
- return 0;
-
- request->priv->mimeTypes = adoptGRef(g_ptr_array_new_with_free_func(g_free));
- for (size_t i = 0; i < numOfMimeTypes; ++i) {
- String mimeTypeString = settings.acceptMIMETypes[i];
- if (mimeTypeString.isEmpty())
- continue;
- g_ptr_array_add(request->priv->mimeTypes.get(), g_strdup(mimeTypeString.utf8().data()));
- }
- g_ptr_array_add(request->priv->mimeTypes.get(), 0);
-
- return reinterpret_cast<gchar**>(request->priv->mimeTypes->pdata);
-}
-
-/**
- * webkit_file_chooser_request_get_mime_types_filter:
- * @request: a #WebKitFileChooserRequest
- *
- * Get the filter currently associated with the request, ready to be
- * used by #GtkFileChooser. This function should normally be called
- * before presenting the file chooser dialog to the user, to decide
- * whether to apply a filter so the user would not be allowed to
- * select files with other MIME types.
- *
- * See webkit_file_chooser_request_get_mime_types() if you are
- * interested in getting the list of accepted MIME types.
- *
- * Returns: (transfer none): a #GtkFileFilter if a list of accepted
- * MIME types is defined or %NULL otherwise. The returned object is
- * owned by WebKitGTK+ should not be modified or freed.
- *
- * Since: 1.10
- */
-GtkFileFilter* webkit_file_chooser_request_get_mime_types_filter(WebKitFileChooserRequest* request)
-{
- g_return_val_if_fail(WEBKIT_IS_FILE_CHOOSER_REQUEST(request), 0);
- if (request->priv->filter)
- return request->priv->filter.get();
-
- FileChooserSettings settings = request->priv->chooser->settings();
- size_t numOfMimeTypes = settings.acceptMIMETypes.size();
- if (!numOfMimeTypes)
- return 0;
-
- // Do not use adoptGRef here, since we want to sink the floating
- // reference for the new instance of GtkFileFilter, so we make
- // sure we keep the ownership during the lifetime of the request.
- request->priv->filter = gtk_file_filter_new();
- for (size_t i = 0; i < numOfMimeTypes; ++i) {
- String mimeTypeString = settings.acceptMIMETypes[i];
- if (mimeTypeString.isEmpty())
- continue;
- gtk_file_filter_add_mime_type(request->priv->filter.get(), mimeTypeString.utf8().data());
- }
-
- return request->priv->filter.get();
-}
-
-/**
- * webkit_file_chooser_request_get_select_multiple:
- * @request: a #WebKitFileChooserRequest
- *
- * Determine whether the file chooser associated to this
- * #WebKitFileChooserRequest should allow selecting multiple files,
- * which depends on the HTML input element having a 'multiple'
- * attribute defined.
- *
- * Returns: %TRUE if the file chooser should allow selecting multiple files or %FALSE otherwise.
- *
- * Since: 1.10
- */
-gboolean webkit_file_chooser_request_get_select_multiple(WebKitFileChooserRequest* request)
-{
- g_return_val_if_fail(WEBKIT_IS_FILE_CHOOSER_REQUEST(request), FALSE);
- return request->priv->chooser->settings().allowsMultipleFiles;
-}
-
-/**
- * webkit_file_chooser_request_select_files:
- * @request: a #WebKitFileChooserRequest
- * @files: (array zero-terminated=1) (transfer none): a
- * %NULL-terminated array of strings, containing paths to local files.
- *
- * Ask WebKit to select local files for upload and complete the
- * request.
- *
- * Since: 1.10
- */
-void webkit_file_chooser_request_select_files(WebKitFileChooserRequest* request, const gchar* const* files)
-{
- g_return_if_fail(WEBKIT_IS_FILE_CHOOSER_REQUEST(request));
- g_return_if_fail(files);
-
- Vector<String> names;
- GRefPtr<GPtrArray> selectedFiles = adoptGRef(g_ptr_array_new_with_free_func(g_free));
-
- for (int i = 0; files[i]; i++) {
- names.append(filenameToString(files[i]));
- g_ptr_array_add(selectedFiles.get(), g_strdup(files[i]));
- }
-
- g_ptr_array_add(selectedFiles.get(), 0);
- request->priv->chooser->chooseFiles(names);
- request->priv->selectedFiles = selectedFiles;
-}
-
-/**
- * webkit_file_chooser_request_get_selected_files:
- * @request: a #WebKitFileChooserRequest
- *
- * Get the list of selected files currently associated to the
- * request. Initially, the return value of this method contains any
- * files selected in previous file chooser requests for this HTML
- * input element. Once webkit_file_chooser_request_select_files, the
- * value will reflect whatever files are given.
- *
- * This function should normally be called only before presenting the
- * file chooser dialog to the user, to decide whether to perform some
- * extra action, like pre-selecting the files from a previous request.
- *
- * Returns: (array zero-terminated=1) (transfer none): a
- * %NULL-terminated array of strings if there are selected files
- * associated with the request or %NULL otherwise. This array and its
- * contents are owned by WebKitGTK+ and should not be modified or
- * freed.
- *
- * Since: 1.10
- */
-const gchar* const* webkit_file_chooser_request_get_selected_files(WebKitFileChooserRequest* request)
-{
- g_return_val_if_fail(WEBKIT_IS_FILE_CHOOSER_REQUEST(request), 0);
- if (request->priv->selectedFiles)
- return reinterpret_cast<gchar**>(request->priv->selectedFiles->pdata);
-
- FileChooserSettings settings = request->priv->chooser->settings();
- size_t numOfFiles = settings.selectedFiles.size();
- if (!numOfFiles)
- return 0;
-
- request->priv->selectedFiles = adoptGRef(g_ptr_array_new_with_free_func(g_free));
- for (size_t i = 0; i < numOfFiles; ++i) {
- if (settings.selectedFiles[i].isEmpty())
- continue;
- CString filename = fileSystemRepresentation(settings.selectedFiles[i]);
- g_ptr_array_add(request->priv->selectedFiles.get(), g_strdup(filename.data()));
- }
- g_ptr_array_add(request->priv->selectedFiles.get(), 0);
-
- return reinterpret_cast<gchar**>(request->priv->selectedFiles->pdata);
-}
diff --git a/Source/WebKit/gtk/webkit/webkitfilechooserrequest.h b/Source/WebKit/gtk/webkit/webkitfilechooserrequest.h
deleted file mode 100644
index dea94c860..000000000
--- a/Source/WebKit/gtk/webkit/webkitfilechooserrequest.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitfilechooserrequest_h
-#define webkitfilechooserrequest_h
-
-#include <gtk/gtk.h>
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_FILE_CHOOSER_REQUEST (webkit_file_chooser_request_get_type())
-#define WEBKIT_FILE_CHOOSER_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_FILE_CHOOSER_REQUEST, WebKitFileChooserRequest))
-#define WEBKIT_FILE_CHOOSER_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_FILE_CHOOSER_REQUEST, WebKitFileChooserRequestClass))
-#define WEBKIT_IS_FILE_CHOOSER_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_FILE_CHOOSER_REQUEST))
-#define WEBKIT_IS_FILE_CHOOSER_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_FILE_CHOOSER_REQUEST))
-#define WEBKIT_FILE_CHOOSER_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_FILE_CHOOSER_REQUEST, WebKitFileChooserRequestClass))
-
-typedef struct _WebKitFileChooserRequest WebKitFileChooserRequest;
-typedef struct _WebKitFileChooserRequestClass WebKitFileChooserRequestClass;
-typedef struct _WebKitFileChooserRequestPrivate WebKitFileChooserRequestPrivate;
-
-struct _WebKitFileChooserRequest {
- GObject parent;
-
- /*< private >*/
- WebKitFileChooserRequestPrivate *priv;
-};
-
-struct _WebKitFileChooserRequestClass {
- GObjectClass parent_class;
-};
-
-WEBKIT_API GType
-webkit_file_chooser_request_get_type (void);
-
-WEBKIT_API const gchar * const *
-webkit_file_chooser_request_get_mime_types (WebKitFileChooserRequest *request);
-
-WEBKIT_API GtkFileFilter *
-webkit_file_chooser_request_get_mime_types_filter (WebKitFileChooserRequest *request);
-
-WEBKIT_API gboolean
-webkit_file_chooser_request_get_select_multiple (WebKitFileChooserRequest *request);
-
-WEBKIT_API void
-webkit_file_chooser_request_select_files (WebKitFileChooserRequest *request,
- const gchar * const *files);
-
-WEBKIT_API const gchar * const *
-webkit_file_chooser_request_get_selected_files (WebKitFileChooserRequest *request);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitfilechooserrequestprivate.h b/Source/WebKit/gtk/webkit/webkitfilechooserrequestprivate.h
deleted file mode 100644
index a41cc79f6..000000000
--- a/Source/WebKit/gtk/webkit/webkitfilechooserrequestprivate.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitfilechooserrequestprivate_h
-#define webkitfilechooserrequestprivate_h
-
-#include "FileChooser.h"
-#include "webkitfilechooserrequest.h"
-
-using namespace WebCore;
-
-WebKitFileChooserRequest* webkit_file_chooser_request_create(PassRefPtr<FileChooser> chooser);
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp b/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp
deleted file mode 100644
index 51465850b..000000000
--- a/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (C) 2010 Arno Renevier
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitgeolocationpolicydecision.h"
-
-#include "Geolocation.h"
-#include "webkitgeolocationpolicydecisionprivate.h"
-#include "webkitglobalsprivate.h"
-
-/**
- * SECTION:webkitgeolocationpolicydecision
- * @short_description: Liaison between WebKit and the application regarding asynchronous geolocation policy decisions
- *
- * #WebKitGeolocationPolicyDecision objects are given to the application when
- * geolocation-policy-decision-requested signal is emitted. The application
- * uses it to tell the engine whether it wants to allow or deny geolocation for
- * a given frame.
- */
-
-G_DEFINE_TYPE(WebKitGeolocationPolicyDecision, webkit_geolocation_policy_decision, G_TYPE_OBJECT);
-
-struct _WebKitGeolocationPolicyDecisionPrivate {
- WebKitWebFrame* frame;
-#if ENABLE(GEOLOCATION)
- WebCore::Geolocation* geolocation;
-#endif
-};
-
-static void webkit_geolocation_policy_decision_class_init(WebKitGeolocationPolicyDecisionClass* decisionClass)
-{
- g_type_class_add_private(decisionClass, sizeof(WebKitGeolocationPolicyDecisionPrivate));
-}
-
-static void webkit_geolocation_policy_decision_init(WebKitGeolocationPolicyDecision* decision)
-{
- decision->priv = G_TYPE_INSTANCE_GET_PRIVATE(decision, WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION, WebKitGeolocationPolicyDecisionPrivate);
-}
-
-#if ENABLE(GEOLOCATION)
-WebKitGeolocationPolicyDecision* webkit_geolocation_policy_decision_new(WebKitWebFrame* frame, WebCore::Geolocation* geolocation)
-{
- g_return_val_if_fail(frame, NULL);
- WebKitGeolocationPolicyDecision* decision = WEBKIT_GEOLOCATION_POLICY_DECISION(g_object_new(WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION, NULL));
- WebKitGeolocationPolicyDecisionPrivate* priv = decision->priv;
-
- priv->frame = frame;
- priv->geolocation = geolocation;
- return decision;
-}
-#endif
-
-/**
- * webkit_geolocation_policy_allow:
- * @decision: a #WebKitGeolocationPolicyDecision
- *
- * Will send the allow decision to the policy implementer.
- *
- * Since: 1.1.23
- */
-void webkit_geolocation_policy_allow(WebKitGeolocationPolicyDecision* decision)
-{
-#if ENABLE(GEOLOCATION)
- g_return_if_fail(WEBKIT_IS_GEOLOCATION_POLICY_DECISION(decision));
-
- WebKitGeolocationPolicyDecisionPrivate* priv = decision->priv;
- priv->geolocation->setIsAllowed(TRUE);
-#else
- WEBKIT_WARN_FEATURE_NOT_PRESENT("Geolocation")
-#endif
-}
-
-/**
- * webkit_geolocation_policy_deny:
- * @decision: a #WebKitGeolocationPolicyDecision
- *
- * Will send the deny decision to the policy implementer.
- *
- * Since: 1.1.23
- */
-void webkit_geolocation_policy_deny(WebKitGeolocationPolicyDecision* decision)
-{
-#if ENABLE(GEOLOCATION)
- g_return_if_fail(WEBKIT_IS_GEOLOCATION_POLICY_DECISION(decision));
-
- WebKitGeolocationPolicyDecisionPrivate* priv = decision->priv;
- priv->geolocation->setIsAllowed(FALSE);
-#else
- WEBKIT_WARN_FEATURE_NOT_PRESENT("Geolocation")
-#endif
-}
-
diff --git a/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.h b/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.h
deleted file mode 100644
index 27e0ef2d8..000000000
--- a/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecision.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright (C) 2010 Arno Renevier
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitgeolocationpolicydecision_h
-#define webkitgeolocationpolicydecision_h
-
-#include <glib-object.h>
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION (webkit_geolocation_policy_decision_get_type())
-#define WEBKIT_GEOLOCATION_POLICY_DECISION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION, WebKitGeolocationPolicyDecision))
-#define WEBKIT_GEOLOCATION_POLICY_DECISION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION, WebKitGeolocationPolicyDecisionClass))
-#define WEBKIT_IS_GEOLOCATION_POLICY_DECISION(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION))
-#define WEBKIT_IS_GEOLOCATION_POLICY_DECISION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION))
-#define WEBKIT_GEOLOCATION_POLICY_DECISION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION, WebKitGeolocationPolicyDecisionClass))
-
-typedef struct _WebKitGeolocationPolicyDecisionPrivate WebKitGeolocationPolicyDecisionPrivate;
-struct _WebKitGeolocationPolicyDecision {
- GObject parent_instance;
-
- /*< private >*/
- WebKitGeolocationPolicyDecisionPrivate* priv;
-};
-
-struct _WebKitGeolocationPolicyDecisionClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_geolocation_policy_decision_get_type (void);
-
-WEBKIT_API void
-webkit_geolocation_policy_allow (WebKitGeolocationPolicyDecision* decision);
-
-WEBKIT_API void
-webkit_geolocation_policy_deny (WebKitGeolocationPolicyDecision* decision);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecisionprivate.h b/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecisionprivate.h
deleted file mode 100644
index 177154cd2..000000000
--- a/Source/WebKit/gtk/webkit/webkitgeolocationpolicydecisionprivate.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitgeolocationpolicydecisionprivate_h
-#define webkitgeolocationpolicydecisionprivate_h
-
-#include "webkitgeolocationpolicydecision.h"
-
-#if ENABLE(GEOLOCATION)
-
-extern "C" {
-
-WebKitGeolocationPolicyDecision* webkit_geolocation_policy_decision_new(WebKitWebFrame*, WebCore::Geolocation*);
-
-}
-
-#endif // ENABLE(GEOLOCATION)
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitglobals.cpp b/Source/WebKit/gtk/webkit/webkitglobals.cpp
deleted file mode 100644
index c9c67d1cc..000000000
--- a/Source/WebKit/gtk/webkit/webkitglobals.cpp
+++ /dev/null
@@ -1,571 +0,0 @@
-/*
- * Copyright (C) 2007 Holger Hans Peter Freyther
- * Copyright (C) 2008, 2010 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitglobals.h"
-
-#include "ApplicationCacheStorage.h"
-#include "Chrome.h"
-#include "ContextMenuItem.h"
-#include "FrameNetworkingContextGtk.h"
-#include "IconDatabase.h"
-#include "InitializeLogging.h"
-#include "MemoryCache.h"
-#include "Page.h"
-#include "PageCache.h"
-#include "PageGroup.h"
-#include "PlatformStrategiesGtk.h"
-#include "TextEncodingRegistry.h"
-#include "Pasteboard.h"
-#include "PasteboardHelperGtk.h"
-#include "ResourceHandle.h"
-#include "ResourceHandleClient.h"
-#include "ResourceHandleInternal.h"
-#include "ResourceResponse.h"
-#include "SchemeRegistry.h"
-#include "webkitapplicationcache.h"
-#include "webkitfavicondatabase.h"
-#include "webkitglobalsprivate.h"
-#include "webkiticondatabase.h"
-#include "webkitspellchecker.h"
-#include "webkitspellcheckerenchant.h"
-#include "webkitwebdatabase.h"
-#include "webkitwebplugindatabaseprivate.h"
-#include <libintl.h>
-#include <runtime/InitializeThreading.h>
-#include <stdlib.h>
-#include <wtf/MainThread.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/gobject/GRefPtr.h>
-
-static WebKitCacheModel cacheModel = WEBKIT_CACHE_MODEL_DEFAULT;
-
-using namespace WebCore;
-
-/**
- * SECTION:webkit
- * @short_description: Global functions controlling WebKit
- *
- * WebKit manages many resources which are not related to specific
- * views. These functions relate to cross-view limits, such as cache
- * sizes, database quotas, and the HTTP session management.
- */
-
-/**
- * webkit_get_default_session:
- *
- * Retrieves the default #SoupSession used by all web views.
- * Note that the session features are added by WebKit on demand,
- * so if you insert your own #SoupCookieJar before any network
- * traffic occurs, WebKit will use it instead of the default.
- *
- * Return value: (transfer none): the default #SoupSession
- *
- * Since: 1.1.1
- */
-SoupSession* webkit_get_default_session ()
-{
- webkitInit();
- return ResourceHandle::defaultSession();
-}
-
-/**
- * webkit_set_cache_model:
- * @cache_model: a #WebKitCacheModel
- *
- * Specifies a usage model for WebViews, which WebKit will use to
- * determine its caching behavior. All web views follow the cache
- * model. This cache model determines the RAM and disk space to use
- * for caching previously viewed content .
- *
- * Research indicates that users tend to browse within clusters of
- * documents that hold resources in common, and to revisit previously
- * visited documents. WebKit and the frameworks below it include
- * built-in caches that take advantage of these patterns,
- * substantially improving document load speed in browsing
- * situations. The WebKit cache model controls the behaviors of all of
- * these caches, including various WebCore caches.
- *
- * Browsers can improve document load speed substantially by
- * specifying WEBKIT_CACHE_MODEL_WEB_BROWSER. Applications without a
- * browsing interface can reduce memory usage substantially by
- * specifying WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER. Default value is
- * WEBKIT_CACHE_MODEL_WEB_BROWSER.
- *
- * Since: 1.1.18
- */
-void webkit_set_cache_model(WebKitCacheModel model)
-{
- webkitInit();
-
- if (cacheModel == model)
- return;
-
- // FIXME: Add disk cache handling when soup has the API
- guint cacheTotalCapacity;
- guint cacheMinDeadCapacity;
- guint cacheMaxDeadCapacity;
- gdouble deadDecodedDataDeletionInterval;
- guint pageCacheCapacity;
-
- // FIXME: The Mac port calculates these values based on the amount of physical memory that's
- // installed on the system. Currently these values match the Mac port for users with more than
- // 512 MB and less than 1024 MB of physical memory.
- switch (model) {
- case WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER:
- pageCacheCapacity = 0;
- cacheTotalCapacity = 0; // FIXME: The Mac port actually sets this to larger than 0.
- cacheMinDeadCapacity = 0;
- cacheMaxDeadCapacity = 0;
- deadDecodedDataDeletionInterval = 0;
- break;
- case WEBKIT_CACHE_MODEL_DOCUMENT_BROWSER:
- pageCacheCapacity = 2;
- cacheTotalCapacity = 16 * 1024 * 1024;
- cacheMinDeadCapacity = cacheTotalCapacity / 8;
- cacheMaxDeadCapacity = cacheTotalCapacity / 4;
- deadDecodedDataDeletionInterval = 0;
- break;
- case WEBKIT_CACHE_MODEL_WEB_BROWSER:
- // Page cache capacity (in pages). Comment from Mac port:
- // (Research indicates that value / page drops substantially after 3 pages.)
- pageCacheCapacity = 3;
- cacheTotalCapacity = 32 * 1024 * 1024;
- cacheMinDeadCapacity = cacheTotalCapacity / 4;
- cacheMaxDeadCapacity = cacheTotalCapacity / 2;
- deadDecodedDataDeletionInterval = 60;
- break;
- default:
- g_return_if_reached();
- }
-
- bool disableCache = !cacheMinDeadCapacity && !cacheMaxDeadCapacity && !cacheTotalCapacity;
- memoryCache()->setDisabled(disableCache);
- memoryCache()->setCapacities(cacheMinDeadCapacity, cacheMaxDeadCapacity, cacheTotalCapacity);
- memoryCache()->setDeadDecodedDataDeletionInterval(deadDecodedDataDeletionInterval);
- pageCache()->setCapacity(pageCacheCapacity);
- cacheModel = model;
-}
-
-/**
- * webkit_get_cache_model:
- *
- * Returns the current cache model. For more information about this
- * value check the documentation of the function
- * webkit_set_cache_model().
- *
- * Return value: the current #WebKitCacheModel
- *
- * Since: 1.1.18
- */
-WebKitCacheModel webkit_get_cache_model()
-{
- webkitInit();
- return cacheModel;
-}
-
-/**
- * webkit_get_web_plugin_database:
- *
- * Returns the current #WebKitWebPluginDatabase with information about
- * all the plugins WebKit knows about in this instance.
- *
- * Return value: (transfer none): the current #WebKitWebPluginDatabase
- *
- * Since: 1.3.8
- */
-WebKitWebPluginDatabase* webkit_get_web_plugin_database()
-{
- static WebKitWebPluginDatabase* database = 0;
-
- webkitInit();
-
- if (!database)
- database = webkit_web_plugin_database_new();
-
- return database;
-}
-
-/**
- * webkit_get_icon_database:
- *
- * Returns the #WebKitIconDatabase providing access to website icons.
- *
- * Return value: (transfer none): the current #WebKitIconDatabase
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use webkit_get_favicon_database() instead
- */
-WebKitIconDatabase* webkit_get_icon_database()
-{
- webkitInit();
-
- static WebKitIconDatabase* database = 0;
- if (!database)
- database = WEBKIT_ICON_DATABASE(g_object_new(WEBKIT_TYPE_ICON_DATABASE, NULL));
-
- return database;
-}
-
-/**
- * webkit_get_favicon_database:
- *
- * Returns the #WebKitFaviconDatabase providing access to website
- * icons.
- *
- * Return value: (transfer none): the current #WebKitFaviconDatabase
- *
- * Since: 1.8
- */
-WebKitFaviconDatabase* webkit_get_favicon_database()
-{
- webkitInit();
-
- static WebKitFaviconDatabase* database = 0;
- if (!database)
- database = WEBKIT_FAVICON_DATABASE(g_object_new(WEBKIT_TYPE_FAVICON_DATABASE, NULL));
-
- return database;
-}
-
-static GRefPtr<WebKitSpellChecker> textChecker = 0;
-
-static void webkitExit()
-{
- g_object_unref(webkit_get_default_session());
-#if ENABLE(ICONDATABASE)
- g_object_unref(webkit_get_favicon_database());
-#endif
- textChecker = 0;
-}
-
-/**
- * webkit_get_text_checker:
- *
- * Returns: (transfer none): the #WebKitSpellChecker used by WebKit, or %NULL if spell
- * checking is not enabled
- *
- * Since: 1.5.1
- **/
-GObject* webkit_get_text_checker()
-{
- webkitInit();
-
-#if ENABLE(SPELLCHECK)
- if (!textChecker)
- textChecker = adoptGRef(WEBKIT_SPELL_CHECKER(g_object_new(WEBKIT_TYPE_SPELL_CHECKER_ENCHANT, NULL)));
-#endif
-
- return G_OBJECT(textChecker.get());
-}
-
-/**
- * webkit_set_text_checker:
- * @checker: a #WebKitSpellChecker or %NULL
- *
- * Sets @checker as the spell checker to be used by WebKit. The API
- * accepts GObject since in the future we might accept objects
- * implementing multiple interfaces (for example, spell checking and
- * grammar checking).
- *
- * Since: 1.5.1
- **/
-void webkit_set_text_checker(GObject* checker)
-{
- g_return_if_fail(!checker || WEBKIT_IS_SPELL_CHECKER(checker));
-
- webkitInit();
-
- // We need to do this because we need the cast, and casting NULL
- // is not kosher.
- textChecker = checker ? WEBKIT_SPELL_CHECKER(checker) : 0;
-}
-
-/**
- * webkit_context_menu_item_get_action:
- * @item: a #GtkMenuItem of the default context menu
- *
- * Returns the #WebKitContextMenuAction of the given @item. This function
- * can be used to determine the items present in the default context menu.
- * In order to inspect the default context menu, you should connect to
- * #WebKitWebView::context-menu signal.
- *
- * <example>
- * <title>Inspecting the default context menu</title>
- * <programlisting>
- * static gboolean context_menu_cb (WebKitWebView *webView,
- * GtkWidget *default_menu,
- * WebKitHitTestResult *hit_test_result,
- * gboolean triggered_with_keyboard,
- * gpointer user_data)
- * {
- * GList *items = gtk_container_get_children (GTK_CONTAINER (default_menu));
- * GList *l;
- * GtkAction *action;
- * GtkWidget *sub_menu;
- *
- * for (l = items; l; l = g_list_next (l)) {
- * GtkMenuItem *item = (GtkMenuItem *)l->data;
- *
- * if (GTK_IS_SEPARATOR_MENU_ITEM (item)) {
- * /&ast; It's separator, do nothing &ast;/
- * continue;
- * }
- *
- * switch (webkit_context_menu_item_get_action (item)) {
- * case WEBKIT_CONTEXT_MENU_ACTION_NO_ACTION:
- * /&ast; No action for this item &ast;/
- * break;
- * /&ast; Don't allow to ope links from context menu &ast;/
- * case WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK:
- * case WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK_IN_NEW_WINDOW:
- * action = gtk_activatable_get_related_action (GTK_ACTIVATABLE (item));
- * gtk_action_set_sensitive (action, FALSE);
- * break;
- * default:
- * break;
- * }
- *
- * sub_menu = gtk_menu_item_get_submenu (item);
- * if (sub_menu) {
- * GtkWidget *menu_item;
- *
- * /&ast; Add custom action to submenu &ast;/
- * action = gtk_action_new ("CustomItemName", "Custom Action", NULL, NULL);
- * g_signal_connect (action, "activate", G_CALLBACK (custom_menu_item_activated), NULL);
- *
- * menu_item = gtk_action_create_menu_item (action);
- * g_object_unref (action);
- * gtk_menu_shell_append (GTK_MENU_SHELL (sub_menu), menu_item);
- * gtk_widget_show (menu_item);
- * }
- * }
- *
- * g_list_free(items);
- * }
- * </programlisting>
- * </example>
- *
- * Note that you can get the #GtkAction of any item in the default context menu with
- * gtk_activatable_get_related_action().
- *
- * Returns: the #WebKitContextMenuAction of the given @item
- *
- * Since: 1.10
- */
-WebKitContextMenuAction webkit_context_menu_item_get_action(GtkMenuItem* item)
-{
-#if ENABLE(CONTEXT_MENUS)
- g_return_val_if_fail(GTK_IS_MENU_ITEM(item), WEBKIT_CONTEXT_MENU_ACTION_NO_ACTION);
-
- ContextMenuItem menuItem(item);
- switch (menuItem.action()) {
- case ContextMenuItemTagNoAction:
- return WEBKIT_CONTEXT_MENU_ACTION_NO_ACTION;
- case ContextMenuItemTagOpenLink:
- return WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK;
- case ContextMenuItemTagOpenLinkInNewWindow:
- return WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK_IN_NEW_WINDOW;
- case ContextMenuItemTagDownloadLinkToDisk:
- return WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_LINK_TO_DISK;
- case ContextMenuItemTagCopyLinkToClipboard:
- return WEBKIT_CONTEXT_MENU_ACTION_COPY_LINK_TO_CLIPBOARD;
- case ContextMenuItemTagOpenImageInNewWindow:
- return WEBKIT_CONTEXT_MENU_ACTION_OPEN_IMAGE_IN_NEW_WINDOW;
- case ContextMenuItemTagDownloadImageToDisk:
- return WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_IMAGE_TO_DISK;
- case ContextMenuItemTagCopyImageToClipboard:
- return WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_TO_CLIPBOARD;
- case ContextMenuItemTagCopyImageUrlToClipboard:
- return WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_URL_TO_CLIPBOARD;
- case ContextMenuItemTagOpenFrameInNewWindow:
- return WEBKIT_CONTEXT_MENU_ACTION_OPEN_FRAME_IN_NEW_WINDOW;
- case ContextMenuItemTagGoBack:
- return WEBKIT_CONTEXT_MENU_ACTION_GO_BACK;
- case ContextMenuItemTagGoForward:
- return WEBKIT_CONTEXT_MENU_ACTION_GO_FORWARD;
- case ContextMenuItemTagStop:
- return WEBKIT_CONTEXT_MENU_ACTION_STOP;
- case ContextMenuItemTagReload:
- return WEBKIT_CONTEXT_MENU_ACTION_RELOAD;
- case ContextMenuItemTagCopy:
- return WEBKIT_CONTEXT_MENU_ACTION_COPY;
- case ContextMenuItemTagCut:
- return WEBKIT_CONTEXT_MENU_ACTION_CUT;
- case ContextMenuItemTagPaste:
- return WEBKIT_CONTEXT_MENU_ACTION_PASTE;
- case ContextMenuItemTagDelete:
- return WEBKIT_CONTEXT_MENU_ACTION_DELETE;
- case ContextMenuItemTagSelectAll:
- return WEBKIT_CONTEXT_MENU_ACTION_SELECT_ALL;
- case ContextMenuItemTagInputMethods:
- return WEBKIT_CONTEXT_MENU_ACTION_INPUT_METHODS;
- case ContextMenuItemTagUnicode:
- return WEBKIT_CONTEXT_MENU_ACTION_UNICODE;
- case ContextMenuItemTagSpellingGuess:
- return WEBKIT_CONTEXT_MENU_ACTION_SPELLING_GUESS;
- case ContextMenuItemTagIgnoreSpelling:
- return WEBKIT_CONTEXT_MENU_ACTION_IGNORE_SPELLING;
- case ContextMenuItemTagLearnSpelling:
- return WEBKIT_CONTEXT_MENU_ACTION_LEARN_SPELLING;
- case ContextMenuItemTagIgnoreGrammar:
- return WEBKIT_CONTEXT_MENU_ACTION_IGNORE_GRAMMAR;
- case ContextMenuItemTagFontMenu:
- return WEBKIT_CONTEXT_MENU_ACTION_FONT_MENU;
- case ContextMenuItemTagBold:
- return WEBKIT_CONTEXT_MENU_ACTION_BOLD;
- case ContextMenuItemTagItalic:
- return WEBKIT_CONTEXT_MENU_ACTION_ITALIC;
- case ContextMenuItemTagUnderline:
- return WEBKIT_CONTEXT_MENU_ACTION_UNDERLINE;
- case ContextMenuItemTagOutline:
- return WEBKIT_CONTEXT_MENU_ACTION_OUTLINE;
- case ContextMenuItemTagInspectElement:
- return WEBKIT_CONTEXT_MENU_ACTION_INSPECT_ELEMENT;
- case ContextMenuItemTagOpenMediaInNewWindow:
- return WEBKIT_CONTEXT_MENU_ACTION_OPEN_MEDIA_IN_NEW_WINDOW;
- case ContextMenuItemTagCopyMediaLinkToClipboard:
- return WEBKIT_CONTEXT_MENU_ACTION_COPY_MEDIA_LINK_TO_CLIPBOARD;
- case ContextMenuItemTagToggleMediaControls:
- return WEBKIT_CONTEXT_MENU_ACTION_TOGGLE_MEDIA_CONTROLS;
- case ContextMenuItemTagToggleMediaLoop:
- return WEBKIT_CONTEXT_MENU_ACTION_TOGGLE_MEDIA_LOOP;
- case ContextMenuItemTagEnterVideoFullscreen:
- return WEBKIT_CONTEXT_MENU_ACTION_ENTER_VIDEO_FULLSCREEN;
- case ContextMenuItemTagMediaPlayPause:
- return WEBKIT_CONTEXT_MENU_ACTION_MEDIA_PLAY_PAUSE;
- case ContextMenuItemTagMediaMute:
- return WEBKIT_CONTEXT_MENU_ACTION_MEDIA_MUTE;
- default:
- g_assert_not_reached();
- }
-#else
- return WEBKIT_CONTEXT_MENU_ACTION_NO_ACTION;
-#endif
-}
-
-/**
- * webkit_set_security_policy_for_uri_scheme:
- * @scheme: a URI scheme
- * @policy: a #WebKitSecurityPolicy
- *
- * Set the security policy for the given URI scheme.
- *
- * Since: 2.0
- */
-void webkit_set_security_policy_for_uri_scheme(const char *scheme, WebKitSecurityPolicy policy)
-{
- g_return_if_fail(scheme);
-
- if (!policy)
- return;
-
- String urlScheme = String::fromUTF8(scheme);
-
- if (policy & WEBKIT_SECURITY_POLICY_LOCAL)
- SchemeRegistry::registerURLSchemeAsLocal(urlScheme);
- if (policy & WEBKIT_SECURITY_POLICY_NO_ACCESS_TO_OTHER_SCHEME)
- SchemeRegistry::registerURLSchemeAsNoAccess(urlScheme);
- if (policy & WEBKIT_SECURITY_POLICY_DISPLAY_ISOLATED)
- SchemeRegistry::registerURLSchemeAsDisplayIsolated(urlScheme);
- if (policy & WEBKIT_SECURITY_POLICY_SECURE)
- SchemeRegistry::registerURLSchemeAsSecure(urlScheme);
- if (policy & WEBKIT_SECURITY_POLICY_CORS_ENABLED)
- SchemeRegistry::registerURLSchemeAsCORSEnabled(urlScheme);
- if (policy & WEBKIT_SECURITY_POLICY_EMPTY_DOCUMENT)
- SchemeRegistry::registerURLSchemeAsEmptyDocument(urlScheme);
-}
-
-/**
- * webkit_get_security_policy_for_uri_scheme:
- * @scheme: a URI scheme
- *
- * Get the security policy for the given URI scheme.
- *
- * Returns: a #WebKitSecurityPolicy
- *
- * Since: 2.0
- */
-WebKitSecurityPolicy webkit_get_security_policy_for_uri_scheme(const char *scheme)
-{
- g_return_val_if_fail(scheme, static_cast<WebKitSecurityPolicy>(0));
-
- guint policy = 0;
- String urlScheme = String::fromUTF8(scheme);
-
- if (SchemeRegistry::shouldTreatURLSchemeAsLocal(urlScheme))
- policy |= WEBKIT_SECURITY_POLICY_LOCAL;
- if (SchemeRegistry::shouldTreatURLSchemeAsNoAccess(urlScheme))
- policy |= WEBKIT_SECURITY_POLICY_NO_ACCESS_TO_OTHER_SCHEME;
- if (SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated(urlScheme))
- policy |= WEBKIT_SECURITY_POLICY_DISPLAY_ISOLATED;
- if (SchemeRegistry::shouldTreatURLSchemeAsSecure(urlScheme))
- policy |= WEBKIT_SECURITY_POLICY_SECURE;
- if (SchemeRegistry::shouldTreatURLSchemeAsCORSEnabled(urlScheme))
- policy |= WEBKIT_SECURITY_POLICY_CORS_ENABLED;
- if (SchemeRegistry::shouldLoadURLSchemeAsEmptyDocument(urlScheme))
- policy |= WEBKIT_SECURITY_POLICY_EMPTY_DOCUMENT;
-
- return static_cast<WebKitSecurityPolicy>(policy);
-}
-
-void webkitInit()
-{
- static bool isInitialized = false;
- if (isInitialized)
- return;
- isInitialized = true;
-
- bindtextdomain(GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR);
- bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
-
- JSC::initializeThreading();
- WTF::initializeMainThread();
-
-#if !LOG_DISABLED
- WebCore::initializeLoggingChannelsIfNecessary();
-#endif // !LOG_DISABLED
- PlatformStrategiesGtk::initialize();
-
- // We make sure the text codecs have been initialized, because
- // that may only be done by the main thread.
- atomicCanonicalTextEncodingName("UTF-8");
-
- GOwnPtr<gchar> databaseDirectory(g_build_filename(g_get_user_data_dir(), "webkit", "databases", NULL));
- webkit_set_web_database_directory_path(databaseDirectory.get());
-
- GOwnPtr<gchar> cacheDirectory(g_build_filename(g_get_user_cache_dir(), "webkitgtk", "applications", NULL));
- WebCore::cacheStorage().setCacheDirectory(cacheDirectory.get());
-
- PageGroup::setShouldTrackVisitedLinks(true);
-
- GOwnPtr<gchar> iconDatabasePath(g_build_filename(g_get_user_data_dir(), "webkit", "icondatabase", NULL));
- webkit_icon_database_set_path(webkit_get_icon_database(), iconDatabasePath.get());
-
- WebCore::ResourceHandle::setIgnoreSSLErrors(true);
-
- atexit(webkitExit);
-}
-
-const char* webkitPageGroupName()
-{
- return "org.webkit.gtk.WebKitGTK";
-}
diff --git a/Source/WebKit/gtk/webkit/webkitglobals.h b/Source/WebKit/gtk/webkit/webkitglobals.h
deleted file mode 100644
index f002d6db8..000000000
--- a/Source/WebKit/gtk/webkit/webkitglobals.h
+++ /dev/null
@@ -1,212 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitglobals_h
-#define webkitglobals_h
-
-#include "webkitdefines.h"
-#include <glib.h>
-#include <gtk/gtk.h>
-#include <libsoup/soup.h>
-
-G_BEGIN_DECLS
-
-/**
- * WebKitCacheModel:
- * @WEBKIT_CACHE_MODEL_DEFAULT: The default cache model. This is
- * WEBKIT_CACHE_MODEL_WEB_BROWSER.
- * @WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER: Disable the cache completely, which
- * substantially reduces memory usage. Useful for applications that only
- * access a single local file, with no navigation to other pages. No remote
- * resources will be cached.
- * @WEBKIT_CACHE_MODEL_DOCUMENT_BROWSER: A cache model optimized for viewing
- * a series of local files -- for example, a documentation viewer or a website
- * designer. WebKit will cache a moderate number of resources.
- * @WEBKIT_CACHE_MODEL_WEB_BROWSER: Improve document load speed substantially
- * by caching a very large number of resources and previously viewed content.
- *
- * Enum values used for determining the webview cache model.
- *
- **/
-typedef enum {
- WEBKIT_CACHE_MODEL_DEFAULT,
- WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER,
- WEBKIT_CACHE_MODEL_WEB_BROWSER,
- WEBKIT_CACHE_MODEL_DOCUMENT_BROWSER,
-} WebKitCacheModel;
-
-/**
- * WebKitContextMenuAction:
- * @WEBKIT_CONTEXT_MENU_ACTION_NO_ACTION: No action, used by separator menu items.
- * @WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK: Open current link.
- * @WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK_IN_NEW_WINDOW: Open current link in a new window.
- * @WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_LINK_TO_DISK: Download link destination.
- * @WEBKIT_CONTEXT_MENU_ACTION_COPY_LINK_TO_CLIPBOARD: Copy link location to the clipboard.
- * @WEBKIT_CONTEXT_MENU_ACTION_OPEN_IMAGE_IN_NEW_WINDOW: Open current image in a new window.
- * @WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_IMAGE_TO_DISK: Download current image.
- * @WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_TO_CLIPBOARD: Copy current image to the clipboard.
- * @WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_URL_TO_CLIPBOARD: Copy curent image location to the clipboard.
- * @WEBKIT_CONTEXT_MENU_ACTION_OPEN_FRAME_IN_NEW_WINDOW: Open current frame in a new window.
- * @WEBKIT_CONTEXT_MENU_ACTION_GO_BACK: Load the previous history item.
- * @WEBKIT_CONTEXT_MENU_ACTION_GO_FORWARD: Load the next history item.
- * @WEBKIT_CONTEXT_MENU_ACTION_STOP: Stop any ongoing loading operation.
- * @WEBKIT_CONTEXT_MENU_ACTION_RELOAD: Reload the conents of current view.
- * @WEBKIT_CONTEXT_MENU_ACTION_COPY: Copy current selection the clipboard.
- * @WEBKIT_CONTEXT_MENU_ACTION_CUT: Cut current selection to the clipboard.
- * @WEBKIT_CONTEXT_MENU_ACTION_PASTE: Paste clipboard contents.
- * @WEBKIT_CONTEXT_MENU_ACTION_DELETE: Delete current selection.
- * @WEBKIT_CONTEXT_MENU_ACTION_SELECT_ALL: Select all text.
- * @WEBKIT_CONTEXT_MENU_ACTION_INPUT_METHODS: Input methods menu.
- * @WEBKIT_CONTEXT_MENU_ACTION_UNICODE: Unicode menu.
- * @WEBKIT_CONTEXT_MENU_ACTION_SPELLING_GUESS: Guess spelling.
- * @WEBKIT_CONTEXT_MENU_ACTION_NO_GUESSES_FOUND: No guesses found.
- * @WEBKIT_CONTEXT_MENU_ACTION_IGNORE_SPELLING: Ignore spelling.
- * @WEBKIT_CONTEXT_MENU_ACTION_LEARN_SPELLING: Learn spelling.
- * @WEBKIT_CONTEXT_MENU_ACTION_IGNORE_GRAMMAR: Ignore grammar.
- * @WEBKIT_CONTEXT_MENU_ACTION_FONT_MENU: Font menu.
- * @WEBKIT_CONTEXT_MENU_ACTION_BOLD: Bold.
- * @WEBKIT_CONTEXT_MENU_ACTION_ITALIC: Italic.
- * @WEBKIT_CONTEXT_MENU_ACTION_UNDERLINE: Underline.
- * @WEBKIT_CONTEXT_MENU_ACTION_OUTLINE: Outline.
- * @WEBKIT_CONTEXT_MENU_ACTION_INSPECT_ELEMENT: Open current element in the inspector.
- * @WEBKIT_CONTEXT_MENU_ACTION_OPEN_MEDIA_IN_NEW_WINDOW: Open current media element in a new window.
- * @WEBKIT_CONTEXT_MENU_ACTION_COPY_MEDIA_LINK_TO_CLIPBOARD: Copy media link location in to the clipboard.
- * @WEBKIT_CONTEXT_MENU_ACTION_TOGGLE_MEDIA_CONTROLS: Enable or disable media controls.
- * @WEBKIT_CONTEXT_MENU_ACTION_TOGGLE_MEDIA_LOOP: Enable or disable media loop.
- * @WEBKIT_CONTEXT_MENU_ACTION_ENTER_VIDEO_FULLSCREEN: Show current video element in fullscreen mode.
- * @WEBKIT_CONTEXT_MENU_ACTION_MEDIA_PLAY_PAUSE: Play or pause current media element.
- * @WEBKIT_CONTEXT_MENU_ACTION_MEDIA_MUTE: Mute current media element.
- *
- * Enum values used to denote actions of items in the default context menu.
- *
- * Since: 1.10
- */
-typedef enum {
- WEBKIT_CONTEXT_MENU_ACTION_NO_ACTION = 0,
- WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK,
- WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK_IN_NEW_WINDOW,
- WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_LINK_TO_DISK,
- WEBKIT_CONTEXT_MENU_ACTION_COPY_LINK_TO_CLIPBOARD,
- WEBKIT_CONTEXT_MENU_ACTION_OPEN_IMAGE_IN_NEW_WINDOW,
- WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_IMAGE_TO_DISK,
- WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_TO_CLIPBOARD,
- WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_URL_TO_CLIPBOARD,
- WEBKIT_CONTEXT_MENU_ACTION_OPEN_FRAME_IN_NEW_WINDOW,
- WEBKIT_CONTEXT_MENU_ACTION_GO_BACK,
- WEBKIT_CONTEXT_MENU_ACTION_GO_FORWARD,
- WEBKIT_CONTEXT_MENU_ACTION_STOP,
- WEBKIT_CONTEXT_MENU_ACTION_RELOAD,
- WEBKIT_CONTEXT_MENU_ACTION_COPY,
- WEBKIT_CONTEXT_MENU_ACTION_CUT,
- WEBKIT_CONTEXT_MENU_ACTION_PASTE,
- WEBKIT_CONTEXT_MENU_ACTION_DELETE,
- WEBKIT_CONTEXT_MENU_ACTION_SELECT_ALL,
- WEBKIT_CONTEXT_MENU_ACTION_INPUT_METHODS,
- WEBKIT_CONTEXT_MENU_ACTION_UNICODE,
- WEBKIT_CONTEXT_MENU_ACTION_SPELLING_GUESS,
- WEBKIT_CONTEXT_MENU_ACTION_NO_GUESSES_FOUND,
- WEBKIT_CONTEXT_MENU_ACTION_IGNORE_SPELLING,
- WEBKIT_CONTEXT_MENU_ACTION_LEARN_SPELLING,
- WEBKIT_CONTEXT_MENU_ACTION_IGNORE_GRAMMAR,
- WEBKIT_CONTEXT_MENU_ACTION_FONT_MENU,
- WEBKIT_CONTEXT_MENU_ACTION_BOLD,
- WEBKIT_CONTEXT_MENU_ACTION_ITALIC,
- WEBKIT_CONTEXT_MENU_ACTION_UNDERLINE,
- WEBKIT_CONTEXT_MENU_ACTION_OUTLINE,
- WEBKIT_CONTEXT_MENU_ACTION_INSPECT_ELEMENT,
- WEBKIT_CONTEXT_MENU_ACTION_OPEN_MEDIA_IN_NEW_WINDOW,
- WEBKIT_CONTEXT_MENU_ACTION_COPY_MEDIA_LINK_TO_CLIPBOARD,
- WEBKIT_CONTEXT_MENU_ACTION_TOGGLE_MEDIA_CONTROLS,
- WEBKIT_CONTEXT_MENU_ACTION_TOGGLE_MEDIA_LOOP,
- WEBKIT_CONTEXT_MENU_ACTION_ENTER_VIDEO_FULLSCREEN,
- WEBKIT_CONTEXT_MENU_ACTION_MEDIA_PLAY_PAUSE,
- WEBKIT_CONTEXT_MENU_ACTION_MEDIA_MUTE
-} WebKitContextMenuAction;
-
-/**
- * WebKitSecurityPolicy:
- * @WEBKIT_SECURITY_POLICY_LOCAL: Local URI scheme, other non-local pages
- * cannot link to or access URIs of this scheme.
- * @WEBKIT_SECURITY_POLICY_NO_ACCESS_TO_OTHER_SCHEME: Pages loaded with this URI scheme
- * cannot access pages loaded with any other URI scheme.
- * @WEBKIT_SECURITY_POLICY_DISPLAY_ISOLATED: Pages cannot display these URIs
- * unless they are from the same scheme.
- * @WEBKIT_SECURITY_POLICY_SECURE: Secure URI scheme, doesn't generate mixed
- * content warnings when included by an HTTPS page.
- * @WEBKIT_SECURITY_POLICY_CORS_ENABLED: URI scheme that can be sent
- * CORS (Cross-origin resource sharing) requests. See W3C CORS specification
- * http://www.w3.org/TR/cors/.
- * @WEBKIT_SECURITY_POLICY_EMPTY_DOCUMENT: Strictly empty documents allowed
- * to commit synchronously.
- *
- * Flags used to represent the security policy of a URI scheme.
- *
- * Since: 2.0
- */
-typedef enum {
- WEBKIT_SECURITY_POLICY_LOCAL = 1 << 1,
- WEBKIT_SECURITY_POLICY_NO_ACCESS_TO_OTHER_SCHEME = 1 << 2,
- WEBKIT_SECURITY_POLICY_DISPLAY_ISOLATED = 1 << 3,
- WEBKIT_SECURITY_POLICY_SECURE = 1 << 4,
- WEBKIT_SECURITY_POLICY_CORS_ENABLED = 1 << 5,
- WEBKIT_SECURITY_POLICY_EMPTY_DOCUMENT = 1 << 6
-} WebKitSecurityPolicy;
-
-WEBKIT_API SoupSession*
-webkit_get_default_session (void);
-
-WEBKIT_API WebKitWebPluginDatabase *
-webkit_get_web_plugin_database (void);
-
-#if !defined(WEBKIT_DISABLE_DEPRECATED)
-WEBKIT_API WebKitIconDatabase *
-webkit_get_icon_database (void);
-#endif
-
-WEBKIT_API WebKitFaviconDatabase *
-webkit_get_favicon_database (void);
-
-WEBKIT_API void
-webkit_set_cache_model (WebKitCacheModel cache_model);
-
-WEBKIT_API WebKitCacheModel
-webkit_get_cache_model (void);
-
-WEBKIT_API GObject*
-webkit_get_text_checker (void);
-
-WEBKIT_API void
-webkit_set_text_checker (GObject* checker);
-
-WEBKIT_API WebKitContextMenuAction
-webkit_context_menu_item_get_action (GtkMenuItem* item);
-
-WEBKIT_API void
-webkit_set_security_policy_for_uri_scheme (const gchar *scheme,
- WebKitSecurityPolicy policy);
-
-WEBKIT_API WebKitSecurityPolicy
-webkit_get_security_policy_for_uri_scheme (const gchar *scheme);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitglobalsprivate.h b/Source/WebKit/gtk/webkit/webkitglobalsprivate.h
deleted file mode 100644
index 440ba32a0..000000000
--- a/Source/WebKit/gtk/webkit/webkitglobalsprivate.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitglobalsprivate_h
-#define webkitglobalsprivate_h
-
-#include <glib.h>
-
-#define WEBKIT_PARAM_READABLE ((GParamFlags)(G_PARAM_READABLE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB))
-#define WEBKIT_PARAM_READWRITE ((GParamFlags)(G_PARAM_READWRITE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB))
-
-#define WEBKIT_WARN_FEATURE_NOT_PRESENT(Feature) g_warning("WebKitGTK+ was not compiled with support for " Feature);
-
-extern "C" {
-
-void webkitInit();
-const char* webkitPageGroupName();
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkithittestresult.cpp b/Source/WebKit/gtk/webkit/webkithittestresult.cpp
deleted file mode 100644
index 794379e16..000000000
--- a/Source/WebKit/gtk/webkit/webkithittestresult.cpp
+++ /dev/null
@@ -1,338 +0,0 @@
-/*
- * Copyright (C) 2009 Collabora Ltd.
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkithittestresult.h"
-
-#include "Frame.h"
-#include "FrameView.h"
-#include "HitTestResult.h"
-#include "KURL.h"
-#include "WebKitDOMNodePrivate.h"
-#include "webkitenumtypes.h"
-#include "webkitglobals.h"
-#include "webkitglobalsprivate.h"
-#include <glib/gi18n-lib.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/gobject/GRefPtr.h>
-#include <wtf/text/CString.h>
-
-/**
- * SECTION:webkithittestresult
- * @short_description: The target of a mouse event
- *
- * This class holds context information about the coordinates
- * specified by a GDK event.
- */
-
-G_DEFINE_TYPE(WebKitHitTestResult, webkit_hit_test_result, G_TYPE_OBJECT)
-
-struct _WebKitHitTestResultPrivate {
- guint context;
- char* linkURI;
- char* imageURI;
- char* mediaURI;
- GRefPtr<WebKitDOMNode> innerNode;
- WebCore::IntPoint position;
-};
-
-enum {
- PROP_0,
-
- PROP_CONTEXT,
- PROP_LINK_URI,
- PROP_IMAGE_URI,
- PROP_MEDIA_URI,
- PROP_INNER_NODE,
- PROP_X,
- PROP_Y
-};
-
-static void webkit_hit_test_result_finalize(GObject* object)
-{
- WebKitHitTestResult* web_hit_test_result = WEBKIT_HIT_TEST_RESULT(object);
- WebKitHitTestResultPrivate* priv = web_hit_test_result->priv;
-
- g_free(priv->linkURI);
- g_free(priv->imageURI);
- g_free(priv->mediaURI);
-
- G_OBJECT_CLASS(webkit_hit_test_result_parent_class)->finalize(object);
-}
-
-static void webkit_hit_test_result_dispose(GObject* object)
-{
- WEBKIT_HIT_TEST_RESULT(object)->priv->~WebKitHitTestResultPrivate();
-
- G_OBJECT_CLASS(webkit_hit_test_result_parent_class)->dispose(object);
-}
-
-static void webkit_hit_test_result_get_property(GObject* object, guint propertyID, GValue* value, GParamSpec* pspec)
-{
- WebKitHitTestResult* web_hit_test_result = WEBKIT_HIT_TEST_RESULT(object);
- WebKitHitTestResultPrivate* priv = web_hit_test_result->priv;
-
- switch(propertyID) {
- case PROP_CONTEXT:
- g_value_set_flags(value, priv->context);
- break;
- case PROP_LINK_URI:
- g_value_set_string(value, priv->linkURI);
- break;
- case PROP_IMAGE_URI:
- g_value_set_string(value, priv->imageURI);
- break;
- case PROP_MEDIA_URI:
- g_value_set_string(value, priv->mediaURI);
- break;
- case PROP_INNER_NODE:
- g_value_set_object(value, priv->innerNode.get());
- break;
- case PROP_X:
- g_value_set_int(value, priv->position.x());
- break;
- case PROP_Y:
- g_value_set_int(value, priv->position.y());
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, pspec);
- }
-}
-
-static void webkit_hit_test_result_set_property(GObject* object, guint propertyID, const GValue* value, GParamSpec* pspec)
-{
- WebKitHitTestResult* web_hit_test_result = WEBKIT_HIT_TEST_RESULT(object);
- WebKitHitTestResultPrivate* priv = web_hit_test_result->priv;
-
- switch(propertyID) {
- case PROP_CONTEXT:
- priv->context = g_value_get_flags(value);
- break;
- case PROP_LINK_URI:
- g_free (priv->linkURI);
- priv->linkURI = g_value_dup_string(value);
- break;
- case PROP_IMAGE_URI:
- g_free (priv->imageURI);
- priv->imageURI = g_value_dup_string(value);
- break;
- case PROP_MEDIA_URI:
- g_free (priv->mediaURI);
- priv->mediaURI = g_value_dup_string(value);
- break;
- case PROP_INNER_NODE:
- priv->innerNode = static_cast<WebKitDOMNode*>(g_value_get_object(value));
- break;
- case PROP_X:
- priv->position.setX(g_value_get_int(value));
- break;
- case PROP_Y:
- priv->position.setY(g_value_get_int(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, pspec);
- }
-}
-
-static void webkit_hit_test_result_class_init(WebKitHitTestResultClass* webHitTestResultClass)
-{
- GObjectClass* objectClass = G_OBJECT_CLASS(webHitTestResultClass);
-
- objectClass->finalize = webkit_hit_test_result_finalize;
- objectClass->dispose = webkit_hit_test_result_dispose;
- objectClass->get_property = webkit_hit_test_result_get_property;
- objectClass->set_property = webkit_hit_test_result_set_property;
-
- webkitInit();
-
- /**
- * WebKitHitTestResult:context:
- *
- * Flags indicating the kind of target that received the event.
- *
- * Since: 1.1.15
- */
- g_object_class_install_property(objectClass, PROP_CONTEXT,
- g_param_spec_flags("context",
- _("Context"),
- _("Flags indicating the kind of target that received the event."),
- WEBKIT_TYPE_HIT_TEST_RESULT_CONTEXT,
- WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT,
- static_cast<GParamFlags>((WEBKIT_PARAM_READWRITE|G_PARAM_CONSTRUCT_ONLY))));
-
- /**
- * WebKitHitTestResult:link-uri:
- *
- * The URI to which the target that received the event points, if any.
- *
- * Since: 1.1.15
- */
- g_object_class_install_property(objectClass, PROP_LINK_URI,
- g_param_spec_string("link-uri",
- _("Link URI"),
- _("The URI to which the target that received the event points, if any."),
- NULL,
- static_cast<GParamFlags>(WEBKIT_PARAM_READWRITE|G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitHitTestResult:image-uri:
- *
- * The URI of the image that is part of the target that received the event, if any.
- *
- * Since: 1.1.15
- */
- g_object_class_install_property(objectClass, PROP_IMAGE_URI,
- g_param_spec_string("image-uri",
- _("Image URI"),
- _("The URI of the image that is part of the target that received the event, if any."),
- NULL,
- static_cast<GParamFlags>(WEBKIT_PARAM_READWRITE|G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitHitTestResult:media-uri:
- *
- * The URI of the media that is part of the target that received the event, if any.
- *
- * Since: 1.1.15
- */
- g_object_class_install_property(objectClass, PROP_MEDIA_URI,
- g_param_spec_string("media-uri",
- _("Media URI"),
- _("The URI of the media that is part of the target that received the event, if any."),
- NULL,
- static_cast<GParamFlags>(WEBKIT_PARAM_READWRITE|G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitHitTestResult:inner-node:
- *
- * The DOM node at the coordinates where the hit test
- * happened. Keep in mind that the node might not be
- * representative of the information given in the context
- * property, since WebKit uses a series of heuristics to figure
- * out that information. One common example is inner-node having
- * the text node inside the anchor (&lt;a&gt;) tag; WebKit knows the
- * whole context and will put WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK
- * in the 'context' property, but the user might be confused by
- * the lack of any link tag in 'inner-node'.
- *
- * Since: 1.3.2
- */
- g_object_class_install_property(objectClass, PROP_INNER_NODE,
- g_param_spec_object("inner-node",
- _("Inner node"),
- _("The inner DOM node associated with the hit test result."),
- WEBKIT_TYPE_DOM_NODE,
- static_cast<GParamFlags>(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitHitTestResult:x:
- *
- * The x coordinate of the event relative to the view's window.
- *
- * Since: 1.10
- */
- g_object_class_install_property(objectClass, PROP_X,
- g_param_spec_int("x",
- _("X coordinate"),
- _("The x coordinate of the event relative to the view's window."),
- G_MININT, G_MAXINT, 0,
- static_cast<GParamFlags>(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitHitTestResult:y:
- *
- * The x coordinate of the event relative to the view's window.
- *
- * Since: 1.10
- */
- g_object_class_install_property(objectClass, PROP_Y,
- g_param_spec_int("y",
- _("Y coordinate"),
- _("The y coordinate of the event relative to the view's window."),
- G_MININT, G_MAXINT, 0,
- static_cast<GParamFlags>(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
- g_type_class_add_private(webHitTestResultClass, sizeof(WebKitHitTestResultPrivate));
-}
-
-static void webkit_hit_test_result_init(WebKitHitTestResult* web_hit_test_result)
-{
- web_hit_test_result->priv = G_TYPE_INSTANCE_GET_PRIVATE(web_hit_test_result, WEBKIT_TYPE_HIT_TEST_RESULT, WebKitHitTestResultPrivate);
- new (web_hit_test_result->priv) WebKitHitTestResultPrivate();
-}
-
-namespace WebKit {
-
-WebKitHitTestResult* kit(const WebCore::HitTestResult& result)
-{
- guint context = WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT;
- GOwnPtr<char> linkURI(0);
- GOwnPtr<char> imageURI(0);
- GOwnPtr<char> mediaURI(0);
- WebKitDOMNode* node = 0;
- WebCore::Frame* innerNodeFrame;
- WebCore::IntPoint point;
-
- if (!result.absoluteLinkURL().isEmpty()) {
- context |= WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK;
- linkURI.set(g_strdup(result.absoluteLinkURL().string().utf8().data()));
- }
-
- if (!result.absoluteImageURL().isEmpty()) {
- context |= WEBKIT_HIT_TEST_RESULT_CONTEXT_IMAGE;
- imageURI.set(g_strdup(result.absoluteImageURL().string().utf8().data()));
- }
-
- if (!result.absoluteMediaURL().isEmpty()) {
- context |= WEBKIT_HIT_TEST_RESULT_CONTEXT_MEDIA;
- mediaURI.set(g_strdup(result.absoluteMediaURL().string().utf8().data()));
- }
-
- if (result.isSelected())
- context |= WEBKIT_HIT_TEST_RESULT_CONTEXT_SELECTION;
-
- if (result.isContentEditable())
- context |= WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE;
-
- if (result.innerNonSharedNode())
- node = kit(result.innerNonSharedNode());
-
- innerNodeFrame = result.innerNodeFrame();
- if (innerNodeFrame && innerNodeFrame->view()) {
- // Convert document coords to widget coords.
- point = innerNodeFrame->view()->contentsToWindow(result.roundedPointInInnerNodeFrame());
- } else {
- // FIXME: Main frame coords is not the same as window coords,
- // but we do not have pointer to mainframe view here.
- point = result.roundedPointInMainFrame();
- }
-
- return WEBKIT_HIT_TEST_RESULT(g_object_new(WEBKIT_TYPE_HIT_TEST_RESULT,
- "link-uri", linkURI.get(),
- "image-uri", imageURI.get(),
- "media-uri", mediaURI.get(),
- "context", context,
- "inner-node", node,
- "x", point.x(),
- "y", point.y(),
- NULL));
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkithittestresult.h b/Source/WebKit/gtk/webkit/webkithittestresult.h
deleted file mode 100644
index 2a6a64e48..000000000
--- a/Source/WebKit/gtk/webkit/webkithittestresult.h
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright (C) 2009 Collabora Ltd.
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkithittestresult_h
-#define webkithittestresult_h
-
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_HIT_TEST_RESULT (webkit_hit_test_result_get_type())
-#define WEBKIT_HIT_TEST_RESULT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_HIT_TEST_RESULT, WebKitHitTestResult))
-#define WEBKIT_HIT_TEST_RESULT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_HIT_TEST_RESULT, WebKitHitTestResultClass))
-#define WEBKIT_IS_HIT_TEST_RESULT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_HIT_TEST_RESULT))
-#define WEBKIT_IS_HIT_TEST_RESULT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_HIT_TEST_RESULT))
-#define WEBKIT_HIT_TEST_RESULT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_HIT_TEST_RESULT, WebKitHitTestResultClass))
-
-typedef struct _WebKitHitTestResultPrivate WebKitHitTestResultPrivate;
-
-struct _WebKitHitTestResult {
- GObject parent_instance;
-
- /*< private >*/
- WebKitHitTestResultPrivate *priv;
-};
-
-struct _WebKitHitTestResultClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-/**
- * WebKitHitTestResultContext:
- * @WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT: anywhere in the document.
- * @WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK: a hyperlink element.
- * @WEBKIT_HIT_TEST_RESULT_CONTEXT_IMAGE: an image element.
- * @WEBKIT_HIT_TEST_RESULT_CONTEXT_MEDIA: a video or audio element.
- * @WEBKIT_HIT_TEST_RESULT_CONTEXT_SELECTION: the area is selected by
- * the user.
- * @WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE: the area is
- * editable by the user.
- */
-typedef enum
-{
- WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT = 1 << 1,
- WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK = 1 << 2,
- WEBKIT_HIT_TEST_RESULT_CONTEXT_IMAGE = 1 << 3,
- WEBKIT_HIT_TEST_RESULT_CONTEXT_MEDIA = 1 << 4,
- WEBKIT_HIT_TEST_RESULT_CONTEXT_SELECTION = 1 << 5,
- WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE = 1 << 6,
-} WebKitHitTestResultContext;
-
-WEBKIT_API GType
-webkit_hit_test_result_get_type (void);
-
-G_END_DECLS
-
-#endif
-
diff --git a/Source/WebKit/gtk/webkit/webkithittestresultprivate.h b/Source/WebKit/gtk/webkit/webkithittestresultprivate.h
deleted file mode 100644
index 237ac27c6..000000000
--- a/Source/WebKit/gtk/webkit/webkithittestresultprivate.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkithittestresultprivate_h
-#define webkithittestresultprivate_h
-
-#include "HitTestResult.h"
-#include "webkithittestresult.h"
-
-namespace WebKit {
-
-WebKitHitTestResult* kit(const WebCore::HitTestResult&);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkiticondatabase.cpp b/Source/WebKit/gtk/webkit/webkiticondatabase.cpp
deleted file mode 100644
index 70b5114e5..000000000
--- a/Source/WebKit/gtk/webkit/webkiticondatabase.cpp
+++ /dev/null
@@ -1,331 +0,0 @@
-/*
- * Copyright (C) 2011 Christian Dywan <christian@lanedo.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkiticondatabase.h"
-
-#include "FileSystem.h"
-#include "IconDatabase.h"
-#include "Image.h"
-#include "IntSize.h"
-#include "webkitglobalsprivate.h"
-#include "webkitmarshal.h"
-#include "webkitsecurityoriginprivate.h"
-#include "webkitwebframe.h"
-#include <glib/gi18n-lib.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/text/CString.h>
-
-/**
- * SECTION:webkiticondatabase
- * @short_description: A WebKit web application database
- *
- * #WebKitIconDatabase provides access to website icons, as shown
- * in tab labels, window captions or bookmarks. All views share
- * the same icon database.
- *
- * The icon database is enabled by default and stored in
- * ~/.local/share/webkit/icondatabase, depending on XDG_DATA_HOME.
- *
- * WebKit will automatically look for available icons in link elements
- * on opened pages as well as an existing favicon.ico and load the
- * images found into the memory cache if possible. The signal "icon-loaded"
- * will be emitted when any icon is found and loaded.
- * Old Icons are automatically cleaned up after 4 days.
- *
- * webkit_icon_database_set_path() can be used to change the location
- * of the database and also to disable it by passing %NULL.
- *
- * If WebKitWebSettings::enable-private-browsing is %TRUE new icons
- * won't be added to the database on disk and no existing icons will
- * be deleted from it.
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use WebKitFaviconDatabase instead.
- */
-
-using namespace WebKit;
-
-enum {
- PROP_0,
-
- PROP_PATH,
-};
-
-enum {
- ICON_LOADED,
-
- LAST_SIGNAL
-};
-
-static guint webkit_icon_database_signals[LAST_SIGNAL] = { 0, };
-
-G_DEFINE_TYPE(WebKitIconDatabase, webkit_icon_database, G_TYPE_OBJECT);
-
-struct _WebKitIconDatabasePrivate {
- GOwnPtr<gchar> path;
-};
-
-static void webkit_icon_database_finalize(GObject* object)
-{
- // Call C++ destructors, the reverse of 'placement new syntax'
- WEBKIT_ICON_DATABASE(object)->priv->~WebKitIconDatabasePrivate();
-
- G_OBJECT_CLASS(webkit_icon_database_parent_class)->finalize(object);
-}
-
-static void webkit_icon_database_dispose(GObject* object)
-{
- G_OBJECT_CLASS(webkit_icon_database_parent_class)->dispose(object);
-}
-
-static void webkit_icon_database_set_property(GObject* object, guint propId, const GValue* value, GParamSpec* pspec)
-{
- WebKitIconDatabase* database = WEBKIT_ICON_DATABASE(object);
-
- switch (propId) {
- case PROP_PATH:
- webkit_icon_database_set_path(database, g_value_get_string(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, pspec);
- break;
- }
-}
-
-static void webkit_icon_database_get_property(GObject* object, guint propId, GValue* value, GParamSpec* pspec)
-{
- WebKitIconDatabase* database = WEBKIT_ICON_DATABASE(object);
-
- switch (propId) {
- case PROP_PATH:
- g_value_set_string(value, webkit_icon_database_get_path(database));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, pspec);
- break;
- }
-}
-
-static void webkit_icon_database_class_init(WebKitIconDatabaseClass* klass)
-{
- webkitInit();
-
- GObjectClass* gobjectClass = G_OBJECT_CLASS(klass);
- gobjectClass->dispose = webkit_icon_database_dispose;
- gobjectClass->finalize = webkit_icon_database_finalize;
- gobjectClass->set_property = webkit_icon_database_set_property;
- gobjectClass->get_property = webkit_icon_database_get_property;
-
- /**
- * WebKitIconDatabase:path:
- *
- * The absolute path of the icon database folder.
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use WebKitFaviconDatabase::path instead.
- */
- g_object_class_install_property(gobjectClass, PROP_PATH,
- g_param_spec_string("path",
- _("Path"),
- _("The absolute path of the icon database folder"),
- NULL,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitIconDatabase::icon-loaded:
- * @database: the object on which the signal is emitted
- * @frame: the frame containing the icon
- * @frame_uri: the URI of the frame containing the icon
- *
- * This signal is emitted when a favicon is available for a page,
- * or a child frame.
- * See WebKitWebView::icon-loaded if you only need the favicon for
- * the main frame of a particular #WebKitWebView.
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use WebKitFaviconDatabase::icon-loaded instead.
- */
- webkit_icon_database_signals[ICON_LOADED] = g_signal_new("icon-loaded",
- G_TYPE_FROM_CLASS(klass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- webkit_marshal_VOID__OBJECT_STRING,
- G_TYPE_NONE, 2,
- WEBKIT_TYPE_WEB_FRAME,
- G_TYPE_STRING);
-
- g_type_class_add_private(klass, sizeof(WebKitIconDatabasePrivate));
-}
-
-static void webkit_icon_database_init(WebKitIconDatabase* database)
-{
- database->priv = G_TYPE_INSTANCE_GET_PRIVATE(database, WEBKIT_TYPE_ICON_DATABASE, WebKitIconDatabasePrivate);
- // 'placement new syntax', see webkitwebview.cpp
- new (database->priv) WebKitIconDatabasePrivate();
-}
-
-/**
- * webkit_icon_database_get_path:
- * @database: a #WebKitIconDatabase
- *
- * Determines the absolute path to the database folder on disk.
- *
- * Returns: the absolute path of the database folder, or %NULL
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use webkit_favicon_database_get_path() instead.
- **/
-const gchar* webkit_icon_database_get_path(WebKitIconDatabase* database)
-{
- g_return_val_if_fail(WEBKIT_IS_ICON_DATABASE(database), 0);
-
- return database->priv->path.get();
-}
-
-static void closeIconDatabaseOnExit()
-{
- if (WebCore::iconDatabase().isEnabled()) {
- WebCore::iconDatabase().setEnabled(false);
- WebCore::iconDatabase().close();
- }
-}
-
-/**
- * webkit_icon_database_set_path:
- * @database: a #WebKitIconDatabase
- * @path: an absolute path to the icon database folder
- *
- * Specifies the absolute path to the database folder on disk.
- *
- * Passing %NULL or "" disables the icon database.
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use webkit_favicon_database_set_path() instead.
- **/
-void webkit_icon_database_set_path(WebKitIconDatabase* database, const gchar* path)
-{
- g_return_if_fail(WEBKIT_IS_ICON_DATABASE(database));
-
- if (database->priv->path.get())
- WebCore::iconDatabase().close();
-
- if (!(path && path[0])) {
- database->priv->path.set(0);
- WebCore::iconDatabase().setEnabled(false);
- return;
- }
-
- database->priv->path.set(g_strdup(path));
-
- WebCore::iconDatabase().setEnabled(true);
- WebCore::iconDatabase().open(WebCore::filenameToString(database->priv->path.get()), WebCore::IconDatabase::defaultDatabaseFilename());
-
- static bool initialized = false;
- if (!initialized) {
- atexit(closeIconDatabaseOnExit);
- initialized = true;
- }
-}
-
-/**
- * webkit_icon_database_get_icon_uri:
- * @database: a #WebKitIconDatabase
- * @page_uri: URI of the page containing the icon
- *
- * Obtains the URI for the favicon for the given page URI.
- * See also webkit_web_view_get_icon_uri().
- *
- * Returns: a newly allocated URI for the favicon, or %NULL
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use webkit_favicon_database_get_favicon_uri() instead.
- **/
-gchar* webkit_icon_database_get_icon_uri(WebKitIconDatabase* database, const gchar* pageURI)
-{
- g_return_val_if_fail(WEBKIT_IS_ICON_DATABASE(database), 0);
- g_return_val_if_fail(pageURI, 0);
-
- String pageURL = String::fromUTF8(pageURI);
- return g_strdup(WebCore::iconDatabase().synchronousIconURLForPageURL(pageURL).utf8().data());
-}
-
-/**
- * webkit_icon_database_get_icon_pixbuf:
- * @database: a #WebKitIconDatabase
- * @page_uri: URI of the page containing the icon
- *
- * Obtains a #GdkPixbuf of the favicon for the given page URI, or
- * a default icon if there is no icon for the given page. Use
- * webkit_icon_database_get_icon_uri() if you need to distinguish these cases.
- * Usually you want to connect to WebKitIconDatabase::icon-loaded and call this
- * method in the callback.
- *
- * The pixbuf will have the largest size provided by the server and should
- * be resized before it is displayed.
- * See also webkit_web_view_get_icon_pixbuf().
- *
- * Returns: (transfer full): a new reference to a #GdkPixbuf, or %NULL
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use webkit_favicon_database_try_get_favicon_pixbuf() instead.
- **/
-GdkPixbuf* webkit_icon_database_get_icon_pixbuf(WebKitIconDatabase* database, const gchar* pageURI)
-{
- g_return_val_if_fail(WEBKIT_IS_ICON_DATABASE(database), 0);
- g_return_val_if_fail(pageURI, 0);
-
- String pageURL = String::fromUTF8(pageURI);
- // The exact size we pass is irrelevant to the WebCore::iconDatabase code.
- // We must pass something greater than 0, 0 to get a pixbuf.
- WebCore::Image* icon = WebCore::iconDatabase().synchronousIconForPageURL(pageURL, WebCore::IntSize(16, 16));
- if (!icon)
- return 0;
- GdkPixbuf* pixbuf = icon->getGdkPixbuf();
- if (!pixbuf)
- return 0;
- return static_cast<GdkPixbuf*>(g_object_ref(pixbuf));
-}
-
-/**
- * webkit_icon_database_clear:
- * @database: a #WebKitIconDatabase
- *
- * Clears all icons from the database.
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use webkit_favicon_database_clear() instead.
- **/
-void webkit_icon_database_clear(WebKitIconDatabase* database)
-{
- g_return_if_fail(WEBKIT_IS_ICON_DATABASE(database));
-
- WebCore::iconDatabase().removeAllIcons();
-}
-
diff --git a/Source/WebKit/gtk/webkit/webkiticondatabase.h b/Source/WebKit/gtk/webkit/webkiticondatabase.h
deleted file mode 100644
index f8168d549..000000000
--- a/Source/WebKit/gtk/webkit/webkiticondatabase.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (C) 2011 Christian Dywan <christian@lanedo.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkiticondatabase_h
-#define webkiticondatabase_h
-
-#include <gdk-pixbuf/gdk-pixbuf.h>
-#include <glib-object.h>
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_ICON_DATABASE (webkit_icon_database_get_type())
-#define WEBKIT_ICON_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_ICON_DATABASE, WebKitIconDatabase))
-#define WEBKIT_ICON_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_ICON_DATABASE, WebKitIconDatabaseClass))
-#define WEBKIT_IS_ICON_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_ICON_DATABASE))
-#define WEBKIT_IS_ICON_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_ICON_DATABASE))
-#define WEBKIT_ICON_DATABASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_ICON_DATABASE, WebKitIconDatabaseClass))
-
-typedef struct _WebKitIconDatabasePrivate WebKitIconDatabasePrivate;
-
-struct _WebKitIconDatabase {
- GObject parent_instance;
-
- /*< private >*/
- WebKitIconDatabasePrivate* priv;
-};
-
-struct _WebKitIconDatabaseClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
- void (*_webkit_reserved4) (void);
-};
-
-WEBKIT_API GType
-webkit_icon_database_get_type (void);
-
-#if !defined(WEBKIT_DISABLE_DEPRECATED)
-WEBKIT_API const gchar*
-webkit_icon_database_get_path (WebKitIconDatabase* database);
-
-WEBKIT_API void
-webkit_icon_database_set_path (WebKitIconDatabase* database,
- const gchar* path);
-
-WEBKIT_API gchar*
-webkit_icon_database_get_icon_uri (WebKitIconDatabase* database,
- const gchar* page_uri);
-
-WEBKIT_API GdkPixbuf*
-webkit_icon_database_get_icon_pixbuf (WebKitIconDatabase* database,
- const gchar* page_uri);
-
-WEBKIT_API void
-webkit_icon_database_clear (WebKitIconDatabase* database);
-#endif
-
-G_END_DECLS
-
-#endif /* webkiticondatabase_h */
diff --git a/Source/WebKit/gtk/webkit/webkitnetworkrequest.cpp b/Source/WebKit/gtk/webkit/webkitnetworkrequest.cpp
deleted file mode 100644
index 4996dd981..000000000
--- a/Source/WebKit/gtk/webkit/webkitnetworkrequest.cpp
+++ /dev/null
@@ -1,273 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 Holger Hans Peter Freyther
- * Copyright (C) 2009 Gustavo Noronha Silva
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitnetworkrequest.h"
-
-#include "ResourceRequest.h"
-#include "webkitglobalsprivate.h"
-#include <glib/gi18n-lib.h>
-#include <wtf/gobject/GRefPtr.h>
-#include <wtf/text/CString.h>
-
-/**
- * SECTION:webkitnetworkrequest
- * @short_description: The target of a navigation request
- * @see_also: #WebKitWebView::navigation-policy-decision-requested
- *
- * This class represents the network related aspects of a navigation
- * request. It is used whenever WebKit wants to provide information
- * about a request that will be sent, or has been sent. Inside it you
- * can find the URI of the request, and, for valid URIs, a
- * #SoupMessage object, which provides access to further information
- * such as headers.
- *
- */
-
-G_DEFINE_TYPE(WebKitNetworkRequest, webkit_network_request, G_TYPE_OBJECT);
-
-struct _WebKitNetworkRequestPrivate {
- gchar* uri;
- SoupMessage* message;
-};
-
-enum {
- PROP_0,
-
- PROP_URI,
- PROP_MESSAGE,
-};
-
-static void webkit_network_request_dispose(GObject* object)
-{
- WebKitNetworkRequest* request = WEBKIT_NETWORK_REQUEST(object);
- WebKitNetworkRequestPrivate* priv = request->priv;
-
- if (priv->message) {
- g_object_unref(priv->message);
- priv->message = NULL;
- }
-
- G_OBJECT_CLASS(webkit_network_request_parent_class)->dispose(object);
-}
-
-static void webkit_network_request_finalize(GObject* object)
-{
- WebKitNetworkRequest* request = WEBKIT_NETWORK_REQUEST(object);
- WebKitNetworkRequestPrivate* priv = request->priv;
-
- g_free(priv->uri);
-
- G_OBJECT_CLASS(webkit_network_request_parent_class)->finalize(object);
-}
-
-static void webkit_network_request_get_property(GObject* object, guint propertyID, GValue* value, GParamSpec* pspec)
-{
- WebKitNetworkRequest* request = WEBKIT_NETWORK_REQUEST(object);
-
- switch(propertyID) {
- case PROP_URI:
- g_value_set_string(value, webkit_network_request_get_uri(request));
- break;
- case PROP_MESSAGE:
- g_value_set_object(value, webkit_network_request_get_message(request));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, pspec);
- }
-}
-
-static void webkit_network_request_set_property(GObject* object, guint propertyID, const GValue* value, GParamSpec* pspec)
-{
- WebKitNetworkRequest* request = WEBKIT_NETWORK_REQUEST(object);
- WebKitNetworkRequestPrivate* priv = request->priv;
-
- switch(propertyID) {
- case PROP_URI:
- webkit_network_request_set_uri(request, g_value_get_string(value));
- break;
- case PROP_MESSAGE:
- priv->message = SOUP_MESSAGE(g_value_dup_object(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, pspec);
- }
-}
-
-static void webkit_network_request_class_init(WebKitNetworkRequestClass* requestClass)
-{
- GObjectClass* objectClass = G_OBJECT_CLASS(requestClass);
-
- objectClass->dispose = webkit_network_request_dispose;
- objectClass->finalize = webkit_network_request_finalize;
- objectClass->get_property = webkit_network_request_get_property;
- objectClass->set_property = webkit_network_request_set_property;
-
- webkitInit();
-
- /**
- * WebKitNetworkRequest:uri:
- *
- * The URI to which the request will be made.
- *
- * Since: 1.1.10
- */
- g_object_class_install_property(objectClass, PROP_URI,
- g_param_spec_string("uri",
- _("URI"),
- _("The URI to which the request will be made."),
- NULL,
- (GParamFlags)(WEBKIT_PARAM_READWRITE)));
-
- /**
- * WebKitNetworkRequest:message:
- *
- * The #SoupMessage that backs the request.
- *
- * Since: 1.1.10
- */
- g_object_class_install_property(objectClass, PROP_MESSAGE,
- g_param_spec_object("message",
- _("Message"),
- _("The SoupMessage that backs the request."),
- SOUP_TYPE_MESSAGE,
- (GParamFlags)(WEBKIT_PARAM_READWRITE|G_PARAM_CONSTRUCT_ONLY)));
-
- g_type_class_add_private(requestClass, sizeof(WebKitNetworkRequestPrivate));
-}
-
-static void webkit_network_request_init(WebKitNetworkRequest* request)
-{
- WebKitNetworkRequestPrivate* priv = G_TYPE_INSTANCE_GET_PRIVATE(request, WEBKIT_TYPE_NETWORK_REQUEST, WebKitNetworkRequestPrivate);
- request->priv = priv;
-}
-
-/**
- * webkit_network_request_new:
- * @uri: an URI
- *
- * Creates a new #WebKitNetworkRequest initialized with an URI.
- *
- * Returns: a new #WebKitNetworkRequest, or %NULL if the URI is
- * invalid.
- */
-WebKitNetworkRequest* webkit_network_request_new(const gchar* uri)
-{
- g_return_val_if_fail(uri, NULL);
-
- return WEBKIT_NETWORK_REQUEST(g_object_new(WEBKIT_TYPE_NETWORK_REQUEST, "uri", uri, NULL));
-}
-
-/**
- * webkit_network_request_set_uri:
- * @request: a #WebKitNetworkRequest
- * @uri: an URI
- *
- * Sets the URI held and used by the given request. When the request
- * has an associated #SoupMessage, its URI will also be set by this
- * call.
- *
- */
-void webkit_network_request_set_uri(WebKitNetworkRequest* request, const gchar* uri)
-{
- g_return_if_fail(WEBKIT_IS_NETWORK_REQUEST(request));
- g_return_if_fail(uri);
-
- WebKitNetworkRequestPrivate* priv = request->priv;
-
- if (priv->uri)
- g_free(priv->uri);
- priv->uri = g_strdup(uri);
-
- if (!priv->message)
- return;
-
- SoupURI* soupURI = soup_uri_new(uri);
- g_return_if_fail(soupURI);
-
- soup_message_set_uri(priv->message, soupURI);
- soup_uri_free(soupURI);
-}
-
-/**
- * webkit_network_request_get_uri:
- * @request: a #WebKitNetworkRequest
- *
- * Returns: the URI of the #WebKitNetworkRequest
- *
- * Since: 1.0.0
- */
-const gchar* webkit_network_request_get_uri(WebKitNetworkRequest* request)
-{
- g_return_val_if_fail(WEBKIT_IS_NETWORK_REQUEST(request), NULL);
-
- WebKitNetworkRequestPrivate* priv = request->priv;
-
- if (priv->uri)
- return priv->uri;
-
- SoupURI* soupURI = soup_message_get_uri(priv->message);
- priv->uri = soup_uri_to_string(soupURI, FALSE);
- return priv->uri;
-}
-
-/**
- * webkit_network_request_get_message:
- * @request: a #WebKitNetworkRequest
- *
- * Obtains the #SoupMessage held and used by the given request. Notice
- * that modification of the SoupMessage of a request by signal
- * handlers is only supported (as in, will only affect what is
- * actually sent to the server) where explicitly documented.
- *
- * Returns: (transfer none): the #SoupMessage
- * Since: 1.1.9
- */
-SoupMessage* webkit_network_request_get_message(WebKitNetworkRequest* request)
-{
- g_return_val_if_fail(WEBKIT_IS_NETWORK_REQUEST(request), NULL);
-
- WebKitNetworkRequestPrivate* priv = request->priv;
-
- return priv->message;
-}
-
-namespace WebKit {
-
-WebKitNetworkRequest* kitNew(const WebCore::ResourceRequest& resourceRequest)
-{
- GRefPtr<SoupMessage> soupMessage(adoptGRef(resourceRequest.toSoupMessage()));
- if (soupMessage)
- return WEBKIT_NETWORK_REQUEST(g_object_new(WEBKIT_TYPE_NETWORK_REQUEST, "message", soupMessage.get(), NULL));
-
- return WEBKIT_NETWORK_REQUEST(g_object_new(WEBKIT_TYPE_NETWORK_REQUEST, "uri", resourceRequest.url().string().utf8().data(), NULL));
-}
-
-WebCore::ResourceRequest core(WebKitNetworkRequest* request)
-{
- SoupMessage* soupMessage = webkit_network_request_get_message(request);
- if (soupMessage)
- return WebCore::ResourceRequest(soupMessage);
-
- WebCore::KURL url = WebCore::KURL(WebCore::KURL(), String::fromUTF8(webkit_network_request_get_uri(request)));
- return WebCore::ResourceRequest(url);
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkitnetworkrequest.h b/Source/WebKit/gtk/webkit/webkitnetworkrequest.h
deleted file mode 100644
index b4e796673..000000000
--- a/Source/WebKit/gtk/webkit/webkitnetworkrequest.h
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2007 Holger Hans Peter Freyther
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitnetworkrequest_h
-#define webkitnetworkrequest_h
-
-#include <glib-object.h>
-#include <libsoup/soup.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_NETWORK_REQUEST (webkit_network_request_get_type())
-#define WEBKIT_NETWORK_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_NETWORK_REQUEST, WebKitNetworkRequest))
-#define WEBKIT_NETWORK_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_NETWORK_REQUEST, WebKitNetworkRequestClass))
-#define WEBKIT_IS_NETWORK_REQUEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_NETWORK_REQUEST))
-#define WEBKIT_IS_NETWORK_REQUEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_NETWORK_REQUEST))
-#define WEBKIT_NETWORK_REQUEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_NETWORK_REQUEST, WebKitNetworkRequestClass))
-
-typedef struct _WebKitNetworkRequestPrivate WebKitNetworkRequestPrivate;
-
-struct _WebKitNetworkRequest {
- GObject parent_instance;
-
- /*< private >*/
- WebKitNetworkRequestPrivate *priv;
-};
-
-struct _WebKitNetworkRequestClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_network_request_get_type (void);
-
-WEBKIT_API WebKitNetworkRequest *
-webkit_network_request_new (const gchar *uri);
-
-WEBKIT_API void
-webkit_network_request_set_uri (WebKitNetworkRequest *request,
- const gchar* uri);
-
-WEBKIT_API const gchar *
-webkit_network_request_get_uri (WebKitNetworkRequest *request);
-
-WEBKIT_API SoupMessage *
-webkit_network_request_get_message(WebKitNetworkRequest* request);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitnetworkrequestprivate.h b/Source/WebKit/gtk/webkit/webkitnetworkrequestprivate.h
deleted file mode 100644
index 84b45930c..000000000
--- a/Source/WebKit/gtk/webkit/webkitnetworkrequestprivate.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitnetworkrequestprivate_h
-#define webkitnetworkrequestprivate_h
-
-namespace WebKit {
-
-WebCore::ResourceRequest core(WebKitNetworkRequest*);
-WebKitNetworkRequest* kitNew(const WebCore::ResourceRequest&);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitnetworkresponse.cpp b/Source/WebKit/gtk/webkit/webkitnetworkresponse.cpp
deleted file mode 100644
index 5eb855673..000000000
--- a/Source/WebKit/gtk/webkit/webkitnetworkresponse.cpp
+++ /dev/null
@@ -1,322 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 Holger Hans Peter Freyther
- * Copyright (C) 2009 Gustavo Noronha Silva
- * Copyright (C) 2009 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitnetworkresponse.h"
-
-#include "ResourceResponse.h"
-#include "webkitglobalsprivate.h"
-#include "webkitnetworkresponseprivate.h"
-#include <glib/gi18n-lib.h>
-#include <wtf/gobject/GRefPtr.h>
-#include <wtf/text/CString.h>
-
-using namespace WebKit;
-
-/**
- * SECTION:webkitnetworkresponse
- * @short_description: the response given to a network request
- * @see_also: #WebKitNetworkRequest
- *
- * This class represents the network related aspects of a navigation
- * response.
- *
- * Since: 1.1.14
- */
-
-G_DEFINE_TYPE(WebKitNetworkResponse, webkit_network_response, G_TYPE_OBJECT);
-
-struct _WebKitNetworkResponsePrivate {
- gchar* uri;
- gchar* suggestedFilename;
- SoupMessage* message;
-};
-
-#define WEBKIT_NETWORK_RESPONSE_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE((obj), WEBKIT_TYPE_NETWORK_RESPONSE, WebKitNetworkResponsePrivate))
-
-enum {
- PROP_0,
-
- PROP_URI,
- PROP_MESSAGE,
- PROP_SUGGESTED_FILENAME,
-};
-
-static void webkit_network_response_dispose(GObject* object)
-{
- WebKitNetworkResponse* response = WEBKIT_NETWORK_RESPONSE(object);
- WebKitNetworkResponsePrivate* priv = response->priv;
-
- if (priv->message) {
- g_object_unref(priv->message);
- priv->message = NULL;
- }
-
- G_OBJECT_CLASS(webkit_network_response_parent_class)->dispose(object);
-}
-
-static void webkit_network_response_finalize(GObject* object)
-{
- WebKitNetworkResponse* response = WEBKIT_NETWORK_RESPONSE(object);
- WebKitNetworkResponsePrivate* priv = response->priv;
-
- g_free(priv->uri);
- g_free(priv->suggestedFilename);
-
- G_OBJECT_CLASS(webkit_network_response_parent_class)->finalize(object);
-}
-
-static void webkit_network_response_get_property(GObject* object, guint propertyID, GValue* value, GParamSpec* pspec)
-{
- WebKitNetworkResponse* response = WEBKIT_NETWORK_RESPONSE(object);
-
- switch(propertyID) {
- case PROP_URI:
- g_value_set_string(value, webkit_network_response_get_uri(response));
- break;
- case PROP_MESSAGE:
- g_value_set_object(value, webkit_network_response_get_message(response));
- break;
- case PROP_SUGGESTED_FILENAME:
- g_value_set_string(value, webkit_network_response_get_suggested_filename(response));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, pspec);
- }
-}
-
-static void webkit_network_response_set_property(GObject* object, guint propertyID, const GValue* value, GParamSpec* pspec)
-{
- WebKitNetworkResponse* response = WEBKIT_NETWORK_RESPONSE(object);
- WebKitNetworkResponsePrivate* priv = response->priv;
-
- switch(propertyID) {
- case PROP_URI:
- webkit_network_response_set_uri(response, g_value_get_string(value));
- break;
- case PROP_MESSAGE:
- priv->message = SOUP_MESSAGE(g_value_dup_object(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, pspec);
- }
-}
-
-static void webkit_network_response_class_init(WebKitNetworkResponseClass* responseClass)
-{
- GObjectClass* objectClass = G_OBJECT_CLASS(responseClass);
-
- objectClass->dispose = webkit_network_response_dispose;
- objectClass->finalize = webkit_network_response_finalize;
- objectClass->get_property = webkit_network_response_get_property;
- objectClass->set_property = webkit_network_response_set_property;
-
- webkitInit();
-
- /**
- * WebKitNetworkResponse:uri:
- *
- * The URI to which the response will be made.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(objectClass, PROP_URI,
- g_param_spec_string("uri",
- _("URI"),
- _("The URI to which the response will be made."),
- NULL,
- (GParamFlags)(WEBKIT_PARAM_READWRITE)));
-
- /**
- * WebKitNetworkResponse:message:
- *
- * The #SoupMessage that backs the response.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(objectClass, PROP_MESSAGE,
- g_param_spec_object("message",
- _("Message"),
- _("The SoupMessage that backs the response."),
- SOUP_TYPE_MESSAGE,
- (GParamFlags)(WEBKIT_PARAM_READWRITE|G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitNetworkResponse:suggested-filename:
- *
- * The suggested filename for the response.
- *
- * Since: 1.10
- */
- g_object_class_install_property(objectClass, PROP_SUGGESTED_FILENAME,
- g_param_spec_string("suggested-filename",
- _("Suggested filename"),
- _("The suggested filename for the response."),
- 0,
- WEBKIT_PARAM_READABLE));
-
- g_type_class_add_private(responseClass, sizeof(WebKitNetworkResponsePrivate));
-}
-
-static void webkit_network_response_init(WebKitNetworkResponse* response)
-{
- response->priv = WEBKIT_NETWORK_RESPONSE_GET_PRIVATE(response);
-}
-
-/**
- * webkit_network_response_new:
- * @uri: an URI
- *
- * Creates a new #WebKitNetworkResponse initialized with an URI.
- *
- * Returns: a new #WebKitNetworkResponse, or %NULL if the URI is
- * invalid.
- *
- * Since: 1.1.14
- */
-WebKitNetworkResponse* webkit_network_response_new(const gchar* uri)
-{
- g_return_val_if_fail(uri, NULL);
-
- return WEBKIT_NETWORK_RESPONSE(g_object_new(WEBKIT_TYPE_NETWORK_RESPONSE, "uri", uri, NULL));
-}
-
-/**
- * webkit_network_response_set_uri:
- * @response: a #WebKitNetworkResponse
- * @uri: an URI
- *
- * Sets the URI held and used by the given response. When the response
- * has an associated #SoupMessage, its URI will also be set by this
- * call.
- *
- * Since: 1.1.14
- */
-void webkit_network_response_set_uri(WebKitNetworkResponse* response, const gchar* uri)
-{
- g_return_if_fail(WEBKIT_IS_NETWORK_RESPONSE(response));
- g_return_if_fail(uri);
-
- WebKitNetworkResponsePrivate* priv = response->priv;
-
- if (priv->uri)
- g_free(priv->uri);
- priv->uri = g_strdup(uri);
-
- if (!priv->message)
- return;
-
- SoupURI* soupURI = soup_uri_new(uri);
- g_return_if_fail(soupURI);
-
- soup_message_set_uri(priv->message, soupURI);
- soup_uri_free(soupURI);
-}
-
-/**
- * webkit_network_response_get_uri:
- * @response: a #WebKitNetworkResponse
- *
- * Returns: the URI of the #WebKitNetworkResponse
- *
- * Since: 1.1.14
- */
-const gchar* webkit_network_response_get_uri(WebKitNetworkResponse* response)
-{
- g_return_val_if_fail(WEBKIT_IS_NETWORK_RESPONSE(response), NULL);
-
- WebKitNetworkResponsePrivate* priv = response->priv;
-
- if (priv->uri)
- return priv->uri;
-
- SoupURI* soupURI = soup_message_get_uri(priv->message);
- priv->uri = soup_uri_to_string(soupURI, FALSE);
- return priv->uri;
-}
-
-/**
- * webkit_network_response_get_message:
- * @response: a #WebKitNetworkResponse
- *
- * Obtains the #SoupMessage that represents the given response. Notice
- * that only the response side of the HTTP conversation is
- * represented.
- *
- * Returns: (transfer none): the #SoupMessage
- * Since: 1.1.14
- */
-SoupMessage* webkit_network_response_get_message(WebKitNetworkResponse* response)
-{
- g_return_val_if_fail(WEBKIT_IS_NETWORK_RESPONSE(response), NULL);
-
- WebKitNetworkResponsePrivate* priv = response->priv;
-
- return priv->message;
-}
-
-/**
- * webkit_network_response_get_suggested_filename:
- * @response: a #WebKitNetworkResponse
- *
- * Obtains the suggested filename for the given network response. The
- * suggested filename is taken from the 'Content-Disposition' HTTP
- * header, but this is not always present, and this method will return
- * %NULL in such case.
- *
- * Returns: (transfer none): the suggested filename or %NULL if not present
- * Since: 1.10
- **/
-const gchar* webkit_network_response_get_suggested_filename(WebKitNetworkResponse* response)
-{
- g_return_val_if_fail(WEBKIT_IS_NETWORK_RESPONSE(response), 0);
-
- WebKitNetworkResponsePrivate* priv = response->priv;
-
- if (priv->suggestedFilename)
- return priv->suggestedFilename;
-
- WebCore::ResourceResponse coreResponse = core(response);
- priv->suggestedFilename = g_strdup(coreResponse.suggestedFilename().utf8().data());
- return priv->suggestedFilename;
-}
-
-namespace WebKit {
-
-WebCore::ResourceResponse core(WebKitNetworkResponse* response)
-{
- SoupMessage* soupMessage = webkit_network_response_get_message(response);
- if (soupMessage)
- return WebCore::ResourceResponse(soupMessage);
-
- return WebCore::ResourceResponse();
-}
-
-WebKitNetworkResponse* kitNew(const WebCore::ResourceResponse& resourceResponse)
-{
- GRefPtr<SoupMessage> soupMessage(adoptGRef(resourceResponse.toSoupMessage()));
- if (soupMessage)
- return WEBKIT_NETWORK_RESPONSE(g_object_new(WEBKIT_TYPE_NETWORK_RESPONSE, "message", soupMessage.get(), NULL));
-
- return WEBKIT_NETWORK_RESPONSE(g_object_new(WEBKIT_TYPE_NETWORK_RESPONSE, "uri", resourceResponse.url().string().utf8().data(), NULL));
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkitnetworkresponse.h b/Source/WebKit/gtk/webkit/webkitnetworkresponse.h
deleted file mode 100644
index 359b3322a..000000000
--- a/Source/WebKit/gtk/webkit/webkitnetworkresponse.h
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright (C) 2009 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitnewtorkresponse_h
-#define webkitnewtorkresponse_h
-
-#include <glib-object.h>
-#include <libsoup/soup.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_NETWORK_RESPONSE (webkit_network_response_get_type())
-#define WEBKIT_NETWORK_RESPONSE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_NETWORK_RESPONSE, WebKitNetworkResponse))
-#define WEBKIT_NETWORK_RESPONSE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_NETWORK_RESPONSE, WebKitNetworkResponseClass))
-#define WEBKIT_IS_NETWORK_RESPONSE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_NETWORK_RESPONSE))
-#define WEBKIT_IS_NETWORK_RESPONSE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_NETWORK_RESPONSE))
-#define WEBKIT_NETWORK_RESPONSE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_NETWORK_RESPONSE, WebKitNetworkResponseClass))
-
-typedef struct _WebKitNetworkResponsePrivate WebKitNetworkResponsePrivate;
-
-struct _WebKitNetworkResponse {
- GObject parent_instance;
-
- /*< private >*/
- WebKitNetworkResponsePrivate *priv;
-};
-
-struct _WebKitNetworkResponseClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_network_response_get_type (void);
-
-WEBKIT_API WebKitNetworkResponse *
-webkit_network_response_new (const gchar *uri);
-
-WEBKIT_API void
-webkit_network_response_set_uri (WebKitNetworkResponse *response,
- const gchar* uri);
-
-WEBKIT_API const gchar *
-webkit_network_response_get_uri (WebKitNetworkResponse *response);
-
-WEBKIT_API SoupMessage *
-webkit_network_response_get_message(WebKitNetworkResponse* response);
-
-WEBKIT_API const char *
-webkit_network_response_get_suggested_filename(WebKitNetworkResponse *response);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitnetworkresponseprivate.h b/Source/WebKit/gtk/webkit/webkitnetworkresponseprivate.h
deleted file mode 100644
index ab38a5083..000000000
--- a/Source/WebKit/gtk/webkit/webkitnetworkresponseprivate.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitnetworkresponseprivate_h
-#define webkitnetworkresponseprivate_h
-
-#include "ResourceResponse.h"
-
-namespace WebKit {
-
-WebCore::ResourceResponse core(WebKitNetworkResponse*);
-WebKitNetworkResponse* kitNew(const WebCore::ResourceResponse&);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitsecurityorigin.cpp b/Source/WebKit/gtk/webkit/webkitsecurityorigin.cpp
deleted file mode 100644
index f174ba548..000000000
--- a/Source/WebKit/gtk/webkit/webkitsecurityorigin.cpp
+++ /dev/null
@@ -1,425 +0,0 @@
-/*
- * Copyright (C) 2009 Martin Robinson, Jan Michael C. Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitsecurityorigin.h"
-
-#include "DatabaseManager.h"
-#include "webkitglobalsprivate.h"
-#include "webkitsecurityoriginprivate.h"
-#include <glib/gi18n-lib.h>
-#include <wtf/text/CString.h>
-#include <wtf/text/WTFString.h>
-
-/**
- * SECTION:webkitsecurityorigin
- * @short_description: A security boundary for web sites
- *
- * #WebKitSecurityOrigin is a representation of a security domain defined
- * by web sites. An origin consists of a host name, a protocol, and a port
- * number. Web sites with the same security origin can access each other's
- * resources for client-side scripting or database access.
- *
- * Use #webkit_web_frame_get_security_origin to get the security origin of a
- * #WebKitWebFrame.
- *
- * Database quotas and usages are also defined per security origin. The
- * cumulative disk usage of an origin's databases may be retrieved with
- * #webkit_security_origin_get_web_database_usage. An origin's quota can be
- * adjusted with #webkit_security_origin_set_web_database_quota.
- */
-
-using namespace WebKit;
-
-enum {
- PROP_0,
-
- PROP_PROTOCOL,
- PROP_HOST,
- PROP_PORT,
- PROP_DATABASE_USAGE,
- PROP_DATABASE_QUOTA
-};
-
-G_DEFINE_TYPE(WebKitSecurityOrigin, webkit_security_origin, G_TYPE_OBJECT)
-
-static void webkit_security_origin_finalize(GObject* object)
-{
- WebKitSecurityOrigin* securityOrigin = WEBKIT_SECURITY_ORIGIN(object);
- WebKitSecurityOriginPrivate* priv = securityOrigin->priv;
-
- g_free(priv->protocol);
- g_free(priv->host);
-
- G_OBJECT_CLASS(webkit_security_origin_parent_class)->finalize(object);
-}
-
-static void webkit_security_origin_dispose(GObject* object)
-{
- WebKitSecurityOrigin* securityOrigin = WEBKIT_SECURITY_ORIGIN(object);
- WebKitSecurityOriginPrivate* priv = securityOrigin->priv;
-
- if (!priv->disposed) {
- priv->coreOrigin->deref();
- g_hash_table_destroy(priv->webDatabases);
- priv->disposed = true;
- }
-
- G_OBJECT_CLASS(webkit_security_origin_parent_class)->dispose(object);
-}
-
-static void webkit_security_origin_set_property(GObject* object, guint propId, const GValue* value, GParamSpec* pspec)
-{
- WebKitSecurityOrigin* securityOrigin = WEBKIT_SECURITY_ORIGIN(object);
-
- switch (propId) {
- case PROP_DATABASE_QUOTA:
- webkit_security_origin_set_web_database_quota(securityOrigin, g_value_get_uint64(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, pspec);
- break;
- }
-}
-
-static void webkit_security_origin_get_property(GObject* object, guint propId, GValue* value, GParamSpec* pspec)
-{
- WebKitSecurityOrigin* securityOrigin = WEBKIT_SECURITY_ORIGIN(object);
-
- switch (propId) {
- case PROP_PROTOCOL:
- g_value_set_string(value, webkit_security_origin_get_protocol(securityOrigin));
- break;
- case PROP_HOST:
- g_value_set_string(value, webkit_security_origin_get_host(securityOrigin));
- break;
- case PROP_PORT:
- g_value_set_uint(value, webkit_security_origin_get_port(securityOrigin));
- break;
- case PROP_DATABASE_USAGE:
- g_value_set_uint64(value, webkit_security_origin_get_web_database_usage(securityOrigin));
- break;
- case PROP_DATABASE_QUOTA:
- g_value_set_uint64(value, webkit_security_origin_get_web_database_quota(securityOrigin));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, pspec);
- break;
- }
-}
-
-static GHashTable* webkit_security_origins()
-{
- static GHashTable* securityOrigins = g_hash_table_new_full(g_direct_hash, g_direct_equal, NULL, g_object_unref);
- return securityOrigins;
-}
-
-static void webkit_security_origin_class_init(WebKitSecurityOriginClass* klass)
-{
- GObjectClass* gobjectClass = G_OBJECT_CLASS(klass);
- gobjectClass->dispose = webkit_security_origin_dispose;
- gobjectClass->finalize = webkit_security_origin_finalize;
- gobjectClass->set_property = webkit_security_origin_set_property;
- gobjectClass->get_property = webkit_security_origin_get_property;
-
- /**
- * WebKitSecurityOrigin:protocol:
- *
- * The protocol of the security origin.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_PROTOCOL,
- g_param_spec_string("protocol",
- _("Protocol"),
- _("The protocol of the security origin"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitSecurityOrigin:host:
- *
- * The host of the security origin.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_HOST,
- g_param_spec_string("host",
- _("Host"),
- _("The host of the security origin"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitSecurityOrigin:port:
- *
- * The port of the security origin.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_PORT,
- g_param_spec_uint("port",
- _("Port"),
- _("The port of the security origin"),
- 0, G_MAXUSHORT, 0,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitSecurityOrigin:web-database-usage:
- *
- * The cumulative size of all web databases in the security origin in bytes.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_DATABASE_USAGE,
- g_param_spec_uint64("web-database-usage",
- _("Web Database Usage"),
- _("The cumulative size of all web databases in the security origin"),
- 0, G_MAXUINT64, 0,
- WEBKIT_PARAM_READABLE));
- /**
- * WebKitSecurityOrigin:web-database-quota:
- *
- * The web database qouta of the security origin in bytes.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_DATABASE_QUOTA,
- g_param_spec_uint64("web-database-quota",
- _("Web Database Quota"),
- _("The web database quota of the security origin in bytes"),
- 0, G_MAXUINT64, 0,
- WEBKIT_PARAM_READWRITE));
-
- g_type_class_add_private(klass, sizeof(WebKitSecurityOriginPrivate));
-}
-
-static void webkit_security_origin_init(WebKitSecurityOrigin* securityOrigin)
-{
- WebKitSecurityOriginPrivate* priv = G_TYPE_INSTANCE_GET_PRIVATE(securityOrigin, WEBKIT_TYPE_SECURITY_ORIGIN, WebKitSecurityOriginPrivate);
- priv->webDatabases = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_object_unref);
- securityOrigin->priv = priv;
-}
-
-/**
- * webkit_security_origin_get_protocol:
- * @securityOrigin: a #WebKitSecurityOrigin
- *
- * Returns the protocol for the security origin.
- *
- * Returns: the protocol for the security origin
- *
- * Since: 1.1.14
- **/
-const gchar* webkit_security_origin_get_protocol(WebKitSecurityOrigin* securityOrigin)
-{
- g_return_val_if_fail(WEBKIT_IS_SECURITY_ORIGIN(securityOrigin), NULL);
-
- WebKitSecurityOriginPrivate* priv = securityOrigin->priv;
- WTF::String protocol = priv->coreOrigin->protocol();
-
- if (!priv->protocol)
- priv->protocol = g_strdup(protocol.utf8().data());
-
- return priv->protocol;
-}
-
-/**
- * webkit_security_origin_get_host:
- * @securityOrigin: a #WebKitSecurityOrigin
- *
- * Returns the hostname for the security origin.
- *
- * Returns: the hostname for the security origin
- *
- * Since: 1.1.14
- **/
-const gchar* webkit_security_origin_get_host(WebKitSecurityOrigin* securityOrigin)
-{
- g_return_val_if_fail(WEBKIT_IS_SECURITY_ORIGIN(securityOrigin), NULL);
-
- WebKitSecurityOriginPrivate* priv = securityOrigin->priv;
- WTF::String host = priv->coreOrigin->host();
-
- if (!priv->host)
- priv->host = g_strdup(host.utf8().data());
-
- return priv->host;
-}
-
-/**
- * webkit_security_origin_get_port:
- * @securityOrigin: a #WebKitSecurityOrigin
- *
- * Returns the port for the security origin.
- *
- * Returns: the port for the security origin
- *
- * Since: 1.1.14
- **/
-guint webkit_security_origin_get_port(WebKitSecurityOrigin* securityOrigin)
-{
- g_return_val_if_fail(WEBKIT_IS_SECURITY_ORIGIN(securityOrigin), 0);
-
- WebCore::SecurityOrigin* coreOrigin = core(securityOrigin);
- return coreOrigin->port();
-}
-
-/**
- * webkit_security_origin_get_web_database_usage:
- * @securityOrigin: a #WebKitSecurityOrigin
- *
- * Returns the cumulative size of all Web Database database's in the origin
- * in bytes.
- *
- * Returns: the cumulative size of all databases
- *
- * Since: 1.1.14
- **/
-guint64 webkit_security_origin_get_web_database_usage(WebKitSecurityOrigin* securityOrigin)
-{
- g_return_val_if_fail(WEBKIT_IS_SECURITY_ORIGIN(securityOrigin), 0);
-
-#if ENABLE(SQL_DATABASE)
- WebCore::SecurityOrigin* coreOrigin = core(securityOrigin);
- return WebCore::DatabaseManager::manager().usageForOrigin(coreOrigin);
-#else
- return 0;
-#endif
-}
-
-/**
- * webkit_security_origin_get_web_database_quota:
- * @securityOrigin: a #WebKitSecurityOrigin
- *
- * Returns the quota for Web Database storage of the security origin
- * in bytes.
- *
- * Returns: the Web Database quota
- *
- * Since: 1.1.14
- **/
-guint64 webkit_security_origin_get_web_database_quota(WebKitSecurityOrigin* securityOrigin)
-{
- g_return_val_if_fail(WEBKIT_IS_SECURITY_ORIGIN(securityOrigin), 0);
-
-#if ENABLE(SQL_DATABASE)
- WebCore::SecurityOrigin* coreOrigin = core(securityOrigin);
- return WebCore::DatabaseManager::manager().quotaForOrigin(coreOrigin);
-#else
- return 0;
-#endif
-}
-
-/**
- * webkit_security_origin_set_web_database_quota:
- * @securityOrigin: a #WebKitSecurityOrigin
- * @quota: a new Web Database quota in bytes
- *
- * Adjust the quota for Web Database storage of the security origin
- *
- * Since: 1.1.14
- **/
-void webkit_security_origin_set_web_database_quota(WebKitSecurityOrigin* securityOrigin, guint64 quota)
-{
- g_return_if_fail(WEBKIT_IS_SECURITY_ORIGIN(securityOrigin));
-
-#if ENABLE(SQL_DATABASE)
- WebCore::SecurityOrigin* coreOrigin = core(securityOrigin);
- WebCore::DatabaseManager::manager().setQuota(coreOrigin, quota);
-#endif
-}
-
-/**
- * webkit_security_origin_get_all_web_databases:
- * @securityOrigin: a #WebKitSecurityOrigin
- *
- * Returns a list of all Web Databases in the security origin.
- *
- * Returns: (transfer container) (element-type WebKitWebDatabase): a
- * #GList of databases in the security origin.
- *
- * Since: 1.1.14
- **/
-GList* webkit_security_origin_get_all_web_databases(WebKitSecurityOrigin* securityOrigin)
-{
- g_return_val_if_fail(WEBKIT_IS_SECURITY_ORIGIN(securityOrigin), NULL);
- GList* databases = NULL;
-
-#if ENABLE(SQL_DATABASE)
- WebCore::SecurityOrigin* coreOrigin = core(securityOrigin);
- Vector<WTF::String> databaseNames;
-
- if (!WebCore::DatabaseManager::manager().databaseNamesForOrigin(coreOrigin, databaseNames))
- return NULL;
-
- for (unsigned i = 0; i < databaseNames.size(); ++i) {
- WebKitWebDatabase* database = webkit_security_origin_get_web_database(securityOrigin, databaseNames[i].utf8().data());
- databases = g_list_append(databases, database);
- }
-#endif
-
- return databases;
-}
-
-WebKitWebDatabase* webkit_security_origin_get_web_database(WebKitSecurityOrigin* securityOrigin, const gchar* databaseName)
-{
- g_return_val_if_fail(WEBKIT_IS_SECURITY_ORIGIN(securityOrigin), NULL);
-
- WebKitSecurityOriginPrivate* priv = securityOrigin->priv;
- GHashTable* databaseHash = priv->webDatabases;
- WebKitWebDatabase* database = (WebKitWebDatabase*) g_hash_table_lookup(databaseHash, databaseName);
-
- if (!database) {
- database = WEBKIT_WEB_DATABASE(g_object_new(WEBKIT_TYPE_WEB_DATABASE,
- "security-origin", securityOrigin,
- "name", databaseName,
- NULL));
- g_hash_table_insert(databaseHash, g_strdup(databaseName), database);
- }
-
- return database;
-}
-
-namespace WebKit {
-
-WebCore::SecurityOrigin* core(WebKitSecurityOrigin* securityOrigin)
-{
- ASSERT(securityOrigin);
-
- return securityOrigin->priv->coreOrigin.get();
-}
-
-WebKitSecurityOrigin* kit(WebCore::SecurityOrigin* coreOrigin)
-{
- ASSERT(coreOrigin);
-
- GHashTable* table = webkit_security_origins();
- WebKitSecurityOrigin* origin = (WebKitSecurityOrigin*) g_hash_table_lookup(table, coreOrigin);
-
- if (!origin) {
- origin = WEBKIT_SECURITY_ORIGIN(g_object_new(WEBKIT_TYPE_SECURITY_ORIGIN, NULL));
- origin->priv->coreOrigin = coreOrigin;
- g_hash_table_insert(table, coreOrigin, origin);
- }
-
- return origin;
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkitsecurityorigin.h b/Source/WebKit/gtk/webkit/webkitsecurityorigin.h
deleted file mode 100644
index 032790995..000000000
--- a/Source/WebKit/gtk/webkit/webkitsecurityorigin.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright (C) 2009 Martin Robinson, Jan Michael C. Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitsecurityorigin_h
-#define webkitsecurityorigin_h
-
-#include "webkitwebdatabase.h"
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_SECURITY_ORIGIN (webkit_security_origin_get_type())
-#define WEBKIT_SECURITY_ORIGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_SECURITY_ORIGIN, WebKitSecurityOrigin))
-#define WEBKIT_SECURITY_ORIGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_SECURITY_ORIGIN, WebKitSecurityOriginClass))
-#define WEBKIT_IS_SECURITY_ORIGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_SECURITY_ORIGIN))
-#define WEBKIT_IS_SECURITY_ORIGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_SECURITY_ORIGIN))
-#define WEBKIT_SECURITY_ORIGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_SECURITY_ORIGIN, WebKitSecurityOriginClass))
-
-typedef struct _WebKitSecurityOriginPrivate WebKitSecurityOriginPrivate;
-
-struct _WebKitSecurityOrigin {
- GObject parent_instance;
-
- /*< private >*/
- WebKitSecurityOriginPrivate* priv;
-};
-
-struct _WebKitSecurityOriginClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
- void (*_webkit_reserved4) (void);
-};
-
-WEBKIT_API GType
-webkit_security_origin_get_type (void);
-
-WEBKIT_API const gchar*
-webkit_security_origin_get_protocol (WebKitSecurityOrigin* securityOrigin);
-
-WEBKIT_API const gchar*
-webkit_security_origin_get_host (WebKitSecurityOrigin* securityOrigin);
-
-WEBKIT_API guint
-webkit_security_origin_get_port (WebKitSecurityOrigin* securityOrigin);
-
-WEBKIT_API guint64
-webkit_security_origin_get_web_database_usage (WebKitSecurityOrigin* securityOrigin);
-
-WEBKIT_API guint64
-webkit_security_origin_get_web_database_quota (WebKitSecurityOrigin* securityOrigin);
-
-WEBKIT_API void
-webkit_security_origin_set_web_database_quota (WebKitSecurityOrigin* securityOrigin, guint64 quota);
-
-WEBKIT_API GList *
-webkit_security_origin_get_all_web_databases (WebKitSecurityOrigin* securityOrigin);
-
-G_END_DECLS
-
-#endif /* __WEBKIT_SECURITY_ORIGIN_H__ */
diff --git a/Source/WebKit/gtk/webkit/webkitsecurityoriginprivate.h b/Source/WebKit/gtk/webkit/webkitsecurityoriginprivate.h
deleted file mode 100644
index 5a4a87b89..000000000
--- a/Source/WebKit/gtk/webkit/webkitsecurityoriginprivate.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitsecurityoriginprivate_h
-#define webkitnavigationactionprivate_h
-
-#include "SecurityOrigin.h"
-#include "webkitsecurityorigin.h"
-
-namespace WebKit {
-
-WebKitSecurityOrigin* kit(WebCore::SecurityOrigin*);
-WebCore::SecurityOrigin* core(WebKitSecurityOrigin*);
-
-}
-
-extern "C" {
-
-struct _WebKitSecurityOriginPrivate {
- RefPtr<WebCore::SecurityOrigin> coreOrigin;
- gchar* protocol;
- gchar* host;
- GHashTable* webDatabases;
-
- gboolean disposed;
-};
-
-WEBKIT_API WebKitWebDatabase* webkit_security_origin_get_web_database(WebKitSecurityOrigin*, const char*);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitsoupauthdialog.cpp b/Source/WebKit/gtk/webkit/webkitsoupauthdialog.cpp
deleted file mode 100644
index afe16bd50..000000000
--- a/Source/WebKit/gtk/webkit/webkitsoupauthdialog.cpp
+++ /dev/null
@@ -1,160 +0,0 @@
-/*
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitsoupauthdialog.h"
-
-#include "AuthenticationClient.h"
-#include "ResourceHandle.h"
-#include "webkitauthenticationdialog.h"
-#include "webkitmarshal.h"
-#include <wtf/text/CString.h>
-
-using namespace WebCore;
-
-/**
- * SECTION:webkitsoupauthdialog
- * @short_description: A #SoupSessionFeature to provide a simple
- * authentication dialog for HTTP basic auth support.
- *
- * #WebKitSoupAuthDialog is a #SoupSessionFeature that you can attach to your
- * #SoupSession to provide a simple authentication dialog while
- * handling HTTP basic auth.
- */
-
-
-// This class exists only for API compatibility reasons. WebKitSoupAuthDialog was exposed
-// in the public API, so we must provide this "fake" AuthenticationClient in order to
-// continue using GtkAuthenticationDialog with the new authentication architecture.
-class WebKitSoupAuthDialogAuthenticationClient : public WebCore::AuthenticationClient, public RefCounted<WebKitSoupAuthDialogAuthenticationClient> {
-using RefCounted<WebKitSoupAuthDialogAuthenticationClient>::ref;
-using RefCounted<WebKitSoupAuthDialogAuthenticationClient>::deref;
-public:
- virtual void didReceiveAuthenticationChallenge(const AuthenticationChallenge& challenge)
- {
- }
-
- virtual void receivedRequestToContinueWithoutCredential(const AuthenticationChallenge& challenge)
- {
- soup_session_unpause_message(challenge.soupSession(), challenge.soupMessage());
- }
-
- virtual void receivedCredential(const AuthenticationChallenge& challenge, const Credential& credential)
- {
- soup_auth_authenticate(challenge.soupAuth(), credential.user().utf8().data(), credential.password().utf8().data());
- soup_session_unpause_message(challenge.soupSession(), challenge.soupMessage());
- }
-
- virtual void receivedCancellation(const AuthenticationChallenge& challenge)
- {
- soup_session_unpause_message(challenge.soupSession(), challenge.soupMessage());
- }
-
- // This seems necessary to make the compiler happy. Both AuthenticationClient and
- // RefCounted<T> expose a ref/deref method, which interferes with the use of a RefPtr.
- void derefWebKitSoupAuthDialogAuthenticationClient()
- {
- deref();
- }
-
-private:
- virtual void refAuthenticationClient() { ref(); }
- virtual void derefAuthenticationClient() { deref(); }
-};
-
-static void webkit_soup_auth_dialog_session_feature_init(SoupSessionFeatureInterface*, gpointer);
-static void attach(SoupSessionFeature*, SoupSession*);
-static void detach(SoupSessionFeature*, SoupSession*);
-
-enum {
- CURRENT_TOPLEVEL,
- LAST_SIGNAL
-};
-
-static guint signals[LAST_SIGNAL] = { 0 };
-
-G_DEFINE_TYPE_WITH_CODE(WebKitSoupAuthDialog, webkit_soup_auth_dialog, G_TYPE_OBJECT,
- G_IMPLEMENT_INTERFACE(SOUP_TYPE_SESSION_FEATURE,
- webkit_soup_auth_dialog_session_feature_init))
-
-static void webkit_soup_auth_dialog_class_init(WebKitSoupAuthDialogClass* klass)
-{
- GObjectClass* objectClass = G_OBJECT_CLASS(klass);
-
- /**
- * WebKitSoupAuthDialog::current-toplevel:
- * @authDialog: the object on which the signal is emitted
- * @message: the #SoupMessage being used in the authentication process
- *
- * This signal is emitted by the @authDialog when it needs to know
- * the current toplevel widget in order to correctly set the
- * transiency for the authentication dialog.
- *
- * Return value: (transfer none): the current toplevel #GtkWidget or %NULL if there's none
- *
- * Since: 1.1.1
- */
- signals[CURRENT_TOPLEVEL] = g_signal_new("current-toplevel",
- G_OBJECT_CLASS_TYPE(objectClass),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(WebKitSoupAuthDialogClass, current_toplevel),
- 0, 0,
- webkit_marshal_OBJECT__OBJECT,
- GTK_TYPE_WIDGET, 1,
- SOUP_TYPE_MESSAGE);
-}
-
-static void webkit_soup_auth_dialog_init(WebKitSoupAuthDialog*)
-{
-}
-
-static void webkit_soup_auth_dialog_session_feature_init(SoupSessionFeatureInterface *featureInterface, gpointer)
-{
- featureInterface->attach = attach;
- featureInterface->detach = detach;
-}
-
-static void sessionAuthenticate(SoupSession* session, SoupMessage* message, SoupAuth* auth, gboolean retrying, SoupSessionFeature* manager)
-{
- GtkWindow* toplevel = 0;
- g_signal_emit(manager, signals[CURRENT_TOPLEVEL], 0, message, &toplevel);
-
- WebKitSoupAuthDialogAuthenticationClient* client = new WebKitSoupAuthDialogAuthenticationClient();
- AuthenticationChallenge challenge(session, message, auth, retrying, client);
- soup_session_unpause_message(session, message);
-
- // A RefPtr would be better here, but it seems that accessing RefCounted::deref from this context is
- // impossible with gcc, due to WebKitSoupAuthDialogAuthenticationClient's two superclasses.
- client->derefWebKitSoupAuthDialogAuthenticationClient();
-
- GtkWidget* authDialog = createAuthenticationDialog(toplevel, challenge, DisallowPersistentStorage);
- gtk_widget_show(authDialog);
-}
-
-static void attach(SoupSessionFeature* manager, SoupSession* session)
-{
- g_signal_connect(session, "authenticate", G_CALLBACK(sessionAuthenticate), manager);
-}
-
-static void detach(SoupSessionFeature* manager, SoupSession* session)
-{
- g_signal_handlers_disconnect_by_func(session, reinterpret_cast<gpointer>(sessionAuthenticate), manager);
-}
-
-
diff --git a/Source/WebKit/gtk/webkit/webkitsoupauthdialog.h b/Source/WebKit/gtk/webkit/webkitsoupauthdialog.h
deleted file mode 100644
index 56f972a74..000000000
--- a/Source/WebKit/gtk/webkit/webkitsoupauthdialog.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitsoupauthdialog_h
-#define webkitsoupauthdialog_h
-
-#include <gtk/gtk.h>
-#define LIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY
-#include <libsoup/soup.h>
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_SOUP_AUTH_DIALOG (webkit_soup_auth_dialog_get_type ())
-#define WEBKIT_SOUP_AUTH_DIALOG(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), WEBKIT_TYPE_SOUP_AUTH_DIALOG, WebKitSoupAuthDialog))
-#define WEBKIT_SOUP_AUTH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), WEBKIT_TYPE_SOUP_AUTH_DIALOG, WebKitSoupAuthDialog))
-#define WEBKIT_IS_SOUP_AUTH_DIALOG(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), WEBKIT_TYPE_SOUP_AUTH_DIALOG))
-#define WEBKIT_IS_SOUP_AUTH_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), WEBKIT_TYPE_SOUP_AUTH_DIALOG))
-#define WEBKIT_SOUP_AUTH_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), WEBKIT_TYPE_SOUP_AUTH_DIALOG, WebKitSoupAuthDialog))
-
-typedef struct {
- GObject parent_instance;
-} WebKitSoupAuthDialog;
-
-typedef struct {
- GObjectClass parent_class;
-
- GtkWidget* (*current_toplevel) (WebKitSoupAuthDialog* authDialog, SoupMessage* message);
-} WebKitSoupAuthDialogClass;
-
-WEBKIT_API GType
-webkit_soup_auth_dialog_get_type (void);
-
-G_END_DECLS
-
-#endif /* webkitsoupauthdialog_h */
diff --git a/Source/WebKit/gtk/webkit/webkitspellchecker.cpp b/Source/WebKit/gtk/webkit/webkitspellchecker.cpp
deleted file mode 100644
index 829fd54e7..000000000
--- a/Source/WebKit/gtk/webkit/webkitspellchecker.cpp
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Copyright (C) 2011 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "webkitspellchecker.h"
-
-/**
- * SECTION:webkitspellchecker
- * @short_description: the spell checking API for WebKit
- *
- * #WebKitSpellChecker provides APIs for the spell checking
- * functionality used internally by WebKit to perform spell checking
- * in editable areas. This can be used, for example, by browsers to
- * implement custom spell checking context menus or sophisticated
- * auto-correct features.
- */
-
-G_DEFINE_INTERFACE(WebKitSpellChecker, webkit_spell_checker, G_TYPE_OBJECT);
-
-static void webkit_spell_checker_default_init(WebKitSpellCheckerInterface* interface)
-{
-}
-
-/**
- * webkit_spell_checker_check_spelling_of_string:
- * @checker: a #WebKitSpellChecker
- * @string: the string to check for misspellings
- * @misspelling_location: (out) (allow-none) a pointer to an integer to store the location of the first misspelling
- * @misspelling_length: (out) (allow-none) a pointer to an integer to store the length of the first misspelling
- *
- * Checks @string for misspellings using @checker, storing the
- * location and length of the first misspelling in
- * @misspelling_location and @misspelling_length respectively.
- *
- * Since: 1.5.1
- **/
-void webkit_spell_checker_check_spelling_of_string(WebKitSpellChecker* checker, const char* string, int* misspelling_location, int* misspelling_length)
-{
- g_return_if_fail(WEBKIT_IS_SPELL_CHECKER(checker));
- g_return_if_fail(string);
-
- WebKitSpellCheckerInterface* interface = WEBKIT_SPELL_CHECKER_GET_IFACE(checker);
- if (interface->check_spelling_of_string)
- interface->check_spelling_of_string(checker, string, misspelling_location, misspelling_length);
-}
-
-/**
- * webkit_spell_checker_get_guesses_for_word:
- * @checker: a #WebKitSpellChecker
- * @word: the misspelled word
- * @context: (allow-none) the surrounding context of the misspelled word
- *
- * Returns a %NULL-terminated array of guesses for corrections of the
- * misspelled word @word.
- *
- * Returns: (transfer full): a newly allocated %NULL-terminated array
- * of suggested corrections for a misspelled word @word. Free it with
- * %g_strfreev when done with it.
- *
- * Since: 1.5.1
- **/
-char** webkit_spell_checker_get_guesses_for_word(WebKitSpellChecker* checker, const char* word, const char* context)
-{
- g_return_val_if_fail(WEBKIT_IS_SPELL_CHECKER(checker), 0);
- g_return_val_if_fail(word, 0);
-
- WebKitSpellCheckerInterface* interface = WEBKIT_SPELL_CHECKER_GET_IFACE(checker);
- if (interface->get_guesses_for_word)
- return interface->get_guesses_for_word(checker, word, context);
-
- return 0;
-}
-
-/**
- * webkit_spell_checker_update_spell_checking_languages:
- * @checker: a #WebKitSpellChecker
- * @languages: (allow-none) a string of languages to use for @checker
- *
- * Sets @languages as the list of languages to use by @checker. The
- * accepted format is a list of comma (',') separated language codes
- * of the form 'en_US', ie, language_VARIANT.
- *
- * Since: 1.5.1
- **/
-void webkit_spell_checker_update_spell_checking_languages(WebKitSpellChecker* checker, const char* languages)
-{
- g_return_if_fail(WEBKIT_IS_SPELL_CHECKER(checker));
-
- WebKitSpellCheckerInterface* interface = WEBKIT_SPELL_CHECKER_GET_IFACE(checker);
- if (interface->update_spell_checking_languages)
- interface->update_spell_checking_languages(checker, languages);
-}
-
-/**
- * webkit_spell_checker_get_autocorrect_suggestions_for_misspelled_word:
- * @checker: a #WebKitSpellChecker
- * @word: a misspelled word
- *
- * Returns a suggestion for a word to use in an "autocorrect" feature.
- *
- * Returns: (transfer full) the suggestion for the autocorrection of
- * @word
- *
- * Since: 1.5.1
- **/
-char* webkit_spell_checker_get_autocorrect_suggestions_for_misspelled_word(WebKitSpellChecker* checker, const char* word)
-{
- g_return_val_if_fail(WEBKIT_IS_SPELL_CHECKER(checker), 0);
- g_return_val_if_fail(word, 0);
-
- WebKitSpellCheckerInterface* interface = WEBKIT_SPELL_CHECKER_GET_IFACE(checker);
- if (interface->get_autocorrect_suggestions_for_misspelled_word)
- return interface->get_autocorrect_suggestions_for_misspelled_word(checker, word);
-
- return 0;
-}
-
-/**
- * webkit_spell_checker_learn_word:
- * @checker: a #WebKitSpellChecker
- * @word: the word to learn
- *
- * Instructs the @checker to add @word to its dictionary as a properly
- * spelled word. The word will be learned permanently in the user's
- * personal dictionary.
- *
- * Since: 1.5.1
- **/
-void webkit_spell_checker_learn_word(WebKitSpellChecker* checker, const char* word)
-{
- g_return_if_fail(WEBKIT_IS_SPELL_CHECKER(checker));
- g_return_if_fail(word);
-
- WebKitSpellCheckerInterface* interface = WEBKIT_SPELL_CHECKER_GET_IFACE(checker);
- if (interface->learn_word)
- interface->learn_word(checker, word);
-}
-
-/**
- * webkit_spell_checker_ignore_word:
- * @checker: a #WebKitSpellChecker
- * @word: the word to ignore
- *
- * Instructs the @checker to ignore @word as a misspelling for this
- * session.
- *
- * Since: 1.5.1
- **/
-void webkit_spell_checker_ignore_word(WebKitSpellChecker* checker, const char* word)
-{
- g_return_if_fail(WEBKIT_IS_SPELL_CHECKER(checker));
- g_return_if_fail(word);
-
- WebKitSpellCheckerInterface* interface = WEBKIT_SPELL_CHECKER_GET_IFACE(checker);
- if (interface->ignore_word)
- interface->ignore_word(checker, word);
-}
diff --git a/Source/WebKit/gtk/webkit/webkitspellchecker.h b/Source/WebKit/gtk/webkit/webkitspellchecker.h
deleted file mode 100644
index 3df9561d5..000000000
--- a/Source/WebKit/gtk/webkit/webkitspellchecker.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (C) 2011 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitspellchecker_h
-#define webkitspellchecker_h
-
-#include "webkitdefines.h"
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_SPELL_CHECKER (webkit_spell_checker_get_type())
-#define WEBKIT_SPELL_CHECKER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_SPELL_CHECKER, WebKitSpellChecker))
-#define WEBKIT_IS_SPELL_CHECKER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), WEBKIT_TYPE_SPELL_CHECKER))
-#define WEBKIT_SPELL_CHECKER_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), WEBKIT_TYPE_SPELL_CHECKER, WebKitSpellCheckerInterface))
-
-struct _WebKitSpellCheckerInterface {
- GTypeInterface g_iface;
-
- void (*check_spelling_of_string) (WebKitSpellChecker* checker, const char* string, int* misspelling_location, int* misspelling_length);
- char** (*get_guesses_for_word) (WebKitSpellChecker* checker, const char* word, const char* context);
- void (*update_spell_checking_languages) (WebKitSpellChecker* checker, const char* languages);
- char* (*get_autocorrect_suggestions_for_misspelled_word) (WebKitSpellChecker* checker, const char* word);
- void (*learn_word) (WebKitSpellChecker* checker, const char* word);
- void (*ignore_word) (WebKitSpellChecker* checker, const char* word);
-};
-
-WEBKIT_API GType webkit_spell_checker_get_type (void) G_GNUC_CONST;
-
-WEBKIT_API void webkit_spell_checker_check_spelling_of_string (WebKitSpellChecker *checker,
- const char *string,
- int *misspelling_location,
- int *misspelling_length);
-
-WEBKIT_API char** webkit_spell_checker_get_guesses_for_word (WebKitSpellChecker *checker,
- const char *word,
- const char *context);
-
-WEBKIT_API void webkit_spell_checker_update_spell_checking_languages (WebKitSpellChecker *checker,
- const char *languages);
-
-WEBKIT_API char* webkit_spell_checker_get_autocorrect_suggestions_for_misspelled_word (WebKitSpellChecker *checker,
- const char *word);
-
-WEBKIT_API void webkit_spell_checker_learn_word (WebKitSpellChecker *checker,
- const char *word);
-
-WEBKIT_API void webkit_spell_checker_ignore_word (WebKitSpellChecker *checker,
- const char *word);
-
-G_END_DECLS
-
-#endif
-
diff --git a/Source/WebKit/gtk/webkit/webkitspellcheckerenchant.cpp b/Source/WebKit/gtk/webkit/webkitspellcheckerenchant.cpp
deleted file mode 100644
index e46140846..000000000
--- a/Source/WebKit/gtk/webkit/webkitspellcheckerenchant.cpp
+++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Copyright (C) 2011 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "webkitspellcheckerenchant.h"
-
-#if ENABLE(SPELLCHECK)
-
-#include "TextCheckerEnchant.h"
-#include "webkitspellchecker.h"
-#include <gtk/gtk.h>
-#include <wtf/OwnPtr.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/text/CString.h>
-
-using namespace WebCore;
-
-/**
- * SECTION:webkitspellcheckerenchant
- * @short_description: the default spell checking implementation for WebKitGTK+.
- *
- * #WebKitSpellCheckerEnchant is the default spell checking implementation for
- * WebKitGTK+. It uses the Enchant dictionaries installed on the system to
- * correct spelling.
- */
-
-struct _WebKitSpellCheckerEnchantPrivate {
- OwnPtr<TextCheckerEnchant> textCheckerEnchant;
-};
-
-static void webkit_spell_checker_enchant_spell_checker_interface_init(WebKitSpellCheckerInterface* checkerInterface);
-
-G_DEFINE_TYPE_WITH_CODE(WebKitSpellCheckerEnchant, webkit_spell_checker_enchant, G_TYPE_OBJECT,
- G_IMPLEMENT_INTERFACE(WEBKIT_TYPE_SPELL_CHECKER,
- webkit_spell_checker_enchant_spell_checker_interface_init))
-
-static void webkit_spell_checker_enchant_finalize(GObject* object)
-{
- WebKitSpellCheckerEnchantPrivate* priv = WEBKIT_SPELL_CHECKER_ENCHANT(object)->priv;
- priv->~WebKitSpellCheckerEnchantPrivate();
-}
-
-static void webkit_spell_checker_enchant_class_init(WebKitSpellCheckerEnchantClass* klass)
-{
- GObjectClass* objectClass = G_OBJECT_CLASS(klass);
- objectClass->finalize = webkit_spell_checker_enchant_finalize;
- g_type_class_add_private(klass, sizeof(WebKitSpellCheckerEnchantPrivate));
-}
-
-static void webkit_spell_checker_enchant_init(WebKitSpellCheckerEnchant* checker)
-{
- WebKitSpellCheckerEnchantPrivate* priv = G_TYPE_INSTANCE_GET_PRIVATE(checker, WEBKIT_TYPE_SPELL_CHECKER_ENCHANT, WebKitSpellCheckerEnchantPrivate);
- checker->priv = priv;
- new (priv) WebKitSpellCheckerEnchantPrivate();
-
- priv->textCheckerEnchant = TextCheckerEnchant::create();
-}
-
-static void checkSpellingOfString(WebKitSpellChecker* checker, const char* string, int* misspellingLocation, int* misspellingLength)
-{
- WebKitSpellCheckerEnchantPrivate* priv = WEBKIT_SPELL_CHECKER_ENCHANT(checker)->priv;
- priv->textCheckerEnchant->checkSpellingOfString(String::fromUTF8(string), *misspellingLocation, *misspellingLength);
-}
-
-static char** getGuessesForWord(WebKitSpellChecker* checker, const char* word, const char* context)
-{
- WebKitSpellCheckerEnchantPrivate* priv = WEBKIT_SPELL_CHECKER_ENCHANT(checker)->priv;
-
- Vector<String> guesses = priv->textCheckerEnchant->getGuessesForWord(String::fromUTF8(word));
-
- if (guesses.isEmpty())
- return 0;
-
- int i = 0;
- int numberOfGuesses = guesses.size();
- char** guessesArray = static_cast<char**>(g_malloc0((numberOfGuesses + 1) * sizeof(char*)));
- for (Vector<String>::const_iterator iter = guesses.begin(); iter != guesses.end(); ++iter)
- guessesArray[i++] = g_strdup(iter->utf8().data());
- guessesArray[i] = 0;
-
- return guessesArray;
-}
-
-static void updateSpellCheckingLanguages(WebKitSpellChecker* checker, const char* languages)
-{
- WebKitSpellCheckerEnchantPrivate* priv = WEBKIT_SPELL_CHECKER_ENCHANT(checker)->priv;
-
- Vector<String> languagesVector;
- String::fromUTF8(languages).split(static_cast<UChar>(','), languagesVector);
- priv->textCheckerEnchant->updateSpellCheckingLanguages(languagesVector);
-}
-
-static char* getAutocorrectSuggestionsForMisspelledWord(WebKitSpellChecker* checker, const char* word)
-{
- return 0;
-}
-
-static void learnWord(WebKitSpellChecker* checker, const char* word)
-{
- WebKitSpellCheckerEnchantPrivate* priv = WEBKIT_SPELL_CHECKER_ENCHANT(checker)->priv;
- priv->textCheckerEnchant->learnWord(String::fromUTF8(word));
-}
-
-static void ignoreWord(WebKitSpellChecker* checker, const char* word)
-{
- WebKitSpellCheckerEnchantPrivate* priv = WEBKIT_SPELL_CHECKER_ENCHANT(checker)->priv;
- priv->textCheckerEnchant->ignoreWord(String::fromUTF8(word));
-}
-
-static void webkit_spell_checker_enchant_spell_checker_interface_init(WebKitSpellCheckerInterface* checkerInterface)
-{
- checkerInterface->check_spelling_of_string = checkSpellingOfString;
- checkerInterface->get_guesses_for_word = getGuessesForWord;
- checkerInterface->update_spell_checking_languages = updateSpellCheckingLanguages;
- checkerInterface->get_autocorrect_suggestions_for_misspelled_word = getAutocorrectSuggestionsForMisspelledWord;
- checkerInterface->learn_word = learnWord;
- checkerInterface->ignore_word = ignoreWord;
-}
-
-#endif /* ENABLE(SPELLCHECK) */
-
diff --git a/Source/WebKit/gtk/webkit/webkitspellcheckerenchant.h b/Source/WebKit/gtk/webkit/webkitspellcheckerenchant.h
deleted file mode 100644
index 52e1bcac7..000000000
--- a/Source/WebKit/gtk/webkit/webkitspellcheckerenchant.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (C) 2011 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitspellcheckerenchant_h
-#define webkitspellcheckerenchant_h
-
-#if ENABLE(SPELLCHECK)
-
-#include <glib-object.h>
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_SPELL_CHECKER_ENCHANT (webkit_spell_checker_enchant_get_type())
-#define WEBKIT_SPELL_CHECKER_ENCHANT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_SPELL_CHECKER_ENCHANT, WebKitSpellCheckerEnchant))
-#define WEBKIT_SPELL_CHECKER_ENCHANT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_SPELL_CHECKER_ENCHANT, WebKitSpellCheckerEnchantClass))
-#define WEBKIT_IS_SPELL_CHECKER_ENCHANT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_SPELL_CHECKER_ENCHANT))
-#define WEBKIT_IS_SPELL_CHECKER_ENCHANT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_SPELL_CHECKER_ENCHANT))
-#define WEBKIT_SPELL_CHECKER_ENCHANT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_SPELL_CHECKER_ENCHANT, WebKitSpellCheckerEnchantClass))
-
-typedef struct _WebKitSpellCheckerEnchant WebKitSpellCheckerEnchant;
-typedef struct _WebKitSpellCheckerEnchantClass WebKitSpellCheckerEnchantClass;
-typedef struct _WebKitSpellCheckerEnchantPrivate WebKitSpellCheckerEnchantPrivate;
-
-struct _WebKitSpellCheckerEnchant {
- GObject parent_instance;
-
- /*< private >*/
- WebKitSpellCheckerEnchantPrivate *priv;
-};
-
-struct _WebKitSpellCheckerEnchantClass {
- GObjectClass parent_class;
-};
-
-WEBKIT_API GType webkit_spell_checker_enchant_get_type(void);
-
-G_END_DECLS
-
-#endif /* ENABLE(SPELLCHECK) */
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitversion.cpp b/Source/WebKit/gtk/webkit/webkitversion.cpp
deleted file mode 100644
index 62750f515..000000000
--- a/Source/WebKit/gtk/webkit/webkitversion.cpp
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (C) 2008 Christian Dywan <christian@imendio.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitversion.h"
-
-/**
- * webkit_major_version:
- *
- * The major version number of the WebKit that is linked against.
- *
- * Return value: The major version
- *
- * Since: 1.0.1
- */
-guint webkit_major_version()
-{
- return WEBKIT_MAJOR_VERSION;
-}
-
-/**
- * webkit_minor_version:
- *
- * The minor version number of the WebKit that is linked against.
- *
- * Return value: The minor version
- *
- * Since: 1.0.1
- */
-guint webkit_minor_version()
-{
- return WEBKIT_MINOR_VERSION;
-}
-
-/**
- * webkit_micro_version:
- *
- * The micro version number of the WebKit that is linked against.
- *
- * Return value: The micro version
- *
- * Since: 1.0.1
- */
-guint webkit_micro_version()
-{
- return WEBKIT_MICRO_VERSION;
-}
diff --git a/Source/WebKit/gtk/webkit/webkitversion.h.in b/Source/WebKit/gtk/webkit/webkitversion.h.in
deleted file mode 100644
index 4d63655c3..000000000
--- a/Source/WebKit/gtk/webkit/webkitversion.h.in
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright (C) 2008 Christian Dywan <christian@imendio.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitversion_h
-#define webkitversion_h
-
-#include <glib.h>
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_MAJOR_VERSION (@WEBKIT_MAJOR_VERSION@)
-#define WEBKIT_MINOR_VERSION (@WEBKIT_MINOR_VERSION@)
-#define WEBKIT_MICRO_VERSION (@WEBKIT_MICRO_VERSION@)
-#define WEBKIT_USER_AGENT_MAJOR_VERSION (@WEBKIT_USER_AGENT_MAJOR_VERSION@)
-#define WEBKIT_USER_AGENT_MINOR_VERSION (@WEBKIT_USER_AGENT_MINOR_VERSION@)
-
-/**
- * WEBKITGTK_API_VERSION: (skip)
- */
-#define WEBKITGTK_API_VERSION (@WEBKITGTK_API_VERSION@)
-
-#define WEBKIT_CHECK_VERSION(major, minor, micro) \
- (WEBKIT_MAJOR_VERSION > (major) || \
- (WEBKIT_MAJOR_VERSION == (major) && WEBKIT_MINOR_VERSION > (minor)) || \
- (WEBKIT_MAJOR_VERSION == (major) && WEBKIT_MINOR_VERSION == (minor) && \
- WEBKIT_MICRO_VERSION >= (micro)))
-
-WEBKIT_API guint
-webkit_major_version (void);
-
-WEBKIT_API guint
-webkit_minor_version (void);
-
-WEBKIT_API guint
-webkit_micro_version (void);
-
-WEBKIT_API gboolean
-webkit_check_version (guint major, guint minor, guint micro);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitviewportattributes.cpp b/Source/WebKit/gtk/webkit/webkitviewportattributes.cpp
deleted file mode 100644
index 97724668c..000000000
--- a/Source/WebKit/gtk/webkit/webkitviewportattributes.cpp
+++ /dev/null
@@ -1,574 +0,0 @@
-/*
- * Copyright (C) 2010 Joone Hur <joone@kldp.org>
- * Copyright (C) 2010 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitviewportattributes.h"
-
-#include "Chrome.h"
-#include "Document.h"
-#include "Frame.h"
-#include "Page.h"
-#include "webkitglobalsprivate.h"
-#include "webkitviewportattributesprivate.h"
-#include "webkitwebviewprivate.h"
-#include <glib/gi18n-lib.h>
-
-/**
- * SECTION:webkitviewportattributes
- * @short_description: Represents the viewport properties of a web page
- * @see_also: #WebKitWebView::viewport-attributes-recompute-requested, #WebKitWebView::viewport-attributes-changed
- *
- * #WebKitViewportAttributes offers the viewport properties to user agents to
- * control the viewport layout. It contains the viewport size, initial scale with limits,
- * and information about whether a user is able to scale the contents in the viewport.
- * This makes a web page fit the device screen.
- *
- * The #WebKitWebView::viewport-attributes-changed signal will be emitted with #WebKitViewportAttributes
- * when the viewport attributes are updated in the case of loading web pages contain
- * the viewport properties and calling webkit_viewport_attributes_recompute.
- *
- * If the device size, available size, desktop width, or device DPI needs to be changed due to
- * a consequence of an explicit browser request (caused by screen rotation, resizing, or similar reasons),
- * You should call #webkit_viewport_attributes_recompute to recompute the viewport properties and
- * override those values in the handler of #WebKitWebView::viewport-attributes-recompute-requested signal.
- *
- * For more information on the viewport properties, refer to the Safari reference library at
- * http://developer.apple.com/safari/library/documentation/appleapplications/reference/safarihtmlref/articles/metatags.html
- *
- * <informalexample><programlisting>
- * /<!-- -->* Connect to the viewport-attributes-changes signal *<!-- -->/
- * WebKitViewportAttributes* attributes = webkit_web_view_get_viewport_attributes (web_view);
- * g_signal_connect (web_view, "viewport-attributes-recompute-requested", G_CALLBACK (viewport_recompute_cb), window);
- * g_signal_connect (web_view, "viewport-attributes-changed", G_CALLBACK (viewport_changed_cb), window);
- * g_signal_connect (attributes, "notify::valid", G_CALLBACK (viewport_valid_changed_cb), web_view);
- *
- * /<!-- -->* Handle the viewport-attributes-recompute-requested signal to override the device width *<!-- -->/
- * static void
- * viewport_recompute_cb (WebKitWebView* web_view, WebKitViewportAttributes* attributes, GtkWidget* window)
- * {
- * int override_available_width = 480;
- * g_object_set (G_OBJECT(attributes), "available-width", override_available_width, NULL);
- * }
- *
- * /<!-- -->* Handle the viewport-attributes-changed signal to recompute the initial scale factor *<!-- -->/
- * static void
- * viewport_changed_cb (WebKitWebView* web_view, WebKitViewportAttributes* attributes, gpointer data)
- * {
- * gfloat initialScale;
- * g_object_get (G_OBJECT (atributes), "initial-scale-factor", &initialScale, NULL);
- * webkit_web_view_set_zoom_level (web_view, initialScale);
- * }
- *
- * /<!-- -->* Handle the notify::valid signal to initialize the zoom level *<!-- -->/
- * static void
- * viewport_valid_changed_cb (WebKitViewportAttributes* attributes, GParamSpec* pspec, WebKitWebView* web_view)
- * {
- * gboolean is_valid;
- * g_object_get (attributes, "valid", &is_valid, NULL);
- * if (!is_valid)
- * webkit_web_view_set_zoom_level (web_view, 1.0);
- * }
- * </programlisting></informalexample>
- */
-
-using namespace WebKit;
-using namespace WebCore;
-
-enum {
- PROP_0,
-
- PROP_DEVICE_WIDTH,
- PROP_DEVICE_HEIGHT,
- PROP_AVAILABLE_WIDTH,
- PROP_AVAILABLE_HEIGHT,
- PROP_DESKTOP_WIDTH,
- PROP_DEVICE_DPI,
- PROP_WIDTH,
- PROP_HEIGHT,
- PROP_INITIAL_SCALE_FACTOR,
- PROP_MINIMUM_SCALE_FACTOR,
- PROP_MAXIMUM_SCALE_FACTOR,
- PROP_DEVICE_PIXEL_RATIO,
- PROP_USER_SCALABLE,
- PROP_VALID
-};
-
-G_DEFINE_TYPE(WebKitViewportAttributes, webkit_viewport_attributes, G_TYPE_OBJECT);
-
-static void webkit_viewport_attributes_get_property(GObject* object, guint propertyID, GValue* value, GParamSpec* paramSpec);
-static void webkit_viewport_attributes_set_property(GObject* object, guint propertyID, const GValue* value, GParamSpec* paramSpec);
-
-static void webkit_viewport_attributes_class_init(WebKitViewportAttributesClass* kclass)
-{
- GObjectClass* gobjectClass = G_OBJECT_CLASS(kclass);
- gobjectClass->get_property = webkit_viewport_attributes_get_property;
- gobjectClass->set_property = webkit_viewport_attributes_set_property;
-
- /**
- * WebKitViewportAttributs:device-width:
- *
- * The width of the screen. This value is always automatically
- * pre-computed during a viewport attributes recomputation, and
- * can be overridden by the handler of
- * WebKitWebView::viewport-attributes-recompute-requested. You
- * should not do that unless you have a very good reason.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_DEVICE_WIDTH,
- g_param_spec_int(
- "device-width",
- _("Device Width"),
- _("The width of the screen."),
- 0,
- G_MAXINT,
- 0,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitViewportAttributs:device-height:
- *
- * The height of the screen. This value is always automatically
- * pre-computed during a viewport attributes recomputation, and
- * can be overriden by the handler of
- * WebKitWebView::viewport-attributes-recompute-requested. You
- * should not do that unless you have a very good reason.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_DEVICE_HEIGHT,
- g_param_spec_int(
- "device-height",
- _("Device Height"),
- _("The height of the screen."),
- 0,
- G_MAXINT,
- 0,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitViewportAttributs:available-width:
- *
- * The width of the current visible area. This will usually be the
- * same as the space allocated to the widget, but in some cases
- * you may have decided to make the widget bigger than the visible
- * area. This value is by default initialized to the size
- * allocated by the widget, but you can override it in the handler
- * of WebKitWebView::viewport-attributes-recompute-requested to
- * let the engine know what the visible area is.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_AVAILABLE_WIDTH,
- g_param_spec_int(
- "available-width",
- _("Available Width"),
- _("The width of the visible area."),
- 0,
- G_MAXINT,
- 0,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitViewportAttributs:available-height:
- *
- * The height of the current visible area. This will usually be the
- * same as the space allocated to the widget, but in some cases
- * you may have decided to make the widget bigger than the visible
- * area. This value is by default initialized to the size
- * allocated by the widget, but you can override it in the handler
- * of WebKitWebView::viewport-attributes-recompute-requested to
- * let the engine know what the visible area is.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_AVAILABLE_HEIGHT,
- g_param_spec_int(
- "available-height",
- _("Available Height"),
- _("The height of the visible area."),
- 0,
- G_MAXINT,
- 0,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitViewportAttributs:desktop-width:
- *
- * The width of viewport that works well for most web pages designed for
- * desktop. This value is initialized to 980 pixels by default and used
- * during a viewport attributes recomputation. Also, it can be overriden by
- * the handler of WebKitWebView::viewport-attributes-recompute-requested.
- * You should not do that unless you have a very good reason.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_DESKTOP_WIDTH,
- g_param_spec_int(
- "desktop-width",
- _("Desktop Width"),
- _("The width of viewport that works well for most web pages designed for desktop."),
- 0,
- G_MAXINT,
- 980,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitViewportAttributs:device-dpi:
- *
- * The number of dots per inch of the screen. This value is
- * initialized to 160 dpi by default and used during a viewport
- * attributes recomputation, because it is the dpi of the original
- * iPhone and Android devices. Also, it can be overriden by the
- * handler of WebKitWebView::viewport-attributes-recompute-requested.
- * You should not do that unless you have a very good reason.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_DEVICE_DPI,
- g_param_spec_int(
- "device-dpi",
- _("Device DPI"),
- _("The number of dots per inch of the screen."),
- 0,
- G_MAXINT,
- 160,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitViewportAttributs:width:
- *
- * The width of the viewport. Before getting this property,
- * you need to make sure that #WebKitViewportAttributes is valid.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_WIDTH,
- g_param_spec_int(
- "width",
- _("Width"),
- _("The width of the viewport."),
- 0,
- G_MAXINT,
- 0,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitViewportAttributs:height:
- *
- * The height of the viewport. Before getting this property,
- * you need to make sure that #WebKitViewportAttributes is valid.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_HEIGHT,
- g_param_spec_int(
- "height",
- _("Height"),
- _("The height of the viewport."),
- 0,
- G_MAXINT,
- 0,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitViewportAttributs:initial-scale-factor:
- *
- * The initial scale of the viewport. Before getting this property,
- * you need to make sure that #WebKitViewportAttributes is valid.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_INITIAL_SCALE_FACTOR,
- g_param_spec_float(
- "initial-scale-factor",
- _("Initial Scale Factor"),
- _("The initial scale of the viewport."),
- -1,
- G_MAXFLOAT,
- -1,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitViewportAttributs:minimum-scale-factor:
- *
- * The minimum scale of the viewport. Before getting this property,
- * you need to make sure that #WebKitViewportAttributes is valid.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_MINIMUM_SCALE_FACTOR,
- g_param_spec_float(
- "minimum-scale-factor",
- _("Minimum Scale Factor"),
- _("The minimum scale of the viewport."),
- -1,
- G_MAXFLOAT,
- -1,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitViewportAttributs:maximum-scale-factor:
- *
- * The maximum scale of the viewport. Before getting this property,
- * you need to make sure that #WebKitViewportAttributes is valid.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_MAXIMUM_SCALE_FACTOR,
- g_param_spec_float(
- "maximum-scale-factor",
- _("Maximum Scale Factor"),
- _("The maximum scale of the viewport."),
- -1,
- G_MAXFLOAT,
- -1,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitViewportAttributs:device-pixel-ratio:
- *
- * The device pixel ratio of the viewport. Before getting this property,
- * you need to make sure that #WebKitViewportAttributes is valid.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_DEVICE_PIXEL_RATIO,
- g_param_spec_float(
- "device-pixel-ratio",
- _("Device Pixel Ratio"),
- _("The device pixel ratio of the viewport."),
- -1,
- G_MAXFLOAT,
- -1,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitViewportAttributs:user-scalable:
- *
- * Determines whether or not the user can zoom in and out.
- * Before getting this property, you need to make sure that
- * #WebKitViewportAttributes is valid.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_USER_SCALABLE,
- g_param_spec_boolean(
- "user-scalable",
- _("User Scalable"),
- _("Determines whether or not the user can zoom in and out."),
- TRUE,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitViewportAttributs:valid:
- *
- * Determines whether or not the attributes are valid.
- * #WebKitViewportAttributes are only valid on pages
- * which have a viewport meta tag, and have already
- * had the attributes calculated.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(gobjectClass,
- PROP_VALID,
- g_param_spec_boolean(
- "valid",
- _("Valid"),
- _("Determines whether or not the attributes are valid, and can be used."),
- FALSE,
- WEBKIT_PARAM_READABLE));
-
- g_type_class_add_private(kclass, sizeof(WebKitViewportAttributesPrivate));
-}
-
-static void webkit_viewport_attributes_init(WebKitViewportAttributes* viewport)
-{
- viewport->priv = G_TYPE_INSTANCE_GET_PRIVATE(viewport, WEBKIT_TYPE_VIEWPORT_ATTRIBUTES, WebKitViewportAttributesPrivate);
-
- viewport->priv->deviceWidth = 0;
- viewport->priv->deviceHeight = 0;
- viewport->priv->availableWidth = 0;
- viewport->priv->availableHeight = 0;
- viewport->priv->desktopWidth = 980; // This value works well for most web pages designed for desktop browsers.
- viewport->priv->deviceDPI = 160; // It is the dpi of the original iPhone and Android devices.
- viewport->priv->width = 0;
- viewport->priv->height = 0;
- viewport->priv->initialScaleFactor = -1;
- viewport->priv->minimumScaleFactor = -1;
- viewport->priv->maximumScaleFactor = -1;
- viewport->priv->devicePixelRatio = -1;
- viewport->priv->userScalable = TRUE;
- viewport->priv->isValid = FALSE;
-}
-
-static void webkit_viewport_attributes_get_property(GObject* object, guint propertyID, GValue* value, GParamSpec* paramSpec)
-{
- WebKitViewportAttributes* viewportAttributes = WEBKIT_VIEWPORT_ATTRIBUTES(object);
- WebKitViewportAttributesPrivate* priv = viewportAttributes->priv;
-
- switch (propertyID) {
- case PROP_DEVICE_WIDTH:
- g_value_set_int(value, priv->deviceWidth);
- break;
- case PROP_DEVICE_HEIGHT:
- g_value_set_int(value, priv->deviceHeight);
- break;
- case PROP_AVAILABLE_WIDTH:
- g_value_set_int(value, priv->availableWidth);
- break;
- case PROP_AVAILABLE_HEIGHT:
- g_value_set_int(value, priv->availableHeight);
- break;
- case PROP_DESKTOP_WIDTH:
- g_value_set_int(value, priv->desktopWidth);
- break;
- case PROP_DEVICE_DPI:
- g_value_set_int(value, priv->deviceDPI);
- break;
- case PROP_WIDTH:
- g_value_set_int(value, priv->width);
- break;
- case PROP_HEIGHT:
- g_value_set_int(value, priv->height);
- break;
- case PROP_INITIAL_SCALE_FACTOR:
- g_value_set_float(value, priv->initialScaleFactor);
- break;
- case PROP_MINIMUM_SCALE_FACTOR:
- g_value_set_float(value, priv->minimumScaleFactor);
- break;
- case PROP_MAXIMUM_SCALE_FACTOR:
- g_value_set_float(value, priv->maximumScaleFactor);
- break;
- case PROP_DEVICE_PIXEL_RATIO:
- g_value_set_float(value, priv->devicePixelRatio);
- break;
- case PROP_USER_SCALABLE:
- g_value_set_boolean(value, priv->userScalable);
- break;
- case PROP_VALID:
- g_value_set_boolean(value, priv->isValid);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, paramSpec);
- break;
- }
-}
-
-static void webkit_viewport_attributes_set_property(GObject* object, guint propertyID, const GValue* value, GParamSpec* paramSpec)
-{
- WebKitViewportAttributes* viewportAttributes = WEBKIT_VIEWPORT_ATTRIBUTES(object);
- WebKitViewportAttributesPrivate* priv = viewportAttributes->priv;
-
- switch (propertyID) {
- case PROP_DEVICE_WIDTH:
- priv->deviceWidth = g_value_get_int(value);
- break;
- case PROP_DEVICE_HEIGHT:
- priv->deviceHeight = g_value_get_int(value);
- break;
- case PROP_AVAILABLE_WIDTH:
- priv->availableWidth = g_value_get_int(value);
- break;
- case PROP_AVAILABLE_HEIGHT:
- priv->availableHeight = g_value_get_int(value);
- break;
- case PROP_DESKTOP_WIDTH:
- priv->desktopWidth = g_value_get_int(value);
- break;
- case PROP_DEVICE_DPI:
- priv->deviceDPI = g_value_get_int(value);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyID, paramSpec);
- break;
- }
-}
-
-void webkitViewportAttributesRecompute(WebKitViewportAttributes* viewportAttributes)
-{
- WebKitViewportAttributesPrivate* priv = viewportAttributes->priv;
- WebKitWebView* webView = priv->webView;
-
- IntRect windowRect(webView->priv->corePage->chrome().windowRect());
- priv->deviceWidth = windowRect.width();
- priv->deviceHeight = windowRect.height();
-
- IntRect rect(webView->priv->corePage->chrome().pageRect());
- priv->availableWidth = rect.width();
- priv->availableHeight = rect.height();
-
- // First of all, we give the application an opportunity to override some of the values.
- g_signal_emit_by_name(webView, "viewport-attributes-recompute-requested", viewportAttributes);
-
- ViewportArguments arguments = webView->priv->corePage->mainFrame()->document()->viewportArguments();
-
- float devicePixelRatio = priv->deviceDPI / ViewportArguments::deprecatedTargetDPI;
- ViewportAttributes attributes = computeViewportAttributes(arguments, priv->desktopWidth, priv->deviceWidth, priv->deviceHeight, devicePixelRatio, IntSize(priv->availableWidth, priv->availableHeight));
- restrictMinimumScaleFactorToViewportSize(attributes, IntSize(priv->availableWidth, priv->availableHeight), devicePixelRatio);
- restrictScaleFactorToInitialScaleIfNotUserScalable(attributes);
-
- priv->width = attributes.layoutSize.width();
- priv->height = attributes.layoutSize.height();
- priv->initialScaleFactor = attributes.initialScale;
- priv->minimumScaleFactor = attributes.minimumScale;
- priv->maximumScaleFactor = attributes.maximumScale;
- priv->devicePixelRatio = devicePixelRatio;
- priv->userScalable = static_cast<bool>(arguments.userZoom);
-
- if (!priv->isValid) {
- priv->isValid = TRUE;
- g_object_notify(G_OBJECT(viewportAttributes), "valid");
- }
-
- // Now let the application know it is safe to use the new values.
- g_signal_emit_by_name(webView, "viewport-attributes-changed", viewportAttributes);
-}
-
-/**
- * webkit_viewport_attributes_recompute:
- * @viewportAttributes: a #WebKitViewportAttributes
- *
- * Recompute the optimal viewport attributes and emit the viewport-attribute-changed signal.
- * The viewport-attributes-recompute-requested signal also will be handled to override
- * the device size, available size, desktop width, or device DPI.
- *
- * Since: 1.3.8
- */
-void webkit_viewport_attributes_recompute(WebKitViewportAttributes* viewportAttributes)
-{
- if (!viewportAttributes->priv->isValid)
- return;
- webkitViewportAttributesRecompute(viewportAttributes);
-}
diff --git a/Source/WebKit/gtk/webkit/webkitviewportattributes.h b/Source/WebKit/gtk/webkit/webkitviewportattributes.h
deleted file mode 100644
index 7d90c1b6f..000000000
--- a/Source/WebKit/gtk/webkit/webkitviewportattributes.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2010 Joone Hur <joone@kldp.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitviewportattributes_h
-#define webkitviewportattributes_h
-
-#include <glib-object.h>
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_VIEWPORT_ATTRIBUTES (webkit_viewport_attributes_get_type())
-#define WEBKIT_VIEWPORT_ATTRIBUTES(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_VIEWPORT_ATTRIBUTES, WebKitViewportAttributes))
-#define WEBKIT_VIEWPORT_ATTRIBUTES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_VIEWPORT_ATTRIBUTES, WebKitViewportAttributesClass))
-#define WEBKIT_IS_VIEWPORT_ATTRIBUTES(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_VIEWPORT_ATTRIBUTES))
-#define WEBKIT_IS_VIEWPORT_ATTRIBUTES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_VIEWPORT_ATTRIBUTES))
-#define WEBKIT_VIEWPORT_ATTRIBUTES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_VIEWPORT_ATTRIBUTES, WebKitViewportAttributesClass))
-
-typedef struct _WebKitViewportAttributesPrivate WebKitViewportAttributesPrivate;
-
-struct _WebKitViewportAttributes {
- GObject parent_instance;
-
- /*< private >*/
- WebKitViewportAttributesPrivate *priv;
-};
-
-struct _WebKitViewportAttributesClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_viewport_attributes_get_type (void);
-
-WEBKIT_API void
-webkit_viewport_attributes_recompute(WebKitViewportAttributes* viewportAttributes);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitviewportattributesprivate.h b/Source/WebKit/gtk/webkit/webkitviewportattributesprivate.h
deleted file mode 100644
index 11cb66885..000000000
--- a/Source/WebKit/gtk/webkit/webkitviewportattributesprivate.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitviewportattributesprivate_h
-#define webkitnavigationactionprivate_h
-
-#include <webkit/webkitviewportattributes.h>
-
-extern "C" {
-
-struct _WebKitViewportAttributesPrivate {
- WebKitWebView* webView;
- int deviceWidth;
- int deviceHeight;
- int availableWidth;
- int availableHeight;
- int desktopWidth;
- int deviceDPI;
-
- int width;
- int height;
- float initialScaleFactor;
- float minimumScaleFactor;
- float maximumScaleFactor;
- float devicePixelRatio;
- gboolean userScalable;
- gboolean isValid;
-};
-
-
-void webkitViewportAttributesRecompute(WebKitViewportAttributes*);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebbackforwardlist.cpp b/Source/WebKit/gtk/webkit/webkitwebbackforwardlist.cpp
deleted file mode 100644
index d836f6001..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebbackforwardlist.cpp
+++ /dev/null
@@ -1,482 +0,0 @@
-/*
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebbackforwardlist.h"
-
-#include "BackForwardListImpl.h"
-#include "HistoryItem.h"
-#include "Page.h"
-#include "PageGroup.h"
-#include "webkitglobalsprivate.h"
-#include "webkitwebbackforwardlistprivate.h"
-#include "webkitwebhistoryitem.h"
-#include "webkitwebhistoryitemprivate.h"
-#include "webkitwebview.h"
-#include "webkitwebviewprivate.h"
-#include <glib.h>
-
-/**
- * SECTION:webkitwebbackforwardlist
- * @short_description: The history of a #WebKitWebView
- * @see_also: #WebKitWebView, #WebKitWebHistoryItem
- *
- * <informalexample><programlisting>
- * /<!-- -->* Get the WebKitWebBackForwardList from the WebKitWebView *<!-- -->/
- * WebKitWebBackForwardList *back_forward_list = webkit_web_view_get_back_forward_list (my_web_view);
- * WebKitWebHistoryItem *item = webkit_web_back_forward_list_get_current_item (back_forward_list);
- *
- * /<!-- -->* Do something with a WebKitWebHistoryItem *<!-- -->/
- * g_print("%p", item);
- *
- * /<!-- -->* Control some parameters *<!-- -->/
- * WebKitWebBackForwardList *back_forward_list = webkit_web_view_get_back_forward_list (my_web_view);
- * webkit_web_back_forward_list_set_limit (back_forward_list, 30);
- * </programlisting></informalexample>
- *
- */
-
-using namespace WebKit;
-
-struct _WebKitWebBackForwardListPrivate {
- WebCore::BackForwardListImpl* backForwardList;
- gboolean disposed;
-};
-
-G_DEFINE_TYPE(WebKitWebBackForwardList, webkit_web_back_forward_list, G_TYPE_OBJECT);
-
-static void webkit_web_back_forward_list_dispose(GObject* object)
-{
- WebKitWebBackForwardList* list = WEBKIT_WEB_BACK_FORWARD_LIST(object);
- WebCore::BackForwardListImpl* backForwardList = core(list);
- WebKitWebBackForwardListPrivate* priv = list->priv;
-
- if (!priv->disposed) {
- priv->disposed = true;
-
- WebCore::HistoryItemVector items = backForwardList->entries();
- GHashTable* table = webkit_history_items();
- for (unsigned i = 0; i < items.size(); i++)
- g_hash_table_remove(table, items[i].get());
- }
-
- G_OBJECT_CLASS(webkit_web_back_forward_list_parent_class)->dispose(object);
-}
-
-static void webkit_web_back_forward_list_class_init(WebKitWebBackForwardListClass* klass)
-{
- GObjectClass* object_class = G_OBJECT_CLASS(klass);
-
- object_class->dispose = webkit_web_back_forward_list_dispose;
-
- webkitInit();
-
- g_type_class_add_private(klass, sizeof(WebKitWebBackForwardListPrivate));
-}
-
-static void webkit_web_back_forward_list_init(WebKitWebBackForwardList* webBackForwardList)
-{
- webBackForwardList->priv = G_TYPE_INSTANCE_GET_PRIVATE(webBackForwardList, WEBKIT_TYPE_WEB_BACK_FORWARD_LIST, WebKitWebBackForwardListPrivate);
-}
-
-/**
- * webkit_web_back_forward_list_new_with_web_view: (skip)
- * @web_view: the back forward list's #WebKitWebView
- *
- * Creates an instance of the back forward list with a controlling #WebKitWebView
- *
- * Return value: a #WebKitWebBackForwardList
- *
- * Deprecated: 1.3.4: Instances of #WebKitWebBackForwardList are
- * created and owned by #WebKitWebView instances only.
- */
-WebKitWebBackForwardList* webkit_web_back_forward_list_new_with_web_view(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), NULL);
-
- WebKitWebBackForwardList* webBackForwardList;
-
- webBackForwardList = WEBKIT_WEB_BACK_FORWARD_LIST(g_object_new(WEBKIT_TYPE_WEB_BACK_FORWARD_LIST, NULL));
- WebKitWebBackForwardListPrivate* priv = webBackForwardList->priv;
-
- priv->backForwardList = static_cast<WebCore::BackForwardListImpl*>(core(webView)->backForwardList());
- priv->backForwardList->setEnabled(TRUE);
-
- return webBackForwardList;
-}
-
-/**
- * webkit_web_back_forward_list_go_forward:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- *
- * Steps forward in the back forward list
- */
-void webkit_web_back_forward_list_go_forward(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList));
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (backForwardList->enabled())
- backForwardList->goForward();
-}
-
-/**
- * webkit_web_back_forward_list_go_back:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- *
- * Steps backward in the back forward list
- */
-void webkit_web_back_forward_list_go_back(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList));
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (backForwardList->enabled())
- backForwardList->goBack();
-}
-
-/**
- * webkit_web_back_forward_list_contains_item:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- * @history_item: (type WebKit.WebHistoryItem) (transfer none): the #WebKitWebHistoryItem to check
- *
- * Checks if @web_history_item is in the back forward list
- *
- * Return value: %TRUE if @web_history_item is in the back forward list, %FALSE if it doesn't
- */
-gboolean webkit_web_back_forward_list_contains_item(WebKitWebBackForwardList* webBackForwardList, WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), FALSE);
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), FALSE);
-
- WebCore::HistoryItem* historyItem = core(webHistoryItem);
-
- g_return_val_if_fail(historyItem != NULL, FALSE);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
-
- return (backForwardList->enabled() ? backForwardList->containsItem(historyItem) : FALSE);
-}
-
-/**
- * webkit_web_back_forward_list_go_to_item:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- * @history_item: (type WebKit.WebHistoryItem) (transfer none): the #WebKitWebHistoryItem to go to
- *
- * Go to the specified @web_history_item in the back forward list
- */
-void webkit_web_back_forward_list_go_to_item(WebKitWebBackForwardList* webBackForwardList, WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList));
- g_return_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem));
-
- WebCore::HistoryItem* historyItem = core(webHistoryItem);
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
-
- if (backForwardList->enabled() && historyItem)
- backForwardList->goToItem(historyItem);
-}
-
-/**
- * webkit_web_back_forward_list_get_forward_list_with_limit:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- * @limit: the number of items to retrieve
- *
- * Returns a list of items that succeed the current item, limited by @limit
- *
- * Return value: (element-type WebKit.WebHistoryItem) (transfer container): a #GList of items succeeding the current item, limited by @limit
- */
-GList* webkit_web_back_forward_list_get_forward_list_with_limit(WebKitWebBackForwardList* webBackForwardList, gint limit)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), NULL);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList || !backForwardList->enabled())
- return NULL;
-
- WebCore::HistoryItemVector items;
- GList* forwardItems = { 0 };
-
- backForwardList->forwardListWithLimit(limit, items);
-
- for (unsigned i = 0; i < items.size(); i++) {
- WebKitWebHistoryItem* webHistoryItem = kit(items[i]);
- forwardItems = g_list_prepend(forwardItems, webHistoryItem);
- }
-
- return forwardItems;
-}
-
-/**
- * webkit_web_back_forward_list_get_back_list_with_limit:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- * @limit: the number of items to retrieve
- *
- * Returns a list of items that precede the current item, limited by @limit
- *
- * Return value: (element-type WebKit.WebHistoryItem) (transfer container): a #GList of items preceding the current item, limited by @limit
- */
-GList* webkit_web_back_forward_list_get_back_list_with_limit(WebKitWebBackForwardList* webBackForwardList, gint limit)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), NULL);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList || !backForwardList->enabled())
- return NULL;
-
- WebCore::HistoryItemVector items;
- GList* backItems = { 0 };
-
- backForwardList->backListWithLimit(limit, items);
-
- for (unsigned i = 0; i < items.size(); i++) {
- WebKitWebHistoryItem* webHistoryItem = kit(items[i]);
- backItems = g_list_prepend(backItems, webHistoryItem);
- }
-
- return backItems;
-}
-
-/**
- * webkit_web_back_forward_list_get_back_item:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- *
- * Returns the item that precedes the current item
- *
- * Return value: (type WebKit.WebHistoryItem) (transfer none): the #WebKitWebHistoryItem preceding the current item
- */
-WebKitWebHistoryItem* webkit_web_back_forward_list_get_back_item(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), NULL);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList || !backForwardList->enabled())
- return NULL;
-
- WebCore::HistoryItem* historyItem = backForwardList->backItem();
-
- return (historyItem ? kit(historyItem) : NULL);
-}
-
-/**
- * webkit_web_back_forward_list_get_current_item:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- *
- * Returns the current item.
- *
- * Returns a NULL value if the back forward list is empty
- *
- * Return value: (type WebKit.WebHistoryItem) (transfer none): a #WebKitWebHistoryItem
- */
-WebKitWebHistoryItem* webkit_web_back_forward_list_get_current_item(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), NULL);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList || !backForwardList->enabled())
- return NULL;
-
- WebCore::HistoryItem* historyItem = backForwardList->currentItem();
-
- return (historyItem ? kit(historyItem) : NULL);
-}
-
-/**
- * webkit_web_back_forward_list_get_forward_item:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- *
- * Returns the item that succeeds the current item.
- *
- * Returns a NULL value if there nothing that succeeds the current item
- *
- * Return value: (type WebKit.WebHistoryItem) (transfer none): a #WebKitWebHistoryItem
- */
-WebKitWebHistoryItem* webkit_web_back_forward_list_get_forward_item(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), NULL);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList || !backForwardList->enabled())
- return NULL;
-
- WebCore::HistoryItem* historyItem = backForwardList->forwardItem();
-
- return (historyItem ? kit(historyItem) : NULL);
-}
-
-/**
- * webkit_web_back_forward_list_get_nth_item:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- * @index: the index of the item
- *
- * Returns the item at a given index relative to the current item.
- *
- * Return value: (type WebKit.WebHistoryItem) (transfer none): the #WebKitWebHistoryItem located at the specified index relative to the current item
- */
-WebKitWebHistoryItem* webkit_web_back_forward_list_get_nth_item(WebKitWebBackForwardList* webBackForwardList, gint index)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), NULL);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList)
- return NULL;
-
- WebCore::HistoryItem* historyItem = backForwardList->itemAtIndex(index);
-
- return (historyItem ? kit(historyItem) : NULL);
-}
-
-/**
- * webkit_web_back_forward_list_get_back_length:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- *
- * Returns the number of items that preced the current item.
- *
- * Return value: a #gint corresponding to the number of items preceding the current item
- */
-gint webkit_web_back_forward_list_get_back_length(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), 0);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList || !backForwardList->enabled())
- return 0;
-
- return backForwardList->backListCount();
-}
-
-/**
- * webkit_web_back_forward_list_get_forward_length:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- *
- * Returns the number of items that succeed the current item.
- *
- * Return value: a #gint corresponding to the nuber of items succeeding the current item
- */
-gint webkit_web_back_forward_list_get_forward_length(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), 0);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList || !backForwardList->enabled())
- return 0;
-
- return backForwardList->forwardListCount();
-}
-
-/**
- * webkit_web_back_forward_list_get_limit:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- *
- * Returns the maximum limit of the back forward list.
- *
- * Return value: a #gint indicating the number of #WebKitWebHistoryItem the back forward list can hold
- */
-gint webkit_web_back_forward_list_get_limit(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), 0);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList || !backForwardList->enabled())
- return 0;
-
- return backForwardList->capacity();
-}
-
-/**
- * webkit_web_back_forward_list_set_limit:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- * @limit: the limit to set the back forward list to
- *
- * Sets the maximum limit of the back forward list. If the back forward list
- * exceeds its capacity, items will be removed everytime a new item has been
- * added.
- */
-void webkit_web_back_forward_list_set_limit(WebKitWebBackForwardList* webBackForwardList, gint limit)
-{
- g_return_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList));
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (backForwardList)
- backForwardList->setCapacity(limit);
-}
-
-/**
- * webkit_web_back_forward_list_add_item:
- * @web_back_forward_list: a #WebKitWebBackForwardList
- * @history_item: (type WebKit.WebHistoryItem) (transfer none): the #WebKitWebHistoryItem to add
- *
- * Adds the item to the #WebKitWebBackForwardList.
- *
- * The @webBackForwardList will add a reference to the @webHistoryItem, so you
- * don't need to keep a reference once you've added it to the list.
- *
- * Since: 1.1.1
- */
-void webkit_web_back_forward_list_add_item(WebKitWebBackForwardList *webBackForwardList, WebKitWebHistoryItem *webHistoryItem)
-{
- g_return_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList));
-
- g_object_ref(webHistoryItem);
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- WebCore::HistoryItem* historyItem = core(webHistoryItem);
-
- backForwardList->addItem(historyItem);
-}
-
-/**
- * webkit_web_back_forward_list_clear:
- * @web_back_forward_list: the #WebKitWebBackForwardList to be cleared
- *
- * Clears the @webBackForwardList by removing all its elements. Note that not even
- * the current page is kept in list when cleared so you would have to add it later.
- * This method also clears the list of visited links which means that all links will
- * appear unvisited.
- *
- * Since: 1.3.1
- **/
-void webkit_web_back_forward_list_clear(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList));
-
- WebCore::BackForwardListImpl* backForwardList = core(webBackForwardList);
- if (!backForwardList)
- return;
-
- WebCore::Page* page = backForwardList->page();
- if (page && page->groupPtr())
- page->groupPtr()->removeVisitedLinks();
-
- if (!backForwardList->enabled() || !backForwardList->entries().size())
- return;
-
- // Clear the current list by setting capacity to 0
- int capacity = backForwardList->capacity();
- backForwardList->setCapacity(0);
- backForwardList->setCapacity(capacity);
-}
-
-WebCore::BackForwardListImpl* WebKit::core(WebKitWebBackForwardList* webBackForwardList)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_BACK_FORWARD_LIST(webBackForwardList), NULL);
-
- return webBackForwardList->priv ? webBackForwardList->priv->backForwardList : 0;
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebbackforwardlist.h b/Source/WebKit/gtk/webkit/webkitwebbackforwardlist.h
deleted file mode 100644
index c3e56c937..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebbackforwardlist.h
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Copyright (C) 2008 Jan Michael C. Alonzo <jmalonzo@unpluggable.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebbackforwardlist_h
-#define webkitwebbackforwardlist_h
-
-#include <glib.h>
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-#include <webkit/webkitwebhistoryitem.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_BACK_FORWARD_LIST (webkit_web_back_forward_list_get_type())
-#define WEBKIT_WEB_BACK_FORWARD_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_BACK_FORWARD_LIST, WebKitWebBackForwardList))
-#define WEBKIT_WEB_BACK_FORWARD_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_BACK_FORWARD_LIST, WebKitWebBackForwardListClass))
-#define WEBKIT_IS_WEB_BACK_FORWARD_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_BACK_FORWARD_LIST))
-#define WEBKIT_IS_WEB_BACK_FORWARD_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_BACK_FORWARD_LIST))
-#define WEBKIT_WEB_BACK_FORWARD_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_BACK_FORWARD_LIST, WebKitWebBackForwardListClass))
-
-typedef struct _WebKitWebBackForwardListPrivate WebKitWebBackForwardListPrivate;
-
-struct _WebKitWebBackForwardList {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebBackForwardListPrivate *priv;
-};
-
-struct _WebKitWebBackForwardListClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_web_back_forward_list_get_type (void);
-
-#if !defined(WEBKIT_DISABLE_DEPRECATED)
-WEBKIT_API WebKitWebBackForwardList *
-webkit_web_back_forward_list_new_with_web_view (WebKitWebView *web_view);
-#endif
-
-WEBKIT_API void
-webkit_web_back_forward_list_go_forward (WebKitWebBackForwardList *web_back_forward_list);
-
-WEBKIT_API void
-webkit_web_back_forward_list_go_back (WebKitWebBackForwardList *web_back_forward_list);
-
-WEBKIT_API gboolean
-webkit_web_back_forward_list_contains_item (WebKitWebBackForwardList *web_back_forward_list,
- WebKitWebHistoryItem *history_item);
-
-WEBKIT_API void
-webkit_web_back_forward_list_go_to_item (WebKitWebBackForwardList *web_back_forward_list,
- WebKitWebHistoryItem *history_item);
-
-WEBKIT_API GList *
-webkit_web_back_forward_list_get_forward_list_with_limit (WebKitWebBackForwardList *web_back_forward_list,
- gint limit);
-
-WEBKIT_API GList *
-webkit_web_back_forward_list_get_back_list_with_limit (WebKitWebBackForwardList *web_back_forward_list,
- gint limit);
-
-WEBKIT_API WebKitWebHistoryItem *
-webkit_web_back_forward_list_get_back_item (WebKitWebBackForwardList *web_back_forward_list);
-
-WEBKIT_API WebKitWebHistoryItem *
-webkit_web_back_forward_list_get_current_item (WebKitWebBackForwardList *web_back_forward_list);
-
-WEBKIT_API WebKitWebHistoryItem *
-webkit_web_back_forward_list_get_forward_item (WebKitWebBackForwardList *web_back_forward_list);
-
-WEBKIT_API WebKitWebHistoryItem *
-webkit_web_back_forward_list_get_nth_item (WebKitWebBackForwardList *web_back_forward_list,
- gint index);
-
-WEBKIT_API gint
-webkit_web_back_forward_list_get_back_length (WebKitWebBackForwardList *web_back_forward_list);
-
-WEBKIT_API gint
-webkit_web_back_forward_list_get_forward_length (WebKitWebBackForwardList *web_back_forward_list);
-
-WEBKIT_API gint
-webkit_web_back_forward_list_get_limit (WebKitWebBackForwardList *web_back_forward_list);
-
-WEBKIT_API void
-webkit_web_back_forward_list_set_limit (WebKitWebBackForwardList *web_back_forward_list,
- gint limit);
-
-WEBKIT_API void
-webkit_web_back_forward_list_add_item (WebKitWebBackForwardList *web_back_forward_list,
- WebKitWebHistoryItem *history_item);
-
-WEBKIT_API void
-webkit_web_back_forward_list_clear (WebKitWebBackForwardList *web_back_forward_list);
-
-G_END_DECLS
-
-
-#endif /* webkitwebbackforwardlist_h */
diff --git a/Source/WebKit/gtk/webkit/webkitwebbackforwardlistprivate.h b/Source/WebKit/gtk/webkit/webkitwebbackforwardlistprivate.h
deleted file mode 100644
index 79424c083..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebbackforwardlistprivate.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebbackforwardlistprivate_h
-#define webkitwebbackforwardlistprivate_h
-
-#include "BackForwardListImpl.h"
-
-namespace WebKit {
-
-WebCore::BackForwardListImpl* core(WebKitWebBackForwardList*);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebdatabase.cpp b/Source/WebKit/gtk/webkit/webkitwebdatabase.cpp
deleted file mode 100644
index 8d2f17f05..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebdatabase.cpp
+++ /dev/null
@@ -1,525 +0,0 @@
-/*
- * Copyright (C) 2009 Martin Robinson
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebdatabase.h"
-
-#include "DatabaseDetails.h"
-#include "DatabaseManager.h"
-#include "FileSystem.h"
-#include "GroupSettings.h"
-#include "PageGroup.h"
-#include "webkitglobalsprivate.h"
-#include "webkitsecurityoriginprivate.h"
-#include <glib/gi18n-lib.h>
-#include <wtf/text/CString.h>
-
-/**
- * SECTION:webkitwebdatabase
- * @short_description: A WebKit web application database
- *
- * #WebKitWebDatabase is a representation of a Web Database database. The
- * proposed Web Database standard introduces support for SQL databases that web
- * sites can create and access on a local computer through JavaScript.
- *
- * To get access to all databases defined by a security origin, use
- * #webkit_security_origin_get_databases. Each database has a canonical
- * name, as well as a user-friendly display name.
- *
- * WebKit uses SQLite to create and access the local SQL databases. The location
- * of a #WebKitWebDatabase can be accessed wth #webkit_web_database_get_filename.
- * You can configure the location of all databases with
- * #webkit_set_database_directory_path.
- *
- * For each database the web site can define an estimated size which can be
- * accessed with #webkit_web_database_get_expected_size. The current size of the
- * database in bytes is returned by #webkit_web_database_get_size.
- *
- * For more information refer to the Web Database specification proposal at
- * http://dev.w3.org/html5/webdatabase
- */
-
-using namespace WebKit;
-
-enum {
- PROP_0,
-
- PROP_SECURITY_ORIGIN,
- PROP_NAME,
- PROP_DISPLAY_NAME,
- PROP_EXPECTED_SIZE,
- PROP_SIZE,
- PROP_PATH
-};
-
-G_DEFINE_TYPE(WebKitWebDatabase, webkit_web_database, G_TYPE_OBJECT)
-
-struct _WebKitWebDatabasePrivate {
- WebKitSecurityOrigin* origin;
- gchar* name;
- gchar* displayName;
- gchar* filename;
-};
-
-static CString gWebKitWebDatabasePath;
-static guint64 webkit_default_database_quota = 5 * 1024 * 1024;
-
-static void webkit_web_database_set_security_origin(WebKitWebDatabase* webDatabase, WebKitSecurityOrigin* security_origin);
-
-static void webkit_web_database_set_name(WebKitWebDatabase* webDatabase, const gchar* name);
-
-static void webkit_web_database_finalize(GObject* object)
-{
- WebKitWebDatabase* webDatabase = WEBKIT_WEB_DATABASE(object);
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
-
- g_free(priv->name);
- g_free(priv->displayName);
- g_free(priv->filename);
-
- G_OBJECT_CLASS(webkit_web_database_parent_class)->finalize(object);
-}
-
-static void webkit_web_database_dispose(GObject* object)
-{
- WebKitWebDatabase* webDatabase = WEBKIT_WEB_DATABASE(object);
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
-
- if (priv->origin) {
- g_object_unref(priv->origin);
- priv->origin = NULL;
- }
-
- G_OBJECT_CLASS(webkit_web_database_parent_class)->dispose(object);
-}
-
-static void webkit_web_database_set_property(GObject* object, guint propId, const GValue* value, GParamSpec* pspec)
-{
- WebKitWebDatabase* webDatabase = WEBKIT_WEB_DATABASE(object);
-
- switch (propId) {
- case PROP_SECURITY_ORIGIN:
- webkit_web_database_set_security_origin(webDatabase, WEBKIT_SECURITY_ORIGIN(g_value_get_object(value)));
- break;
- case PROP_NAME:
- webkit_web_database_set_name(webDatabase, g_value_get_string(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, pspec);
- break;
- }
-}
-
-static void webkit_web_database_get_property(GObject* object, guint propId, GValue* value, GParamSpec* pspec)
-{
- WebKitWebDatabase* webDatabase = WEBKIT_WEB_DATABASE(object);
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
-
- switch (propId) {
- case PROP_SECURITY_ORIGIN:
- g_value_set_object(value, priv->origin);
- break;
- case PROP_NAME:
- g_value_set_string(value, webkit_web_database_get_name(webDatabase));
- break;
- case PROP_DISPLAY_NAME:
- g_value_set_string(value, webkit_web_database_get_display_name(webDatabase));
- break;
- case PROP_EXPECTED_SIZE:
- g_value_set_uint64(value, webkit_web_database_get_expected_size(webDatabase));
- break;
- case PROP_SIZE:
- g_value_set_uint64(value, webkit_web_database_get_size(webDatabase));
- break;
- case PROP_PATH:
- g_value_set_string(value, webkit_web_database_get_filename(webDatabase));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, pspec);
- break;
- }
-}
-
-static void webkit_web_database_class_init(WebKitWebDatabaseClass* klass)
-{
- GObjectClass* gobjectClass = G_OBJECT_CLASS(klass);
- gobjectClass->dispose = webkit_web_database_dispose;
- gobjectClass->finalize = webkit_web_database_finalize;
- gobjectClass->set_property = webkit_web_database_set_property;
- gobjectClass->get_property = webkit_web_database_get_property;
-
- /**
- * WebKitWebDatabase:security-origin:
- *
- * The security origin of the database.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_SECURITY_ORIGIN,
- g_param_spec_object("security-origin",
- _("Security Origin"),
- _("The security origin of the database"),
- WEBKIT_TYPE_SECURITY_ORIGIN,
- (GParamFlags) (G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitWebDatabase:name:
- *
- * The name of the Web Database database.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_NAME,
- g_param_spec_string("name",
- _("Name"),
- _("The name of the Web Database database"),
- NULL,
- (GParamFlags) (G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitWebDatabase:display-name:
- *
- * The display name of the Web Database database.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_DISPLAY_NAME,
- g_param_spec_string("display-name",
- _("Display Name"),
- _("The display name of the Web Storage database"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebDatabase:expected-size:
- *
- * The expected size of the database in bytes as defined by the web author.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_EXPECTED_SIZE,
- g_param_spec_uint64("expected-size",
- _("Expected Size"),
- _("The expected size of the Web Database database"),
- 0, G_MAXUINT64, 0,
- WEBKIT_PARAM_READABLE));
- /**
- * WebKitWebDatabase:size:
- *
- * The current size of the database in bytes.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_SIZE,
- g_param_spec_uint64("size",
- _("Size"),
- _("The current size of the Web Database database"),
- 0, G_MAXUINT64, 0,
- WEBKIT_PARAM_READABLE));
- /**
- * WebKitWebDatabase:filename:
- *
- * The absolute filename of the Web Database database.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobjectClass, PROP_PATH,
- g_param_spec_string("filename",
- _("Filename"),
- _("The absolute filename of the Web Storage database"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- g_type_class_add_private(klass, sizeof(WebKitWebDatabasePrivate));
-}
-
-static void webkit_web_database_init(WebKitWebDatabase* webDatabase)
-{
- webDatabase->priv = G_TYPE_INSTANCE_GET_PRIVATE(webDatabase, WEBKIT_TYPE_WEB_DATABASE, WebKitWebDatabasePrivate);
-}
-
-// Internal use only
-static void webkit_web_database_set_security_origin(WebKitWebDatabase *webDatabase, WebKitSecurityOrigin *securityOrigin)
-{
- g_return_if_fail(WEBKIT_IS_WEB_DATABASE(webDatabase));
- g_return_if_fail(WEBKIT_IS_SECURITY_ORIGIN(securityOrigin));
-
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
-
- if (priv->origin)
- g_object_unref(priv->origin);
-
- g_object_ref(securityOrigin);
- priv->origin = securityOrigin;
-}
-
-static void webkit_web_database_set_name(WebKitWebDatabase* webDatabase, const gchar* name)
-{
- g_return_if_fail(WEBKIT_IS_WEB_DATABASE(webDatabase));
-
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
- g_free(priv->name);
- priv->name = g_strdup(name);
-}
-
-/**
- * webkit_web_database_get_security_origin:
- * @webDatabase: a #WebKitWebDatabase
- *
- * Returns the security origin of the #WebKitWebDatabase.
- *
- * Returns: (transfer none): the security origin of the database
- *
- * Since: 1.1.14
- **/
-WebKitSecurityOrigin* webkit_web_database_get_security_origin(WebKitWebDatabase* webDatabase)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATABASE(webDatabase), NULL);
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
-
- return priv->origin;
-}
-
-/**
- * webkit_web_database_get_name:
- * @webDatabase: a #WebKitWebDatabase
- *
- * Returns the canonical name of the #WebKitWebDatabase.
- *
- * Returns: the name of the database
- *
- * Since: 1.1.14
- **/
-const gchar* webkit_web_database_get_name(WebKitWebDatabase* webDatabase)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATABASE(webDatabase), NULL);
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
-
- return priv->name;
-}
-
-/**
- * webkit_web_database_get_display_name:
- * @webDatabase: a #WebKitWebDatabase
- *
- * Returns the name of the #WebKitWebDatabase as seen by the user.
- *
- * Returns: the name of the database as seen by the user.
- *
- * Since: 1.1.14
- **/
-const gchar* webkit_web_database_get_display_name(WebKitWebDatabase* webDatabase)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATABASE(webDatabase), NULL);
-
-#if ENABLE(SQL_DATABASE)
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
- WebCore::DatabaseDetails details = WebCore::DatabaseManager::manager().detailsForNameAndOrigin(priv->name, core(priv->origin));
- WTF::String displayName = details.displayName();
-
- if (displayName.isEmpty())
- return "";
-
- g_free(priv->displayName);
- priv->displayName = g_strdup(displayName.utf8().data());
- return priv->displayName;
-#else
- return "";
-#endif
-}
-
-/**
- * webkit_web_database_get_expected_size:
- * @webDatabase: a #WebKitWebDatabase
- *
- * Returns the expected size of the #WebKitWebDatabase in bytes as defined by the
- * web author. The Web Database standard allows web authors to specify an expected
- * size of the database to optimize the user experience.
- *
- * Returns: the expected size of the database in bytes
- *
- * Since: 1.1.14
- **/
-guint64 webkit_web_database_get_expected_size(WebKitWebDatabase* webDatabase)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATABASE(webDatabase), 0);
-
-#if ENABLE(SQL_DATABASE)
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
- WebCore::DatabaseDetails details = WebCore::DatabaseManager::manager().detailsForNameAndOrigin(priv->name, core(priv->origin));
- return details.expectedUsage();
-#else
- return 0;
-#endif
-}
-
-/**
- * webkit_web_database_get_size:
- * @webDatabase: a #WebKitWebDatabase
- *
- * Returns the actual size of the #WebKitWebDatabase space on disk in bytes.
- *
- * Returns: the actual size of the database in bytes
- *
- * Since: 1.1.14
- **/
-guint64 webkit_web_database_get_size(WebKitWebDatabase* webDatabase)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATABASE(webDatabase), 0);
-
-#if ENABLE(SQL_DATABASE)
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
- WebCore::DatabaseDetails details = WebCore::DatabaseManager::manager().detailsForNameAndOrigin(priv->name, core(priv->origin));
- return details.currentUsage();
-#else
- return 0;
-#endif
-}
-
-/**
- * webkit_web_database_get_filename:
- * @webDatabase: a #WebKitWebDatabase
- *
- * Returns the absolute filename to the #WebKitWebDatabase file on disk.
- *
- * Returns: the absolute filename of the database
- *
- * Since: 1.1.14
- **/
-const gchar* webkit_web_database_get_filename(WebKitWebDatabase* webDatabase)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATABASE(webDatabase), NULL);
-
-#if ENABLE(SQL_DATABASE)
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
- WTF::String coreName = WTF::String::fromUTF8(priv->name);
- WTF::String corePath = WebCore::DatabaseManager::manager().fullPathForDatabase(core(priv->origin), coreName);
-
- if (corePath.isEmpty())
- return"";
-
- g_free(priv->filename);
- priv->filename = g_strdup(corePath.utf8().data());
- return priv->filename;
-
-#else
- return "";
-#endif
-}
-
-/**
- * webkit_web_database_remove:
- * @webDatabase: a #WebKitWebDatabase
- *
- * Removes the #WebKitWebDatabase from its security origin and destroys all data
- * stored in the database.
- *
- * Since: 1.1.14
- **/
-void webkit_web_database_remove(WebKitWebDatabase* webDatabase)
-{
- g_return_if_fail(WEBKIT_IS_WEB_DATABASE(webDatabase));
-
-#if ENABLE(SQL_DATABASE)
- WebKitWebDatabasePrivate* priv = webDatabase->priv;
- WebCore::DatabaseManager::manager().deleteDatabase(core(priv->origin), priv->name);
-#endif
-}
-
-/**
- * webkit_remove_all_web_databases:
- *
- * Removes all web databases from the current database directory path.
- *
- * Since: 1.1.14
- **/
-void webkit_remove_all_web_databases()
-{
-#if ENABLE(SQL_DATABASE)
- WebCore::DatabaseManager::manager().deleteAllDatabases();
-#endif
-}
-
-/**
- * webkit_get_web_database_directory_path:
- *
- * Returns the current path to the directory WebKit will write Web
- * Database and Indexed Database databases. By default this path will
- * be in the user data directory.
- *
- * Returns: the current database directory path in the filesystem encoding
- *
- * Since: 1.1.14
- **/
-const gchar* webkit_get_web_database_directory_path()
-{
- return gWebKitWebDatabasePath.data();
-}
-
-/**
- * webkit_set_web_database_directory_path:
- * @path: the new database directory path in the filesystem encoding
- *
- * Sets the current path to the directory WebKit will write Web
- * Database and Indexed Database databases.
- *
- * Since: 1.1.14
- **/
-void webkit_set_web_database_directory_path(const gchar* path)
-{
- gWebKitWebDatabasePath = path;
-
- String pathString = WebCore::filenameToString(path);
-#if ENABLE(SQL_DATABASE)
- WebCore::DatabaseManager::manager().setDatabaseDirectoryPath(pathString);
-#endif
-
-#if ENABLE(INDEXED_DATABASE)
- WebCore::PageGroup::pageGroup(webkitPageGroupName())->groupSettings()->setIndexedDBDatabasePath(pathString);
-#endif
-
-}
-
-/**
- * webkit_get_default_web_database_quota:
- *
- * Returns the default quota for Web Database databases. By default
- * this value is 5MB.
- *
- * Returns: the current default database quota in bytes
- *
- * Since: 1.1.14
- **/
-guint64 webkit_get_default_web_database_quota()
-{
- return webkit_default_database_quota;
-}
-
-/**
- * webkit_set_default_web_database_quota:
- * @defaultQuota: the new default database quota
- *
- * Sets the default quota for Web Database databases.
- *
- * Since: 1.1.14
- **/
-void webkit_set_default_web_database_quota(guint64 defaultQuota)
-{
- webkit_default_database_quota = defaultQuota;
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebdatabase.h b/Source/WebKit/gtk/webkit/webkitwebdatabase.h
deleted file mode 100644
index 0a05d65cf..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebdatabase.h
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Copyright (C) 2009 Martin Robinson
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebdatabase_h
-#define webkitwebdatabase_h
-
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_DATABASE (webkit_web_database_get_type())
-#define WEBKIT_WEB_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_DATABASE, WebKitWebDatabase))
-#define WEBKIT_WEB_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_DATABASE, WebKitWebDatabaseClass))
-#define WEBKIT_IS_WEB_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_DATABASE))
-#define WEBKIT_IS_WEB_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_DATABASE))
-#define WEBKIT_WEB_DATABASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_DATABASE, WebKitWebDatabaseClass))
-
-typedef struct _WebKitWebDatabasePrivate WebKitWebDatabasePrivate;
-
-struct _WebKitWebDatabase {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebDatabasePrivate* priv;
-};
-
-struct _WebKitWebDatabaseClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
- void (*_webkit_reserved4) (void);
-};
-
-WEBKIT_API GType
-webkit_web_database_get_type (void);
-
-WEBKIT_API WebKitSecurityOrigin *
-webkit_web_database_get_security_origin (WebKitWebDatabase* webDatabase);
-
-WEBKIT_API const gchar*
-webkit_web_database_get_name (WebKitWebDatabase* webDatabase);
-
-WEBKIT_API const gchar*
-webkit_web_database_get_display_name (WebKitWebDatabase* webDatabase);
-
-WEBKIT_API guint64
-webkit_web_database_get_expected_size (WebKitWebDatabase* webDatabase);
-
-WEBKIT_API guint64
-webkit_web_database_get_size (WebKitWebDatabase* webDatabase);
-
-WEBKIT_API const gchar*
-webkit_web_database_get_filename (WebKitWebDatabase* webDatabase);
-
-WEBKIT_API void
-webkit_web_database_remove (WebKitWebDatabase* webDatabase);
-
-WEBKIT_API void
-webkit_remove_all_web_databases (void);
-
-WEBKIT_API const gchar*
-webkit_get_web_database_directory_path (void);
-
-WEBKIT_API void
-webkit_set_web_database_directory_path (const gchar* path);
-
-WEBKIT_API guint64
-webkit_get_default_web_database_quota (void);
-
-WEBKIT_API void
-webkit_set_default_web_database_quota (guint64 defaultQuota);
-
-G_END_DECLS
-
-#endif /* webkitwebdatabase_h */
diff --git a/Source/WebKit/gtk/webkit/webkitwebdatasource.cpp b/Source/WebKit/gtk/webkit/webkitwebdatasource.cpp
deleted file mode 100644
index b6fdc470f..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebdatasource.cpp
+++ /dev/null
@@ -1,443 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael C. Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebdatasource.h"
-
-#include "ArchiveResource.h"
-#include "DocumentLoaderGtk.h"
-#include "FrameLoader.h"
-#include "FrameLoaderClientGtk.h"
-#include "KURL.h"
-#include "ResourceBuffer.h"
-#include "ResourceRequest.h"
-#include "SharedBuffer.h"
-#include "SubstituteData.h"
-#include "runtime/InitializeThreading.h"
-#include "webkitglobalsprivate.h"
-#include "webkitnetworkrequestprivate.h"
-#include "webkitwebdatasourceprivate.h"
-#include "webkitwebframeprivate.h"
-#include "webkitwebresource.h"
-#include "webkitwebviewprivate.h"
-#include <glib.h>
-#include <wtf/Assertions.h>
-#include <wtf/text/WTFString.h>
-
-/**
- * SECTION:webkitwebdatasource
- * @short_description: Encapsulates the content to be displayed in a #WebKitWebFrame.
- * @see_also: #WebKitWebFrame
- *
- * Data source encapsulates the content of a #WebKitWebFrame. A
- * #WebKitWebFrame has a main resource and subresources and the data source
- * provides access to these resources. When a request gets loaded initially,
- * it is set to a provisional state. The application can request for the
- * request that initiated the load by asking for the provisional data source
- * and invoking the webkit_web_data_source_get_initial_request method of
- * #WebKitWebDataSource. This data source may not have enough data and some
- * methods may return empty values. To get a "full" data source with the data
- * and resources loaded, you need to get the non-provisional data source
- * through #WebKitWebFrame's webkit_web_frame_get_data_source method. This
- * data source will have the data after everything was loaded. Make sure that
- * the data source was finished loading before using any of its methods. You
- * can do this via webkit_web_data_source_is_loading.
- */
-
-using namespace WebCore;
-using namespace WebKit;
-
-struct _WebKitWebDataSourcePrivate {
- WebKit::DocumentLoader* loader;
-
- WebKitNetworkRequest* initialRequest;
- WebKitNetworkRequest* networkRequest;
- WebKitWebResource* mainresource;
-
- GString* data;
-
- gchar* textEncoding;
- gchar* unreachableURL;
-};
-
-G_DEFINE_TYPE(WebKitWebDataSource, webkit_web_data_source, G_TYPE_OBJECT);
-
-static void webkit_web_data_source_dispose(GObject* object)
-{
- WebKitWebDataSource* webDataSource = WEBKIT_WEB_DATA_SOURCE(object);
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
-
- ASSERT(priv->loader);
- ASSERT(!priv->loader->isLoading());
- priv->loader->detachDataSource();
- priv->loader->deref();
-
- if (priv->initialRequest) {
- g_object_unref(priv->initialRequest);
- priv->initialRequest = NULL;
- }
-
- if (priv->networkRequest) {
- g_object_unref(priv->networkRequest);
- priv->networkRequest = NULL;
- }
-
- if (priv->mainresource) {
- g_object_unref(priv->mainresource);
- priv->mainresource = NULL;
- }
-
- G_OBJECT_CLASS(webkit_web_data_source_parent_class)->dispose(object);
-}
-
-static void webkit_web_data_source_finalize(GObject* object)
-{
- WebKitWebDataSource* dataSource = WEBKIT_WEB_DATA_SOURCE(object);
- WebKitWebDataSourcePrivate* priv = dataSource->priv;
-
- g_free(priv->unreachableURL);
- g_free(priv->textEncoding);
-
- if (priv->data) {
- g_string_free(priv->data, TRUE);
- priv->data = NULL;
- }
-
- G_OBJECT_CLASS(webkit_web_data_source_parent_class)->finalize(object);
-}
-
-static void webkit_web_data_source_class_init(WebKitWebDataSourceClass* klass)
-{
- GObjectClass* gobject_class = G_OBJECT_CLASS(klass);
- gobject_class->dispose = webkit_web_data_source_dispose;
- gobject_class->finalize = webkit_web_data_source_finalize;
-
- webkitInit();
-
- g_type_class_add_private(gobject_class, sizeof(WebKitWebDataSourcePrivate));
-}
-
-static void webkit_web_data_source_init(WebKitWebDataSource* webDataSource)
-{
- webDataSource->priv = G_TYPE_INSTANCE_GET_PRIVATE(webDataSource, WEBKIT_TYPE_WEB_DATA_SOURCE, WebKitWebDataSourcePrivate);
-}
-
-/**
- * webkit_web_data_source_new:
- *
- * Creates a new #WebKitWebDataSource instance. The URL of the
- * #WebKitWebDataSource will be set to "about:blank".
- *
- * Returns: a new #WebKitWebDataSource.
- *
- * Since: 1.1.14
- */
-WebKitWebDataSource* webkit_web_data_source_new()
-{
- WebKitNetworkRequest* request = webkit_network_request_new("about:blank");
- WebKitWebDataSource* datasource = webkit_web_data_source_new_with_request(request);
- g_object_unref(request);
-
- return datasource;
-}
-
-/**
- * webkit_web_data_source_new_with_request:
- * @request: the #WebKitNetworkRequest to use to create this data source
- *
- * Creates a new #WebKitWebDataSource from a #WebKitNetworkRequest. Normally,
- * #WebKitWebFrame objects create their data sources so you will almost never
- * want to invoke this method directly.
- *
- * Returns: a new #WebKitWebDataSource
- *
- * Since: 1.1.14
- */
-WebKitWebDataSource* webkit_web_data_source_new_with_request(WebKitNetworkRequest* request)
-{
- ASSERT(request);
-
- const gchar* uri = webkit_network_request_get_uri(request);
-
- ResourceRequest resourceRequest(ResourceRequest(KURL(KURL(), String::fromUTF8(uri))));
- WebKitWebDataSource* datasource = kitNew(WebKit::DocumentLoader::create(resourceRequest, SubstituteData()));
-
- WebKitWebDataSourcePrivate* priv = datasource->priv;
- priv->initialRequest = request;
-
- return datasource;
-}
-
-/**
- * webkit_web_data_source_get_web_frame:
- * @data_source: a #WebKitWebDataSource
- *
- * Returns the #WebKitWebFrame that represents this data source
- *
- * Return value: (transfer none): the #WebKitWebFrame that represents
- * the @data_source. The #WebKitWebFrame is owned by WebKit and should
- * not be freed or destroyed. This will return %NULL if the
- * @data_source is not attached to a frame.
- *
- * Since: 1.1.14
- */
-WebKitWebFrame* webkit_web_data_source_get_web_frame(WebKitWebDataSource* webDataSource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATA_SOURCE(webDataSource), NULL);
-
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
- FrameLoader* frameLoader = priv->loader->frameLoader();
-
- if (!frameLoader)
- return NULL;
-
- return static_cast<WebKit::FrameLoaderClient*>(frameLoader->client())->webFrame();
-}
-
-/**
- * webkit_web_data_source_get_initial_request:
- * @data_source: a #WebKitWebDataSource
- *
- * Returns a reference to the original request that was used to load the web
- * content. The #WebKitNetworkRequest returned by this method is the request
- * prior to the "committed" load state. See webkit_web_data_source_get_request
- * for getting the "committed" request.
- *
- * Return value: (transfer none): the original #WebKitNetworkRequest
- *
- * Since: 1.1.14
- */
-WebKitNetworkRequest* webkit_web_data_source_get_initial_request(WebKitWebDataSource* webDataSource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATA_SOURCE(webDataSource), NULL);
-
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
- ResourceRequest request = priv->loader->originalRequest();
-
- if (priv->initialRequest)
- g_object_unref(priv->initialRequest);
-
- priv->initialRequest = kitNew(request);
- return priv->initialRequest;
-}
-
-/**
- * webkit_web_data_source_get_request:
- * @data_source: a #WebKitWebDataSource
- *
- * Returns a #WebKitNetworkRequest that was used to create this
- * #WebKitWebDataSource. The #WebKitNetworkRequest returned by this method is
- * the request that was "committed", and hence, different from the request you
- * get from the webkit_web_data_source_get_initial_request method.
- *
- * Return value: (transfer none): the #WebKitNetworkRequest that
- * created the @data_source or %NULL if the @data_source is not
- * attached to the frame or the frame hasn't been loaded.
- *
- * Since: 1.1.14
- */
-WebKitNetworkRequest* webkit_web_data_source_get_request(WebKitWebDataSource* webDataSource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATA_SOURCE(webDataSource), NULL);
-
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
- FrameLoader* frameLoader = priv->loader->frameLoader();
- if (!frameLoader || !frameLoader->frameHasLoaded())
- return NULL;
-
- ResourceRequest request = priv->loader->request();
-
- if (priv->networkRequest)
- g_object_unref(priv->networkRequest);
-
- priv->networkRequest = kitNew(request);
- return priv->networkRequest;
-}
-
-/**
- * webkit_web_data_source_get_encoding:
- * @data_source: a #WebKitWebDataSource
- *
- * Returns the text encoding name as set in the #WebKitWebView, or if not, the
- * text encoding of the response.
- *
- * Return value: the encoding name of the #WebKitWebView or of the response.
- *
- * Since: 1.1.14
- */
-const gchar* webkit_web_data_source_get_encoding(WebKitWebDataSource* webDataSource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATA_SOURCE(webDataSource), NULL);
-
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
- String textEncodingName = priv->loader->overrideEncoding();
-
- if (!textEncodingName)
- textEncodingName = priv->loader->response().textEncodingName();
-
- CString encoding = textEncodingName.utf8();
- g_free(priv->textEncoding);
- priv->textEncoding = g_strdup(encoding.data());
- return priv->textEncoding;
-}
-
-/**
- * webkit_web_data_source_is_loading:
- * @data_source: a #WebKitWebDataSource
- *
- * Determines whether the data source is in the process of loading its content.
- *
- * Return value: %TRUE if the @data_source is still loading, %FALSE otherwise
- *
- * Since: 1.1.14
- */
-gboolean webkit_web_data_source_is_loading(WebKitWebDataSource* webDataSource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATA_SOURCE(webDataSource), FALSE);
-
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
-
- return priv->loader->isLoadingInAPISense();
-}
-
-/**
- * webkit_web_data_source_get_data:
- * @data_source: a #WebKitWebDataSource
- *
- * Returns the raw data that represents the the frame's content.The data will
- * be incomplete until the data has finished loading. Returns %NULL if the web
- * frame hasn't loaded any data. Use webkit_web_data_source_is_loading to test
- * if data source is in the process of loading.
- *
- * Return value: (transfer none): a #GString which contains the raw
- * data that represents the @data_source or %NULL if the @data_source
- * hasn't loaded any data.
- *
- * Since: 1.1.14
- */
-GString* webkit_web_data_source_get_data(WebKitWebDataSource* webDataSource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATA_SOURCE(webDataSource), NULL);
-
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
-
- RefPtr<ResourceBuffer> mainResourceData = priv->loader->mainResourceData();
-
- if (!mainResourceData)
- return NULL;
-
- if (priv->data) {
- g_string_free(priv->data, TRUE);
- priv->data = NULL;
- }
-
- priv->data = g_string_new_len(mainResourceData->data(), mainResourceData->size());
- return priv->data;
-}
-
-/**
- * webkit_web_data_source_get_main_resource:
- * @data_source: a #WebKitWebDataSource
- *
- * Returns the main resource of the @data_source
- *
- * Return value: (transfer none): a new #WebKitWebResource
- * representing the main resource of the @data_source.
- *
- * Since: 1.1.14
- */
-WebKitWebResource* webkit_web_data_source_get_main_resource(WebKitWebDataSource* webDataSource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATA_SOURCE(webDataSource), NULL);
-
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
-
- if (priv->mainresource)
- return priv->mainresource;
-
- WebKitWebFrame* webFrame = webkit_web_data_source_get_web_frame(webDataSource);
- WebKitWebView* webView = getViewFromFrame(webFrame);
-
- priv->mainresource = WEBKIT_WEB_RESOURCE(g_object_ref(webkit_web_view_get_main_resource(webView)));
-
- return priv->mainresource;
-}
-
-/**
- * webkit_web_data_source_get_unreachable_uri:
- * @data_source: a #WebKitWebDataSource
- *
- * Return the unreachable URI of @data_source. The @data_source will have an
- * unreachable URL if it was created using #WebKitWebFrame's
- * webkit_web_frame_load_alternate_html_string method.
- *
- * Return value: the unreachable URL of @data_source or %NULL if there is no unreachable URL.
- *
- * Since: 1.1.14
- */
-const gchar* webkit_web_data_source_get_unreachable_uri(WebKitWebDataSource* webDataSource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATA_SOURCE(webDataSource), NULL);
-
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
- const KURL& unreachableURL = priv->loader->unreachableURL();
-
- if (unreachableURL.isEmpty())
- return NULL;
-
- g_free(priv->unreachableURL);
- priv->unreachableURL = g_strdup(unreachableURL.string().utf8().data());
- return priv->unreachableURL;
-}
-
-/**
- * webkit_web_data_source_get_subresources:
- * @data_source: a #WebKitWebDataSource
- *
- * Gives you a #GList of #WebKitWebResource objects that compose the
- * #WebKitWebView to which this #WebKitWebDataSource is attached.
- *
- * Return value: (element-type WebKitWebResource) (transfer container):
- * a #GList of #WebKitWebResource objects; the objects are owned by
- * WebKit, but the GList must be freed.
- *
- * Since: 1.1.15
- */
-GList* webkit_web_data_source_get_subresources(WebKitWebDataSource* webDataSource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_DATA_SOURCE(webDataSource), NULL);
-
- WebKitWebFrame* webFrame = webkit_web_data_source_get_web_frame(webDataSource);
- WebKitWebView* webView = getViewFromFrame(webFrame);
-
- return webkit_web_view_get_subresources(webView);
-}
-
-namespace WebKit {
-
-WebKitWebDataSource* kitNew(PassRefPtr<WebKit::DocumentLoader> loader)
-{
- WebKitWebDataSource* webDataSource = WEBKIT_WEB_DATA_SOURCE(g_object_new(WEBKIT_TYPE_WEB_DATA_SOURCE, NULL));
- WebKitWebDataSourcePrivate* priv = webDataSource->priv;
- priv->loader = loader.leakRef();
-
- return webDataSource;
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebdatasource.h b/Source/WebKit/gtk/webkit/webkitwebdatasource.h
deleted file mode 100644
index d8430e084..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebdatasource.h
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael C. Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebdatasource_h
-#define webkitwebdatasource_h
-
-#include <glib.h>
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-#include <webkit/webkitwebframe.h>
-#include <webkit/webkitnetworkrequest.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_DATA_SOURCE (webkit_web_data_source_get_type())
-#define WEBKIT_WEB_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_DATA_SOURCE, WebKitWebDataSource))
-#define WEBKIT_WEB_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_DATA_SOURCE, WebKitWebDataSourceClass))
-#define WEBKIT_IS_WEB_DATA_SOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_DATA_SOURCE))
-#define WEBKIT_IS_WEB_DATA_SOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_DATA_SOURCE))
-#define WEBKIT_WEB_DATA_SOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_DATA_SOURCE, WebKitWebDataSourceClass))
-
-typedef struct _WebKitWebDataSourcePrivate WebKitWebDataSourcePrivate;
-
-struct _WebKitWebDataSource {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebDataSourcePrivate *priv;
-};
-
-struct _WebKitWebDataSourceClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_web_data_source_get_type (void);
-
-WEBKIT_API WebKitWebDataSource *
-webkit_web_data_source_new (void);
-
-WEBKIT_API WebKitWebDataSource *
-webkit_web_data_source_new_with_request (WebKitNetworkRequest *request);
-
-WEBKIT_API WebKitWebFrame *
-webkit_web_data_source_get_web_frame (WebKitWebDataSource *data_source);
-
-WEBKIT_API WebKitNetworkRequest *
-webkit_web_data_source_get_initial_request (WebKitWebDataSource *data_source);
-
-WEBKIT_API WebKitNetworkRequest *
-webkit_web_data_source_get_request (WebKitWebDataSource *data_source);
-
-WEBKIT_API const gchar *
-webkit_web_data_source_get_encoding (WebKitWebDataSource *data_source);
-
-WEBKIT_API gboolean
-webkit_web_data_source_is_loading (WebKitWebDataSource *data_source);
-
-WEBKIT_API GString *
-webkit_web_data_source_get_data (WebKitWebDataSource *data_source);
-
-WEBKIT_API WebKitWebResource *
-webkit_web_data_source_get_main_resource (WebKitWebDataSource *data_source);
-
-WEBKIT_API const gchar *
-webkit_web_data_source_get_unreachable_uri (WebKitWebDataSource *data_source);
-
-WEBKIT_API GList*
-webkit_web_data_source_get_subresources (WebKitWebDataSource *data_source);
-
-G_END_DECLS
-
-#endif /* webkitwebdatasource_h */
diff --git a/Source/WebKit/gtk/webkit/webkitwebdatasourceprivate.h b/Source/WebKit/gtk/webkit/webkitwebdatasourceprivate.h
deleted file mode 100644
index 8e253fa76..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebdatasourceprivate.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebdatasourceprivate_h
-#define webkitwebdatasourceprivate_h
-
-#include "webkitwebdatasource.h"
-#include <wtf/RefPtr.h>
-
-namespace WebKit {
-
-WebKitWebDataSource* kitNew(PassRefPtr<WebKit::DocumentLoader>);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebframe.cpp b/Source/WebKit/gtk/webkit/webkitwebframe.cpp
deleted file mode 100644
index 163f6f0bc..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebframe.cpp
+++ /dev/null
@@ -1,1218 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 Holger Hans Peter Freyther
- * Copyright (C) 2007 Alp Toker <alp@atoker.com>
- * Copyright (C) 2007 Apple Inc.
- * Copyright (C) 2008 Christian Dywan <christian@imendio.com>
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2008 Nuanti Ltd.
- * Copyright (C) 2009 Jan Alonzo <jmalonzo@gmail.com>
- * Copyright (C) 2009 Gustavo Noronha Silva <gns@gnome.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebframe.h"
-
-#include "AXObjectCache.h"
-#include "AnimationController.h"
-#include "DOMObjectCache.h"
-#include "DocumentFragment.h"
-#include "DocumentLoader.h"
-#include "DocumentLoaderGtk.h"
-#include "Editor.h"
-#include "FrameLoadRequest.h"
-#include "FrameLoader.h"
-#include "FrameLoaderClientGtk.h"
-#include "FrameSelection.h"
-#include "FrameTree.h"
-#include "FrameView.h"
-#include "GCController.h"
-#include "GraphicsContext.h"
-#include "GtkUtilities.h"
-#include "GtkVersioning.h"
-#include "HTMLFrameOwnerElement.h"
-#include "JSDOMBinding.h"
-#include "JSDOMWindow.h"
-#include "JSElement.h"
-#include "PlatformContextCairo.h"
-#include "PrintContext.h"
-#include "RenderListItem.h"
-#include "RenderTreeAsText.h"
-#include "RenderView.h"
-#include "ScriptController.h"
-#include "SubstituteData.h"
-#include "TextIterator.h"
-#include "WebKitAccessibleWrapperAtk.h"
-#include "WebKitDOMDocumentPrivate.h"
-#include "WebKitDOMRangePrivate.h"
-#include "markup.h"
-#include "webkitenumtypes.h"
-#include "webkitglobalsprivate.h"
-#include "webkitmarshal.h"
-#include "webkitnetworkresponse.h"
-#include "webkitnetworkrequestprivate.h"
-#include "webkitnetworkresponseprivate.h"
-#include "webkitsecurityoriginprivate.h"
-#include "webkitwebframeprivate.h"
-#include "webkitwebresource.h"
-#include "webkitwebview.h"
-#include "webkitwebviewprivate.h"
-#include <JavaScriptCore/APICast.h>
-#include <atk/atk.h>
-#include <glib/gi18n-lib.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(SVG)
-#include "SVGSMILElement.h"
-#endif
-
-/**
- * SECTION:webkitwebframe
- * @short_description: The content of a #WebKitWebView
- *
- * A #WebKitWebView contains a main #WebKitWebFrame. A #WebKitWebFrame
- * contains the content of one URI. The URI and name of the frame can
- * be retrieved, the load status and progress can be observed using the
- * signals and can be controlled using the methods of the #WebKitWebFrame.
- * A #WebKitWebFrame can have any number of children and one child can
- * be found by using #webkit_web_frame_find_frame.
- *
- * <informalexample><programlisting>
- * /<!-- -->* Get the frame from the #WebKitWebView *<!-- -->/
- * WebKitWebFrame *frame = webkit_web_view_get_main_frame (WEBKIT_WEB_VIEW(my_view));
- * g_print ("The URI of this frame is '%s'", webkit_web_frame_get_uri (frame));
- * </programlisting></informalexample>
- */
-
-using namespace WebKit;
-using namespace WebCore;
-using namespace std;
-
-enum {
- CLEARED,
- LOAD_COMMITTED,
- LOAD_DONE,
- TITLE_CHANGED,
- HOVERING_OVER_LINK,
- SCROLLBARS_POLICY_CHANGED,
- // Resource loading signals
- RESOURCE_REQUEST_STARTING,
- RESOURCE_RESPONSE_RECEIVED,
- RESOURCE_LOAD_FINISHED,
- RESOURCE_CONTENT_LENGTH_RECEIVED,
- RESOURCE_LOAD_FAILED,
- INSECURE_CONTENT_RUN,
-
- LAST_SIGNAL
-};
-
-enum {
- PROP_0,
-
- PROP_NAME,
- PROP_TITLE,
- PROP_URI,
- PROP_LOAD_STATUS,
- PROP_HORIZONTAL_SCROLLBAR_POLICY,
- PROP_VERTICAL_SCROLLBAR_POLICY
-};
-
-static guint webkit_web_frame_signals[LAST_SIGNAL] = { 0, };
-
-G_DEFINE_TYPE(WebKitWebFrame, webkit_web_frame, G_TYPE_OBJECT)
-
-static void webkit_web_frame_get_property(GObject* object, guint propertyId, GValue* value, GParamSpec* paramSpec)
-{
- WebKitWebFrame* frame = WEBKIT_WEB_FRAME(object);
-
- switch (propertyId) {
- case PROP_NAME:
- g_value_set_string(value, webkit_web_frame_get_name(frame));
- break;
- case PROP_TITLE:
- g_value_set_string(value, webkit_web_frame_get_title(frame));
- break;
- case PROP_URI:
- g_value_set_string(value, webkit_web_frame_get_uri(frame));
- break;
- case PROP_LOAD_STATUS:
- g_value_set_enum(value, webkit_web_frame_get_load_status(frame));
- break;
- case PROP_HORIZONTAL_SCROLLBAR_POLICY:
- g_value_set_enum(value, webkit_web_frame_get_horizontal_scrollbar_policy(frame));
- break;
- case PROP_VERTICAL_SCROLLBAR_POLICY:
- g_value_set_enum(value, webkit_web_frame_get_vertical_scrollbar_policy(frame));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, paramSpec);
- break;
- }
-}
-
-// Called from the FrameLoaderClient when it is destroyed. Normally
-// the unref in the FrameLoaderClient is destroying this object as
-// well but due reference counting a user might have added a reference...
-void webkit_web_frame_core_frame_gone(WebKitWebFrame* frame)
-{
- ASSERT(WEBKIT_IS_WEB_FRAME(frame));
- WebKitWebFramePrivate* priv = frame->priv;
- if (priv->coreFrame)
- DOMObjectCache::clearByFrame(priv->coreFrame);
- priv->coreFrame = 0;
-}
-
-static WebKitWebDataSource* webkit_web_frame_get_data_source_from_core_loader(WebCore::DocumentLoader* loader)
-{
- return loader ? static_cast<WebKit::DocumentLoader*>(loader)->dataSource() : 0;
-}
-
-static void webkit_web_frame_finalize(GObject* object)
-{
- WebKitWebFrame* frame = WEBKIT_WEB_FRAME(object);
- WebKitWebFramePrivate* priv = frame->priv;
-
- if (priv->coreFrame) {
- DOMObjectCache::clearByFrame(priv->coreFrame);
- priv->coreFrame->loader()->cancelAndClear();
- priv->coreFrame = 0;
- }
-
- g_free(priv->name);
- g_free(priv->title);
- g_free(priv->uri);
-
- G_OBJECT_CLASS(webkit_web_frame_parent_class)->finalize(object);
-}
-
-static void webkit_web_frame_class_init(WebKitWebFrameClass* frameClass)
-{
- webkitInit();
-
- /*
- * signals
- */
- webkit_web_frame_signals[CLEARED] = g_signal_new("cleared",
- G_TYPE_FROM_CLASS(frameClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- 0,
- 0,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebFrame::load-committed:
- * @web_frame: the object on which the signal is emitted
- *
- * Emitted when frame loading is done.
- *
- * Deprecated: Use the "load-status" property instead.
- */
- webkit_web_frame_signals[LOAD_COMMITTED] = g_signal_new("load-committed",
- G_TYPE_FROM_CLASS(frameClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- 0,
- 0,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebFrame::title-changed:
- * @frame: the object on which the signal is emitted
- * @title: the new title
- *
- * When a #WebKitWebFrame changes the document title this signal is emitted.
- *
- * Deprecated: 1.1.18: Use "notify::title" instead.
- */
- webkit_web_frame_signals[TITLE_CHANGED] = g_signal_new("title-changed",
- G_TYPE_FROM_CLASS(frameClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- 0,
- 0,
- webkit_marshal_VOID__STRING,
- G_TYPE_NONE, 1,
- G_TYPE_STRING);
-
- webkit_web_frame_signals[HOVERING_OVER_LINK] = g_signal_new("hovering-over-link",
- G_TYPE_FROM_CLASS(frameClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- 0,
- 0,
- webkit_marshal_VOID__STRING_STRING,
- G_TYPE_NONE, 2,
- G_TYPE_STRING, G_TYPE_STRING);
-
- /**
- * WebKitWebFrame::scrollbars-policy-changed:
- * @web_view: the object which received the signal
- *
- * Signal emitted when policy for one or both of the scrollbars of
- * the view has changed. The default handler will apply the new
- * policy to the container that holds the #WebKitWebFrame if it is
- * a #GtkScrolledWindow and the frame is the main frame. If you do
- * not want this to be handled automatically, you need to handle
- * this signal.
- *
- * The exception to this rule is that policies to disable the
- * scrollbars are applied as %GTK_POLICY_AUTOMATIC instead, since
- * the size request of the widget would force browser windows to
- * not be resizable.
- *
- * You can obtain the new policies from the
- * WebKitWebFrame:horizontal-scrollbar-policy and
- * WebKitWebFrame:vertical-scrollbar-policy properties.
- *
- * Return value: %TRUE to stop other handlers from being invoked for the
- * event. %FALSE to propagate the event further.
- *
- * Since: 1.1.14
- */
- webkit_web_frame_signals[SCROLLBARS_POLICY_CHANGED] = g_signal_new("scrollbars-policy-changed",
- G_TYPE_FROM_CLASS(frameClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- g_signal_accumulator_true_handled,
- 0,
- webkit_marshal_BOOLEAN__VOID,
- G_TYPE_BOOLEAN, 0);
-
-
- /**
- * WebKitWebFrame::resource-request-starting:
- * @web_frame: the #WebKitWebFrame whose load dispatched this request
- * @web_resource: an empty #WebKitWebResource object
- * @request: the #WebKitNetworkRequest that will be dispatched
- * @response: the #WebKitNetworkResponse representing the redirect
- * response, if any
- *
- * Emitted when a request is about to be sent. You can modify the
- * request while handling this signal. You can set the URI in the
- * #WebKitNetworkRequest object itself, and add/remove/replace
- * headers using the #SoupMessage object it carries, if it is
- * present. See webkit_network_request_get_message(). Setting the
- * request URI to "about:blank" will effectively cause the request
- * to load nothing, and can be used to disable the loading of
- * specific resources.
- *
- * Notice that information about an eventual redirect is available
- * in @response's #SoupMessage, not in the #SoupMessage carried by
- * the @request. If @response is %NULL, then this is not a
- * redirected request.
- *
- * The #WebKitWebResource object will be the same throughout all
- * the lifetime of the resource, but the contents may change
- * between signal emissions.
- *
- * Since: 1.7.5
- */
- webkit_web_frame_signals[RESOURCE_REQUEST_STARTING] = g_signal_new("resource-request-starting",
- G_TYPE_FROM_CLASS(frameClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- webkit_marshal_VOID__OBJECT_OBJECT_OBJECT,
- G_TYPE_NONE, 3,
- WEBKIT_TYPE_WEB_RESOURCE,
- WEBKIT_TYPE_NETWORK_REQUEST,
- WEBKIT_TYPE_NETWORK_RESPONSE);
-
- /**
- * WebKitWebFrame::resource-response-received:
- * @web_frame: the #WebKitWebFrame the response was received for
- * @web_resource: the #WebKitWebResource being loaded
- * @response: the #WebKitNetworkResponse that was received.
- *
- * Emitted when the response is received from the server.
- *
- * Since: 1.7.5
- */
- webkit_web_frame_signals[RESOURCE_RESPONSE_RECEIVED] = g_signal_new("resource-response-received",
- G_TYPE_FROM_CLASS(frameClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- webkit_marshal_VOID__OBJECT_OBJECT,
- G_TYPE_NONE, 2,
- WEBKIT_TYPE_WEB_RESOURCE,
- WEBKIT_TYPE_NETWORK_RESPONSE);
-
- /**
- * WebKitWebFrame::resource-load-finished:
- * @web_frame: the #WebKitWebFrame the response was received for
- * @web_resource: the #WebKitWebResource being loaded
- *
- * Emitted when all the data for the resource was loaded.
- *
- * Since: 1.7.5
- */
- webkit_web_frame_signals[RESOURCE_LOAD_FINISHED] = g_signal_new("resource-load-finished",
- G_TYPE_FROM_CLASS(frameClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_WEB_RESOURCE);
-
- /**
- * WebKitWebFrame::resource-content-length-received:
- * @web_frame: the #WebKitWebFrame the response was received for
- * @web_resource: the #WebKitWebResource that was loaded
- * @length_received: the amount of data received since the last signal emission
- *
- * Emitted when new resource data has been received. The
- * @length_received variable stores the amount of bytes received
- * since the last time this signal was emitted. This is useful to
- * provide progress information about the resource load operation.
- *
- * Since: 1.7.5
- */
- webkit_web_frame_signals[RESOURCE_CONTENT_LENGTH_RECEIVED] = g_signal_new("resource-content-length-received",
- G_TYPE_FROM_CLASS(frameClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- webkit_marshal_VOID__OBJECT_INT,
- G_TYPE_NONE, 2,
- WEBKIT_TYPE_WEB_RESOURCE,
- G_TYPE_INT);
-
- /**
- * WebKitWebFrame::resource-load-failed:
- * @web_frame: the #WebKitWebFrame the response was received for
- * @web_resource: the #WebKitWebResource that was loaded
- * @error: the #GError that was triggered
- *
- * Invoked when a resource failed to load.
- *
- * Since: 1.7.5
- */
- webkit_web_frame_signals[RESOURCE_LOAD_FAILED] = g_signal_new("resource-load-failed",
- G_TYPE_FROM_CLASS(frameClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- webkit_marshal_VOID__OBJECT_POINTER,
- G_TYPE_NONE, 2,
- WEBKIT_TYPE_WEB_RESOURCE,
- G_TYPE_POINTER);
-
- /**
- * WebKitWebFrame::insecure-content-run:
- * @web_frame: the #WebKitWebFrame the response was received for.
- * @security_origin: the #WebKitSecurityOrigin.
- * @url: the url of the insecure content.
- *
- * Invoked when insecure content is run from a secure page. This happens
- * when a page loaded via HTTPS loads a stylesheet, script, image or
- * iframe from an unencrypted HTTP URL.
- *
- * Since: 1.10.0
- */
- webkit_web_frame_signals[INSECURE_CONTENT_RUN] = g_signal_new("insecure-content-run",
- G_TYPE_FROM_CLASS(frameClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- webkit_marshal_VOID__OBJECT_STRING,
- G_TYPE_NONE, 2,
- WEBKIT_TYPE_SECURITY_ORIGIN,
- G_TYPE_STRING);
-
- /*
- * implementations of virtual methods
- */
- GObjectClass* objectClass = G_OBJECT_CLASS(frameClass);
- objectClass->finalize = webkit_web_frame_finalize;
- objectClass->get_property = webkit_web_frame_get_property;
-
- /*
- * properties
- */
- g_object_class_install_property(objectClass, PROP_NAME,
- g_param_spec_string("name",
- _("Name"),
- _("The name of the frame"),
- 0,
- WEBKIT_PARAM_READABLE));
-
- g_object_class_install_property(objectClass, PROP_TITLE,
- g_param_spec_string("title",
- _("Title"),
- _("The document title of the frame"),
- 0,
- WEBKIT_PARAM_READABLE));
-
- g_object_class_install_property(objectClass, PROP_URI,
- g_param_spec_string("uri",
- _("URI"),
- _("The current URI of the contents displayed by the frame"),
- 0,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebFrame:load-status:
- *
- * Determines the current status of the load.
- *
- * Since: 1.1.7
- */
- g_object_class_install_property(objectClass, PROP_LOAD_STATUS,
- g_param_spec_enum("load-status",
- "Load Status",
- "Determines the current status of the load",
- WEBKIT_TYPE_LOAD_STATUS,
- WEBKIT_LOAD_FINISHED,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebFrame:horizontal-scrollbar-policy:
- *
- * Determines the current policy for the horizontal scrollbar of
- * the frame. For the main frame, make sure to set the same policy
- * on the scrollable widget containing the #WebKitWebView, unless
- * you know what you are doing.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(objectClass, PROP_HORIZONTAL_SCROLLBAR_POLICY,
- g_param_spec_enum("horizontal-scrollbar-policy",
- _("Horizontal Scrollbar Policy"),
- _("Determines the current policy for the horizontal scrollbar of the frame."),
- GTK_TYPE_POLICY_TYPE,
- GTK_POLICY_AUTOMATIC,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebFrame:vertical-scrollbar-policy:
- *
- * Determines the current policy for the vertical scrollbar of
- * the frame. For the main frame, make sure to set the same policy
- * on the scrollable widget containing the #WebKitWebView, unless
- * you know what you are doing.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(objectClass, PROP_VERTICAL_SCROLLBAR_POLICY,
- g_param_spec_enum("vertical-scrollbar-policy",
- _("Vertical Scrollbar Policy"),
- _("Determines the current policy for the vertical scrollbar of the frame."),
- GTK_TYPE_POLICY_TYPE,
- GTK_POLICY_AUTOMATIC,
- WEBKIT_PARAM_READABLE));
-
- g_type_class_add_private(frameClass, sizeof(WebKitWebFramePrivate));
-}
-
-static void webkit_web_frame_init(WebKitWebFrame* frame)
-{
- WebKitWebFramePrivate* priv = G_TYPE_INSTANCE_GET_PRIVATE(frame, WEBKIT_TYPE_WEB_FRAME, WebKitWebFramePrivate);
-
- // TODO: Move constructor code here.
- frame->priv = priv;
-}
-
-
-/**
- * webkit_web_frame_new:
- * @web_view: the controlling #WebKitWebView
- *
- * Creates a new #WebKitWebFrame initialized with a controlling #WebKitWebView.
- *
- * Returns: a new #WebKitWebFrame
- *
- * Deprecated: 1.0.2: #WebKitWebFrame can only be used to inspect existing
- * frames.
- **/
-WebKitWebFrame* webkit_web_frame_new(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
-
- WebKitWebFrame* frame = WEBKIT_WEB_FRAME(g_object_new(WEBKIT_TYPE_WEB_FRAME, NULL));
- WebKitWebFramePrivate* priv = frame->priv;
- WebKitWebViewPrivate* viewPriv = webView->priv;
-
- priv->webView = webView;
- WebKit::FrameLoaderClient* client = new WebKit::FrameLoaderClient(frame);
- priv->coreFrame = Frame::create(viewPriv->corePage, 0, client).get();
- priv->coreFrame->init();
-
- priv->origin = 0;
-
- return frame;
-}
-
-/**
- * webkit_web_frame_get_title:
- * @frame: a #WebKitWebFrame
- *
- * Returns the @frame's document title
- *
- * Return value: the title of @frame
- */
-const gchar* webkit_web_frame_get_title(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- WebKitWebFramePrivate* priv = frame->priv;
- return priv->title;
-}
-
-/**
- * webkit_web_frame_get_uri:
- * @frame: a #WebKitWebFrame
- *
- * Returns the current URI of the contents displayed by the @frame
- *
- * Return value: the URI of @frame
- */
-const gchar* webkit_web_frame_get_uri(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- WebKitWebFramePrivate* priv = frame->priv;
- return priv->uri;
-}
-
-/**
- * webkit_web_frame_get_web_view:
- * @frame: a #WebKitWebFrame
- *
- * Returns the #WebKitWebView that manages this #WebKitWebFrame.
- *
- * The #WebKitWebView returned manages the entire hierarchy of #WebKitWebFrame
- * objects that contains @frame.
- *
- * Return value: (transfer none): the #WebKitWebView that manages @frame
- */
-WebKitWebView* webkit_web_frame_get_web_view(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- WebKitWebFramePrivate* priv = frame->priv;
- return priv->webView;
-}
-
-/**
- * webkit_web_frame_get_name:
- * @frame: a #WebKitWebFrame
- *
- * Returns the @frame's name
- *
- * Return value: the name of @frame. This method will return NULL if
- * the #WebKitWebFrame is invalid or an empty string if it is not backed
- * by a live WebCore frame.
- */
-const gchar* webkit_web_frame_get_name(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return "";
-
- WebKitWebFramePrivate* priv = frame->priv;
- CString frameName = coreFrame->tree()->uniqueName().string().utf8();
- if (!g_strcmp0(frameName.data(), priv->name))
- return priv->name;
-
- g_free(priv->name);
- priv->name = g_strdup(frameName.data());
- return priv->name;
-}
-
-/**
- * webkit_web_frame_get_parent:
- * @frame: a #WebKitWebFrame
- *
- * Returns the @frame's parent frame, or %NULL if it has none.
- *
- * Return value: (transfer none): the parent #WebKitWebFrame or %NULL in case there is none
- */
-WebKitWebFrame* webkit_web_frame_get_parent(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return 0;
-
- return kit(coreFrame->tree()->parent());
-}
-
-/**
- * webkit_web_frame_load_uri:
- * @frame: a #WebKitWebFrame
- * @uri: an URI string
- *
- * Requests loading of the specified URI string.
- *
- * Since: 1.1.1
- */
-void webkit_web_frame_load_uri(WebKitWebFrame* frame, const gchar* uri)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
- g_return_if_fail(uri);
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return;
-
- coreFrame->loader()->load(FrameLoadRequest(coreFrame, ResourceRequest(KURL(KURL(), String::fromUTF8(uri)))));
-}
-
-static void webkit_web_frame_load_data(WebKitWebFrame* frame, const gchar* content, const gchar* mimeType, const gchar* encoding, const gchar* baseURL, const gchar* unreachableURL)
-{
- Frame* coreFrame = core(frame);
- ASSERT(coreFrame);
-
- KURL baseKURL = baseURL ? KURL(KURL(), String::fromUTF8(baseURL)) : blankURL();
-
- ResourceRequest request(baseKURL);
-
- RefPtr<SharedBuffer> sharedBuffer = SharedBuffer::create(content, strlen(content));
- SubstituteData substituteData(sharedBuffer.release(),
- mimeType ? String::fromUTF8(mimeType) : String::fromUTF8("text/html"),
- encoding ? String::fromUTF8(encoding) : String::fromUTF8("UTF-8"),
- KURL(KURL(), String::fromUTF8(unreachableURL)),
- KURL(KURL(), String::fromUTF8(unreachableURL)));
-
- coreFrame->loader()->load(FrameLoadRequest(coreFrame, request, substituteData));
-}
-
-/**
- * webkit_web_frame_load_string:
- * @frame: a #WebKitWebFrame
- * @content: an URI string
- * @mime_type: the MIME type, or %NULL
- * @encoding: the encoding, or %NULL
- * @base_uri: the base URI for relative locations
- *
- * Requests loading of the given @content with the specified @mime_type,
- * @encoding and @base_uri.
- *
- * If @mime_type is %NULL, "text/html" is assumed.
- *
- * If @encoding is %NULL, "UTF-8" is assumed.
- *
- * Since: 1.1.1
- */
-void webkit_web_frame_load_string(WebKitWebFrame* frame, const gchar* content, const gchar* contentMimeType, const gchar* contentEncoding, const gchar* baseUri)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
- g_return_if_fail(content);
-
- webkit_web_frame_load_data(frame, content, contentMimeType, contentEncoding, baseUri, 0);
-}
-
-/**
- * webkit_web_frame_load_alternate_string:
- * @frame: a #WebKitWebFrame
- * @content: the alternate content to display as the main page of the @frame
- * @base_url: the base URI for relative locations
- * @unreachable_url: the URL for the alternate page content
- *
- * Request loading of an alternate content for a URL that is unreachable.
- * Using this method will preserve the back-forward list. The URI passed in
- * @base_url has to be an absolute URI.
- *
- * Since: 1.1.6
- */
-void webkit_web_frame_load_alternate_string(WebKitWebFrame* frame, const gchar* content, const gchar* baseURL, const gchar* unreachableURL)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
- g_return_if_fail(content);
-
- webkit_web_frame_load_data(frame, content, 0, 0, baseURL, unreachableURL);
-}
-
-/**
- * webkit_web_frame_load_request:
- * @frame: a #WebKitWebFrame
- * @request: a #WebKitNetworkRequest
- *
- * Connects to a given URI by initiating an asynchronous client request.
- *
- * Creates a provisional data source that will transition to a committed data
- * source once any data has been received. Use webkit_web_frame_stop_loading() to
- * stop the load. This function is typically invoked on the main frame.
- */
-void webkit_web_frame_load_request(WebKitWebFrame* frame, WebKitNetworkRequest* request)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
- g_return_if_fail(WEBKIT_IS_NETWORK_REQUEST(request));
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return;
-
- coreFrame->loader()->load(FrameLoadRequest(coreFrame->document()->securityOrigin(), core(request)));
-}
-
-/**
- * webkit_web_frame_stop_loading:
- * @frame: a #WebKitWebFrame
- *
- * Stops any pending loads on @frame's data source, and those of its children.
- */
-void webkit_web_frame_stop_loading(WebKitWebFrame* frame)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return;
-
- coreFrame->loader()->stopAllLoaders();
-}
-
-/**
- * webkit_web_frame_reload:
- * @frame: a #WebKitWebFrame
- *
- * Reloads the initial request.
- */
-void webkit_web_frame_reload(WebKitWebFrame* frame)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return;
-
- coreFrame->loader()->reload();
-}
-
-/**
- * webkit_web_frame_find_frame:
- * @frame: a #WebKitWebFrame
- * @name: the name of the frame to be found
- *
- * For pre-defined names, returns @frame if @name is "_self" or "_current",
- * returns @frame's parent frame if @name is "_parent", and returns the main
- * frame if @name is "_top". Also returns @frame if it is the main frame and
- * @name is either "_parent" or "_top". For other names, this function returns
- * the first frame that matches @name. This function searches @frame and its
- * descendents first, then @frame's parent and its children moving up the
- * hierarchy until a match is found. If no match is found in @frame's
- * hierarchy, this function will search for a matching frame in other main
- * frame hierarchies. Returns %NULL if no match is found.
- *
- * Return value: (transfer none): the found #WebKitWebFrame or %NULL in case none is found
- */
-WebKitWebFrame* webkit_web_frame_find_frame(WebKitWebFrame* frame, const gchar* name)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
- g_return_val_if_fail(name, 0);
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return 0;
-
- String nameString = String::fromUTF8(name);
- return kit(coreFrame->tree()->find(AtomicString(nameString)));
-}
-
-/**
- * webkit_web_frame_get_global_context:
- * @frame: a #WebKitWebFrame
- *
- * Gets the global JavaScript execution context. Use this function to bridge
- * between the WebKit and JavaScriptCore APIs.
- *
- * Return value: (transfer none): the global JavaScript context #JSGlobalContextRef
- */
-JSGlobalContextRef webkit_web_frame_get_global_context(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return 0;
-
- return toGlobalRef(coreFrame->script()->globalObject(mainThreadNormalWorld())->globalExec());
-}
-
-/**
- * webkit_web_frame_get_data_source:
- * @frame: a #WebKitWebFrame
- *
- * Returns the committed data source.
- *
- * Return value: (transfer none): the committed #WebKitWebDataSource.
- *
- * Since: 1.1.14
- */
-WebKitWebDataSource* webkit_web_frame_get_data_source(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- Frame* coreFrame = core(frame);
- return webkit_web_frame_get_data_source_from_core_loader(coreFrame->loader()->documentLoader());
-}
-
-/**
- * webkit_web_frame_get_provisional_data_source:
- * @frame: a #WebKitWebFrame
- *
- * You use the webkit_web_frame_load_request method to initiate a request that
- * creates a provisional data source. The provisional data source will
- * transition to a committed data source once any data has been received. Use
- * webkit_web_frame_get_data_source to get the committed data source.
- *
- * Return value: (transfer none): the provisional #WebKitWebDataSource or %NULL if a load
- * request is not in progress.
- *
- * Since: 1.1.14
- */
-WebKitWebDataSource* webkit_web_frame_get_provisional_data_source(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- Frame* coreFrame = core(frame);
- return webkit_web_frame_get_data_source_from_core_loader(coreFrame->loader()->provisionalDocumentLoader());
-}
-
-static void begin_print_callback(GtkPrintOperation* op, GtkPrintContext* context, gpointer user_data)
-{
- PrintContext* printContext = reinterpret_cast<PrintContext*>(user_data);
-
- float width = gtk_print_context_get_width(context);
- float height = gtk_print_context_get_height(context);
- FloatRect printRect = FloatRect(0, 0, width, height);
-
- printContext->begin(width);
-
- // TODO: Margin adjustments and header/footer support
- float headerHeight = 0;
- float footerHeight = 0;
- float pageHeight; // height of the page adjusted by margins
- printContext->computePageRects(printRect, headerHeight, footerHeight, 1.0, pageHeight);
- gtk_print_operation_set_n_pages(op, printContext->pageCount());
-}
-
-static void draw_page_callback(GtkPrintOperation*, GtkPrintContext* gtkPrintContext, gint pageNumber, PrintContext* corePrintContext)
-{
- if (pageNumber >= static_cast<gint>(corePrintContext->pageCount()))
- return;
-
- cairo_t* cr = gtk_print_context_get_cairo_context(gtkPrintContext);
- float pageWidth = gtk_print_context_get_width(gtkPrintContext);
-
- PlatformContextCairo platformContext(cr);
- GraphicsContext graphicsContext(&platformContext);
- corePrintContext->spoolPage(graphicsContext, pageNumber, pageWidth);
-}
-
-static void end_print_callback(GtkPrintOperation* op, GtkPrintContext* context, gpointer user_data)
-{
- PrintContext* printContext = reinterpret_cast<PrintContext*>(user_data);
- printContext->end();
-}
-
-/**
- * webkit_web_frame_print_full:
- * @frame: a #WebKitWebFrame to be printed
- * @operation: the #GtkPrintOperation to be carried
- * @action: the #GtkPrintOperationAction to be performed
- * @error: #GError for error return
- *
- * Prints the given #WebKitWebFrame, using the given #GtkPrintOperation
- * and #GtkPrintOperationAction. This function wraps a call to
- * gtk_print_operation_run() for printing the contents of the
- * #WebKitWebFrame.
- *
- * Returns: The #GtkPrintOperationResult specifying the result of this operation.
- *
- * Since: 1.1.5
- */
-GtkPrintOperationResult webkit_web_frame_print_full(WebKitWebFrame* frame, GtkPrintOperation* operation, GtkPrintOperationAction action, GError** error)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), GTK_PRINT_OPERATION_RESULT_ERROR);
- g_return_val_if_fail(GTK_IS_PRINT_OPERATION(operation), GTK_PRINT_OPERATION_RESULT_ERROR);
-
- GtkWidget* topLevel = gtk_widget_get_toplevel(GTK_WIDGET(webkit_web_frame_get_web_view(frame)));
- if (!widgetIsOnscreenToplevelWindow(topLevel))
- topLevel = 0;
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return GTK_PRINT_OPERATION_RESULT_ERROR;
-
- PrintContext printContext(coreFrame);
-
- g_signal_connect(operation, "begin-print", G_CALLBACK(begin_print_callback), &printContext);
- g_signal_connect(operation, "draw-page", G_CALLBACK(draw_page_callback), &printContext);
- g_signal_connect(operation, "end-print", G_CALLBACK(end_print_callback), &printContext);
-
- return gtk_print_operation_run(operation, action, GTK_WINDOW(topLevel), error);
-}
-
-/**
- * webkit_web_frame_print:
- * @frame: a #WebKitWebFrame
- *
- * Prints the given #WebKitWebFrame, by presenting a print dialog to the
- * user. If you need more control over the printing process, see
- * webkit_web_frame_print_full().
- *
- * Since: 1.1.5
- */
-void webkit_web_frame_print(WebKitWebFrame* frame)
-{
- g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
-
- WebKitWebFramePrivate* priv = frame->priv;
- GtkPrintOperation* operation = gtk_print_operation_new();
- GError* error = 0;
-
- webkit_web_frame_print_full(frame, operation, GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG, &error);
- g_object_unref(operation);
-
- if (error) {
- GtkWidget* window = gtk_widget_get_toplevel(GTK_WIDGET(priv->webView));
- GtkWidget* dialog = gtk_message_dialog_new(widgetIsOnscreenToplevelWindow(window) ? GTK_WINDOW(window) : 0,
- GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_MESSAGE_ERROR,
- GTK_BUTTONS_CLOSE,
- "%s", error->message);
-
- g_error_free(error);
-
- g_signal_connect(dialog, "response", G_CALLBACK(gtk_widget_destroy), NULL);
- gtk_widget_show(dialog);
- }
-}
-
-gchar* webkit_web_frame_get_response_mime_type(WebKitWebFrame* frame)
-{
- Frame* coreFrame = core(frame);
- WebCore::DocumentLoader* docLoader = coreFrame->loader()->documentLoader();
- String mimeType = docLoader->responseMIMEType();
- return g_strdup(mimeType.utf8().data());
-}
-
-/**
- * webkit_web_frame_get_load_status:
- * @frame: a #WebKitWebView
- *
- * Determines the current status of the load.
- *
- * Returns: The #WebKitLoadStatus specifying the status of the current load.
- *
- * Since: 1.1.7
- */
-WebKitLoadStatus webkit_web_frame_get_load_status(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), WEBKIT_LOAD_FINISHED);
-
- WebKitWebFramePrivate* priv = frame->priv;
- return priv->loadStatus;
-}
-
-GtkPolicyType webkit_web_frame_get_horizontal_scrollbar_policy(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), GTK_POLICY_AUTOMATIC);
-
- Frame* coreFrame = core(frame);
- FrameView* view = coreFrame->view();
- if (!view)
- return GTK_POLICY_AUTOMATIC;
-
- ScrollbarMode hMode = view->horizontalScrollbarMode();
-
- if (hMode == ScrollbarAlwaysOn)
- return GTK_POLICY_ALWAYS;
-
- if (hMode == ScrollbarAlwaysOff)
- return GTK_POLICY_NEVER;
-
- return GTK_POLICY_AUTOMATIC;
-}
-
-GtkPolicyType webkit_web_frame_get_vertical_scrollbar_policy(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), GTK_POLICY_AUTOMATIC);
-
- Frame* coreFrame = core(frame);
- FrameView* view = coreFrame->view();
- if (!view)
- return GTK_POLICY_AUTOMATIC;
-
- ScrollbarMode vMode = view->verticalScrollbarMode();
-
- if (vMode == ScrollbarAlwaysOn)
- return GTK_POLICY_ALWAYS;
-
- if (vMode == ScrollbarAlwaysOff)
- return GTK_POLICY_NEVER;
-
- return GTK_POLICY_AUTOMATIC;
-}
-
-/**
- * webkit_web_frame_get_security_origin:
- * @frame: a #WebKitWebFrame
- *
- * Returns the @frame's security origin.
- *
- * Return value: (transfer none): the security origin of @frame
- *
- * Since: 1.1.14
- */
-WebKitSecurityOrigin* webkit_web_frame_get_security_origin(WebKitWebFrame* frame)
-{
- WebKitWebFramePrivate* priv = frame->priv;
- if (!priv->coreFrame || !priv->coreFrame->document() || !priv->coreFrame->document()->securityOrigin())
- return 0;
-
- if (priv->origin && priv->origin->priv->coreOrigin.get() == priv->coreFrame->document()->securityOrigin())
- return priv->origin;
-
- if (priv->origin)
- g_object_unref(priv->origin);
-
- priv->origin = kit(priv->coreFrame->document()->securityOrigin());
- return priv->origin;
-}
-
-/**
- * webkit_web_frame_get_network_response:
- * @frame: a #WebKitWebFrame
- *
- * Returns a #WebKitNetworkResponse object representing the response
- * that was given to the request for the given frame, or NULL if the
- * frame was not created by a load. You must unref the object when you
- * are done with it.
- *
- * Return value: (transfer full): a #WebKitNetworkResponse object
- *
- * Since: 1.1.18
- */
-WebKitNetworkResponse* webkit_web_frame_get_network_response(WebKitWebFrame* frame)
-{
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return 0;
-
- WebCore::DocumentLoader* loader = coreFrame->loader()->activeDocumentLoader();
- if (!loader)
- return 0;
-
- return kitNew(loader->response());
-}
-
-/**
- * webkit_web_frame_replace_selection:
- * @frame: a #WebKitWeFrame
- * @text: the text to insert in place of the current selection
- *
- * Replaces the current selection in @frame, if any, with @text.
- *
- * Since: 1.5.1
- **/
-void webkit_web_frame_replace_selection(WebKitWebFrame* frame, const char* text)
-{
- Frame* coreFrame = core(frame);
- bool selectReplacement = false;
- bool smartReplace = true;
- coreFrame->editor().replaceSelectionWithText(text, selectReplacement, smartReplace);
-}
-
-/**
- * webkit_web_frame_get_range_for_word_around_caret:
- * @frame: a #WebKitWebFrame
- *
- * Returns a #WebKitDOMRange for the word where the caret is currently
- * positioned.
- *
- * Returns: (transfer none): a #WebKitDOMRange spanning the word where the caret
- * currently is positioned. If there is no caret %NULL will be
- * returned.
- *
- * Since: 1.5.1.
- **/
-WebKitDOMRange* webkit_web_frame_get_range_for_word_around_caret(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- Frame* coreFrame = core(frame);
- FrameSelection* selection = coreFrame->selection();
- if (selection->isNone() || selection->isRange())
- return 0;
- VisibleSelection visibleSelection(selection->selection().visibleStart());
- visibleSelection.expandUsingGranularity(WordGranularity);
-
- return kit(visibleSelection.firstRange().get());
-}
-
-/**
- * webkit_web_frame_get_dom_document:
- * @frame: a #WebKitWebFrame
- *
- * Returns: (transfer none): the #WebKitDOMDocument currently loaded
- * in the @frame or %NULL if no document is loaded
- *
- * Since: 1.10
- **/
-WebKitDOMDocument* webkit_web_frame_get_dom_document(WebKitWebFrame* frame)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- Frame* coreFrame = core(frame);
- if (!coreFrame)
- return 0;
-
- Document* doc = coreFrame->document();
- if (!doc)
- return 0;
-
- return kit(doc);
-}
-
-namespace WebKit {
-
-WebKitWebView* getViewFromFrame(WebKitWebFrame* frame)
-{
- WebKitWebFramePrivate* priv = frame->priv;
- return priv->webView;
-}
-
-WebCore::Frame* core(WebKitWebFrame* frame)
-{
- if (!frame)
- return 0;
-
- WebKitWebFramePrivate* priv = frame->priv;
- return priv ? priv->coreFrame : 0;
-}
-
-WebKitWebFrame* kit(WebCore::Frame* coreFrame)
-{
- if (!coreFrame)
- return 0;
-
- ASSERT(coreFrame->loader());
- WebKit::FrameLoaderClient* client = static_cast<WebKit::FrameLoaderClient*>(coreFrame->loader()->client());
- return client ? client->webFrame() : 0;
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebframe.h b/Source/WebKit/gtk/webkit/webkitwebframe.h
deleted file mode 100644
index 404b29fdb..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebframe.h
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
- * Copyright (C) 2007 Holger Hans Peter Freyther
- * Copyright (C) 2007 Alp Toker <alp@atoker.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebframe_h
-#define webkitwebframe_h
-
-#include <glib-object.h>
-#include <gtk/gtk.h>
-#include <JavaScriptCore/JSBase.h>
-#include <webkit/webkitdefines.h>
-#include <webkit/webkitnetworkrequest.h>
-#include <webkit/webkitwebdatasource.h>
-#include <webkitdom/webkitdom.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_FRAME (webkit_web_frame_get_type())
-#define WEBKIT_WEB_FRAME(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_FRAME, WebKitWebFrame))
-#define WEBKIT_WEB_FRAME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_FRAME, WebKitWebFrameClass))
-#define WEBKIT_IS_WEB_FRAME(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_FRAME))
-#define WEBKIT_IS_WEB_FRAME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_FRAME))
-#define WEBKIT_WEB_FRAME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_FRAME, WebKitWebFrameClass))
-
-typedef struct _WebKitWebFramePrivate WebKitWebFramePrivate;
-
-struct _WebKitWebFrame {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebFramePrivate *priv;
-};
-
-struct _WebKitWebFrameClass {
- GObjectClass parent_class;
-
- /*< public >*/
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
- void (*_webkit_reserved4) (void);
- void (*_webkit_reserved5) (void);
- void (*_webkit_reserved6) (void);
-};
-
-/**
- * WebKitLoadStatus:
- * @WEBKIT_LOAD_PROVISIONAL: No data has been received yet, empty
- * structures have been allocated to perform the load; the load may
- * still fail for transport issues such as not being able to resolve a
- * name, or connect to a port.
- * @WEBKIT_LOAD_COMMITTED: The first data chunk has arrived, meaning
- * that the necessary transport requirements are stabilished, and the
- * load is being performed.
- * @WEBKIT_LOAD_FIRST_VISUALLY_NON_EMPTY_LAYOUT: The first layout with
- * actual visible content happened; one or more layouts may have
- * happened before that caused nothing to be visible on the screen,
- * because the data available at the time was not significant enough.
- * @WEBKIT_LOAD_FINISHED: This state means that everything that was
- * required to display the page has been loaded.
- * @WEBKIT_LOAD_FAILED: This state means that some error occurred
- * during the page load that prevented it from being completed. You
- * can connect to the #WebKitWebView::load-error signal if you want to
- * know precisely what kind of error occurred.
- */
-typedef enum {
- WEBKIT_LOAD_PROVISIONAL,
- WEBKIT_LOAD_COMMITTED,
- WEBKIT_LOAD_FINISHED,
- WEBKIT_LOAD_FIRST_VISUALLY_NON_EMPTY_LAYOUT,
- WEBKIT_LOAD_FAILED
-} WebKitLoadStatus;
-
-WEBKIT_API GType
-webkit_web_frame_get_type (void);
-
-#ifndef WEBKIT_DISABLE_DEPRECATED
-WEBKIT_API WebKitWebFrame *
-webkit_web_frame_new (WebKitWebView *web_view);
-#endif
-
-WEBKIT_API WebKitWebView *
-webkit_web_frame_get_web_view (WebKitWebFrame *frame);
-
-WEBKIT_API const gchar *
-webkit_web_frame_get_name (WebKitWebFrame *frame);
-
-WEBKIT_API const gchar *
-webkit_web_frame_get_title (WebKitWebFrame *frame);
-
-WEBKIT_API const gchar *
-webkit_web_frame_get_uri (WebKitWebFrame *frame);
-
-WEBKIT_API WebKitWebFrame*
-webkit_web_frame_get_parent (WebKitWebFrame *frame);
-
-WEBKIT_API void
-webkit_web_frame_load_uri (WebKitWebFrame *frame,
- const gchar *uri);
-
-WEBKIT_API void
-webkit_web_frame_load_string (WebKitWebFrame *frame,
- const gchar *content,
- const gchar *mime_type,
- const gchar *encoding,
- const gchar *base_uri);
-
-WEBKIT_API void
-webkit_web_frame_load_alternate_string (WebKitWebFrame *frame,
- const gchar *content,
- const gchar *base_url,
- const gchar *unreachable_url);
-
-WEBKIT_API void
-webkit_web_frame_load_request (WebKitWebFrame *frame,
- WebKitNetworkRequest *request);
-
-WEBKIT_API void
-webkit_web_frame_stop_loading (WebKitWebFrame *frame);
-
-WEBKIT_API void
-webkit_web_frame_reload (WebKitWebFrame *frame);
-
-WEBKIT_API WebKitWebFrame *
-webkit_web_frame_find_frame (WebKitWebFrame *frame,
- const gchar *name);
-
-WEBKIT_API JSGlobalContextRef
-webkit_web_frame_get_global_context (WebKitWebFrame *frame);
-
-WEBKIT_API GtkPrintOperationResult
-webkit_web_frame_print_full (WebKitWebFrame *frame,
- GtkPrintOperation *operation,
- GtkPrintOperationAction action,
- GError **error);
-
-WEBKIT_API void
-webkit_web_frame_print (WebKitWebFrame *frame);
-
-WEBKIT_API WebKitLoadStatus
-webkit_web_frame_get_load_status (WebKitWebFrame *frame);
-
-WEBKIT_API GtkPolicyType
-webkit_web_frame_get_horizontal_scrollbar_policy (WebKitWebFrame *frame);
-
-WEBKIT_API GtkPolicyType
-webkit_web_frame_get_vertical_scrollbar_policy (WebKitWebFrame *frame);
-
-WEBKIT_API WebKitWebDataSource *
-webkit_web_frame_get_data_source (WebKitWebFrame *frame);
-
-WEBKIT_API WebKitWebDataSource *
-webkit_web_frame_get_provisional_data_source (WebKitWebFrame *frame);
-
-WEBKIT_API WebKitSecurityOrigin*
-webkit_web_frame_get_security_origin (WebKitWebFrame *frame);
-
-WEBKIT_API WebKitNetworkResponse*
-webkit_web_frame_get_network_response (WebKitWebFrame *frame);
-
-WEBKIT_API void
-webkit_web_frame_replace_selection (WebKitWebFrame *frame,
- const char *text);
-
-WEBKIT_API WebKitDOMRange*
-webkit_web_frame_get_range_for_word_around_caret (WebKitWebFrame *frame);
-
-WEBKIT_API WebKitDOMDocument*
-webkit_web_frame_get_dom_document (WebKitWebFrame *frame);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebframeprivate.h b/Source/WebKit/gtk/webkit/webkitwebframeprivate.h
deleted file mode 100644
index 80210d8ba..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebframeprivate.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebframeprivate_h
-#define webkitwebframeprivate_h
-
-#include "Frame.h"
-#include "webkitwebframe.h"
-
-namespace WebKit {
-
-WebKitWebView* getViewFromFrame(WebKitWebFrame*);
-
-WebCore::Frame* core(WebKitWebFrame*);
-WebKitWebFrame* kit(WebCore::Frame*);
-
-}
-
-extern "C" {
-
-typedef struct _WebKitWebFramePrivate WebKitWebFramePrivate;
-struct _WebKitWebFramePrivate {
- WebCore::Frame* coreFrame;
- WebKitWebView* webView;
-
- gchar* name;
- gchar* title;
- gchar* uri;
- WebKitLoadStatus loadStatus;
- WebKitSecurityOrigin* origin;
-};
-
-void webkit_web_frame_core_frame_gone(WebKitWebFrame*);
-
-// FIXME: move this functionality into 'WebKitWebDataSource'?
-WEBKIT_API gchar* webkit_web_frame_get_response_mime_type(WebKitWebFrame*);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp b/Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp
deleted file mode 100644
index 5b7db2223..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp
+++ /dev/null
@@ -1,530 +0,0 @@
-/*
- * Copyright (C) 2008, 2009 Jan Michael C. Alonzo
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebhistoryitem.h"
-
-#include "HistoryItem.h"
-#include "KURL.h"
-#include "webkitglobalsprivate.h"
-#include "webkitwebhistoryitemprivate.h"
-#include <glib.h>
-#include <glib/gi18n-lib.h>
-#include <wtf/text/CString.h>
-#include <wtf/text/WTFString.h>
-
-/**
- * SECTION:webkitwebhistoryitem
- * @short_description: One item of the #WebKitWebBackForwardList and or global history
- * @see_also: #WebKitWebBackForwardList
- *
- * A history item consists out of a title and a uri. It can be part of the
- * #WebKitWebBackForwardList and the global history. The global history is used
- * for coloring the links of visited sites. #WebKitWebHistoryItem's constructed with
- * #webkit_web_history_item_new and #webkit_web_history_item_new_with_data are
- * automatically added to the global history.
- *
- * <informalexample><programlisting>
- * /<!-- -->* Inject a visited page into the global history *<!-- -->/
- * webkit_web_history_item_new_with_data("http://www.gnome.org/", "GNOME: The Free Software Desktop Project");
- * webkit_web_history_item_new_with_data("http://www.webkit.org/", "The WebKit Open Source Project");
- * </programlisting></informalexample>
- *
- */
-
-using namespace WebKit;
-
-struct _WebKitWebHistoryItemPrivate {
- WebCore::HistoryItem* historyItem;
-
- WTF::CString title;
- WTF::CString alternateTitle;
- WTF::CString uri;
- WTF::CString originalUri;
-
- gboolean disposed;
-};
-
-enum {
- PROP_0,
-
- PROP_TITLE,
- PROP_ALTERNATE_TITLE,
- PROP_URI,
- PROP_ORIGINAL_URI,
- PROP_LAST_VISITED_TIME
-};
-
-G_DEFINE_TYPE(WebKitWebHistoryItem, webkit_web_history_item, G_TYPE_OBJECT);
-
-static void webkit_web_history_item_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec);
-
-static void webkit_web_history_item_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec);
-
-GHashTable* webkit_history_items()
-{
- static GHashTable* historyItems = g_hash_table_new_full(g_direct_hash, g_direct_equal, NULL, g_object_unref);
- return historyItems;
-}
-
-void webkit_history_item_add(WebKitWebHistoryItem* webHistoryItem, WebCore::HistoryItem* historyItem)
-{
- g_return_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem));
-
- GHashTable* table = webkit_history_items();
- g_hash_table_insert(table, historyItem, webHistoryItem);
-}
-
-static void webkit_web_history_item_dispose(GObject* object)
-{
- WebKitWebHistoryItem* webHistoryItem = WEBKIT_WEB_HISTORY_ITEM(object);
- WebKitWebHistoryItemPrivate* priv = webHistoryItem->priv;
-
- if (!priv->disposed) {
- WebCore::HistoryItem* item = core(webHistoryItem);
- item->deref();
- priv->disposed = true;
- }
-
- G_OBJECT_CLASS(webkit_web_history_item_parent_class)->dispose(object);
-}
-
-static void webkit_web_history_item_finalize(GObject* object)
-{
- WebKitWebHistoryItem* webHistoryItem = WEBKIT_WEB_HISTORY_ITEM(object);
- WebKitWebHistoryItemPrivate* priv = webHistoryItem->priv;
-
- priv->title = WTF::CString();
- priv->alternateTitle = WTF::CString();
- priv->uri = WTF::CString();
- priv->originalUri = WTF::CString();
-
- G_OBJECT_CLASS(webkit_web_history_item_parent_class)->finalize(object);
-}
-
-static void webkit_web_history_item_class_init(WebKitWebHistoryItemClass* klass)
-{
- GObjectClass* gobject_class = G_OBJECT_CLASS(klass);
-
- gobject_class->dispose = webkit_web_history_item_dispose;
- gobject_class->finalize = webkit_web_history_item_finalize;
- gobject_class->set_property = webkit_web_history_item_set_property;
- gobject_class->get_property = webkit_web_history_item_get_property;
-
- webkitInit();
-
- /**
- * WebKitWebHistoryItem:title:
- *
- * The title of the history item.
- *
- * Since: 1.0.2
- */
- g_object_class_install_property(gobject_class,
- PROP_TITLE,
- g_param_spec_string(
- "title",
- _("Title"),
- _("The title of the history item"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebHistoryItem:alternate-title:
- *
- * The alternate title of the history item.
- *
- * Since: 1.0.2
- */
- g_object_class_install_property(gobject_class,
- PROP_ALTERNATE_TITLE,
- g_param_spec_string(
- "alternate-title",
- _("Alternate Title"),
- _("The alternate title of the history item"),
- NULL,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitWebHistoryItem:uri:
- *
- * The URI of the history item.
- *
- * Since: 1.0.2
- */
- g_object_class_install_property(gobject_class,
- PROP_URI,
- g_param_spec_string(
- "uri",
- _("URI"),
- _("The URI of the history item"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebHistoryItem:original-uri:
- *
- * The original URI of the history item.
- *
- * Since: 1.0.2
- */
- g_object_class_install_property(gobject_class,
- PROP_ORIGINAL_URI,
- g_param_spec_string(
- "original-uri",
- _("Original URI"),
- _("The original URI of the history item"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebHistoryItem:last-visited-time:
- *
- * The time at which the history item was last visited.
- *
- * Since: 1.0.2
- */
- g_object_class_install_property(gobject_class,
- PROP_LAST_VISITED_TIME,
- g_param_spec_double(
- "last-visited-time",
- _("Last visited Time"),
- _("The time at which the history item was last visited"),
- 0, G_MAXDOUBLE, 0,
- WEBKIT_PARAM_READABLE));
-
- g_type_class_add_private(gobject_class, sizeof(WebKitWebHistoryItemPrivate));
-}
-
-static void webkit_web_history_item_init(WebKitWebHistoryItem* webHistoryItem)
-{
- webHistoryItem->priv = G_TYPE_INSTANCE_GET_PRIVATE(webHistoryItem, WEBKIT_TYPE_WEB_HISTORY_ITEM, WebKitWebHistoryItemPrivate);
-}
-
-static void webkit_web_history_item_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec)
-{
- WebKitWebHistoryItem* webHistoryItem = WEBKIT_WEB_HISTORY_ITEM(object);
-
- switch(prop_id) {
- case PROP_ALTERNATE_TITLE:
- webkit_web_history_item_set_alternate_title(webHistoryItem, g_value_get_string(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-static void webkit_web_history_item_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec)
-{
- WebKitWebHistoryItem* webHistoryItem = WEBKIT_WEB_HISTORY_ITEM(object);
-
- switch (prop_id) {
- case PROP_TITLE:
- g_value_set_string(value, webkit_web_history_item_get_title(webHistoryItem));
- break;
- case PROP_ALTERNATE_TITLE:
- g_value_set_string(value, webkit_web_history_item_get_alternate_title(webHistoryItem));
- break;
- case PROP_URI:
- g_value_set_string(value, webkit_web_history_item_get_uri(webHistoryItem));
- break;
- case PROP_ORIGINAL_URI:
- g_value_set_string(value, webkit_web_history_item_get_original_uri(webHistoryItem));
- break;
- case PROP_LAST_VISITED_TIME:
- g_value_set_double(value, webkit_web_history_item_get_last_visited_time(webHistoryItem));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-/* Helper function to create a new WebHistoryItem instance when needed */
-WebKitWebHistoryItem* webkit_web_history_item_new_with_core_item(PassRefPtr<WebCore::HistoryItem> historyItem)
-{
- return kit(historyItem);
-}
-
-
-/**
- * webkit_web_history_item_new:
- *
- * Creates a new #WebKitWebHistoryItem instance
- *
- * Return value: the new #WebKitWebHistoryItem
- */
-WebKitWebHistoryItem* webkit_web_history_item_new()
-{
- WebKitWebHistoryItem* webHistoryItem = WEBKIT_WEB_HISTORY_ITEM(g_object_new(WEBKIT_TYPE_WEB_HISTORY_ITEM, NULL));
- WebKitWebHistoryItemPrivate* priv = webHistoryItem->priv;
-
- RefPtr<WebCore::HistoryItem> item = WebCore::HistoryItem::create();
- priv->historyItem = item.release().leakRef();
- webkit_history_item_add(webHistoryItem, priv->historyItem);
-
- return webHistoryItem;
-}
-
-/**
- * webkit_web_history_item_new_with_data:
- * @uri: the URI of the page
- * @title: the title of the page
- *
- * Creates a new #WebKitWebHistoryItem with the given URI and title
- *
- * Return value: the new #WebKitWebHistoryItem
- */
-WebKitWebHistoryItem* webkit_web_history_item_new_with_data(const gchar* uri, const gchar* title)
-{
- WebKitWebHistoryItem* webHistoryItem = WEBKIT_WEB_HISTORY_ITEM(g_object_new(WEBKIT_TYPE_WEB_HISTORY_ITEM, NULL));
- WebKitWebHistoryItemPrivate* priv = webHistoryItem->priv;
-
- WebCore::KURL historyUri(WebCore::KURL(), uri);
- WTF::String historyTitle = WTF::String::fromUTF8(title);
- RefPtr<WebCore::HistoryItem> item = WebCore::HistoryItem::create(historyUri, historyTitle, 0);
- priv->historyItem = item.release().leakRef();
- webkit_history_item_add(webHistoryItem, priv->historyItem);
-
- return webHistoryItem;
-}
-
-/**
- * webkit_web_history_item_get_title:
- * @web_history_item: a #WebKitWebHistoryItem
- *
- * Returns: the page title of @web_history_item
- */
-const gchar* webkit_web_history_item_get_title(WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), NULL);
-
- WebCore::HistoryItem* item = core(webHistoryItem);
-
- g_return_val_if_fail(item, NULL);
-
- WebKitWebHistoryItemPrivate* priv = webHistoryItem->priv;
- priv->title = item->title().utf8();
-
- return priv->title.data();
-}
-
-/**
- * webkit_web_history_item_get_alternate_title:
- * @web_history_item: a #WebKitWebHistoryItem
- *
- * Returns the alternate title of @web_history_item
- *
- * Return value: the alternate title of @web_history_item
- */
-const gchar* webkit_web_history_item_get_alternate_title(WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), NULL);
-
- WebCore::HistoryItem* item = core(webHistoryItem);
-
- g_return_val_if_fail(item, NULL);
-
- WebKitWebHistoryItemPrivate* priv = webHistoryItem->priv;
- priv->alternateTitle = item->alternateTitle().utf8();
-
- return priv->alternateTitle.data();
-}
-
-/**
- * webkit_web_history_item_set_alternate_title:
- * @web_history_item: a #WebKitWebHistoryItem
- * @title: the alternate title for @this history item
- *
- * Sets an alternate title for @web_history_item
- */
-void webkit_web_history_item_set_alternate_title(WebKitWebHistoryItem* webHistoryItem, const gchar* title)
-{
- g_return_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem));
- g_return_if_fail(title);
-
- WebCore::HistoryItem* item = core(webHistoryItem);
-
- item->setAlternateTitle(WTF::String::fromUTF8(title));
- g_object_notify(G_OBJECT(webHistoryItem), "alternate-title");
-}
-
-/**
- * webkit_web_history_item_get_uri:
- * @web_history_item: a #WebKitWebHistoryItem
- *
- * Returns the URI of @this
- *
- * Return value: the URI of @web_history_item
- */
-const gchar* webkit_web_history_item_get_uri(WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), NULL);
-
- WebCore::HistoryItem* item = core(WEBKIT_WEB_HISTORY_ITEM(webHistoryItem));
-
- g_return_val_if_fail(item, NULL);
-
- WebKitWebHistoryItemPrivate* priv = webHistoryItem->priv;
- priv->uri = item->urlString().utf8();
-
- return priv->uri.data();
-}
-
-/**
- * webkit_web_history_item_get_original_uri:
- * @web_history_item: a #WebKitWebHistoryItem
- *
- * Returns the original URI of @web_history_item.
- *
- * Return value: the original URI of @web_history_item
- */
-const gchar* webkit_web_history_item_get_original_uri(WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), NULL);
-
- WebCore::HistoryItem* item = core(WEBKIT_WEB_HISTORY_ITEM(webHistoryItem));
-
- g_return_val_if_fail(item, NULL);
-
- WebKitWebHistoryItemPrivate* priv = webHistoryItem->priv;
- priv->originalUri = item->originalURLString().utf8();
-
- return webHistoryItem->priv->originalUri.data();
-}
-
-/**
- * webkit_web_history_item_get_last_visisted_time :
- * @web_history_item: a #WebKitWebHistoryItem
- *
- * Returns the last time @web_history_item was visited
- *
- * Return value: the time in seconds this @web_history_item was last visited
- */
-gdouble webkit_web_history_item_get_last_visited_time(WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), 0);
-
- WebCore::HistoryItem* item = core(WEBKIT_WEB_HISTORY_ITEM(webHistoryItem));
-
- g_return_val_if_fail(item, 0);
-
- return item->lastVisitedTime();
-}
-
-/**
- * webkit_web_history_item_copy:
- * @web_history_item: a #WebKitWebHistoryItem
- *
- * Makes a copy of the item for use with other WebView objects.
- *
- * Since: 1.1.18
- *
- * Return value: (transfer full): the new #WebKitWebHistoryItem.
- */
-WebKitWebHistoryItem* webkit_web_history_item_copy(WebKitWebHistoryItem* self)
-{
- WebKitWebHistoryItemPrivate* selfPrivate = self->priv;
-
- WebKitWebHistoryItem* item = WEBKIT_WEB_HISTORY_ITEM(g_object_new(WEBKIT_TYPE_WEB_HISTORY_ITEM, 0));
- WebKitWebHistoryItemPrivate* priv = item->priv;
-
- priv->title = selfPrivate->title;
- priv->alternateTitle = selfPrivate->alternateTitle;
- priv->uri = selfPrivate->uri;
- priv->originalUri = selfPrivate->originalUri;
-
- priv->historyItem = selfPrivate->historyItem->copy().leakRef();
-
- return item;
-}
-
-/* private methods */
-
-gchar* webkit_web_history_item_get_target(WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), NULL);
-
- WebCore::HistoryItem* item = core(webHistoryItem);
-
- g_return_val_if_fail(item, NULL);
-
- WTF::CString t = item->target().utf8();
- return g_strdup(t.data());
-}
-
-gboolean webkit_web_history_item_is_target_item(WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), false);
-
- WebCore::HistoryItem* item = core(webHistoryItem);
-
- g_return_val_if_fail(item, false);
-
- return item->isTargetItem();
-}
-
-GList* webkit_web_history_item_get_children(WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), NULL);
-
- WebCore::HistoryItem* item = core(webHistoryItem);
-
- g_return_val_if_fail(item, NULL);
-
- const WebCore::HistoryItemVector& children = item->children();
- if (!children.size())
- return NULL;
-
- unsigned size = children.size();
- GList* kids = NULL;
- for (unsigned i = 0; i < size; ++i)
- kids = g_list_prepend(kids, kit(children[i].get()));
-
- return g_list_reverse(kids);
-}
-
-WebCore::HistoryItem* WebKit::core(WebKitWebHistoryItem* webHistoryItem)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(webHistoryItem), NULL);
-
- return webHistoryItem->priv->historyItem;
-}
-
-WebKitWebHistoryItem* WebKit::kit(PassRefPtr<WebCore::HistoryItem> historyItem)
-{
- g_return_val_if_fail(historyItem, NULL);
-
- RefPtr<WebCore::HistoryItem> item = historyItem;
- GHashTable* table = webkit_history_items();
- WebKitWebHistoryItem* webHistoryItem = (WebKitWebHistoryItem*) g_hash_table_lookup(table, item.get());
-
- if (!webHistoryItem) {
- webHistoryItem = WEBKIT_WEB_HISTORY_ITEM(g_object_new(WEBKIT_TYPE_WEB_HISTORY_ITEM, NULL));
- WebKitWebHistoryItemPrivate* priv = webHistoryItem->priv;
-
- priv->historyItem = item.release().leakRef();
- webkit_history_item_add(webHistoryItem, priv->historyItem);
- }
-
- return webHistoryItem;
-}
-
diff --git a/Source/WebKit/gtk/webkit/webkitwebhistoryitem.h b/Source/WebKit/gtk/webkit/webkitwebhistoryitem.h
deleted file mode 100644
index 42c699e47..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebhistoryitem.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright (C) 2008 Jan Michael C. Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebhistoryitem_h
-#define webkitwebhistoryitem_h
-
-#include <glib.h>
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_HISTORY_ITEM (webkit_web_history_item_get_type())
-#define WEBKIT_WEB_HISTORY_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_HISTORY_ITEM, WebKitWebHistoryItem))
-#define WEBKIT_WEB_HISTORY_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_HISTORY_ITEM, WebKitWebHistoryItemClass))
-#define WEBKIT_IS_WEB_HISTORY_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_HISTORY_ITEM))
-#define WEBKIT_IS_WEB_HISTORY_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_HISTORY_ITEM))
-#define WEBKIT_WEB_HISTORY_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_HISTORY_ITEM, WebKitWebHistoryItemClass))
-
-typedef struct _WebKitWebHistoryItemPrivate WebKitWebHistoryItemPrivate;
-
-struct _WebKitWebHistoryItem {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebHistoryItemPrivate *priv;
-};
-
-struct _WebKitWebHistoryItemClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_web_history_item_get_type (void);
-
-WEBKIT_API WebKitWebHistoryItem *
-webkit_web_history_item_new (void);
-
-WEBKIT_API WebKitWebHistoryItem *
-webkit_web_history_item_new_with_data (const gchar *uri,
- const gchar *title);
-
-WEBKIT_API const gchar *
-webkit_web_history_item_get_title (WebKitWebHistoryItem *web_history_item);
-
-WEBKIT_API const gchar *
-webkit_web_history_item_get_alternate_title (WebKitWebHistoryItem *web_history_item);
-
-WEBKIT_API void
-webkit_web_history_item_set_alternate_title (WebKitWebHistoryItem *web_history_item,
- const gchar *title);
-
-WEBKIT_API const gchar *
-webkit_web_history_item_get_uri (WebKitWebHistoryItem *web_history_item);
-
-WEBKIT_API const gchar *
-webkit_web_history_item_get_original_uri (WebKitWebHistoryItem *web_history_item);
-
-WEBKIT_API gdouble
-webkit_web_history_item_get_last_visited_time (WebKitWebHistoryItem *web_history_item);
-
-WEBKIT_API WebKitWebHistoryItem*
-webkit_web_history_item_copy (WebKitWebHistoryItem *web_history_item);
-
-G_END_DECLS
-
-#endif /* webkitwebhistoryitem_h */
diff --git a/Source/WebKit/gtk/webkit/webkitwebhistoryitemprivate.h b/Source/WebKit/gtk/webkit/webkitwebhistoryitemprivate.h
deleted file mode 100644
index 0bbe9074c..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebhistoryitemprivate.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebhistoryitemprivate_h
-#define webkitwebhistoryitemprivate_h
-
-#include "HistoryItem.h"
-
-namespace WebKit {
-
-WebCore::HistoryItem* core(WebKitWebHistoryItem*);
-WebKitWebHistoryItem* kit(PassRefPtr<WebCore::HistoryItem>);
-
-}
-
-extern "C" {
-
-GHashTable* webkit_history_items();
-
-WebKitWebHistoryItem* webkit_web_history_item_new_with_core_item(PassRefPtr<WebCore::HistoryItem>);
-
-WEBKIT_API gchar* webkit_web_history_item_get_target(WebKitWebHistoryItem*);
-
-WEBKIT_API gboolean webkit_web_history_item_is_target_item(WebKitWebHistoryItem*);
-
-WEBKIT_API GList* webkit_web_history_item_get_children(WebKitWebHistoryItem*);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebinspector.cpp b/Source/WebKit/gtk/webkit/webkitwebinspector.cpp
deleted file mode 100644
index 400de0499..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebinspector.cpp
+++ /dev/null
@@ -1,575 +0,0 @@
-/*
- * Copyright (C) 2008 Gustavo Noronha Silva
- * Copyright (C) 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2009 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebinspector.h"
-
-#include "DumpRenderTreeSupportGtk.h"
-#include "FocusController.h"
-#include "Frame.h"
-#include "HitTestRequest.h"
-#include "HitTestResult.h"
-#include "InspectorClientGtk.h"
-#include "InspectorController.h"
-#include "InspectorInstrumentation.h"
-#include "IntPoint.h"
-#include "Page.h"
-#include "RenderLayer.h"
-#include "RenderView.h"
-#include "WebKitDOMNodePrivate.h"
-#include "webkitglobalsprivate.h"
-#include "webkitmarshal.h"
-#include "webkitwebinspectorprivate.h"
-#include <glib/gi18n-lib.h>
-
-/**
- * SECTION:webkitwebinspector
- * @short_description: Access to the WebKit Inspector
- *
- * The WebKit Inspector is a graphical tool to inspect and change
- * the content of a #WebKitWebView. It also includes an interactive
- * JavaScriptDebugger. Using this class one can get a GtkWidget which
- * can be embedded into an application to show the inspector.
- *
- * The inspector is available when the #WebKitWebSettings of the
- * #WebKitWebView has set the #WebKitWebSettings:enable-developer-extras
- * to true otherwise no inspector is available.
- *
- * <informalexample><programlisting>
- * /<!-- -->* Enable the developer extras *<!-- -->/
- * WebKitWebSettings *setting = webkit_web_view_get_settings (WEBKIT_WEB_VIEW(my_webview));
- * g_object_set (G_OBJECT(settings), "enable-developer-extras", TRUE, NULL);
- *
- * /<!-- -->* load some data or reload to be able to inspect the page*<!-- -->/
- * webkit_web_view_open (WEBKIT_WEB_VIEW(my_webview), "http://www.gnome.org");
- *
- * /<!-- -->* Embed the inspector somewhere *<!-- -->/
- * WebKitWebInspector *inspector = webkit_web_view_get_inspector (WEBKIT_WEB_VIEW(my_webview));
- * g_signal_connect (G_OBJECT (inspector), "inspect-web-view", G_CALLBACK(create_gtk_window_around_it), NULL);
- * g_signal_connect (G_OBJECT (inspector), "show-window", G_CALLBACK(show_inpector_window), NULL));
- * g_signal_connect (G_OBJECT (inspector), "notify::inspected-uri", G_CALLBACK(inspected_uri_changed_do_stuff), NULL);
- * </programlisting></informalexample>
- */
-
-using namespace WebKit;
-using namespace WebCore;
-
-enum {
- INSPECT_WEB_VIEW,
- SHOW_WINDOW,
- ATTACH_WINDOW,
- DETACH_WINDOW,
- CLOSE_WINDOW,
- FINISHED,
- LAST_SIGNAL
-};
-
-static guint webkit_web_inspector_signals[LAST_SIGNAL] = { 0, };
-
-enum {
- PROP_0,
-
- PROP_WEB_VIEW,
- PROP_INSPECTED_URI,
- PROP_JAVASCRIPT_PROFILING_ENABLED,
- PROP_TIMELINE_PROFILING_ENABLED
-};
-
-G_DEFINE_TYPE(WebKitWebInspector, webkit_web_inspector, G_TYPE_OBJECT)
-
-struct _WebKitWebInspectorPrivate {
- WebCore::Page* page;
- WebKitWebView* inspector_view;
- gchar* inspected_uri;
-};
-
-static void webkit_web_inspector_finalize(GObject* object);
-
-static void webkit_web_inspector_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec);
-
-static void webkit_web_inspector_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec);
-
-static gboolean webkit_inspect_web_view_request_handled(GSignalInvocationHint* ihint, GValue* returnAccu, const GValue* handlerReturn, gpointer dummy)
-{
- gboolean continueEmission = TRUE;
- gpointer newWebView = g_value_get_object(handlerReturn);
- g_value_set_object(returnAccu, newWebView);
-
- if (newWebView)
- continueEmission = FALSE;
-
- return continueEmission;
-}
-
-static void webkit_web_inspector_class_init(WebKitWebInspectorClass* klass)
-{
- GObjectClass* gobject_class = G_OBJECT_CLASS(klass);
- gobject_class->finalize = webkit_web_inspector_finalize;
- gobject_class->set_property = webkit_web_inspector_set_property;
- gobject_class->get_property = webkit_web_inspector_get_property;
-
- /**
- * WebKitWebInspector::inspect-web-view:
- * @web_inspector: the object on which the signal is emitted
- * @web_view: the #WebKitWebView which will be inspected
- *
- * Emitted when the user activates the 'inspect' context menu item
- * to inspect a web view. The application which is interested in
- * the inspector should create a window, or otherwise add the
- * #WebKitWebView it creates to an existing window.
- *
- * You don't need to handle the reference count of the
- * #WebKitWebView instance you create; the widget to which you add
- * it will do that.
- *
- * Return value: (transfer none): a newly allocated #WebKitWebView or %NULL
- *
- * Since: 1.0.3
- */
- webkit_web_inspector_signals[INSPECT_WEB_VIEW] = g_signal_new("inspect-web-view",
- G_TYPE_FROM_CLASS(klass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- webkit_inspect_web_view_request_handled,
- NULL,
- webkit_marshal_OBJECT__OBJECT,
- WEBKIT_TYPE_WEB_VIEW , 1,
- WEBKIT_TYPE_WEB_VIEW);
-
- /**
- * WebKitWebInspector::show-window:
- * @web_inspector: the object on which the signal is emitted
- * @return: %TRUE if the signal has been handled
- *
- * Emitted when the inspector window should be displayed. Notice
- * that the window must have been created already by handling
- * #WebKitWebInspector::inspect-web-view.
- *
- * Since: 1.0.3
- */
- webkit_web_inspector_signals[SHOW_WINDOW] = g_signal_new("show-window",
- G_TYPE_FROM_CLASS(klass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__VOID,
- G_TYPE_BOOLEAN , 0);
-
- /**
- * WebKitWebInspector::attach-window:
- * @web_inspector: the object on which the signal is emitted
- * @return: %TRUE if the signal has been handled
- *
- * Emitted when the inspector should appear at the same window as
- * the #WebKitWebView being inspected.
- *
- * Since: 1.0.3
- */
- webkit_web_inspector_signals[ATTACH_WINDOW] = g_signal_new("attach-window",
- G_TYPE_FROM_CLASS(klass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__VOID,
- G_TYPE_BOOLEAN , 0);
-
- /**
- * WebKitWebInspector::detach-window:
- * @web_inspector: the object on which the signal is emitted
- * @return: %TRUE if the signal has been handled
- *
- * Emitted when the inspector should appear in a separate window.
- *
- * Since: 1.0.3
- */
- webkit_web_inspector_signals[DETACH_WINDOW] = g_signal_new("detach-window",
- G_TYPE_FROM_CLASS(klass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__VOID,
- G_TYPE_BOOLEAN , 0);
-
- /**
- * WebKitWebInspector::close-window:
- * @web_inspector: the object on which the signal is emitted
- * @return: %TRUE if the signal has been handled
- *
- * Emitted when the inspector window should be closed. You can
- * destroy the window or hide it so that it can be displayed again
- * by handling #WebKitWebInspector::show-window later on.
- *
- * Notice that the inspected #WebKitWebView may no longer exist
- * when this signal is emitted.
- *
- * Notice, too, that if you decide to destroy the window,
- * #WebKitWebInspector::inspect-web-view will be emmited again, when the user
- * inspects an element.
- *
- * Since: 1.0.3
- */
- webkit_web_inspector_signals[CLOSE_WINDOW] = g_signal_new("close-window",
- G_TYPE_FROM_CLASS(klass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__VOID,
- G_TYPE_BOOLEAN , 0);
-
- /**
- * WebKitWebInspector::finished:
- * @web_inspector: the object on which the signal is emitted
- *
- * Emitted when the inspection is done. You should release your
- * references on the inspector at this time. The inspected
- * #WebKitWebView may no longer exist when this signal is emitted.
- *
- * Since: 1.0.3
- */
- webkit_web_inspector_signals[FINISHED] = g_signal_new("finished",
- G_TYPE_FROM_CLASS(klass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE , 0);
-
- /*
- * properties
- */
-
- /**
- * WebKitWebInspector:web-view:
- *
- * The Web View that renders the Web Inspector itself.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class, PROP_WEB_VIEW,
- g_param_spec_object("web-view",
- _("Web View"),
- _("The Web View that renders the Web Inspector itself"),
- WEBKIT_TYPE_WEB_VIEW,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebInspector:inspected-uri:
- *
- * The URI that is currently being inspected.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class, PROP_INSPECTED_URI,
- g_param_spec_string("inspected-uri",
- _("Inspected URI"),
- _("The URI that is currently being inspected"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebInspector:javascript-profiling-enabled:
- *
- * This is enabling JavaScript profiling in the Inspector. This means
- * that Console.profiles will return the profiles.
- *
- * Since: 1.1.1
- */
- g_object_class_install_property(gobject_class,
- PROP_JAVASCRIPT_PROFILING_ENABLED,
- g_param_spec_boolean(
- "javascript-profiling-enabled",
- _("Enable JavaScript profiling"),
- _("Profile the executed JavaScript."),
- FALSE,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitWebInspector:timeline-profiling-enabled:
- *
- * This is enabling Timeline profiling in the Inspector.
- *
- * Since: 1.1.17
- */
- g_object_class_install_property(gobject_class,
- PROP_TIMELINE_PROFILING_ENABLED,
- g_param_spec_boolean(
- "timeline-profiling-enabled",
- _("Enable Timeline profiling"),
- _("Profile the WebCore instrumentation."),
- FALSE,
- WEBKIT_PARAM_READWRITE));
-
- g_type_class_add_private(klass, sizeof(WebKitWebInspectorPrivate));
-}
-
-static void webkit_web_inspector_init(WebKitWebInspector* web_inspector)
-{
- web_inspector->priv = G_TYPE_INSTANCE_GET_PRIVATE(web_inspector, WEBKIT_TYPE_WEB_INSPECTOR, WebKitWebInspectorPrivate);
-}
-
-static void webkit_web_inspector_finalize(GObject* object)
-{
- WebKitWebInspector* web_inspector = WEBKIT_WEB_INSPECTOR(object);
- WebKitWebInspectorPrivate* priv = web_inspector->priv;
-
- if (priv->inspector_view)
- g_object_unref(priv->inspector_view);
-
- if (priv->inspected_uri)
- g_free(priv->inspected_uri);
-
- G_OBJECT_CLASS(webkit_web_inspector_parent_class)->finalize(object);
-}
-
-static void webkit_web_inspector_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec)
-{
- WebKitWebInspector* web_inspector = WEBKIT_WEB_INSPECTOR(object);
- WebKitWebInspectorPrivate* priv = web_inspector->priv;
-
- switch(prop_id) {
- case PROP_JAVASCRIPT_PROFILING_ENABLED: {
-#if ENABLE(JAVASCRIPT_DEBUGGER)
- bool enabled = g_value_get_boolean(value);
- priv->page->inspectorController()->setProfilerEnabled(enabled);
-#else
- g_message("PROP_JAVASCRIPT_PROFILING_ENABLED is not work because of the javascript debugger is disabled\n");
-#endif
- break;
- }
- case PROP_TIMELINE_PROFILING_ENABLED: {
- g_message("PROP_TIMELINE_PROFILING_ENABLED has been deprecated\n");
- break;
- }
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-static void webkit_web_inspector_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec)
-{
- WebKitWebInspector* web_inspector = WEBKIT_WEB_INSPECTOR(object);
- WebKitWebInspectorPrivate* priv = web_inspector->priv;
-
- switch (prop_id) {
- case PROP_WEB_VIEW:
- g_value_set_object(value, priv->inspector_view);
- break;
- case PROP_INSPECTED_URI:
- g_value_set_string(value, priv->inspected_uri);
- break;
- case PROP_JAVASCRIPT_PROFILING_ENABLED:
-#if ENABLE(JAVASCRIPT_DEBUGGER)
- g_value_set_boolean(value, priv->page->inspectorController()->profilerEnabled());
-#else
- g_message("PROP_JAVASCRIPT_PROFILING_ENABLED is not work because of the javascript debugger is disabled\n");
-#endif
- break;
- case PROP_TIMELINE_PROFILING_ENABLED:
- g_message("PROP_TIMELINE_PROFILING_ENABLED has been deprecated\n");
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-// internal use only
-void webkit_web_inspector_set_web_view(WebKitWebInspector *web_inspector, WebKitWebView *web_view)
-{
- g_return_if_fail(WEBKIT_IS_WEB_INSPECTOR(web_inspector));
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(web_view));
-
- WebKitWebInspectorPrivate* priv = web_inspector->priv;
-
- if (priv->inspector_view)
- g_object_unref(priv->inspector_view);
-
- g_object_ref(web_view);
- priv->inspector_view = web_view;
-}
-
-/**
- * webkit_web_inspector_get_web_view:
- * @web_inspector: a #WebKitWebInspector
- *
- * Obtains the #WebKitWebView that is used to render the
- * inspector. The #WebKitWebView instance is created by the
- * application, by handling the #WebKitWebInspector::inspect-web-view signal. This means
- * that this method may return %NULL if the user hasn't inspected
- * anything.
- *
- * Returns: (transfer none): the #WebKitWebView instance that is used
- * to render the inspector or %NULL if it is not yet created.
- *
- * Since: 1.0.3
- **/
-WebKitWebView* webkit_web_inspector_get_web_view(WebKitWebInspector *web_inspector)
-{
- WebKitWebInspectorPrivate* priv = web_inspector->priv;
-
- return priv->inspector_view;
-}
-
-// internal use only
-void webkit_web_inspector_set_inspected_uri(WebKitWebInspector* web_inspector, const gchar* inspected_uri)
-{
- g_return_if_fail(WEBKIT_IS_WEB_INSPECTOR(web_inspector));
-
- WebKitWebInspectorPrivate* priv = web_inspector->priv;
-
- g_free(priv->inspected_uri);
- priv->inspected_uri = g_strdup(inspected_uri);
-}
-
-/**
- * webkit_web_inspector_get_inspected_uri:
- * @web_inspector: a #WebKitWebInspector
- *
- * Obtains the URI that is currently being inspected.
- *
- * Returns: a pointer to the URI as an internally allocated string; it
- * should not be freed, modified or stored.
- *
- * Since: 1.0.3
- **/
-const gchar* webkit_web_inspector_get_inspected_uri(WebKitWebInspector *web_inspector)
-{
- WebKitWebInspectorPrivate* priv = web_inspector->priv;
-
- return priv->inspected_uri;
-}
-
-void
-webkit_web_inspector_set_inspector_client(WebKitWebInspector* web_inspector, WebCore::Page* page)
-{
- WebKitWebInspectorPrivate* priv = web_inspector->priv;
-
- priv->page = page;
-}
-
-/**
- * webkit_web_inspector_show:
- * @web_inspector: the #WebKitWebInspector that will be shown
- *
- * Causes the Web Inspector to be shown.
- *
- * Since: 1.1.17
- */
-void webkit_web_inspector_show(WebKitWebInspector* webInspector)
-{
- g_return_if_fail(WEBKIT_IS_WEB_INSPECTOR(webInspector));
-
- WebKitWebInspectorPrivate* priv = webInspector->priv;
-
- Frame* frame = priv->page->focusController()->focusedOrMainFrame();
- FrameView* view = frame->view();
-
- if (!view)
- return;
-
- priv->page->inspectorController()->show();
-}
-
-/**
- * webkit_web_inspector_inspect_node:
- * @web_inspector: the #WebKitWebInspector that will do the inspection
- * @node: the #WebKitDOMNode to inspect
- *
- * Causes the Web Inspector to inspect the given node.
- *
- * Since: 1.3.7
- */
-void webkit_web_inspector_inspect_node(WebKitWebInspector* webInspector, WebKitDOMNode* node)
-{
- g_return_if_fail(WEBKIT_IS_WEB_INSPECTOR(webInspector));
- g_return_if_fail(WEBKIT_DOM_IS_NODE(node));
-
- webInspector->priv->page->inspectorController()->inspect(core(node));
-}
-
-/**
- * webkit_web_inspector_inspect_coordinates:
- * @web_inspector: the #WebKitWebInspector that will do the inspection
- * @x: the X coordinate of the node to be inspected
- * @y: the Y coordinate of the node to be inspected
- *
- * Causes the Web Inspector to inspect the node that is located at the
- * given coordinates of the widget. The coordinates should be relative
- * to the #WebKitWebView widget, not to the scrollable content, and
- * may be obtained from a #GdkEvent directly.
- *
- * This means @x, and @y being zero doesn't guarantee you will hit the
- * left-most top corner of the content, since the contents may have
- * been scrolled.
- *
- * Since: 1.1.17
- */
-void webkit_web_inspector_inspect_coordinates(WebKitWebInspector* webInspector, gdouble x, gdouble y)
-{
- g_return_if_fail(WEBKIT_IS_WEB_INSPECTOR(webInspector));
- g_return_if_fail(x >= 0 && y >= 0);
-
- WebKitWebInspectorPrivate* priv = webInspector->priv;
-
- Frame* frame = priv->page->focusController()->focusedOrMainFrame();
- FrameView* view = frame->view();
-
- if (!view)
- return;
-
- HitTestRequest request(HitTestRequest::ReadOnly | HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
- IntPoint documentPoint = view->windowToContents(IntPoint(static_cast<int>(x), static_cast<int>(y)));
- HitTestResult result(documentPoint);
-
- frame->contentRenderer()->layer()->hitTest(request, result);
- priv->page->inspectorController()->inspect(result.innerNonSharedNode());
-}
-
-/**
- * webkit_web_inspector_close:
- * @web_inspector: the #WebKitWebInspector that will be closed
- *
- * Causes the Web Inspector to be closed.
- *
- * Since: 1.1.17
- */
-void webkit_web_inspector_close(WebKitWebInspector* webInspector)
-{
- g_return_if_fail(WEBKIT_IS_WEB_INSPECTOR(webInspector));
-
- WebKitWebInspectorPrivate* priv = webInspector->priv;
- priv->page->inspectorController()->close();
-}
-
-void webkit_web_inspector_execute_script(WebKitWebInspector* webInspector, long callId, const gchar* script)
-{
- g_return_if_fail(WEBKIT_IS_WEB_INSPECTOR(webInspector));
- g_return_if_fail(script);
-
- WebKitWebInspectorPrivate* priv = webInspector->priv;
- priv->page->inspectorController()->evaluateForTestInFrontend(callId, script);
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebinspector.h b/Source/WebKit/gtk/webkit/webkitwebinspector.h
deleted file mode 100644
index 9af4aac88..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebinspector.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (C) 2008 Gustavo Noronha Silva
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebinspector_h
-#define webkitwebinspector_h
-
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-#include <webkitdom/webkitdom.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_INSPECTOR (webkit_web_inspector_get_type())
-#define WEBKIT_WEB_INSPECTOR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_INSPECTOR, WebKitWebInspector))
-#define WEBKIT_WEB_INSPECTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_INSPECTOR, WebKitWebInspectorClass))
-#define WEBKIT_IS_WEB_INSPECTOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_INSPECTOR))
-#define WEBKIT_IS_WEB_INSPECTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_INSPECTOR))
-#define WEBKIT_WEB_INSPECTOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_INSPECTOR, WebKitWebInspectorClass))
-
-typedef struct _WebKitWebInspectorPrivate WebKitWebInspectorPrivate;
-
-struct _WebKitWebInspector {
- GObject parent_instance;
-
- WebKitWebInspectorPrivate* priv;
-};
-
-struct _WebKitWebInspectorClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
- void (*_webkit_reserved4) (void);
-};
-
-WEBKIT_API GType
-webkit_web_inspector_get_type (void);
-
-WEBKIT_API WebKitWebView*
-webkit_web_inspector_get_web_view (WebKitWebInspector *web_inspector);
-
-WEBKIT_API const gchar*
-webkit_web_inspector_get_inspected_uri (WebKitWebInspector *web_inspector);
-
-WEBKIT_API void
-webkit_web_inspector_inspect_node (WebKitWebInspector *web_inspector,
- WebKitDOMNode *node);
-
-WEBKIT_API void
-webkit_web_inspector_inspect_coordinates (WebKitWebInspector *web_inspector,
- gdouble x,
- gdouble y);
-
-WEBKIT_API void
-webkit_web_inspector_show (WebKitWebInspector *web_inspector);
-
-WEBKIT_API void
-webkit_web_inspector_close (WebKitWebInspector *web_inspector);
-G_END_DECLS
-
-#endif /* webkitwebinspector_h */
diff --git a/Source/WebKit/gtk/webkit/webkitwebinspectorprivate.h b/Source/WebKit/gtk/webkit/webkitwebinspectorprivate.h
deleted file mode 100644
index 64ba09a5d..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebinspectorprivate.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebinspectorprivate_h
-#define webkitwebinspectorprivate_h
-
-extern "C" {
-
-void webkit_web_inspector_set_inspector_client(WebKitWebInspector*, WebCore::Page*);
-
-void webkit_web_inspector_set_web_view(WebKitWebInspector*, WebKitWebView*);
-
-void webkit_web_inspector_set_inspected_uri(WebKitWebInspector*, const gchar*);
-
-WEBKIT_API void webkit_web_inspector_execute_script(WebKitWebInspector*, long callId, const gchar* script);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp b/Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp
deleted file mode 100644
index c78e754ae..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp
+++ /dev/null
@@ -1,375 +0,0 @@
-/*
- * Copyright (C) 2008 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebnavigationaction.h"
-
-#include "FrameLoaderTypes.h"
-#include "webkitenumtypes.h"
-#include "webkitglobalsprivate.h"
-#include <glib/gi18n-lib.h>
-#include <string.h>
-#include <wtf/Assertions.h>
-
-static void webkit_web_navigation_action_set_target_frame(WebKitWebNavigationAction* navigationAction, const gchar* targetFrame);
-
-/**
- * SECTION:webkitwebnavigationaction
- * @short_description: Object used to report details of navigation actions
- *
- * #WebKitWebNavigationAction is used in signals to provide details about
- * what led the navigation to happen. This includes, for instance, if the user
- * clicked a link to start that navigation, and what mouse button was used.
- */
-
-struct _WebKitWebNavigationActionPrivate {
- WebKitWebNavigationReason reason;
- gchar* originalUri;
- gint button;
- gint modifier_state;
- gchar* targetFrame;
-};
-
-enum {
- PROP_0,
-
- PROP_REASON,
- PROP_ORIGINAL_URI,
- PROP_BUTTON,
- PROP_MODIFIER_STATE,
- PROP_TARGET_FRAME
-};
-
-G_DEFINE_TYPE(WebKitWebNavigationAction, webkit_web_navigation_action, G_TYPE_OBJECT)
-
-
-static void webkit_web_navigation_action_get_property(GObject* object, guint propertyId, GValue* value, GParamSpec* pspec)
-{
- WebKitWebNavigationAction* navigationAction = WEBKIT_WEB_NAVIGATION_ACTION(object);
-
- switch(propertyId) {
- case PROP_REASON:
- g_value_set_enum(value, webkit_web_navigation_action_get_reason(navigationAction));
- break;
- case PROP_ORIGINAL_URI:
- g_value_set_string(value, webkit_web_navigation_action_get_original_uri(navigationAction));
- break;
- case PROP_BUTTON:
- g_value_set_int(value, webkit_web_navigation_action_get_button(navigationAction));
- break;
- case PROP_MODIFIER_STATE:
- g_value_set_int(value, webkit_web_navigation_action_get_modifier_state(navigationAction));
- break;
- case PROP_TARGET_FRAME:
- g_value_set_string(value, webkit_web_navigation_action_get_target_frame(navigationAction));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, pspec);
- break;
- }
-}
-
-static void webkit_web_navigation_action_set_property(GObject* object, guint propertyId, const GValue* value, GParamSpec* pspec)
-{
- WebKitWebNavigationAction* navigationAction = WEBKIT_WEB_NAVIGATION_ACTION(object);
- WebKitWebNavigationActionPrivate* priv = navigationAction->priv;
-
- switch(propertyId) {
- case PROP_REASON:
- webkit_web_navigation_action_set_reason(navigationAction, (WebKitWebNavigationReason)g_value_get_enum(value));
- break;
- case PROP_ORIGINAL_URI:
- webkit_web_navigation_action_set_original_uri(navigationAction, g_value_get_string(value));
- break;
- case PROP_BUTTON:
- priv->button = g_value_get_int(value);
- break;
- case PROP_MODIFIER_STATE:
- priv->modifier_state = g_value_get_int(value);
- break;
- case PROP_TARGET_FRAME:
- webkit_web_navigation_action_set_target_frame(navigationAction, g_value_get_string(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, pspec);
- break;
- }
-}
-
-static void webkit_web_navigation_action_init(WebKitWebNavigationAction* navigationAction)
-{
- navigationAction->priv = G_TYPE_INSTANCE_GET_PRIVATE(navigationAction, WEBKIT_TYPE_WEB_NAVIGATION_ACTION, WebKitWebNavigationActionPrivate);
-}
-
-static void webkit_web_navigation_action_finalize(GObject* obj)
-{
- WebKitWebNavigationAction* navigationAction = WEBKIT_WEB_NAVIGATION_ACTION(obj);
- WebKitWebNavigationActionPrivate* priv = navigationAction->priv;
-
- g_free(priv->originalUri);
- g_free(priv->targetFrame);
-
- G_OBJECT_CLASS(webkit_web_navigation_action_parent_class)->finalize(obj);
-}
-
-static void webkit_web_navigation_action_class_init(WebKitWebNavigationActionClass* requestClass)
-{
- GObjectClass* objectClass = G_OBJECT_CLASS(requestClass);
-
- objectClass->get_property = webkit_web_navigation_action_get_property;
- objectClass->set_property = webkit_web_navigation_action_set_property;
- objectClass->finalize = webkit_web_navigation_action_finalize;
-
- /**
- * WebKitWebNavigationAction:reason:
- *
- * The reason why this navigation is occuring.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(objectClass, PROP_REASON,
- g_param_spec_enum("reason",
- _("Reason"),
- _("The reason why this navigation is occurring"),
- WEBKIT_TYPE_WEB_NAVIGATION_REASON,
- WEBKIT_WEB_NAVIGATION_REASON_OTHER,
- (GParamFlags)(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT)));
-
- /**
- * WebKitWebNavigationAction:original-uri:
- *
- * The URI that was requested as the target for the navigation.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(objectClass, PROP_ORIGINAL_URI,
- g_param_spec_string("original-uri",
- _("Original URI"),
- _("The URI that was requested as the target for the navigation"),
- "",
- (GParamFlags)(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT)));
- /**
- * WebKitWebNavigationAction:button:
- *
- * The GTK+ identifier for the mouse button used to click. Notice that GTK+ button values
- * are 1, 2 and 3 for left, middle and right buttons, so they are DOM button values +1. If the action was not
- * initiated by a mouse click the value will be -1.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(objectClass, PROP_BUTTON,
- g_param_spec_int("button",
- _("Button"),
- _("The button used to click"),
- -1,
- G_MAXINT,
- -1,
- (GParamFlags)(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitWebNavigationAction:modifier-state:
- *
- * The state of the modifier keys when the action was requested.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(objectClass, PROP_MODIFIER_STATE,
- g_param_spec_int("modifier-state",
- _("Modifier state"),
- _("A bitmask representing the state of the modifier keys"),
- 0,
- G_MAXINT,
- 0,
- (GParamFlags)(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
- /**
- * WebKitWebNavigationAction:target-frame:
- *
- * The target frame for the navigation.
- *
- * Since: 1.1.13
- */
- g_object_class_install_property(objectClass, PROP_TARGET_FRAME,
- g_param_spec_string("target-frame",
- _("Target frame"),
- _("The target frame for the navigation"),
- NULL,
- (GParamFlags)(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)));
-
-
-
- g_type_class_add_private(requestClass, sizeof(WebKitWebNavigationActionPrivate));
-}
-
-/**
- * webkit_web_navigation_action_get_reason:
- * @navigationAction: a #WebKitWebNavigationAction
- *
- * Returns the reason why WebKit is requesting a navigation.
- *
- * Return value: a #WebKitWebNavigationReason
- *
- * Since: 1.0.3
- */
-WebKitWebNavigationReason webkit_web_navigation_action_get_reason(WebKitWebNavigationAction* navigationAction)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_NAVIGATION_ACTION(navigationAction), WEBKIT_WEB_NAVIGATION_REASON_OTHER);
-
- return navigationAction->priv->reason;
-}
-
-/**
- * webkit_web_navigation_action_set_reason:
- * @navigationAction: a #WebKitWebNavigationAction
- * @reason: a #WebKitWebNavigationReason
- *
- * Sets the reason why WebKit is requesting a navigation.
- *
- * Since: 1.0.3
- */
-void webkit_web_navigation_action_set_reason(WebKitWebNavigationAction* navigationAction, WebKitWebNavigationReason reason)
-{
- g_return_if_fail(WEBKIT_IS_WEB_NAVIGATION_ACTION(navigationAction));
-
- if (navigationAction->priv->reason == reason)
- return;
-
- navigationAction->priv->reason = reason;
- g_object_notify(G_OBJECT(navigationAction), "reason");
-}
-
-/**
- * webkit_web_navigation_action_get_original_uri:
- * @navigationAction: a #WebKitWebNavigationAction
- *
- * Returns the URI that was originally requested. This may differ from the
- * navigation target, for instance because of a redirect.
- *
- * Return value: the originally requested URI
- *
- * Since: 1.0.3
- */
-const gchar* webkit_web_navigation_action_get_original_uri(WebKitWebNavigationAction* navigationAction)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_NAVIGATION_ACTION(navigationAction), NULL);
-
- return navigationAction->priv->originalUri;
-}
-
-/**
- * webkit_web_navigation_action_set_original_uri:
- * @navigationAction: a #WebKitWebNavigationAction
- * @originalUri: a URI
- *
- * Sets the URI that was originally requested. This may differ from the
- * navigation target, for instance because of a redirect.
- *
- * Since: 1.0.3
- */
-void webkit_web_navigation_action_set_original_uri(WebKitWebNavigationAction* navigationAction, const gchar* originalUri)
-{
- g_return_if_fail(WEBKIT_IS_WEB_NAVIGATION_ACTION(navigationAction));
- g_return_if_fail(originalUri);
-
- if (navigationAction->priv->originalUri &&
- (!strcmp(navigationAction->priv->originalUri, originalUri)))
- return;
-
- g_free(navigationAction->priv->originalUri);
- navigationAction->priv->originalUri = g_strdup(originalUri);
- g_object_notify(G_OBJECT(navigationAction), "original-uri");
-}
-
-/**
- * webkit_web_navigation_action_get_button:
- * @navigationAction: a #WebKitWebNavigationAction
- *
- * The GTK+ identifier for the mouse button used to click. Notice that GTK+ button values
- * are 1, 2 and 3 for left, middle and right buttons, so they are DOM button values +1. If the action was not
- * initiated by a mouse click the value will be -1.
- *
- * Return value: the mouse button used to click
- *
- * Since: 1.0.3
- */
-gint webkit_web_navigation_action_get_button(WebKitWebNavigationAction* navigationAction)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_NAVIGATION_ACTION(navigationAction), -1);
-
- return navigationAction->priv->button;
-}
-
-/**
- * webkit_web_navigation_action_get_modifier_state:
- * @navigationAction: a #WebKitWebNavigationAction
- *
- * Returns a bitmask with the the state of the modifier keys.
- *
- * Return value: a bitmask with the state of the modifier keys
- *
- * Since: 1.0.3
- */
-gint webkit_web_navigation_action_get_modifier_state(WebKitWebNavigationAction* navigationAction)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_NAVIGATION_ACTION(navigationAction), 0);
-
- return navigationAction->priv->modifier_state;
-}
-
-/**
- * webkit_web_navigation_action_get_target_frame:
- * @navigationAction: a #WebKitWebNavigationAction
- *
- * Returns the target frame of the action.
- *
- * Return value: the target frame of the action or NULL
- * if there is no target.
- *
- * Since: 1.1.13
- */
-const gchar* webkit_web_navigation_action_get_target_frame(WebKitWebNavigationAction* navigationAction)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_NAVIGATION_ACTION(navigationAction), NULL);
-
- return navigationAction->priv->targetFrame;
-}
-
-static void webkit_web_navigation_action_set_target_frame(WebKitWebNavigationAction* navigationAction, const gchar* targetFrame)
-{
- if (!g_strcmp0(navigationAction->priv->targetFrame, targetFrame))
- return;
-
- g_free(navigationAction->priv->targetFrame);
- navigationAction->priv->targetFrame = g_strdup(targetFrame);
- g_object_notify(G_OBJECT(navigationAction), "target-frame");
-}
-
-namespace WebKit {
-
-WebKitWebNavigationReason kit(WebCore::NavigationType type)
-{
- return (WebKitWebNavigationReason)type;
-}
-
-WebCore::NavigationType core(WebKitWebNavigationReason type)
-{
- return static_cast<WebCore::NavigationType>(type);
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebnavigationaction.h b/Source/WebKit/gtk/webkit/webkitwebnavigationaction.h
deleted file mode 100644
index b317749f2..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebnavigationaction.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (C) 2008 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebnavigationaction_h
-#define webkitwebnavigationaction_h
-
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-/**
- * WebKitWebNavigationReason:
- * @WEBKIT_WEB_NAVIGATION_REASON_LINK_CLICKED: The navigation was triggered by clicking a link.
- * @WEBKIT_WEB_NAVIGATION_REASON_FORM_SUBMITTED: The navigation was triggered by submitting a form.
- * @WEBKIT_WEB_NAVIGATION_REASON_BACK_FORWARD: The navigation was triggered by navigating forward or backward.
- * @WEBKIT_WEB_NAVIGATION_REASON_RELOAD: The navigation was triggered by reloading.
- * @WEBKIT_WEB_NAVIGATION_REASON_FORM_RESUBMITTED: The navigation was triggered by resubmitting a form.
- * @WEBKIT_WEB_NAVIGATION_REASON_OTHER: The navigation was triggered by some other action.
- *
- * Enum values used to denote the various navigation reasons.
- */
-typedef enum {
- WEBKIT_WEB_NAVIGATION_REASON_LINK_CLICKED,
- WEBKIT_WEB_NAVIGATION_REASON_FORM_SUBMITTED,
- WEBKIT_WEB_NAVIGATION_REASON_BACK_FORWARD,
- WEBKIT_WEB_NAVIGATION_REASON_RELOAD,
- WEBKIT_WEB_NAVIGATION_REASON_FORM_RESUBMITTED,
- WEBKIT_WEB_NAVIGATION_REASON_OTHER,
-} WebKitWebNavigationReason;
-
-#define WEBKIT_TYPE_WEB_NAVIGATION_ACTION (webkit_web_navigation_action_get_type())
-#define WEBKIT_WEB_NAVIGATION_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_NAVIGATION_ACTION, WebKitWebNavigationAction))
-#define WEBKIT_WEB_NAVIGATION_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_NAVIGATION_ACTION, WebKitWebNavigationActionClass))
-#define WEBKIT_IS_WEB_NAVIGATION_ACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_NAVIGATION_ACTION))
-#define WEBKIT_IS_WEB_NAVIGATION_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_NAVIGATION_ACTION))
-#define WEBKIT_WEB_NAVIGATION_ACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_NAVIGATION_ACTION, WebKitWebNavigationActionClass))
-
-typedef struct _WebKitWebNavigationAction WebKitWebNavigationAction;
-typedef struct _WebKitWebNavigationActionClass WebKitWebNavigationActionClass;
-typedef struct _WebKitWebNavigationActionPrivate WebKitWebNavigationActionPrivate;
-
-struct _WebKitWebNavigationAction {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebNavigationActionPrivate* priv;
-};
-
-struct _WebKitWebNavigationActionClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_web_navigation_action_get_type(void);
-
-WEBKIT_API WebKitWebNavigationReason
-webkit_web_navigation_action_get_reason(WebKitWebNavigationAction* navigationAction);
-
-WEBKIT_API void
-webkit_web_navigation_action_set_reason(WebKitWebNavigationAction* navigationAction, WebKitWebNavigationReason reason);
-
-WEBKIT_API const gchar*
-webkit_web_navigation_action_get_original_uri(WebKitWebNavigationAction* navigationAction);
-
-WEBKIT_API void
-webkit_web_navigation_action_set_original_uri(WebKitWebNavigationAction* navigationAction, const gchar* originalUri);
-
-WEBKIT_API gint
-webkit_web_navigation_action_get_button(WebKitWebNavigationAction* navigationAction);
-
-WEBKIT_API gint
-webkit_web_navigation_action_get_modifier_state(WebKitWebNavigationAction* navigationAction);
-
-WEBKIT_API const gchar *
-webkit_web_navigation_action_get_target_frame(WebKitWebNavigationAction* navigationAction);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebnavigationactionprivate.h b/Source/WebKit/gtk/webkit/webkitwebnavigationactionprivate.h
deleted file mode 100644
index a8bc5ca0c..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebnavigationactionprivate.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebnavigationactionprivate_h
-#define webkitnavigationactionprivate_h
-
-#include <webkit/webkitwebnavigationaction.h>
-
-namespace WebKit {
-
-WebKitWebNavigationReason kit(WebCore::NavigationType);
-WebCore::NavigationType core(WebKitWebNavigationReason);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebplugin.cpp b/Source/WebKit/gtk/webkit/webkitwebplugin.cpp
deleted file mode 100644
index 73b42ee9e..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebplugin.cpp
+++ /dev/null
@@ -1,286 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- * Copyright (C) 2011 Gustavo Noronha Silva <gns@gnome.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "webkitwebplugin.h"
-
-#include "PluginPackage.h"
-#include "webkitglobalsprivate.h"
-#include "webkitwebpluginprivate.h"
-#include <glib/gi18n-lib.h>
-
-/**
- * SECTION:webkitwebplugin
- * @short_description: Represents a plugin, enabling fine-grained control
- * @see_also: #WebKitWebPluginDatabase
- *
- * This object represents a single plugin, found by WebKitGTK+ while
- * scanning the various usual directories. This object can be used to
- * get more information about a plugin, and enable/disable it,
- * allowing fine-grained control of plugins. The list of available
- * plugins can be obtained from the #WebKitWebPluginDatabase object.
- */
-
-using namespace WebCore;
-
-enum {
- PROP_0,
-
- PROP_ENABLED
-};
-
-G_DEFINE_TYPE(WebKitWebPlugin, webkit_web_plugin, G_TYPE_OBJECT)
-
-static void freeMIMEType(WebKitWebPluginMIMEType* mimeType)
-{
- if (mimeType->name)
- g_free(mimeType->name);
- if (mimeType->description)
- g_free(mimeType->description);
- if (mimeType->extensions)
- g_strfreev(mimeType->extensions);
- g_slice_free(WebKitWebPluginMIMEType, mimeType);
-}
-
-static void webkit_web_plugin_finalize(GObject* object)
-{
- WebKitWebPlugin* plugin = WEBKIT_WEB_PLUGIN(object);
- WebKitWebPluginPrivate* priv = plugin->priv;
-
- g_slist_foreach(priv->mimeTypes, (GFunc)freeMIMEType, 0);
- g_slist_free(priv->mimeTypes);
-
- delete plugin->priv;
-
- G_OBJECT_CLASS(webkit_web_plugin_parent_class)->finalize(object);
-}
-
-static void webkit_web_plugin_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* paramSpec)
-{
- WebKitWebPlugin* plugin = WEBKIT_WEB_PLUGIN(object);
-
- switch (prop_id) {
- case PROP_ENABLED:
- g_value_set_boolean(value, webkit_web_plugin_get_enabled(plugin));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, paramSpec);
- }
-}
-
-static void webkit_web_plugin_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* paramSpec)
-{
- WebKitWebPlugin* plugin = WEBKIT_WEB_PLUGIN(object);
-
- switch (prop_id) {
- case PROP_ENABLED:
- webkit_web_plugin_set_enabled(plugin, g_value_get_boolean(value));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, paramSpec);
- }
-}
-
-static void webkit_web_plugin_class_init(WebKitWebPluginClass* klass)
-{
- webkitInit();
-
- GObjectClass* gobjectClass = reinterpret_cast<GObjectClass*>(klass);
-
- gobjectClass->finalize = webkit_web_plugin_finalize;
- gobjectClass->get_property = webkit_web_plugin_get_property;
- gobjectClass->set_property = webkit_web_plugin_set_property;
-
- g_object_class_install_property(gobjectClass,
- PROP_ENABLED,
- g_param_spec_boolean("enabled",
- _("Enabled"),
- _("Whether the plugin is enabled"),
- FALSE,
- WEBKIT_PARAM_READWRITE));
-}
-
-static void webkit_web_plugin_init(WebKitWebPlugin *plugin)
-{
- plugin->priv = new WebKitWebPluginPrivate();
- plugin->priv->mimeTypes = 0;
-}
-
-namespace WebKit {
-WebKitWebPlugin* kitNew(WebCore::PluginPackage* package)
-{
- WebKitWebPlugin* plugin = WEBKIT_WEB_PLUGIN(g_object_new(WEBKIT_TYPE_WEB_PLUGIN, 0));
-
- plugin->priv->corePlugin = package;
-
- return plugin;
-}
-}
-
-/**
- * webkit_web_plugin_get_name:
- * @plugin: a #WebKitWebPlugin
- *
- * Returns: the name string for @plugin.
- *
- * Since: 1.3.8
- */
-const char* webkit_web_plugin_get_name(WebKitWebPlugin* plugin)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_PLUGIN(plugin), 0);
-
- WebKitWebPluginPrivate* priv = plugin->priv;
-
- if (!priv->name.length())
- priv->name = priv->corePlugin->name().utf8();
-
- return priv->name.data();
-}
-
-/**
- * webkit_web_plugin_get_description:
- * @plugin: a #WebKitWebPlugin
- *
- * Returns: the description string for @plugin.
- *
- * Since: 1.3.8
- */
-const char* webkit_web_plugin_get_description(WebKitWebPlugin* plugin)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_PLUGIN(plugin), 0);
-
- WebKitWebPluginPrivate* priv = plugin->priv;
-
- if (!priv->description.length())
- priv->description = priv->corePlugin->description().utf8();
-
- return priv->description.data();
-}
-
-/**
- * webkit_web_plugin_get_path:
- * @plugin: a #WebKitWebPlugin
- *
- * Returns: the absolute path to @plugin in system filename encoding
- * or %NULL on failure to convert the filename from UTF-8.
- *
- * Since: 1.4.0
- */
-const char* webkit_web_plugin_get_path(WebKitWebPlugin* plugin)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_PLUGIN(plugin), 0);
-
- WebKitWebPluginPrivate* priv = plugin->priv;
-
- if (priv->path)
- return priv->path.get();
-
- GOwnPtr<GError> error;
- priv->path.set(g_filename_from_utf8(priv->corePlugin->path().utf8().data(), -1, 0, 0, &error.outPtr()));
-
- if (!error)
- return priv->path.get();
-
- // In the unlikely case the convertion fails, report the error and make sure we free
- // any partial convertion that ended up in the variable.
- priv->path.clear();
-
- g_warning("Failed to convert '%s' to system filename encoding: %s", priv->corePlugin->path().utf8().data(), error->message);
-
- return 0;
-}
-
-
-/**
- * webkit_web_plugin_get_mimetypes: (skip)
- * @plugin: a #WebKitWebPlugin
- *
- * Returns all the #WebKitWebPluginMIMEType that @plugin is handling
- * at the moment.
- *
- * Returns: a #GSList of #WebKitWebPluginMIMEType
- *
- * Since: 1.3.8
- */
-GSList* webkit_web_plugin_get_mimetypes(WebKitWebPlugin* plugin)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_PLUGIN(plugin), 0);
-
- WebKitWebPluginPrivate* priv = plugin->priv;
-
- if (priv->mimeTypes)
- return priv->mimeTypes;
-
- const MIMEToDescriptionsMap& mimeToDescriptions = priv->corePlugin->mimeToDescriptions();
- MIMEToDescriptionsMap::const_iterator end = mimeToDescriptions.end();
-
- for (MIMEToDescriptionsMap::const_iterator it = mimeToDescriptions.begin(); it != end; ++it) {
- WebKitWebPluginMIMEType* mimeType = g_slice_new0(WebKitWebPluginMIMEType);
- mimeType->name = g_strdup(it->key.utf8().data());
- mimeType->description = g_strdup(it->value.utf8().data());
-
- Vector<String> extensions = priv->corePlugin->mimeToExtensions().get(it->key);
- mimeType->extensions = static_cast<gchar**>(g_malloc0(sizeof(char*) * (extensions.size() + 1)));
- for (unsigned i = 0; i < extensions.size(); i++)
- mimeType->extensions[i] = g_strdup(extensions[i].utf8().data());
-
- priv->mimeTypes = g_slist_append(priv->mimeTypes, mimeType);
- }
-
- return priv->mimeTypes;
-}
-
-/**
- * webkit_web_plugin_set_enabled:
- * @plugin: a #WebKitWebPlugin
- * @enabled: whether to enable the plugin
- *
- * Sets the enabled status of the @plugin.
- *
- * Since: 1.3.8
- */
-void webkit_web_plugin_set_enabled(WebKitWebPlugin* plugin, gboolean enabled)
-{
- g_return_if_fail(WEBKIT_IS_WEB_PLUGIN(plugin));
- WebKitWebPluginPrivate* priv = plugin->priv;
-
- ASSERT(priv->corePlugin);
- if (priv->corePlugin->isEnabled() == enabled)
- return;
-
- priv->corePlugin->setEnabled(enabled);
-
- g_object_notify(G_OBJECT(plugin), "enabled");
-}
-
-/**
- * webkit_web_plugin_get_enabled:
- * @plugin: a #WebKitWebPlugin
- *
- * Returns: %TRUE if the plugin is enabled, %FALSE otherwise
- *
- * Since: 1.3.8
- */
-gboolean webkit_web_plugin_get_enabled(WebKitWebPlugin* plugin)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_PLUGIN(plugin), FALSE);
-
- ASSERT(plugin->priv->corePlugin);
- return plugin->priv->corePlugin->isEnabled();
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebplugin.h b/Source/WebKit/gtk/webkit/webkitwebplugin.h
deleted file mode 100644
index 1d2df4866..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebplugin.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef webkitwebplugin_h
-#define webkitwebplugin_h
-
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_PLUGIN (webkit_web_plugin_get_type())
-#define WEBKIT_WEB_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_PLUGIN, WebKitWebPlugin))
-#define WEBKIT_WEB_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_PLUGIN, WebKitWebPluginClass))
-#define WEBKIT_IS_WEB_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_PLUGIN))
-#define WEBKIT_IS_WEB_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_PLUGIN))
-#define WEBKIT_WEB_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_PLUGIN, WebKitWebPluginClass))
-
-typedef struct _WebKitWebPluginPrivate WebKitWebPluginPrivate;
-
-/**
- * WebKitWebPluginMIMEType:
- * @name: the name of the MIME type.
- * @description: the description of the MIME type.
- * @extensions: a %NULL-terminated array with the extensions
- * associated with this MIME type.
- *
- * A structure representing one of the MIME types associated with a
- * plugin. A #GSList of these objects will be returned by
- * #webkit_web_plugin_get_mimetypes, use
- * #webkit_web_plugin_mime_type_list_free to free it.
- *
- * Since: 1.3.8
- */
-typedef struct _WebKitWebPluginMIMEType {
- char* name;
- char* description;
- char** extensions;
-} WebKitWebPluginMIMEType;
-
-struct _WebKitWebPluginClass {
- GObjectClass parentClass;
-};
-
-struct _WebKitWebPlugin {
- GObject parentInstance;
-
- WebKitWebPluginPrivate* priv;
-};
-
-WEBKIT_API GType
-webkit_web_plugin_get_type (void) G_GNUC_CONST;
-
-WEBKIT_API const char*
-webkit_web_plugin_get_name (WebKitWebPlugin *plugin);
-
-WEBKIT_API const char*
-webkit_web_plugin_get_description (WebKitWebPlugin *plugin);
-
-WEBKIT_API const char*
-webkit_web_plugin_get_path (WebKitWebPlugin *plugin);
-
-WEBKIT_API GSList*
-webkit_web_plugin_get_mimetypes (WebKitWebPlugin *plugin);
-
-WEBKIT_API void
-webkit_web_plugin_set_enabled (WebKitWebPlugin *plugin,
- gboolean enabled);
-
-WEBKIT_API gboolean
-webkit_web_plugin_get_enabled (WebKitWebPlugin *plugin);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebplugindatabase.cpp b/Source/WebKit/gtk/webkit/webkitwebplugindatabase.cpp
deleted file mode 100644
index 5b9d063f3..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebplugindatabase.cpp
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "webkitwebplugindatabase.h"
-
-#include "PluginDatabase.h"
-#include "webkitglobalsprivate.h"
-#include "webkitwebplugindatabaseprivate.h"
-#include "webkitwebpluginprivate.h"
-
-/**
- * SECTION:webkitwebplugindatabase
- * @short_description: Provides information about the plugins the engine knows about
- * @see_also: #WebKitWebPlugin
- *
- * This object allows you to query information about the plugins found
- * by the engine while scanning the usual directories. You can then
- * use the #WebKitWebPlugin objects to get more information or
- * enable/disable individual plugins.
- */
-
-using namespace WebKit;
-using namespace WebCore;
-
-G_DEFINE_TYPE(WebKitWebPluginDatabase, webkit_web_plugin_database, G_TYPE_OBJECT)
-
-static void webkit_web_plugin_database_dispose(GObject* object)
-{
- G_OBJECT_CLASS(webkit_web_plugin_database_parent_class)->dispose(object);
-}
-
-static void webkit_web_plugin_database_class_init(WebKitWebPluginDatabaseClass* klass)
-{
- webkitInit();
-
- GObjectClass* gobjectClass = reinterpret_cast<GObjectClass*>(klass);
-
- gobjectClass->dispose = webkit_web_plugin_database_dispose;
-
- g_type_class_add_private(klass, sizeof(WebKitWebPluginDatabasePrivate));
-}
-
-static void webkit_web_plugin_database_init(WebKitWebPluginDatabase* database)
-{
- WebKitWebPluginDatabasePrivate* priv = G_TYPE_INSTANCE_GET_PRIVATE(database, WEBKIT_TYPE_WEB_PLUGIN_DATABASE, WebKitWebPluginDatabasePrivate);
- database->priv = priv;
-
- priv->coreDatabase = PluginDatabase::installedPlugins();
-}
-
-/**
- * webkit_web_plugin_database_plugins_list_free:
- * @list: (element-type WebKitWebPlugin): a #GSList of #WebKitWebPlugin
- *
- * Frees @list.
- *
- * Since: 1.3.8
- */
-void webkit_web_plugin_database_plugins_list_free(GSList* list)
-{
- if (!list)
- return;
-
- for (GSList* p = list; p; p = p->next)
- g_object_unref(p->data);
-
- g_slist_free(list);
-}
-
-/**
- * webkit_web_plugin_database_get_plugins:
- * @database: a #WebKitWebPluginDatabase
- *
- * Returns all #WebKitWebPlugin available in @database.
- * The returned list must be freed with webkit_web_plugin_database_plugins_list_free()
- *
- * Returns: (transfer full) (element-type WebKitWebPlugin): a #GSList of #WebKitWebPlugin
- *
- * Since: 1.3.8
- */
-GSList* webkit_web_plugin_database_get_plugins(WebKitWebPluginDatabase* database)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_PLUGIN_DATABASE(database), 0);
-
- GSList* gPlugins = 0;
- const Vector<PluginPackage*>& plugins = database->priv->coreDatabase->plugins();
-
- for (unsigned int i = 0; i < plugins.size(); ++i) {
- PluginPackage* plugin = plugins[i];
- gPlugins = g_slist_append(gPlugins, kitNew(plugin));
- }
-
- return gPlugins;
-}
-
-/**
- * webkit_web_plugin_database_get_plugin_for_mimetype:
- * @database: a #WebKitWebPluginDatabase
- * @mime_type: a mime type
- *
- * Returns the #WebKitWebPlugin that is handling @mimeType in the
- * @database, or %NULL if there's none doing so.
- *
- * Returns: (transfer full): a #WebKitWebPlugin
- *
- * Since: 1.3.8
- */
-WebKitWebPlugin* webkit_web_plugin_database_get_plugin_for_mimetype(WebKitWebPluginDatabase* database, const char* mimeType)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_PLUGIN_DATABASE(database), 0);
- g_return_val_if_fail(mimeType, 0);
-
- return kitNew(database->priv->coreDatabase->pluginForMIMEType(mimeType));
-}
-
-/**
- * webkit_web_plugin_database_refresh:
- * @database: a #WebKitWebPluginDatabase
- *
- * Refreshes @database adding new plugins that are now in use and
- * removing those that have been disabled or are otherwise no longer
- * available.
- *
- * Since: 1.3.8
- */
-void webkit_web_plugin_database_refresh(WebKitWebPluginDatabase* database)
-{
- g_return_if_fail(WEBKIT_IS_WEB_PLUGIN_DATABASE(database));
-
- database->priv->coreDatabase->refresh();
-}
-
-WebKitWebPluginDatabase* webkit_web_plugin_database_new(void)
-{
- return WEBKIT_WEB_PLUGIN_DATABASE(g_object_new(WEBKIT_TYPE_WEB_PLUGIN_DATABASE, 0));
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebplugindatabase.h b/Source/WebKit/gtk/webkit/webkitwebplugindatabase.h
deleted file mode 100644
index 75a8a157a..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebplugindatabase.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef webkitwebplugindatabase_h
-#define webkitwebplugindatabase_h
-
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_PLUGIN_DATABASE (webkit_web_plugin_database_get_type())
-#define WEBKIT_WEB_PLUGIN_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_PLUGIN_DATABASE, WebKitWebPluginDatabase))
-#define WEBKIT_WEB_PLUGIN_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_PLUGIN_DATABASE, WebKitWebPluginDatabaseClass))
-#define WEBKIT_IS_WEB_PLUGIN_DATABASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_PLUGIN_DATABASE))
-#define WEBKIT_IS_WEB_PLUGIN_DATABASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_PLUGIN_DATABASE))
-#define WEBKIT_WEB_PLUGIN_DATABASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_PLUGIN_DATABASE, WebKitWebPluginDatabaseClass))
-
-typedef struct _WebKitWebPluginDatabasePrivate WebKitWebPluginDatabasePrivate;
-
-struct _WebKitWebPluginDatabaseClass {
- GObjectClass parentClass;
-};
-
-struct _WebKitWebPluginDatabase {
- GObject parentInstance;
-
- WebKitWebPluginDatabasePrivate* priv;
-};
-
-WEBKIT_API GType
-webkit_web_plugin_database_get_type (void) G_GNUC_CONST;
-
-WEBKIT_API void
-webkit_web_plugin_database_plugins_list_free (GSList *list);
-
-WEBKIT_API GSList*
-webkit_web_plugin_database_get_plugins (WebKitWebPluginDatabase *database);
-
-WEBKIT_API WebKitWebPlugin*
-webkit_web_plugin_database_get_plugin_for_mimetype (WebKitWebPluginDatabase *database,
- const char *mime_type);
-
-WEBKIT_API void
-webkit_web_plugin_database_refresh (WebKitWebPluginDatabase *database);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebplugindatabaseprivate.h b/Source/WebKit/gtk/webkit/webkitwebplugindatabaseprivate.h
deleted file mode 100644
index 199aedea1..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebplugindatabaseprivate.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebplugindatabaseprivate_h
-#define webkitwebplugindatabaseprivate_h
-
-#include <glib-object.h>
-
-namespace WebCore {
-class PluginDatabase;
-}
-
-extern "C" {
-
-typedef struct _WebKitWebPluginDatabasePrivate WebKitWebPluginDatabasePrivate;
-struct _WebKitWebPluginDatabasePrivate {
- WebCore::PluginDatabase* coreDatabase;
-};
-
-WebKitWebPluginDatabase* webkit_web_plugin_database_new();
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebpluginprivate.h b/Source/WebKit/gtk/webkit/webkitwebpluginprivate.h
deleted file mode 100644
index 507f72eb3..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebpluginprivate.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef webkitwebpluginprivate_h
-#define webkitwebpluginprivate_h
-
-#include "webkitwebplugin.h"
-#include <glib-object.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/text/CString.h>
-
-namespace WebCore {
-class PluginPackage;
-}
-
-namespace WebKit {
-WebKitWebPlugin* kitNew(WebCore::PluginPackage* package);
-}
-
-extern "C" {
-
-typedef struct _WebKitWebPluginPrivate WebKitWebPluginPrivate;
-struct _WebKitWebPluginPrivate {
- RefPtr<WebCore::PluginPackage> corePlugin;
- CString name;
- CString description;
- GOwnPtr<char> path;
- GSList* mimeTypes;
-};
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebpolicydecision.cpp b/Source/WebKit/gtk/webkit/webkitwebpolicydecision.cpp
deleted file mode 100644
index bb29ae159..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebpolicydecision.cpp
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Copyright (C) 2008 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebpolicydecision.h"
-
-#include "FrameLoaderClient.h"
-#include "FrameLoaderTypes.h"
-#include "webkitwebframeprivate.h"
-#include "webkitwebpolicydecisionprivate.h"
-
-using namespace WebKit;
-using namespace WebCore;
-
-/**
- * SECTION:webkitwebpolicydecision
- * @short_description: Liason between WebKit and the application regarding asynchronous policy decisions
- *
- * #WebKitWebPolicyDecision objects are given to the application on
- * signal emissions that deal with policy decisions, such as if a new
- * window should be opened, or if a given navigation should be
- * allowed. The application uses it to tell the engine what to do.
- */
-
-G_DEFINE_TYPE(WebKitWebPolicyDecision, webkit_web_policy_decision, G_TYPE_OBJECT);
-
-struct _WebKitWebPolicyDecisionPrivate {
- WebKitWebFrame* frame;
- FramePolicyFunction framePolicyFunction;
- gboolean isCancelled;
-};
-
-static void webkit_web_policy_decision_class_init(WebKitWebPolicyDecisionClass* decisionClass)
-{
- g_type_class_add_private(decisionClass, sizeof(WebKitWebPolicyDecisionPrivate));
-}
-
-static void webkit_web_policy_decision_init(WebKitWebPolicyDecision* decision)
-{
- decision->priv = G_TYPE_INSTANCE_GET_PRIVATE(decision, WEBKIT_TYPE_WEB_POLICY_DECISION, WebKitWebPolicyDecisionPrivate);
-}
-
-WebKitWebPolicyDecision* webkit_web_policy_decision_new(WebKitWebFrame* frame, WebCore::FramePolicyFunction function)
-{
- g_return_val_if_fail(frame, NULL);
-
- WebKitWebPolicyDecision* decision = WEBKIT_WEB_POLICY_DECISION(g_object_new(WEBKIT_TYPE_WEB_POLICY_DECISION, NULL));
- WebKitWebPolicyDecisionPrivate* priv = decision->priv;
-
- priv->frame = frame;
- priv->framePolicyFunction = function;
- priv->isCancelled = FALSE;
-
- return decision;
-}
-
-/**
- * webkit_web_policy_decision_use:
- * @decision: a #WebKitWebPolicyDecision
- *
- * Will send the USE decision to the policy implementer.
- *
- * Since: 1.0.3
- */
-void webkit_web_policy_decision_use(WebKitWebPolicyDecision* decision)
-{
- g_return_if_fail(WEBKIT_IS_WEB_POLICY_DECISION(decision));
-
- WebKitWebPolicyDecisionPrivate* priv = decision->priv;
-
- if (!priv->isCancelled)
- (core(priv->frame)->loader()->policyChecker()->*(priv->framePolicyFunction))(WebCore::PolicyUse);
-}
-
-/**
- * webkit_web_policy_decision_ignore:
- * @decision: a #WebKitWebPolicyDecision
- *
- * Will send the IGNORE decision to the policy implementer.
- *
- * Since: 1.0.3
- */
-void webkit_web_policy_decision_ignore(WebKitWebPolicyDecision* decision)
-{
- g_return_if_fail(WEBKIT_IS_WEB_POLICY_DECISION(decision));
-
- WebKitWebPolicyDecisionPrivate* priv = decision->priv;
-
- if (!priv->isCancelled)
- (core(priv->frame)->loader()->policyChecker()->*(priv->framePolicyFunction))(WebCore::PolicyIgnore);
-}
-
-/**
- * webkit_web_policy_decision_download:
- * @decision: a #WebKitWebPolicyDecision
- *
- * Will send the DOWNLOAD decision to the policy implementer.
- *
- * Since: 1.0.3
- */
-void webkit_web_policy_decision_download(WebKitWebPolicyDecision* decision)
-{
- g_return_if_fail(WEBKIT_IS_WEB_POLICY_DECISION(decision));
-
- WebKitWebPolicyDecisionPrivate* priv = decision->priv;
-
- if (!priv->isCancelled)
- (core(priv->frame)->loader()->policyChecker()->*(priv->framePolicyFunction))(WebCore::PolicyDownload);
-}
-
-void webkit_web_policy_decision_cancel(WebKitWebPolicyDecision* decision)
-{
- g_return_if_fail(WEBKIT_IS_WEB_POLICY_DECISION(decision));
-
- WebKitWebPolicyDecisionPrivate* priv = decision->priv;
-
- priv->isCancelled = TRUE;
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebpolicydecision.h b/Source/WebKit/gtk/webkit/webkitwebpolicydecision.h
deleted file mode 100644
index 2b61837a3..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebpolicydecision.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (C) 2008 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebpolicydecision_h
-#define webkitwebpolicydecision_h
-
-#include <glib-object.h>
-#include <stdint.h>
-#include "webkitdefines.h"
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_POLICY_DECISION (webkit_web_policy_decision_get_type())
-#define WEBKIT_WEB_POLICY_DECISION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_POLICY_DECISION, WebKitWebPolicyDecision))
-#define WEBKIT_WEB_POLICY_DECISION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_POLICY_DECISION, WebKitWebPolicyDecisionClass))
-#define WEBKIT_IS_WEB_POLICY_DECISION(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_POLICY_DECISION))
-#define WEBKIT_IS_WEB_POLICY_DECISION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_POLICY_DECISION))
-#define WEBKIT_WEB_POLICY_DECISION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_POLICY_DECISION, WebKitWebPolicyDecisionClass))
-
-typedef struct _WebKitWebPolicyDecisionPrivate WebKitWebPolicyDecisionPrivate;
-struct _WebKitWebPolicyDecision {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebPolicyDecisionPrivate* priv;
-};
-
-struct _WebKitWebPolicyDecisionClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_web_policy_decision_get_type (void);
-
-WEBKIT_API void
-webkit_web_policy_decision_use (WebKitWebPolicyDecision* decision);
-
-WEBKIT_API void
-webkit_web_policy_decision_ignore (WebKitWebPolicyDecision* decision);
-
-WEBKIT_API void
-webkit_web_policy_decision_download (WebKitWebPolicyDecision* decision);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebpolicydecisionprivate.h b/Source/WebKit/gtk/webkit/webkitwebpolicydecisionprivate.h
deleted file mode 100644
index 2d264ab15..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebpolicydecisionprivate.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebpolicydecisionprivate_h
-#define webkitwebpolicydecisionprivate_h
-
-#include "webkitwebpolicydecision.h"
-
-extern "C" {
-
-WebKitWebPolicyDecision* webkit_web_policy_decision_new(WebKitWebFrame*, WebCore::FramePolicyFunction);
-
-void webkit_web_policy_decision_cancel(WebKitWebPolicyDecision*);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebresource.cpp b/Source/WebKit/gtk/webkit/webkitwebresource.cpp
deleted file mode 100644
index 6fac37bf6..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebresource.cpp
+++ /dev/null
@@ -1,485 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael C. Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebresource.h"
-
-#include "ArchiveResource.h"
-#include "KURL.h"
-#include "SharedBuffer.h"
-#include "webkitenumtypes.h"
-#include "webkitglobalsprivate.h"
-#include "webkitmarshal.h"
-#include "webkitnetworkresponse.h"
-#include "webkitwebresourceprivate.h"
-#include <glib.h>
-#include <glib/gi18n-lib.h>
-#include <wtf/Assertions.h>
-#include <wtf/text/CString.h>
-#include <wtf/text/WTFString.h>
-
-/**
- * SECTION:webkitwebresource
- * @short_description: Represents a downloaded URI.
- * @see_also: #WebKitWebDataSource
- *
- * A web resource encapsulates the data of the download as well as the URI,
- * MIME type and frame name of the resource.
- */
-
-using namespace WebCore;
-
-enum {
- // Resource loading
- RESPONSE_RECEIVED,
- LOAD_FINISHED,
- CONTENT_LENGTH_RECEIVED,
- LOAD_FAILED,
-
- LAST_SIGNAL
-};
-
-enum {
- PROP_0,
- PROP_URI,
- PROP_MIME_TYPE,
- PROP_ENCODING,
- PROP_FRAME_NAME
-};
-
-static guint webkit_web_resource_signals[LAST_SIGNAL] = { 0, };
-
-G_DEFINE_TYPE(WebKitWebResource, webkit_web_resource, G_TYPE_OBJECT);
-
-static void webkit_web_resource_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec);
-static void webkit_web_resource_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec);
-
-static void webkit_web_resource_cleanup(WebKitWebResource* webResource)
-{
- WebKitWebResourcePrivate* priv = webResource->priv;
-
- g_free(priv->uri);
- priv->uri = NULL;
-
- g_free(priv->mimeType);
- priv->mimeType = NULL;
-
- g_free(priv->textEncoding);
- priv->textEncoding = NULL;
-
- g_free(priv->frameName);
- priv->frameName = NULL;
-
- if (priv->data)
- g_string_free(priv->data, TRUE);
- priv->data = NULL;
-}
-
-static void webkit_web_resource_dispose(GObject* object)
-{
- WebKitWebResource* webResource = WEBKIT_WEB_RESOURCE(object);
- WebKitWebResourcePrivate* priv = webResource->priv;
-
- if (priv->resource) {
- priv->resource->deref();
- priv->resource = 0;
- }
-
- G_OBJECT_CLASS(webkit_web_resource_parent_class)->dispose(object);
-}
-
-static void webkit_web_resource_finalize(GObject* object)
-{
- WebKitWebResource* webResource = WEBKIT_WEB_RESOURCE(object);
-
- webkit_web_resource_cleanup(webResource);
-
- G_OBJECT_CLASS(webkit_web_resource_parent_class)->finalize(object);
-}
-
-static void webkit_web_resource_class_init(WebKitWebResourceClass* webResourceClass)
-{
- GObjectClass* gobject_class = G_OBJECT_CLASS(webResourceClass);
-
- gobject_class->dispose = webkit_web_resource_dispose;
- gobject_class->finalize = webkit_web_resource_finalize;
- gobject_class->get_property = webkit_web_resource_get_property;
- gobject_class->set_property = webkit_web_resource_set_property;
-
- /**
- * WebKitWebResource::response-received:
- * @web_resource: the #WebKitWebResource being loaded
- * @response: the #WebKitNetworkResponse that was received
- *
- * Emitted when the response is received from the server.
- *
- * Since: 1.7.5
- */
- webkit_web_resource_signals[RESPONSE_RECEIVED] = g_signal_new("response-received",
- G_TYPE_FROM_CLASS(webResourceClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_NETWORK_RESPONSE);
-
- /**
- * WebKitWebResource::load-failed:
- * @web_resource: the #WebKitWebResource that was loaded
- * @error: the #GError that was triggered
- *
- * Invoked when the @web_resource failed to load
- *
- * Since: 1.7.5
- */
- webkit_web_resource_signals[LOAD_FAILED] = g_signal_new("load-failed",
- G_TYPE_FROM_CLASS(webResourceClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__POINTER,
- G_TYPE_NONE, 1,
- G_TYPE_POINTER);
-
- /**
- * WebKitWebResource::load-finished:
- * @web_resource: the #WebKitWebResource being loaded
- *
- * Emitted when all the data for the resource was loaded
- *
- * Since: 1.7.5
- */
- webkit_web_resource_signals[LOAD_FINISHED] = g_signal_new("load-finished",
- G_TYPE_FROM_CLASS(webResourceClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebResource::content-length-received:
- * @web_resource: the #WebKitWebResource that was loaded
- * @length_received: the amount of data received since the last signal emission
- *
- * Emitted when new resource data has been received. The
- * @length_received variable stores the amount of bytes received
- * since the last time this signal was emitted. This is useful to
- * provide progress information about the resource load operation.
- *
- * Since: 1.7.5
- */
- webkit_web_resource_signals[CONTENT_LENGTH_RECEIVED] = g_signal_new("content-length-received",
- G_TYPE_FROM_CLASS(webResourceClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__INT,
- G_TYPE_NONE, 1,
- G_TYPE_INT);
-
- /**
- * WebKitWebResource:uri:
- *
- * The URI of the web resource
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobject_class,
- PROP_URI,
- g_param_spec_string(
- "uri",
- _("URI"),
- _("The URI of the resource"),
- NULL,
- (GParamFlags)(WEBKIT_PARAM_READWRITE|G_PARAM_CONSTRUCT_ONLY)));
- /**
- * WebKitWebResource:mime-type:
- *
- * The MIME type of the web resource.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobject_class,
- PROP_MIME_TYPE,
- g_param_spec_string(
- "mime-type",
- _("MIME Type"),
- _("The MIME type of the resource"),
- NULL,
- WEBKIT_PARAM_READABLE));
- /**
- * WebKitWebResource:encoding:
- *
- * The encoding name to which the web resource was encoded in.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobject_class,
- PROP_ENCODING,
- g_param_spec_string(
- "encoding",
- _("Encoding"),
- _("The text encoding name of the resource"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebResource:frame-name:
- *
- * The frame name for the web resource.
- *
- * Since: 1.1.14
- */
- g_object_class_install_property(gobject_class,
- PROP_FRAME_NAME,
- g_param_spec_string(
- "frame-name",
- _("Frame Name"),
- _("The frame name of the resource"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- g_type_class_add_private(gobject_class, sizeof(WebKitWebResourcePrivate));
-}
-
-static void webkit_web_resource_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec)
-{
- WebKitWebResource* webResource = WEBKIT_WEB_RESOURCE(object);
-
- switch (prop_id) {
- case PROP_URI:
- g_value_set_string(value, webkit_web_resource_get_uri(webResource));
- break;
- case PROP_MIME_TYPE:
- g_value_set_string(value, webkit_web_resource_get_mime_type(webResource));
- break;
- case PROP_ENCODING:
- g_value_set_string(value, webkit_web_resource_get_encoding(webResource));
- break;
- case PROP_FRAME_NAME:
- g_value_set_string(value, webkit_web_resource_get_frame_name(webResource));
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-static void webkit_web_resource_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec)
-{
- WebKitWebResource* webResource = WEBKIT_WEB_RESOURCE(object);
-
- switch (prop_id) {
- case PROP_URI:
- g_free(webResource->priv->uri);
- webResource->priv->uri = g_value_dup_string(value);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-static void webkit_web_resource_init(WebKitWebResource* webResource)
-{
- webResource->priv = G_TYPE_INSTANCE_GET_PRIVATE(webResource, WEBKIT_TYPE_WEB_RESOURCE, WebKitWebResourcePrivate);
-}
-
-// internal use only
-WebKitWebResource* webkit_web_resource_new_with_core_resource(PassRefPtr<ArchiveResource> resource)
-{
- WebKitWebResource* webResource = WEBKIT_WEB_RESOURCE(g_object_new(WEBKIT_TYPE_WEB_RESOURCE, NULL));
- WebKitWebResourcePrivate* priv = webResource->priv;
- priv->resource = resource.leakRef();
-
- return webResource;
-}
-
-void webkit_web_resource_init_with_core_resource(WebKitWebResource* webResource, PassRefPtr<ArchiveResource> resource)
-{
- ASSERT(resource);
-
- WebKitWebResourcePrivate* priv = webResource->priv;
-
- if (priv->resource)
- priv->resource->deref();
-
- priv->resource = resource.leakRef();
-}
-
-/**
- * webkit_web_resource_new:
- * @data: the data to initialize the #WebKitWebResource
- * @size: the length of @data
- * @uri: the URI of the #WebKitWebResource
- * @mime_type: the MIME type of the #WebKitWebResource
- * @encoding: the text encoding name of the #WebKitWebResource
- * @frame_name: the frame name of the #WebKitWebResource
- *
- * Returns a new #WebKitWebResource. The @encoding can be %NULL. The
- * @frame_name argument can be used if the resource represents contents of an
- * entire HTML frame, otherwise pass %NULL.
- *
- * Return value: a new #WebKitWebResource
- *
- * Since: 1.1.14
- */
-WebKitWebResource* webkit_web_resource_new(const gchar* data,
- gssize size,
- const gchar* uri,
- const gchar* mimeType,
- const gchar* encoding,
- const gchar* frameName)
-{
- g_return_val_if_fail(data, NULL);
- g_return_val_if_fail(uri, NULL);
- g_return_val_if_fail(mimeType, NULL);
-
- if (size < 0)
- size = strlen(data);
-
- RefPtr<SharedBuffer> buffer = SharedBuffer::create(data, size);
- WebKitWebResource* webResource = webkit_web_resource_new_with_core_resource(ArchiveResource::create(buffer, KURL(KURL(), String::fromUTF8(uri)), String::fromUTF8(mimeType), String::fromUTF8(encoding), String::fromUTF8(frameName)));
-
- return webResource;
-}
-
-/**
- * webkit_web_resource_get_data:
- * @web_resource: a #WebKitWebResource
- *
- * Returns the data of the @webResource.
- *
- * Return value: (transfer none): a #GString containing the character
- * data of the @webResource. The string is owned by WebKit and should
- * not be freed or destroyed.
- *
- * Since: 1.1.14
- */
-GString* webkit_web_resource_get_data(WebKitWebResource* webResource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_RESOURCE(webResource), NULL);
-
- WebKitWebResourcePrivate* priv = webResource->priv;
-
- if (!priv->resource)
- return NULL;
-
- if (!priv->data)
- priv->data = g_string_new_len(priv->resource->data()->data(), priv->resource->data()->size());
-
- return priv->data;
-}
-
-/**
- * webkit_web_resource_get_uri:
- * @web_resource: a #WebKitWebResource
- *
- * Return value: the URI of the resource
- *
- * Since: 1.1.14
- */
-const gchar* webkit_web_resource_get_uri(WebKitWebResource* webResource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_RESOURCE(webResource), NULL);
-
- WebKitWebResourcePrivate* priv = webResource->priv;
-
-
- // We may have an URI without having a resource assigned to us (e.g., if the
- // FrameLoaderClient only had a ResourceRequest when we got created
- if (priv->uri)
- return priv->uri;
-
- if (!priv->resource)
- return NULL;
-
- priv->uri = g_strdup(priv->resource->url().string().utf8().data());
-
- return priv->uri;
-}
-
-/**
- * webkit_web_resource_get_mime_type:
- * @web_resource: a #WebKitWebResource
- *
- * Return value: the MIME type of the resource
- *
- * Since: 1.1.14
- */
-const gchar* webkit_web_resource_get_mime_type(WebKitWebResource* webResource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_RESOURCE(webResource), NULL);
-
- WebKitWebResourcePrivate* priv = webResource->priv;
- if (!priv->resource)
- return NULL;
-
- if (!priv->mimeType)
- priv->mimeType = g_strdup(priv->resource->mimeType().utf8().data());
-
- return priv->mimeType;
-}
-
-/**
- * webkit_web_resource_get_encoding:
- * @web_resource: a #WebKitWebResource
- *
- * Return value: the encoding name of the resource
- *
- * Since: 1.1.14
- */
-const gchar* webkit_web_resource_get_encoding(WebKitWebResource* webResource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_RESOURCE(webResource), NULL);
-
- WebKitWebResourcePrivate* priv = webResource->priv;
- if (!priv->resource)
- return NULL;
-
- if (!priv->textEncoding)
- priv->textEncoding = g_strdup(priv->resource->textEncoding().utf8().data());
-
- return priv->textEncoding;
-}
-
-/**
- * webkit_web_resource_get_frame_name:
- * @web_resource: a #WebKitWebResource
- *
- * Return value: the frame name of the resource.
- *
- * Since: 1.1.14
- */
-const gchar* webkit_web_resource_get_frame_name(WebKitWebResource* webResource)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_RESOURCE(webResource), NULL);
-
- WebKitWebResourcePrivate* priv = webResource->priv;
- if (!priv->resource)
- return NULL;
-
- if (!priv->frameName)
- priv->frameName = g_strdup(priv->resource->frameName().utf8().data());
-
- return priv->frameName;
-}
-
diff --git a/Source/WebKit/gtk/webkit/webkitwebresource.h b/Source/WebKit/gtk/webkit/webkitwebresource.h
deleted file mode 100644
index 2052cf431..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebresource.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright (C) 2009 Jan Michael C. Alonzo
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebresource_h
-#define webkitwebresource_h
-
-#include <glib.h>
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_RESOURCE (webkit_web_resource_get_type())
-#define WEBKIT_WEB_RESOURCE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_RESOURCE, WebKitWebResource))
-#define WEBKIT_WEB_RESOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_RESOURCE, WebKitWebResourceClass))
-#define WEBKIT_IS_WEB_RESOURCE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_RESOURCE))
-#define WEBKIT_IS_WEB_RESOURCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_RESOURCE))
-#define WEBKIT_WEB_RESOURCE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_RESOURCE, WebKitWebResourceClass))
-
-typedef struct _WebKitWebResourcePrivate WebKitWebResourcePrivate;
-
-struct _WebKitWebResource {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebResourcePrivate *priv;
-};
-
-struct _WebKitWebResourceClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved0) (void);
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
-};
-
-WEBKIT_API GType
-webkit_web_resource_get_type (void);
-
-WEBKIT_API WebKitWebResource *
-webkit_web_resource_new (const gchar *data,
- gssize size,
- const gchar *uri,
- const gchar *mime_type,
- const gchar *encoding,
- const gchar *frame_name);
-
-WEBKIT_API GString *
-webkit_web_resource_get_data (WebKitWebResource *web_resource);
-
-WEBKIT_API const gchar *
-webkit_web_resource_get_uri (WebKitWebResource *web_resource);
-
-WEBKIT_API const gchar *
-webkit_web_resource_get_mime_type (WebKitWebResource *web_resource);
-
-WEBKIT_API const gchar *
-webkit_web_resource_get_encoding (WebKitWebResource *web_resource);
-
-WEBKIT_API const gchar *
-webkit_web_resource_get_frame_name (WebKitWebResource *web_resource);
-
-G_END_DECLS
-
-#endif /* webkitwebresource_h */
diff --git a/Source/WebKit/gtk/webkit/webkitwebresourceprivate.h b/Source/WebKit/gtk/webkit/webkitwebresourceprivate.h
deleted file mode 100644
index 2ae3d0565..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebresourceprivate.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebresourceprivate_h
-#define webkitwebresourceprivate_h
-
-#include "ArchiveResource.h"
-#include "webkitwebresource.h"
-
-extern "C" {
-
-struct _WebKitWebResourcePrivate {
- WebCore::ArchiveResource* resource;
-
- gchar* uri;
- gchar* mimeType;
- gchar* textEncoding;
- gchar* frameName;
-
- GString* data;
-};
-
-WebKitWebResource* webkit_web_resource_new_with_core_resource(PassRefPtr<WebCore::ArchiveResource>);
-
-void webkit_web_resource_init_with_core_resource(WebKitWebResource*, PassRefPtr<WebCore::ArchiveResource>);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebsettings.cpp b/Source/WebKit/gtk/webkit/webkitwebsettings.cpp
deleted file mode 100644
index 22ce6bb36..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebsettings.cpp
+++ /dev/null
@@ -1,1653 +0,0 @@
-/*
- * Copyright (C) 2008 Christian Dywan <christian@imendio.com>
- * Copyright (C) 2008 Nuanti Ltd.
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2008 Holger Hans Peter Freyther
- * Copyright (C) 2009 Jan Michael Alonzo
- * Copyright (C) 2009 Movial Creative Technologies Inc.
- * Copyright (C) 2009 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebsettings.h"
-
-#include "EditingBehavior.h"
-#include "FileSystem.h"
-#include "KURL.h"
-#include "PluginDatabase.h"
-#include "UserAgentGtk.h"
-#include "webkitenumtypes.h"
-#include "webkitglobalsprivate.h"
-#include "webkitversion.h"
-#include "webkitwebsettingsprivate.h"
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/text/CString.h>
-#include <wtf/text/StringConcatenate.h>
-#include <glib/gi18n-lib.h>
-
-/**
- * SECTION:webkitwebsettings
- * @short_description: Control the behaviour of a #WebKitWebView
- *
- * #WebKitWebSettings can be applied to a #WebKitWebView to control text encoding,
- * color, font sizes, printing mode, script support, loading of images and various other things.
- * After creation, a #WebKitWebSettings object contains default settings.
- *
- * <informalexample><programlisting>
- * /<!-- -->* Create a new websettings and disable java script *<!-- -->/
- * WebKitWebSettings *settings = webkit_web_settings_new ();
- * g_object_set (G_OBJECT(settings), "enable-scripts", FALSE, NULL);
- *
- * /<!-- -->* Apply the result *<!-- -->/
- * webkit_web_view_set_settings (WEBKIT_WEB_VIEW(my_webview), settings);
- * </programlisting></informalexample>
- */
-
-using namespace WebCore;
-
-G_DEFINE_TYPE(WebKitWebSettings, webkit_web_settings, G_TYPE_OBJECT)
-
-enum {
- PROP_0,
-
- PROP_DEFAULT_ENCODING,
- PROP_CURSIVE_FONT_FAMILY,
- PROP_DEFAULT_FONT_FAMILY,
- PROP_FANTASY_FONT_FAMILY,
- PROP_MONOSPACE_FONT_FAMILY,
- PROP_SANS_SERIF_FONT_FAMILY,
- PROP_SERIF_FONT_FAMILY,
- PROP_DEFAULT_FONT_SIZE,
- PROP_DEFAULT_MONOSPACE_FONT_SIZE,
- PROP_MINIMUM_FONT_SIZE,
- PROP_MINIMUM_LOGICAL_FONT_SIZE,
- PROP_ENFORCE_96_DPI,
- PROP_AUTO_LOAD_IMAGES,
- PROP_AUTO_SHRINK_IMAGES,
- PROP_RESPECT_IMAGE_ORIENTATION,
- PROP_PRINT_BACKGROUNDS,
- PROP_ENABLE_SCRIPTS,
- PROP_ENABLE_PLUGINS,
- PROP_RESIZABLE_TEXT_AREAS,
- PROP_USER_STYLESHEET_URI,
- PROP_ZOOM_STEP,
- PROP_ENABLE_DEVELOPER_EXTRAS,
- PROP_ENABLE_PRIVATE_BROWSING,
- PROP_ENABLE_SPELL_CHECKING,
- PROP_SPELL_CHECKING_LANGUAGES,
- PROP_ENABLE_CARET_BROWSING,
- PROP_ENABLE_HTML5_DATABASE,
- PROP_ENABLE_HTML5_LOCAL_STORAGE,
- PROP_HTML5_LOCAL_STORAGE_DATABASE_PATH,
- PROP_ENABLE_XSS_AUDITOR,
- PROP_ENABLE_SPATIAL_NAVIGATION,
- PROP_ENABLE_FRAME_FLATTENING,
- PROP_USER_AGENT,
- PROP_JAVASCRIPT_CAN_OPEN_WINDOWS_AUTOMATICALLY,
- PROP_JAVASCRIPT_CAN_ACCESS_CLIPBOARD,
- PROP_ENABLE_OFFLINE_WEB_APPLICATION_CACHE,
- PROP_EDITING_BEHAVIOR,
- PROP_ENABLE_UNIVERSAL_ACCESS_FROM_FILE_URIS,
- PROP_ENABLE_FILE_ACCESS_FROM_FILE_URIS,
- PROP_ENABLE_DOM_PASTE,
- PROP_TAB_KEY_CYCLES_THROUGH_ELEMENTS,
- PROP_ENABLE_DEFAULT_CONTEXT_MENU,
- PROP_ENABLE_SITE_SPECIFIC_QUIRKS,
- PROP_ENABLE_PAGE_CACHE,
- PROP_AUTO_RESIZE_WINDOW,
- PROP_ENABLE_JAVA_APPLET,
- PROP_ENABLE_HYPERLINK_AUDITING,
- PROP_ENABLE_FULLSCREEN,
- PROP_ENABLE_DNS_PREFETCHING,
- PROP_ENABLE_WEBGL,
- PROP_ENABLE_MEDIA_STREAM,
- PROP_ENABLE_WEB_AUDIO,
- PROP_ENABLE_ACCELERATED_COMPOSITING,
- PROP_ENABLE_SMOOTH_SCROLLING,
- PROP_MEDIA_PLAYBACK_REQUIRES_USER_GESTURE,
- PROP_MEDIA_PLAYBACK_ALLOWS_INLINE,
- PROP_ENABLE_CSS_SHADERS,
- PROP_ENABLE_RUNNING_OF_INSECURE_CONTENT,
- PROP_ENABLE_DISPLAY_OF_INSECURE_CONTENT
-};
-
-static void webkit_web_settings_finalize(GObject* object);
-
-static void webkit_web_settings_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec);
-
-static void webkit_web_settings_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec);
-
-static void webkit_web_settings_class_init(WebKitWebSettingsClass* klass)
-{
- GObjectClass* gobject_class = G_OBJECT_CLASS(klass);
- gobject_class->finalize = webkit_web_settings_finalize;
- gobject_class->set_property = webkit_web_settings_set_property;
- gobject_class->get_property = webkit_web_settings_get_property;
-
- webkitInit();
-
- GParamFlags flags = (GParamFlags)(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT);
-
- g_object_class_install_property(gobject_class,
- PROP_DEFAULT_ENCODING,
- g_param_spec_string(
- "default-encoding",
- _("Default Encoding"),
- _("The default encoding used to display text."),
- "iso-8859-1",
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_CURSIVE_FONT_FAMILY,
- g_param_spec_string(
- "cursive-font-family",
- _("Cursive Font Family"),
- _("The default Cursive font family used to display text."),
- "serif",
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_DEFAULT_FONT_FAMILY,
- g_param_spec_string(
- "default-font-family",
- _("Default Font Family"),
- _("The default font family used to display text."),
- "sans-serif",
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_FANTASY_FONT_FAMILY,
- g_param_spec_string(
- "fantasy-font-family",
- _("Fantasy Font Family"),
- _("The default Fantasy font family used to display text."),
- "serif",
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_MONOSPACE_FONT_FAMILY,
- g_param_spec_string(
- "monospace-font-family",
- _("Monospace Font Family"),
- _("The default font family used to display monospace text."),
- "monospace",
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_SANS_SERIF_FONT_FAMILY,
- g_param_spec_string(
- "sans-serif-font-family",
- _("Sans Serif Font Family"),
- _("The default Sans Serif font family used to display text."),
- "sans-serif",
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_SERIF_FONT_FAMILY,
- g_param_spec_string(
- "serif-font-family",
- _("Serif Font Family"),
- _("The default Serif font family used to display text."),
- "serif",
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_DEFAULT_FONT_SIZE,
- g_param_spec_int(
- "default-font-size",
- _("Default Font Size"),
- _("The default font size used to display text."),
- 5, G_MAXINT, 12,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_DEFAULT_MONOSPACE_FONT_SIZE,
- g_param_spec_int(
- "default-monospace-font-size",
- _("Default Monospace Font Size"),
- _("The default font size used to display monospace text."),
- 5, G_MAXINT, 10,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_MINIMUM_FONT_SIZE,
- g_param_spec_int(
- "minimum-font-size",
- _("Minimum Font Size"),
- _("The minimum font size used to display text."),
- 0, G_MAXINT, 5,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_MINIMUM_LOGICAL_FONT_SIZE,
- g_param_spec_int(
- "minimum-logical-font-size",
- _("Minimum Logical Font Size"),
- _("The minimum logical font size used to display text."),
- 1, G_MAXINT, 5,
- flags));
-
- /**
- * WebKitWebSettings:enforce-96-dpi:
- *
- * Enforce a resolution of 96 DPI. This is meant for compatibility
- * with web pages which cope badly with different screen resolutions
- * and for automated testing.
- * Web browsers and applications that typically display arbitrary
- * content from the web should provide a preference for this.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_ENFORCE_96_DPI,
- g_param_spec_boolean(
- "enforce-96-dpi",
- _("Enforce 96 DPI"),
- _("Enforce a resolution of 96 DPI"),
- FALSE,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_AUTO_LOAD_IMAGES,
- g_param_spec_boolean(
- "auto-load-images",
- _("Auto Load Images"),
- _("Load images automatically."),
- TRUE,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_AUTO_SHRINK_IMAGES,
- g_param_spec_boolean(
- "auto-shrink-images",
- _("Auto Shrink Images"),
- _("Automatically shrink standalone images to fit."),
- TRUE,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_RESPECT_IMAGE_ORIENTATION,
- g_param_spec_boolean(
- "respect-image-orientation",
- _("Respect Image Orientation"),
- _("Whether WebKit should respect image orientation."),
- FALSE,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_PRINT_BACKGROUNDS,
- g_param_spec_boolean(
- "print-backgrounds",
- _("Print Backgrounds"),
- _("Whether background images should be printed."),
- TRUE,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_SCRIPTS,
- g_param_spec_boolean(
- "enable-scripts",
- _("Enable Scripts"),
- _("Enable embedded scripting languages."),
- TRUE,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_PLUGINS,
- g_param_spec_boolean(
- "enable-plugins",
- _("Enable Plugins"),
- _("Enable embedded plugin objects."),
- TRUE,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_RESIZABLE_TEXT_AREAS,
- g_param_spec_boolean(
- "resizable-text-areas",
- _("Resizable Text Areas"),
- _("Whether text areas are resizable."),
- TRUE,
- flags));
-
- g_object_class_install_property(gobject_class,
- PROP_USER_STYLESHEET_URI,
- g_param_spec_string("user-stylesheet-uri",
- _("User Stylesheet URI"),
- _("The URI of a stylesheet that is applied to every page."),
- 0,
- flags));
-
- /**
- * WebKitWebSettings:zoom-step:
- *
- * The value by which the zoom level is changed when zooming in or out.
- *
- * Since: 1.0.1
- */
- g_object_class_install_property(gobject_class,
- PROP_ZOOM_STEP,
- g_param_spec_float(
- "zoom-step",
- _("Zoom Stepping Value"),
- _("The value by which the zoom level is changed when zooming in or out."),
- 0.0f, G_MAXFLOAT, 0.1f,
- flags));
-
- /**
- * WebKitWebSettings:enable-developer-extras:
- *
- * Whether developer extensions should be enabled. This enables,
- * for now, the Web Inspector, which can be controlled using the
- * #WebKitWebInspector instance held by the #WebKitWebView this
- * setting is enabled for.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_DEVELOPER_EXTRAS,
- g_param_spec_boolean(
- "enable-developer-extras",
- _("Enable Developer Extras"),
- _("Enables special extensions that help developers"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-private-browsing:
- *
- * Whether to enable private browsing mode. Private browsing mode prevents
- * WebKit from updating the global history and storing any session
- * information e.g., on-disk cache, as well as suppressing any messages
- * from being printed into the (javascript) console.
- *
- * This is currently experimental for WebKitGtk.
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_PRIVATE_BROWSING,
- g_param_spec_boolean(
- "enable-private-browsing",
- _("Enable Private Browsing"),
- _("Enables private browsing mode"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-spell-checking:
- *
- * Whether to enable spell checking while typing.
- *
- * Since: 1.1.6
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_SPELL_CHECKING,
- g_param_spec_boolean(
- "enable-spell-checking",
- _("Enable Spell Checking"),
- _("Enables spell checking while typing"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:spell-checking-languages:
- *
- * The languages to be used for spell checking, separated by commas.
- *
- * The locale string typically is in the form lang_COUNTRY, where lang
- * is an ISO-639 language code, and COUNTRY is an ISO-3166 country code.
- * For instance, sv_FI for Swedish as written in Finland or pt_BR
- * for Portuguese as written in Brazil.
- *
- * If no value is specified then the value returned by
- * gtk_get_default_language will be used.
- *
- * Since: 1.1.6
- */
- g_object_class_install_property(gobject_class,
- PROP_SPELL_CHECKING_LANGUAGES,
- g_param_spec_string(
- "spell-checking-languages",
- _("Languages to use for spell checking"),
- _("Comma separated list of languages to use for spell checking"),
- 0,
- flags));
-
- /**
- * WebKitWebSettings:enable-caret-browsing:
- *
- * Whether to enable caret browsing mode.
- *
- * Since: 1.1.6
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_CARET_BROWSING,
- g_param_spec_boolean("enable-caret-browsing",
- _("Enable Caret Browsing"),
- _("Whether to enable accessibility enhanced keyboard navigation"),
- FALSE,
- flags));
- /**
- * WebKitWebSettings:enable-html5-database:
- *
- * Whether to enable HTML5 client-side SQL database support. Client-side
- * SQL database allows web pages to store structured data and be able to
- * use SQL to manipulate that data asynchronously.
- *
- * Since: 1.1.8
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_HTML5_DATABASE,
- g_param_spec_boolean("enable-html5-database",
- _("Enable HTML5 Database"),
- _("Whether to enable HTML5 database support"),
- TRUE,
- flags));
-
- /**
- * WebKitWebSettings:enable-html5-local-storage:
- *
- * Whether to enable HTML5 localStorage support. localStorage provides
- * simple synchronous storage access.
- *
- * Since: 1.1.8
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_HTML5_LOCAL_STORAGE,
- g_param_spec_boolean("enable-html5-local-storage",
- _("Enable HTML5 Local Storage"),
- _("Whether to enable HTML5 Local Storage support"),
- TRUE,
- flags));
- /**
- * WebKitWebSettings:html5-local-storage-database-path:
- *
- * Path to store persistent HTML5 localStorage databases, which are enabled by
- * "enable-html5-local-storage". The default path is $XDG_DATA_HOME/webkit/databases/.
- *
- * Since: 1.5.2
- */
- GOwnPtr<gchar> localStoragePath(g_build_filename(g_get_user_data_dir(), "webkit", "databases", NULL));
- g_object_class_install_property(gobject_class,
- PROP_HTML5_LOCAL_STORAGE_DATABASE_PATH,
- g_param_spec_string("html5-local-storage-database-path",
- _("Local Storage Database Path"),
- _("The path to where HTML5 Local Storage databases are stored."),
- localStoragePath.get(),
- flags));
- /**
- * WebKitWebSettings:enable-xss-auditor:
- *
- * Whether to enable the XSS Auditor. This feature filters some kinds of
- * reflective XSS attacks on vulnerable web sites.
- *
- * Since: 1.1.11
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_XSS_AUDITOR,
- g_param_spec_boolean("enable-xss-auditor",
- _("Enable XSS Auditor"),
- _("Whether to enable the XSS auditor"),
- TRUE,
- flags));
- /**
- * WebKitWebSettings:enable-spatial-navigation:
- *
- * Whether to enable the Spatial Navigation. This feature consists in the ability
- * to navigate between focusable elements in a Web page, such as hyperlinks and
- * form controls, by using Left, Right, Up and Down arrow keys. For example, if
- * an user presses the Right key, heuristics determine whether there is an element
- * he might be trying to reach towards the right, and if there are multiple elements,
- * which element he probably wants.
- *
- * Since: 1.1.23
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_SPATIAL_NAVIGATION,
- g_param_spec_boolean("enable-spatial-navigation",
- _("Enable Spatial Navigation"),
- _("Whether to enable Spatial Navigation"),
- FALSE,
- flags));
- /**
- * WebKitWebSettings:enable-frame-flattening:
- *
- * Whether to enable the Frame Flattening. With this setting each subframe is expanded
- * to its contents, which will flatten all the frames to become one scrollable page.
- * On touch devices, it is desired to not have any scrollable sub parts of the page as
- * it results in a confusing user experience, with scrolling sometimes scrolling sub parts
- * and at other times scrolling the page itself. For this reason iframes and framesets are
- * barely usable on touch devices.
- *
- * Since: 1.3.5
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_FRAME_FLATTENING,
- g_param_spec_boolean("enable-frame-flattening",
- _("Enable Frame Flattening"),
- _("Whether to enable Frame Flattening"),
- FALSE,
- flags));
- /**
- * WebKitWebSettings:user-agent:
- *
- * The User-Agent string used by WebKitGtk.
- *
- * This will return a default User-Agent string if a custom string wasn't
- * provided by the application. Setting this property to a NULL value or
- * an empty string will result in the User-Agent string being reset to the
- * default value.
- *
- * Since: 1.1.11
- */
- g_object_class_install_property(gobject_class, PROP_USER_AGENT,
- g_param_spec_string("user-agent",
- _("User Agent"),
- _("The User-Agent string used by WebKitGtk"),
- "", // An empty string means the default user-agent.
- flags));
-
- /**
- * WebKitWebSettings:javascript-can-open-windows-automatically:
- *
- * Whether JavaScript can open popup windows automatically without user
- * intervention.
- *
- * Since: 1.1.11
- */
- g_object_class_install_property(gobject_class,
- PROP_JAVASCRIPT_CAN_OPEN_WINDOWS_AUTOMATICALLY,
- g_param_spec_boolean("javascript-can-open-windows-automatically",
- _("JavaScript can open windows automatically"),
- _("Whether JavaScript can open windows automatically"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:javascript-can-access-clipboard:
- *
- * Whether JavaScript can access Clipboard.
- *
- * Since: 1.3.0
- */
- g_object_class_install_property(gobject_class,
- PROP_JAVASCRIPT_CAN_ACCESS_CLIPBOARD,
- g_param_spec_boolean("javascript-can-access-clipboard",
- _("JavaScript can access Clipboard"),
- _("Whether JavaScript can access Clipboard"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-offline-web-application-cache:
- *
- * Whether to enable HTML5 offline web application cache support. Offline
- * Web Application Cache ensures web applications are available even when
- * the user is not connected to the network.
- *
- * Since: 1.1.13
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_OFFLINE_WEB_APPLICATION_CACHE,
- g_param_spec_boolean("enable-offline-web-application-cache",
- _("Enable offline web application cache"),
- _("Whether to enable offline web application cache"),
- TRUE,
- flags));
-
-
- /**
- * WebKitWebSettings:editing-behavior:
- *
- * This setting controls various editing behaviors that differ
- * between platforms and that have been combined in two groups,
- * 'Mac' and 'Windows'. Some examples:
- *
- * 1) Clicking below the last line of an editable area puts the
- * caret at the end of the last line on Mac, but in the middle of
- * the last line on Windows.
- *
- * 2) Pushing down the arrow key on the last line puts the caret
- * at the end of the last line on Mac, but does nothing on
- * Windows. A similar case exists on the top line.
- *
- * Since: 1.1.13
- */
- g_object_class_install_property(gobject_class,
- PROP_EDITING_BEHAVIOR,
- g_param_spec_enum("editing-behavior",
- _("Editing behavior"),
- _("The behavior mode to use in editing mode"),
- WEBKIT_TYPE_EDITING_BEHAVIOR,
- WEBKIT_EDITING_BEHAVIOR_UNIX,
- flags));
-
- /**
- * WebKitWebSettings:enable-universal-access-from-file-uris:
- *
- * Whether to allow files loaded through file:// URIs universal access to
- * all pages.
- *
- * Since: 1.1.13
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_UNIVERSAL_ACCESS_FROM_FILE_URIS,
- g_param_spec_boolean("enable-universal-access-from-file-uris",
- _("Enable universal access from file URIs"),
- _("Whether to allow universal access from file URIs"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-dom-paste:
- *
- * Whether to enable DOM paste. If set to %TRUE, document.execCommand("Paste")
- * will correctly execute and paste content of the clipboard.
- *
- * Since: 1.1.16
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_DOM_PASTE,
- g_param_spec_boolean("enable-dom-paste",
- _("Enable DOM paste"),
- _("Whether to enable DOM paste"),
- FALSE,
- flags));
- /**
- * WebKitWebSettings:tab-key-cycles-through-elements:
- *
- * Whether the tab key cycles through elements on the page.
- *
- * If @flag is %TRUE, pressing the tab key will focus the next element in
- * the @web_view. If @flag is %FALSE, the @web_view will interpret tab
- * key presses as normal key presses. If the selected element is editable, the
- * tab key will cause the insertion of a tab character.
- *
- * Since: 1.1.17
- */
- g_object_class_install_property(gobject_class,
- PROP_TAB_KEY_CYCLES_THROUGH_ELEMENTS,
- g_param_spec_boolean("tab-key-cycles-through-elements",
- _("Tab key cycles through elements"),
- _("Whether the tab key cycles through elements on the page."),
- TRUE,
- flags));
-
- /**
- * WebKitWebSettings:enable-default-context-menu:
- *
- * Whether right-clicks should be handled automatically to create,
- * and display the context menu. Turning this off will make
- * WebKitGTK+ not emit the populate-popup signal. Notice that the
- * default button press event handler may still handle right
- * clicks for other reasons, such as in-page context menus, or
- * right-clicks that are handled by the page itself.
- *
- * Since: 1.1.18
- *
- * Deprecated: 1.10: Use #WebKitWebView::context-menu signal instead.
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_DEFAULT_CONTEXT_MENU,
- g_param_spec_boolean(
- "enable-default-context-menu",
- _("Enable Default Context Menu"),
- _("Enables the handling of right-clicks for the creation of the default context menu"),
- TRUE,
- flags));
-
- /**
- * WebKitWebSettings::enable-site-specific-quirks:
- *
- * Whether to turn on site-specific hacks. Turning this on will
- * tell WebKitGTK+ to use some site-specific workarounds for
- * better web compatibility. For example, older versions of
- * MediaWiki will incorrectly send WebKit a css file with KHTML
- * workarounds. By turning on site-specific quirks, WebKit will
- * special-case this and other cases to make the sites work.
- *
- * Since: 1.1.18
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_SITE_SPECIFIC_QUIRKS,
- g_param_spec_boolean(
- "enable-site-specific-quirks",
- _("Enable Site Specific Quirks"),
- _("Enables the site-specific compatibility workarounds"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-page-cache:
- *
- * Enable or disable the page cache. Disabling the page cache is
- * generally only useful for special circumstances like low-memory
- * scenarios or special purpose applications like static HTML
- * viewers. This setting only controls the Page Cache, this cache
- * is different than the disk-based or memory-based traditional
- * resource caches, its point is to make going back and forth
- * between pages much faster. For details about the different types
- * of caches and their purposes see:
- * http://webkit.org/blog/427/webkit-page-cache-i-the-basics/
- *
- * Since: 1.1.18
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_PAGE_CACHE,
- g_param_spec_boolean("enable-page-cache",
- _("Enable page cache"),
- _("Whether the page cache should be used"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:auto-resize-window:
- *
- * Web pages can request to modify the size and position of the
- * window containing the #WebKitWebView through various DOM methods
- * (resizeTo, moveTo, resizeBy, moveBy). By default WebKit will not
- * honor this requests, but you can set this property to %TRUE if
- * you'd like it to do so. If you wish to handle this manually, you
- * can connect to the notify signal for the
- * #WebKitWebWindowFeatures of your #WebKitWebView.
- *
- * Since: 1.1.22
- */
- g_object_class_install_property(gobject_class,
- PROP_AUTO_RESIZE_WINDOW,
- g_param_spec_boolean("auto-resize-window",
- _("Auto Resize Window"),
- _("Automatically resize the toplevel window when a page requests it"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-file-access-from-file-uris:
- *
- * Boolean property to control file access for file:// URIs. If this
- * option is enabled every file:// will have its own security unique domain.
- *
- * Since: 1.1.22
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_FILE_ACCESS_FROM_FILE_URIS,
- g_param_spec_boolean("enable-file-access-from-file-uris",
- "Enable file access from file URIs",
- "Controls file access for file:// URIs.",
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-java-applet:
- *
- * Enable or disable support for the Java &lt;applet&gt; tag. Keep in
- * mind that Java content can be still shown in the page through
- * &lt;object&gt; or &lt;embed&gt;, which are the preferred tags for this task.
- *
- * Since: 1.1.22
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_JAVA_APPLET,
- g_param_spec_boolean("enable-java-applet",
- _("Enable Java Applet"),
- _("Whether Java Applet support through <applet> should be enabled"),
- TRUE,
- flags));
-
- /**
- * WebKitWebSettings:enable-hyperlink-auditing:
- *
- * Enable or disable support for &lt;a ping&gt;.
- *
- * Since: 1.2.5
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_HYPERLINK_AUDITING,
- g_param_spec_boolean("enable-hyperlink-auditing",
- _("Enable Hyperlink Auditing"),
- _("Whether <a ping> should be able to send pings"),
- FALSE,
- flags));
-
- /* Undocumented for now */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_FULLSCREEN,
- g_param_spec_boolean("enable-fullscreen",
- _("Enable Fullscreen"),
- _("Whether the Mozilla style API should be enabled."),
- FALSE,
- flags));
- /**
- * WebKitWebSettings:enable-webgl:
- *
- * Enable or disable support for WebGL on pages. WebGL is an experimental
- * proposal for allowing web pages to use OpenGL ES-like calls directly. The
- * standard is currently a work-in-progress by the Khronos Group.
- *
- * Since: 1.3.14
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_WEBGL,
- g_param_spec_boolean("enable-webgl",
- _("Enable WebGL"),
- _("Whether WebGL content should be rendered"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-accelerated-compositing:
- *
- * Enable or disable support for accelerated compositing on pages. Accelerated
- * compositing uses the GPU to render animations on pages smoothly and also allows
- * proper rendering of 3D CSS transforms.
- *
- * Since: 1.7.5
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_ACCELERATED_COMPOSITING,
- g_param_spec_boolean("enable-accelerated-compositing",
- _("Enable accelerated compositing"),
- _("Whether accelerated compositing should be enabled"),
- FALSE,
- flags));
- /**
- * WebKitWebSettings:enable-webaudio:
- *
- * Enable or disable support for WebAudio on pages. WebAudio is an
- * experimental proposal for allowing web pages to generate Audio
- * WAVE data from JavaScript. The standard is currently a
- * work-in-progress by the W3C Audio Working Group.
- *
- * See also https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html
- *
- * Since: TODO
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_WEB_AUDIO,
- g_param_spec_boolean("enable-webaudio",
- _("Enable WebAudio"),
- _("Whether WebAudio content should be handled"),
- FALSE,
- flags));
-
-
- /**
- * WebKitWebSettings:enable-dns-prefetching:
- *
- * Whether webkit prefetches domain names. This is a separate knob from private browsing.
- * Whether private browsing should set this or not is up for debate, for now it doesn't.
- *
- * Since: 1.3.13.
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_DNS_PREFETCHING,
- g_param_spec_boolean("enable-dns-prefetching",
- _("WebKit prefetches domain names"),
- _("Whether WebKit prefetches domain names"),
- TRUE,
- flags));
- /**
- * WebKitWebSettings:enable-media-stream:
- *
- * Enable or disable support for Media Stream on pages. Media Stream is
- * an experimental proposal for allowing web pages to access local video and
- * audio input devices. The standard is currently a work-in-progress as part
- * of the Web Applications 1.0 specification from WHATWG.
- *
- * See also http://www.w3.org/TR/mediacapture-streams/
- *
- * Since: 1.10.0
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_MEDIA_STREAM,
- g_param_spec_boolean("enable-media-stream",
- _("Enable Media Stream"),
- _("Whether Media Stream should be enabled"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-smooth-scrolling:
- *
- * Enable or disable support for smooth scrolling. The current implementation relies upon
- * CPU work to produce a smooth scrolling experience.
- *
- * Since: 1.9.0
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_SMOOTH_SCROLLING,
- g_param_spec_boolean("enable-smooth-scrolling",
- _("Enable smooth scrolling"),
- _("Whether to enable smooth scrolling"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:media-playback-requires-user-gesture:
- *
- * Whether a user gesture (such as clicking the play button) would
- * be required to start media playback or load media. This is off
- * by default, so media playback could start automatically. Setting
- * it on requires a gesture by the user to start playback, or to load
- * the media.
- *
- * Since: 1.10.0
- */
- g_object_class_install_property(gobject_class,
- PROP_MEDIA_PLAYBACK_REQUIRES_USER_GESTURE,
- g_param_spec_boolean("media-playback-requires-user-gesture",
- _("Media playback requires user gesture"),
- _("Whether media playback requires user gesture"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:media-playback-allows-inline:
- *
- * Whether media playback is full-screen only or inline playback is allowed.
- * This is true by default, so media playback can be inline. Setting it to
- * false allows specifying that media playback should be always fullscreen.
- *
- * Since: 1.10.0
- */
- g_object_class_install_property(gobject_class,
- PROP_MEDIA_PLAYBACK_ALLOWS_INLINE,
- g_param_spec_boolean("media-playback-allows-inline",
- _("Media playback allows inline"),
- _("Whether media playback allows inline"),
- TRUE,
- flags));
-
- /**
- * WebKitWebSettings:enable-css-shaders:
- *
- * Enable or disable support for css shaders (css custom filters).
- * Accelerated compositing needs to be enabled at compile time, but needs
- * not be enabled at runtime.
- *
- * See also https://dvcs.w3.org/hg/FXTF/raw-file/tip/custom/index.html
- *
- * Since: 2.0
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_CSS_SHADERS,
- g_param_spec_boolean("enable-css-shaders",
- _("Enable CSS shaders"),
- _("Whether to enable css shaders"),
- FALSE,
- flags));
-
- /**
- * WebKitWebSettings:enable-display-of-insecure-content:
- *
- * Whether pages loaded via HTTPS should load subresources such as
- * images and frames from non-HTTPS URLs.
- *
- * Since: 2.0
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_DISPLAY_OF_INSECURE_CONTENT,
- g_param_spec_boolean("enable-display-of-insecure-content",
- _("Enable display of insecure content"),
- _("Whether non-HTTPS resources can display on HTTPS pages."),
- TRUE,
- flags));
-
- /**
- * WebKitWebSettings:enable-running-of-insecure-content:
- *
- * Whether pages loaded via HTTPS should run subresources such as
- * CSS, scripts, and plugins from non-HTTPS URLs.
- *
- * Since: 2.0
- */
- g_object_class_install_property(gobject_class,
- PROP_ENABLE_RUNNING_OF_INSECURE_CONTENT,
- g_param_spec_boolean("enable-running-of-insecure-content",
- _("Enable running of insecure content"),
- _("Whether non-HTTPS resources can run on HTTPS pages."),
- TRUE,
- flags));
-}
-
-static void webkit_web_settings_init(WebKitWebSettings* web_settings)
-{
- web_settings->priv = new WebKitWebSettingsPrivate;
-}
-
-static void webkit_web_settings_finalize(GObject* object)
-{
- delete WEBKIT_WEB_SETTINGS(object)->priv;
- G_OBJECT_CLASS(webkit_web_settings_parent_class)->finalize(object);
-}
-
-static void webkit_web_settings_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec)
-{
- WebKitWebSettings* web_settings = WEBKIT_WEB_SETTINGS(object);
- WebKitWebSettingsPrivate* priv = web_settings->priv;
-
- switch(prop_id) {
- case PROP_DEFAULT_ENCODING:
- priv->defaultEncoding = g_value_get_string(value);
- break;
- case PROP_CURSIVE_FONT_FAMILY:
- priv->cursiveFontFamily = g_value_get_string(value);
- break;
- case PROP_DEFAULT_FONT_FAMILY:
- priv->defaultFontFamily = g_value_get_string(value);
- break;
- case PROP_FANTASY_FONT_FAMILY:
- priv->fantasyFontFamily = g_value_get_string(value);
- break;
- case PROP_MONOSPACE_FONT_FAMILY:
- priv->monospaceFontFamily = g_value_get_string(value);
- break;
- case PROP_SANS_SERIF_FONT_FAMILY:
- priv->sansSerifFontFamily = g_value_get_string(value);
- break;
- case PROP_SERIF_FONT_FAMILY:
- priv->serifFontFamily = g_value_get_string(value);
- break;
- case PROP_DEFAULT_FONT_SIZE:
- priv->defaultFontSize = g_value_get_int(value);
- break;
- case PROP_DEFAULT_MONOSPACE_FONT_SIZE:
- priv->defaultMonospaceFontSize = g_value_get_int(value);
- break;
- case PROP_MINIMUM_FONT_SIZE:
- priv->minimumFontSize = g_value_get_int(value);
- break;
- case PROP_MINIMUM_LOGICAL_FONT_SIZE:
- priv->minimumLogicalFontSize = g_value_get_int(value);
- break;
- case PROP_ENFORCE_96_DPI:
- priv->enforce96DPI = g_value_get_boolean(value);
- break;
- case PROP_AUTO_LOAD_IMAGES:
- priv->autoLoadImages = g_value_get_boolean(value);
- break;
- case PROP_AUTO_SHRINK_IMAGES:
- priv->autoShrinkImages = g_value_get_boolean(value);
- break;
- case PROP_RESPECT_IMAGE_ORIENTATION:
- priv->respectImageOrientation = g_value_get_boolean(value);
- break;
- case PROP_PRINT_BACKGROUNDS:
- priv->printBackgrounds = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_SCRIPTS:
- priv->enableScripts = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_PLUGINS:
- priv->enablePlugins = g_value_get_boolean(value);
- break;
- case PROP_RESIZABLE_TEXT_AREAS:
- priv->resizableTextAreas = g_value_get_boolean(value);
- break;
- case PROP_USER_STYLESHEET_URI:
- priv->userStylesheetURI = g_value_get_string(value);
- break;
- case PROP_ZOOM_STEP:
- priv->zoomStep = g_value_get_float(value);
- break;
- case PROP_ENABLE_DEVELOPER_EXTRAS:
- priv->enableDeveloperExtras = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_PRIVATE_BROWSING:
- priv->enablePrivateBrowsing = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_CARET_BROWSING:
- priv->enableCaretBrowsing = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_HTML5_DATABASE:
- priv->enableHTML5Database = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_HTML5_LOCAL_STORAGE:
- priv->enableHTML5LocalStorage = g_value_get_boolean(value);
- break;
- case PROP_HTML5_LOCAL_STORAGE_DATABASE_PATH:
- priv->html5LocalStorageDatabasePath = g_value_get_string(value);
- break;
- case PROP_ENABLE_SPELL_CHECKING:
- priv->enableSpellChecking = g_value_get_boolean(value);
- break;
- case PROP_SPELL_CHECKING_LANGUAGES:
- priv->spellCheckingLanguages = g_value_get_string(value);
- break;
- case PROP_ENABLE_XSS_AUDITOR:
- priv->enableXSSAuditor = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_SPATIAL_NAVIGATION:
- priv->enableSpatialNavigation = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_FRAME_FLATTENING:
- priv->enableFrameFlattening = g_value_get_boolean(value);
- break;
- case PROP_USER_AGENT:
- if (!g_value_get_string(value) || !strlen(g_value_get_string(value)))
- priv->userAgent = standardUserAgent().utf8();
- else
- priv->userAgent = g_value_get_string(value);
- break;
- case PROP_JAVASCRIPT_CAN_OPEN_WINDOWS_AUTOMATICALLY:
- priv->javascriptCanOpenWindowsAutomatically = g_value_get_boolean(value);
- break;
- case PROP_JAVASCRIPT_CAN_ACCESS_CLIPBOARD:
- priv->javascriptCanAccessClipboard = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_OFFLINE_WEB_APPLICATION_CACHE:
- priv->enableOfflineWebApplicationCache = g_value_get_boolean(value);
- break;
- case PROP_EDITING_BEHAVIOR:
- priv->editingBehavior = static_cast<WebKitEditingBehavior>(g_value_get_enum(value));
- break;
- case PROP_ENABLE_UNIVERSAL_ACCESS_FROM_FILE_URIS:
- priv->enableUniversalAccessFromFileURIs = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_FILE_ACCESS_FROM_FILE_URIS:
- priv->enableFileAccessFromFileURIs = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_DOM_PASTE:
- priv->enableDOMPaste = g_value_get_boolean(value);
- break;
- case PROP_TAB_KEY_CYCLES_THROUGH_ELEMENTS:
- priv->tabKeyCyclesThroughElements = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_DEFAULT_CONTEXT_MENU:
- priv->enableDefaultContextMenu = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_SITE_SPECIFIC_QUIRKS:
- priv->enableSiteSpecificQuirks = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_PAGE_CACHE:
- priv->enablePageCache = g_value_get_boolean(value);
- break;
- case PROP_AUTO_RESIZE_WINDOW:
- priv->autoResizeWindow = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_JAVA_APPLET:
- priv->enableJavaApplet = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_HYPERLINK_AUDITING:
- priv->enableHyperlinkAuditing = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_FULLSCREEN:
- priv->enableFullscreen = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_DNS_PREFETCHING:
- priv->enableDNSPrefetching = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_WEBGL:
- priv->enableWebgl = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_MEDIA_STREAM:
- priv->enableMediaStream = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_WEB_AUDIO:
- priv->enableWebAudio = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_ACCELERATED_COMPOSITING:
- priv->enableAcceleratedCompositing = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_SMOOTH_SCROLLING:
- priv->enableSmoothScrolling = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_CSS_SHADERS:
- priv->enableCSSShaders = g_value_get_boolean(value);
- break;
- case PROP_MEDIA_PLAYBACK_REQUIRES_USER_GESTURE:
- priv->mediaPlaybackRequiresUserGesture = g_value_get_boolean(value);
- break;
- case PROP_MEDIA_PLAYBACK_ALLOWS_INLINE:
- priv->mediaPlaybackAllowsInline = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_DISPLAY_OF_INSECURE_CONTENT:
- priv->enableDisplayOfInsecureContent = g_value_get_boolean(value);
- break;
- case PROP_ENABLE_RUNNING_OF_INSECURE_CONTENT:
- priv->enableRunningOfInsecureContent = g_value_get_boolean(value);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-static void webkit_web_settings_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec)
-{
- WebKitWebSettings* web_settings = WEBKIT_WEB_SETTINGS(object);
- WebKitWebSettingsPrivate* priv = web_settings->priv;
-
- switch (prop_id) {
- case PROP_DEFAULT_ENCODING:
- g_value_set_string(value, priv->defaultEncoding.data());
- break;
- case PROP_CURSIVE_FONT_FAMILY:
- g_value_set_string(value, priv->cursiveFontFamily.data());
- break;
- case PROP_DEFAULT_FONT_FAMILY:
- g_value_set_string(value, priv->defaultFontFamily.data());
- break;
- case PROP_FANTASY_FONT_FAMILY:
- g_value_set_string(value, priv->fantasyFontFamily.data());
- break;
- case PROP_MONOSPACE_FONT_FAMILY:
- g_value_set_string(value, priv->monospaceFontFamily.data());
- break;
- case PROP_SANS_SERIF_FONT_FAMILY:
- g_value_set_string(value, priv->sansSerifFontFamily.data());
- break;
- case PROP_SERIF_FONT_FAMILY:
- g_value_set_string(value, priv->serifFontFamily.data());
- break;
- case PROP_DEFAULT_FONT_SIZE:
- g_value_set_int(value, priv->defaultFontSize);
- break;
- case PROP_DEFAULT_MONOSPACE_FONT_SIZE:
- g_value_set_int(value, priv->defaultMonospaceFontSize);
- break;
- case PROP_MINIMUM_FONT_SIZE:
- g_value_set_int(value, priv->minimumFontSize);
- break;
- case PROP_MINIMUM_LOGICAL_FONT_SIZE:
- g_value_set_int(value, priv->minimumLogicalFontSize);
- break;
- case PROP_ENFORCE_96_DPI:
- g_value_set_boolean(value, priv->enforce96DPI);
- break;
- case PROP_AUTO_LOAD_IMAGES:
- g_value_set_boolean(value, priv->autoLoadImages);
- break;
- case PROP_AUTO_SHRINK_IMAGES:
- g_value_set_boolean(value, priv->autoShrinkImages);
- break;
- case PROP_RESPECT_IMAGE_ORIENTATION:
- g_value_set_boolean(value, priv->respectImageOrientation);
- break;
- case PROP_PRINT_BACKGROUNDS:
- g_value_set_boolean(value, priv->printBackgrounds);
- break;
- case PROP_ENABLE_SCRIPTS:
- g_value_set_boolean(value, priv->enableScripts);
- break;
- case PROP_ENABLE_PLUGINS:
- g_value_set_boolean(value, priv->enablePlugins);
- break;
- case PROP_RESIZABLE_TEXT_AREAS:
- g_value_set_boolean(value, priv->resizableTextAreas);
- break;
- case PROP_USER_STYLESHEET_URI:
- g_value_set_string(value, priv->userStylesheetURI.data());
- break;
- case PROP_ZOOM_STEP:
- g_value_set_float(value, priv->zoomStep);
- break;
- case PROP_ENABLE_DEVELOPER_EXTRAS:
- g_value_set_boolean(value, priv->enableDeveloperExtras);
- break;
- case PROP_ENABLE_PRIVATE_BROWSING:
- g_value_set_boolean(value, priv->enablePrivateBrowsing);
- break;
- case PROP_ENABLE_CARET_BROWSING:
- g_value_set_boolean(value, priv->enableCaretBrowsing);
- break;
- case PROP_ENABLE_HTML5_DATABASE:
- g_value_set_boolean(value, priv->enableHTML5Database);
- break;
- case PROP_ENABLE_HTML5_LOCAL_STORAGE:
- g_value_set_boolean(value, priv->enableHTML5LocalStorage);
- break;
- case PROP_HTML5_LOCAL_STORAGE_DATABASE_PATH:
- g_value_set_string(value, priv->html5LocalStorageDatabasePath.data());
- break;
- case PROP_ENABLE_SPELL_CHECKING:
- g_value_set_boolean(value, priv->enableSpellChecking);
- break;
- case PROP_SPELL_CHECKING_LANGUAGES:
- g_value_set_string(value, priv->spellCheckingLanguages.data());
- break;
- case PROP_ENABLE_XSS_AUDITOR:
- g_value_set_boolean(value, priv->enableXSSAuditor);
- break;
- case PROP_ENABLE_SPATIAL_NAVIGATION:
- g_value_set_boolean(value, priv->enableSpatialNavigation);
- break;
- case PROP_ENABLE_FRAME_FLATTENING:
- g_value_set_boolean(value, priv->enableFrameFlattening);
- break;
- case PROP_USER_AGENT:
- g_value_set_string(value, priv->userAgent.data());
- break;
- case PROP_JAVASCRIPT_CAN_OPEN_WINDOWS_AUTOMATICALLY:
- g_value_set_boolean(value, priv->javascriptCanOpenWindowsAutomatically);
- break;
- case PROP_JAVASCRIPT_CAN_ACCESS_CLIPBOARD:
- g_value_set_boolean(value, priv->javascriptCanAccessClipboard);
- break;
- case PROP_ENABLE_OFFLINE_WEB_APPLICATION_CACHE:
- g_value_set_boolean(value, priv->enableOfflineWebApplicationCache);
- break;
- case PROP_EDITING_BEHAVIOR:
- g_value_set_enum(value, priv->editingBehavior);
- break;
- case PROP_ENABLE_UNIVERSAL_ACCESS_FROM_FILE_URIS:
- g_value_set_boolean(value, priv->enableUniversalAccessFromFileURIs);
- break;
- case PROP_ENABLE_FILE_ACCESS_FROM_FILE_URIS:
- g_value_set_boolean(value, priv->enableFileAccessFromFileURIs);
- break;
- case PROP_ENABLE_DOM_PASTE:
- g_value_set_boolean(value, priv->enableDOMPaste);
- break;
- case PROP_TAB_KEY_CYCLES_THROUGH_ELEMENTS:
- g_value_set_boolean(value, priv->tabKeyCyclesThroughElements);
- break;
- case PROP_ENABLE_DEFAULT_CONTEXT_MENU:
- g_value_set_boolean(value, priv->enableDefaultContextMenu);
- break;
- case PROP_ENABLE_SITE_SPECIFIC_QUIRKS:
- g_value_set_boolean(value, priv->enableSiteSpecificQuirks);
- break;
- case PROP_ENABLE_PAGE_CACHE:
- g_value_set_boolean(value, priv->enablePageCache);
- break;
- case PROP_AUTO_RESIZE_WINDOW:
- g_value_set_boolean(value, priv->autoResizeWindow);
- break;
- case PROP_ENABLE_JAVA_APPLET:
- g_value_set_boolean(value, priv->enableJavaApplet);
- break;
- case PROP_ENABLE_HYPERLINK_AUDITING:
- g_value_set_boolean(value, priv->enableHyperlinkAuditing);
- break;
- case PROP_ENABLE_FULLSCREEN:
- g_value_set_boolean(value, priv->enableFullscreen);
- break;
- case PROP_ENABLE_DNS_PREFETCHING:
- g_value_set_boolean(value, priv->enableDNSPrefetching);
- break;
- case PROP_ENABLE_WEBGL:
- g_value_set_boolean(value, priv->enableWebgl);
- break;
- case PROP_ENABLE_MEDIA_STREAM:
- g_value_set_boolean(value, priv->enableMediaStream);
- break;
- case PROP_ENABLE_WEB_AUDIO:
- g_value_set_boolean(value, priv->enableWebAudio);
- break;
- case PROP_ENABLE_ACCELERATED_COMPOSITING:
- g_value_set_boolean(value, priv->enableAcceleratedCompositing);
- break;
- case PROP_ENABLE_SMOOTH_SCROLLING:
- g_value_set_boolean(value, priv->enableSmoothScrolling);
- break;
- case PROP_ENABLE_CSS_SHADERS:
- g_value_set_boolean(value, priv->enableCSSShaders);
- break;
- case PROP_MEDIA_PLAYBACK_REQUIRES_USER_GESTURE:
- g_value_set_boolean(value, priv->mediaPlaybackRequiresUserGesture);
- break;
- case PROP_MEDIA_PLAYBACK_ALLOWS_INLINE:
- g_value_set_boolean(value, priv->mediaPlaybackAllowsInline);
- break;
- case PROP_ENABLE_DISPLAY_OF_INSECURE_CONTENT:
- g_value_set_boolean(value, priv->enableDisplayOfInsecureContent);
- break;
- case PROP_ENABLE_RUNNING_OF_INSECURE_CONTENT:
- g_value_set_boolean(value, priv->enableRunningOfInsecureContent);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-/**
- * webkit_web_settings_new:
- *
- * Creates a new #WebKitWebSettings instance with default values. It must
- * be manually attached to a WebView.
- *
- * Returns: a new #WebKitWebSettings instance
- **/
-WebKitWebSettings* webkit_web_settings_new()
-{
- return WEBKIT_WEB_SETTINGS(g_object_new(WEBKIT_TYPE_WEB_SETTINGS, NULL));
-}
-
-/**
- * webkit_web_settings_copy:
- * @web_settings: a #WebKitWebSettings to copy.
- *
- * Copies an existing #WebKitWebSettings instance.
- *
- * Returns: (transfer full): a new #WebKitWebSettings instance
- **/
-WebKitWebSettings* webkit_web_settings_copy(WebKitWebSettings* original)
-{
- unsigned numberOfProperties = 0;
- GOwnPtr<GParamSpec*> properties(g_object_class_list_properties(
- G_OBJECT_CLASS(WEBKIT_WEB_SETTINGS_GET_CLASS(original)), &numberOfProperties));
- GOwnPtr<GParameter> parameters(g_new0(GParameter, numberOfProperties));
-
- for (size_t i = 0; i < numberOfProperties; i++) {
- GParamSpec* property = properties.get()[i];
- GParameter* parameter = parameters.get() + i;
-
- if (!(property->flags & (G_PARAM_CONSTRUCT | G_PARAM_READWRITE)))
- continue;
-
- parameter->name = property->name;
- g_value_init(&parameter->value, property->value_type);
- g_object_get_property(G_OBJECT(original), property->name, &parameter->value);
- }
-
- return WEBKIT_WEB_SETTINGS(g_object_newv(WEBKIT_TYPE_WEB_SETTINGS, numberOfProperties, parameters.get()));
-
-}
-
-/**
- * webkit_web_settings_add_extra_plugin_directory:
- * @web_view: a #WebKitWebView
- * @directory: the directory to add
- *
- * Adds the @directory to paths where @web_view will search for plugins.
- *
- * Since: 1.0.3
- */
-void webkit_web_settings_add_extra_plugin_directory(WebKitWebView* webView, const gchar* directory)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- PluginDatabase::installedPlugins()->addExtraPluginDirectory(filenameToString(directory));
-}
-
-/**
- * webkit_web_settings_get_user_agent:
- * @web_settings: a #WebKitWebSettings
- *
- * Returns: the User-Agent string currently used by the web view(s) associated
- * with the @web_settings.
- *
- * Since: 1.1.11
- */
-const gchar* webkit_web_settings_get_user_agent(WebKitWebSettings* webSettings)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_SETTINGS(webSettings), 0);
- return webSettings->priv->userAgent.data();
-}
-
-static void initializeDomainsList(HashSet<String>& googleDomains)
-{
- // Google search domains.
- googleDomains.add("biz");
- googleDomains.add("com");
- googleDomains.add("net");
- googleDomains.add("org");
- googleDomains.add("ae");
- googleDomains.add("ag");
- googleDomains.add("am");
- googleDomains.add("at");
- googleDomains.add("az");
- googleDomains.add("be");
- googleDomains.add("bi");
- googleDomains.add("ca");
- googleDomains.add("cc");
- googleDomains.add("cd");
- googleDomains.add("cg");
- googleDomains.add("ch");
- googleDomains.add("cl");
- googleDomains.add("com.br");
- googleDomains.add("com.do");
- googleDomains.add("co.uk");
- googleDomains.add("co.kr");
- googleDomains.add("co.jp");
- googleDomains.add("de");
- googleDomains.add("dj");
- googleDomains.add("dk");
- googleDomains.add("ee");
- googleDomains.add("es");
- googleDomains.add("fi");
- googleDomains.add("fm");
- googleDomains.add("fr");
- googleDomains.add("gg");
- googleDomains.add("gl");
- googleDomains.add("gm");
- googleDomains.add("gs");
- googleDomains.add("hn");
- googleDomains.add("hu");
- googleDomains.add("ie");
- googleDomains.add("it");
- googleDomains.add("je");
- googleDomains.add("kz");
- googleDomains.add("li");
- googleDomains.add("lt");
- googleDomains.add("lu");
- googleDomains.add("lv");
- googleDomains.add("ma");
- googleDomains.add("ms");
- googleDomains.add("mu");
- googleDomains.add("mw");
- googleDomains.add("nl");
- googleDomains.add("no");
- googleDomains.add("nu");
- googleDomains.add("pl");
- googleDomains.add("pn");
- googleDomains.add("pt");
- googleDomains.add("ru");
- googleDomains.add("rw");
- googleDomains.add("sh");
- googleDomains.add("sk");
- googleDomains.add("sm");
- googleDomains.add("st");
- googleDomains.add("td");
- googleDomains.add("tk");
- googleDomains.add("tp");
- googleDomains.add("tv");
- googleDomains.add("us");
- googleDomains.add("uz");
- googleDomains.add("ws");
-}
-
-static void initializeOtherGoogleDomains(Vector<String>& otherGoogleDomains)
-{
- otherGoogleDomains.append("gmail.com");
- otherGoogleDomains.append("youtube.com");
- otherGoogleDomains.append("gstatic.com");
- otherGoogleDomains.append("ytimg.com");
-}
-
-static bool isGoogleDomain(String host)
-{
- DEFINE_STATIC_LOCAL(HashSet<String>, googleDomains, ());
- DEFINE_STATIC_LOCAL(Vector<String>, otherGoogleDomains, ());
-
- if (googleDomains.isEmpty())
- initializeDomainsList(googleDomains);
-
- if (otherGoogleDomains.isEmpty())
- initializeOtherGoogleDomains(otherGoogleDomains);
-
- // First check if this is one of the various google.com international domains.
- int position = host.find(".google.");
- if (position > 0 && googleDomains.contains(host.substring(position + sizeof(".google.") - 1)))
- return true;
-
- // Then we check the possibility of it being one of the other, .com-only google domains.
- for (unsigned int i = 0; i < otherGoogleDomains.size(); i++) {
- if (host.endsWith(otherGoogleDomains.at(i)))
- return true;
- }
-
- return false;
-}
-
-static String userAgentForURL(const KURL& url)
-{
- // For Google domains, drop the browser's custom User Agent string, and use the
- // standard Chrome one, so they don't give us a broken experience.
- if (isGoogleDomain(url.host()))
- return standardUserAgent();
-
- return String();
-}
-
-/*
- * Private usage only.
- * webkitWebSettingsUserAgentForURI:
- * @web_settings: the #WebKitWebSettings object to query
- * @uri: the URI we want to know the User-Agent for
- *
- * Some web sites have been using User-Agent parsing heavily to decide
- * the kind of content that is sent to the browser. When
- * WebKitWebSettings:enable-site-specific-quirks is enabled WebKitGTK+
- * will use its knowledge of sites doing bad things and lie to them by
- * sending either the default User-Agent, i.e. not using the one
- * specified by the browser in WebKitWebSettings:user-agent, or the
- * Safari one (including lying about the underlying operating system).
- *
- * This function allows the browser to figure out what User-Agent is
- * going to be sent to a particular URI.
- *
- * Please note that if WebKitWebSettings:use-site-specific-quirks is
- * turned off calling this function is the same as calling
- * webkit_web_settings_get_user_agent(), except you have to free the
- * result.
- *
- * Returns: (transfer full): a newly allocated string containing the
- * User-Agent that will be sent for the given URI.
- */
-char* webkitWebSettingsUserAgentForURI(WebKitWebSettings* webSettings, const char* uri)
-{
- if (webSettings->priv->enableSiteSpecificQuirks) {
- String userAgentString = userAgentForURL(WebCore::KURL(WebCore::KURL(), String::fromUTF8(uri)));
- if (!userAgentString.isEmpty())
- return g_strdup(userAgentString.utf8().data());
- }
-
- return g_strdup(webkit_web_settings_get_user_agent(webSettings));
-}
-
-namespace WebKit {
-
-WebCore::EditingBehaviorType core(WebKitEditingBehavior type)
-{
- return static_cast<WebCore::EditingBehaviorType>(type);
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebsettings.h b/Source/WebKit/gtk/webkit/webkitwebsettings.h
deleted file mode 100644
index 546212b6c..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebsettings.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (C) 2008 Christian Dywan <christian@imendio.com>
- * Copyright (C) 2009 Jan Michael Alonzo <jmalonzo@gmail.com
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebsettings_h
-#define webkitwebsettings_h
-
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_SETTINGS (webkit_web_settings_get_type())
-#define WEBKIT_WEB_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_SETTINGS, WebKitWebSettings))
-#define WEBKIT_WEB_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_SETTINGS, WebKitWebSettingsClass))
-#define WEBKIT_IS_WEB_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_SETTINGS))
-#define WEBKIT_IS_WEB_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_SETTINGS))
-#define WEBKIT_WEB_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_SETTINGS, WebKitWebSettingsClass))
-
-/**
- * WebKitEditingBehavior:
- * @WEBKIT_EDITING_BEHAVIOR_MAC: Editing behavior mimicking OS X user interfaces.
- * @WEBKIT_EDITING_BEHAVIOR_WINDOWS: Editing behavior mimicking Windows user interfaces.
- * @WEBKIT_EDITING_BEHAVIOR_UNIX: Editing behavior mimicking free desktop user interfaces.
- *
- * Enum values used for determining the editing behavior of editable elements.
- *
- **/
-typedef enum {
- WEBKIT_EDITING_BEHAVIOR_MAC,
- WEBKIT_EDITING_BEHAVIOR_WINDOWS,
- WEBKIT_EDITING_BEHAVIOR_UNIX
-} WebKitEditingBehavior;
-
-typedef struct _WebKitWebSettingsPrivate WebKitWebSettingsPrivate;
-
-struct _WebKitWebSettings {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebSettingsPrivate *priv;
-};
-
-struct _WebKitWebSettingsClass {
- GObjectClass parent_class;
-
- /* Padding for future expansion */
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
- void (*_webkit_reserved4) (void);
-};
-
-WEBKIT_API GType
-webkit_web_settings_get_type (void);
-
-WEBKIT_API WebKitWebSettings *
-webkit_web_settings_new (void);
-
-WEBKIT_API WebKitWebSettings *
-webkit_web_settings_copy (WebKitWebSettings *web_settings);
-
-WEBKIT_API const gchar *
-webkit_web_settings_get_user_agent (WebKitWebSettings *web_settings);
-
-G_END_DECLS
-
-#endif /* webkitwebsettings_h */
diff --git a/Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h b/Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h
deleted file mode 100644
index 70b88657c..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebsettingsprivate_h
-#define webkitwebsettingsprivate_h
-
-#include "webkitwebsettings.h"
-#include <wtf/text/CString.h>
-
-extern "C" {
-
-struct _WebKitWebSettingsPrivate {
- CString defaultEncoding;
- CString cursiveFontFamily;
- CString defaultFontFamily;
- CString fantasyFontFamily;
- CString monospaceFontFamily;
- CString sansSerifFontFamily;
- CString serifFontFamily;
- guint defaultFontSize;
- guint defaultMonospaceFontSize;
- guint minimumFontSize;
- guint minimumLogicalFontSize;
- gboolean enforce96DPI;
- gboolean autoLoadImages;
- gboolean autoShrinkImages;
- gboolean respectImageOrientation;
- gboolean printBackgrounds;
- gboolean enableScripts;
- gboolean enablePlugins;
- gboolean resizableTextAreas;
- CString userStylesheetURI;
- gfloat zoomStep;
- gboolean enableDeveloperExtras;
- gboolean enablePrivateBrowsing;
- gboolean enableSpellChecking;
- CString spellCheckingLanguages;
- gboolean enableCaretBrowsing;
- gboolean enableHTML5Database;
- gboolean enableHTML5LocalStorage;
- CString html5LocalStorageDatabasePath;
- gboolean enableXSSAuditor;
- gboolean enableSpatialNavigation;
- gboolean enableFrameFlattening;
- CString userAgent;
- gboolean javascriptCanOpenWindowsAutomatically;
- gboolean javascriptCanAccessClipboard;
- gboolean enableOfflineWebApplicationCache;
- WebKitEditingBehavior editingBehavior;
- gboolean enableUniversalAccessFromFileURIs;
- gboolean enableFileAccessFromFileURIs;
- gboolean enableDOMPaste;
- gboolean tabKeyCyclesThroughElements;
- gboolean enableDefaultContextMenu;
- gboolean enableSiteSpecificQuirks;
- gboolean enablePageCache;
- gboolean autoResizeWindow;
- gboolean enableJavaApplet;
- gboolean enableHyperlinkAuditing;
- gboolean enableFullscreen;
- gboolean enableDNSPrefetching;
- gboolean enableWebgl;
- gboolean enableMediaStream;
- gboolean enableWebAudio;
- gboolean enableAcceleratedCompositing;
- gboolean enableSmoothScrolling;
- gboolean enableCSSShaders;
- gboolean mediaPlaybackRequiresUserGesture;
- gboolean mediaPlaybackAllowsInline;
- gboolean enableDisplayOfInsecureContent;
- gboolean enableRunningOfInsecureContent;
-};
-
-WEBKIT_API void webkit_web_settings_add_extra_plugin_directory(WebKitWebView*, const gchar* directory);
-
-WEBKIT_API char* webkitWebSettingsUserAgentForURI(WebKitWebSettings*, const gchar* uri);
-
-GSList* webkitWebViewGetEnchantDicts(WebKitWebView*);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebview.cpp b/Source/WebKit/gtk/webkit/webkitwebview.cpp
deleted file mode 100644
index 76bbc1e3c..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebview.cpp
+++ /dev/null
@@ -1,5547 +0,0 @@
-/*
- * Copyright (C) 2007, 2008 Holger Hans Peter Freyther
- * Copyright (C) 2007, 2008, 2009 Christian Dywan <christian@imendio.com>
- * Copyright (C) 2007 Xan Lopez <xan@gnome.org>
- * Copyright (C) 2007, 2008 Alp Toker <alp@atoker.com>
- * Copyright (C) 2008 Jan Alonzo <jmalonzo@unpluggable.com>
- * Copyright (C) 2008 Gustavo Noronha Silva <gns@gnome.org>
- * Copyright (C) 2008 Nuanti Ltd.
- * Copyright (C) 2008, 2009, 2010 Collabora Ltd.
- * Copyright (C) 2009, 2010, 2012 Igalia S.L.
- * Copyright (C) 2009 Movial Creative Technologies Inc.
- * Copyright (C) 2009 Bobby Powers
- * Copyright (C) 2010 Joone Hur <joone@kldp.org>
- * Copyright (C) 2012 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include "config.h"
-#include "webkitwebview.h"
-
-#include "AXObjectCache.h"
-#include "ArchiveResource.h"
-#include "BackForwardListImpl.h"
-#include "CairoUtilities.h"
-#include "Chrome.h"
-#include "ChromeClientGtk.h"
-#include "ClipboardUtilitiesGtk.h"
-#include "ContextMenu.h"
-#include "ContextMenuClientGtk.h"
-#include "ContextMenuController.h"
-#include "Cursor.h"
-#include "DatabaseManager.h"
-#include "Document.h"
-#include "DocumentLoader.h"
-#include "DragActions.h"
-#include "DragClientGtk.h"
-#include "DragController.h"
-#include "DragData.h"
-#include "DragSession.h"
-#include "DumpRenderTreeSupportGtk.h"
-#include "Editor.h"
-#include "EditorClientGtk.h"
-#include "EventHandler.h"
-#include "FloatQuad.h"
-#include "FocusController.h"
-#include "FrameLoader.h"
-#include "FrameLoaderClient.h"
-#include "FrameLoaderTypes.h"
-#include "FrameView.h"
-#include "GOwnPtrGtk.h"
-#include "GeolocationClientGtk.h"
-#include "GeolocationController.h"
-#include "GraphicsContext.h"
-#include "GtkUtilities.h"
-#include "GtkVersioning.h"
-#include "HTMLNames.h"
-#include "HitTestRequest.h"
-#include "HitTestResult.h"
-#include "InspectorClientGtk.h"
-#include "MemoryCache.h"
-#include "MouseEventWithHitTestResults.h"
-#include "NotImplemented.h"
-#include "PageCache.h"
-#include "Pasteboard.h"
-#include "PasteboardHelper.h"
-#include "PlatformKeyboardEvent.h"
-#include "PlatformWheelEvent.h"
-#include "ProgressTracker.h"
-#include "RenderView.h"
-#include "ResourceHandle.h"
-#include "RuntimeEnabledFeatures.h"
-#include "ScriptController.h"
-#include "ScriptValue.h"
-#include "Settings.h"
-#include "WebKitDOMDocumentPrivate.h"
-#include "webkitdownload.h"
-#include "webkitdownloadprivate.h"
-#include "webkitenumtypes.h"
-#include "webkitfavicondatabase.h"
-#include "webkitgeolocationpolicydecision.h"
-#include "webkitglobalsprivate.h"
-#include "webkithittestresultprivate.h"
-#include "webkiticondatabase.h"
-#include "webkitmarshal.h"
-#include "webkitnetworkrequest.h"
-#include "webkitnetworkresponse.h"
-#include "webkitviewportattributes.h"
-#include "webkitviewportattributesprivate.h"
-#include "webkitwebbackforwardlist.h"
-#include "webkitwebframeprivate.h"
-#include "webkitwebhistoryitem.h"
-#include "webkitwebhistoryitemprivate.h"
-#include "webkitwebinspector.h"
-#include "webkitwebinspectorprivate.h"
-#include "webkitwebpolicydecision.h"
-#include "webkitwebresource.h"
-#include "webkitwebresourceprivate.h"
-#include "webkitwebsettingsprivate.h"
-#include "webkitwebplugindatabaseprivate.h"
-#include "webkitwebwindowfeatures.h"
-#include "webkitwebviewprivate.h"
-#include <gdk/gdkkeysyms.h>
-#include <glib/gi18n-lib.h>
-#include <wtf/gobject/GOwnPtr.h>
-#include <wtf/text/CString.h>
-
-#if ENABLE(DEVICE_ORIENTATION)
-#include "DeviceMotionClientGtk.h"
-#include "DeviceOrientationClientGtk.h"
-#endif
-
-/**
- * SECTION:webkitwebview
- * @short_description: The central class of the WebKitGTK+ API
- * @see_also: #WebKitWebSettings, #WebKitWebFrame
- *
- * #WebKitWebView is the central class of the WebKitGTK+ API. It is a
- * #GtkWidget implementing the scrolling interface which means you can
- * embed in a #GtkScrolledWindow. It is responsible for managing the
- * drawing of the content, forwarding of events. You can load any URI
- * into the #WebKitWebView or any kind of data string. With #WebKitWebSettings
- * you can control various aspects of the rendering and loading of the content.
- * Each #WebKitWebView has exactly one #WebKitWebFrame as main frame. A
- * #WebKitWebFrame can have n children.
- *
- * <programlisting>
- * /<!-- -->* Create the widgets *<!-- -->/
- * GtkWidget *main_window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
- * GtkWidget *scrolled_window = gtk_scrolled_window_new (NULL, NULL);
- * GtkWidget *web_view = webkit_web_view_new ();
- *
- * /<!-- -->* Place the WebKitWebView in the GtkScrolledWindow *<!-- -->/
- * gtk_container_add (GTK_CONTAINER (scrolled_window), web_view);
- * gtk_container_add (GTK_CONTAINER (main_window), scrolled_window);
- *
- * /<!-- -->* Open a webpage *<!-- -->/
- * webkit_web_view_load_uri (WEBKIT_WEB_VIEW (web_view), "http://www.gnome.org");
- *
- * /<!-- -->* Show the result *<!-- -->/
- * gtk_window_set_default_size (GTK_WINDOW (main_window), 800, 600);
- * gtk_widget_show_all (main_window);
- * </programlisting>
- */
-
-using namespace WebKit;
-using namespace WebCore;
-
-enum {
- /* normal signals */
- NAVIGATION_REQUESTED,
- NEW_WINDOW_POLICY_DECISION_REQUESTED,
- NAVIGATION_POLICY_DECISION_REQUESTED,
- MIME_TYPE_POLICY_DECISION_REQUESTED,
- CREATE_WEB_VIEW,
- WEB_VIEW_READY,
- WINDOW_OBJECT_CLEARED,
- LOAD_STARTED,
- LOAD_COMMITTED,
- LOAD_PROGRESS_CHANGED,
- LOAD_ERROR,
- LOAD_FINISHED,
- TITLE_CHANGED,
- HOVERING_OVER_LINK,
- POPULATE_POPUP,
- STATUS_BAR_TEXT_CHANGED,
- ICON_LOADED,
- SELECTION_CHANGED,
- CONSOLE_MESSAGE,
- SCRIPT_ALERT,
- SCRIPT_CONFIRM,
- SCRIPT_PROMPT,
- SELECT_ALL,
- COPY_CLIPBOARD,
- PASTE_CLIPBOARD,
- CUT_CLIPBOARD,
- DOWNLOAD_REQUESTED,
- MOVE_CURSOR,
- PRINT_REQUESTED,
- PLUGIN_WIDGET,
- CLOSE_WEB_VIEW,
- UNDO,
- REDO,
- DATABASE_QUOTA_EXCEEDED,
- RESOURCE_REQUEST_STARTING,
- DOCUMENT_LOAD_FINISHED,
- GEOLOCATION_POLICY_DECISION_REQUESTED,
- GEOLOCATION_POLICY_DECISION_CANCELLED,
- ONLOAD_EVENT,
- FRAME_CREATED,
- SHOULD_BEGIN_EDITING,
- SHOULD_END_EDITING,
- SHOULD_INSERT_NODE,
- SHOULD_INSERT_TEXT,
- SHOULD_DELETE_RANGE,
- SHOULD_SHOW_DELETE_INTERFACE_FOR_ELEMENT,
- SHOULD_CHANGE_SELECTED_RANGE,
- SHOULD_APPLY_STYLE,
- EDITING_BEGAN,
- USER_CHANGED_CONTENTS,
- EDITING_ENDED,
- VIEWPORT_ATTRIBUTES_RECOMPUTE_REQUESTED,
- VIEWPORT_ATTRIBUTES_CHANGED,
- RESOURCE_RESPONSE_RECEIVED,
- RESOURCE_LOAD_FINISHED,
- RESOURCE_CONTENT_LENGTH_RECEIVED,
- RESOURCE_LOAD_FAILED,
- ENTERING_FULLSCREEN,
- LEAVING_FULLSCREEN,
- CONTEXT_MENU,
- RUN_FILE_CHOOSER,
-
- LAST_SIGNAL
-};
-
-enum {
- PROP_0,
-
- PROP_TITLE,
- PROP_URI,
- PROP_COPY_TARGET_LIST,
- PROP_PASTE_TARGET_LIST,
- PROP_EDITABLE,
- PROP_SETTINGS,
- PROP_WEB_INSPECTOR,
- PROP_VIEWPORT_ATTRIBUTES,
- PROP_WINDOW_FEATURES,
- PROP_TRANSPARENT,
- PROP_ZOOM_LEVEL,
- PROP_FULL_CONTENT_ZOOM,
- PROP_LOAD_STATUS,
- PROP_PROGRESS,
- PROP_ENCODING,
- PROP_CUSTOM_ENCODING,
- PROP_ICON_URI,
- PROP_IM_CONTEXT,
-#ifdef GTK_API_VERSION_2
- PROP_VIEW_MODE,
-#else
- PROP_VIEW_MODE,
- PROP_HADJUSTMENT,
- PROP_VADJUSTMENT,
- PROP_HSCROLL_POLICY,
- PROP_VSCROLL_POLICY,
-#endif
-
- // Undocumented. Leave these properties at the end of the list
- // so that we can remove them without breaking ABI compatibility.
- PROP_SELF_SCROLLING
-};
-
-static guint webkit_web_view_signals[LAST_SIGNAL] = { 0, };
-
-#ifdef GTK_API_VERSION_2
-G_DEFINE_TYPE(WebKitWebView, webkit_web_view, GTK_TYPE_CONTAINER)
-#else
-G_DEFINE_TYPE_WITH_CODE(WebKitWebView, webkit_web_view, GTK_TYPE_CONTAINER,
- G_IMPLEMENT_INTERFACE(GTK_TYPE_SCROLLABLE, 0))
-#endif
-
-static void webkit_web_view_settings_notify(WebKitWebSettings* webSettings, GParamSpec* pspec, WebKitWebView* webView);
-static void webkit_web_view_set_window_features(WebKitWebView* webView, WebKitWebWindowFeatures* webWindowFeatures);
-static void webkitWebViewDirectionChanged(WebKitWebView*, GtkTextDirection previousDirection, gpointer);
-
-#if ENABLE(CONTEXT_MENUS)
-static void PopupMenuPositionFunc(GtkMenu* menu, gint *x, gint *y, gboolean *pushIn, gpointer userData)
-{
- WebKitWebView* view = WEBKIT_WEB_VIEW(userData);
- WebKitWebViewPrivate* priv = view->priv;
- GdkScreen* screen = gtk_widget_get_screen(GTK_WIDGET(view));
- GtkRequisition menuSize;
-
-#ifdef GTK_API_VERSION_2
- gtk_widget_size_request(GTK_WIDGET(menu), &menuSize);
-#else
- gtk_widget_get_preferred_size(GTK_WIDGET(menu), &menuSize, NULL);
-#endif
-
- *x = priv->lastPopupXPosition;
- if ((*x + menuSize.width) >= gdk_screen_get_width(screen))
- *x -= menuSize.width;
-
- *y = priv->lastPopupYPosition;
- if ((*y + menuSize.height) >= gdk_screen_get_height(screen))
- *y -= menuSize.height;
-
- *pushIn = FALSE;
-}
-#endif
-
-static Node* getFocusedNode(Frame* frame)
-{
- if (Document* doc = frame->document())
- return doc->focusedElement();
- return 0;
-}
-
-#if ENABLE(CONTEXT_MENUS)
-static void contextMenuItemActivated(GtkMenuItem* item, ContextMenuController* controller)
-{
- ContextMenuItem contextItem(item);
- controller->contextMenuItemSelected(&contextItem);
-}
-
-static void contextMenuConnectActivate(GtkMenuItem* item, ContextMenuController* controller)
-{
- if (GTK_IS_SEPARATOR_MENU_ITEM(item))
- return;
-
- if (GtkWidget* menu = gtk_menu_item_get_submenu(item)) {
- gtk_container_foreach(GTK_CONTAINER(menu), (GtkCallback)contextMenuConnectActivate, controller);
- return;
- }
-
- g_signal_connect(item, "activate", G_CALLBACK(contextMenuItemActivated), controller);
-}
-
-static MouseEventWithHitTestResults prepareMouseEventForFrame(Frame* frame, const PlatformMouseEvent& event)
-{
- HitTestRequest request(HitTestRequest::Active| HitTestRequest::DisallowShadowContent);
- IntPoint point = frame->view()->windowToContents(event.position());
- return frame->document()->prepareMouseEvent(request, point, event);
-}
-
-// Check enable-default-context-menu setting for compatibility.
-static bool defaultContextMenuEnabled(WebKitWebView* webView)
-{
- gboolean enableDefaultContextMenu;
- g_object_get(webkit_web_view_get_settings(webView), "enable-default-context-menu", &enableDefaultContextMenu, NULL);
- return enableDefaultContextMenu;
-}
-
-static gboolean webkit_web_view_forward_context_menu_event(WebKitWebView* webView, const PlatformMouseEvent& event, bool triggeredWithKeyboard)
-{
- Page* page = core(webView);
- page->contextMenuController()->clearContextMenu();
- Frame* focusedFrame;
- Frame* mainFrame = page->mainFrame();
- gboolean mousePressEventResult = FALSE;
- GRefPtr<WebKitHitTestResult> hitTestResult;
-
- if (!mainFrame->view())
- return FALSE;
-
- mainFrame->view()->setCursor(pointerCursor());
- if (page->subframeCount()) {
- MouseEventWithHitTestResults mev = prepareMouseEventForFrame(mainFrame, event);
- Frame* targetFrame = EventHandler::subframeForHitTestResult(mev);
- if (!targetFrame)
- targetFrame = mainFrame;
-
- focusedFrame = page->focusController()->focusedOrMainFrame();
- if (targetFrame != focusedFrame) {
- page->focusController()->setFocusedFrame(targetFrame);
- focusedFrame = targetFrame;
- }
- if (focusedFrame == mainFrame)
- hitTestResult = adoptGRef(kit(mev.hitTestResult()));
- } else
- focusedFrame = mainFrame;
-
- if (focusedFrame->view() && focusedFrame->eventHandler()->handleMousePressEvent(event))
- mousePressEventResult = TRUE;
-
- bool handledEvent = focusedFrame->eventHandler()->sendContextMenuEvent(event);
- if (!handledEvent)
- return FALSE;
-
- // If coreMenu is NULL, this means WebCore decided to not create
- // the default context menu; this may happen when the page is
- // handling the right-click for reasons other than the context menu.
- ContextMenuController* controller = page->contextMenuController();
- ContextMenu* coreMenu = controller->contextMenu();
- if (!coreMenu)
- return mousePressEventResult;
-
- GtkMenu* defaultMenu = coreMenu->platformDescription();
- ASSERT(defaultMenu);
-
- // We connect the "activate" signal here rather than in ContextMenuGtk to avoid
- // a layering violation. ContextMenuGtk should not know about the ContextMenuController.
- gtk_container_foreach(GTK_CONTAINER(defaultMenu), reinterpret_cast<GtkCallback>(contextMenuConnectActivate), controller);
-
- if (!hitTestResult) {
- MouseEventWithHitTestResults mev = prepareMouseEventForFrame(focusedFrame, event);
- hitTestResult = adoptGRef(kit(mev.hitTestResult()));
- }
-
- gboolean handled;
- g_signal_emit(webView, webkit_web_view_signals[CONTEXT_MENU], 0, defaultMenu, hitTestResult.get(), triggeredWithKeyboard, &handled);
- if (handled)
- return TRUE;
-
- // Return now if default context menu is disabled by enable-default-context-menu setting.
- // Check enable-default-context-menu setting for compatibility.
- if (!defaultContextMenuEnabled(webView))
- return FALSE;
-
- // Emit populate-popup signal for compatibility.
- g_signal_emit(webView, webkit_web_view_signals[POPULATE_POPUP], 0, defaultMenu);
-
- // If the context menu is now empty, don't show it.
- GOwnPtr<GList> items(gtk_container_get_children(GTK_CONTAINER(defaultMenu)));
- if (!items)
- return FALSE;
-
- WebKitWebViewPrivate* priv = webView->priv;
- priv->currentMenu = defaultMenu;
- priv->lastPopupXPosition = event.globalPosition().x();
- priv->lastPopupYPosition = event.globalPosition().y();
-
- gtk_menu_popup(defaultMenu, 0, 0, &PopupMenuPositionFunc, webView, event.button() + 1, gtk_get_current_event_time());
- return TRUE;
-}
-
-static const int gContextMenuMargin = 1;
-static IntPoint getLocationForKeyboardGeneratedContextMenu(Frame* frame)
-{
- FrameSelection* selection = frame->selection();
- if (!selection->selection().isNonOrphanedCaretOrRange()
- || (selection->selection().isCaret() && !selection->selection().isContentEditable())) {
- if (Node* focusedNode = getFocusedNode(frame))
- return focusedNode->pixelSnappedBoundingBox().location();
-
- // There was no selection and no focused node, so just put the context
- // menu into the corner of the view, offset slightly.
- return IntPoint(gContextMenuMargin, gContextMenuMargin);
- }
-
- // selection->selection().firstRange can return 0 here, but if that was the case
- // selection->selection().isNonOrphanedCaretOrRange() would have returned false
- // above, so we do not have to check it.
- IntRect firstRect = frame->editor().firstRectForRange(selection->selection().firstRange().get());
- return IntPoint(firstRect.x(), firstRect.maxY());
-}
-
-static gboolean webkit_web_view_popup_menu_handler(GtkWidget* widget)
-{
- Frame* frame = core(WEBKIT_WEB_VIEW(widget))->focusController()->focusedOrMainFrame();
- IntPoint location = getLocationForKeyboardGeneratedContextMenu(frame);
-
- FrameView* view = frame->view();
- if (!view)
- return FALSE;
-
- // Never let the context menu touch the very edge of the view.
- location = view->contentsToWindow(location);
- location.expandedTo(IntPoint(gContextMenuMargin, gContextMenuMargin));
- location.shrunkTo(IntPoint(view->width() - gContextMenuMargin, view->height() - gContextMenuMargin));
-
- IntPoint globalPoint(convertWidgetPointToScreenPoint(widget, location));
- PlatformMouseEvent event(location, globalPoint, RightButton, PlatformEvent::MousePressed, 0, false, false, false, false, gtk_get_current_event_time());
- return webkit_web_view_forward_context_menu_event(WEBKIT_WEB_VIEW(widget), event, true);
-}
-#endif // ENABLE(CONTEXT_MENUS)
-
-static void setHorizontalAdjustment(WebKitWebView* webView, GtkAdjustment* adjustment)
-{
- // This may be called after the page has been destroyed, in which case we do nothing.
- Page* page = core(webView);
- if (page)
- static_cast<WebKit::ChromeClient*>(page->chrome().client())->adjustmentWatcher()->setHorizontalAdjustment(adjustment);
-}
-
-static void setVerticalAdjustment(WebKitWebView* webView, GtkAdjustment* adjustment)
-{
- // This may be called after the page has been destroyed, in which case we do nothing.
- Page* page = core(webView);
- if (page)
- static_cast<WebKit::ChromeClient*>(page->chrome().client())->adjustmentWatcher()->setVerticalAdjustment(adjustment);
-}
-
-#ifndef GTK_API_VERSION_2
-static GtkAdjustment* getHorizontalAdjustment(WebKitWebView* webView)
-{
- Page* page = core(webView);
- if (page)
- return static_cast<WebKit::ChromeClient*>(page->chrome().client())->adjustmentWatcher()->horizontalAdjustment();
- return 0;
-}
-
-static GtkAdjustment* getVerticalAdjustment(WebKitWebView* webView)
-{
- Page* page = core(webView);
- if (page)
- return static_cast<WebKit::ChromeClient*>(page->chrome().client())->adjustmentWatcher()->verticalAdjustment();
- return 0;
-}
-
-static void setHorizontalScrollPolicy(WebKitWebView* webView, GtkScrollablePolicy policy)
-{
- webView->priv->horizontalScrollingPolicy = policy;
- gtk_widget_queue_resize(GTK_WIDGET(webView));
-}
-
-static void setVerticalScrollPolicy(WebKitWebView* webView, GtkScrollablePolicy policy)
-{
- webView->priv->verticalScrollingPolicy = policy;
- gtk_widget_queue_resize(GTK_WIDGET(webView));
-}
-
-static GtkScrollablePolicy getHorizontalScrollPolicy(WebKitWebView* webView)
-{
- return webView->priv->horizontalScrollingPolicy;
-}
-
-static GtkScrollablePolicy getVerticalScrollPolicy(WebKitWebView* webView)
-{
- return webView->priv->verticalScrollingPolicy;
-}
-
-#endif
-
-static void webkit_web_view_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(object);
-
- switch(prop_id) {
- case PROP_TITLE:
- g_value_set_string(value, webkit_web_view_get_title(webView));
- break;
- case PROP_URI:
- g_value_set_string(value, webkit_web_view_get_uri(webView));
- break;
- case PROP_COPY_TARGET_LIST:
- g_value_set_boxed(value, webkit_web_view_get_copy_target_list(webView));
- break;
- case PROP_PASTE_TARGET_LIST:
- g_value_set_boxed(value, webkit_web_view_get_paste_target_list(webView));
- break;
- case PROP_EDITABLE:
- g_value_set_boolean(value, webkit_web_view_get_editable(webView));
- break;
- case PROP_SETTINGS:
- g_value_set_object(value, webkit_web_view_get_settings(webView));
- break;
- case PROP_WEB_INSPECTOR:
- g_value_set_object(value, webkit_web_view_get_inspector(webView));
- break;
- case PROP_VIEWPORT_ATTRIBUTES:
- g_value_set_object(value, webkit_web_view_get_viewport_attributes(webView));
- break;
- case PROP_WINDOW_FEATURES:
- g_value_set_object(value, webkit_web_view_get_window_features(webView));
- break;
- case PROP_TRANSPARENT:
- g_value_set_boolean(value, webkit_web_view_get_transparent(webView));
- break;
- case PROP_ZOOM_LEVEL:
- g_value_set_float(value, webkit_web_view_get_zoom_level(webView));
- break;
- case PROP_FULL_CONTENT_ZOOM:
- g_value_set_boolean(value, webkit_web_view_get_full_content_zoom(webView));
- break;
- case PROP_ENCODING:
- g_value_set_string(value, webkit_web_view_get_encoding(webView));
- break;
- case PROP_CUSTOM_ENCODING:
- g_value_set_string(value, webkit_web_view_get_custom_encoding(webView));
- break;
- case PROP_LOAD_STATUS:
- g_value_set_enum(value, webkit_web_view_get_load_status(webView));
- break;
- case PROP_PROGRESS:
- g_value_set_double(value, webkit_web_view_get_progress(webView));
- break;
- case PROP_ICON_URI:
- g_value_set_string(value, webkit_web_view_get_icon_uri(webView));
- break;
- case PROP_IM_CONTEXT:
- g_value_set_object(value, webView->priv->imFilter.context());
- break;
- case PROP_VIEW_MODE:
- g_value_set_enum(value, webkit_web_view_get_view_mode(webView));
- break;
-#ifndef GTK_API_VERSION_2
- case PROP_HADJUSTMENT:
- g_value_set_object(value, getHorizontalAdjustment(webView));
- break;
- case PROP_VADJUSTMENT:
- g_value_set_object(value, getVerticalAdjustment(webView));
- break;
- case PROP_HSCROLL_POLICY:
- g_value_set_enum(value, getHorizontalScrollPolicy(webView));
- break;
- case PROP_VSCROLL_POLICY:
- g_value_set_enum(value, getVerticalScrollPolicy(webView));
- break;
-#endif
- case PROP_SELF_SCROLLING:
- g_value_set_boolean(value, webView->priv->selfScrolling);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- }
-}
-
-static void webkit_web_view_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec *pspec)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(object);
-
- switch(prop_id) {
- case PROP_EDITABLE:
- webkit_web_view_set_editable(webView, g_value_get_boolean(value));
- break;
- case PROP_SETTINGS:
- webkit_web_view_set_settings(webView, WEBKIT_WEB_SETTINGS(g_value_get_object(value)));
- break;
- case PROP_WINDOW_FEATURES:
- webkit_web_view_set_window_features(webView, WEBKIT_WEB_WINDOW_FEATURES(g_value_get_object(value)));
- break;
- case PROP_TRANSPARENT:
- webkit_web_view_set_transparent(webView, g_value_get_boolean(value));
- break;
- case PROP_ZOOM_LEVEL:
- webkit_web_view_set_zoom_level(webView, g_value_get_float(value));
- break;
- case PROP_FULL_CONTENT_ZOOM:
- webkit_web_view_set_full_content_zoom(webView, g_value_get_boolean(value));
- break;
- case PROP_CUSTOM_ENCODING:
- webkit_web_view_set_custom_encoding(webView, g_value_get_string(value));
- break;
- case PROP_VIEW_MODE:
- webkit_web_view_set_view_mode(webView, static_cast<WebKitWebViewViewMode>(g_value_get_enum(value)));
- break;
-#ifndef GTK_API_VERSION_2
- case PROP_HADJUSTMENT:
- setHorizontalAdjustment(webView, static_cast<GtkAdjustment*>(g_value_get_object(value)));
- break;
- case PROP_VADJUSTMENT:
- setVerticalAdjustment(webView, static_cast<GtkAdjustment*>(g_value_get_object(value)));
- break;
- case PROP_HSCROLL_POLICY:
- setHorizontalScrollPolicy(webView, static_cast<GtkScrollablePolicy>(g_value_get_enum(value)));
- break;
- case PROP_VSCROLL_POLICY:
- setVerticalScrollPolicy(webView, static_cast<GtkScrollablePolicy>(g_value_get_enum(value)));
- break;
-#endif
- case PROP_SELF_SCROLLING:
- webView->priv->selfScrolling = g_value_get_boolean(value);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- }
-}
-
-#ifdef GTK_API_VERSION_2
-static gboolean webkit_web_view_expose_event(GtkWidget* widget, GdkEventExpose* event)
-{
- int rectCount;
- GOwnPtr<GdkRectangle> rects;
- gdk_region_get_rectangles(event->region, &rects.outPtr(), &rectCount);
-
- RefPtr<cairo_t> cr = adoptRef(gdk_cairo_create(event->window));
- for (int i = 0; i < rectCount; i++) {
- copyRectFromCairoSurfaceToContext(WEBKIT_WEB_VIEW(widget)->priv->backingStore->cairoSurface(),
- cr.get(), IntSize(), IntRect(rects.get()[i]));
- }
-
- // Chaining up to the parent forces child widgets to be drawn.
- GTK_WIDGET_CLASS(webkit_web_view_parent_class)->expose_event(widget, event);
- return FALSE;
-}
-#else
-static gboolean webkit_web_view_draw(GtkWidget* widget, cairo_t* cr)
-{
- GdkRectangle clipRect;
- if (!gdk_cairo_get_clip_rectangle(cr, &clipRect))
- return FALSE;
-
- WebKitWebViewPrivate* priv = WEBKIT_WEB_VIEW(widget)->priv;
-#if USE(TEXTURE_MAPPER)
- if (priv->acceleratedCompositingContext->renderLayersToWindow(cr, clipRect)) {
- GTK_WIDGET_CLASS(webkit_web_view_parent_class)->draw(widget, cr);
- return FALSE;
- }
-#endif
-
- cairo_rectangle_list_t* rectList = cairo_copy_clip_rectangle_list(cr);
- if (rectList->status || !rectList->num_rectangles) {
- cairo_rectangle_list_destroy(rectList);
- return FALSE;
- }
-
- Vector<IntRect> rects;
- for (int i = 0; i < rectList->num_rectangles; i++) {
- copyRectFromCairoSurfaceToContext(priv->backingStore->cairoSurface(), cr, IntSize(),
- enclosingIntRect(FloatRect(rectList->rectangles[i])));
- }
- cairo_rectangle_list_destroy(rectList);
-
- // Chaining up to the parent forces child widgets to be drawn.
- GTK_WIDGET_CLASS(webkit_web_view_parent_class)->draw(widget, cr);
- return FALSE;
-}
-#endif // GTK_API_VERSION_2
-
-static gboolean webkit_web_view_key_press_event(GtkWidget* widget, GdkEventKey* event)
-{
- if (WEBKIT_WEB_VIEW(widget)->priv->imFilter.filterKeyEvent(event))
- return TRUE;
- return GTK_WIDGET_CLASS(webkit_web_view_parent_class)->key_press_event(widget, event);
-}
-
-static gboolean webkit_web_view_key_release_event(GtkWidget* widget, GdkEventKey* event)
-{
- if (WEBKIT_WEB_VIEW(widget)->priv->imFilter.filterKeyEvent(event))
- return TRUE;
- return GTK_WIDGET_CLASS(webkit_web_view_parent_class)->key_release_event(widget, event);
-}
-
-static gboolean webkit_web_view_button_press_event(GtkWidget* widget, GdkEventButton* event)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- WebKitWebViewPrivate* priv = webView->priv;
-
- // FIXME: need to keep track of subframe focus for key events
- gtk_widget_grab_focus(widget);
-
- if (!priv->clickCounter.shouldProcessButtonEvent(event))
- return TRUE;
-
- PlatformMouseEvent platformEvent(event);
- int count = priv->clickCounter.clickCountForGdkButtonEvent(widget, event);
- platformEvent.setClickCount(count);
-
-#if ENABLE(CONTEXT_MENUS)
- if (event->button == 3)
- return webkit_web_view_forward_context_menu_event(webView, PlatformMouseEvent(event), false);
-#endif
-
- Frame* frame = core(webView)->mainFrame();
- if (!frame->view())
- return FALSE;
-
- priv->imFilter.notifyMouseButtonPress();
- gboolean result = frame->eventHandler()->handleMousePressEvent(platformEvent);
-
- return result;
-}
-
-static gboolean webkit_web_view_button_release_event(GtkWidget* widget, GdkEventButton* event)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
-
- Frame* mainFrame = core(webView)->mainFrame();
- if (mainFrame->view())
- mainFrame->eventHandler()->handleMouseReleaseEvent(PlatformMouseEvent(event));
-
- /* We always return FALSE here because WebKit can, for the same click, decide
- * to not handle press-event but handle release-event, which can totally confuse
- * some GTK+ containers when there are no other events in between. This way we
- * guarantee that this case never happens, and that if press-event goes through
- * release-event also goes through.
- */
-
- return FALSE;
-}
-
-static gboolean webkit_web_view_motion_event(GtkWidget* widget, GdkEventMotion* event)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
-
- Frame* frame = core(webView)->mainFrame();
- if (!frame->view())
- return FALSE;
-
- return frame->eventHandler()->mouseMoved(PlatformMouseEvent(event));
-}
-
-static gboolean webkit_web_view_scroll_event(GtkWidget* widget, GdkEventScroll* event)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
-
- Frame* frame = core(webView)->mainFrame();
- if (!frame->view())
- return FALSE;
-
- PlatformWheelEvent wheelEvent(event);
- return frame->eventHandler()->handleWheelEvent(wheelEvent);
-}
-
-#ifdef GTK_API_VERSION_2
-static void webkit_web_view_size_request(GtkWidget* widget, GtkRequisition* requisition)
-{
- WebKitWebView* web_view = WEBKIT_WEB_VIEW(widget);
- Frame* coreFrame = core(webkit_web_view_get_main_frame(web_view));
- if (!coreFrame)
- return;
-
- FrameView* view = coreFrame->view();
- if (!view)
- return;
-
- requisition->width = view->contentsWidth();
- requisition->height = view->contentsHeight();
-}
-#else
-static void webkit_web_view_get_preferred_width(GtkWidget* widget, gint* minimum, gint* natural)
-{
- WebKitWebView* web_view = WEBKIT_WEB_VIEW(widget);
- Frame* coreFrame = core(webkit_web_view_get_main_frame(web_view));
- if (!coreFrame)
- return;
-
- FrameView* view = coreFrame->view();
- if (!view)
- return;
-
- *minimum = *natural = view->contentsWidth();
-}
-
-static void webkit_web_view_get_preferred_height(GtkWidget* widget, gint* minimum, gint* natural)
-{
- WebKitWebView* web_view = WEBKIT_WEB_VIEW(widget);
- Frame* coreFrame = core(webkit_web_view_get_main_frame(web_view));
- if (!coreFrame)
- return;
-
- FrameView* view = coreFrame->view();
- if (!view)
- return;
-
- *minimum = *natural = view->contentsHeight();
-}
-#endif
-
-static void updateChildAllocationFromPendingAllocation(GtkWidget* child, void*)
-{
- if (!gtk_widget_get_visible(child))
- return;
-
- GtkAllocation* allocation = static_cast<GtkAllocation*>(g_object_get_data(G_OBJECT(child), "delayed-allocation"));
- if (!allocation)
- return;
-
- g_object_set_data(G_OBJECT(child), "delayed-allocation", 0);
- gtk_widget_size_allocate(child, allocation);
- *allocation = IntRect();
-}
-
-static void resizeWebViewFromAllocation(WebKitWebView* webView, GtkAllocation* allocation, bool sizeChanged)
-{
- Page* page = core(webView);
- IntSize oldSize;
- FrameView* frameView = page->mainFrame()->view();
- if (sizeChanged && frameView) {
- oldSize = frameView->size();
- frameView->resize(allocation->width, allocation->height);
- }
-
- gtk_container_forall(GTK_CONTAINER(webView), updateChildAllocationFromPendingAllocation, 0);
-
- if (!sizeChanged)
- return;
-
- WebKit::ChromeClient* chromeClient = static_cast<WebKit::ChromeClient*>(page->chrome().client());
- chromeClient->widgetSizeChanged(oldSize, IntSize(allocation->width, allocation->height));
- chromeClient->adjustmentWatcher()->updateAdjustmentsFromScrollbars();
-}
-
-static void webkit_web_view_size_allocate(GtkWidget* widget, GtkAllocation* allocation)
-{
- GtkAllocation oldAllocation;
- gtk_widget_get_allocation(widget, &oldAllocation);
- bool sizeChanged = allocation->width != oldAllocation.width || allocation->height != oldAllocation.height;
-
- GTK_WIDGET_CLASS(webkit_web_view_parent_class)->size_allocate(widget, allocation);
-
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- if (sizeChanged && !gtk_widget_get_mapped(widget)) {
- webView->priv->needsResizeOnMap = true;
- return;
- }
- resizeWebViewFromAllocation(webView, allocation, sizeChanged);
-}
-
-static void webkitWebViewMap(GtkWidget* widget)
-{
- GTK_WIDGET_CLASS(webkit_web_view_parent_class)->map(widget);
-
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- if (!webView->priv->needsResizeOnMap)
- return;
-
- GtkAllocation allocation;
- gtk_widget_get_allocation(widget, &allocation);
- resizeWebViewFromAllocation(webView, &allocation, true);
- webView->priv->needsResizeOnMap = false;
-}
-
-static void webkit_web_view_grab_focus(GtkWidget* widget)
-{
-
- if (gtk_widget_is_sensitive(widget)) {
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- FocusController* focusController = core(webView)->focusController();
-
- focusController->setActive(true);
-
- if (focusController->focusedFrame())
- focusController->setFocused(true);
- else
- focusController->setFocusedFrame(core(webView)->mainFrame());
- }
-
- return GTK_WIDGET_CLASS(webkit_web_view_parent_class)->grab_focus(widget);
-}
-
-static gboolean webkit_web_view_focus_in_event(GtkWidget* widget, GdkEventFocus* event)
-{
- // TODO: Improve focus handling as suggested in
- // http://bugs.webkit.org/show_bug.cgi?id=16910
- GtkWidget* toplevel = gtk_widget_get_toplevel(widget);
- if (!widgetIsOnscreenToplevelWindow(toplevel) || !gtk_window_has_toplevel_focus(GTK_WINDOW(toplevel)))
- return GTK_WIDGET_CLASS(webkit_web_view_parent_class)->focus_in_event(widget, event);
-
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- FocusController* focusController = core(webView)->focusController();
-
- focusController->setActive(true);
- if (focusController->focusedFrame())
- focusController->setFocused(true);
- else
- focusController->setFocusedFrame(core(webView)->mainFrame());
-
- if (focusController->focusedFrame()->editor().canEdit())
- webView->priv->imFilter.notifyFocusedIn();
- return GTK_WIDGET_CLASS(webkit_web_view_parent_class)->focus_in_event(widget, event);
-}
-
-static gboolean webkit_web_view_focus_out_event(GtkWidget* widget, GdkEventFocus* event)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
-
- // We may hit this code while destroying the widget, and we might
- // no longer have a page, then.
- if (Page* page = core(webView)) {
- page->focusController()->setActive(false);
- page->focusController()->setFocused(false);
- }
-
- webView->priv->imFilter.notifyFocusedOut();
- return GTK_WIDGET_CLASS(webkit_web_view_parent_class)->focus_out_event(widget, event);
-}
-
-static void webkit_web_view_realize(GtkWidget* widget)
-{
- gtk_widget_set_realized(widget, TRUE);
-
- GtkAllocation allocation;
- gtk_widget_get_allocation(widget, &allocation);
-
- GdkWindowAttr attributes;
- attributes.window_type = GDK_WINDOW_CHILD;
- attributes.x = allocation.x;
- attributes.y = allocation.y;
- attributes.width = allocation.width;
- attributes.height = allocation.height;
- attributes.wclass = GDK_INPUT_OUTPUT;
- attributes.visual = gtk_widget_get_visual(widget);
-#ifdef GTK_API_VERSION_2
- attributes.colormap = gtk_widget_get_colormap(widget);
-#endif
- attributes.event_mask = GDK_VISIBILITY_NOTIFY_MASK
- | GDK_EXPOSURE_MASK
- | GDK_BUTTON_PRESS_MASK
- | GDK_BUTTON_RELEASE_MASK
- | GDK_SCROLL_MASK
-#if GTK_CHECK_VERSION(3, 3, 18)
- | GDK_SMOOTH_SCROLL_MASK
-#endif
- | GDK_POINTER_MOTION_MASK
- | GDK_KEY_PRESS_MASK
- | GDK_KEY_RELEASE_MASK
- | GDK_BUTTON_MOTION_MASK
- | GDK_BUTTON1_MOTION_MASK
- | GDK_BUTTON2_MOTION_MASK
- | GDK_BUTTON3_MOTION_MASK;
-
- gint attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL;
-#ifdef GTK_API_VERSION_2
- attributes_mask |= GDK_WA_COLORMAP;
-#endif
- GdkWindow* window = gdk_window_new(gtk_widget_get_parent_window(widget), &attributes, attributes_mask);
-
- gtk_widget_set_window(widget, window);
- gdk_window_set_user_data(window, widget);
-
-#ifdef GTK_API_VERSION_2
- gtk_widget_style_attach(widget);
- gtk_style_set_background(gtk_widget_get_style(widget), window, GTK_STATE_NORMAL);
-#else
- gtk_style_context_set_background(gtk_widget_get_style_context(widget), window);
-#endif
-}
-
-#ifdef GTK_API_VERSION_2
-static void webkit_web_view_set_scroll_adjustments(WebKitWebView* webView, GtkAdjustment* horizontalAdjustment, GtkAdjustment* verticalAdjustment)
-{
- setHorizontalAdjustment(webView, horizontalAdjustment);
- setVerticalAdjustment(webView, verticalAdjustment);
-}
-#endif
-
-static void webkit_web_view_container_add(GtkContainer* container, GtkWidget* widget)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(container);
- WebKitWebViewPrivate* priv = webView->priv;
-
- priv->children.add(widget);
- gtk_widget_set_parent(widget, GTK_WIDGET(container));
-}
-
-static void webkit_web_view_container_remove(GtkContainer* container, GtkWidget* widget)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(container);
- WebKitWebViewPrivate* priv = webView->priv;
-
- if (priv->children.contains(widget)) {
- gtk_widget_unparent(widget);
- priv->children.remove(widget);
- }
-}
-
-static void webkit_web_view_container_forall(GtkContainer* container, gboolean, GtkCallback callback, gpointer callbackData)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(container);
- WebKitWebViewPrivate* priv = webView->priv;
-
- HashSet<GtkWidget*> children = priv->children;
- HashSet<GtkWidget*>::const_iterator end = children.end();
- for (HashSet<GtkWidget*>::const_iterator current = children.begin(); current != end; ++current)
- (*callback)(*current, callbackData);
-}
-
-static WebKitWebView* webkit_web_view_real_create_web_view(WebKitWebView*, WebKitWebFrame*)
-{
- return 0;
-}
-
-static gboolean webkit_web_view_real_web_view_ready(WebKitWebView*)
-{
- return FALSE;
-}
-
-static gboolean webkit_web_view_real_close_web_view(WebKitWebView*)
-{
- return FALSE;
-}
-
-static WebKitNavigationResponse webkit_web_view_real_navigation_requested(WebKitWebView*, WebKitWebFrame*, WebKitNetworkRequest*)
-{
- return WEBKIT_NAVIGATION_RESPONSE_ACCEPT;
-}
-
-static void webkit_web_view_real_window_object_cleared(WebKitWebView*, WebKitWebFrame*, JSGlobalContextRef context, JSObjectRef window_object)
-{
- notImplemented();
-}
-
-static gchar* webkit_web_view_real_choose_file(WebKitWebView*, WebKitWebFrame*, const gchar* old_name)
-{
- notImplemented();
- return g_strdup(old_name);
-}
-
-typedef enum {
- WEBKIT_SCRIPT_DIALOG_ALERT,
- WEBKIT_SCRIPT_DIALOG_CONFIRM,
- WEBKIT_SCRIPT_DIALOG_PROMPT
- } WebKitScriptDialogType;
-
-static gboolean webkit_web_view_script_dialog(WebKitWebView* webView, WebKitWebFrame* frame, const gchar* message, WebKitScriptDialogType type, const gchar* defaultValue, gchar** value)
-{
- GtkMessageType messageType;
- GtkButtonsType buttons;
- gint defaultResponse;
- GtkWidget* window;
- GtkWidget* dialog;
- GtkWidget* entry = 0;
- gboolean didConfirm = FALSE;
-
- switch (type) {
- case WEBKIT_SCRIPT_DIALOG_ALERT:
- messageType = GTK_MESSAGE_WARNING;
- buttons = GTK_BUTTONS_CLOSE;
- defaultResponse = GTK_RESPONSE_CLOSE;
- break;
- case WEBKIT_SCRIPT_DIALOG_CONFIRM:
- messageType = GTK_MESSAGE_QUESTION;
- buttons = GTK_BUTTONS_OK_CANCEL;
- defaultResponse = GTK_RESPONSE_OK;
- break;
- case WEBKIT_SCRIPT_DIALOG_PROMPT:
- messageType = GTK_MESSAGE_QUESTION;
- buttons = GTK_BUTTONS_OK_CANCEL;
- defaultResponse = GTK_RESPONSE_OK;
- break;
- default:
- g_warning("Unknown value for WebKitScriptDialogType.");
- return FALSE;
- }
-
- window = gtk_widget_get_toplevel(GTK_WIDGET(webView));
- dialog = gtk_message_dialog_new(widgetIsOnscreenToplevelWindow(window) ? GTK_WINDOW(window) : 0,
- GTK_DIALOG_DESTROY_WITH_PARENT,
- messageType,
- buttons,
- "%s",
- message);
- gchar* title = g_strconcat("JavaScript - ", webkit_web_frame_get_uri(frame), NULL);
- gtk_window_set_title(GTK_WINDOW(dialog), title);
- g_free(title);
-
- if (type == WEBKIT_SCRIPT_DIALOG_PROMPT) {
- entry = gtk_entry_new();
- gtk_entry_set_text(GTK_ENTRY(entry), defaultValue);
- gtk_container_add(GTK_CONTAINER(gtk_dialog_get_content_area(GTK_DIALOG(dialog))), entry);
- gtk_entry_set_activates_default(GTK_ENTRY(entry), TRUE);
- gtk_widget_show(entry);
- }
-
- gtk_dialog_set_default_response(GTK_DIALOG(dialog), defaultResponse);
- gint response = gtk_dialog_run(GTK_DIALOG(dialog));
-
- switch (response) {
- case GTK_RESPONSE_OK:
- didConfirm = TRUE;
- if (entry)
- *value = g_strdup(gtk_entry_get_text(GTK_ENTRY(entry)));
- break;
- case GTK_RESPONSE_CANCEL:
- didConfirm = FALSE;
- break;
-
- }
- gtk_widget_destroy(GTK_WIDGET(dialog));
- return didConfirm;
-}
-
-static gboolean webkit_web_view_real_script_alert(WebKitWebView* webView, WebKitWebFrame* frame, const gchar* message)
-{
- webkit_web_view_script_dialog(webView, frame, message, WEBKIT_SCRIPT_DIALOG_ALERT, 0, 0);
- return TRUE;
-}
-
-static gboolean webkit_web_view_real_script_confirm(WebKitWebView* webView, WebKitWebFrame* frame, const gchar* message, gboolean* didConfirm)
-{
- *didConfirm = webkit_web_view_script_dialog(webView, frame, message, WEBKIT_SCRIPT_DIALOG_CONFIRM, 0, 0);
- return TRUE;
-}
-
-static gboolean webkit_web_view_real_script_prompt(WebKitWebView* webView, WebKitWebFrame* frame, const gchar* message, const gchar* defaultValue, gchar** value)
-{
- if (!webkit_web_view_script_dialog(webView, frame, message, WEBKIT_SCRIPT_DIALOG_PROMPT, defaultValue, value))
- *value = NULL;
- return TRUE;
-}
-
-static gboolean webkit_web_view_real_console_message(WebKitWebView* webView, const gchar* message, unsigned int line, const gchar* sourceId)
-{
- g_message("console message: %s @%d: %s\n", sourceId, line, message);
- return TRUE;
-}
-
-static void webkit_web_view_real_select_all(WebKitWebView* webView)
-{
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- frame->editor().command("SelectAll").execute();
-}
-
-static void webkit_web_view_real_cut_clipboard(WebKitWebView* webView)
-{
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- frame->editor().command("Cut").execute();
-}
-
-static void webkit_web_view_real_copy_clipboard(WebKitWebView* webView)
-{
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- frame->editor().command("Copy").execute();
-}
-
-static void webkit_web_view_real_undo(WebKitWebView* webView)
-{
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- frame->editor().command("Undo").execute();
-}
-
-static void webkit_web_view_real_redo(WebKitWebView* webView)
-{
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- frame->editor().command("Redo").execute();
-}
-
-static gboolean webkit_web_view_real_move_cursor (WebKitWebView* webView, GtkMovementStep step, gint count)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW (webView), FALSE);
- g_return_val_if_fail(step == GTK_MOVEMENT_VISUAL_POSITIONS ||
- step == GTK_MOVEMENT_DISPLAY_LINES ||
- step == GTK_MOVEMENT_PAGES ||
- step == GTK_MOVEMENT_BUFFER_ENDS, FALSE);
- g_return_val_if_fail(count == 1 || count == -1, FALSE);
-
- ScrollDirection direction;
- ScrollGranularity granularity;
-
- switch (step) {
- case GTK_MOVEMENT_DISPLAY_LINES:
- granularity = ScrollByLine;
- if (count == 1)
- direction = ScrollDown;
- else
- direction = ScrollUp;
- break;
- case GTK_MOVEMENT_VISUAL_POSITIONS:
- granularity = ScrollByLine;
- if (count == 1)
- direction = ScrollRight;
- else
- direction = ScrollLeft;
- break;
- case GTK_MOVEMENT_PAGES:
- granularity = ScrollByPage;
- if (count == 1)
- direction = ScrollDown;
- else
- direction = ScrollUp;
- break;
- case GTK_MOVEMENT_BUFFER_ENDS:
- granularity = ScrollByDocument;
- if (count == 1)
- direction = ScrollDown;
- else
- direction = ScrollUp;
- break;
- default:
- g_assert_not_reached();
- return false;
- }
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- if (!frame->eventHandler()->scrollOverflow(direction, granularity))
- frame->view()->scroll(direction, granularity);
-
- return true;
-}
-
-static void webkit_web_view_real_paste_clipboard(WebKitWebView* webView)
-{
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- frame->editor().command("Paste").execute();
-}
-
-static gboolean webkit_web_view_real_should_allow_editing_action(WebKitWebView*)
-{
- return TRUE;
-}
-
-static gboolean webkit_web_view_real_entering_fullscreen(WebKitWebView* webView)
-{
- return FALSE;
-}
-
-static gboolean webkit_web_view_real_leaving_fullscreen(WebKitWebView* webView)
-{
- return FALSE;
-}
-
-static void fileChooserDialogResponseCallback(GtkDialog* dialog, gint responseID, WebKitFileChooserRequest* request)
-{
- GRefPtr<WebKitFileChooserRequest> adoptedRequest = adoptGRef(request);
- if (responseID == GTK_RESPONSE_ACCEPT) {
- GOwnPtr<GSList> filesList(gtk_file_chooser_get_filenames(GTK_FILE_CHOOSER(dialog)));
- GRefPtr<GPtrArray> filesArray = adoptGRef(g_ptr_array_new());
- for (GSList* file = filesList.get(); file; file = g_slist_next(file))
- g_ptr_array_add(filesArray.get(), file->data);
- g_ptr_array_add(filesArray.get(), 0);
- webkit_file_chooser_request_select_files(adoptedRequest.get(), reinterpret_cast<const gchar* const*>(filesArray->pdata));
- }
-
- gtk_widget_destroy(GTK_WIDGET(dialog));
-}
-
-static gboolean webkitWebViewRealRunFileChooser(WebKitWebView* webView, WebKitFileChooserRequest* request)
-{
- GtkWidget* toplevel = gtk_widget_get_toplevel(GTK_WIDGET(webView));
- if (!widgetIsOnscreenToplevelWindow(toplevel))
- toplevel = 0;
-
- gboolean allowsMultipleSelection = webkit_file_chooser_request_get_select_multiple(request);
- GtkWidget* dialog = gtk_file_chooser_dialog_new(allowsMultipleSelection ? _("Select Files") : _("Select File"),
- toplevel ? GTK_WINDOW(toplevel) : 0,
- GTK_FILE_CHOOSER_ACTION_OPEN,
- GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
- NULL);
-
- if (GtkFileFilter* filter = webkit_file_chooser_request_get_mime_types_filter(request))
- gtk_file_chooser_set_filter(GTK_FILE_CHOOSER(dialog), filter);
- gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(dialog), allowsMultipleSelection);
-
- if (const gchar* const* selectedFiles = webkit_file_chooser_request_get_selected_files(request))
- gtk_file_chooser_select_filename(GTK_FILE_CHOOSER(dialog), selectedFiles[0]);
-
- g_signal_connect(dialog, "response", G_CALLBACK(fileChooserDialogResponseCallback), g_object_ref(request));
- gtk_widget_show(dialog);
-
- return TRUE;
-}
-
-static void webkit_web_view_dispose(GObject* object)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(object);
- WebKitWebViewPrivate* priv = webView->priv;
-
- priv->disposing = TRUE;
-
- // Make sure GtkAdjustmentWatcher won't be reacting to adjustment changes after the
- // WebView is destroyed.
- setHorizontalAdjustment(webView, 0);
- setVerticalAdjustment(webView, 0);
-
- // These smart pointers are cleared manually, because some cleanup operations are
- // very sensitive to their value. We may crash if these are done in the wrong order.
- priv->backForwardList.clear();
-
- if (priv->corePage) {
- webkit_web_view_stop_loading(WEBKIT_WEB_VIEW(object));
- core(priv->mainFrame)->loader()->detachFromParent();
- delete priv->corePage;
- priv->corePage = 0;
- }
-
- if (priv->webSettings) {
- g_signal_handlers_disconnect_by_func(priv->webSettings.get(), reinterpret_cast<void*>(webkit_web_view_settings_notify), webView);
- priv->webSettings.clear();
- }
-
- if (priv->currentMenu) {
- gtk_widget_destroy(GTK_WIDGET(priv->currentMenu));
- priv->currentMenu = 0;
- }
-
- priv->webInspector.clear();
- priv->viewportAttributes.clear();
- priv->webWindowFeatures.clear();
- priv->mainResource.clear();
- priv->subResources.clear();
-
- G_OBJECT_CLASS(webkit_web_view_parent_class)->dispose(object);
-}
-
-static void webkit_web_view_finalize(GObject* object)
-{
- // We need to manually call the destructor here, since this object's memory is managed
- // by GLib. This calls all C++ members' destructors and prevents memory leaks.
- WEBKIT_WEB_VIEW(object)->priv->~WebKitWebViewPrivate();
- G_OBJECT_CLASS(webkit_web_view_parent_class)->finalize(object);
-}
-
-static gboolean webkit_signal_accumulator_object_handled(GSignalInvocationHint* ihint, GValue* returnAccu, const GValue* handlerReturn, gpointer dummy)
-{
- gpointer newWebView = g_value_get_object(handlerReturn);
- g_value_set_object(returnAccu, newWebView);
-
- // Continue if we don't have a newWebView
- return !newWebView;
-}
-
-static gboolean webkit_navigation_request_handled(GSignalInvocationHint* ihint, GValue* returnAccu, const GValue* handlerReturn, gpointer dummy)
-{
- WebKitNavigationResponse navigationResponse = (WebKitNavigationResponse)g_value_get_enum(handlerReturn);
- g_value_set_enum(returnAccu, navigationResponse);
-
- if (navigationResponse != WEBKIT_NAVIGATION_RESPONSE_ACCEPT)
- return FALSE;
-
- return TRUE;
-}
-
-static AtkObject* webkit_web_view_get_accessible(GtkWidget* widget)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- if (!core(webView))
- return 0;
-
- if (!AXObjectCache::accessibilityEnabled())
- AXObjectCache::enableAccessibility();
-
- Frame* coreFrame = core(webView)->mainFrame();
- if (!coreFrame)
- return 0;
-
- Document* doc = coreFrame->document();
- if (!doc)
- return 0;
-
- AccessibilityObject* rootAccessible = doc->axObjectCache()->rootObject();
- if (!rootAccessible)
- return 0;
-
- AtkObject* axRoot = rootAccessible->wrapper();
- if (!axRoot || !ATK_IS_OBJECT(axRoot))
- return 0;
-
- // Ensure the parent is set to make top-down and bottom-up navigation work.
- GtkWidget* parentWidget = gtk_widget_get_parent(widget);
- AtkObject* axParent = parentWidget ? gtk_widget_get_accessible(parentWidget) : 0;
- if (axParent)
- atk_object_set_parent(axRoot, axParent);
-
- return axRoot;
-}
-
-static double screenDPI(GdkScreen* screen)
-{
- // gdk_screen_get_resolution() returns -1 when no DPI is set.
- double dpi = gdk_screen_get_resolution(screen);
- if (dpi != -1)
- return dpi;
-
- static const double kMillimetresPerInch = 25.4;
- double diagonalSizeInPixels = hypot(gdk_screen_get_width(screen), gdk_screen_get_height(screen));
- double diagonalSizeInInches = hypot(gdk_screen_get_width_mm(screen), gdk_screen_get_height_mm(screen)) / kMillimetresPerInch;
- return diagonalSizeInPixels / diagonalSizeInInches;
-}
-
-static gdouble webViewGetDPI(WebKitWebView* webView)
-{
- if (webView->priv->webSettings->priv->enforce96DPI)
- return 96;
-
- static const double defaultDPI = 96;
- GdkScreen* screen = gtk_widget_has_screen(GTK_WIDGET(webView)) ? gtk_widget_get_screen(GTK_WIDGET(webView)) : gdk_screen_get_default();
- return screen ? screenDPI(screen) : defaultDPI;
-}
-
-static inline gint webViewConvertFontSizeToPixels(WebKitWebView* webView, double fontSize)
-{
- return fontSize / 72.0 * webViewGetDPI(webView);
-}
-
-static void webkit_web_view_screen_changed(GtkWidget* widget, GdkScreen* previousScreen)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- WebKitWebViewPrivate* priv = webView->priv;
-
- if (priv->disposing)
- return;
-
- WebKitWebSettings* webSettings = priv->webSettings.get();
- Settings* settings = core(webView)->settings();
- guint defaultFontSize, defaultMonospaceFontSize, minimumFontSize, minimumLogicalFontSize;
-
- g_object_get(webSettings,
- "default-font-size", &defaultFontSize,
- "default-monospace-font-size", &defaultMonospaceFontSize,
- "minimum-font-size", &minimumFontSize,
- "minimum-logical-font-size", &minimumLogicalFontSize,
- NULL);
-
- settings->setDefaultFontSize(webViewConvertFontSizeToPixels(webView, defaultFontSize));
- settings->setDefaultFixedFontSize(webViewConvertFontSizeToPixels(webView, defaultMonospaceFontSize));
- settings->setMinimumFontSize(webViewConvertFontSizeToPixels(webView, minimumFontSize));
- settings->setMinimumLogicalFontSize(webViewConvertFontSizeToPixels(webView, minimumLogicalFontSize));
-}
-
-#if ENABLE(DRAG_SUPPORT)
-static void webkit_web_view_drag_end(GtkWidget* widget, GdkDragContext* context)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- if (!webView->priv->dragAndDropHelper.handleDragEnd(context))
- return;
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- if (!frame)
- return;
-
- // Synthesize a button release event to send with the drag end action.
- GOwnPtr<GdkEvent> event(gdk_event_new(GDK_BUTTON_RELEASE));
- int x, y, xRoot, yRoot;
- GdkModifierType modifiers = static_cast<GdkModifierType>(0);
-#ifdef GTK_API_VERSION_2
- GdkDisplay* display = gdk_display_get_default();
- gdk_display_get_pointer(display, 0, &xRoot, &yRoot, &modifiers);
- event->button.window = gdk_display_get_window_at_pointer(display, &x, &y);
-#else
- GdkDevice* device = gdk_drag_context_get_device(context);
- event->button.window = gdk_device_get_window_at_position(device, &x, &y);
- gdk_device_get_position(device, 0, &xRoot, &yRoot);
-#endif
-
- if (event->button.window)
- g_object_ref(event->button.window);
- event->button.x = x;
- event->button.y = y;
- event->button.x_root = xRoot;
- event->button.y_root = yRoot;
- event->button.state = modifiers;
-
- PlatformMouseEvent platformEvent(&event->button);
- frame->eventHandler()->dragSourceEndedAt(platformEvent, gdkDragActionToDragOperation(gdk_drag_context_get_selected_action(context)));
-}
-
-static void webkit_web_view_drag_data_get(GtkWidget* widget, GdkDragContext* context, GtkSelectionData* selectionData, guint info, guint)
-{
- WEBKIT_WEB_VIEW(widget)->priv->dragAndDropHelper.handleGetDragData(context, selectionData, info);
-}
-
-static void dragExitedCallback(GtkWidget* widget, DragData* dragData, bool dropHappened)
-{
- // Don't call dragExited if we have just received a drag-drop signal. This
- // happens in the case of a successful drop onto the view.
- if (!dropHappened)
- core(WEBKIT_WEB_VIEW(widget))->dragController()->dragExited(dragData);
- core(WEBKIT_WEB_VIEW(widget))->dragController()->dragEnded();
-}
-
-static void webkit_web_view_drag_leave(GtkWidget* widget, GdkDragContext* context, guint time)
-{
- WEBKIT_WEB_VIEW(widget)->priv->dragAndDropHelper.handleDragLeave(context, dragExitedCallback);
-}
-
-static gboolean webkit_web_view_drag_motion(GtkWidget* widget, GdkDragContext* context, gint x, gint y, guint time)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- IntPoint position(x, y);
- DataObjectGtk* dataObject = webView->priv->dragAndDropHelper.handleDragMotion(context, position, time);
- if (!dataObject)
- return TRUE;
-
- DragData dragData(dataObject, position, convertWidgetPointToScreenPoint(widget, position), gdkDragActionToDragOperation(gdk_drag_context_get_actions(context)));
- DragOperation operation = core(webView)->dragController()->dragUpdated(&dragData).operation;
- gdk_drag_status(context, dragOperationToSingleGdkDragAction(operation), time);
- return TRUE;
-}
-
-static void webkit_web_view_drag_data_received(GtkWidget* widget, GdkDragContext* context, gint x, gint y, GtkSelectionData* selectionData, guint info, guint time)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- IntPoint position;
- DataObjectGtk* dataObject = webView->priv->dragAndDropHelper.handleDragDataReceived(context, selectionData, info, position);
- if (!dataObject)
- return;
-
- DragData dragData(dataObject, position, convertWidgetPointToScreenPoint(widget, position), gdkDragActionToDragOperation(gdk_drag_context_get_actions(context)));
- DragOperation operation = core(webView)->dragController()->dragEntered(&dragData).operation;
- gdk_drag_status(context, dragOperationToSingleGdkDragAction(operation), time);
-}
-
-static gboolean webkit_web_view_drag_drop(GtkWidget* widget, GdkDragContext* context, gint x, gint y, guint time)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
- DataObjectGtk* dataObject = webView->priv->dragAndDropHelper.handleDragDrop(context);
- if (!dataObject)
- return FALSE;
-
- IntPoint position(x, y);
- DragData dragData(dataObject, position, convertWidgetPointToScreenPoint(widget, position), gdkDragActionToDragOperation(gdk_drag_context_get_actions(context)));
- core(webView)->dragController()->performDrag(&dragData);
- gtk_drag_finish(context, TRUE, FALSE, time);
- return TRUE;
-}
-#endif // ENABLE(DRAG_SUPPORT)
-
-static gboolean webkit_web_view_query_tooltip(GtkWidget *widget, gint x, gint y, gboolean keyboard_mode, GtkTooltip *tooltip)
-{
- WebKitWebViewPrivate* priv = WEBKIT_WEB_VIEW(widget)->priv;
-
- if (keyboard_mode) {
- WebKitWebView* webView = WEBKIT_WEB_VIEW(widget);
-
- // Get the title of the current focused element.
- Frame* coreFrame = core(webView)->focusController()->focusedOrMainFrame();
- if (!coreFrame)
- return FALSE;
-
- Node* node = getFocusedNode(coreFrame);
- if (!node)
- return FALSE;
-
- for (Node* titleNode = node; titleNode; titleNode = titleNode->parentNode()) {
- if (titleNode->isElementNode()) {
- String title = toElement(titleNode)->title();
- if (!title.isEmpty()) {
- if (FrameView* view = coreFrame->view()) {
- GdkRectangle area = view->contentsToWindow(node->pixelSnappedBoundingBox());
- gtk_tooltip_set_tip_area(tooltip, &area);
- }
- gtk_tooltip_set_text(tooltip, title.utf8().data());
-
- return TRUE;
- }
- }
- }
-
- return FALSE;
- }
-
- if (priv->tooltipText.length() > 0) {
- if (!keyboard_mode) {
- if (!priv->tooltipArea.isEmpty()) {
- GdkRectangle area = priv->tooltipArea;
- gtk_tooltip_set_tip_area(tooltip, &area);
- } else
- gtk_tooltip_set_tip_area(tooltip, 0);
- }
- gtk_tooltip_set_text(tooltip, priv->tooltipText.data());
- return TRUE;
- }
-
- return FALSE;
-}
-
-static gboolean webkit_web_view_show_help(GtkWidget* widget, GtkWidgetHelpType help_type)
-{
- if (help_type == GTK_WIDGET_HELP_TOOLTIP)
- gtk_widget_set_has_tooltip(widget, TRUE);
-
- return GTK_WIDGET_CLASS(webkit_web_view_parent_class)->show_help(widget, help_type);
-}
-
-static void webkit_web_view_class_init(WebKitWebViewClass* webViewClass)
-{
- GtkBindingSet* binding_set;
-
- webkitInit();
-
- /*
- * Signals
- */
-
- /**
- * WebKitWebView::create-web-view:
- * @web_view: the object on which the signal is emitted
- * @frame: the #WebKitWebFrame
- *
- * Emitted when the creation of a new window is requested.
- * If this signal is handled the signal handler should return the
- * newly created #WebKitWebView.
- *
- * The new #WebKitWebView should not be displayed to the user
- * until the #WebKitWebView::web-view-ready signal is emitted.
- *
- * The signal handlers should not try to deal with the reference count for
- * the new #WebKitWebView. The widget to which the widget is added will
- * handle that.
- *
- * Return value: (transfer full): a newly allocated #WebKitWebView, or %NULL
- *
- * Since: 1.0.3
- */
- webkit_web_view_signals[CREATE_WEB_VIEW] = g_signal_new("create-web-view",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (WebKitWebViewClass, create_web_view),
- webkit_signal_accumulator_object_handled,
- NULL,
- webkit_marshal_OBJECT__OBJECT,
- WEBKIT_TYPE_WEB_VIEW , 1,
- WEBKIT_TYPE_WEB_FRAME);
-
- /**
- * WebKitWebView::web-view-ready:
- * @web_view: the object on which the signal is emitted
- *
- * Emitted after #WebKitWebView::create-web-view when the new #WebKitWebView
- * should be displayed to the user. When this signal is emitted
- * all the information about how the window should look, including
- * size, position, whether the location, status and scroll bars
- * should be displayed, is already set on the
- * #WebKitWebWindowFeatures object contained by the #WebKitWebView.
- *
- * Notice that some of that information may change during the life
- * time of the window, so you may want to connect to the ::notify
- * signal of the #WebKitWebWindowFeatures object to handle those.
- *
- * Return value: %TRUE to stop handlers from being invoked for the event or
- * %FALSE to propagate the event furter
- *
- * Since: 1.0.3
- */
- webkit_web_view_signals[WEB_VIEW_READY] = g_signal_new("web-view-ready",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (WebKitWebViewClass, web_view_ready),
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__VOID,
- G_TYPE_BOOLEAN, 0);
-
- /**
- * WebKitWebView::close-web-view:
- * @web_view: the object on which the signal is emitted
- *
- * Emitted when closing a #WebKitWebView is requested. This occurs when a
- * call is made from JavaScript's window.close function. The default
- * signal handler does not do anything. It is the owner's responsibility
- * to hide or delete the web view, if necessary.
- *
- * Return value: %TRUE to stop handlers from being invoked for the event or
- * %FALSE to propagate the event furter
- *
- * Since: 1.1.11
- */
- webkit_web_view_signals[CLOSE_WEB_VIEW] = g_signal_new("close-web-view",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (WebKitWebViewClass, close_web_view),
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__VOID,
- G_TYPE_BOOLEAN, 0);
-
- /**
- * WebKitWebView::navigation-requested:
- * @web_view: the object on which the signal is emitted
- * @frame: the #WebKitWebFrame that required the navigation
- * @request: a #WebKitNetworkRequest
- *
- * Emitted when @frame requests a navigation to another page.
- *
- * Return value: a #WebKitNavigationResponse
- *
- * Deprecated: Use WebKitWebView::navigation-policy-decision-requested
- * instead
- */
- webkit_web_view_signals[NAVIGATION_REQUESTED] = g_signal_new("navigation-requested",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (WebKitWebViewClass, navigation_requested),
- webkit_navigation_request_handled,
- NULL,
- webkit_marshal_ENUM__OBJECT_OBJECT,
- WEBKIT_TYPE_NAVIGATION_RESPONSE, 2,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_NETWORK_REQUEST);
-
- /**
- * WebKitWebView::new-window-policy-decision-requested:
- * @web_view: the object on which the signal is emitted
- * @frame: the #WebKitWebFrame that required the navigation
- * @request: a #WebKitNetworkRequest
- * @navigation_action: a #WebKitWebNavigationAction
- * @policy_decision: a #WebKitWebPolicyDecision
- *
- * Emitted when @frame requests opening a new window. With this
- * signal the browser can use the context of the request to decide
- * about the new window. If the request is not handled the default
- * behavior is to allow opening the new window to load the URI,
- * which will cause a create-web-view signal emission where the
- * browser handles the new window action but without information
- * of the context that caused the navigation. The following
- * navigation-policy-decision-requested emissions will load the
- * page after the creation of the new window just with the
- * information of this new navigation context, without any
- * information about the action that made this new window to be
- * opened.
- *
- * Notice that if you return TRUE, meaning that you handled the
- * signal, you are expected to have decided what to do, by calling
- * webkit_web_policy_decision_ignore(),
- * webkit_web_policy_decision_use(), or
- * webkit_web_policy_decision_download() on the @policy_decision
- * object.
- *
- * Return value: %TRUE if a decision was made, %FALSE to have the
- * default behavior apply
- *
- * Since: 1.1.4
- */
- webkit_web_view_signals[NEW_WINDOW_POLICY_DECISION_REQUESTED] = g_signal_new("new-window-policy-decision-requested",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__OBJECT_OBJECT_OBJECT_OBJECT,
- G_TYPE_BOOLEAN, 4,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_NETWORK_REQUEST,
- WEBKIT_TYPE_WEB_NAVIGATION_ACTION,
- WEBKIT_TYPE_WEB_POLICY_DECISION);
-
- /**
- * WebKitWebView::navigation-policy-decision-requested:
- * @web_view: the object on which the signal is emitted
- * @frame: the #WebKitWebFrame that required the navigation
- * @request: a #WebKitNetworkRequest
- * @navigation_action: a #WebKitWebNavigationAction
- * @policy_decision: a #WebKitWebPolicyDecision
- *
- * Emitted when @frame requests a navigation to another page.
- * If this signal is not handled, the default behavior is to allow the
- * navigation.
- *
- * Notice that if you return TRUE, meaning that you handled the
- * signal, you are expected to have decided what to do, by calling
- * webkit_web_policy_decision_ignore(),
- * webkit_web_policy_decision_use(), or
- * webkit_web_policy_decision_download() on the @policy_decision
- * object.
- *
- * Return value: %TRUE if a decision was made, %FALSE to have the
- * default behavior apply
- *
- * Since: 1.0.3
- */
- webkit_web_view_signals[NAVIGATION_POLICY_DECISION_REQUESTED] = g_signal_new("navigation-policy-decision-requested",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__OBJECT_OBJECT_OBJECT_OBJECT,
- G_TYPE_BOOLEAN, 4,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_NETWORK_REQUEST,
- WEBKIT_TYPE_WEB_NAVIGATION_ACTION,
- WEBKIT_TYPE_WEB_POLICY_DECISION);
-
- /**
- * WebKitWebView::mime-type-policy-decision-requested:
- * @web_view: the object on which the signal is emitted
- * @frame: the #WebKitWebFrame that required the policy decision
- * @request: a WebKitNetworkRequest
- * @mimetype: the MIME type attempted to load
- * @policy_decision: a #WebKitWebPolicyDecision
- *
- * Decide whether or not to display the given MIME type. If this
- * signal is not handled, the default behavior is to show the
- * content of the requested URI if WebKit can show this MIME
- * type and the content disposition is not a download; if WebKit
- * is not able to show the MIME type nothing happens.
- *
- * Notice that if you return TRUE, meaning that you handled the
- * signal, you are expected to be aware of the "Content-Disposition"
- * header. A value of "attachment" usually indicates a download
- * regardless of the MIME type, see also
- * soup_message_headers_get_content_disposition(). And you must call
- * webkit_web_policy_decision_ignore(),
- * webkit_web_policy_decision_use(), or
- * webkit_web_policy_decision_download() on the @policy_decision
- * object.
- *
- * Return value: %TRUE if a decision was made, %FALSE to have the
- * default behavior apply
- *
- * Since: 1.0.3
- */
- webkit_web_view_signals[MIME_TYPE_POLICY_DECISION_REQUESTED] = g_signal_new("mime-type-policy-decision-requested",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__OBJECT_OBJECT_STRING_OBJECT,
- G_TYPE_BOOLEAN, 4,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_NETWORK_REQUEST,
- G_TYPE_STRING,
- WEBKIT_TYPE_WEB_POLICY_DECISION);
-
- /**
- * WebKitWebView::window-object-cleared:
- * @web_view: the object on which the signal is emitted
- * @frame: the #WebKitWebFrame to which @window_object belongs
- * @context: the #JSGlobalContextRef holding the global object and other
- * execution state; equivalent to the return value of
- * webkit_web_frame_get_global_context(@frame)
- * @window_object: the #JSObjectRef representing the frame's JavaScript
- * window object
- *
- * Emitted when the JavaScript window object in a #WebKitWebFrame has been
- * cleared in preparation for a new load. This is the preferred place to
- * set custom properties on the window object using the JavaScriptCore API.
- */
- webkit_web_view_signals[WINDOW_OBJECT_CLEARED] = g_signal_new("window-object-cleared",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (WebKitWebViewClass, window_object_cleared),
- NULL,
- NULL,
- webkit_marshal_VOID__OBJECT_POINTER_POINTER,
- G_TYPE_NONE, 3,
- WEBKIT_TYPE_WEB_FRAME,
- G_TYPE_POINTER,
- G_TYPE_POINTER);
-
- /**
- * WebKitWebView::download-requested:
- * @web_view: the object on which the signal is emitted
- * @download: a #WebKitDownload object that lets you control the
- * download process
- *
- * A new Download is being requested. By default, if the signal is
- * not handled, the download is cancelled. If you handle the download
- * and call webkit_download_set_destination_uri(), it will be
- * started for you. If you need to set the destination asynchronously
- * you are responsible for starting or cancelling it yourself.
- *
- * If you intend to handle downloads yourself rather than using
- * the #WebKitDownload helper object you must handle this signal,
- * and return %FALSE.
- *
- * Also, keep in mind that the default policy for WebKitGTK+ is to
- * ignore files with a MIME type that it does not know how to
- * handle, which means this signal won't be emitted in the default
- * setup. One way to trigger downloads is to connect to
- * WebKitWebView::mime-type-policy-decision-requested and call
- * webkit_web_policy_decision_download() on the
- * #WebKitWebPolicyDecision in the parameter list for the kind of
- * files you want your application to download (a common solution
- * is to download anything that WebKit can't handle, which you can
- * figure out by using webkit_web_view_can_show_mime_type()).
- *
- * Return value: TRUE if the download should be performed, %FALSE to
- * cancel it
- *
- * Since: 1.1.2
- */
- webkit_web_view_signals[DOWNLOAD_REQUESTED] = g_signal_new("download-requested",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__OBJECT,
- G_TYPE_BOOLEAN, 1,
- G_TYPE_OBJECT);
-
- /**
- * WebKitWebView::load-started:
- * @web_view: the object on which the signal is emitted
- * @frame: the frame going to do the load
- *
- * When a #WebKitWebFrame begins to load this signal is emitted.
- *
- * Deprecated: Use the "load-status" property instead.
- */
- webkit_web_view_signals[LOAD_STARTED] = g_signal_new("load-started",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_WEB_FRAME);
-
- /**
- * WebKitWebView::load-committed:
- * @web_view: the object on which the signal is emitted
- * @frame: the main frame that received the first data
- *
- * When a #WebKitWebFrame loaded the first data this signal is emitted.
- *
- * Deprecated: Use the "load-status" property instead.
- */
- webkit_web_view_signals[LOAD_COMMITTED] = g_signal_new("load-committed",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_WEB_FRAME);
-
-
- /**
- * WebKitWebView::load-progress-changed:
- * @web_view: the #WebKitWebView
- * @progress: the global progress
- *
- * Deprecated: Use the "progress" property instead.
- */
- webkit_web_view_signals[LOAD_PROGRESS_CHANGED] = g_signal_new("load-progress-changed",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__INT,
- G_TYPE_NONE, 1,
- G_TYPE_INT);
-
- /**
- * WebKitWebView::load-error:
- * @web_view: the object on which the signal is emitted
- * @web_frame: the #WebKitWebFrame
- * @uri: the URI that triggered the error
- * @web_error: the #GError that was triggered
- *
- * An error occurred while loading. By default, if the signal is not
- * handled, the @web_view will display a stock error page. You need to
- * handle the signal if you want to provide your own error page.
- *
- * Since: 1.1.6
- *
- * Return value: %TRUE to stop other handlers from being invoked for the
- * event. %FALSE to propagate the event further.
- */
- webkit_web_view_signals[LOAD_ERROR] = g_signal_new("load-error",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST),
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__OBJECT_STRING_BOXED,
- G_TYPE_BOOLEAN, 3,
- WEBKIT_TYPE_WEB_FRAME,
- G_TYPE_STRING,
- G_TYPE_ERROR);
-
- /**
- * WebKitWebView::load-finished:
- * @web_view: the #WebKitWebView
- * @frame: the #WebKitWebFrame
- *
- * Deprecated: Use the "load-status" property instead.
- */
- webkit_web_view_signals[LOAD_FINISHED] = g_signal_new("load-finished",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_WEB_FRAME);
-
- /**
- * WebKitWebView::onload-event:
- * @web_view: the object on which the signal is emitted
- * @frame: the frame
- *
- * When a #WebKitWebFrame receives an onload event this signal is emitted.
- */
- webkit_web_view_signals[ONLOAD_EVENT] = g_signal_new("onload-event",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_WEB_FRAME);
-
- /**
- * WebKitWebView::title-changed:
- * @web_view: the object on which the signal is emitted
- * @frame: the main frame
- * @title: the new title
- *
- * When a #WebKitWebFrame changes the document title this signal is emitted.
- *
- * Deprecated: 1.1.4: Use "notify::title" instead.
- */
- webkit_web_view_signals[TITLE_CHANGED] = g_signal_new("title-changed",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- webkit_marshal_VOID__OBJECT_STRING,
- G_TYPE_NONE, 2,
- WEBKIT_TYPE_WEB_FRAME,
- G_TYPE_STRING);
-
- /**
- * WebKitWebView::hovering-over-link:
- * @web_view: the object on which the signal is emitted
- * @title: the link's title
- * @uri: the URI the link points to
- *
- * When the cursor is over a link, this signal is emitted.
- */
- webkit_web_view_signals[HOVERING_OVER_LINK] = g_signal_new("hovering-over-link",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- webkit_marshal_VOID__STRING_STRING,
- G_TYPE_NONE, 2,
- G_TYPE_STRING,
- G_TYPE_STRING);
-
- /**
- * WebKitWebView::populate-popup:
- * @web_view: the object on which the signal is emitted
- * @menu: the context menu
- *
- * When a context menu is about to be displayed this signal is emitted.
- *
- * Add menu items to #menu to extend the context menu.
- *
- * Deprecated: 1.10: Use #WebKitWebView::context-menu signal instead.
- */
- webkit_web_view_signals[POPULATE_POPUP] = g_signal_new("populate-popup",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- GTK_TYPE_MENU);
-
- /**
- * WebKitWebView::print-requested:
- * @web_view: the object in which the signal is emitted
- * @web_frame: the frame that is requesting to be printed
- *
- * Emitted when printing is requested by the frame, usually
- * because of a javascript call. When handling this signal you
- * should call webkit_web_frame_print_full() or
- * webkit_web_frame_print() to do the actual printing.
- *
- * The default handler will present a print dialog and carry a
- * print operation. Notice that this means that if you intend to
- * ignore a print request you must connect to this signal, and
- * return %TRUE.
- *
- * Return value: %TRUE if the print request has been handled, %FALSE if
- * the default handler should run
- *
- * Since: 1.1.5
- */
- webkit_web_view_signals[PRINT_REQUESTED] = g_signal_new("print-requested",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__OBJECT,
- G_TYPE_BOOLEAN, 1,
- WEBKIT_TYPE_WEB_FRAME);
-
- webkit_web_view_signals[STATUS_BAR_TEXT_CHANGED] = g_signal_new("status-bar-text-changed",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__STRING,
- G_TYPE_NONE, 1,
- G_TYPE_STRING);
-
- /**
- * WebKitWebView::icon-loaded:
- * @web_view: the object on which the signal is emitted
- * @icon_uri: the URI for the icon
- *
- * This signal is emitted when the main frame has got a favicon.
- * See WebKitIconDatabase::icon-loaded if you want to keep track of
- * icons for child frames.
- *
- * Since: 1.1.18
- */
- webkit_web_view_signals[ICON_LOADED] = g_signal_new("icon-loaded",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__STRING,
- G_TYPE_NONE, 1,
- G_TYPE_STRING);
-
- /**
- * WebKitWebView::console-message:
- * @web_view: the object on which the signal is emitted
- * @message: the message text
- * @line: the line where the error occured
- * @source_id: the source id
- *
- * A JavaScript console message was created.
- *
- * Return value: %TRUE to stop other handlers from being invoked for the
- * event. %FALSE to propagate the event further.
- */
- webkit_web_view_signals[CONSOLE_MESSAGE] = g_signal_new("console-message",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(WebKitWebViewClass, console_message),
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__STRING_INT_STRING,
- G_TYPE_BOOLEAN, 3,
- G_TYPE_STRING, G_TYPE_INT, G_TYPE_STRING);
-
- /**
- * WebKitWebView::script-alert:
- * @web_view: the object on which the signal is emitted
- * @frame: the relevant frame
- * @message: the message text
- *
- * A JavaScript alert dialog was created.
- *
- * Return value: %TRUE to stop other handlers from being invoked for the
- * event. %FALSE to propagate the event further.
- */
- webkit_web_view_signals[SCRIPT_ALERT] = g_signal_new("script-alert",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(WebKitWebViewClass, script_alert),
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__OBJECT_STRING,
- G_TYPE_BOOLEAN, 2,
- WEBKIT_TYPE_WEB_FRAME, G_TYPE_STRING);
-
- /**
- * WebKitWebView::script-confirm:
- * @web_view: the object on which the signal is emitted
- * @frame: the relevant frame
- * @message: the message text
- * @confirmed: a pointer to a #gboolean where the callback should store
- * whether the user confirmed the dialog, when handling this signal
- *
- * A JavaScript confirm dialog was created, providing Yes and No buttons.
- *
- * Return value: %TRUE to stop other handlers from being invoked for the
- * event. %FALSE to propagate the event further.
- */
- webkit_web_view_signals[SCRIPT_CONFIRM] = g_signal_new("script-confirm",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(WebKitWebViewClass, script_confirm),
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__OBJECT_STRING_POINTER,
- G_TYPE_BOOLEAN, 3,
- WEBKIT_TYPE_WEB_FRAME, G_TYPE_STRING, G_TYPE_POINTER);
-
- /**
- * WebKitWebView::script-prompt:
- * @web_view: the object on which the signal is emitted
- * @frame: the relevant frame
- * @message: the message text
- * @default: the default value
- * @text: To be filled with the return value or NULL if the dialog was cancelled.
- *
- * A JavaScript prompt dialog was created, providing an entry to input text.
- *
- * Return value: %TRUE to stop other handlers from being invoked for the
- * event. %FALSE to propagate the event further.
- */
- webkit_web_view_signals[SCRIPT_PROMPT] = g_signal_new("script-prompt",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(WebKitWebViewClass, script_prompt),
- g_signal_accumulator_true_handled,
- NULL,
- webkit_marshal_BOOLEAN__OBJECT_STRING_STRING_STRING,
- G_TYPE_BOOLEAN, 4,
- WEBKIT_TYPE_WEB_FRAME, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_POINTER);
-
- /**
- * WebKitWebView::select-all:
- * @web_view: the object which received the signal
- *
- * The #WebKitWebView::select-all signal is a keybinding signal which gets emitted to
- * select the complete contents of the text view.
- *
- * The default bindings for this signal is Ctrl-a.
- */
- webkit_web_view_signals[::SELECT_ALL] = g_signal_new("select-all",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, select_all),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebView::cut-clipboard:
- * @web_view: the object which received the signal
- *
- * The #WebKitWebView::cut-clipboard signal is a keybinding signal which gets emitted to
- * cut the selection to the clipboard.
- *
- * The default bindings for this signal are Ctrl-x and Shift-Delete.
- */
- webkit_web_view_signals[CUT_CLIPBOARD] = g_signal_new("cut-clipboard",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, cut_clipboard),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebView::copy-clipboard:
- * @web_view: the object which received the signal
- *
- * The #WebKitWebView::copy-clipboard signal is a keybinding signal which gets emitted to
- * copy the selection to the clipboard.
- *
- * The default bindings for this signal are Ctrl-c and Ctrl-Insert.
- */
- webkit_web_view_signals[COPY_CLIPBOARD] = g_signal_new("copy-clipboard",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, copy_clipboard),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebView::paste-clipboard:
- * @web_view: the object which received the signal
- *
- * The #WebKitWebView::paste-clipboard signal is a keybinding signal which gets emitted to
- * paste the contents of the clipboard into the Web view.
- *
- * The default bindings for this signal are Ctrl-v and Shift-Insert.
- */
- webkit_web_view_signals[PASTE_CLIPBOARD] = g_signal_new("paste-clipboard",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, paste_clipboard),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebView::undo:
- * @web_view: the object which received the signal
- *
- * The #WebKitWebView::undo signal is a keybinding signal which gets emitted to
- * undo the last editing command.
- *
- * The default binding for this signal is Ctrl-z
- *
- * Since: 1.1.14
- */
- webkit_web_view_signals[UNDO] = g_signal_new("undo",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, undo),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebView::redo:
- * @web_view: the object which received the signal
- *
- * The #WebKitWebView::redo signal is a keybinding signal which gets emitted to
- * redo the last editing command.
- *
- * The default binding for this signal is Ctrl-Shift-z
- *
- * Since: 1.1.14
- */
- webkit_web_view_signals[REDO] = g_signal_new("redo",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, redo),
- NULL, NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebView::move-cursor:
- * @web_view: the object which received the signal
- * @step: the type of movement, one of #GtkMovementStep
- * @count: an integer indicating the subtype of movement. Currently
- * the permitted values are '1' = forward, '-1' = backwards.
- *
- * The #WebKitWebView::move-cursor will be emitted to apply the
- * cursor movement described by its parameters to the @view.
- *
- * Return value: %TRUE or %FALSE
- *
- * Since: 1.1.4
- */
- webkit_web_view_signals[MOVE_CURSOR] = g_signal_new("move-cursor",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, move_cursor),
- NULL, NULL,
- webkit_marshal_BOOLEAN__ENUM_INT,
- G_TYPE_BOOLEAN, 2,
- GTK_TYPE_MOVEMENT_STEP,
- G_TYPE_INT);
-
- /**
- * WebKitWebView::create-plugin-widget:
- * @web_view: the object which received the signal
- * @mime_type: the mimetype of the requested object
- * @uri: the URI to load
- * @param: a #GHashTable with additional attributes (strings)
- *
- * The #WebKitWebView::create-plugin-widget signal will be emitted to
- * create a plugin widget for embed or object HTML tags. This
- * allows to embed a GtkWidget as a plugin into HTML content. In
- * case of a textual selection of the GtkWidget WebCore will attempt
- * to set the property value of "webkit-widget-is-selected". This can
- * be used to draw a visual indicator of the selection.
- *
- * Return value: (transfer full): a new #GtkWidget, or %NULL
- *
- * Since: 1.1.8
- */
- webkit_web_view_signals[PLUGIN_WIDGET] = g_signal_new("create-plugin-widget",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags) (G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- webkit_signal_accumulator_object_handled,
- NULL,
- webkit_marshal_OBJECT__STRING_STRING_POINTER,
- GTK_TYPE_WIDGET, 3,
- G_TYPE_STRING, G_TYPE_STRING, G_TYPE_HASH_TABLE);
-
- /**
- * WebKitWebView::database-quota-exceeded:
- * @web_view: the object which received the signal
- * @frame: the relevant frame
- * @database: the #WebKitWebDatabase which exceeded the quota of its #WebKitSecurityOrigin
- *
- * The #WebKitWebView::database-quota-exceeded signal will be emitted when
- * a Web Database exceeds the quota of its security origin. This signal
- * may be used to increase the size of the quota before the originating
- * operation fails.
- *
- * Since: 1.1.14
- */
- webkit_web_view_signals[DATABASE_QUOTA_EXCEEDED] = g_signal_new("database-quota-exceeded",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags) (G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- NULL, NULL,
- webkit_marshal_VOID__OBJECT_OBJECT,
- G_TYPE_NONE, 2,
- G_TYPE_OBJECT, G_TYPE_OBJECT);
-
- /**
- * WebKitWebView::resource-request-starting:
- * @web_view: the object which received the signal
- * @web_frame: the #WebKitWebFrame whose load dispatched this request
- * @web_resource: an empty #WebKitWebResource object
- * @request: the #WebKitNetworkRequest that will be dispatched
- * @response: the #WebKitNetworkResponse representing the redirect
- * response, if any
- *
- * Emitted when a request is about to be sent. You can modify the
- * request while handling this signal. You can set the URI in the
- * #WebKitNetworkRequest object itself, and add/remove/replace
- * headers using the #SoupMessage object it carries, if it is
- * present. See webkit_network_request_get_message(). Setting the
- * request URI to "about:blank" will effectively cause the request
- * to load nothing, and can be used to disable the loading of
- * specific resources.
- *
- * Notice that information about an eventual redirect is available
- * in @response's #SoupMessage, not in the #SoupMessage carried by
- * the @request. If @response is %NULL, then this is not a
- * redirected request.
- *
- * The #WebKitWebResource object will be the same throughout all
- * the lifetime of the resource, but the contents may change from
- * inbetween signal emissions.
- *
- * Since: 1.1.14
- */
- webkit_web_view_signals[RESOURCE_REQUEST_STARTING] = g_signal_new("resource-request-starting",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- NULL, NULL,
- webkit_marshal_VOID__OBJECT_OBJECT_OBJECT_OBJECT,
- G_TYPE_NONE, 4,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_WEB_RESOURCE,
- WEBKIT_TYPE_NETWORK_REQUEST,
- WEBKIT_TYPE_NETWORK_RESPONSE);
-
- /**
- * WebKitWebView::geolocation-policy-decision-requested:
- * @web_view: the object on which the signal is emitted
- * @frame: the frame that requests permission
- * @policy_decision: a WebKitGeolocationPolicyDecision
- *
- * This signal is emitted when a @frame wants to obtain the user's
- * location. The decision can be made asynchronously, but you must
- * call g_object_ref() the @policy_decision, and return %TRUE if
- * you are going to handle the request. To actually make the
- * decision you need to call webkit_geolocation_policy_allow() or
- * webkit_geolocation_policy_deny() on @policy_decision.
- *
- * Since: 1.1.23
- */
- webkit_web_view_signals[GEOLOCATION_POLICY_DECISION_REQUESTED] = g_signal_new("geolocation-policy-decision-requested",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST),
- 0,
- NULL, NULL,
- webkit_marshal_BOOLEAN__OBJECT_OBJECT,
- G_TYPE_BOOLEAN, 2,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_GEOLOCATION_POLICY_DECISION);
-
- /**
- * WebKitWebView::geolocation-policy-decision-cancelled:
- * @web_view: the object on which the signal is emitted
- * @frame: the frame that cancels geolocation request.
- *
- * When a @frame wants to cancel geolocation permission it had requested
- * before.
- *
- * Since: 1.1.23
- */
- webkit_web_view_signals[GEOLOCATION_POLICY_DECISION_CANCELLED] = g_signal_new("geolocation-policy-decision-cancelled",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST),
- 0,
- NULL, NULL,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_WEB_FRAME);
-
- /*
- * DOM-related signals. These signals are experimental, for now,
- * and may change API and ABI. Their comments lack one * on
- * purpose, to make them not be catched by gtk-doc.
- */
-
- /**
- * WebKitWebView::document-load-finished:
- * @web_view: the object which received the signal
- * @web_frame: the #WebKitWebFrame whose load dispatched this request
- *
- * Emitted when the DOM document object load is finished for the
- * given frame.
- */
- webkit_web_view_signals[DOCUMENT_LOAD_FINISHED] = g_signal_new("document-load-finished",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- NULL, NULL,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_WEB_FRAME);
-
- /**
- * WebKitWebView::frame-created:
- * @web_view: the object which received the signal
- * @web_frame: the #WebKitWebFrame which was just created.
- *
- * Emitted when a WebKitWebView has created a new frame. This signal will
- * be emitted for all sub-frames created during page load. It will not be
- * emitted for the main frame, which originates in the WebKitWebView constructor
- * and may be accessed at any time using webkit_web_view_get_main_frame.
- *
- * Since: 1.3.4
- */
- webkit_web_view_signals[FRAME_CREATED] = g_signal_new("frame-created",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- NULL, NULL,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_WEB_FRAME);
-
- /**
- * WebKitWebView::run-file-chooser:
- * @web_view: the #WebKitWebView on which the signal is emitted
- * @request: a #WebKitFileChooserRequest
- *
- * This signal is emitted when the user interacts with a &lt;input
- * type='file' /&gt; HTML element, requesting from WebKit to show
- * a dialog to select one or more files to be uploaded. To let the
- * application know the details of the file chooser, as well as to
- * allow the client application to either cancel the request or
- * perform an actual selection of files, the signal will pass an
- * instance of the #WebKitFileChooserRequest in the @request
- * argument.
- *
- * The default signal handler will asynchronously run a regular
- * #GtkFileChooserDialog for the user to interact with.
- *
- * If this signal is to be handled asynchronously, you must
- * call g_object_ref() on the @request, and return %TRUE to indicate
- * that the request is being handled. When you are ready to complete the
- * request, call webkit_file_chooser_request_select_files().
- *
- * Returns: %TRUE to stop other handlers from being invoked for the event.
- * %FALSE to propagate the event further.
- *
- */
- webkit_web_view_signals[RUN_FILE_CHOOSER] = g_signal_new("run-file-chooser",
- G_TYPE_FROM_CLASS(webViewClass),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(WebKitWebViewClass, run_file_chooser),
- g_signal_accumulator_true_handled, 0 /* accumulator data */,
- webkit_marshal_BOOLEAN__OBJECT,
- G_TYPE_BOOLEAN, 1, /* number of parameters */
- WEBKIT_TYPE_FILE_CHOOSER_REQUEST);
-
- /**
- * WebKitWebView::should-begin-editing:
- * @web_view: the #WebKitWebView on which the signal is emitted
- * @range: a #WebKitDOMRange
- *
- */
- webkit_web_view_signals[SHOULD_BEGIN_EDITING] = g_signal_new("should-begin-editing",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, should_allow_editing_action),
- g_signal_accumulator_first_wins, 0,
- webkit_marshal_BOOLEAN__OBJECT,
- G_TYPE_BOOLEAN, 1,
- WEBKIT_TYPE_DOM_RANGE);
-
- /**
- * WebKitWebView::should-end-editing:
- * @web_view: the #WebKitWebView on which the signal is emitted
- * @range: a #WebKitDOMRange
- *
- */
- webkit_web_view_signals[SHOULD_END_EDITING] = g_signal_new("should-end-editing",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, should_allow_editing_action),
- g_signal_accumulator_first_wins, 0,
- webkit_marshal_BOOLEAN__OBJECT,
- G_TYPE_BOOLEAN, 1,
- WEBKIT_TYPE_DOM_RANGE);
-
- /**
- * WebKitWebView::should-insert-node:
- * @web_view: the #WebKitWebView on which the signal is emitted
- * @node: a #WebKitDOMNode
- * @range: a #WebKitDOMRange
- * @action: a #WebKitInsertAction
- *
- */
- webkit_web_view_signals[SHOULD_INSERT_NODE] = g_signal_new("should-insert-node",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, should_allow_editing_action),
- g_signal_accumulator_first_wins, 0,
- webkit_marshal_BOOLEAN__OBJECT_OBJECT_ENUM,
- G_TYPE_BOOLEAN, 3,
- WEBKIT_TYPE_DOM_NODE,
- WEBKIT_TYPE_DOM_RANGE,
- WEBKIT_TYPE_INSERT_ACTION);
-
- /**
- * WebKitWebView::should-insert-text:
- * @web_view: the #WebKitWebView on which the signal is emitted
- * @string: a string
- * @range: a #WebKitDOMRange
- * @action: a #WebKitInsertAction
- *
- */
- webkit_web_view_signals[SHOULD_INSERT_TEXT] = g_signal_new("should-insert-text",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, should_allow_editing_action),
- g_signal_accumulator_first_wins, 0,
- webkit_marshal_BOOLEAN__STRING_OBJECT_ENUM,
- G_TYPE_BOOLEAN, 3,
- G_TYPE_STRING,
- WEBKIT_TYPE_DOM_RANGE,
- WEBKIT_TYPE_INSERT_ACTION);
-
- // Only exists for GTK+ API compatibility.
- /**
- * WebKitWebView::should-delete-range:
- * @web_view: the #WebKitWebView on which the signal is emitted
- * @range: a #WebKitDOMRange
- *
- */
- webkit_web_view_signals[SHOULD_DELETE_RANGE] = g_signal_new("should-delete-range",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, should_allow_editing_action),
- g_signal_accumulator_first_wins, 0,
- webkit_marshal_BOOLEAN__OBJECT,
- G_TYPE_BOOLEAN, 1,
- WEBKIT_TYPE_DOM_RANGE);
-
- /**
- * WebKitWebView::should-show-delete-interface-for-element:
- * @web_view: the #WebKitWebView on which the signal is emitted
- * @element: a #WebKitDOMHtmlElement
- *
- */
- webkit_web_view_signals[SHOULD_SHOW_DELETE_INTERFACE_FOR_ELEMENT] = g_signal_new("should-show-delete-interface-for-element",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- g_signal_accumulator_first_wins, 0,
- webkit_marshal_BOOLEAN__OBJECT,
- G_TYPE_BOOLEAN, 1,
- WEBKIT_TYPE_DOM_HTML_ELEMENT);
-
- /**
- * WebKitWebView::should-change-selected-range:
- * @web_view: the #WebKitWebView on which the signal is emitted
- * @fromRange: a #WebKitDOMRange
- * @toRange: a #WebKitDOMRange
- * @affinity: a #WebKitElectionAffinity
- * @stillSelecting: bool
- *
- */
- webkit_web_view_signals[SHOULD_CHANGE_SELECTED_RANGE] = g_signal_new("should-change-selected-range",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, should_allow_editing_action),
- g_signal_accumulator_first_wins, 0,
- webkit_marshal_BOOLEAN__OBJECT_OBJECT_ENUM_BOOLEAN,
- G_TYPE_BOOLEAN, 4,
- WEBKIT_TYPE_DOM_RANGE,
- WEBKIT_TYPE_DOM_RANGE,
- WEBKIT_TYPE_SELECTION_AFFINITY,
- G_TYPE_BOOLEAN);
-
- /**
- * WebKitWebView::should-apply-style:
- * @web_view: the #WebKitWebView on which the signal is emitted
- * @set: a #WebKitDOMCSSStyleDeclaration
- * @range: a #WebKitDOMRange
- *
- */
- webkit_web_view_signals[SHOULD_APPLY_STYLE] = g_signal_new("should-apply-style",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, should_allow_editing_action),
- g_signal_accumulator_first_wins, 0,
- webkit_marshal_BOOLEAN__OBJECT_OBJECT,
- G_TYPE_BOOLEAN, 2,
- WEBKIT_TYPE_DOM_CSS_STYLE_DECLARATION,
- WEBKIT_TYPE_DOM_RANGE);
-
- /**
- * WebKitWebView::editing-began:
- * @web_view: the #WebKitWebView on which the signal is emitted
- *
- */
- webkit_web_view_signals[EDITING_BEGAN] = g_signal_new("editing-began",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebView::user-changed-contents:
- * @web_view: the #WebKitWebView on which the signal is emitted
- *
- */
- webkit_web_view_signals[USER_CHANGED_CONTENTS] = g_signal_new("user-changed-contents",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebView::editing-ended:
- * @web_view: the #WebKitWebView on which the signal is emitted
- *
- */
- webkit_web_view_signals[EDITING_ENDED] = g_signal_new("editing-ended",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /**
- * WebKitWebView::selection-changed:
- * @web_view: the #WebKitWebView on which the signal is emitted
- *
- */
- webkit_web_view_signals[SELECTION_CHANGED] = g_signal_new("selection-changed",
- G_TYPE_FROM_CLASS(webViewClass),
- static_cast<GSignalFlags>(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
-
- /*
- * WebKitWebView::viewport-attributes-recompute-requested:
- * @web_view: the object which received the signal
- * @viewport_attributes: the #WebKitViewportAttributes which has the viewport attributes.
- *
- * The #WebKitWebView::viewport-attributes-recompute-requested
- * signal will be emitted when a page with a viewport meta tag
- * loads and when webkit_viewport_attributes_recompute is called.
- *
- * The #WebKitViewportAttributes will have device size, available size,
- * desktop width, and device DPI pre-filled by values that make sense
- * for the current screen and widget, but you can override those values
- * if you have special requirements (for instance, if you made your
- * widget bigger than the available visible area, you should override
- * the available-width and available-height properties to the actual
- * visible area).
- *
- * Since: 1.3.8
- */
- webkit_web_view_signals[VIEWPORT_ATTRIBUTES_RECOMPUTE_REQUESTED] = g_signal_new("viewport-attributes-recompute-requested",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_VIEWPORT_ATTRIBUTES);
-
- /*
- * WebKitWebView::viewport-attributes-changed:
- * @web_view: the object which received the signal
- * @viewport_attributes: the #WebKitViewportAttributes which has the viewport attributes.
- *
- * The #WebKitWebView::viewport-attributes-changed signal will be emitted
- * after the emission of #WebKitWebView::viewport-attributes-recompute-requested
- * and the subsequent viewport attribute recomputation. At this point,
- * if the #WebKitViewportAttributes are valid, the viewport attributes are available.
- *
- * Since: 1.3.8
- */
- webkit_web_view_signals[VIEWPORT_ATTRIBUTES_CHANGED] = g_signal_new("viewport-attributes-changed",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- 0,
- 0, 0,
- g_cclosure_marshal_VOID__OBJECT,
- G_TYPE_NONE, 1,
- WEBKIT_TYPE_VIEWPORT_ATTRIBUTES);
-
- /**
- * WebKitWebView::entering-fullscreen:
- * @web_view: the #WebKitWebView on which the signal is emitted.
- * @element: the #WebKitDOMHTMLElement which has requested full screen display.
- *
- * Emitted when JavaScript code calls
- * <function>element.webkitRequestFullScreen</function>. If the
- * signal is not handled the WebView will proceed to full screen
- * its top level window. This signal can be used by client code to
- * request permission to the user prior doing the full screen
- * transition and eventually prepare the top-level window
- * (e.g. hide some widgets that would otherwise be part of the
- * full screen window).
- *
- * Returns: %TRUE to stop other handlers from being invoked for the event.
- * %FALSE to continue emission of the event.
- *
- * Since: 1.9.0
- */
- webkit_web_view_signals[ENTERING_FULLSCREEN] = g_signal_new("entering-fullscreen",
- G_TYPE_FROM_CLASS(webViewClass),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(WebKitWebViewClass, entering_fullscreen),
- g_signal_accumulator_true_handled, 0,
- webkit_marshal_BOOLEAN__OBJECT,
- G_TYPE_BOOLEAN, 1, WEBKIT_TYPE_DOM_HTML_ELEMENT);
-
-
- /**
- * WebKitWebView::leaving-fullscreen:
- * @web_view: the #WebKitWebView on which the signal is emitted.
- * @element: the #WebKitDOMHTMLElement which is currently displayed full screen.
- *
- * Emitted when the WebView is about to restore its top level
- * window out of its full screen state. This signal can be used by
- * client code to restore widgets hidden during the
- * entering-fullscreen stage for instance.
- *
- * Returns: %TRUE to stop other handlers from being invoked for the event.
- * %FALSE to continue emission of the event.
- *
- * Since: 1.9.0
- */
- webkit_web_view_signals[LEAVING_FULLSCREEN] = g_signal_new("leaving-fullscreen",
- G_TYPE_FROM_CLASS(webViewClass),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(WebKitWebViewClass, leaving_fullscreen),
- g_signal_accumulator_true_handled, 0,
- webkit_marshal_BOOLEAN__OBJECT,
- G_TYPE_BOOLEAN, 1, WEBKIT_TYPE_DOM_HTML_ELEMENT);
-
- /**
- * WebKitWebView::resource-response-received:
- * @web_view: the object which received the signal
- * @web_frame: the #WebKitWebFrame the response was received for
- * @web_resource: the #WebKitWebResource being loaded
- * @response: the #WebKitNetworkResponse that was received
- *
- * Emitted when the first byte of data arrives
- *
- * Since: 1.7.5
- */
- webkit_web_view_signals[RESOURCE_RESPONSE_RECEIVED] = g_signal_new("resource-response-received",
- G_TYPE_FROM_CLASS(webViewClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- webkit_marshal_VOID__OBJECT_OBJECT_OBJECT,
- G_TYPE_NONE, 3,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_WEB_RESOURCE,
- WEBKIT_TYPE_NETWORK_RESPONSE);
-
- /**
- * WebKitWebView::resource-load-finished:
- * @web_view: the object which received the signal
- * @web_frame: the #WebKitWebFrame the response was received for
- * @web_resource: the #WebKitWebResource that was loaded
- *
- * Emitted when all the data for the resource was loaded
- *
- * Since: 1.7.5
- */
- webkit_web_view_signals[RESOURCE_LOAD_FINISHED] = g_signal_new("resource-load-finished",
- G_TYPE_FROM_CLASS(webViewClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- webkit_marshal_VOID__OBJECT_OBJECT,
- G_TYPE_NONE, 2,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_WEB_RESOURCE);
-
- /**
- * WebKitWebView::resource-content-length-received:
- * @web_view: the object which received the signal
- * @web_frame: the #WebKitWebFrame the response was received for
- * @web_resource: the #WebKitWebResource that was loaded
- * @length_received: the amount of data received since the last signal emission
- *
- * Emitted when new resource data has been received. The
- * @length_received variable stores the amount of bytes received
- * since the last time this signal was emitted. This is useful to
- * provide progress information about the resource load operation.
- *
- * Since: 1.7.5
- */
- webkit_web_view_signals[RESOURCE_CONTENT_LENGTH_RECEIVED] = g_signal_new("resource-content-length-received",
- G_TYPE_FROM_CLASS(webViewClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- webkit_marshal_VOID__OBJECT_OBJECT_INT,
- G_TYPE_NONE, 3,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_WEB_RESOURCE,
- G_TYPE_INT);
-
- /**
- * WebKitWebView::resource-load-failed:
- * @web_view: the object which received the signal
- * @web_frame: the #WebKitWebFrame the response was received for
- * @web_resource: the #WebKitWebResource that was loaded
- * @error: the #GError that was triggered
- *
- * Invoked when a resource failed to load
- *
- * Since: 1.7.5
- */
- webkit_web_view_signals[RESOURCE_LOAD_FAILED] = g_signal_new("resource-load-failed",
- G_TYPE_FROM_CLASS(webViewClass),
- G_SIGNAL_RUN_LAST,
- 0,
- 0, 0,
- webkit_marshal_VOID__OBJECT_OBJECT_BOXED,
- G_TYPE_NONE, 3,
- WEBKIT_TYPE_WEB_FRAME,
- WEBKIT_TYPE_WEB_RESOURCE,
- G_TYPE_ERROR);
-
- /**
- * WebKitWebView::context-menu:
- * @web_view: the object which received the signal
- * @default_menu: the default context menu
- * @hit_test_result: a #WebKitHitTestResult with the context of the current position.
- * @triggered_with_keyboard: %TRUE if the context menu was triggered using the keyboard
- *
- * Emmited when a context menu is about to be displayed to give the application
- * a chance to create and handle its own context menu. If you only want to add custom
- * options to the default context menu you can simply modify the given @default_menu.
- *
- * When @triggered_with_keyboard is %TRUE the coordinates of the given @hit_test_result should be
- * used to position the popup menu. When the context menu has been triggered by a
- * mouse event you could either use the @hit_test_result coordinates or pass %NULL
- * to the #GtkMenuPositionFunc parameter of gtk_menu_popup() function.
- * Note that coordinates of @hit_test_result are relative to @web_view window.
- *
- * If your application will create and display its own popup menu, %TRUE should be returned.
- * Note that when the context menu is handled by the application, the #WebKitWebSettings:enable-default-context-menu
- * setting will be ignored and the #WebKitWebView::populate-popup signal won't be emitted.
- * If you don't want any context menu to be shown, you can simply connect to this signal
- * and return %TRUE without doing anything else.
- *
- * Since: 1.10
- */
- webkit_web_view_signals[CONTEXT_MENU] = g_signal_new("context-menu",
- G_TYPE_FROM_CLASS(webViewClass),
- G_SIGNAL_RUN_LAST,
- 0, 0, 0,
- webkit_marshal_BOOLEAN__OBJECT_OBJECT_BOOLEAN,
- G_TYPE_BOOLEAN, 3,
- GTK_TYPE_WIDGET,
- WEBKIT_TYPE_HIT_TEST_RESULT,
- G_TYPE_BOOLEAN);
-
- /*
- * implementations of virtual methods
- */
- webViewClass->create_web_view = webkit_web_view_real_create_web_view;
- webViewClass->web_view_ready = webkit_web_view_real_web_view_ready;
- webViewClass->close_web_view = webkit_web_view_real_close_web_view;
- webViewClass->navigation_requested = webkit_web_view_real_navigation_requested;
- webViewClass->window_object_cleared = webkit_web_view_real_window_object_cleared;
- webViewClass->choose_file = webkit_web_view_real_choose_file;
- webViewClass->script_alert = webkit_web_view_real_script_alert;
- webViewClass->script_confirm = webkit_web_view_real_script_confirm;
- webViewClass->script_prompt = webkit_web_view_real_script_prompt;
- webViewClass->console_message = webkit_web_view_real_console_message;
- webViewClass->select_all = webkit_web_view_real_select_all;
- webViewClass->cut_clipboard = webkit_web_view_real_cut_clipboard;
- webViewClass->copy_clipboard = webkit_web_view_real_copy_clipboard;
- webViewClass->paste_clipboard = webkit_web_view_real_paste_clipboard;
- webViewClass->undo = webkit_web_view_real_undo;
- webViewClass->redo = webkit_web_view_real_redo;
- webViewClass->move_cursor = webkit_web_view_real_move_cursor;
- webViewClass->should_allow_editing_action = webkit_web_view_real_should_allow_editing_action;
- webViewClass->entering_fullscreen = webkit_web_view_real_entering_fullscreen;
- webViewClass->leaving_fullscreen = webkit_web_view_real_leaving_fullscreen;
- webViewClass->run_file_chooser = webkitWebViewRealRunFileChooser;
-
- GObjectClass* objectClass = G_OBJECT_CLASS(webViewClass);
- objectClass->dispose = webkit_web_view_dispose;
- objectClass->finalize = webkit_web_view_finalize;
- objectClass->get_property = webkit_web_view_get_property;
- objectClass->set_property = webkit_web_view_set_property;
-
- GtkWidgetClass* widgetClass = GTK_WIDGET_CLASS(webViewClass);
- widgetClass->realize = webkit_web_view_realize;
-#ifdef GTK_API_VERSION_2
- widgetClass->expose_event = webkit_web_view_expose_event;
-#else
- widgetClass->draw = webkit_web_view_draw;
-#endif
- widgetClass->key_press_event = webkit_web_view_key_press_event;
- widgetClass->key_release_event = webkit_web_view_key_release_event;
- widgetClass->button_press_event = webkit_web_view_button_press_event;
- widgetClass->button_release_event = webkit_web_view_button_release_event;
- widgetClass->motion_notify_event = webkit_web_view_motion_event;
- widgetClass->scroll_event = webkit_web_view_scroll_event;
- widgetClass->size_allocate = webkit_web_view_size_allocate;
-#ifdef GTK_API_VERSION_2
- widgetClass->size_request = webkit_web_view_size_request;
-#else
- widgetClass->get_preferred_width = webkit_web_view_get_preferred_width;
- widgetClass->get_preferred_height = webkit_web_view_get_preferred_height;
-#endif
-#if ENABLE(CONTEXT_MENUS)
- widgetClass->popup_menu = webkit_web_view_popup_menu_handler;
-#else
- widgetClass->popup_menu = NULL;
-#endif
- widgetClass->grab_focus = webkit_web_view_grab_focus;
- widgetClass->focus_in_event = webkit_web_view_focus_in_event;
- widgetClass->focus_out_event = webkit_web_view_focus_out_event;
- widgetClass->get_accessible = webkit_web_view_get_accessible;
- widgetClass->screen_changed = webkit_web_view_screen_changed;
-#if ENABLE(DRAG_SUPPORT)
- widgetClass->drag_end = webkit_web_view_drag_end;
- widgetClass->drag_data_get = webkit_web_view_drag_data_get;
- widgetClass->drag_motion = webkit_web_view_drag_motion;
- widgetClass->drag_leave = webkit_web_view_drag_leave;
- widgetClass->drag_drop = webkit_web_view_drag_drop;
- widgetClass->drag_data_received = webkit_web_view_drag_data_received;
-#else
- widgetClass->drag_end = NULL;
- widgetClass->drag_data_get = NULL;
- widgetClass->drag_motion = NULL;
- widgetClass->drag_leave = NULL;
- widgetClass->drag_drop = NULL;
- widgetClass->drag_data_received = NULL;
-#endif
- widgetClass->query_tooltip = webkit_web_view_query_tooltip;
- widgetClass->show_help = webkit_web_view_show_help;
- widgetClass->map = webkitWebViewMap;
-
- GtkContainerClass* containerClass = GTK_CONTAINER_CLASS(webViewClass);
- containerClass->add = webkit_web_view_container_add;
- containerClass->remove = webkit_web_view_container_remove;
- containerClass->forall = webkit_web_view_container_forall;
-
- /*
- * make us scrollable (e.g. addable to a GtkScrolledWindow)
- */
-#ifdef GTK_API_VERSION_2
- webViewClass->set_scroll_adjustments = webkit_web_view_set_scroll_adjustments;
- GTK_WIDGET_CLASS(webViewClass)->set_scroll_adjustments_signal = g_signal_new("set-scroll-adjustments",
- G_TYPE_FROM_CLASS(webViewClass),
- (GSignalFlags)(G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION),
- G_STRUCT_OFFSET(WebKitWebViewClass, set_scroll_adjustments),
- NULL, NULL,
- webkit_marshal_VOID__OBJECT_OBJECT,
- G_TYPE_NONE, 2,
- GTK_TYPE_ADJUSTMENT, GTK_TYPE_ADJUSTMENT);
-#else
- g_object_class_override_property(objectClass, PROP_HADJUSTMENT, "hadjustment");
- g_object_class_override_property(objectClass, PROP_VADJUSTMENT, "vadjustment");
- g_object_class_override_property(objectClass, PROP_HSCROLL_POLICY, "hscroll-policy");
- g_object_class_override_property(objectClass, PROP_VSCROLL_POLICY, "vscroll-policy");
-#endif
-
- /*
- * Key bindings
- */
-
- binding_set = gtk_binding_set_by_class(webViewClass);
-
- gtk_binding_entry_add_signal(binding_set, GDK_a, GDK_CONTROL_MASK,
- "select_all", 0);
-
- /* Cut/copy/paste */
-
- gtk_binding_entry_add_signal(binding_set, GDK_x, GDK_CONTROL_MASK,
- "cut_clipboard", 0);
- gtk_binding_entry_add_signal(binding_set, GDK_c, GDK_CONTROL_MASK,
- "copy_clipboard", 0);
- gtk_binding_entry_add_signal(binding_set, GDK_v, GDK_CONTROL_MASK,
- "paste_clipboard", 0);
- gtk_binding_entry_add_signal(binding_set, GDK_z, GDK_CONTROL_MASK,
- "undo", 0);
- gtk_binding_entry_add_signal(binding_set, GDK_z, static_cast<GdkModifierType>(GDK_CONTROL_MASK | GDK_SHIFT_MASK),
- "redo", 0);
-
- gtk_binding_entry_add_signal(binding_set, GDK_Delete, GDK_SHIFT_MASK,
- "cut_clipboard", 0);
- gtk_binding_entry_add_signal(binding_set, GDK_Insert, GDK_CONTROL_MASK,
- "copy_clipboard", 0);
- gtk_binding_entry_add_signal(binding_set, GDK_Insert, GDK_SHIFT_MASK,
- "paste_clipboard", 0);
-
- /* Movement */
-
- gtk_binding_entry_add_signal(binding_set, GDK_Down, static_cast<GdkModifierType>(0),
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_DISPLAY_LINES,
- G_TYPE_INT, 1);
- gtk_binding_entry_add_signal(binding_set, GDK_Up, static_cast<GdkModifierType>(0),
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_DISPLAY_LINES,
- G_TYPE_INT, -1);
- gtk_binding_entry_add_signal(binding_set, GDK_Right, static_cast<GdkModifierType>(0),
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_VISUAL_POSITIONS,
- G_TYPE_INT, 1);
- gtk_binding_entry_add_signal(binding_set, GDK_Left, static_cast<GdkModifierType>(0),
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_VISUAL_POSITIONS,
- G_TYPE_INT, -1);
- gtk_binding_entry_add_signal(binding_set, GDK_space, static_cast<GdkModifierType>(0),
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_PAGES,
- G_TYPE_INT, 1);
- gtk_binding_entry_add_signal(binding_set, GDK_space, GDK_SHIFT_MASK,
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_PAGES,
- G_TYPE_INT, -1);
- gtk_binding_entry_add_signal(binding_set, GDK_Page_Down, static_cast<GdkModifierType>(0),
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_PAGES,
- G_TYPE_INT, 1);
- gtk_binding_entry_add_signal(binding_set, GDK_Page_Up, static_cast<GdkModifierType>(0),
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_PAGES,
- G_TYPE_INT, -1);
- gtk_binding_entry_add_signal(binding_set, GDK_End, static_cast<GdkModifierType>(0),
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_BUFFER_ENDS,
- G_TYPE_INT, 1);
- gtk_binding_entry_add_signal(binding_set, GDK_Home, static_cast<GdkModifierType>(0),
- "move-cursor", 2,
- G_TYPE_ENUM, GTK_MOVEMENT_BUFFER_ENDS,
- G_TYPE_INT, -1);
-
- /*
- * properties
- */
-
- /**
- * WebKitWebView:title:
- *
- * Returns: the @web_view's document title.
- *
- * Since: 1.1.4
- */
- g_object_class_install_property(objectClass, PROP_TITLE,
- g_param_spec_string("title",
- _("Title"),
- _("Returns the @web_view's document title"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebView:uri:
- *
- * Returns: the current URI of the contents displayed by the @web_view.
- *
- * Since: 1.1.4
- */
- g_object_class_install_property(objectClass, PROP_URI,
- g_param_spec_string("uri",
- _("URI"),
- _("Returns the current URI of the contents displayed by the @web_view"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebView:copy-target-list:
- *
- * The list of targets this web view supports for clipboard copying.
- *
- * Since: 1.0.2
- */
- g_object_class_install_property(objectClass, PROP_COPY_TARGET_LIST,
- g_param_spec_boxed("copy-target-list",
- _("Copy target list"),
- _("The list of targets this web view supports for clipboard copying"),
- GTK_TYPE_TARGET_LIST,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebView:paste-target-list:
- *
- * The list of targets this web view supports for clipboard pasting.
- *
- * Since: 1.0.2
- */
- g_object_class_install_property(objectClass, PROP_PASTE_TARGET_LIST,
- g_param_spec_boxed("paste-target-list",
- _("Paste target list"),
- _("The list of targets this web view supports for clipboard pasting"),
- GTK_TYPE_TARGET_LIST,
- WEBKIT_PARAM_READABLE));
-
- g_object_class_install_property(objectClass, PROP_SETTINGS,
- g_param_spec_object("settings",
- _("Settings"),
- _("An associated WebKitWebSettings instance"),
- WEBKIT_TYPE_WEB_SETTINGS,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitWebView:web-inspector:
- *
- * The associated WebKitWebInspector instance.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(objectClass, PROP_WEB_INSPECTOR,
- g_param_spec_object("web-inspector",
- _("Web Inspector"),
- _("The associated WebKitWebInspector instance"),
- WEBKIT_TYPE_WEB_INSPECTOR,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebView:viewport-attributes:
- *
- * The associated #WebKitViewportAttributes instance.
- *
- * Since: 1.3.8
- */
- g_object_class_install_property(objectClass, PROP_VIEWPORT_ATTRIBUTES,
- g_param_spec_object("viewport-attributes",
- _("Viewport Attributes"),
- _("The associated WebKitViewportAttributes instance"),
- WEBKIT_TYPE_VIEWPORT_ATTRIBUTES,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebView:window-features:
- *
- * An associated WebKitWebWindowFeatures instance.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(objectClass, PROP_WINDOW_FEATURES,
- g_param_spec_object("window-features",
- "Window Features",
- "An associated WebKitWebWindowFeatures instance",
- WEBKIT_TYPE_WEB_WINDOW_FEATURES,
- WEBKIT_PARAM_READWRITE));
-
- g_object_class_install_property(objectClass, PROP_EDITABLE,
- g_param_spec_boolean("editable",
- _("Editable"),
- _("Whether content can be modified by the user"),
- FALSE,
- WEBKIT_PARAM_READWRITE));
-
- g_object_class_install_property(objectClass, PROP_TRANSPARENT,
- g_param_spec_boolean("transparent",
- _("Transparent"),
- _("Whether content has a transparent background"),
- FALSE,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitWebView:zoom-level:
- *
- * The level of zoom of the content.
- *
- * Since: 1.0.1
- */
- g_object_class_install_property(objectClass, PROP_ZOOM_LEVEL,
- g_param_spec_float("zoom-level",
- _("Zoom level"),
- _("The level of zoom of the content"),
- G_MINFLOAT,
- G_MAXFLOAT,
- 1.0f,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitWebView:full-content-zoom:
- *
- * Whether the full content is scaled when zooming.
- *
- * Since: 1.0.1
- */
- g_object_class_install_property(objectClass, PROP_FULL_CONTENT_ZOOM,
- g_param_spec_boolean("full-content-zoom",
- _("Full content zoom"),
- _("Whether the full content is scaled when zooming"),
- FALSE,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitWebView:encoding:
- *
- * The default encoding of the web view.
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(objectClass, PROP_ENCODING,
- g_param_spec_string("encoding",
- _("Encoding"),
- _("The default encoding of the web view"),
- NULL,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebView:custom-encoding:
- *
- * The custom encoding of the web view.
- *
- * Since: 1.1.2
- */
- g_object_class_install_property(objectClass, PROP_CUSTOM_ENCODING,
- g_param_spec_string("custom-encoding",
- _("Custom Encoding"),
- _("The custom encoding of the web view"),
- NULL,
- WEBKIT_PARAM_READWRITE));
-
- /**
- * WebKitWebView:load-status:
- *
- * Determines the current status of the load.
- *
- * Connect to "notify::load-status" to monitor loading.
- *
- * Some versions of WebKitGTK+ emitted this signal for the default
- * error page, while loading it. This behavior was considered bad,
- * because it was essentially exposing an implementation
- * detail. From 1.1.19 onwards this signal is no longer emitted for
- * the default error pages, but keep in mind that if you override
- * the error pages by using webkit_web_frame_load_alternate_string()
- * the signals will be emitted.
- *
- * Since: 1.1.7
- */
- g_object_class_install_property(objectClass, PROP_LOAD_STATUS,
- g_param_spec_enum("load-status",
- "Load Status",
- "Determines the current status of the load",
- WEBKIT_TYPE_LOAD_STATUS,
- WEBKIT_LOAD_FINISHED,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebView:progress:
- *
- * Determines the current progress of the load.
- *
- * Since: 1.1.7
- */
- g_object_class_install_property(objectClass, PROP_PROGRESS,
- g_param_spec_double("progress",
- "Progress",
- "Determines the current progress of the load",
- 0.0, 1.0, 1.0,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebView:icon-uri:
- *
- * The URI for the favicon for the #WebKitWebView.
- *
- * Since: 1.1.18
- */
- g_object_class_install_property(objectClass, PROP_ICON_URI,
- g_param_spec_string("icon-uri",
- _("Icon URI"),
- _("The URI for the favicon for the #WebKitWebView."),
- NULL,
- WEBKIT_PARAM_READABLE));
- /**
- * WebKitWebView:im-context:
- *
- * The GtkIMMulticontext for the #WebKitWebView.
- *
- * This is the input method context used for all text entry widgets inside
- * the #WebKitWebView. It can be used to generate context menu items for
- * controlling the active input method.
- *
- * Since: 1.1.20
- */
- g_object_class_install_property(objectClass, PROP_IM_CONTEXT,
- g_param_spec_object("im-context",
- "IM Context",
- "The GtkIMMultiContext for the #WebKitWebView.",
- GTK_TYPE_IM_CONTEXT,
- WEBKIT_PARAM_READABLE));
-
- /**
- * WebKitWebView:view-mode:
- *
- * The "view-mode" media feature for the #WebKitWebView.
- *
- * The "view-mode" media feature is additional information for web
- * applications about how the application is running, when it comes
- * to user experience. Whether the application is running inside a
- * regular browser window, in a dedicated window, fullscreen, for
- * instance.
- *
- * This property stores a %WebKitWebViewViewMode value that matches
- * the "view-mode" media feature the web application will see.
- *
- * See http://www.w3.org/TR/view-mode/ for more information.
- *
- * Since: 1.3.4
- */
- g_object_class_install_property(objectClass, PROP_VIEW_MODE,
- g_param_spec_enum("view-mode",
- "View Mode",
- "The view-mode media feature for the #WebKitWebView.",
- WEBKIT_TYPE_WEB_VIEW_VIEW_MODE,
- WEBKIT_WEB_VIEW_VIEW_MODE_WINDOWED,
- WEBKIT_PARAM_READWRITE));
-
- // This property should be undocumented for now. It's only used by DRT.
- g_object_class_install_property(objectClass, PROP_SELF_SCROLLING,
- g_param_spec_boolean("self-scrolling", "Self-scrolling",
- "Whether or not this WebView draws its own scrollbars.",
- FALSE,
- static_cast<GParamFlags>(G_PARAM_CONSTRUCT_ONLY | WEBKIT_PARAM_READWRITE)));
-
- g_type_class_add_private(webViewClass, sizeof(WebKitWebViewPrivate));
-}
-
-static void webkit_web_view_update_settings(WebKitWebView* webView)
-{
- WebKitWebSettingsPrivate* settingsPrivate = webView->priv->webSettings->priv;
- Settings* coreSettings = core(webView)->settings();
-
- coreSettings->setDefaultTextEncodingName(settingsPrivate->defaultEncoding.data());
- coreSettings->setCursiveFontFamily(settingsPrivate->cursiveFontFamily.data());
- coreSettings->setStandardFontFamily(settingsPrivate->defaultFontFamily.data());
- coreSettings->setFantasyFontFamily(settingsPrivate->fantasyFontFamily.data());
- coreSettings->setFixedFontFamily(settingsPrivate->monospaceFontFamily.data());
- coreSettings->setSansSerifFontFamily(settingsPrivate->sansSerifFontFamily.data());
- coreSettings->setSerifFontFamily(settingsPrivate->serifFontFamily.data());
- coreSettings->setLoadsImagesAutomatically(settingsPrivate->autoLoadImages);
- coreSettings->setShrinksStandaloneImagesToFit(settingsPrivate->autoShrinkImages);
- coreSettings->setShouldRespectImageOrientation(settingsPrivate->respectImageOrientation);
- coreSettings->setShouldPrintBackgrounds(settingsPrivate->printBackgrounds);
- coreSettings->setScriptEnabled(settingsPrivate->enableScripts);
- coreSettings->setPluginsEnabled(settingsPrivate->enablePlugins);
- coreSettings->setTextAreasAreResizable(settingsPrivate->resizableTextAreas);
- coreSettings->setUserStyleSheetLocation(KURL(KURL(), settingsPrivate->userStylesheetURI.data()));
- coreSettings->setDeveloperExtrasEnabled(settingsPrivate->enableDeveloperExtras);
- coreSettings->setPrivateBrowsingEnabled(settingsPrivate->enablePrivateBrowsing);
- coreSettings->setCaretBrowsingEnabled(settingsPrivate->enableCaretBrowsing);
- coreSettings->setLocalStorageEnabled(settingsPrivate->enableHTML5LocalStorage);
- coreSettings->setLocalStorageDatabasePath(settingsPrivate->html5LocalStorageDatabasePath.data());
- coreSettings->setXSSAuditorEnabled(settingsPrivate->enableXSSAuditor);
- coreSettings->setSpatialNavigationEnabled(settingsPrivate->enableSpatialNavigation);
- coreSettings->setFrameFlatteningEnabled(settingsPrivate->enableFrameFlattening);
- coreSettings->setJavaScriptCanOpenWindowsAutomatically(settingsPrivate->javascriptCanOpenWindowsAutomatically);
- coreSettings->setJavaScriptCanAccessClipboard(settingsPrivate->javascriptCanAccessClipboard);
- coreSettings->setOfflineWebApplicationCacheEnabled(settingsPrivate->enableOfflineWebApplicationCache);
- coreSettings->setEditingBehaviorType(static_cast<WebCore::EditingBehaviorType>(settingsPrivate->editingBehavior));
- coreSettings->setAllowUniversalAccessFromFileURLs(settingsPrivate->enableUniversalAccessFromFileURIs);
- coreSettings->setAllowFileAccessFromFileURLs(settingsPrivate->enableFileAccessFromFileURIs);
- coreSettings->setDOMPasteAllowed(settingsPrivate->enableDOMPaste);
- coreSettings->setNeedsSiteSpecificQuirks(settingsPrivate->enableSiteSpecificQuirks);
- coreSettings->setUsesPageCache(settingsPrivate->enablePageCache);
- coreSettings->setJavaEnabled(settingsPrivate->enableJavaApplet);
- coreSettings->setHyperlinkAuditingEnabled(settingsPrivate->enableHyperlinkAuditing);
- coreSettings->setDNSPrefetchingEnabled(settingsPrivate->enableDNSPrefetching);
- coreSettings->setMediaPlaybackRequiresUserGesture(settingsPrivate->mediaPlaybackRequiresUserGesture);
- coreSettings->setMediaPlaybackAllowsInline(settingsPrivate->mediaPlaybackAllowsInline);
- coreSettings->setAllowDisplayOfInsecureContent(settingsPrivate->enableDisplayOfInsecureContent);
- coreSettings->setAllowRunningOfInsecureContent(settingsPrivate->enableRunningOfInsecureContent);
-
-#if ENABLE(SQL_DATABASE)
- DatabaseManager::manager().setIsAvailable(settingsPrivate->enableHTML5Database);
-#endif
-
-#if ENABLE(FULLSCREEN_API)
- coreSettings->setFullScreenEnabled(settingsPrivate->enableFullscreen);
-#endif
-
-#if ENABLE(SPELLCHECK)
- if (settingsPrivate->enableSpellChecking) {
- WebKit::EditorClient* client = static_cast<WebKit::EditorClient*>(core(webView)->editorClient());
- static_cast<WebKit::TextCheckerClientGtk*>(client->textChecker())->updateSpellCheckingLanguage(settingsPrivate->spellCheckingLanguages.data());
- }
-#endif
-
-#if ENABLE(WEBGL)
- coreSettings->setWebGLEnabled(settingsPrivate->enableWebgl);
-#endif
-
-#if ENABLE(MEDIA_STREAM)
- WebCore::RuntimeEnabledFeatures::setMediaStreamEnabled(settingsPrivate->enableMediaStream);
-#endif
-
-#if USE(ACCELERATED_COMPOSITING)
- coreSettings->setAcceleratedCompositingEnabled(settingsPrivate->enableAcceleratedCompositing);
- char* debugVisualsEnvironment = getenv("WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS");
- bool showDebugVisuals = debugVisualsEnvironment && !strcmp(debugVisualsEnvironment, "1");
- coreSettings->setShowDebugBorders(showDebugVisuals);
- coreSettings->setShowRepaintCounter(showDebugVisuals);
-#endif
-
-#if ENABLE(WEB_AUDIO)
- coreSettings->setWebAudioEnabled(settingsPrivate->enableWebAudio);
-#endif
-
-#if ENABLE(SMOOTH_SCROLLING)
- coreSettings->setScrollAnimatorEnabled(settingsPrivate->enableSmoothScrolling);
-#endif
-
-#if ENABLE(CSS_SHADERS)
- coreSettings->setCSSCustomFilterEnabled(settingsPrivate->enableCSSShaders);
-#endif
-
- // Use mock scrollbars if in DumpRenderTree mode (i.e. testing layout tests).
- coreSettings->setMockScrollbarsEnabled(DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled());
-
- if (Page* page = core(webView))
- page->setTabKeyCyclesThroughElements(settingsPrivate->tabKeyCyclesThroughElements);
-
- webkit_web_view_screen_changed(GTK_WIDGET(webView), NULL);
-}
-
-static void webkit_web_view_settings_notify(WebKitWebSettings* webSettings, GParamSpec* pspec, WebKitWebView* webView)
-{
- Settings* settings = core(webView)->settings();
-
- const gchar* name = g_intern_string(pspec->name);
- GValue value = { 0, { { 0 } } };
- g_value_init(&value, pspec->value_type);
- g_object_get_property(G_OBJECT(webSettings), name, &value);
-
- if (name == g_intern_string("default-encoding"))
- settings->setDefaultTextEncodingName(g_value_get_string(&value));
- else if (name == g_intern_string("cursive-font-family"))
- settings->setCursiveFontFamily(g_value_get_string(&value));
- else if (name == g_intern_string("default-font-family"))
- settings->setStandardFontFamily(g_value_get_string(&value));
- else if (name == g_intern_string("fantasy-font-family"))
- settings->setFantasyFontFamily(g_value_get_string(&value));
- else if (name == g_intern_string("monospace-font-family"))
- settings->setFixedFontFamily(g_value_get_string(&value));
- else if (name == g_intern_string("sans-serif-font-family"))
- settings->setSansSerifFontFamily(g_value_get_string(&value));
- else if (name == g_intern_string("serif-font-family"))
- settings->setSerifFontFamily(g_value_get_string(&value));
- else if (name == g_intern_string("default-font-size"))
- settings->setDefaultFontSize(webViewConvertFontSizeToPixels(webView, g_value_get_int(&value)));
- else if (name == g_intern_string("default-monospace-font-size"))
- settings->setDefaultFixedFontSize(webViewConvertFontSizeToPixels(webView, g_value_get_int(&value)));
- else if (name == g_intern_string("minimum-font-size"))
- settings->setMinimumFontSize(webViewConvertFontSizeToPixels(webView, g_value_get_int(&value)));
- else if (name == g_intern_string("minimum-logical-font-size"))
- settings->setMinimumLogicalFontSize(webViewConvertFontSizeToPixels(webView, g_value_get_int(&value)));
- else if (name == g_intern_string("enforce-96-dpi"))
- webkit_web_view_screen_changed(GTK_WIDGET(webView), NULL);
- else if (name == g_intern_string("auto-load-images"))
- settings->setLoadsImagesAutomatically(g_value_get_boolean(&value));
- else if (name == g_intern_string("auto-shrink-images"))
- settings->setShrinksStandaloneImagesToFit(g_value_get_boolean(&value));
- else if (name == g_intern_string("respect-image-orientation"))
- settings->setShouldRespectImageOrientation(g_value_get_boolean(&value));
- else if (name == g_intern_string("print-backgrounds"))
- settings->setShouldPrintBackgrounds(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-scripts"))
- settings->setScriptEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-plugins"))
- settings->setPluginsEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-dns-prefetching"))
- settings->setDNSPrefetchingEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("resizable-text-areas"))
- settings->setTextAreasAreResizable(g_value_get_boolean(&value));
- else if (name == g_intern_string("user-stylesheet-uri"))
- settings->setUserStyleSheetLocation(KURL(KURL(), g_value_get_string(&value)));
- else if (name == g_intern_string("enable-developer-extras"))
- settings->setDeveloperExtrasEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-private-browsing"))
- settings->setPrivateBrowsingEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-caret-browsing"))
- settings->setCaretBrowsingEnabled(g_value_get_boolean(&value));
-#if ENABLE(SQL_DATABASE)
- else if (name == g_intern_string("enable-html5-database")) {
- DatabaseManager::manager().setIsAvailable(g_value_get_boolean(&value));
- }
-#endif
- else if (name == g_intern_string("enable-html5-local-storage"))
- settings->setLocalStorageEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("html5-local-storage-database-path"))
- settings->setLocalStorageDatabasePath(g_value_get_string(&value));
- else if (name == g_intern_string("enable-xss-auditor"))
- settings->setXSSAuditorEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-spatial-navigation"))
- settings->setSpatialNavigationEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-frame-flattening"))
- settings->setFrameFlatteningEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("javascript-can-open-windows-automatically"))
- settings->setJavaScriptCanOpenWindowsAutomatically(g_value_get_boolean(&value));
- else if (name == g_intern_string("javascript-can-access-clipboard"))
- settings->setJavaScriptCanAccessClipboard(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-offline-web-application-cache"))
- settings->setOfflineWebApplicationCacheEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("editing-behavior"))
- settings->setEditingBehaviorType(static_cast<WebCore::EditingBehaviorType>(g_value_get_enum(&value)));
- else if (name == g_intern_string("enable-universal-access-from-file-uris"))
- settings->setAllowUniversalAccessFromFileURLs(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-file-access-from-file-uris"))
- settings->setAllowFileAccessFromFileURLs(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-dom-paste"))
- settings->setDOMPasteAllowed(g_value_get_boolean(&value));
- else if (name == g_intern_string("tab-key-cycles-through-elements")) {
- Page* page = core(webView);
- if (page)
- page->setTabKeyCyclesThroughElements(g_value_get_boolean(&value));
- } else if (name == g_intern_string("enable-site-specific-quirks"))
- settings->setNeedsSiteSpecificQuirks(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-page-cache"))
- settings->setUsesPageCache(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-java-applet"))
- settings->setJavaEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("enable-hyperlink-auditing"))
- settings->setHyperlinkAuditingEnabled(g_value_get_boolean(&value));
- else if (name == g_intern_string("media-playback-requires-user-gesture"))
- settings->setMediaPlaybackRequiresUserGesture(g_value_get_boolean(&value));
- else if (name == g_intern_string("media-playback-allows-inline"))
- settings->setMediaPlaybackAllowsInline(g_value_get_boolean(&value));
-
-#if ENABLE(SPELLCHECK)
- else if (name == g_intern_string("spell-checking-languages")) {
- gboolean enableSpellChecking;
- g_object_get(G_OBJECT(webSettings), "enable-spell-checking", &enableSpellChecking, NULL);
- if (enableSpellChecking) {
- WebKit::EditorClient* client = static_cast<WebKit::EditorClient*>(core(webView)->editorClient());
- static_cast<WebKit::TextCheckerClientGtk*>(client->textChecker())->updateSpellCheckingLanguage(g_value_get_string(&value));
- }
- }
-#endif
-
-#if ENABLE(WEBGL)
- else if (name == g_intern_string("enable-webgl"))
- settings->setWebGLEnabled(g_value_get_boolean(&value));
-#endif
-
-#if USE(ACCELERATED_COMPOSITING)
- else if (name == g_intern_string("enable-accelerated-compositing"))
- settings->setAcceleratedCompositingEnabled(g_value_get_boolean(&value));
-#endif
-
-#if ENABLE(WEB_AUDIO)
- else if (name == g_intern_string("enable-webaudio"))
- settings->setWebAudioEnabled(g_value_get_boolean(&value));
-#endif
-
-#if ENABLE(SMOOTH_SCROLLING)
- else if (name == g_intern_string("enable-smooth-scrolling"))
- settings->setScrollAnimatorEnabled(g_value_get_boolean(&value));
-#endif
-
-#if ENABLE(CSS_SHADERS)
- else if (name == g_intern_string("enable-css-shaders"))
- settings->setCSSCustomFilterEnabled(g_value_get_boolean(&value));
-#endif
-
- else if (!g_object_class_find_property(G_OBJECT_GET_CLASS(webSettings), name))
- g_warning("Unexpected setting '%s'", name);
- g_value_unset(&value);
-}
-
-static void webkit_web_view_init(WebKitWebView* webView)
-{
- WebKitWebViewPrivate* priv = G_TYPE_INSTANCE_GET_PRIVATE(webView, WEBKIT_TYPE_WEB_VIEW, WebKitWebViewPrivate);
- webView->priv = priv;
- // This is the placement new syntax: http://www.parashift.com/c++-faq-lite/dtors.html#faq-11.10
- // It allows us to call a constructor on manually allocated locations in memory. We must use it
- // in this case, because GLib manages the memory for the private data section, but we wish it
- // to contain C++ object members. The use of placement new calls the constructor on all C++ data
- // members, which ensures they are initialized properly.
- new (priv) WebKitWebViewPrivate();
-
- priv->imFilter.setWebView(webView);
-
- Page::PageClients pageClients;
- pageClients.chromeClient = new WebKit::ChromeClient(webView);
-#if ENABLE(CONTEXT_MENUS)
- pageClients.contextMenuClient = new WebKit::ContextMenuClient(webView);
-#endif
- pageClients.editorClient = new WebKit::EditorClient(webView);
-#if ENABLE(DRAG_SUPPORT)
- pageClients.dragClient = new WebKit::DragClient(webView);
-#endif
- pageClients.inspectorClient = new WebKit::InspectorClient(webView);
-
- priv->corePage = new Page(pageClients);
-
- priv->corePage->addLayoutMilestones(DidFirstVisuallyNonEmptyLayout);
-
-#if ENABLE(GEOLOCATION)
- if (DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled()) {
- priv->geolocationClientMock = adoptPtr(new GeolocationClientMock);
- WebCore::provideGeolocationTo(priv->corePage, priv->geolocationClientMock.get());
- priv->geolocationClientMock.get()->setController(GeolocationController::from(priv->corePage));
- } else
- WebCore::provideGeolocationTo(priv->corePage, new WebKit::GeolocationClient(webView));
-#endif
-#if ENABLE(DEVICE_ORIENTATION)
- WebCore::provideDeviceMotionTo(priv->corePage, new DeviceMotionClientGtk);
- WebCore::provideDeviceOrientationTo(priv->corePage, new DeviceOrientationClientGtk);
-#endif
-
-#if ENABLE(MEDIA_STREAM)
- priv->userMediaClient = adoptPtr(new UserMediaClientGtk);
- WebCore::provideUserMediaTo(priv->corePage, priv->userMediaClient.get());
-#endif
-
-#if ENABLE(NAVIGATOR_CONTENT_UTILS)
- priv->navigatorContentUtilsClient = WebKit::NavigatorContentUtilsClient::create();
- WebCore::provideNavigatorContentUtilsTo(priv->corePage, priv->navigatorContentUtilsClient.get());
-#endif
-
- if (DumpRenderTreeSupportGtk::dumpRenderTreeModeEnabled()) {
- // Set some testing-specific settings
- priv->corePage->settings()->setInteractiveFormValidationEnabled(true);
- priv->corePage->settings()->setValidationMessageTimerMagnification(-1);
- }
-
- // Pages within a same session need to be linked together otherwise some functionalities such
- // as visited link coloration (across pages) and changing popup window location will not work.
- // To keep the default behavior simple (and because no PageGroup API exist in WebKitGTK at the
- // time of writing this comment), we simply set all the pages to the same group.
- priv->corePage->setGroupName(webkitPageGroupName());
-
- // We also add a simple wrapper class to provide the public
- // interface for the Web Inspector.
- priv->webInspector = adoptGRef(WEBKIT_WEB_INSPECTOR(g_object_new(WEBKIT_TYPE_WEB_INSPECTOR, NULL)));
- webkit_web_inspector_set_inspector_client(priv->webInspector.get(), priv->corePage);
-
- // And our ViewportAttributes friend.
- priv->viewportAttributes = adoptGRef(WEBKIT_VIEWPORT_ATTRIBUTES(g_object_new(WEBKIT_TYPE_VIEWPORT_ATTRIBUTES, NULL)));
- priv->viewportAttributes->priv->webView = webView;
-
- gtk_widget_set_can_focus(GTK_WIDGET(webView), TRUE);
-
- priv->mainFrame = WEBKIT_WEB_FRAME(webkit_web_frame_new(webView));
- priv->lastPopupXPosition = priv->lastPopupYPosition = -1;
-
- priv->backForwardList = adoptGRef(webkit_web_back_forward_list_new_with_web_view(webView));
-
- priv->zoomFullContent = FALSE;
-
- priv->webSettings = adoptGRef(webkit_web_settings_new());
- webkit_web_view_update_settings(webView);
- g_signal_connect(priv->webSettings.get(), "notify", G_CALLBACK(webkit_web_view_settings_notify), webView);
-
- priv->webWindowFeatures = adoptGRef(webkit_web_window_features_new());
-
- priv->subResources = adoptGRef(g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_object_unref));
-
-#if ENABLE(DRAG_SUPPORT)
- priv->dragAndDropHelper.setWidget(GTK_WIDGET(webView));
- gtk_drag_dest_set(GTK_WIDGET(webView), static_cast<GtkDestDefaults>(0), 0, 0, static_cast<GdkDragAction>(GDK_ACTION_COPY | GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK | GDK_ACTION_PRIVATE));
- gtk_drag_dest_set_target_list(GTK_WIDGET(webView), PasteboardHelper::defaultPasteboardHelper()->targetList());
-#endif
-
- priv->selfScrolling = false;
-
-#if USE(ACCELERATED_COMPOSITING)
- priv->acceleratedCompositingContext = AcceleratedCompositingContext::create(webView);
-#endif
-
- g_signal_connect(webView, "direction-changed", G_CALLBACK(webkitWebViewDirectionChanged), 0);
-}
-
-GtkWidget* webkit_web_view_new(void)
-{
- WebKitWebView* webView = WEBKIT_WEB_VIEW(g_object_new(WEBKIT_TYPE_WEB_VIEW, NULL));
-
- return GTK_WIDGET(webView);
-}
-
-void webkitWebViewRunFileChooserRequest(WebKitWebView* webView, WebKitFileChooserRequest* request)
-{
- gboolean returnValue;
- g_signal_emit(webView, webkit_web_view_signals[RUN_FILE_CHOOSER], 0, request, &returnValue);
-}
-
-// for internal use only
-void webkit_web_view_notify_ready(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- gboolean isHandled = FALSE;
- g_signal_emit(webView, webkit_web_view_signals[WEB_VIEW_READY], 0, &isHandled);
-}
-
-void webkit_web_view_request_download(WebKitWebView* webView, WebKitNetworkRequest* request, const ResourceResponse& response, ResourceHandle* handle)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- WebKitDownload* download;
-
- if (handle)
- download = webkit_download_new_with_handle(request, handle, response);
- else
- download = webkit_download_new(request);
-
- gboolean handled;
- g_signal_emit(webView, webkit_web_view_signals[DOWNLOAD_REQUESTED], 0, download, &handled);
-
- if (!handled) {
- webkit_download_cancel(download);
- g_object_unref(download);
- return;
- }
-
- /* Start the download now if it has a destination URI, otherwise it
- may be handled asynchronously by the application. */
- if (webkit_download_get_destination_uri(download))
- webkit_download_start(download);
-}
-
-/**
- * webkit_web_view_set_settings:
- * @web_view: a #WebKitWebView
- * @settings: (transfer none): the #WebKitWebSettings to be set
- *
- * Replaces the #WebKitWebSettings instance that is currently attached
- * to @web_view with @settings. The reference held by the @web_view on
- * the old #WebKitWebSettings instance is dropped, and the reference
- * count of @settings is inscreased.
- *
- * The settings are automatically applied to @web_view.
- */
-void webkit_web_view_set_settings(WebKitWebView* webView, WebKitWebSettings* webSettings)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(WEBKIT_IS_WEB_SETTINGS(webSettings));
-
- WebKitWebViewPrivate* priv = webView->priv;
- g_signal_handlers_disconnect_by_func(priv->webSettings.get(), reinterpret_cast<void*>(webkit_web_view_settings_notify), webView);
-
- priv->webSettings = webSettings;
- webkit_web_view_update_settings(webView);
- g_signal_connect(webSettings, "notify", G_CALLBACK(webkit_web_view_settings_notify), webView);
- g_object_notify(G_OBJECT(webView), "settings");
-}
-
-/**
- * webkit_web_view_get_settings:
- * @web_view: a #WebKitWebView
- *
- * Obtains the #WebKitWebSettings associated with the
- * #WebKitWebView. The #WebKitWebView always has an associated
- * instance of #WebKitWebSettings. The reference that is returned by
- * this call is owned by the #WebKitWebView. You may need to increase
- * its reference count if you intend to keep it alive for longer than
- * the #WebKitWebView.
- *
- * Return value: (transfer none): the #WebKitWebSettings instance
- */
-WebKitWebSettings* webkit_web_view_get_settings(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
- return webView->priv->webSettings.get();
-}
-
-/**
- * webkit_web_view_get_inspector:
- * @web_view: a #WebKitWebView
- *
- * Obtains the #WebKitWebInspector associated with the
- * #WebKitWebView. Every #WebKitWebView object has a
- * #WebKitWebInspector object attached to it as soon as it is created,
- * so this function will only return NULL if the argument is not a
- * valid #WebKitWebView.
- *
- * Return value: (transfer none): the #WebKitWebInspector instance.
- *
- * Since: 1.0.3
- */
-WebKitWebInspector* webkit_web_view_get_inspector(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
- return webView->priv->webInspector.get();
-}
-
-/**
- * webkit_web_view_get_viewport_attributes:
- * @web_view: a #WebKitWebView
- *
- * Obtains the #WebKitViewportAttributes associated with the
- * #WebKitWebView. Every #WebKitWebView object has a
- * #WebKitViewportAttributes object attached to it as soon as it is
- * created, so this function will only return NULL if the argument is
- * not a valid #WebKitWebView. Do note however that the viewport
- * attributes object only contains valid information when the current
- * page has a viewport meta tag. You can check whether the data should
- * be used by checking the #WebKitViewportAttributes:valid property.
- *
- * Return value: (transfer none): the #WebKitViewportAttributes instance.
- *
- * Since: 1.3.8
- */
-WebKitViewportAttributes* webkit_web_view_get_viewport_attributes(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
- return webView->priv->viewportAttributes.get();
-}
-
-// internal
-static void webkit_web_view_set_window_features(WebKitWebView* webView, WebKitWebWindowFeatures* webWindowFeatures)
-{
- if (!webWindowFeatures)
- return;
- if (webkit_web_window_features_equal(webView->priv->webWindowFeatures.get(), webWindowFeatures))
- return;
- webView->priv->webWindowFeatures = webWindowFeatures;
-}
-
-/**
- * webkit_web_view_get_window_features:
- * @web_view: a #WebKitWebView
- *
- * Returns: (transfer none): the instance of #WebKitWebWindowFeatures held by the given
- * #WebKitWebView.
- *
- * Since: 1.0.3
- */
-WebKitWebWindowFeatures* webkit_web_view_get_window_features(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
- return webView->priv->webWindowFeatures.get();
-}
-
-/**
- * webkit_web_view_get_title:
- * @web_view: a #WebKitWebView
- *
- * Returns the @web_view's document title
- *
- * Since: 1.1.4
- *
- * Return value: the title of @web_view
- */
-const gchar* webkit_web_view_get_title(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), NULL);
-
- WebKitWebViewPrivate* priv = webView->priv;
- return priv->mainFrame->priv->title;
-}
-
-/**
- * webkit_web_view_get_uri:
- * @web_view: a #WebKitWebView
- *
- * Returns the current URI of the contents displayed by the @web_view
- *
- * Since: 1.1.4
- *
- * Return value: the URI of @web_view
- */
-const gchar* webkit_web_view_get_uri(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), NULL);
-
- WebKitWebViewPrivate* priv = webView->priv;
- return priv->mainFrame->priv->uri;
-}
-
-/**
- * webkit_web_view_set_maintains_back_forward_list:
- * @web_view: a #WebKitWebView
- * @flag: to tell the view to maintain a back or forward list
- *
- * Set the view to maintain a back or forward list of history items.
- */
-void webkit_web_view_set_maintains_back_forward_list(WebKitWebView* webView, gboolean flag)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- static_cast<BackForwardListImpl*>(core(webView)->backForwardList())->setEnabled(flag);
-}
-
-/**
- * webkit_web_view_get_back_forward_list:
- * @web_view: a #WebKitWebView
- *
- * Obtains the #WebKitWebBackForwardList associated with the given #WebKitWebView. The
- * #WebKitWebBackForwardList is owned by the #WebKitWebView.
- *
- * Return value: (transfer none): the #WebKitWebBackForwardList
- */
-WebKitWebBackForwardList* webkit_web_view_get_back_forward_list(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
- if (!core(webView) || !static_cast<BackForwardListImpl*>(core(webView)->backForwardList())->enabled())
- return 0;
- return webView->priv->backForwardList.get();
-}
-
-/**
- * webkit_web_view_go_to_back_forward_item:
- * @web_view: a #WebKitWebView
- * @item: a #WebKitWebHistoryItem*
- *
- * Go to the specified #WebKitWebHistoryItem
- *
- * Return value: %TRUE if loading of item is successful, %FALSE if not
- */
-gboolean webkit_web_view_go_to_back_forward_item(WebKitWebView* webView, WebKitWebHistoryItem* item)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
- g_return_val_if_fail(WEBKIT_IS_WEB_HISTORY_ITEM(item), FALSE);
-
- WebKitWebBackForwardList* backForwardList = webkit_web_view_get_back_forward_list(webView);
- if (!webkit_web_back_forward_list_contains_item(backForwardList, item))
- return FALSE;
-
- core(webView)->goToItem(core(item), FrameLoadTypeIndexedBackForward);
- return TRUE;
-}
-
-/**
- * webkit_web_view_go_back:
- * @web_view: a #WebKitWebView
- *
- * Loads the previous history item.
- */
-void webkit_web_view_go_back(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- core(webView)->goBack();
-}
-
-/**
- * webkit_web_view_go_back_or_forward:
- * @web_view: a #WebKitWebView
- * @steps: the number of steps
- *
- * Loads the history item that is the number of @steps away from the current
- * item. Negative values represent steps backward while positive values
- * represent steps forward.
- */
-void webkit_web_view_go_back_or_forward(WebKitWebView* webView, gint steps)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- core(webView)->goBackOrForward(steps);
-}
-
-/**
- * webkit_web_view_go_forward:
- * @web_view: a #WebKitWebView
- *
- * Loads the next history item.
- */
-void webkit_web_view_go_forward(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- core(webView)->goForward();
-}
-
-/**
- * webkit_web_view_can_go_back:
- * @web_view: a #WebKitWebView
- *
- * Determines whether #web_view has a previous history item.
- *
- * Return value: %TRUE if able to move back, %FALSE otherwise
- */
-gboolean webkit_web_view_can_go_back(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- if (!core(webView) || !core(webView)->backForwardList()->backItem())
- return FALSE;
-
- return TRUE;
-}
-
-/**
- * webkit_web_view_can_go_back_or_forward:
- * @web_view: a #WebKitWebView
- * @steps: the number of steps
- *
- * Determines whether #web_view has a history item of @steps. Negative values
- * represent steps backward while positive values represent steps forward.
- *
- * Return value: %TRUE if able to move back or forward the given number of
- * steps, %FALSE otherwise
- */
-gboolean webkit_web_view_can_go_back_or_forward(WebKitWebView* webView, gint steps)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- return core(webView)->canGoBackOrForward(steps);
-}
-
-/**
- * webkit_web_view_can_go_forward:
- * @web_view: a #WebKitWebView
- *
- * Determines whether #web_view has a next history item.
- *
- * Return value: %TRUE if able to move forward, %FALSE otherwise
- */
-gboolean webkit_web_view_can_go_forward(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- Page* page = core(webView);
-
- if (!page)
- return FALSE;
-
- if (!page->backForwardList()->forwardItem())
- return FALSE;
-
- return TRUE;
-}
-
-/**
- * webkit_web_view_open:
- * @web_view: a #WebKitWebView
- * @uri: an URI
- *
- * Requests loading of the specified URI string.
- *
- * Deprecated: 1.1.1: Use webkit_web_view_load_uri() instead.
- */
-void webkit_web_view_open(WebKitWebView* webView, const gchar* uri)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(uri);
-
- // We used to support local paths, unlike the newer
- // function webkit_web_view_load_uri
- if (g_path_is_absolute(uri)) {
- gchar* fileUri = g_filename_to_uri(uri, NULL, NULL);
- webkit_web_view_load_uri(webView, fileUri);
- g_free(fileUri);
- }
- else
- webkit_web_view_load_uri(webView, uri);
-}
-
-void webkit_web_view_reload(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- core(webView)->mainFrame()->loader()->reload();
-}
-
-/**
- * webkit_web_view_reload_bypass_cache:
- * @web_view: a #WebKitWebView
- *
- * Reloads the @web_view without using any cached data.
- *
- * Since: 1.0.3
- */
-void webkit_web_view_reload_bypass_cache(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- core(webView)->mainFrame()->loader()->reload(true);
-}
-
-/**
- * webkit_web_view_load_uri:
- * @web_view: a #WebKitWebView
- * @uri: an URI string
- *
- * Requests loading of the specified URI string.
- *
- * Since: 1.1.1
- */
-void webkit_web_view_load_uri(WebKitWebView* webView, const gchar* uri)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(uri);
-
- WebKitWebFrame* frame = webView->priv->mainFrame;
- webkit_web_frame_load_uri(frame, uri);
-}
-
-/**
- * webkit_web_view_load_string:
- * @web_view: a #WebKitWebView
- * @content: an URI string
- * @mime_type: the MIME type, or %NULL
- * @encoding: the encoding, or %NULL
- * @base_uri: the base URI for relative locations
- *
- * Requests loading of the given @content with the specified @mime_type,
- * @encoding and @base_uri.
- *
- * If @mime_type is %NULL, "text/html" is assumed.
- *
- * If @encoding is %NULL, "UTF-8" is assumed.
- */
-void webkit_web_view_load_string(WebKitWebView* webView, const gchar* content, const gchar* mimeType, const gchar* encoding, const gchar* baseUri)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(content);
-
- WebKitWebFrame* frame = webView->priv->mainFrame;
- webkit_web_frame_load_string(frame, content, mimeType, encoding, baseUri);
-}
-/**
- * webkit_web_view_load_html_string:
- * @web_view: a #WebKitWebView
- * @content: an URI string
- * @base_uri: the base URI for relative locations
- *
- * Requests loading of the given @content with the specified @base_uri.
- *
- * Deprecated: 1.1.1: Use webkit_web_view_load_string() instead.
- */
-void webkit_web_view_load_html_string(WebKitWebView* webView, const gchar* content, const gchar* baseUri)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(content);
-
- webkit_web_view_load_string(webView, content, NULL, NULL, baseUri);
-}
-
-/**
- * webkit_web_view_load_request:
- * @web_view: a #WebKitWebView
- * @request: a #WebKitNetworkRequest
- *
- * Requests loading of the specified asynchronous client request.
- *
- * Creates a provisional data source that will transition to a committed data
- * source once any data has been received. Use webkit_web_view_stop_loading() to
- * stop the load.
- *
- * Since: 1.1.1
- */
-void webkit_web_view_load_request(WebKitWebView* webView, WebKitNetworkRequest* request)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(WEBKIT_IS_NETWORK_REQUEST(request));
-
- WebKitWebFrame* frame = webView->priv->mainFrame;
- webkit_web_frame_load_request(frame, request);
-}
-
-/**
- * webkit_web_view_stop_loading:
- * @web_view: a #WebKitWebView
- *
- * Stops any ongoing load in the @web_view.
- **/
-void webkit_web_view_stop_loading(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- core(webView)->mainFrame()->loader()->stopForUserCancel();
-}
-
-/**
- * webkit_web_view_search_text:
- * @web_view: a #WebKitWebView
- * @text: a string to look for
- * @forward: whether to find forward or not
- * @case_sensitive: whether to respect the case of text
- * @wrap: whether to continue looking at the beginning after reaching the end
- *
- * Looks for a specified string inside #web_view.
- *
- * Return value: %TRUE on success or %FALSE on failure
- */
-gboolean webkit_web_view_search_text(WebKitWebView* webView, const gchar* string, gboolean caseSensitive, gboolean forward, gboolean shouldWrap)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
- g_return_val_if_fail(string, FALSE);
-
- TextCaseSensitivity caseSensitivity = caseSensitive ? TextCaseSensitive : TextCaseInsensitive;
- FindDirection direction = forward ? FindDirectionForward : FindDirectionBackward;
-
- return core(webView)->findString(String::fromUTF8(string), caseSensitivity, direction, shouldWrap);
-}
-
-/**
- * webkit_web_view_mark_text_matches:
- * @web_view: a #WebKitWebView
- * @string: a string to look for
- * @case_sensitive: whether to respect the case of text
- * @limit: the maximum number of strings to look for or 0 for all
- *
- * Attempts to highlight all occurances of #string inside #web_view.
- *
- * Return value: the number of strings highlighted
- */
-guint webkit_web_view_mark_text_matches(WebKitWebView* webView, const gchar* string, gboolean caseSensitive, guint limit)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
- g_return_val_if_fail(string, 0);
-
- TextCaseSensitivity caseSensitivity = caseSensitive ? TextCaseSensitive : TextCaseInsensitive;
-
- return core(webView)->markAllMatchesForText(String::fromUTF8(string), caseSensitivity, false, limit);
-}
-
-/**
- * webkit_web_view_set_highlight_text_matches:
- * @web_view: a #WebKitWebView
- * @highlight: whether to highlight text matches
- *
- * Highlights text matches previously marked by webkit_web_view_mark_text_matches.
- */
-void webkit_web_view_set_highlight_text_matches(WebKitWebView* webView, gboolean shouldHighlight)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- Frame *frame = core(webView)->mainFrame();
- do {
- frame->editor().setMarkedTextMatchesAreHighlighted(shouldHighlight);
- frame = frame->tree()->traverseNextWithWrap(false);
- } while (frame);
-}
-
-/**
- * webkit_web_view_unmark_text_matches:
- * @web_view: a #WebKitWebView
- *
- * Removes highlighting previously set by webkit_web_view_mark_text_matches.
- */
-void webkit_web_view_unmark_text_matches(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- return core(webView)->unmarkAllTextMatches();
-}
-
-/**
- * webkit_web_view_get_main_frame:
- * @web_view: a #WebKitWebView
- *
- * Returns the main frame for the @web_view.
- *
- * Return value: (transfer none): the main #WebKitWebFrame for @web_view
- */
-WebKitWebFrame* webkit_web_view_get_main_frame(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), NULL);
-
- return webView->priv->mainFrame;
-}
-
-/**
- * webkit_web_view_get_focused_frame:
- * @web_view: a #WebKitWebView
- *
- * Returns the frame that has focus or an active text selection.
- *
- * Return value: (transfer none): The focused #WebKitWebFrame or %NULL if no frame is focused
- */
-WebKitWebFrame* webkit_web_view_get_focused_frame(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), NULL);
-
- Frame* focusedFrame = core(webView)->focusController()->focusedFrame();
- return kit(focusedFrame);
-}
-
-void webkit_web_view_execute_script(WebKitWebView* webView, const gchar* script)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(script);
-
- core(webView)->mainFrame()->script()->executeScript(String::fromUTF8(script), true);
-}
-
-/**
- * webkit_web_view_can_cut_clipboard:
- * @web_view: a #WebKitWebView
- *
- * Determines whether or not it is currently possible to cut to the clipboard.
- *
- * Return value: %TRUE if a selection can be cut, %FALSE if not
- */
-gboolean webkit_web_view_can_cut_clipboard(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- return frame->editor().canCut() || frame->editor().canDHTMLCut();
-}
-
-/**
- * webkit_web_view_can_copy_clipboard:
- * @web_view: a #WebKitWebView
- *
- * Determines whether or not it is currently possible to copy to the clipboard.
- *
- * Return value: %TRUE if a selection can be copied, %FALSE if not
- */
-gboolean webkit_web_view_can_copy_clipboard(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- return frame->editor().canCopy() || frame->editor().canDHTMLCopy();
-}
-
-/**
- * webkit_web_view_can_paste_clipboard:
- * @web_view: a #WebKitWebView
- *
- * Determines whether or not it is currently possible to paste from the clipboard.
- *
- * Return value: %TRUE if a selection can be pasted, %FALSE if not
- */
-gboolean webkit_web_view_can_paste_clipboard(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- return frame->editor().canPaste() || frame->editor().canDHTMLPaste();
-}
-
-/**
- * webkit_web_view_cut_clipboard:
- * @web_view: a #WebKitWebView
- *
- * Cuts the current selection inside the @web_view to the clipboard.
- */
-void webkit_web_view_cut_clipboard(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- if (webkit_web_view_can_cut_clipboard(webView))
- g_signal_emit(webView, webkit_web_view_signals[CUT_CLIPBOARD], 0);
-}
-
-/**
- * webkit_web_view_copy_clipboard:
- * @web_view: a #WebKitWebView
- *
- * Copies the current selection inside the @web_view to the clipboard.
- */
-void webkit_web_view_copy_clipboard(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- if (webkit_web_view_can_copy_clipboard(webView))
- g_signal_emit(webView, webkit_web_view_signals[COPY_CLIPBOARD], 0);
-}
-
-/**
- * webkit_web_view_paste_clipboard:
- * @web_view: a #WebKitWebView
- *
- * Pastes the current contents of the clipboard to the @web_view.
- */
-void webkit_web_view_paste_clipboard(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- if (webkit_web_view_can_paste_clipboard(webView))
- g_signal_emit(webView, webkit_web_view_signals[PASTE_CLIPBOARD], 0);
-}
-
-/**
- * webkit_web_view_delete_selection:
- * @web_view: a #WebKitWebView
- *
- * Deletes the current selection inside the @web_view.
- */
-void webkit_web_view_delete_selection(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- frame->editor().performDelete();
-}
-
-/**
- * webkit_web_view_has_selection:
- * @web_view: a #WebKitWebView
- *
- * Determines whether text was selected.
- *
- * Return value: %TRUE if there is selected text, %FALSE if not
- */
-gboolean webkit_web_view_has_selection(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- return !core(webView)->selection().isNone();
-}
-
-/**
- * webkit_web_view_select_all:
- * @web_view: a #WebKitWebView
- *
- * Attempts to select everything inside the @web_view.
- */
-void webkit_web_view_select_all(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- g_signal_emit(webView, webkit_web_view_signals[::SELECT_ALL], 0);
-}
-
-/**
- * webkit_web_view_get_editable:
- * @web_view: a #WebKitWebView
- *
- * Returns whether the user is allowed to edit the document.
- *
- * Returns %TRUE if @web_view allows the user to edit the HTML document, %FALSE if
- * it doesn't. You can change @web_view's document programmatically regardless of
- * this setting.
- *
- * Return value: a #gboolean indicating the editable state
- */
-gboolean webkit_web_view_get_editable(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- return core(webView)->isEditable();
-}
-
-/**
- * webkit_web_view_set_editable:
- * @web_view: a #WebKitWebView
- * @flag: a #gboolean indicating the editable state
- *
- * Sets whether @web_view allows the user to edit its HTML document.
- *
- * If @flag is %TRUE, @web_view allows the user to edit the document. If @flag is
- * %FALSE, an element in @web_view's document can only be edited if the
- * CONTENTEDITABLE attribute has been set on the element or one of its parent
- * elements. You can change @web_view's document programmatically regardless of
- * this setting. By default a #WebKitWebView is not editable.
-
- * Normally, an HTML document is not editable unless the elements within the
- * document are editable. This function provides a low-level way to make the
- * contents of a #WebKitWebView editable without altering the document or DOM
- * structure.
- */
-void webkit_web_view_set_editable(WebKitWebView* webView, gboolean flag)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- flag = flag != FALSE;
- if (flag == webkit_web_view_get_editable(webView))
- return;
-
- core(webView)->setEditable(flag);
-
- Frame* frame = core(webView)->mainFrame();
- g_return_if_fail(frame);
-
- if (flag) {
- frame->editor().applyEditingStyleToBodyElement();
- // TODO: If the WebKitWebView is made editable and the selection is empty, set it to something.
- //if (!webkit_web_view_get_selected_dom_range(webView))
- // mainFrame->setSelectionFromNone();
- }
- g_object_notify(G_OBJECT(webView), "editable");
-}
-
-/**
- * webkit_web_view_get_copy_target_list:
- * @web_view: a #WebKitWebView
- *
- * This function returns the list of targets this #WebKitWebView can
- * provide for clipboard copying and as DND source. The targets in the list are
- * added with values from the #WebKitWebViewTargetInfo enum,
- * using gtk_target_list_add() and
- * gtk_target_list_add_text_targets().
- *
- * Return value: the #GtkTargetList
- **/
-GtkTargetList* webkit_web_view_get_copy_target_list(WebKitWebView* webView)
-{
- return PasteboardHelper::defaultPasteboardHelper()->targetList();
-}
-
-/**
- * webkit_web_view_get_paste_target_list:
- * @web_view: a #WebKitWebView
- *
- * This function returns the list of targets this #WebKitWebView can
- * provide for clipboard pasting and as DND destination. The targets in the list are
- * added with values from the #WebKitWebViewTargetInfo enum,
- * using gtk_target_list_add() and
- * gtk_target_list_add_text_targets().
- *
- * Return value: the #GtkTargetList
- **/
-GtkTargetList* webkit_web_view_get_paste_target_list(WebKitWebView* webView)
-{
- return PasteboardHelper::defaultPasteboardHelper()->targetList();
-}
-
-/**
- * webkit_web_view_can_show_mime_type:
- * @web_view: a #WebKitWebView
- * @mime_type: a MIME type
- *
- * This functions returns whether or not a MIME type can be displayed using this view.
- *
- * Return value: a #gboolean indicating if the MIME type can be displayed
- *
- * Since: 1.0.3
- **/
-
-gboolean webkit_web_view_can_show_mime_type(WebKitWebView* webView, const gchar* mimeType)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- Frame* frame = core(webkit_web_view_get_main_frame(webView));
- return frame->loader()->client()->canShowMIMEType(String::fromUTF8(mimeType));
-}
-
-/**
- * webkit_web_view_get_transparent:
- * @web_view: a #WebKitWebView
- *
- * Returns whether the #WebKitWebView has a transparent background.
- *
- * Return value: %FALSE when the #WebKitWebView draws a solid background
- * (the default), otherwise %TRUE.
- */
-gboolean webkit_web_view_get_transparent(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- WebKitWebViewPrivate* priv = webView->priv;
- return priv->transparent;
-}
-
-/**
- * webkit_web_view_set_transparent:
- * @web_view: a #WebKitWebView
- * @flag: whether or not @web_view should be transparent
- *
- * Sets whether the #WebKitWebView has a transparent background.
- *
- * Pass %FALSE to have the #WebKitWebView draw a solid background
- * (the default), otherwise %TRUE.
- */
-void webkit_web_view_set_transparent(WebKitWebView* webView, gboolean flag)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- WebKitWebViewPrivate* priv = webView->priv;
- priv->transparent = flag;
-
- // TODO: This needs to be made persistent or it could become a problem when
- // the main frame is replaced.
- Frame* frame = core(webView)->mainFrame();
- g_return_if_fail(frame);
- frame->view()->setTransparent(flag);
- g_object_notify(G_OBJECT(webView), "transparent");
-}
-
-/**
- * webkit_web_view_get_zoom_level:
- * @web_view: a #WebKitWebView
- *
- * Returns the zoom level of @web_view, i.e. the factor by which elements in
- * the page are scaled with respect to their original size.
- * If the "full-content-zoom" property is set to %FALSE (the default)
- * the zoom level changes the text size, or if %TRUE, scales all
- * elements in the page.
- *
- * Return value: the zoom level of @web_view
- *
- * Since: 1.0.1
- */
-gfloat webkit_web_view_get_zoom_level(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 1.0f);
-
- Frame* frame = core(webView)->mainFrame();
- if (!frame)
- return 1.0f;
-
- WebKitWebViewPrivate* priv = webView->priv;
- return priv->zoomFullContent ? frame->pageZoomFactor() : frame->textZoomFactor();
-}
-
-static void webkit_web_view_apply_zoom_level(WebKitWebView* webView, gfloat zoomLevel)
-{
- Frame* frame = core(webView)->mainFrame();
- if (!frame)
- return;
-
- WebKitWebViewPrivate* priv = webView->priv;
- if (priv->zoomFullContent)
- frame->setPageZoomFactor(zoomLevel);
- else
- frame->setTextZoomFactor(zoomLevel);
-}
-
-/**
- * webkit_web_view_set_zoom_level:
- * @web_view: a #WebKitWebView
- * @zoom_level: the new zoom level
- *
- * Sets the zoom level of @web_view, i.e. the factor by which elements in
- * the page are scaled with respect to their original size.
- * If the "full-content-zoom" property is set to %FALSE (the default)
- * the zoom level changes the text size, or if %TRUE, scales all
- * elements in the page.
- *
- * Since: 1.0.1
- */
-void webkit_web_view_set_zoom_level(WebKitWebView* webView, gfloat zoomLevel)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- webkit_web_view_apply_zoom_level(webView, zoomLevel);
- g_object_notify(G_OBJECT(webView), "zoom-level");
-}
-
-/**
- * webkit_web_view_zoom_in:
- * @web_view: a #WebKitWebView
- *
- * Increases the zoom level of @web_view. The current zoom
- * level is incremented by the value of the "zoom-step"
- * property of the #WebKitWebSettings associated with @web_view.
- *
- * Since: 1.0.1
- */
-void webkit_web_view_zoom_in(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- WebKitWebViewPrivate* priv = webView->priv;
- gfloat zoomMultiplierRatio;
- g_object_get(priv->webSettings.get(), "zoom-step", &zoomMultiplierRatio, NULL);
-
- webkit_web_view_set_zoom_level(webView, webkit_web_view_get_zoom_level(webView) + zoomMultiplierRatio);
-}
-
-/**
- * webkit_web_view_zoom_out:
- * @web_view: a #WebKitWebView
- *
- * Decreases the zoom level of @web_view. The current zoom
- * level is decremented by the value of the "zoom-step"
- * property of the #WebKitWebSettings associated with @web_view.
- *
- * Since: 1.0.1
- */
-void webkit_web_view_zoom_out(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- WebKitWebViewPrivate* priv = webView->priv;
- gfloat zoomMultiplierRatio;
- g_object_get(priv->webSettings.get(), "zoom-step", &zoomMultiplierRatio, NULL);
-
- webkit_web_view_set_zoom_level(webView, webkit_web_view_get_zoom_level(webView) - zoomMultiplierRatio);
-}
-
-/**
- * webkit_web_view_get_full_content_zoom:
- * @web_view: a #WebKitWebView
- *
- * Returns whether the zoom level affects only text or all elements.
- *
- * Return value: %FALSE if only text should be scaled (the default),
- * %TRUE if the full content of the view should be scaled.
- *
- * Since: 1.0.1
- */
-gboolean webkit_web_view_get_full_content_zoom(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- WebKitWebViewPrivate* priv = webView->priv;
- return priv->zoomFullContent;
-}
-
-/**
- * webkit_web_view_set_full_content_zoom:
- * @web_view: a #WebKitWebView
- * @full_content_zoom: %FALSE if only text should be scaled (the default),
- * %TRUE if the full content of the view should be scaled.
- *
- * Sets whether the zoom level affects only text or all elements.
- *
- * Since: 1.0.1
- */
-void webkit_web_view_set_full_content_zoom(WebKitWebView* webView, gboolean zoomFullContent)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- WebKitWebViewPrivate* priv = webView->priv;
- if (priv->zoomFullContent == zoomFullContent)
- return;
-
- Frame* frame = core(webView)->mainFrame();
- if (!frame)
- return;
-
- gfloat zoomLevel = priv->zoomFullContent ? frame->pageZoomFactor() : frame->textZoomFactor();
-
- priv->zoomFullContent = zoomFullContent;
- if (priv->zoomFullContent)
- frame->setPageAndTextZoomFactors(zoomLevel, 1);
- else
- frame->setPageAndTextZoomFactors(1, zoomLevel);
-
- g_object_notify(G_OBJECT(webView), "full-content-zoom");
-}
-
-/**
- * webkit_web_view_get_load_status:
- * @web_view: a #WebKitWebView
- *
- * Determines the current status of the load.
- *
- * Returns: a #WebKitLoadStatus specifying the status of the current load
- *
- * Since: 1.1.7
- */
-WebKitLoadStatus webkit_web_view_get_load_status(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), WEBKIT_LOAD_FINISHED);
-
- WebKitWebViewPrivate* priv = webView->priv;
- return priv->loadStatus;
-}
-
-/**
- * webkit_web_view_get_progress:
- * @web_view: a #WebKitWebView
- *
- * Determines the current progress of the load.
- *
- * Returns: a gdouble representing the status of the current load. This value
- * will be in the range [0, 1].
- *
- * Since: 1.1.7
- */
-gdouble webkit_web_view_get_progress(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 1.0);
-
- return core(webView)->progress()->estimatedProgress();
-}
-
-/**
- * webkit_web_view_get_encoding:
- * @web_view: a #WebKitWebView
- *
- * Returns the default encoding of the #WebKitWebView.
- *
- * Return value: the default encoding
- *
- * Since: 1.1.1
- */
-const gchar* webkit_web_view_get_encoding(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), NULL);
- String encoding = core(webView)->mainFrame()->document()->encoding();
- if (encoding.isEmpty())
- return 0;
- webView->priv->encoding = encoding.utf8();
- return webView->priv->encoding.data();
-}
-
-/**
- * webkit_web_view_set_custom_encoding:
- * @web_view: a #WebKitWebView
- * @encoding: the new encoding, or %NULL to restore the default encoding
- *
- * Sets the current #WebKitWebView encoding, without modifying the default one,
- * and reloads the page.
- *
- * Since: 1.1.1
- */
-void webkit_web_view_set_custom_encoding(WebKitWebView* webView, const char* encoding)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- core(webView)->mainFrame()->loader()->reloadWithOverrideEncoding(String::fromUTF8(encoding));
-}
-
-/**
- * webkit_web_view_get_custom_encoding:
- * @web_view: a #WebKitWebView
- *
- * Returns the current encoding of the #WebKitWebView, not the default-encoding
- * of WebKitWebSettings.
- *
- * Return value: a string containing the current custom encoding for @web_view, or %NULL if there's none set.
- *
- * Since: 1.1.1
- */
-const char* webkit_web_view_get_custom_encoding(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), NULL);
- String overrideEncoding = core(webView)->mainFrame()->loader()->documentLoader()->overrideEncoding();
- if (overrideEncoding.isEmpty())
- return 0;
- webView->priv->customEncoding = overrideEncoding.utf8();
- return webView->priv->customEncoding.data();
-}
-
-/**
- * webkit_web_view_set_view_mode:
- * @web_view: the #WebKitWebView that will have its view mode set
- * @mode: the %WebKitWebViewViewMode to be set
- *
- * Sets the view-mode property of the #WebKitWebView. Check the
- * property's documentation for more information.
- *
- * Since: 1.3.4
- */
-void webkit_web_view_set_view_mode(WebKitWebView* webView, WebKitWebViewViewMode mode)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- Page* page = core(webView);
-
- switch (mode) {
- case WEBKIT_WEB_VIEW_VIEW_MODE_FLOATING:
- page->setViewMode(Page::ViewModeFloating);
- break;
- case WEBKIT_WEB_VIEW_VIEW_MODE_FULLSCREEN:
- page->setViewMode(Page::ViewModeFullscreen);
- break;
- case WEBKIT_WEB_VIEW_VIEW_MODE_MAXIMIZED:
- page->setViewMode(Page::ViewModeMaximized);
- break;
- case WEBKIT_WEB_VIEW_VIEW_MODE_MINIMIZED:
- page->setViewMode(Page::ViewModeMinimized);
- break;
- default:
- page->setViewMode(Page::ViewModeWindowed);
- break;
- }
-}
-
-/**
- * webkit_web_view_get_view_mode:
- * @web_view: the #WebKitWebView to obtain the view mode from
- *
- * Gets the value of the view-mode property of the
- * #WebKitWebView. Check the property's documentation for more
- * information.
- *
- * Return value: the %WebKitWebViewViewMode currently set for the
- * #WebKitWebView.
- *
- * Since: 1.3.4
- */
-WebKitWebViewViewMode webkit_web_view_get_view_mode(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), WEBKIT_WEB_VIEW_VIEW_MODE_WINDOWED);
-
- Page* page = core(webView);
- Page::ViewMode mode = page->viewMode();
-
- if (mode == Page::ViewModeFloating)
- return WEBKIT_WEB_VIEW_VIEW_MODE_FLOATING;
-
- if (mode == Page::ViewModeFullscreen)
- return WEBKIT_WEB_VIEW_VIEW_MODE_FULLSCREEN;
-
- if (mode == Page::ViewModeMaximized)
- return WEBKIT_WEB_VIEW_VIEW_MODE_MAXIMIZED;
-
- if (mode == Page::ViewModeMinimized)
- return WEBKIT_WEB_VIEW_VIEW_MODE_MINIMIZED;
-
- return WEBKIT_WEB_VIEW_VIEW_MODE_WINDOWED;
-}
-
-/**
- * webkit_web_view_move_cursor:
- * @web_view: a #WebKitWebView
- * @step: a #GtkMovementStep
- * @count: integer describing the direction of the movement. 1 for forward, -1 for backwards.
- *
- * Move the cursor in @view as described by @step and @count.
- *
- * Since: 1.1.4
- */
-void webkit_web_view_move_cursor(WebKitWebView* webView, GtkMovementStep step, gint count)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
- g_return_if_fail(step == GTK_MOVEMENT_VISUAL_POSITIONS ||
- step == GTK_MOVEMENT_DISPLAY_LINES ||
- step == GTK_MOVEMENT_PAGES ||
- step == GTK_MOVEMENT_BUFFER_ENDS);
- g_return_if_fail(count == 1 || count == -1);
-
- gboolean handled;
- g_signal_emit(webView, webkit_web_view_signals[MOVE_CURSOR], 0, step, count, &handled);
-}
-
-/**
- * webkit_web_view_can_undo:
- * @web_view: a #WebKitWebView
- *
- * Determines whether or not it is currently possible to undo the last
- * editing command in the view.
- *
- * Return value: %TRUE if a undo can be done, %FALSE if not
- *
- * Since: 1.1.14
- */
-gboolean webkit_web_view_can_undo(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- return frame->editor().canUndo();
-}
-
-/**
- * webkit_web_view_undo:
- * @web_view: a #WebKitWebView
- *
- * Undoes the last editing command in the view, if possible.
- *
- * Since: 1.1.14
- */
-void webkit_web_view_undo(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- if (webkit_web_view_can_undo(webView))
- g_signal_emit(webView, webkit_web_view_signals[UNDO], 0);
-}
-
-/**
- * webkit_web_view_can_redo:
- * @web_view: a #WebKitWebView
- *
- * Determines whether or not it is currently possible to redo the last
- * editing command in the view.
- *
- * Return value: %TRUE if a redo can be done, %FALSE if not
- *
- * Since: 1.1.14
- */
-gboolean webkit_web_view_can_redo(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- return frame->editor().canRedo();
-}
-
-/**
- * webkit_web_view_redo:
- * @web_view: a #WebKitWebView
- *
- * Redoes the last editing command in the view, if possible.
- *
- * Since: 1.1.14
- */
-void webkit_web_view_redo(WebKitWebView* webView)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- if (webkit_web_view_can_redo(webView))
- g_signal_emit(webView, webkit_web_view_signals[REDO], 0);
-}
-
-
-/**
- * webkit_web_view_set_view_source_mode:
- * @web_view: a #WebKitWebView
- * @view_source_mode: the mode to turn on or off view source mode
- *
- * Set whether the view should be in view source mode. Setting this mode to
- * %TRUE before loading a URI will display the source of the web page in a
- * nice and readable format.
- *
- * Since: 1.1.14
- */
-void webkit_web_view_set_view_source_mode (WebKitWebView* webView, gboolean mode)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- if (Frame* mainFrame = core(webView)->mainFrame())
- mainFrame->setInViewSourceMode(mode);
-}
-
-/**
- * webkit_web_view_get_view_source_mode:
- * @web_view: a #WebKitWebView
- *
- * Return value: %TRUE if @web_view is in view source mode, %FALSE otherwise.
- *
- * Since: 1.1.14
- */
-gboolean webkit_web_view_get_view_source_mode (WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), FALSE);
-
- if (Frame* mainFrame = core(webView)->mainFrame())
- return mainFrame->inViewSourceMode();
-
- return FALSE;
-}
-
-// Internal subresource management
-void webkit_web_view_add_main_resource(WebKitWebView* webView, const char* identifier, WebKitWebResource* webResource)
-{
- WebKitWebViewPrivate* priv = webView->priv;
-
- priv->mainResource = adoptGRef(webResource);
- priv->mainResourceIdentifier = identifier;
-}
-
-void webkit_web_view_add_resource(WebKitWebView* webView, const char* identifier, WebKitWebResource* webResource)
-{
- WebKitWebViewPrivate* priv = webView->priv;
- g_hash_table_insert(priv->subResources.get(), g_strdup(identifier), webResource);
-}
-
-void webkitWebViewRemoveSubresource(WebKitWebView* webView, const char* identifier)
-{
- ASSERT(identifier);
-
- // Don't remove the main resource.
- const CString& mainResource = webView->priv->mainResourceIdentifier;
- if (!mainResource.isNull() && g_str_equal(identifier, mainResource.data()))
- return;
- g_hash_table_remove(webView->priv->subResources.get(), identifier);
-}
-
-WebKitWebResource* webkit_web_view_get_resource(WebKitWebView* webView, char* identifier)
-{
- WebKitWebViewPrivate* priv = webView->priv;
- gpointer webResource = 0;
- gboolean resourceFound = g_hash_table_lookup_extended(priv->subResources.get(), identifier, NULL, &webResource);
-
- // The only resource we do not store in this hash table is the
- // main! If we did not find a request, it probably means the load
- // has been interrupted while while a resource was still being
- // loaded.
- if (!resourceFound && !g_str_equal(identifier, priv->mainResourceIdentifier.data()))
- return 0;
-
- if (!webResource)
- return webkit_web_view_get_main_resource(webView);
-
- return WEBKIT_WEB_RESOURCE(webResource);
-}
-
-WebKitWebResource* webkit_web_view_get_main_resource(WebKitWebView* webView)
-{
- return webView->priv->mainResource.get();
-}
-
-void webkit_web_view_clear_resources(WebKitWebView* webView)
-{
- WebKitWebViewPrivate* priv = webView->priv;
-
- if (priv->subResources)
- g_hash_table_remove_all(priv->subResources.get());
-}
-
-static gboolean cleanupTemporarilyCachedSubresources(gpointer data)
-{
- GList* subResources = static_cast<GList*>(data);
- g_list_foreach(subResources, reinterpret_cast<GFunc>(g_object_unref), NULL);
- g_list_free(subResources);
- return FALSE;
-}
-
-GList* webkit_web_view_get_subresources(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), NULL);
- GList* subResources = 0;
- Vector<PassRefPtr<ArchiveResource> > coreSubResources;
-
- core(webView)->mainFrame()->loader()->documentLoader()->getSubresources(coreSubResources);
-
- for (unsigned i = 0; i < coreSubResources.size(); i++) {
- WebKitWebResource* webResource = WEBKIT_WEB_RESOURCE(g_object_new(WEBKIT_TYPE_WEB_RESOURCE, NULL));
- webkit_web_resource_init_with_core_resource(webResource, coreSubResources[i]);
- subResources = g_list_append(subResources, webResource);
- }
-
- if (subResources)
- g_timeout_add(1, cleanupTemporarilyCachedSubresources, g_list_copy(subResources));
-
- return subResources;
-}
-
-/* From EventHandler.cpp */
-static IntPoint documentPointForWindowPoint(Frame* frame, const IntPoint& windowPoint)
-{
- FrameView* view = frame->view();
- // FIXME: Is it really OK to use the wrong coordinates here when view is 0?
- // Historically the code would just crash; this is clearly no worse than that.
- return view ? view->windowToContents(windowPoint) : windowPoint;
-}
-
-void webkit_web_view_set_tooltip_text(WebKitWebView* webView, const char* tooltip)
-{
- WebKitWebViewPrivate* priv = webView->priv;
- if (tooltip && *tooltip != '\0') {
- priv->tooltipText = tooltip;
- gtk_widget_set_has_tooltip(GTK_WIDGET(webView), TRUE);
- } else {
- priv->tooltipText = "";
- gtk_widget_set_has_tooltip(GTK_WIDGET(webView), FALSE);
- }
-
- gtk_widget_trigger_tooltip_query(GTK_WIDGET(webView));
-}
-
-/**
- * webkit_web_view_get_hit_test_result:
- * @web_view: a #WebKitWebView
- * @event: a #GdkEventButton
- *
- * Does a 'hit test' in the coordinates specified by @event to figure
- * out context information about that position in the @web_view.
- *
- * Returns: (transfer full): a newly created #WebKitHitTestResult with the context of the
- * specified position.
- *
- * Since: 1.1.15
- **/
-WebKitHitTestResult* webkit_web_view_get_hit_test_result(WebKitWebView* webView, GdkEventButton* event)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), NULL);
- g_return_val_if_fail(event, NULL);
-
- PlatformMouseEvent mouseEvent = PlatformMouseEvent(event);
- Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
- HitTestRequest request(HitTestRequest::Active | HitTestRequest::DisallowShadowContent);
- IntPoint documentPoint = documentPointForWindowPoint(frame, mouseEvent.position());
- MouseEventWithHitTestResults mev = frame->document()->prepareMouseEvent(request, documentPoint, mouseEvent);
-
- return kit(mev.hitTestResult());
-}
-
-/**
- * webkit_web_view_get_icon_uri:
- * @web_view: the #WebKitWebView object
- *
- * Obtains the URI for the favicon for the given #WebKitWebView, or
- * %NULL if there is none.
- *
- * Return value: the URI for the favicon, or %NULL
- *
- * Since: 1.1.18
- */
-const gchar* webkit_web_view_get_icon_uri(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
- String iconURL = iconDatabase().synchronousIconURLForPageURL(core(webView)->mainFrame()->document()->url().string());
- webView->priv->iconURI = iconURL.utf8();
- return webView->priv->iconURI.data();
-}
-
-/**
- * webkit_web_view_get_icon_pixbuf:
- * @web_view: the #WebKitWebView object
- *
- * Obtains a #GdkPixbuf of the favicon for the given #WebKitWebView, or
- * a default icon if there is no icon for the given page. Use
- * webkit_web_view_get_icon_uri() if you need to distinguish these cases.
- * Usually you want to connect to WebKitWebView::icon-loaded and call this
- * method in the callback.
- *
- * The pixbuf will have the largest size provided by the server and should
- * be resized before it is displayed.
- * See also webkit_icon_database_get_icon_pixbuf().
- *
- * Returns: (transfer full): a new reference to a #GdkPixbuf, or %NULL
- *
- * Since: 1.3.13
- *
- * Deprecated: 1.8: Use webkit_web_view_try_get_favicon_pixbuf() instead.
- */
-GdkPixbuf* webkit_web_view_get_icon_pixbuf(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
-
- const gchar* pageURI = webkit_web_view_get_uri(webView);
- WebKitIconDatabase* database = webkit_get_icon_database();
- return webkit_icon_database_get_icon_pixbuf(database, pageURI);
-}
-
-/**
- * webkit_web_view_try_get_favicon_pixbuf:
- * @web_view: the #WebKitWebView object
- * @width: the desired width for the icon
- * @height: the desired height for the icon
- *
- * Obtains a #GdkPixbuf of the favicon for the given
- * #WebKitWebView. This will return %NULL is there is no icon for the
- * current #WebKitWebView or if the icon is in the database but not
- * available at the moment of this call. Use
- * webkit_web_view_get_icon_uri() if you need to distinguish these
- * cases. Usually you want to connect to WebKitWebView::icon-loaded
- * and call this method in the callback.
- *
- * See also webkit_favicon_database_try_get_favicon_pixbuf(). Contrary
- * to this function the icon database one returns the URL of the page
- * containing the icon.
- *
- * Returns: (transfer full): a new reference to a #GdkPixbuf, or %NULL
- *
- * Since: 1.8
- */
-GdkPixbuf* webkit_web_view_try_get_favicon_pixbuf(WebKitWebView* webView, guint width, guint height)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
-
- const gchar* pageURI = webkit_web_view_get_uri(webView);
- WebKitFaviconDatabase* database = webkit_get_favicon_database();
- return webkit_favicon_database_try_get_favicon_pixbuf(database, pageURI, width, height);
-}
-
-/**
- * webkit_web_view_get_dom_document:
- * @web_view: a #WebKitWebView
- *
- * Returns: (transfer none): the #WebKitDOMDocument currently loaded in
- * the main frame of the @web_view or %NULL if no document is loaded
- *
- * Since: 1.3.1
- **/
-WebKitDOMDocument*
-webkit_web_view_get_dom_document(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
-
- return webkit_web_frame_get_dom_document(webView->priv->mainFrame);
-}
-
-GtkMenu* webkit_web_view_get_context_menu(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
-
-#if ENABLE(CONTEXT_MENUS)
- ContextMenu* menu = core(webView)->contextMenuController()->contextMenu();
- if (!menu)
- return 0;
- return menu->platformDescription();
-#else
- return 0;
-#endif
-}
-
-/**
- * webkit_web_view_get_snapshot:
- * @web_view: a #WebKitWebView
- *
- * Retrieves a snapshot with the visible contents of @webview.
- *
- * Returns: (transfer full): a @cairo_surface_t
- *
- * Since: 1.10
- **/
-cairo_surface_t*
-webkit_web_view_get_snapshot(WebKitWebView* webView)
-{
- g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
-
- Frame* frame = core(webView)->mainFrame();
- if (!frame || !frame->contentRenderer() || !frame->view())
- return 0;
-
- frame->view()->updateLayoutAndStyleIfNeededRecursive();
- GtkAllocation allocation;
- gtk_widget_get_allocation(GTK_WIDGET(webView), &allocation);
- cairo_surface_t* surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, allocation.width, allocation.height);
- RefPtr<cairo_t> cr = adoptRef(cairo_create(surface));
- GraphicsContext gc(cr.get());
-
- IntRect rect = allocation;
- gc.applyDeviceScaleFactor(frame->page()->deviceScaleFactor());
- gc.save();
- gc.clip(rect);
- if (webView->priv->transparent)
- gc.clearRect(rect);
- frame->view()->paint(&gc, rect);
- gc.restore();
-
- return surface;
-}
-
-#if ENABLE(ICONDATABASE)
-void webkitWebViewIconLoaded(WebKitFaviconDatabase* database, const char* frameURI, WebKitWebView* webView)
-{
- // Since we definitely have an icon the WebView doesn't need to
- // listen for notifications any longer.
- webkitWebViewRegisterForIconNotification(webView, false);
-
- // webkit_web_view_get_icon_uri() properly updates the "icon-uri" property.
- g_object_notify(G_OBJECT(webView), "icon-uri");
- g_signal_emit(webView, webkit_web_view_signals[ICON_LOADED], 0, webkit_web_view_get_icon_uri(webView));
-}
-
-void webkitWebViewRegisterForIconNotification(WebKitWebView* webView, bool shouldRegister)
-{
- WebKitFaviconDatabase* database = webkit_get_favicon_database();
- if (shouldRegister) {
- if (!g_signal_handler_is_connected(database, webView->priv->iconLoadedHandler))
- webView->priv->iconLoadedHandler = g_signal_connect(database, "icon-loaded",
- G_CALLBACK(webkitWebViewIconLoaded), webView);
- } else
- if (g_signal_handler_is_connected(database, webView->priv->iconLoadedHandler))
- g_signal_handler_disconnect(database, webView->priv->iconLoadedHandler);
-}
-#endif
-
-void webkitWebViewDirectionChanged(WebKitWebView* webView, GtkTextDirection previousDirection, gpointer)
-{
- g_return_if_fail(WEBKIT_IS_WEB_VIEW(webView));
-
- GtkTextDirection direction = gtk_widget_get_direction(GTK_WIDGET(webView));
-
- Frame* focusedFrame = core(webView)->focusController()->focusedFrame();
- if (!focusedFrame)
- return;
-
- Editor& editor = focusedFrame->editor();
- if (!editor.canEdit())
- return;
-
- switch (direction) {
- case GTK_TEXT_DIR_NONE:
- editor.setBaseWritingDirection(NaturalWritingDirection);
- break;
- case GTK_TEXT_DIR_LTR:
- editor.setBaseWritingDirection(LeftToRightWritingDirection);
- break;
- case GTK_TEXT_DIR_RTL:
- editor.setBaseWritingDirection(RightToLeftWritingDirection);
- break;
- default:
- g_assert_not_reached();
- return;
- }
-}
-
-namespace WebKit {
-
-WebCore::Page* core(WebKitWebView* webView)
-{
- if (!webView)
- return 0;
-
- WebKitWebViewPrivate* priv = webView->priv;
- return priv ? priv->corePage : 0;
-}
-
-WebKitWebView* kit(WebCore::Page* corePage)
-{
- if (!corePage)
- return 0;
-
- WebCore::ChromeClient* chromeClient = corePage->chrome().client();
- if (chromeClient->isEmptyChromeClient())
- return 0;
-
- return static_cast<WebKit::ChromeClient*>(chromeClient)->webView();
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebview.h b/Source/WebKit/gtk/webkit/webkitwebview.h
deleted file mode 100644
index 5c09db61e..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebview.h
+++ /dev/null
@@ -1,453 +0,0 @@
-/*
- * Copyright (C) 2007 Holger Hans Peter Freyther
- * Copyright (C) 2007, 2008 Alp Toker <alp@atoker.com>
- * Copyright (C) 2008 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebview_h
-#define webkitwebview_h
-
-#include <gtk/gtk.h>
-#include <libsoup/soup.h>
-#include <JavaScriptCore/JSBase.h>
-#include <webkit/webkitdefines.h>
-#include <webkit/webkitfilechooserrequest.h>
-#include <webkit/webkitwebbackforwardlist.h>
-#include <webkit/webkitwebframe.h>
-#include <webkit/webkitwebhistoryitem.h>
-#include <webkit/webkitwebsettings.h>
-#include <webkitdom/webkitdom.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_VIEW (webkit_web_view_get_type())
-#define WEBKIT_WEB_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_VIEW, WebKitWebView))
-#define WEBKIT_WEB_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_VIEW, WebKitWebViewClass))
-#define WEBKIT_IS_WEB_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_VIEW))
-#define WEBKIT_IS_WEB_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_VIEW))
-#define WEBKIT_WEB_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_VIEW, WebKitWebViewClass))
-
-typedef struct _WebKitWebViewPrivate WebKitWebViewPrivate;
-
-/**
- * WebKitNavigationResponse:
- * @WEBKIT_NAVIGATION_RESPONSE_ACCEPT: Instruct WebKit to allow the navigation.
- * @WEBKIT_NAVIGATION_RESPONSE_IGNORE: Instruct WebKit to ignore the navigation.
- * @WEBKIT_NAVIGATION_RESPONSE_DOWNLOAD: Instruct WebKit to start a download of the destination instead.
- *
- * Enum values used to denote the various responses to a navigation policy decision.
- **/
-typedef enum {
- WEBKIT_NAVIGATION_RESPONSE_ACCEPT,
- WEBKIT_NAVIGATION_RESPONSE_IGNORE,
- WEBKIT_NAVIGATION_RESPONSE_DOWNLOAD
-} WebKitNavigationResponse;
-
-/**
- * WebKitWebViewTargetInfo:
- * @WEBKIT_WEB_VIEW_TARGET_INFO_HTML: Rich markup data
- * @WEBKIT_WEB_VIEW_TARGET_INFO_TEXT: Text data
- * @WEBKIT_WEB_VIEW_TARGET_INFO_IMAGE: Image data
- * @WEBKIT_WEB_VIEW_TARGET_INFO_URI_LIST: URI list data
- * @WEBKIT_WEB_VIEW_TARGET_INFO_NETSCAPE_URL: A single URL in the Netscape protocol
- *
- * Enum values used to denote the info value of various selection types. These can be used
- * to interpret the data WebKitGTK+ publishes via GtkClipboard and drag-and-drop.
- **/
-typedef enum
-{
- WEBKIT_WEB_VIEW_TARGET_INFO_HTML,
- WEBKIT_WEB_VIEW_TARGET_INFO_TEXT,
- WEBKIT_WEB_VIEW_TARGET_INFO_IMAGE,
- WEBKIT_WEB_VIEW_TARGET_INFO_URI_LIST,
- WEBKIT_WEB_VIEW_TARGET_INFO_NETSCAPE_URL
-} WebKitWebViewTargetInfo;
-
-/**
- * WebKitWebViewViewMode:
- * @WEBKIT_WEB_VIEW_VIEW_MODE_WINDOWED: Windowed view mode
- * @WEBKIT_WEB_VIEW_VIEW_MODE_FLOATING: Floating view mode
- * @WEBKIT_WEB_VIEW_VIEW_MODE_FULLSCREEN: Fullscreen view mode
- * @WEBKIT_WEB_VIEW_VIEW_MODE_MAXIMIZED: Maximized view mode
- * @WEBKIT_WEB_VIEW_VIEW_MODE_MINIMIZED: Minimized view mode
- *
- * Enum values used to denote the various types of view modes. See the
- * #WebKitWebView:view-mode property.
- **/
-typedef enum
-{
- WEBKIT_WEB_VIEW_VIEW_MODE_WINDOWED,
- WEBKIT_WEB_VIEW_VIEW_MODE_FLOATING,
- WEBKIT_WEB_VIEW_VIEW_MODE_FULLSCREEN,
- WEBKIT_WEB_VIEW_VIEW_MODE_MAXIMIZED,
- WEBKIT_WEB_VIEW_VIEW_MODE_MINIMIZED
-} WebKitWebViewViewMode;
-
-typedef enum
-{
- WEBKIT_SELECTION_AFFINITY_UPSTREAM,
- WEBKIT_SELECTION_AFFINITY_DOWNSTREAM,
-} WebKitSelectionAffinity;
-
-typedef enum
-{
- WEBKIT_INSERT_ACTION_TYPED,
- WEBKIT_INSERT_ACTION_PASTED,
- WEBKIT_INSERT_ACTION_DROPPED,
-} WebKitInsertAction;
-
-struct _WebKitWebView {
- GtkContainer parent_instance;
-
- /*< private >*/
- WebKitWebViewPrivate *priv;
-};
-
-struct _WebKitWebViewClass {
- GtkContainerClass parent_class;
-
- /*< public >*/
- /*
- * default handler/virtual methods
- */
- WebKitWebView * (* create_web_view) (WebKitWebView *web_view,
- WebKitWebFrame *web_frame);
-
- gboolean (* web_view_ready) (WebKitWebView* web_view);
-
- gboolean (* close_web_view) (WebKitWebView* web_view);
-
- WebKitNavigationResponse (* navigation_requested) (WebKitWebView *web_view,
- WebKitWebFrame *frame,
- WebKitNetworkRequest *request);
- void (* window_object_cleared) (WebKitWebView *web_view,
- WebKitWebFrame *frame,
- JSGlobalContextRef context,
- JSObjectRef window_object);
- gchar * (* choose_file) (WebKitWebView *web_view,
- WebKitWebFrame *frame,
- const gchar *old_file);
- gboolean (* script_alert) (WebKitWebView *web_view,
- WebKitWebFrame *frame,
- const gchar *alert_message);
- gboolean (* script_confirm) (WebKitWebView *web_view,
- WebKitWebFrame *frame,
- const gchar *confirm_message,
- gboolean *did_confirm);
- gboolean (* script_prompt) (WebKitWebView *web_view,
- WebKitWebFrame *frame,
- const gchar *message,
- const gchar *default_value,
- gchar* *value);
- gboolean (* console_message) (WebKitWebView *web_view,
- const gchar *message,
- guint line_number,
- const gchar* source_id);
- void (* select_all) (WebKitWebView *web_view);
- void (* cut_clipboard) (WebKitWebView *web_view);
- void (* copy_clipboard) (WebKitWebView *web_view);
- void (* paste_clipboard) (WebKitWebView *web_view);
- gboolean (* move_cursor) (WebKitWebView *web_view,
- GtkMovementStep step,
- gint count);
-
- /*
- * internal
- */
- void (* set_scroll_adjustments) (WebKitWebView *web_view,
- GtkAdjustment *hadjustment,
- GtkAdjustment *vadjustment);
-
- void (* undo) (WebKitWebView *web_view);
- void (* redo) (WebKitWebView *web_view);
- gboolean (* should_allow_editing_action) (WebKitWebView *web_view);
- gboolean (* entering_fullscreen) (WebKitWebView *web_view);
- gboolean (* leaving_fullscreen) (WebKitWebView *web_view);
- gboolean (* run_file_chooser) (WebKitWebView *web_view,
- WebKitFileChooserRequest *request);
-};
-
-WEBKIT_API GType
-webkit_web_view_get_type (void);
-
-WEBKIT_API GtkWidget *
-webkit_web_view_new (void);
-
-WEBKIT_API const gchar *
-webkit_web_view_get_title (WebKitWebView *web_view);
-
-
-WEBKIT_API const gchar *
-webkit_web_view_get_uri (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_set_maintains_back_forward_list (WebKitWebView *web_view,
- gboolean flag);
-
-WEBKIT_API WebKitWebBackForwardList *
-webkit_web_view_get_back_forward_list (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_go_to_back_forward_item (WebKitWebView *web_view,
- WebKitWebHistoryItem *item);
-
-WEBKIT_API gboolean
-webkit_web_view_can_go_back (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_can_go_back_or_forward (WebKitWebView *web_view,
- gint steps);
-WEBKIT_API gboolean
-webkit_web_view_can_go_forward (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_go_back (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_go_back_or_forward (WebKitWebView *web_view,
- gint steps);
-WEBKIT_API void
-webkit_web_view_go_forward (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_stop_loading (WebKitWebView *web_view);
-
-#if !defined(WEBKIT_DISABLE_DEPRECATED)
-WEBKIT_API void
-webkit_web_view_open (WebKitWebView *web_view,
- const gchar *uri);
-
-#endif
-
-WEBKIT_API void
-webkit_web_view_reload (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_reload_bypass_cache (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_load_uri (WebKitWebView *web_view,
- const gchar *uri);
-WEBKIT_API void
-webkit_web_view_load_string (WebKitWebView *web_view,
- const gchar *content,
- const gchar *mime_type,
- const gchar *encoding,
- const gchar *base_uri);
-
-#if !defined(WEBKIT_DISABLE_DEPRECATED)
-WEBKIT_API void
-webkit_web_view_load_html_string (WebKitWebView *web_view,
- const gchar *content,
- const gchar *base_uri);
-#endif
-
-WEBKIT_API void
-webkit_web_view_load_request (WebKitWebView *web_view,
- WebKitNetworkRequest *request);
-
-WEBKIT_API gboolean
-webkit_web_view_search_text (WebKitWebView *web_view,
- const gchar *text,
- gboolean case_sensitive,
- gboolean forward,
- gboolean wrap);
-
-WEBKIT_API guint
-webkit_web_view_mark_text_matches (WebKitWebView *web_view,
- const gchar *string,
- gboolean case_sensitive,
- guint limit);
-
-WEBKIT_API void
-webkit_web_view_set_highlight_text_matches (WebKitWebView *web_view,
- gboolean highlight);
-
-WEBKIT_API void
-webkit_web_view_unmark_text_matches (WebKitWebView *web_view);
-
-WEBKIT_API WebKitWebFrame *
-webkit_web_view_get_main_frame (WebKitWebView *web_view);
-
-WEBKIT_API WebKitWebFrame *
-webkit_web_view_get_focused_frame (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_execute_script (WebKitWebView *web_view,
- const gchar *script);
-
-WEBKIT_API gboolean
-webkit_web_view_can_cut_clipboard (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_can_copy_clipboard (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_can_paste_clipboard (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_cut_clipboard (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_copy_clipboard (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_paste_clipboard (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_delete_selection (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_has_selection (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_select_all (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_get_editable (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_set_editable (WebKitWebView *web_view,
- gboolean flag);
-
-WEBKIT_API GtkTargetList *
-webkit_web_view_get_copy_target_list (WebKitWebView *web_view);
-
-WEBKIT_API GtkTargetList *
-webkit_web_view_get_paste_target_list (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_set_settings (WebKitWebView *web_view,
- WebKitWebSettings *settings);
-
-WEBKIT_API WebKitWebSettings *
-webkit_web_view_get_settings (WebKitWebView *web_view);
-
-WEBKIT_API WebKitWebInspector *
-webkit_web_view_get_inspector (WebKitWebView *web_view);
-
-WEBKIT_API WebKitWebWindowFeatures*
-webkit_web_view_get_window_features (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_can_show_mime_type (WebKitWebView *web_view,
- const gchar *mime_type);
-
-WEBKIT_API gboolean
-webkit_web_view_get_transparent (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_set_transparent (WebKitWebView *web_view,
- gboolean flag);
-
-WEBKIT_API gfloat
-webkit_web_view_get_zoom_level (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_set_zoom_level (WebKitWebView *web_view,
- gfloat zoom_level);
-
-WEBKIT_API void
-webkit_web_view_zoom_in (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_zoom_out (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_get_full_content_zoom (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_set_full_content_zoom (WebKitWebView *web_view,
- gboolean full_content_zoom);
-
-WEBKIT_API const gchar*
-webkit_web_view_get_encoding (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_set_custom_encoding (WebKitWebView *web_view,
- const gchar *encoding);
-
-WEBKIT_API const char*
-webkit_web_view_get_custom_encoding (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_set_view_mode (WebKitWebView *web_view,
- WebKitWebViewViewMode mode);
-
-WEBKIT_API WebKitWebViewViewMode
-webkit_web_view_get_view_mode (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_move_cursor (WebKitWebView *web_view,
- GtkMovementStep step,
- gint count);
-
-WEBKIT_API WebKitLoadStatus
-webkit_web_view_get_load_status (WebKitWebView *web_view);
-
-WEBKIT_API gdouble
-webkit_web_view_get_progress (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_undo (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_can_undo (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_redo (WebKitWebView *web_view);
-
-WEBKIT_API gboolean
-webkit_web_view_can_redo (WebKitWebView *web_view);
-
-WEBKIT_API void
-webkit_web_view_set_view_source_mode (WebKitWebView *web_view,
- gboolean view_source_mode);
-
-WEBKIT_API gboolean
-webkit_web_view_get_view_source_mode (WebKitWebView *web_view);
-
-WEBKIT_API WebKitHitTestResult*
-webkit_web_view_get_hit_test_result (WebKitWebView *web_view,
- GdkEventButton *event);
-
-WEBKIT_API const gchar *
-webkit_web_view_get_icon_uri (WebKitWebView *web_view);
-
-#if !defined(WEBKIT_DISABLE_DEPRECATED)
-WEBKIT_API GdkPixbuf *
-webkit_web_view_get_icon_pixbuf (WebKitWebView *web_view);
-#endif
-
-WEBKIT_API GdkPixbuf *
-webkit_web_view_try_get_favicon_pixbuf (WebKitWebView *web_view,
- guint width,
- guint height);
-
-WEBKIT_API WebKitDOMDocument *
-webkit_web_view_get_dom_document (WebKitWebView *web_view);
-
-WEBKIT_API WebKitViewportAttributes*
-webkit_web_view_get_viewport_attributes (WebKitWebView *web_view);
-
-WEBKIT_API cairo_surface_t*
-webkit_web_view_get_snapshot (WebKitWebView *web_view);
-
-G_END_DECLS
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebviewprivate.h b/Source/WebKit/gtk/webkit/webkitwebviewprivate.h
deleted file mode 100644
index aeefbd0b9..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebviewprivate.h
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008, 2010 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebviewprivate_h
-#define webkitwebviewprivate_h
-
-#include "AcceleratedCompositingContext.h"
-#include "GeolocationClientMock.h"
-#include "GtkClickCounter.h"
-#include "GtkDragAndDropHelper.h"
-#include "Page.h"
-#include "ResourceHandle.h"
-#include "ResourceResponse.h"
-#include "WebViewInputMethodFilter.h"
-#include "WidgetBackingStore.h"
-#include <webkit/webkitwebview.h>
-#include <wtf/gobject/GOwnPtr.h>
-
-#if ENABLE(MEDIA_STREAM)
-#include "UserMediaClientGtk.h"
-#endif
-
-#if ENABLE(NAVIGATOR_CONTENT_UTILS)
-#include "NavigatorContentUtilsClientGtk.h"
-#endif
-
-namespace WebKit {
-WebCore::Page* core(WebKitWebView*);
-WebKitWebView* kit(WebCore::Page*);
-}
-
-extern "C" {
-
-#define WEBKIT_WEB_VIEW_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE((obj), WEBKIT_TYPE_WEB_VIEW, WebKitWebViewPrivate))
-typedef struct _WebKitWebViewPrivate WebKitWebViewPrivate;
-struct _WebKitWebViewPrivate {
- WebCore::Page* corePage;
- bool hasNativeWindow;
- OwnPtr<WebCore::WidgetBackingStore> backingStore;
- GRefPtr<WebKitWebSettings> webSettings;
- GRefPtr<WebKitWebInspector> webInspector;
- GRefPtr<WebKitViewportAttributes> viewportAttributes;
- GRefPtr<WebKitWebWindowFeatures> webWindowFeatures;
-
- WebKitWebFrame* mainFrame;
- GRefPtr<WebKitWebBackForwardList> backForwardList;
-
- GtkMenu* currentMenu;
- gint lastPopupXPosition;
- gint lastPopupYPosition;
-
- HashSet<GtkWidget*> children;
- WebKit::WebViewInputMethodFilter imFilter;
-
- gboolean transparent;
- bool needsResizeOnMap;
-
-#ifndef GTK_API_VERSION_2
- // GtkScrollablePolicy needs to be checked when
- // driving the scrollable adjustment values
- GtkScrollablePolicy horizontalScrollingPolicy;
- GtkScrollablePolicy verticalScrollingPolicy;
-#endif
-
- gboolean zoomFullContent;
- WebKitLoadStatus loadStatus;
- CString encoding;
- CString customEncoding;
-
- CString iconURI;
-
- gboolean disposing;
-
- // These are hosted here because the DataSource object is
- // created too late in the frame loading process.
- GRefPtr<WebKitWebResource> mainResource;
- CString mainResourceIdentifier;
- GRefPtr<GHashTable> subResources;
- CString tooltipText;
- WebCore::IntRect tooltipArea;
-
- WebCore::GtkClickCounter clickCounter;
- WebCore::GtkDragAndDropHelper dragAndDropHelper;
- bool selfScrolling;
-
-#if USE(ACCELERATED_COMPOSITING)
- OwnPtr<WebKit::AcceleratedCompositingContext> acceleratedCompositingContext;
-#endif
-
-#if ENABLE(ICONDATABASE)
- gulong iconLoadedHandler;
-#endif
-
-#if ENABLE(MEDIA_STREAM)
- OwnPtr<WebKit::UserMediaClientGtk> userMediaClient;
-#endif
-
-#if ENABLE(GEOLOCATION)
- OwnPtr<WebCore::GeolocationClientMock> geolocationClientMock;
-#endif
-
-#if ENABLE(NAVIGATOR_CONTENT_UTILS)
- OwnPtr<WebKit::NavigatorContentUtilsClient> navigatorContentUtilsClient;
-#endif
-};
-
-void webkit_web_view_notify_ready(WebKitWebView*);
-
-void webkit_web_view_request_download(WebKitWebView*, WebKitNetworkRequest*, const WebCore::ResourceResponse& = WebCore::ResourceResponse(), WebCore::ResourceHandle* = 0);
-
-void webkit_web_view_add_resource(WebKitWebView*, const char*, WebKitWebResource*);
-void webkit_web_view_add_main_resource(WebKitWebView*, const char*, WebKitWebResource*);
-void webkitWebViewRemoveSubresource(WebKitWebView*, const char*);
-WebKitWebResource* webkit_web_view_get_resource(WebKitWebView*, char*);
-WebKitWebResource* webkit_web_view_get_main_resource(WebKitWebView*);
-void webkit_web_view_clear_resources(WebKitWebView*);
-GList* webkit_web_view_get_subresources(WebKitWebView*);
-
-void webkit_web_view_set_tooltip_text(WebKitWebView*, const char*);
-GtkMenu* webkit_web_view_get_context_menu(WebKitWebView*);
-
-void webkitWebViewRunFileChooserRequest(WebKitWebView*, WebKitFileChooserRequest*);
-
-#if ENABLE(ICONDATABASE)
-void webkitWebViewRegisterForIconNotification(WebKitWebView*, bool shouldRegister);
-void webkitWebViewIconLoaded(WebKitFaviconDatabase*, const char* frameURI, WebKitWebView*);
-#endif
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkit/webkitwebwindowfeatures.cpp b/Source/WebKit/gtk/webkit/webkitwebwindowfeatures.cpp
deleted file mode 100644
index 5d1db6f61..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebwindowfeatures.cpp
+++ /dev/null
@@ -1,449 +0,0 @@
-/*
- * Copyright (C) 2008 Gustavo Noronha Silva <gns@gnome.org>
- * Copyright (C) 2008 Holger Hans Peter Freyther
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-#include "webkitwebwindowfeatures.h"
-
-#include "WindowFeatures.h"
-#include "webkitglobalsprivate.h"
-#include "webkitwebwindowfeaturesprivate.h"
-
-/**
- * SECTION:webkitwebwindowfeatures
- * @short_description: Window properties of a #WebKitWebView
- * @see_also: #WebKitWebView::web-view-ready
- *
- * The content of a #WebKitWebView can request to change certain
- * properties of a #WebKitWebView. This can include the x, y position
- * of the window, the width and height but also if a toolbar,
- * scrollbar, statusbar, locationbar should be visible to the user,
- * the request to show the #WebKitWebView fullscreen.
- *
- * In the normal case one will use #webkit_web_view_get_window_features
- * to get the #WebKitWebWindowFeatures and then monitor the property
- * changes. Be aware that the #WebKitWebWindowFeatures might change
- * before #WebKitWebView::web-view-ready signal is emitted.
- * To be safe listen to the notify::window-features signal of the #WebKitWebView
- * and reconnect the signals whenever the #WebKitWebWindowFeatures of
- * a #WebKitWebView changes.
- *
- * <informalexample><programlisting>
- * /<!-- -->* Get the current WebKitWebWindowFeatures *<!-- -->/
- * WebKitWebWindowFeatures *features = webkit_web_view_get_window_features (my_webview);
- *
- * /<!-- -->* Connect to the property changes *<!-- -->/
- * g_signal_connect (G_OBJECT(features), "notify::menubar-visible", G_CALLBACK(make_menu_bar_visible), NULL);
- * g_signal_connect (G_OBJECT(features), "notify::statusbar-visible", G_CALLBACK(make_status_bar_visible), NULL);
- *
- * </programlisting></informalexample>
- */
-
-enum {
- PROP_0,
-
- PROP_X,
- PROP_Y,
- PROP_WIDTH,
- PROP_HEIGHT,
- PROP_TOOLBAR_VISIBLE,
- PROP_STATUSBAR_VISIBLE,
- PROP_SCROLLBAR_VISIBLE,
- PROP_MENUBAR_VISIBLE,
- PROP_LOCATIONBAR_VISIBLE,
- PROP_FULLSCREEN,
-};
-
-G_DEFINE_TYPE(WebKitWebWindowFeatures, webkit_web_window_features, G_TYPE_OBJECT)
-
-struct _WebKitWebWindowFeaturesPrivate {
- gint x;
- gint y;
- gint width;
- gint height;
-
- gboolean toolbar_visible;
- gboolean statusbar_visible;
- gboolean scrollbar_visible;
- gboolean menubar_visible;
- gboolean locationbar_visible;
-
- gboolean fullscreen;
-};
-
-#define WEBKIT_WEB_WINDOW_FEATURES_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE((obj), WEBKIT_TYPE_WEB_WINDOW_FEATURES, WebKitWebWindowFeaturesPrivate))
-
-static void webkit_web_window_features_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec);
-
-static void webkit_web_window_features_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec);
-
-static void webkit_web_window_features_class_init(WebKitWebWindowFeaturesClass* klass)
-{
- GObjectClass* gobject_class = G_OBJECT_CLASS(klass);
- gobject_class->set_property = webkit_web_window_features_set_property;
- gobject_class->get_property = webkit_web_window_features_get_property;
-
- GParamFlags flags = (GParamFlags)(WEBKIT_PARAM_READWRITE | G_PARAM_CONSTRUCT);
-
- webkitInit();
-
- /**
- * WebKitWebWindowFeatures:x:
- *
- * The starting x position of the window on the screen.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_X,
- g_param_spec_int(
- "x",
- "x",
- "The starting x position of the window on the screen.",
- -1,
- G_MAXINT,
- -1,
- flags));
-
- /**
- * WebKitWebWindowFeatures:y:
- *
- * The starting y position of the window on the screen.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_Y,
- g_param_spec_int(
- "y",
- "y",
- "The starting y position of the window on the screen.",
- -1,
- G_MAXINT,
- -1,
- flags));
-
- /**
- * WebKitWebWindowFeatures:width:
- *
- * The width of the window on the screen.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_WIDTH,
- g_param_spec_int(
- "width",
- "Width",
- "The width of the window on the screen.",
- -1,
- G_MAXINT,
- -1,
- flags));
-
- /**
- * WebKitWebWindowFeatures:height:
- *
- * The height of the window on the screen.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_HEIGHT,
- g_param_spec_int(
- "height",
- "Height",
- "The height of the window on the screen.",
- -1,
- G_MAXINT,
- -1,
- flags));
-
- /**
- * WebKitWebWindowFeatures:toolbar-visible:
- *
- * Controls whether the toolbar should be visible for the window.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_TOOLBAR_VISIBLE,
- g_param_spec_boolean(
- "toolbar-visible",
- "Toolbar Visible",
- "Controls whether the toolbar should be visible for the window.",
- TRUE,
- flags));
-
- /**
- * WebKitWebWindowFeatures:statusbar-visible:
- *
- * Controls whether the statusbar should be visible for the window.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_STATUSBAR_VISIBLE,
- g_param_spec_boolean(
- "statusbar-visible",
- "Statusbar Visible",
- "Controls whether the statusbar should be visible for the window.",
- TRUE,
- flags));
-
- /**
- * WebKitWebWindowFeatures:scrollbar-visible:
- *
- * Controls whether the scrollbars should be visible for the window.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_SCROLLBAR_VISIBLE,
- g_param_spec_boolean(
- "scrollbar-visible",
- "Scrollbar Visible",
- "Controls whether the scrollbars should be visible for the window.",
- TRUE,
- flags));
-
- /**
- * WebKitWebWindowFeatures:menubar-visible:
- *
- * Controls whether the menubar should be visible for the window.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_MENUBAR_VISIBLE,
- g_param_spec_boolean(
- "menubar-visible",
- "Menubar Visible",
- "Controls whether the menubar should be visible for the window.",
- TRUE,
- flags));
-
- /**
- * WebKitWebWindowFeatures:locationbar-visible:
- *
- * Controls whether the locationbar should be visible for the window.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_LOCATIONBAR_VISIBLE,
- g_param_spec_boolean(
- "locationbar-visible",
- "Locationbar Visible",
- "Controls whether the locationbar should be visible for the window.",
- TRUE,
- flags));
-
- /**
- * WebKitWebWindowFeatures:fullscreen:
- *
- * Controls whether window will be displayed fullscreen.
- *
- * Since: 1.0.3
- */
- g_object_class_install_property(gobject_class,
- PROP_FULLSCREEN,
- g_param_spec_boolean(
- "fullscreen",
- "Fullscreen",
- "Controls whether window will be displayed fullscreen.",
- FALSE,
- flags));
-
-
- g_type_class_add_private(klass, sizeof(WebKitWebWindowFeaturesPrivate));
-}
-
-static void webkit_web_window_features_init(WebKitWebWindowFeatures* web_window_features)
-{
- web_window_features->priv = G_TYPE_INSTANCE_GET_PRIVATE(web_window_features, WEBKIT_TYPE_WEB_WINDOW_FEATURES, WebKitWebWindowFeaturesPrivate);
-}
-
-static void webkit_web_window_features_set_property(GObject* object, guint prop_id, const GValue* value, GParamSpec* pspec)
-{
- WebKitWebWindowFeatures* web_window_features = WEBKIT_WEB_WINDOW_FEATURES(object);
- WebKitWebWindowFeaturesPrivate* priv = web_window_features->priv;
-
- switch(prop_id) {
- case PROP_X:
- priv->x = g_value_get_int(value);
- break;
- case PROP_Y:
- priv->y = g_value_get_int(value);
- break;
- case PROP_WIDTH:
- priv->width = g_value_get_int(value);
- break;
- case PROP_HEIGHT:
- priv->height = g_value_get_int(value);
- break;
- case PROP_TOOLBAR_VISIBLE:
- priv->toolbar_visible = g_value_get_boolean(value);
- break;
- case PROP_STATUSBAR_VISIBLE:
- priv->statusbar_visible = g_value_get_boolean(value);
- break;
- case PROP_SCROLLBAR_VISIBLE:
- priv->scrollbar_visible = g_value_get_boolean(value);
- break;
- case PROP_MENUBAR_VISIBLE:
- priv->menubar_visible = g_value_get_boolean(value);
- break;
- case PROP_LOCATIONBAR_VISIBLE:
- priv->locationbar_visible = g_value_get_boolean(value);
- break;
- case PROP_FULLSCREEN:
- priv->fullscreen = g_value_get_boolean(value);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-static void webkit_web_window_features_get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec)
-{
- WebKitWebWindowFeatures* web_window_features = WEBKIT_WEB_WINDOW_FEATURES(object);
- WebKitWebWindowFeaturesPrivate* priv = web_window_features->priv;
-
- switch (prop_id) {
- case PROP_X:
- g_value_set_int(value, priv->x);
- break;
- case PROP_Y:
- g_value_set_int(value, priv->y);
- break;
- case PROP_WIDTH:
- g_value_set_int(value, priv->width);
- break;
- case PROP_HEIGHT:
- g_value_set_int(value, priv->height);
- break;
- case PROP_TOOLBAR_VISIBLE:
- g_value_set_boolean(value, priv->toolbar_visible);
- break;
- case PROP_STATUSBAR_VISIBLE:
- g_value_set_boolean(value, priv->statusbar_visible);
- break;
- case PROP_SCROLLBAR_VISIBLE:
- g_value_set_boolean(value, priv->scrollbar_visible);
- break;
- case PROP_MENUBAR_VISIBLE:
- g_value_set_boolean(value, priv->menubar_visible);
- break;
- case PROP_LOCATIONBAR_VISIBLE:
- g_value_set_boolean(value, priv->locationbar_visible);
- break;
- case PROP_FULLSCREEN:
- g_value_set_boolean(value, priv->fullscreen);
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
- break;
- }
-}
-
-/**
- * webkit_web_window_features_new:
- *
- * Creates a new #WebKitWebWindowFeatures instance with default values. It must
- * be manually attached to a WebView.
- *
- * Returns: a new #WebKitWebWindowFeatures instance
- *
- * Since: 1.0.3
- */
-WebKitWebWindowFeatures* webkit_web_window_features_new()
-{
- return WEBKIT_WEB_WINDOW_FEATURES(g_object_new(WEBKIT_TYPE_WEB_WINDOW_FEATURES, NULL));
-}
-
-/**
- * webkit_web_window_features_equal:
- * @features1: a #WebKitWebWindowFeatures instance
- * @features2: another #WebKitWebWindowFeatures instance
- *
- * Decides if a #WebKitWebWindowFeatures instance equals another, as
- * in has the same values.
- *
- * Returns: %TRUE if the instances have the same values, %FALSE
- * otherwise
- *
- * Since: 1.0.3
- */
-gboolean webkit_web_window_features_equal(WebKitWebWindowFeatures* features1, WebKitWebWindowFeatures* features2)
-{
- if (features1 == features2)
- return TRUE;
- if (!features1 || !features2)
- return FALSE;
-
- WebKitWebWindowFeaturesPrivate* priv1 = features1->priv;
- WebKitWebWindowFeaturesPrivate* priv2 = features2->priv;
-
- if ((priv1->x == priv2->x)
- && (priv1->y == priv2->y)
- && (priv1->width == priv2->width)
- && (priv1->height == priv2->height)
- && (priv1->toolbar_visible == priv2->toolbar_visible)
- && (priv1->statusbar_visible == priv2->statusbar_visible)
- && (priv1->scrollbar_visible == priv2->scrollbar_visible)
- && (priv1->menubar_visible == priv2->menubar_visible)
- && (priv1->locationbar_visible == priv2->locationbar_visible)
- && (priv1->fullscreen == priv2->fullscreen))
- return TRUE;
- return FALSE;
-}
-
-namespace WebKit {
-
-WebKitWebWindowFeatures* kitNew(const WebCore::WindowFeatures& features)
-{
- WebKitWebWindowFeatures *webWindowFeatures = webkit_web_window_features_new();
-
- if(features.xSet)
- g_object_set(webWindowFeatures, "x", static_cast<int>(features.x), NULL);
-
- if(features.ySet)
- g_object_set(webWindowFeatures, "y", static_cast<int>(features.y), NULL);
-
- if(features.widthSet)
- g_object_set(webWindowFeatures, "width", static_cast<int>(features.width), NULL);
-
- if(features.heightSet)
- g_object_set(webWindowFeatures, "height", static_cast<int>(features.height), NULL);
-
- g_object_set(webWindowFeatures,
- "toolbar-visible", features.toolBarVisible,
- "statusbar-visible", features.statusBarVisible,
- "scrollbar-visible", features.scrollbarsVisible,
- "menubar-visible", features.menuBarVisible,
- "locationbar-visible", features.locationBarVisible,
- "fullscreen", features.fullscreen,
- NULL);
-
- return webWindowFeatures;
-}
-
-}
diff --git a/Source/WebKit/gtk/webkit/webkitwebwindowfeatures.h b/Source/WebKit/gtk/webkit/webkitwebwindowfeatures.h
deleted file mode 100644
index a79119d70..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebwindowfeatures.h
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (C) 2008 Gustavo Noronha Silva <gns@gnome.org>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebwindowfeatures_h
-#define webkitwebwindowfeatures_h
-
-#include <glib-object.h>
-
-#include <webkit/webkitdefines.h>
-
-G_BEGIN_DECLS
-
-#define WEBKIT_TYPE_WEB_WINDOW_FEATURES (webkit_web_window_features_get_type())
-#define WEBKIT_WEB_WINDOW_FEATURES(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_WINDOW_FEATURES, WebKitWebWindowFeatures))
-#define WEBKIT_WEB_WINDOW_FEATURES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_WINDOW_FEATURES, WebKitWebWindowFeaturesClass))
-#define WEBKIT_IS_WEB_WINDOW_FEATURES(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_WINDOW_FEATURES))
-#define WEBKIT_IS_WEB_WINDOW_FEATURES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_WINDOW_FEATURES))
-#define WEBKIT_WEB_WINDOW_FEATURES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_WINDOW_FEATURES, WebKitWebWindowFeaturesClass))
-
-typedef struct _WebKitWebWindowFeaturesPrivate WebKitWebWindowFeaturesPrivate;
-
-struct _WebKitWebWindowFeatures {
- GObject parent_instance;
-
- /*< private >*/
- WebKitWebWindowFeaturesPrivate* priv;
-};
-
-struct _WebKitWebWindowFeaturesClass {
- GObjectClass parent_class;
-
- /*< private >*/
- /* Padding for future expansion */
- void (*_webkit_reserved1) (void);
- void (*_webkit_reserved2) (void);
- void (*_webkit_reserved3) (void);
- void (*_webkit_reserved4) (void);
-};
-
-WEBKIT_API GType
-webkit_web_window_features_get_type (void);
-
-WEBKIT_API WebKitWebWindowFeatures*
-webkit_web_window_features_new (void);
-
-WEBKIT_API gboolean
-webkit_web_window_features_equal (WebKitWebWindowFeatures* features1,
- WebKitWebWindowFeatures* features2);
-
-G_END_DECLS
-
-#endif /* webkitwebwindowfeatures_h */
diff --git a/Source/WebKit/gtk/webkit/webkitwebwindowfeaturesprivate.h b/Source/WebKit/gtk/webkit/webkitwebwindowfeaturesprivate.h
deleted file mode 100644
index 6ea919bc0..000000000
--- a/Source/WebKit/gtk/webkit/webkitwebwindowfeaturesprivate.h
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2007, 2008, 2009 Holger Hans Peter Freyther
- * Copyright (C) 2008 Jan Michael C. Alonzo
- * Copyright (C) 2008 Collabora Ltd.
- * Copyright (C) 2010 Igalia S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef webkitwebwindowfeaturesprivate_h
-#define webkitwebwindowfeaturesprivate_h
-
-#include "webkitwebwindowfeatures.h"
-
-namespace WebKit {
-
-WebKitWebWindowFeatures* kitNew(const WebCore::WindowFeatures&);
-
-}
-
-#endif
diff --git a/Source/WebKit/gtk/webkitmarshal.list b/Source/WebKit/gtk/webkitmarshal.list
deleted file mode 100644
index b7428905c..000000000
--- a/Source/WebKit/gtk/webkitmarshal.list
+++ /dev/null
@@ -1,32 +0,0 @@
-BOOLEAN:ENUM,INT
-BOOLEAN:INT,INT,STRING
-BOOLEAN:OBJECT
-BOOLEAN:OBJECT,OBJECT
-BOOLEAN:OBJECT,OBJECT,BOOLEAN
-BOOLEAN:OBJECT,OBJECT,ENUM
-BOOLEAN:OBJECT,OBJECT,ENUM,BOOLEAN
-BOOLEAN:OBJECT,OBJECT,OBJECT,OBJECT
-BOOLEAN:OBJECT,OBJECT,STRING,OBJECT
-BOOLEAN:OBJECT,STRING
-BOOLEAN:OBJECT,STRING,BOXED
-BOOLEAN:OBJECT,STRING,POINTER
-BOOLEAN:OBJECT,STRING,STRING,STRING
-BOOLEAN:STRING,INT,STRING
-BOOLEAN:STRING,OBJECT,ENUM
-BOOLEAN:VOID
-ENUM:OBJECT,OBJECT
-OBJECT:OBJECT
-OBJECT:STRING,STRING,POINTER
-OBJECT:VOID
-VOID:OBJECT,OBJECT
-VOID:OBJECT,OBJECT,INT
-VOID:OBJECT,OBJECT,OBJECT
-VOID:OBJECT,OBJECT,POINTER
-VOID:OBJECT,OBJECT,BOXED
-VOID:OBJECT,OBJECT,OBJECT,OBJECT
-VOID:OBJECT,POINTER,POINTER
-VOID:OBJECT,INT
-VOID:OBJECT,POINTER
-VOID:OBJECT,STRING
-VOID:STRING
-VOID:STRING,STRING