summaryrefslogtreecommitdiffstats
path: root/Source/WebKit
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit')
-rw-r--r--Source/WebKit/CMakeLists.txt2
-rw-r--r--Source/WebKit/ChangeLog26
-rw-r--r--Source/WebKit/WebKit.xcodeproj/project.pbxproj8
-rw-r--r--Source/WebKit/cf/ChangeLog35
-rw-r--r--Source/WebKit/cf/WebCoreSupport/WebInspectorClientCF.cpp46
-rw-r--r--Source/WebKit/chromium/ChangeLog1092
-rw-r--r--Source/WebKit/chromium/DEPS6
-rw-r--r--Source/WebKit/chromium/WebKit.gyp12
-rw-r--r--Source/WebKit/chromium/features.gypi4
-rwxr-xr-xSource/WebKit/chromium/gyp_webkit9
-rw-r--r--Source/WebKit/chromium/public/WebAutoFillClient.h5
-rw-r--r--Source/WebKit/chromium/public/WebFormControlElement.h2
-rw-r--r--Source/WebKit/chromium/public/WebFrameClient.h10
-rw-r--r--Source/WebKit/chromium/public/WebGraphicsContext3D.h344
-rw-r--r--Source/WebKit/chromium/public/WebIDBCallbacks.h2
-rw-r--r--Source/WebKit/chromium/public/WebIDBDatabase.h10
-rwxr-xr-xSource/WebKit/chromium/public/WebIDBObjectStore.h12
-rw-r--r--Source/WebKit/chromium/public/WebIDBTransactionCallbacks.h2
-rw-r--r--Source/WebKit/chromium/public/WebIconLoadingCompletion.h53
-rw-r--r--Source/WebKit/chromium/public/WebInputElement.h10
-rw-r--r--Source/WebKit/chromium/public/WebKitClient.h1
-rw-r--r--Source/WebKit/chromium/public/WebMenuItemInfo.h3
-rw-r--r--Source/WebKit/chromium/public/WebNotification.h4
-rw-r--r--Source/WebKit/chromium/public/WebPoint.h2
-rw-r--r--Source/WebKit/chromium/public/WebPopupMenuInfo.h2
-rw-r--r--Source/WebKit/chromium/public/WebRect.h2
-rw-r--r--Source/WebKit/chromium/public/WebRuntimeFeatures.h5
-rw-r--r--Source/WebKit/chromium/public/WebSelectElement.h4
-rw-r--r--Source/WebKit/chromium/public/WebSettings.h4
-rw-r--r--Source/WebKit/chromium/public/WebSize.h2
-rw-r--r--Source/WebKit/chromium/public/WebSpeechInputController.h5
-rw-r--r--Source/WebKit/chromium/public/WebTextCheckingCompletion.h51
-rw-r--r--Source/WebKit/chromium/public/WebTextCheckingResult.h65
-rw-r--r--Source/WebKit/chromium/public/WebURLResponse.h5
-rw-r--r--Source/WebKit/chromium/public/WebViewClient.h16
-rw-r--r--Source/WebKit/chromium/src/AssertMatchingEnums.cpp5
-rw-r--r--Source/WebKit/chromium/src/AsyncFileSystemChromium.cpp4
-rw-r--r--Source/WebKit/chromium/src/AsyncFileSystemChromium.h6
-rw-r--r--Source/WebKit/chromium/src/AudioDestinationChromium.cpp5
-rw-r--r--Source/WebKit/chromium/src/AutoFillPopupMenuClient.cpp5
-rw-r--r--Source/WebKit/chromium/src/ChromeClientImpl.cpp38
-rw-r--r--Source/WebKit/chromium/src/ChromeClientImpl.h6
-rw-r--r--Source/WebKit/chromium/src/ContextMenuClientImpl.cpp2
-rw-r--r--Source/WebKit/chromium/src/DragClientImpl.cpp6
-rw-r--r--Source/WebKit/chromium/src/DragClientImpl.h2
-rw-r--r--Source/WebKit/chromium/src/DragScrollTimer.cpp8
-rw-r--r--Source/WebKit/chromium/src/EditorClientImpl.cpp19
-rw-r--r--Source/WebKit/chromium/src/EditorClientImpl.h9
-rw-r--r--Source/WebKit/chromium/src/Extensions3DChromium.cpp14
-rw-r--r--Source/WebKit/chromium/src/ExternalPopupMenu.cpp12
-rw-r--r--Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp6
-rw-r--r--Source/WebKit/chromium/src/FrameLoaderClientImpl.h2
-rw-r--r--Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp65
-rw-r--r--Source/WebKit/chromium/src/GraphicsContext3DInternal.h10
-rw-r--r--Source/WebKit/chromium/src/IDBCallbacksProxy.cpp14
-rw-r--r--Source/WebKit/chromium/src/IDBCallbacksProxy.h1
-rw-r--r--Source/WebKit/chromium/src/IDBDatabaseProxy.cpp4
-rw-r--r--Source/WebKit/chromium/src/IDBDatabaseProxy.h2
-rwxr-xr-xSource/WebKit/chromium/src/IDBObjectStoreProxy.cpp12
-rwxr-xr-xSource/WebKit/chromium/src/IDBObjectStoreProxy.h4
-rw-r--r--Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.cpp8
-rw-r--r--Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.h1
-rw-r--r--Source/WebKit/chromium/src/InspectorClientImpl.cpp12
-rw-r--r--Source/WebKit/chromium/src/InspectorClientImpl.h3
-rw-r--r--Source/WebKit/chromium/src/LocalFileSystemChromium.cpp6
-rw-r--r--Source/WebKit/chromium/src/PlatformBridge.cpp46
-rw-r--r--Source/WebKit/chromium/src/WebDevToolsAgentImpl.cpp76
-rw-r--r--Source/WebKit/chromium/src/WebDevToolsAgentImpl.h2
-rw-r--r--Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.cpp10
-rw-r--r--Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.h7
-rw-r--r--Source/WebKit/chromium/src/WebFontImpl.cpp24
-rw-r--r--Source/WebKit/chromium/src/WebFormControlElement.cpp5
-rw-r--r--Source/WebKit/chromium/src/WebFrameImpl.cpp65
-rw-r--r--Source/WebKit/chromium/src/WebFrameImpl.h2
-rw-r--r--Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp5
-rw-r--r--Source/WebKit/chromium/src/WebIDBCallbacksImpl.h1
-rw-r--r--Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp4
-rw-r--r--Source/WebKit/chromium/src/WebIDBDatabaseImpl.h2
-rwxr-xr-xSource/WebKit/chromium/src/WebIDBObjectStoreImpl.cpp9
-rwxr-xr-xSource/WebKit/chromium/src/WebIDBObjectStoreImpl.h3
-rw-r--r--Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.cpp5
-rw-r--r--Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.h1
-rw-r--r--Source/WebKit/chromium/src/WebIconLoadingCompletionImpl.cpp62
-rw-r--r--Source/WebKit/chromium/src/WebIconLoadingCompletionImpl.h57
-rw-r--r--Source/WebKit/chromium/src/WebImageCG.cpp32
-rw-r--r--Source/WebKit/chromium/src/WebInputElement.cpp21
-rw-r--r--Source/WebKit/chromium/src/WebMediaPlayerClientImpl.cpp18
-rw-r--r--Source/WebKit/chromium/src/WebMediaPlayerClientImpl.h4
-rw-r--r--Source/WebKit/chromium/src/WebNotification.cpp6
-rw-r--r--Source/WebKit/chromium/src/WebPageSerializerImpl.cpp4
-rw-r--r--Source/WebKit/chromium/src/WebPluginContainerImpl.cpp147
-rw-r--r--Source/WebKit/chromium/src/WebPopupMenuImpl.cpp24
-rw-r--r--Source/WebKit/chromium/src/WebRuntimeFeatures.cpp20
-rw-r--r--Source/WebKit/chromium/src/WebScrollbarImpl.cpp41
-rw-r--r--Source/WebKit/chromium/src/WebScrollbarImpl.h2
-rw-r--r--Source/WebKit/chromium/src/WebSearchableFormData.cpp3
-rw-r--r--Source/WebKit/chromium/src/WebSelectElement.cpp8
-rw-r--r--Source/WebKit/chromium/src/WebSettingsImpl.cpp10
-rw-r--r--Source/WebKit/chromium/src/WebSettingsImpl.h2
-rw-r--r--Source/WebKit/chromium/src/WebTextCheckingCompletionImpl.cpp56
-rw-r--r--Source/WebKit/chromium/src/WebTextCheckingCompletionImpl.h58
-rw-r--r--Source/WebKit/chromium/src/WebTextRun.cpp2
-rw-r--r--Source/WebKit/chromium/src/WebURLResponse.cpp10
-rw-r--r--Source/WebKit/chromium/src/WebViewImpl.cpp29
-rw-r--r--Source/WebKit/chromium/src/WebViewImpl.h1
-rw-r--r--Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.cpp4
-rw-r--r--Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.h6
-rw-r--r--Source/WebKit/chromium/src/js/DevTools.js13
-rw-r--r--Source/WebKit/chromium/src/js/Tests.js2
-rw-r--r--Source/WebKit/chromium/src/painting/GraphicsContextBuilder.h84
-rw-r--r--Source/WebKit/chromium/tests/PopupMenuTest.cpp2
-rw-r--r--Source/WebKit/chromium/tests/TransparencyWinTest.cpp4
-rw-r--r--Source/WebKit/efl/ChangeLog102
-rw-r--r--Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp5
-rw-r--r--Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h3
-rw-r--r--Source/WebKit/efl/WebCoreSupport/DragClientEfl.cpp5
-rw-r--r--Source/WebKit/efl/WebCoreSupport/DragClientEfl.h1
-rw-r--r--Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp2
-rw-r--r--Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.h2
-rw-r--r--Source/WebKit/efl/ewk/ewk_cookies.cpp6
-rw-r--r--Source/WebKit/efl/ewk/ewk_frame.cpp4
-rw-r--r--Source/WebKit/efl/ewk/ewk_settings.cpp24
-rw-r--r--Source/WebKit/efl/ewk/ewk_settings.h1
-rw-r--r--Source/WebKit/gtk/ChangeLog395
-rw-r--r--Source/WebKit/gtk/GNUmakefile.am6
-rw-r--r--Source/WebKit/gtk/NEWS13
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp36
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp5
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h3
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp6
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h1
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp110
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h21
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp17
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h4
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp172
-rw-r--r--Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h3
-rw-r--r--Source/WebKit/gtk/po/ChangeLog79
-rw-r--r--Source/WebKit/gtk/po/POTFILES24
-rw-r--r--Source/WebKit/gtk/po/ar.po1080
-rw-r--r--Source/WebKit/gtk/po/bg.po1162
-rw-r--r--Source/WebKit/gtk/po/fr.po1229
-rw-r--r--Source/WebKit/gtk/po/gr.po695
-rw-r--r--Source/WebKit/gtk/po/hu.po1073
-rw-r--r--Source/WebKit/gtk/po/id.po1385
-rw-r--r--Source/WebKit/gtk/po/pl.po1433
-rw-r--r--Source/WebKit/gtk/po/zh_CN.po237
-rw-r--r--Source/WebKit/gtk/tests/testatk.c208
-rw-r--r--Source/WebKit/gtk/webkit/webkitglobals.cpp40
-rw-r--r--Source/WebKit/gtk/webkit/webkitglobals.h11
-rw-r--r--Source/WebKit/gtk/webkit/webkitglobalsprivate.h1
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebframe.cpp21
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebinspector.cpp3
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebview.cpp8
-rw-r--r--Source/WebKit/haiku/ChangeLog53
-rw-r--r--Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.cpp7
-rw-r--r--Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.h3
-rw-r--r--Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.cpp6
-rw-r--r--Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.h1
-rw-r--r--Source/WebKit/haiku/WebCoreSupport/FrameLoaderClientHaiku.cpp6
-rw-r--r--Source/WebKit/mac/ChangeLog464
-rw-r--r--Source/WebKit/mac/Configurations/FeatureDefines.xcconfig14
-rw-r--r--Source/WebKit/mac/Configurations/Version.xcconfig2
-rw-r--r--Source/WebKit/mac/ForwardingHeaders/pcre/pcre.h1
-rw-r--r--Source/WebKit/mac/Misc/WebCoreStatistics.mm11
-rw-r--r--Source/WebKit/mac/Misc/WebIconDatabase.mm18
-rw-r--r--Source/WebKit/mac/Plugins/Hosted/WebHostedNetscapePluginView.mm1
-rw-r--r--Source/WebKit/mac/WebCoreSupport/WebChromeClient.h3
-rw-r--r--Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm20
-rw-r--r--Source/WebKit/mac/WebCoreSupport/WebDragClient.h1
-rw-r--r--Source/WebKit/mac/WebCoreSupport/WebDragClient.mm93
-rw-r--r--Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h2
-rw-r--r--Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm2
-rw-r--r--Source/WebKit/mac/WebCoreSupport/WebInspectorClient.h11
-rw-r--r--Source/WebKit/mac/WebCoreSupport/WebInspectorClient.mm16
-rw-r--r--Source/WebKit/mac/WebCoreSupport/WebSystemInterface.mm42
-rw-r--r--Source/WebKit/mac/WebInspector/WebInspector.mm5
-rw-r--r--Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm7
-rw-r--r--Source/WebKit/mac/WebView/WebFrame.mm20
-rw-r--r--Source/WebKit/mac/WebView/WebFrameInternal.h2
-rw-r--r--Source/WebKit/mac/WebView/WebFullScreenController.mm9
-rw-r--r--Source/WebKit/mac/WebView/WebHTMLView.mm138
-rw-r--r--Source/WebKit/mac/WebView/WebScriptDebugDelegate.mm4
-rw-r--r--Source/WebKit/mac/WebView/WebView.mm2
-rw-r--r--Source/WebKit/qt/Api/qwebframe.cpp19
-rw-r--r--Source/WebKit/qt/Api/qwebpage.cpp23
-rw-r--r--Source/WebKit/qt/Api/qwebpage.h1
-rw-r--r--Source/WebKit/qt/Api/qwebsettings.cpp2
-rw-r--r--Source/WebKit/qt/ChangeLog474
-rw-r--r--Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp6
-rw-r--r--Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h3
-rw-r--r--Source/WebKit/qt/WebCoreSupport/ContextMenuClientQt.cpp2
-rw-r--r--Source/WebKit/qt/WebCoreSupport/DragClientQt.cpp5
-rw-r--r--Source/WebKit/qt/WebCoreSupport/DragClientQt.h1
-rw-r--r--Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp57
-rw-r--r--Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.h4
-rw-r--r--Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp82
-rw-r--r--Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.h3
-rw-r--r--Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.cpp46
-rw-r--r--Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.h23
-rw-r--r--Source/WebKit/qt/WebCoreSupport/FullScreenVideoWidget.cpp122
-rw-r--r--Source/WebKit/qt/WebCoreSupport/FullScreenVideoWidget.h66
-rw-r--r--Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp152
-rw-r--r--Source/WebKit/qt/WebCoreSupport/InspectorClientQt.h3
-rw-r--r--Source/WebKit/qt/WebCoreSupport/InspectorServerQt.cpp4
-rw-r--r--Source/WebKit/qt/WebCoreSupport/PopupMenuQt.cpp2
-rw-r--r--Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.cpp5
-rw-r--r--Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.h1
-rw-r--r--Source/WebKit/qt/declarative/declarative.pro2
-rw-r--r--Source/WebKit/qt/declarative/qdeclarativewebview.cpp26
-rw-r--r--Source/WebKit/qt/declarative/qdeclarativewebview_p.h2
-rw-r--r--Source/WebKit/qt/docs/docs.pri2
-rw-r--r--Source/WebKit/qt/docs/qtwebkit.qdoc19
-rw-r--r--Source/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp58
-rw-r--r--Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp62
-rw-r--r--Source/WebKit/qt/tests/tests.pri2
-rw-r--r--Source/WebKit/win/ChangeLog265
-rw-r--r--Source/WebKit/win/DOMHTMLClasses.cpp4
-rw-r--r--Source/WebKit/win/FullscreenVideoController.cpp5
-rw-r--r--Source/WebKit/win/WebCoreStatistics.cpp4
-rw-r--r--Source/WebKit/win/WebCoreSupport/EmbeddedWidget.cpp4
-rw-r--r--Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp5
-rw-r--r--Source/WebKit/win/WebCoreSupport/WebChromeClient.h3
-rw-r--r--Source/WebKit/win/WebCoreSupport/WebDragClient.cpp151
-rw-r--r--Source/WebKit/win/WebCoreSupport/WebDragClient.h1
-rw-r--r--Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp2
-rw-r--r--Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h2
-rw-r--r--Source/WebKit/win/WebCoreSupport/WebInspectorClient.cpp14
-rw-r--r--Source/WebKit/win/WebCoreSupport/WebInspectorClient.h13
-rw-r--r--Source/WebKit/win/WebDownload.cpp164
-rw-r--r--Source/WebKit/win/WebDownload.h5
-rw-r--r--Source/WebKit/win/WebDownloadCFNet.cpp17
-rw-r--r--Source/WebKit/win/WebFrame.cpp21
-rw-r--r--Source/WebKit/win/WebFrame.h2
-rw-r--r--Source/WebKit/win/WebHistory.cpp2
-rw-r--r--Source/WebKit/win/WebInspector.cpp9
-rwxr-xr-xSource/WebKit/win/WebKit.vcproj/WebKit.make14
-rw-r--r--Source/WebKit/win/WebKit.vcproj/WebKit.submit.sln4
-rw-r--r--Source/WebKit/win/WebKitGraphics.cpp11
-rw-r--r--Source/WebKit/win/WebPreferences.cpp4
-rw-r--r--Source/WebKit/win/WebScrollBar.cpp14
-rw-r--r--Source/WebKit/win/WebScrollBar.h3
-rw-r--r--Source/WebKit/win/WebView.cpp19
-rw-r--r--Source/WebKit/win/WebView.h8
-rw-r--r--Source/WebKit/wince/ChangeLog83
-rw-r--r--Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.cpp10
-rw-r--r--Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.h3
-rw-r--r--Source/WebKit/wince/WebCoreSupport/DragClientWinCE.cpp6
-rw-r--r--Source/WebKit/wince/WebCoreSupport/DragClientWinCE.h1
-rw-r--r--Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.cpp5
-rw-r--r--Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.h2
-rw-r--r--Source/WebKit/wince/WebView.cpp12
-rw-r--r--Source/WebKit/wx/ChangeLog81
-rw-r--r--Source/WebKit/wx/WebKitSupport/ChromeClientWx.cpp5
-rw-r--r--Source/WebKit/wx/WebKitSupport/ChromeClientWx.h3
-rw-r--r--Source/WebKit/wx/WebKitSupport/DragClientWx.cpp6
-rw-r--r--Source/WebKit/wx/WebKitSupport/DragClientWx.h1
-rw-r--r--Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.cpp11
-rw-r--r--Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.h2
-rw-r--r--Source/WebKit/wx/bindings/python/wscript2
260 files changed, 14116 insertions, 1917 deletions
diff --git a/Source/WebKit/CMakeLists.txt b/Source/WebKit/CMakeLists.txt
index 5de532d..db0650a 100644
--- a/Source/WebKit/CMakeLists.txt
+++ b/Source/WebKit/CMakeLists.txt
@@ -57,7 +57,6 @@ IF (WTF_USE_CURL)
ENDIF ()
SET(WebKit_LIBRARIES
- ${JavaScriptCore_LIBRARY_NAME}
${WebCore_LIBRARY_NAME}
)
@@ -67,6 +66,7 @@ INCLUDE_IF_EXISTS(${WEBKIT_DIR}/${WEBKIT_PORT_DIR}/CMakeLists${PORT}.txt)
ADD_DEFINITIONS(-DBUILDING_WebKit)
INCLUDE_DIRECTORIES(${WebKit_INCLUDE_DIRECTORIES})
ADD_LIBRARY(${WebKit_LIBRARY_NAME} ${WebKit_LIBRARY_TYPE} ${WebKit_SOURCES})
+ADD_DEPENDENCIES(${WebKit_LIBRARY_NAME} ${WebCore_LIBRARY_NAME})
TARGET_LINK_LIBRARIES(${WebKit_LIBRARY_NAME} ${WebKit_LIBRARIES})
IF (WebKit_LINK_FLAGS)
diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog
index ef70b92..3149b8b 100644
--- a/Source/WebKit/ChangeLog
+++ b/Source/WebKit/ChangeLog
@@ -1,3 +1,29 @@
+2011-02-06 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [CMake] Add dependencies for Visual Studio projects
+ https://bugs.webkit.org/show_bug.cgi?id=53773
+
+ Add a WebCore dependecy to WebKit, so CMake can
+ generate the correct build order for the solution.
+
+ Remove JavaScriptCore dependecy, since WebCore already depends on it.
+
+ * CMakeLists.txt:
+
+2011-01-23 Mark Rowe <mrowe@apple.com>
+
+ Follow-up to r76477.
+
+ Fix the scripts that detect problematic code such as static initializers
+ and destructors, weak vtables, inappropriate files in the framework wrappers,
+ and public headers including private headers. These had all been broken
+ since the projects were moved in to the Source directory as the paths to the
+ scripts were not updated at that time.
+
+ * WebKit.xcodeproj/project.pbxproj:
+
2011-01-20 Zoltan Horvath <zoltan@webkit.org>
Reviewed by Csaba Osztrogonác.
diff --git a/Source/WebKit/WebKit.xcodeproj/project.pbxproj b/Source/WebKit/WebKit.xcodeproj/project.pbxproj
index d47bce4..649bf16 100644
--- a/Source/WebKit/WebKit.xcodeproj/project.pbxproj
+++ b/Source/WebKit/WebKit.xcodeproj/project.pbxproj
@@ -1748,7 +1748,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "if [ \"${ACTION}\" = \"installhdrs\" ]; then\n exit 0;\nfi\n\nif [ -f ../Tools/Scripts/check-for-weak-vtables-and-externals ]; then\n ../Tools/Scripts/check-for-weak-vtables-and-externals || exit $?\nfi";
+ shellScript = "if [ \"${ACTION}\" = \"installhdrs\" ]; then\n exit 0;\nfi\n\nif [ -f ../../Tools/Scripts/check-for-weak-vtables-and-externals ]; then\n ../../Tools/Scripts/check-for-weak-vtables-and-externals || exit $?\nfi";
};
5D2F7DB70C687A5A00B5B72B /* Update Info.plist with version information */ = {
isa = PBXShellScriptBuildPhase;
@@ -1778,7 +1778,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "if [ \"${ACTION}\" = \"installhdrs\" ]; then\n exit 0;\nfi\n\nif [ -f ../Tools/Scripts/check-for-webkit-framework-include-consistency ]; then\n ../Tools/Scripts/check-for-webkit-framework-include-consistency || exit $?\nfi\n";
+ shellScript = "if [ \"${ACTION}\" = \"installhdrs\" ]; then\n exit 0;\nfi\n\nif [ -f ../../Tools/Scripts/check-for-webkit-framework-include-consistency ]; then\n ../../Tools/Scripts/check-for-webkit-framework-include-consistency || exit $?\nfi\n";
};
5DE6D18C0FCF231B002DE28C /* Symlink WebKitPluginHost in to place */ = {
isa = PBXShellScriptBuildPhase;
@@ -1808,7 +1808,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "if [ \"${ACTION}\" = \"installhdrs\" ]; then\n exit 0;\nfi\n\nif [ -f ../Tools/Scripts/check-for-exit-time-destructors ]; then\n ../Tools/Scripts/check-for-exit-time-destructors || exit $?\nfi";
+ shellScript = "if [ \"${ACTION}\" = \"installhdrs\" ]; then\n exit 0;\nfi\n\nif [ -f ../../Tools/Scripts/check-for-exit-time-destructors ]; then\n ../../Tools/Scripts/check-for-exit-time-destructors || exit $?\nfi";
};
939811300824BF01008DF038 /* Make Frameworks Symbolic Link */ = {
isa = PBXShellScriptBuildPhase;
@@ -1839,7 +1839,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "if [ \"${ACTION}\" = \"installhdrs\" ]; then\n exit 0;\nfi\n\nif [ -f ../Tools/Scripts/check-for-global-initializers ]; then\n ../Tools/Scripts/check-for-global-initializers || exit $?\nfi";
+ shellScript = "if [ \"${ACTION}\" = \"installhdrs\" ]; then\n exit 0;\nfi\n\nif [ -f ../../Tools/Scripts/check-for-global-initializers ]; then\n ../../Tools/Scripts/check-for-global-initializers || exit $?\nfi";
};
/* End PBXShellScriptBuildPhase section */
diff --git a/Source/WebKit/cf/ChangeLog b/Source/WebKit/cf/ChangeLog
index f712c97..b418540 100644
--- a/Source/WebKit/cf/ChangeLog
+++ b/Source/WebKit/cf/ChangeLog
@@ -1,3 +1,38 @@
+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/WebInspectorClientCF.cpp:
+ (populateSetting):
+ (storeSetting):
+ (WebInspectorClient::createFrontendSettings):
+
+2011-01-26 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: inspector should start in attached state by default
+ https://bugs.webkit.org/show_bug.cgi?id=53165
+
+ * WebCoreSupport/WebInspectorClientCF.cpp:
+ (WebInspectorClient::inspectorStartsAttached):
+
+2011-01-25 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: remove "attached" state related methods from InspectorAgent
+ https://bugs.webkit.org/show_bug.cgi?id=53086
+
+ * WebCoreSupport/WebInspectorClientCF.cpp:
+ (WebInspectorClient::sendMessageToFrontend):
+ (WebInspectorClient::inspectorStartsAttached):
+ (WebInspectorClient::setInspectorStartsAttached):
+ (WebInspectorClient::releaseFrontendPage):
+
2011-01-03 Pratik Solanki <psolanki@apple.com>
Mac build fix. Define WTF_USE_CFNETWORK for Windows build only.
diff --git a/Source/WebKit/cf/WebCoreSupport/WebInspectorClientCF.cpp b/Source/WebKit/cf/WebCoreSupport/WebInspectorClientCF.cpp
index 9183fa4..b9afa1a 100644
--- a/Source/WebKit/cf/WebCoreSupport/WebInspectorClientCF.cpp
+++ b/Source/WebKit/cf/WebCoreSupport/WebInspectorClientCF.cpp
@@ -57,21 +57,25 @@
#include <CoreFoundation/CoreFoundation.h>
#include <WebCore/Frame.h>
+#include <WebCore/InspectorFrontendClientLocal.h>
#include <WebCore/Page.h>
#include <WebCore/PlatformString.h>
+#include <wtf/PassOwnPtr.h>
#include <wtf/RetainPtr.h>
#include <wtf/Vector.h>
using namespace WebCore;
+static const char* inspectorStartsAttachedSetting = "inspectorStartsAttached";
+
static inline CFStringRef createKeyForPreferences(const String& key)
{
RetainPtr<CFStringRef> keyCFString(AdoptCF, key.createCFString());
return CFStringCreateWithFormat(0, 0, CFSTR("WebKit Web Inspector Setting - %@"), keyCFString.get());
}
-void WebInspectorClient::populateSetting(const String& key, String* setting)
+static void populateSetting(const String& key, String* setting)
{
RetainPtr<CFStringRef> preferencesKey(AdoptCF, createKeyForPreferences(key));
RetainPtr<CFPropertyListRef> value(AdoptCF, CFPreferencesCopyAppValue(preferencesKey.get(), kCFPreferencesCurrentApplication));
@@ -88,7 +92,7 @@ void WebInspectorClient::populateSetting(const String& key, String* setting)
*setting = "";
}
-void WebInspectorClient::storeSetting(const String& key, const String& setting)
+static void storeSetting(const String& key, const String& setting)
{
RetainPtr<CFPropertyListRef> objectToStore;
objectToStore.adoptCF(setting.createCFString());
@@ -98,12 +102,46 @@ void WebInspectorClient::storeSetting(const String& key, const String& setting)
CFPreferencesSetAppValue(preferencesKey.get(), objectToStore.get(), kCFPreferencesCurrentApplication);
}
+bool WebInspectorClient::sendMessageToFrontend(const String& message)
+{
+ return doDispatchMessageOnFrontendPage(m_frontendPage, message);
+}
+
+bool WebInspectorClient::inspectorStartsAttached()
+{
+ String value;
+ populateSetting(inspectorStartsAttachedSetting, &value);
+ if (value.isEmpty())
+ return true;
+ return value == "true";
+}
+
+void WebInspectorClient::setInspectorStartsAttached(bool attached)
+{
+ storeSetting(inspectorStartsAttachedSetting, attached ? "true" : "false");
+}
+
void WebInspectorClient::releaseFrontendPage()
{
m_frontendPage = 0;
}
-bool WebInspectorClient::sendMessageToFrontend(const String& message)
+WTF::PassOwnPtr<WebCore::InspectorFrontendClientLocal::Settings> WebInspectorClient::createFrontendSettings()
{
- return doDispatchMessageOnFrontendPage(m_frontendPage, message);
+ class InspectorFrontendSettingsCF : public WebCore::InspectorFrontendClientLocal::Settings {
+ public:
+ virtual ~InspectorFrontendSettingsCF() { }
+ virtual String getProperty(const String& name)
+ {
+ String value;
+ populateSetting(name, &value);
+ return value;
+ }
+
+ virtual void setProperty(const String& name, const String& value)
+ {
+ storeSetting(name, value);
+ }
+ };
+ return adoptPtr<WebCore::InspectorFrontendClientLocal::Settings>(new InspectorFrontendSettingsCF());
}
diff --git a/Source/WebKit/chromium/ChangeLog b/Source/WebKit/chromium/ChangeLog
index e2d81f7..1cb0068 100644
--- a/Source/WebKit/chromium/ChangeLog
+++ b/Source/WebKit/chromium/ChangeLog
@@ -1,3 +1,1095 @@
+2011-02-11 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Allow turning off multisampling through web preference settings
+ https://bugs.webkit.org/show_bug.cgi?id=54321
+
+ * public/WebSettings.h: Add a flag for multisampling setting.
+ * src/WebSettingsImpl.cpp: Ditto.
+ (WebKit::WebSettingsImpl::setOpenGLMultisamplingEnabled):
+ * src/WebSettingsImpl.h: Ditto.
+
+2011-02-12 Jochen Eisinger <jochen@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ Implement IDBObjectStore::clear
+ https://bugs.webkit.org/show_bug.cgi?id=54193
+
+ * src/IDBObjectStoreProxy.cpp:
+ (WebCore::IDBObjectStoreProxy::clear):
+ * src/IDBObjectStoreProxy.h:
+ * src/WebIDBObjectStoreImpl.cpp:
+ (WebKit::WebIDBObjectStoreImpl::clear):
+ * src/WebIDBObjectStoreImpl.h:
+
+2011-02-11 David Grogan <dgrogan@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ indexeddb: add onBlocked to WebKit::WebIDBCallbacks
+ https://bugs.webkit.org/show_bug.cgi?id=54329
+
+ * public/WebIDBCallbacks.h:
+ (WebKit::WebIDBCallbacks::onBlocked):
+
+2011-02-11 Adam Klein <adamk@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [fileapi] Add support for filesystem: URI handling
+ https://bugs.webkit.org/show_bug.cgi?id=53529
+
+ Changes to Chromium WebKit API required to expose
+ the FileSystem type to WebCore's fileapi code, since the
+ type is part of the filesystem URI.
+
+ * src/AsyncFileSystemChromium.cpp:
+ (WebCore::AsyncFileSystemChromium::AsyncFileSystemChromium):
+ * src/AsyncFileSystemChromium.h:
+ (WebCore::AsyncFileSystemChromium::create):
+ * src/LocalFileSystemChromium.cpp:
+ (WebCore::LocalFileSystem::readFileSystem):
+ (WebCore::LocalFileSystem::requestFileSystem):
+ * src/WebFileSystemCallbacksImpl.cpp:
+ (WebKit::WebFileSystemCallbacksImpl::WebFileSystemCallbacksImpl):
+ (WebKit::WebFileSystemCallbacksImpl::didOpenFileSystem):
+ * src/WebFileSystemCallbacksImpl.h:
+ * src/WorkerAsyncFileSystemChromium.cpp:
+ (WebCore::WorkerAsyncFileSystemChromium::WorkerAsyncFileSystemChromium):
+ * src/WorkerAsyncFileSystemChromium.h:
+ (WebCore::WorkerAsyncFileSystemChromium::create):
+
+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
+
+ * src/ContextMenuClientImpl.cpp:
+ (WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):
+ * src/FrameLoaderClientImpl.cpp:
+ (WebKit::FrameLoaderClientImpl::finishedLoading):
+ * src/WebFrameImpl.cpp:
+ (WebKit::WebFrameImpl::encoding):
+ (WebKit::WebFrameImpl::loadJavaScriptURL):
+ * src/WebPageSerializerImpl.cpp:
+ (WebKit::WebPageSerializerImpl::preActionBeforeSerializeOpenTag):
+ (WebKit::WebPageSerializerImpl::serialize):
+ * src/WebSearchableFormData.cpp:
+ (HTMLNames::GetFormEncoding):
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::pageEncoding):
+
+2011-02-10 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: chromium build fix.
+
+ * src/WebDevToolsAgentImpl.cpp:
+ (WebKit::WebDevToolsAgent::shouldInterruptForMessage):
+
+2011-02-10 Jochen Eisinger <jochen@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ [chromium] add WebIDBObjectStore::clear method
+
+ https://bugs.webkit.org/show_bug.cgi?id=54149
+
+ * public/WebIDBObjectStore.h:
+ (WebKit::WebIDBObjectStore::put):
+ (WebKit::WebIDBObjectStore::deleteFunction):
+ (WebKit::WebIDBObjectStore::clear):
+
+2011-02-10 Avi Drissman <avi@google.com>
+
+ Reviewed by Darin Fisher.
+
+ <option> should implement the dir attribute. Mac Chromium version, followup to r76983, r77654.
+ https://bugs.webkit.org/show_bug.cgi?id=50969
+
+ Use manual test Source/WebCore/manual-tests/pop-up-alignment-and-direction.html added in r76983.
+
+ * public/WebMenuItemInfo.h:
+ * public/WebPopupMenuInfo.h:
+ * src/ChromeClientImpl.cpp:
+ (WebKit::ChromeClientImpl::getPopupMenuInfo):
+ * src/ExternalPopupMenu.cpp:
+ (WebKit::ExternalPopupMenu::getPopupMenuInfo):
+
+2011-02-09 David Holloway <dhollowa@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Removes deprecated interface WebAutoFillClient::didAcceptAutocompleteSuggestion(). This interface has been replaced by the more general WebAutoFillClient::didAcceptAutoFillSuggestion() method.
+ https://bugs.webkit.org/show_bug.cgi?id=54125
+
+ * public/WebAutoFillClient.h:
+ * src/EditorClientImpl.cpp:
+ * src/EditorClientImpl.h:
+
+2011-02-09 Ilya Sherman <isherman@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Export WebInputElement::defaultMaxLength as a function rather than a constant.
+ Needed because the order of initialization of static constants
+ is not guaranteed across compilation units.
+ https://bugs.webkit.org/show_bug.cgi?id=54056
+
+ * public/WebInputElement.h:
+ * src/WebInputElement.cpp:
+ (WebKit::WebInputElement::defaultMaxLength): Now a static function.
+
+2011-02-09 Sailesh Agrawal <sail@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ Search/replace references to gfx/* with ui/gfx/*
+
+ * public/WebPoint.h:
+ * public/WebRect.h:
+ * public/WebSize.h:
+
+2011-02-09 Nebojsa Ciric <cira@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Implements Locale object of JavaScript internationalization API proposal, as an
+ v8 extension. Extension code is hosted in v8 project (src/extensions/experimental/i18n-extension.{cc,h})
+ and in this patch we just provide flags, tests and build rules for chromium port.
+ https://bugs.webkit.org/show_bug.cgi?id=49414
+
+ * features.gypi:
+ * public/WebRuntimeFeatures.h:
+ * src/WebRuntimeFeatures.cpp:
+ (WebKit::WebRuntimeFeatures::enableExperimentalI18NAPI):
+ (WebKit::WebRuntimeFeatures::isExperimentalI18NAPIEnabled):
+
+2011-02-09 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Shinichiro Hamaji.
+
+ [Chromium] WebTextCheckingResult should have a default constructor.
+ https://bugs.webkit.org/show_bug.cgi?id=54075
+
+ Gave default parameters to WebTextCheckingResult constructor.
+
+ * public/WebTextCheckingResult.h:
+ (WebKit::WebTextCheckingResult::WebTextCheckingResult):
+
+2011-02-08 Sailesh Agrawal <sail@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Invalidate rect doesn't work for windowless plugins on Chromium
+ https://bugs.webkit.org/show_bug.cgi?id=53117
+
+ Invalidate rect for windowless plugins wasn't working if the web page was composited.
+
+ The problem was that the invalidate call was causing simply dirtying the LayerChromium layers. Since the plugin was windowless this didn't cause the plugin to be repainted.
+
+ Fix was to copy the invalidate code from WebCore/plugins/PluginView.cpp/PluginView::invalidateWindowlessPluginRect() which does the correct thing.
+
+ Tested my fix on Windows and Mac and verified that the movie on http://apple.com/appltv correctly plays. Verified that windowed plugins still correctly draw as well.
+
+ * src/WebPluginContainerImpl.cpp:
+ (WebKit::WebPluginContainerImpl::invalidateRect):
+
+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
+
+ * src/ChromeClientImpl.h:
+
+2011-02-08 Tony Chang <tony@chromium.org>
+
+ Unreviewed, build fix for clobber builds of DRT on mac/linux.
+
+ This file moved in chromium r73530 and this path wasn't changed.
+
+ * WebKit.gyp:
+
+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.
+
+ * src/WebDevToolsAgentImpl.cpp:
+ (WebKit::WebDevToolsAgentImpl::dispatchOnInspectorBackend):
+ * src/WebViewImpl.h:
+
+2011-02-07 Alexey Marinichev <amarinichev@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Hook up WebGraphicsContext3D::setContextLostCallback.
+ https://bugs.webkit.org/show_bug.cgi?id=53722
+
+ Test: fast/canvas/webgl/context-lost.html, comment out the line with
+ extension.loseContext() and kill the GPU process "Lose context"
+ message shows up.
+
+ * public/WebGraphicsContext3D.h:
+ (WebKit::WebGraphicsContext3D::WebGraphicsContextLostCallback::~WebGraphicsContextLostCallback):
+ * src/GraphicsContext3DChromium.cpp:
+ (WebCore::GraphicsContextLostCallbackAdapter::~GraphicsContextLostCallbackAdapter):
+ (WebCore::GraphicsContextLostCallbackAdapter::GraphicsContextLostCallbackAdapter):
+ (WebCore::GraphicsContextLostCallbackAdapter::onContextLost):
+ (WebCore::GraphicsContextLostCallbackAdapter::create):
+ (WebCore::GraphicsContext3DInternal::setContextLostCallback):
+ * src/GraphicsContext3DInternal.h:
+
+2011-02-07 Adam Klein <adamk@chromium.org>
+
+ Reviewed by Jian Li.
+
+ [chromium] Remove deprecated method WebNotification::dir
+ https://bugs.webkit.org/show_bug.cgi?id=53735
+
+ * public/WebNotification.h:
+ * src/WebNotification.cpp:
+
+2011-02-03 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Darin Fisher.
+
+ [Chromium] Should implement EditorClientImpl::requestCheckingOfString()
+ https://bugs.webkit.org/show_bug.cgi?id=51013
+
+ - Added WebTextCheckingCompletion to receive the checked result asynchronously.
+ - Added WebViewClient::requestCheckingOfText() and related classes.
+ - Implemented EditorClientImpl::requestCheckingOfString().
+
+ * WebKit.gyp:
+ * public/WebSettings.h:
+ * public/WebTextCheckingCompletion.h: Added.
+ (WebKit::WebTextCheckingCompletion::~WebTextCheckingCompletion):
+ * public/WebTextCheckingResult.h: Added.
+ (WebKit::WebTextCheckingResult::error):
+ (WebKit::WebTextCheckingResult::position):
+ (WebKit::WebTextCheckingResult::length):
+ (WebKit::WebTextCheckingResult::WebTextCheckingResult):
+ * public/WebViewClient.h:
+ (WebKit::WebViewClient::requestCheckingOfText): Gave an implementation
+ * src/AssertMatchingEnums.cpp:
+ * src/EditorClientImpl.cpp:
+ (WebKit::EditorClientImpl::requestCheckingOfString):
+ * src/EditorClientImpl.h:
+ * src/WebSettingsImpl.cpp:
+ (WebKit::WebSettingsImpl::setAsynchronousSpellCheckingEnabled):
+ * src/WebSettingsImpl.h:
+ * src/WebTextCheckingCompletionImpl.cpp: Added.
+ (WebKit::toCoreResults):
+ (WebKit::WebTextCheckingCompletionImpl::didFinishCheckingText):
+ * src/WebTextCheckingCompletionImpl.h: Added.
+ (WebKit::WebTextCheckingCompletionImpl::WebTextCheckingCompletionImpl):
+
+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.
+
+ * src/DragClientImpl.cpp:
+ * src/DragClientImpl.h:
+
+2011-02-04 Charlie Reis <creis@chromium.org>
+
+ Reviewed by Mihai Parparita.
+
+ Crash in WebCore::HistoryController::itemsAreClones
+ https://bugs.webkit.org/show_bug.cgi?id=52819
+
+ Removes unneeded sanity checks used for diagnosing a memory error.
+
+ * src/WebFrameImpl.cpp:
+
+2011-02-04 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Dmitry Titov.
+
+ Clone WebClipboard to be frame-specific.
+ https://bugs.webkit.org/show_bug.cgi?id=53727
+
+ For drop operations, Chrome currently snapshots the data and copies it
+ into the renderer process. As we add more supported drag data types, the
+ copy will become increasingly expensive. Instead, we'd like to snapshot
+ data in the browser to reduce the amount of data copied and to support
+ Blob in DataTransferItem. In order to allow this, we associated
+ WebClipboard with a frame so it can correctly route its IPCs to the
+ corresponding Chromium host.
+
+ * public/WebFrameClient.h:
+ (WebKit::WebFrameClient::clipboard):
+ * src/PlatformBridge.cpp:
+ (WebCore::getClipboard):
+ (WebCore::PlatformBridge::clipboardReadAvailableTypes):
+ (WebCore::PlatformBridge::clipboardReadData):
+ (WebCore::PlatformBridge::clipboardReadFilenames):
+ * src/WebFrameImpl.cpp:
+ (WebKit::WebFrameImpl::fromFrame):
+ * src/WebFrameImpl.h:
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::dragTargetDragEnterNew):
+
+2011-02-04 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Darin Fisher.
+
+ Move chromium iframe shim code to cross-platform file
+ https://bugs.webkit.org/show_bug.cgi?id=52594
+
+ * src/WebPluginContainerImpl.cpp: Move code to WebCore/plugin/IFrameShimSupport.cpp
+
+2011-02-04 Xiaomei Ji <xji@chromium.org>
+
+ Reviewed by David Levin.
+
+ Implement "<option> should implement the dir attribute" for chromium port after r76983.
+ https://bugs.webkit.org/show_bug.cgi?id=50969
+
+ * src/ChromeClientImpl.cpp:
+ (WebKit::ChromeClientImpl::selectItemAlignmentFollowsMenuWritingDirection): Override as true.
+ * src/WebViewImpl.cpp: Remove directionality hint from autofill drop-down setting.
+
+2011-02-01 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Remove the timeout event from IndexedDB
+ https://bugs.webkit.org/show_bug.cgi?id=53521
+
+ * public/WebIDBDatabase.h:
+ (WebKit::WebIDBDatabase::transaction):
+ * public/WebIDBTransactionCallbacks.h:
+ * src/IDBDatabaseProxy.cpp:
+ (WebCore::IDBDatabaseProxy::transaction):
+ * src/IDBDatabaseProxy.h:
+ * src/IDBTransactionCallbacksProxy.cpp:
+ * src/IDBTransactionCallbacksProxy.h:
+ * src/WebIDBDatabaseImpl.cpp:
+ (WebKit::WebIDBDatabaseImpl::transaction):
+ * src/WebIDBDatabaseImpl.h:
+ * src/WebIDBTransactionCallbacksImpl.cpp:
+ * src/WebIDBTransactionCallbacksImpl.h:
+
+2011-02-04 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Unreviewed.
+
+ Roll chromium to 73764.
+
+ * DEPS:
+
+2011-02-03 James Kozianski <koz@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add navigator.registerProtocolHandler behind a flag.
+ https://bugs.webkit.org/show_bug.cgi?id=52609
+
+ * features.gypi:
+ * public/WebViewClient.h:
+ * src/ChromeClientImpl.cpp:
+ (WebKit::ChromeClientImpl::registerProtocolHandler):
+ * src/ChromeClientImpl.h:
+
+2011-02-03 Brian Ryner <bryner@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Add a field to the ResourceResponse for tracking the socket address
+ of the host that the resource was fetched from. Patch was originally
+ by Paul Marks.
+ https://bugs.webkit.org/show_bug.cgi?id=53699
+
+ * public/WebURLResponse.h:
+ * src/WebURLResponse.cpp:
+ (WebKit::WebURLResponse::socketAddress):
+ (WebKit::WebURLResponse::setSocketAddress):
+
+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/*
+
+ * public/WebFrameClient.h:
+ (WebKit::WebFrameClient::didRunInsecureContent):
+ * src/FrameLoaderClientImpl.cpp:
+ (WebKit::FrameLoaderClientImpl::didRunInsecureContent):
+ * src/FrameLoaderClientImpl.h:
+
+2011-02-03 Victoria Kirst <vrk@google.com>
+
+ Reviewed by James Robinson.
+
+ [chromium] Fix redundant video frame paint on CSS LayerChromium for <video>
+ https://bugs.webkit.org/show_bug.cgi?id=52868
+
+ * src/WebMediaPlayerClientImpl.cpp:
+ (WebKit::WebMediaPlayerClientImpl::paint):
+ (WebKit::WebMediaPlayerClientImpl::paintCurrentFrameInContext):
+ (WebKit::WebMediaPlayerClientImpl::acceleratedRenderingInUse):
+ * src/WebMediaPlayerClientImpl.h:
+
+2011-02-03 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Don't clear the callbacks ref in the proxy layer for IndexedDB
+ https://bugs.webkit.org/show_bug.cgi?id=53535
+
+ Clearing the callbacks doesn't actually solve any problems and makes
+ this code behave subtly differently than how it would in Safari and
+ other single process environments. Let's remove the difference.
+
+ * src/IDBCallbacksProxy.cpp:
+ (WebCore::IDBCallbacksProxy::onError):
+ (WebCore::IDBCallbacksProxy::onSuccess):
+ * src/IDBTransactionCallbacksProxy.cpp:
+ (WebCore::IDBTransactionCallbacksProxy::onAbort):
+ (WebCore::IDBTransactionCallbacksProxy::onComplete):
+ (WebCore::IDBTransactionCallbacksProxy::onTimeout):
+
+2011-02-03 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ Chromium: Remove deprecated WebIDBObjectStore::put() function
+ https://bugs.webkit.org/show_bug.cgi?id=53669
+
+ Remove deprecated put() function. Chromium side code now overrides
+ the new version.
+
+ * public/WebIDBObjectStore.h:
+ (WebKit::WebIDBObjectStore::put):
+
+2011-02-01 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: introduce new api for managing JavaScript breakpoints.
+ https://bugs.webkit.org/show_bug.cgi?id=53235
+
+ * src/WebDevToolsAgentImpl.cpp:
+ (WebKit::WebDevToolsAgent::shouldInterruptForMessage):
+
+2011-02-02 Evan Martin <evan@chromium.org>
+
+ Unreviewed, DEPS change.
+
+ * DEPS: update to pick up newer Skia.
+
+2011-02-02 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Update more references to right() and bottom() in Chromium.
+
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::doPixelReadbackToCanvas): Replaced bottom/right with maxY/maxX.
+
+2011-02-02 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Update more references to right() and bottom() in Chromium Win.
+
+ * tests/TransparencyWinTest.cpp:
+ (WebCore::TEST): Replaced bottom/right with maxY/maxX.
+
+2011-02-02 Matthew Vosburgh <maf@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Some favicons not correctly decoded by Chromium/Mac
+ https://bugs.webkit.org/show_bug.cgi?id=53448
+
+ * src/WebImageCG.cpp:
+ (WebKit::WebImage::fromData):
+
+2011-02-02 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Remove remaining references to right() and bottom() from Chromium build.
+ https://bugs.webkit.org/show_bug.cgi?id=53613
+
+ * src/DragScrollTimer.cpp:
+ (WebKit::distanceToRect): Replaced right/bottom with maxX/maxY.
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::doPixelReadbackToCanvas): Ditto.
+
+2011-02-01 Darin Fisher <darin@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Avoid #ifdefs in code that constructs a GraphicsContext by
+ adding a helper class.
+ https://bugs.webkit.org/show_bug.cgi?id=53575
+
+ * WebKit.gyp:
+ * src/WebFontImpl.cpp:
+ (WebKit::WebFontImpl::drawText):
+ * src/WebFrameImpl.cpp:
+ (WebKit::WebFrameImpl::printPage):
+ (WebKit::WebFrameImpl::paint):
+ * src/WebPopupMenuImpl.cpp:
+ (WebKit::WebPopupMenuImpl::paint):
+ * src/WebScrollbarImpl.cpp:
+ (WebKit::WebScrollbarImpl::paint):
+ * src/painting: Added.
+ * src/painting/GraphicsContextBuilder.h: Added.
+ (WebKit::GraphicsContextBuilder::GraphicsContextBuilder):
+ (WebKit::GraphicsContextBuilder::context):
+
+2011-02-02 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Implement support for cursor updates
+ https://bugs.webkit.org/show_bug.cgi?id=53421
+
+ Mirror the update to the IDBObjectStoreInterface::put() signature in
+ the WebKit layer wrappers.
+
+ * public/WebIDBObjectStore.h:
+ (WebKit::WebIDBObjectStore::put):
+ * src/IDBObjectStoreProxy.cpp:
+ (WebCore::IDBObjectStoreProxy::put):
+ * src/IDBObjectStoreProxy.h:
+ * src/WebIDBObjectStoreImpl.cpp:
+ (WebKit::WebIDBObjectStoreImpl::put):
+ * src/WebIDBObjectStoreImpl.h:
+
+2011-02-02 Chris Evans <cevans@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [Chromium] Propagate the accurate gesture status when calling into FrameLoader
+ https://bugs.webkit.org/show_bug.cgi?id=53571
+
+ * src/WebPluginContainerImpl.cpp:
+ (WebKit::WebPluginContainerImpl::loadFrameRequest): FrameLoader might decide the target is a new window, so make such the UserGestureIndicator is fully accurate before calling into it.
+
+2011-02-01 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [Chromium] Roll Chromium revision for the WebKitWeightWatcher change
+ https://bugs.webkit.org/show_bug.cgi?id=53563
+
+ * DEPS: Roll to crrev.com/73378 to have the WebKitWeightWatcher change of webkit_support.
+
+2011-02-01 Darin Fisher <darin@chromium.org>
+
+ Reviewed by David Levin.
+
+ [chromium] Remove unnecessary WebCore:: prefixing in a few places and fix-up some indentation.
+ https://bugs.webkit.org/show_bug.cgi?id=53523
+
+ * src/WebDevToolsAgentImpl.cpp:
+ (WebKit::WebDevToolsAgentImpl::attach):
+ (WebKit::WebDevToolsAgentImpl::inspectNode):
+ (WebKit::WebDevToolsAgentImpl::inspectorController):
+ (WebKit::WebDevToolsAgentImpl::mainFrame):
+ (WebKit::WebDevToolsAgentImpl::identifierForInitialRequest):
+ (WebKit::WebDevToolsAgentImpl::sendMessageToFrontend):
+ (WebKit::WebDevToolsAgentImpl::updateInspectorStateCookie):
+ (WebKit::WebDevToolsAgent::interruptAndDispatch):
+ (WebKit::WebDevToolsAgent::processPendingMessages):
+ * src/WebPopupMenuImpl.cpp:
+ (WebKit::WebPopupMenuImpl::resize):
+ * src/WebScrollbarImpl.cpp:
+ (WebKit::WebScrollbarImpl::setLocation):
+ (WebKit::WebScrollbarImpl::setValue):
+ (WebKit::WebScrollbarImpl::onMouseWheel):
+ (WebKit::WebScrollbarImpl::onKeyDown):
+ (WebKit::WebScrollbarImpl::scrollPosition):
+ (WebKit::WebScrollbarImpl::setScrollOffset):
+ (WebKit::WebScrollbarImpl::invalidateScrollbarRect):
+ (WebKit::WebScrollbarImpl::getTickmarks):
+
+2011-02-01 Mihai Parparita <mihaip@chromium.org>
+
+ Unreviewed roll of Chromium deps to r73306. This picks up a fix to get
+ the WebKit root dir correctly after the move to Source/. This allows
+ tests like http/tests/security/frame-loading-via-document-write.html
+ (which use LayoutTestController.pathToLocalResource) to pass with the
+ Chromium DRT.
+
+ * DEPS:
+
+2011-02-01 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [Chromium] Wrongly labelled context-menu item for links in Web Inspector's side-pane
+ https://bugs.webkit.org/show_bug.cgi?id=53482
+
+ * src/js/DevTools.js:
+ (WebInspector.openLinkExternallyLabel): Override to customize a context menu item label
+
+2011-02-01 Darin Fisher <darin@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Fix some Visual Studio compiler warnings.
+ https://bugs.webkit.org/show_bug.cgi?id=53476
+
+ * src/GraphicsContext3DChromium.cpp:
+ (WebCore::GraphicsContext3DInternal::paintRenderingResultsToCanvas):
+ * src/WebFrameImpl.cpp:
+ (WebKit::WebFrameImpl::forms):
+ * src/WebMediaPlayerClientImpl.cpp:
+ (WebKit::WebMediaPlayerClientImpl::repaint):
+ * src/WebScrollbarImpl.cpp:
+ (WebKit::WebScrollbarImpl::setValue):
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::doPixelReadbackToCanvas):
+ (WebKit::WebViewImpl::setZoomLevel):
+ (WebKit::WebViewImplScrollbarPaintInterface::paint):
+
+2011-02-01 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ Chromium: remove WebIDBCallbacks::onSucces()
+ https://bugs.webkit.org/show_bug.cgi?id=53415
+
+ Remove un-used function.
+
+ * public/WebIDBCallbacks.h:
+
+2011-02-01 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Fix Chromium Debug compilation broken by r77228.
+
+ [Chromium] Autofill should work with HTML5 form elements
+ https://bugs.webkit.org/show_bug.cgi?id=51809
+
+ * src/WebInputElement.cpp:
+ (WebKit::toWebInputElement):
+
+2011-02-01 Naoki Takano <takano.naoki@gmail.com>
+
+ Reviewed by Darin Fisher.
+
+ [Chromium] Autofill should work with HTML5 form elements
+ https://bugs.webkit.org/show_bug.cgi?id=51809
+ http://crbug.com/65654
+
+ No new tests, because this fix is for Chromium project and hard to test only in WebKit project.
+
+ * public/WebInputElement.h: Added toWebInputElement() declarations and implemented const version of toWebInputElement().
+ * src/WebInputElement.cpp:
+ (WebKit::WebInputElement::toWebInputElement): Implemented a convert function to cast no-const WebElement* to no-const WebInputElement*. Because Chrome needs safe cast for autofill completion.
+
+2011-01-31 Chris Rogers <crogers@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ Improve audio latency on Mac OS X for chromium port
+ https://bugs.webkit.org/show_bug.cgi?id=53452
+
+ * src/AudioDestinationChromium.cpp:
+
+2011-01-29 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by David Kilzer.
+
+ Move CharacterNames.h into WTF directory
+ https://bugs.webkit.org/show_bug.cgi?id=49618
+
+ * src/ChromeClientImpl.cpp:
+
+2011-01-28 Ryosuke Niwa <rniwa@webkit.org>
+
+ Unreviewed; roll WebKit Chromium revision from 72894 to 73048.
+
+ * DEPS:
+
+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
+
+ * src/AutoFillPopupMenuClient.cpp:
+ (WebKit::AutoFillPopupMenuClient::initialize): Pass hasTextDirectionOverride to the PopupMenuStyle
+ constructor.
+ * src/ChromeClientImpl.cpp:
+ (WebKit::ChromeClientImpl::selectItemAlignmentFollowsMenuWritingDirection): Added.
+ * src/ChromeClientImpl.h:
+ * tests/PopupMenuTest.cpp:
+ (WebKit::TestPopupMenuClient::itemStyle): Pass hasTextDirectionOverride to the PopupMenuStyle
+ constructor.
+
+2011-01-28 Adam Klein <adamk@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ [Chromium] Remove deprecated openFileSystem method signature
+ https://bugs.webkit.org/show_bug.cgi?id=53262
+
+ Chromium still builds after this patch.
+
+ * public/WebFrameClient.h:
+
+2011-01-28 Ilya Sherman <isherman@chromium.org>
+
+ Reviewed by Andreas Kling.
+
+ Const-correct HTMLSelectElement and WebSelectElement
+ https://bugs.webkit.org/show_bug.cgi?id=53293
+
+ * public/WebSelectElement.h:
+ * src/WebSelectElement.cpp:
+ (WebKit::WebSelectElement::value): const.
+ (WebKit::WebSelectElement::listItems): const.
+
+2011-01-27 Finnur Thorarinsson <finnur.webkit@gmail.com>
+
+ Reviewed by Ojan Vafai.
+
+ This addresses a regression introduced by r75784, as described in:
+ https://bugs.webkit.org/show_bug.cgi?id=53176
+
+ The problem is that originalEndContainer and originalEndOffset was
+ meant to capture the end of the document, but was being assigned after
+ a call to searchRange->setStart() (when scoping is restarted), which can
+ result in the Range being collapsed to start (thereby assigning the
+ wrong value to the Container/Offset pair).
+
+ This code is never triggered by layout tests, but I'm adding a regressiono
+ test on the Chromium side for this.
+
+ * src/WebFrameImpl.cpp:
+ (WebKit::WebFrameImpl::scopeStringMatches):
+
+2011-01-27 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Define GC3D types to match GL types and use them in WebGraphicsContext3D
+ https://bugs.webkit.org/show_bug.cgi?id=51947
+
+ * public/WebGraphicsContext3D.h:
+
+2011-01-27 Zhenyao Mo <zmo@google.com>
+
+ Unreviewed, roll webkit chromium rev from 72673 to 72894.
+ Also, added gmock section in DEPS to pull down gmock.
+
+ * DEPS:
+
+2011-01-27 Alexey Marinichev <amarinichev@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Add a callback to WebGraphicsContext3D that is called when a context is lost
+ https://bugs.webkit.org/show_bug.cgi?id=53153
+
+ * public/WebGraphicsContext3D.h:
+ (WebKit::WebGraphicsContext3D::setContextLostCallback):
+
+2011-01-27 Mihai Parparita <mihaip@chromium.org>
+
+ Unreviewed, fixed upstream Chromium build
+
+ r76844 should have rolled back Chromium DEPS to 72673, not 72637.
+
+ * DEPS:
+
+2011-01-27 Zhenyao Mo <zmo@google.com>
+
+ Unreviewed, roll back webkit chromium rev to 72637.
+
+ * DEPS:
+
+2011-01-27 Zhenyao Mo <zmo@google.com>
+
+ Unreviewed.
+
+ Roll Webkit Chromium rev from 72637 to 72868.
+
+ * DEPS:
+
+2011-01-27 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Remove IDBCallbacks::onSuccess() used for null values.
+ https://bugs.webkit.org/show_bug.cgi?id=53178
+
+ Remove the IDBCallbacks::onSuccess() function that was used for
+ null values, and replace such calls with calls to
+ IDBCallBacks::onSuccess(SerializedScriptValue::nullValue())
+ instead.
+
+ * public/WebIDBCallbacks.h:
+ (WebKit::WebIDBCallbacks::onSuccess):
+ * src/IDBCallbacksProxy.cpp:
+ * src/IDBCallbacksProxy.h:
+ * src/WebIDBCallbacksImpl.cpp:
+ * src/WebIDBCallbacksImpl.h:
+
+2011-01-26 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ [Chromium] WebFrame::forms() should not return empty WebFormElements
+ https://bugs.webkit.org/show_bug.cgi?id=53204
+
+ * src/WebFrameImpl.cpp:
+ (WebKit::WebFrameImpl::forms):
+ - Should iterate by forms->length(), not the number of HTMLElements.
+ - Do not increment the index for "temp" if a node is not an HTMLElement.
+
+2011-01-26 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ <rdar://problem/8446709> Allow inter-ideograph justification for CJK
+ https://bugs.webkit.org/show_bug.cgi?id=53184
+
+ * src/WebTextRun.cpp:
+ (WebKit::WebTextRun::operator WebCore::TextRun): Added a TrailingExpansionBehavior parameter to the
+ RenderText constructor.
+
+2011-01-26 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Fix multisampling support in DrawingBuffer
+ https://bugs.webkit.org/show_bug.cgi?id=53154
+
+ Plumbed GL_ANGLE_framebuffer_multisample and
+ GL_ANGLE_framebuffer_blit (exposed as the unified extension
+ GL_CHROMIUM_framebuffer_multisample) through WebGraphicsContext3D.
+
+ * public/WebGraphicsContext3D.h:
+ * src/Extensions3DChromium.cpp:
+ (WebCore::Extensions3DChromium::blitFramebuffer):
+ (WebCore::Extensions3DChromium::renderbufferStorageMultisample):
+ * src/GraphicsContext3DChromium.cpp:
+ (WebCore::GraphicsContext3DInternal::supportsExtension):
+ (WebCore::GraphicsContext3DInternal::ensureExtensionEnabled):
+ * src/GraphicsContext3DInternal.h:
+
+2011-01-26 Tony Chang <tony@chromium.org>
+
+ Unreviewed.
+
+ [chromium] revert r68310 because of race conditions detected by tsans
+ https://bugs.webkit.org/show_bug.cgi?id=53185
+
+ * DEPS: Roll chromium to 72673 to pick up sqlite revert.
+
+2011-01-26 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Add a DOMTimeStamp parameter to the requestAnimationFrame callback
+ https://bugs.webkit.org/show_bug.cgi?id=53142
+
+ Provides a timestamp to use for imperative animation callbacks. In this patch the timestamp is
+ just the current time at the start of the callback invocation algorithm. In the future we
+ could enhance this to try to take the compositing delay into effect to try to synchronize
+ imperative animations more closely with declarative ones, but this should do for now.
+
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::animate):
+
+2011-01-25 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed trivial change.
+
+ * DEPS: Roll to r72581 to have a webkit_support fix.
+
+2011-01-25 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Remove PlatformBridge::idbShutdown()
+ https://bugs.webkit.org/show_bug.cgi?id=53077
+
+ Since Chromium r72157, this is not used anymore. Chromium keeps track
+ of when it shuts down IndexedDB itself.
+
+ * public/WebKitClient.h:
+ * src/PlatformBridge.cpp:
+
+2011-01-25 Ilya Sherman <isherman@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Chromium WebKit API: Move dispatchFormControlChangeEvent() from WebInputElement to WebFormControlElement
+ In service of https://code.google.com/p/chromium/issues/detail?id=42716
+ https://bugs.webkit.org/show_bug.cgi?id=53069
+
+ * public/WebFormControlElement.h:
+ * public/WebInputElement.h:
+ * src/WebFormControlElement.cpp:
+ (WebKit::WebFormControlElement::dispatchFormControlChangeEvent): Moved from WebInputElement
+ * src/WebInputElement.cpp:
+
+2011-01-24 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Change ENABLE_3D_CANVAS to ENABLE_WEBGL
+ https://bugs.webkit.org/show_bug.cgi?id=53041
+
+ * WebKit.gyp:
+ * features.gypi:
+ * src/Extensions3DChromium.cpp:
+ * src/GraphicsContext3DChromium.cpp:
+ * src/WebRuntimeFeatures.cpp:
+ (WebKit::WebRuntimeFeatures::enableWebGL):
+ (WebKit::WebRuntimeFeatures::isWebGLEnabled):
+
+2011-01-25 Mikhail Naganov <mnaganov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Chromium] Prepare for landing of detailed heap snapshots.
+
+ - Introduce Preferences.detailedHeapProfiles flag for controlling
+ querying of detailed heap snapshots.
+ - Add boilerplate code for the new view.
+ - Factor out common code.
+
+ https://bugs.webkit.org/show_bug.cgi?id=52624
+
+ * src/js/DevTools.js:
+ ():
+
+2011-01-25 Pavel Podivilov <podivilov@chromium.org>
+
+ Unreviewed, trivial debugger test fix.
+
+ * src/js/Tests.js:
+
+2011-01-24 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Darin Adler.
+
+ Remove sizeInBytes from GraphicsContext3D's various implementations
+ https://bugs.webkit.org/show_bug.cgi?id=52339
+
+ * src/GraphicsContext3DChromium.cpp:
+ * src/GraphicsContext3DInternal.h:
+
+2011-01-24 Tony Chang <tony@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] turn off gyp circular dependency checking and roll chromium deps
+ https://bugs.webkit.org/show_bug.cgi?id=52935
+
+ * DEPS:
+ * gyp_webkit: Turn off gyp circular dependency checking on Linux
+ and Win since we don't do these checks in gyp_chromium. It's
+ just making it harder for us to roll DEPS and have something
+ explode.
+
+2011-01-24 Satish Sampath <satish@chromium.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ Remove obsolete public/API method in chromium port
+ https://bugs.webkit.org/show_bug.cgi?id=53015
+
+ * public/WebSpeechInputController.h:
+ (WebKit::WebSpeechInputController::startRecognition): Removed obsolete method
+
+2010-01-24 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [Chromium] Support icon loading for <input type=file>
+ https://bugs.webkit.org/show_bug.cgi?id=38982
+
+ Implement ChromeClientImpl::chooseIconForFiles(). It delegates loading
+ to WebViewClient::queryIconForFiles(), and an implementation of
+ WebViewClient::queryIconForFiles() loads an icon and passes it to a
+ FileChooser through WebIconLoadingCompletion.
+
+ * WebKit.gyp:
+ * public/WebIconLoadingCompletion.h: Added.
+ (WebKit::WebIconLoadingCompletion::~WebIconLoadingCompletion):
+ * public/WebViewClient.h:
+ (WebKit::WebViewClient::queryIconForFiles):
+ * src/ChromeClientImpl.cpp:
+ (WebKit::ChromeClientImpl::chooseIconForFiles):
+ * src/WebIconLoadingCompletionImpl.cpp: Added.
+ (WebKit::WebIconLoadingCompletionImpl::WebIconLoadingCompletionImpl):
+ (WebKit::WebIconLoadingCompletionImpl::~WebIconLoadingCompletionImpl):
+ (WebKit::WebIconLoadingCompletionImpl::didLoadIcon):
+ * src/WebIconLoadingCompletionImpl.h: Added.
+
+2011-01-22 John Abd-El-Malek <jam@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [chromium]: Fix WebScrollbarImpl not getting scroll events after recent scrollbar refactoring
+ https://bugs.webkit.org/show_bug.cgi?id=52967
+
+ * src/WebScrollbarImpl.cpp:
+ (WebKit::WebScrollbarImpl::horizontalScrollbar):
+ (WebKit::WebScrollbarImpl::verticalScrollbar):
+ * src/WebScrollbarImpl.h:
+
+2011-01-21 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Introduce FontMetrics abstraction
+ https://bugs.webkit.org/show_bug.cgi?id=51456
+
+ * src/ExternalPopupMenu.cpp: Use FontMetrics instead of Font to access the metrics.
+ (WebKit::ExternalPopupMenu::getPopupMenuInfo):
+ * src/WebFontImpl.cpp: Ditto.
+ (WebKit::WebFontImpl::ascent):
+ (WebKit::WebFontImpl::descent):
+ (WebKit::WebFontImpl::height):
+ (WebKit::WebFontImpl::lineSpacing):
+ (WebKit::WebFontImpl::xHeight):
+
+2011-01-21 Chris Rogers <crogers@google.com>
+
+ Unreviewed
+
+ define HAS_WEBAUDIO_RUNTIMEFEATURES for synchronization with chromium patch landing
+ https://bugs.webkit.org/show_bug.cgi?id=52941
+
+ * public/WebRuntimeFeatures.h:
+
+2011-01-21 Chris Rogers <crogers@google.com>
+
+ Unreviewed
+
+ Add HAS_WEBAUDIO_FEATURE_ENABLE define to synchronize with chromium-side patch
+ https://bugs.webkit.org/show_bug.cgi?id=52939
+
+ * public/WebSettings.h:
+
2011-01-21 Charlie Reis <creis@chromium.org>
Reviewed by Darin Fisher.
diff --git a/Source/WebKit/chromium/DEPS b/Source/WebKit/chromium/DEPS
index 8d08c3f..8ad3c5e 100644
--- a/Source/WebKit/chromium/DEPS
+++ b/Source/WebKit/chromium/DEPS
@@ -32,7 +32,7 @@
vars = {
'chromium_svn': 'http://src.chromium.org/svn/trunk/src',
- 'chromium_rev': '71969'
+ 'chromium_rev': '73764'
}
deps = {
@@ -56,6 +56,8 @@ deps = {
# skia dependencies
'skia':
Var('chromium_svn')+'/skia@'+Var('chromium_rev'),
+ 'third_party/skia/gpu':
+ From('chromium_deps', 'src/third_party/skia/gpu'),
'third_party/skia/src':
From('chromium_deps', 'src/third_party/skia/src'),
'third_party/skia/include':
@@ -66,6 +68,8 @@ deps = {
Var('chromium_svn')+'/testing@'+Var('chromium_rev'),
'testing/gtest':
From('chromium_deps', 'src/testing/gtest'),
+ 'testing/gmock':
+ From('chromium_deps', 'src/testing/gmock'),
# v8 javascript engine
'v8': From('chromium_deps', 'src/v8'),
diff --git a/Source/WebKit/chromium/WebKit.gyp b/Source/WebKit/chromium/WebKit.gyp
index 3a3672c..f2aa107 100644
--- a/Source/WebKit/chromium/WebKit.gyp
+++ b/Source/WebKit/chromium/WebKit.gyp
@@ -188,6 +188,7 @@
'public/WebHistoryItem.h',
'public/WebHTTPBody.h',
'public/WebHTTPLoadInfo.h',
+ 'public/WebIconLoadingCompletion.h',
'public/WebImage.h',
'public/WebImageDecoder.h',
'public/WebIDBCallbacks.h',
@@ -272,6 +273,8 @@
'public/WebString.h',
'public/WebTextAffinity.h',
'public/WebTextCaseSensitivity.h',
+ 'public/WebTextCheckingResult.h',
+ 'public/WebTextCheckingCompletion.h',
'public/WebTextDirection.h',
'public/WebTextInputType.h',
'public/WebTextRun.h',
@@ -383,6 +386,7 @@
'src/MediaPlayerPrivateChromium.cpp',
'src/NotificationPresenterImpl.h',
'src/NotificationPresenterImpl.cpp',
+ 'src/painting/GraphicsContextBuilder.h',
'src/PlatformBridge.cpp',
'src/PlatformMessagePortChannel.cpp',
'src/PlatformMessagePortChannel.h',
@@ -399,6 +403,8 @@
'src/StorageNamespaceProxy.cpp',
'src/StorageNamespaceProxy.h',
'src/TemporaryGlue.h',
+ 'src/WebTextCheckingCompletionImpl.h',
+ 'src/WebTextCheckingCompletionImpl.cpp',
'src/VideoFrameChromiumImpl.cpp',
'src/VideoFrameChromiumImpl.h',
'src/WebAccessibilityCache.cpp',
@@ -463,6 +469,8 @@
'src/WebHistoryItem.cpp',
'src/WebHTTPBody.cpp',
'src/WebHTTPLoadInfo.cpp',
+ 'src/WebIconLoadingCompletionImpl.cpp',
+ 'src/WebIconLoadingCompletionImpl.h',
'src/WebIDBCallbacksImpl.cpp',
'src/WebIDBCallbacksImpl.h',
'src/WebIDBCursorImpl.cpp',
@@ -660,7 +668,7 @@
'chromium_code': 1,
}
}],
- ['"ENABLE_3D_CANVAS=1" in feature_defines', {
+ ['"ENABLE_WEBGL=1" in feature_defines', {
'conditions': [
['OS=="mac"', {
'link_settings': {
@@ -952,8 +960,8 @@
'variables': {
'repack_path': '<(chromium_src_dir)/tools/data_pack/repack.py',
'pak_inputs': [
- '<(SHARED_INTERMEDIATE_DIR)/gfx/gfx_resources.pak',
'<(SHARED_INTERMEDIATE_DIR)/net/net_resources.pak',
+ '<(SHARED_INTERMEDIATE_DIR)/ui/gfx/gfx_resources.pak',
'<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.pak',
'<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_strings_en-US.pak',
'<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_resources.pak',
diff --git a/Source/WebKit/chromium/features.gypi b/Source/WebKit/chromium/features.gypi
index 7f4cda6..8944fde 100644
--- a/Source/WebKit/chromium/features.gypi
+++ b/Source/WebKit/chromium/features.gypi
@@ -39,7 +39,7 @@
# chromium build, overrides this list with its own values. See
# features_override.gypi inline documentation for more details.
'feature_defines': [
- 'ENABLE_3D_CANVAS=1',
+ 'ENABLE_WEBGL=1',
'ENABLE_3D_RENDERING=1',
'ENABLE_ACCELERATED_2D_CANVAS=1',
'ENABLE_BLOB=1',
@@ -53,6 +53,7 @@
'ENABLE_DIRECTORY_UPLOAD=1',
'ENABLE_DOM_STORAGE=1',
'ENABLE_EVENTSOURCE=1',
+ 'ENABLE_JAVASCRIPT_I18N_API=1',
'ENABLE_FILE_SYSTEM=1',
'ENABLE_FILTERS=1',
'ENABLE_GEOLOCATION=1',
@@ -69,6 +70,7 @@
'ENABLE_OPENTYPE_SANITIZER=1',
'ENABLE_ORIENTATION_EVENTS=0',
'ENABLE_PROGRESS_TAG=1',
+ 'ENABLE_REGISTER_PROTOCOL_HANDLER=0',
'ENABLE_REQUEST_ANIMATION_FRAME=1',
'ENABLE_SHARED_WORKERS=1',
'ENABLE_SVG=1',
diff --git a/Source/WebKit/chromium/gyp_webkit b/Source/WebKit/chromium/gyp_webkit
index 29e3e7c..768acac 100755
--- a/Source/WebKit/chromium/gyp_webkit
+++ b/Source/WebKit/chromium/gyp_webkit
@@ -76,6 +76,15 @@ if __name__ == '__main__':
# Add includes.
args.extend(['-I' + i for i in additional_include_files(args)])
+ # There shouldn't be a circular dependency relationship between .gyp files,
+ # but in Chromium's .gyp files, on non-Mac platforms, circular relationships
+ # currently exist. The check for circular dependencies is currently
+ # bypassed on other platforms, but is left enabled on the Mac, where a
+ # violation of the rule causes Xcode to misbehave badly.
+ # http://crbug.com/35878.
+ if sys.platform not in ('darwin',):
+ args.append('--no-circular-check')
+
# On linux, we want gyp to output a makefile (default is scons).
if sys.platform == 'linux2':
args.extend(['-fmake',
diff --git a/Source/WebKit/chromium/public/WebAutoFillClient.h b/Source/WebKit/chromium/public/WebAutoFillClient.h
index 4e73be0..63b39a8 100644
--- a/Source/WebKit/chromium/public/WebAutoFillClient.h
+++ b/Source/WebKit/chromium/public/WebAutoFillClient.h
@@ -70,11 +70,6 @@ public:
virtual void removeAutocompleteSuggestion(const WebString& name,
const WebString& value) { }
- // Informs the browser that the user has selected an autocomplete (password
- // or field) suggestion from the drop-down. The input element text has
- // already been set to the selected suggestion.
- virtual void didAcceptAutocompleteSuggestion(const WebInputElement&) { }
-
// These methods are called when the users edits a text-field.
virtual void textFieldDidBeginEditing(const WebInputElement&) { }
virtual void textFieldDidEndEditing(const WebInputElement&) { }
diff --git a/Source/WebKit/chromium/public/WebFormControlElement.h b/Source/WebKit/chromium/public/WebFormControlElement.h
index 56a02dd..e70b995 100644
--- a/Source/WebKit/chromium/public/WebFormControlElement.h
+++ b/Source/WebKit/chromium/public/WebFormControlElement.h
@@ -57,6 +57,8 @@ public:
WEBKIT_API WebString formControlName() const;
WEBKIT_API WebString formControlType() const;
+ WEBKIT_API void dispatchFormControlChangeEvent();
+
// Returns the name that should be used for the specified |element| when
// storing autofill data. This is either the field name or its id, an empty
// string if it has no name and no id.
diff --git a/Source/WebKit/chromium/public/WebFrameClient.h b/Source/WebKit/chromium/public/WebFrameClient.h
index 2e1890a..d1fe751 100644
--- a/Source/WebKit/chromium/public/WebFrameClient.h
+++ b/Source/WebKit/chromium/public/WebFrameClient.h
@@ -41,6 +41,7 @@ namespace WebKit {
class WebApplicationCacheHost;
class WebApplicationCacheHostClient;
+class WebClipboard;
class WebCookieJar;
class WebDataSource;
class WebFormElement;
@@ -88,6 +89,10 @@ public:
// WebKitClient::cookieJar() will be called to access cookies.
virtual WebCookieJar* cookieJar(WebFrame*) { return 0; }
+ // A frame specific clipboard. May return null, in which case the caller
+ // should assume there is no data in the clipboard.
+ virtual WebClipboard* clipboard() { return 0; }
+
// General notifications -----------------------------------------------
@@ -279,7 +284,7 @@ public:
// The indicated security origin has run active content (such as a
// script) from an insecure source. Note that the insecure content can
// spread to other frames in the same origin.
- virtual void didRunInsecureContent(WebFrame*, const WebSecurityOrigin&) { }
+ virtual void didRunInsecureContent(WebFrame*, const WebSecurityOrigin&, const WebURL& insecureURL) { }
// Script notifications ------------------------------------------------
@@ -362,9 +367,6 @@ public:
WebFrame*, WebFileSystem::Type, long long size,
bool create, WebFileSystemCallbacks*) { }
- // FIXME: This method should be deleted once chromium implements the new method above.
- virtual void openFileSystem(WebFrame* frame, WebFileSystem::Type type, long long size, WebFileSystemCallbacks* callbacks) { return openFileSystem(frame, type, size, true, callbacks); }
-
protected:
~WebFrameClient() { }
};
diff --git a/Source/WebKit/chromium/public/WebGraphicsContext3D.h b/Source/WebKit/chromium/public/WebGraphicsContext3D.h
index 6568d1c..984f79d 100644
--- a/Source/WebKit/chromium/public/WebGraphicsContext3D.h
+++ b/Source/WebKit/chromium/public/WebGraphicsContext3D.h
@@ -35,10 +35,30 @@
#include "WebNonCopyable.h"
#include "WebString.h"
+#define USE_WGC3D_TYPES
+
namespace WebKit {
+// WGC3D types match the corresponding GL types as defined in OpenGL ES 2.0
+// header file gl2.h from khronos.org.
+typedef char WGC3Dchar;
+typedef unsigned int WGC3Denum;
+typedef unsigned char WGC3Dboolean;
+typedef unsigned int WGC3Dbitfield;
+typedef signed char WGC3Dbyte;
+typedef unsigned char WGC3Dubyte;
+typedef short WGC3Dshort;
+typedef unsigned short WGC3Dushort;
+typedef int WGC3Dint;
+typedef int WGC3Dsizei;
+typedef unsigned int WGC3Duint;
+typedef float WGC3Dfloat;
+typedef float WGC3Dclampf;
+typedef signed long int WGC3Dintptr;
+typedef signed long int WGC3Dsizeiptr;
+
// Typedef for server-side objects like OpenGL textures and program objects.
-typedef unsigned int WebGLId;
+typedef WGC3Duint WebGLId;
class WebView;
@@ -52,8 +72,8 @@ public:
// Return value from getActiveUniform and getActiveAttrib.
struct ActiveInfo {
WebString name;
- unsigned type;
- int size;
+ WGC3Denum type;
+ WGC3Dint size;
};
// Context creation attributes.
@@ -76,6 +96,12 @@ public:
bool canRecoverFromContextLoss;
};
+ class WebGraphicsContextLostCallback {
+ public:
+ virtual void onContextLost() = 0;
+ virtual ~WebGraphicsContextLostCallback() {}
+ };
+
// This destructor needs to be public so that using classes can destroy instances if initialization fails.
virtual ~WebGraphicsContext3D() {}
@@ -92,10 +118,6 @@ public:
virtual int width() = 0;
virtual int height() = 0;
- // Helper to return the size in bytes of OpenGL data types
- // like GL_FLOAT, GL_INT, etc.
- virtual int sizeInBytes(int type) = 0;
-
// Resizes the region into which this WebGraphicsContext3D is drawing.
virtual void reshape(int width, int height) = 0;
@@ -111,7 +133,7 @@ public:
// Returns the id of the texture which is used for storing the contents of
// the framebuffer associated with this context. This texture is accessible
// by the gpu-based page compositor.
- virtual unsigned getPlatformTextureId() = 0;
+ virtual WebGLId getPlatformTextureId() = 0;
// Copies the contents of the off-screen render target used by the WebGL
// context to the corresponding texture used by the compositor.
@@ -125,205 +147,193 @@ public:
// Per the behavior of glGetError, this stores at most one
// instance of any given error, and returns them from calls to
// getError in the order they were added.
- virtual void synthesizeGLError(unsigned long error) = 0;
+ virtual void synthesizeGLError(WGC3Denum) = 0;
+
+ virtual bool isContextLost() = 0;
// GL_CHROMIUM_map_sub
- virtual void* mapBufferSubDataCHROMIUM(unsigned target, int offset, int size, unsigned access) = 0;
+ virtual void* mapBufferSubDataCHROMIUM(WGC3Denum target, WGC3Dintptr offset, WGC3Dsizeiptr size, WGC3Denum access) = 0;
virtual void unmapBufferSubDataCHROMIUM(const void*) = 0;
- virtual void* mapTexSubImage2DCHROMIUM(unsigned target, int level, int xoffset, int yoffset, int width, int height, unsigned format, unsigned type, unsigned access) = 0;
+ virtual void* mapTexSubImage2DCHROMIUM(WGC3Denum target, WGC3Dint level, WGC3Dint xoffset, WGC3Dint yoffset, WGC3Dsizei width, WGC3Dsizei height, WGC3Denum format, WGC3Denum type, WGC3Denum access) = 0;
virtual void unmapTexSubImage2DCHROMIUM(const void*) = 0;
// GL_CHROMIUM_copy_texture_to_parent_texture
- virtual void copyTextureToParentTextureCHROMIUM(unsigned texture, unsigned parentTexture) = 0;
+ virtual void copyTextureToParentTextureCHROMIUM(WebGLId texture, WebGLId parentTexture) = 0;
// GL_CHROMIUM_request_extension
virtual WebString getRequestableExtensionsCHROMIUM() = 0;
virtual void requestExtensionCHROMIUM(const char*) = 0;
+ // GL_CHROMIUM_framebuffer_multisample
+ virtual void blitFramebufferCHROMIUM(WGC3Dint srcX0, WGC3Dint srcY0, WGC3Dint srcX1, WGC3Dint srcY1, WGC3Dint dstX0, WGC3Dint dstY0, WGC3Dint dstX1, WGC3Dint dstY1, WGC3Dbitfield mask, WGC3Denum filter) = 0;
+ virtual void renderbufferStorageMultisampleCHROMIUM(WGC3Denum target, WGC3Dsizei samples, WGC3Denum internalformat, WGC3Dsizei width, WGC3Dsizei height) = 0;
+
// The entry points below map directly to the OpenGL ES 2.0 API.
// See: http://www.khronos.org/registry/gles/
// and: http://www.khronos.org/opengles/sdk/docs/man/
- virtual void activeTexture(unsigned long texture) = 0;
+ virtual void activeTexture(WGC3Denum texture) = 0;
virtual void attachShader(WebGLId program, WebGLId shader) = 0;
- virtual void bindAttribLocation(WebGLId program, unsigned long index, const char* name) = 0;
- virtual void bindBuffer(unsigned long target, WebGLId buffer) = 0;
- virtual void bindFramebuffer(unsigned long target, WebGLId framebuffer) = 0;
- virtual void bindRenderbuffer(unsigned long target, WebGLId renderbuffer) = 0;
- virtual void bindTexture(unsigned long target, WebGLId texture) = 0;
- virtual void blendColor(double red, double green, double blue, double alpha) = 0;
- virtual void blendEquation(unsigned long mode) = 0;
- virtual void blendEquationSeparate(unsigned long modeRGB, unsigned long modeAlpha) = 0;
- virtual void blendFunc(unsigned long sfactor, unsigned long dfactor) = 0;
- virtual void blendFuncSeparate(unsigned long srcRGB, unsigned long dstRGB, unsigned long srcAlpha, unsigned long dstAlpha) = 0;
-
- virtual void bufferData(unsigned long target, int size, const void* data, unsigned long usage) = 0;
- virtual void bufferSubData(unsigned long target, long offset, int size, const void* data) = 0;
-
- virtual unsigned long checkFramebufferStatus(unsigned long target) = 0;
- virtual void clear(unsigned long mask) = 0;
- virtual void clearColor(double red, double green, double blue, double alpha) = 0;
- virtual void clearDepth(double depth) = 0;
- virtual void clearStencil(long s) = 0;
- virtual void colorMask(bool red, bool green, bool blue, bool alpha) = 0;
+ virtual void bindAttribLocation(WebGLId program, WGC3Duint index, const WGC3Dchar* name) = 0;
+ virtual void bindBuffer(WGC3Denum target, WebGLId buffer) = 0;
+ virtual void bindFramebuffer(WGC3Denum target, WebGLId framebuffer) = 0;
+ virtual void bindRenderbuffer(WGC3Denum target, WebGLId renderbuffer) = 0;
+ virtual void bindTexture(WGC3Denum target, WebGLId texture) = 0;
+ virtual void blendColor(WGC3Dclampf red, WGC3Dclampf green, WGC3Dclampf blue, WGC3Dclampf alpha) = 0;
+ virtual void blendEquation(WGC3Denum mode) = 0;
+ virtual void blendEquationSeparate(WGC3Denum modeRGB, WGC3Denum modeAlpha) = 0;
+ virtual void blendFunc(WGC3Denum sfactor, WGC3Denum dfactor) = 0;
+ virtual void blendFuncSeparate(WGC3Denum srcRGB, WGC3Denum dstRGB, WGC3Denum srcAlpha, WGC3Denum dstAlpha) = 0;
+
+ virtual void bufferData(WGC3Denum target, WGC3Dsizeiptr size, const void* data, WGC3Denum usage) = 0;
+ virtual void bufferSubData(WGC3Denum target, WGC3Dintptr offset, WGC3Dsizeiptr size, const void* data) = 0;
+
+ virtual WGC3Denum checkFramebufferStatus(WGC3Denum target) = 0;
+ virtual void clear(WGC3Dbitfield mask) = 0;
+ virtual void clearColor(WGC3Dclampf red, WGC3Dclampf green, WGC3Dclampf blue, WGC3Dclampf alpha) = 0;
+ virtual void clearDepth(WGC3Dclampf depth) = 0;
+ virtual void clearStencil(WGC3Dint s) = 0;
+ virtual void colorMask(WGC3Dboolean red, WGC3Dboolean green, WGC3Dboolean blue, WGC3Dboolean alpha) = 0;
virtual void compileShader(WebGLId shader) = 0;
- virtual void copyTexImage2D(unsigned long target, long level, unsigned long internalformat, long x, long y, unsigned long width, unsigned long height, long border) = 0;
- virtual void copyTexSubImage2D(unsigned long target, long level, long xoffset, long yoffset, long x, long y, unsigned long width, unsigned long height) = 0;
- virtual void cullFace(unsigned long mode) = 0;
- virtual void depthFunc(unsigned long func) = 0;
- virtual void depthMask(bool flag) = 0;
- virtual void depthRange(double zNear, double zFar) = 0;
+ virtual void copyTexImage2D(WGC3Denum target, WGC3Dint level, WGC3Denum internalformat, WGC3Dint x, WGC3Dint y, WGC3Dsizei width, WGC3Dsizei height, WGC3Dint border) = 0;
+ virtual void copyTexSubImage2D(WGC3Denum target, WGC3Dint level, WGC3Dint xoffset, WGC3Dint yoffset, WGC3Dint x, WGC3Dint y, WGC3Dsizei width, WGC3Dsizei height) = 0;
+ virtual void cullFace(WGC3Denum mode) = 0;
+ virtual void depthFunc(WGC3Denum func) = 0;
+ virtual void depthMask(WGC3Dboolean flag) = 0;
+ virtual void depthRange(WGC3Dclampf zNear, WGC3Dclampf zFar) = 0;
virtual void detachShader(WebGLId program, WebGLId shader) = 0;
- virtual void disable(unsigned long cap) = 0;
- virtual void disableVertexAttribArray(unsigned long index) = 0;
- virtual void drawArrays(unsigned long mode, long first, long count) = 0;
- virtual void drawElements(unsigned long mode, unsigned long count, unsigned long type, long offset) = 0;
+ virtual void disable(WGC3Denum cap) = 0;
+ virtual void disableVertexAttribArray(WGC3Duint index) = 0;
+ virtual void drawArrays(WGC3Denum mode, WGC3Dint first, WGC3Dsizei count) = 0;
+ virtual void drawElements(WGC3Denum mode, WGC3Dsizei count, WGC3Denum type, WGC3Dintptr offset) = 0;
- virtual void enable(unsigned long cap) = 0;
- virtual void enableVertexAttribArray(unsigned long index) = 0;
+ virtual void enable(WGC3Denum cap) = 0;
+ virtual void enableVertexAttribArray(WGC3Duint index) = 0;
virtual void finish() = 0;
virtual void flush() = 0;
- virtual void framebufferRenderbuffer(unsigned long target, unsigned long attachment, unsigned long renderbuffertarget, WebGLId renderbuffer) = 0;
- virtual void framebufferTexture2D(unsigned long target, unsigned long attachment, unsigned long textarget, WebGLId texture, long level) = 0;
- virtual void frontFace(unsigned long mode) = 0;
- virtual void generateMipmap(unsigned long target) = 0;
-
- virtual bool getActiveAttrib(WebGLId program, unsigned long index, ActiveInfo&) = 0;
- virtual bool getActiveUniform(WebGLId program, unsigned long index, ActiveInfo&) = 0;
-
- virtual void getAttachedShaders(WebGLId program, int maxCount, int* count, unsigned int* shaders) = 0;
-
- virtual int getAttribLocation(WebGLId program, const char* name) = 0;
-
- virtual void getBooleanv(unsigned long pname, unsigned char* value) = 0;
-
- virtual void getBufferParameteriv(unsigned long target, unsigned long pname, int* value) = 0;
-
+ virtual void framebufferRenderbuffer(WGC3Denum target, WGC3Denum attachment, WGC3Denum renderbuffertarget, WebGLId renderbuffer) = 0;
+ virtual void framebufferTexture2D(WGC3Denum target, WGC3Denum attachment, WGC3Denum textarget, WebGLId texture, WGC3Dint level) = 0;
+ virtual void frontFace(WGC3Denum mode) = 0;
+ virtual void generateMipmap(WGC3Denum target) = 0;
+
+ virtual bool getActiveAttrib(WebGLId program, WGC3Duint index, ActiveInfo&) = 0;
+ virtual bool getActiveUniform(WebGLId program, WGC3Duint index, ActiveInfo&) = 0;
+ virtual void getAttachedShaders(WebGLId program, WGC3Dsizei maxCount, WGC3Dsizei* count, WebGLId* shaders) = 0;
+ virtual WGC3Dint getAttribLocation(WebGLId program, const WGC3Dchar* name) = 0;
+ virtual void getBooleanv(WGC3Denum pname, WGC3Dboolean* value) = 0;
+ virtual void getBufferParameteriv(WGC3Denum target, WGC3Denum pname, WGC3Dint* value) = 0;
virtual Attributes getContextAttributes() = 0;
-
- virtual unsigned long getError() = 0;
-
- virtual bool isContextLost() = 0;
-
- virtual void getFloatv(unsigned long pname, float* value) = 0;
-
- virtual void getFramebufferAttachmentParameteriv(unsigned long target, unsigned long attachment, unsigned long pname, int* value) = 0;
-
- virtual void getIntegerv(unsigned long pname, int* value) = 0;
-
- virtual void getProgramiv(WebGLId program, unsigned long pname, int* value) = 0;
-
+ virtual WGC3Denum getError() = 0;
+ virtual void getFloatv(WGC3Denum pname, WGC3Dfloat* value) = 0;
+ virtual void getFramebufferAttachmentParameteriv(WGC3Denum target, WGC3Denum attachment, WGC3Denum pname, WGC3Dint* value) = 0;
+ virtual void getIntegerv(WGC3Denum pname, WGC3Dint* value) = 0;
+ virtual void getProgramiv(WebGLId program, WGC3Denum pname, WGC3Dint* value) = 0;
virtual WebString getProgramInfoLog(WebGLId program) = 0;
-
- virtual void getRenderbufferParameteriv(unsigned long target, unsigned long pname, int* value) = 0;
-
- virtual void getShaderiv(WebGLId shader, unsigned long pname, int* value) = 0;
-
+ virtual void getRenderbufferParameteriv(WGC3Denum target, WGC3Denum pname, WGC3Dint* value) = 0;
+ virtual void getShaderiv(WebGLId shader, WGC3Denum pname, WGC3Dint* value) = 0;
virtual WebString getShaderInfoLog(WebGLId shader) = 0;
// TBD
// void glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
virtual WebString getShaderSource(WebGLId shader) = 0;
- virtual WebString getString(unsigned long name) = 0;
-
- virtual void getTexParameterfv(unsigned long target, unsigned long pname, float* value) = 0;
- virtual void getTexParameteriv(unsigned long target, unsigned long pname, int* value) = 0;
-
- virtual void getUniformfv(WebGLId program, long location, float* value) = 0;
- virtual void getUniformiv(WebGLId program, long location, int* value) = 0;
-
- virtual long getUniformLocation(WebGLId program, const char* name) = 0;
-
- virtual void getVertexAttribfv(unsigned long index, unsigned long pname, float* value) = 0;
- virtual void getVertexAttribiv(unsigned long index, unsigned long pname, int* value) = 0;
-
- virtual long getVertexAttribOffset(unsigned long index, unsigned long pname) = 0;
-
- virtual void hint(unsigned long target, unsigned long mode) = 0;
- virtual bool isBuffer(WebGLId buffer) = 0;
- virtual bool isEnabled(unsigned long cap) = 0;
- virtual bool isFramebuffer(WebGLId framebuffer) = 0;
- virtual bool isProgram(WebGLId program) = 0;
- virtual bool isRenderbuffer(WebGLId renderbuffer) = 0;
- virtual bool isShader(WebGLId shader) = 0;
- virtual bool isTexture(WebGLId texture) = 0;
- virtual void lineWidth(double) = 0;
+ virtual WebString getString(WGC3Denum name) = 0;
+ virtual void getTexParameterfv(WGC3Denum target, WGC3Denum pname, WGC3Dfloat* value) = 0;
+ virtual void getTexParameteriv(WGC3Denum target, WGC3Denum pname, WGC3Dint* value) = 0;
+ virtual void getUniformfv(WebGLId program, WGC3Dint location, WGC3Dfloat* value) = 0;
+ virtual void getUniformiv(WebGLId program, WGC3Dint location, WGC3Dint* value) = 0;
+ virtual WGC3Dint getUniformLocation(WebGLId program, const WGC3Dchar* name) = 0;
+ virtual void getVertexAttribfv(WGC3Duint index, WGC3Denum pname, WGC3Dfloat* value) = 0;
+ virtual void getVertexAttribiv(WGC3Duint index, WGC3Denum pname, WGC3Dint* value) = 0;
+ virtual WGC3Dsizeiptr getVertexAttribOffset(WGC3Duint index, WGC3Denum pname) = 0;
+
+ virtual void hint(WGC3Denum target, WGC3Denum mode) = 0;
+ virtual WGC3Dboolean isBuffer(WebGLId buffer) = 0;
+ virtual WGC3Dboolean isEnabled(WGC3Denum cap) = 0;
+ virtual WGC3Dboolean isFramebuffer(WebGLId framebuffer) = 0;
+ virtual WGC3Dboolean isProgram(WebGLId program) = 0;
+ virtual WGC3Dboolean isRenderbuffer(WebGLId renderbuffer) = 0;
+ virtual WGC3Dboolean isShader(WebGLId shader) = 0;
+ virtual WGC3Dboolean isTexture(WebGLId texture) = 0;
+ virtual void lineWidth(WGC3Dfloat) = 0;
virtual void linkProgram(WebGLId program) = 0;
- virtual void pixelStorei(unsigned long pname, long param) = 0;
- virtual void polygonOffset(double factor, double units) = 0;
+ virtual void pixelStorei(WGC3Denum pname, WGC3Dint param) = 0;
+ virtual void polygonOffset(WGC3Dfloat factor, WGC3Dfloat units) = 0;
- virtual void readPixels(long x, long y, unsigned long width, unsigned long height, unsigned long format, unsigned long type, void* pixels) = 0;
+ virtual void readPixels(WGC3Dint x, WGC3Dint y, WGC3Dsizei width, WGC3Dsizei height, WGC3Denum format, WGC3Denum type, void* pixels) = 0;
virtual void releaseShaderCompiler() = 0;
- virtual void renderbufferStorage(unsigned long target, unsigned long internalformat, unsigned long width, unsigned long height) = 0;
- virtual void sampleCoverage(double value, bool invert) = 0;
- virtual void scissor(long x, long y, unsigned long width, unsigned long height) = 0;
- virtual void shaderSource(WebGLId shader, const char* string) = 0;
- virtual void stencilFunc(unsigned long func, long ref, unsigned long mask) = 0;
- virtual void stencilFuncSeparate(unsigned long face, unsigned long func, long ref, unsigned long mask) = 0;
- virtual void stencilMask(unsigned long mask) = 0;
- virtual void stencilMaskSeparate(unsigned long face, unsigned long mask) = 0;
- virtual void stencilOp(unsigned long fail, unsigned long zfail, unsigned long zpass) = 0;
- virtual void stencilOpSeparate(unsigned long face, unsigned long fail, unsigned long zfail, unsigned long zpass) = 0;
-
- virtual void texImage2D(unsigned target, unsigned level, unsigned internalformat, unsigned width, unsigned height, unsigned border, unsigned format, unsigned type, const void* pixels) = 0;
-
- virtual void texParameterf(unsigned target, unsigned pname, float param) = 0;
- virtual void texParameteri(unsigned target, unsigned pname, int param) = 0;
-
- virtual void texSubImage2D(unsigned target, unsigned level, unsigned xoffset, unsigned yoffset, unsigned width, unsigned height, unsigned format, unsigned type, const void* pixels) = 0;
-
- virtual void uniform1f(long location, float x) = 0;
- virtual void uniform1fv(long location, int count, float* v) = 0;
- virtual void uniform1i(long location, int x) = 0;
- virtual void uniform1iv(long location, int count, int* v) = 0;
- virtual void uniform2f(long location, float x, float y) = 0;
- virtual void uniform2fv(long location, int count, float* v) = 0;
- virtual void uniform2i(long location, int x, int y) = 0;
- virtual void uniform2iv(long location, int count, int* v) = 0;
- virtual void uniform3f(long location, float x, float y, float z) = 0;
- virtual void uniform3fv(long location, int count, float* v) = 0;
- virtual void uniform3i(long location, int x, int y, int z) = 0;
- virtual void uniform3iv(long location, int count, int* v) = 0;
- virtual void uniform4f(long location, float x, float y, float z, float w) = 0;
- virtual void uniform4fv(long location, int count, float* v) = 0;
- virtual void uniform4i(long location, int x, int y, int z, int w) = 0;
- virtual void uniform4iv(long location, int count, int* v) = 0;
- virtual void uniformMatrix2fv(long location, int count, bool transpose, const float* value) = 0;
- virtual void uniformMatrix3fv(long location, int count, bool transpose, const float* value) = 0;
- virtual void uniformMatrix4fv(long location, int count, bool transpose, const float* value) = 0;
+
+ virtual void renderbufferStorage(WGC3Denum target, WGC3Denum internalformat, WGC3Dsizei width, WGC3Dsizei height) = 0;
+ virtual void sampleCoverage(WGC3Dclampf value, WGC3Dboolean invert) = 0;
+ virtual void scissor(WGC3Dint x, WGC3Dint y, WGC3Dsizei width, WGC3Dsizei height) = 0;
+ virtual void shaderSource(WebGLId shader, const WGC3Dchar* string) = 0;
+ virtual void stencilFunc(WGC3Denum func, WGC3Dint ref, WGC3Duint mask) = 0;
+ virtual void stencilFuncSeparate(WGC3Denum face, WGC3Denum func, WGC3Dint ref, WGC3Duint mask) = 0;
+ virtual void stencilMask(WGC3Duint mask) = 0;
+ virtual void stencilMaskSeparate(WGC3Denum face, WGC3Duint mask) = 0;
+ virtual void stencilOp(WGC3Denum fail, WGC3Denum zfail, WGC3Denum zpass) = 0;
+ virtual void stencilOpSeparate(WGC3Denum face, WGC3Denum fail, WGC3Denum zfail, WGC3Denum zpass) = 0;
+
+ virtual void texImage2D(WGC3Denum target, WGC3Dint level, WGC3Denum internalformat, WGC3Dsizei width, WGC3Dsizei height, WGC3Dint border, WGC3Denum format, WGC3Denum type, const void* pixels) = 0;
+
+ virtual void texParameterf(WGC3Denum target, WGC3Denum pname, WGC3Dfloat param) = 0;
+ virtual void texParameteri(WGC3Denum target, WGC3Denum pname, WGC3Dint param) = 0;
+
+ virtual void texSubImage2D(WGC3Denum target, WGC3Dint level, WGC3Dint xoffset, WGC3Dint yoffset, WGC3Dsizei width, WGC3Dsizei height, WGC3Denum format, WGC3Denum type, const void* pixels) = 0;
+
+ virtual void uniform1f(WGC3Dint location, WGC3Dfloat x) = 0;
+ virtual void uniform1fv(WGC3Dint location, WGC3Dsizei count, const WGC3Dfloat* v) = 0;
+ virtual void uniform1i(WGC3Dint location, WGC3Dint x) = 0;
+ virtual void uniform1iv(WGC3Dint location, WGC3Dsizei count, const WGC3Dint* v) = 0;
+ virtual void uniform2f(WGC3Dint location, WGC3Dfloat x, WGC3Dfloat y) = 0;
+ virtual void uniform2fv(WGC3Dint location, WGC3Dsizei count, const WGC3Dfloat* v) = 0;
+ virtual void uniform2i(WGC3Dint location, WGC3Dint x, WGC3Dint y) = 0;
+ virtual void uniform2iv(WGC3Dint location, WGC3Dsizei count, const WGC3Dint* v) = 0;
+ virtual void uniform3f(WGC3Dint location, WGC3Dfloat x, WGC3Dfloat y, WGC3Dfloat z) = 0;
+ virtual void uniform3fv(WGC3Dint location, WGC3Dsizei count, const WGC3Dfloat* v) = 0;
+ virtual void uniform3i(WGC3Dint location, WGC3Dint x, WGC3Dint y, WGC3Dint z) = 0;
+ virtual void uniform3iv(WGC3Dint location, WGC3Dsizei count, const WGC3Dint* v) = 0;
+ virtual void uniform4f(WGC3Dint location, WGC3Dfloat x, WGC3Dfloat y, WGC3Dfloat z, WGC3Dfloat w) = 0;
+ virtual void uniform4fv(WGC3Dint location, WGC3Dsizei count, const WGC3Dfloat* v) = 0;
+ virtual void uniform4i(WGC3Dint location, WGC3Dint x, WGC3Dint y, WGC3Dint z, WGC3Dint w) = 0;
+ virtual void uniform4iv(WGC3Dint location, WGC3Dsizei count, const WGC3Dint* v) = 0;
+ virtual void uniformMatrix2fv(WGC3Dint location, WGC3Dsizei count, WGC3Dboolean transpose, const WGC3Dfloat* value) = 0;
+ virtual void uniformMatrix3fv(WGC3Dint location, WGC3Dsizei count, WGC3Dboolean transpose, const WGC3Dfloat* value) = 0;
+ virtual void uniformMatrix4fv(WGC3Dint location, WGC3Dsizei count, WGC3Dboolean transpose, const WGC3Dfloat* value) = 0;
virtual void useProgram(WebGLId program) = 0;
virtual void validateProgram(WebGLId program) = 0;
- virtual void vertexAttrib1f(unsigned long indx, float x) = 0;
- virtual void vertexAttrib1fv(unsigned long indx, const float* values) = 0;
- virtual void vertexAttrib2f(unsigned long indx, float x, float y) = 0;
- virtual void vertexAttrib2fv(unsigned long indx, const float* values) = 0;
- virtual void vertexAttrib3f(unsigned long indx, float x, float y, float z) = 0;
- virtual void vertexAttrib3fv(unsigned long indx, const float* values) = 0;
- virtual void vertexAttrib4f(unsigned long indx, float x, float y, float z, float w) = 0;
- virtual void vertexAttrib4fv(unsigned long indx, const float* values) = 0;
- virtual void vertexAttribPointer(unsigned long indx, int size, int type, bool normalized,
- unsigned long stride, unsigned long offset) = 0;
+ virtual void vertexAttrib1f(WGC3Duint index, WGC3Dfloat x) = 0;
+ virtual void vertexAttrib1fv(WGC3Duint index, const WGC3Dfloat* values) = 0;
+ virtual void vertexAttrib2f(WGC3Duint index, WGC3Dfloat x, WGC3Dfloat y) = 0;
+ virtual void vertexAttrib2fv(WGC3Duint index, const WGC3Dfloat* values) = 0;
+ virtual void vertexAttrib3f(WGC3Duint index, WGC3Dfloat x, WGC3Dfloat y, WGC3Dfloat z) = 0;
+ virtual void vertexAttrib3fv(WGC3Duint index, const WGC3Dfloat* values) = 0;
+ virtual void vertexAttrib4f(WGC3Duint index, WGC3Dfloat x, WGC3Dfloat y, WGC3Dfloat z, WGC3Dfloat w) = 0;
+ virtual void vertexAttrib4fv(WGC3Duint index, const WGC3Dfloat* values) = 0;
+ virtual void vertexAttribPointer(WGC3Duint index, WGC3Dint size, WGC3Denum type, WGC3Dboolean normalized,
+ WGC3Dsizei stride, WGC3Dintptr offset) = 0;
- virtual void viewport(long x, long y, unsigned long width, unsigned long height) = 0;
+ virtual void viewport(WGC3Dint x, WGC3Dint y, WGC3Dsizei width, WGC3Dsizei height) = 0;
// Support for buffer creation and deletion.
- virtual unsigned createBuffer() = 0;
- virtual unsigned createFramebuffer() = 0;
- virtual unsigned createProgram() = 0;
- virtual unsigned createRenderbuffer() = 0;
- virtual unsigned createShader(unsigned long) = 0;
- virtual unsigned createTexture() = 0;
-
- virtual void deleteBuffer(unsigned) = 0;
- virtual void deleteFramebuffer(unsigned) = 0;
- virtual void deleteProgram(unsigned) = 0;
- virtual void deleteRenderbuffer(unsigned) = 0;
- virtual void deleteShader(unsigned) = 0;
- virtual void deleteTexture(unsigned) = 0;
+ virtual WebGLId createBuffer() = 0;
+ virtual WebGLId createFramebuffer() = 0;
+ virtual WebGLId createProgram() = 0;
+ virtual WebGLId createRenderbuffer() = 0;
+ virtual WebGLId createShader(WGC3Denum) = 0;
+ virtual WebGLId createTexture() = 0;
+
+ virtual void deleteBuffer(WebGLId) = 0;
+ virtual void deleteFramebuffer(WebGLId) = 0;
+ virtual void deleteProgram(WebGLId) = 0;
+ virtual void deleteRenderbuffer(WebGLId) = 0;
+ virtual void deleteShader(WebGLId) = 0;
+ virtual void deleteTexture(WebGLId) = 0;
+
+ virtual void setContextLostCallback(WebGraphicsContextLostCallback* callback) {}
};
} // namespace WebKit
diff --git a/Source/WebKit/chromium/public/WebIDBCallbacks.h b/Source/WebKit/chromium/public/WebIDBCallbacks.h
index 64ffc08..1eb6d3a 100644
--- a/Source/WebKit/chromium/public/WebIDBCallbacks.h
+++ b/Source/WebKit/chromium/public/WebIDBCallbacks.h
@@ -46,7 +46,6 @@ public:
// For classes that follow the PImpl pattern, pass a const reference.
// For the rest, pass ownership to the callee via a pointer.
virtual void onError(const WebIDBDatabaseError&) { WEBKIT_ASSERT_NOT_REACHED(); }
- virtual void onSuccess() { WEBKIT_ASSERT_NOT_REACHED(); } // For "null".
virtual void onSuccess(WebIDBCursor*) { WEBKIT_ASSERT_NOT_REACHED(); }
virtual void onSuccess(WebIDBDatabase*) { WEBKIT_ASSERT_NOT_REACHED(); }
virtual void onSuccess(const WebIDBKey&) { WEBKIT_ASSERT_NOT_REACHED(); }
@@ -54,6 +53,7 @@ public:
virtual void onSuccess(WebIDBObjectStore*) { WEBKIT_ASSERT_NOT_REACHED(); }
virtual void onSuccess(WebIDBTransaction*) { WEBKIT_ASSERT_NOT_REACHED(); }
virtual void onSuccess(const WebSerializedScriptValue&) { WEBKIT_ASSERT_NOT_REACHED(); }
+ virtual void onBlocked() { WEBKIT_ASSERT_NOT_REACHED(); }
};
} // namespace WebKit
diff --git a/Source/WebKit/chromium/public/WebIDBDatabase.h b/Source/WebKit/chromium/public/WebIDBDatabase.h
index 5ed8052..df4217b 100644
--- a/Source/WebKit/chromium/public/WebIDBDatabase.h
+++ b/Source/WebKit/chromium/public/WebIDBDatabase.h
@@ -65,10 +65,14 @@ public:
virtual void deleteObjectStore(const WebString& name, const WebIDBTransaction& transaction, WebExceptionCode& ec) { WEBKIT_ASSERT_NOT_REACHED(); }
virtual void setVersion(const WebString& version, WebIDBCallbacks* callbacks, WebExceptionCode&) { WEBKIT_ASSERT_NOT_REACHED(); }
// Transfers ownership of the WebIDBTransaction to the caller.
- virtual WebIDBTransaction* transaction(const WebDOMStringList& names, unsigned short mode, unsigned long timeout, WebExceptionCode&)
+ virtual WebIDBTransaction* transaction(const WebDOMStringList& names, unsigned short mode, WebExceptionCode& ec)
{
- WEBKIT_ASSERT_NOT_REACHED();
- return 0;
+ return transaction(names, mode, 0, ec);
+ }
+ // FIXME: Remove.
+ virtual WebIDBTransaction* transaction(const WebDOMStringList& names, unsigned short mode, unsigned long, WebExceptionCode& ec)
+ {
+ return transaction(names, mode, ec);
}
virtual void close() { WEBKIT_ASSERT_NOT_REACHED(); }
diff --git a/Source/WebKit/chromium/public/WebIDBObjectStore.h b/Source/WebKit/chromium/public/WebIDBObjectStore.h
index 8f2247f..152dfc9 100755
--- a/Source/WebKit/chromium/public/WebIDBObjectStore.h
+++ b/Source/WebKit/chromium/public/WebIDBObjectStore.h
@@ -60,8 +60,16 @@ public:
}
virtual void get(const WebIDBKey&, WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&) { WEBKIT_ASSERT_NOT_REACHED(); }
- virtual void put(const WebSerializedScriptValue&, const WebIDBKey&, bool addOnly, WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&) { WEBKIT_ASSERT_NOT_REACHED(); }
- virtual void deleteFunction(const WebIDBKey& key, WebIDBCallbacks* callbacks, const WebIDBTransaction& transaction, WebExceptionCode& ec) { WEBKIT_ASSERT_NOT_REACHED(); }
+
+ enum PutMode {
+ AddOrUpdate,
+ AddOnly,
+ CursorUpdate
+ };
+
+ virtual void put(const WebSerializedScriptValue&, const WebIDBKey&, PutMode, WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&) { WEBKIT_ASSERT_NOT_REACHED(); }
+ virtual void deleteFunction(const WebIDBKey&, WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&) { WEBKIT_ASSERT_NOT_REACHED(); }
+ virtual void clear(WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&) { WEBKIT_ASSERT_NOT_REACHED(); }
virtual WebIDBIndex* createIndex(const WebString& name, const WebString& keyPath, bool unique, const WebIDBTransaction&, WebExceptionCode&)
{
WEBKIT_ASSERT_NOT_REACHED();
diff --git a/Source/WebKit/chromium/public/WebIDBTransactionCallbacks.h b/Source/WebKit/chromium/public/WebIDBTransactionCallbacks.h
index c9b6b05..93099f1 100644
--- a/Source/WebKit/chromium/public/WebIDBTransactionCallbacks.h
+++ b/Source/WebKit/chromium/public/WebIDBTransactionCallbacks.h
@@ -35,6 +35,8 @@ public:
virtual void onAbort() { WEBKIT_ASSERT_NOT_REACHED(); }
virtual void onComplete() { WEBKIT_ASSERT_NOT_REACHED(); }
+
+ // FIXME: Remove.
virtual void onTimeout() { WEBKIT_ASSERT_NOT_REACHED(); }
};
diff --git a/Source/WebKit/chromium/public/WebIconLoadingCompletion.h b/Source/WebKit/chromium/public/WebIconLoadingCompletion.h
new file mode 100644
index 0000000..b6229aa
--- /dev/null
+++ b/Source/WebKit/chromium/public/WebIconLoadingCompletion.h
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2011 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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 WebIconLoadingCompletion_h
+#define WebIconLoadingCompletion_h
+
+namespace WebKit {
+
+class WebData;
+class WebString;
+
+// Gets called back when WebViewClient finished loading an icon.
+class WebIconLoadingCompletion {
+public:
+ // Called with the loaded icon data, which is an image data stream
+ // WebCore can decode, such as PNG. A null WebData means a failure of
+ // loading. The callback instance is destroyed when this method is called.
+ virtual void didLoadIcon(const WebData&) = 0;
+
+protected:
+ virtual ~WebIconLoadingCompletion() { }
+};
+
+} // namespace WebKit
+
+#endif
diff --git a/Source/WebKit/chromium/public/WebInputElement.h b/Source/WebKit/chromium/public/WebInputElement.h
index be8623c..81c397c 100644
--- a/Source/WebKit/chromium/public/WebInputElement.h
+++ b/Source/WebKit/chromium/public/WebInputElement.h
@@ -74,14 +74,13 @@ namespace WebKit {
WEBKIT_API WebString placeholder() const;
WEBKIT_API bool isAutofilled() const;
WEBKIT_API void setAutofilled(bool);
- WEBKIT_API void dispatchFormControlChangeEvent();
WEBKIT_API void setSelectionRange(int, int);
WEBKIT_API int selectionStart() const;
WEBKIT_API int selectionEnd() const;
WEBKIT_API bool isValidValue(const WebString&) const;
// Exposes the default value of the maxLength attribute.
- WEBKIT_API static const int defaultMaxLength;
+ WEBKIT_API static int defaultMaxLength();
#if WEBKIT_IMPLEMENTATION
WebInputElement(const WTF::PassRefPtr<WebCore::HTMLInputElement>&);
@@ -90,6 +89,13 @@ namespace WebKit {
#endif
};
+ WEBKIT_API WebInputElement* toWebInputElement(WebElement*);
+
+ inline const WebInputElement* toWebInputElement(const WebElement* element)
+ {
+ return toWebInputElement(const_cast<WebElement*>(element));
+ }
+
} // namespace WebKit
#endif
diff --git a/Source/WebKit/chromium/public/WebKitClient.h b/Source/WebKit/chromium/public/WebKitClient.h
index ae7892d..d8ead23 100644
--- a/Source/WebKit/chromium/public/WebKitClient.h
+++ b/Source/WebKit/chromium/public/WebKitClient.h
@@ -143,7 +143,6 @@ public:
// Indexed Database ----------------------------------------------------
virtual WebIDBFactory* idbFactory() { return 0; }
- virtual void idbShutdown() { };
virtual void createIDBKeysFromSerializedValuesAndKeyPath(const WebVector<WebSerializedScriptValue>& values, const WebString& keyPath, WebVector<WebIDBKey>& keys) { }
diff --git a/Source/WebKit/chromium/public/WebMenuItemInfo.h b/Source/WebKit/chromium/public/WebMenuItemInfo.h
index 445dfb4..f6e622a 100644
--- a/Source/WebKit/chromium/public/WebMenuItemInfo.h
+++ b/Source/WebKit/chromium/public/WebMenuItemInfo.h
@@ -33,6 +33,7 @@
#include "WebCommon.h"
#include "WebString.h"
+#include "WebTextDirection.h"
#include "WebVector.h"
namespace WebKit {
@@ -56,6 +57,8 @@ struct WebMenuItemInfo {
WebString label;
Type type;
unsigned action;
+ WebTextDirection textDirection;
+ bool hasTextDirectionOverride;
bool enabled;
bool checked;
};
diff --git a/Source/WebKit/chromium/public/WebNotification.h b/Source/WebKit/chromium/public/WebNotification.h
index dbbde02..a84a058 100644
--- a/Source/WebKit/chromium/public/WebNotification.h
+++ b/Source/WebKit/chromium/public/WebNotification.h
@@ -75,10 +75,6 @@ public:
WEBKIT_API WebURL iconURL() const;
WEBKIT_API WebString title() const;
WEBKIT_API WebString body() const;
-
- // FIXME: Remove dir() when no longer referenced.
- // dir() is deprecated; use direction().
- WEBKIT_API WebString dir() const;
WEBKIT_API WebTextDirection direction() const;
WEBKIT_API WebString replaceId() const;
diff --git a/Source/WebKit/chromium/public/WebPoint.h b/Source/WebKit/chromium/public/WebPoint.h
index 20c52c2..7662363 100644
--- a/Source/WebKit/chromium/public/WebPoint.h
+++ b/Source/WebKit/chromium/public/WebPoint.h
@@ -36,7 +36,7 @@
#if WEBKIT_IMPLEMENTATION
#include "IntPoint.h"
#else
-#include <gfx/point.h>
+#include <ui/gfx/point.h>
#endif
namespace WebKit {
diff --git a/Source/WebKit/chromium/public/WebPopupMenuInfo.h b/Source/WebKit/chromium/public/WebPopupMenuInfo.h
index 7cf1b63..8824846 100644
--- a/Source/WebKit/chromium/public/WebPopupMenuInfo.h
+++ b/Source/WebKit/chromium/public/WebPopupMenuInfo.h
@@ -38,8 +38,6 @@ namespace WebKit {
// Describes the contents of a popup menu.
struct WebPopupMenuInfo {
- // FIXME: migrate clients to WebMenuItemInfo and remove this temporary Item typedef.
- typedef WebMenuItemInfo Item;
int itemHeight;
int itemFontSize;
int selectedIndex;
diff --git a/Source/WebKit/chromium/public/WebRect.h b/Source/WebKit/chromium/public/WebRect.h
index 30381d7..045b7a8 100644
--- a/Source/WebKit/chromium/public/WebRect.h
+++ b/Source/WebKit/chromium/public/WebRect.h
@@ -36,7 +36,7 @@
#if WEBKIT_IMPLEMENTATION
#include "IntRect.h"
#else
-#include <gfx/rect.h>
+#include <ui/gfx/rect.h>
#endif
namespace WebKit {
diff --git a/Source/WebKit/chromium/public/WebRuntimeFeatures.h b/Source/WebKit/chromium/public/WebRuntimeFeatures.h
index 097e95b..c9e32f5 100644
--- a/Source/WebKit/chromium/public/WebRuntimeFeatures.h
+++ b/Source/WebKit/chromium/public/WebRuntimeFeatures.h
@@ -31,6 +31,8 @@
#ifndef WebRuntimeFeatures_h
#define WebRuntimeFeatures_h
+#define HAS_WEBAUDIO_RUNTIMEFEATURES 1
+
#include "WebCommon.h"
namespace WebKit {
@@ -94,6 +96,9 @@ public:
WEBKIT_API static void enableFileSystem(bool);
WEBKIT_API static bool isFileSystemEnabled();
+
+ WEBKIT_API static void enableJavaScriptI18NAPI(bool);
+ WEBKIT_API static bool isJavaScriptI18NAPIEnabled();
private:
WebRuntimeFeatures();
diff --git a/Source/WebKit/chromium/public/WebSelectElement.h b/Source/WebKit/chromium/public/WebSelectElement.h
index 97d3a78..5cea39a 100644
--- a/Source/WebKit/chromium/public/WebSelectElement.h
+++ b/Source/WebKit/chromium/public/WebSelectElement.h
@@ -55,8 +55,8 @@ public:
void assign(const WebSelectElement& element) { WebFormControlElement::assign(element); }
WEBKIT_API void setValue(const WebString&);
- WEBKIT_API WebString value();
- WEBKIT_API WebVector<WebElement> listItems();
+ WEBKIT_API WebString value() const;
+ WEBKIT_API WebVector<WebElement> listItems() const;
#if WEBKIT_IMPLEMENTATION
WebSelectElement(const WTF::PassRefPtr<WebCore::HTMLSelectElement>&);
diff --git a/Source/WebKit/chromium/public/WebSettings.h b/Source/WebKit/chromium/public/WebSettings.h
index bfb5122..bea9cee 100644
--- a/Source/WebKit/chromium/public/WebSettings.h
+++ b/Source/WebKit/chromium/public/WebSettings.h
@@ -33,6 +33,8 @@
#include "WebCommon.h"
+#define HAS_WEBAUDIO_FEATURE_ENABLE 1
+
namespace WebKit {
class WebString;
@@ -91,6 +93,7 @@ public:
virtual void setOfflineWebApplicationCacheEnabled(bool) = 0;
virtual void setWebAudioEnabled(bool) = 0;
virtual void setExperimentalWebGLEnabled(bool) = 0;
+ virtual void setOpenGLMultisamplingEnabled(bool) = 0;
virtual void setShowDebugBorders(bool) = 0;
virtual void setEditingBehavior(EditingBehavior) = 0;
virtual void setAcceleratedCompositingEnabled(bool) = 0;
@@ -102,6 +105,7 @@ public:
virtual void setAccelerated2dCanvasEnabled(bool) = 0;
virtual void setMemoryInfoEnabled(bool) = 0;
virtual void setHyperlinkAuditingEnabled(bool) = 0;
+ virtual void setAsynchronousSpellCheckingEnabled(bool) = 0;
virtual void setCaretBrowsingEnabled(bool) = 0;
virtual void setInteractiveFormValidationEnabled(bool) = 0;
diff --git a/Source/WebKit/chromium/public/WebSize.h b/Source/WebKit/chromium/public/WebSize.h
index a7159b2..94a5365 100644
--- a/Source/WebKit/chromium/public/WebSize.h
+++ b/Source/WebKit/chromium/public/WebSize.h
@@ -36,7 +36,7 @@
#if WEBKIT_IMPLEMENTATION
#include "IntSize.h"
#else
-#include <gfx/size.h>
+#include <ui/gfx/size.h>
#endif
namespace WebKit {
diff --git a/Source/WebKit/chromium/public/WebSpeechInputController.h b/Source/WebKit/chromium/public/WebSpeechInputController.h
index eb83ec7..577c5e2 100644
--- a/Source/WebKit/chromium/public/WebSpeechInputController.h
+++ b/Source/WebKit/chromium/public/WebSpeechInputController.h
@@ -47,11 +47,6 @@ public:
// text are returned via the listener interface.
virtual bool startRecognition(int requestId, const WebRect& elementRect, const WebString& language, const WebString& grammar, const WebSecurityOrigin& origin)
{
- return startRecognition(requestId, elementRect, language, grammar);
- }
- // TODO(satish): Remove this once chromium has rolled past the above change.
- virtual bool startRecognition(int requestId, const WebRect& elementRect, const WebString& language, const WebString& grammar)
- {
WEBKIT_ASSERT_NOT_REACHED();
return false;
}
diff --git a/Source/WebKit/chromium/public/WebTextCheckingCompletion.h b/Source/WebKit/chromium/public/WebTextCheckingCompletion.h
new file mode 100644
index 0000000..7e6526d
--- /dev/null
+++ b/Source/WebKit/chromium/public/WebTextCheckingCompletion.h
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2010 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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 WebTextCheckingCompletion_h
+#define WebTextCheckingCompletion_h
+
+#include "WebCommon.h"
+
+namespace WebKit {
+
+class WebTextCheckingResult;
+template <typename T> class WebVector;
+
+// Gets called back when WebViewClient finished an asynchronous spell checking.
+class WebTextCheckingCompletion {
+public:
+ virtual void didFinishCheckingText(const WebVector<WebTextCheckingResult>&) = 0;
+protected:
+ ~WebTextCheckingCompletion() { }
+};
+
+} // namespace WebKit
+
+#endif
diff --git a/Source/WebKit/chromium/public/WebTextCheckingResult.h b/Source/WebKit/chromium/public/WebTextCheckingResult.h
new file mode 100644
index 0000000..4d16d31
--- /dev/null
+++ b/Source/WebKit/chromium/public/WebTextCheckingResult.h
@@ -0,0 +1,65 @@
+/*
+ * Copyright (C) 2010 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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 WebTextCheckingResult_h
+#define WebTextCheckingResult_h
+
+#include "WebCommon.h"
+
+namespace WebKit {
+
+// A checked entry of text checking.
+class WebTextCheckingResult {
+public:
+ enum Error {
+ ErrorSpelling = 1 << 0,
+ ErrorGrammar = 1 << 1
+ };
+
+ Error error() const { return m_error; }
+ int position() const { return m_position; }
+ int length() const { return m_length; }
+
+ explicit WebTextCheckingResult(Error error = ErrorSpelling, int position = 0, int length = 0)
+ : m_error(error)
+ , m_position(position)
+ , m_length(length)
+ {
+ }
+
+private:
+ Error m_error;
+ int m_position;
+ int m_length;
+};
+
+} // namespace WebKit
+
+#endif
diff --git a/Source/WebKit/chromium/public/WebURLResponse.h b/Source/WebKit/chromium/public/WebURLResponse.h
index c50f88e..4ecee17 100644
--- a/Source/WebKit/chromium/public/WebURLResponse.h
+++ b/Source/WebKit/chromium/public/WebURLResponse.h
@@ -169,6 +169,11 @@ public:
WEBKIT_API WebString downloadFilePath() const;
WEBKIT_API void setDownloadFilePath(const WebString&);
+ // Remote address of the socket which fetched this resource, for presenting
+ // to inquisitive users. Can be "ipv4:port", "[ipv6]:port", or empty.
+ WEBKIT_API WebString socketAddress() const;
+ WEBKIT_API void setSocketAddress(const WebString&);
+
protected:
void assign(WebURLResponsePrivate*);
diff --git a/Source/WebKit/chromium/public/WebViewClient.h b/Source/WebKit/chromium/public/WebViewClient.h
index 08fb942..2588788 100644
--- a/Source/WebKit/chromium/public/WebViewClient.h
+++ b/Source/WebKit/chromium/public/WebViewClient.h
@@ -54,6 +54,7 @@ class WebFileChooserCompletion;
class WebFrame;
class WebGeolocationClient;
class WebGeolocationService;
+class WebIconLoadingCompletion;
class WebImage;
class WebInputElement;
class WebKeyboardEvent;
@@ -63,6 +64,7 @@ class WebRange;
class WebSpeechInputController;
class WebSpeechInputListener;
class WebStorageNamespace;
+class WebTextCheckingCompletion;
class WebURL;
class WebURLRequest;
class WebView;
@@ -117,6 +119,10 @@ public:
// Called to retrieve the provider of desktop notifications.
virtual WebNotificationPresenter* notificationPresenter() { return 0; }
+ // Called to request an icon for the specified filenames.
+ // The icon is shown in a file upload control.
+ virtual bool queryIconForFiles(const WebVector<WebString>& filenames, WebIconLoadingCompletion*) { return false; }
+
// Navigational --------------------------------------------------------
@@ -173,7 +179,9 @@ public:
// error, then upon return misspelledLength is 0.
virtual void spellCheck(
const WebString& text, int& misspelledOffset, int& misspelledLength) { }
-
+ // Requests asynchronous spelling and grammar checking, whose result should be
+ // returned by passed completion object.
+ virtual void requestCheckingOfText(const WebString&, WebTextCheckingCompletion*) { }
// Computes an auto-corrected replacement for a misspelled word. If no
// replacement is found, then an empty string is returned.
virtual WebString autoCorrectWord(const WebString& misspelledWord) { return WebString(); }
@@ -322,6 +330,12 @@ public:
// action that wasn't initiated by the client.
virtual void zoomLevelChanged() { }
+ // Registers a new URL handler for the given protocol.
+ virtual void registerProtocolHandler(const WebString& scheme,
+ const WebString& baseUrl,
+ const WebString& url,
+ const WebString& title) { }
+
protected:
~WebViewClient() { }
};
diff --git a/Source/WebKit/chromium/src/AssertMatchingEnums.cpp b/Source/WebKit/chromium/src/AssertMatchingEnums.cpp
index e89fb74..aaaa4a5 100644
--- a/Source/WebKit/chromium/src/AssertMatchingEnums.cpp
+++ b/Source/WebKit/chromium/src/AssertMatchingEnums.cpp
@@ -36,6 +36,7 @@
#include "AccessibilityObject.h"
#include "ApplicationCacheHost.h"
#include "AsyncFileSystem.h"
+#include "DocumentMarker.h"
#include "EditorInsertAction.h"
#include "FileError.h"
#include "FileMetadata.h"
@@ -74,6 +75,7 @@
#include "WebSettings.h"
#include "WebTextAffinity.h"
#include "WebTextCaseSensitivity.h"
+#include "WebTextCheckingResult.h"
#include "WebVideoFrame.h"
#include "WebView.h"
#include <wtf/Assertions.h>
@@ -397,6 +399,9 @@ COMPILE_ASSERT_MATCHING_ENUM(WebFileErrorPathExists, FileError::PATH_EXISTS_ERR)
COMPILE_ASSERT_MATCHING_ENUM(WebGeolocationError::ErrorPermissionDenied, GeolocationError::PermissionDenied);
COMPILE_ASSERT_MATCHING_ENUM(WebGeolocationError::ErrorPositionUnavailable, GeolocationError::PositionUnavailable);
+COMPILE_ASSERT_MATCHING_ENUM(WebTextCheckingResult::ErrorSpelling, DocumentMarker::Spelling);
+COMPILE_ASSERT_MATCHING_ENUM(WebTextCheckingResult::ErrorGrammar, DocumentMarker::Grammar);
+
#if OS(DARWIN)
COMPILE_ASSERT_MATCHING_ENUM(WebThemeEngine::StateDisabled, PlatformBridge::StateDisabled);
COMPILE_ASSERT_MATCHING_ENUM(WebThemeEngine::StateInactive, PlatformBridge::StateInactive);
diff --git a/Source/WebKit/chromium/src/AsyncFileSystemChromium.cpp b/Source/WebKit/chromium/src/AsyncFileSystemChromium.cpp
index 5975e72..ef1f616 100644
--- a/Source/WebKit/chromium/src/AsyncFileSystemChromium.cpp
+++ b/Source/WebKit/chromium/src/AsyncFileSystemChromium.cpp
@@ -50,8 +50,8 @@ bool AsyncFileSystem::isAvailable()
return true;
}
-AsyncFileSystemChromium::AsyncFileSystemChromium(const String& rootPath)
- : AsyncFileSystem(rootPath)
+AsyncFileSystemChromium::AsyncFileSystemChromium(AsyncFileSystem::Type type, const String& rootPath)
+ : AsyncFileSystem(type, rootPath)
, m_webFileSystem(WebKit::webKitClient()->fileSystem())
{
ASSERT(m_webFileSystem);
diff --git a/Source/WebKit/chromium/src/AsyncFileSystemChromium.h b/Source/WebKit/chromium/src/AsyncFileSystemChromium.h
index 6205609..da98a33 100644
--- a/Source/WebKit/chromium/src/AsyncFileSystemChromium.h
+++ b/Source/WebKit/chromium/src/AsyncFileSystemChromium.h
@@ -46,9 +46,9 @@ class AsyncFileSystemCallbacks;
class AsyncFileSystemChromium : public AsyncFileSystem {
public:
- static PassOwnPtr<AsyncFileSystem> create(const String& rootPath)
+ static PassOwnPtr<AsyncFileSystem> create(AsyncFileSystem::Type type, const String& rootPath)
{
- return adoptPtr(new AsyncFileSystemChromium(rootPath));
+ return adoptPtr(new AsyncFileSystemChromium(type, rootPath));
}
virtual ~AsyncFileSystemChromium();
@@ -66,7 +66,7 @@ public:
virtual void createWriter(AsyncFileWriterClient* client, const String& path, PassOwnPtr<AsyncFileSystemCallbacks>);
private:
- explicit AsyncFileSystemChromium(const String& rootPath);
+ AsyncFileSystemChromium(AsyncFileSystem::Type, const String& rootPath);
WebKit::WebFileSystem* m_webFileSystem;
};
diff --git a/Source/WebKit/chromium/src/AudioDestinationChromium.cpp b/Source/WebKit/chromium/src/AudioDestinationChromium.cpp
index bed2562..a483308 100644
--- a/Source/WebKit/chromium/src/AudioDestinationChromium.cpp
+++ b/Source/WebKit/chromium/src/AudioDestinationChromium.cpp
@@ -41,10 +41,15 @@ using namespace WebKit;
namespace WebCore {
// Buffer size that the Chromium audio system will call us back with.
+#if OS(DARWIN)
+// For Mac OS X the chromium audio backend uses a low-latency CoreAudio API, so a low buffer size is possible.
+const unsigned callbackBufferSize = 128;
+#else
// This value may need to be tuned based on the OS.
// FIXME: It may be possible to reduce this value once real-time threads
// and other Chromium audio improvements are made.
const unsigned callbackBufferSize = 2048;
+#endif
// Buffer size at which the web audio engine will render.
const unsigned renderBufferSize = 128;
diff --git a/Source/WebKit/chromium/src/AutoFillPopupMenuClient.cpp b/Source/WebKit/chromium/src/AutoFillPopupMenuClient.cpp
index 2ce31a9..d04c57c 100644
--- a/Source/WebKit/chromium/src/AutoFillPopupMenuClient.cpp
+++ b/Source/WebKit/chromium/src/AutoFillPopupMenuClient.cpp
@@ -293,7 +293,7 @@ void AutoFillPopupMenuClient::initialize(
// the input element: textField.
m_regularStyle.set(new PopupMenuStyle(Color::black, Color::white, regularFont,
true, false, Length(WebCore::Fixed),
- textField->renderer()->style()->direction()));
+ textField->renderer()->style()->direction(), textField->renderer()->style()->unicodeBidi() == Override));
FontDescription warningFontDescription = regularFont.fontDescription();
warningFontDescription.setItalic(true);
@@ -305,7 +305,8 @@ void AutoFillPopupMenuClient::initialize(
m_regularStyle->isVisible(),
m_regularStyle->isDisplayNone(),
m_regularStyle->textIndent(),
- m_regularStyle->textDirection()));
+ m_regularStyle->textDirection(),
+ m_regularStyle->hasTextDirectionOverride()));
}
void AutoFillPopupMenuClient::setSuggestions(const WebVector<WebString>& names,
diff --git a/Source/WebKit/chromium/src/ChromeClientImpl.cpp b/Source/WebKit/chromium/src/ChromeClientImpl.cpp
index a63a625..4b68c18 100644
--- a/Source/WebKit/chromium/src/ChromeClientImpl.cpp
+++ b/Source/WebKit/chromium/src/ChromeClientImpl.cpp
@@ -34,7 +34,6 @@
#include "AXObjectCache.h"
#include "AccessibilityObject.h"
-#include "CharacterNames.h"
#include "Console.h"
#include "Cursor.h"
#include "DatabaseTracker.h"
@@ -70,6 +69,7 @@
#include "WebFileChooserCompletionImpl.h"
#include "WebFrameClient.h"
#include "WebFrameImpl.h"
+#include "WebIconLoadingCompletionImpl.h"
#include "WebInputEvent.h"
#include "WebKit.h"
#include "WebNode.h"
@@ -86,6 +86,7 @@
#include "WebWindowFeatures.h"
#include "WindowFeatures.h"
#include "WrappedResourceRequest.h"
+#include <wtf/unicode/CharacterNames.h>
using namespace WebCore;
@@ -501,6 +502,13 @@ IntRect ChromeClientImpl::windowResizerRect() const
return result;
}
+#if ENABLE(REGISTER_PROTOCOL_HANDLER)
+void ChromeClientImpl::registerProtocolHandler(const String& scheme, const String& baseURL, const String& url, const String& title)
+{
+ notImplemented();
+}
+#endif
+
void ChromeClientImpl::invalidateWindow(const IntRect&, bool)
{
notImplemented();
@@ -669,9 +677,13 @@ void ChromeClientImpl::runOpenPanel(Frame* frame, PassRefPtr<FileChooser> fileCh
chooserCompletion->didChooseFile(WebVector<WebString>());
}
-void ChromeClientImpl::chooseIconForFiles(const Vector<WTF::String>&, WebCore::FileChooser*)
+void ChromeClientImpl::chooseIconForFiles(const Vector<String>& filenames, FileChooser* fileChooser)
{
- notImplemented();
+ if (!m_webView->client())
+ return;
+ WebIconLoadingCompletionImpl* iconCompletion = new WebIconLoadingCompletionImpl(fileChooser);
+ if (!m_webView->client()->queryIconForFiles(filenames, iconCompletion))
+ iconCompletion->didLoadIcon(WebData());
}
void ChromeClientImpl::popupOpened(PopupContainer* popupContainer,
@@ -732,24 +744,29 @@ void ChromeClientImpl::getPopupMenuInfo(PopupContainer* popupContainer,
{
const Vector<PopupItem*>& inputItems = popupContainer->popupData();
- WebVector<WebPopupMenuInfo::Item> outputItems(inputItems.size());
+ WebVector<WebMenuItemInfo> outputItems(inputItems.size());
for (size_t i = 0; i < inputItems.size(); ++i) {
const PopupItem& inputItem = *inputItems[i];
- WebPopupMenuInfo::Item& outputItem = outputItems[i];
+ WebMenuItemInfo& outputItem = outputItems[i];
outputItem.label = inputItem.label;
outputItem.enabled = inputItem.enabled;
+ if (inputItem.textDirection == WebCore::RTL)
+ outputItem.textDirection = WebTextDirectionRightToLeft;
+ else
+ outputItem.textDirection = WebTextDirectionLeftToRight;
+ outputItem.hasTextDirectionOverride = inputItem.hasTextDirectionOverride;
switch (inputItem.type) {
case PopupItem::TypeOption:
- outputItem.type = WebPopupMenuInfo::Item::Option;
+ outputItem.type = WebMenuItemInfo::Option;
break;
case PopupItem::TypeGroup:
- outputItem.type = WebPopupMenuInfo::Item::Group;
+ outputItem.type = WebMenuItemInfo::Group;
break;
case PopupItem::TypeSeparator:
- outputItem.type = WebPopupMenuInfo::Item::Separator;
+ outputItem.type = WebMenuItemInfo::Separator;
break;
default:
ASSERT_NOT_REACHED();
@@ -848,6 +865,11 @@ bool ChromeClientImpl::selectItemWritingDirectionIsNatural()
return false;
}
+bool ChromeClientImpl::selectItemAlignmentFollowsMenuWritingDirection()
+{
+ return true;
+}
+
PassRefPtr<PopupMenu> ChromeClientImpl::createPopupMenu(PopupMenuClient* client) const
{
if (WebViewImpl::useExternalPopupMenus())
diff --git a/Source/WebKit/chromium/src/ChromeClientImpl.h b/Source/WebKit/chromium/src/ChromeClientImpl.h
index 07f7d1f..d3ccb75 100644
--- a/Source/WebKit/chromium/src/ChromeClientImpl.h
+++ b/Source/WebKit/chromium/src/ChromeClientImpl.h
@@ -39,7 +39,6 @@
namespace WebCore {
class AccessibilityObject;
class FileChooser;
-class HTMLParserQuirks;
class PopupContainer;
class PopupMenuClient;
class SecurityOrigin;
@@ -102,6 +101,9 @@ public:
virtual bool shouldInterruptJavaScript();
virtual bool tabsToLinks() const;
virtual WebCore::IntRect windowResizerRect() const;
+#if ENABLE(REGISTER_PROTOCOL_HANDLER)
+ virtual void registerProtocolHandler(const String& scheme, const String& baseURL, const String& url, const String& title);
+#endif
virtual void invalidateWindow(const WebCore::IntRect&, bool);
virtual void invalidateContentsAndWindow(const WebCore::IntRect&, bool);
virtual void invalidateContentsForSlowScroll(const WebCore::IntRect&, bool);
@@ -137,7 +139,6 @@ public:
virtual void chooseIconForFiles(const Vector<WTF::String>&, WebCore::FileChooser*);
virtual void setCursor(const WebCore::Cursor&);
virtual void formStateDidChange(const WebCore::Node*);
- virtual PassOwnPtr<WebCore::HTMLParserQuirks> createHTMLParserQuirks() { return 0; }
#if ENABLE(TOUCH_EVENTS)
// FIXME: All touch events are forwarded regardless of whether or not they are needed.
virtual void needTouchEvents(bool needTouchEvents) { }
@@ -173,6 +174,7 @@ public:
void setCursorForPlugin(const WebCursorInfo&);
virtual bool selectItemWritingDirectionIsNatural();
+ virtual bool selectItemAlignmentFollowsMenuWritingDirection();
virtual PassRefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::PopupMenuClient*) const;
virtual PassRefPtr<WebCore::SearchPopupMenu> createSearchPopupMenu(WebCore::PopupMenuClient*) const;
diff --git a/Source/WebKit/chromium/src/ContextMenuClientImpl.cpp b/Source/WebKit/chromium/src/ContextMenuClientImpl.cpp
index d166d9d..49de043 100644
--- a/Source/WebKit/chromium/src/ContextMenuClientImpl.cpp
+++ b/Source/WebKit/chromium/src/ContextMenuClientImpl.cpp
@@ -236,7 +236,7 @@ PlatformMenuDescription ContextMenuClientImpl::getCustomMenuFromDefaultItems(
// If it's not a link, an image, a media element, or an image/media link,
// show a selection menu or a more generic page menu.
- data.frameEncoding = selectedFrame->loader()->writer()->encoding();
+ data.frameEncoding = selectedFrame->document()->loader()->writer()->encoding();
// Send the frame and page URLs in any case.
data.pageURL = urlFromFrame(m_webView->mainFrameImpl()->frame());
diff --git a/Source/WebKit/chromium/src/DragClientImpl.cpp b/Source/WebKit/chromium/src/DragClientImpl.cpp
index 9874401..4c896a7 100644
--- a/Source/WebKit/chromium/src/DragClientImpl.cpp
+++ b/Source/WebKit/chromium/src/DragClientImpl.cpp
@@ -96,12 +96,6 @@ void DragClientImpl::startDrag(DragImageRef dragImage,
offsetPoint);
}
-DragImageRef DragClientImpl::createDragImageForLink(KURL&, const String& label, Frame*)
-{
- // FIXME
- return 0;
-}
-
void DragClientImpl::dragControllerDestroyed()
{
// Our lifetime is bound to the WebViewImpl.
diff --git a/Source/WebKit/chromium/src/DragClientImpl.h b/Source/WebKit/chromium/src/DragClientImpl.h
index dac7acd..b48206a 100644
--- a/Source/WebKit/chromium/src/DragClientImpl.h
+++ b/Source/WebKit/chromium/src/DragClientImpl.h
@@ -62,8 +62,6 @@ public:
WebCore::Clipboard* clipboard,
WebCore::Frame* frame,
bool isLinkDrag = false);
- virtual WebCore::DragImageRef createDragImageForLink(
- WebCore::KURL&, const WTF::String& label, WebCore::Frame*);
virtual void dragControllerDestroyed();
private:
diff --git a/Source/WebKit/chromium/src/DragScrollTimer.cpp b/Source/WebKit/chromium/src/DragScrollTimer.cpp
index 83b81b7..c994cd7 100644
--- a/Source/WebKit/chromium/src/DragScrollTimer.cpp
+++ b/Source/WebKit/chromium/src/DragScrollTimer.cpp
@@ -43,12 +43,12 @@ static IntSize distanceToRect(const IntPoint& point, const IntRect& rect)
int dx = 0, dy = 0;
if (point.x() < rect.x())
dx = point.x() - rect.x();
- else if (rect.right() < point.x())
- dx = point.x() - rect.right();
+ else if (rect.maxX() < point.x())
+ dx = point.x() - rect.maxX();
if (point.y() < rect.y())
dy = point.y() - rect.y();
- else if (rect.bottom() < point.y())
- dy = point.y() - rect.bottom();
+ else if (rect.maxY() < point.y())
+ dy = point.y() - rect.maxY();
return IntSize(dx, dy);
}
diff --git a/Source/WebKit/chromium/src/EditorClientImpl.cpp b/Source/WebKit/chromium/src/EditorClientImpl.cpp
index 68694c2..3dc3a6a 100644
--- a/Source/WebKit/chromium/src/EditorClientImpl.cpp
+++ b/Source/WebKit/chromium/src/EditorClientImpl.cpp
@@ -40,6 +40,7 @@
#include "PlatformKeyboardEvent.h"
#include "PlatformString.h"
#include "RenderObject.h"
+#include "SpellChecker.h"
#include "DOMUtilitiesPrivate.h"
#include "WebAutoFillClient.h"
@@ -54,6 +55,7 @@
#include "WebPasswordAutocompleteListener.h"
#include "WebRange.h"
#include "WebTextAffinity.h"
+#include "WebTextCheckingCompletionImpl.h"
#include "WebViewClient.h"
#include "WebViewImpl.h"
@@ -800,18 +802,6 @@ void EditorClientImpl::cancelPendingAutofill()
m_autofillTimer.stop();
}
-void EditorClientImpl::onAutocompleteSuggestionAccepted(HTMLInputElement* textField)
-{
- if (m_webView->autoFillClient())
- m_webView->autoFillClient()->didAcceptAutocompleteSuggestion(WebInputElement(textField));
-
- WebFrameImpl* webframe = WebFrameImpl::fromFrame(textField->document()->frame());
- if (!webframe)
- return;
-
- webframe->notifiyPasswordListenerOfAutocomplete(WebInputElement(textField));
-}
-
bool EditorClientImpl::doTextFieldCommandFromEvent(Element* element,
KeyboardEvent* event)
{
@@ -876,6 +866,11 @@ void EditorClientImpl::checkSpellingOfString(const UChar* text, int length,
*misspellingLength = spellLength;
}
+void EditorClientImpl::requestCheckingOfString(SpellChecker* sender, int identifier, const String& text)
+{
+ m_webView->client()->requestCheckingOfText(text, new WebTextCheckingCompletionImpl(identifier, sender));
+}
+
String EditorClientImpl::getAutoCorrectSuggestionForMisspelledWord(const String& misspelledWord)
{
if (!(isContinuousSpellCheckingEnabled() && m_webView->client()))
diff --git a/Source/WebKit/chromium/src/EditorClientImpl.h b/Source/WebKit/chromium/src/EditorClientImpl.h
index 9dbd6af..8c40f3c 100644
--- a/Source/WebKit/chromium/src/EditorClientImpl.h
+++ b/Source/WebKit/chromium/src/EditorClientImpl.h
@@ -37,6 +37,7 @@
namespace WebCore {
class HTMLInputElement;
+class SpellChecker;
}
namespace WebKit {
@@ -111,7 +112,7 @@ public:
WTF::Vector<WTF::String>& guesses);
virtual void willSetInputMethodState();
virtual void setInputMethodState(bool enabled);
- virtual void requestCheckingOfString(WebCore::SpellChecker*, int, const WTF::String&) {}
+ virtual void requestCheckingOfString(WebCore::SpellChecker*, int, const WTF::String&);
// Shows the form autofill popup for |node| if it is an HTMLInputElement and
// it is empty. This is called when you press the up or down arrow in a
@@ -120,12 +121,6 @@ public:
// otherwise.
virtual bool showFormAutofillForNode(WebCore::Node*);
- // Notification that the text changed due to acceptance of a suggestion
- // provided by an Autocomplete popup. Having a separate callback in this
- // case is a simple way to break the cycle that would otherwise occur if
- // textDidChangeInTextField was called.
- virtual void onAutocompleteSuggestionAccepted(WebCore::HTMLInputElement*);
-
private:
void modifySelection(WebCore::Frame*, WebCore::KeyboardEvent*);
diff --git a/Source/WebKit/chromium/src/Extensions3DChromium.cpp b/Source/WebKit/chromium/src/Extensions3DChromium.cpp
index ca2215e..52c2e12 100644
--- a/Source/WebKit/chromium/src/Extensions3DChromium.cpp
+++ b/Source/WebKit/chromium/src/Extensions3DChromium.cpp
@@ -25,7 +25,7 @@
#include "config.h"
-#if ENABLE(3D_CANVAS)
+#if ENABLE(WEBGL)
#include "Extensions3DChromium.h"
@@ -62,6 +62,16 @@ int Extensions3DChromium::getGraphicsResetStatusARB()
return m_internal->isContextLost() ? static_cast<int>(Extensions3D::UNKNOWN_CONTEXT_RESET_ARB) : static_cast<int>(GraphicsContext3D::NO_ERROR);
}
+void Extensions3DChromium::blitFramebuffer(long srcX0, long srcY0, long srcX1, long srcY1, long dstX0, long dstY0, long dstX1, long dstY1, unsigned long mask, unsigned long filter)
+{
+ m_internal->blitFramebufferCHROMIUM(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
+}
+
+void Extensions3DChromium::renderbufferStorageMultisample(unsigned long target, unsigned long samples, unsigned long internalformat, unsigned long width, unsigned long height)
+{
+ m_internal->renderbufferStorageMultisampleCHROMIUM(target, samples, internalformat, width, height);
+}
+
void* Extensions3DChromium::mapBufferSubDataCHROMIUM(unsigned target, int offset, int size, unsigned access)
{
return m_internal->mapBufferSubDataCHROMIUM(target, offset, size, access);
@@ -89,4 +99,4 @@ void Extensions3DChromium::copyTextureToParentTextureCHROMIUM(unsigned texture,
} // namespace WebCore
-#endif // ENABLE(3D_CANVAS)
+#endif // ENABLE(WEBGL)
diff --git a/Source/WebKit/chromium/src/ExternalPopupMenu.cpp b/Source/WebKit/chromium/src/ExternalPopupMenu.cpp
index f7f9862..5808003 100644
--- a/Source/WebKit/chromium/src/ExternalPopupMenu.cpp
+++ b/Source/WebKit/chromium/src/ExternalPopupMenu.cpp
@@ -128,10 +128,10 @@ void ExternalPopupMenu::didCancel()
void ExternalPopupMenu::getPopupMenuInfo(WebPopupMenuInfo* info)
{
int itemCount = m_popupMenuClient->listSize();
- WebVector<WebPopupMenuInfo::Item> items(
+ WebVector<WebMenuItemInfo> items(
static_cast<size_t>(itemCount));
for (int i = 0; i < itemCount; ++i) {
- WebPopupMenuInfo::Item& popupItem = items[i];
+ WebMenuItemInfo& popupItem = items[i];
popupItem.label = m_popupMenuClient->itemText(i);
if (m_popupMenuClient->itemIsSeparator(i))
popupItem.type = WebMenuItemInfo::Separator;
@@ -140,9 +140,15 @@ void ExternalPopupMenu::getPopupMenuInfo(WebPopupMenuInfo* info)
else
popupItem.type = WebMenuItemInfo::Option;
popupItem.enabled = m_popupMenuClient->itemIsEnabled(i);
+ PopupMenuStyle style = m_popupMenuClient->itemStyle(i);
+ if (style.textDirection() == WebCore::RTL)
+ popupItem.textDirection = WebTextDirectionRightToLeft;
+ else
+ popupItem.textDirection = WebTextDirectionLeftToRight;
+ popupItem.hasTextDirectionOverride = style.hasTextDirectionOverride();
}
- info->itemHeight = m_popupMenuClient->menuStyle().font().height();
+ info->itemHeight = m_popupMenuClient->menuStyle().font().fontMetrics().height();
info->itemFontSize =
static_cast<int>(m_popupMenuClient->menuStyle().font().size());
info->selectedIndex = m_popupMenuClient->selectedIndex();
diff --git a/Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp b/Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp
index b767450..34c53cf 100644
--- a/Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp
+++ b/Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp
@@ -1099,7 +1099,7 @@ void FrameLoaderClientImpl::finishedLoading(DocumentLoader* dl)
// However, we only want to do this if makeRepresentation has been called, to
// match the behavior on the Mac.
if (m_hasRepresentation)
- dl->frameLoader()->writer()->setEncoding("", false);
+ dl->writer()->setEncoding("", false);
}
}
@@ -1153,10 +1153,10 @@ void FrameLoaderClientImpl::didDisplayInsecureContent()
m_webFrame->client()->didDisplayInsecureContent(m_webFrame);
}
-void FrameLoaderClientImpl::didRunInsecureContent(SecurityOrigin* origin)
+void FrameLoaderClientImpl::didRunInsecureContent(SecurityOrigin* origin, const KURL& insecureURL)
{
if (m_webFrame->client())
- m_webFrame->client()->didRunInsecureContent(m_webFrame, WebSecurityOrigin(origin));
+ m_webFrame->client()->didRunInsecureContent(m_webFrame, WebSecurityOrigin(origin), insecureURL);
}
ResourceError FrameLoaderClientImpl::blockedError(const ResourceRequest&)
diff --git a/Source/WebKit/chromium/src/FrameLoaderClientImpl.h b/Source/WebKit/chromium/src/FrameLoaderClientImpl.h
index 1d7a741..925b759 100644
--- a/Source/WebKit/chromium/src/FrameLoaderClientImpl.h
+++ b/Source/WebKit/chromium/src/FrameLoaderClientImpl.h
@@ -142,7 +142,7 @@ public:
virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
- virtual void didRunInsecureContent(WebCore::SecurityOrigin*);
+ virtual void didRunInsecureContent(WebCore::SecurityOrigin*, const WebCore::KURL& insecureURL);
virtual WebCore::ResourceError blockedError(const WebCore::ResourceRequest&);
virtual WebCore::ResourceError cancelledError(const WebCore::ResourceRequest&);
virtual WebCore::ResourceError cannotShowURLError(const WebCore::ResourceRequest&);
diff --git a/Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp b/Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp
index 8148ff6..0751785 100644
--- a/Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp
+++ b/Source/WebKit/chromium/src/GraphicsContext3DChromium.cpp
@@ -30,7 +30,7 @@
#include "config.h"
-#if ENABLE(3D_CANVAS)
+#if ENABLE(WEBGL)
#include "GraphicsContext3D.h"
@@ -205,7 +205,7 @@ void GraphicsContext3DInternal::paintRenderingResultsToCanvas(CanvasRenderingCon
// We need to draw the resizing bitmap into the canvas's backing store.
SkCanvas canvas(*canvasBitmap);
SkRect dst;
- dst.set(SkIntToScalar(0), SkIntToScalar(0), canvasBitmap->width(), canvasBitmap->height());
+ dst.set(SkIntToScalar(0), SkIntToScalar(0), SkIntToScalar(canvasBitmap->width()), SkIntToScalar(canvasBitmap->height()));
canvas.drawBitmapRect(m_resizingBitmap, 0, dst);
}
#elif PLATFORM(CG)
@@ -364,8 +364,13 @@ rt GraphicsContext3DInternal::name(t1 a1, t2 a2, t3 a3, t4 a4, t5 a5, t6 a6, t7
return m_impl->name(a1, a2, a3, a4, a5, a6, a7, a8, a9); \
}
+#define DELEGATE_TO_IMPL_10(name, t1, t2, t3, t4, t5, t6, t7, t8, t9, t10) \
+void GraphicsContext3DInternal::name(t1 a1, t2 a2, t3 a3, t4 a4, t5 a5, t6 a6, t7 a7, t8 a8, t9 a9, t10 a10) \
+{ \
+ m_impl->name(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10); \
+}
+
DELEGATE_TO_IMPL_R(makeContextCurrent, bool)
-DELEGATE_TO_IMPL_1R(sizeInBytes, GC3Denum, unsigned int)
bool GraphicsContext3DInternal::isGLES2Compliant() const
{
@@ -692,6 +697,14 @@ void splitStringHelper(const String& str, HashSet<String>& set)
set.add(substrings[i]);
}
+String mapExtensionName(const String& name)
+{
+ if (name == "GL_ANGLE_framebuffer_blit"
+ || name == "GL_ANGLE_framebuffer_multisample")
+ return "GL_CHROMIUM_framebuffer_multisample";
+ return name;
+}
+
} // anonymous namespace
void GraphicsContext3DInternal::initializeExtensions()
@@ -711,25 +724,27 @@ void GraphicsContext3DInternal::initializeExtensions()
bool GraphicsContext3DInternal::supportsExtension(const String& name)
{
initializeExtensions();
- return m_enabledExtensions.contains(name) || m_requestableExtensions.contains(name);
+ String mappedName = mapExtensionName(name);
+ return m_enabledExtensions.contains(mappedName) || m_requestableExtensions.contains(mappedName);
}
bool GraphicsContext3DInternal::ensureExtensionEnabled(const String& name)
{
initializeExtensions();
- if (m_enabledExtensions.contains(name))
+ String mappedName = mapExtensionName(name);
+ if (m_enabledExtensions.contains(mappedName))
return true;
- if (m_requestableExtensions.contains(name)) {
- m_impl->requestExtensionCHROMIUM(name.ascii().data());
+ if (m_requestableExtensions.contains(mappedName)) {
+ m_impl->requestExtensionCHROMIUM(mappedName.ascii().data());
m_enabledExtensions.clear();
m_requestableExtensions.clear();
m_initializedAvailableExtensions = false;
}
initializeExtensions();
- return m_enabledExtensions.contains(name);
+ return m_enabledExtensions.contains(mappedName);
}
DELEGATE_TO_IMPL_4R(mapBufferSubDataCHROMIUM, GC3Denum, GC3Dsizeiptr, GC3Dsizei, GC3Denum, void*)
@@ -737,6 +752,8 @@ DELEGATE_TO_IMPL_1(unmapBufferSubDataCHROMIUM, const void*)
DELEGATE_TO_IMPL_9R(mapTexSubImage2DCHROMIUM, GC3Denum, GC3Dint, GC3Dint, GC3Dint, GC3Dsizei, GC3Dsizei, GC3Denum, GC3Denum, GC3Denum, void*)
DELEGATE_TO_IMPL_1(unmapTexSubImage2DCHROMIUM, const void*)
DELEGATE_TO_IMPL_2(copyTextureToParentTextureCHROMIUM, Platform3DObject, Platform3DObject)
+DELEGATE_TO_IMPL_10(blitFramebufferCHROMIUM, GC3Dint, GC3Dint, GC3Dint, GC3Dint, GC3Dint, GC3Dint, GC3Dint, GC3Dint, GC3Dbitfield, GC3Denum)
+DELEGATE_TO_IMPL_5(renderbufferStorageMultisampleCHROMIUM, GC3Denum, GC3Dsizei, GC3Denum, GC3Dsizei, GC3Dsizei)
//----------------------------------------------------------------------
// GraphicsContext3D
@@ -897,7 +914,6 @@ PlatformLayer* GraphicsContext3D::platformLayer() const
#endif
DELEGATE_TO_INTERNAL(makeContextCurrent)
-DELEGATE_TO_INTERNAL_1R(sizeInBytes, GC3Denum, unsigned int)
DELEGATE_TO_INTERNAL_2(reshape, int, int)
DELEGATE_TO_INTERNAL_R(getInternalFramebufferSize, IntSize)
@@ -1066,6 +1082,35 @@ DELEGATE_TO_INTERNAL_1(deleteTexture, Platform3DObject)
DELEGATE_TO_INTERNAL_1(synthesizeGLError, GC3Denum)
DELEGATE_TO_INTERNAL_R(getExtensions, Extensions3D*)
+DELEGATE_TO_INTERNAL_1(setContextLostCallback, PassOwnPtr<GraphicsContext3D::ContextLostCallback>)
+
+class GraphicsContextLostCallbackAdapter : public WebKit::WebGraphicsContext3D::WebGraphicsContextLostCallback {
+public:
+ virtual void onContextLost();
+ static PassOwnPtr<GraphicsContextLostCallbackAdapter> create(PassOwnPtr<GraphicsContext3D::ContextLostCallback>);
+ virtual ~GraphicsContextLostCallbackAdapter() {}
+private:
+ GraphicsContextLostCallbackAdapter(PassOwnPtr<GraphicsContext3D::ContextLostCallback> cb) : m_contextLostCallback(cb) {}
+ OwnPtr<GraphicsContext3D::ContextLostCallback> m_contextLostCallback;
+};
+
+void GraphicsContextLostCallbackAdapter::onContextLost()
+{
+ if (m_contextLostCallback)
+ m_contextLostCallback->onContextLost();
+}
+
+PassOwnPtr<GraphicsContextLostCallbackAdapter> GraphicsContextLostCallbackAdapter::create(PassOwnPtr<GraphicsContext3D::ContextLostCallback> cb)
+{
+ return adoptPtr(new GraphicsContextLostCallbackAdapter(cb));
+}
+
+void GraphicsContext3DInternal::setContextLostCallback(PassOwnPtr<GraphicsContext3D::ContextLostCallback> cb)
+{
+ m_contextLostCallbackAdapter = GraphicsContextLostCallbackAdapter::create(cb);
+ m_impl->setContextLostCallback(m_contextLostCallbackAdapter.get());
+}
+
bool GraphicsContext3D::isGLES2Compliant() const
{
return m_internal->isGLES2Compliant();
@@ -1073,4 +1118,4 @@ bool GraphicsContext3D::isGLES2Compliant() const
} // namespace WebCore
-#endif // ENABLE(3D_CANVAS)
+#endif // ENABLE(WEBGL)
diff --git a/Source/WebKit/chromium/src/GraphicsContext3DInternal.h b/Source/WebKit/chromium/src/GraphicsContext3DInternal.h
index 30a8e57..be9ce16 100644
--- a/Source/WebKit/chromium/src/GraphicsContext3DInternal.h
+++ b/Source/WebKit/chromium/src/GraphicsContext3DInternal.h
@@ -44,6 +44,7 @@ class Extensions3DChromium;
#if USE(ACCELERATED_COMPOSITING)
class WebGLLayerChromium;
#endif
+class GraphicsContextLostCallbackAdapter;
class GraphicsContext3DInternal {
public:
@@ -62,8 +63,6 @@ public:
bool makeContextCurrent();
- unsigned int sizeInBytes(GC3Denum type);
-
void reshape(int width, int height);
IntSize getInternalFramebufferSize();
@@ -241,6 +240,8 @@ public:
void synthesizeGLError(GC3Denum error);
+ void setContextLostCallback(PassOwnPtr<GraphicsContext3D::ContextLostCallback>);
+
// Extensions3D support.
Extensions3D* getExtensions();
bool supportsExtension(const String& name);
@@ -260,9 +261,14 @@ public:
bool supportsCopyTextureToParentTextureCHROMIUM();
void copyTextureToParentTextureCHROMIUM(Platform3DObject texture, Platform3DObject parentTexture);
+ // GL_CHROMIUM_framebuffer_multisample
+ void blitFramebufferCHROMIUM(GC3Dint srcX0, GC3Dint srcY0, GC3Dint srcX1, GC3Dint srcY1, GC3Dint dstX0, GC3Dint dstY0, GC3Dint dstX1, GC3Dint dstY1, GC3Dbitfield mask, GC3Denum filter);
+ void renderbufferStorageMultisampleCHROMIUM(GC3Denum target, GC3Dsizei samples, GC3Denum internalformat, GC3Dsizei width, GC3Dsizei height);
+
private:
OwnPtr<WebKit::WebGraphicsContext3D> m_impl;
OwnPtr<Extensions3DChromium> m_extensions;
+ OwnPtr<GraphicsContextLostCallbackAdapter> m_contextLostCallbackAdapter;
WebKit::WebViewImpl* m_webViewImpl;
bool m_initializedAvailableExtensions;
HashSet<String> m_enabledExtensions;
diff --git a/Source/WebKit/chromium/src/IDBCallbacksProxy.cpp b/Source/WebKit/chromium/src/IDBCallbacksProxy.cpp
index 69051d0..dba28d9 100644
--- a/Source/WebKit/chromium/src/IDBCallbacksProxy.cpp
+++ b/Source/WebKit/chromium/src/IDBCallbacksProxy.cpp
@@ -62,55 +62,41 @@ IDBCallbacksProxy::~IDBCallbacksProxy()
void IDBCallbacksProxy::onError(PassRefPtr<IDBDatabaseError> idbDatabaseError)
{
m_callbacks->onError(WebKit::WebIDBDatabaseError(idbDatabaseError));
- m_callbacks.clear();
-}
-
-void IDBCallbacksProxy::onSuccess()
-{
- m_callbacks->onSuccess();
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBCursorBackendInterface> idbCursorBackend)
{
m_callbacks->onSuccess(new WebKit::WebIDBCursorImpl(idbCursorBackend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBDatabaseBackendInterface> backend)
{
m_callbacks->onSuccess(new WebKit::WebIDBDatabaseImpl(backend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBIndexBackendInterface> backend)
{
m_callbacks->onSuccess(new WebKit::WebIDBIndexImpl(backend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBKey> idbKey)
{
m_callbacks->onSuccess(WebKit::WebIDBKey(idbKey));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBObjectStoreBackendInterface> backend)
{
m_callbacks->onSuccess(new WebKit::WebIDBObjectStoreImpl(backend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBTransactionBackendInterface> backend)
{
m_callbacks->onSuccess(new WebKit::WebIDBTransactionImpl(backend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<SerializedScriptValue> serializedScriptValue)
{
m_callbacks->onSuccess(WebKit::WebSerializedScriptValue(serializedScriptValue));
- m_callbacks.clear();
}
} // namespace WebCore
diff --git a/Source/WebKit/chromium/src/IDBCallbacksProxy.h b/Source/WebKit/chromium/src/IDBCallbacksProxy.h
index 8c26161..e1db23d 100644
--- a/Source/WebKit/chromium/src/IDBCallbacksProxy.h
+++ b/Source/WebKit/chromium/src/IDBCallbacksProxy.h
@@ -48,7 +48,6 @@ public:
virtual ~IDBCallbacksProxy();
virtual void onError(PassRefPtr<IDBDatabaseError>);
- virtual void onSuccess(); // For "null".
virtual void onSuccess(PassRefPtr<IDBCursorBackendInterface>);
virtual void onSuccess(PassRefPtr<IDBDatabaseBackendInterface>);
virtual void onSuccess(PassRefPtr<IDBIndexBackendInterface>);
diff --git a/Source/WebKit/chromium/src/IDBDatabaseProxy.cpp b/Source/WebKit/chromium/src/IDBDatabaseProxy.cpp
index f070d64..6355a2a 100644
--- a/Source/WebKit/chromium/src/IDBDatabaseProxy.cpp
+++ b/Source/WebKit/chromium/src/IDBDatabaseProxy.cpp
@@ -95,10 +95,10 @@ void IDBDatabaseProxy::setVersion(const String& version, PassRefPtr<IDBCallbacks
m_webIDBDatabase->setVersion(version, new WebIDBCallbacksImpl(callbacks), ec);
}
-PassRefPtr<IDBTransactionBackendInterface> IDBDatabaseProxy::transaction(DOMStringList* storeNames, unsigned short mode, unsigned long timeout, ExceptionCode& ec)
+PassRefPtr<IDBTransactionBackendInterface> IDBDatabaseProxy::transaction(DOMStringList* storeNames, unsigned short mode, ExceptionCode& ec)
{
WebKit::WebDOMStringList names(storeNames);
- WebKit::WebIDBTransaction* transaction = m_webIDBDatabase->transaction(names, mode, timeout, ec);
+ WebKit::WebIDBTransaction* transaction = m_webIDBDatabase->transaction(names, mode, ec);
if (!transaction) {
ASSERT(ec);
return 0;
diff --git a/Source/WebKit/chromium/src/IDBDatabaseProxy.h b/Source/WebKit/chromium/src/IDBDatabaseProxy.h
index c51a604..2ceb77e 100644
--- a/Source/WebKit/chromium/src/IDBDatabaseProxy.h
+++ b/Source/WebKit/chromium/src/IDBDatabaseProxy.h
@@ -49,7 +49,7 @@ public:
virtual PassRefPtr<IDBObjectStoreBackendInterface> createObjectStore(const String& name, const String& keyPath, bool autoIncrement, IDBTransactionBackendInterface*, ExceptionCode&);
virtual void deleteObjectStore(const String& name, IDBTransactionBackendInterface*, ExceptionCode&);
virtual void setVersion(const String& version, PassRefPtr<IDBCallbacks>, ExceptionCode&);
- virtual PassRefPtr<IDBTransactionBackendInterface> transaction(DOMStringList* storeNames, unsigned short mode, unsigned long timeout, ExceptionCode&);
+ virtual PassRefPtr<IDBTransactionBackendInterface> transaction(DOMStringList* storeNames, unsigned short mode, ExceptionCode&);
virtual void close();
private:
diff --git a/Source/WebKit/chromium/src/IDBObjectStoreProxy.cpp b/Source/WebKit/chromium/src/IDBObjectStoreProxy.cpp
index e03cdc8..d6871e0 100755
--- a/Source/WebKit/chromium/src/IDBObjectStoreProxy.cpp
+++ b/Source/WebKit/chromium/src/IDBObjectStoreProxy.cpp
@@ -80,12 +80,12 @@ void IDBObjectStoreProxy::get(PassRefPtr<IDBKey> key, PassRefPtr<IDBCallbacks> c
m_webIDBObjectStore->get(key, new WebIDBCallbacksImpl(callbacks), *transactionProxy->getWebIDBTransaction(), ec);
}
-void IDBObjectStoreProxy::put(PassRefPtr<SerializedScriptValue> value, PassRefPtr<IDBKey> key, bool addOnly, PassRefPtr<IDBCallbacks> callbacks, IDBTransactionBackendInterface* transaction, ExceptionCode& ec)
+void IDBObjectStoreProxy::put(PassRefPtr<SerializedScriptValue> value, PassRefPtr<IDBKey> key, PutMode putMode, PassRefPtr<IDBCallbacks> callbacks, IDBTransactionBackendInterface* transaction, ExceptionCode& ec)
{
// The transaction pointer is guaranteed to be a pointer to a proxy object as, in the renderer,
// all implementations of IDB interfaces are proxy objects.
IDBTransactionBackendProxy* transactionProxy = static_cast<IDBTransactionBackendProxy*>(transaction);
- m_webIDBObjectStore->put(value, key, addOnly, new WebIDBCallbacksImpl(callbacks), *transactionProxy->getWebIDBTransaction(), ec);
+ m_webIDBObjectStore->put(value, key, static_cast<WebKit::WebIDBObjectStore::PutMode>(putMode), new WebIDBCallbacksImpl(callbacks), *transactionProxy->getWebIDBTransaction(), ec);
}
void IDBObjectStoreProxy::deleteFunction(PassRefPtr<IDBKey> key, PassRefPtr<IDBCallbacks> callbacks, IDBTransactionBackendInterface* transaction, ExceptionCode& ec)
@@ -96,6 +96,14 @@ void IDBObjectStoreProxy::deleteFunction(PassRefPtr<IDBKey> key, PassRefPtr<IDBC
m_webIDBObjectStore->deleteFunction(key, new WebIDBCallbacksImpl(callbacks), *transactionProxy->getWebIDBTransaction(), ec);
}
+void IDBObjectStoreProxy::clear(PassRefPtr<IDBCallbacks> callbacks, IDBTransactionBackendInterface* transaction, ExceptionCode& ec)
+{
+ // The transaction pointer is guaranteed to be a pointer to a proxy object as, in the renderer,
+ // all implementations of IDB interfaces are proxy objects.
+ IDBTransactionBackendProxy* transactionProxy = static_cast<IDBTransactionBackendProxy*>(transaction);
+ m_webIDBObjectStore->clear(new WebIDBCallbacksImpl(callbacks), *transactionProxy->getWebIDBTransaction(), ec);
+}
+
PassRefPtr<IDBIndexBackendInterface> IDBObjectStoreProxy::createIndex(const String& name, const String& keyPath, bool unique, IDBTransactionBackendInterface* transaction, ExceptionCode& ec)
{
// The transaction pointer is guaranteed to be a pointer to a proxy object as, in the renderer,
diff --git a/Source/WebKit/chromium/src/IDBObjectStoreProxy.h b/Source/WebKit/chromium/src/IDBObjectStoreProxy.h
index 348c794..a6e3748 100755
--- a/Source/WebKit/chromium/src/IDBObjectStoreProxy.h
+++ b/Source/WebKit/chromium/src/IDBObjectStoreProxy.h
@@ -47,8 +47,9 @@ public:
virtual PassRefPtr<DOMStringList> indexNames() const;
virtual void get(PassRefPtr<IDBKey>, PassRefPtr<IDBCallbacks>, IDBTransactionBackendInterface*, ExceptionCode&);
- virtual void put(PassRefPtr<SerializedScriptValue>, PassRefPtr<IDBKey>, bool addOnly, PassRefPtr<IDBCallbacks>, IDBTransactionBackendInterface*, ExceptionCode&);
+ virtual void put(PassRefPtr<SerializedScriptValue>, PassRefPtr<IDBKey>, PutMode, PassRefPtr<IDBCallbacks>, IDBTransactionBackendInterface*, ExceptionCode&);
virtual void deleteFunction(PassRefPtr<IDBKey>, PassRefPtr<IDBCallbacks>, IDBTransactionBackendInterface*, ExceptionCode&);
+ virtual void clear(PassRefPtr<IDBCallbacks>, IDBTransactionBackendInterface*, ExceptionCode&);
PassRefPtr<IDBIndexBackendInterface> createIndex(const String& name, const String& keyPath, bool unique, IDBTransactionBackendInterface*, ExceptionCode&);
PassRefPtr<IDBIndexBackendInterface> index(const String& name, ExceptionCode&);
@@ -67,4 +68,3 @@ private:
#endif
#endif // IDBObjectStoreProxy_h
-
diff --git a/Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.cpp b/Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.cpp
index 3a19fe2..ebda1dd 100644
--- a/Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.cpp
+++ b/Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.cpp
@@ -52,19 +52,11 @@ IDBTransactionCallbacksProxy::~IDBTransactionCallbacksProxy()
void IDBTransactionCallbacksProxy::onAbort()
{
m_callbacks->onAbort();
- m_callbacks.clear();
}
void IDBTransactionCallbacksProxy::onComplete()
{
m_callbacks->onComplete();
- m_callbacks.clear();
-}
-
-void IDBTransactionCallbacksProxy::onTimeout()
-{
- m_callbacks->onTimeout();
- m_callbacks.clear();
}
} // namespace WebCore
diff --git a/Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.h b/Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.h
index 891d5c9..79c32f6 100644
--- a/Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.h
+++ b/Source/WebKit/chromium/src/IDBTransactionCallbacksProxy.h
@@ -47,7 +47,6 @@ public:
virtual void onAbort();
virtual void onComplete();
- virtual void onTimeout();
private:
IDBTransactionCallbacksProxy(PassOwnPtr<WebKit::WebIDBTransactionCallbacks>);
diff --git a/Source/WebKit/chromium/src/InspectorClientImpl.cpp b/Source/WebKit/chromium/src/InspectorClientImpl.cpp
index 77150bb..1ed5284 100644
--- a/Source/WebKit/chromium/src/InspectorClientImpl.cpp
+++ b/Source/WebKit/chromium/src/InspectorClientImpl.cpp
@@ -81,18 +81,6 @@ void InspectorClientImpl::hideHighlight()
agent->hideHighlight();
}
-void InspectorClientImpl::populateSetting(const String& key, String* value)
-{
- if (WebDevToolsAgentImpl* agent = devToolsAgent())
- agent->populateSetting(key, value);
-}
-
-void InspectorClientImpl::storeSetting(const String& key, const String& value)
-{
- if (WebDevToolsAgentImpl* agent = devToolsAgent())
- agent->storeSetting(key, value);
-}
-
bool InspectorClientImpl::sendMessageToFrontend(const WTF::String& message)
{
if (WebDevToolsAgentImpl* agent = devToolsAgent())
diff --git a/Source/WebKit/chromium/src/InspectorClientImpl.h b/Source/WebKit/chromium/src/InspectorClientImpl.h
index 78d34e3..cc91454 100644
--- a/Source/WebKit/chromium/src/InspectorClientImpl.h
+++ b/Source/WebKit/chromium/src/InspectorClientImpl.h
@@ -53,9 +53,6 @@ public:
virtual void highlight(WebCore::Node*);
virtual void hideHighlight();
- virtual void populateSetting(const WTF::String& key, WTF::String* value);
- virtual void storeSetting(const WTF::String& key, const WTF::String& value);
-
virtual bool sendMessageToFrontend(const WTF::String&);
virtual void updateInspectorStateCookie(const WTF::String&);
diff --git a/Source/WebKit/chromium/src/LocalFileSystemChromium.cpp b/Source/WebKit/chromium/src/LocalFileSystemChromium.cpp
index a9c61d0..ae2eb1d 100644
--- a/Source/WebKit/chromium/src/LocalFileSystemChromium.cpp
+++ b/Source/WebKit/chromium/src/LocalFileSystemChromium.cpp
@@ -62,7 +62,7 @@ void LocalFileSystem::readFileSystem(ScriptExecutionContext* context, AsyncFileS
ASSERT(context && context->isDocument());
Document* document = static_cast<Document*>(context);
WebFrameImpl* webFrame = WebFrameImpl::fromFrame(document->frame());
- webFrame->client()->openFileSystem(webFrame, static_cast<WebFileSystem::Type>(type), size, false, new WebFileSystemCallbacksImpl(callbacks));
+ webFrame->client()->openFileSystem(webFrame, static_cast<WebFileSystem::Type>(type), size, false, new WebFileSystemCallbacksImpl(callbacks, type));
}
void LocalFileSystem::requestFileSystem(ScriptExecutionContext* context, AsyncFileSystem::Type type, long long size, PassOwnPtr<AsyncFileSystemCallbacks> callbacks, bool synchronous)
@@ -71,12 +71,12 @@ void LocalFileSystem::requestFileSystem(ScriptExecutionContext* context, AsyncFi
if (context->isDocument()) {
Document* document = static_cast<Document*>(context);
WebFrameImpl* webFrame = WebFrameImpl::fromFrame(document->frame());
- webFrame->client()->openFileSystem(webFrame, static_cast<WebFileSystem::Type>(type), size, true, new WebFileSystemCallbacksImpl(callbacks));
+ webFrame->client()->openFileSystem(webFrame, static_cast<WebFileSystem::Type>(type), size, true, new WebFileSystemCallbacksImpl(callbacks, type));
} else {
WorkerContext* workerContext = static_cast<WorkerContext*>(context);
WorkerLoaderProxy* workerLoaderProxy = &workerContext->thread()->workerLoaderProxy();
WebWorkerBase* webWorker = static_cast<WebWorkerBase*>(workerLoaderProxy);
- webWorker->openFileSystem(static_cast<WebFileSystem::Type>(type), size, new WebFileSystemCallbacksImpl(callbacks, context, synchronous), synchronous);
+ webWorker->openFileSystem(static_cast<WebFileSystem::Type>(type), size, new WebFileSystemCallbacksImpl(callbacks, type, context, synchronous), synchronous);
}
}
diff --git a/Source/WebKit/chromium/src/PlatformBridge.cpp b/Source/WebKit/chromium/src/PlatformBridge.cpp
index 04016fc..b09d150 100644
--- a/Source/WebKit/chromium/src/PlatformBridge.cpp
+++ b/Source/WebKit/chromium/src/PlatformBridge.cpp
@@ -132,6 +132,14 @@ static WebWidgetClient* toWebWidgetClient(Widget* widget)
return chromeClientImpl->webView()->client();
}
+static WebClipboard* getClipboard(const Frame* frame)
+{
+ WebFrameImpl* frameImpl = WebFrameImpl::fromFrame(frame);
+ if (!frameImpl || !frameImpl->client())
+ return 0;
+ return frameImpl->client()->clipboard();
+}
+
static WebCookieJar* getCookieJar(const Document* document)
{
WebFrameImpl* frameImpl = WebFrameImpl::fromFrame(document->frame());
@@ -217,9 +225,15 @@ void PlatformBridge::clipboardWriteData(const String& type,
}
HashSet<String> PlatformBridge::clipboardReadAvailableTypes(
- PasteboardPrivate::ClipboardBuffer buffer, bool* containsFilenames)
+ const Frame* frame,
+ PasteboardPrivate::ClipboardBuffer buffer,
+ bool* containsFilenames)
{
- WebVector<WebString> result = webKitClient()->clipboard()->readAvailableTypes(
+ WebClipboard* clipboard = getClipboard(frame);
+ if (!clipboard)
+ return HashSet<String>();
+
+ WebVector<WebString> result = clipboard->readAvailableTypes(
static_cast<WebClipboard::Buffer>(buffer), containsFilenames);
HashSet<String> types;
for (size_t i = 0; i < result.size(); ++i)
@@ -227,12 +241,19 @@ HashSet<String> PlatformBridge::clipboardReadAvailableTypes(
return types;
}
-bool PlatformBridge::clipboardReadData(PasteboardPrivate::ClipboardBuffer buffer,
- const String& type, String& data, String& metadata)
+bool PlatformBridge::clipboardReadData(const Frame* frame,
+ PasteboardPrivate::ClipboardBuffer buffer,
+ const String& type,
+ String& data,
+ String& metadata)
{
+ WebClipboard* clipboard = getClipboard(frame);
+ if (!clipboard)
+ return false;
+
WebString resultData;
WebString resultMetadata;
- bool succeeded = webKitClient()->clipboard()->readData(
+ bool succeeded = clipboard->readData(
static_cast<WebClipboard::Buffer>(buffer), type, &resultData, &resultMetadata);
if (succeeded) {
data = resultData;
@@ -241,9 +262,14 @@ bool PlatformBridge::clipboardReadData(PasteboardPrivate::ClipboardBuffer buffer
return succeeded;
}
-Vector<String> PlatformBridge::clipboardReadFilenames(PasteboardPrivate::ClipboardBuffer buffer)
+Vector<String> PlatformBridge::clipboardReadFilenames(const Frame* frame,
+ PasteboardPrivate::ClipboardBuffer buffer)
{
- WebVector<WebString> result = webKitClient()->clipboard()->readFilenames(
+ WebClipboard* clipboard = getClipboard(frame);
+ if (!clipboard)
+ return Vector<String>();
+
+ WebVector<WebString> result = clipboard->readFilenames(
static_cast<WebClipboard::Buffer>(buffer));
Vector<String> convertedResult;
for (size_t i = 0; i < result.size(); ++i)
@@ -509,12 +535,6 @@ PassRefPtr<IDBFactoryBackendInterface> PlatformBridge::idbFactory()
return IDBFactoryBackendProxy::create();
}
-void PlatformBridge::idbShutdown()
-{
- // In the browser process, this shuts down the utility process. In the renderer process, it does nothing.
- webKitClient()->idbShutdown();
-}
-
void PlatformBridge::createIDBKeysFromSerializedValuesAndKeyPath(const Vector<RefPtr<SerializedScriptValue> >& values, const String& keyPath, Vector<RefPtr<IDBKey> >& keys)
{
WebVector<WebSerializedScriptValue> webValues = values;
diff --git a/Source/WebKit/chromium/src/WebDevToolsAgentImpl.cpp b/Source/WebKit/chromium/src/WebDevToolsAgentImpl.cpp
index 11ce797..6329d76 100644
--- a/Source/WebKit/chromium/src/WebDevToolsAgentImpl.cpp
+++ b/Source/WebKit/chromium/src/WebDevToolsAgentImpl.cpp
@@ -64,23 +64,7 @@
#include <wtf/Noncopyable.h>
#include <wtf/OwnPtr.h>
-using WebCore::DocumentLoader;
-using WebCore::FrameLoader;
-using WebCore::InjectedScriptHost;
-using WebCore::InspectorArray;
-using WebCore::InspectorBackendDispatcher;
-using WebCore::InspectorController;
-using WebCore::InspectorInstrumentation;
-using WebCore::InspectorInstrumentationCookie;
-using WebCore::Node;
-using WebCore::Page;
-using WebCore::ResourceError;
-using WebCore::ResourceRequest;
-using WebCore::ResourceResponse;
-using WTF::String;
-using WebCore::V8DOMWrapper;
-using WebCore::V8Node;
-using WebCore::V8Proxy;
+using namespace WebCore;
namespace WebKit {
@@ -89,14 +73,14 @@ namespace {
static const char kFrontendConnectedFeatureName[] = "frontend-connected";
static const char kInspectorStateFeatureName[] = "inspector-state";
-class ClientMessageLoopAdapter : public WebCore::ScriptDebugServer::ClientMessageLoop {
+class ClientMessageLoopAdapter : public ScriptDebugServer::ClientMessageLoop {
public:
static void ensureClientMessageLoopCreated(WebDevToolsAgentClient* client)
{
if (s_instance)
return;
s_instance = new ClientMessageLoopAdapter(client->createClientMessageLoop());
- WebCore::ScriptDebugServer::shared().setClientMessageLoop(s_instance);
+ ScriptDebugServer::shared().setClientMessageLoop(s_instance);
}
static void inspectedViewClosed(WebViewImpl* view)
@@ -109,7 +93,7 @@ public:
{
// Release render thread if necessary.
if (s_instance && s_instance->m_running)
- WebCore::ScriptDebugServer::shared().continueProgram();
+ ScriptDebugServer::shared().continueProgram();
}
private:
@@ -204,8 +188,8 @@ void WebDevToolsAgentImpl::attach()
m_debuggerAgentImpl.set(
new DebuggerAgentImpl(m_webViewImpl, this, m_client));
WebCString debuggerScriptJs = m_client->debuggerScriptSource();
- WebCore::ScriptDebugServer::shared().setDebuggerScriptSource(
- WTF::String(debuggerScriptJs.data(), debuggerScriptJs.length()));
+ ScriptDebugServer::shared().setDebuggerScriptSource(
+ String(debuggerScriptJs.data(), debuggerScriptJs.length()));
m_attached = true;
}
@@ -238,7 +222,7 @@ void WebDevToolsAgentImpl::didClearWindowObject(WebFrameImpl* webframe)
void WebDevToolsAgentImpl::dispatchOnInspectorBackend(const WebString& message)
{
- inspectorController()->inspectorBackendDispatcher()->dispatch(message);
+ inspectorController()->dispatchMessageFromFrontend(message);
}
void WebDevToolsAgentImpl::inspectElementAt(const WebPoint& point)
@@ -249,7 +233,7 @@ void WebDevToolsAgentImpl::inspectElementAt(const WebPoint& point)
void WebDevToolsAgentImpl::inspectNode(v8::Handle<v8::Value> node)
{
if (!V8Node::HasInstance(node))
- V8Proxy::setDOMException(WebCore::TYPE_MISMATCH_ERR);
+ V8Proxy::setDOMException(TYPE_MISMATCH_ERR);
else
inspectorController()->inspect(V8Node::toNative(v8::Handle<v8::Object>::Cast(node)));
}
@@ -262,14 +246,14 @@ void WebDevToolsAgentImpl::setRuntimeProperty(const WebString& name, const WebSt
}
}
-WebCore::InspectorController* WebDevToolsAgentImpl::inspectorController()
+InspectorController* WebDevToolsAgentImpl::inspectorController()
{
if (Page* page = m_webViewImpl->page())
return page->inspectorController();
return 0;
}
-WebCore::Frame* WebDevToolsAgentImpl::mainFrame()
+Frame* WebDevToolsAgentImpl::mainFrame()
{
if (Page* page = m_webViewImpl->page())
return page->mainFrame();
@@ -284,7 +268,7 @@ void WebDevToolsAgentImpl::identifierForInitialRequest(
const WebURLRequest& request)
{
WebFrameImpl* webFrameImpl = static_cast<WebFrameImpl*>(webFrame);
- WebCore::Frame* frame = webFrameImpl->frame();
+ Frame* frame = webFrameImpl->frame();
DocumentLoader* loader = frame->loader()->activeDocumentLoader();
InspectorInstrumentation::identifierForInitialRequest(frame, resourceId, loader, request.toResourceRequest());
}
@@ -348,19 +332,7 @@ void WebDevToolsAgentImpl::hideHighlight()
m_webViewImpl->client()->didInvalidateRect(damagedRect);
}
-void WebDevToolsAgentImpl::populateSetting(const String& key, String* value)
-{
- WebString string;
- m_webViewImpl->inspectorSetting(key, &string);
- *value = string;
-}
-
-void WebDevToolsAgentImpl::storeSetting(const String& key, const String& value)
-{
- m_webViewImpl->setInspectorSetting(key, value);
-}
-
-bool WebDevToolsAgentImpl::sendMessageToFrontend(const WTF::String& message)
+bool WebDevToolsAgentImpl::sendMessageToFrontend(const String& message)
{
WebDevToolsAgentImpl* devToolsAgent = static_cast<WebDevToolsAgentImpl*>(m_webViewImpl->devToolsAgent());
if (!devToolsAgent)
@@ -370,7 +342,7 @@ bool WebDevToolsAgentImpl::sendMessageToFrontend(const WTF::String& message)
return true;
}
-void WebDevToolsAgentImpl::updateInspectorStateCookie(const WTF::String& state)
+void WebDevToolsAgentImpl::updateInspectorStateCookie(const String& state)
{
m_client->runtimePropertyChanged(kInspectorStateFeatureName, state);
}
@@ -402,7 +374,7 @@ void WebDevToolsAgent::debuggerPauseScript()
void WebDevToolsAgent::interruptAndDispatch(MessageDescriptor* d)
{
- class DebuggerTask : public WebCore::ScriptDebugServer::Task {
+ class DebuggerTask : public ScriptDebugServer::Task {
public:
DebuggerTask(WebDevToolsAgent::MessageDescriptor* descriptor) : m_descriptor(descriptor) { }
virtual ~DebuggerTask() { }
@@ -414,7 +386,7 @@ void WebDevToolsAgent::interruptAndDispatch(MessageDescriptor* d)
private:
OwnPtr<WebDevToolsAgent::MessageDescriptor> m_descriptor;
};
- WebCore::ScriptDebugServer::interruptAndRun(new DebuggerTask(d));
+ ScriptDebugServer::interruptAndRun(new DebuggerTask(d));
}
bool WebDevToolsAgent::shouldInterruptForMessage(const WebString& message)
@@ -422,19 +394,19 @@ bool WebDevToolsAgent::shouldInterruptForMessage(const WebString& message)
String commandName;
if (!InspectorBackendDispatcher::getCommandName(message, &commandName))
return false;
- return commandName == InspectorBackendDispatcher::pauseCmd
- || commandName == InspectorBackendDispatcher::setBreakpointCmd
- || commandName == InspectorBackendDispatcher::removeBreakpointCmd
- || commandName == InspectorBackendDispatcher::activateBreakpointsCmd
- || commandName == InspectorBackendDispatcher::deactivateBreakpointsCmd
- || commandName == InspectorBackendDispatcher::startProfilingCmd
- || commandName == InspectorBackendDispatcher::stopProfilingCmd
- || commandName == InspectorBackendDispatcher::getProfileCmd;
+ return commandName == InspectorBackendDispatcher::Debugger_pauseCmd
+ || commandName == InspectorBackendDispatcher::Debugger_setJavaScriptBreakpointCmd
+ || commandName == InspectorBackendDispatcher::Debugger_removeJavaScriptBreakpointCmd
+ || commandName == InspectorBackendDispatcher::Debugger_activateBreakpointsCmd
+ || commandName == InspectorBackendDispatcher::Debugger_deactivateBreakpointsCmd
+ || commandName == InspectorBackendDispatcher::Inspector_startProfilingCmd
+ || commandName == InspectorBackendDispatcher::Inspector_stopProfilingCmd
+ || commandName == InspectorBackendDispatcher::Profiler_getProfileCmd;
}
void WebDevToolsAgent::processPendingMessages()
{
- WebCore::ScriptDebugServer::shared().runPendingTasks();
+ ScriptDebugServer::shared().runPendingTasks();
}
void WebDevToolsAgent::setMessageLoopDispatchHandler(MessageLoopDispatchHandler handler)
diff --git a/Source/WebKit/chromium/src/WebDevToolsAgentImpl.h b/Source/WebKit/chromium/src/WebDevToolsAgentImpl.h
index 681eedb..2bc197d 100644
--- a/Source/WebKit/chromium/src/WebDevToolsAgentImpl.h
+++ b/Source/WebKit/chromium/src/WebDevToolsAgentImpl.h
@@ -93,8 +93,6 @@ public:
virtual void openInspectorFrontend(WebCore::InspectorController*);
virtual void highlight(WebCore::Node*);
virtual void hideHighlight();
- virtual void populateSetting(const WTF::String& key, WTF::String* value);
- virtual void storeSetting(const WTF::String& key, const WTF::String& value);
virtual void updateInspectorStateCookie(const WTF::String&);
virtual bool sendMessageToFrontend(const WTF::String&);
diff --git a/Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.cpp b/Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.cpp
index 52a4032..0c71f80 100644
--- a/Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.cpp
+++ b/Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.cpp
@@ -36,8 +36,9 @@
#include "AsyncFileSystemChromium.h"
#include "FileMetadata.h"
#include "ScriptExecutionContext.h"
-#include "WebFileSystemEntry.h"
#include "WebFileInfo.h"
+#include "WebFileSystem.h"
+#include "WebFileSystemEntry.h"
#include "WebString.h"
#include "WorkerAsyncFileSystemChromium.h"
#include <wtf/Vector.h>
@@ -46,8 +47,9 @@ using namespace WebCore;
namespace WebKit {
-WebFileSystemCallbacksImpl::WebFileSystemCallbacksImpl(PassOwnPtr<AsyncFileSystemCallbacks> callbacks, WebCore::ScriptExecutionContext* context, bool synchronous)
+WebFileSystemCallbacksImpl::WebFileSystemCallbacksImpl(PassOwnPtr<AsyncFileSystemCallbacks> callbacks, AsyncFileSystem::Type type, WebCore::ScriptExecutionContext* context, bool synchronous)
: m_callbacks(callbacks)
+ , m_type(type)
, m_context(context)
, m_synchronous(synchronous)
{
@@ -85,9 +87,9 @@ void WebFileSystemCallbacksImpl::didReadDirectory(const WebVector<WebFileSystemE
void WebFileSystemCallbacksImpl::didOpenFileSystem(const WebString& name, const WebString& path)
{
if (m_context && m_context->isWorkerContext())
- m_callbacks->didOpenFileSystem(name, WorkerAsyncFileSystemChromium::create(m_context, path, m_synchronous));
+ m_callbacks->didOpenFileSystem(name, WorkerAsyncFileSystemChromium::create(m_context, m_type, path, m_synchronous));
else
- m_callbacks->didOpenFileSystem(name, AsyncFileSystemChromium::create(path));
+ m_callbacks->didOpenFileSystem(name, AsyncFileSystemChromium::create(m_type, path));
delete this;
}
diff --git a/Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.h b/Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.h
index 75fa2bb..3e2192e 100644
--- a/Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.h
+++ b/Source/WebKit/chromium/src/WebFileSystemCallbacksImpl.h
@@ -31,6 +31,8 @@
#ifndef WebFileSystemCallbacksImpl_h
#define WebFileSystemCallbacksImpl_h
+#include "AsyncFileSystem.h"
+#include "WebFileSystem.h"
#include "WebFileSystemCallbacks.h"
#include "WebVector.h"
#include <wtf/OwnPtr.h>
@@ -49,7 +51,7 @@ class WebString;
class WebFileSystemCallbacksImpl : public WebFileSystemCallbacks {
public:
- WebFileSystemCallbacksImpl(PassOwnPtr<WebCore::AsyncFileSystemCallbacks>, WebCore::ScriptExecutionContext* = 0, bool synchronous = false);
+ WebFileSystemCallbacksImpl(PassOwnPtr<WebCore::AsyncFileSystemCallbacks>, WebCore::AsyncFileSystem::Type = WebCore::AsyncFileSystem::Temporary, WebCore::ScriptExecutionContext* = 0, bool synchronous = false);
virtual ~WebFileSystemCallbacksImpl();
virtual void didSucceed();
@@ -61,6 +63,9 @@ public:
private:
OwnPtr<WebCore::AsyncFileSystemCallbacks> m_callbacks;
+ // Used for openFileSystem callbacks.
+ WebCore::AsyncFileSystem::Type m_type;
+
// Used for worker's openFileSystem callbacks.
WebCore::ScriptExecutionContext* m_context;
bool m_synchronous;
diff --git a/Source/WebKit/chromium/src/WebFontImpl.cpp b/Source/WebKit/chromium/src/WebFontImpl.cpp
index e1fa0e7..d3555f2 100644
--- a/Source/WebKit/chromium/src/WebFontImpl.cpp
+++ b/Source/WebKit/chromium/src/WebFontImpl.cpp
@@ -34,7 +34,7 @@
#include "Font.h"
#include "FontDescription.h"
#include "GraphicsContext.h"
-#include "PlatformContextSkia.h"
+#include "painting/GraphicsContextBuilder.h"
#include "TextRun.h"
#include "WebFloatPoint.h"
#include "WebFloatRect.h"
@@ -64,27 +64,27 @@ WebFontDescription WebFontImpl::fontDescription() const
int WebFontImpl::ascent() const
{
- return m_font.ascent();
+ return m_font.fontMetrics().ascent();
}
int WebFontImpl::descent() const
{
- return m_font.descent();
+ return m_font.fontMetrics().descent();
}
int WebFontImpl::height() const
{
- return m_font.height();
+ return m_font.fontMetrics().height();
}
int WebFontImpl::lineSpacing() const
{
- return m_font.lineSpacing();
+ return m_font.fontMetrics().lineSpacing();
}
float WebFontImpl::xHeight() const
{
- return m_font.xHeight();
+ return m_font.fontMetrics().xHeight();
}
void WebFontImpl::drawText(WebCanvas* canvas, const WebTextRun& run, const WebFloatPoint& leftBaseline,
@@ -94,15 +94,9 @@ void WebFontImpl::drawText(WebCanvas* canvas, const WebTextRun& run, const WebFl
// FIXME hook canvasIsOpaque up to the platform-specific indicators for
// whether subpixel AA can be used for this draw. On Windows, this is
// PlatformContextSkia::setDrawingToImageBuffer.
-#if WEBKIT_USING_CG
- GraphicsContext gc(canvas);
-#elif WEBKIT_USING_SKIA
- PlatformContextSkia context(canvas);
- // PlatformGraphicsContext is actually a pointer to PlatformContextSkia.
- GraphicsContext gc(reinterpret_cast<PlatformGraphicsContext*>(&context));
-#else
- notImplemented();
-#endif
+
+ GraphicsContextBuilder builder(canvas);
+ GraphicsContext& gc = builder.context();
gc.save();
gc.setFillColor(color, ColorSpaceDeviceRGB);
diff --git a/Source/WebKit/chromium/src/WebFormControlElement.cpp b/Source/WebKit/chromium/src/WebFormControlElement.cpp
index a75fe5c..d2bc8ab 100644
--- a/Source/WebKit/chromium/src/WebFormControlElement.cpp
+++ b/Source/WebKit/chromium/src/WebFormControlElement.cpp
@@ -53,6 +53,11 @@ WebString WebFormControlElement::formControlType() const
return constUnwrap<HTMLFormControlElement>()->type();
}
+void WebFormControlElement::dispatchFormControlChangeEvent()
+{
+ unwrap<HTMLFormControlElement>()->dispatchFormControlChangeEvent();
+}
+
WebString WebFormControlElement::nameForAutofill() const
{
String name = constUnwrap<HTMLFormControlElement>()->name();
diff --git a/Source/WebKit/chromium/src/WebFrameImpl.cpp b/Source/WebKit/chromium/src/WebFrameImpl.cpp
index 8651fa8..c86e715 100644
--- a/Source/WebKit/chromium/src/WebFrameImpl.cpp
+++ b/Source/WebKit/chromium/src/WebFrameImpl.cpp
@@ -90,7 +90,6 @@
#include "FrameLoader.h"
#include "FrameTree.h"
#include "FrameView.h"
-#include "GraphicsContext.h"
#include "HTMLCollection.h"
#include "HTMLFormElement.h"
#include "HTMLFrameOwnerElement.h"
@@ -101,9 +100,9 @@
#include "HistoryItem.h"
#include "InspectorController.h"
#include "Page.h"
+#include "painting/GraphicsContextBuilder.h"
#include "Performance.h"
#include "PlatformBridge.h"
-#include "PlatformContextSkia.h"
#include "PluginDocument.h"
#include "PrintContext.h"
#include "RenderFrame.h"
@@ -155,10 +154,6 @@
#include <algorithm>
#include <wtf/CurrentTime.h>
-#if OS(DARWIN)
-#include "LocalCurrentGraphicsContext.h"
-#endif
-
#if OS(LINUX) || OS(FREEBSD)
#include <gdk/gdk.h>
#endif
@@ -537,7 +532,7 @@ WebURL WebFrameImpl::openSearchDescriptionURL() const
WebString WebFrameImpl::encoding() const
{
- return frame()->loader()->writer()->encoding();
+ return frame()->document()->loader()->writer()->encoding();
}
WebSize WebFrameImpl::scrollOffset() const
@@ -685,12 +680,14 @@ void WebFrameImpl::forms(WebVector<WebFormElement>& results) const
}
WebVector<WebFormElement> temp(formCount);
- for (size_t i = 0; i < formCount; ++i) {
- Node* node = forms->item(i);
+ size_t j = 0;
+ for (size_t sourceIndex = 0; j < forms->length(); ++sourceIndex) {
+ Node* node = forms->item(sourceIndex);
// Strange but true, sometimes item can be 0.
if (node && node->isHTMLElement())
- temp[i] = static_cast<HTMLFormElement*>(node);
+ temp[j++] = static_cast<HTMLFormElement*>(node);
}
+ ASSERT(j == formCount);
results.swap(temp);
}
@@ -884,17 +881,6 @@ void WebFrameImpl::loadHistoryItem(const WebHistoryItem& item)
RefPtr<HistoryItem> historyItem = PassRefPtr<HistoryItem>(item);
ASSERT(historyItem.get());
- // Sanity check for http://webkit.org/b/52819. It appears that some child
- // items of this item might be null. Try validating just the first set of
- // children in an attempt to catch it early.
- const HistoryItemVector& childItems = historyItem->children();
- int size = childItems.size();
- for (int i = 0; i < size; ++i) {
- RefPtr<HistoryItem> childItem = childItems[i].get();
- if (!childItem.get())
- CRASH();
- }
-
// If there is no currentItem, which happens when we are navigating in
// session history after a crash, we need to manufacture one otherwise WebKit
// hoarks. This is probably the wrong thing to do, but it seems to work.
@@ -1349,15 +1335,7 @@ float WebFrameImpl::printPage(int page, WebCanvas* canvas)
return 0;
}
-#if OS(WINDOWS) || OS(LINUX) || OS(FREEBSD) || OS(SOLARIS)
- PlatformContextSkia context(canvas);
- GraphicsContext spool(&context);
-#elif OS(DARWIN)
- GraphicsContext spool(canvas);
- LocalCurrentGraphicsContext localContext(&spool);
-#endif
-
- return m_printContext->spoolPage(spool, page);
+ return m_printContext->spoolPage(GraphicsContextBuilder(canvas).context(), page);
}
void WebFrameImpl::printEnd()
@@ -1542,6 +1520,9 @@ void WebFrameImpl::scopeStringMatches(int identifier,
RefPtr<Range> searchRange(rangeOfContents(frame()->document()));
+ Node* originalEndContainer = searchRange->endContainer();
+ int originalEndOffset = searchRange->endOffset();
+
ExceptionCode ec = 0, ec2 = 0;
if (m_resumeScopingFromRange.get()) {
// This is a continuation of a scoping operation that timed out and didn't
@@ -1556,9 +1537,6 @@ void WebFrameImpl::scopeStringMatches(int identifier,
}
}
- Node* originalEndContainer = searchRange->endContainer();
- int originalEndOffset = searchRange->endOffset();
-
// This timeout controls how long we scope before releasing control. This
// value does not prevent us from running for longer than this, but it is
// periodically checked to see if we have exceeded our allocated time.
@@ -1932,18 +1910,7 @@ void WebFrameImpl::paint(WebCanvas* canvas, const WebRect& rect)
{
if (rect.isEmpty())
return;
-#if WEBKIT_USING_CG
- GraphicsContext gc(canvas);
- LocalCurrentGraphicsContext localContext(&gc);
-#elif WEBKIT_USING_SKIA
- PlatformContextSkia context(canvas);
-
- // PlatformGraphicsContext is actually a pointer to PlatformContextSkia
- GraphicsContext gc(reinterpret_cast<PlatformGraphicsContext*>(&context));
-#else
- notImplemented();
-#endif
- paintWithContext(gc, rect);
+ paintWithContext(GraphicsContextBuilder(canvas).context(), rect);
}
void WebFrameImpl::createFrameView()
@@ -1985,7 +1952,7 @@ void WebFrameImpl::createFrameView()
view->setParentVisible(true);
}
-WebFrameImpl* WebFrameImpl::fromFrame(Frame* frame)
+WebFrameImpl* WebFrameImpl::fromFrame(const Frame* frame)
{
if (!frame)
return 0;
@@ -2133,7 +2100,7 @@ void WebFrameImpl::invalidateArea(AreaToInvalidate area)
IntRect contentArea(
view->x(), view->y(), view->visibleWidth(), view->visibleHeight());
IntRect frameRect = view->frameRect();
- contentArea.move(-frameRect.topLeft().x(), -frameRect.topLeft().y());
+ contentArea.move(-frameRect.x(), -frameRect.y());
view->invalidateRect(contentArea);
}
@@ -2144,7 +2111,7 @@ void WebFrameImpl::invalidateArea(AreaToInvalidate area)
ScrollbarTheme::nativeTheme()->scrollbarThickness(),
view->visibleHeight());
IntRect frameRect = view->frameRect();
- scrollBarVert.move(-frameRect.topLeft().x(), -frameRect.topLeft().y());
+ scrollBarVert.move(-frameRect.x(), -frameRect.y());
view->invalidateRect(scrollBarVert);
}
}
@@ -2298,7 +2265,7 @@ void WebFrameImpl::loadJavaScriptURL(const KURL& url)
return;
if (!m_frame->navigationScheduler()->locationChangePending())
- m_frame->loader()->writer()->replaceDocument(scriptResult);
+ m_frame->document()->loader()->writer()->replaceDocument(scriptResult);
}
} // namespace WebKit
diff --git a/Source/WebKit/chromium/src/WebFrameImpl.h b/Source/WebKit/chromium/src/WebFrameImpl.h
index b7ac100..e7c92b0 100644
--- a/Source/WebKit/chromium/src/WebFrameImpl.h
+++ b/Source/WebKit/chromium/src/WebFrameImpl.h
@@ -209,7 +209,7 @@ public:
void paintWithContext(WebCore::GraphicsContext&, const WebRect&);
void createFrameView();
- static WebFrameImpl* fromFrame(WebCore::Frame* frame);
+ static WebFrameImpl* fromFrame(const WebCore::Frame*);
static WebFrameImpl* fromFrameOwnerElement(WebCore::Element* element);
// If the frame hosts a PluginDocument, this method returns the WebPluginContainerImpl
diff --git a/Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp b/Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp
index 14ed02e..bb7a19b 100644
--- a/Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp
+++ b/Source/WebKit/chromium/src/WebIDBCallbacksImpl.cpp
@@ -61,11 +61,6 @@ void WebIDBCallbacksImpl::onError(const WebKit::WebIDBDatabaseError& error)
m_callbacks->onError(error);
}
-void WebIDBCallbacksImpl::onSuccess()
-{
- m_callbacks->onSuccess();
-}
-
void WebIDBCallbacksImpl::onSuccess(WebKit::WebIDBCursor* cursor)
{
m_callbacks->onSuccess(IDBCursorBackendProxy::create(cursor));
diff --git a/Source/WebKit/chromium/src/WebIDBCallbacksImpl.h b/Source/WebKit/chromium/src/WebIDBCallbacksImpl.h
index 33a72f4..d2ae255 100644
--- a/Source/WebKit/chromium/src/WebIDBCallbacksImpl.h
+++ b/Source/WebKit/chromium/src/WebIDBCallbacksImpl.h
@@ -42,7 +42,6 @@ public:
virtual ~WebIDBCallbacksImpl();
virtual void onError(const WebKit::WebIDBDatabaseError&);
- virtual void onSuccess(); // For "null".
virtual void onSuccess(WebKit::WebIDBCursor*);
virtual void onSuccess(WebKit::WebIDBDatabase*);
virtual void onSuccess(const WebKit::WebIDBKey&);
diff --git a/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp b/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp
index fa7a200..7f794d9 100644
--- a/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp
+++ b/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp
@@ -84,10 +84,10 @@ void WebIDBDatabaseImpl::setVersion(const WebString& version, WebIDBCallbacks* c
m_databaseBackend->setVersion(version, IDBCallbacksProxy::create(callbacks), ec);
}
-WebIDBTransaction* WebIDBDatabaseImpl::transaction(const WebDOMStringList& names, unsigned short mode, unsigned long timeout, WebExceptionCode& ec)
+WebIDBTransaction* WebIDBDatabaseImpl::transaction(const WebDOMStringList& names, unsigned short mode, WebExceptionCode& ec)
{
RefPtr<DOMStringList> nameList = PassRefPtr<DOMStringList>(names);
- RefPtr<IDBTransactionBackendInterface> transaction = m_databaseBackend->transaction(nameList.get(), mode, timeout, ec);
+ RefPtr<IDBTransactionBackendInterface> transaction = m_databaseBackend->transaction(nameList.get(), mode, ec);
if (!transaction) {
ASSERT(ec);
return 0;
diff --git a/Source/WebKit/chromium/src/WebIDBDatabaseImpl.h b/Source/WebKit/chromium/src/WebIDBDatabaseImpl.h
index 64e0b2e..2dc27d5 100644
--- a/Source/WebKit/chromium/src/WebIDBDatabaseImpl.h
+++ b/Source/WebKit/chromium/src/WebIDBDatabaseImpl.h
@@ -52,7 +52,7 @@ public:
virtual WebIDBObjectStore* createObjectStore(const WebString& name, const WebString& keyPath, bool autoIncrement, const WebIDBTransaction&, WebExceptionCode&);
virtual void deleteObjectStore(const WebString& name, const WebIDBTransaction&, WebExceptionCode&);
virtual void setVersion(const WebString& version, WebIDBCallbacks* callbacks, WebExceptionCode&);
- virtual WebIDBTransaction* transaction(const WebDOMStringList& names, unsigned short mode, unsigned long timeout, WebExceptionCode&);
+ virtual WebIDBTransaction* transaction(const WebDOMStringList& names, unsigned short mode, WebExceptionCode&);
virtual void close();
private:
diff --git a/Source/WebKit/chromium/src/WebIDBObjectStoreImpl.cpp b/Source/WebKit/chromium/src/WebIDBObjectStoreImpl.cpp
index 0503ede..9fe6166 100755
--- a/Source/WebKit/chromium/src/WebIDBObjectStoreImpl.cpp
+++ b/Source/WebKit/chromium/src/WebIDBObjectStoreImpl.cpp
@@ -71,9 +71,9 @@ void WebIDBObjectStoreImpl::get(const WebIDBKey& key, WebIDBCallbacks* callbacks
m_objectStore->get(key, IDBCallbacksProxy::create(callbacks), transaction.getIDBTransactionBackendInterface(), ec);
}
-void WebIDBObjectStoreImpl::put(const WebSerializedScriptValue& value, const WebIDBKey& key, bool addOnly, WebIDBCallbacks* callbacks, const WebIDBTransaction& transaction, WebExceptionCode& ec)
+void WebIDBObjectStoreImpl::put(const WebSerializedScriptValue& value, const WebIDBKey& key, PutMode putMode, WebIDBCallbacks* callbacks, const WebIDBTransaction& transaction, WebExceptionCode& ec)
{
- m_objectStore->put(value, key, addOnly, IDBCallbacksProxy::create(callbacks), transaction.getIDBTransactionBackendInterface(), ec);
+ m_objectStore->put(value, key, static_cast<IDBObjectStoreBackendInterface::PutMode>(putMode), IDBCallbacksProxy::create(callbacks), transaction.getIDBTransactionBackendInterface(), ec);
}
void WebIDBObjectStoreImpl::deleteFunction(const WebIDBKey& key, WebIDBCallbacks* callbacks, const WebIDBTransaction& transaction, WebExceptionCode& ec)
@@ -81,6 +81,11 @@ void WebIDBObjectStoreImpl::deleteFunction(const WebIDBKey& key, WebIDBCallbacks
m_objectStore->deleteFunction(key, IDBCallbacksProxy::create(callbacks), transaction.getIDBTransactionBackendInterface(), ec);
}
+void WebIDBObjectStoreImpl::clear(WebIDBCallbacks* callbacks, const WebIDBTransaction& transaction, WebExceptionCode& ec)
+{
+ m_objectStore->clear(IDBCallbacksProxy::create(callbacks), transaction.getIDBTransactionBackendInterface(), ec);
+}
+
WebIDBIndex* WebIDBObjectStoreImpl::createIndex(const WebString& name, const WebString& keyPath, bool unique, const WebIDBTransaction& transaction, WebExceptionCode& ec)
{
RefPtr<IDBIndexBackendInterface> index = m_objectStore->createIndex(name, keyPath, unique, transaction.getIDBTransactionBackendInterface(), ec);
diff --git a/Source/WebKit/chromium/src/WebIDBObjectStoreImpl.h b/Source/WebKit/chromium/src/WebIDBObjectStoreImpl.h
index f9cd776..3e2dfab 100755
--- a/Source/WebKit/chromium/src/WebIDBObjectStoreImpl.h
+++ b/Source/WebKit/chromium/src/WebIDBObjectStoreImpl.h
@@ -48,8 +48,9 @@ public:
WebDOMStringList indexNames() const;
void get(const WebIDBKey& key, WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&);
- void put(const WebSerializedScriptValue&, const WebIDBKey& key, bool addOnly, WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&);
+ void put(const WebSerializedScriptValue&, const WebIDBKey&, PutMode, WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&);
void deleteFunction(const WebIDBKey& key, WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&);
+ void clear(WebIDBCallbacks*, const WebIDBTransaction&, WebExceptionCode&);
WebIDBIndex* createIndex(const WebString& name, const WebString& keyPath, bool unique, const WebIDBTransaction&, WebExceptionCode&);
WebIDBIndex* index(const WebString& name, WebExceptionCode&);
diff --git a/Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.cpp b/Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.cpp
index 96924cf..848182e 100644
--- a/Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.cpp
+++ b/Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.cpp
@@ -51,11 +51,6 @@ void WebIDBTransactionCallbacksImpl::onComplete()
m_callbacks->onComplete();
}
-void WebIDBTransactionCallbacksImpl::onTimeout()
-{
- m_callbacks->onTimeout();
-}
-
} // namespace WebCore
#endif // ENABLE(INDEXED_DATABASE)
diff --git a/Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.h b/Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.h
index 89b9cbe..416ac3c 100644
--- a/Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.h
+++ b/Source/WebKit/chromium/src/WebIDBTransactionCallbacksImpl.h
@@ -43,7 +43,6 @@ public:
virtual void onAbort();
virtual void onComplete();
- virtual void onTimeout();
private:
RefPtr<IDBTransactionCallbacks> m_callbacks;
diff --git a/Source/WebKit/chromium/src/WebIconLoadingCompletionImpl.cpp b/Source/WebKit/chromium/src/WebIconLoadingCompletionImpl.cpp
new file mode 100644
index 0000000..c1dd321
--- /dev/null
+++ b/Source/WebKit/chromium/src/WebIconLoadingCompletionImpl.cpp
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2011 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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.
+ */
+
+#include "config.h"
+#include "WebIconLoadingCompletionImpl.h"
+
+#include "BitmapImage.h"
+#include "Icon.h"
+#include "SharedBuffer.h"
+
+using namespace WebCore;
+
+namespace WebKit {
+
+WebIconLoadingCompletionImpl::WebIconLoadingCompletionImpl(FileChooser* chooser)
+ : m_fileChooser(chooser)
+{
+}
+
+WebIconLoadingCompletionImpl::~WebIconLoadingCompletionImpl()
+{
+}
+
+void WebIconLoadingCompletionImpl::didLoadIcon(const WebData& iconData)
+{
+ if (!iconData.isEmpty()) {
+ RefPtr<Image> image = BitmapImage::create();
+ image->setData(iconData, true);
+ m_fileChooser->iconLoaded(Icon::create(image));
+ }
+ // This object is no longer needed.
+ delete this;
+}
+
+} // namespace WebKit
diff --git a/Source/WebKit/chromium/src/WebIconLoadingCompletionImpl.h b/Source/WebKit/chromium/src/WebIconLoadingCompletionImpl.h
new file mode 100644
index 0000000..6e6f3a8
--- /dev/null
+++ b/Source/WebKit/chromium/src/WebIconLoadingCompletionImpl.h
@@ -0,0 +1,57 @@
+/*
+ * Copyright (C) 2011 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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 WebIconLoadingCompletionImpl_h
+#define WebIconLoadingCompletionImpl_h
+
+#include "FileChooser.h"
+#include "WebData.h"
+#include "WebIconLoadingCompletion.h"
+#include <wtf/PassRefPtr.h>
+
+using WebKit::WebIconLoadingCompletion;
+using WebKit::WebData;
+
+namespace WebKit {
+
+class WebIconLoadingCompletionImpl : public WebIconLoadingCompletion {
+public:
+ WebIconLoadingCompletionImpl(WebCore::FileChooser*);
+ virtual void didLoadIcon(const WebData&);
+
+private:
+ ~WebIconLoadingCompletionImpl();
+
+ RefPtr<WebCore::FileChooser> m_fileChooser;
+};
+
+} // namespace WebKit
+
+#endif
diff --git a/Source/WebKit/chromium/src/WebImageCG.cpp b/Source/WebKit/chromium/src/WebImageCG.cpp
index 045c8be..dda829f 100644
--- a/Source/WebKit/chromium/src/WebImageCG.cpp
+++ b/Source/WebKit/chromium/src/WebImageCG.cpp
@@ -49,20 +49,38 @@ namespace WebKit {
WebImage WebImage::fromData(const WebData& data, const WebSize& desiredSize)
{
- // FIXME: Do something like what WebImageSkia.cpp does to enumerate frames.
- // Not sure whether the CG decoder uses the same frame ordering rules (if so
- // we can just use the same logic).
-
ImageSource source;
source.setData(PassRefPtr<SharedBuffer>(data).get(), true);
if (!source.isSizeAvailable())
return WebImage();
- RetainPtr<CGImageRef> frame0(AdoptCF, source.createFrameAtIndex(0));
- if (!frame0)
+ // Frames are arranged by decreasing size, then decreasing bit depth.
+ // Pick the frame closest to |desiredSize|'s area without being smaller,
+ // which has the highest bit depth.
+ const size_t frameCount = source.frameCount();
+ size_t index = 0; // Default to first frame if none are large enough.
+ int frameAreaAtIndex = 0;
+ for (size_t i = 0; i < frameCount; ++i) {
+ const IntSize frameSize = source.frameSizeAtIndex(i);
+ if (WebSize(frameSize) == desiredSize) {
+ index = i;
+ break; // Perfect match.
+ }
+ const int frameArea = frameSize.width() * frameSize.height();
+ if (frameArea < (desiredSize.width * desiredSize.height))
+ break; // No more frames that are large enough.
+
+ if (!i || (frameArea < frameAreaAtIndex)) {
+ index = i; // Closer to desired area than previous best match.
+ frameAreaAtIndex = frameArea;
+ }
+ }
+
+ RetainPtr<CGImageRef> frame(AdoptCF, source.createFrameAtIndex(index));
+ if (!frame)
return WebImage();
- return WebImage(frame0.get());
+ return WebImage(frame.get());
}
void WebImage::reset()
diff --git a/Source/WebKit/chromium/src/WebInputElement.cpp b/Source/WebKit/chromium/src/WebInputElement.cpp
index 8d89c60..7e91a17 100644
--- a/Source/WebKit/chromium/src/WebInputElement.cpp
+++ b/Source/WebKit/chromium/src/WebInputElement.cpp
@@ -135,11 +135,6 @@ void WebInputElement::setAutofilled(bool autoFilled)
unwrap<HTMLInputElement>()->setAutofilled(autoFilled);
}
-void WebInputElement::dispatchFormControlChangeEvent()
-{
- unwrap<HTMLInputElement>()->dispatchFormControlChangeEvent();
-}
-
void WebInputElement::setSelectionRange(int start, int end)
{
unwrap<HTMLInputElement>()->setSelectionRange(start, end);
@@ -160,7 +155,10 @@ bool WebInputElement::isValidValue(const WebString& value) const
return constUnwrap<HTMLInputElement>()->isValidValue(value);
}
-const int WebInputElement::defaultMaxLength = HTMLInputElement::s_maximumLength;
+int WebInputElement::defaultMaxLength()
+{
+ return HTMLInputElement::s_maximumLength;
+}
WebInputElement::WebInputElement(const PassRefPtr<HTMLInputElement>& elem)
: WebFormControlElement(elem)
@@ -178,4 +176,15 @@ WebInputElement::operator PassRefPtr<HTMLInputElement>() const
return static_cast<HTMLInputElement*>(m_private.get());
}
+WebInputElement* toWebInputElement(WebElement* webElement)
+{
+ InputElement* inputElement = toInputElement(webElement->unwrap<Element>());
+ if (!inputElement)
+ return 0;
+
+ ASSERT(webElement->unwrap<Element>()->isHTMLElement());
+
+ return static_cast<WebInputElement*>(webElement);
+}
+
} // namespace WebKit
diff --git a/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.cpp b/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.cpp
index 65f0fde..853cbcf 100644
--- a/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.cpp
+++ b/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.cpp
@@ -144,7 +144,7 @@ void WebMediaPlayerClientImpl::repaint()
ASSERT(m_mediaPlayer);
#if USE(ACCELERATED_COMPOSITING)
if (m_videoLayer.get() && supportsAcceleratedRendering())
- m_videoLayer->setNeedsDisplay(FloatRect(0, 0, m_videoLayer->bounds().width(), m_videoLayer->bounds().height()));
+ m_videoLayer->setNeedsDisplay(IntRect(0, 0, m_videoLayer->bounds().width(), m_videoLayer->bounds().height()));
#endif
m_mediaPlayer->repaint();
}
@@ -397,6 +397,17 @@ void WebMediaPlayerClientImpl::setSize(const IntSize& size)
void WebMediaPlayerClientImpl::paint(GraphicsContext* context, const IntRect& rect)
{
+#if USE(ACCELERATED_COMPOSITING)
+ // If we are using GPU to render video, ignore requests to paint frames into
+ // canvas because it will be taken care of by VideoLayerChromium.
+ if (acceleratedRenderingInUse())
+ return;
+#endif
+ paintCurrentFrameInContext(context, rect);
+}
+
+void WebMediaPlayerClientImpl::paintCurrentFrameInContext(GraphicsContext* context, const IntRect& rect)
+{
// Normally GraphicsContext operations do nothing when painting is disabled.
// Since we're accessing platformContext() directly we have to manually
// check.
@@ -445,6 +456,11 @@ bool WebMediaPlayerClientImpl::supportsAcceleratedRendering() const
return m_supportsAcceleratedCompositing;
}
+bool WebMediaPlayerClientImpl::acceleratedRenderingInUse()
+{
+ return m_videoLayer.get() && m_videoLayer->layerRenderer();
+}
+
VideoFrameChromium* WebMediaPlayerClientImpl::getCurrentFrame()
{
VideoFrameChromium* videoFrame = 0;
diff --git a/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.h b/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.h
index ca7c43c..fcdb219 100644
--- a/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.h
+++ b/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.h
@@ -111,6 +111,7 @@ public:
virtual unsigned bytesLoaded() const;
virtual void setSize(const WebCore::IntSize&);
virtual void paint(WebCore::GraphicsContext*, const WebCore::IntRect&);
+ virtual void paintCurrentFrameInContext(WebCore::GraphicsContext*, const WebCore::IntRect&);
virtual bool hasSingleSecurityOrigin() const;
virtual WebCore::MediaPlayer::MovieLoadType movieLoadType() const;
#if USE(ACCELERATED_COMPOSITING)
@@ -128,6 +129,9 @@ private:
static void getSupportedTypes(WTF::HashSet<WTF::String>&);
static WebCore::MediaPlayer::SupportsType supportsType(
const WTF::String& type, const WTF::String& codecs);
+#if USE(ACCELERATED_COMPOSITING)
+ bool acceleratedRenderingInUse();
+#endif
WebCore::MediaPlayer* m_mediaPlayer;
OwnPtr<WebMediaPlayer> m_webMediaPlayer;
diff --git a/Source/WebKit/chromium/src/WebNotification.cpp b/Source/WebKit/chromium/src/WebNotification.cpp
index c3b1f51..1f2640c 100644
--- a/Source/WebKit/chromium/src/WebNotification.cpp
+++ b/Source/WebKit/chromium/src/WebNotification.cpp
@@ -96,12 +96,6 @@ WebString WebNotification::body() const
return m_private->contents().body();
}
-// FIXME: remove dir() when unreferenced. Being replaced by direction().
-WebString WebNotification::dir() const
-{
- return m_private->dir();
-}
-
WebTextDirection WebNotification::direction() const
{
return (m_private->direction() == RTL) ?
diff --git a/Source/WebKit/chromium/src/WebPageSerializerImpl.cpp b/Source/WebKit/chromium/src/WebPageSerializerImpl.cpp
index 0d85d78..7ea9a8c 100644
--- a/Source/WebKit/chromium/src/WebPageSerializerImpl.cpp
+++ b/Source/WebKit/chromium/src/WebPageSerializerImpl.cpp
@@ -168,7 +168,7 @@ String WebPageSerializerImpl::preActionBeforeSerializeOpenTag(
// Get encoding info.
String xmlEncoding = param->document->xmlEncoding();
if (xmlEncoding.isEmpty())
- xmlEncoding = param->document->frame()->loader()->writer()->encoding();
+ xmlEncoding = param->document->loader()->writer()->encoding();
if (xmlEncoding.isEmpty())
xmlEncoding = UTF8Encoding().name();
result.append("<?xml version=\"");
@@ -505,7 +505,7 @@ bool WebPageSerializerImpl::serialize()
didSerialization = true;
- String encoding = webFrame->frame()->loader()->writer()->encoding();
+ String encoding = document->loader()->writer()->encoding();
const TextEncoding& textEncoding = encoding.isEmpty() ? UTF8Encoding() : TextEncoding(encoding);
String directoryName = url == mainURL ? m_localDirectoryName : "";
diff --git a/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp b/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp
index 5f62077..bb1b083 100644
--- a/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp
+++ b/Source/WebKit/chromium/src/WebPluginContainerImpl.cpp
@@ -63,12 +63,14 @@
#include "HTMLFormElement.h"
#include "HTMLNames.h"
#include "HTMLPlugInElement.h"
+#include "IFrameShimSupport.h"
#include "KeyboardCodes.h"
#include "KeyboardEvent.h"
#include "MouseEvent.h"
#include "Page.h"
#include "RenderBox.h"
#include "ScrollView.h"
+#include "UserGestureIndicator.h"
#include "WheelEvent.h"
#if WEBKIT_USING_SKIA
@@ -127,14 +129,12 @@ void WebPluginContainerImpl::invalidateRect(const IntRect& rect)
if (!parent())
return;
- IntRect damageRect = convertToContainingWindow(rect);
+ RenderBox* renderer = toRenderBox(m_element->renderer());
- // Get our clip rect and intersect with it to ensure we don't invalidate
- // too much.
- IntRect clipRect = parent()->windowClipRect();
- damageRect.intersect(clipRect);
-
- parent()->hostWindow()->invalidateContentsAndWindow(damageRect, false /*immediate*/);
+ IntRect dirtyRect = rect;
+ dirtyRect.move(renderer->borderLeft() + renderer->paddingLeft(),
+ renderer->borderTop() + renderer->paddingTop());
+ renderer->repaintRectangle(dirtyRect);
}
void WebPluginContainerImpl::setFocus(bool focused)
@@ -368,6 +368,9 @@ void WebPluginContainerImpl::loadFrameRequest(
FrameLoadRequest frameRequest(frame->document()->securityOrigin(),
request.toResourceRequest(), target);
+ UserGestureIndicator gestureIndicator(request.hasUserGesture() ?
+ DefinitelyProcessingUserGesture : DefinitelyNotProcessingUserGesture);
+
frame->loader()->loadFrameRequest(
frameRequest,
false, // lock history
@@ -552,7 +555,7 @@ void WebPluginContainerImpl::calculateGeometry(const IntRect& frameRect,
clipRect = windowClipRect();
clipRect.move(-windowRect.x(), -windowRect.y());
- windowCutOutRects(frameRect, cutOutRects);
+ getPluginOcclusions(m_element, this->parent(), frameRect, cutOutRects);
// Convert to the plugin position.
for (size_t i = 0; i < cutOutRects.size(); i++)
cutOutRects[i].move(-frameRect.x(), -frameRect.y());
@@ -577,132 +580,4 @@ WebCore::IntRect WebPluginContainerImpl::windowClipRect() const
return clipRect;
}
-static void getObjectStack(const RenderObject* ro,
- Vector<const RenderObject*>* roStack)
-{
- roStack->clear();
- while (ro) {
- roStack->append(ro);
- ro = ro->parent();
- }
-}
-
-// Returns true if stack1 is at or above stack2
-static bool checkStackOnTop(
- const Vector<const RenderObject*>& iframeZstack,
- const Vector<const RenderObject*>& pluginZstack)
-{
- for (size_t i1 = 0, i2 = 0;
- i1 < iframeZstack.size() && i2 < pluginZstack.size();
- i1++, i2++) {
- // The root is at the end of these stacks. We want to iterate
- // root-downwards so we index backwards from the end.
- const RenderObject* ro1 = iframeZstack[iframeZstack.size() - 1 - i1];
- const RenderObject* ro2 = pluginZstack[pluginZstack.size() - 1 - i2];
-
- if (ro1 != ro2) {
- // When we find nodes in the stack that are not the same, then
- // we've found the nodes just below the lowest comment ancestor.
- // Determine which should be on top.
-
- // See if z-index determines an order.
- if (ro1->style() && ro2->style()) {
- int z1 = ro1->style()->zIndex();
- int z2 = ro2->style()->zIndex();
- if (z1 > z2)
- return true;
- if (z1 < z2)
- return false;
- }
-
- // If the plugin does not have an explicit z-index it stacks behind the iframe.
- // This is for maintaining compatibility with IE.
- if (ro2->style()->position() == StaticPosition) {
- // The 0'th elements of these RenderObject arrays represent the plugin node and
- // the iframe.
- const RenderObject* pluginRenderObject = pluginZstack[0];
- const RenderObject* iframeRenderObject = iframeZstack[0];
-
- if (pluginRenderObject->style() && iframeRenderObject->style()) {
- if (pluginRenderObject->style()->zIndex() > iframeRenderObject->style()->zIndex())
- return false;
- }
- return true;
- }
-
- // Inspect the document order. Later order means higher
- // stacking.
- const RenderObject* parent = ro1->parent();
- if (!parent)
- return false;
- ASSERT(parent == ro2->parent());
-
- for (const RenderObject* ro = parent->firstChild(); ro; ro = ro->nextSibling()) {
- if (ro == ro1)
- return false;
- if (ro == ro2)
- return true;
- }
- ASSERT(false); // We should have seen ro1 and ro2 by now.
- return false;
- }
- }
- return true;
-}
-
-// Return a set of rectangles that should not be overdrawn by the
-// plugin ("cutouts"). This helps implement the "iframe shim"
-// technique of overlaying a windowed plugin with content from the
-// page. In a nutshell, iframe elements should occlude plugins when
-// they occur higher in the stacking order.
-void WebPluginContainerImpl::windowCutOutRects(const IntRect& frameRect,
- Vector<IntRect>& cutOutRects)
-{
- RenderObject* pluginNode = m_element->renderer();
- ASSERT(pluginNode);
- if (!pluginNode->style())
- return;
- Vector<const RenderObject*> pluginZstack;
- Vector<const RenderObject*> iframeZstack;
- getObjectStack(pluginNode, &pluginZstack);
-
- // Get the parent widget
- Widget* parentWidget = this->parent();
- if (!parentWidget->isFrameView())
- return;
-
- FrameView* parentFrameView = static_cast<FrameView*>(parentWidget);
-
- const HashSet<RefPtr<Widget> >* children = parentFrameView->children();
- for (HashSet<RefPtr<Widget> >::const_iterator it = children->begin(); it != children->end(); ++it) {
- // We only care about FrameView's because iframes show up as FrameViews.
- if (!(*it)->isFrameView())
- continue;
-
- const FrameView* frameView =
- static_cast<const FrameView*>((*it).get());
- // Check to make sure we can get both the element and the RenderObject
- // for this FrameView, if we can't just move on to the next object.
- if (!frameView->frame() || !frameView->frame()->ownerElement()
- || !frameView->frame()->ownerElement()->renderer())
- continue;
-
- HTMLElement* element = frameView->frame()->ownerElement();
- RenderObject* iframeRenderer = element->renderer();
-
- if (element->hasTagName(HTMLNames::iframeTag)
- && iframeRenderer->absoluteBoundingBoxRect().intersects(frameRect)
- && (!iframeRenderer->style() || iframeRenderer->style()->visibility() == VISIBLE)) {
- getObjectStack(iframeRenderer, &iframeZstack);
- if (checkStackOnTop(iframeZstack, pluginZstack)) {
- IntPoint point =
- roundedIntPoint(iframeRenderer->localToAbsolute());
- RenderBox* rbox = toRenderBox(iframeRenderer);
- IntSize size(rbox->width(), rbox->height());
- cutOutRects.append(IntRect(point, size));
- }
- }
- }
-}
-
} // namespace WebKit
diff --git a/Source/WebKit/chromium/src/WebPopupMenuImpl.cpp b/Source/WebKit/chromium/src/WebPopupMenuImpl.cpp
index a209e6a..b4d4246 100644
--- a/Source/WebKit/chromium/src/WebPopupMenuImpl.cpp
+++ b/Source/WebKit/chromium/src/WebPopupMenuImpl.cpp
@@ -35,7 +35,7 @@
#include "FramelessScrollView.h"
#include "FrameView.h"
#include "IntRect.h"
-#include "PlatformContextSkia.h"
+#include "painting/GraphicsContextBuilder.h"
#include "PlatformKeyboardEvent.h"
#include "PlatformMouseEvent.h"
#include "PlatformWheelEvent.h"
@@ -141,13 +141,13 @@ void WebPopupMenuImpl::resize(const WebSize& newSize)
m_size = newSize;
if (m_widget) {
- IntRect newGeometry(0, 0, m_size.width, m_size.height);
- m_widget->setFrameRect(newGeometry);
+ IntRect newGeometry(0, 0, m_size.width, m_size.height);
+ m_widget->setFrameRect(newGeometry);
}
if (m_client) {
- WebRect damagedRect(0, 0, m_size.width, m_size.height);
- m_client->didInvalidateRect(damagedRect);
+ WebRect damagedRect(0, 0, m_size.width, m_size.height);
+ m_client->didInvalidateRect(damagedRect);
}
}
@@ -164,18 +164,8 @@ void WebPopupMenuImpl::paint(WebCanvas* canvas, const WebRect& rect)
if (!m_widget)
return;
- if (!rect.isEmpty()) {
-#if WEBKIT_USING_CG
- GraphicsContext gc(canvas);
-#elif WEBKIT_USING_SKIA
- PlatformContextSkia context(canvas);
- // PlatformGraphicsContext is actually a pointer to PlatformContextSkia.
- GraphicsContext gc(reinterpret_cast<PlatformGraphicsContext*>(&context));
-#else
- notImplemented();
-#endif
- m_widget->paint(&gc, rect);
- }
+ if (!rect.isEmpty())
+ m_widget->paint(&GraphicsContextBuilder(canvas).context(), rect);
}
void WebPopupMenuImpl::themeChanged()
diff --git a/Source/WebKit/chromium/src/WebRuntimeFeatures.cpp b/Source/WebKit/chromium/src/WebRuntimeFeatures.cpp
index 0b5d397..e3ece6e 100644
--- a/Source/WebKit/chromium/src/WebRuntimeFeatures.cpp
+++ b/Source/WebKit/chromium/src/WebRuntimeFeatures.cpp
@@ -202,14 +202,14 @@ bool WebRuntimeFeatures::isWebAudioEnabled()
void WebRuntimeFeatures::enableWebGL(bool enable)
{
-#if ENABLE(3D_CANVAS)
+#if ENABLE(WEBGL)
RuntimeEnabledFeatures::setWebGLEnabled(enable);
#endif
}
bool WebRuntimeFeatures::isWebGLEnabled()
{
-#if ENABLE(3D_CANVAS)
+#if ENABLE(WEBGL)
return RuntimeEnabledFeatures::webGLRenderingContextEnabled();
#else
return false;
@@ -304,4 +304,20 @@ bool WebRuntimeFeatures::isFileSystemEnabled()
#endif
}
+void WebRuntimeFeatures::enableJavaScriptI18NAPI(bool enable)
+{
+#if ENABLE(JAVASCRIPT_I18N_API)
+ RuntimeEnabledFeatures::setJavaScriptI18NAPIEnabled(enable);
+#endif
+}
+
+bool WebRuntimeFeatures::isJavaScriptI18NAPIEnabled()
+{
+#if ENABLE(JAVASCRIPT_I18N_API)
+ return RuntimeEnabledFeatures::javaScriptI18NAPIEnabled();
+#else
+ return false;
+#endif
+}
+
} // namespace WebKit
diff --git a/Source/WebKit/chromium/src/WebScrollbarImpl.cpp b/Source/WebKit/chromium/src/WebScrollbarImpl.cpp
index 05d2d1f..57ea92e 100644
--- a/Source/WebKit/chromium/src/WebScrollbarImpl.cpp
+++ b/Source/WebKit/chromium/src/WebScrollbarImpl.cpp
@@ -33,7 +33,7 @@
#include "GraphicsContext.h"
#include "KeyboardCodes.h"
-#include "PlatformContextSkia.h"
+#include "painting/GraphicsContextBuilder.h"
#include "Scrollbar.h"
#include "ScrollbarTheme.h"
#include "ScrollTypes.h"
@@ -76,7 +76,7 @@ WebScrollbarImpl::~WebScrollbarImpl()
void WebScrollbarImpl::setLocation(const WebRect& rect)
{
- WebCore::IntRect oldRect = m_scrollbar->frameRect();
+ IntRect oldRect = m_scrollbar->frameRect();
m_scrollbar->setFrameRect(rect);
if (WebRect(oldRect) != rect)
m_scrollbar->invalidate();
@@ -95,7 +95,7 @@ int WebScrollbarImpl::value() const
void WebScrollbarImpl::setValue(int position)
{
- WebCore::ScrollableArea::scrollToOffsetWithoutAnimation(m_scrollbar->orientation(), position);
+ ScrollableArea::scrollToOffsetWithoutAnimation(m_scrollbar->orientation(), static_cast<float>(position));
}
void WebScrollbarImpl::setDocumentSize(int size)
@@ -119,18 +119,7 @@ void WebScrollbarImpl::scroll(ScrollDirection direction, ScrollGranularity granu
void WebScrollbarImpl::paint(WebCanvas* canvas, const WebRect& rect)
{
-#if WEBKIT_USING_CG
- GraphicsContext gc(canvas);
-#elif WEBKIT_USING_SKIA
- PlatformContextSkia context(canvas);
-
- // PlatformGraphicsContext is actually a pointer to PlatformContextSkia
- GraphicsContext gc(reinterpret_cast<PlatformGraphicsContext*>(&context));
-#else
- notImplemented();
-#endif
-
- m_scrollbar->paint(&gc, rect);
+ m_scrollbar->paint(&GraphicsContextBuilder(canvas).context(), rect);
}
bool WebScrollbarImpl::handleInputEvent(const WebInputEvent& event)
@@ -220,7 +209,7 @@ bool WebScrollbarImpl::onMouseWheel(const WebInputEvent& event)
if (negative)
delta *= -1;
}
- WebCore::ScrollableArea::scroll((m_scrollbar->orientation() == HorizontalScrollbar) ? WebCore::ScrollLeft : WebCore::ScrollUp, WebCore::ScrollByPixel, delta);
+ ScrollableArea::scroll((m_scrollbar->orientation() == HorizontalScrollbar) ? WebCore::ScrollLeft : WebCore::ScrollUp, WebCore::ScrollByPixel, delta);
return true;
}
@@ -259,7 +248,7 @@ bool WebScrollbarImpl::onKeyDown(const WebInputEvent& event)
WebCore::ScrollGranularity scrollGranularity;
if (WebViewImpl::mapKeyCodeForScroll(keyCode, &scrollDirection, &scrollGranularity)) {
// Will return false if scroll direction wasn't compatible with this scrollbar.
- return WebCore::ScrollableArea::scroll(scrollDirection, scrollGranularity);
+ return ScrollableArea::scroll(scrollDirection, scrollGranularity);
}
return false;
}
@@ -269,12 +258,12 @@ int WebScrollbarImpl::scrollSize(WebCore::ScrollbarOrientation orientation) cons
return (orientation == m_scrollbar->orientation()) ? (m_scrollbar->totalSize() - m_scrollbar->visibleSize()) : 0;
}
-int WebScrollbarImpl::scrollPosition(WebCore::Scrollbar*) const
+int WebScrollbarImpl::scrollPosition(Scrollbar*) const
{
return m_scrollOffset;
}
-void WebScrollbarImpl::setScrollOffset(const WebCore::IntPoint& offset)
+void WebScrollbarImpl::setScrollOffset(const IntPoint& offset)
{
if (m_scrollbar->orientation() == HorizontalScrollbar)
m_scrollOffset = offset.x();
@@ -284,7 +273,7 @@ void WebScrollbarImpl::setScrollOffset(const WebCore::IntPoint& offset)
m_client->valueChanged(this);
}
-void WebScrollbarImpl::invalidateScrollbarRect(WebCore::Scrollbar*, const WebCore::IntRect& rect)
+void WebScrollbarImpl::invalidateScrollbarRect(Scrollbar*, const IntRect& rect)
{
WebRect webrect(rect);
webrect.x += m_scrollbar->x();
@@ -302,7 +291,7 @@ bool WebScrollbarImpl::scrollbarCornerPresent() const
return false;
}
-void WebScrollbarImpl::getTickmarks(Vector<WebCore::IntRect>& tickmarks) const
+void WebScrollbarImpl::getTickmarks(Vector<IntRect>& tickmarks) const
{
WebVector<WebRect> ticks;
m_client->getTickmarks(const_cast<WebScrollbarImpl*>(this), &ticks);
@@ -311,4 +300,14 @@ void WebScrollbarImpl::getTickmarks(Vector<WebCore::IntRect>& tickmarks) const
tickmarks[i] = ticks[i];
}
+Scrollbar* WebScrollbarImpl::horizontalScrollbar() const
+{
+ return m_scrollbar->orientation() == HorizontalScrollbar ? m_scrollbar.get() : 0;
+}
+
+Scrollbar* WebScrollbarImpl::verticalScrollbar() const
+{
+ return m_scrollbar->orientation() == VerticalScrollbar ? m_scrollbar.get() : 0;
+}
+
} // namespace WebKit
diff --git a/Source/WebKit/chromium/src/WebScrollbarImpl.h b/Source/WebKit/chromium/src/WebScrollbarImpl.h
index 4dcfd5d..ac120cf 100644
--- a/Source/WebKit/chromium/src/WebScrollbarImpl.h
+++ b/Source/WebKit/chromium/src/WebScrollbarImpl.h
@@ -65,6 +65,8 @@ public:
virtual bool isActive() const;
virtual bool scrollbarCornerPresent() const;
virtual void getTickmarks(Vector<WebCore::IntRect>&) const;
+ virtual WebCore::Scrollbar* horizontalScrollbar() const;
+ virtual WebCore::Scrollbar* verticalScrollbar() const;
private:
bool onMouseDown(const WebInputEvent& event);
diff --git a/Source/WebKit/chromium/src/WebSearchableFormData.cpp b/Source/WebKit/chromium/src/WebSearchableFormData.cpp
index 8e27a67..647f20d 100644
--- a/Source/WebKit/chromium/src/WebSearchableFormData.cpp
+++ b/Source/WebKit/chromium/src/WebSearchableFormData.cpp
@@ -62,8 +62,7 @@ void GetFormEncoding(const HTMLFormElement* form, TextEncoding* encoding)
if (encoding->isValid())
return;
}
- const Frame* frame = form->document()->frame();
- *encoding = frame ? TextEncoding(frame->loader()->writer()->encoding()) : Latin1Encoding();
+ *encoding = TextEncoding(form->document()->loader()->writer()->encoding());
}
// Returns true if the submit request results in an HTTP URL.
diff --git a/Source/WebKit/chromium/src/WebSelectElement.cpp b/Source/WebKit/chromium/src/WebSelectElement.cpp
index 79a4d85..7aac44a 100644
--- a/Source/WebKit/chromium/src/WebSelectElement.cpp
+++ b/Source/WebKit/chromium/src/WebSelectElement.cpp
@@ -46,14 +46,14 @@ void WebSelectElement::setValue(const WebString& value)
unwrap<HTMLSelectElement>()->setValue(value);
}
-WebString WebSelectElement::value()
+WebString WebSelectElement::value() const
{
- return unwrap<HTMLSelectElement>()->value();
+ return constUnwrap<HTMLSelectElement>()->value();
}
-WebVector<WebElement> WebSelectElement::listItems()
+WebVector<WebElement> WebSelectElement::listItems() const
{
- const Vector<Element*>& sourceItems = unwrap<HTMLSelectElement>()->listItems();
+ const Vector<Element*>& sourceItems = constUnwrap<HTMLSelectElement>()->listItems();
WebVector<WebElement> items(sourceItems.size());
for (size_t i = 0; i < sourceItems.size(); ++i)
items[i] = WebElement(static_cast<HTMLElement*>(sourceItems[i]));
diff --git a/Source/WebKit/chromium/src/WebSettingsImpl.cpp b/Source/WebKit/chromium/src/WebSettingsImpl.cpp
index 0457f77..dd82fa6 100644
--- a/Source/WebKit/chromium/src/WebSettingsImpl.cpp
+++ b/Source/WebKit/chromium/src/WebSettingsImpl.cpp
@@ -274,6 +274,11 @@ void WebSettingsImpl::setExperimentalWebGLEnabled(bool enabled)
m_settings->setWebGLEnabled(enabled);
}
+void WebSettingsImpl::setOpenGLMultisamplingEnabled(bool enabled)
+{
+ m_settings->setOpenGLMultisamplingEnabled(enabled);
+}
+
void WebSettingsImpl::setShowDebugBorders(bool show)
{
m_settings->setShowDebugBorders(show);
@@ -329,6 +334,11 @@ void WebSettingsImpl::setHyperlinkAuditingEnabled(bool enabled)
m_settings->setHyperlinkAuditingEnabled(enabled);
}
+void WebSettingsImpl::setAsynchronousSpellCheckingEnabled(bool enabled)
+{
+ m_settings->setAsynchronousSpellCheckingEnabled(enabled);
+}
+
void WebSettingsImpl::setCaretBrowsingEnabled(bool enabled)
{
m_settings->setCaretBrowsingEnabled(enabled);
diff --git a/Source/WebKit/chromium/src/WebSettingsImpl.h b/Source/WebKit/chromium/src/WebSettingsImpl.h
index 4960bb9..b52a364 100644
--- a/Source/WebKit/chromium/src/WebSettingsImpl.h
+++ b/Source/WebKit/chromium/src/WebSettingsImpl.h
@@ -86,6 +86,7 @@ public:
virtual void setOfflineWebApplicationCacheEnabled(bool);
virtual void setWebAudioEnabled(bool);
virtual void setExperimentalWebGLEnabled(bool);
+ virtual void setOpenGLMultisamplingEnabled(bool);
virtual void setShowDebugBorders(bool);
virtual void setEditingBehavior(EditingBehavior);
virtual void setAcceleratedCompositingEnabled(bool);
@@ -97,6 +98,7 @@ public:
virtual void setAccelerated2dCanvasEnabled(bool);
virtual void setMemoryInfoEnabled(bool);
virtual void setHyperlinkAuditingEnabled(bool);
+ virtual void setAsynchronousSpellCheckingEnabled(bool);
virtual void setCaretBrowsingEnabled(bool);
virtual void setInteractiveFormValidationEnabled(bool);
diff --git a/Source/WebKit/chromium/src/WebTextCheckingCompletionImpl.cpp b/Source/WebKit/chromium/src/WebTextCheckingCompletionImpl.cpp
new file mode 100644
index 0000000..2759790
--- /dev/null
+++ b/Source/WebKit/chromium/src/WebTextCheckingCompletionImpl.cpp
@@ -0,0 +1,56 @@
+/*
+ * Copyright (C) 2009 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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.
+ */
+
+#include "config.h"
+#include "WebTextCheckingCompletionImpl.h"
+
+#include "SpellChecker.h"
+#include "WebTextCheckingResult.h"
+#include "WebVector.h"
+
+using namespace WebCore;
+
+namespace WebKit {
+
+static Vector<SpellCheckingResult> toCoreResults(const WebVector<WebTextCheckingResult>& results)
+{
+ Vector<SpellCheckingResult> coreResults;
+ for (size_t i = 0; i < results.size(); ++i)
+ coreResults.append(SpellCheckingResult(static_cast<DocumentMarker::MarkerType>(results[i].error()), results[i].position(), results[i].length()));
+ return coreResults;
+}
+
+void WebTextCheckingCompletionImpl::didFinishCheckingText(const WebVector<WebTextCheckingResult>& results)
+{
+ m_spellChecker->didCheck(m_identifier, toCoreResults(results));
+ delete this;
+}
+
+} // namespace WebKit
diff --git a/Source/WebKit/chromium/src/WebTextCheckingCompletionImpl.h b/Source/WebKit/chromium/src/WebTextCheckingCompletionImpl.h
new file mode 100644
index 0000000..f1017c7
--- /dev/null
+++ b/Source/WebKit/chromium/src/WebTextCheckingCompletionImpl.h
@@ -0,0 +1,58 @@
+/*
+ * Copyright (C) 2010 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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 WebTextCheckingCompletionImpl_h
+#define WebTextCheckingCompletionImpl_h
+
+#include "WebTextCheckingCompletion.h"
+
+namespace WebCore {
+class SpellChecker;
+}
+
+namespace WebKit {
+
+class WebTextCheckingCompletionImpl : public WebTextCheckingCompletion {
+public:
+ WebTextCheckingCompletionImpl(int identifier, WebCore::SpellChecker* spellchecker)
+ : m_identifier(identifier), m_spellChecker(spellchecker)
+ {
+ }
+
+ virtual void didFinishCheckingText(const WebVector<WebTextCheckingResult>&);
+
+private:
+ int m_identifier;
+ WebCore::SpellChecker* m_spellChecker;
+};
+
+} // namespace WebKit
+
+#endif
diff --git a/Source/WebKit/chromium/src/WebTextRun.cpp b/Source/WebKit/chromium/src/WebTextRun.cpp
index 58d9fac..b8c6ccb 100644
--- a/Source/WebKit/chromium/src/WebTextRun.cpp
+++ b/Source/WebKit/chromium/src/WebTextRun.cpp
@@ -39,7 +39,7 @@ namespace WebKit {
WebTextRun::operator WebCore::TextRun() const
{
- return TextRun(text, false, 0, 0, rtl, directionalOverride);
+ return TextRun(text, false, 0, 0, TextRun::AllowTrailingExpansion, rtl, directionalOverride);
}
} // namespace WebKit
diff --git a/Source/WebKit/chromium/src/WebURLResponse.cpp b/Source/WebKit/chromium/src/WebURLResponse.cpp
index bf3c521..7917298 100644
--- a/Source/WebKit/chromium/src/WebURLResponse.cpp
+++ b/Source/WebKit/chromium/src/WebURLResponse.cpp
@@ -384,6 +384,16 @@ void WebURLResponse::setDownloadFilePath(const WebString& downloadFilePath)
m_private->m_downloadFilePath = downloadFilePath;
}
+WebString WebURLResponse::socketAddress() const
+{
+ return m_private->m_resourceResponse->socketAddress();
+}
+
+void WebURLResponse::setSocketAddress(const WebString& socketAddress)
+{
+ m_private->m_resourceResponse->setSocketAddress(socketAddress);
+}
+
void WebURLResponse::assign(WebURLResponsePrivate* p)
{
// Subclasses may call this directly so a self-assignment check is needed
diff --git a/Source/WebKit/chromium/src/WebViewImpl.cpp b/Source/WebKit/chromium/src/WebViewImpl.cpp
index 798e5ff..18a953e 100644
--- a/Source/WebKit/chromium/src/WebViewImpl.cpp
+++ b/Source/WebKit/chromium/src/WebViewImpl.cpp
@@ -121,6 +121,7 @@
#include "WebVector.h"
#include "WebViewClient.h"
#include <wtf/ByteArray.h>
+#include <wtf/CurrentTime.h>
#include <wtf/RefPtr.h>
#if PLATFORM(CG)
@@ -200,13 +201,9 @@ COMPILE_ASSERT_MATCHING_ENUM(DragOperationEvery);
static const PopupContainerSettings autoFillPopupSettings = {
false, // setTextOnIndexChange
false, // acceptOnAbandon
- true, // loopSelectionNavigation
- false, // restrictWidthOfListBox (For security reasons show the entire entry
- // so the user doesn't enter information he did not intend to.)
- // For suggestions, we use the direction of the input field as the direction
- // of the popup items. The main reason is to keep the display of items in
- // drop-down the same as the items in the input field.
- PopupContainerSettings::DOMElementDirection,
+ true, // loopSelectionNavigation
+ false // restrictWidthOfListBox (For security reasons show the entire entry
+ // so the user doesn't enter information he did not intend to.)
};
static bool shouldUseExternalPopupMenus = false;
@@ -979,7 +976,7 @@ void WebViewImpl::animate()
if (webframe) {
FrameView* view = webframe->frameView();
if (view)
- view->serviceScriptedAnimations();
+ view->serviceScriptedAnimations(convertSecondsToDOMTimeStamp(currentTime()));
}
#endif
}
@@ -1008,8 +1005,8 @@ void WebViewImpl::layout()
#if USE(ACCELERATED_COMPOSITING)
void WebViewImpl::doPixelReadbackToCanvas(WebCanvas* canvas, const IntRect& rect)
{
- ASSERT(rect.right() <= m_layerRenderer->rootLayerTextureSize().width()
- && rect.bottom() <= m_layerRenderer->rootLayerTextureSize().height());
+ ASSERT(rect.maxX() <= m_layerRenderer->rootLayerTextureSize().width()
+ && rect.maxY() <= m_layerRenderer->rootLayerTextureSize().height());
#if PLATFORM(SKIA)
PlatformContextSkia context(canvas);
@@ -1024,7 +1021,7 @@ void WebViewImpl::doPixelReadbackToCanvas(WebCanvas* canvas, const IntRect& rect
notImplemented();
#endif
// Compute rect to sample from inverted GPU buffer.
- IntRect invertRect(rect.x(), bitmapHeight - rect.bottom(), rect.width(), rect.height());
+ IntRect invertRect(rect.x(), bitmapHeight - rect.maxY(), rect.width(), rect.height());
OwnPtr<ImageBuffer> imageBuffer(ImageBuffer::create(rect.size()));
RefPtr<ByteArray> pixelArray(ByteArray::create(rect.width() * rect.height() * 4));
@@ -1032,7 +1029,7 @@ void WebViewImpl::doPixelReadbackToCanvas(WebCanvas* canvas, const IntRect& rect
m_layerRenderer->getFramebufferPixels(pixelArray->data(), invertRect);
imageBuffer->putPremultipliedImageData(pixelArray.get(), rect.size(), IntRect(IntPoint(), rect.size()), IntPoint());
gc.save();
- gc.translate(FloatSize(0.0f, bitmapHeight));
+ gc.translate(IntSize(0, bitmapHeight));
gc.scale(FloatSize(1.0f, -1.0f));
// Use invertRect in next line, so that transform above inverts it back to
// desired destination rect.
@@ -1461,7 +1458,7 @@ WebString WebViewImpl::pageEncoding() const
if (!m_page.get())
return WebString();
- return m_page->mainFrame()->loader()->writer()->encoding();
+ return m_page->mainFrame()->document()->loader()->writer()->encoding();
}
void WebViewImpl::setPageEncoding(const WebString& encodingName)
@@ -1615,7 +1612,7 @@ double WebViewImpl::setZoomLevel(bool textOnly, double zoomLevel)
if (pluginContainer)
pluginContainer->plugin()->setZoomLevel(m_zoomLevel, textOnly);
else {
- double zoomFactor = zoomLevelToZoomFactor(m_zoomLevel);
+ float zoomFactor = static_cast<float>(zoomLevelToZoomFactor(m_zoomLevel));
if (textOnly)
frame->setPageAndTextZoomFactors(1, zoomFactor);
else
@@ -1760,7 +1757,7 @@ WebDragOperation WebViewImpl::dragTargetDragEnterNew(
{
ASSERT(!m_currentDragData.get());
- m_currentDragData = ChromiumDataObject::createReadable(Clipboard::DragAndDrop);
+ m_currentDragData = ChromiumDataObject::createReadable(m_page->mainFrame(), Clipboard::DragAndDrop);
m_dragIdentity = identity;
m_operationsAllowed = operationsAllowed;
@@ -2372,7 +2369,7 @@ public:
return;
FrameView* view = page->mainFrame()->view();
- context.translate(view->scrollX(), view->scrollY());
+ context.translate(static_cast<float>(view->scrollX()), static_cast<float>(view->scrollY()));
IntRect windowRect = view->contentsToWindow(contentRect);
view->paintScrollbars(&context, windowRect);
}
diff --git a/Source/WebKit/chromium/src/WebViewImpl.h b/Source/WebKit/chromium/src/WebViewImpl.h
index d164a48..7640ceb 100644
--- a/Source/WebKit/chromium/src/WebViewImpl.h
+++ b/Source/WebKit/chromium/src/WebViewImpl.h
@@ -53,6 +53,7 @@
namespace WebCore {
class ChromiumDataObject;
+class DocumentLoader;
class Frame;
class HistoryItem;
class HitTestResult;
diff --git a/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.cpp b/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.cpp
index 058e947..faea40b 100644
--- a/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.cpp
+++ b/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.cpp
@@ -56,8 +56,8 @@ namespace WebCore {
static const char fileSystemOperationsMode[] = "fileSystemOperationsMode";
-WorkerAsyncFileSystemChromium::WorkerAsyncFileSystemChromium(ScriptExecutionContext* context, const String& rootPath, bool synchronous)
- : AsyncFileSystem(rootPath)
+WorkerAsyncFileSystemChromium::WorkerAsyncFileSystemChromium(ScriptExecutionContext* context, AsyncFileSystem::Type type, const String& rootPath, bool synchronous)
+ : AsyncFileSystem(type, rootPath)
, m_scriptExecutionContext(context)
, m_webFileSystem(WebKit::webKitClient()->fileSystem())
, m_workerContext(static_cast<WorkerContext*>(context))
diff --git a/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.h b/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.h
index 0b4b708..7e3316b 100644
--- a/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.h
+++ b/Source/WebKit/chromium/src/WorkerAsyncFileSystemChromium.h
@@ -52,9 +52,9 @@ class WorkerContext;
class WorkerAsyncFileSystemChromium : public AsyncFileSystem {
public:
- static PassOwnPtr<AsyncFileSystem> create(ScriptExecutionContext* context, const String& rootPath, bool synchronous)
+ static PassOwnPtr<AsyncFileSystem> create(ScriptExecutionContext* context, AsyncFileSystem::Type type, const String& rootPath, bool synchronous)
{
- return adoptPtr(new WorkerAsyncFileSystemChromium(context, rootPath, synchronous));
+ return adoptPtr(new WorkerAsyncFileSystemChromium(context, type, rootPath, synchronous));
}
virtual ~WorkerAsyncFileSystemChromium();
@@ -75,7 +75,7 @@ public:
virtual void createWriter(AsyncFileWriterClient* client, const String& path, PassOwnPtr<AsyncFileSystemCallbacks>);
private:
- WorkerAsyncFileSystemChromium(ScriptExecutionContext*, const String& rootPath, bool synchronous);
+ WorkerAsyncFileSystemChromium(ScriptExecutionContext*, AsyncFileSystem::Type, const String& rootPath, bool synchronous);
PassRefPtr<WebKit::WorkerFileSystemCallbacksBridge> createWorkerFileSystemCallbacksBridge(PassOwnPtr<AsyncFileSystemCallbacks>);
diff --git a/Source/WebKit/chromium/src/js/DevTools.js b/Source/WebKit/chromium/src/js/DevTools.js
index d6536bc..3d61be7 100644
--- a/Source/WebKit/chromium/src/js/DevTools.js
+++ b/Source/WebKit/chromium/src/js/DevTools.js
@@ -41,6 +41,7 @@ var context = {}; // Used by WebCore's inspector routines.
Preferences.ignoreWhitespace = false;
Preferences.samplingCPUProfiler = true;
Preferences.heapProfilerPresent = true;
+ Preferences.detailedHeapProfiles = false;
Preferences.debuggerAlwaysEnabled = true;
Preferences.profilerAlwaysEnabled = true;
Preferences.canEditScriptSource = true;
@@ -88,6 +89,18 @@ WebInspector.UIString = function(string)
};
+/*
+ * This label must be kept consistent with that in English.lproj/localizedStrings.js
+ *
+ * http://code.google.com/p/chromium/issues/detail?id=61302 requires a custom label for Chromium,
+ * since its behavior is different.
+ */
+WebInspector.openLinkExternallyLabel = function()
+{
+ return WebInspector.UIString("Open Link in New Tab");
+};
+
+
/** Pending WebKit upstream by apavlov). Fixes iframe vs drag problem. */
(function()
{
diff --git a/Source/WebKit/chromium/src/js/Tests.js b/Source/WebKit/chromium/src/js/Tests.js
index 900d79e..f155e08 100644
--- a/Source/WebKit/chromium/src/js/Tests.js
+++ b/Source/WebKit/chromium/src/js/Tests.js
@@ -685,7 +685,7 @@ TestSuite.prototype._checkSourceFrameWhenLoaded = function(expectations, callbac
{
var test = this;
- var frame = WebInspector.currentPanel.visibleView.sourceFrame;
+ var frame = WebInspector.currentPanel.visibleView;
if (frame._textViewer)
checkExecLine();
diff --git a/Source/WebKit/chromium/src/painting/GraphicsContextBuilder.h b/Source/WebKit/chromium/src/painting/GraphicsContextBuilder.h
new file mode 100644
index 0000000..5ffae8e
--- /dev/null
+++ b/Source/WebKit/chromium/src/painting/GraphicsContextBuilder.h
@@ -0,0 +1,84 @@
+/*
+ * Copyright (C) 2011 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER 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 GraphicsContextBuilder_h
+#define GraphicsContextBuilder_h
+
+#include "GraphicsContext.h"
+
+#if WEBKIT_USING_CG
+#include "LocalCurrentGraphicsContext.h"
+#elif WEBKIT_USING_SKIA
+#include "PlatformContextSkia.h"
+#endif
+
+namespace WebKit {
+
+#if WEBKIT_USING_CG
+
+class GraphicsContextBuilder {
+public:
+ GraphicsContextBuilder(WebCanvas* canvas)
+ : m_graphicsContext(canvas)
+ , m_localContext(&m_graphicsContext)
+ {
+ }
+
+ WebCore::GraphicsContext& context() { return m_graphicsContext; }
+
+private:
+ WebCore::GraphicsContext m_graphicsContext;
+ WebCore::LocalCurrentGraphicsContext m_localContext;
+};
+
+#elif WEBKIT_USING_SKIA
+
+class GraphicsContextBuilder {
+public:
+ GraphicsContextBuilder(WebCanvas* canvas)
+ : m_platformContext(canvas)
+ , m_graphicsContext(&m_platformContext)
+ {
+ }
+
+ WebCore::GraphicsContext& context() { return m_graphicsContext; }
+
+private:
+ WebCore::PlatformContextSkia m_platformContext;
+ WebCore::GraphicsContext m_graphicsContext;
+};
+
+#else
+#error "Need to define GraphicsContextBuilder!"
+#endif
+
+} // namespace WebKit
+
+#endif
diff --git a/Source/WebKit/chromium/tests/PopupMenuTest.cpp b/Source/WebKit/chromium/tests/PopupMenuTest.cpp
index 4c9a149..acfcda5 100644
--- a/Source/WebKit/chromium/tests/PopupMenuTest.cpp
+++ b/Source/WebKit/chromium/tests/PopupMenuTest.cpp
@@ -76,7 +76,7 @@ public:
virtual PopupMenuStyle itemStyle(unsigned listIndex) const
{
Font font(FontPlatformData(12.0, false, false), false);
- return PopupMenuStyle(Color::black, Color::white, font, true, false, Length(), TextDirection());
+ return PopupMenuStyle(Color::black, Color::white, font, true, false, Length(), TextDirection(), false /* has text direction override */);
}
virtual PopupMenuStyle menuStyle() const { return itemStyle(0); }
virtual int clientInsetLeft() const { return 0; }
diff --git a/Source/WebKit/chromium/tests/TransparencyWinTest.cpp b/Source/WebKit/chromium/tests/TransparencyWinTest.cpp
index ed7f12f..ee3307f 100644
--- a/Source/WebKit/chromium/tests/TransparencyWinTest.cpp
+++ b/Source/WebKit/chromium/tests/TransparencyWinTest.cpp
@@ -552,8 +552,8 @@ TEST(TransparencyWin, Scale)
EXPECT_TRUE(helper.context()->getCTM().isIdentity());
EXPECT_EQ(2, helper.drawRect().x());
EXPECT_EQ(2, helper.drawRect().y());
- EXPECT_EQ(8, helper.drawRect().right());
- EXPECT_EQ(8, helper.drawRect().bottom());
+ EXPECT_EQ(8, helper.drawRect().maxX());
+ EXPECT_EQ(8, helper.drawRect().maxY());
// Set the pixel at (2, 2) to be transparent. This should be fixed when
// the helper goes out of scope. We don't want to call
diff --git a/Source/WebKit/efl/ChangeLog b/Source/WebKit/efl/ChangeLog
index 5dcc5cf..2068ccc 100644
--- a/Source/WebKit/efl/ChangeLog
+++ b/Source/WebKit/efl/ChangeLog
@@ -1,3 +1,105 @@
+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/ChromeClientEfl.h:
+
+2011-02-08 Lucas De Marchi <lucas.demarchi@profusion.mobi>
+
+ Unreviewed build fix.
+
+ [EFL] Fix when building with curl backend.
+
+ * ewk/ewk_settings.cpp:
+ (ewk_settings_proxy_uri_get):
+
+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/DragClientEfl.cpp:
+ * WebCoreSupport/DragClientEfl.h:
+
+2011-02-07 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [EFL] FrameLoaderClient calls loadURLInChildFrame on the child's frame loader
+ https://bugs.webkit.org/show_bug.cgi?id=53892
+
+ * ewk/ewk_frame.cpp:
+ (ewk_frame_child_add): Use the loader of the core frame instead.
+
+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/FrameLoaderClientEfl.cpp:
+ (WebCore::FrameLoaderClientEfl::didRunInsecureContent):
+ * WebCoreSupport/FrameLoaderClientEfl.h:
+
+2011-02-01 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Antonio Gomes.
+
+ [EFL] Add an API to get proxy address.
+ https://bugs.webkit.org/show_bug.cgi?id=52990
+
+ Gets the proxy URI from network backend. This API returns a proxy URI
+ which is set up by ewk_settings_proxy_uri_set(). But, it only implements
+ this API for libsoup backend.
+
+ * ewk/ewk_settings.cpp:
+ (ewk_settings_proxy_uri_get):
+ * ewk/ewk_settings.h:
+
+2011-01-29 Dan Winship <danw@gnome.org>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Remove HAVE_LIBSOUP_2_29_90 conditionals; we depend on
+ libsoup 2.33.1 now.
+ https://bugs.webkit.org/show_bug.cgi?id=50675
+
+ * ewk/ewk_cookies.cpp:
+ (ewk_cookies_file_set):
+ (ewk_cookies_policy_set):
+ (ewk_cookies_policy_get):
+
+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/ChromeClientEfl.cpp:
+ (WebCore::ChromeClientEfl::selectItemAlignmentFollowsMenuWritingDirection): Added.
+ * WebCoreSupport/ChromeClientEfl.h:
+
+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
+
+ * ewk/ewk_frame.cpp:
+ (ewk_frame_uri_changed):
+
2011-01-14 Patrick Gansterer <paroga@webkit.org>
Unreviewed. Try to fix EFL build.
diff --git a/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp b/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp
index e9904c6..6425c39 100644
--- a/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp
+++ b/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp
@@ -532,6 +532,11 @@ bool ChromeClientEfl::selectItemWritingDirectionIsNatural()
return true;
}
+bool ChromeClientEfl::selectItemAlignmentFollowsMenuWritingDirection()
+{
+ return false;
+}
+
PassRefPtr<PopupMenu> ChromeClientEfl::createPopupMenu(PopupMenuClient* client) const
{
return adoptRef(new PopupMenuEfl(client));
diff --git a/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h b/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h
index a714dd4..c17fe10 100644
--- a/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h
+++ b/Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h
@@ -128,8 +128,6 @@ public:
virtual void chooseIconForFiles(const Vector<String>&, FileChooser*);
virtual void formStateDidChange(const Node*);
- virtual PassOwnPtr<HTMLParserQuirks> createHTMLParserQuirks() { return 0; }
-
virtual void setCursor(const Cursor&);
virtual void scrollRectIntoView(const IntRect&, const ScrollView*) const {}
@@ -149,6 +147,7 @@ public:
virtual void dispatchViewportDataDidChange(const ViewportArguments&) const;
virtual bool selectItemWritingDirectionIsNatural();
+ virtual bool selectItemAlignmentFollowsMenuWritingDirection();
virtual PassRefPtr<PopupMenu> createPopupMenu(PopupMenuClient*) const;
virtual PassRefPtr<SearchPopupMenu> createSearchPopupMenu(PopupMenuClient*) const;
diff --git a/Source/WebKit/efl/WebCoreSupport/DragClientEfl.cpp b/Source/WebKit/efl/WebCoreSupport/DragClientEfl.cpp
index d6610e1..b1f68e0 100644
--- a/Source/WebKit/efl/WebCoreSupport/DragClientEfl.cpp
+++ b/Source/WebKit/efl/WebCoreSupport/DragClientEfl.cpp
@@ -60,11 +60,6 @@ void DragClientEfl::startDrag(DragImageRef, const IntPoint&, const IntPoint&, Cl
notImplemented();
}
-DragImageRef DragClientEfl::createDragImageForLink(KURL&, const String& label, Frame*)
-{
- return 0;
-}
-
void DragClientEfl::dragControllerDestroyed()
{
delete this;
diff --git a/Source/WebKit/efl/WebCoreSupport/DragClientEfl.h b/Source/WebKit/efl/WebCoreSupport/DragClientEfl.h
index f73116c..ff098a9 100644
--- a/Source/WebKit/efl/WebCoreSupport/DragClientEfl.h
+++ b/Source/WebKit/efl/WebCoreSupport/DragClientEfl.h
@@ -45,7 +45,6 @@ public:
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 WebCore::DragImageRef createDragImageForLink(WebCore::KURL&, const WTF::String& label, WebCore::Frame*);
virtual void dragControllerDestroyed();
};
diff --git a/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp b/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp
index 929b269..acbab30 100644
--- a/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp
+++ b/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp
@@ -515,7 +515,7 @@ void FrameLoaderClientEfl::didDisplayInsecureContent()
notImplemented();
}
-void FrameLoaderClientEfl::didRunInsecureContent(SecurityOrigin*)
+void FrameLoaderClientEfl::didRunInsecureContent(SecurityOrigin*, const KURL&)
{
notImplemented();
}
diff --git a/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.h b/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.h
index cf7bdf0..14ebc1c 100644
--- a/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.h
+++ b/Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.h
@@ -165,7 +165,7 @@ class FrameLoaderClientEfl : public FrameLoaderClient {
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(HistoryItem*) const;
virtual void didDisplayInsecureContent();
- virtual void didRunInsecureContent(SecurityOrigin*);
+ virtual void didRunInsecureContent(SecurityOrigin*, const KURL&);
virtual ResourceError cancelledError(const ResourceRequest&);
virtual ResourceError blockedError(const ResourceRequest&);
diff --git a/Source/WebKit/efl/ewk/ewk_cookies.cpp b/Source/WebKit/efl/ewk/ewk_cookies.cpp
index 421f8dc..2564fc7 100644
--- a/Source/WebKit/efl/ewk/ewk_cookies.cpp
+++ b/Source/WebKit/efl/ewk/ewk_cookies.cpp
@@ -57,9 +57,7 @@ EAPI Eina_Bool ewk_cookies_file_set(const char *filename)
if (!cookieJar)
return EINA_FALSE;
-#ifdef HAVE_LIBSOUP_2_29_90
soup_cookie_jar_set_accept_policy(cookieJar, SOUP_COOKIE_JAR_ACCEPT_NO_THIRD_PARTY);
-#endif
SoupSession* session = WebCore::ResourceHandle::defaultSession();
SoupSessionFeature* oldjar = soup_session_get_feature(session, SOUP_TYPE_COOKIE_JAR);
@@ -187,7 +185,6 @@ EAPI void ewk_cookies_cookie_free(Ewk_Cookie *cookie)
EAPI void ewk_cookies_policy_set(Ewk_Cookie_Policy p)
{
#ifdef WTF_USE_SOUP
-#ifdef HAVE_LIBSOUP_2_29_90
SoupCookieJar* cookieJar = WebCore::defaultCookieJar();
SoupCookieJarAcceptPolicy policy;
@@ -206,7 +203,6 @@ EAPI void ewk_cookies_policy_set(Ewk_Cookie_Policy p)
soup_cookie_jar_set_accept_policy(cookieJar, policy);
#endif
-#endif
}
/*
@@ -218,7 +214,6 @@ EAPI Ewk_Cookie_Policy ewk_cookies_policy_get()
{
Ewk_Cookie_Policy ewk_policy = EWK_COOKIE_JAR_ACCEPT_ALWAYS;
#ifdef WTF_USE_SOUP
-#ifdef HAVE_LIBSOUP_2_29_90
SoupCookieJar* cookieJar = WebCore::defaultCookieJar();
SoupCookieJarAcceptPolicy policy;
@@ -235,7 +230,6 @@ EAPI Ewk_Cookie_Policy ewk_cookies_policy_get()
break;
}
#endif
-#endif
return ewk_policy;
}
diff --git a/Source/WebKit/efl/ewk/ewk_frame.cpp b/Source/WebKit/efl/ewk/ewk_frame.cpp
index f41caae..1a159c5 100644
--- a/Source/WebKit/efl/ewk/ewk_frame.cpp
+++ b/Source/WebKit/efl/ewk/ewk_frame.cpp
@@ -1681,7 +1681,7 @@ Evas_Object* ewk_frame_child_add(Evas_Object* o, WTF::PassRefPtr<WebCore::Frame>
if (!cf->page())
goto died;
- cf->loader()->loadURLIntoChildFrame(url, referrer, cf);
+ sd->frame->loader()->loadURLIntoChildFrame(url, referrer, cf);
if (!cf->tree()->parent())
goto died;
@@ -2008,7 +2008,7 @@ Eina_Bool ewk_frame_uri_changed(Evas_Object* o)
{
EWK_FRAME_SD_GET_OR_RETURN(o, sd, EINA_FALSE);
EINA_SAFETY_ON_NULL_RETURN_VAL(sd->frame, EINA_FALSE);
- WTF::CString uri(sd->frame->loader()->url().prettyURL().utf8());
+ WTF::CString uri(sd->frame->document()->url().prettyURL().utf8());
INF("uri=%s", uri.data());
if (!uri.data()) {
diff --git a/Source/WebKit/efl/ewk/ewk_settings.cpp b/Source/WebKit/efl/ewk/ewk_settings.cpp
index 20051ea..54e6645 100644
--- a/Source/WebKit/efl/ewk/ewk_settings.cpp
+++ b/Source/WebKit/efl/ewk/ewk_settings.cpp
@@ -291,6 +291,30 @@ void ewk_settings_proxy_uri_set(const char* proxy)
}
/**
+ * Gets the proxy URI from the network backend.
+ *
+ * @return current proxy URI or @c 0 if it's not set.
+ */
+const char* ewk_settings_proxy_uri_get()
+{
+#if USE(SOUP)
+ SoupURI* uri;
+ SoupSession* session = WebCore::ResourceHandle::defaultSession();
+ g_object_get(session, SOUP_SESSION_PROXY_URI, &uri, NULL);
+
+ if (!uri) {
+ ERR("no proxy uri");
+ return 0;
+ }
+
+ WTF::String proxy = soup_uri_to_string(uri, EINA_FALSE);
+ return eina_stringshare_add(proxy.utf8().data());
+#elif USE(CURL)
+ EINA_SAFETY_ON_TRUE_RETURN_VAL(1, NULL);
+#endif
+}
+
+/**
* @internal
* Gets the default user agent string.
*
diff --git a/Source/WebKit/efl/ewk/ewk_settings.h b/Source/WebKit/efl/ewk/ewk_settings.h
index 3c1668f..d1e12c0 100644
--- a/Source/WebKit/efl/ewk/ewk_settings.h
+++ b/Source/WebKit/efl/ewk/ewk_settings.h
@@ -49,6 +49,7 @@ EAPI cairo_surface_t *ewk_settings_icon_database_icon_surface_get(const char *ur
EAPI Evas_Object *ewk_settings_icon_database_icon_object_add(const char *url, Evas *canvas);
EAPI void ewk_settings_proxy_uri_set(const char* proxy);
+EAPI const char* ewk_settings_proxy_uri_get();
#ifdef __cplusplus
}
diff --git a/Source/WebKit/gtk/ChangeLog b/Source/WebKit/gtk/ChangeLog
index 912c948..2fefd5d 100644
--- a/Source/WebKit/gtk/ChangeLog
+++ b/Source/WebKit/gtk/ChangeLog
@@ -1,3 +1,398 @@
+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.
diff --git a/Source/WebKit/gtk/GNUmakefile.am b/Source/WebKit/gtk/GNUmakefile.am
index c69d6ea..d207e00 100644
--- a/Source/WebKit/gtk/GNUmakefile.am
+++ b/Source/WebKit/gtk/GNUmakefile.am
@@ -98,7 +98,6 @@ libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBA
$(OLE32_LIBS)
webkitgtk_static_h_api += \
- $(srcdir)/Source/WebCore/platform/network/soup/cache/webkit/soup-cache.h \
$(srcdir)/Source/WebKit/gtk/webkit/webkit.h \
$(srcdir)/Source/WebKit/gtk/webkit/webkitdefines.h \
$(srcdir)/Source/WebKit/gtk/webkit/webkitdownload.h \
@@ -160,6 +159,7 @@ webkitgtk_sources += \
Source/WebCore/bindings/gobject/WebKitDOMObject.h \
Source/WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.cpp \
Source/WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.h \
+ Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp \
Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp \
Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h \
Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp \
@@ -261,7 +261,6 @@ $(WEBKIT_GIRSOURCES): $(G_IR_SCANNER) $(JSCORE_GIRSOURCES) libwebkitgtk-@WEBKITG
--add-include-path=$(WebKit) \
--add-include-path=$(top_builddir) \
-I$(srcdir)/Source \
- -I$(top_srcdir)/Source/WebCore/platform/network/soup/cache \
-I$(WebKit) \
-I$(GENSOURCES) \
-I$(GENSOURCES_WEBKIT) \
@@ -349,10 +348,8 @@ $(GENSOURCES_WEBKIT)/webkitenumtypes.cpp: $(webkitgtk_h_api) $(WebKit)/GNUmakefi
&& rm -f xgen-gtc
# GSettings
-if USE_GSETTINGS
gsettings_SCHEMAS = $(top_builddir)/Source/WebKit/gtk/org.webkitgtk-@WEBKITGTK_API_VERSION@.gschema.xml
@GSETTINGS_RULES@
-endif
EXTRA_DIST += \
$(WebKit)/ChangeLog \
@@ -379,7 +376,6 @@ noinst_PROGRAMS += $(TEST_PROGS)
webkit_tests_cflags = \
-fno-strict-aliasing \
-I$(srcdir)/Source/JavaScriptCore/ForwardingHeaders \
- -I$(WebCore)/platform/network/soup/cache \
-I$(WebKit) \
-I$(GENSOURCES) \
-I$(top_builddir)/Source/WebKit/gtk \
diff --git a/Source/WebKit/gtk/NEWS b/Source/WebKit/gtk/NEWS
index cf77371..8d6e88e 100644
--- a/Source/WebKit/gtk/NEWS
+++ b/Source/WebKit/gtk/NEWS
@@ -1,4 +1,17 @@
=================
+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
=================
diff --git a/Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp b/Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp
new file mode 100644
index 0000000..9c596f8
--- /dev/null
+++ b/Source/WebKit/gtk/WebCoreSupport/AssertMatchingEnums.cpp
@@ -0,0 +1,36 @@
+/*
+ * 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 "FindOptions.h"
+#include <wtf/Assertions.h>
+
+#define COMPILE_ASSERT_MATCHING_ENUM(webkit_name, webcore_name) \
+ COMPILE_ASSERT(int(WebKit::webkit_name) == int(WebCore::webcore_name), mismatching_enums)
+
+COMPILE_ASSERT_MATCHING_ENUM(WebFindOptionsCaseInsensitive , CaseInsensitive);
+COMPILE_ASSERT_MATCHING_ENUM(WebFindOptionsAtWordStarts, AtWordStarts);
+COMPILE_ASSERT_MATCHING_ENUM(WebFindOptionsTreatMedialCapitalAsWordStart, TreatMedialCapitalAsWordStart);
+COMPILE_ASSERT_MATCHING_ENUM(WebFindOptionsBackwards, Backwards);
+COMPILE_ASSERT_MATCHING_ENUM(WebFindOptionsWrapAround, WrapAround);
+COMPILE_ASSERT_MATCHING_ENUM(WebFindOptionsStartInSelection, StartInSelection);
diff --git a/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
index 04ee8ba..bbfdd72 100644
--- a/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
+++ b/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
@@ -674,6 +674,11 @@ bool ChromeClient::selectItemWritingDirectionIsNatural()
return true;
}
+bool ChromeClient::selectItemAlignmentFollowsMenuWritingDirection()
+{
+ return false;
+}
+
PassRefPtr<WebCore::PopupMenu> ChromeClient::createPopupMenu(WebCore::PopupMenuClient* client) const
{
return adoptRef(new PopupMenuGtk(client));
diff --git a/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h
index d607c54..d7644eb 100644
--- a/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h
+++ b/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h
@@ -128,8 +128,6 @@ namespace WebKit {
virtual void formStateDidChange(const WebCore::Node*) { }
- virtual PassOwnPtr<WebCore::HTMLParserQuirks> createHTMLParserQuirks() { return 0; }
-
virtual void setCursor(const WebCore::Cursor&);
virtual void scrollRectIntoView(const WebCore::IntRect&, const WebCore::ScrollView*) const {}
@@ -137,6 +135,7 @@ namespace WebKit {
virtual void cancelGeolocationPermissionRequestForFrame(WebCore::Frame*, WebCore::Geolocation*);
virtual bool selectItemWritingDirectionIsNatural();
+ virtual bool selectItemAlignmentFollowsMenuWritingDirection();
virtual PassRefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::PopupMenuClient*) const;
virtual PassRefPtr<WebCore::SearchPopupMenu> createSearchPopupMenu(WebCore::PopupMenuClient*) const;
#if ENABLE(VIDEO)
diff --git a/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp
index 836ec28..33ab4fa 100644
--- a/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp
+++ b/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp
@@ -151,12 +151,6 @@ void DragClient::drawDragIconWindow(GtkWidget* widget, cairo_t* context)
cairo_fill(context);
}
-DragImageRef DragClient::createDragImageForLink(KURL&, const String&, Frame*)
-{
- notImplemented();
- return 0;
-}
-
void DragClient::dragControllerDestroyed()
{
delete this;
diff --git a/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h
index 3a16ae5..4135ea3 100644
--- a/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h
+++ b/Source/WebKit/gtk/WebCoreSupport/DragClientGtk.h
@@ -50,7 +50,6 @@ namespace WebKit {
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 WebCore::DragImageRef createDragImageForLink(WebCore::KURL&, const WTF::String& label, WebCore::Frame*);
virtual void dragControllerDestroyed();
diff --git a/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp
index 6f31887..83f7c21 100644
--- a/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp
+++ b/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp
@@ -2,6 +2,7 @@
* 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.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -47,7 +48,9 @@
#include "RenderTreeAsText.h"
#include "RenderView.h"
#include "SecurityOrigin.h"
+#include "TextIterator.h"
#include "WorkerThread.h"
+#include "webkitglobalsprivate.h"
#include "webkitwebframe.h"
#include "webkitwebframeprivate.h"
#include "webkitwebview.h"
@@ -93,6 +96,11 @@ bool DumpRenderTreeSupportGtk::linksIncludedInFocusChain()
return s_linksIncludedInTabChain;
}
+void DumpRenderTreeSupportGtk::setIconDatabaseEnabled(bool enabled)
+{
+ WebKit::setIconDatabaseEnabled(enabled);
+}
+
JSValueRef DumpRenderTreeSupportGtk::nodesFromRect(JSContextRef context, JSValueRef value, int x, int y, unsigned top, unsigned right, unsigned bottom, unsigned left, bool ignoreClipping)
{
JSLock lock(SilenceAssertionsOnly);
@@ -466,6 +474,102 @@ bool DumpRenderTreeSupportGtk::isCommandEnabled(WebKitWebView* webView, const gc
return core(webView)->focusController()->focusedOrMainFrame()->editor()->command(name).isEnabled();
}
+void DumpRenderTreeSupportGtk::setComposition(WebKitWebView* webView, const char* text, int start, int end)
+{
+ 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)
+ return;
+ 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, end);
+}
+
+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 || (!editor->hasComposition() && !text))
+ return;
+
+ if (editor->hasComposition()) {
+ if (text)
+ editor->confirmComposition(String::fromUTF8(text));
+ else
+ editor->confirmComposition();
+ } else
+ editor->insertText(String::fromUTF8(text), 0);
+}
+
+bool DumpRenderTreeSupportGtk::firstRectForCharacterRange(WebKitWebView* webView, int location, int length, GdkRectangle* 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();
+ if (!editor)
+ return false;
+
+ Element* selectionRoot = frame->selection()->rootEditableElement();
+ Element* scope = selectionRoot ? selectionRoot : frame->document()->documentElement();
+ RefPtr<Range> range = TextIterator::rangeFromLocationAndLength(scope, location, length);
+ if (!range)
+ return false;
+
+ *rect = editor->firstRectForRange(range.get());
+
+ return true;
+}
+
+bool DumpRenderTreeSupportGtk::selectedRange(WebKitWebView* webView, int* start, int* end)
+{
+ g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), false);
+ g_return_val_if_fail(start, false);
+ g_return_val_if_fail(end, false);
+
+ Frame* frame = core(webView)->focusController()->focusedOrMainFrame();
+ if (!frame)
+ return false;
+
+ RefPtr<Range> range = frame->selection()->toNormalizedRange().get();
+
+ 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);
+ *end = TextIterator::rangeLength(testRange.get());
+
+ return true;
+}
+
void DumpRenderTreeSupportGtk::whiteListAccessFromOrigin(const gchar* sourceOrigin, const gchar* destinationProtocol, const gchar* destinationHost, bool allowDestinationSubdomains)
{
SecurityOrigin::addOriginAccessWhitelistEntry(*SecurityOrigin::createFromString(sourceOrigin), destinationProtocol, destinationHost, allowDestinationSubdomains);
@@ -532,3 +636,9 @@ bool DumpRenderTreeSupportGtk::webkitWebFrameSelectionHasSpellingMarker(WebKitWe
return core(frame)->editor()->selectionStartHasSpellingMarkerFor(from, length);
}
+
+bool DumpRenderTreeSupportGtk::findString(WebKitWebView* webView, const gchar* targetString, WebKitFindOptions findOptions)
+{
+ return core(webView)->findString(String::fromUTF8(targetString), findOptions);
+}
+
diff --git a/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h b/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h
index 663f13a..553d7bb 100644
--- a/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h
+++ b/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h
@@ -19,7 +19,6 @@
#ifndef DumpRenderTreeSupportGtk_h
#define DumpRenderTreeSupportGtk_h
-
#include "JSStringRef.h"
#include <webkit/webkitdefines.h>
@@ -29,6 +28,20 @@
#include <webkit/webkitwebframe.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:
@@ -40,6 +53,7 @@ public:
static void setLinksIncludedInFocusChain(bool);
static bool linksIncludedInFocusChain();
+ static void setIconDatabaseEnabled(bool);
static JSValueRef nodesFromRect(JSContextRef context, JSValueRef value, int x, int y, unsigned top, unsigned right, unsigned bottom, unsigned left, bool ignoreClipping);
static void dumpConfigurationForViewport(WebKitWebView* webView, gint availableWidth, gint availableHeight);
@@ -70,6 +84,11 @@ public:
// 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 setComposition(WebKitWebView*, const char* text, int start, int end);
+ static void confirmComposition(WebKitWebView*, const char* text);
+ static bool firstRectForCharacterRange(WebKitWebView*, int location, int length, GdkRectangle*);
+ static bool selectedRange(WebKitWebView*, int* start, int* end);
// GC
static void gcCollectJavascriptObjects();
diff --git a/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp
index 8f1a819..875455a 100644
--- a/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp
+++ b/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp
@@ -98,6 +98,7 @@ FrameLoaderClient::FrameLoaderClient(WebKitWebFrame* frame)
, m_loadingErrorPage(false)
, m_pluginView(0)
, m_hasSentResponseToPlugin(false)
+ , m_hasRepresentation(false)
{
ASSERT(m_frame);
}
@@ -606,7 +607,7 @@ PassRefPtr<Frame> FrameLoaderClient::createFrame(const KURL& url, const String&
g_signal_emit_by_name(webView, "frame-created", kitFrame);
- childFrame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
+ parentFrame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
// The frame's onload handler may have removed it from the document.
if (!childFrame->tree()->parent())
@@ -773,14 +774,14 @@ void FrameLoaderClient::didDisplayInsecureContent()
notImplemented();
}
-void FrameLoaderClient::didRunInsecureContent(SecurityOrigin*)
+void FrameLoaderClient::didRunInsecureContent(SecurityOrigin*, const KURL&)
{
notImplemented();
}
void FrameLoaderClient::makeRepresentation(WebCore::DocumentLoader*)
{
- notImplemented();
+ m_hasRepresentation = true;
}
void FrameLoaderClient::forceLayout()
@@ -834,7 +835,7 @@ void FrameLoaderClient::dispatchDidChangeLocationWithinPage()
{
WebKitWebFramePrivate* priv = m_frame->priv;
g_free(priv->uri);
- priv->uri = g_strdup(core(m_frame)->loader()->url().prettyURL().utf8().data());
+ priv->uri = g_strdup(core(m_frame)->document()->url().prettyURL().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))
@@ -980,7 +981,7 @@ void FrameLoaderClient::dispatchDidLoadMainResource(WebCore::DocumentLoader*)
void FrameLoaderClient::revertToProvisionalState(WebCore::DocumentLoader*)
{
- notImplemented();
+ m_hasRepresentation = true;
}
void FrameLoaderClient::willChangeTitle(WebCore::DocumentLoader*)
@@ -1028,8 +1029,10 @@ String FrameLoaderClient::generatedMIMETypeForURLScheme(const String&) const
void FrameLoaderClient::finishedLoading(WebCore::DocumentLoader* documentLoader)
{
if (!m_pluginView) {
- FrameLoader* loader = documentLoader->frameLoader();
- loader->writer()->setEncoding(m_response.textEncodingName(), false);
+ // This is necessary to create an empty document,
+ // but it has to be skipped in the provisional phase.
+ if (m_hasRepresentation)
+ documentLoader->writer()->setEncoding("", false);
} else {
m_pluginView->didFinishLoading();
m_pluginView = 0;
diff --git a/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h
index d8d3684..2e8a2dd 100644
--- a/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h
+++ b/Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h
@@ -146,7 +146,7 @@ namespace WebKit {
virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
- virtual void didRunInsecureContent(WebCore::SecurityOrigin*);
+ virtual void didRunInsecureContent(WebCore::SecurityOrigin*, const WebCore::KURL&);
virtual WebCore::ResourceError cancelledError(const WebCore::ResourceRequest&);
virtual WebCore::ResourceError blockedError(const WebCore::ResourceRequest&);
@@ -201,6 +201,8 @@ namespace WebKit {
// Plugin view to redirect data to
WebCore::PluginView* m_pluginView;
bool m_hasSentResponseToPlugin;
+
+ bool m_hasRepresentation;
};
}
diff --git a/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp b/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp
index 31af243..66f375a 100644
--- a/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp
+++ b/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp
@@ -23,6 +23,7 @@
#include "Frame.h"
#include "InspectorController.h"
#include "NotImplemented.h"
+#include "Page.h"
#include "PlatformString.h"
#include "webkitversion.h"
#include "webkitwebinspector.h"
@@ -40,6 +41,64 @@ static void notifyWebViewDestroyed(WebKitWebView* webView, InspectorFrontendClie
inspectorFrontendClient->destroyInspectorWindow(true);
}
+namespace {
+
+class InspectorFrontendSettingsGtk : public InspectorFrontendClientLocal::Settings {
+private:
+ virtual ~InspectorFrontendSettingsGtk() { }
+#ifdef HAVE_GSETTINGS
+ static bool shouldIgnoreSetting(const String& key)
+ {
+ // GSettings considers trying to fetch or set a setting that is
+ // not backed by a schema as programmer error, and aborts the
+ // program's execution. We check here to avoid having an unhandled
+ // setting as a fatal error.
+ LOG_VERBOSE(NotYetImplemented, "Unknown key ignored: %s", key.ascii().data());
+ return true;
+ }
+
+ virtual String getProperty(const String& name)
+ {
+ if (shouldIgnoreSetting(name))
+ return String();
+
+ GSettings* settings = inspectorGSettings();
+ if (!settings)
+ return String();
+
+ GRefPtr<GVariant> variant = adoptGRef(g_settings_get_value(settings, name.utf8().data()));
+ return String(g_variant_get_string(variant.get(), 0));
+ }
+
+ virtual void setProperty(const String& name, const String& value)
+ {
+ // Avoid setting unknown keys to avoid aborting the execution.
+ if (shouldIgnoreSetting(name))
+ return;
+
+ GSettings* settings = inspectorGSettings();
+ if (!settings)
+ return;
+
+ GRefPtr<GVariant> variant = adoptGRef(g_variant_new_string(value.utf8().data()));
+ g_settings_set_value(settings, name.utf8().data(), variant.get());
+ }
+#else
+ virtual String getProperty(const String&)
+ {
+ notImplemented();
+ return String();
+ }
+
+ virtual void setProperty(const String&, const String&)
+ {
+ notImplemented();
+ }
+#endif // HAVE_GSETTINGS
+};
+
+} // namespace
+
InspectorClient::InspectorClient(WebKitWebView* webView)
: m_inspectedWebView(webView)
, m_frontendPage(0)
@@ -113,117 +172,6 @@ void InspectorClient::hideHighlight()
gtk_widget_queue_draw(GTK_WIDGET(m_inspectedWebView));
}
-#ifdef HAVE_GSETTINGS
-static String toGSettingName(String inspectorSettingName)
-{
- if (inspectorSettingName == "resourceTrackingEnabled")
- return String("resource-tracking-enabled");
-
- if (inspectorSettingName == "xhrMonitor")
- return String("xhr-monitor-enabled");
-
- if (inspectorSettingName == "frontendSettings")
- return String("frontend-settings");
-
- if (inspectorSettingName == "debuggerEnabled")
- return String("debugger-enabled");
-
- if (inspectorSettingName == "profilerEnabled")
- return String("profiler-enabled");
-
- return inspectorSettingName;
-}
-
-static String truthStringFromVariant(GVariant* variant)
-{
- if (g_variant_get_boolean(variant))
- return String("true");
-
- return String("false");
-}
-
-static GVariant* variantFromTruthString(const String& truth)
-{
- if (truth == "true")
- return g_variant_new_boolean(TRUE);
-
- return g_variant_new_boolean(FALSE);
-}
-
-static bool shouldIgnoreSetting(const String& key)
-{
- // Ignore this setting for now, it doesn't seem to be used for
- // anything right now.
- if (key == "lastActivePanel")
- return true;
-
- // GSettings considers trying to fetch or set a setting that is
- // not backed by a schema as programmer error, and aborts the
- // program's execution. We check here to avoid having an unhandled
- // setting as a fatal error.
- if (key == "resourceTrackingEnabled" || key == "xhrMonitor"
- || key == "frontendSettings" || key == "debuggerEnabled"
- || key == "profilerEnabled")
- return false;
-
- LOG_VERBOSE(NotYetImplemented, "Unknown key ignored: %s", key.ascii().data());
- return true;
-}
-
-void InspectorClient::populateSetting(const String& key, String* value)
-{
- if (shouldIgnoreSetting(key))
- return;
-
- GSettings* settings = inspectorGSettings();
- if (!settings)
- return;
-
- GRefPtr<GVariant> variant = adoptGRef(g_settings_get_value(settings, toGSettingName(key).utf8().data()));
-
- if (key == "resourceTrackingEnabled" || key == "xhrMonitor"
- || key == "debuggerEnabled" || key == "profilerEnabled")
- *value = truthStringFromVariant(variant.get());
- else if (key == "frontendSettings")
- *value = String(g_variant_get_string(variant.get(), 0));
-}
-
-void InspectorClient::storeSetting(const String& key, const String& value)
-{
- if (shouldIgnoreSetting(key))
- return;
-
- GSettings* settings = inspectorGSettings();
- if (!settings)
- return;
-
- GRefPtr<GVariant> variant(0);
-
- // Set the key with the appropriate type, and also avoid setting
- // unknown keys to avoid aborting the execution.
- if (key == "resourceTrackingEnabled" || key == "xhrMonitor"
- || key == "debuggerEnabled" || key == "profilerEnabled")
- variant = adoptGRef(variantFromTruthString(value));
- else if (key == "frontendSettings")
- variant = adoptGRef(g_variant_new_string(value.utf8().data()));
-
- if (!variant)
- return;
-
- g_settings_set_value(settings, toGSettingName(key).utf8().data(), variant.get());
-}
-#else
-void InspectorClient::populateSetting(const String&, String*)
-{
- notImplemented();
-}
-
-void InspectorClient::storeSetting(const String&, const String&)
-{
- notImplemented();
-}
-#endif // HAVE_GSETTINGS
-
bool InspectorClient::sendMessageToFrontend(const String& message)
{
return doDispatchMessageOnFrontendPage(m_frontendPage, message);
@@ -244,7 +192,7 @@ const char* InspectorClient::inspectorFilesPath()
}
InspectorFrontendClient::InspectorFrontendClient(WebKitWebView* inspectedWebView, WebKitWebView* inspectorWebView, WebKitWebInspector* webInspector, Page* inspectorPage, InspectorClient* inspectorClient)
- : InspectorFrontendClientLocal(core(inspectedWebView)->inspectorController(), inspectorPage)
+ : InspectorFrontendClientLocal(core(inspectedWebView)->inspectorController(), inspectorPage, new InspectorFrontendSettingsGtk())
, m_inspectorWebView(inspectorWebView)
, m_inspectedWebView(inspectedWebView)
, m_webInspector(webInspector)
diff --git a/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h b/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h
index 08038f6..d5918ba 100644
--- a/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h
+++ b/Source/WebKit/gtk/WebCoreSupport/InspectorClientGtk.h
@@ -59,9 +59,6 @@ namespace WebKit {
virtual void highlight(WebCore::Node*);
virtual void hideHighlight();
- virtual void populateSetting(const WTF::String& key, WTF::String* value);
- virtual void storeSetting(const WTF::String& key, const WTF::String& value);
-
virtual bool sendMessageToFrontend(const WTF::String&);
void releaseFrontendPage();
diff --git a/Source/WebKit/gtk/po/ChangeLog b/Source/WebKit/gtk/po/ChangeLog
index d65468e..891c4ef 100644
--- a/Source/WebKit/gtk/po/ChangeLog
+++ b/Source/WebKit/gtk/po/ChangeLog
@@ -1,3 +1,82 @@
+2011-02-10 Christian Dywan <christian@lanedo.com>
+
+ Unreviewed translation file.
+
+ French translation for Webkit/GTK
+ https://bugs.webkit.org/show_bug.cgi?id=26108
+
+ * fr.po: Added.
+
+2011-02-09 Christian Dywan <christian@lanedo.com>
+
+ Unreviewed translation file.
+
+ Update Simplified Chinese (zh_CN) translation of WebKitGtk
+ https://bugs.webkit.org/show_bug.cgi?id=42496
+
+ * zh_CN.po: Updated.
+
+2011-02-09 Christian Dywan <christian@lanedo.com>
+
+ Please add Greek translation of WebkitGTK+
+ https://bugs.webkit.org/show_bug.cgi?id=34482
+
+ * gr.po: Added.
+
+2011-02-09 Christian Dywan <christian@lanedo.com>
+
+ Unreviewed translation file.
+
+ Arabic translation
+ https://bugs.webkit.org/show_bug.cgi?id=36340
+
+ * ar.po: Added.
+
+2011-02-09 Christian Dywan <christian@lanedo.com>
+
+ Unreviewed translation file.
+
+ Attached is the Bulgarian translation of WebKit Gtk
+ https://bugs.webkit.org/show_bug.cgi?id=44400
+
+ * bg.po: Added.
+
+2011-02-09 Christian Dywan <christian@lanedo.com>
+
+ Unreviewed translation file.
+
+ [l10n] Indonesian translation
+ https://bugs.webkit.org/show_bug.cgi?id=46455
+
+ * id.po: Added.
+
+2011-02-09 Christian Dywan <christian@lanedo.com>
+
+ Unreviewed translation file.
+
+ [l10n] Polish translation of WebKitGTK+
+ https://bugs.webkit.org/show_bug.cgi?id=46567
+
+ * pl.po: Added.
+
+2011-02-09 Christian Dywan <christian@lanedo.com>
+
+ Unreviewed translation file.
+
+ [Gtk] Please add Hungarian translation
+ https://bugs.webkit.org/show_bug.cgi?id=34543
+
+ * hu.po: Added.
+
+2011-02-02 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] po files path update after the code moved to Source
+ https://bugs.webkit.org/show_bug.cgi?id=53599
+
+ * POTFILES: Add Source to the path of the files.
+
2011-01-16 Adam Barth <abarth@webkit.org>
Rubber-stamped by Eric Seidel.
diff --git a/Source/WebKit/gtk/po/POTFILES b/Source/WebKit/gtk/po/POTFILES
index ffd0015..fe3167c 100644
--- a/Source/WebKit/gtk/po/POTFILES
+++ b/Source/WebKit/gtk/po/POTFILES
@@ -1,13 +1,13 @@
# List of source files which contain translatable strings.
-WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
-WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp
-WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp
-WebKit/gtk/webkit/webkitdownload.cpp
-WebKit/gtk/webkit/webkitsoupauthdialog.c
-WebKit/gtk/webkit/webkitwebframe.cpp
-WebKit/gtk/webkit/webkitwebhistoryitem.cpp
-WebKit/gtk/webkit/webkitwebinspector.cpp
-WebKit/gtk/webkit/webkitwebnavigationaction.cpp
-WebKit/gtk/webkit/webkitwebsettings.cpp
-WebKit/gtk/webkit/webkitwebview.cpp
-WebCore/platform/gtk/LocalizedStringsGtk.cpp
+Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
+Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp
+Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp
+Source/WebKit/gtk/webkit/webkitdownload.cpp
+Source/WebKit/gtk/webkit/webkitsoupauthdialog.c
+Source/WebKit/gtk/webkit/webkitwebframe.cpp
+Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp
+Source/WebKit/gtk/webkit/webkitwebinspector.cpp
+Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp
+Source/WebKit/gtk/webkit/webkitwebsettings.cpp
+Source/WebKit/gtk/webkit/webkitwebview.cpp
+Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp
diff --git a/Source/WebKit/gtk/po/ar.po b/Source/WebKit/gtk/po/ar.po
new file mode 100644
index 0000000..fa7b6ca
--- /dev/null
+++ b/Source/WebKit/gtk/po/ar.po
@@ -0,0 +1,1080 @@
+# This file is put in the public domain.
+# Khaled Hosny <khaledhosny@eglug.org>, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: webkit 1.1.4\n"
+"Report-Msgid-Bugs-To: http://bugs.webkit.org/\n"
+"POT-Creation-Date: 2010-02-25 15:53-0300\n"
+"PO-Revision-Date: 2010-03-19 06:43+0300\n"
+"Last-Translator: Khaled Hosny <khaledhosny@eglug.org>\n"
+"Language-Team: Arabic <doc@arabeyes.org>\n"
+"Language: ar\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
+"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
+"X-Generator: Virtaal 0.5.2\n"
+
+#: WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp:535
+msgid "Upload File"
+msgstr "ارفع ملفا"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:61
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:143
+msgid "Input _Methods"
+msgstr "طرق ال_إدخال"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:78
+msgid "LRM _Left-to-right mark"
+msgstr "علامة يسار إلى _يمين (LRM)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:79
+msgid "RLM _Right-to-left mark"
+msgstr "علامة ي_مين إلى يسار (RLM)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:80
+msgid "LRE Left-to-right _embedding"
+msgstr "_غرس يسار إلى يمين (LRE)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:81
+msgid "RLE Right-to-left e_mbedding"
+msgstr "غ_رس يمين إلى يسار (RLE)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:82
+msgid "LRO Left-to-right _override"
+msgstr "_تخطي يسار إلى يمين (LRO)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:83
+msgid "RLO Right-to-left o_verride"
+msgstr "ت_خطي يمين إلى يسار (RLO)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:84
+msgid "PDF _Pop directional formatting"
+msgstr "أزل تن_سيق الاتجاه (PDF)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:85
+msgid "ZWS _Zero width space"
+msgstr "مسافة _صفرية العرض (ZWS)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:86
+msgid "ZWJ Zero width _joiner"
+msgstr "_واصل صفري العرض (ZWJ)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:87
+msgid "ZWNJ Zero width _non-joiner"
+msgstr "_فاصل صفري العرض (ZWNJ)"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:109
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:138
+msgid "_Insert Unicode Control Character"
+msgstr "أ_درج محرف تحكم يونيكود"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:266
+msgid "Network Request"
+msgstr "طلب الشبكة"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:267
+msgid "The network request for the URI that should be downloaded"
+msgstr "طلب الشبكة للمسار الذي سيُنزّل"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:281
+msgid "Network Response"
+msgstr "استجابة الشبكة"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:282
+msgid "The network response for the URI that should be downloaded"
+msgstr "استجابة الشبكة للمسار الذي سيُنزّل"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:296
+msgid "Destination URI"
+msgstr "المسار المقصِد"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:297
+msgid "The destination URI where to save the file"
+msgstr "مسار حفظ الملف"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:311
+msgid "Suggested Filename"
+msgstr "اسم الملف المقترح"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:312
+msgid "The filename suggested as default when saving"
+msgstr "اسم الملف المقترح مبدئيا عند الحفظ"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:329
+msgid "Progress"
+msgstr "التقدّم"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:330
+msgid "Determines the current progress of the download"
+msgstr "يحدد التقدم الحالي للتنزيل"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:343
+msgid "Status"
+msgstr "الحالة"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:344
+msgid "Determines the current status of the download"
+msgstr "يحدد الحالة الحالية للتنزيل"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:359
+msgid "Current Size"
+msgstr "الحجم الحالي"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:360
+msgid "The length of the data already downloaded"
+msgstr "حجم البيانات التي نُزِّلت بالفعل"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:374
+msgid "Total Size"
+msgstr "الحجم الكلي"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:375
+msgid "The total size of the file"
+msgstr "الحجم الكلي للملف"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:526
+msgid "User cancelled the download"
+msgstr "ألغى المستخدم التنزيل"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:248
+#, c-format
+msgid "A username and password are being requested by the site %s"
+msgstr "يطلب الموقع %s اسم مستخدم وكلمة سر"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:278
+msgid "Server message:"
+msgstr "رسالة الخادوم:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:291
+msgid "Username:"
+msgstr "اسم المستخدم:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:293
+msgid "Password:"
+msgstr "كلمة السر:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:302
+msgid "_Remember password"
+msgstr "ت_ذكّر كلمة السر"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:298
+msgid "Name"
+msgstr "الاسم"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:299
+msgid "The name of the frame"
+msgstr "اسم الإطار"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:305
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:146
+#: WebKit/gtk/webkit/webkitwebview.cpp:2318
+msgid "Title"
+msgstr "العنوان"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:306
+msgid "The document title of the frame"
+msgstr "عنوان المستند للإطار"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:312
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:178
+#: WebKit/gtk/webkit/webkitwebview.cpp:2332
+msgid "URI"
+msgstr "المسار"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:313
+msgid "The current URI of the contents displayed by the frame"
+msgstr "المسار الحالي للمحتوى المعروض في الإطار"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:344
+msgid "Horizontal Scrollbar Policy"
+msgstr "سياسة عمود اللف الأفقي"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:345
+msgid ""
+"Determines the current policy for the horizontal scrollbar of the frame."
+msgstr "تحدد سياسة عمود اللف الأفقي الحالية للإطار."
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:362
+msgid "Vertical Scrollbar Policy"
+msgstr "سياسة عمود اللف الرأسي"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:363
+msgid "Determines the current policy for the vertical scrollbar of the frame."
+msgstr "تحدد سياسة عمود اللف الرأسي الحالية للإطار."
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:147
+msgid "The title of the history item"
+msgstr "عنوان عنصر التأريخ"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:162
+msgid "Alternate Title"
+msgstr "العنوان البديل"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:163
+msgid "The alternate title of the history item"
+msgstr "العنوان البديل لعنصر التأريخ"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:179
+msgid "The URI of the history item"
+msgstr "مسار عنصر التأريخ"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:194
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:173
+msgid "Original URI"
+msgstr "المسار الأصلي"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:195
+msgid "The original URI of the history item"
+msgstr "المسار الأصلي لعنصر التأريخ"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:210
+msgid "Last visited Time"
+msgstr "وقت آخر زيارة"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:211
+msgid "The time at which the history item was last visited"
+msgstr "وقت آخر زيارة لعنصر التأريخ"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:268
+msgid "Web View"
+msgstr "منظور الوب"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:269
+msgid "The Web View that renders the Web Inspector itself"
+msgstr "منظور الوب الذي يعرض فاحِص الوب ذاته"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:282
+msgid "Inspected URI"
+msgstr "المسار المفحوص"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:283
+msgid "The URI that is currently being inspected"
+msgstr "المسار الذي يُفحص حاليا"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:299
+msgid "Enable JavaScript profiling"
+msgstr "فعّل تحسين جافاسكربت"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:300
+msgid "Profile the executed JavaScript."
+msgstr "حسّ ونفّذ جافاسكربت"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:315
+msgid "Enable Timeline profiling"
+msgstr "فعّل تحسين الخط الزمني"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:316
+msgid "Profile the WebCore instrumentation."
+msgstr "حسّن أداء وب‌كور."
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:158
+msgid "Reason"
+msgstr "السبب"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:159
+msgid "The reason why this navigation is occurring"
+msgstr "سبب حدوث هذا التصفح"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:174
+msgid "The URI that was requested as the target for the navigation"
+msgstr "المسار الذي طُلب مصدرا للتصفح"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:188
+msgid "Button"
+msgstr "زر"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:189
+msgid "The button used to click"
+msgstr "الزر المستخدم للنقر"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:204
+msgid "Modifier state"
+msgstr "حالة المُغيّر"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:205
+msgid "A bitmask representing the state of the modifier keys"
+msgstr "قناع البت الممثل لحالة المُغيّر"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:220
+msgid "Target frame"
+msgstr "الإطار الهدف"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:221
+msgid "The target frame for the navigation"
+msgstr "الإطار هدف الإبحار"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:237
+msgid "Default Encoding"
+msgstr "الترميز المبدئي"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:238
+msgid "The default encoding used to display text."
+msgstr "الترميز المبدئي المستخدم لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:246
+msgid "Cursive Font Family"
+msgstr "عائلة الخط المتصل"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:247
+msgid "The default Cursive font family used to display text."
+msgstr "عائلة الخط المتصل المبدئية المستخدمة لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:255
+msgid "Default Font Family"
+msgstr "عائلة الخط المبدئية"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:256
+msgid "The default font family used to display text."
+msgstr "عائلة الخط المبدئية المستخدمة لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:264
+msgid "Fantasy Font Family"
+msgstr "عائلة الخط الخيالي"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:265
+msgid "The default Fantasy font family used to display text."
+msgstr "عائلة الخط الخيالي المبدئية المستخدمة لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:273
+msgid "Monospace Font Family"
+msgstr "عائلة الخط ثابت العرض"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:274
+msgid "The default font family used to display monospace text."
+msgstr "عائلة الخط ثابت العرض المستخدمة لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:282
+msgid "Sans Serif Font Family"
+msgstr "عائلة الخط غير المذيّل"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:283
+msgid "The default Sans Serif font family used to display text."
+msgstr "عائلة الخط غير المذيل المبدئية المستخدمة لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:291
+msgid "Serif Font Family"
+msgstr "عائلة الخط المذيّل"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:292
+msgid "The default Serif font family used to display text."
+msgstr "عائلة الخط المذيل المبدئية المستخدمة لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:300
+msgid "Default Font Size"
+msgstr "حجم الخط المبدئي"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:301
+msgid "The default font size used to display text."
+msgstr "حجم الخط المبدئي المستخدم لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:309
+msgid "Default Monospace Font Size"
+msgstr "حجم الخط ثابت العرض المبدئي"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:310
+msgid "The default font size used to display monospace text."
+msgstr "حجم الخط المبدئي المستخدم لعرض النص ثابت العرض."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:318
+msgid "Minimum Font Size"
+msgstr "الحد الأدنى لحجم خط"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:319
+msgid "The minimum font size used to display text."
+msgstr "الحد الأدنى لحجم الخط المستخدم لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:327
+msgid "Minimum Logical Font Size"
+msgstr "حجم الخط المنطقي الأدنى"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:328
+msgid "The minimum logical font size used to display text."
+msgstr "الحد الأدنى لحجم الخط المنطقي المستخدم لعرض النص."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:347
+msgid "Enforce 96 DPI"
+msgstr "افرض 96 نقطة\\بوصة"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:348
+msgid "Enforce a resolution of 96 DPI"
+msgstr "افرض ميز 96 نقطة\\بوصة"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:356
+msgid "Auto Load Images"
+msgstr "حمّل الصور تلقائيا"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:357
+msgid "Load images automatically."
+msgstr "حمّل الصور تلقائيا."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:365
+msgid "Auto Shrink Images"
+msgstr "اكمش الصور تلقائيا"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:366
+msgid "Automatically shrink standalone images to fit."
+msgstr "اكمش الصور المستقلة بذاتها تلقائيا لتناسب الصفحة."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:374
+msgid "Print Backgrounds"
+msgstr "اطبع الخلفيات"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:375
+msgid "Whether background images should be printed."
+msgstr "ما إذا كانت صور الخلفية ستُطبع."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:383
+msgid "Enable Scripts"
+msgstr "فعّل السكربتات"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:384
+msgid "Enable embedded scripting languages."
+msgstr "ما إذا كانت ستفعل لغات البرمجة المضمنة."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:392
+msgid "Enable Plugins"
+msgstr "فعّل الملحقات"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:393
+msgid "Enable embedded plugin objects."
+msgstr "ما إذا كانت ستفعل عناصر الملحقات المضمنة."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:401
+msgid "Resizable Text Areas"
+msgstr "مناطق النص قابلة للتحجين"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:402
+msgid "Whether text areas are resizable."
+msgstr "ما إذا كانت مناطق النص قابلة للتحجيم."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:409
+msgid "User Stylesheet URI"
+msgstr "مسار صفحة طراز المستخدم"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:410
+msgid "The URI of a stylesheet that is applied to every page."
+msgstr "مسار صفحة طراز تطبّق على كل صفحة."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:425
+msgid "Zoom Stepping Value"
+msgstr "قيمة زيادة التقريب"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:426
+msgid "The value by which the zoom level is changed when zooming in or out."
+msgstr "القيمة التي يتغير بها مستوى التقريب مع كل رفع أو خفض."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:444
+msgid "Enable Developer Extras"
+msgstr "فعّل إضافيات المطورين"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:445
+msgid "Enables special extensions that help developers"
+msgstr "فعّل امتدادات خاصة تفيد المطورين"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:465
+msgid "Enable Private Browsing"
+msgstr "فعّل التصفح الخاص"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:466
+msgid "Enables private browsing mode"
+msgstr "فعّل وضع التصفح الخاص"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:481
+msgid "Enable Spell Checking"
+msgstr "فعّل التدقيق الإملائي"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:482
+msgid "Enables spell checking while typing"
+msgstr "فعّل التدقيق الإملائي أثناء الكتابة"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:505
+msgid "Languages to use for spell checking"
+msgstr "اللغات التي ستستخدم في التدقيق الإملائي"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:506
+msgid "Comma separated list of languages to use for spell checking"
+msgstr "قائمة مفصولة بفاصلة من اللغات التي ستستخدم في التدقيق الإملائي"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:520
+msgid "Enable Caret Browsing"
+msgstr "فعّل التصفح بالمؤشر"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:521
+msgid "Whether to enable accesibility enhanced keyboard navigation"
+msgstr "ما إذا سيُفعّل التصفح بفأرة المفاتيح المحسّن للإتاحة"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:536
+msgid "Enable HTML5 Database"
+msgstr "فعّل قاعدة بيانات HTML5"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:537
+msgid "Whether to enable HTML5 database support"
+msgstr "ما إذا سيفعل دعم قاعدة بيانات HTML5"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:552
+msgid "Enable HTML5 Local Storage"
+msgstr "فعّل تخزين HTML5 المحلي"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:553
+msgid "Whether to enable HTML5 Local Storage support"
+msgstr "ما إذا سيفعل دعم تخزين HTML5 المحلي"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:567
+msgid "Enable XSS Auditor"
+msgstr "فعّل مراجع XSS"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:568
+msgid "Whether to enable teh XSS auditor"
+msgstr "ما إذا سيفعل مراجع XSS"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:586
+msgid "User Agent"
+msgstr "عميل المستخدم"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:587
+msgid "The User-Agent string used by WebKitGtk"
+msgstr "مقطع عميل المستخدم الذي تستخدمه WebKitGtk"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:602
+msgid "JavaScript can open windows automatically"
+msgstr "يمكن لجافاسكربت فتح النوافذ تلقائيا"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:603
+msgid "Whether JavaScript can open windows automatically"
+msgstr "ما إذا كان يمكن لجافاسكربت فتح النوافذ تلقائيا"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:618
+msgid "Enable offline web application cache"
+msgstr "فعّل خبيئة تطبيقات الوب المحلية"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:619
+msgid "Whether to enable offline web application cache"
+msgstr "ما إذا ستُفعل خبيئة تطبيقات الوب المحلية"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:646
+msgid "Editing behavior"
+msgstr "سلوك التحرير"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:647
+msgid "The behavior mode to use in editing mode"
+msgstr "نمط التحرير المستخدم في وضع التحرير"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:663
+msgid "Enable universal access from file URIs"
+msgstr "فعّل الوصول العام من مسارات الملفات"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:664
+msgid "Whether to allow universal access from file URIs"
+msgstr "ما إذا سيُسمح بالوصول العام من مسارات الملفات"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:679
+msgid "Enable DOM paste"
+msgstr "فعّل لصق DOM"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:680
+msgid "Whether to enable DOM paste"
+msgstr "ما إذا سيفعل لصق DOM"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:698
+msgid "Tab key cycles through elements"
+msgstr "زر التبويب يتنقل بين العناصر"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:699
+msgid "Whether the tab key cycles through elements on the page."
+msgstr "ما إذا كان زر التبويب يتنقل بين عناصر الصفحة."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:719
+msgid "Enable Default Context Menu"
+msgstr "فعّل قائمة السياق المبدئية"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:720
+msgid ""
+"Enables the handling of right-clicks for the creation of the default context "
+"menu"
+msgstr "يفعّل معالجة النقر الأيمن لإنشاء قائمة السياق المبدئية"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:740
+msgid "Enable Site Specific Quirks"
+msgstr "فعّل الحيل الخاصة بمواقع معينة"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:741
+msgid "Enables the site-specific compatibility workarounds"
+msgstr "فعّل حيل التوافقية الخاصة بمواقع معينة"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:763
+msgid "Enable page cache"
+msgstr "فعّل خبيئة الصفحات"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:764
+msgid "Whether the page cache should be used"
+msgstr "ما إذا وجب استخدام خبيئة للصفحات"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:784
+msgid "Auto Resize Window"
+msgstr "غيّر حجم النافذة تلقائيا"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:785
+msgid "Automatically resize the toplevel window when a page requests it"
+msgstr "غيّر حجم النافذة الأساسية تلقائيا عندما تطلب صفحة ذلك."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:817
+msgid "Enable Java Applet"
+msgstr "فعل بريمج جافا"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:818
+msgid "Whether Java Applet support through <applet> should be enabled"
+msgstr "ما إذا سيفعل دعم بريمج جافا عبر <applet>"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2319
+msgid "Returns the @web_view's document title"
+msgstr "يعيد عنوان مستند @web_view"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2333
+msgid "Returns the current URI of the contents displayed by the @web_view"
+msgstr "يعيد المسار الحالي للمحتوى المعرض في @web_view"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2346
+msgid "Copy target list"
+msgstr "قائمة مقاصِد النسخ"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2347
+msgid "The list of targets this web view supports for clipboard copying"
+msgstr "قائمة المقاصِد الذي يدعم منظور الوب هذا نسخها إلى الحافظة"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2360
+msgid "Paste target list"
+msgstr "قائمة مقاصِد اللصق"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2361
+msgid "The list of targets this web view supports for clipboard pasting"
+msgstr "قائمة المقاصِد الذي يدعم منظور الوب هذا لصقها من الحافظة"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2367
+msgid "Settings"
+msgstr "الإعدادات"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2368
+msgid "An associated WebKitWebSettings instance"
+msgstr "سيرورة WebKitWebSettings مرتبطة"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2381
+msgid "Web Inspector"
+msgstr "فاحِص الوِب"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2382
+msgid "The associated WebKitWebInspector instance"
+msgstr "سيرورة WebKitWebInspector المرتبطة"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2402
+msgid "Editable"
+msgstr "قابل للتّحرير"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2403
+msgid "Whether content can be modified by the user"
+msgstr "فيما إذا يمكن للمستخدم تعديل النص"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2409
+msgid "Transparent"
+msgstr "شفّافة"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2410
+msgid "Whether content has a transparent background"
+msgstr "فيما إذا كانت خلفية النص شفافة"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2423
+msgid "Zoom level"
+msgstr "مستوى التقريب"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2424
+msgid "The level of zoom of the content"
+msgstr "مستوى تقريب المحتوى"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2439
+msgid "Full content zoom"
+msgstr "تقريب كامل للمحتوى"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2440
+msgid "Whether the full content is scaled when zooming"
+msgstr "ما إذا كان كل المحتوى سيُقرّب"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2453
+msgid "Encoding"
+msgstr "الترميز"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2454
+msgid "The default encoding of the web view"
+msgstr "الترميز المبدئي لمنظور الوب"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2467
+msgid "Custom Encoding"
+msgstr "ترميز مطوع"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2468
+msgid "The custom encoding of the web view"
+msgstr "الترميز المطوع لمنظور الوب"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2520
+msgid "Icon URI"
+msgstr "مسار الأيقونة"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2521
+msgid "The URI for the favicon for the #WebKitWebView."
+msgstr "مسار أيقونة #WebKitWebView المفضلة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:55
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:60
+msgid "Submit"
+msgstr "أرسل"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:65
+msgid "Reset"
+msgstr "صفّر"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:70
+msgid "This is a searchable index. Enter search keywords: "
+msgstr "هذا فهرس قابل للبحث. أدخل عبارات البحث: "
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:75
+msgid "Choose File"
+msgstr "اختر ملفا"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:80
+msgid "(None)"
+msgstr "(لا شيء)"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:85
+msgid "Open Link in New _Window"
+msgstr "افتح الوص_لة في نافذة جديدة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:90
+msgid "_Download Linked File"
+msgstr "_نزّل الملف المرتبط"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:95
+msgid "Copy Link Loc_ation"
+msgstr "ا_نسخ موقع الوصلة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:100
+msgid "Open _Image in New Window"
+msgstr "افتح ال_صورة في نافذة جديدة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:105
+msgid "Sa_ve Image As"
+msgstr "ا&حفط الصورة ك‍"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:110
+msgid "Cop_y Image"
+msgstr "ان_سخ الصورة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:115
+msgid "Open _Frame in New Window"
+msgstr "افتح الإ_طار في نافذة جديدة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:166
+msgid "_Reload"
+msgstr "أ_عد التحميل"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:183
+msgid "No Guesses Found"
+msgstr "لا تخمينات"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:188
+msgid "_Ignore Spelling"
+msgstr "تجا_هل الإملاء"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:193
+msgid "_Learn Spelling"
+msgstr "ت_علّم الإملاء"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:198
+msgid "_Search the Web"
+msgstr "اب_حث في الوِب"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:203
+msgid "_Look Up in Dictionary"
+msgstr "اب_حث في القاموس"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:208
+msgid "_Open Link"
+msgstr "ا_فتح الرابط"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:213
+msgid "Ignore _Grammar"
+msgstr "تجاهل ال_قواعد"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:218
+msgid "Spelling and _Grammar"
+msgstr "الإملاء وال_قواعد"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:223
+msgid "_Show Spelling and Grammar"
+msgstr "أ_ظهر الإملاء والقواعد"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:223
+msgid "_Hide Spelling and Grammar"
+msgstr "أ_خفِ الإملاء والقواعد"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:228
+msgid "_Check Document Now"
+msgstr "_دقق المستند الآن"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:233
+msgid "Check Spelling While _Typing"
+msgstr "دقق الإ_ملاء أثناء الكتابة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:238
+msgid "Check _Grammar With Spelling"
+msgstr "دقق ال_قواعد والإملاء أثناء"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:243
+msgid "_Font"
+msgstr "ال_خط"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:266
+msgid "_Outline"
+msgstr "ال_حدود"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:271
+msgid "Inspect _Element"
+msgstr "افحص ال_عنصر"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:276
+msgid "No recent searches"
+msgstr "لا بحوث حديثة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:281
+msgid "Recent searches"
+msgstr "البحوث الحديثة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:286
+msgid "_Clear recent searches"
+msgstr "ام_سح البحوث الحديثة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:291
+msgid "term"
+msgstr "مصطلح"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:296
+msgid "definition"
+msgstr "تعريف"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:301
+msgid "press"
+msgstr "ضغط"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:306
+msgid "select"
+msgstr "اختيار"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:311
+msgid "activate"
+msgstr "تنشيط"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:316
+msgid "uncheck"
+msgstr "رفع التحديد"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:321
+msgid "check"
+msgstr "تحديد"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:326
+msgid "jump"
+msgstr "قفز"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:342
+msgid " files"
+msgstr "ملفات "
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:347
+msgid "Unknown"
+msgstr "مجهول"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:364
+msgid "Loading..."
+msgstr "يحمّل..."
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:369
+msgid "Live Broadcast"
+msgstr "إذاعة حية"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:375
+msgid "audio element controller"
+msgstr "متحكم عنصر صوت"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:377
+msgid "video element controller"
+msgstr "متحكم عنصر فديو"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:379
+msgid "mute"
+msgstr "أصمِت"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:381
+msgid "unmute"
+msgstr "افتح"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:383
+msgid "play"
+msgstr "شغّل"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:385
+msgid "pause"
+msgstr "ألبِث"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:387
+msgid "movie time"
+msgstr "وقت الفلم"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:389
+msgid "timeline slider thumb"
+msgstr "مصغرة شريط الوقت الجانبي"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:391
+msgid "back 30 seconds"
+msgstr "للخلف 30 ثانية"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:393
+msgid "return to realtime"
+msgstr "ارجع للوقت الحقيقي"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:395
+msgid "elapsed time"
+msgstr "الوقت المنقضي"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:397
+msgid "remaining time"
+msgstr "الوقت المتبفي"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:399
+msgid "status"
+msgstr "الحالة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:401
+msgid "fullscreen"
+msgstr "ملء الشاشة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:403
+msgid "fast forward"
+msgstr "تقدم سريع"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:405
+msgid "fast reverse"
+msgstr "رجوع سريع"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:407
+msgid "show closed captions"
+msgstr "أظهر العناوين المغلقة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:409
+msgid "hide closed captions"
+msgstr "أخفِ العناوين المغلقة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:418
+msgid "audio element playback controls and status display"
+msgstr "عرض متحكم وحالة عنصر الصوت"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:420
+msgid "video element playback controls and status display"
+msgstr "عرض متحكم وحالة عنصر الفديو"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:422
+msgid "mute audio tracks"
+msgstr "أصمِت مقاطع الصوت"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:424
+msgid "unmute audio tracks"
+msgstr "افتح مقاطع الصوت"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:426
+msgid "begin playback"
+msgstr "ابدأ التشغيل"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:428
+msgid "pause playback"
+msgstr "ألبِث التشغيل"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:430
+msgid "movie time scrubber"
+msgstr "مسرع وقت الفلم"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:432
+msgid "movie time scrubber thumb"
+msgstr "أصبع مسرع وقت الفلم"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:434
+msgid "seek movie back 30 seconds"
+msgstr "تقدم في الفلم 30 ثانية"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:436
+msgid "return streaming movie to real time"
+msgstr "أعِد الفلم المبثّ في الوقت الحقيقي"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:438
+msgid "current movie time in seconds"
+msgstr "وقت الفلم الحالي بالثواني"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:440
+msgid "number of seconds of movie remaining"
+msgstr "عدد الثواني المتبقية في الفلم"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:442
+msgid "current movie status"
+msgstr "حالة الفلم الحالية"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:444
+msgid "seek quickly back"
+msgstr "ارجع في الفلم بسرعة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:446
+msgid "seek quickly forward"
+msgstr "تقدم في الفلم بسرعة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:448
+msgid "Play movie in fullscreen mode"
+msgstr "شغّل الفلم في نمط ملء الشاشة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:450
+msgid "start displaying closed captions"
+msgstr "ابدأ عرض العناوين المغلقة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:452
+msgid "stop displaying closed captions"
+msgstr "أوقف عرض العناوين المغلقة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:461
+msgid "indefinite time"
+msgstr "وقت غير محدد"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:491
+msgid "value missing"
+msgstr "القيمة ناقصة"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:497
+msgid "type mismatch"
+msgstr "اختلاف في النوع"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:502
+msgid "pattern mismatch"
+msgstr "اختلاف في النمط"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:507
+msgid "too long"
+msgstr "طويل جدا"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:512
+msgid "range underflow"
+msgstr "المدى قليل"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:517
+msgid "range overflow"
+msgstr "المدى فائض"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:522
+msgid "step mismatch"
+msgstr "اختلاف في الخطوة"
+
+#~ msgid "_Searchable Index"
+#~ msgstr "فهرس قابل للب_حث"
diff --git a/Source/WebKit/gtk/po/bg.po b/Source/WebKit/gtk/po/bg.po
new file mode 100644
index 0000000..efa7c52
--- /dev/null
+++ b/Source/WebKit/gtk/po/bg.po
@@ -0,0 +1,1162 @@
+# Bulgarian translation for webkit.
+# Copyright (C) 2010 Free Software Foundation, Inc.
+# This file is distributed under the same license as the webkit package.
+# Ivaylo Valkov <ivaylo@e-valkov.org>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: webkit HEAD\n"
+"Report-Msgid-Bugs-To: http://bugs.webkit.org/\n"
+"POT-Creation-Date: 2010-08-21 15:55+0300\n"
+"PO-Revision-Date: 2010-08-22 12:15+0300\n"
+"Last-Translator: Ivaylo Valkov <ivaylo@e-valkov.org>\n"
+"Language-Team: Bulgarian <dict@fsa-bg.org>\n"
+"Language: bg\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp:569
+msgid "Upload File"
+msgstr "Качване на файл"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:61
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:143
+msgid "Input _Methods"
+msgstr "_Методи за вход"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:78
+msgid "LRM _Left-to-right mark"
+msgstr "Маркер за от_ляво-надясно — LRM"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:79
+msgid "RLM _Right-to-left mark"
+msgstr "Маркер за от_дясно-наляво — RLM"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:80
+msgid "LRE Left-to-right _embedding"
+msgstr "_Вмъкване отляво-надясно — LRE"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:81
+msgid "RLE Right-to-left e_mbedding"
+msgstr "В_мъкване отдясно-наляво — RLE"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:82
+msgid "LRO Left-to-right _override"
+msgstr "_Задаване отляво-надясно — LRO"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:83
+msgid "RLO Right-to-left o_verride"
+msgstr "З_адаване отдясно-наляво — RLO"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:84
+msgid "PDF _Pop directional formatting"
+msgstr "Връ_щане на предишната посока — PDF"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:85
+msgid "ZWS _Zero width space"
+msgstr "_Интервал с нулева широчина — ZWS"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:86
+msgid "ZWJ Zero width _joiner"
+msgstr "_Свръзка с нулева широчина — ZWJ"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:87
+msgid "ZWNJ Zero width _non-joiner"
+msgstr "_Развръзка с нулева широчина — ZWNJ"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:109
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:138
+msgid "_Insert Unicode Control Character"
+msgstr "_Вмъкване на контролен знак за Уникод"
+
+#: WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:385
+msgid "Play"
+msgstr "Изпълнение"
+
+#: WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:387
+msgid "Pause"
+msgstr "Пауза"
+
+#: WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:533
+msgid "Play / Pause"
+msgstr "Изпълнение/пауза"
+
+#: WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:533
+msgid "Play or pause the media"
+msgstr "Изпълнение на медията или пауза"
+
+#: WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:541
+msgid "Time:"
+msgstr "Време:"
+
+#: WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:565
+msgid "Exit Fullscreen"
+msgstr "Изход от цял екран"
+
+#: WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:565
+msgid "Exit from fullscreen mode"
+msgstr "Изход от режима на цял екран"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:272
+msgid "Network Request"
+msgstr "Мрежова заявка"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:273
+msgid "The network request for the URI that should be downloaded"
+msgstr "Мрежовата заявка за адреса, който ще бъде изтеглен"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:287
+msgid "Network Response"
+msgstr "Мрежов отговор"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:288
+msgid "The network response for the URI that should be downloaded"
+msgstr "Мрежовият отговор за адреса, който ще бъде изтеглен"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:302
+msgid "Destination URI"
+msgstr "Целеви адрес"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:303
+msgid "The destination URI where to save the file"
+msgstr "Целевият адрес, където ще бъде запазен файлът"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:317
+msgid "Suggested Filename"
+msgstr "Предложение за името на файла"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:318
+msgid "The filename suggested as default when saving"
+msgstr "Предложение за стандартното име на файла при запазване"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:335
+msgid "Progress"
+msgstr "Напредък"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:336
+msgid "Determines the current progress of the download"
+msgstr "Определя текущият напредък на изтеглянето"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:349
+msgid "Status"
+msgstr "Състояние"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:350
+msgid "Determines the current status of the download"
+msgstr "Определя текущото състояние на изтеглянето"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:365
+msgid "Current Size"
+msgstr "Текущ размер"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:366
+msgid "The length of the data already downloaded"
+msgstr "Размерът на вече изтеглените данни"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:380
+msgid "Total Size"
+msgstr "Общ размер"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:381
+msgid "The total size of the file"
+msgstr "Общият размер на файла"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:532
+msgid "User cancelled the download"
+msgstr "Потребителят отмени изтеглянето"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:249
+#, c-format
+msgid "A username and password are being requested by the site %s"
+msgstr "Страницата „%s“ изисква потребителско име и парола"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:279
+msgid "Server message:"
+msgstr "Съобщение от сървъра:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:292
+msgid "Username:"
+msgstr "Потребителско име:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:294
+msgid "Password:"
+msgstr "Парола:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:303
+msgid "_Remember password"
+msgstr "Запомняне на па_ролата"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:301
+msgid "Name"
+msgstr "Наименование"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:302
+msgid "The name of the frame"
+msgstr "Наименованието на рамката"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:308
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:146
+#: WebKit/gtk/webkit/webkitwebview.cpp:2645
+msgid "Title"
+msgstr "Заглавие"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:309
+msgid "The document title of the frame"
+msgstr "Заглавието на документа в рамката"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:315
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:178
+#: WebKit/gtk/webkit/webkitwebview.cpp:2659
+msgid "URI"
+msgstr "Адрес"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:316
+msgid "The current URI of the contents displayed by the frame"
+msgstr "Текущият адрес на съдържанието, което се изобразява от рамката"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:347
+msgid "Horizontal Scrollbar Policy"
+msgstr "Правила за хоризонталната лента за придвижване"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:348
+msgid ""
+"Determines the current policy for the horizontal scrollbar of the frame."
+msgstr ""
+"Определя текущите правилата за хоризонталната лента за придвижване на "
+"рамката."
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:365
+msgid "Vertical Scrollbar Policy"
+msgstr "Правила за вертикалната лента за придвижване"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:366
+msgid "Determines the current policy for the vertical scrollbar of the frame."
+msgstr ""
+"Определя текущите правила за вертикалната лента за придвижване на рамката."
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:147
+msgid "The title of the history item"
+msgstr "Заглавието на обекта от историята"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:162
+msgid "Alternate Title"
+msgstr "Алтернативно заглавие"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:163
+msgid "The alternate title of the history item"
+msgstr "Алтернативното заглавие на обекта от историята"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:179
+msgid "The URI of the history item"
+msgstr "Адресът на обекта от историята"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:194
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:173
+msgid "Original URI"
+msgstr "Първоначален адрес"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:195
+msgid "The original URI of the history item"
+msgstr "Първоначалният адрес на обекта от историята"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:210
+msgid "Last visited Time"
+msgstr "Време на последно посещение"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:211
+msgid "The time at which the history item was last visited"
+msgstr "Времето, в което обектът от историята е бил посетен последно"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:269
+msgid "Web View"
+msgstr "Уеб изглед"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:270
+msgid "The Web View that renders the Web Inspector itself"
+msgstr "Уеб изгледът, който изобразява уеб инспектора"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:283
+msgid "Inspected URI"
+msgstr "Изследван адрес"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:284
+msgid "The URI that is currently being inspected"
+msgstr "Адресът, който се изследва в момента"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:300
+msgid "Enable JavaScript profiling"
+msgstr "Включване на отчети за JavaScript"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:301
+msgid "Profile the executed JavaScript."
+msgstr "Отчети за изпълнявания JavaScript"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:316
+msgid "Enable Timeline profiling"
+msgstr "Включване на отчети по време"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:317
+msgid "Profile the WebCore instrumentation."
+msgstr "Отчет на производителността чрез диагностичните инструменти на WebCore"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:158
+msgid "Reason"
+msgstr "Причина"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:159
+msgid "The reason why this navigation is occurring"
+msgstr "Причина, поради която се осъществява навигацията"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:174
+msgid "The URI that was requested as the target for the navigation"
+msgstr "Адресът, който е бил заявен като цел за навигацията"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:188
+msgid "Button"
+msgstr "Бутон"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:189
+msgid "The button used to click"
+msgstr "Бутонът, който се използва за натискане"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:204
+msgid "Modifier state"
+msgstr "Състояние на модификатор"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:205
+msgid "A bitmask representing the state of the modifier keys"
+msgstr ""
+"Маска от битове, която представя състоянието на модификаторите на клавиши"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:220
+msgid "Target frame"
+msgstr "Целева рамка"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:221
+msgid "The target frame for the navigation"
+msgstr "Целевата рамка за навигацията"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:241
+msgid "Default Encoding"
+msgstr "Стандартно кодиране"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:242
+msgid "The default encoding used to display text."
+msgstr "Стандартното кодиране, което се използва за показване на текст."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:250
+msgid "Cursive Font Family"
+msgstr "Семейство от курсивни шрифтове"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:251
+msgid "The default Cursive font family used to display text."
+msgstr ""
+"Стандартното семейство от курсивни шрифтове, което се използва за показване "
+"на текст."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:259
+msgid "Default Font Family"
+msgstr "Стандартно семейство от шрифтове"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:260
+msgid "The default font family used to display text."
+msgstr ""
+"Стандартното семейство от шрифтове, което се използва за показване на текст."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:268
+msgid "Fantasy Font Family"
+msgstr "Семейство от шрифтове „Fantasy“"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:269
+msgid "The default Fantasy font family used to display text."
+msgstr ""
+"Стандартното семейство от шрифтове „Fantasy“, което се използва за показване "
+"на текст."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:277
+msgid "Monospace Font Family"
+msgstr "Семейство от равношироки шрифтове"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:278
+msgid "The default font family used to display monospace text."
+msgstr ""
+"Стандартното семейство от шрифтове, което се използва за показване на "
+"равноширок текст."
+
+#
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:286
+msgid "Sans Serif Font Family"
+msgstr "Семейство от шрифтове „Sans Serif“"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:287
+msgid "The default Sans Serif font family used to display text."
+msgstr ""
+"Стандартното семейство от шрифтове „Sans Serif“, което се използва за "
+"показване на текст."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:295
+msgid "Serif Font Family"
+msgstr "Семейство от шрифтове „Serif“"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:296
+msgid "The default Serif font family used to display text."
+msgstr ""
+"Стандартното семейство от шрифтове „Serif“, което се използва за показване "
+"на текст."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:304
+msgid "Default Font Size"
+msgstr "Стандартен размер на шрифта"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:305
+msgid "The default font size used to display text."
+msgstr ""
+"Стандартният размер на шрифта, който се използва за показване на текст."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:313
+msgid "Default Monospace Font Size"
+msgstr "Стандартен размер на равноширок шрифт"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:314
+msgid "The default font size used to display monospace text."
+msgstr ""
+"Стандартният размер, който се използва за показване на равноширок текст"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:322
+msgid "Minimum Font Size"
+msgstr "Най-малък размер на шрифта"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:323
+msgid "The minimum font size used to display text."
+msgstr "Най-малкият размер на шрифта, който се използва за показване на текст."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:331
+msgid "Minimum Logical Font Size"
+msgstr "Най-малък логически размер на шрифта"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:332
+msgid "The minimum logical font size used to display text."
+msgstr ""
+"Най-малкият логически размер на шрифта, който се използва за показване на "
+"текст."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:351
+msgid "Enforce 96 DPI"
+msgstr "Използване на 96 DPI (тчк./инч)"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:352
+msgid "Enforce a resolution of 96 DPI"
+msgstr "Използване на разделителна способност с 96 DPI (тчк./инч)"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:360
+msgid "Auto Load Images"
+msgstr "Автоматично зареждане на изображения"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:361
+msgid "Load images automatically."
+msgstr "Изображенията да се зареждат автоматично."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:369
+msgid "Auto Shrink Images"
+msgstr "Автоматично смаляване на изображения"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:370
+msgid "Automatically shrink standalone images to fit."
+msgstr "Автоматично смаляване на отделни изображения за да се вместят."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:378
+msgid "Print Backgrounds"
+msgstr "Печат на фонове"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:379
+msgid "Whether background images should be printed."
+msgstr "Дали да се отпечатват фоновите изображения."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:387
+msgid "Enable Scripts"
+msgstr "Включване на скриптовете"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:388
+msgid "Enable embedded scripting languages."
+msgstr "Включване на вградените скриптови езици."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:396
+msgid "Enable Plugins"
+msgstr "Включване на приставките"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:397
+msgid "Enable embedded plugin objects."
+msgstr "Включване на обектите, които се обработват от вградени приставки."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:405
+msgid "Resizable Text Areas"
+msgstr "Текстови полета с възможна промяна на размера"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:406
+msgid "Whether text areas are resizable."
+msgstr "Дали размерът на текстовите полета може да бъде променян."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:413
+msgid "User Stylesheet URI"
+msgstr "Адрес за потребителски набор от стилове"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:414
+msgid "The URI of a stylesheet that is applied to every page."
+msgstr "Адресът на набора от стилове, прилагани към всяка страница."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:429
+msgid "Zoom Stepping Value"
+msgstr "Стойност на стъпката за промяна на мащаба"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:430
+msgid "The value by which the zoom level is changed when zooming in or out."
+msgstr "Стойността, с която мащабът се променя при увеличаване или намаляване."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:448
+msgid "Enable Developer Extras"
+msgstr "Включване на разширенията за разработчици"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:449
+msgid "Enables special extensions that help developers"
+msgstr "Включване на специални разширения, които са в помощ на разработчици"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:469
+msgid "Enable Private Browsing"
+msgstr "Включване на „Поверително сърфиране“"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:470
+msgid "Enables private browsing mode"
+msgstr "Включва режим „Поверително сърфиране“"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:485
+msgid "Enable Spell Checking"
+msgstr "Включване на проверка на правописа"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:486
+msgid "Enables spell checking while typing"
+msgstr "Включва проверката на правописа докато въвеждате"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:509
+msgid "Languages to use for spell checking"
+msgstr "Езици, които да се използват при проверка на правописа"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:510
+msgid "Comma separated list of languages to use for spell checking"
+msgstr ""
+"Списък от езици, които да се използват при проверка на правописа. "
+"Използвайте запетаи за разделител."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:524
+msgid "Enable Caret Browsing"
+msgstr "Навигация с курсор"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:525
+msgid "Whether to enable accesibility enhanced keyboard navigation"
+msgstr "Дали да бъде включена навигация чрез клавиатура с повишена достъпност"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:540
+msgid "Enable HTML5 Database"
+msgstr "Включване на базата от данни на HTML5"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:541
+msgid "Whether to enable HTML5 database support"
+msgstr "Дали да бъде включена поддръжката за база от данни на HTML5"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:556
+msgid "Enable HTML5 Local Storage"
+msgstr "Включване на местното хранилище на HTML5"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:557
+msgid "Whether to enable HTML5 Local Storage support"
+msgstr "Дали да бъде включена поддръжката за местно хранилище на HTML5"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:571
+msgid "Enable XSS Auditor"
+msgstr "Включване на проверка за XSS"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:572
+msgid "Whether to enable the XSS auditor"
+msgstr "Дали да бъде включена проверката за атаки чрез XSS"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:590
+msgid "Enable Spatial Navigation"
+msgstr "Включване на навигация с клавиши"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:591
+msgid "Whether to enable Spatial Navigation"
+msgstr "Дали да бъде включена навигацията с клавиши"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:608
+msgid "User Agent"
+msgstr "Потребителски агент"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:609
+msgid "The User-Agent string used by WebKitGtk"
+msgstr "Низът за потребителския агент, използван от WebKitGtk"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:624
+msgid "JavaScript can open windows automatically"
+msgstr "Автоматично отваряне на прозорци чрез JavaScript"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:625
+msgid "Whether JavaScript can open windows automatically"
+msgstr "Дали прозорци могат да се отварят автоматично чрез JavaScript"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:639
+msgid "JavaScript can access Clipboard"
+msgstr "JavaScript да има достъп до буфера за обмен"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:640
+msgid "Whether JavaScript can access Clipboard"
+msgstr "Дали JavaScript да има достъп до буфера за обмен"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:656
+msgid "Enable offline web application cache"
+msgstr "Използване на временни файлове за уеб приложения в режим „Изключен“"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:657
+msgid "Whether to enable offline web application cache"
+msgstr ""
+"Дали да се използват временни файлове за уеб приложения в режим „Изключен“"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:684
+msgid "Editing behavior"
+msgstr "Режим на работа при редактиране"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:685
+msgid "The behavior mode to use in editing mode"
+msgstr "Режимът на работа, който да се използва при редактиране"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:701
+msgid "Enable universal access from file URIs"
+msgstr "Включване на универсален достъп от адреси към файлове"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:702
+msgid "Whether to allow universal access from file URIs"
+msgstr "Дали да бъде разрешен универсалният достъп от адреси към файлове"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:717
+msgid "Enable DOM paste"
+msgstr "Включване на поставяне в DOM"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:718
+msgid "Whether to enable DOM paste"
+msgstr "Дали да се включи възможността за поставяне в DOM"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:736
+msgid "Tab key cycles through elements"
+msgstr "Придвижване през елементи с клавиша „Tab“"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:737
+msgid "Whether the tab key cycles through elements on the page."
+msgstr ""
+"Дали да се осъществява придвижване през елементите в страницата с клавиша "
+"„Tab“."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:757
+msgid "Enable Default Context Menu"
+msgstr "Включване на стандартно контекстно меню"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:758
+msgid ""
+"Enables the handling of right-clicks for the creation of the default context "
+"menu"
+msgstr ""
+"Включва обработката на натискания с десния бутон на мишката, за създаване на "
+"стандартно контекстно меню"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:778
+msgid "Enable Site Specific Quirks"
+msgstr "Включване на особеностите („quircks“) на определени страници"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:779
+msgid "Enables the site-specific compatibility workarounds"
+msgstr "Включва временните решения за съвместимост на определени страници"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:801
+msgid "Enable page cache"
+msgstr "Включване на временни файлове за страницата"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:802
+msgid "Whether the page cache should be used"
+msgstr "Дали да се използват временни файлове за страницата"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:822
+msgid "Auto Resize Window"
+msgstr "Автоматично оразмеряване на прозореца"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:823
+msgid "Automatically resize the toplevel window when a page requests it"
+msgstr ""
+"Автоматично оразмеряване на най-горния прозорец, при заявка от страницата"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:855
+msgid "Enable Java Applet"
+msgstr "Включване на аплетите на Java"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:856
+msgid "Whether Java Applet support through <applet> should be enabled"
+msgstr "Дали да се включи поддръжката за аплети на Java, чрез елемента <applet>"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2646
+msgid "Returns the @web_view's document title"
+msgstr "Връща заглавието на документа за обекта @web_view"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2660
+msgid "Returns the current URI of the contents displayed by the @web_view"
+msgstr ""
+"Връща текущия адрес на съдържанието, което се показва от обекта @web_view"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2673
+msgid "Copy target list"
+msgstr "Списък от цели за копиране"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2674
+msgid "The list of targets this web view supports for clipboard copying"
+msgstr ""
+"Списъкът от цели, които този уеб изглед поддържа за копиране в буфера за "
+"обмен"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2687
+msgid "Paste target list"
+msgstr "Списък от цели за поставяне"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2688
+msgid "The list of targets this web view supports for clipboard pasting"
+msgstr ""
+"Списъкът от цели, които този уеб изглед поддържа за поставяне от буфера за "
+"обмен"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2694
+msgid "Settings"
+msgstr "Настройки"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2695
+msgid "An associated WebKitWebSettings instance"
+msgstr "Копие на дъщерния обект „WebKitWebSettings“"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2708
+msgid "Web Inspector"
+msgstr "Уеб инспектор"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2709
+msgid "The associated WebKitWebInspector instance"
+msgstr "Копие на дъщерния обект „WebKitWebInspector“"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2729
+msgid "Editable"
+msgstr "Редактируемо"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2730
+msgid "Whether content can be modified by the user"
+msgstr "Дали съдържанието може да се променя от потребителя"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2736
+msgid "Transparent"
+msgstr "Прозрачност"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2737
+msgid "Whether content has a transparent background"
+msgstr "Дали съдържанието има прозрачен фон"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2750
+msgid "Zoom level"
+msgstr "Ниво на мащабиране"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2751
+msgid "The level of zoom of the content"
+msgstr "Нивото на увеличаване/намаляване на съдържанието"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2766
+msgid "Full content zoom"
+msgstr "Мащабиране на цялото съдържание"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2767
+msgid "Whether the full content is scaled when zooming"
+msgstr "Дали да се мащабира цялото съдържание, при увеличаване/намаляване"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2780
+msgid "Encoding"
+msgstr "Кодиране"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2781
+msgid "The default encoding of the web view"
+msgstr "Стандартното кодиране на уеб изгледа"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2794
+msgid "Custom Encoding"
+msgstr "Потребителско кодиране"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2795
+msgid "The custom encoding of the web view"
+msgstr "Потребителското кодиране на уеб изгледа"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2847
+msgid "Icon URI"
+msgstr "Адрес на икона"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2848
+msgid "The URI for the favicon for the #WebKitWebView."
+msgstr "Адресът на иконата („favicon“) за обекта „#WebKitWebView“"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:55
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:60
+msgid "Submit"
+msgstr "Изпращане"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:65
+msgid "Reset"
+msgstr "Изчистване"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:70
+msgid "This is a searchable index. Enter search keywords: "
+msgstr "В този индекс може да се търси. Въведете ключови думи за търсене:"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:75
+msgid "Choose File"
+msgstr "Избор на файл"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:80
+msgid "(None)"
+msgstr "(няма избран файл)"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:85
+msgid "Open Link in New _Window"
+msgstr "Отваряне на връзката в нов _прозорец"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:90
+msgid "_Download Linked File"
+msgstr "И_зтегляне на свързания файл"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:95
+msgid "Copy Link Loc_ation"
+msgstr "Копиране на _адреса на връзката"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:100
+msgid "Open _Image in New Window"
+msgstr "Отваряне на _изображението в нов прозорец"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:105
+msgid "Sa_ve Image As"
+msgstr "За_пазване на изображението като"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:110
+msgid "Cop_y Image"
+msgstr "_Копиране на изображението"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:115
+msgid "Open _Frame in New Window"
+msgstr "Отваряне на _рамката в нов прозорец"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:166
+msgid "_Reload"
+msgstr "_Презареждане"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:183
+msgid "No Guesses Found"
+msgstr "Не са намерени предложения"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:188
+msgid "_Ignore Spelling"
+msgstr "_Пренебрегване на правописа"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:193
+msgid "_Learn Spelling"
+msgstr "Запо_мняне на правописа"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:198
+msgid "_Search the Web"
+msgstr "_Търсене в Интернет"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:203
+msgid "_Look Up in Dictionary"
+msgstr "Тъ_рсене в речник"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:208
+msgid "_Open Link"
+msgstr "_Отваряне на връзката"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:213
+msgid "Ignore _Grammar"
+msgstr "Пренебрегване на _граматиката"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:218
+msgid "Spelling and _Grammar"
+msgstr "Правопис и _граматика"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:223
+msgid "_Show Spelling and Grammar"
+msgstr "_Показване на правописа и граматиката"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:223
+msgid "_Hide Spelling and Grammar"
+msgstr "_Скриване на правописа и граматиката"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:228
+msgid "_Check Document Now"
+msgstr "_Проверка на документа в момента"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:233
+msgid "Check Spelling While _Typing"
+msgstr "Проверка на правописа докато _въвеждате"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:238
+msgid "Check _Grammar With Spelling"
+msgstr "Проверка на _граматиката заедно с правописа"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:243
+msgid "_Font"
+msgstr "_Шрифт"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:266
+msgid "_Outline"
+msgstr "_Очертания"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:271
+msgid "Inspect _Element"
+msgstr "_Изследване на елемент"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:276
+msgid "No recent searches"
+msgstr "Няма скоро направени търсения"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:281
+msgid "Recent searches"
+msgstr "Скоро направени търсения"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:286
+msgid "_Clear recent searches"
+msgstr "_Изчистване на скоро направените търсения"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:291
+msgid "term"
+msgstr "термин"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:296
+msgid "definition"
+msgstr "определение"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:301
+msgid "press"
+msgstr "натискане"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:306
+msgid "select"
+msgstr "избиране"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:311
+msgid "activate"
+msgstr "включване"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:316
+msgid "uncheck"
+msgstr "премахване на маркирането"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:321
+msgid "check"
+msgstr "маркиране"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:326
+msgid "jump"
+msgstr "посещаване на връзката"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:341
+msgid "Missing Plug-in"
+msgstr "Липсваща приставка"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:347
+msgid "Plug-in Failure"
+msgstr "Проблем в приставка"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:353
+msgid " files"
+msgstr "файлове"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:358
+msgid "Unknown"
+msgstr "Неизвестен"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:375
+msgid "Loading..."
+msgstr "Зареждане…"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:380
+msgid "Live Broadcast"
+msgstr "Живо предаване"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:386
+msgid "audio element controller"
+msgstr "управляващ елемент за звука"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:388
+msgid "video element controller"
+msgstr "управляващ елемент за картината"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:390
+msgid "mute"
+msgstr "заглушаване"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:392
+msgid "unmute"
+msgstr "премахване на заглушаването"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:394
+msgid "play"
+msgstr "стартиране"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:396
+msgid "pause"
+msgstr "пауза"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:398
+msgid "movie time"
+msgstr "време на филма"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:400
+msgid "timeline slider thumb"
+msgstr "показалец на плъзгача за времевата скала"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:402
+msgid "back 30 seconds"
+msgstr "30 секунди назад"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:404
+msgid "return to realtime"
+msgstr "връщане към реално време"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:406
+msgid "elapsed time"
+msgstr "изминало време"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:408
+msgid "remaining time"
+msgstr "оставащо време"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:410
+msgid "status"
+msgstr "състояние"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:412
+msgid "fullscreen"
+msgstr "на цял екран"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:414
+msgid "fast forward"
+msgstr "бързо напред"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:416
+msgid "fast reverse"
+msgstr "бързо назад"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:418
+msgid "show closed captions"
+msgstr "показване на субтитри"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:420
+msgid "hide closed captions"
+msgstr "скриване на субтитри"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:429
+msgid "audio element playback controls and status display"
+msgstr "бутони за управление на звука и показване на състоянието"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:431
+msgid "video element playback controls and status display"
+msgstr "бутони за управление на картината и показване на състоянието"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:433
+msgid "mute audio tracks"
+msgstr "заглушаване на пистите със звука"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:435
+msgid "unmute audio tracks"
+msgstr "премахване на заглушаването на пистите със звука"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:437
+msgid "begin playback"
+msgstr "изпълнение"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:439
+msgid "pause playback"
+msgstr "пауза"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:441
+msgid "movie time scrubber"
+msgstr "плъзгач за времевата скала на филма"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:443
+msgid "movie time scrubber thumb"
+msgstr "показалец на плъзгача за времевата скала на филма"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:445
+msgid "seek movie back 30 seconds"
+msgstr "търсене 30 секунди назад във филма"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:447
+msgid "return streaming movie to real time"
+msgstr "връщане на филмовия поток към реално време"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:449
+msgid "current movie time in seconds"
+msgstr "текущо време на филма в секунди"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:451
+msgid "number of seconds of movie remaining"
+msgstr "оставащите секунди от филма"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:453
+msgid "current movie status"
+msgstr "текущо състояние на филма"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:455
+msgid "seek quickly back"
+msgstr "бързо търсене назад"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:457
+msgid "seek quickly forward"
+msgstr "бързо търсене напред"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:459
+msgid "Play movie in fullscreen mode"
+msgstr "Изпълнение на филма на цял екран"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:461
+msgid "start displaying closed captions"
+msgstr "показване на субтитри"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:463
+msgid "stop displaying closed captions"
+msgstr "без субтитри"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:472
+msgid "indefinite time"
+msgstr "неопределено време"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:502
+msgid "value missing"
+msgstr "стойността липсва"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:508
+msgid "type mismatch"
+msgstr "несъответствие на вида"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:513
+msgid "pattern mismatch"
+msgstr "несъответствие на шаблона"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:518
+msgid "too long"
+msgstr "текстът е прекалено дълъг"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:523
+msgid "range underflow"
+msgstr "отрицателно препълване на обхвата"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:528
+msgid "range overflow"
+msgstr "препълване на обхвата"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:533
+msgid "step mismatch"
+msgstr "несъответствие на стъпката"
diff --git a/Source/WebKit/gtk/po/fr.po b/Source/WebKit/gtk/po/fr.po
new file mode 100644
index 0000000..670ac6e
--- /dev/null
+++ b/Source/WebKit/gtk/po/fr.po
@@ -0,0 +1,1229 @@
+# French translation of totem.
+# Copyright (C) 2009-2010 Listed translators.
+# This file is distributed under the same license as the webkitgtk+ package.
+#
+# Guillaume Lanquepin <guyomel@gmail.com>, 2009
+# Claude Paroz <claude@2xlibre.net>, 2010
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: webkitgtk+ HEAD fr\n"
+"Report-Msgid-Bugs-To: http://bugs.webkit.org/\n"
+"POT-Creation-Date: 2011-02-02 17:51+0100\n"
+"PO-Revision-Date: 2011-02-10 15:22+0100\n"
+"Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
+"Language-Team: GNOME French Team <gnomefr@traduc.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n>1;\n"
+
+#: Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp:605
+msgid "Upload File"
+msgstr "Envoyer un fichier"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:62
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:194
+msgid "Input _Methods"
+msgstr "_Méthodes de saisie"
+
+# Voir chaînes identiques dans fr.po de gtk+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:79
+msgid "LRM _Left-to-right mark"
+msgstr "LRM Marque _gauche-à-droite"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:80
+msgid "RLM _Right-to-left mark"
+msgstr "RLM Marque _droite-à-gauche"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:81
+msgid "LRE Left-to-right _embedding"
+msgstr "LRE _Enchâssement gauche-à-droite"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:82
+msgid "RLE Right-to-left e_mbedding"
+msgstr "RLE E_nchâssement droite-à-gauche"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:83
+msgid "LRO Left-to-right _override"
+msgstr "LRO _Forçage gauche-à-droite"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:84
+msgid "RLO Right-to-left o_verride"
+msgstr "RLO F_orçage droite-à-gauche"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:85
+msgid "PDF _Pop directional formatting"
+msgstr "PDF _Dépilement de formatage directionnel"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:86
+msgid "ZWS _Zero width space"
+msgstr "ZWS E_space sans chasse"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:87
+msgid "ZWJ Zero width _joiner"
+msgstr "ZWJ _Liant sans chasse"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:88
+msgid "ZWNJ Zero width _non-joiner"
+msgstr "ZWNJ _Anti-liant sans chasse"
+
+#: Source/WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:110
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:189
+msgid "_Insert Unicode Control Character"
+msgstr "_Insérer un caractère de contrôle Unicode"
+
+#: Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:389
+msgid "Play"
+msgstr "Lire"
+
+#: Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:391
+msgid "Pause"
+msgstr "Pause"
+
+#: Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:537
+msgid "Play / Pause"
+msgstr "Lire / Pause"
+
+#: Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:537
+msgid "Play or pause the media"
+msgstr "Lire ou mettre en pause le média"
+
+#: Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:545
+msgid "Time:"
+msgstr "Minutage :"
+
+#: Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:568
+msgid "Exit Fullscreen"
+msgstr "Quitter le plein écran"
+
+#: Source/WebKit/gtk/WebCoreSupport/FullscreenVideoController.cpp:568
+msgid "Exit from fullscreen mode"
+msgstr "Quitte le mode plein écran"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:274
+msgid "Network Request"
+msgstr "Requête réseau"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:275
+msgid "The network request for the URI that should be downloaded"
+msgstr "La requête réseau pour l'URI qui doit être téléchargé"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:289
+msgid "Network Response"
+msgstr "Réponse réseau"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:290
+msgid "The network response for the URI that should be downloaded"
+msgstr "La réponse réseau pour l'URI qui doit être téléchargé"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:304
+msgid "Destination URI"
+msgstr "URI de destination"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:305
+msgid "The destination URI where to save the file"
+msgstr "L'URI de destination pour l'enregistrement du fichier"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:319
+msgid "Suggested Filename"
+msgstr "Nom de fichier suggéré"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:320
+msgid "The filename suggested as default when saving"
+msgstr "Le nom de fichier suggéré par défaut lors de l'enregistrement"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:337
+msgid "Progress"
+msgstr "Progression"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:338
+msgid "Determines the current progress of the download"
+msgstr "Détermine la progression du téléchargement"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:351
+msgid "Status"
+msgstr "État"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:352
+msgid "Determines the current status of the download"
+msgstr "Détermine l'état actuel du téléchargement"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:367
+msgid "Current Size"
+msgstr "Taille actuelle"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:368
+msgid "The length of the data already downloaded"
+msgstr "La taille des données déjà téléchargées"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:382
+msgid "Total Size"
+msgstr "Taille totale"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:383
+msgid "The total size of the file"
+msgstr "La taille totale du fichier"
+
+#: Source/WebKit/gtk/webkit/webkitdownload.cpp:535
+msgid "User cancelled the download"
+msgstr "L'utilisateur a annulé le téléchargement"
+
+#: Source/WebKit/gtk/webkit/webkitsoupauthdialog.c:261
+#, c-format
+msgid "A username and password are being requested by the site %s"
+msgstr "Un identifiant et un mot de passe sont demandés par le site %s"
+
+#: Source/WebKit/gtk/webkit/webkitsoupauthdialog.c:291
+msgid "Server message:"
+msgstr "Message du serveur :"
+
+#: Source/WebKit/gtk/webkit/webkitsoupauthdialog.c:304
+msgid "Username:"
+msgstr "Identifiant :"
+
+#: Source/WebKit/gtk/webkit/webkitsoupauthdialog.c:306
+msgid "Password:"
+msgstr "Mot de passe :"
+
+#: Source/WebKit/gtk/webkit/webkitsoupauthdialog.c:315
+msgid "_Remember password"
+msgstr "Se _souvenir du mot de passe"
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:309
+msgid "Name"
+msgstr "Nom"
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:310
+msgid "The name of the frame"
+msgstr "Le nom du cadre"
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:316
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:143
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3013
+msgid "Title"
+msgstr "Titre"
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:317
+msgid "The document title of the frame"
+msgstr "Le titre du document du cadre"
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:323
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:175
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3027
+msgid "URI"
+msgstr "URI"
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:324
+msgid "The current URI of the contents displayed by the frame"
+msgstr "L'URI actuelle du contenu affiché par le cadre"
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:355
+msgid "Horizontal Scrollbar Policy"
+msgstr "Politique de défilement horizontal"
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:356
+msgid ""
+"Determines the current policy for the horizontal scrollbar of the frame."
+msgstr ""
+"Indique la politique actuelle de la barre de défilement horizontale du cadre."
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:373
+msgid "Vertical Scrollbar Policy"
+msgstr "Politique de défilement vertical"
+
+#: Source/WebKit/gtk/webkit/webkitwebframe.cpp:374
+msgid "Determines the current policy for the vertical scrollbar of the frame."
+msgstr ""
+"Indique la politique actuelle de la barre de défilement horizontale du cadre."
+
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:144
+msgid "The title of the history item"
+msgstr "Le titre de l'élément de l'historique"
+
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:159
+msgid "Alternate Title"
+msgstr "Titre alternatif"
+
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:160
+msgid "The alternate title of the history item"
+msgstr "Le titre alternatif de l'élément de l'historique"
+
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:176
+msgid "The URI of the history item"
+msgstr "L'URI de l'élément de l'historique"
+
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:191
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:169
+msgid "Original URI"
+msgstr "URI d'origine"
+
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:192
+msgid "The original URI of the history item"
+msgstr "L'URI d'origine de l'élément de l'historique"
+
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:207
+msgid "Last visited Time"
+msgstr "Heure de la dernière visite"
+
+#: Source/WebKit/gtk/webkit/webkitwebhistoryitem.cpp:208
+msgid "The time at which the history item was last visited"
+msgstr ""
+"L'heure à laquelle l'élément de l'historique a été visité pour la dernière "
+"fois"
+
+#: Source/WebKit/gtk/webkit/webkitwebinspector.cpp:272
+msgid "Web View"
+msgstr "Vue Web"
+
+#: Source/WebKit/gtk/webkit/webkitwebinspector.cpp:273
+msgid "The Web View that renders the Web Inspector itself"
+msgstr "La vue Web qui contient l'inspecteur Web lui-même"
+
+#: Source/WebKit/gtk/webkit/webkitwebinspector.cpp:286
+msgid "Inspected URI"
+msgstr "URI inspectée"
+
+#: Source/WebKit/gtk/webkit/webkitwebinspector.cpp:287
+msgid "The URI that is currently being inspected"
+msgstr "L'URI qui est actuellement inspectée"
+
+#: Source/WebKit/gtk/webkit/webkitwebinspector.cpp:303
+msgid "Enable JavaScript profiling"
+msgstr "Activer le profilage JavaScript"
+
+#: Source/WebKit/gtk/webkit/webkitwebinspector.cpp:304
+msgid "Profile the executed JavaScript."
+msgstr "Analyse la performance du JavaScript qui est exécuté."
+
+#: Source/WebKit/gtk/webkit/webkitwebinspector.cpp:319
+msgid "Enable Timeline profiling"
+msgstr "Activer le profilage temporel"
+
+#: Source/WebKit/gtk/webkit/webkitwebinspector.cpp:320
+msgid "Profile the WebCore instrumentation."
+msgstr "Profile l'instrumentation WebCore."
+
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:154
+msgid "Reason"
+msgstr "Raison"
+
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:155
+msgid "The reason why this navigation is occurring"
+msgstr "La raison qui provoque cette navigation"
+
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:170
+msgid "The URI that was requested as the target for the navigation"
+msgstr "L'URI qui a été demandée comme destination de la navigation"
+
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:184
+msgid "Button"
+msgstr "Bouton"
+
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:185
+msgid "The button used to click"
+msgstr "Le bouton utilisé pour cliquer"
+
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:200
+msgid "Modifier state"
+msgstr "État des modificateurs"
+
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:201
+msgid "A bitmask representing the state of the modifier keys"
+msgstr "Un masque de bits représentant l'état des touches de modification"
+
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:216
+msgid "Target frame"
+msgstr "Cadre de destination"
+
+#: Source/WebKit/gtk/webkit/webkitwebnavigationaction.cpp:217
+msgid "The target frame for the navigation"
+msgstr "Le cadre de destination de la navigation"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:255
+msgid "Default Encoding"
+msgstr "Codage par défaut"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:256
+msgid "The default encoding used to display text."
+msgstr "Codage par défaut pour l'affichage du texte."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:264
+msgid "Cursive Font Family"
+msgstr "Famille de police cursive"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:265
+msgid "The default Cursive font family used to display text."
+msgstr "La famille de police cursive par défaut pour l'affichage du texte."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:273
+msgid "Default Font Family"
+msgstr "Famille de police par défault"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:274
+msgid "The default font family used to display text."
+msgstr "La famille de police par défaut pour l'affichage du texte."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:282
+msgid "Fantasy Font Family"
+msgstr "Famille de police fantaisiste"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:283
+msgid "The default Fantasy font family used to display text."
+msgstr "Famille de police fantaisiste par défaut pour l'affichage du texte."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:291
+msgid "Monospace Font Family"
+msgstr "Famille de police à chasse fixe"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:292
+msgid "The default font family used to display monospace text."
+msgstr ""
+"La famille de police par défaut pour l'affichage du texte à chasse fixe."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:300
+msgid "Sans Serif Font Family"
+msgstr "Famille de police Sans Serif"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:301
+msgid "The default Sans Serif font family used to display text."
+msgstr "La famille de police Sans Serif par défaut pour l'affichage du texte."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:309
+msgid "Serif Font Family"
+msgstr "Famille de police Serif"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:310
+msgid "The default Serif font family used to display text."
+msgstr "La famille de police Serif par défaut pour l'affichage du texte."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:318
+msgid "Default Font Size"
+msgstr "Taille par défaut de la police"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:319
+msgid "The default font size used to display text."
+msgstr "La taille par défaut de la police pour l'affichage du texte."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:327
+msgid "Default Monospace Font Size"
+msgstr "Taille par défaut de la police à chasse fixe"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:328
+msgid "The default font size used to display monospace text."
+msgstr ""
+"La taille par défaut de la police pour l'affichage du texte à chasse fixe."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:336
+msgid "Minimum Font Size"
+msgstr "Taille minimum de la police"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:337
+msgid "The minimum font size used to display text."
+msgstr "La taille de police minimum pour l'affichage du texte."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:345
+msgid "Minimum Logical Font Size"
+msgstr "Taille logique minimum de la police"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:346
+msgid "The minimum logical font size used to display text."
+msgstr "La taille logique minimum de la police pour l'affichage du texte."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:365
+msgid "Enforce 96 DPI"
+msgstr "Forcer 96 PPP"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:366
+msgid "Enforce a resolution of 96 DPI"
+msgstr "Forcer la résolution à 96 PPP"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:374
+msgid "Auto Load Images"
+msgstr "Chargement automatique des images"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:375
+msgid "Load images automatically."
+msgstr "Charge automatiquement les images."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:383
+msgid "Auto Shrink Images"
+msgstr "Réduction automatique des images"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:384
+msgid "Automatically shrink standalone images to fit."
+msgstr "Réduit automatiquement les images indépendantes pour les adapter."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:392
+msgid "Print Backgrounds"
+msgstr "Imprimer les arrière-plans"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:393
+msgid "Whether background images should be printed."
+msgstr "Indique si les images d'arrière-plan doivent être imprimées."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:401
+msgid "Enable Scripts"
+msgstr "Activer les scripts"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:402
+msgid "Enable embedded scripting languages."
+msgstr "Active les langages de script incorporés."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:410
+msgid "Enable Plugins"
+msgstr "Activer les greffons"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:411
+msgid "Enable embedded plugin objects."
+msgstr "Active les objets greffons incorporés."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:419
+msgid "Resizable Text Areas"
+msgstr "Zones de texte redimensionnables"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:420
+msgid "Whether text areas are resizable."
+msgstr "Indique si les zones de texte peuvent être redimensionnées."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:427
+msgid "User Stylesheet URI"
+msgstr "URI de la feuille de style utilisateur"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:428
+msgid "The URI of a stylesheet that is applied to every page."
+msgstr "L'URI d'une feuille de style qui est appliquée à chaque page."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:443
+msgid "Zoom Stepping Value"
+msgstr "Incrément du zoom"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:444
+msgid "The value by which the zoom level is changed when zooming in or out."
+msgstr ""
+"La valeur d'incrément du niveau de zoom lors d'un zoom avant ou arrière."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:462
+msgid "Enable Developer Extras"
+msgstr "Activer les extensions pour développeurs"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:463
+msgid "Enables special extensions that help developers"
+msgstr "Active les extensions destinées à aider les développeurs"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:483
+msgid "Enable Private Browsing"
+msgstr "Activer la navigation privée"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:484
+msgid "Enables private browsing mode"
+msgstr "Active le mode de navigation privée"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:499
+msgid "Enable Spell Checking"
+msgstr "Activer la correction orthographique"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:500
+msgid "Enables spell checking while typing"
+msgstr "Active la vérification orthographique en cours de frappe"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:523
+msgid "Languages to use for spell checking"
+msgstr "Langues de vérification orthographique"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:524
+msgid "Comma separated list of languages to use for spell checking"
+msgstr ""
+"Liste de langues séparées par des virgules qui seront utilisées pour la "
+"vérification orthographique"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:538
+msgid "Enable Caret Browsing"
+msgstr "Activer la navigation au curseur"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:539
+msgid "Whether to enable accesibility enhanced keyboard navigation"
+msgstr ""
+"Indique s'il faut activer la navigation au clavier pour favoriser "
+"l'accessibilité"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:554
+msgid "Enable HTML5 Database"
+msgstr "Activer les base de données HTML5"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:555
+msgid "Whether to enable HTML5 database support"
+msgstr ""
+"Indique s'il faut activer la prise en charge des bases de données HTML5"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:570
+msgid "Enable HTML5 Local Storage"
+msgstr "Activer l'enregistrement local HTML5"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:571
+msgid "Whether to enable HTML5 Local Storage support"
+msgstr ""
+"Indique s'il faut activer la prise en charge de l'enregistrement local HTML5"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:585
+msgid "Enable XSS Auditor"
+msgstr "Activer l'auditeur XSS"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:586
+msgid "Whether to enable the XSS auditor"
+msgstr "Indique s'il faut activer l'auditeur XSS"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:604
+msgid "Enable Spatial Navigation"
+msgstr "Activer la navigation spatiale"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:605
+msgid "Whether to enable Spatial Navigation"
+msgstr "Indique s'il faut activer la navigation spatiale"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:623
+msgid "Enable Frame Flattening"
+msgstr "Activer la fusion des cadres"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:624
+msgid "Whether to enable Frame Flattening"
+msgstr "Indique s'il faut activer la fusion des cadres"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:641
+msgid "User Agent"
+msgstr "Agent utilisateur"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:642
+msgid "The User-Agent string used by WebKitGtk"
+msgstr "L'agent utilisateur (« User-Agent ») utilisé par WebKitGtk"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:657
+msgid "JavaScript can open windows automatically"
+msgstr "JavaScript peut ouvrir automatiquement des fenêtres"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:658
+msgid "Whether JavaScript can open windows automatically"
+msgstr "Indique si JavaScript peut ouvrir automatiquement des fenêtres"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:672
+msgid "JavaScript can access Clipboard"
+msgstr "JavaScript peut accéder au presse-papiers"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:673
+msgid "Whether JavaScript can access Clipboard"
+msgstr "Indique si JavaScript peut accéder au presse-papiers"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:689
+msgid "Enable offline web application cache"
+msgstr "Activer le cache hors ligne des applications Web"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:690
+msgid "Whether to enable offline web application cache"
+msgstr "Indique s'il faut activer le cache hors ligne des applications Web"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:718
+msgid "Editing behavior"
+msgstr "Comportement d'édition"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:719
+msgid "The behavior mode to use in editing mode"
+msgstr "Le mode de comportement utilisé en mode d'édition"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:735
+msgid "Enable universal access from file URIs"
+msgstr "Activer l'accès universel à partir d'URI de fichiers"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:736
+msgid "Whether to allow universal access from file URIs"
+msgstr ""
+"Indique s'il faut autoriser l'accès universel à partir d'URI de fichiers"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:751
+msgid "Enable DOM paste"
+msgstr "Activer le « coller » du DOM"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:752
+msgid "Whether to enable DOM paste"
+msgstr "Indique s'il faut activer le « coller » du DOM"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:770
+msgid "Tab key cycles through elements"
+msgstr "La touche tabulation passe d'un élément à l'autre"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:771
+msgid "Whether the tab key cycles through elements on the page."
+msgstr "Indique si la touche tabulation passe d'un élément de page à un autre."
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:791
+msgid "Enable Default Context Menu"
+msgstr "Activer le menu contextuel par défaut"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:792
+msgid ""
+"Enables the handling of right-clicks for the creation of the default context "
+"menu"
+msgstr ""
+"Active la gestion des clics droits pour la création du menu contextuel par "
+"défaut"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:812
+msgid "Enable Site Specific Quirks"
+msgstr "Activer les astuces spécifiques aux sites"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:813
+msgid "Enables the site-specific compatibility workarounds"
+msgstr "Active les contournements de compatibilité spécifiques aux sites"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:835
+msgid "Enable page cache"
+msgstr "Activer le cache des pages"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:836
+msgid "Whether the page cache should be used"
+msgstr "Indique si le cache des pages doit être utilisé"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:856
+msgid "Auto Resize Window"
+msgstr "Redimensionnement automatique des fenêtres"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:857
+msgid "Automatically resize the toplevel window when a page requests it"
+msgstr ""
+"Redimensionne automatiquement la fenêtre de premier niveau lorsqu'une page "
+"le demande"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:889
+msgid "Enable Java Applet"
+msgstr "Activer les applets Java"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:890
+msgid "Whether Java Applet support through <applet> should be enabled"
+msgstr ""
+"Indique s'il faut activer la prise en charge des applets Java par la balise "
+"<applet>"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:904
+msgid "Enable Hyperlink Auditing"
+msgstr "Activer l'audit des hyperliens"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:905
+msgid "Whether <a ping> should be able to send pings"
+msgstr "Indique si <a ping> doit pouvoir envoyer des pings"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:913
+msgid "Enable Fullscreen"
+msgstr "Activer le mode plein écran"
+
+#: Source/WebKit/gtk/webkit/webkitwebsettings.cpp:914
+msgid "Whether the Mozilla style API should be enabled."
+msgstr "Indique si l'API de style de Mozilla doit être activée."
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3014
+msgid "Returns the @web_view's document title"
+msgstr "Renvoie le titre du document de @web_view"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3028
+msgid "Returns the current URI of the contents displayed by the @web_view"
+msgstr "Renvoie l'URI actuel du contenu affiché par le @web_view"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3041
+msgid "Copy target list"
+msgstr "Liste des cibles de copie"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3042
+msgid "The list of targets this web view supports for clipboard copying"
+msgstr ""
+"La liste des cibles prises en charge par cette vue Web pour la copie dans le "
+"presse-papiers"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3055
+msgid "Paste target list"
+msgstr "Liste des cibles de collage"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3056
+msgid "The list of targets this web view supports for clipboard pasting"
+msgstr ""
+"La liste des cibles prises en charge par cette vue Web pour le collage "
+"depuis le presse-papiers"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3062
+msgid "Settings"
+msgstr "Paramètres"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3063
+msgid "An associated WebKitWebSettings instance"
+msgstr "Une instance WebKitWebSettings associée"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3076
+msgid "Web Inspector"
+msgstr "Inspecteur Web"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3077
+msgid "The associated WebKitWebInspector instance"
+msgstr "L'instance WebKitWebInspector associée"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3090
+msgid "Viewport Attributes"
+msgstr "Attributs de la zone d'affichage"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3091
+msgid "The associated WebKitViewportAttributes instance"
+msgstr "L'instance WebKitViewportAttributes associée"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3111
+msgid "Editable"
+msgstr "Modifiable"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3112
+msgid "Whether content can be modified by the user"
+msgstr "Indique si le contenu peut être modifié par l'utilisateur"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3118
+msgid "Transparent"
+msgstr "Transparent"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3119
+msgid "Whether content has a transparent background"
+msgstr "Indique si l'arrière-plan du contenu est transparent"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3132
+msgid "Zoom level"
+msgstr "Niveau du zoom"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3133
+msgid "The level of zoom of the content"
+msgstr "Le niveau du zoom pour le contenu"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3148
+msgid "Full content zoom"
+msgstr "Zoom de tout le contenu"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3149
+msgid "Whether the full content is scaled when zooming"
+msgstr "Indique si tout le contenu est redimensionné lors d'un zoom"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3162
+msgid "Encoding"
+msgstr "Codage"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3163
+msgid "The default encoding of the web view"
+msgstr "Le codage de caractères par défaut de la vue Web"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3176
+msgid "Custom Encoding"
+msgstr "Codage personnalisé"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3177
+msgid "The custom encoding of the web view"
+msgstr "Le codage de caractères personnalisé de la vue Web"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3229
+msgid "Icon URI"
+msgstr "URI d'icône"
+
+#: Source/WebKit/gtk/webkit/webkitwebview.cpp:3230
+msgid "The URI for the favicon for the #WebKitWebView."
+msgstr "L'URI de l'icône « favicon » du #WebKitWebView."
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:56
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:61
+msgid "Submit"
+msgstr "Envoyer"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:66
+msgid "Reset"
+msgstr "Réinitialiser"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:71
+msgid "This is a searchable index. Enter search keywords: "
+msgstr ""
+"Ceci est un index de recherche. Saisissez des mots-clés de recherche : "
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:76
+msgid "Choose File"
+msgstr "Choisir un fichier"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:81
+msgid "(None)"
+msgstr "(aucun)"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:86
+msgid "Open Link in New _Window"
+msgstr "Ouvrir le lien dans une nouvelle _fenêtre"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:91
+msgid "_Download Linked File"
+msgstr "_Télécharger la cible du lien"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:96
+msgid "Copy Link Loc_ation"
+msgstr "Copier l'_adresse du lien"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:101
+msgid "Open _Image in New Window"
+msgstr "Ouvrir l'_image dans une nouvelle fenêtre"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:106
+msgid "Sa_ve Image As"
+msgstr "_Enregistrer l'image sous"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:111
+msgid "Cop_y Image"
+msgstr "_Copier l'image"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:116
+msgid "Open _Video in New Window"
+msgstr "Ouvrir la _vidéo dans une nouvelle fenêtre"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:121
+msgid "Open _Audio in New Window"
+msgstr "Ouvrir l'a_udio dans une nouvelle fenêtre"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:126
+msgid "Cop_y Video Link Location"
+msgstr "Copier l'_adresse du lien de la vidéo"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:131
+msgid "Cop_y Audio Link Location"
+msgstr "Copier l'_adresse du lien de l'audio"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:136
+msgid "_Toggle Media Controls"
+msgstr "Afficher/masquer les contrôles de _média"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:141
+msgid "Toggle Media _Loop Playback"
+msgstr "Activer/désactiver la lecture en _boucle du média"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:146
+msgid "Switch Video to _Fullscreen"
+msgstr "Passer la vidéo en _plein écran"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:151
+msgid "_Play"
+msgstr "_Lire"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:156
+msgid "_Pause"
+msgstr "_Pause"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:161
+msgid "_Mute"
+msgstr "_Couper le son"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:166
+msgid "Open _Frame in New Window"
+msgstr "Ouvrir le ca_dre dans une nouvelle fenêtre"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:217
+msgid "_Reload"
+msgstr "_Recharger"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:234
+msgid "No Guesses Found"
+msgstr "Aucun suggestion trouvée"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:239
+msgid "_Ignore Spelling"
+msgstr "_Ignorer la correction"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:244
+msgid "_Learn Spelling"
+msgstr "_Ajouter le mot"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:249
+msgid "_Search the Web"
+msgstr "_Rechercher sur le Web"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:254
+msgid "_Look Up in Dictionary"
+msgstr "Rechercher dans le _dictionnaire"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:259
+msgid "_Open Link"
+msgstr "_Ouvrir le lien"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:264
+msgid "Ignore _Grammar"
+msgstr "Ignorer la _grammaire"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:269
+msgid "Spelling and _Grammar"
+msgstr "Orthographe et _grammaire"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:274
+msgid "_Show Spelling and Grammar"
+msgstr "_Afficher l'orthographe et la grammaire"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:274
+msgid "_Hide Spelling and Grammar"
+msgstr "_Masquer l'orthographe et la grammaire"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:279
+msgid "_Check Document Now"
+msgstr "_Vérifier le document maintenant"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:284
+msgid "Check Spelling While _Typing"
+msgstr "Vérifier l'orthographe pendant la _frappe"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:289
+msgid "Check _Grammar With Spelling"
+msgstr "Vérifier aussi la _grammaire"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:294
+msgid "_Font"
+msgstr "_Police"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:317
+msgid "_Outline"
+msgstr "_Encadrements"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:322
+msgid "Inspect _Element"
+msgstr "_Inspecter l'élément"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:327
+msgid "No recent searches"
+msgstr "Pas de recherche récente"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:332
+msgid "Recent searches"
+msgstr "Recherches récentes"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:337
+msgid "_Clear recent searches"
+msgstr "_Effacer les recherches récentes"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:342
+msgid "term"
+msgstr "terme"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:347
+msgid "definition"
+msgstr "définition"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:352
+msgid "press"
+msgstr "cliquer"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:357
+msgid "select"
+msgstr "sélectionner"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:362
+msgid "activate"
+msgstr "activer"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:367
+msgid "uncheck"
+msgstr "décocher"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:372
+msgid "check"
+msgstr "cocher"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:377
+msgid "jump"
+msgstr "sauter"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:392
+msgid "Missing Plug-in"
+msgstr "Greffon manquant"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:398
+msgid "Plug-in Failure"
+msgstr "Échec de greffon"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:404
+msgid " files"
+msgstr " fichiers"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:409
+msgid "Unknown"
+msgstr "Inconnu"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:426
+msgid "Loading..."
+msgstr "Chargement..."
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:431
+msgid "Live Broadcast"
+msgstr "Diffusion en direct"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:437
+msgid "audio element controller"
+msgstr "contrôleur d'élément audio"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:439
+msgid "video element controller"
+msgstr "contrôleur d'élément vidéo"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:441
+msgid "mute"
+msgstr "sourdine"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:443
+msgid "unmute"
+msgstr "activer le son"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:445
+msgid "play"
+msgstr "lire"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:447
+msgid "pause"
+msgstr "pause"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:449
+msgid "movie time"
+msgstr "déroulement du film"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:451
+msgid "timeline slider thumb"
+msgstr "curseur de glissière chronologique"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:453
+msgid "back 30 seconds"
+msgstr "30 secondes plus tôt"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:455
+msgid "return to realtime"
+msgstr "retour au temps réel"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:457
+msgid "elapsed time"
+msgstr "temps écoulé"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:459
+msgid "remaining time"
+msgstr "temps restant"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:461
+msgid "status"
+msgstr "état"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:463
+msgid "fullscreen"
+msgstr "plein écran"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:465
+msgid "fast forward"
+msgstr "avance rapide"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:467
+msgid "fast reverse"
+msgstr "recul rapide"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:469
+msgid "show closed captions"
+msgstr "afficher les sous-titres codés"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:471
+msgid "hide closed captions"
+msgstr "masquer les sous-titres codés"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:480
+msgid "audio element playback controls and status display"
+msgstr "contrôles de lecture audio et affichage d'état"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:482
+msgid "video element playback controls and status display"
+msgstr "contrôles de lecture vidéo et affichage d'état"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:484
+msgid "mute audio tracks"
+msgstr "désactiver les pistes audio"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:486
+msgid "unmute audio tracks"
+msgstr "activer les pistes audio"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:488
+msgid "begin playback"
+msgstr "démarrer la lecture"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:490
+msgid "pause playback"
+msgstr "mettre en pause"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:492
+msgid "movie time scrubber"
+msgstr "glissière temporelle"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:494
+msgid "movie time scrubber thumb"
+msgstr "curseur de la glissière temporelle"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:496
+msgid "seek movie back 30 seconds"
+msgstr "reculer de 30 secondes dans le film"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:498
+msgid "return streaming movie to real time"
+msgstr "revenir au temps réel du film diffusé"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:500
+msgid "current movie time in seconds"
+msgstr "position dans le film actuel en secondes"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:502
+msgid "number of seconds of movie remaining"
+msgstr "nombre de secondes restantes du film"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:504
+msgid "current movie status"
+msgstr "état du film actuel"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:506
+msgid "seek quickly back"
+msgstr "retour rapide"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:508
+msgid "seek quickly forward"
+msgstr "avance rapide"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:510
+msgid "Play movie in fullscreen mode"
+msgstr "Voir le film en mode plein écran"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:512
+msgid "start displaying closed captions"
+msgstr "lancer l'affichage des sous-titres codés"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:514
+msgid "stop displaying closed captions"
+msgstr "stopper l'affichage des sous-titres codés"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:523
+msgid "indefinite time"
+msgstr "temps indéterminé"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:553
+msgid "value missing"
+msgstr "valeur manquante"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:589
+msgid "type mismatch"
+msgstr "types incompatibles"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:612
+msgid "pattern mismatch"
+msgstr "motifs incompatibles"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:617
+msgid "too long"
+msgstr "trop long"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:622
+msgid "range underflow"
+msgstr "dépassement inférieur d'intervalle"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:627
+msgid "range overflow"
+msgstr "dépassement d'intervalle"
+
+#: Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp:632
+msgid "step mismatch"
+msgstr "erreur d'incrément"
diff --git a/Source/WebKit/gtk/po/gr.po b/Source/WebKit/gtk/po/gr.po
new file mode 100644
index 0000000..ed7a255
--- /dev/null
+++ b/Source/WebKit/gtk/po/gr.po
@@ -0,0 +1,695 @@
+# translation of webkit.HEAD.po to Greek
+# This file is put in the public domain.
+#
+# Jennie Petoumenou <epetoumenou@gmail.com>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: webkit.HEAD\n"
+"Report-Msgid-Bugs-To: http://bugs.webkit.org/\n"
+"POT-Creation-Date: 2009-04-09 19:09-0300\n"
+"PO-Revision-Date: 2009-07-24 08:35+0200\n"
+"Last-Translator: Jennie Petoumenou <epetoumenou@gmail.com>\n"
+"Language-Team: Greek <team@gnome.gr>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp:425
+msgid "Upload File"
+msgstr "Αποστολή αρχείου"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:61
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:139
+msgid "Input _Methods"
+msgstr "_Μέθοδοι εισαγωγής"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:78
+msgid "LRM _Left-to-right mark"
+msgstr "_LRM Σημείο αριστερά προς δεξιά"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:79
+msgid "RLM _Right-to-left mark"
+msgstr "_RLM Σημείο δεξιά προς αριστερά"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:80
+msgid "LRE Left-to-right _embedding"
+msgstr "LRE _Ενσωμάτωση αριστερά προς δεξιά"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:81
+msgid "RLE Right-to-left e_mbedding"
+msgstr "RLE Ενσω_μάτωση δεξιά προς αριστερά"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:82
+msgid "LRO Left-to-right _override"
+msgstr "LRO _Αναγκαστικά αριστερά προς δεξιά"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:83
+msgid "RLO Right-to-left o_verride"
+msgstr "RLO Αναγκαστι_κά δεξιά προς αριστερά"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:84
+msgid "PDF _Pop directional formatting"
+msgstr "_PDF Αναίρεση τελευταίας ρύθμισης κατεύθυνσης"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:85
+msgid "ZWS _Zero width space"
+msgstr "_ZWS Διάστημα μηδενικού πλάτους"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:86
+msgid "ZWJ Zero width _joiner"
+msgstr "ZW_J Συνδετικό μηδενικού πλάτους"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:87
+msgid "ZWNJ Zero width _non-joiner"
+msgstr "ZW_NJ Μη συνδετικό μηδενικού πλάτους"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:109
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:134
+msgid "_Insert Unicode Control Character"
+msgstr "_Εισαγωγή χαρακτήρα ελέγχου Unicode"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:250
+msgid "Network Request"
+msgstr "Αίτημα δικτύου"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:251
+msgid "The network request for the URI that should be downloaded"
+msgstr "Το αίτημα δικτύου για το URI που πρόκειται να ληφθεί"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:265
+msgid "Destination URI"
+msgstr "URI προορισμού"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:266
+msgid "The destination URI where to save the file"
+msgstr "Το URI προορισμού όπου θα αποθηκευτεί το αρχείο"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:280
+msgid "Suggested Filename"
+msgstr "Προτεινόμενο όνομα αρχείου"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:281
+msgid "The filename suggested as default when saving"
+msgstr "Το όνομα αρχείου που προτείνεται αυτόματα κατά την αποθήκευση"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:294
+msgid "Progress"
+msgstr "Πρόοδος"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:295
+msgid "Determines the current progress of the download"
+msgstr "Η τρέχουσα πρόοδος της λήψης"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:308
+msgid "Status"
+msgstr "Κατάσταση"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:309
+msgid "Determines the current status of the download"
+msgstr "Η τρέχουσα κατάσταση της λήψης"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:324
+msgid "Current Size"
+msgstr "Τρέχον μέγεθος"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:325
+msgid "The length of the data already downloaded"
+msgstr "Το μέγεθος των δεδομένων που έχουν ήδη ληφθεί"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:339
+msgid "Total Size"
+msgstr "Συνολικό μέγεθος"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:340
+msgid "The total size of the file"
+msgstr "Το συνολικό μέγεθος του αρχείου"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:469
+msgid "User cancelled the download"
+msgstr "Η λήψη ακυρώθηκε από το χρήστη"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:244
+#, c-format
+msgid "A username and password are being requested by the site %s"
+msgstr "Ο ιστότοπος %s απαιτεί όνομα χρήστη και συνθηματικό"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:269
+msgid "Username:"
+msgstr "Όνομα χρήστη:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:271
+msgid "Password:"
+msgstr "Συνθηματικό:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:281
+msgid "Remember password"
+msgstr "Απομνημόνευση συνθηματικού"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:211
+msgid "Name"
+msgstr "Όνομα"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:212
+msgid "The name of the frame"
+msgstr "Το όνομα του πλαισίου"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:218
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:154
+#: WebKit/gtk/webkit/webkitwebview.cpp:1715
+msgid "Title"
+msgstr "Τίτλος"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:219
+msgid "The document title of the frame"
+msgstr "Ο τίτλος εγγράφου του πλαισίου"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:225
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:186
+#: WebKit/gtk/webkit/webkitwebview.cpp:1729
+msgid "URI"
+msgstr "URI"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:226
+msgid "The current URI of the contents displayed by the frame"
+msgstr "Το τρέχον URI των περιεχομένων που εμφανίζονται στο πλαίσιο"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:155
+msgid "The title of the history item"
+msgstr "Ο τίτλος του αντικειμένου του ιστορικού"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:170
+msgid "Alternate Title"
+msgstr "Εναλλακτικός τίτλος"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:171
+msgid "The alternate title of the history item"
+msgstr "Ο εναλλακτικός τίτλος του αντικειμένου του ιστορικού"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:187
+msgid "The URI of the history item"
+msgstr "Το URI του αντικειμένου του ιστορικού"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:202
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:167
+msgid "Original URI"
+msgstr "Αρχικό URI"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:203
+msgid "The original URI of the history item"
+msgstr "Το αρχικό URI του αντικειμένου του ιστορικού"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:218
+msgid "Last visited Time"
+msgstr "Χρόνος τελευταίας επίσκεψης"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:219
+msgid "The time at which the history item was last visited"
+msgstr "Η χρονική στιγμή της τελευταίας επίσκεψης στο αντικείμενο του ιστορικού"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:260
+msgid "Web View"
+msgstr "Προβολή ιστού"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:261
+msgid "The Web View that renders the Web Inspector itself"
+msgstr "Η Προβολή ιστού που εμφανίζει τον ίδιο τον Επιθεωρητή Ιστού"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:274
+msgid "Inspected URI"
+msgstr "Επιθεωρούμενο URI"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:275
+msgid "The URI that is currently being inspected"
+msgstr "Το URI του οποίου γίνεται επιθεώρηση"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:291
+msgid "Enable JavaScript profiling"
+msgstr "Ενεργοποίηση προφίλ JavaScript"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:292
+msgid "Profile the executed JavaScript."
+msgstr "Δημιουργία προφίλ του εκτελούμενου κώδικα JavaScript."
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:152
+msgid "Reason"
+msgstr "Αιτία"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:153
+msgid "The reason why this navigation is occurring"
+msgstr "Η αιτία που προκάλεσε την πλοήγηση"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:168
+msgid "The URI that was requested as the target for the navigation"
+msgstr "Το URI που ζητήθηκε ως προορισμός της πλοήγησης"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:180
+msgid "Button"
+msgstr "Κουμπί"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:181
+msgid "The button used to click"
+msgstr "Το κουμπί που χρησιμοποιείται για τα κλικ"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:196
+msgid "Modifier state"
+msgstr "Κατάσταση τροποποιητή"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:197
+msgid "A bitmask representing the state of the modifier keys"
+msgstr "Bitmask που αντιστοιχεί στην κατάσταση των πλήκτρων τροποποίησης"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:129
+msgid "Default Encoding"
+msgstr "Προεπιλεγμένη κωδικοποίηση"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:130
+msgid "The default encoding used to display text."
+msgstr "Η προεπιλεγμένη κωδικοποίηση που χρησιμοποιείται για την εμφάνιση κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:138
+msgid "Cursive Font Family"
+msgstr "Cursive οικογένεια γραμματοσειρών"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:139
+msgid "The default Cursive font family used to display text."
+msgstr "Η προεπιλεγμένη Cursive οικογένεια γραμματοσειρών για την εμφάνιση πλάγιου κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:147
+msgid "Default Font Family"
+msgstr "Προεπιλεγμένη οικογένεια γραμματοσειρών"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:148
+msgid "The default font family used to display text."
+msgstr "Η προεπιλεγμένη οικογένεια γραμματοσειρών για την εμφάνιση κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:156
+msgid "Fantasy Font Family"
+msgstr "Fantasy οικογένεια γραμματοσειρών"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:157
+msgid "The default Fantasy font family used to display text."
+msgstr "Η προεπιλεγμένη Fantasy οικογένεια γραμματοσειρών για την εμφάνιση κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:165
+msgid "Monospace Font Family"
+msgstr "Monospace οικογένεια γραμματοσειρών"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:166
+msgid "The default font family used to display monospace text."
+msgstr "Η προεπιλεγμένη οικογένεια γραμματοσειρών για την εμφάνιση κειμένου.σταθερού πλάτους."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:174
+msgid "Sans Serif Font Family"
+msgstr "Sans Serif οικογένεια γραμματοσειρών"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:175
+msgid "The default Sans Serif font family used to display text."
+msgstr "Η προεπιλεγμένη Sans Serif οικογένεια γραμματοσειρών για την εμφάνιση κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:183
+msgid "Serif Font Family"
+msgstr "Serif οικογένεια γραμματοσειρών"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:184
+msgid "The default Serif font family used to display text."
+msgstr "Η προεπιλεγμένη Serif οικογένεια γραμματοσειρών για την εμφάνιση κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:192
+msgid "Default Font Size"
+msgstr "Μέγεθος προεπιλεγμένης γραμματοσειράς"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:193
+msgid "The default font size used to display text."
+msgstr "Το προεπιλεγμένο μέγεθος γραμματοσειράς που χρησιμοποιείται για την εμφάνιση κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:201
+msgid "Default Monospace Font Size"
+msgstr "Μέγεθος προεπιλεγμένης Monospace γραμματοσειράς"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:202
+msgid "The default font size used to display monospace text."
+msgstr "Το προεπιλεγμένο μέγεθος γραμματοσειράς που χρησιμοποιείται για την εμφάνιση κειμένου σταθερού πλάτους."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:210
+msgid "Minimum Font Size"
+msgstr "Ελάχιστο μέγεθος γραμματοσειρών"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:211
+msgid "The minimum font size used to display text."
+msgstr "Το ελάχιστο μέγεθος των γραμματοσειρών που χρησιμοποιούνται για την εμφάνιση κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:219
+msgid "Minimum Logical Font Size"
+msgstr "Ελάχιστο μέγεθος λογικών γραμματοσειρών"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:220
+msgid "The minimum logical font size used to display text."
+msgstr "Το ελάχιστο μέγεθος των λογικών γραμματοσειρών που χρησιμοποιούνται για την εμφάνιση κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:239
+msgid "Enforce 96 DPI"
+msgstr "Επιβολή 96 DPI"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:240
+msgid "Enforce a resolution of 96 DPI"
+msgstr "Επιβολή ανάλυσης 96 DPI"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:248
+msgid "Auto Load Images"
+msgstr "Αυτόματη φόρτωση εικόνων"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:249
+msgid "Load images automatically."
+msgstr "Αυτόματη φόρτωση εικόνων."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:257
+msgid "Auto Shrink Images"
+msgstr "Αυτόματη σμίκρυνση εικόνων"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:258
+msgid "Automatically shrink standalone images to fit."
+msgstr "Αυτόματη σμίκρυνση των αυτοτελών εικόνων ώστε να χωρούν."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:266
+msgid "Print Backgrounds"
+msgstr "Εκτύπωση παρασκηνίου"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:267
+msgid "Whether background images should be printed."
+msgstr "Αν θα εκτυπώνονται οι εικόνες παρασκηνίου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:275
+msgid "Enable Scripts"
+msgstr "Ενεργοποίηση σεναρίων"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:276
+msgid "Enable embedded scripting languages."
+msgstr "Ενεργοποίηση ενσωματωμένων γλωσσών σεναρίων."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:284
+msgid "Enable Plugins"
+msgstr "Ενεργοποίηση πρόσθετων"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:285
+msgid "Enable embedded plugin objects."
+msgstr "Ενεργοποίηση ενσωματωμένων πρόσθετων αντικειμένων."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:293
+msgid "Resizable Text Areas"
+msgstr "Προσαρμόσιμες περιοχές κειμένου"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:294
+msgid "Whether text areas are resizable."
+msgstr "Αν θα επιτρέπεται η αλλαγή μεγέθους των περιοχών κειμένου."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:301
+msgid "User Stylesheet URI"
+msgstr "URI φύλλου στυλ χρήστη"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:302
+msgid "The URI of a stylesheet that is applied to every page."
+msgstr "Το URI του φύλλου στυλ που θα εφαρμόζεται σε όλες τις σελίδες."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:317
+msgid "Zoom Stepping Value"
+msgstr "Τιμή βήματος μεγέθυνσης"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:318
+msgid "The value by which the zoom level is changed when zooming in or out."
+msgstr "Το ποσό κατά το οποίο αλλάζει κάθε φορά το επίπεδο μεγέθυνσης/σμίκρυνσης."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:336
+msgid "Enable Developer Extras"
+msgstr "Ενεργοποίηση προσθέτων προγραμματισμού"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:337
+msgid "Enables special extensions that help developers"
+msgstr "Ενεργοποιεί τις ειδικές επεκτάσεις για προγραμματιστές"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:357
+msgid "Enable Private Browsing"
+msgstr "Ενεργοποίηση ιδιωτικής περιήγησης"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:358
+msgid "Enables private browsing mode"
+msgstr "Ενεργοποιεί τη λειτουργία ιδιωτικής περιήγησης"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1716
+msgid "Returns the @web_view's document title"
+msgstr "Επιστρέφει τον τίτλο εγγράφου της @web_view"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1730
+msgid "Returns the current URI of the contents displayed by the @web_view"
+msgstr "Επιστρέφει το τρέχον URI του περιεχομένου που εμφανίζεται στην @web_view"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1743
+msgid "Copy target list"
+msgstr "Λίστα προορισμών αντιγραφής"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1744
+msgid "The list of targets this web view supports for clipboard copying"
+msgstr "Η λίστα προορισμών για αντιγραφή στο πρόχειρο που υποστηρίζει αυτή η προβολή Ιστού"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1757
+msgid "Paste target list"
+msgstr "Λίστα προορισμών επικόλλησης"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1758
+msgid "The list of targets this web view supports for clipboard pasting"
+msgstr "Η λίστα προορισμών για επικόλληση στο πρόχειρο που υποστηρίζει αυτή η προβολή Ιστού"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1764
+msgid "Settings"
+msgstr "Ρυθμίσεις"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1765
+msgid "An associated WebKitWebSettings instance"
+msgstr "Μια συνδεδεμένη διεργασία WebKitWebSettings"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1778
+msgid "Web Inspector"
+msgstr "Επιθεωρητής Ιστού"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1779
+msgid "The associated WebKitWebInspector instance"
+msgstr "Η συνδεδεμένη διεργασία WebKitWebInspector"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1799
+msgid "Editable"
+msgstr "Επεξεργάσιμο"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1800
+msgid "Whether content can be modified by the user"
+msgstr "Αν επιτρέπεται η τροποποίηση του περιεχομένου από το χρήστη"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1806
+msgid "Transparent"
+msgstr "Διάφανο"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1807
+msgid "Whether content has a transparent background"
+msgstr "Αν το παρασκήνιο του περιεχομένου θα είναι διαφανές"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1820
+msgid "Zoom level"
+msgstr "Επίπεδο μεγέθυνσης"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1821
+msgid "The level of zoom of the content"
+msgstr "Το επίπεδο μεγέθυνσης/σμίκρυνσης του περιεχομένου"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1836
+msgid "Full content zoom"
+msgstr "Μεγέθυνση πλήρους περιεχομένου"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1837
+msgid "Whether the full content is scaled when zooming"
+msgstr "Αν η μεγέθυνση/σμίκρυνση θα εφαρμόζεται σε όλο το περιεχόμενο"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1850
+msgid "Encoding"
+msgstr "Κωδικοποίηση"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1851
+msgid "The default encoding of the web view"
+msgstr "Η προεπιλεγμένη κωδικοποίηση για την προβολή Ιστού"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1864
+msgid "Custom Encoding"
+msgstr "Προσαρμοσμένη κωδικοποίηση"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:1865
+msgid "The custom encoding of the web view"
+msgstr "Η προσαρμοσμένη κωδικοποίηση για την προβολή Ιστού"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:51
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:56
+msgid "Submit"
+msgstr "Υποβολή"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:61
+msgid "Reset"
+msgstr "Επαναφορά"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:66
+msgid "_Searchable Index"
+msgstr "_Ευρετήριο"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:71
+msgid "Choose File"
+msgstr "Επιλογή αρχείου"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:76
+msgid "(None)"
+msgstr "(Κανένα)"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:81
+msgid "Open Link in New _Window"
+msgstr "Άνοιγμα συνδέσμου σε _νέο παράθυρο"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:86
+msgid "_Download Linked File"
+msgstr "_Λήψη αρχείου συνδέσμου"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:91
+msgid "Copy Link Loc_ation"
+msgstr "Αντιγραφή _τοποθεσίας συνδέσμου"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:96
+msgid "Open _Image in New Window"
+msgstr "Άνοιγμα _εικόνας σε νέο παράθυρο"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:101
+msgid "Sa_ve Image As"
+msgstr "Απο_θήκευση εικόνας"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:106
+msgid "Cop_y Image"
+msgstr "Αντιγρα_φή εικόνας"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:111
+msgid "Open _Frame in New Window"
+msgstr "Άνοιγμα _πλαισίου σε νέο παράθυρο"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:162
+msgid "_Reload"
+msgstr "_Επαναφόρτωση"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:179
+msgid "No Guesses Found"
+msgstr "Δε βρέθηκαν υποδείξεις"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:184
+msgid "_Ignore Spelling"
+msgstr "_Αγνόηση ορθογραφίας"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:189
+msgid "_Learn Spelling"
+msgstr "Εκ_μάθηση ορθογραφίας"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:194
+msgid "_Search the Web"
+msgstr "Αναζήτηση στον _Ιστό"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:199
+msgid "_Look Up in Dictionary"
+msgstr "Αναζήτηση στο _λεξικό"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:204
+msgid "_Open Link"
+msgstr "Άν_οιγμα συνδέσμου"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:209
+msgid "Ignore _Grammar"
+msgstr "Αγνόηση _γραμματικών λαθών"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:214
+msgid "Spelling and _Grammar"
+msgstr "Ορθογραφικός και _γραμματικός έλεγχος"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:219
+msgid "_Show Spelling and Grammar"
+msgstr "_Εμφάνιση ορθογραφικών και γραμματικών λαθών"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:219
+msgid "_Hide Spelling and Grammar"
+msgstr "_Απόκρυψη ορθογραφικών και γραμματικών λαθών"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:224
+msgid "_Check Document Now"
+msgstr "Έλεγχος εγγράφου _τώρα"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:229
+msgid "Check Spelling While _Typing"
+msgstr "Ορθογραφικός έλεγχος κατά την _πληκτρολόγηση"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:234
+msgid "Check _Grammar With Spelling"
+msgstr "Ταυτόχρονος _γραμματικός και ορθογραφικός έλεγχος"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:239
+msgid "_Font"
+msgstr "_Γραμματοσειρά"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:262
+msgid "_Outline"
+msgstr "Επ_ισκόπηση"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:267
+msgid "Inspect _Element"
+msgstr "Επιθεώρηση στοι_χείου"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:272
+msgid "No recent searches"
+msgstr "Καμία πρόσφατη αναζήτηση"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:277
+msgid "Recent searches"
+msgstr "Πρόσφατες αναζητήσεις"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:282
+msgid "_Clear recent searches"
+msgstr "Εκκα_θάριση πρόσφατων αναζητήσεων"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:287
+msgid "term"
+msgstr "όρος"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:292
+msgid "definition"
+msgstr "ορισμός"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:297
+msgid "press"
+msgstr "πάτημα"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:302
+msgid "select"
+msgstr "επιλογή"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:307
+msgid "activate"
+msgstr "ενεργοποίηση"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:312
+msgid "uncheck"
+msgstr "αποεπιλογή"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:317
+msgid "check"
+msgstr "επιλογή"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:322
+msgid "jump"
+msgstr "μετάβαση"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:328
+msgid " files"
+msgstr "αρχεία"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:333
+msgid "Unknown"
+msgstr "Άγνωστο"
+
diff --git a/Source/WebKit/gtk/po/hu.po b/Source/WebKit/gtk/po/hu.po
new file mode 100644
index 0000000..1549430
--- /dev/null
+++ b/Source/WebKit/gtk/po/hu.po
@@ -0,0 +1,1073 @@
+# Hungarian translation of webkit-gtk
+# This file is put in the public domain.
+#
+# Gabor Kelemen <kelemeng at gnome dot hu>, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: webkit 1.1.20\n"
+"Report-Msgid-Bugs-To: http://bugs.webkit.org/\n"
+"POT-Creation-Date: 2010-02-16 15:01-0200\n"
+"PO-Revision-Date: 2010-02-22 17:10+0100\n"
+"Last-Translator: Gabor Kelemen <kelemeng at gnome dot hu>\n"
+"Language-Team: Hungarian <gnome at fsf dot hu>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp:535
+msgid "Upload File"
+msgstr "Fájl feltöltése"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:61
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:143
+msgid "Input _Methods"
+msgstr "Beviteli mó_dok"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:78
+msgid "LRM _Left-to-right mark"
+msgstr "LRM _Balról-jobbra jel"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:79
+msgid "RLM _Right-to-left mark"
+msgstr "RLM J_obbról-balra jel"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:80
+msgid "LRE Left-to-right _embedding"
+msgstr "LRE Balról-jobbra beá_gyazás"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:81
+msgid "RLE Right-to-left e_mbedding"
+msgstr "RLE Jobbról-balra b_eágyazás"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:82
+msgid "LRO Left-to-right _override"
+msgstr "LRO Balról-jobbra _felülbírálás"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:83
+msgid "RLO Right-to-left o_verride"
+msgstr "RLO Jobbról-balra f_elülbírálás"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:84
+msgid "PDF _Pop directional formatting"
+msgstr "PDF Irányformázás _visszakapása"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:85
+msgid "ZWS _Zero width space"
+msgstr "ZWS N_ull szélességű szóköz"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:86
+msgid "ZWJ Zero width _joiner"
+msgstr "ZWJ Null szélességű ö_sszekötő"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:87
+msgid "ZWNJ Zero width _non-joiner"
+msgstr "ZWNJ Null szélességű _nem-összekötő"
+
+#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:109
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:138
+msgid "_Insert Unicode Control Character"
+msgstr "_Unicode vezérlőkarakter beszúrása"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:262
+msgid "Network Request"
+msgstr "Hálózati kérés"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:263
+msgid "The network request for the URI that should be downloaded"
+msgstr "A hálózati kérés a letöltendő URI-címhez"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:277
+msgid "Network Response"
+msgstr "Hálózati válasz"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:278
+msgid "The network response for the URI that should be downloaded"
+msgstr "A hálózati válasz a letöltendő URI-címhez"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:292
+msgid "Destination URI"
+msgstr "Cél URI"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:293
+msgid "The destination URI where to save the file"
+msgstr "A cél URI, ahova a fájl mentendő"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:307
+msgid "Suggested Filename"
+msgstr "Javasolt fájlnév"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:308
+msgid "The filename suggested as default when saving"
+msgstr "A mentéskor alapértelmezettként javasolt fájlnév"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:325
+msgid "Progress"
+msgstr "Folyamatjelző"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:326
+msgid "Determines the current progress of the download"
+msgstr "Meghatározza a letöltés jelenlegi előrehaladását"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:339
+msgid "Status"
+msgstr "Állapot"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:340
+msgid "Determines the current status of the download"
+msgstr "Meghatározza a letöltés jelenlegi állapotát"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:355
+msgid "Current Size"
+msgstr "Jelenlegi méret"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:356
+msgid "The length of the data already downloaded"
+msgstr "A már letöltött adatok hossza"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:370
+msgid "Total Size"
+msgstr "Teljes méret"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:371
+msgid "The total size of the file"
+msgstr "A fájl teljes mérete"
+
+#: WebKit/gtk/webkit/webkitdownload.cpp:522
+msgid "User cancelled the download"
+msgstr "A felhasználó megszakította a letöltést"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:244
+#, c-format
+msgid "A username and password are being requested by the site %s"
+msgstr "A(z) %s oldal felhasználónevet és jelszót kér"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:269
+msgid "Username:"
+msgstr "Felhasználónév:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:271
+msgid "Password:"
+msgstr "Jelszó:"
+
+#: WebKit/gtk/webkit/webkitsoupauthdialog.c:280
+msgid "_Remember password"
+msgstr "Jelszó _megjegyzése"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:298
+msgid "Name"
+msgstr "Név"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:299
+msgid "The name of the frame"
+msgstr "A keret neve"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:305
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:146
+#: WebKit/gtk/webkit/webkitwebview.cpp:2315
+msgid "Title"
+msgstr "Cím"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:306
+msgid "The document title of the frame"
+msgstr "A keret dokumentumcíme"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:312
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:178
+#: WebKit/gtk/webkit/webkitwebview.cpp:2329
+msgid "URI"
+msgstr "URI"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:313
+msgid "The current URI of the contents displayed by the frame"
+msgstr "A keretben megjelenő tartalom jelenlegi URI-címe"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:344
+msgid "Horizontal Scrollbar Policy"
+msgstr "Vízszintes görgetősáv irányelv"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:345
+msgid "Determines the current policy for the horizontal scrollbar of the frame."
+msgstr "Meghatározza a keret vízszintes görgetősávjának irányelvét."
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:362
+msgid "Vertical Scrollbar Policy"
+msgstr "Függőleges görgetősáv irányelv"
+
+#: WebKit/gtk/webkit/webkitwebframe.cpp:363
+msgid "Determines the current policy for the vertical scrollbar of the frame."
+msgstr "Meghatározza a keret függőleges görgetősávjának irányelvét."
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:147
+msgid "The title of the history item"
+msgstr "Az előzményelem címe"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:162
+msgid "Alternate Title"
+msgstr "Alternatív cím"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:163
+msgid "The alternate title of the history item"
+msgstr "Az előzményelem alternatív címe"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:179
+msgid "The URI of the history item"
+msgstr "Az előzményelem URI-címe"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:194
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:173
+msgid "Original URI"
+msgstr "Eredeti URI"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:195
+msgid "The original URI of the history item"
+msgstr "Az előzményelem eredeti URI-címe"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:210
+msgid "Last visited Time"
+msgstr "Utolsó látogatás ideje"
+
+#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:211
+msgid "The time at which the history item was last visited"
+msgstr "Az előzményelem utolsó meglátogatásának ideje"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:268
+msgid "Web View"
+msgstr "Webnézet"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:269
+msgid "The Web View that renders the Web Inspector itself"
+msgstr "A magát a webvizsgálót megjelenítő webnézet"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:282
+msgid "Inspected URI"
+msgstr "Vizsgált URI"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:283
+msgid "The URI that is currently being inspected"
+msgstr "A jelenleg vizsgált URI"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:299
+msgid "Enable JavaScript profiling"
+msgstr "JavaScript profilozás engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:300
+msgid "Profile the executed JavaScript."
+msgstr "A végrehajtott JavaScript profilozása."
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:315
+msgid "Enable Timeline profiling"
+msgstr "Idővonal-profilozás engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebinspector.cpp:316
+msgid "Profile the WebCore instrumentation."
+msgstr "A WebCore rendszerállapotának profilozása."
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:158
+msgid "Reason"
+msgstr "Ok"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:159
+msgid "The reason why this navigation is occurring"
+msgstr "A navigáció előfordulásának oka"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:174
+msgid "The URI that was requested as the target for the navigation"
+msgstr "A navigáció céljaként kért URI"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:188
+msgid "Button"
+msgstr "Gomb"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:189
+msgid "The button used to click"
+msgstr "A kattintáshoz használt gomb"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:204
+msgid "Modifier state"
+msgstr "Módosítóállapot"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:205
+msgid "A bitmask representing the state of the modifier keys"
+msgstr "A módosítóbillentyűk állapotát ábrázoló bitmaszk"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:220
+msgid "Target frame"
+msgstr "Cél keret"
+
+#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:221
+msgid "The target frame for the navigation"
+msgstr "A navigáció cél kerete"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:233
+msgid "Default Encoding"
+msgstr "Alapértelmezett kódolás"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:234
+msgid "The default encoding used to display text."
+msgstr "A szöveg megjelenítésére használt alapértelmezett kódolás."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:242
+msgid "Cursive Font Family"
+msgstr "Dőlt betűkészletcsalád"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:243
+msgid "The default Cursive font family used to display text."
+msgstr "A szöveg megjelenítésére használt alapértelmezett dőlt betűkészletcsalád."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:251
+msgid "Default Font Family"
+msgstr "Alapértelmezett betűkészletcsalád"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:252
+msgid "The default font family used to display text."
+msgstr "A szöveg megjelenítésére használt alapértelmezett betűkészletcsalád."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:260
+msgid "Fantasy Font Family"
+msgstr "Fantázia betűkészletcsalád"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:261
+msgid "The default Fantasy font family used to display text."
+msgstr "A szöveg megjelenítésére használt alapértelmezett fantázia betűkészletcsalád."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:269
+msgid "Monospace Font Family"
+msgstr "Rögzített szélességű betűkészletcsalád"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:270
+msgid "The default font family used to display monospace text."
+msgstr ""
+"A szöveg megjelenítésére használt alapértelmezett rögzített szélességű "
+"betűkészletcsalád."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:278
+msgid "Sans Serif Font Family"
+msgstr "Sans Serif betűkészletcsalád"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:279
+msgid "The default Sans Serif font family used to display text."
+msgstr ""
+"A szöveg megjelenítésére használt alapértelmezett Sans Serif "
+"betűkészletcsalád."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:287
+msgid "Serif Font Family"
+msgstr "Serif betűkészletcsalád"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:288
+msgid "The default Serif font family used to display text."
+msgstr "A szöveg megjelenítésére használt alapértelmezett Serif betűkészletcsalád."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:296
+msgid "Default Font Size"
+msgstr "Alapértelmezett betűméret"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:297
+msgid "The default font size used to display text."
+msgstr "A szöveg megjelenítésére használt alapértelmezett betűméret."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:305
+msgid "Default Monospace Font Size"
+msgstr "Alapértelmezett rögzített szélességű betűméret"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:306
+msgid "The default font size used to display monospace text."
+msgstr ""
+"A rögzített szélességű szöveg megjelenítésére használt alapértelmezett "
+"betűméret."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:314
+msgid "Minimum Font Size"
+msgstr "Minimális betűméret"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:315
+msgid "The minimum font size used to display text."
+msgstr "A szöveg megjelenítésére használt minimális betűméret."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:323
+msgid "Minimum Logical Font Size"
+msgstr "Minimális logikai betűméret"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:324
+msgid "The minimum logical font size used to display text."
+msgstr "A szöveg megjelenítésére használt minimális logikai betűméret."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:343
+msgid "Enforce 96 DPI"
+msgstr "96 DPI kikényszerítése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:344
+msgid "Enforce a resolution of 96 DPI"
+msgstr "96 DPI-s felbontás kikényszerítése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:352
+msgid "Auto Load Images"
+msgstr "Képek automatikus betöltése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:353
+msgid "Load images automatically."
+msgstr "Képek automatikus betöltése."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:361
+msgid "Auto Shrink Images"
+msgstr "Képek automatikus zsugorítása"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:362
+msgid "Automatically shrink standalone images to fit."
+msgstr "Képek automatikus zsugorítása, hogy elférjenek."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:370
+msgid "Print Backgrounds"
+msgstr "Hátterek nyomtatása"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:371
+msgid "Whether background images should be printed."
+msgstr "A háttérképeket ki kell-e nyomtatni."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:379
+msgid "Enable Scripts"
+msgstr "Parancsfájlok engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:380
+msgid "Enable embedded scripting languages."
+msgstr "Beágyazott parancsnyelvek engedélyezése."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:388
+msgid "Enable Plugins"
+msgstr "Bővítmények engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:389
+msgid "Enable embedded plugin objects."
+msgstr "Beágyazott bővítményobjektumok engedélyezése."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:397
+msgid "Resizable Text Areas"
+msgstr "Átméretezhető szövegterületek"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:398
+msgid "Whether text areas are resizable."
+msgstr "A szövegterületek átméretezhetők-e."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:405
+msgid "User Stylesheet URI"
+msgstr "Felhasználói stíluslap URI-címe"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:406
+msgid "The URI of a stylesheet that is applied to every page."
+msgstr "A minden oldalra alkalmazott stíluslap URI-címe."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:421
+msgid "Zoom Stepping Value"
+msgstr "Nagyítás lépésköze"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:422
+msgid "The value by which the zoom level is changed when zooming in or out."
+msgstr ""
+"A nagyítási szint módosítása ezzel az értékkel nagyításkor vagy "
+"kicsinyítéskor."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:440
+msgid "Enable Developer Extras"
+msgstr "Fejlesztői extrák engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:441
+msgid "Enables special extensions that help developers"
+msgstr "Fejlesztőket segítő speciális kiterjesztések engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:461
+msgid "Enable Private Browsing"
+msgstr "Privát böngészés engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:462
+msgid "Enables private browsing mode"
+msgstr "Engedélyezi a privát böngészés módot"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:477
+msgid "Enable Spell Checking"
+msgstr "Helyesírás-ellenőrzés engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:478
+msgid "Enables spell checking while typing"
+msgstr "Engedélyezi a helyesírás ellenőrzését gépeléskor"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:501
+msgid "Languages to use for spell checking"
+msgstr "A helyesírás-ellenőrzéshez használandó nyelvek"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:502
+msgid "Comma separated list of languages to use for spell checking"
+msgstr "A helyesírás-ellenőrzéshez használandó nyelvek vesszővel elválasztott listája"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:516
+msgid "Enable Caret Browsing"
+msgstr "Kurzoros böngészés engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:517
+msgid "Whether to enable accesibility enhanced keyboard navigation"
+msgstr "Akadálymentes billentyűzetnavigáció engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:532
+msgid "Enable HTML5 Database"
+msgstr "HTML5 adatbázis engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:533
+msgid "Whether to enable HTML5 database support"
+msgstr "A HTML5 adatbázis-támogatás engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:548
+msgid "Enable HTML5 Local Storage"
+msgstr "HTML5 helyi tárolás engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:549
+msgid "Whether to enable HTML5 Local Storage support"
+msgstr "HTML5 helyi tárolás támogatásának engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:563
+msgid "Enable XSS Auditor"
+msgstr "XSS-auditáló engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:564
+msgid "Whether to enable teh XSS auditor"
+msgstr "Az XSS-auditáló engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:582
+msgid "User Agent"
+msgstr "Felhasználói ügynök"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:583
+msgid "The User-Agent string used by WebKitGtk"
+msgstr "A WebKitGtk által használandó felhasználói ügynök karakterlánc"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:598
+msgid "JavaScript can open windows automatically"
+msgstr "A JavaScript automatikusan megnyithat ablakokat"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:599
+msgid "Whether JavaScript can open windows automatically"
+msgstr "A JavaScript megnyithat-e automatikusan ablakokat"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:614
+msgid "Enable offline web application cache"
+msgstr "Kapcsolat nélküli webalkalmazás-gyorsítótár engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:615
+msgid "Whether to enable offline web application cache"
+msgstr "Webalkalmazások kapcsolat nélküli gyorsítótárának engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:642
+msgid "Editing behavior"
+msgstr "Szerkesztés viselkedése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:643
+msgid "The behavior mode to use in editing mode"
+msgstr "A szerkesztési módban használandó viselkedésmód"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:659
+msgid "Enable universal access from file URIs"
+msgstr "Akadálymentesítés engedélyezése fájl URI-címekből"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:660
+msgid "Whether to allow universal access from file URIs"
+msgstr "Akadálymentesítés engedélyezése fájl URI-címekből"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:675
+msgid "Enable DOM paste"
+msgstr "DOM beillesztés engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:676
+msgid "Whether to enable DOM paste"
+msgstr "DOM beillesztés engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:694
+msgid "Tab key cycles through elements"
+msgstr "A Tab billentyű vált az elemek között"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:695
+msgid "Whether the tab key cycles through elements on the page."
+msgstr "A Tab billentyű váltogat az oldal elemei között."
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:715
+msgid "Enable Default Context Menu"
+msgstr "Alapértelmezett helyi menü engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:716
+msgid ""
+"Enables the handling of right-clicks for the creation of the default context "
+"menu"
+msgstr "Engedélyezi a jobb kattintások kezelését az alapértelmezett helyi menü létrehozásához"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:736
+msgid "Enable Site Specific Quirks"
+msgstr "Oldalspecifikus kerülő megoldások engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:737
+msgid "Enables the site-specific compatibility workarounds"
+msgstr "Engedélyezi az oldalspecifikus kompatibilitási kerülő megoldásokat"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:759
+msgid "Enable page cache"
+msgstr "Oldalgyorsítótár engedélyezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:760
+msgid "Whether the page cache should be used"
+msgstr "Az oldalgyorsítótár használható-e"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:780
+msgid "Auto Resize Window"
+msgstr "Ablak automatikus átméretezése"
+
+#: WebKit/gtk/webkit/webkitwebsettings.cpp:781
+msgid "Automatically resize the toplevel window when a page requests it"
+msgstr "A felső szintű ablak automatikus átméretezése, ha az oldal kéri"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2316
+msgid "Returns the @web_view's document title"
+msgstr "Visszaadja a @web_view dokumentumcímét"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2330
+msgid "Returns the current URI of the contents displayed by the @web_view"
+msgstr "Visszaadja a @web_view által megjelenített tartalmak jelenlegi URL-címét"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2343
+msgid "Copy target list"
+msgstr "Másolási céllista"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2344
+msgid "The list of targets this web view supports for clipboard copying"
+msgstr "A webnézet által vágólapra másoláshoz támogatott célok listája"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2357
+msgid "Paste target list"
+msgstr "Beillesztési céllista"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2358
+msgid "The list of targets this web view supports for clipboard pasting"
+msgstr "A webnézet által vágólapról beillesztéshez támogatott célok listája"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2364
+msgid "Settings"
+msgstr "Beállítások"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2365
+msgid "An associated WebKitWebSettings instance"
+msgstr "Egy társított WebKitWebSettings példány"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2378
+msgid "Web Inspector"
+msgstr "Webfigyelő"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2379
+msgid "The associated WebKitWebInspector instance"
+msgstr "A társított WebKitWebInspector példány"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2399
+msgid "Editable"
+msgstr "Szerkeszthető"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2400
+msgid "Whether content can be modified by the user"
+msgstr "A tartalom módosítható-e a felhasználó által"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2406
+msgid "Transparent"
+msgstr "Átlátszó"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2407
+msgid "Whether content has a transparent background"
+msgstr "A tartalomnak átlátszó-e a háttere"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2420
+msgid "Zoom level"
+msgstr "Nagyítás mértéke"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2421
+msgid "The level of zoom of the content"
+msgstr "A tartalom nagyítási szintje"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2436
+msgid "Full content zoom"
+msgstr "Teljes tartalom nagyítása"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2437
+msgid "Whether the full content is scaled when zooming"
+msgstr "A teljes tartalom át van-e méretezve nagyításkor"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2450
+msgid "Encoding"
+msgstr "Kódolás"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2451
+msgid "The default encoding of the web view"
+msgstr "A webnézet alapértelmezett kódolása"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2464
+msgid "Custom Encoding"
+msgstr "Egyéni kódolás"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2465
+msgid "The custom encoding of the web view"
+msgstr "A webnézet egyéni kódolása"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2517
+msgid "Icon URI"
+msgstr "Ikon URI"
+
+#: WebKit/gtk/webkit/webkitwebview.cpp:2518
+msgid "The URI for the favicon for the #WebKitWebView."
+msgstr "A weblapikon URI-címe a #WebKitWebView-hoz."
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:55
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:60
+msgid "Submit"
+msgstr "Elküldés"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:65
+msgid "Reset"
+msgstr "Visszaállítás"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:70
+msgid "_Searchable Index"
+msgstr "_Kereshető index"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:75
+msgid "Choose File"
+msgstr "Válasszon fájlt"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:80
+msgid "(None)"
+msgstr "(Nincs)"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:85
+msgid "Open Link in New _Window"
+msgstr "Hivatkozás megnyitása új _ablakban"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:90
+msgid "_Download Linked File"
+msgstr "Hi_vatkozott fájl letöltése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:95
+msgid "Copy Link Loc_ation"
+msgstr "Link _helyének másolása"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:100
+msgid "Open _Image in New Window"
+msgstr "Ké_p megnyitása új ablakban"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:105
+msgid "Sa_ve Image As"
+msgstr "Kép _mentése másként"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:110
+msgid "Cop_y Image"
+msgstr "Kép má_solása"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:115
+msgid "Open _Frame in New Window"
+msgstr "Keret megnyitása új _ablakban"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:166
+msgid "_Reload"
+msgstr "Új_ratöltés"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:183
+msgid "No Guesses Found"
+msgstr "Nincsenek tippek"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:188
+msgid "_Ignore Spelling"
+msgstr "Írásmó_d mellőzése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:193
+msgid "_Learn Spelling"
+msgstr "Írásmód megtan_ulása"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:198
+msgid "_Search the Web"
+msgstr "Keresés a _weben"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:203
+msgid "_Look Up in Dictionary"
+msgstr "Keresés s_zótárban"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:208
+msgid "_Open Link"
+msgstr "_Hivatkozás megnyitása"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:213
+msgid "Ignore _Grammar"
+msgstr "N_yelvhelyesség mellőzése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:218
+msgid "Spelling and _Grammar"
+msgstr "Helyesírás és nyel_vhelyesség"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:223
+msgid "_Show Spelling and Grammar"
+msgstr "Helyesírás és nyel_vhelyesség megjelenítése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:223
+msgid "_Hide Spelling and Grammar"
+msgstr "Helyesírás és nyelvhelyesség _elrejtése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:228
+msgid "_Check Document Now"
+msgstr "_Dokumentum ellenőrzése most"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:233
+msgid "Check Spelling While _Typing"
+msgstr "Helyesírás ellenőrzése _gépeléskor"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:238
+msgid "Check _Grammar With Spelling"
+msgstr "_Nyelvhelyesség ellenőrzése a helyesírással"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:243
+msgid "_Font"
+msgstr "_Betűkészlet"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:266
+msgid "_Outline"
+msgstr "_Körvonal"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:271
+msgid "Inspect _Element"
+msgstr "Elem _vizsgálata"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:276
+msgid "No recent searches"
+msgstr "Nincsenek legutóbbi keresések"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:281
+msgid "Recent searches"
+msgstr "Legutóbbi keresések"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:286
+msgid "_Clear recent searches"
+msgstr "Legutóbbi keresések _törlése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:291
+msgid "term"
+msgstr "kifejezés"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:296
+msgid "definition"
+msgstr "meghatározás"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:301
+msgid "press"
+msgstr "nyomja meg"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:306
+msgid "select"
+msgstr "válassza ki"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:311
+msgid "activate"
+msgstr "aktiválja"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:316
+msgid "uncheck"
+msgstr "törölje"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:321
+msgid "check"
+msgstr "jelölje be"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:326
+msgid "jump"
+msgstr "ugrás"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:342
+msgid " files"
+msgstr " fájl"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:347
+msgid "Unknown"
+msgstr "Ismeretlen"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:364
+msgid "Loading..."
+msgstr "Betöltés…"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:369
+msgid "Live Broadcast"
+msgstr "Élő műsorszórás"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:375
+msgid "audio element controller"
+msgstr "hangelem vezérlője"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:377
+msgid "video element controller"
+msgstr "videoelem vezérlője"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:379
+msgid "mute"
+msgstr "némítás"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:381
+msgid "unmute"
+msgstr "hang be"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:383
+msgid "play"
+msgstr "lejátszás"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:385
+msgid "pause"
+msgstr "szünet"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:387
+msgid "movie time"
+msgstr "film ideje"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:389
+msgid "timeline slider thumb"
+msgstr "idővonal-csúszka gombja"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:391
+msgid "back 30 seconds"
+msgstr "vissza 30 másodpercet"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:393
+msgid "return to realtime"
+msgstr "vissza valós időbe"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:395
+msgid "elapsed time"
+msgstr "eltelt idő"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:397
+msgid "remaining time"
+msgstr "fennmaradó idő"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:399
+msgid "status"
+msgstr "állapot"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:401
+msgid "fullscreen"
+msgstr "teljes képernyő"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:403
+msgid "fast forward"
+msgstr "gyorsan előre"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:405
+msgid "fast reverse"
+msgstr "gyorsan vissza"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:407
+msgid "show closed captions"
+msgstr "zárt fejezetek megjelenítése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:409
+msgid "hide closed captions"
+msgstr "zárt fejezetek elrejtése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:418
+msgid "audio element playback controls and status display"
+msgstr "hangelem lejátszási vezérlőelemei és állapotkijelzése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:420
+msgid "video element playback controls and status display"
+msgstr "videoelem lejátszási vezérlőelemei és állapotkijelzése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:422
+msgid "mute audio tracks"
+msgstr "hangsávok némítása"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:424
+msgid "unmute audio tracks"
+msgstr "hangsávok némítása ki"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:426
+msgid "begin playback"
+msgstr "lejátszás elkezdése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:428
+msgid "pause playback"
+msgstr "lejátszás szüneteltetése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:430
+msgid "movie time scrubber"
+msgstr "filmidő-csúszka"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:432
+msgid "movie time scrubber thumb"
+msgstr "filmidő-csúszka gombja"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:434
+msgid "seek movie back 30 seconds"
+msgstr "film visszatekerése 30 másodperccel"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:436
+msgid "return streaming movie to real time"
+msgstr "sugárzott film visszaállítása valós időre"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:438
+msgid "current movie time in seconds"
+msgstr "aktuális film ideje másodpercben"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:440
+msgid "number of seconds of movie remaining"
+msgstr "a filmből hátralévő másodpercek száma"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:442
+msgid "current movie status"
+msgstr "aktuális film állapota"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:444
+msgid "seek quickly back"
+msgstr "gyors visszatekerés"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:446
+msgid "seek quickly forward"
+msgstr "gyors előretekerés"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:448
+msgid "Play movie in fullscreen mode"
+msgstr "Film lejátszása teljes képernyőn"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:450
+msgid "start displaying closed captions"
+msgstr "zárt fejezetek megjelenítésének megkezdése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:452
+msgid "stop displaying closed captions"
+msgstr "zárt fejezetek megjelenítésének befejezése"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:461
+msgid "indefinite time"
+msgstr "meghatározatlan idő"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:491
+msgid "value missing"
+msgstr "hiányzik az érték"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:497
+msgid "type mismatch"
+msgstr "nem megfelelő típus"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:502
+msgid "pattern mismatch"
+msgstr "nem megfelelő minta"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:507
+msgid "too long"
+msgstr "túl hosszú"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:512
+msgid "range underflow"
+msgstr "tartomány-alulcsordulás"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:517
+msgid "range overflow"
+msgstr "tartomány-túlcsordulás"
+
+#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:522
+msgid "step mismatch"
+msgstr "nem megfelelő lépés"
+
diff --git a/Source/WebKit/gtk/po/id.po b/Source/WebKit/gtk/po/id.po
new file mode 100644
index 0000000..fb3a8a9
--- /dev/null
+++ b/Source/WebKit/gtk/po/id.po
@@ -0,0 +1,1385 @@
+# Indonesian translation for webkit.
+# Copyright (C) 2010 webkit's COPYRIGHT HOLDER
+# This file is distributed under the same license as the webkit package.
+# Andika Triwidada <andika@gmail.com>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: webkit HEAD\n"
+"Report-Msgid-Bugs-To: http://bugs.webkit.org\n"
+"POT-Creation-Date: 2010-09-22 03:26+0000\n"
+"PO-Revision-Date: 2010-09-24 14:25+0700\n"
+"Last-Translator: Andika Triwidada <andika@gmail.com>\n"
+"Language-Team: GNOME Indonesian Translation Team <gnome@i15n.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Indonesian\n"
+"X-Poedit-Country: Indonesia\n"
+
+#: ../WebCoreSupport/ChromeClientGtk.cpp:569
+msgid "Upload File"
+msgstr "Unggah Berkas"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:61
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:194
+msgid "Input _Methods"
+msgstr "_Metoda Masukan"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:78
+msgid "LRM _Left-to-right mark"
+msgstr "LRM _Left-to-right mark"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:79
+msgid "RLM _Right-to-left mark"
+msgstr "RLM _Right-to-left mark"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:80
+msgid "LRE Left-to-right _embedding"
+msgstr "LRE Left-to-right _embedding"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:81
+msgid "RLE Right-to-left e_mbedding"
+msgstr "RLE Right-to-left e_mbedding"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:82
+msgid "LRO Left-to-right _override"
+msgstr "LRO Left-to-right _override"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:83
+msgid "RLO Right-to-left o_verride"
+msgstr "RLO Right-to-left o_verride"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:84
+msgid "PDF _Pop directional formatting"
+msgstr "PDF _Pop directional formatting"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:85
+msgid "ZWS _Zero width space"
+msgstr "ZWS _Zero width space"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:86
+msgid "ZWJ Zero width _joiner"
+msgstr "ZWJ Zero width _joiner"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:87
+msgid "ZWNJ Zero width _non-joiner"
+msgstr "ZWNJ Zero width _non-joiner"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:109
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:189
+msgid "_Insert Unicode Control Character"
+msgstr "S_isipkan karakter Kontrol Unicode"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1140
+msgid "Load request cancelled"
+msgstr "Permintaan memuat dibatalkan"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1146
+msgid "Not allowed to use restricted network port"
+msgstr "Tak diijinkan memakai port jaringan yang dibatasi"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1152
+msgid "URL cannot be shown"
+msgstr "URL tak bisa ditampilkan"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1158
+msgid "Frame load was interrupted"
+msgstr "Pemuatan rangka terputus"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1164
+msgid "Content with the specified MIME type cannot be shown"
+msgstr "Isi dengan jenis MIME yang dinyatakan tidak dapat ditampilkan"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1170
+msgid "File does not exist"
+msgstr "Berkas tak ada"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1176
+msgid "Plugin will handle load"
+msgstr "Plugin akan menangani beban"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:386
+msgid "Play"
+msgstr "Putar"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:388
+msgid "Pause"
+msgstr "Jeda"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:534
+msgid "Play / Pause"
+msgstr "Putar / Jeda"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:534
+msgid "Play or pause the media"
+msgstr "Putar atau tahan media"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:542
+msgid "Time:"
+msgstr "Waktu:"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:566
+msgid "Exit Fullscreen"
+msgstr "Keluar Mode Layar Penuh"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:566
+msgid "Exit from fullscreen mode"
+msgstr "Keluar dari mode layar penuh"
+
+#: ../webkit/webkitdownload.cpp:272
+msgid "Network Request"
+msgstr "Request Jaringan"
+
+#: ../webkit/webkitdownload.cpp:273
+msgid "The network request for the URI that should be downloaded"
+msgstr "Request jaringan bagi URI yang mesti diunduh"
+
+#: ../webkit/webkitdownload.cpp:287
+msgid "Network Response"
+msgstr "Respon Jaringan"
+
+#: ../webkit/webkitdownload.cpp:288
+msgid "The network response for the URI that should be downloaded"
+msgstr "Respon jaringan bagi URI yang mesti diunduh"
+
+#: ../webkit/webkitdownload.cpp:302
+msgid "Destination URI"
+msgstr "URI tujuan"
+
+#: ../webkit/webkitdownload.cpp:303
+msgid "The destination URI where to save the file"
+msgstr "URI tujuan tempat menyimpan berkas"
+
+#: ../webkit/webkitdownload.cpp:317
+msgid "Suggested Filename"
+msgstr "Nama Berkas Yang Disarankan"
+
+#: ../webkit/webkitdownload.cpp:318
+msgid "The filename suggested as default when saving"
+msgstr "Nama berkas yang disarankan sebagai bawaan ketika menyimpan"
+
+#: ../webkit/webkitdownload.cpp:335
+msgid "Progress"
+msgstr "Kemajuan"
+
+#: ../webkit/webkitdownload.cpp:336
+msgid "Determines the current progress of the download"
+msgstr "Menyatakan tingkat kemajuan pengunduhan"
+
+#: ../webkit/webkitdownload.cpp:349
+msgid "Status"
+msgstr "Status"
+
+#: ../webkit/webkitdownload.cpp:350
+msgid "Determines the current status of the download"
+msgstr "Menyatakan status pengunduhan kini"
+
+#: ../webkit/webkitdownload.cpp:365
+msgid "Current Size"
+msgstr "Ukuran Kini"
+
+#: ../webkit/webkitdownload.cpp:366
+msgid "The length of the data already downloaded"
+msgstr "Panjang data yang telah diunduh"
+
+#: ../webkit/webkitdownload.cpp:380
+msgid "Total Size"
+msgstr "Ukuran Total"
+
+#: ../webkit/webkitdownload.cpp:381
+msgid "The total size of the file"
+msgstr "Ukuran total berkas"
+
+#: ../webkit/webkitdownload.cpp:533
+msgid "User cancelled the download"
+msgstr "Pengguna membatalkan pengunduhan"
+
+#: ../webkit/webkithittestresult.cpp:148
+msgid "Context"
+msgstr "Konteks"
+
+#: ../webkit/webkithittestresult.cpp:149
+msgid "Flags indicating the kind of target that received the event."
+msgstr "Flag yang mengindikasikan jenis target yang menerima kejadian."
+
+#: ../webkit/webkithittestresult.cpp:163
+msgid "Link URI"
+msgstr "URI Taut"
+
+#: ../webkit/webkithittestresult.cpp:164
+msgid "The URI to which the target that received the event points, if any."
+msgstr ""
+"URI tautan yang menjadi bagian dari target yang menerima kejadian, bila ada."
+
+#: ../webkit/webkithittestresult.cpp:177
+msgid "Image URI"
+msgstr "URI Gambar"
+
+#: ../webkit/webkithittestresult.cpp:178
+msgid ""
+"The URI of the image that is part of the target that received the event, if "
+"any."
+msgstr ""
+"URI gambar yang menjadi bagian dari target yang menerima kejadian, bila ada."
+
+#: ../webkit/webkithittestresult.cpp:191
+msgid "Media URI"
+msgstr "URI Media"
+
+#: ../webkit/webkithittestresult.cpp:192
+msgid ""
+"The URI of the media that is part of the target that received the event, if "
+"any."
+msgstr ""
+"URI media yang menjadi bagian dari target yang menerima kejadian, bila ada."
+
+#: ../webkit/webkithittestresult.cpp:213
+msgid "Inner node"
+msgstr "Node dalam"
+
+#: ../webkit/webkithittestresult.cpp:214
+msgid "The inner DOM node associated with the hit test result."
+msgstr "Node DOM dalam yang terkait dengan hasil uji hit."
+
+#: ../webkit/webkitnetworkrequest.cpp:136
+#: ../webkit/webkitnetworkresponse.cpp:134 ../webkit/webkitwebframe.cpp:315
+#: ../webkit/webkitwebhistoryitem.cpp:178 ../webkit/webkitwebresource.cpp:126
+#: ../webkit/webkitwebview.cpp:2603
+msgid "URI"
+msgstr "URI"
+
+#: ../webkit/webkitnetworkrequest.cpp:137
+msgid "The URI to which the request will be made."
+msgstr "URI kemana permintaan akan dibuat."
+
+#: ../webkit/webkitnetworkrequest.cpp:150
+#: ../webkit/webkitnetworkresponse.cpp:148
+msgid "Message"
+msgstr "Pesan"
+
+#: ../webkit/webkitnetworkrequest.cpp:151
+msgid "The SoupMessage that backs the request."
+msgstr "SoupMessage yang mendukung permintaan."
+
+#: ../webkit/webkitnetworkresponse.cpp:135
+msgid "The URI to which the response will be made."
+msgstr "URI kemana respon akan dibuat."
+
+#: ../webkit/webkitnetworkresponse.cpp:149
+msgid "The SoupMessage that backs the response."
+msgstr "SoupMessage yang mendukung respon."
+
+#: ../webkit/webkitsecurityorigin.cpp:151
+msgid "Protocol"
+msgstr "Protokol"
+
+#: ../webkit/webkitsecurityorigin.cpp:152
+msgid "The protocol of the security origin"
+msgstr "Protokol dari asal keamanan"
+
+#: ../webkit/webkitsecurityorigin.cpp:165
+msgid "Host"
+msgstr "Host"
+
+#: ../webkit/webkitsecurityorigin.cpp:166
+msgid "The host of the security origin"
+msgstr "Host dari asal keamanan"
+
+#: ../webkit/webkitsecurityorigin.cpp:179
+msgid "Port"
+msgstr "Port"
+
+#: ../webkit/webkitsecurityorigin.cpp:180
+msgid "The port of the security origin"
+msgstr "Port dari asal keamanan"
+
+#: ../webkit/webkitsecurityorigin.cpp:193
+msgid "Web Database Usage"
+msgstr "Penggunaan Basis Data Web"
+
+#: ../webkit/webkitsecurityorigin.cpp:194
+msgid "The cumulative size of all web databases in the security origin"
+msgstr "Ukuran kumulatif dari semua basis data web dalam asal keamanan"
+
+#: ../webkit/webkitsecurityorigin.cpp:206
+msgid "Web Database Quota"
+msgstr "Kuota Basis Data Web"
+
+#: ../webkit/webkitsecurityorigin.cpp:207
+msgid "The web database quota of the security origin in bytes"
+msgstr "Kuota basis data web dari asal keamanan dalam byte"
+
+#: ../webkit/webkitsoupauthdialog.c:251
+#, c-format
+msgid "A username and password are being requested by the site %s"
+msgstr "Suatu nama pengguna dan kata sandi sedang diminta oleh situs %s"
+
+#: ../webkit/webkitsoupauthdialog.c:281
+msgid "Server message:"
+msgstr "Pesan server:"
+
+#: ../webkit/webkitsoupauthdialog.c:294
+msgid "Username:"
+msgstr "Nama Pengguna:"
+
+#: ../webkit/webkitsoupauthdialog.c:296
+msgid "Password:"
+msgstr "Kata Sandi:"
+
+#: ../webkit/webkitsoupauthdialog.c:305
+msgid "_Remember password"
+msgstr "Ingat _sandi"
+
+#: ../webkit/webkitwebdatabase.cpp:176
+msgid "Security Origin"
+msgstr "Asal Keamanan"
+
+#: ../webkit/webkitwebdatabase.cpp:177
+msgid "The security origin of the database"
+msgstr "Asal keamanan dari basis data"
+
+#: ../webkit/webkitwebdatabase.cpp:190 ../webkit/webkitwebframe.cpp:301
+msgid "Name"
+msgstr "Nama"
+
+#: ../webkit/webkitwebdatabase.cpp:191
+msgid "The name of the Web Database database"
+msgstr "Nama dari basis data Basis Data Web"
+
+#: ../webkit/webkitwebdatabase.cpp:204
+msgid "Display Name"
+msgstr "Nama Tampilan"
+
+#: ../webkit/webkitwebdatabase.cpp:205
+msgid "The display name of the Web Storage database"
+msgstr "Nama tampilan dari basis data Penyimpanan Web"
+
+#: ../webkit/webkitwebdatabase.cpp:218
+msgid "Expected Size"
+msgstr "Ukuran Diharapkan"
+
+#: ../webkit/webkitwebdatabase.cpp:219
+msgid "The expected size of the Web Database database"
+msgstr "Ukuran yang diharapkan dari basis data Basis Data Web"
+
+#: ../webkit/webkitwebdatabase.cpp:231
+msgid "Size"
+msgstr "Ukuran"
+
+#: ../webkit/webkitwebdatabase.cpp:232
+msgid "The current size of the Web Database database"
+msgstr "Ukuran kini dari basis data Basis Data Web"
+
+#: ../webkit/webkitwebdatabase.cpp:244
+msgid "Filename"
+msgstr "Nama berkas"
+
+#: ../webkit/webkitwebdatabase.cpp:245
+msgid "The absolute filename of the Web Storage database"
+msgstr "Nama berkas absolut dari basis data Penyimpanan Web"
+
+#: ../webkit/webkitwebframe.cpp:302
+msgid "The name of the frame"
+msgstr "Nama rangka"
+
+#: ../webkit/webkitwebframe.cpp:308 ../webkit/webkitwebhistoryitem.cpp:146
+#: ../webkit/webkitwebview.cpp:2589
+msgid "Title"
+msgstr "Judul"
+
+#: ../webkit/webkitwebframe.cpp:309
+msgid "The document title of the frame"
+msgstr "Judul dokumen dari rangka"
+
+#: ../webkit/webkitwebframe.cpp:316
+msgid "The current URI of the contents displayed by the frame"
+msgstr "URI kini dari isi yang ditampilkan oleh rangka"
+
+#: ../webkit/webkitwebframe.cpp:347
+msgid "Horizontal Scrollbar Policy"
+msgstr "Kebijakan Penggulungan Horisontal"
+
+#: ../webkit/webkitwebframe.cpp:348
+msgid ""
+"Determines the current policy for the horizontal scrollbar of the frame."
+msgstr ""
+"Menentukan kebijakan kini bagi bilah penggulung horisontal dari bingkai. "
+
+#: ../webkit/webkitwebframe.cpp:365
+msgid "Vertical Scrollbar Policy"
+msgstr "Kebijakan Penggulungan Vertikal"
+
+#: ../webkit/webkitwebframe.cpp:366
+msgid "Determines the current policy for the vertical scrollbar of the frame."
+msgstr ""
+"Menentukan kebijakan kini bagi bilah penggulung horisontal dari bingkai."
+
+#: ../webkit/webkitwebhistoryitem.cpp:147
+msgid "The title of the history item"
+msgstr "Judul butir riwayat"
+
+#: ../webkit/webkitwebhistoryitem.cpp:162
+msgid "Alternate Title"
+msgstr "Judul Alternatif"
+
+#: ../webkit/webkitwebhistoryitem.cpp:163
+msgid "The alternate title of the history item"
+msgstr "Judul alternatif dari butir riwayat"
+
+#: ../webkit/webkitwebhistoryitem.cpp:179
+msgid "The URI of the history item"
+msgstr "URI dari butir riwayat"
+
+#: ../webkit/webkitwebhistoryitem.cpp:194
+#: ../webkit/webkitwebnavigationaction.cpp:173
+msgid "Original URI"
+msgstr "URI Asli"
+
+#: ../webkit/webkitwebhistoryitem.cpp:195
+msgid "The original URI of the history item"
+msgstr "URI asli dari butir riwayat"
+
+#: ../webkit/webkitwebhistoryitem.cpp:210
+msgid "Last visited Time"
+msgstr "Waktu kunjungan terakhir"
+
+#: ../webkit/webkitwebhistoryitem.cpp:211
+msgid "The time at which the history item was last visited"
+msgstr "Waktu saat butir riwayat terakhir kali dikunjungi"
+
+#: ../webkit/webkitwebinspector.cpp:269
+msgid "Web View"
+msgstr "Tilikan Web"
+
+#: ../webkit/webkitwebinspector.cpp:270
+msgid "The Web View that renders the Web Inspector itself"
+msgstr "Tilikan Web yang merender Pemeriksa Web itu sendiri"
+
+#: ../webkit/webkitwebinspector.cpp:283
+msgid "Inspected URI"
+msgstr "URI yang diperiksa"
+
+#: ../webkit/webkitwebinspector.cpp:284
+msgid "The URI that is currently being inspected"
+msgstr "URI yang kini sedang diperiksa"
+
+#: ../webkit/webkitwebinspector.cpp:300
+msgid "Enable JavaScript profiling"
+msgstr "Aktifkan pemrofilan JavaScript"
+
+#: ../webkit/webkitwebinspector.cpp:301
+msgid "Profile the executed JavaScript."
+msgstr "Profilkan JavaScript yang dieksekusi."
+
+#: ../webkit/webkitwebinspector.cpp:316
+msgid "Enable Timeline profiling"
+msgstr "Aktifkan pemrofilan Timeline"
+
+#: ../webkit/webkitwebinspector.cpp:317
+msgid "Profile the WebCore instrumentation."
+msgstr "Profilkan instrumentasi WebCore."
+
+#: ../webkit/webkitwebnavigationaction.cpp:158
+msgid "Reason"
+msgstr "Alasan"
+
+#: ../webkit/webkitwebnavigationaction.cpp:159
+msgid "The reason why this navigation is occurring"
+msgstr "Alasan kenapa navigasi ini terjadi"
+
+#: ../webkit/webkitwebnavigationaction.cpp:174
+msgid "The URI that was requested as the target for the navigation"
+msgstr "URI yang diminta sebagai target navigasi"
+
+#: ../webkit/webkitwebnavigationaction.cpp:188
+msgid "Button"
+msgstr "Tombol"
+
+#: ../webkit/webkitwebnavigationaction.cpp:189
+msgid "The button used to click"
+msgstr "Tombol yang dipakai untuk mengklik"
+
+#: ../webkit/webkitwebnavigationaction.cpp:204
+msgid "Modifier state"
+msgstr "Keadaan perubah"
+
+#: ../webkit/webkitwebnavigationaction.cpp:205
+msgid "A bitmask representing the state of the modifier keys"
+msgstr "Suatu bitmask yang mewakili keadaan dari kunci pengubah"
+
+#: ../webkit/webkitwebnavigationaction.cpp:220
+msgid "Target frame"
+msgstr "Bingkai target"
+
+#: ../webkit/webkitwebnavigationaction.cpp:221
+msgid "The target frame for the navigation"
+msgstr "Bingkai target bagi navigasi"
+
+#: ../webkit/webkitwebresource.cpp:127
+msgid "The uri of the resource"
+msgstr "URI dari sumber daya"
+
+#: ../webkit/webkitwebresource.cpp:141
+msgid "MIME Type"
+msgstr "Jenis MIME"
+
+#: ../webkit/webkitwebresource.cpp:142
+msgid "The MIME type of the resource"
+msgstr "Jenis MIME dari sumber daya"
+
+#: ../webkit/webkitwebresource.cpp:156 ../webkit/webkitwebview.cpp:2724
+msgid "Encoding"
+msgstr "Pengkodean"
+
+#: ../webkit/webkitwebresource.cpp:157
+msgid "The text encoding name of the resource"
+msgstr "Nama pengkodean teks dari sumber daya"
+
+#: ../webkit/webkitwebresource.cpp:172
+msgid "Frame Name"
+msgstr "Nama Rangka"
+
+#: ../webkit/webkitwebresource.cpp:173
+msgid "The frame name of the resource"
+msgstr "Nama rangka dari sumber daya"
+
+#: ../webkit/webkitwebsettings.cpp:247
+msgid "Default Encoding"
+msgstr "Pengkodean Bawaan"
+
+#: ../webkit/webkitwebsettings.cpp:248
+msgid "The default encoding used to display text."
+msgstr "Pengkodean bawaan yang dipakai untuk menampilkan teks."
+
+#: ../webkit/webkitwebsettings.cpp:256
+msgid "Cursive Font Family"
+msgstr "Keluarga Fonta Cursive"
+
+#: ../webkit/webkitwebsettings.cpp:257
+msgid "The default Cursive font family used to display text."
+msgstr "Keluarga fonta Cursive bawaan yang dipakai untuk menampilkan teks."
+
+#: ../webkit/webkitwebsettings.cpp:265
+msgid "Default Font Family"
+msgstr "Keluarga Fonta Bawaan"
+
+#: ../webkit/webkitwebsettings.cpp:266
+msgid "The default font family used to display text."
+msgstr "Keluarga fonta bawaan yang dipakai untuk menampilkan teks."
+
+#: ../webkit/webkitwebsettings.cpp:274
+msgid "Fantasy Font Family"
+msgstr "Keluarga Fonta Fantasy"
+
+#: ../webkit/webkitwebsettings.cpp:275
+msgid "The default Fantasy font family used to display text."
+msgstr "Keluarga fonta Fantasy bawaan yang dipakai untuk menampilkan teks."
+
+#: ../webkit/webkitwebsettings.cpp:283
+msgid "Monospace Font Family"
+msgstr "Keluarga Fonta Monospace"
+
+#: ../webkit/webkitwebsettings.cpp:284
+msgid "The default font family used to display monospace text."
+msgstr ""
+"Keluarga fonta bawaan yang dipakai untuk menampilkan teks lebar-seragam."
+
+#: ../webkit/webkitwebsettings.cpp:292
+msgid "Sans Serif Font Family"
+msgstr "Keluarga Fonta Sans Serif"
+
+#: ../webkit/webkitwebsettings.cpp:293
+msgid "The default Sans Serif font family used to display text."
+msgstr "Keluarga fonta Sans Serif bawaan yang dipakai untuk menampilkan teks."
+
+#: ../webkit/webkitwebsettings.cpp:301
+msgid "Serif Font Family"
+msgstr "Keluarga Fonta Serif"
+
+#: ../webkit/webkitwebsettings.cpp:302
+msgid "The default Serif font family used to display text."
+msgstr "Keluarga fonta Serif bawaan yang dipakai untuk menampilkan teks."
+
+#: ../webkit/webkitwebsettings.cpp:310
+msgid "Default Font Size"
+msgstr "Ukuran Fonta Bawaan"
+
+#: ../webkit/webkitwebsettings.cpp:311
+msgid "The default font size used to display text."
+msgstr "Ukuran fonta bawaan yang dipakai untuk menampilkan teks."
+
+#: ../webkit/webkitwebsettings.cpp:319
+msgid "Default Monospace Font Size"
+msgstr "Ukuran Fonta Lebar-Seragam Bawaan"
+
+#: ../webkit/webkitwebsettings.cpp:320
+msgid "The default font size used to display monospace text."
+msgstr "Ukuran fonta bawaan yang dipakai untuk menampilkan teks lebar-seragam."
+
+#: ../webkit/webkitwebsettings.cpp:328
+msgid "Minimum Font Size"
+msgstr "Ukuran Fonta Minimum"
+
+#: ../webkit/webkitwebsettings.cpp:329
+msgid "The minimum font size used to display text."
+msgstr "Ukuran fonta minimum yang dipakai untuk menampilkan teks."
+
+#: ../webkit/webkitwebsettings.cpp:337
+msgid "Minimum Logical Font Size"
+msgstr "Ukuran Fonta Lojik Minimum"
+
+#: ../webkit/webkitwebsettings.cpp:338
+msgid "The minimum logical font size used to display text."
+msgstr "Ukuran fonta lojik minimum yang dipakai untuk menampilkan teks."
+
+#: ../webkit/webkitwebsettings.cpp:357
+msgid "Enforce 96 DPI"
+msgstr "Paksakan 96 DPI"
+
+#: ../webkit/webkitwebsettings.cpp:358
+msgid "Enforce a resolution of 96 DPI"
+msgstr "Paksakan resolusi 96 DPI"
+
+#: ../webkit/webkitwebsettings.cpp:366
+msgid "Auto Load Images"
+msgstr "Muat Otomatis Gambar"
+
+#: ../webkit/webkitwebsettings.cpp:367
+msgid "Load images automatically."
+msgstr "Muat gambar secara otomatis."
+
+#: ../webkit/webkitwebsettings.cpp:375
+msgid "Auto Shrink Images"
+msgstr "Perkecil Gambar Otomatis"
+
+#: ../webkit/webkitwebsettings.cpp:376
+msgid "Automatically shrink standalone images to fit."
+msgstr "Otomatis memperkecil gambar agar pas."
+
+#: ../webkit/webkitwebsettings.cpp:384
+msgid "Print Backgrounds"
+msgstr "Cetak Latar"
+
+#: ../webkit/webkitwebsettings.cpp:385
+msgid "Whether background images should be printed."
+msgstr "Apakah gambar latar mesti dicetak."
+
+#: ../webkit/webkitwebsettings.cpp:393
+msgid "Enable Scripts"
+msgstr "Aktifkan Skrip"
+
+#: ../webkit/webkitwebsettings.cpp:394
+msgid "Enable embedded scripting languages."
+msgstr "Aktifkan bahasa skrip tertempel."
+
+#: ../webkit/webkitwebsettings.cpp:402
+msgid "Enable Plugins"
+msgstr "Aktifkan Pengaya"
+
+#: ../webkit/webkitwebsettings.cpp:403
+msgid "Enable embedded plugin objects."
+msgstr "Aktifkan objek pengaya tertempel."
+
+#: ../webkit/webkitwebsettings.cpp:411
+msgid "Resizable Text Areas"
+msgstr "Wilayah Teks Yang Dapat Diubah Ukurannya"
+
+#: ../webkit/webkitwebsettings.cpp:412
+msgid "Whether text areas are resizable."
+msgstr "Apakah wilayah teks dapat diubah ukurannya."
+
+#: ../webkit/webkitwebsettings.cpp:419
+msgid "User Stylesheet URI"
+msgstr "URI Stylesheet Pengguna"
+
+#: ../webkit/webkitwebsettings.cpp:420
+msgid "The URI of a stylesheet that is applied to every page."
+msgstr "URI dari stylesheet yang diterapkan pada setiap halaman."
+
+#: ../webkit/webkitwebsettings.cpp:435
+msgid "Zoom Stepping Value"
+msgstr "Nilai Langkah Zum"
+
+#: ../webkit/webkitwebsettings.cpp:436
+msgid "The value by which the zoom level is changed when zooming in or out."
+msgstr "Nilai perubahan aras zum ketika memperbesar atau memperkecil."
+
+#: ../webkit/webkitwebsettings.cpp:454
+msgid "Enable Developer Extras"
+msgstr "Aktifkan Tambahan Bagi Pengembang"
+
+#: ../webkit/webkitwebsettings.cpp:455
+msgid "Enables special extensions that help developers"
+msgstr "Aktifkan perluasan khusus untuk membantu para pengembang"
+
+#: ../webkit/webkitwebsettings.cpp:475
+msgid "Enable Private Browsing"
+msgstr "Aktifkan Penjelajahan Privat"
+
+#: ../webkit/webkitwebsettings.cpp:476
+msgid "Enables private browsing mode"
+msgstr "Aktifkan mode penjelajahan privat"
+
+#: ../webkit/webkitwebsettings.cpp:491
+msgid "Enable Spell Checking"
+msgstr "Aktifkan Pemeriksaan Ejaan"
+
+#: ../webkit/webkitwebsettings.cpp:492
+msgid "Enables spell checking while typing"
+msgstr "Aktifkan pemeriksaan ejaan ketika mengetik"
+
+#: ../webkit/webkitwebsettings.cpp:515
+msgid "Languages to use for spell checking"
+msgstr "Bahasa yang dipakai untuk memeriksa ejaan"
+
+#: ../webkit/webkitwebsettings.cpp:516
+msgid "Comma separated list of languages to use for spell checking"
+msgstr "Daftar bahasa, dipisah dengan koma, yang dipakai untuk memeriksa ejaan"
+
+#: ../webkit/webkitwebsettings.cpp:530
+msgid "Enable Caret Browsing"
+msgstr "Aktifkan Perambanan Caret"
+
+#: ../webkit/webkitwebsettings.cpp:531
+msgid "Whether to enable accesibility enhanced keyboard navigation"
+msgstr "Apakah mengaktifkan navigasi papan tik bagi aksesabilitas"
+
+#: ../webkit/webkitwebsettings.cpp:546
+msgid "Enable HTML5 Database"
+msgstr "Aktifkan Basis Data HTML5"
+
+#: ../webkit/webkitwebsettings.cpp:547
+msgid "Whether to enable HTML5 database support"
+msgstr "Apakah mengaktifkan dukungan basis data HTML5"
+
+#: ../webkit/webkitwebsettings.cpp:562
+msgid "Enable HTML5 Local Storage"
+msgstr "Aktifkan Penyimpanan Lokal HTML5"
+
+#: ../webkit/webkitwebsettings.cpp:563
+msgid "Whether to enable HTML5 Local Storage support"
+msgstr "Apakah mengaktifkan dukungan Penyimpanan Lokal HTML5"
+
+#: ../webkit/webkitwebsettings.cpp:577
+msgid "Enable XSS Auditor"
+msgstr "Aktifkan Auditor XSS"
+
+#: ../webkit/webkitwebsettings.cpp:578
+msgid "Whether to enable the XSS auditor"
+msgstr "Apakah auditor XSS diaktifkan"
+
+#: ../webkit/webkitwebsettings.cpp:596
+msgid "Enable Spatial Navigation"
+msgstr "Aktifkan Navigasi Spasial"
+
+#: ../webkit/webkitwebsettings.cpp:597
+msgid "Whether to enable Spatial Navigation"
+msgstr "Apakah mengaktifkan Navigasi Spasial"
+
+#: ../webkit/webkitwebsettings.cpp:614
+msgid "User Agent"
+msgstr "User Agent"
+
+#: ../webkit/webkitwebsettings.cpp:615
+msgid "The User-Agent string used by WebKitGtk"
+msgstr "String User-Agent yang dipakai oleh WebKitGtk"
+
+#: ../webkit/webkitwebsettings.cpp:630
+msgid "JavaScript can open windows automatically"
+msgstr "JavaScript dapat otomatis membuka jendela"
+
+#: ../webkit/webkitwebsettings.cpp:631
+msgid "Whether JavaScript can open windows automatically"
+msgstr "Apakah JavaScript dapat otomatis membuka jendela"
+
+#: ../webkit/webkitwebsettings.cpp:645
+msgid "JavaScript can access Clipboard"
+msgstr "JavaScript dapat mengakses Papan Klip"
+
+#: ../webkit/webkitwebsettings.cpp:646
+msgid "Whether JavaScript can access Clipboard"
+msgstr "Apakah JavaScript dapat mengakses Papan Klip"
+
+#: ../webkit/webkitwebsettings.cpp:662
+msgid "Enable offline web application cache"
+msgstr "Aktifkan singgahan aplikasi web luring"
+
+#: ../webkit/webkitwebsettings.cpp:663
+msgid "Whether to enable offline web application cache"
+msgstr "Apakah mengaktifkan singgahan aplikasi web luring"
+
+#: ../webkit/webkitwebsettings.cpp:690
+msgid "Editing behavior"
+msgstr "Perilaku penyuntingan"
+
+#: ../webkit/webkitwebsettings.cpp:691
+msgid "The behavior mode to use in editing mode"
+msgstr "Mode perilaku yang dipakai pada mode penyuntingan"
+
+#: ../webkit/webkitwebsettings.cpp:707
+msgid "Enable universal access from file URIs"
+msgstr "Aktifkan akses universal dari URI berkas"
+
+#: ../webkit/webkitwebsettings.cpp:708
+msgid "Whether to allow universal access from file URIs"
+msgstr "Apakah mengaktifkan akses universal dari URI berkas"
+
+#: ../webkit/webkitwebsettings.cpp:723
+msgid "Enable DOM paste"
+msgstr "Aktifkan tempel DOM"
+
+#: ../webkit/webkitwebsettings.cpp:724
+msgid "Whether to enable DOM paste"
+msgstr "Apakah mengaktifkan penempelan DOM"
+
+#: ../webkit/webkitwebsettings.cpp:742
+msgid "Tab key cycles through elements"
+msgstr "Kunci tab menggilir antar elemen"
+
+#: ../webkit/webkitwebsettings.cpp:743
+msgid "Whether the tab key cycles through elements on the page."
+msgstr "Apakah kunci tab menggilir antar elemen pada halaman itu."
+
+#: ../webkit/webkitwebsettings.cpp:763
+msgid "Enable Default Context Menu"
+msgstr "Aktifkan Menu Konteks Bawaan"
+
+#: ../webkit/webkitwebsettings.cpp:764
+msgid ""
+"Enables the handling of right-clicks for the creation of the default context "
+"menu"
+msgstr "Mengaktifkan penanganan klik kanan untuk pembuatan menu konteks bawaan"
+
+#: ../webkit/webkitwebsettings.cpp:784
+msgid "Enable Site Specific Quirks"
+msgstr "Aktifkan Perilaku Khusus Situs"
+
+#: ../webkit/webkitwebsettings.cpp:785
+msgid "Enables the site-specific compatibility workarounds"
+msgstr "Aktifkan pengakalan kompatibilitas spesifik situs"
+
+#: ../webkit/webkitwebsettings.cpp:807
+msgid "Enable page cache"
+msgstr "Aktifkan singgahan halaman"
+
+#: ../webkit/webkitwebsettings.cpp:808
+msgid "Whether the page cache should be used"
+msgstr "Apakah mengaktifkan singgahan halaman"
+
+#: ../webkit/webkitwebsettings.cpp:828
+msgid "Auto Resize Window"
+msgstr "Otomatis Ubah Ukuran Jendela"
+
+#: ../webkit/webkitwebsettings.cpp:829
+msgid "Automatically resize the toplevel window when a page requests it"
+msgstr ""
+"Otomatis ubah ukuran jendela aras puncak ketika suatu halaman memintanya"
+
+#: ../webkit/webkitwebsettings.cpp:861
+msgid "Enable Java Applet"
+msgstr "Aktifkan Aplet Java"
+
+#: ../webkit/webkitwebsettings.cpp:862
+msgid "Whether Java Applet support through <applet> should be enabled"
+msgstr "Apakah dukungan Aplet Java melalui <applet> mesti diaktifkan"
+
+#: ../webkit/webkitwebview.cpp:2590
+msgid "Returns the @web_view's document title"
+msgstr "Mengembalikan judul dokumen @web_view"
+
+#: ../webkit/webkitwebview.cpp:2604
+msgid "Returns the current URI of the contents displayed by the @web_view"
+msgstr "Mengembalikan URI kini dari isi yang ditampilkan oleh @web_view"
+
+#: ../webkit/webkitwebview.cpp:2617
+msgid "Copy target list"
+msgstr "Daftar target salin"
+
+#: ../webkit/webkitwebview.cpp:2618
+msgid "The list of targets this web view supports for clipboard copying"
+msgstr "Daftar target yang didukung tilikan web ini bagi penyalinan clipboard"
+
+#: ../webkit/webkitwebview.cpp:2631
+msgid "Paste target list"
+msgstr "Daftar target tempel"
+
+#: ../webkit/webkitwebview.cpp:2632
+msgid "The list of targets this web view supports for clipboard pasting"
+msgstr "Daftar target yang didukung tilikan web ini bagi penempelan clipboard"
+
+#: ../webkit/webkitwebview.cpp:2638
+msgid "Settings"
+msgstr "Tatanan"
+
+#: ../webkit/webkitwebview.cpp:2639
+msgid "An associated WebKitWebSettings instance"
+msgstr "Instansi WebKitWebSettings yang terkait"
+
+#: ../webkit/webkitwebview.cpp:2652
+msgid "Web Inspector"
+msgstr "Pemeriksa Web"
+
+#: ../webkit/webkitwebview.cpp:2653
+msgid "The associated WebKitWebInspector instance"
+msgstr "Instansi WebKitWebInspector yang terkait"
+
+#: ../webkit/webkitwebview.cpp:2673
+msgid "Editable"
+msgstr "Dapat diedit"
+
+#: ../webkit/webkitwebview.cpp:2674
+msgid "Whether content can be modified by the user"
+msgstr "Apakah isi dapat diubah oleh pengguna"
+
+#: ../webkit/webkitwebview.cpp:2680
+msgid "Transparent"
+msgstr "Transparan"
+
+#: ../webkit/webkitwebview.cpp:2681
+msgid "Whether content has a transparent background"
+msgstr "Apakah isi memiliki latar transparan"
+
+#: ../webkit/webkitwebview.cpp:2694
+msgid "Zoom level"
+msgstr "Tingkat zum"
+
+#: ../webkit/webkitwebview.cpp:2695
+msgid "The level of zoom of the content"
+msgstr "Aras zum dari isi"
+
+#: ../webkit/webkitwebview.cpp:2710
+msgid "Full content zoom"
+msgstr "Zum seluruh isi"
+
+#: ../webkit/webkitwebview.cpp:2711
+msgid "Whether the full content is scaled when zooming"
+msgstr "Apakah seluruh isi diskalakan ketika dizum"
+
+#: ../webkit/webkitwebview.cpp:2725
+msgid "The default encoding of the web view"
+msgstr "Pengkodean bawaan dari tilikan web"
+
+#: ../webkit/webkitwebview.cpp:2738
+msgid "Custom Encoding"
+msgstr "Pengkodean Gubahan"
+
+#: ../webkit/webkitwebview.cpp:2739
+msgid "The custom encoding of the web view"
+msgstr "Pengkodean gubahan dari tilikan web"
+
+#: ../webkit/webkitwebview.cpp:2791
+msgid "Icon URI"
+msgstr "URI Ikon"
+
+#: ../webkit/webkitwebview.cpp:2792
+msgid "The URI for the favicon for the #WebKitWebView."
+msgstr "URI bagi favicon bagi #WebKitWebView."
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:56
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:61
+msgid "Submit"
+msgstr "Kirim"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:66
+msgid "Reset"
+msgstr "Reset"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:71
+msgid "This is a searchable index. Enter search keywords: "
+msgstr "Ini adalah indeks yang dapat dicari. Masukkan kata kunci pencarian:"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:76
+msgid "Choose File"
+msgstr "Pilih Berkas"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:81
+msgid "(None)"
+msgstr "(Tidak ada)"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:86
+msgid "Open Link in New _Window"
+msgstr "Buka Taut di _Jendela Baru"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:91
+msgid "_Download Linked File"
+msgstr "Un_duh Berkas Tertaut"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:96
+msgid "Copy Link Loc_ation"
+msgstr "Salin Lokasi T_aut"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:101
+msgid "Open _Image in New Window"
+msgstr "Buka Gambar d_i Jendela Baru"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:106
+msgid "Sa_ve Image As"
+msgstr "Sim_pan Gambar Sebagai"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:111
+msgid "Cop_y Image"
+msgstr "Sal_in Gambar"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:116
+msgid "Open _Video in New Window"
+msgstr "Buka _Video pada Jendela Baru"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:121
+msgid "Open _Audio in New Window"
+msgstr "Buka Suar_a pada Jendela Baru"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:126
+msgid "Cop_y Video Link Location"
+msgstr "Salin Lokasi T_aut Video"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:131
+msgid "Cop_y Audio Link Location"
+msgstr "Salin Lokasi T_aut Suara"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:136
+msgid "_Toggle Media Controls"
+msgstr "Jungki_tkan Kendali Media"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:141
+msgid "Toggle Media _Loop Playback"
+msgstr "Jungkitkan Pengu_langan Memutar Media"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:146
+msgid "Switch Video to _Fullscreen"
+msgstr "Tukar Video ke Mode Layar _Penuh"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:151
+msgid "_Play"
+msgstr "_Putar"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:156
+msgid "_Pause"
+msgstr "_Jeda"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:161
+msgid "_Mute"
+msgstr "_Senyap"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:166
+msgid "Open _Frame in New Window"
+msgstr "Buka _Frame di Jendela Baru"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:217
+msgid "_Reload"
+msgstr "_Muat Ulang"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:234
+msgid "No Guesses Found"
+msgstr "Tebakan Tak Ditemukan"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:239
+msgid "_Ignore Spelling"
+msgstr "Aba_ikan Ejaan"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:244
+msgid "_Learn Spelling"
+msgstr "Pe_lajari Ejaan"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:249
+msgid "_Search the Web"
+msgstr "_Cari Web"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:254
+msgid "_Look Up in Dictionary"
+msgstr "_Lihat Di Kamus"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:259
+msgid "_Open Link"
+msgstr "_Buka Taut"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:264
+msgid "Ignore _Grammar"
+msgstr "Abaikan Tata _Bahasa"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:269
+msgid "Spelling and _Grammar"
+msgstr "Ejaan dan Tata _Bahasa"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:274
+msgid "_Show Spelling and Grammar"
+msgstr "Tampilkan Ejaan dan Tata Baha_sa"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:274
+msgid "_Hide Spelling and Grammar"
+msgstr "Sembunyikan Ejaan dan Tata Ba_hasa"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:279
+msgid "_Check Document Now"
+msgstr "Periksa Do_kumen Sekarang"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:284
+msgid "Check Spelling While _Typing"
+msgstr "Periksa Ejaan Ketika Menge_tik"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:289
+msgid "Check _Grammar With Spelling"
+msgstr "Periksa Tata _Bahasa Bersama Dengan Ejaan"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:294
+msgid "_Font"
+msgstr "_Fonta"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:317
+msgid "_Outline"
+msgstr "_Outline"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:322
+msgid "Inspect _Element"
+msgstr "Periksa _Elemen"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:327
+msgid "No recent searches"
+msgstr "Tak ada pencarian terkini"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:332
+msgid "Recent searches"
+msgstr "Pencarian terkini"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:337
+msgid "_Clear recent searches"
+msgstr "_Bersihkan pencarian terkini"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:342
+msgid "term"
+msgstr "istilah"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:347
+msgid "definition"
+msgstr "definisi"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:352
+msgid "press"
+msgstr "tekan"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:357
+msgid "select"
+msgstr "pilih"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:362
+msgid "activate"
+msgstr "aktifkan"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:367
+msgid "uncheck"
+msgstr "hapus contreng"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:372
+msgid "check"
+msgstr "contreng"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:377
+msgid "jump"
+msgstr "lompat"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:392
+msgid "Missing Plug-in"
+msgstr "Kehilangan Plug-in"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:398
+msgid "Plug-in Failure"
+msgstr "Kegagalan Plug-in"
+
+#. FIXME: If this file gets localized, this should really be localized as one string with a wildcard for the number.
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:404
+msgid " files"
+msgstr " berkas"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:409
+msgid "Unknown"
+msgstr "Tidak dikenal"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:414
+#, c-format
+msgctxt "Title string for images"
+msgid "%s (%dx%d pixels)"
+msgstr "%s (%dx%d piksel)"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:426
+msgid "Loading..."
+msgstr "Sedang memuat..."
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:431
+msgid "Live Broadcast"
+msgstr "Siaran Langsung"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:437
+msgid "audio element controller"
+msgstr "pengendali elemen audio"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:439
+msgid "video element controller"
+msgstr "pengendali elemen video"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:441
+msgid "mute"
+msgstr "senyap"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:443
+msgid "unmute"
+msgstr "usai senyap"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:445
+msgid "play"
+msgstr "putar"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:447
+msgid "pause"
+msgstr "jeda"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:449
+msgid "movie time"
+msgstr "waktu film"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:451
+msgid "timeline slider thumb"
+msgstr "jempol penggeser waktu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:453
+msgid "back 30 seconds"
+msgstr "mundur 30 detik"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:455
+msgid "return to realtime"
+msgstr "kembali ke waktu nyata"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:457
+msgid "elapsed time"
+msgstr "waktu berjalan"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:459
+msgid "remaining time"
+msgstr "sisa waktu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:461
+msgid "status"
+msgstr "status"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:463
+msgid "fullscreen"
+msgstr "layar penuh"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:465
+msgid "fast forward"
+msgstr "maju cepat"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:467
+msgid "fast reverse"
+msgstr "mundur cepat"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:469
+msgid "show closed captions"
+msgstr "tampilkan takarir gambar"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:471
+msgid "hide closed captions"
+msgstr "sembunyikan takarir gambar"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:480
+msgid "audio element playback controls and status display"
+msgstr "tampilan status dan kendali main ulang elemen suara"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:482
+msgid "video element playback controls and status display"
+msgstr "tampilan status dan kendali main ulang elemen video"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:484
+msgid "mute audio tracks"
+msgstr "bisukan trek suara"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:486
+msgid "unmute audio tracks"
+msgstr "bunyikan trek suara"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:488
+msgid "begin playback"
+msgstr "mulai memutar"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:490
+msgid "pause playback"
+msgstr "jeda memutar"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:492
+msgid "movie time scrubber"
+msgstr "pembersih waktu film"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:494
+msgid "movie time scrubber thumb"
+msgstr "jempol pembersih waktu film"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:496
+msgid "seek movie back 30 seconds"
+msgstr "seem film mundur 30 detik"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:498
+msgid "return streaming movie to real time"
+msgstr "kembalikan film mengalir ke waktu nyata"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:500
+msgid "current movie time in seconds"
+msgstr "waktu film kini dalam detik"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:502
+msgid "number of seconds of movie remaining"
+msgstr "cacah detik sisa film"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:504
+msgid "current movie status"
+msgstr "status film kini"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:506
+msgid "seek quickly back"
+msgstr "seek mundur cepat"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:508
+msgid "seek quickly forward"
+msgstr "seek maju cepat"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:510
+msgid "Play movie in fullscreen mode"
+msgstr "Mainkan film pada mode layar penuh"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:512
+msgid "start displaying closed captions"
+msgstr "mulai tampilkan takarir gambar"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:514
+msgid "stop displaying closed captions"
+msgstr "tak tampilkan lagi takarir gambar"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:523
+msgid "indefinite time"
+msgstr "waktu tak tentu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:553
+msgid "value missing"
+msgstr "nilai hilang"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:559
+msgid "type mismatch"
+msgstr "jenis tak cocok"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:564
+msgid "pattern mismatch"
+msgstr "pola tak cocok"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:569
+msgid "too long"
+msgstr "terlalu panjang"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:574
+msgid "range underflow"
+msgstr "limpah bawah rentang"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:579
+msgid "range overflow"
+msgstr "limpah atas rentang"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:584
+msgid "step mismatch"
+msgstr "langkah tak cocok"
diff --git a/Source/WebKit/gtk/po/pl.po b/Source/WebKit/gtk/po/pl.po
new file mode 100644
index 0000000..e7a2a3c
--- /dev/null
+++ b/Source/WebKit/gtk/po/pl.po
@@ -0,0 +1,1433 @@
+# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+# Aviary.pl
+# Jeśli masz jakiekolwiek uwagi odnoszące się do tłumaczenia lub chcesz
+# pomóc w jego rozwijaniu i pielęgnowaniu, napisz do nas:
+# gnomepl@aviary.pl
+# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+msgid ""
+msgstr ""
+"Project-Id-Version: webkitgtk\n"
+"Report-Msgid-Bugs-To: http://bugs.webkit.org\n"
+"POT-Creation-Date: 2010-12-27 15:26+0000\n"
+"PO-Revision-Date: 2011-01-10 08:59+0100\n"
+"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
+"Language-Team: Polish <gnomepl@aviary.pl>\n"
+"Language: pl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2);\n"
+"X-Poedit-Language: Polish\n"
+"X-Poedit-Country: Poland\n"
+
+#: ../WebCoreSupport/ChromeClientGtk.cpp:589
+msgid "Upload File"
+msgstr "Wyślij plik"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:63
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:194
+msgid "Input _Methods"
+msgstr "_Metody wprowadzania"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:80
+msgid "LRM _Left-to-right mark"
+msgstr "LRM znacznik od l_ewej do prawej"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:81
+msgid "RLM _Right-to-left mark"
+msgstr "RLM znacznik od p_rawej do lewej"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:82
+msgid "LRE Left-to-right _embedding"
+msgstr "LRE _osadzanie od lewej do prawej"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:83
+msgid "RLE Right-to-left e_mbedding"
+msgstr "RLE o_sadzanie od prawej do lewej"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:84
+msgid "LRO Left-to-right _override"
+msgstr "LRO _zastąpienie od lewej do prawej"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:85
+msgid "RLO Right-to-left o_verride"
+msgstr "LRO z_astąpienie od prawej do lewej"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:86
+msgid "PDF _Pop directional formatting"
+msgstr "PDF formatowanie kierunkowe _Pop"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:87
+msgid "ZWS _Zero width space"
+msgstr "ZWS spacja o _zerowej szerokości"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:88
+msgid "ZWJ Zero width _joiner"
+msgstr "ZWJ łą_cznik o zerowej szerokości"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:89
+msgid "ZWNJ Zero width _non-joiner"
+msgstr "ZWNJ _bezłącznik o zerowej szerokości"
+
+#: ../WebCoreSupport/ContextMenuClientGtk.cpp:111
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:189
+msgid "_Insert Unicode Control Character"
+msgstr "_Wstaw znak kontrolny unikodu"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1180
+msgid "Load request cancelled"
+msgstr "Anulowano żądanie wczytania"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1186
+msgid "Not allowed to use restricted network port"
+msgstr "Użycie zastrzeżonego portu sieciowego jest niedozwolone"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1192
+msgid "URL cannot be shown"
+msgstr "Nie można wyświetlić adresu URL"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1198
+msgid "Frame load was interrupted"
+msgstr "Przerwano wczytywanie ramki"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1204
+msgid "Content with the specified MIME type cannot be shown"
+msgstr "Nie można wyświetlić treści o podanym typie MIME"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1210
+msgid "File does not exist"
+msgstr "Plik nie istnieje"
+
+#: ../WebCoreSupport/FrameLoaderClientGtk.cpp:1216
+msgid "Plugin will handle load"
+msgstr "Wtyczka obsłuży wczytanie"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:385
+msgid "Play"
+msgstr "Odtwórz"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:387
+msgid "Pause"
+msgstr "Wstrzymaj"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:533
+msgid "Play / Pause"
+msgstr "Odtwórz/wstrzymaj"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:533
+msgid "Play or pause the media"
+msgstr "Odtwarza lub wstrzymuje multimedia"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:541
+msgid "Time:"
+msgstr "Czas:"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:565
+msgid "Exit Fullscreen"
+msgstr "Opuść pełny ekran"
+
+#: ../WebCoreSupport/FullscreenVideoController.cpp:565
+msgid "Exit from fullscreen mode"
+msgstr "Opuszcza tryb pełnego ekranu"
+
+#: ../webkit/webkitdownload.cpp:273
+msgid "Network Request"
+msgstr "Żądanie sieciowe"
+
+#: ../webkit/webkitdownload.cpp:274
+msgid "The network request for the URI that should be downloaded"
+msgstr "Żądanie sieciowe dla adresu URI, który powinien zostać pobrany"
+
+#: ../webkit/webkitdownload.cpp:288
+msgid "Network Response"
+msgstr "Odpowiedź sieciowa"
+
+#: ../webkit/webkitdownload.cpp:289
+msgid "The network response for the URI that should be downloaded"
+msgstr "Odpowiedź sieciowa dla adresu URI, który powinien zostać pobrany"
+
+#: ../webkit/webkitdownload.cpp:303
+msgid "Destination URI"
+msgstr "Docelowy adres URI"
+
+#: ../webkit/webkitdownload.cpp:304
+msgid "The destination URI where to save the file"
+msgstr "Docelowy adres URI, gdzie zapisać plik"
+
+#: ../webkit/webkitdownload.cpp:318
+msgid "Suggested Filename"
+msgstr "Sugerowana nazwa pliku"
+
+#: ../webkit/webkitdownload.cpp:319
+msgid "The filename suggested as default when saving"
+msgstr "Domyślnie sugerowana nazwa pliku podczas zapisywania"
+
+#: ../webkit/webkitdownload.cpp:336
+msgid "Progress"
+msgstr "Postęp"
+
+#: ../webkit/webkitdownload.cpp:337
+msgid "Determines the current progress of the download"
+msgstr "Określa obecny postęp pobierania"
+
+#: ../webkit/webkitdownload.cpp:350
+msgid "Status"
+msgstr "Stan"
+
+#: ../webkit/webkitdownload.cpp:351
+msgid "Determines the current status of the download"
+msgstr "Określa obecny stan pobierania"
+
+#: ../webkit/webkitdownload.cpp:366
+msgid "Current Size"
+msgstr "Bieżący rozmiar"
+
+#: ../webkit/webkitdownload.cpp:367
+msgid "The length of the data already downloaded"
+msgstr "Wielkość już pobranych danych"
+
+#: ../webkit/webkitdownload.cpp:381
+msgid "Total Size"
+msgstr "Całkowity rozmiar"
+
+#: ../webkit/webkitdownload.cpp:382
+msgid "The total size of the file"
+msgstr "Całkowity rozmiar pliku"
+
+#: ../webkit/webkitdownload.cpp:534
+msgid "User cancelled the download"
+msgstr "Użytkownik anulował pobieranie"
+
+#: ../webkit/webkithittestresult.cpp:156
+msgid "Context"
+msgstr "Kontekst"
+
+#: ../webkit/webkithittestresult.cpp:157
+msgid "Flags indicating the kind of target that received the event."
+msgstr "Flagi wskazujące rodzaj celu, który odebrał zdarzenie."
+
+#: ../webkit/webkithittestresult.cpp:171
+msgid "Link URI"
+msgstr "Adres URI odnośnika"
+
+#: ../webkit/webkithittestresult.cpp:172
+msgid "The URI to which the target that received the event points, if any."
+msgstr ""
+"Adres URI, do którego wskazuje cel, który odebrał zdarzenie, jeśli istnieje."
+
+#: ../webkit/webkithittestresult.cpp:185
+msgid "Image URI"
+msgstr "Adres URI obrazu"
+
+#: ../webkit/webkithittestresult.cpp:186
+msgid ""
+"The URI of the image that is part of the target that received the event, if "
+"any."
+msgstr ""
+"Adres URI obrazu będącego częścią celu, który odebrał zdarzenie, jeśli "
+"istnieje."
+
+#: ../webkit/webkithittestresult.cpp:199
+msgid "Media URI"
+msgstr "Adres URI multimediów"
+
+#: ../webkit/webkithittestresult.cpp:200
+msgid ""
+"The URI of the media that is part of the target that received the event, if "
+"any."
+msgstr ""
+"Adres URI multimediów będących częścią celu, który odebrał zdarzenie, jeśli "
+"istnieje."
+
+#: ../webkit/webkithittestresult.cpp:221
+msgid "Inner node"
+msgstr "Węzeł wewnętrzny"
+
+#: ../webkit/webkithittestresult.cpp:222
+msgid "The inner DOM node associated with the hit test result."
+msgstr "Wewnętrzny węzeł DOM powiązany z wynikiem testu trafienia."
+
+#: ../webkit/webkitnetworkrequest.cpp:134
+#: ../webkit/webkitnetworkresponse.cpp:134 ../webkit/webkitwebframe.cpp:323
+#: ../webkit/webkitwebhistoryitem.cpp:176 ../webkit/webkitwebresource.cpp:126
+#: ../webkit/webkitwebview.cpp:2997
+msgid "URI"
+msgstr "Adres URI"
+
+#: ../webkit/webkitnetworkrequest.cpp:135
+msgid "The URI to which the request will be made."
+msgstr "Adres URI, do którego jest wysyłane żądanie."
+
+#: ../webkit/webkitnetworkrequest.cpp:148
+#: ../webkit/webkitnetworkresponse.cpp:148
+msgid "Message"
+msgstr "Komunikat"
+
+#: ../webkit/webkitnetworkrequest.cpp:149
+msgid "The SoupMessage that backs the request."
+msgstr "Komunikat Soup, który wspiera żądanie."
+
+#: ../webkit/webkitnetworkresponse.cpp:135
+msgid "The URI to which the response will be made."
+msgstr "Adres URI, do którego jest wysyłana odpowiedź."
+
+#: ../webkit/webkitnetworkresponse.cpp:149
+msgid "The SoupMessage that backs the response."
+msgstr "Komunikat Soup, który wspiera odpowiedź."
+
+#: ../webkit/webkitsecurityorigin.cpp:150
+msgid "Protocol"
+msgstr "Protokół"
+
+#: ../webkit/webkitsecurityorigin.cpp:151
+msgid "The protocol of the security origin"
+msgstr "Protokół ośrodka bezpieczeństwa"
+
+#: ../webkit/webkitsecurityorigin.cpp:164
+msgid "Host"
+msgstr "Komputer"
+
+#: ../webkit/webkitsecurityorigin.cpp:165
+msgid "The host of the security origin"
+msgstr "Komputer ośrodka bezpieczeństwa"
+
+#: ../webkit/webkitsecurityorigin.cpp:178
+msgid "Port"
+msgstr "Port"
+
+#: ../webkit/webkitsecurityorigin.cpp:179
+msgid "The port of the security origin"
+msgstr "Port ośrodka bezpieczeństwa"
+
+#: ../webkit/webkitsecurityorigin.cpp:192
+msgid "Web Database Usage"
+msgstr "Użycie bazy danych WWW"
+
+#: ../webkit/webkitsecurityorigin.cpp:193
+msgid "The cumulative size of all web databases in the security origin"
+msgstr "Całkowity rozmiar wszystkich baz danych WWW w ośrodku bezpieczeństwa"
+
+#: ../webkit/webkitsecurityorigin.cpp:205
+msgid "Web Database Quota"
+msgstr "Przydział bazy danych WWW"
+
+#: ../webkit/webkitsecurityorigin.cpp:206
+msgid "The web database quota of the security origin in bytes"
+msgstr "Przydział bazy danych WWW ośrodka bezpieczeństwa w bajtach"
+
+#: ../webkit/webkitsoupauthdialog.c:264
+#, c-format
+msgid "A username and password are being requested by the site %s"
+msgstr "Witryna %s żąda nazwy użytkownika i hasła"
+
+#: ../webkit/webkitsoupauthdialog.c:294
+msgid "Server message:"
+msgstr "Komunikat serwera:"
+
+#: ../webkit/webkitsoupauthdialog.c:307
+msgid "Username:"
+msgstr "Nazwa użytkownika:"
+
+#: ../webkit/webkitsoupauthdialog.c:309
+msgid "Password:"
+msgstr "Hasło:"
+
+#: ../webkit/webkitsoupauthdialog.c:318
+msgid "_Remember password"
+msgstr "_Pamiętanie hasła"
+
+#: ../webkit/webkitwebdatabase.cpp:173
+msgid "Security Origin"
+msgstr "Ośrodek bezpieczeństwa"
+
+#: ../webkit/webkitwebdatabase.cpp:174
+msgid "The security origin of the database"
+msgstr "Ośrodek bezpieczeństwa bazy danych"
+
+#: ../webkit/webkitwebdatabase.cpp:187 ../webkit/webkitwebframe.cpp:309
+msgid "Name"
+msgstr "Nazwa"
+
+#: ../webkit/webkitwebdatabase.cpp:188
+msgid "The name of the Web Database database"
+msgstr "Nazwa bazy danych WWW"
+
+#: ../webkit/webkitwebdatabase.cpp:201
+msgid "Display Name"
+msgstr "Wyświetlana nazwa"
+
+#: ../webkit/webkitwebdatabase.cpp:202
+msgid "The display name of the Web Storage database"
+msgstr "Wyświetlana nazwa bazy danych WWW"
+
+#: ../webkit/webkitwebdatabase.cpp:215
+msgid "Expected Size"
+msgstr "Oczekiwany rozmiar"
+
+#: ../webkit/webkitwebdatabase.cpp:216
+msgid "The expected size of the Web Database database"
+msgstr "Oczekiwany rozmiar bazy danych WWW"
+
+#: ../webkit/webkitwebdatabase.cpp:228
+msgid "Size"
+msgstr "Rozmiar"
+
+#: ../webkit/webkitwebdatabase.cpp:229
+msgid "The current size of the Web Database database"
+msgstr "Bieżący rozmiar bazy danych WWW"
+
+#: ../webkit/webkitwebdatabase.cpp:241
+msgid "Filename"
+msgstr "Nazwa pliku"
+
+#: ../webkit/webkitwebdatabase.cpp:242
+msgid "The absolute filename of the Web Storage database"
+msgstr "Bezwzględna nazwa pliku bazy danych WWW"
+
+#: ../webkit/webkitwebframe.cpp:310
+msgid "The name of the frame"
+msgstr "Nazwa ramki"
+
+#: ../webkit/webkitwebframe.cpp:316 ../webkit/webkitwebhistoryitem.cpp:144
+#: ../webkit/webkitwebview.cpp:2983
+msgid "Title"
+msgstr "Tytuł"
+
+#: ../webkit/webkitwebframe.cpp:317
+msgid "The document title of the frame"
+msgstr "Tytuł dokumentu ramki"
+
+#: ../webkit/webkitwebframe.cpp:324
+msgid "The current URI of the contents displayed by the frame"
+msgstr "Bieżący adres URI treści wyświetlanej w ramce"
+
+#: ../webkit/webkitwebframe.cpp:355
+msgid "Horizontal Scrollbar Policy"
+msgstr "Polityka poziomego paska przewijania"
+
+#: ../webkit/webkitwebframe.cpp:356
+msgid ""
+"Determines the current policy for the horizontal scrollbar of the frame."
+msgstr "Określa bieżącą politykę poziomego paska przewijania ramki."
+
+#: ../webkit/webkitwebframe.cpp:373
+msgid "Vertical Scrollbar Policy"
+msgstr "Polityka pionowego paska przewijania"
+
+#: ../webkit/webkitwebframe.cpp:374
+msgid "Determines the current policy for the vertical scrollbar of the frame."
+msgstr "Określa bieżącą politykę pionowego paska przewijania ramki."
+
+#: ../webkit/webkitwebhistoryitem.cpp:145
+msgid "The title of the history item"
+msgstr "Tytuł elementu historii"
+
+#: ../webkit/webkitwebhistoryitem.cpp:160
+msgid "Alternate Title"
+msgstr "Tytuł alternatywny"
+
+#: ../webkit/webkitwebhistoryitem.cpp:161
+msgid "The alternate title of the history item"
+msgstr "Alternatywny tytuł elementu historii"
+
+#: ../webkit/webkitwebhistoryitem.cpp:177
+msgid "The URI of the history item"
+msgstr "Adres URI elementu historii"
+
+#: ../webkit/webkitwebhistoryitem.cpp:192
+#: ../webkit/webkitwebnavigationaction.cpp:171
+msgid "Original URI"
+msgstr "Pierwotny adres URI"
+
+#: ../webkit/webkitwebhistoryitem.cpp:193
+msgid "The original URI of the history item"
+msgstr "Pierwotny adres URI elementu historii"
+
+#: ../webkit/webkitwebhistoryitem.cpp:208
+msgid "Last visited Time"
+msgstr "Czas ostatniej wizyty"
+
+#: ../webkit/webkitwebhistoryitem.cpp:209
+msgid "The time at which the history item was last visited"
+msgstr "Czas, kiedy element historii został ostatnio odwiedzony"
+
+#: ../webkit/webkitwebinspector.cpp:270
+msgid "Web View"
+msgstr "Widok WWW"
+
+#: ../webkit/webkitwebinspector.cpp:271
+msgid "The Web View that renders the Web Inspector itself"
+msgstr "Widok WWW wyświetlający program Web Inspector"
+
+#: ../webkit/webkitwebinspector.cpp:284
+msgid "Inspected URI"
+msgstr "Badany adres URI"
+
+#: ../webkit/webkitwebinspector.cpp:285
+msgid "The URI that is currently being inspected"
+msgstr "Obecnie badany adres URI"
+
+#: ../webkit/webkitwebinspector.cpp:301
+msgid "Enable JavaScript profiling"
+msgstr "Włączenie profilowania języka JavaScript"
+
+#: ../webkit/webkitwebinspector.cpp:302
+msgid "Profile the executed JavaScript."
+msgstr "Profilowanie wykonanego skryptu JavaScript."
+
+#: ../webkit/webkitwebinspector.cpp:317
+msgid "Enable Timeline profiling"
+msgstr "Włączenie profilowania osi czasu"
+
+#: ../webkit/webkitwebinspector.cpp:318
+msgid "Profile the WebCore instrumentation."
+msgstr "Profilowanie instrumentacji mechanizmu WebCore."
+
+#: ../webkit/webkitwebnavigationaction.cpp:156
+msgid "Reason"
+msgstr "Przyczyna"
+
+#: ../webkit/webkitwebnavigationaction.cpp:157
+msgid "The reason why this navigation is occurring"
+msgstr "Przyczyna tej nawigacji"
+
+#: ../webkit/webkitwebnavigationaction.cpp:172
+msgid "The URI that was requested as the target for the navigation"
+msgstr "Adres URI żądany jako cel nawigacji"
+
+#: ../webkit/webkitwebnavigationaction.cpp:186
+msgid "Button"
+msgstr "Przycisk"
+
+#: ../webkit/webkitwebnavigationaction.cpp:187
+msgid "The button used to click"
+msgstr "Przycisk używany do klikania"
+
+#: ../webkit/webkitwebnavigationaction.cpp:202
+msgid "Modifier state"
+msgstr "Stan modyfikatora"
+
+#: ../webkit/webkitwebnavigationaction.cpp:203
+msgid "A bitmask representing the state of the modifier keys"
+msgstr "Mapa bitów przedstawiająca stan klawiszy modyfikatorów"
+
+#: ../webkit/webkitwebnavigationaction.cpp:218
+msgid "Target frame"
+msgstr "Ramka docelowa"
+
+#: ../webkit/webkitwebnavigationaction.cpp:219
+msgid "The target frame for the navigation"
+msgstr "Ramka docelowa dla nawigacji"
+
+#: ../webkit/webkitwebresource.cpp:127
+msgid "The uri of the resource"
+msgstr "Adres URI zasobu"
+
+#: ../webkit/webkitwebresource.cpp:141
+msgid "MIME Type"
+msgstr "Typ MIME"
+
+#: ../webkit/webkitwebresource.cpp:142
+msgid "The MIME type of the resource"
+msgstr "Typ MIME zasobu"
+
+#: ../webkit/webkitwebresource.cpp:156 ../webkit/webkitwebview.cpp:3132
+msgid "Encoding"
+msgstr "Kodowanie"
+
+#: ../webkit/webkitwebresource.cpp:157
+msgid "The text encoding name of the resource"
+msgstr "Nazwa kodowania tekstu zasobu"
+
+#: ../webkit/webkitwebresource.cpp:172
+msgid "Frame Name"
+msgstr "Nazwa ramki"
+
+#: ../webkit/webkitwebresource.cpp:173
+msgid "The frame name of the resource"
+msgstr "Nazwa ramki zasobu"
+
+#: ../webkit/webkitwebsettings.cpp:252
+msgid "Default Encoding"
+msgstr "Domyślne kodowanie"
+
+#: ../webkit/webkitwebsettings.cpp:253
+msgid "The default encoding used to display text."
+msgstr "Domyślne kodowanie używane do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:261
+msgid "Cursive Font Family"
+msgstr "Rodzina czcionek pochylonych"
+
+#: ../webkit/webkitwebsettings.cpp:262
+msgid "The default Cursive font family used to display text."
+msgstr "Domyślna rodzina czcionek pochylonych używana do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:270
+msgid "Default Font Family"
+msgstr "Domyślna rodzina czcionek"
+
+#: ../webkit/webkitwebsettings.cpp:271
+msgid "The default font family used to display text."
+msgstr "Domyślna rodzina czcionek używana do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:279
+msgid "Fantasy Font Family"
+msgstr "Rodzina czcionek fantastycznych"
+
+#: ../webkit/webkitwebsettings.cpp:280
+msgid "The default Fantasy font family used to display text."
+msgstr ""
+"Domyślna rodzina czcionek fantastycznych używana do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:288
+msgid "Monospace Font Family"
+msgstr "Rodzina czcionek o stałej szerokości"
+
+#: ../webkit/webkitwebsettings.cpp:289
+msgid "The default font family used to display monospace text."
+msgstr ""
+"Domyślna rodzina czcionek o stałej szerokości używana do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:297
+msgid "Sans Serif Font Family"
+msgstr "Rodzina czcionek bezszeryfowych"
+
+#: ../webkit/webkitwebsettings.cpp:298
+msgid "The default Sans Serif font family used to display text."
+msgstr ""
+"Domyślna rodzina czcionek bezszeryfowych używana do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:306
+msgid "Serif Font Family"
+msgstr "Rodzina czcionek szeryfowych"
+
+#: ../webkit/webkitwebsettings.cpp:307
+msgid "The default Serif font family used to display text."
+msgstr "Domyślna rodzina czcionek szeryfowych używana do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:315
+msgid "Default Font Size"
+msgstr "Domyślny rozmiar czcionki"
+
+#: ../webkit/webkitwebsettings.cpp:316
+msgid "The default font size used to display text."
+msgstr "Domyślny rozmiar czcionki używanej do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:324
+msgid "Default Monospace Font Size"
+msgstr "Domyślny rozmiar czcionki o stałej szerokości"
+
+#: ../webkit/webkitwebsettings.cpp:325
+msgid "The default font size used to display monospace text."
+msgstr ""
+"Domyślny rozmiar czcionki o stałej szerokości używanej do wyświetlania "
+"tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:333
+msgid "Minimum Font Size"
+msgstr "Minimalny rozmiar czcionki"
+
+#: ../webkit/webkitwebsettings.cpp:334
+msgid "The minimum font size used to display text."
+msgstr "Minimalny rozmiar czcionki używanej do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:342
+msgid "Minimum Logical Font Size"
+msgstr "Minimalny rozmiar czcionki logicznej"
+
+#: ../webkit/webkitwebsettings.cpp:343
+msgid "The minimum logical font size used to display text."
+msgstr "Minimalny rozmiar czcionki logicznej używanej do wyświetlania tekstu."
+
+#: ../webkit/webkitwebsettings.cpp:362
+msgid "Enforce 96 DPI"
+msgstr "Wymuszanie 96 DPI"
+
+#: ../webkit/webkitwebsettings.cpp:363
+msgid "Enforce a resolution of 96 DPI"
+msgstr "Wymuszanie rozdzielczości 96 DPI"
+
+#: ../webkit/webkitwebsettings.cpp:371
+msgid "Auto Load Images"
+msgstr "Automatyczne wczytywanie obrazów"
+
+#: ../webkit/webkitwebsettings.cpp:372
+msgid "Load images automatically."
+msgstr "Automatyczne wczytywanie obrazów."
+
+#: ../webkit/webkitwebsettings.cpp:380
+msgid "Auto Shrink Images"
+msgstr "Automatyczne zmniejszanie obrazów"
+
+#: ../webkit/webkitwebsettings.cpp:381
+msgid "Automatically shrink standalone images to fit."
+msgstr "Automatyczne zmniejszanie pojedynczych obrazów, aby pasowały."
+
+#: ../webkit/webkitwebsettings.cpp:389
+msgid "Print Backgrounds"
+msgstr "Drukowanie teł"
+
+#: ../webkit/webkitwebsettings.cpp:390
+msgid "Whether background images should be printed."
+msgstr "Określa, czy obrazy tła powinny być drukowane."
+
+#: ../webkit/webkitwebsettings.cpp:398
+msgid "Enable Scripts"
+msgstr "Włączenie skryptów"
+
+#: ../webkit/webkitwebsettings.cpp:399
+msgid "Enable embedded scripting languages."
+msgstr "Włączenie osadzonych języków skryptowych."
+
+#: ../webkit/webkitwebsettings.cpp:407
+msgid "Enable Plugins"
+msgstr "Włączenie wtyczek"
+
+#: ../webkit/webkitwebsettings.cpp:408
+msgid "Enable embedded plugin objects."
+msgstr "Włączenie osadzonych obiektów wtyczek."
+
+#: ../webkit/webkitwebsettings.cpp:416
+msgid "Resizable Text Areas"
+msgstr "Zmiana rozmiaru obszarów tekstowych"
+
+#: ../webkit/webkitwebsettings.cpp:417
+msgid "Whether text areas are resizable."
+msgstr "Określa, czy można zmieniać rozmiar obszarów tekstowych."
+
+#: ../webkit/webkitwebsettings.cpp:424
+msgid "User Stylesheet URI"
+msgstr "Adres URI arkusza stylów użytkownika"
+
+#: ../webkit/webkitwebsettings.cpp:425
+msgid "The URI of a stylesheet that is applied to every page."
+msgstr "Adres URI arkusza stylów zastosowywanego na każdej stronie."
+
+#: ../webkit/webkitwebsettings.cpp:440
+msgid "Zoom Stepping Value"
+msgstr "Wartość kroku powiększenia"
+
+#: ../webkit/webkitwebsettings.cpp:441
+msgid "The value by which the zoom level is changed when zooming in or out."
+msgstr ""
+"Wartość, o jaką zmieniany jest poziom powiększenia podczas przybliżania lub "
+"oddalania."
+
+#: ../webkit/webkitwebsettings.cpp:459
+msgid "Enable Developer Extras"
+msgstr "Włączenie dodatków programistycznych"
+
+#: ../webkit/webkitwebsettings.cpp:460
+msgid "Enables special extensions that help developers"
+msgstr "Włączenie specjalnych rozszerzeń pomagającym programistom"
+
+#: ../webkit/webkitwebsettings.cpp:480
+msgid "Enable Private Browsing"
+msgstr "Włączenie przeglądania prywatnego"
+
+#: ../webkit/webkitwebsettings.cpp:481
+msgid "Enables private browsing mode"
+msgstr "Włączenie trybu przeglądania prywatnego"
+
+#: ../webkit/webkitwebsettings.cpp:496
+msgid "Enable Spell Checking"
+msgstr "Włączenie sprawdzania pisowni"
+
+#: ../webkit/webkitwebsettings.cpp:497
+msgid "Enables spell checking while typing"
+msgstr "Włączenie sprawdzania pisowni podczas pisania"
+
+#: ../webkit/webkitwebsettings.cpp:520
+msgid "Languages to use for spell checking"
+msgstr "Języki używane przy sprawdzaniu pisowni"
+
+#: ../webkit/webkitwebsettings.cpp:521
+msgid "Comma separated list of languages to use for spell checking"
+msgstr ""
+"Lista języków oddzielonych przecinkami do używania przy sprawdzaniu pisowni"
+
+#: ../webkit/webkitwebsettings.cpp:535
+msgid "Enable Caret Browsing"
+msgstr "Włączenie przeglądania w trybie karetki"
+
+#: ../webkit/webkitwebsettings.cpp:536
+msgid "Whether to enable accesibility enhanced keyboard navigation"
+msgstr ""
+"Określa, czy włączyć nawigację klawiaturą usprawnioną pod kątem dostępności"
+
+#: ../webkit/webkitwebsettings.cpp:551
+msgid "Enable HTML5 Database"
+msgstr "Włączenie bazy danych HTML5"
+
+#: ../webkit/webkitwebsettings.cpp:552
+msgid "Whether to enable HTML5 database support"
+msgstr "Określa, czy włączyć obsługę bazy danych HTML5"
+
+#: ../webkit/webkitwebsettings.cpp:567
+msgid "Enable HTML5 Local Storage"
+msgstr "Włączenie lokalnego przechowywania danych HTML5"
+
+#: ../webkit/webkitwebsettings.cpp:568
+msgid "Whether to enable HTML5 Local Storage support"
+msgstr "Określa, czy włączyć obsługę lokalnego przechowywania danych HTML5"
+
+#: ../webkit/webkitwebsettings.cpp:582
+msgid "Enable XSS Auditor"
+msgstr "Włączenie audytu XSS"
+
+#: ../webkit/webkitwebsettings.cpp:583
+msgid "Whether to enable the XSS auditor"
+msgstr "Określa, czy włączyć audyt XSS"
+
+#: ../webkit/webkitwebsettings.cpp:601
+msgid "Enable Spatial Navigation"
+msgstr "Włączenie nawigacji przestrzennej"
+
+#: ../webkit/webkitwebsettings.cpp:602
+msgid "Whether to enable Spatial Navigation"
+msgstr "Określa, czy włączyć nawigację przestrzenną"
+
+#: ../webkit/webkitwebsettings.cpp:620
+msgid "Enable Frame Flattening"
+msgstr "Włączenie spłaszczania ramek"
+
+#: ../webkit/webkitwebsettings.cpp:621
+msgid "Whether to enable Frame Flattening"
+msgstr "Określa, czy włączać spłaszczanie ramek"
+
+#: ../webkit/webkitwebsettings.cpp:638
+msgid "User Agent"
+msgstr "Agent użytkownika"
+
+#: ../webkit/webkitwebsettings.cpp:639
+msgid "The User-Agent string used by WebKitGtk"
+msgstr "Ciąg agenta użytkownika używany przez mechanizm WebKitGTK+"
+
+#: ../webkit/webkitwebsettings.cpp:654
+msgid "JavaScript can open windows automatically"
+msgstr "Automatyczne otwieranie okien przez skrypty JavaScript"
+
+#: ../webkit/webkitwebsettings.cpp:655
+msgid "Whether JavaScript can open windows automatically"
+msgstr "Określa, czy skrypty JavaScript mogą automatycznie otwierać okna"
+
+#: ../webkit/webkitwebsettings.cpp:669
+msgid "JavaScript can access Clipboard"
+msgstr "Dostęp do schowka ze skryptów JavaScript"
+
+#: ../webkit/webkitwebsettings.cpp:670
+msgid "Whether JavaScript can access Clipboard"
+msgstr "Określa, czy skrypty JavaScript mogą mieć dostęp do schowka"
+
+#: ../webkit/webkitwebsettings.cpp:686
+msgid "Enable offline web application cache"
+msgstr "Włączenie pamięci podręcznej aplikacji WWW w trybie offline"
+
+#: ../webkit/webkitwebsettings.cpp:687
+msgid "Whether to enable offline web application cache"
+msgstr "Określa, czy włączyć pamięć podręczną aplikacji WWW w trybie offline"
+
+#: ../webkit/webkitwebsettings.cpp:715
+msgid "Editing behavior"
+msgstr "Zachowanie modyfikowania"
+
+#: ../webkit/webkitwebsettings.cpp:716
+msgid "The behavior mode to use in editing mode"
+msgstr "Tryb zachowania używany w trybie modyfikowania"
+
+#: ../webkit/webkitwebsettings.cpp:732
+msgid "Enable universal access from file URIs"
+msgstr "Włączenie uniwersalnego dostępu z adresów URI do plików"
+
+#: ../webkit/webkitwebsettings.cpp:733
+msgid "Whether to allow universal access from file URIs"
+msgstr "Określa, czy włączyć uniwersalny dostęp z adresów URI do plików"
+
+#: ../webkit/webkitwebsettings.cpp:748
+msgid "Enable DOM paste"
+msgstr "Włączenie wklejania DOM"
+
+#: ../webkit/webkitwebsettings.cpp:749
+msgid "Whether to enable DOM paste"
+msgstr "Określa, czy włączać wklejanie DOM"
+
+#: ../webkit/webkitwebsettings.cpp:767
+msgid "Tab key cycles through elements"
+msgstr "Klawisza Tab przewija przez elementy"
+
+#: ../webkit/webkitwebsettings.cpp:768
+msgid "Whether the tab key cycles through elements on the page."
+msgstr "Określa, czy klawisz Tab ma przewijać przez elementy na stronie."
+
+#: ../webkit/webkitwebsettings.cpp:788
+msgid "Enable Default Context Menu"
+msgstr "Włączenie domyślnego menu kontekstowego"
+
+#: ../webkit/webkitwebsettings.cpp:789
+msgid ""
+"Enables the handling of right-clicks for the creation of the default context "
+"menu"
+msgstr ""
+"Włączenie obsługi kliknięć prawym przyciskiem myszy do tworzenia domyślnego "
+"menu kontekstowego"
+
+#: ../webkit/webkitwebsettings.cpp:809
+msgid "Enable Site Specific Quirks"
+msgstr "Włączenie obejść dla konkretnych wirtyn"
+
+#: ../webkit/webkitwebsettings.cpp:810
+msgid "Enables the site-specific compatibility workarounds"
+msgstr "Włączenie obejść zgodności dla konkretnych witryn"
+
+#: ../webkit/webkitwebsettings.cpp:832
+msgid "Enable page cache"
+msgstr "Włączenie pamięci podręcznej stron"
+
+#: ../webkit/webkitwebsettings.cpp:833
+msgid "Whether the page cache should be used"
+msgstr "Określa, czy używać pamięci podręcznej stron"
+
+#: ../webkit/webkitwebsettings.cpp:853
+msgid "Auto Resize Window"
+msgstr "Automatyczna zmiana rozmiaru okna"
+
+#: ../webkit/webkitwebsettings.cpp:854
+msgid "Automatically resize the toplevel window when a page requests it"
+msgstr "Automatyczna zmiana rozmiaru okna głównego, kiedy zażąda tego strona"
+
+#: ../webkit/webkitwebsettings.cpp:886
+msgid "Enable Java Applet"
+msgstr "Włączenie apletów języka Java"
+
+#: ../webkit/webkitwebsettings.cpp:887
+msgid "Whether Java Applet support through <applet> should be enabled"
+msgstr ""
+"Określa, czy obsługa apletów języka Java przez znacznik <applet> powinna być "
+"włączona"
+
+#: ../webkit/webkitwebsettings.cpp:901
+msgid "Enable Hyperlink Auditing"
+msgstr "Włączenie audytu odnośników"
+
+#: ../webkit/webkitwebsettings.cpp:902
+msgid "Whether <a ping> should be able to send pings"
+msgstr "Określa, czy znacznik <a ping> powinien móc wysyłać sygnały ping"
+
+#: ../webkit/webkitwebsettings.cpp:910
+msgid "Enable Fullscreen"
+msgstr "Włączenie pełnego ekranu"
+
+#: ../webkit/webkitwebsettings.cpp:911
+msgid "Whether the Mozilla style API should be enabled."
+msgstr "Określa, czy API w stylu Mozilli powinno być włączone."
+
+#: ../webkit/webkitwebview.cpp:2984
+msgid "Returns the @web_view's document title"
+msgstr "Zwraca tytuł dokumentu @web_view"
+
+#: ../webkit/webkitwebview.cpp:2998
+msgid "Returns the current URI of the contents displayed by the @web_view"
+msgstr "Zwraca bieżący adres URI treści wyświetlanej przez @web_view"
+
+#: ../webkit/webkitwebview.cpp:3011
+msgid "Copy target list"
+msgstr "Lista celów kopiowania"
+
+#: ../webkit/webkitwebview.cpp:3012
+msgid "The list of targets this web view supports for clipboard copying"
+msgstr "Lista celów, które obsługuje ten widok WWW dla kopiowania do schowka"
+
+#: ../webkit/webkitwebview.cpp:3025
+msgid "Paste target list"
+msgstr "Lista celów wklejania"
+
+#: ../webkit/webkitwebview.cpp:3026
+msgid "The list of targets this web view supports for clipboard pasting"
+msgstr "Lista celów, które obsługuje ten widok WWW dla wklejania ze schowka"
+
+#: ../webkit/webkitwebview.cpp:3032
+msgid "Settings"
+msgstr "Ustawienia"
+
+#: ../webkit/webkitwebview.cpp:3033
+msgid "An associated WebKitWebSettings instance"
+msgstr "Powiązana instancja WebKitWebSettings"
+
+#: ../webkit/webkitwebview.cpp:3046
+msgid "Web Inspector"
+msgstr "Web Inspector"
+
+#: ../webkit/webkitwebview.cpp:3047
+msgid "The associated WebKitWebInspector instance"
+msgstr "Powiązana instancja WebKitWebInspector"
+
+#: ../webkit/webkitwebview.cpp:3060
+msgid "Viewport Attributes"
+msgstr "Atrybuty Viewport"
+
+#: ../webkit/webkitwebview.cpp:3061
+msgid "The associated WebKitViewportAttributes instance"
+msgstr "Powiązana instancja WebKitViewportAttributes"
+
+#: ../webkit/webkitwebview.cpp:3081
+msgid "Editable"
+msgstr "Modyfikowalne"
+
+#: ../webkit/webkitwebview.cpp:3082
+msgid "Whether content can be modified by the user"
+msgstr "Określa, czy treść może być modyfikowana przez użytkownika"
+
+#: ../webkit/webkitwebview.cpp:3088
+msgid "Transparent"
+msgstr "Przezroczyste"
+
+#: ../webkit/webkitwebview.cpp:3089
+msgid "Whether content has a transparent background"
+msgstr "Określa, czy treść posiada przezroczyste tło"
+
+#: ../webkit/webkitwebview.cpp:3102
+msgid "Zoom level"
+msgstr "Poziom powiększenia"
+
+#: ../webkit/webkitwebview.cpp:3103
+msgid "The level of zoom of the content"
+msgstr "Poziom powiększenia treści"
+
+#: ../webkit/webkitwebview.cpp:3118
+msgid "Full content zoom"
+msgstr "Powiększanie pełnej treści"
+
+#: ../webkit/webkitwebview.cpp:3119
+msgid "Whether the full content is scaled when zooming"
+msgstr "Określa, czy pełna treść jest skalowana podczas powiększania"
+
+#: ../webkit/webkitwebview.cpp:3133
+msgid "The default encoding of the web view"
+msgstr "Domyślne kodowanie widoku WWW"
+
+#: ../webkit/webkitwebview.cpp:3146
+msgid "Custom Encoding"
+msgstr "Własne kodowanie"
+
+#: ../webkit/webkitwebview.cpp:3147
+msgid "The custom encoding of the web view"
+msgstr "Własne kodowanie widoku WWW"
+
+#: ../webkit/webkitwebview.cpp:3199
+msgid "Icon URI"
+msgstr "Adres URI ikony"
+
+#: ../webkit/webkitwebview.cpp:3200
+msgid "The URI for the favicon for the #WebKitWebView."
+msgstr "Adres URI ikony favicon dla #WebKitWebView."
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:56
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:61
+msgid "Submit"
+msgstr "Wyślij"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:66
+msgid "Reset"
+msgstr "Przywróć"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:71
+msgid "This is a searchable index. Enter search keywords: "
+msgstr ""
+"To jest wyszukiwalny indeks. Proszę wprowadzić słowa kluczowe wyszukiwania: "
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:76
+msgid "Choose File"
+msgstr "Wybór pliku"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:81
+msgid "(None)"
+msgstr "(Brak)"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:86
+msgid "Open Link in New _Window"
+msgstr "Otwórz odnośnik w nowym _oknie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:91
+msgid "_Download Linked File"
+msgstr "_Pobierz plik"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:96
+msgid "Copy Link Loc_ation"
+msgstr "Skopiuj położenie o_dnośnika"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:101
+msgid "Open _Image in New Window"
+msgstr "Otwórz o_braz w nowym oknie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:106
+msgid "Sa_ve Image As"
+msgstr "Zapis_z obraz jako"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:111
+msgid "Cop_y Image"
+msgstr "Skopi_uj obraz"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:116
+msgid "Open _Video in New Window"
+msgstr "Otwórz nagranie _wideo w nowym oknie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:121
+msgid "Open _Audio in New Window"
+msgstr "Odtwórz nagranie _dźwiękowe w nowym oknie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:126
+msgid "Cop_y Video Link Location"
+msgstr "Skopiu_j położenie odnośnika nagrania wideo"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:131
+msgid "Cop_y Audio Link Location"
+msgstr "Skopiu_j położenie odnośnika nagrania dźwiękowego"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:136
+msgid "_Toggle Media Controls"
+msgstr "P_rzełącz kontrolę multimediów"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:141
+msgid "Toggle Media _Loop Playback"
+msgstr "Przełącz p_owtarzanie odtwarzania multimediów"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:146
+msgid "Switch Video to _Fullscreen"
+msgstr "Przełącz nagranie wideo na pełny _ekran"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:151
+msgid "_Play"
+msgstr "_Odtwórz"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:156
+msgid "_Pause"
+msgstr "_Wstrzymaj"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:161
+msgid "_Mute"
+msgstr "Wy_cisz"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:166
+msgid "Open _Frame in New Window"
+msgstr "Otwórz _ramkę w nowym oknie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:217
+msgid "_Reload"
+msgstr "_Wczytaj ponownie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:234
+msgid "No Guesses Found"
+msgstr "Nie odnaleziono gości"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:239
+msgid "_Ignore Spelling"
+msgstr "_Ignorowanie pisowni"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:244
+msgid "_Learn Spelling"
+msgstr "_Nauczanie pisowni"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:249
+msgid "_Search the Web"
+msgstr "Wy_szukaj w sieci"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:254
+msgid "_Look Up in Dictionary"
+msgstr "_Znajdź w słowniku"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:259
+msgid "_Open Link"
+msgstr "_Otwórz odnośnik"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:264
+msgid "Ignore _Grammar"
+msgstr "Ignorowanie _gramatyki"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:269
+msgid "Spelling and _Grammar"
+msgstr "Pisownia i _gramatyka"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:274
+msgid "_Show Spelling and Grammar"
+msgstr "_Wyświetlanie pisowni i gramatyki"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:274
+msgid "_Hide Spelling and Grammar"
+msgstr "_Ukrywanie pisowni i gramatyki"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:279
+msgid "_Check Document Now"
+msgstr "_Sprawdź dokument"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:284
+msgid "Check Spelling While _Typing"
+msgstr "Sprawdzanie pisowni podczas pi_sania"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:289
+msgid "Check _Grammar With Spelling"
+msgstr "Sprawdzanie _gramatyki razem z pisownią"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:294
+msgid "_Font"
+msgstr "_Czcionka"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:317
+msgid "_Outline"
+msgstr "_Obrys"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:322
+msgid "Inspect _Element"
+msgstr "Zbadaj _element"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:327
+msgid "No recent searches"
+msgstr "Brak ostatnich wyszukiwań"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:332
+msgid "Recent searches"
+msgstr "Ostatnie wyszukiwania"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:337
+msgid "_Clear recent searches"
+msgstr "Wy_czyść ostatnie wyszukiwania"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:342
+msgid "term"
+msgstr "termin"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:347
+msgid "definition"
+msgstr "definicja"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:352
+msgid "press"
+msgstr "naciśnięcie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:357
+msgid "select"
+msgstr "wybór"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:362
+msgid "activate"
+msgstr "aktywacja"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:367
+msgid "uncheck"
+msgstr "odznaczenie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:372
+msgid "check"
+msgstr "zaznaczenie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:377
+msgid "jump"
+msgstr "skok"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:392
+msgid "Missing Plug-in"
+msgstr "Brak wtyczki"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:398
+msgid "Plug-in Failure"
+msgstr "Niepowodzenie wtyczki"
+
+#. FIXME: If this file gets localized, this should really be localized as one string with a wildcard for the number.
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:404
+msgid " files"
+msgstr " plików"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:409
+msgid "Unknown"
+msgstr "Nieznane"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:414
+#, c-format
+msgctxt "Title string for images"
+msgid "%s (%dx%d pixels)"
+msgstr "%s (%dx%d pikseli)"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:426
+msgid "Loading..."
+msgstr "Wczytywanie..."
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:431
+msgid "Live Broadcast"
+msgstr "Nadawanie na żywo"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:437
+msgid "audio element controller"
+msgstr "kontroler elementu dźwiękowego"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:439
+msgid "video element controller"
+msgstr "kontroler elementu wideo"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:441
+msgid "mute"
+msgstr "wyciszenie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:443
+msgid "unmute"
+msgstr "wyłączenie wyciszenia"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:445
+msgid "play"
+msgstr "odtworzenie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:447
+msgid "pause"
+msgstr "wstrzymanie"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:449
+msgid "movie time"
+msgstr "czas filmu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:451
+msgid "timeline slider thumb"
+msgstr "miniaturka paska osi czasu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:453
+msgid "back 30 seconds"
+msgstr "wstecz 30 sekund"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:455
+msgid "return to realtime"
+msgstr "powrót do czasu rzeczywistego"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:457
+msgid "elapsed time"
+msgstr "czas, jaki upłynął"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:459
+msgid "remaining time"
+msgstr "pozostały czas"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:461
+msgid "status"
+msgstr "stan"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:463
+msgid "fullscreen"
+msgstr "pełny ekran"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:465
+msgid "fast forward"
+msgstr "szybkie przewijanie do przodu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:467
+msgid "fast reverse"
+msgstr "szybkie przewijanie do tyłu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:469
+msgid "show closed captions"
+msgstr "wyświetlenie zamkniętych napisów"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:471
+msgid "hide closed captions"
+msgstr "ukrycie zamkniętych napisów"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:480
+msgid "audio element playback controls and status display"
+msgstr "wyświetlanie kontrolek i stanu odtwarzania elementu dźwiękowego"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:482
+msgid "video element playback controls and status display"
+msgstr "wyświetlanie kontrolek i stanu odtwarzania elementu wideo"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:484
+msgid "mute audio tracks"
+msgstr "wyciszenie ścieżek dźwiękowych"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:486
+msgid "unmute audio tracks"
+msgstr "wyłączenie wyciszenia ścieżek dźwiękowych"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:488
+msgid "begin playback"
+msgstr "rozpoczęcie odtwarzania"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:490
+msgid "pause playback"
+msgstr "wstrzymanie odtwarzania"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:492
+msgid "movie time scrubber"
+msgstr "licznik czasu filmu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:494
+msgid "movie time scrubber thumb"
+msgstr "miniaturka licznika czasu filmu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:496
+msgid "seek movie back 30 seconds"
+msgstr "przewinięcie filmu do tyłu o 30 sekund"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:498
+msgid "return streaming movie to real time"
+msgstr "powrót pobieranego filmu do czasu rzeczywistego"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:500
+msgid "current movie time in seconds"
+msgstr "bieżący czas filmu w sekundach"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:502
+msgid "number of seconds of movie remaining"
+msgstr "liczba pozostałych sekund filmu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:504
+msgid "current movie status"
+msgstr "bieżący stan filmu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:506
+msgid "seek quickly back"
+msgstr "szybkie przewijanie do tyłu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:508
+msgid "seek quickly forward"
+msgstr "szybkie przewijanie do przodu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:510
+msgid "Play movie in fullscreen mode"
+msgstr "Odtwarzanie filmu w trybie pełnego ekranu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:512
+msgid "start displaying closed captions"
+msgstr "rozpoczęcie wyświetlania zamkniętych napisów"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:514
+msgid "stop displaying closed captions"
+msgstr "zatrzymanie wyświetlania zamkniętych napisów"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:523
+msgid "indefinite time"
+msgstr "czas nieskończony"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:553
+msgid "value missing"
+msgstr "brak wartości"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:589
+msgid "type mismatch"
+msgstr "typ się nie zgadza"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:612
+msgid "pattern mismatch"
+msgstr "wzór się nie zgadza"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:617
+msgid "too long"
+msgstr "za długo"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:622
+msgid "range underflow"
+msgstr "zakres jest poniżej poziomu"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:627
+msgid "range overflow"
+msgstr "zakres jest ponad poziomem"
+
+#: ../../../WebCore/platform/gtk/LocalizedStringsGtk.cpp:632
+msgid "step mismatch"
+msgstr "krok się nie zgadza"
diff --git a/Source/WebKit/gtk/po/zh_CN.po b/Source/WebKit/gtk/po/zh_CN.po
index 8561fd8..148b671 100644
--- a/Source/WebKit/gtk/po/zh_CN.po
+++ b/Source/WebKit/gtk/po/zh_CN.po
@@ -2,15 +2,15 @@
# WebKit 软件包的简体中文翻译.
# This file is put in public domain.
#
-# Aron Xu <aronmalache@163.com>, 2009.
+# Aron Xu <happyaron.xu@gmail.com>, 2009, 2010.
#
msgid ""
msgstr ""
-"Project-Id-Version: webkit 1.1.4\n"
+"Project-Id-Version: webkit HEAD\n"
"Report-Msgid-Bugs-To: http://bugs.webkit.org/\n"
"POT-Creation-Date: 2010-02-25 15:53-0300\n"
-"PO-Revision-Date: 2009-07-14 18:11+0800\n"
-"Last-Translator: Aron Xu <aronmalache@163.com>\n"
+"PO-Revision-Date: 2010-07-17 14:37+0800\n"
+"Last-Translator: Aron Xu <happyaron.xu@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -27,43 +27,43 @@ msgstr "输入方式(_M)"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:78
msgid "LRM _Left-to-right mark"
-msgstr ""
+msgstr "LRM 左至右标记"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:79
msgid "RLM _Right-to-left mark"
-msgstr ""
+msgstr "RLM 右至左标记"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:80
msgid "LRE Left-to-right _embedding"
-msgstr ""
+msgstr "LRE 左至右嵌入(_E)"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:81
msgid "RLE Right-to-left e_mbedding"
-msgstr ""
+msgstr "RLE 右至左嵌入(_M)"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:82
msgid "LRO Left-to-right _override"
-msgstr ""
+msgstr "LRO 左至右覆盖(_O)"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:83
msgid "RLO Right-to-left o_verride"
-msgstr ""
+msgstr "RLO 右至左覆盖(_V)"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:84
msgid "PDF _Pop directional formatting"
-msgstr ""
+msgstr "PDF 顶部方向格式(_P)"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:85
msgid "ZWS _Zero width space"
-msgstr ""
+msgstr "ZWS 零宽度空格(_Z)"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:86
msgid "ZWJ Zero width _joiner"
-msgstr ""
+msgstr "ZWJ 零宽度连接符(_J)"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:87
msgid "ZWNJ Zero width _non-joiner"
-msgstr ""
+msgstr "ZWNJ 零宽度非连接符(_N)"
#: WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp:109
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:138
@@ -76,17 +76,15 @@ msgstr "网络请求"
#: WebKit/gtk/webkit/webkitdownload.cpp:267
msgid "The network request for the URI that should be downloaded"
-msgstr "网络请求该 URI 应当被下载"
+msgstr "应被下载的该 URI 的网络请求"
#: WebKit/gtk/webkit/webkitdownload.cpp:281
-#, fuzzy
msgid "Network Response"
-msgstr "网络请求"
+msgstr "网络响应"
#: WebKit/gtk/webkit/webkitdownload.cpp:282
-#, fuzzy
msgid "The network response for the URI that should be downloaded"
-msgstr "网络请求该 URI 应当被下载"
+msgstr "应被下载的该 URI 的网络响应"
#: WebKit/gtk/webkit/webkitdownload.cpp:296
msgid "Destination URI"
@@ -147,7 +145,7 @@ msgstr "站点 %s 请求用户名和密码"
#: WebKit/gtk/webkit/webkitsoupauthdialog.c:278
msgid "Server message:"
-msgstr ""
+msgstr "服务器消息:"
#: WebKit/gtk/webkit/webkitsoupauthdialog.c:291
msgid "Username:"
@@ -158,9 +156,8 @@ msgid "Password:"
msgstr "密码:"
#: WebKit/gtk/webkit/webkitsoupauthdialog.c:302
-#, fuzzy
msgid "_Remember password"
-msgstr "记住密码"
+msgstr "记住密码(_R)"
#: WebKit/gtk/webkit/webkitwebframe.cpp:298
msgid "Name"
@@ -192,22 +189,20 @@ msgstr "框架中当前显示内容的 URI"
#: WebKit/gtk/webkit/webkitwebframe.cpp:344
msgid "Horizontal Scrollbar Policy"
-msgstr ""
+msgstr "水平滚动条规则"
#: WebKit/gtk/webkit/webkitwebframe.cpp:345
-#, fuzzy
msgid ""
"Determines the current policy for the horizontal scrollbar of the frame."
-msgstr "显示当前下载进度"
+msgstr "确定框架的水平滚动条规则"
#: WebKit/gtk/webkit/webkitwebframe.cpp:362
msgid "Vertical Scrollbar Policy"
-msgstr ""
+msgstr "竖直滚动条规则"
#: WebKit/gtk/webkit/webkitwebframe.cpp:363
-#, fuzzy
msgid "Determines the current policy for the vertical scrollbar of the frame."
-msgstr "显示当前下载进度"
+msgstr "确定框架的竖直滚动条规则"
#: WebKit/gtk/webkit/webkitwebhistoryitem.cpp:147
msgid "The title of the history item"
@@ -267,13 +262,12 @@ msgid "Profile the executed JavaScript."
msgstr "记录已执行的 JavaScript 的摘要信息。"
#: WebKit/gtk/webkit/webkitwebinspector.cpp:315
-#, fuzzy
msgid "Enable Timeline profiling"
-msgstr "启用 JavaScript 摘要"
+msgstr "启用时间轴分析"
#: WebKit/gtk/webkit/webkitwebinspector.cpp:316
msgid "Profile the WebCore instrumentation."
-msgstr ""
+msgstr "分析 WebCore 构件"
#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:158
msgid "Reason"
@@ -304,14 +298,12 @@ msgid "A bitmask representing the state of the modifier keys"
msgstr "一个代表当前修饰键状态的位掩码"
#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:220
-#, fuzzy
msgid "Target frame"
-msgstr "框架名称"
+msgstr "目标框架"
#: WebKit/gtk/webkit/webkitwebnavigationaction.cpp:221
-#, fuzzy
msgid "The target frame for the navigation"
-msgstr "此 URI 是被作为导航目标而请求的"
+msgstr "导航的目标框架"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:237
msgid "Default Encoding"
@@ -491,155 +483,150 @@ msgstr "启用隐私浏览模式"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:481
msgid "Enable Spell Checking"
-msgstr ""
+msgstr "启用拼写检查"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:482
-#, fuzzy
msgid "Enables spell checking while typing"
-msgstr "输入时检查拼写(_T)"
+msgstr "输入时检查拼写"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:505
msgid "Languages to use for spell checking"
-msgstr ""
+msgstr "拼写检查的语言"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:506
msgid "Comma separated list of languages to use for spell checking"
-msgstr ""
+msgstr "要拼写检查的语言,以半角逗号分隔"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:520
-#, fuzzy
msgid "Enable Caret Browsing"
-msgstr "启用隐私浏览"
+msgstr "启用光标导航"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:521
msgid "Whether to enable accesibility enhanced keyboard navigation"
-msgstr ""
+msgstr "是否启用辅助功能增强型键盘导航"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:536
msgid "Enable HTML5 Database"
-msgstr ""
+msgstr "启用 HTML5 数据库"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:537
msgid "Whether to enable HTML5 database support"
-msgstr ""
+msgstr "是否启用 HTML5 数据库支持"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:552
msgid "Enable HTML5 Local Storage"
-msgstr ""
+msgstr "启用 HTML5 本地存储"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:553
msgid "Whether to enable HTML5 Local Storage support"
-msgstr ""
+msgstr "是否启用 HTML5 本地存储支持"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:567
-#, fuzzy
msgid "Enable XSS Auditor"
-msgstr "启用脚本"
+msgstr "启用 XSS 审计"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:568
msgid "Whether to enable teh XSS auditor"
-msgstr ""
+msgstr "是否启用 XSS 审计"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:586
msgid "User Agent"
-msgstr ""
+msgstr "User Agent"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:587
msgid "The User-Agent string used by WebKitGtk"
-msgstr ""
+msgstr "WebKitGTK 使用的 User-Agent 串"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:602
msgid "JavaScript can open windows automatically"
-msgstr ""
+msgstr "JavaScript 可以自动打开窗口"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:603
msgid "Whether JavaScript can open windows automatically"
-msgstr ""
+msgstr "是否允许 JavaScript 自动打开窗口"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:618
msgid "Enable offline web application cache"
-msgstr ""
+msgstr "启用离线 Web 应用程序缓存"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:619
msgid "Whether to enable offline web application cache"
-msgstr ""
+msgstr "是否启用离线 Web 应用程序缓存"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:646
msgid "Editing behavior"
-msgstr ""
+msgstr "编辑行为"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:647
msgid "The behavior mode to use in editing mode"
-msgstr ""
+msgstr "在编辑模式中使用的行为模式"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:663
msgid "Enable universal access from file URIs"
-msgstr ""
+msgstr "启用从文件 URI 的通用访问"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:664
msgid "Whether to allow universal access from file URIs"
-msgstr ""
+msgstr "是否允许从文件 URI 的通用访问"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:679
-#, fuzzy
msgid "Enable DOM paste"
-msgstr "启用脚本"
+msgstr "启用 DOM 粘贴"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:680
msgid "Whether to enable DOM paste"
-msgstr ""
+msgstr "是否启用 DOM 粘贴"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:698
msgid "Tab key cycles through elements"
-msgstr ""
+msgstr "元素间 Tab 键循环"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:699
msgid "Whether the tab key cycles through elements on the page."
-msgstr ""
+msgstr "是否允许元素间 Tab 键循环。"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:719
msgid "Enable Default Context Menu"
-msgstr ""
+msgstr "启用默认环境菜单"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:720
msgid ""
"Enables the handling of right-clicks for the creation of the default context "
"menu"
msgstr ""
+"启用右键创建环境菜单的处理"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:740
msgid "Enable Site Specific Quirks"
-msgstr ""
+msgstr "启用特定站点设置"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:741
msgid "Enables the site-specific compatibility workarounds"
-msgstr ""
+msgstr "启用针对特定站点的兼容性临时解决办法"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:763
msgid "Enable page cache"
-msgstr ""
+msgstr "启用页面缓存"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:764
-#, fuzzy
msgid "Whether the page cache should be used"
-msgstr "是否打印背景。"
+msgstr "是否使用页面缓存"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:784
msgid "Auto Resize Window"
-msgstr ""
+msgstr "自动调整窗口大小"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:785
msgid "Automatically resize the toplevel window when a page requests it"
-msgstr ""
+msgstr "当页面发出请求时自动调整顶层窗口大小"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:817
-#, fuzzy
msgid "Enable Java Applet"
-msgstr "启用 JavaScript 摘要"
+msgstr "启用 Java 小程序"
#: WebKit/gtk/webkit/webkitwebsettings.cpp:818
msgid "Whether Java Applet support through <applet> should be enabled"
-msgstr ""
+msgstr "是否通过 <applet> 标签运行 Java 小程序"
#: WebKit/gtk/webkit/webkitwebview.cpp:2319
msgid "Returns the @web_view's document title"
@@ -731,11 +718,11 @@ msgstr "Web View的自定义编码"
#: WebKit/gtk/webkit/webkitwebview.cpp:2520
msgid "Icon URI"
-msgstr ""
+msgstr "图标 URI"
#: WebKit/gtk/webkit/webkitwebview.cpp:2521
msgid "The URI for the favicon for the #WebKitWebView."
-msgstr ""
+msgstr "#WebKitWebView 的 favicon URI。"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:55
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:60
@@ -748,7 +735,7 @@ msgstr "重置"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:70
msgid "This is a searchable index. Enter search keywords: "
-msgstr ""
+msgstr "这是一个可搜索的索引。请输入搜索关键字:"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:75
msgid "Choose File"
@@ -908,189 +895,187 @@ msgstr "未知"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:364
msgid "Loading..."
-msgstr ""
+msgstr "正在载入..."
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:369
msgid "Live Broadcast"
-msgstr ""
+msgstr "直播"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:375
msgid "audio element controller"
-msgstr ""
+msgstr "音频元素控制"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:377
msgid "video element controller"
-msgstr ""
+msgstr "视频元素控制"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:379
msgid "mute"
-msgstr ""
+msgstr "静音"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:381
msgid "unmute"
-msgstr ""
+msgstr "解除静音"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:383
msgid "play"
-msgstr ""
+msgstr "播放"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:385
msgid "pause"
-msgstr ""
+msgstr "暂停"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:387
msgid "movie time"
-msgstr ""
+msgstr "影片时长"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:389
msgid "timeline slider thumb"
-msgstr ""
+msgstr "时间轴滑动预览"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:391
msgid "back 30 seconds"
-msgstr ""
+msgstr "后退 30 秒"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:393
msgid "return to realtime"
-msgstr ""
+msgstr "返回实时状态"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:395
msgid "elapsed time"
-msgstr ""
+msgstr "播放时间"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:397
msgid "remaining time"
-msgstr ""
+msgstr "剩余时间"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:399
-#, fuzzy
msgid "status"
msgstr "状态"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:401
msgid "fullscreen"
-msgstr ""
+msgstr "全屏"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:403
msgid "fast forward"
-msgstr ""
+msgstr "快进"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:405
msgid "fast reverse"
-msgstr ""
+msgstr "快退"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:407
msgid "show closed captions"
-msgstr ""
+msgstr "显示常闭式字幕"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:409
msgid "hide closed captions"
-msgstr ""
+msgstr "隐藏常闭式字幕"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:418
msgid "audio element playback controls and status display"
-msgstr ""
+msgstr "音频元素回放控制和状态显示"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:420
msgid "video element playback controls and status display"
-msgstr ""
+msgstr "视频元素回访控制和状态显示"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:422
msgid "mute audio tracks"
-msgstr ""
+msgstr "静音音轨"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:424
msgid "unmute audio tracks"
-msgstr ""
+msgstr "解除音轨静音"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:426
msgid "begin playback"
-msgstr ""
+msgstr "开始回放"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:428
msgid "pause playback"
-msgstr ""
+msgstr "暂停回放"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:430
msgid "movie time scrubber"
-msgstr ""
+msgstr "影片时间刷"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:432
msgid "movie time scrubber thumb"
-msgstr ""
+msgstr "影片时间刷缩略图"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:434
msgid "seek movie back 30 seconds"
-msgstr ""
+msgstr "向前 30 秒查找影片"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:436
msgid "return streaming movie to real time"
-msgstr ""
+msgstr "将流影片返回实时状态"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:438
msgid "current movie time in seconds"
-msgstr ""
+msgstr "以秒显示当前影片时间"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:440
msgid "number of seconds of movie remaining"
-msgstr ""
+msgstr "影片剩余秒数"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:442
msgid "current movie status"
-msgstr ""
+msgstr "当前影片状态"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:444
msgid "seek quickly back"
-msgstr ""
+msgstr "快退查找"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:446
msgid "seek quickly forward"
-msgstr ""
+msgstr "快进查找"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:448
msgid "Play movie in fullscreen mode"
-msgstr ""
+msgstr "以全屏模式播放影片"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:450
msgid "start displaying closed captions"
-msgstr ""
+msgstr "开始显示常闭式字幕"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:452
msgid "stop displaying closed captions"
-msgstr ""
+msgstr "停止显示常闭式字幕"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:461
-#, fuzzy
msgid "indefinite time"
-msgstr "定义"
+msgstr "模糊时间"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:491
msgid "value missing"
-msgstr ""
+msgstr "缺少值"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:497
msgid "type mismatch"
-msgstr ""
+msgstr "类型不匹配"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:502
msgid "pattern mismatch"
-msgstr ""
+msgstr "样式不匹配"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:507
msgid "too long"
-msgstr ""
+msgstr "太长"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:512
msgid "range underflow"
-msgstr ""
+msgstr "范围下溢"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:517
msgid "range overflow"
-msgstr ""
+msgstr "范围上溢"
#: WebCore/platform/gtk/LocalizedStringsGtk.cpp:522
msgid "step mismatch"
-msgstr ""
+msgstr "步骤不匹配"
#~ msgid "_Searchable Index"
#~ msgstr "可搜索索引(_S)"
diff --git a/Source/WebKit/gtk/tests/testatk.c b/Source/WebKit/gtk/tests/testatk.c
index 1ee6c55..6508638 100644
--- a/Source/WebKit/gtk/tests/testatk.c
+++ b/Source/WebKit/gtk/tests/testatk.c
@@ -32,6 +32,8 @@ static const char* contents = "<html><body><p>This is a test. This is the second
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* contentsWithSpecialChars = "<html><body><p>&laquo;&nbsp;This is a paragraph with &ldquo;special&rdquo; characters inside.&nbsp;&raquo;</p></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>";
@@ -44,6 +46,8 @@ static const char* contentsInTable = "<html><body><table><tr><td>foo</td><td>bar
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* comboBoxSelector = "<html><body><select><option selected value='foo'>foo</option><option value='bar'>bar</option></select></body></html>";
static const char* formWithTextInputs = "<html><body><form><input type='text' name='entry' /></form></body></html>";
@@ -56,6 +60,8 @@ static const char* linksWithInlineImages = "<html><head><style>a.http:before {co
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></ol><select><option selected value='foo'>An option in a combo box</option></select></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></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>";
@@ -223,6 +229,156 @@ static void runGetTextTests(AtkText* textObject)
0, "This is a test. This is the second sentence. And this the third.", 0, 64);
}
+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);
+
+ /* Wait for the accessible objects to be created. */
+ waitForAccessibleObjects();
+
+ AtkObject* object = gtk_widget_get_accessible(GTK_WIDGET(webView));
+ g_assert(object);
+
+ AtkObject* header = atk_object_ref_accessible_child(object, 0);
+ g_assert(ATK_IS_TEXT(header));
+ 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);
+
+ AtkObject* paragraph = atk_object_ref_accessible_child(object, 1);
+ g_assert(ATK_IS_TEXT(paragraph));
+ 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);
+
+ 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);
+
+ 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);
+
+ 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));
+ text = atk_text_get_text(ATK_TEXT(listItem), 0, -1);
+ g_assert_cmpstr(text, ==, "1. 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_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_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");
+
+ /* 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);
+
+ g_object_unref(header);
+ g_object_unref(paragraph);
+ 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(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);
+
+ /* Wait for the accessible objects to be created. */
+ waitForAccessibleObjects();
+
+ /* 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 = gtk_widget_get_accessible(GTK_WIDGET(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());
@@ -453,6 +609,40 @@ static void testWebkitAtkGetTextAtOffsetTextInput()
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);
+
+ /* Wait for the accessible objects to be created. */
+ waitForAccessibleObjects();
+
+ /* Get to the inner AtkText object. */
+ AtkObject* object = gtk_widget_get_accessible(GTK_WIDGET(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));
+
+ const gchar* expectedText = "\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(textObject, 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(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_START, 0, expectedText, 0, 57);
+ testGetTextFunction(textObject, atk_text_get_text_at_offset, ATK_TEXT_BOUNDARY_LINE_END, 0, expectedText, 0, 57);
+
+ g_object_unref(webView);
+}
+
static void testWebkitAtkGetTextInParagraphAndBodySimple()
{
WebKitWebView* webView = WEBKIT_WEB_VIEW(webkit_web_view_new());
@@ -1005,6 +1195,21 @@ static void testWebkitAtkGetExtents()
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);
@@ -1314,12 +1519,15 @@ int main(int argc, char** argv)
gtk_test_init(&argc, &argv, 0);
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/getTextAtOffset", testWebkitAtkGetTextAtOffset);
g_test_add_func("/webkit/atk/getTextAtOffsetForms", testWebkitAtkGetTextAtOffsetForms);
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/getTextAtOffsetWithSpecialCharacters", testWebkitAtkGetTextAtOffsetWithSpecialCharacters);
g_test_add_func("/webkit/atk/getTextInParagraphAndBodySimple", testWebkitAtkGetTextInParagraphAndBodySimple);
g_test_add_func("/webkit/atk/getTextInParagraphAndBodyModerate", testWebkitAtkGetTextInParagraphAndBodyModerate);
g_test_add_func("/webkit/atk/getTextInTable", testWebkitAtkGetTextInTable);
diff --git a/Source/WebKit/gtk/webkit/webkitglobals.cpp b/Source/WebKit/gtk/webkit/webkitglobals.cpp
index a97d53f..c23824c 100644
--- a/Source/WebKit/gtk/webkit/webkitglobals.cpp
+++ b/Source/WebKit/gtk/webkit/webkitglobals.cpp
@@ -117,14 +117,24 @@ void webkit_set_cache_model(WebKitCacheModel model)
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;
+ 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.)
@@ -248,13 +258,7 @@ void webkitInit()
PageGroup::setShouldTrackVisitedLinks(true);
Pasteboard::generalPasteboard()->setHelper(WebKit::pasteboardHelperInstance());
-
- iconDatabase()->setEnabled(true);
-
- GOwnPtr<gchar> iconDatabasePath(g_build_filename(g_get_user_data_dir(), "webkit", "icondatabase", NULL));
- iconDatabase()->open(iconDatabasePath.get());
-
- atexit(closeIconDatabaseOnExit);
+ WebKit::setIconDatabaseEnabled(true);
SoupSession* session = webkit_get_default_session();
@@ -278,5 +282,25 @@ PasteboardHelperGtk* pasteboardHelperInstance()
return helper;
}
+void setIconDatabaseEnabled(bool enabled)
+{
+ static bool initialized = false;
+ if (enabled && !initialized) {
+ initialized = true;
+ atexit(closeIconDatabaseOnExit);
+ }
+
+ if (enabled) {
+ iconDatabase()->setEnabled(true);
+ GOwnPtr<gchar> iconDatabasePath(g_build_filename(g_get_user_data_dir(), "webkit", "icondatabase", NULL));
+ iconDatabase()->open(iconDatabasePath.get());
+ return;
+ }
+
+ iconDatabase()->setEnabled(false);
+ iconDatabase()->close();
+}
+
+
} /** end namespace WebKit */
diff --git a/Source/WebKit/gtk/webkit/webkitglobals.h b/Source/WebKit/gtk/webkit/webkitglobals.h
index 6d144fc..612c195 100644
--- a/Source/WebKit/gtk/webkit/webkitglobals.h
+++ b/Source/WebKit/gtk/webkit/webkitglobals.h
@@ -35,16 +35,21 @@ G_BEGIN_DECLS
* 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 local files.
+ * 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 previously viewed content.
+ * 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_WEB_BROWSER,
+ WEBKIT_CACHE_MODEL_DOCUMENT_BROWSER,
} WebKitCacheModel;
WEBKIT_API SoupSession*
diff --git a/Source/WebKit/gtk/webkit/webkitglobalsprivate.h b/Source/WebKit/gtk/webkit/webkitglobalsprivate.h
index 5923f2e..7eb3aae 100644
--- a/Source/WebKit/gtk/webkit/webkitglobalsprivate.h
+++ b/Source/WebKit/gtk/webkit/webkitglobalsprivate.h
@@ -33,6 +33,7 @@ namespace WebKit {
class PasteboardHelperGtk;
PasteboardHelperGtk* pasteboardHelperInstance();
+void setIconDatabaseEnabled(bool);
}
extern "C" {
diff --git a/Source/WebKit/gtk/webkit/webkitwebframe.cpp b/Source/WebKit/gtk/webkit/webkitwebframe.cpp
index d0ea875..fd90a6c 100644
--- a/Source/WebKit/gtk/webkit/webkitwebframe.cpp
+++ b/Source/WebKit/gtk/webkit/webkitwebframe.cpp
@@ -474,23 +474,24 @@ WebKitWebView* webkit_web_frame_get_web_view(WebKitWebFrame* frame)
*
* Returns the @frame's name
*
- * Return value: the name of @frame
+ * 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.
*/
G_CONST_RETURN gchar* webkit_web_frame_get_name(WebKitWebFrame* frame)
{
g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- WebKitWebFramePrivate* priv = frame->priv;
-
- if (priv->name)
- return priv->name;
-
Frame* coreFrame = core(frame);
if (!coreFrame)
return "";
- String string = coreFrame->tree()->uniqueName();
- priv->name = g_strdup(string.utf8().data());
+ 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;
}
@@ -768,7 +769,7 @@ static void draw_page_callback(GtkPrintOperation* op, GtkPrintContext* context,
{
PrintContext* printContext = reinterpret_cast<PrintContext*>(user_data);
- if (page_nr >= printContext->pageCount())
+ if (page_nr >= static_cast<gint>(printContext->pageCount()))
return;
cairo_t* cr = gtk_print_context_get_cairo_context(context);
diff --git a/Source/WebKit/gtk/webkit/webkitwebinspector.cpp b/Source/WebKit/gtk/webkit/webkitwebinspector.cpp
index df63c63..8b5b5ac 100644
--- a/Source/WebKit/gtk/webkit/webkitwebinspector.cpp
+++ b/Source/WebKit/gtk/webkit/webkitwebinspector.cpp
@@ -29,6 +29,7 @@
#include "HitTestResult.h"
#include "InspectorClientGtk.h"
#include "InspectorController.h"
+#include "InspectorInstrumentation.h"
#include "IntPoint.h"
#include "Page.h"
#include "RenderLayer.h"
@@ -397,7 +398,7 @@ static void webkit_web_inspector_get_property(GObject* object, guint prop_id, GV
#endif
break;
case PROP_TIMELINE_PROFILING_ENABLED:
- g_value_set_boolean(value, priv->page->inspectorController()->timelineAgent() != 0);
+ g_value_set_boolean(value, priv->page->inspectorController()->timelineProfilerEnabled());
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
diff --git a/Source/WebKit/gtk/webkit/webkitwebview.cpp b/Source/WebKit/gtk/webkit/webkitwebview.cpp
index c855507..d2b0ae0 100644
--- a/Source/WebKit/gtk/webkit/webkitwebview.cpp
+++ b/Source/WebKit/gtk/webkit/webkitwebview.cpp
@@ -402,7 +402,7 @@ static gboolean webkit_web_view_popup_menu_handler(GtkWidget* widget)
// If there's a focused elment, use its location.
if (Node* focusedNode = getFocusedNode(frame)) {
IntRect focusedNodeRect = focusedNode->getRect();
- location = IntPoint(rightAligned ? focusedNodeRect.right() : focusedNodeRect.x(), focusedNodeRect.bottom());
+ location = IntPoint(rightAligned ? focusedNodeRect.maxX() : focusedNodeRect.x(), focusedNodeRect.maxY());
} else
location = IntPoint(rightAligned ? view->contentsWidth() - contextMenuMargin : contextMenuMargin, contextMenuMargin);
} else {
@@ -440,7 +440,7 @@ static gboolean webkit_web_view_popup_menu_handler(GtkWidget* widget)
startCaretRect.width() + extraWidthToEndOfLine,
startCaretRect.height());
- location = IntPoint(rightAligned ? firstRect.right() : firstRect.x(), firstRect.bottom());
+ location = IntPoint(rightAligned ? firstRect.maxX() : firstRect.x(), firstRect.maxY());
}
// FIXME: The IntSize(0, -1) is a hack to get the hit-testing to result in the selected element.
@@ -4671,7 +4671,7 @@ gdouble webkit_web_view_get_progress(WebKitWebView* webView)
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()->loader()->writer()->encoding();
+ String encoding = core(webView)->mainFrame()->document()->loader()->writer()->encoding();
if (encoding.isEmpty())
return 0;
webView->priv->encoding = encoding.utf8();
@@ -5051,7 +5051,7 @@ WebKitHitTestResult* webkit_web_view_get_hit_test_result(WebKitWebView* webView,
G_CONST_RETURN gchar* webkit_web_view_get_icon_uri(WebKitWebView* webView)
{
g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), 0);
- String iconURL = iconDatabase()->iconURLForPageURL(core(webView)->mainFrame()->loader()->url().prettyURL());
+ String iconURL = iconDatabase()->iconURLForPageURL(core(webView)->mainFrame()->document()->url().prettyURL());
webView->priv->iconURI = iconURL.utf8();
return webView->priv->iconURI.data();
}
diff --git a/Source/WebKit/haiku/ChangeLog b/Source/WebKit/haiku/ChangeLog
index 4315bb5..669aae4 100644
--- a/Source/WebKit/haiku/ChangeLog
+++ b/Source/WebKit/haiku/ChangeLog
@@ -1,3 +1,56 @@
+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/ChromeClientHaiku.cpp:
+ * WebCoreSupport/ChromeClientHaiku.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/DragClientHaiku.cpp:
+ * WebCoreSupport/DragClientHaiku.h:
+
+2011-02-07 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Haiku] FrameLoaderClient calls loadURLInChildFrame on the child's frame loader
+ https://bugs.webkit.org/show_bug.cgi?id=53893
+
+ * WebCoreSupport/FrameLoaderClientHaiku.cpp:
+ (WebCore::FrameLoaderClientHaiku::createFrame): Use m_frame instead of childFrame.
+
+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/ChromeClientHaiku.cpp:
+ (WebCore::ChromeClientHaiku::selectItemAlignmentFollowsMenuWritingDirection): Added.
+ * WebCoreSupport/ChromeClientHaiku.h:
+
+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
+
+ * WebCoreSupport/FrameLoaderClientHaiku.cpp:
+ (WebCore::FrameLoaderClientHaiku::dispatchDidFinishDocumentLoad):
+
2010-12-22 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
diff --git a/Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.cpp b/Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.cpp
index 01b9c1d..6ed11ea 100644
--- a/Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.cpp
+++ b/Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.cpp
@@ -388,13 +388,12 @@ void ChromeClientHaiku::formStateDidChange(const Node*)
notImplemented();
}
-PassOwnPtr<HTMLParserQuirks> ChromeClientHaiku::createHTMLParserQuirks()
+bool ChromeClientHaiku::selectItemWritingDirectionIsNatural()
{
- notImplemented();
- return 0;
+ return false;
}
-bool ChromeClientHaiku::selectItemWritingDirectionIsNatural()
+bool ChromeClientHaiku::selectItemAlignmentFollowsMenuWritingDirection()
{
return false;
}
diff --git a/Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.h b/Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.h
index deb3678..3298c37 100644
--- a/Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.h
+++ b/Source/WebKit/haiku/WebCoreSupport/ChromeClientHaiku.h
@@ -133,6 +133,7 @@ namespace WebCore {
#endif
virtual bool selectItemWritingDirectionIsNatural();
+ virtual bool selectItemAlignmentFollowsMenuWritingDirection();
virtual PassRefPtr<PopupMenu> createPopupMenu(PopupMenuClient*) const;
virtual PassRefPtr<SearchPopupMenu> createSearchPopupMenu(PopupMenuClient*) const;
@@ -157,8 +158,6 @@ namespace WebCore {
// Notification that the given form element has changed. This function
// will be called frequently, so handling should be very fast.
virtual void formStateDidChange(const Node*);
-
- virtual PassOwnPtr<HTMLParserQuirks> createHTMLParserQuirks();
};
} // namespace WebCore
diff --git a/Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.cpp b/Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.cpp
index 8964c69..4a8f9f4 100644
--- a/Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.cpp
+++ b/Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.cpp
@@ -64,11 +64,5 @@ void DragClientHaiku::startDrag(DragImageRef dragImage, const IntPoint&, const I
notImplemented();
}
-DragImageRef DragClientHaiku::createDragImageForLink(KURL&, const String&, Frame*)
-{
- notImplemented();
- return 0;
-}
-
} // namespace WebCore
diff --git a/Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.h b/Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.h
index b184322..40860e3 100644
--- a/Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.h
+++ b/Source/WebKit/haiku/WebCoreSupport/DragClientHaiku.h
@@ -39,7 +39,6 @@ namespace WebCore {
virtual void willPerformDragSourceAction(DragSourceAction, const IntPoint&, Clipboard*);
virtual void startDrag(DragImageRef dragImage, const IntPoint& dragImageOrigin,
const IntPoint& eventPos, Clipboard*, Frame*, bool linkDrag = false);
- virtual DragImageRef createDragImageForLink(KURL&, const String& label, Frame*);
};
} // namespace WebCore
diff --git a/Source/WebKit/haiku/WebCoreSupport/FrameLoaderClientHaiku.cpp b/Source/WebKit/haiku/WebCoreSupport/FrameLoaderClientHaiku.cpp
index 48c65a1..46ac489 100644
--- a/Source/WebKit/haiku/WebCoreSupport/FrameLoaderClientHaiku.cpp
+++ b/Source/WebKit/haiku/WebCoreSupport/FrameLoaderClientHaiku.cpp
@@ -261,7 +261,7 @@ void FrameLoaderClientHaiku::dispatchDidFinishDocumentLoad()
{
if (m_webView) {
BMessage message(LOAD_DOC_COMPLETED);
- message.AddString("url", m_frame->loader()->url().string());
+ message.AddString("url", m_frame->document()->url().string());
m_messenger->SendMessage(&message);
}
}
@@ -323,7 +323,7 @@ void FrameLoaderClientHaiku::postProgressFinishedNotification()
{
if (m_webView) {
BMessage message(LOAD_DL_COMPLETED);
- message.AddString("url", m_frame->loader()->url().string());
+ message.AddString("url", m_frame->document()->url().string());
m_messenger->SendMessage(&message);
}
}
@@ -729,7 +729,7 @@ PassRefPtr<Frame> FrameLoaderClientHaiku::createFrame(const KURL& url, const Str
childFrame->tree()->setName(name);
m_frame->tree()->appendChild(childFrame);
- childFrame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
+ m_frame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
// The frame's onload handler may have removed it from the document.
if (!childFrame->tree()->parent())
diff --git a/Source/WebKit/mac/ChangeLog b/Source/WebKit/mac/ChangeLog
index 121250d..4a3c74f 100644
--- a/Source/WebKit/mac/ChangeLog
+++ b/Source/WebKit/mac/ChangeLog
@@ -1,3 +1,467 @@
+2011-02-11 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ A little more encapsulation for the heap: Removed CollectorHeapIterator
+ https://bugs.webkit.org/show_bug.cgi?id=54298
+
+ * Misc/WebCoreStatistics.mm:
+ (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
+ (+[WebCoreStatistics javaScriptObjectTypeCounts]): Updated for new typedef.
+
+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
+
+ * WebView/WebFrame.mm:
+ (-[WebFrame _canProvideDocumentSource]):
+
+2011-02-10 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ AX: AX needs to stop using WebCoreViewFactory
+ https://bugs.webkit.org/show_bug.cgi?id=54153
+
+ * WebCoreSupport/WebSystemInterface.mm:
+ (InitWebCoreSystemInterface):
+
+2011-02-10 Peter Varga <pvarga@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ Remove PCRE source from trunk
+ https://bugs.webkit.org/show_bug.cgi?id=54188
+
+ * ForwardingHeaders/pcre/pcre.h: Removed.
+
+2011-02-09 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: follow up on InspectorAgent split -
+ removing unnecessary methods from InspectorController.
+ https://bugs.webkit.org/show_bug.cgi?id=54093
+
+ * WebInspector/WebInspector.mm:
+ (-[WebInspector showConsole:]):
+ (-[WebInspector stopProfilingJavaScript:]):
+
+2011-02-08 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Jon Honeycutt and Maciej Stachowiak.
+
+ <rdar://problem/8959420> Find in Mail no longer cycles around
+
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): Set
+ the wrap option according to the flag.
+
+2011-02-08 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r77980.
+ http://trac.webkit.org/changeset/77980
+ https://bugs.webkit.org/show_bug.cgi?id=54043
+
+ "Crashes on Windows and Linux..." (Requested by leviw on
+ #webkit).
+
+ * WebView/WebFrame.mm:
+ (-[WebFrame _caretRectAtNode:offset:affinity:]):
+ * WebView/WebFrameInternal.h:
+ * WebView/WebTextCompletionController.mm:
+ (-[WebTextCompletionController doCompletion]):
+
+2011-02-08 Levi Weintraub <leviw@chromium.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ Stop instantiating legacy editing Positions in VisiblePosition
+ https://bugs.webkit.org/show_bug.cgi?id=52919
+
+ Changing usage of legacy VisiblePosition constructor. Since we were dealing
+ with positions from DOM Ranges, we're guaranteed a parent-anchored position.
+
+ * WebView/WebFrame.mm:
+ (-[WebFrame _caretRectAtPosition:affinity:]):
+ * WebView/WebFrameInternal.h:
+ * WebView/WebTextCompletionController.mm:
+ (-[WebTextCompletionController doCompletion]):
+
+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/WebChromeClient.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.
+
+ * WebInspector/WebInspector.mm:
+ (-[WebInspector isTimelineProfilingEnabled]):
+
+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/WebDragClient.h:
+ * WebCoreSupport/WebDragClient.mm:
+ (WebDragClient::startDrag):
+
+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/WebInspectorClient.h:
+ * WebCoreSupport/WebInspectorClient.mm:
+ (WebInspectorClient::openInspectorFrontend):
+ (WebInspectorFrontendClient::WebInspectorFrontendClient):
+
+2011-02-03 James Kozianski <koz@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Add navigator.registerProtocolHandler behind a flag.
+ https://bugs.webkit.org/show_bug.cgi?id=52609
+
+ * Configurations/FeatureDefines.xcconfig:
+
+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/WebFrameLoaderClient.h:
+ * WebCoreSupport/WebFrameLoaderClient.mm:
+ (WebFrameLoaderClient::didRunInsecureContent):
+
+2011-02-03 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix for <rdar://problem/8944544> Ability to animate track
+ for WKPainter scrollers
+
+ * WebCoreSupport/WebSystemInterface.mm:
+ (InitWebCoreSystemInterface):
+
+2011-02-02 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ <rdar://problem/8928367> Crash when loading canvas pages inside HTMLCanvasElement::createImageBuffer().
+
+ * WebCoreSupport/WebSystemInterface.mm:
+ (InitWebCoreSystemInterface): Add some missing initializers.
+
+2011-02-02 Steve Lacey <sjl@chromium.org>
+
+ Reviewed by Eric Carlson.
+
+ Implement basic media statistics on media elements.
+ https://bugs.webkit.org/show_bug.cgi?id=53322
+
+ * Configurations/FeatureDefines.xcconfig:
+
+2011-02-01 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Beth Dakin.
+
+ Part 2 for <rdar://problem/8492788>
+ Adopt WKScrollbarPainterController
+
+ Use header detection to define scrollbar painting controller #define.
+
+ * WebCoreSupport/WebSystemInterface.mm:
+ (InitWebCoreSystemInterface):
+
+2011-02-01 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=53520
+
+ Remove the physical terminology from IntRect and FloatRect.
+
+ Now that we have flipped RenderBlocks for vertical-rl and horizontal-bt writing modes,
+ we need to update our terminology to be more accurate.
+
+ I'm borrowing a page from AppKit here (which also supports flipped NSViews) and
+ renaming right() and bottom() to maxX() and maxY(). These terms remain accurate
+ even for flipped rectangles.
+
+ * WebView/WebHTMLView.mm:
+ (setNeedsDisplayInRect):
+
+2011-02-01 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix for <rdar://problem/8492788> Adopt WKScrollbarPainterController
+
+ * WebCoreSupport/WebSystemInterface.mm:
+ (InitWebCoreSystemInterface):
+
+2011-02-01 Dave Hyatt <hyatt@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46422, make printing and pagination work
+ with vertical text.
+
+ Change printing functions to check writing-mode and properly swap width and height
+ as needed.
+
+ * WebView/WebDynamicScrollBarsView.mm:
+ (-[WebDynamicScrollBarsView setScrollOrigin:updatePositionAtAll:immediately:]):
+ * WebView/WebFrame.mm:
+ (-[WebFrame _computePageRectsWithPrintScaleFactor:pageSize:]):
+ * WebView/WebFrameInternal.h:
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView _web_setPrintingModeRecursive]):
+ (-[WebHTMLView _web_clearPrintingModeRecursive]):
+ (-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]):
+ (-[WebHTMLView _beginPrintModeWithMinimumPageWidth:height:maximumPageWidth:]):
+ (-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]):
+ (-[WebHTMLView _endPrintMode]):
+ (-[WebHTMLView _beginScreenPaginationModeWithPageSize:shrinkToFit:]):
+ (-[WebHTMLView _endScreenPaginationMode]):
+ (-[WebHTMLView layoutToMinimumPageWidth:height:maximumPageWidth:adjustingViewSize:]):
+ (-[WebHTMLView _setPrinting:minimumPageLogicalWidth:logicalHeight:maximumPageLogicalWidth:adjustViewSize:paginateScreenContent:]):
+ (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
+ (-[WebHTMLView _scaleFactorForPrintOperation:]):
+ (-[WebHTMLView setPageWidthForPrinting:]):
+ (-[WebHTMLView knowsPageRange:]):
+
+2011-01-31 Oliver Hunt <oliver@apple.com>
+
+ Convert markstack to a slot visitor API
+ https://bugs.webkit.org/show_bug.cgi?id=53219
+
+ rolling r77098, r77099, r77100, r77109, and
+ r77111 back in, along with a few more Qt fix attempts.
+
+ * WebView/WebScriptDebugDelegate.mm:
+ (-[WebScriptCallFrame scopeChain]):
+
+2011-01-30 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed, rolling out r77098, r77099, r77100, r77109, and
+ r77111.
+ http://trac.webkit.org/changeset/77098
+ http://trac.webkit.org/changeset/77099
+ http://trac.webkit.org/changeset/77100
+ http://trac.webkit.org/changeset/77109
+ http://trac.webkit.org/changeset/77111
+ https://bugs.webkit.org/show_bug.cgi?id=53219
+
+ Qt build is broken
+
+ * WebView/WebScriptDebugDelegate.mm:
+ (-[WebScriptCallFrame scopeChain]):
+
+2011-01-30 Oliver Hunt <oliver@apple.com>
+
+ Convert markstack to a slot visitor API
+ https://bugs.webkit.org/show_bug.cgi?id=53219
+
+ rolling r77006 and r77020 back in.
+
+ * WebView/WebScriptDebugDelegate.mm:
+ (-[WebScriptCallFrame scopeChain]):
+
+2011-01-28 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ Some more Heap cleanup.
+ https://bugs.webkit.org/show_bug.cgi?id=53357
+
+ Updated for JavaScriptCore changes.
+
+ * Misc/WebCoreStatistics.mm:
+ (+[WebCoreStatistics memoryStatistics]):
+
+2011-01-28 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r77006 and r77020.
+ http://trac.webkit.org/changeset/77006
+ http://trac.webkit.org/changeset/77020
+ https://bugs.webkit.org/show_bug.cgi?id=53360
+
+ "Broke Windows tests" (Requested by rniwa on #webkit).
+
+ * WebView/WebScriptDebugDelegate.mm:
+ (-[WebScriptCallFrame scopeChain]):
+
+2011-01-27 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Geoffrey Garen.
+
+ Convert markstack to a slot visitor API
+ https://bugs.webkit.org/show_bug.cgi?id=53219
+
+ Update to new marking api
+
+ * WebView/WebScriptDebugDelegate.mm:
+ (-[WebScriptCallFrame scopeChain]):
+
+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/WebChromeClient.h:
+ * WebCoreSupport/WebChromeClient.mm:
+ (WebChromeClient::selectItemWritingDirectionIsNatural): Changed to return false.
+ (WebChromeClient::selectItemAlignmentFollowsMenuWritingDirection): Added. Returns true.
+
+2011-01-27 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r76891.
+ http://trac.webkit.org/changeset/76891
+ https://bugs.webkit.org/show_bug.cgi?id=53280
+
+ Makes every layout test crash (Requested by othermaciej on
+ #webkit).
+
+ * Misc/WebIconDatabase.mm:
+ (-[ThreadEnabler threadEnablingSelector:]):
+ (importToWebCoreFormat):
+
+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
+
+ * WebView/WebView.mm:
+ (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
+
+2011-01-27 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by Anders Carlsson.
+
+ Reverted an accidental change in r76561.
+
+ * WebView/WebHTMLView.mm:
+
+2011-01-26 David Kilzer <ddkilzer@apple.com>
+
+ <http://webkit.org/b/53192> Add experimental support for HTTP pipelining in CFNetwork
+ <rdar://problem/8821760>
+
+ Reviewed by Antti Koivisto.
+
+ * WebCoreSupport/WebSystemInterface.mm:
+ (InitWebCoreSystemInterface): Added initialization for
+ GetHTTPPipeliningPriority and SetHTTPPipeliningPriority.
+
+2011-01-26 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for <rdar://problem/8895140> Adopt WKScrollbar metrics
+ when using WKScrollbars.
+
+ * WebCoreSupport/WebSystemInterface.mm:
+ (InitWebCoreSystemInterface):
+
+2011-01-25 Darin Adler <darin@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ WebKit is using CSBackupSetItemExcluded incorrectly
+ https://bugs.webkit.org/show_bug.cgi?id=53095
+ rdar://problem/8790540
+
+ * Misc/WebIconDatabase.mm:
+ (importToWebCoreFormat): Removed code that was calling CSBackupSetItemExcluded.
+ It was incorrect, and this responsibility has been moved to WebCore.
+
+2011-01-24 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Change ENABLE_3D_CANVAS to ENABLE_WEBGL
+ https://bugs.webkit.org/show_bug.cgi?id=53041
+
+ * Configurations/FeatureDefines.xcconfig:
+
+2011-01-25 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: remove "attached" state related methods from InspectorAgent
+ https://bugs.webkit.org/show_bug.cgi?id=53086
+
+ * WebCoreSupport/WebInspectorClient.h:
+ * WebCoreSupport/WebInspectorClient.mm:
+ (-[WebInspectorWindowController showWindow:]):
+ (-[WebInspectorWindowController attach]):
+ (-[WebInspectorWindowController detach]):
+
+2011-01-23 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/6097826> Mail's cursor does not become a resize cursor when moving mouse from scrolled email to the horizontal splitter
+
+ * WebCoreSupport/WebChromeClient.mm:
+ (WebChromeClient::setCursor): If the current cursor comes from a cursor rect, do not override it.
+
+2011-01-22 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=52473
+ Auto-scaling to avoid orphans is broken, remove dysfunctional code
+
+ * WebView/WebHTMLView.mm:
+ (-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:paginateScreenContent:]):
+ (-[WebHTMLView _scaleFactorForPrintOperation:]):
+ (-[WebHTMLView knowsPageRange:]):
+
+2011-01-21 Mark Rowe <mrowe@apple.com>
+
+ Rubber-stamped by Jon Honeycutt.
+
+ Fix the build when using Clang by removing some unused variables.
+
+ * Plugins/Hosted/WebHostedNetscapePluginView.mm:
+ (-[WebHostedNetscapePluginView updateAndSetWindow]):
+ * WebView/WebFullScreenController.mm:
+ (-[WebFullScreenController enterFullscreen:]):
+ (-[WebFullScreenController exitFullscreen]):
+
2011-01-21 Chris Rogers <crogers@google.com>
Reviewed by Darin Fisher.
diff --git a/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig b/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig
index 46d5de4..3971037 100644
--- a/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig
+++ b/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig
@@ -38,10 +38,10 @@ ENABLE_ACCELERATED_2D_CANVAS_macosx = $(ENABLE_ACCELERATED_2D_CANVAS_macosx_$(TA
ENABLE_ACCELERATED_2D_CANVAS_macosx_1060 = ;
ENABLE_ACCELERATED_2D_CANVAS_macosx_1070 = ;
-ENABLE_3D_CANVAS = $(ENABLE_3D_CANVAS_$(REAL_PLATFORM_NAME));
-ENABLE_3D_CANVAS_macosx = $(ENABLE_3D_CANVAS_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
-ENABLE_3D_CANVAS_macosx_1060 = ENABLE_3D_CANVAS;
-ENABLE_3D_CANVAS_macosx_1070 = ENABLE_3D_CANVAS;
+ENABLE_WEBGL = $(ENABLE_WEBGL_$(REAL_PLATFORM_NAME));
+ENABLE_WEBGL_macosx = $(ENABLE_WEBGL_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
+ENABLE_WEBGL_macosx_1060 = ENABLE_WEBGL;
+ENABLE_WEBGL_macosx_1070 = ENABLE_WEBGL;
ENABLE_3D_RENDERING = $(ENABLE_3D_RENDERING_$(REAL_PLATFORM_NAME));
ENABLE_3D_RENDERING_iphoneos = ENABLE_3D_RENDERING;
@@ -91,6 +91,8 @@ ENABLE_NOTIFICATIONS = ;
ENABLE_OFFLINE_WEB_APPLICATIONS = ENABLE_OFFLINE_WEB_APPLICATIONS;
ENABLE_PROGRESS_TAG = ENABLE_PROGRESS_TAG;
+ENABLE_REGISTER_PROTOCOL_HANDLER = ;
+
ENABLE_SHARED_WORKERS = $(ENABLE_SHARED_WORKERS_$(REAL_PLATFORM_NAME));
ENABLE_SHARED_WORKERS_macosx = ENABLE_SHARED_WORKERS;
@@ -106,6 +108,8 @@ ENABLE_SVG_FOREIGN_OBJECT = ENABLE_SVG_FOREIGN_OBJECT;
ENABLE_SVG_USE = ENABLE_SVG_USE;
ENABLE_VIDEO = ENABLE_VIDEO;
+ENABLE_MEDIA_STATISTICS = ;
+
ENABLE_WEB_AUDIO = ;
ENABLE_WEB_SOCKETS = $(ENABLE_WEB_SOCKETS_$(REAL_PLATFORM_NAME));
@@ -121,4 +125,4 @@ ENABLE_XHTMLMP = ;
ENABLE_XPATH = ENABLE_XPATH;
ENABLE_XSLT = ENABLE_XSLT;
-FEATURE_DEFINES = $(ENABLE_LINK_PREFETCH) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_3D_CANVAS) $(ENABLE_3D_RENDERING) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CLIENT_BASED_GEOLOCATION) $(ENABLE_DATABASE) $(ENABLE_DATAGRID) $(ENABLE_DATALIST) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_DOM_STORAGE) $(ENABLE_EVENTSOURCE) $(ENABLE_FILTERS) $(ENABLE_FILE_SYSTEM) $(ENABLE_FULLSCREEN_API) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_RESIZER) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_SPEECH) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_MATHML) $(ENABLE_METER_TAG) $(ENABLE_NOTIFICATIONS) $(ENABLE_OFFLINE_WEB_APPLICATIONS) $(ENABLE_PROGRESS_TAG) $(ENABLE_SHARED_WORKERS) $(ENABLE_SVG) $(ENABLE_SVG_ANIMATION) $(ENABLE_SVG_AS_IMAGE) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_FOREIGN_OBJECT) $(ENABLE_SVG_USE) $(ENABLE_VIDEO) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WML) $(ENABLE_WORKERS) $(ENABLE_XHTMLMP) $(ENABLE_XPATH) $(ENABLE_XSLT);
+FEATURE_DEFINES = $(ENABLE_LINK_PREFETCH) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_WEBGL) $(ENABLE_3D_RENDERING) $(ENABLE_BLOB) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CLIENT_BASED_GEOLOCATION) $(ENABLE_DATABASE) $(ENABLE_DATAGRID) $(ENABLE_DATALIST) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DIRECTORY_UPLOAD) $(ENABLE_DOM_STORAGE) $(ENABLE_EVENTSOURCE) $(ENABLE_FILTERS) $(ENABLE_FILE_SYSTEM) $(ENABLE_FULLSCREEN_API) $(ENABLE_GEOLOCATION) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_RESIZER) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INPUT_SPEECH) $(ENABLE_JAVASCRIPT_DEBUGGER) $(ENABLE_MATHML) $(ENABLE_METER_TAG) $(ENABLE_NOTIFICATIONS) $(ENABLE_OFFLINE_WEB_APPLICATIONS) $(ENABLE_PROGRESS_TAG) $(ENABLE_REGISTER_PROTOCOL_HANDLER) $(ENABLE_SHARED_WORKERS) $(ENABLE_SVG) $(ENABLE_SVG_ANIMATION) $(ENABLE_SVG_AS_IMAGE) $(ENABLE_SVG_DOM_OBJC_BINDINGS) $(ENABLE_SVG_FONTS) $(ENABLE_SVG_FOREIGN_OBJECT) $(ENABLE_SVG_USE) $(ENABLE_VIDEO) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WML) $(ENABLE_WORKERS) $(ENABLE_XHTMLMP) $(ENABLE_XPATH) $(ENABLE_XSLT);
diff --git a/Source/WebKit/mac/Configurations/Version.xcconfig b/Source/WebKit/mac/Configurations/Version.xcconfig
index f0d3c1f..e74bd18 100644
--- a/Source/WebKit/mac/Configurations/Version.xcconfig
+++ b/Source/WebKit/mac/Configurations/Version.xcconfig
@@ -22,7 +22,7 @@
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
MAJOR_VERSION = 534;
-MINOR_VERSION = 16;
+MINOR_VERSION = 20;
TINY_VERSION = 0;
FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION);
diff --git a/Source/WebKit/mac/ForwardingHeaders/pcre/pcre.h b/Source/WebKit/mac/ForwardingHeaders/pcre/pcre.h
deleted file mode 100644
index 47c0d3d..0000000
--- a/Source/WebKit/mac/ForwardingHeaders/pcre/pcre.h
+++ /dev/null
@@ -1 +0,0 @@
-#include <JavaScriptCore/pcre.h>
diff --git a/Source/WebKit/mac/Misc/WebCoreStatistics.mm b/Source/WebKit/mac/Misc/WebCoreStatistics.mm
index 5d96c95..c3c3687 100644
--- a/Source/WebKit/mac/Misc/WebCoreStatistics.mm
+++ b/Source/WebKit/mac/Misc/WebCoreStatistics.mm
@@ -86,7 +86,7 @@ using namespace WebCore;
NSCountedSet *result = [NSCountedSet set];
- OwnPtr<HashCountedSet<const char*> > counts(JSDOMWindow::commonJSGlobalData()->heap.protectedObjectTypeCounts());
+ OwnPtr<TypeCountSet> counts(JSDOMWindow::commonJSGlobalData()->heap.protectedObjectTypeCounts());
HashCountedSet<const char*>::iterator end = counts->end();
for (HashCountedSet<const char*>::iterator it = counts->begin(); it != end; ++it)
for (unsigned i = 0; i < it->second; ++i)
@@ -101,7 +101,7 @@ using namespace WebCore;
NSCountedSet *result = [NSCountedSet set];
- OwnPtr<HashCountedSet<const char*> > counts(JSDOMWindow::commonJSGlobalData()->heap.objectTypeCounts());
+ OwnPtr<TypeCountSet> counts(JSDOMWindow::commonJSGlobalData()->heap.objectTypeCounts());
HashCountedSet<const char*>::iterator end = counts->end();
for (HashCountedSet<const char*>::iterator it = counts->begin(); it != end; ++it)
for (unsigned i = 0; i < it->second; ++i)
@@ -197,15 +197,16 @@ using namespace WebCore;
WTF::FastMallocStatistics fastMallocStatistics = WTF::fastMallocStatistics();
JSLock lock(SilenceAssertionsOnly);
- MarkedSpace::Statistics heapMemoryStats = heapStatistics(JSDOMWindow::commonJSGlobalData());
+ size_t heapSize = JSDOMWindow::commonJSGlobalData()->heap.size();
+ size_t heapFree = JSDOMWindow::commonJSGlobalData()->heap.capacity() - heapSize;
GlobalMemoryStatistics globalMemoryStats = globalMemoryStatistics();
return [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInt:fastMallocStatistics.reservedVMBytes], @"FastMallocReservedVMBytes",
[NSNumber numberWithInt:fastMallocStatistics.committedVMBytes], @"FastMallocCommittedVMBytes",
[NSNumber numberWithInt:fastMallocStatistics.freeListBytes], @"FastMallocFreeListBytes",
- [NSNumber numberWithInt:heapMemoryStats.size], @"JavaScriptHeapSize",
- [NSNumber numberWithInt:heapMemoryStats.free], @"JavaScriptFreeSize",
+ [NSNumber numberWithInt:heapSize], @"JavaScriptHeapSize",
+ [NSNumber numberWithInt:heapFree], @"JavaScriptFreeSize",
[NSNumber numberWithUnsignedInt:(unsigned int)globalMemoryStats.stackBytes], @"JavaScriptStackSize",
[NSNumber numberWithUnsignedInt:(unsigned int)globalMemoryStats.JITBytes], @"JavaScriptJITSize",
nil];
diff --git a/Source/WebKit/mac/Misc/WebIconDatabase.mm b/Source/WebKit/mac/Misc/WebIconDatabase.mm
index 7d0a350..14ef037 100644
--- a/Source/WebKit/mac/Misc/WebIconDatabase.mm
+++ b/Source/WebKit/mac/Misc/WebIconDatabase.mm
@@ -590,24 +590,6 @@ bool importToWebCoreFormat()
[ThreadEnabler enableThreading];
ASSERT([NSThread isMultiThreaded]);
-#ifndef BUILDING_ON_TIGER
- // Tell backup software (i.e., Time Machine) to never back up the icon database, because
- // it's a large file that changes frequently, thus using a lot of backup disk space, and
- // it's unlikely that many users would be upset about it not being backed up. We do this
- // here because this code is only executed once for each icon database instance. We could
- // make this configurable on a per-client basis someday if that seemed useful.
- // See <rdar://problem/5320208>.
- // FIXME: This has nothing to do with importing from the old to the new database format and should be moved elsewhere,
- // especially because we might eventually delete all of this legacy importing code and we shouldn't delete this.
- CFStringRef databasePath = iconDatabase()->databasePath().createCFString();
- if (databasePath) {
- CFURLRef databasePathURL = CFURLCreateWithFileSystemPath(0, databasePath, kCFURLPOSIXPathStyle, FALSE);
- CFRelease(databasePath);
- CSBackupSetItemExcluded(databasePathURL, true, true);
- CFRelease(databasePathURL);
- }
-#endif
-
// Get the directory the old icon database *should* be in
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *databaseDirectory = [defaults objectForKey:WebIconDatabaseImportDirectoryDefaultsKey];
diff --git a/Source/WebKit/mac/Plugins/Hosted/WebHostedNetscapePluginView.mm b/Source/WebKit/mac/Plugins/Hosted/WebHostedNetscapePluginView.mm
index c3ee98b..d3cce46 100644
--- a/Source/WebKit/mac/Plugins/Hosted/WebHostedNetscapePluginView.mm
+++ b/Source/WebKit/mac/Plugins/Hosted/WebHostedNetscapePluginView.mm
@@ -209,7 +209,6 @@ extern "C" {
_proxy->resize(boundsInWindow, visibleRectInWindow);
- CGRect layerBounds = NSRectToCGRect(boundsInWindow);
CGRect bounds = NSRectToCGRect([self bounds]);
CGRect frame = NSRectToCGRect([self frame]);
diff --git a/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h b/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h
index 05db524..dda0bb1 100644
--- a/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h
+++ b/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h
@@ -152,8 +152,6 @@ public:
virtual void formDidFocus(const WebCore::Node*);
virtual void formDidBlur(const WebCore::Node*);
- virtual PassOwnPtr<WebCore::HTMLParserQuirks> createHTMLParserQuirks() { return 0; }
-
#if USE(ACCELERATED_COMPOSITING)
virtual void attachRootGraphicsLayer(WebCore::Frame*, WebCore::GraphicsLayer*);
virtual void setNeedsOneShotDrawingSynchronization();
@@ -179,6 +177,7 @@ public:
virtual void cancelGeolocationPermissionRequestForFrame(WebCore::Frame*, WebCore::Geolocation*) { }
virtual bool selectItemWritingDirectionIsNatural();
+ virtual bool selectItemAlignmentFollowsMenuWritingDirection();
virtual PassRefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::PopupMenuClient*) const;
virtual PassRefPtr<WebCore::SearchPopupMenu> createSearchPopupMenu(WebCore::PopupMenuClient*) const;
diff --git a/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm b/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm
index 74c513d..0e7e2f2 100644
--- a/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm
+++ b/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm
@@ -80,6 +80,10 @@
#import "NetscapePluginHostManager.h"
#endif
+@interface NSApplication (WebNSApplicationDetails)
+- (NSCursor *)_cursorRectCursor;
+@end
+
@interface NSView (WebNSViewDetails)
- (NSView *)_findLastViewInKeyViewLoop;
@end
@@ -678,6 +682,9 @@ void WebChromeClient::chooseIconForFiles(const Vector<String>& filenames, FileCh
void WebChromeClient::setCursor(const WebCore::Cursor& cursor)
{
+ if ([NSApp _cursorRectCursor])
+ return;
+
NSCursor *platformCursor = cursor.platformCursor();
if ([NSCursor currentCursor] == platformCursor)
return;
@@ -742,7 +749,20 @@ void WebChromeClient::formDidBlur(const WebCore::Node* node)
bool WebChromeClient::selectItemWritingDirectionIsNatural()
{
+#if !defined(BUILDING_ON_TIGER) && !defined(BUILDING_ON_LEOPARD)
+ return false;
+#else
+ return true;
+#endif
+}
+
+bool WebChromeClient::selectItemAlignmentFollowsMenuWritingDirection()
+{
+#if !defined(BUILDING_ON_TIGER) && !defined(BUILDING_ON_LEOPARD)
return true;
+#else
+ return false;
+#endif
}
PassRefPtr<WebCore::PopupMenu> WebChromeClient::createPopupMenu(WebCore::PopupMenuClient* client) const
diff --git a/Source/WebKit/mac/WebCoreSupport/WebDragClient.h b/Source/WebKit/mac/WebCoreSupport/WebDragClient.h
index 216a2fb..34a5c2e 100644
--- a/Source/WebKit/mac/WebCoreSupport/WebDragClient.h
+++ b/Source/WebKit/mac/WebCoreSupport/WebDragClient.h
@@ -36,7 +36,6 @@ public:
virtual void dragControllerDestroyed();
virtual WebCore::DragSourceAction dragSourceActionMaskForPoint(const WebCore::IntPoint& windowPoint);
virtual void startDrag(WebCore::DragImageRef dragImage, const WebCore::IntPoint& dragPos, const WebCore::IntPoint& eventPos, WebCore::Clipboard*, WebCore::Frame*, bool linkDrag);
- virtual WebCore::DragImageRef createDragImageForLink(WebCore::KURL& url, const WTF::String& label, WebCore::Frame*);
virtual void declareAndWriteDragImage(NSPasteboard*, DOMElement*, NSURL*, NSString*, WebCore::Frame*);
private:
WebView* m_webView;
diff --git a/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm b/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm
index b3af658..5a7d597 100644
--- a/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm
+++ b/Source/WebKit/mac/WebCoreSupport/WebDragClient.mm
@@ -51,18 +51,6 @@
using namespace WebCore;
-const float DragLabelBorderX = 4;
-//Keep border_y in synch with DragController::LinkDragBorderInset
-const float DragLabelBorderY = 2;
-const float DragLabelRadius = 5;
-const float LabelBorderYOffset = 2;
-
-const float MinDragLabelWidthBeforeClip = 120;
-const float MaxDragLabelWidth = 320;
-
-const float DragLinkLabelFontsize = 11;
-const float DragLinkUrlFontSize = 10;
-
WebDragClient::WebDragClient(WebView* webView)
: m_webView(webView)
{
@@ -132,87 +120,6 @@ void WebDragClient::startDrag(DragImageRef dragImage, const IntPoint& at, const
[topHTMLView dragImage:dragNSImage at:at offset:NSZeroSize event:event pasteboard:pasteboard source:sourceHTMLView slideBack:YES];
}
-DragImageRef WebDragClient::createDragImageForLink(KURL& url, const String& title, Frame* frame)
-{
- if (!frame)
- return nil;
- NSString *label = 0;
- if (!title.isEmpty())
- label = title;
- NSURL *cocoaURL = url;
- NSString *urlString = [cocoaURL _web_userVisibleString];
-
- BOOL drawURLString = YES;
- BOOL clipURLString = NO;
- BOOL clipLabelString = NO;
-
- if (!label) {
- drawURLString = NO;
- label = urlString;
- }
-
- NSFont *labelFont = [[NSFontManager sharedFontManager] convertFont:[NSFont systemFontOfSize:DragLinkLabelFontsize]
- toHaveTrait:NSBoldFontMask];
- NSFont *urlFont = [NSFont systemFontOfSize:DragLinkUrlFontSize];
- NSSize labelSize;
- labelSize.width = [label _web_widthWithFont: labelFont];
- labelSize.height = [labelFont ascender] - [labelFont descender];
- if (labelSize.width > MaxDragLabelWidth){
- labelSize.width = MaxDragLabelWidth;
- clipLabelString = YES;
- }
-
- NSSize imageSize;
- imageSize.width = labelSize.width + DragLabelBorderX * 2;
- imageSize.height = labelSize.height + DragLabelBorderY * 2;
- if (drawURLString) {
- NSSize urlStringSize;
- urlStringSize.width = [urlString _web_widthWithFont: urlFont];
- urlStringSize.height = [urlFont ascender] - [urlFont descender];
- imageSize.height += urlStringSize.height;
- if (urlStringSize.width > MaxDragLabelWidth) {
- imageSize.width = max(MaxDragLabelWidth + DragLabelBorderY * 2, MinDragLabelWidthBeforeClip);
- clipURLString = YES;
- } else
- imageSize.width = max(labelSize.width + DragLabelBorderX * 2, urlStringSize.width + DragLabelBorderX * 2);
- }
- NSImage *dragImage = [[[NSImage alloc] initWithSize: imageSize] autorelease];
- [dragImage lockFocus];
-
- [[NSColor colorWithDeviceRed: 0.7f green: 0.7f blue: 0.7f alpha: 0.8f] set];
-
- // Drag a rectangle with rounded corners
- NSBezierPath *path = [NSBezierPath bezierPath];
- [path appendBezierPathWithOvalInRect: NSMakeRect(0, 0, DragLabelRadius * 2, DragLabelRadius * 2)];
- [path appendBezierPathWithOvalInRect: NSMakeRect(0, imageSize.height - DragLabelRadius * 2, DragLabelRadius * 2, DragLabelRadius * 2)];
- [path appendBezierPathWithOvalInRect: NSMakeRect(imageSize.width - DragLabelRadius * 2, imageSize.height - DragLabelRadius * 2, DragLabelRadius * 2, DragLabelRadius * 2)];
- [path appendBezierPathWithOvalInRect: NSMakeRect(imageSize.width - DragLabelRadius * 2, 0, DragLabelRadius * 2, DragLabelRadius * 2)];
-
- [path appendBezierPathWithRect: NSMakeRect(DragLabelRadius, 0, imageSize.width - DragLabelRadius * 2, imageSize.height)];
- [path appendBezierPathWithRect: NSMakeRect(0, DragLabelRadius, DragLabelRadius + 10, imageSize.height - 2 * DragLabelRadius)];
- [path appendBezierPathWithRect: NSMakeRect(imageSize.width - DragLabelRadius - 20, DragLabelRadius, DragLabelRadius + 20, imageSize.height - 2 * DragLabelRadius)];
- [path fill];
-
- NSColor *topColor = [NSColor colorWithDeviceWhite:0.0f alpha:0.75f];
- NSColor *bottomColor = [NSColor colorWithDeviceWhite:1.0f alpha:0.5f];
- if (drawURLString) {
- if (clipURLString)
- urlString = [WebStringTruncator centerTruncateString: urlString toWidth:imageSize.width - (DragLabelBorderX * 2) withFont:urlFont];
-
- [urlString _web_drawDoubledAtPoint:NSMakePoint(DragLabelBorderX, DragLabelBorderY - [urlFont descender])
- withTopColor:topColor bottomColor:bottomColor font:urlFont];
- }
-
- if (clipLabelString)
- label = [WebStringTruncator rightTruncateString: label toWidth:imageSize.width - (DragLabelBorderX * 2) withFont:labelFont];
- [label _web_drawDoubledAtPoint:NSMakePoint (DragLabelBorderX, imageSize.height - LabelBorderYOffset - [labelFont pointSize])
- withTopColor:topColor bottomColor:bottomColor font:labelFont];
-
- [dragImage unlockFocus];
-
- return dragImage;
-}
-
void WebDragClient::declareAndWriteDragImage(NSPasteboard* pasteboard, DOMElement* element, NSURL* URL, NSString* title, WebCore::Frame* frame)
{
ASSERT(pasteboard);
diff --git a/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h b/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h
index 9de4246..f29ba72 100644
--- a/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h
+++ b/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h
@@ -156,7 +156,7 @@ private:
virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
- virtual void didRunInsecureContent(WebCore::SecurityOrigin*);
+ virtual void didRunInsecureContent(WebCore::SecurityOrigin*, const WebCore::KURL&);
virtual WebCore::ResourceError cancelledError(const WebCore::ResourceRequest&);
virtual WebCore::ResourceError blockedError(const WebCore::ResourceRequest&);
diff --git a/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm b/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
index f3cdff6..6484584 100644
--- a/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
+++ b/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
@@ -957,7 +957,7 @@ void WebFrameLoaderClient::didDisplayInsecureContent()
CallFrameLoadDelegate(implementations->didDisplayInsecureContentFunc, webView, @selector(webViewDidDisplayInsecureContent:));
}
-void WebFrameLoaderClient::didRunInsecureContent(SecurityOrigin* origin)
+void WebFrameLoaderClient::didRunInsecureContent(SecurityOrigin* origin, const KURL& insecureURL)
{
RetainPtr<WebSecurityOrigin> webSecurityOrigin(AdoptNS, [[WebSecurityOrigin alloc] _initWithWebCoreSecurityOrigin:origin]);
diff --git a/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.h b/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.h
index 75a3cc6..108c2cc 100644
--- a/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.h
+++ b/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.h
@@ -30,6 +30,7 @@
#import <WebCore/InspectorFrontendClientLocal.h>
#import <WebCore/PlatformString.h>
+#import <wtf/Forward.h>
#import <wtf/RetainPtr.h>
#ifdef __OBJC__
@@ -59,14 +60,16 @@ public:
virtual void highlight(WebCore::Node*);
virtual void hideHighlight();
- virtual void populateSetting(const WTF::String& key, WTF::String* value);
- virtual void storeSetting(const WTF::String& key, const WTF::String& value);
-
virtual bool sendMessageToFrontend(const WTF::String&);
+ bool inspectorStartsAttached();
+ void setInspectorStartsAttached(bool);
+
void releaseFrontendPage();
private:
+ WTF::PassOwnPtr<WebCore::InspectorFrontendClientLocal::Settings> createFrontendSettings();
+
WebView *m_webView;
RetainPtr<WebNodeHighlighter> m_highlighter;
WebCore::Page* m_frontendPage;
@@ -75,7 +78,7 @@ private:
class WebInspectorFrontendClient : public WebCore::InspectorFrontendClientLocal {
public:
- WebInspectorFrontendClient(WebView*, WebInspectorWindowController*, WebCore::InspectorController*, WebCore::Page*);
+ WebInspectorFrontendClient(WebView*, WebInspectorWindowController*, WebCore::InspectorController*, WebCore::Page*, WTF::PassOwnPtr<Settings>);
virtual void frontendLoaded();
diff --git a/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.mm b/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.mm
index 5beedcf..d47784f 100644
--- a/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.mm
+++ b/Source/WebKit/mac/WebCoreSupport/WebInspectorClient.mm
@@ -102,7 +102,7 @@ void WebInspectorClient::openInspectorFrontend(InspectorController* inspectorCon
[windowController.get() setInspectorClient:this];
m_frontendPage = core([windowController.get() webView]);
- WebInspectorFrontendClient* frontendClient = new WebInspectorFrontendClient(m_webView, windowController.get(), inspectorController, m_frontendPage);
+ WebInspectorFrontendClient* frontendClient = new WebInspectorFrontendClient(m_webView, windowController.get(), inspectorController, m_frontendPage, createFrontendSettings());
m_frontendPage->inspectorController()->setInspectorFrontendClient(frontendClient);
[[m_webView inspector] setFrontend:[[WebInspectorFrontend alloc] initWithFrontendClient:frontendClient]];
@@ -118,8 +118,8 @@ void WebInspectorClient::hideHighlight()
[m_highlighter.get() hideHighlight];
}
-WebInspectorFrontendClient::WebInspectorFrontendClient(WebView* inspectedWebView, WebInspectorWindowController* windowController, InspectorController* inspectorController, Page* frontendPage)
- : InspectorFrontendClientLocal(inspectorController, frontendPage)
+WebInspectorFrontendClient::WebInspectorFrontendClient(WebView* inspectedWebView, WebInspectorWindowController* windowController, InspectorController* inspectorController, Page* frontendPage, WTF::PassOwnPtr<Settings> settings)
+ : InspectorFrontendClientLocal(inspectorController, frontendPage, settings)
, m_inspectedWebView(inspectedWebView)
, m_windowController(windowController)
{
@@ -355,9 +355,7 @@ void WebInspectorFrontendClient::updateWindowTitle() const
_visible = YES;
- // If no preference is set - default to an attached window. This is important for inspector LayoutTests.
- // FIXME: This flag can be fetched directly from the flags storage.
- _shouldAttach = [_inspectedWebView page]->inspectorController()->inspectorStartsAttached();
+ _shouldAttach = _inspectorClient->inspectorStartsAttached();
if (_shouldAttach && !_frontendClient->canAttachWindow())
_shouldAttach = NO;
@@ -392,8 +390,7 @@ void WebInspectorFrontendClient::updateWindowTitle() const
if (_attachedToInspectedWebView)
return;
- // FIXME: This flag can be saved directly to the flags storage.
- [_inspectedWebView page]->inspectorController()->setInspectorStartsAttached(true);
+ _inspectorClient->setInspectorStartsAttached(true);
[self close];
[self showWindow:nil];
@@ -404,8 +401,7 @@ void WebInspectorFrontendClient::updateWindowTitle() const
if (!_attachedToInspectedWebView)
return;
- // FIXME: This flag can be saved to the flags storage directly.
- [_inspectedWebView page]->inspectorController()->setInspectorStartsAttached(false);
+ _inspectorClient->setInspectorStartsAttached(false);
[self close];
[self showWindow:nil];
diff --git a/Source/WebKit/mac/WebCoreSupport/WebSystemInterface.mm b/Source/WebKit/mac/WebCoreSupport/WebSystemInterface.mm
index 70767ee..c39576b 100644
--- a/Source/WebKit/mac/WebCoreSupport/WebSystemInterface.mm
+++ b/Source/WebKit/mac/WebCoreSupport/WebSystemInterface.mm
@@ -60,6 +60,7 @@ void InitWebCoreSystemInterface(void)
INIT(GetFontInLanguageForCharacter);
INIT(GetFontInLanguageForRange);
INIT(GetGlyphTransformedAdvances);
+ INIT(GetHTTPPipeliningPriority);
INIT(GetMIMETypeForExtension);
INIT(GetNSURLResponseLastModifiedDate);
INIT(GetPreferredExtensionForMIMEType);
@@ -75,6 +76,7 @@ void InitWebCoreSystemInterface(void)
INIT(SetCONNECTProxyForStream);
INIT(SetCookieStoragePrivateBrowsingEnabled);
INIT(SetDragImage);
+ INIT(SetHTTPPipeliningPriority);
INIT(SetNSURLConnectionDefersCallbacks);
INIT(SetNSURLRequestShouldContentSniff);
INIT(SetPatternBaseCTM);
@@ -120,12 +122,50 @@ void InitWebCoreSystemInterface(void)
INIT(CreateCTLineWithUniCharProvider);
#if !defined(BUILDING_ON_TIGER) && !defined(BUILDING_ON_LEOPARD) && !defined(BUILDING_ON_SNOW_LEOPARD)
- INIT(CreateCTTypesetterWithUniCharProviderAndOptions);
INIT(IOSurfaceContextCreate);
INIT(IOSurfaceContextCreateImage);
+ INIT(CreateCTTypesetterWithUniCharProviderAndOptions);
INIT(MakeScrollbarPainter);
+ INIT(ScrollbarPainterSetDelegate);
INIT(ScrollbarPainterPaint);
+ INIT(ScrollbarThickness);
+ INIT(ScrollbarMinimumThumbLength);
+ INIT(ScrollbarMinimumTotalLengthNeededForThumb);
+ INIT(ScrollbarPainterKnobAlpha);
+ INIT(SetScrollbarPainterKnobAlpha);
+ INIT(ScrollbarPainterTrackAlpha);
+ INIT(SetScrollbarPainterTrackAlpha);
+ INIT(ScrollbarPainterIsHorizontal);
+ INIT(ScrollbarPainterSetOverlayState);
+ INIT(MakeScrollbarPainterController);
+ INIT(MakeScrollbarReplacementPainter);
+ INIT(SetPainterForPainterController);
+ INIT(VerticalScrollbarPainterForController);
+ INIT(HorizontalScrollbarPainterForController);
+ INIT(SetScrollbarPainterControllerStyle);
+ INIT(ContentAreaScrolled);
+ INIT(ContentAreaWillPaint);
+ INIT(MouseEnteredContentArea);
+ INIT(MouseExitedContentArea);
+ INIT(MouseMovedInContentArea);
+ INIT(WillStartLiveResize);
+ INIT(ContentAreaResized);
+ INIT(WillEndLiveResize);
+ INIT(ContentAreaDidShow);
+ INIT(ContentAreaDidHide);
+ INIT(ScrollbarPainterUsesOverlayScrollers);
#endif
+ INIT(GetAXTextMarkerTypeID);
+ INIT(GetAXTextMarkerRangeTypeID);
+ INIT(CreateAXTextMarker);
+ INIT(GetBytesFromAXTextMarker);
+ INIT(CreateAXTextMarkerRange);
+ INIT(CopyAXTextMarkerRangeStart);
+ INIT(CopyAXTextMarkerRangeEnd);
+ INIT(AccessibilityHandleFocusChanged);
+ INIT(CreateAXUIElementRef);
+ INIT(UnregisterUniqueIdForElement);
+
didInit = true;
}
diff --git a/Source/WebKit/mac/WebInspector/WebInspector.mm b/Source/WebKit/mac/WebInspector/WebInspector.mm
index 8ab049f..f38c7ef 100644
--- a/Source/WebKit/mac/WebInspector/WebInspector.mm
+++ b/Source/WebKit/mac/WebInspector/WebInspector.mm
@@ -68,7 +68,7 @@ using namespace WebCore;
- (void)showConsole:(id)sender
{
if (Page* page = core(_webView))
- page->inspectorController()->showPanel(InspectorController::ConsolePanel);
+ page->inspectorController()->showConsole();
}
- (void)showTimeline:(id)sender
@@ -132,7 +132,6 @@ using namespace WebCore;
if (!page)
return;
page->inspectorController()->stopUserInitiatedProfiling();
- page->inspectorController()->showPanel(InspectorController::ProfilesPanel);
}
- (BOOL)isJavaScriptProfilingEnabled
@@ -157,7 +156,7 @@ using namespace WebCore;
- (BOOL)isTimelineProfilingEnabled
{
if (Page* page = core(_webView))
- return page->inspectorController()->timelineAgent() ? YES : NO;
+ return page->inspectorController()->timelineProfilerEnabled() ? YES : NO;
return NO;
}
diff --git a/Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm b/Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
index b8edef8..610cd40 100644
--- a/Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
+++ b/Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
@@ -568,7 +568,7 @@ static const unsigned cMaxUpdateScrollbarsPass = 2;
return YES;
}
-- (void)setScrollOrigin:(NSPoint)scrollOrigin updatePosition:(BOOL)updatePosition
+- (void)setScrollOrigin:(NSPoint)scrollOrigin updatePositionAtAll:(BOOL)updatePositionAtAll immediately:(BOOL)updatePositionSynchronously
{
// The cross-platform ScrollView call already checked to see if the old/new scroll origins were the same or not
// so we don't have to check for equivalence here.
@@ -579,12 +579,13 @@ static const unsigned cMaxUpdateScrollbarsPass = 2;
[docView setBoundsOrigin:NSMakePoint(-scrollOrigin.x, -scrollOrigin.y)];
- _private->scrollOriginChanged = true;
+ if (updatePositionAtAll)
+ _private->scrollOriginChanged = true;
// Maintain our original position in the presence of the new scroll origin.
_private->scrollPositionExcludingOrigin = NSMakePoint(visibleRect.origin.x + scrollOrigin.x, visibleRect.origin.y + scrollOrigin.y);
- if (updatePosition) // Otherwise we'll just let the snap happen when we update for the resize.
+ if (updatePositionAtAll && updatePositionSynchronously) // Otherwise we'll just let the snap happen when we update for the resize.
[self adjustForScrollOriginChange];
}
diff --git a/Source/WebKit/mac/WebView/WebFrame.mm b/Source/WebKit/mac/WebView/WebFrame.mm
index 154156a..4d1c752 100644
--- a/Source/WebKit/mac/WebView/WebFrame.mm
+++ b/Source/WebKit/mac/WebView/WebFrame.mm
@@ -587,16 +587,11 @@ static inline WebDataSource *dataSource(DocumentLoader* loader)
}
// Used by pagination code called from AppKit when a standalone web page is printed.
-- (NSArray*)_computePageRectsWithPrintWidthScaleFactor:(float)printWidthScaleFactor printHeight:(float)printHeight
+- (NSArray*)_computePageRectsWithPrintScaleFactor:(float)printScaleFactor pageSize:(NSSize)pageSize
{
NSMutableArray* pages = [NSMutableArray arrayWithCapacity:5];
- if (printWidthScaleFactor <= 0) {
- LOG_ERROR("printWidthScaleFactor has bad value %.2f", printWidthScaleFactor);
- return pages;
- }
-
- if (printHeight <= 0) {
- LOG_ERROR("printHeight has bad value %.2f", printHeight);
+ if (printScaleFactor <= 0) {
+ LOG_ERROR("printScaleFactor has bad value %.2f", printScaleFactor);
return pages;
}
@@ -612,8 +607,11 @@ static inline WebDataSource *dataSource(DocumentLoader* loader)
if (!documentView)
return pages;
- float docWidth = root->layer()->width();
- float printWidth = docWidth / printWidthScaleFactor;
+ float docWidth = root->docWidth();
+ float docHeight = root->docHeight();
+
+ float printWidth = root->style()->isHorizontalWritingMode() ? docWidth / printScaleFactor : pageSize.width;
+ float printHeight = root->style()->isHorizontalWritingMode() ? pageSize.height : docHeight / printScaleFactor;
PrintContext printContext(_private->coreFrame);
printContext.computePageRectsWithPageSize(FloatSize(printWidth, printHeight), true);
@@ -915,7 +913,7 @@ static inline WebDataSource *dataSource(DocumentLoader* loader)
- (BOOL)_canProvideDocumentSource
{
Frame* frame = _private->coreFrame;
- String mimeType = frame->loader()->writer()->mimeType();
+ String mimeType = frame->document()->loader()->writer()->mimeType();
PluginData* pluginData = frame->page() ? frame->page()->pluginData() : 0;
if (WebCore::DOMImplementation::isTextMIMEType(mimeType) ||
diff --git a/Source/WebKit/mac/WebView/WebFrameInternal.h b/Source/WebKit/mac/WebView/WebFrameInternal.h
index 7ff5e75..83870ec 100644
--- a/Source/WebKit/mac/WebView/WebFrameInternal.h
+++ b/Source/WebKit/mac/WebView/WebFrameInternal.h
@@ -124,7 +124,7 @@ WebView *getWebView(WebFrame *webFrame);
- (BOOL)_needsLayout;
- (void)_drawRect:(NSRect)rect contentsOnly:(BOOL)contentsOnly;
- (BOOL)_getVisibleRect:(NSRect*)rect;
-- (NSArray*)_computePageRectsWithPrintWidthScaleFactor:(float)printWidthScaleFactor printHeight:(float)printHeight;
+- (NSArray*)_computePageRectsWithPrintScaleFactor:(float)printWidthScaleFactor pageSize:(NSSize)pageSize;
- (NSString *)_stringByEvaluatingJavaScriptFromString:(NSString *)string;
- (NSString *)_stringByEvaluatingJavaScriptFromString:(NSString *)string forceUserGesture:(BOOL)forceUserGesture;
diff --git a/Source/WebKit/mac/WebView/WebFullScreenController.mm b/Source/WebKit/mac/WebView/WebFullScreenController.mm
index 6529435..5b8b496 100644
--- a/Source/WebKit/mac/WebView/WebFullScreenController.mm
+++ b/Source/WebKit/mac/WebView/WebFullScreenController.mm
@@ -397,7 +397,6 @@ private:
[[self window] setCollectionBehavior:behavior];
NSView* animationView = [[self _fullscreenWindow] animationView];
- NSRect viewBounds = [animationView bounds];
NSRect backgroundBounds = {[[self window] convertScreenToBase:screenFrame.origin], screenFrame.size};
backgroundBounds = [animationView convertRectFromBase:backgroundBounds];
@@ -462,8 +461,7 @@ private:
CATransform3D moveTransform = CATransform3DMakeTranslation(_initialFrame.origin.x - shrunkDestinationFrame.origin.x, _initialFrame.origin.y - shrunkDestinationFrame.origin.y, 0);
CATransform3D finalTransform = CATransform3DConcat(shrinkTransform, moveTransform);
[rendererLayer setTransform:finalTransform];
- CGRect translatedDestinationFrame = [rendererLayer convertRect:destinationFrame toLayer:[animationView layer]];
-
+
CALayer* backgroundLayer = [[self _fullscreenWindow] backgroundLayer];
// Start the opacity animation. We can use implicit animations here because we don't care when
@@ -600,10 +598,9 @@ private:
CATransform3D moveTransform = CATransform3DMakeTranslation(layerEndFrame.origin.x - shrunkDestinationFrame.origin.x, layerEndFrame.origin.y - shrunkDestinationFrame.origin.y, 0);
CATransform3D finalTransform = CATransform3DConcat(shrinkTransform, moveTransform);
[rendererLayer setTransform:finalTransform];
- CGRect translatedDestinationFrame = [rendererLayer convertRect:layerStartFrame toLayer:[animationView layer]];
-
+
CFTimeInterval duration = [self _animationDuration];
-
+
CALayer* backgroundLayer = [[self _fullscreenWindow] backgroundLayer];
[CATransaction begin];
[CATransaction setAnimationDuration:duration];
diff --git a/Source/WebKit/mac/WebView/WebHTMLView.mm b/Source/WebKit/mac/WebView/WebHTMLView.mm
index ec5ff51..ff1c400 100644
--- a/Source/WebKit/mac/WebView/WebHTMLView.mm
+++ b/Source/WebKit/mac/WebView/WebHTMLView.mm
@@ -104,6 +104,7 @@
#import <WebCore/PlatformKeyboardEvent.h>
#import <WebCore/Range.h>
#import <WebCore/RenderWidget.h>
+#import <WebCore/RenderView.h>
#import <WebCore/RuntimeApplicationChecks.h>
#import <WebCore/SelectionController.h>
#import <WebCore/SharedBuffer.h>
@@ -311,7 +312,7 @@ static void setNeedsDisplayInRect(NSView *self, SEL cmd, NSRect invalidRect)
NSRect invalidRectInWebFrameViewCoordinates = [enclosingWebFrameView convertRect:invalidRect fromView:self];
IntRect invalidRectInFrameViewCoordinates(invalidRectInWebFrameViewCoordinates);
if (![enclosingWebFrameView isFlipped])
- invalidRectInFrameViewCoordinates.setY(frameView->frameRect().size().height() - invalidRectInFrameViewCoordinates.bottom());
+ invalidRectInFrameViewCoordinates.setY(frameView->frameRect().size().height() - invalidRectInFrameViewCoordinates.maxY());
frameView->invalidateRect(invalidRectInFrameViewCoordinates);
}
@@ -347,16 +348,6 @@ const float _WebHTMLViewPrintingMinimumShrinkFactor = 1.25;
// behavior matches MacIE and Mozilla, at least)
const float _WebHTMLViewPrintingMaximumShrinkFactor = 2;
-// This number determines how short the last printed page of a multi-page print session
-// can be before we try to shrink the scale in order to reduce the number of pages, and
-// thus eliminate the orphan.
-#define LastPrintedPageOrphanRatio 0.1f
-
-// This number determines the amount the scale factor is adjusted to try to eliminate orphans.
-// It has no direct mathematical relationship to LastPrintedPageOrphanRatio, due to variable
-// numbers of pages, logic to avoid breaking elements, and CSS-supplied hard page breaks.
-#define PrintingOrphanShrinkAdjustment 1.1f
-
#define AUTOSCROLL_INTERVAL 0.1f
// Any non-zero value will do, but using something recognizable might help us debug some day.
@@ -438,7 +429,7 @@ static CachedResourceClient* promisedDataClient()
#endif
@interface WebHTMLView (WebForwardDeclaration) // FIXME: Put this in a normal category and stop doing the forward declaration trick.
-- (void)_setPrinting:(BOOL)printing minimumPageWidth:(float)minPageWidth height:(float)minPageHeight maximumPageWidth:(float)maxPageWidth adjustViewSize:(BOOL)adjustViewSize paginateScreenContent:(BOOL)paginateScreenContent;
+- (void)_setPrinting:(BOOL)printing minimumPageLogicalWidth:(float)minPageWidth logicalHeight:(float)minPageHeight maximumPageLogicalWidth:(float)maxPageWidth adjustViewSize:(BOOL)adjustViewSize paginateScreenContent:(BOOL)paginateScreenContent;
@end
@class NSTextInputContext;
@@ -482,7 +473,6 @@ struct WebHTMLViewInterpretKeyEventsParameters {
BOOL closed;
BOOL ignoringMouseDraggedEvents;
BOOL printing;
- BOOL avoidingPrintOrphan;
BOOL paginateScreenContent;
BOOL observingMouseMovedNotifications;
BOOL observingSuperviewNotifications;
@@ -1091,7 +1081,7 @@ static NSURL* uniqueURLWithRelativePart(NSString *relativePart)
- (void)_web_setPrintingModeRecursive
{
- [self _setPrinting:YES minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:YES minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
#ifndef NDEBUG
_private->enumeratingSubviews = YES;
@@ -1103,7 +1093,7 @@ static NSURL* uniqueURLWithRelativePart(NSString *relativePart)
unsigned count = [descendantWebHTMLViews count];
for (unsigned i = 0; i < count; ++i)
- [[descendantWebHTMLViews objectAtIndex:i] _setPrinting:YES minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
+ [[descendantWebHTMLViews objectAtIndex:i] _setPrinting:YES minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
[descendantWebHTMLViews release];
@@ -1114,7 +1104,7 @@ static NSURL* uniqueURLWithRelativePart(NSString *relativePart)
- (void)_web_clearPrintingModeRecursive
{
- [self _setPrinting:NO minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:NO minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
#ifndef NDEBUG
_private->enumeratingSubviews = YES;
@@ -1126,7 +1116,7 @@ static NSURL* uniqueURLWithRelativePart(NSString *relativePart)
unsigned count = [descendantWebHTMLViews count];
for (unsigned i = 0; i < count; ++i)
- [[descendantWebHTMLViews objectAtIndex:i] _setPrinting:NO minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
+ [[descendantWebHTMLViews objectAtIndex:i] _setPrinting:NO minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
[descendantWebHTMLViews release];
@@ -1137,7 +1127,7 @@ static NSURL* uniqueURLWithRelativePart(NSString *relativePart)
- (void)_web_setPrintingModeRecursiveAndAdjustViewSize
{
- [self _setPrinting:YES minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:YES minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
#ifndef NDEBUG
_private->enumeratingSubviews = YES;
@@ -1149,7 +1139,7 @@ static NSURL* uniqueURLWithRelativePart(NSString *relativePart)
unsigned count = [descendantWebHTMLViews count];
for (unsigned i = 0; i < count; ++i)
- [[descendantWebHTMLViews objectAtIndex:i] _setPrinting:YES minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
+ [[descendantWebHTMLViews objectAtIndex:i] _setPrinting:YES minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
[descendantWebHTMLViews release];
@@ -2212,7 +2202,7 @@ static void _updateMouseoverTimerCallback(CFRunLoopTimerRef timer, void *info)
maximumPageWidth = 0;
}
- [self _setPrinting:YES minimumPageWidth:minimumPageWidth height:minimumPageHeight maximumPageWidth:maximumPageWidth adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:YES minimumPageLogicalWidth:minimumPageWidth logicalHeight:minimumPageHeight maximumPageLogicalWidth:maximumPageWidth adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
return YES;
}
@@ -2222,25 +2212,28 @@ static void _updateMouseoverTimerCallback(CFRunLoopTimerRef timer, void *info)
if (!frame)
return NO;
- float minLayoutWidth = 0;
- float minLayoutHeight = 0;
- float maxLayoutWidth = 0;
+ Document* document = frame->document();
+ bool isHorizontal = !document || !document->renderView() || document->renderView()->style()->isHorizontalWritingMode();
+
+ float minLayoutLogicalWidth = isHorizontal ? pageWidth : pageHeight;
+ float minLayoutLogicalHeight = isHorizontal ? pageHeight : pageWidth;
+ float maxLayoutLogicalWidth = minLayoutLogicalWidth;
// If we are a frameset just print with the layout we have onscreen, otherwise relayout
// according to the page width.
- if (!frame->document() || !frame->document()->isFrameSet()) {
- minLayoutWidth = shrinkToFit ? pageWidth * _WebHTMLViewPrintingMinimumShrinkFactor : pageWidth;
- minLayoutHeight = shrinkToFit ? pageHeight * _WebHTMLViewPrintingMinimumShrinkFactor : pageHeight;
- maxLayoutWidth = shrinkToFit ? pageWidth * _WebHTMLViewPrintingMaximumShrinkFactor : pageWidth;
+ if (shrinkToFit && (!frame->document() || !frame->document()->isFrameSet())) {
+ minLayoutLogicalWidth *= _WebHTMLViewPrintingMinimumShrinkFactor;
+ minLayoutLogicalHeight *= _WebHTMLViewPrintingMinimumShrinkFactor;
+ maxLayoutLogicalWidth *= _WebHTMLViewPrintingMaximumShrinkFactor;
}
- [self _setPrinting:YES minimumPageWidth:minLayoutWidth height:minLayoutHeight maximumPageWidth:maxLayoutWidth adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:YES minimumPageLogicalWidth:minLayoutLogicalWidth logicalHeight:minLayoutLogicalHeight maximumPageLogicalWidth:maxLayoutLogicalWidth adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
return YES;
}
- (void)_endPrintMode
{
- [self _setPrinting:NO minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:NO minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
}
- (BOOL)_isInScreenPaginationMode
@@ -2254,25 +2247,28 @@ static void _updateMouseoverTimerCallback(CFRunLoopTimerRef timer, void *info)
if (!frame)
return NO;
- CGFloat minLayoutWidth = 0;
- CGFloat minLayoutHeight = 0;
- CGFloat maxLayoutWidth = 0;
+ Document* document = frame->document();
+ bool isHorizontal = !document || !document->renderView() || document->renderView()->style()->isHorizontalWritingMode();
+
+ float minLayoutLogicalWidth = isHorizontal ? pageSize.width : pageSize.height;
+ float minLayoutLogicalHeight = isHorizontal ? pageSize.height : pageSize.width;
+ float maxLayoutLogicalWidth = minLayoutLogicalWidth;
- // If we are a frameset just print with the layout we have on the screen. Otherwise do a relayout
+ // If we are a frameset just print with the layout we have onscreen, otherwise relayout
// according to the page width.
- if (!frame->document() || !frame->document()->isFrameSet()) {
- minLayoutWidth = shrinkToFit ? pageSize.width * _WebHTMLViewPrintingMinimumShrinkFactor : pageSize.width;
- minLayoutHeight = shrinkToFit ? pageSize.height * _WebHTMLViewPrintingMinimumShrinkFactor : pageSize.height;
- maxLayoutWidth = shrinkToFit ? pageSize.width * _WebHTMLViewPrintingMaximumShrinkFactor : pageSize.width;
+ if (shrinkToFit && (!frame->document() || !frame->document()->isFrameSet())) {
+ minLayoutLogicalWidth *= _WebHTMLViewPrintingMinimumShrinkFactor;
+ minLayoutLogicalHeight *= _WebHTMLViewPrintingMinimumShrinkFactor;
+ maxLayoutLogicalWidth *= _WebHTMLViewPrintingMaximumShrinkFactor;
}
- [self _setPrinting:[self _isInPrintMode] minimumPageWidth:minLayoutWidth height:minLayoutHeight maximumPageWidth:maxLayoutWidth adjustViewSize:YES paginateScreenContent:YES];
+ [self _setPrinting:[self _isInPrintMode] minimumPageLogicalWidth:minLayoutLogicalWidth logicalHeight:minLayoutLogicalHeight maximumPageLogicalWidth:maxLayoutLogicalWidth adjustViewSize:YES paginateScreenContent:YES];
return YES;
}
- (void)_endScreenPaginationMode
{
- [self _setPrinting:[self _isInPrintMode] minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:YES paginateScreenContent:NO];
+ [self _setPrinting:[self _isInPrintMode] minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:YES paginateScreenContent:NO];
}
- (CGFloat)_adjustedBottomOfPageWithTop:(CGFloat)top bottom:(CGFloat)bottom limit:(CGFloat)bottomLimit
@@ -3128,7 +3124,7 @@ WEBCORE_COMMAND(yankAndSelect)
// Do a layout, but set up a new fixed width for the purposes of doing printing layout.
// minPageWidth==0 implies a non-printing layout
-- (void)layoutToMinimumPageWidth:(float)minPageWidth height:(float)minPageHeight maximumPageWidth:(float)maxPageWidth adjustingViewSize:(BOOL)adjustViewSize
+- (void)layoutToMinimumPageWidth:(float)minPageLogicalWidth height:(float)minPageLogicalHeight maximumPageWidth:(float)maxPageLogicalWidth adjustingViewSize:(BOOL)adjustViewSize
{
if (![self _needsLayout])
return;
@@ -3144,9 +3140,12 @@ WEBCORE_COMMAND(yankAndSelect)
return;
if (FrameView* coreView = coreFrame->view()) {
- if (minPageWidth > 0.0)
- coreView->forceLayoutForPagination(FloatSize(minPageWidth, minPageHeight), maxPageWidth / minPageWidth, adjustViewSize ? Frame::AdjustViewSize : Frame::DoNotAdjustViewSize);
- else {
+ if (minPageLogicalWidth > 0.0) {
+ FloatSize pageSize(minPageLogicalWidth, minPageLogicalHeight);
+ if (coreFrame->document() && coreFrame->document()->renderView() && !coreFrame->document()->renderView()->style()->isHorizontalWritingMode())
+ pageSize = FloatSize(minPageLogicalHeight, minPageLogicalWidth);
+ coreView->forceLayoutForPagination(pageSize, maxPageLogicalWidth / minPageLogicalWidth, adjustViewSize ? Frame::AdjustViewSize : Frame::DoNotAdjustViewSize);
+ } else {
coreView->forceLayout(!adjustViewSize);
if (adjustViewSize)
coreView->adjustViewSize();
@@ -3888,7 +3887,7 @@ static BOOL isInPasswordField(Frame* coreFrame)
// Does setNeedsDisplay:NO as a side effect when printing is ending.
// pageWidth != 0 implies we will relayout to a new width
-- (void)_setPrinting:(BOOL)printing minimumPageWidth:(float)minPageWidth height:(float)minPageHeight maximumPageWidth:(float)maxPageWidth adjustViewSize:(BOOL)adjustViewSize paginateScreenContent:(BOOL)paginateScreenContent
+- (void)_setPrinting:(BOOL)printing minimumPageLogicalWidth:(float)minPageLogicalWidth logicalHeight:(float)minPageLogicalHeight maximumPageLogicalWidth:(float)maxPageLogicalWidth adjustViewSize:(BOOL)adjustViewSize paginateScreenContent:(BOOL)paginateScreenContent
{
if (printing == _private->printing && paginateScreenContent == _private->paginateScreenContent)
return;
@@ -3901,7 +3900,7 @@ static BOOL isInPasswordField(Frame* coreFrame)
WebFrame *subframe = [subframes objectAtIndex:i];
WebFrameView *frameView = [subframe frameView];
if ([[subframe _dataSource] _isDocumentHTML]) {
- [(WebHTMLView *)[frameView documentView] _setPrinting:printing minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:adjustViewSize paginateScreenContent:paginateScreenContent];
+ [(WebHTMLView *)[frameView documentView] _setPrinting:printing minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:adjustViewSize paginateScreenContent:paginateScreenContent];
}
}
@@ -3909,8 +3908,6 @@ static BOOL isInPasswordField(Frame* coreFrame)
_private->pageRects = nil;
_private->printing = printing;
_private->paginateScreenContent = paginateScreenContent;
- if (!printing && !paginateScreenContent)
- _private->avoidingPrintOrphan = NO;
Frame* coreFrame = core([self _frame]);
if (coreFrame) {
@@ -3924,7 +3921,7 @@ static BOOL isInPasswordField(Frame* coreFrame)
}
[self setNeedsLayout:YES];
- [self layoutToMinimumPageWidth:minPageWidth height:minPageHeight maximumPageWidth:maxPageWidth adjustingViewSize:adjustViewSize];
+ [self layoutToMinimumPageWidth:minPageLogicalWidth height:minPageLogicalHeight maximumPageWidth:maxPageLogicalWidth adjustingViewSize:adjustViewSize];
if (!printing) {
// Can't do this when starting printing or nested printing won't work, see 3491427.
[self setNeedsDisplay:NO];
@@ -3944,7 +3941,7 @@ static BOOL isInPasswordField(Frame* coreFrame)
// If the WebHTMLView itself is what we're printing, then we will never have to do this.
BOOL wasInPrintingMode = _private->printing;
if (!wasInPrintingMode)
- [self _setPrinting:YES minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:YES minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
*newBottom = [self _adjustedBottomOfPageWithTop:oldTop bottom:oldBottom limit:bottomLimit];
@@ -3955,23 +3952,30 @@ static BOOL isInPasswordField(Frame* coreFrame)
[self performSelector:@selector(_delayedEndPrintMode:) withObject:currenPrintOperation afterDelay:0];
else
// not sure if this is actually ever invoked, it probably shouldn't be
- [self _setPrinting:NO minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:NO minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
}
}
- (float)_scaleFactorForPrintOperation:(NSPrintOperation *)printOperation
{
- float viewWidth = NSWidth([self bounds]);
- if (viewWidth < 1) {
- LOG_ERROR("%@ has no width when printing", self);
+ bool useViewWidth = true;
+ Frame* coreFrame = core([self _frame]);
+ if (coreFrame) {
+ Document* document = coreFrame->document();
+ if (document && document->renderView())
+ useViewWidth = document->renderView()->style()->isHorizontalWritingMode();
+ }
+
+ float viewLogicalWidth = useViewWidth ? NSWidth([self bounds]) : NSHeight([self bounds]);
+ if (viewLogicalWidth < 1) {
+ LOG_ERROR("%@ has no logical width when printing", self);
return 1.0f;
}
float userScaleFactor = [printOperation _web_pageSetupScaleFactor];
float maxShrinkToFitScaleFactor = 1.0f / _WebHTMLViewPrintingMaximumShrinkFactor;
- float shrinkToFitScaleFactor = [printOperation _web_availablePaperWidth] / viewWidth;
- float shrinkToAvoidOrphan = _private->avoidingPrintOrphan ? (1.0f / PrintingOrphanShrinkAdjustment) : 1.0f;
- return userScaleFactor * max(maxShrinkToFitScaleFactor, shrinkToFitScaleFactor) * shrinkToAvoidOrphan;
+ float shrinkToFitScaleFactor = (useViewWidth ? [printOperation _web_availablePaperWidth] : [printOperation _web_availablePaperHeight]) / viewLogicalWidth;
+ return userScaleFactor * max(maxShrinkToFitScaleFactor, shrinkToFitScaleFactor);
}
// FIXME 3491344: This is a secret AppKit-internal method that we need to override in order
@@ -3985,8 +3989,8 @@ static BOOL isInPasswordField(Frame* coreFrame)
// This is used for Carbon printing. At some point we might want to make this public API.
- (void)setPageWidthForPrinting:(float)pageWidth
{
- [self _setPrinting:NO minimumPageWidth:0 height:0 maximumPageWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
- [self _setPrinting:YES minimumPageWidth:pageWidth height:0 maximumPageWidth:pageWidth adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:NO minimumPageLogicalWidth:0 logicalHeight:0 maximumPageLogicalWidth:0 adjustViewSize:NO paginateScreenContent:[self _isInScreenPaginationMode]];
+ [self _setPrinting:YES minimumPageLogicalWidth:pageWidth logicalHeight:0 maximumPageLogicalWidth:pageWidth adjustViewSize:YES paginateScreenContent:[self _isInScreenPaginationMode]];
}
- (void)_endPrintModeAndRestoreWindowAutodisplay
@@ -4050,9 +4054,10 @@ static BOOL isInPasswordField(Frame* coreFrame)
float totalScaleFactor = [self _scaleFactorForPrintOperation:printOperation];
float userScaleFactor = [printOperation _web_pageSetupScaleFactor];
[_private->pageRects release];
+ float fullPageWidth = floorf([printOperation _web_availablePaperWidth] / totalScaleFactor);
float fullPageHeight = floorf([printOperation _web_availablePaperHeight] / totalScaleFactor);
WebFrame *frame = [self _frame];
- NSArray *newPageRects = [frame _computePageRectsWithPrintWidthScaleFactor:userScaleFactor printHeight:fullPageHeight];
+ NSArray *newPageRects = [frame _computePageRectsWithPrintScaleFactor:userScaleFactor pageSize:NSMakeSize(fullPageWidth, fullPageHeight)];
// AppKit gets all messed up if you give it a zero-length page count (see 3576334), so if we
// hit that case we'll pass along a degenerate 1 pixel square to print. This will print
@@ -4060,19 +4065,6 @@ static BOOL isInPasswordField(Frame* coreFrame)
// the behavior of IE and Camino at least.
if ([newPageRects count] == 0)
newPageRects = [NSArray arrayWithObject:[NSValue valueWithRect:NSMakeRect(0, 0, 1, 1)]];
- else if ([newPageRects count] > 1) {
- // If the last page is a short orphan, try adjusting the print height slightly to see if this will squeeze the
- // content onto one fewer page. If it does, use the adjusted scale. If not, use the original scale.
- float lastPageHeight = NSHeight([[newPageRects lastObject] rectValue]);
- if (lastPageHeight/fullPageHeight < LastPrintedPageOrphanRatio) {
- NSArray *adjustedPageRects = [frame _computePageRectsWithPrintWidthScaleFactor:userScaleFactor printHeight:fullPageHeight * PrintingOrphanShrinkAdjustment];
- // Use the adjusted rects only if the page count went down
- if ([adjustedPageRects count] < [newPageRects count]) {
- newPageRects = adjustedPageRects;
- _private->avoidingPrintOrphan = YES;
- }
- }
- }
_private->pageRects = [newPageRects retain];
@@ -6200,7 +6192,7 @@ static void extractUnderlines(NSAttributedString *string, Vector<CompositionUnde
- (BOOL)searchFor:(NSString *)string direction:(BOOL)forward caseSensitive:(BOOL)caseFlag wrap:(BOOL)wrapFlag startInSelection:(BOOL)startInSelection
{
- return [self _findString:string options:(forward ? 0 : WebFindOptionsBackwards) | (caseFlag ? 0 : WebFindOptionsCaseInsensitive) | (startInSelection ? WebFindOptionsStartInSelection : 0)];
+ return [self _findString:string options:(forward ? 0 : WebFindOptionsBackwards) | (caseFlag ? 0 : WebFindOptionsCaseInsensitive) | (wrapFlag ? WebFindOptionsWrapAround : 0) | (startInSelection ? WebFindOptionsStartInSelection : 0)];
}
@end
diff --git a/Source/WebKit/mac/WebView/WebScriptDebugDelegate.mm b/Source/WebKit/mac/WebView/WebScriptDebugDelegate.mm
index 63a91a9..96a1a42 100644
--- a/Source/WebKit/mac/WebView/WebScriptDebugDelegate.mm
+++ b/Source/WebKit/mac/WebView/WebScriptDebugDelegate.mm
@@ -184,9 +184,9 @@ NSString * const WebScriptErrorLineNumberKey = @"WebScriptErrorLineNumber";
ScopeChainIterator end = scopeChain->end();
for (ScopeChainIterator it = scopeChain->begin(); it != end; ++it) {
- JSObject* object = *it;
+ JSObject* object = it->get();
if (object->isActivationObject())
- object = new (scopeChain->globalData) DebuggerActivation(object);
+ object = new (scopeChain->globalData) DebuggerActivation(*scopeChain->globalData, object);
[scopes addObject:[self _convertValueToObjcValue:object]];
}
diff --git a/Source/WebKit/mac/WebView/WebView.mm b/Source/WebKit/mac/WebView/WebView.mm
index 82e4f2c..e01877b 100644
--- a/Source/WebKit/mac/WebView/WebView.mm
+++ b/Source/WebKit/mac/WebView/WebView.mm
@@ -5834,7 +5834,7 @@ static inline uint64_t roundUpToPowerOf2(uint64_t num)
WebFrameLoadDelegateImplementationCache* cache = &_private->frameLoadDelegateImplementations;
if (cache->didReceiveIconForFrameFunc) {
- Image* image = iconDatabase()->iconForPageURL(core(webFrame)->loader()->url().string(), IntSize(16, 16));
+ Image* image = iconDatabase()->iconForPageURL(core(webFrame)->document()->url().string(), IntSize(16, 16));
if (NSImage *icon = webGetNSImage(image, NSMakeSize(16, 16)))
CallFrameLoadDelegate(cache->didReceiveIconForFrameFunc, self, @selector(webView:didReceiveIcon:forFrame:), icon, webFrame);
}
diff --git a/Source/WebKit/qt/Api/qwebframe.cpp b/Source/WebKit/qt/Api/qwebframe.cpp
index 391ff26..dce0137 100644
--- a/Source/WebKit/qt/Api/qwebframe.cpp
+++ b/Source/WebKit/qt/Api/qwebframe.cpp
@@ -357,11 +357,10 @@ void QWebFramePrivate::renderRelativeCoords(GraphicsContext* context, QWebFrame:
view->updateLayoutAndStyleIfNeededRecursive();
if (layer & QWebFrame::ContentsLayer) {
- painter->save();
for (int i = 0; i < vector.size(); ++i) {
const QRect& clipRect = vector.at(i);
- QRect intersectedRect = clipRect.intersected(view->frameRect());
+ QRect rect = clipRect.intersected(view->frameRect());
context->save();
painter->setClipRect(clipRect, Qt::IntersectClip);
@@ -372,7 +371,6 @@ void QWebFramePrivate::renderRelativeCoords(GraphicsContext* context, QWebFrame:
int scrollX = view->scrollX();
int scrollY = view->scrollY();
- QRect rect = intersectedRect;
context->translate(x, y);
rect.translate(-x, -y);
context->translate(-scrollX, -scrollY);
@@ -383,7 +381,6 @@ void QWebFramePrivate::renderRelativeCoords(GraphicsContext* context, QWebFrame:
context->restore();
}
- painter->restore();
#if USE(ACCELERATED_COMPOSITING) && USE(TEXTURE_MAPPER)
renderCompositedLayers(context, IntRect(clip.boundingRect()));
#endif
@@ -403,15 +400,13 @@ void QWebFramePrivate::renderRelativeCoords(GraphicsContext* context, QWebFrame:
if (layer & QWebFrame::ScrollBarLayer
&& !view->scrollbarsSuppressed()
&& (view->horizontalScrollbar() || view->verticalScrollbar())) {
- context->save();
-
QRect rect = intersectedRect;
context->translate(x, y);
rect.translate(-x, -y);
view->paintScrollbars(context, rect);
- context->restore();
+ context->translate(-x, -y);
}
#if ENABLE(PAN_SCROLLING)
@@ -754,14 +749,14 @@ static inline QUrl ensureAbsoluteUrl(const QUrl &url)
void QWebFrame::setUrl(const QUrl &url)
{
const QUrl absolute = ensureAbsoluteUrl(url);
- d->frame->loader()->writer()->begin(absolute);
- d->frame->loader()->writer()->end();
+ d->frame->loader()->activeDocumentLoader()->writer()->begin(absolute);
+ d->frame->loader()->activeDocumentLoader()->writer()->end();
load(absolute);
}
QUrl QWebFrame::url() const
{
- return d->frame->loader()->url();
+ return d->frame->document()->url();
}
/*!
@@ -817,7 +812,7 @@ QUrl QWebFrame::baseUrl() const
QIcon QWebFrame::icon() const
{
- return QWebSettings::iconForUrl(d->frame->loader()->url());
+ return QWebSettings::iconForUrl(d->frame->document()->url());
}
/*!
@@ -1309,7 +1304,7 @@ QPoint QWebFrame::pos() const
if (!d->frame->view())
return QPoint();
- return d->frame->view()->frameRect().topLeft();
+ return d->frame->view()->frameRect().location();
}
/*!
diff --git a/Source/WebKit/qt/Api/qwebpage.cpp b/Source/WebKit/qt/Api/qwebpage.cpp
index e80aac5..075756d 100644
--- a/Source/WebKit/qt/Api/qwebpage.cpp
+++ b/Source/WebKit/qt/Api/qwebpage.cpp
@@ -162,6 +162,7 @@ static const char* editorCommandWebActions[] =
0, // OpenImageInNewWindow,
0, // DownloadImageToDisk,
0, // CopyImageToClipboard,
+ 0, // CopyImageUrlToClipboard,
0, // Back,
0, // Forward,
@@ -404,6 +405,7 @@ static QWebPage::WebAction webActionForContextMenuAction(WebCore::ContextMenuAct
case WebCore::ContextMenuItemTagOpenImageInNewWindow: return QWebPage::OpenImageInNewWindow;
case WebCore::ContextMenuItemTagDownloadImageToDisk: return QWebPage::DownloadImageToDisk;
case WebCore::ContextMenuItemTagCopyImageToClipboard: return QWebPage::CopyImageToClipboard;
+ case WebCore::ContextMenuItemTagCopyImageUrlToClipboard: return QWebPage::CopyImageUrlToClipboard;
case WebCore::ContextMenuItemTagOpenFrameInNewWindow: return QWebPage::OpenFrameInNewWindow;
case WebCore::ContextMenuItemTagCopy: return QWebPage::Copy;
case WebCore::ContextMenuItemTagGoBack: return QWebPage::Back;
@@ -431,7 +433,7 @@ static QWebPage::WebAction webActionForContextMenuAction(WebCore::ContextMenuAct
QMenu *QWebPagePrivate::createContextMenu(const WebCore::ContextMenu *webcoreMenu,
const QList<WebCore::ContextMenuItem> *items, QBitArray *visitedWebActions)
{
- if (!client)
+ if (!client || !webcoreMenu)
return 0;
QMenu* menu = new QMenu(client->ownerWidget());
@@ -1680,6 +1682,7 @@ IntPoint QWebPagePrivate::TouchAdjuster::findCandidatePointForTouch(const IntPoi
\value OpenImageInNewWindow Open the highlighted image in a new window.
\value DownloadImageToDisk Download the highlighted image to the disk.
\value CopyImageToClipboard Copy the highlighted image to the clipboard.
+ \value CopyImageUrlToClipboard Copy the highlighted image's URL to the clipboard.
\value Back Navigate back in the history of navigated links.
\value Forward Navigate forward in the history of navigated links.
\value Stop Stop loading the current page.
@@ -1883,9 +1886,10 @@ QWebPage::ViewportAttributes& QWebPage::ViewportAttributes::operator=(const QWeb
The loadStarted() signal is emitted when the page begins to load.The
loadProgress() signal, on the other hand, is emitted whenever an element
of the web page completes loading, such as an embedded image, a script,
- etc. Finally, the loadFinished() signal is emitted when the page has
- loaded completely. Its argument, either true or false, indicates whether
- or not the load operation succeeded.
+ etc. Finally, the loadFinished() signal is emitted when the page contents
+ are loaded completely, independent of script execution or page rendering.
+ Its argument, either true or false, indicates whether or not the load
+ operation succeeded.
\section1 Using QWebPage in a Widget-less Environment
@@ -2342,6 +2346,9 @@ void QWebPage::triggerAction(WebAction action, bool)
case CopyImageToClipboard:
QApplication::clipboard()->setPixmap(d->hitTestResult.pixmap());
break;
+ case CopyImageUrlToClipboard:
+ QApplication::clipboard()->setText(d->hitTestResult.imageUrl().toString());
+ break;
#endif
case Back:
d->page->goBack();
@@ -2730,6 +2737,9 @@ QAction *QWebPage::action(WebAction action) const
case CopyImageToClipboard:
text = contextMenuItemTagCopyImageToClipboard();
break;
+ case CopyImageUrlToClipboard:
+ text = contextMenuItemTagCopyImageUrlToClipboard();
+ break;
case Back:
text = contextMenuItemTagGoBack();
@@ -3979,7 +3989,7 @@ quint64 QWebPage::bytesReceived() const
/*!
\fn void QWebPage::loadStarted()
- This signal is emitted when a new load of the page is started.
+ This signal is emitted when a page starts loading content.
\sa loadFinished()
*/
@@ -3998,7 +4008,8 @@ quint64 QWebPage::bytesReceived() const
/*!
\fn void QWebPage::loadFinished(bool ok)
- This signal is emitted when a load of the page is finished.
+ This signal is emitted when the page finishes loading content. This signal
+ is independant of script execution or page rendering.
\a ok will indicate whether the load was successful or any error occurred.
\sa loadStarted(), ErrorPageExtension
diff --git a/Source/WebKit/qt/Api/qwebpage.h b/Source/WebKit/qt/Api/qwebpage.h
index b66adb2..e12b460 100644
--- a/Source/WebKit/qt/Api/qwebpage.h
+++ b/Source/WebKit/qt/Api/qwebpage.h
@@ -105,6 +105,7 @@ public:
OpenImageInNewWindow,
DownloadImageToDisk,
CopyImageToClipboard,
+ CopyImageUrlToClipboard,
Back,
Forward,
diff --git a/Source/WebKit/qt/Api/qwebsettings.cpp b/Source/WebKit/qt/Api/qwebsettings.cpp
index 9bb187e..e2d6061 100644
--- a/Source/WebKit/qt/Api/qwebsettings.cpp
+++ b/Source/WebKit/qt/Api/qwebsettings.cpp
@@ -171,7 +171,7 @@ void QWebSettingsPrivate::apply()
settings->setAcceleratedCompositingEnabled(value);
#endif
-#if ENABLE(3D_CANVAS)
+#if ENABLE(WEBGL)
value = attributes.value(QWebSettings::WebGLEnabled,
global->attributes.value(QWebSettings::WebGLEnabled));
diff --git a/Source/WebKit/qt/ChangeLog b/Source/WebKit/qt/ChangeLog
index aec5b45..e4c8cef 100644
--- a/Source/WebKit/qt/ChangeLog
+++ b/Source/WebKit/qt/ChangeLog
@@ -1,3 +1,477 @@
+2011-02-11 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
+
+ Reviewed by Tor Arne Vestbø.
+
+ [Qt] wmode gets overridden even if already windowless in QGraphicsWebView
+ Do not override wmode if it is not set to "window".
+ https://bugs.webkit.org/show_bug.cgi?id=50495
+
+ * WebCoreSupport/FrameLoaderClientQt.cpp:
+ (WebCore::FrameLoaderClientQt::createPlugin):
+
+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
+
+ * Api/qwebframe.cpp:
+ (QWebFrame::setUrl):
+ * WebCoreSupport/FrameLoaderClientQt.cpp:
+ (WebCore::FrameLoaderClientQt::finishedLoading):
+
+2011-02-10 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Ensure WebView press delay timer is cancelled when grab is taken
+ https://bugs.webkit.org/show_bug.cgi?id=54242
+
+ As reported in:
+ http://bugreports.qt.nokia.com/browse/QTBUG-15529
+
+ Flickable steals the grab, but the timer was not stopped and the
+ keepGrab flag is set and the mouse grabbed. This means that the WebView
+ now has the grab and subsequent clicks on another element are ignored.
+
+ Original patch from Martin Jones <martin.jones@nokia.com>
+ reviewed (there) by Joona Petrell
+ 52068f57f9c32098a90cc217730a530f85590f65
+
+ * declarative/qdeclarativewebview.cpp:
+ (GraphicsWebView::sceneEvent):
+ * declarative/qdeclarativewebview_p.h:
+
+2011-02-10 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Fix assert in QDeclarativeWebView
+ https://bugs.webkit.org/show_bug.cgi?id=54240
+
+ As reported in:
+ http://bugreports.qt.nokia.com/browse/QTBUG-14278
+
+ Instantiating a QDeclarativeWebView twice will trigger an assertion
+ when in debug mode.
+
+ Original patch from Thomas Hartmann <Thomas.Hartmann@nokia.com>,
+ reviewed (there) by Aaron Kennedy
+ f532679ca11914b453e22342f2ae5e9f790ce47a
+
+ * declarative/qdeclarativewebview.cpp:
+ (QDeclarativeWebView::init):
+
+2011-02-10 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Misc documentation fixes/updates
+ https://bugs.webkit.org/show_bug.cgi?id=54236
+
+ There are a few commits in the Qt repository (master and 4.7 branches)
+ with QtWebKit documentation fixes:
+
+ 84d278501a19eaccf9a77cccd95ca5d17a2dcd2b
+ Clarified documentation of loadFinished() signal
+
+ eebe205b306daaa3674d9746de11a73bef4bd0de
+ Doc: Fixed QML, unindented snippet
+
+ b0d64717d2c541976dc5524e4100c62f060e206f
+ doc: Changed a table into 3 tables to eliminate a \raw.
+
+ As these are all minor doc changes, I decided to group them
+ into one single patch.
+
+ * Api/qwebpage.cpp:
+ * declarative/qdeclarativewebview.cpp:
+ * docs/qtwebkit.qdoc:
+
+2011-02-10 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Remove the use of deprecated qVariant*
+ https://bugs.webkit.org/show_bug.cgi?id=54229
+
+ This was applied on the Qt repository and affects QtWebKit there.
+ (633f3f45e5420663cf4ceadea79e62fea44cd2eb)
+
+ The side effect of this change is that we won't be able to build
+ QtWebKit with MSVC 6, as it doesn't support member template functions
+ (not sure if it's possible today anyway).
+
+ Original patch from Olivier Goffart <olivier.goffart@nokia.com>, with
+ review reported as being from the mailing list.
+
+ The changes are result of the following commands:
+
+ git grep -O"sed -i 's/qVariantValue</qvariant_cast</'" qVariantValue
+ git grep -O"sed -i 's/qVariantSetValue(\([^&*\(),]*\), */\\1.setValue(/'" qVariantSetValue
+ git grep -O"sed -i 's/qVariantSetValue *<\([^>]*\)> *(\([^&*\(),]*\), */\\2.setValue<\\1>(/'" qVariantSetValue
+ git grep -O"sed -i 's/qVariantCanConvert *<\([^>]*\)> *(\([^&*\(),]*\))/\\2.canConvert<\\1>()/g'" qVariantCanConvert
+ git grep -O"sed -i 's/qVariantCanConvert *<\([^>]*\)> *(\([^&*\(),]*([^&*\(),]*)\))/\\2.canConvert<\\1>()/g'" qVariantCanConvert
+ git grep -O"sed -i 's/qVariantFromValue\( *[(<]\)/QVariant::fromValue\\1/'" qVariantFromValue
+
+
+ * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
+ (DumpRenderTreeSupportQt::nodesFromRect):
+ * tests/qwebframe/tst_qwebframe.cpp:
+ (MyQObject::myInvokableWithQObjectListArg):
+ (MyQObject::myInvokableWithListOfIntArg):
+ (MyQObject::myInvokableWithQObjectStarArg):
+ (MyQObject::myInvokableWithQBrushArg):
+ (MyQObject::myInvokableWithBrushStyleArg):
+ (MyQObject::myInvokableWithVoidStarArg):
+ (MyQObject::myInvokableWithAmbiguousArg):
+ (MyQObject::myInvokableWithDefaultArgs):
+ (MyQObject::myInvokableWithPointArg):
+ (MyQObject::myOverloadedSlot):
+
+2011-02-10 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Laszlo Gombos.
+
+ [Qt] Return menu items from eventSender.contextMenu()
+ https://bugs.webkit.org/show_bug.cgi?id=53039
+
+ * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
+ (iterateContextMenu):
+ (DumpRenderTreeSupportQt::contextMenu):
+ * WebCoreSupport/DumpRenderTreeSupportQt.h:
+
+2011-02-10 Alexis Menard <alexis.menard@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] In trunk with Qt Multimedia the full screen mode doesn't work.
+ https://bugs.webkit.org/show_bug.cgi?id=54201
+
+ Add a default fullscreen handler when there is no plaftform plugin
+ installed. This handler creates a fullscreen QVideoWidget and plays
+ the video. Space pause/resume the video playback and esc quit the
+ fullscreen mode.
+
+ * WebCoreSupport/FullScreenVideoQt.cpp:
+ (WebCore::DefaultFullScreenVideoHandler::DefaultFullScreenVideoHandler):
+ (WebCore::DefaultFullScreenVideoHandler::~DefaultFullScreenVideoHandler):
+ (WebCore::DefaultFullScreenVideoHandler::requiresFullScreenForVideoPlayback):
+ (WebCore::DefaultFullScreenVideoHandler::enterFullScreen):
+ (WebCore::DefaultFullScreenVideoHandler::exitFullScreen):
+ (WebCore::FullScreenVideoQt::FullScreenVideoQt):
+ * WebCoreSupport/FullScreenVideoQt.h:
+ * WebCoreSupport/FullScreenVideoWidget.cpp: Added.
+ (WebCore::FullScreenVideoWidget::FullScreenVideoWidget):
+ (WebCore::FullScreenVideoWidget::~FullScreenVideoWidget):
+ (WebCore::FullScreenVideoWidget::show):
+ (WebCore::FullScreenVideoWidget::closeEvent):
+ (WebCore::FullScreenVideoWidget::event):
+ (WebCore::FullScreenVideoWidget::keyPressEvent):
+ (WebCore::FullScreenVideoWidget::hideCursor):
+ (WebCore::FullScreenVideoWidget::showCursor):
+ * WebCoreSupport/FullScreenVideoWidget.h: Added.
+
+2011-02-10 kasthuri <kasthuri.n-s@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] QWebFrame::setHtml doesn't emit loadFinished signal
+ https://bugs.webkit.org/show_bug.cgi?id=38634
+
+ QWebView->page()->mainFrame()->setHtml(html) is always emitting
+ the loadFinished() signal for all types of html files.
+ But the proposed test content was trying to catch the signal after
+ calling setHtml() api and becuase of this the emitted signal for a
+ simple html page is never caught as its emitted before even the connect
+ call was successful.
+
+ updated the tst_QWebFrame::setHtml() in tst_qwebframe.cpp to check for
+ signal using the QSignalSpy.
+
+
+ * tests/qwebframe/tst_qwebframe.cpp:
+
+2011-02-09 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ [Qt] REGRESSION (r73535): tst_QWebPage fails
+ https://bugs.webkit.org/show_bug.cgi?id=51331
+
+ Since r73535 a ContextMenu is only created when a context menu
+ event is received, so QWebPage::updatePositionDependentActions()
+ can't depend on one being there if it is called directly by
+ the client. QtWebKit itself only ever calls updatePositionDependentActions()
+ when a context menu event has been received.
+
+ Update tst_QWebPage:contextMenuCrash to create a context menu.
+ Add tst_QWebPage:updatePositionDependentActionsCrash to test for this crash.
+
+ There doesn't seem to be a good reason for creating a context menu if
+ clients call QWebPage::updatePositionDependentActions() when no
+ context menu event has ever been received.
+
+ * Api/qwebpage.cpp:
+ (QWebPagePrivate::createContextMenu):
+ * tests/qwebpage/tst_qwebpage.cpp:
+ (tst_QWebPage::contextMenuCrash):
+
+2011-02-09 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] fast/dom/nodesFromRect-links-and-text.html crashes in debug mode
+ https://bugs.webkit.org/show_bug.cgi?id=53921
+
+ QDRTNode needs a copy constructor and an operator= in order to keep
+ proper refcounts.
+
+ * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
+ (:m_node):
+ (QDRTNode::operator=):
+ (DumpRenderTreeSupportQt::nodesFromRect):
+ * WebCoreSupport/DumpRenderTreeSupportQt.h:
+
+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/ChromeClientQt.h:
+
+2011-02-07 Aparna Nandyal <aparna.nand@wipro.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] - Context menu needs "Copy" as well when the selected text is a link.
+ https://bugs.webkit.org/show_bug.cgi?id=40983
+
+ Added a test case to create a context sensitive menu.
+ A check is made if it has Copy menu item when user
+ selects a link and opens context menu.
+
+ * tests/qwebpage/tst_qwebpage.cpp:
+ (tst_QWebPage::contextMenuCopy):
+
+2011-02-07 Benjamin Poulain <ikipou@gmail.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] cookiesEnabled could create the cookieJar on the wrong thread.
+ https://bugs.webkit.org/show_bug.cgi?id=52289
+
+ Test if the cookie jar is created in the right thread when accessed from
+ the navigator object.
+
+ * tests/qwebpage/tst_qwebpage.cpp:
+ (tst_QWebPage::navigatorCookieEnabledForNetworkAccessManagerOnDifferentThread):
+
+2011-02-07 Qi Zhang <qi.2.zhang@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] enum QWebPage::WebAction doesn't have value QWebPage::CopyImageUrl
+ https://bugs.webkit.org/show_bug.cgi?id=52974
+
+ Add QWebPage::CopyImageUrlToClipboard into QWebPage::WebAction.
+
+ * Api/qwebpage.cpp:
+ (webActionForContextMenuAction):
+ (QWebPage::triggerAction):
+ (QWebPage::action):
+ * Api/qwebpage.h:
+ * WebCoreSupport/WebPlatformStrategies.cpp:
+ (WebPlatformStrategies::contextMenuItemTagCopyImageUrlToClipboard):
+ * WebCoreSupport/WebPlatformStrategies.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/DragClientQt.cpp:
+ * WebCoreSupport/DragClientQt.h:
+
+2011-02-06 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Remove unnecessary QRect assignment
+ https://bugs.webkit.org/show_bug.cgi?id=53873
+
+ * Api/qwebframe.cpp:
+ (QWebFramePrivate::renderRelativeCoords):
+
+2011-02-06 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Clear page's groupName even when not in DRT
+ https://bugs.webkit.org/show_bug.cgi?id=53874
+
+ Matches behaviour of other ports.
+
+ * WebCoreSupport/ChromeClientQt.cpp:
+ (WebCore::ChromeClientQt::closeWindowSoon):
+
+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/InspectorClientQt.cpp:
+ (WebCore::InspectorFrontendClientQt::InspectorFrontendClientQt):
+ * WebCoreSupport/InspectorClientQt.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/FrameLoaderClientQt.cpp:
+ (WebCore::FrameLoaderClientQt::didRunInsecureContent):
+ * WebCoreSupport/FrameLoaderClientQt.h:
+
+2011-02-01 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed Qt buildfix after r77286.
+
+ https://bugs.webkit.org/show_bug.cgi?id=53520
+ Remove the physical terminology from IntRect and FloatRect.
+
+ * WebCoreSupport/PopupMenuQt.cpp:
+ (WebCore::PopupMenuQt::show):
+
+2011-01-31 No'am Rosenthal <noam.rosenthal@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] QWebElements example from QtWebKit Bridge documentation does not work at all
+ https://bugs.webkit.org/show_bug.cgi?id=46748
+
+ Problem was that we need to register QWebElement's variant-type to Qt's meta type system at some point.
+ This wasn't caught by previous tests inside tst_QWebFrame because it only appears when there's also a QWebElement property.
+ Added a regression test to tst_QWebFrame.
+
+ * tests/qwebframe/tst_qwebframe.cpp:
+ (MyWebElementSlotOnlyObject::doSomethingWithWebElement):
+ (MyWebElementSlotOnlyObject::tagName):
+
+2011-01-31 Srikumar Bonda <srikumar.b@gmail.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] ContextMenuClientQt.cpp has coding-style errors
+ "RefCounted.h" header inclusion style changed to <wtf/RefCounted.h>
+ https://bugs.webkit.org/show_bug.cgi?id=40243
+
+ * WebCoreSupport/ContextMenuClientQt.cpp:
+
+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/ChromeClientQt.cpp:
+ (WebCore::ChromeClientQt::selectItemAlignmentFollowsMenuWritingDirection): Added.
+ * WebCoreSupport/ChromeClientQt.h:
+
+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
+
+ * Api/qwebframe.cpp:
+ (QWebFrame::url):
+
+2011-01-27 Robert Hogan <robert@webkit.org>
+
+ Rubber-stamped by Andreas Kling.
+
+ [Qt] Style Fix: correct indentation in FrameLoadeClientQt:createPlugin
+
+ * WebCoreSupport/FrameLoaderClientQt.cpp:
+ (WebCore::FrameLoaderClientQt::createPlugin):
+
+2011-01-24 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Change ENABLE_3D_CANVAS to ENABLE_WEBGL
+ https://bugs.webkit.org/show_bug.cgi?id=53041
+
+ * Api/qwebsettings.cpp:
+ (QWebSettingsPrivate::apply):
+
+2011-01-24 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] QWebFramePrivate::renderRelativeCoords() calls QPainter::save/restore more than necessary
+ https://bugs.webkit.org/show_bug.cgi?id=49915
+
+ In the first loop of renderRelativeCoords() the call of QPainter::save/restore is useless, because
+ the context is saved/stored within the loop.
+ In the second loop the calls are also avoidable by using inverse translation on context.
+
+ * Api/qwebframe.cpp:
+ (QWebFramePrivate::renderRelativeCoords):
+
+2011-01-24 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ [Qt] Move project files into Source
+ https://bugs.webkit.org/show_bug.cgi?id=52891
+
+ * declarative/declarative.pro:
+ * docs/docs.pri:
+ * tests/tests.pri:
+
+2011-01-22 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: next step in splitting InspectorController.
+
+ #include "InspectorController.h" was added.
+
+ https://bugs.webkit.org/show_bug.cgi?id=52955
+
+ * WebCoreSupport/InspectorServerQt.cpp:
+
+2011-01-22 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Support layoutTestController.addURLToRedirect()
+ https://bugs.webkit.org/show_bug.cgi?id=52956
+
+ * WebCoreSupport/DumpRenderTreeSupportQt.cpp:
+ (DumpRenderTreeSupportQt::addURLToRedirect):
+ * WebCoreSupport/DumpRenderTreeSupportQt.h:
+ * WebCoreSupport/FrameLoaderClientQt.cpp:
+ (WebCore::FrameLoaderClientQt::dispatchWillSendRequest):
+ * WebCoreSupport/FrameLoaderClientQt.h:
+
2011-01-21 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
diff --git a/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp b/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
index acb136a..b7a0350 100644
--- a/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
@@ -307,6 +307,7 @@ bool ChromeClientQt::runBeforeUnloadConfirmPanel(const String& message, Frame* f
void ChromeClientQt::closeWindowSoon()
{
+ m_webPage->d->page->setGroupName(String());
m_webPage->mainFrame()->d->frame->loader()->stopAllLoaders();
emit m_webPage->windowCloseRequested();
}
@@ -736,6 +737,11 @@ bool ChromeClientQt::selectItemWritingDirectionIsNatural()
return false;
}
+bool ChromeClientQt::selectItemAlignmentFollowsMenuWritingDirection()
+{
+ return false;
+}
+
PassRefPtr<PopupMenu> ChromeClientQt::createPopupMenu(PopupMenuClient* client) const
{
return adoptRef(new PopupMenuQt(client, this));
diff --git a/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h b/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h
index d8c2f57..684ece8 100644
--- a/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h
+++ b/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.h
@@ -179,8 +179,6 @@ namespace WebCore {
virtual void formStateDidChange(const Node*) { }
- virtual PassOwnPtr<HTMLParserQuirks> createHTMLParserQuirks() { return 0; }
-
virtual void setCursor(const Cursor&);
virtual void scrollRectIntoView(const IntRect&, const ScrollView*) const {}
@@ -189,6 +187,7 @@ namespace WebCore {
virtual void cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*);
virtual bool selectItemWritingDirectionIsNatural();
+ virtual bool selectItemAlignmentFollowsMenuWritingDirection();
virtual PassRefPtr<PopupMenu> createPopupMenu(PopupMenuClient*) const;
virtual PassRefPtr<SearchPopupMenu> createSearchPopupMenu(PopupMenuClient*) const;
virtual void populateVisitedLinks();
diff --git a/Source/WebKit/qt/WebCoreSupport/ContextMenuClientQt.cpp b/Source/WebKit/qt/WebCoreSupport/ContextMenuClientQt.cpp
index b4400ff..29180e0 100644
--- a/Source/WebKit/qt/WebCoreSupport/ContextMenuClientQt.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/ContextMenuClientQt.cpp
@@ -29,8 +29,8 @@
#include "ContextMenu.h"
#include "HitTestResult.h"
#include "KURL.h"
-#include "RefCounted.h"
#include "NotImplemented.h"
+#include <wtf/RefCounted.h>
#include <stdio.h>
diff --git a/Source/WebKit/qt/WebCoreSupport/DragClientQt.cpp b/Source/WebKit/qt/WebCoreSupport/DragClientQt.cpp
index f136328..8996b52 100644
--- a/Source/WebKit/qt/WebCoreSupport/DragClientQt.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/DragClientQt.cpp
@@ -110,9 +110,4 @@ void DragClientQt::startDrag(DragImageRef dragImage, const IntPoint&, const IntP
}
-DragImageRef DragClientQt::createDragImageForLink(KURL&, const String&, Frame*)
-{
- return 0;
-}
-
} // namespace WebCore
diff --git a/Source/WebKit/qt/WebCoreSupport/DragClientQt.h b/Source/WebKit/qt/WebCoreSupport/DragClientQt.h
index 4c83191..38b463b 100644
--- a/Source/WebKit/qt/WebCoreSupport/DragClientQt.h
+++ b/Source/WebKit/qt/WebCoreSupport/DragClientQt.h
@@ -37,7 +37,6 @@ public:
virtual DragSourceAction dragSourceActionMaskForPoint(const IntPoint&);
virtual void willPerformDragSourceAction(DragSourceAction, const IntPoint&, Clipboard*);
virtual void startDrag(DragImageRef dragImage, const IntPoint& dragImageOrigin, const IntPoint& eventPos, Clipboard*, Frame*, bool linkDrag = false);
- virtual DragImageRef createDragImageForLink(KURL&, const String& label, Frame*);
private:
QWebPage* m_webPage;
};
diff --git a/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp b/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp
index a7a495a..1b6a4d4 100644
--- a/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp
@@ -104,6 +104,26 @@ QDRTNode::~QDRTNode()
m_node->deref();
}
+QDRTNode::QDRTNode(const QDRTNode& other)
+ :m_node(other.m_node)
+{
+ if (m_node)
+ m_node->ref();
+}
+
+QDRTNode& QDRTNode::operator=(const QDRTNode& other)
+{
+ if (this != &other) {
+ Node* otherNode = other.m_node;
+ if (otherNode)
+ otherNode->ref();
+ if (m_node)
+ m_node->deref();
+ m_node = otherNode;
+ }
+ return *this;
+}
+
DumpRenderTreeSupportQt::DumpRenderTreeSupportQt()
{
@@ -875,13 +895,11 @@ QVariantList DumpRenderTreeSupportQt::nodesFromRect(const QWebElement& document,
return res;
RefPtr<NodeList> nodes = doc->nodesFromRect(x, y, top, right, bottom, left, ignoreClipping);
for (int i = 0; i < nodes->length(); i++) {
- QVariant v;
// QWebElement will be null if the Node is not an HTML Element
if (nodes->item(i)->isHTMLElement())
- v.setValue(QWebElement(nodes->item(i)));
+ res << QVariant::fromValue(QWebElement(nodes->item(i)));
else
- v.setValue(QDRTNode(nodes->item(i)));
- res << v;
+ res << QVariant::fromValue(QDRTNode(nodes->item(i)));
}
return res;
}
@@ -893,6 +911,37 @@ QString DumpRenderTreeSupportQt::responseMimeType(QWebFrame* frame)
return docLoader->responseMIMEType();
}
+void DumpRenderTreeSupportQt::addURLToRedirect(const QString& origin, const QString& destination)
+{
+ FrameLoaderClientQt::URLsToRedirect[origin] = destination;
+}
+
+static QStringList iterateContextMenu(QMenu* menu)
+{
+ if (!menu)
+ return QStringList();
+
+ QStringList items;
+ QList<QAction *> actions = menu->actions();
+ for (int i = 0; i < actions.count(); ++i) {
+ if (actions.at(i)->isSeparator())
+ items << QLatin1String("<separator>");
+ else
+ items << actions.at(i)->text();
+ if (actions.at(i)->menu())
+ items << iterateContextMenu(actions.at(i)->menu());
+ }
+ return items;
+}
+
+QStringList DumpRenderTreeSupportQt::contextMenu(QWebPage* page)
+{
+#ifndef QT_NO_CONTEXTMENU
+ return iterateContextMenu(page->d->currentContextMenu);
+#else
+ return QStringList();
+#endif
+}
// Provide a backward compatibility with previously exported private symbols as of QtWebKit 4.6 release
void QWEBKIT_EXPORT qt_resumeActiveDOMObjects(QWebFrame* frame)
diff --git a/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.h b/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.h
index dd84e76..685d724 100644
--- a/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.h
+++ b/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.h
@@ -58,6 +58,8 @@ extern QMap<int, QWebScriptWorld*> m_worldMap;
class QWEBKIT_EXPORT QDRTNode {
public:
QDRTNode();
+ QDRTNode(const QDRTNode&);
+ QDRTNode &operator=(const QDRTNode&);
~QDRTNode();
private:
@@ -185,6 +187,8 @@ public:
static QVariantList nodesFromRect(const QWebElement& document, int x, int y, unsigned top, unsigned right, unsigned bottom, unsigned left, bool ignoreClipping);
static QString responseMimeType(QWebFrame*);
+ static void addURLToRedirect(const QString& origin, const QString& destination);
+ static QStringList contextMenu(QWebPage*);
};
#endif
diff --git a/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp b/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp
index 474b768..22e2ac9 100644
--- a/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp
@@ -180,6 +180,7 @@ QStringList FrameLoaderClientQt::sendRequestClearHeaders;
QString FrameLoaderClientQt::dumpResourceLoadCallbacksPath;
bool FrameLoaderClientQt::policyDelegateEnabled = false;
bool FrameLoaderClientQt::policyDelegatePermissive = false;
+QMap<QString, QString> FrameLoaderClientQt::URLsToRedirect = QMap<QString, QString>();
// Taken from DumpRenderTree/chromium/WebViewHost.cpp
static const char* navigationTypeToString(NavigationType type)
@@ -629,7 +630,7 @@ void FrameLoaderClientQt::finishedLoading(DocumentLoader* loader)
// However, we only want to do this if makeRepresentation has been called, to
// match the behavior on the Mac.
if (m_hasRepresentation)
- loader->frameLoader()->writer()->setEncoding("", false);
+ loader->writer()->setEncoding("", false);
return;
}
if (m_pluginView->isPluginView())
@@ -846,7 +847,7 @@ void FrameLoaderClientQt::didDisplayInsecureContent()
notImplemented();
}
-void FrameLoaderClientQt::didRunInsecureContent(WebCore::SecurityOrigin*)
+void FrameLoaderClientQt::didRunInsecureContent(WebCore::SecurityOrigin*, const KURL&)
{
if (dumpFrameLoaderCallbacks)
printf("didRunInsecureContent\n");
@@ -1021,6 +1022,11 @@ void FrameLoaderClientQt::dispatchWillSendRequest(WebCore::DocumentLoader*, unsi
for (int i = 0; i < sendRequestClearHeaders.size(); ++i)
newRequest.setHTTPHeaderField(sendRequestClearHeaders.at(i).toLocal8Bit().constData(), QString());
+ if (QWebPagePrivate::drtRun) {
+ QString url = newRequest.url().string();
+ if (URLsToRedirect.contains(url))
+ newRequest.setURL(QUrl(URLsToRedirect[url]));
+ }
// seems like the Mac code doesn't do anything here by default neither
//qDebug() << "FrameLoaderClientQt::dispatchWillSendRequest" << request.isNull() << request.url().string`();
}
@@ -1510,46 +1516,46 @@ PassRefPtr<Widget> FrameLoaderClientQt::createPlugin(const IntSize& pluginSize,
#endif // QT_NO_STYLE_STYLESHEET
}
- if (!object) {
- QWebPluginFactory* factory = m_webFrame->page()->pluginFactory();
- if (factory)
- object = factory->create(mimeType, qurl, params, values);
- }
+ if (!object) {
+ QWebPluginFactory* factory = m_webFrame->page()->pluginFactory();
+ if (factory)
+ object = factory->create(mimeType, qurl, params, values);
+ }
- if (object) {
- QWidget* widget = qobject_cast<QWidget*>(object);
- if (widget) {
- QWidget* parentWidget = 0;
- if (m_webFrame->page()->d->client)
- parentWidget = qobject_cast<QWidget*>(m_webFrame->page()->d->client->pluginParent());
- if (parentWidget) // don't reparent to nothing (i.e. keep whatever parent QWebPage::createPlugin() chose.
- widget->setParent(parentWidget);
- widget->hide();
- RefPtr<QtPluginWidget> w = adoptRef(new QtPluginWidget());
- w->setPlatformWidget(widget);
- // Make sure it's invisible until properly placed into the layout
- w->setFrameRect(IntRect(0, 0, 0, 0));
- return w;
- }
+ if (object) {
+ QWidget* widget = qobject_cast<QWidget*>(object);
+ if (widget) {
+ QWidget* parentWidget = 0;
+ if (m_webFrame->page()->d->client)
+ parentWidget = qobject_cast<QWidget*>(m_webFrame->page()->d->client->pluginParent());
+ if (parentWidget) // don't reparent to nothing (i.e. keep whatever parent QWebPage::createPlugin() chose.
+ widget->setParent(parentWidget);
+ widget->hide();
+ RefPtr<QtPluginWidget> w = adoptRef(new QtPluginWidget());
+ w->setPlatformWidget(widget);
+ // Make sure it's invisible until properly placed into the layout
+ w->setFrameRect(IntRect(0, 0, 0, 0));
+ return w;
+ }
#if !defined(QT_NO_GRAPHICSVIEW)
- QGraphicsWidget* graphicsWidget = qobject_cast<QGraphicsWidget*>(object);
- if (graphicsWidget) {
- QGraphicsObject* parentWidget = 0;
- if (m_webFrame->page()->d->client)
- parentWidget = qobject_cast<QGraphicsObject*>(m_webFrame->page()->d->client->pluginParent());
- graphicsWidget->hide();
- if (parentWidget) // don't reparent to nothing (i.e. keep whatever parent QWebPage::createPlugin() chose.
- graphicsWidget->setParentItem(parentWidget);
- RefPtr<QtPluginGraphicsWidget> w = QtPluginGraphicsWidget::create(graphicsWidget);
- // Make sure it's invisible until properly placed into the layout
- w->setFrameRect(IntRect(0, 0, 0, 0));
- return w;
- }
+ QGraphicsWidget* graphicsWidget = qobject_cast<QGraphicsWidget*>(object);
+ if (graphicsWidget) {
+ QGraphicsObject* parentWidget = 0;
+ if (m_webFrame->page()->d->client)
+ parentWidget = qobject_cast<QGraphicsObject*>(m_webFrame->page()->d->client->pluginParent());
+ graphicsWidget->hide();
+ if (parentWidget) // don't reparent to nothing (i.e. keep whatever parent QWebPage::createPlugin() chose.
+ graphicsWidget->setParentItem(parentWidget);
+ RefPtr<QtPluginGraphicsWidget> w = QtPluginGraphicsWidget::create(graphicsWidget);
+ // Make sure it's invisible until properly placed into the layout
+ w->setFrameRect(IntRect(0, 0, 0, 0));
+ return w;
+ }
#endif // QT_NO_GRAPHICSVIEW
- // FIXME: make things work for widgetless plugins as well
- delete object;
+ // FIXME: make things work for widgetless plugins as well
+ delete object;
}
#if ENABLE(NETSCAPE_PLUGIN_API)
else { // NPAPI Plugins
@@ -1575,7 +1581,7 @@ PassRefPtr<Widget> FrameLoaderClientQt::createPlugin(const IntSize& pluginSize,
if (wmodeIndex == -1) {
params.append("wmode");
values.append("opaque");
- } else
+ } else if (equalIgnoringCase(values[wmodeIndex], "window"))
values[wmodeIndex] = "opaque";
}
#endif
diff --git a/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.h b/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.h
index 3d93eaf..09a26ea 100644
--- a/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.h
+++ b/Source/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.h
@@ -158,7 +158,7 @@ public:
virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const;
virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
- virtual void didRunInsecureContent(SecurityOrigin*);
+ virtual void didRunInsecureContent(SecurityOrigin*, const KURL&);
virtual ResourceError cancelledError(const ResourceRequest&);
virtual ResourceError blockedError(const ResourceRequest&);
@@ -250,6 +250,7 @@ public:
static bool policyDelegatePermissive;
static bool deferMainResourceDataLoad;
static bool dumpHistoryCallbacks;
+ static QMap<QString, QString> URLsToRedirect;
private:
Frame *m_frame;
diff --git a/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.cpp b/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.cpp
index bdc22e5..ccca43c 100644
--- a/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.cpp
@@ -22,16 +22,57 @@
#include "FullScreenVideoQt.h"
#include "ChromeClientQt.h"
+#include "FullScreenVideoWidget.h"
#include "HTMLNames.h"
#include "HTMLVideoElement.h"
#include "MediaPlayerPrivateQt.h"
#include "Node.h"
-#include "qwebkitplatformplugin.h"
+
#include <QGraphicsVideoItem>
+#include <QMediaPlayer>
namespace WebCore {
+bool DefaultFullScreenVideoHandler::s_shouldForceFullScreenVideoPlayback = false;
+
+DefaultFullScreenVideoHandler::DefaultFullScreenVideoHandler()
+ : QWebFullScreenVideoHandler()
+ , m_fullScreenWidget(new FullScreenVideoWidget)
+{
+ connect(m_fullScreenWidget, SIGNAL(didExitFullScreen()), this, SIGNAL(fullScreenClosed()));
+ m_fullScreenWidget->hide();
+}
+
+DefaultFullScreenVideoHandler::~DefaultFullScreenVideoHandler()
+{
+ delete m_fullScreenWidget;
+}
+
+bool DefaultFullScreenVideoHandler::requiresFullScreenForVideoPlayback() const
+{
+ static bool initialized = false;
+ if (!initialized) {
+ QByteArray forceFullScreen = qgetenv("QT_WEBKIT_FORCE_FULLSCREEN_VIDEO");
+ if (!forceFullScreen.isEmpty())
+ s_shouldForceFullScreenVideoPlayback = true;
+
+ initialized = true;
+ }
+
+ return s_shouldForceFullScreenVideoPlayback;
+}
+
+void DefaultFullScreenVideoHandler::enterFullScreen(QMediaPlayer* player)
+{
+ m_fullScreenWidget->show(player);
+}
+
+void DefaultFullScreenVideoHandler::exitFullScreen()
+{
+ m_fullScreenWidget->close();
+}
+
FullScreenVideoQt::FullScreenVideoQt(ChromeClientQt* chromeClient)
: m_chromeClient(chromeClient)
, m_videoElement(0)
@@ -39,6 +80,9 @@ FullScreenVideoQt::FullScreenVideoQt(ChromeClientQt* chromeClient)
Q_ASSERT(m_chromeClient);
m_FullScreenVideoHandler = m_chromeClient->m_platformPlugin.createFullScreenVideoHandler();
+ if (!m_FullScreenVideoHandler)
+ m_FullScreenVideoHandler = new DefaultFullScreenVideoHandler;
+
if (m_FullScreenVideoHandler)
connect(m_FullScreenVideoHandler, SIGNAL(fullScreenClosed()), this, SLOT(aboutToClose()));
}
diff --git a/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.h b/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.h
index 637da70..a48a882 100644
--- a/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.h
+++ b/Source/WebKit/qt/WebCoreSupport/FullScreenVideoQt.h
@@ -20,21 +20,38 @@
#ifndef FullScreenVideoQt_h
#define FullScreenVideoQt_h
+#include "qwebkitplatformplugin.h"
#include <QObject>
QT_BEGIN_NAMESPACE
class QGraphicsVideoItem;
+class QMediaPlayer;
QT_END_NAMESPACE
-class QWebFullScreenVideoHandler;
-
namespace WebCore {
class ChromeClientQt;
+class FullScreenVideoWidget;
class HTMLVideoElement;
class Node;
class MediaPlayerPrivateQt;
+class DefaultFullScreenVideoHandler : public QWebFullScreenVideoHandler {
+ Q_OBJECT
+public:
+ DefaultFullScreenVideoHandler();
+ virtual ~DefaultFullScreenVideoHandler();
+ bool requiresFullScreenForVideoPlayback() const;
+
+public Q_SLOTS:
+ void enterFullScreen(QMediaPlayer*);
+ void exitFullScreen();
+
+private:
+ static bool s_shouldForceFullScreenVideoPlayback;
+ FullScreenVideoWidget *m_fullScreenWidget;
+};
+
class FullScreenVideoQt : public QObject {
Q_OBJECT
public:
@@ -61,4 +78,4 @@ private:
}
-#endif // PopupMenuQt_h
+#endif // FullScreenVideoQt_h
diff --git a/Source/WebKit/qt/WebCoreSupport/FullScreenVideoWidget.cpp b/Source/WebKit/qt/WebCoreSupport/FullScreenVideoWidget.cpp
new file mode 100644
index 0000000..4922cd7
--- /dev/null
+++ b/Source/WebKit/qt/WebCoreSupport/FullScreenVideoWidget.cpp
@@ -0,0 +1,122 @@
+/*
+ * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+ *
+ * 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.
+ */
+
+#include "FullScreenVideoWidget.h"
+
+#include <QApplication>
+#include <QCloseEvent>
+#include <QDesktopWidget>
+#include <QKeyEvent>
+#include <QMediaPlayer>
+
+static const int gHideMouseCursorDelay = 3000;
+
+namespace WebCore {
+
+FullScreenVideoWidget::FullScreenVideoWidget()
+ : QVideoWidget()
+ , m_mediaPlayer(0)
+{
+ QPalette palette(this->palette());
+ palette.setColor(QPalette::Base, Qt::black);
+ palette.setColor(QPalette::Background, Qt::black);
+ setPalette(palette);
+
+ setWindowModality(Qt::ApplicationModal);
+ setWindowFlags(windowFlags() | Qt::FramelessWindowHint);
+
+ setGeometry(QApplication::desktop()->screenGeometry());
+
+ m_cursorTimer.setSingleShot(true);
+ connect(&m_cursorTimer, SIGNAL(timeout()), this, SLOT(hideCursor()));
+}
+
+FullScreenVideoWidget::~FullScreenVideoWidget()
+{
+}
+
+void FullScreenVideoWidget::show(QMediaPlayer* player)
+{
+ m_mediaPlayer = player;
+ showFullScreen();
+ setMouseTracking(true);
+ raise();
+ m_mediaPlayer->setVideoOutput(this);
+ grabMouse();
+ hideCursor();
+}
+
+void FullScreenVideoWidget::closeEvent(QCloseEvent* event)
+{
+ m_mediaPlayer = 0;
+ setMouseTracking(false);
+ releaseMouse();
+ QApplication::restoreOverrideCursor();
+ event->ignore();
+ hide();
+ emit didExitFullScreen();
+}
+
+bool FullScreenVideoWidget::event(QEvent* ev)
+{
+ switch (ev->type()) {
+ case QEvent::MouseMove:
+ showCursor();
+ ev->accept();
+ return true;
+ case QEvent::MouseButtonDblClick:
+ close();
+ ev->accept();
+ return true;
+ default:
+ return QVideoWidget::event(ev);
+ }
+}
+
+void FullScreenVideoWidget::keyPressEvent(QKeyEvent* ev)
+{
+ if (m_mediaPlayer && ev->key() == Qt::Key_Space) {
+ if (m_mediaPlayer->state() == QMediaPlayer::PlayingState)
+ m_mediaPlayer->pause();
+ else
+ m_mediaPlayer->play();
+ } else if (ev->key() == Qt::Key_Escape)
+ close();
+}
+
+void FullScreenVideoWidget::hideCursor()
+{
+ QApplication::setOverrideCursor(QCursor(Qt::BlankCursor));
+}
+
+void FullScreenVideoWidget::showCursor()
+{
+ QApplication::restoreOverrideCursor();
+ m_cursorTimer.start(gHideMouseCursorDelay);
+}
+
+}
diff --git a/Source/WebKit/qt/WebCoreSupport/FullScreenVideoWidget.h b/Source/WebKit/qt/WebCoreSupport/FullScreenVideoWidget.h
new file mode 100644
index 0000000..466042c
--- /dev/null
+++ b/Source/WebKit/qt/WebCoreSupport/FullScreenVideoWidget.h
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+ *
+ * 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 FullScreenVideoWidget_h
+#define FullScreenVideoWidget_h
+
+#include <QTimer>
+#include <QVideoWidget>
+
+QT_BEGIN_NAMESPACE
+class QMediaPlayer;
+QT_END_NAMESPACE
+
+namespace WebCore {
+
+class FullScreenVideoWidget : public QVideoWidget {
+ Q_OBJECT
+public:
+ FullScreenVideoWidget();
+ virtual ~FullScreenVideoWidget();
+ void show(QMediaPlayer*);
+
+Q_SIGNALS:
+ void didExitFullScreen();
+
+protected:
+ virtual void closeEvent(QCloseEvent*);
+ virtual bool event(QEvent*);
+ virtual void keyPressEvent(QKeyEvent*);
+
+private slots:
+ void hideCursor();
+
+private:
+ void showCursor();
+ QMediaPlayer* m_mediaPlayer;
+ QTimer m_cursorTimer;
+};
+
+}
+
+#endif // FullScreenVideoWidget_h
diff --git a/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp b/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp
index 1b06e2e..f364b28 100644
--- a/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp
@@ -32,7 +32,6 @@
#include "InspectorClientQt.h"
#include "Frame.h"
-#include "InspectorBackendDispatcher.h"
#include "InspectorController.h"
#include "InspectorFrontend.h"
#include "InspectorServerQt.h"
@@ -55,9 +54,6 @@ namespace WebCore {
static const QLatin1String settingStoragePrefix("Qt/QtWebKit/QWebInspector/");
static const QLatin1String settingStorageTypeSuffix(".type");
-static String variantToSetting(const QVariant& qvariant);
-static QVariant settingToVariant(const String& value);
-
class InspectorClientWebPage : public QWebPage {
Q_OBJECT
friend class InspectorClientQt;
@@ -97,6 +93,85 @@ public slots:
}
};
+namespace {
+
+#if ENABLE(INSPECTOR)
+class InspectorFrontendSettingsQt : public InspectorFrontendClientLocal::Settings {
+public:
+ virtual ~InspectorFrontendSettingsQt() { }
+ virtual String getProperty(const String& name)
+ {
+#ifdef QT_NO_SETTINGS
+ Q_UNUSED(name)
+ Q_UNUSED(value)
+ qWarning("QWebInspector: QSettings is not supported by Qt.");
+ return String();
+#else
+ QSettings qsettings;
+ if (qsettings.status() == QSettings::AccessError) {
+ // QCoreApplication::setOrganizationName and QCoreApplication::setApplicationName haven't been called
+ qWarning("QWebInspector: QSettings couldn't read configuration setting [%s].",
+ qPrintable(static_cast<QString>(name)));
+ return String();
+ }
+
+ QString settingKey(settingStoragePrefix + QString(name));
+ QString storedValueType = qsettings.value(settingKey + settingStorageTypeSuffix).toString();
+ QVariant storedValue = qsettings.value(settingKey);
+ storedValue.convert(QVariant::nameToType(storedValueType.toAscii().data()));
+ return variantToSetting(storedValue);
+#endif // QT_NO_SETTINGS
+ }
+
+ virtual void setProperty(const String& name, const String& value)
+ {
+#ifdef QT_NO_SETTINGS
+ Q_UNUSED(name)
+ Q_UNUSED(value)
+ qWarning("QWebInspector: QSettings is not supported by Qt.");
+#else
+ QSettings qsettings;
+ if (qsettings.status() == QSettings::AccessError) {
+ qWarning("QWebInspector: QSettings couldn't persist configuration setting [%s].",
+ qPrintable(static_cast<QString>(name)));
+ return;
+ }
+
+ QVariant valueToStore = settingToVariant(value);
+ QString settingKey(settingStoragePrefix + QString(name));
+ qsettings.setValue(settingKey, valueToStore);
+ qsettings.setValue(settingKey + settingStorageTypeSuffix, QVariant::typeToName(valueToStore.type()));
+#endif // QT_NO_SETTINGS
+ }
+
+private:
+ static String variantToSetting(const QVariant& qvariant)
+ {
+ String retVal;
+
+ switch (qvariant.type()) {
+ case QVariant::Bool:
+ retVal = qvariant.toBool() ? "true" : "false";
+ case QVariant::String:
+ retVal = qvariant.toString();
+ default:
+ break;
+ }
+
+ return retVal;
+ }
+
+ static QVariant settingToVariant(const String& setting)
+ {
+ QVariant retVal;
+ retVal.setValue(static_cast<QString>(setting));
+ return retVal;
+ }
+};
+#endif // ENABLE(INSPECTOR)
+
+}
+
#if USE(V8)
static void ensureDebuggerScriptLoaded()
{
@@ -213,50 +288,6 @@ void InspectorClientQt::hideHighlight()
notImplemented();
}
-void InspectorClientQt::populateSetting(const String& key, String* setting)
-{
-#ifdef QT_NO_SETTINGS
- Q_UNUSED(key)
- Q_UNUSED(setting)
- qWarning("QWebInspector: QSettings is not supported by Qt.");
-#else
- QSettings qsettings;
- if (qsettings.status() == QSettings::AccessError) {
- // QCoreApplication::setOrganizationName and QCoreApplication::setApplicationName haven't been called
- qWarning("QWebInspector: QSettings couldn't read configuration setting [%s].",
- qPrintable(static_cast<QString>(key)));
- return;
- }
-
- QString settingKey(settingStoragePrefix + QString(key));
- QString storedValueType = qsettings.value(settingKey + settingStorageTypeSuffix).toString();
- QVariant storedValue = qsettings.value(settingKey);
- storedValue.convert(QVariant::nameToType(storedValueType.toAscii().data()));
- *setting = variantToSetting(storedValue);
-#endif // QT_NO_SETTINGS
-}
-
-void InspectorClientQt::storeSetting(const String& key, const String& setting)
-{
-#ifdef QT_NO_SETTINGS
- Q_UNUSED(key)
- Q_UNUSED(setting)
- qWarning("QWebInspector: QSettings is not supported by Qt.");
-#else
- QSettings qsettings;
- if (qsettings.status() == QSettings::AccessError) {
- qWarning("QWebInspector: QSettings couldn't persist configuration setting [%s].",
- qPrintable(static_cast<QString>(key)));
- return;
- }
-
- QVariant valueToStore = settingToVariant(setting);
- QString settingKey(settingStoragePrefix + QString(key));
- qsettings.setValue(settingKey, valueToStore);
- qsettings.setValue(settingKey + settingStorageTypeSuffix, QVariant::typeToName(valueToStore.type()));
-#endif // QT_NO_SETTINGS
-}
-
bool InspectorClientQt::sendMessageToFrontend(const String& message)
{
#if ENABLE(INSPECTOR)
@@ -276,32 +307,9 @@ bool InspectorClientQt::sendMessageToFrontend(const String& message)
#endif
}
-static String variantToSetting(const QVariant& qvariant)
-{
- String retVal;
-
- switch (qvariant.type()) {
- case QVariant::Bool:
- retVal = qvariant.toBool() ? "true" : "false";
- case QVariant::String:
- retVal = qvariant.toString();
- default:
- break;
- }
-
- return retVal;
-}
-
-static QVariant settingToVariant(const String& setting)
-{
- QVariant retVal;
- retVal.setValue(static_cast<QString>(setting));
- return retVal;
-}
-
#if ENABLE(INSPECTOR)
InspectorFrontendClientQt::InspectorFrontendClientQt(QWebPage* inspectedWebPage, PassOwnPtr<QWebView> inspectorView, InspectorClientQt* inspectorClient)
- : InspectorFrontendClientLocal(inspectedWebPage->d->page->inspectorController(), inspectorView->page()->d->page)
+ : InspectorFrontendClientLocal(inspectedWebPage->d->page->inspectorController(), inspectorView->page()->d->page, new InspectorFrontendSettingsQt())
, m_inspectedWebPage(inspectedWebPage)
, m_inspectorView(inspectorView)
, m_destroyingInspectorView(false)
diff --git a/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.h b/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.h
index 64a2d0c..c16fabe 100644
--- a/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.h
+++ b/Source/WebKit/qt/WebCoreSupport/InspectorClientQt.h
@@ -58,9 +58,6 @@ public:
virtual void highlight(Node*);
virtual void hideHighlight();
- virtual void populateSetting(const String& key, String* value);
- virtual void storeSetting(const String& key, const String& value);
-
virtual bool sendMessageToFrontend(const String&);
void releaseFrontendPage();
diff --git a/Source/WebKit/qt/WebCoreSupport/InspectorServerQt.cpp b/Source/WebKit/qt/WebCoreSupport/InspectorServerQt.cpp
index 7002dce..f83deb2 100644
--- a/Source/WebKit/qt/WebCoreSupport/InspectorServerQt.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/InspectorServerQt.cpp
@@ -20,8 +20,8 @@
#include "config.h"
#include "InspectorServerQt.h"
-#include "InspectorBackendDispatcher.h"
#include "InspectorClientQt.h"
+#include "InspectorController.h"
#include "MD5.h"
#include "Page.h"
#include "qwebpage.h"
@@ -363,7 +363,7 @@ void InspectorServerRequestHandlerQt::webSocketReadyRead()
#if ENABLE(INSPECTOR)
if (m_inspectorClient) {
InspectorController* inspectorController = m_inspectorClient->m_inspectedWebPage->d->page->inspectorController();
- inspectorController->inspectorBackendDispatcher()->dispatch(QString::fromUtf8(payload));
+ inspectorController->dispatchMessageFromFrontend(QString::fromUtf8(payload));
}
#endif
diff --git a/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.cpp b/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.cpp
index 0c0f2d7..f7c4edc 100644
--- a/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/PopupMenuQt.cpp
@@ -109,7 +109,7 @@ void PopupMenuQt::show(const IntRect& rect, FrameView* view, int index)
if (QtFallbackWebPopup* fallback = qobject_cast<QtFallbackWebPopup*>(m_popup)) {
QRect geometry(rect);
- geometry.moveTopLeft(view->contentsToWindow(rect.topLeft()));
+ geometry.moveTopLeft(view->contentsToWindow(rect.location()));
fallback->setGeometry(geometry);
fallback->setFont(m_popupClient->menuStyle().font().font());
}
diff --git a/Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.cpp b/Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.cpp
index c67ec2f..de4de3e 100644
--- a/Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.cpp
+++ b/Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.cpp
@@ -200,6 +200,11 @@ String WebPlatformStrategies::contextMenuItemTagCopyImageToClipboard()
return QCoreApplication::translate("QWebPage", "Copy Image", "Copy Link context menu item");
}
+String WebPlatformStrategies::contextMenuItemTagCopyImageUrlToClipboard()
+{
+ return QCoreApplication::translate("QWebPage", "Copy Image Address", "Copy Image Address menu item");
+}
+
String WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow()
{
return QCoreApplication::translate("QWebPage", "Open Video", "Open Video in New Window");
diff --git a/Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.h b/Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.h
index 5f72f46..b760045 100644
--- a/Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.h
+++ b/Source/WebKit/qt/WebCoreSupport/WebPlatformStrategies.h
@@ -66,6 +66,7 @@ private:
virtual WTF::String contextMenuItemTagOpenImageInNewWindow();
virtual WTF::String contextMenuItemTagDownloadImageToDisk();
virtual WTF::String contextMenuItemTagCopyImageToClipboard();
+ virtual WTF::String contextMenuItemTagCopyImageUrlToClipboard();
virtual WTF::String contextMenuItemTagOpenFrameInNewWindow();
virtual WTF::String contextMenuItemTagCopy();
virtual WTF::String contextMenuItemTagGoBack();
diff --git a/Source/WebKit/qt/declarative/declarative.pro b/Source/WebKit/qt/declarative/declarative.pro
index bc94eed..526cf06 100644
--- a/Source/WebKit/qt/declarative/declarative.pro
+++ b/Source/WebKit/qt/declarative/declarative.pro
@@ -33,7 +33,7 @@ symbian: {
TARGET = $$TARGET$${QT_LIBINFIX}
}
-include(../../../../WebKit.pri)
+include(../../../WebKit.pri)
QT += declarative
diff --git a/Source/WebKit/qt/declarative/qdeclarativewebview.cpp b/Source/WebKit/qt/declarative/qdeclarativewebview.cpp
index e26889e..bcc1f1c 100644
--- a/Source/WebKit/qt/declarative/qdeclarativewebview.cpp
+++ b/Source/WebKit/qt/declarative/qdeclarativewebview.cpp
@@ -141,6 +141,16 @@ void GraphicsWebView::mouseMoveEvent(QGraphicsSceneMouseEvent* event)
QGraphicsWebView::mouseMoveEvent(event);
}
+bool GraphicsWebView::sceneEvent(QEvent *event)
+{
+ bool rv = QGraphicsWebView::sceneEvent(event);
+ if (event->type() == QEvent::UngrabMouse) {
+ pressTimer.stop();
+ parent->setKeepMouseGrab(false);
+ }
+ return rv;
+}
+
/*!
\qmlclass WebView QDeclarativeWebView
\ingroup qml-view-elements
@@ -249,7 +259,11 @@ void QDeclarativeWebView::init()
{
d = new QDeclarativeWebViewPrivate(this);
- QWebSettings::enablePersistentStorage();
+ if (QWebSettings::iconDatabasePath().isNull() &&
+ QWebSettings::globalSettings()->localStoragePath().isNull() &&
+ QWebSettings::offlineStoragePath().isNull() &&
+ QWebSettings::offlineWebApplicationCachePath().isNull())
+ QWebSettings::enablePersistentStorage();
setAcceptedMouseButtons(Qt::LeftButton);
setFlag(QGraphicsItem::ItemHasNoContents, true);
@@ -730,11 +744,11 @@ QWebPage* QDeclarativeWebView::page() const
See QWebSettings for details of these properties.
\qml
- WebView {
- settings.pluginsEnabled: true
- settings.standardFontFamily: "Arial"
- ...
- }
+ WebView {
+ settings.pluginsEnabled: true
+ settings.standardFontFamily: "Arial"
+ // ...
+ }
\endqml
*/
QDeclarativeWebSettings* QDeclarativeWebView::settingsObject() const
diff --git a/Source/WebKit/qt/declarative/qdeclarativewebview_p.h b/Source/WebKit/qt/declarative/qdeclarativewebview_p.h
index b2055bf..ca15a1e 100644
--- a/Source/WebKit/qt/declarative/qdeclarativewebview_p.h
+++ b/Source/WebKit/qt/declarative/qdeclarativewebview_p.h
@@ -70,6 +70,8 @@ protected:
void mouseMoveEvent(QGraphicsSceneMouseEvent* event);
void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event);
void timerEvent(QTimerEvent* event);
+ bool sceneEvent(QEvent *event);
+
Q_SIGNALS:
void doubleClick(int clickX, int clickY);
private:
diff --git a/Source/WebKit/qt/docs/docs.pri b/Source/WebKit/qt/docs/docs.pri
index d87dcd6..a56ddb4 100644
--- a/Source/WebKit/qt/docs/docs.pri
+++ b/Source/WebKit/qt/docs/docs.pri
@@ -1,4 +1,4 @@
-include(../../../../WebKit.pri)
+include(../../../WebKit.pri)
unix {
QDOC = SRCDIR=$$PWD/../../.. OUTPUT_DIR=$$OUTPUT_DIR $$(QTDIR)/bin/qdoc3
diff --git a/Source/WebKit/qt/docs/qtwebkit.qdoc b/Source/WebKit/qt/docs/qtwebkit.qdoc
index df22e65..1e76901 100644
--- a/Source/WebKit/qt/docs/qtwebkit.qdoc
+++ b/Source/WebKit/qt/docs/qtwebkit.qdoc
@@ -103,8 +103,8 @@
The following locations are searched for plugins:
\table
- \header \o Linux/Unix (X11) \o Windows
- \row \o{1,3}
+ \header \o Linux/Unix (X11)
+ \row \o
\list
\o \c{.mozilla/plugins} in the user's home directory
\o \c{.netscape/plugins} in the user's home directory
@@ -134,19 +134,20 @@
\o \c{$QTWEBKIT_PLUGIN_PATH}
\endlist
\endlist
+ \endtable
- \o
+ \table
+ \header \o Windows
+ \row \o
\list
\o The user's \c{Application Data\Mozilla\plugins} directory
\o Standard system locations of plugins for Quicktime, Flash, etc.
\endlist
+ \endtable
- \row
- \raw HTML
- <th class="qt-style">Mac OS X</th>
- \endraw
- \row
- \o
+ \table
+ \header \o Mac OS X
+ \row \o
\list
\o \c{Library/Internet Plug-Ins} in the user's home directory
\o The system \c{/Library/Internet Plug-Ins} directory
diff --git a/Source/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp b/Source/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp
index 6b0b58d..3c47d1c 100644
--- a/Source/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp
+++ b/Source/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp
@@ -308,7 +308,7 @@ public:
}
Q_INVOKABLE QObjectList myInvokableWithQObjectListArg(const QObjectList &lst) {
m_qtFunctionInvoked = 14;
- m_actuals << qVariantFromValue(lst);
+ m_actuals << QVariant::fromValue(lst);
return lst;
}
Q_INVOKABLE QVariant myInvokableWithVariantArg(const QVariant &v) {
@@ -323,38 +323,38 @@ public:
}
Q_INVOKABLE QList<int> myInvokableWithListOfIntArg(const QList<int> &lst) {
m_qtFunctionInvoked = 17;
- m_actuals << qVariantFromValue(lst);
+ m_actuals << QVariant::fromValue(lst);
return lst;
}
Q_INVOKABLE QObject* myInvokableWithQObjectStarArg(QObject* obj) {
m_qtFunctionInvoked = 18;
- m_actuals << qVariantFromValue(obj);
+ m_actuals << QVariant::fromValue(obj);
return obj;
}
Q_INVOKABLE QBrush myInvokableWithQBrushArg(const QBrush &brush) {
m_qtFunctionInvoked = 19;
- m_actuals << qVariantFromValue(brush);
+ m_actuals << QVariant::fromValue(brush);
return brush;
}
Q_INVOKABLE void myInvokableWithBrushStyleArg(Qt::BrushStyle style) {
m_qtFunctionInvoked = 43;
- m_actuals << qVariantFromValue(style);
+ m_actuals << QVariant::fromValue(style);
}
Q_INVOKABLE void myInvokableWithVoidStarArg(void* arg) {
m_qtFunctionInvoked = 44;
- m_actuals << qVariantFromValue(arg);
+ m_actuals << QVariant::fromValue(arg);
}
Q_INVOKABLE void myInvokableWithAmbiguousArg(int arg) {
m_qtFunctionInvoked = 45;
- m_actuals << qVariantFromValue(arg);
+ m_actuals << QVariant::fromValue(arg);
}
Q_INVOKABLE void myInvokableWithAmbiguousArg(uint arg) {
m_qtFunctionInvoked = 46;
- m_actuals << qVariantFromValue(arg);
+ m_actuals << QVariant::fromValue(arg);
}
Q_INVOKABLE void myInvokableWithDefaultArgs(int arg1, const QString &arg2 = "") {
m_qtFunctionInvoked = 47;
- m_actuals << qVariantFromValue(arg1) << qVariantFromValue(arg2);
+ m_actuals << QVariant::fromValue(arg1) << qVariantFromValue(arg2);
}
Q_INVOKABLE QObject& myInvokableReturningRef() {
m_qtFunctionInvoked = 48;
@@ -366,11 +366,11 @@ public:
}
Q_INVOKABLE void myInvokableWithPointArg(const QPoint &arg) {
const_cast<MyQObject*>(this)->m_qtFunctionInvoked = 50;
- m_actuals << qVariantFromValue(arg);
+ m_actuals << QVariant::fromValue(arg);
}
Q_INVOKABLE void myInvokableWithPointArg(const QPointF &arg) {
const_cast<MyQObject*>(this)->m_qtFunctionInvoked = 51;
- m_actuals << qVariantFromValue(arg);
+ m_actuals << QVariant::fromValue(arg);
}
Q_INVOKABLE void myInvokableWithBoolArg(bool arg) {
m_qtFunctionInvoked = 52;
@@ -418,7 +418,7 @@ public Q_SLOTS:
}
void myOverloadedSlot(QObject* arg) {
m_qtFunctionInvoked = 41;
- m_actuals << qVariantFromValue(arg);
+ m_actuals << QVariant::fromValue(arg);
}
void myOverloadedSlot(bool arg) {
m_qtFunctionInvoked = 25;
@@ -514,6 +514,24 @@ private:
QVariantList m_actuals;
};
+class MyWebElementSlotOnlyObject : public QObject {
+ Q_OBJECT
+ Q_PROPERTY(QString tagName READ tagName)
+public slots:
+ void doSomethingWithWebElement(const QWebElement& element)
+ {
+ m_tagName = element.tagName();
+ }
+
+public:
+ QString tagName() const
+ {
+ return m_tagName;
+ }
+private:
+ QString m_tagName;
+};
+
class MyOtherQObject : public MyQObject
{
public:
@@ -584,6 +602,7 @@ private slots:
void findChild();
void findChildren();
void overloadedSlots();
+ void webElementSlotOnly();
void enumerate_data();
void enumerate();
void objectDeleted();
@@ -824,7 +843,7 @@ void tst_QWebFrame::getSetStaticProperty()
QCOMPARE(evalJS("myObject.variantProperty === 'bar'"), sTrue);
m_myObject->setVariantProperty(42);
QCOMPARE(evalJS("myObject.variantProperty === 42"), sTrue);
- m_myObject->setVariantProperty(qVariantFromValue(QBrush()));
+ m_myObject->setVariantProperty(QVariant::fromValue(QBrush()));
//XFAIL
// QCOMPARE(evalJS("typeof myObject.variantProperty"), sVariant);
@@ -1246,7 +1265,7 @@ void tst_QWebFrame::callQtInvokable()
/* XFAIL - variant support
m_myObject->resetQtFunctionInvoked();
{
- m_myObject->setVariantProperty(qVariantFromValue(QBrush()));
+ m_myObject->setVariantProperty(QVariant::fromValue(QBrush()));
QVariant ret = evalJS("myObject.myInvokableWithVariantArg(myObject.variantProperty)");
QVERIFY(ret.isVariant());
QCOMPARE(m_myObject->qtFunctionInvoked(), 15);
@@ -2427,8 +2446,10 @@ void tst_QWebFrame::javaScriptWindowObjectClearedOnEvaluate()
void tst_QWebFrame::setHtml()
{
QString html("<html><head></head><body><p>hello world</p></body></html>");
+ QSignalSpy spy(m_view->page(), SIGNAL(loadFinished(bool)));
m_view->page()->mainFrame()->setHtml(html);
QCOMPARE(m_view->page()->mainFrame()->toHtml(), html);
+ QCOMPARE(spy.count(), 1);
}
void tst_QWebFrame::setHtmlWithResource()
@@ -3257,5 +3278,14 @@ void tst_QWebFrame::setCacheLoadControlAttribute()
QCOMPARE(manager->lastCacheLoad(), QNetworkRequest::PreferNetwork);
}
+void tst_QWebFrame::webElementSlotOnly()
+{
+ MyWebElementSlotOnlyObject object;
+ m_page->mainFrame()->setHtml("<html><head><body></body></html>");
+ m_page->mainFrame()->addToJavaScriptWindowObject("myWebElementSlotObject", &object);
+ evalJS("myWebElementSlotObject.doSomethingWithWebElement(document.body)");
+ QCOMPARE(evalJS("myWebElementSlotObject.tagName"), QString("BODY"));
+}
+
QTEST_MAIN(tst_QWebFrame)
#include "tst_qwebframe.moc"
diff --git a/Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp b/Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp
index ec1f336..c9c409d 100644
--- a/Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp
+++ b/Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp
@@ -78,6 +78,7 @@ private slots:
void initTestCase();
void cleanupTestCase();
+ void contextMenuCopy();
void acceptNavigationRequest();
void geolocationRequestJS();
void loadFinished();
@@ -85,6 +86,7 @@ private slots:
void userStyleSheet();
void modified();
void contextMenuCrash();
+ void updatePositionDependentActionsCrash();
void database();
void createPluginWithPluginsEnabled();
void createPluginWithPluginsDisabled();
@@ -133,6 +135,7 @@ private slots:
void infiniteLoopJS();
void networkAccessManagerOnDifferentThread();
void navigatorCookieEnabled();
+ void navigatorCookieEnabledForNetworkAccessManagerOnDifferentThread();
#ifdef Q_OS_MAC
void macCopyUnicodeToClipboard();
@@ -495,11 +498,31 @@ void tst_QWebPage::modified()
QVERIFY(::waitForSignal(m_page, SIGNAL(saveFrameStateRequested(QWebFrame*,QWebHistoryItem*))));
}
+// https://bugs.webkit.org/show_bug.cgi?id=51331
+void tst_QWebPage::updatePositionDependentActionsCrash()
+{
+ QWebView view;
+ view.setHtml("<p>test");
+ QPoint pos(0, 0);
+ view.page()->updatePositionDependentActions(pos);
+ QMenu* contextMenu = 0;
+ foreach (QObject* child, view.children()) {
+ contextMenu = qobject_cast<QMenu*>(child);
+ if (contextMenu)
+ break;
+ }
+ QVERIFY(!contextMenu);
+}
+
+// https://bugs.webkit.org/show_bug.cgi?id=20357
void tst_QWebPage::contextMenuCrash()
{
QWebView view;
view.setHtml("<p>test");
- view.page()->updatePositionDependentActions(QPoint(0, 0));
+ QPoint pos(0, 0);
+ QContextMenuEvent event(QContextMenuEvent::Mouse, pos);
+ view.page()->swallowContextMenuEvent(&event);
+ view.page()->updatePositionDependentActions(pos);
QMenu* contextMenu = 0;
foreach (QObject* child, view.children()) {
contextMenu = qobject_cast<QMenu*>(child);
@@ -2740,6 +2763,19 @@ void tst_QWebPage::navigatorCookieEnabled()
QVERIFY(m_page->mainFrame()->evaluateJavaScript("navigator.cookieEnabled").toBool());
}
+void tst_QWebPage::navigatorCookieEnabledForNetworkAccessManagerOnDifferentThread()
+{
+ QtNAMThread qnamThread;
+ qnamThread.start();
+ m_page->setNetworkAccessManager(qnamThread.networkAccessManager());
+
+ // This call access the cookie jar, the cookie jar must be in the same thread as
+ // the network access manager.
+ QVERIFY(m_page->mainFrame()->evaluateJavaScript("navigator.cookieEnabled").toBool());
+
+ QCOMPARE(qnamThread.networkAccessManager()->cookieJar()->thread(), &qnamThread);
+}
+
#ifdef Q_OS_MAC
void tst_QWebPage::macCopyUnicodeToClipboard()
{
@@ -2755,5 +2791,29 @@ void tst_QWebPage::macCopyUnicodeToClipboard()
}
#endif
+void tst_QWebPage::contextMenuCopy()
+{
+ QWebView view;
+
+ view.setHtml("<a href=\"http://www.google.com\">You cant miss this</a>");
+
+ view.page()->triggerAction(QWebPage::SelectAll);
+ QVERIFY(!view.page()->selectedText().isEmpty());
+
+ QWebElement link = view.page()->mainFrame()->findFirstElement("a");
+ QPoint pos(link.geometry().center());
+ QContextMenuEvent event(QContextMenuEvent::Mouse, pos);
+ view.page()->swallowContextMenuEvent(&event);
+ view.page()->updatePositionDependentActions(pos);
+
+ QList<QMenu*> contextMenus = view.findChildren<QMenu*>();
+ QVERIFY(!contextMenus.isEmpty());
+ QMenu* contextMenu = contextMenus.first();
+ QVERIFY(contextMenu);
+
+ QList<QAction *> list = contextMenu->actions();
+ int index = list.indexOf(view.page()->action(QWebPage::Copy));
+ QVERIFY(index != -1);
+}
QTEST_MAIN(tst_QWebPage)
#include "tst_qwebpage.moc"
diff --git a/Source/WebKit/qt/tests/tests.pri b/Source/WebKit/qt/tests/tests.pri
index 2e30dd0..a795ff8 100644
--- a/Source/WebKit/qt/tests/tests.pri
+++ b/Source/WebKit/qt/tests/tests.pri
@@ -10,7 +10,7 @@ INCLUDEPATH += \
$$PWD \
$$PWD/../Api
-include(../../../../WebKit.pri)
+include(../../../WebKit.pri)
QT += testlib network
QMAKE_RPATHDIR = $$OUTPUT_DIR/lib $$QMAKE_RPATHDIR
diff --git a/Source/WebKit/win/ChangeLog b/Source/WebKit/win/ChangeLog
index 6a3b53c..a24c061 100644
--- a/Source/WebKit/win/ChangeLog
+++ b/Source/WebKit/win/ChangeLog
@@ -1,3 +1,268 @@
+2011-02-11 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ A little more encapsulation for the heap: Removed CollectorHeapIterator
+ https://bugs.webkit.org/show_bug.cgi?id=54298
+
+ * WebCoreStatistics.cpp:
+ (WebCoreStatistics::javaScriptProtectedObjectTypeCounts):
+
+2011-02-09 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: follow up on InspectorAgent split -
+ removing unnecessary methods from InspectorController.
+ https://bugs.webkit.org/show_bug.cgi?id=54093
+
+ * WebInspector.cpp:
+ (WebInspector::showConsole):
+ (WebInspector::toggleProfilingJavaScript):
+
+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/WebChromeClient.h:
+
+2011-02-08 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Adam Roben.
+
+ <rdar://problem/8932077> REGRESSION (5.0.3-ToT): United boarding pass has wrong layout when printed
+
+ Windows never got patched to pass in the page height to WebCore, so when WebCore's pagination got re-written to depend on this
+ value, Windows got broken. Patch setPrinting to be identical to WebKit1 on OS X and to have it take an extra minimum page height
+ argument.
+
+ * WebFrame.cpp:
+ (WebFrame::setPrinting):
+ (WebFrame::setInPrintingMode):
+ * WebFrame.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.
+
+ * WebInspector.cpp:
+ (WebInspector::isTimelineProfilingEnabled):
+
+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/WebDragClient.cpp:
+ (WebDragClient::startDrag):
+ * WebCoreSupport/WebDragClient.h:
+
+2011-02-06 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ OwnArraryPtr.h uses deleteOwnedPtr but doesn’t include OwnPtrCommon.h
+ https://bugs.webkit.org/show_bug.cgi?id=52867
+
+ * WebHistory.cpp:
+ (WebHistory::orderedLastVisitedDays): Calls adoptArrayPtr.
+ * WebPreferences.cpp:
+ (WebPreferences::copyWebKitPreferencesToCFPreferences): Ditto.
+
+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/WebInspectorClient.cpp:
+ (WebInspectorClient::openInspectorFrontend):
+ (WebInspectorFrontendClient::WebInspectorFrontendClient):
+ * WebCoreSupport/WebInspectorClient.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/WebFrameLoaderClient.cpp:
+ (WebFrameLoaderClient::didRunInsecureContent):
+ * WebCoreSupport/WebFrameLoaderClient.h:
+
+2011-02-02 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Removal of right()/bottom(), converting to maxX()/maxY().
+
+ * DOMHTMLClasses.cpp:
+ (DOMHTMLInputElement::rectOnScreen):
+ * WebCoreSupport/EmbeddedWidget.cpp:
+ (EmbeddedWidget::frameRectsChanged):
+ * WebFrame.cpp:
+ (WebFrame::computePageRects):
+ * WebScrollBar.cpp:
+ (WebScrollBar::frameRect):
+ * WebView.cpp:
+ (WebView::addToDirtyRegion):
+ (WebView::visibleContentRect):
+ (WebView::prepareCandidateWindow):
+
+2011-01-31 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Fix the clean Windows build.
+
+ * WebKitGraphics.cpp:
+ (WebDrawText):
+
+2011-01-28 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Downloads in WK2 on Windows should write resume data to bundle
+ https://bugs.webkit.org/show_bug.cgi?id=53282
+ <rdar://problem/8753077>
+
+ Reviewed by Alice Liu.
+
+ * WebDownload.cpp:
+ (WebDownload::bundlePathForTargetPath):
+ Use the new WebCore::DownloadBundle function.
+ (WebDownload::request):
+
+ * WebDownload.h:
+ Removed declarations for functions that were moved to a new location.
+
+ * WebDownloadCFNet.cpp:
+ (WebDownload::initToResumeWithBundle):
+ Use the new WebCore::DownloadBundle function.
+ (WebDownload::cancelForResume):
+ Fix a leak of the resume data CFDataRef by using adoptCF(). Use the new
+ WebCore::DownloadBundle function.
+
+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/WebChromeClient.cpp:
+ (WebChromeClient::selectItemAlignmentFollowsMenuWritingDirection): Added.
+ * WebCoreSupport/WebChromeClient.h:
+
+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
+
+ * WebFrame.cpp:
+ (WebFrame::url):
+
+2011-01-27 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Fix scrollbars in Safari's Downloads window and Bookmarks view by
+ implementing two needed functions from ScrollableArea.
+
+ * WebScrollBar.cpp:
+ (WebScrollBar::horizontalScrollbar): Return the WebCore::Scrollbar if
+ we are a horizontal scrollbar.
+ (WebScrollBar::verticalScrollbar): Return the WebCore::Scrollbar if we
+ are a vertical scrollbar.
+ * WebScrollBar.h:
+
+2011-01-27 Adam Roben <aroben@apple.com>
+
+ Trim down #includes in WebView.h
+
+ Rubber-stamped by Steve Falkenburg.
+
+ * WebView.cpp: Moved some #includes here from the header file.
+
+ * WebView.h: Replaced some broader #includes with more specific ones, plus a
+ forward-declaration.
+
+2011-01-25 Steve Falkenburg <sfalken@apple.com>
+
+ Windows production build fix.
+ Build correct configuration of Interfaces for Debug_All.
+
+ * WebKit.vcproj/WebKit.submit.sln:
+
+2011-01-25 Steve Falkenburg <sfalken@apple.com>
+
+ Rubber-stamped by Adam Roben.
+
+ Windows production build fix.
+ Use correct environment variable escaping
+
+ * WebKit.vcproj/WebKit.make:
+
+2011-01-24 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Change ENABLE_3D_CANVAS to ENABLE_WEBGL
+ https://bugs.webkit.org/show_bug.cgi?id=53041
+
+ * WebView.cpp:
+ (WebView::notifyPreferencesChanged):
+
+2011-01-25 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: remove "attached" state related methods from InspectorAgent
+ https://bugs.webkit.org/show_bug.cgi?id=53086
+
+ * WebCoreSupport/WebInspectorClient.cpp:
+ (WebInspectorFrontendClient::attachWindow):
+ (WebInspectorFrontendClient::detachWindow):
+ (WebInspectorFrontendClient::showWindowWithoutNotifications):
+ * WebCoreSupport/WebInspectorClient.h:
+
+2011-01-24 Adam Roben <aroben@apple.com>
+
+ Windows Production build fix
+
+ * WebKit.vcproj/WebKit.make: Update for move of WebKit into Source.
+
+2011-01-21 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Introduce FontMetrics abstraction
+ https://bugs.webkit.org/show_bug.cgi?id=51456
+
+ * FullscreenVideoController.cpp: Use FontMetrics instead of Font to access the metrics.
+ (FullscreenVideoController::draw):
+ * WebCoreSupport/WebDragClient.cpp: Ditto.
+ (WebDragClient::createDragImageForLink):
+ * WebKitGraphics.cpp: Ditto.
+ (FontMetrics):
+
2011-01-21 Chris Rogers <crogers@google.com>
Reviewed by Darin Fisher.
diff --git a/Source/WebKit/win/DOMHTMLClasses.cpp b/Source/WebKit/win/DOMHTMLClasses.cpp
index 2dd6deb..7fe2748 100644
--- a/Source/WebKit/win/DOMHTMLClasses.cpp
+++ b/Source/WebKit/win/DOMHTMLClasses.cpp
@@ -1314,8 +1314,8 @@ HRESULT STDMETHODCALLTYPE DOMHTMLInputElement::rectOnScreen(
IntRect coreRect = view->contentsToScreen(renderer->absoluteBoundingBoxRect());
rect->left = coreRect.x();
rect->top = coreRect.y();
- rect->right = coreRect.right();
- rect->bottom = coreRect.bottom();
+ rect->right = coreRect.maxX();
+ rect->bottom = coreRect.maxY();
return S_OK;
}
diff --git a/Source/WebKit/win/FullscreenVideoController.cpp b/Source/WebKit/win/FullscreenVideoController.cpp
index ab954f8..6adbcaa 100644
--- a/Source/WebKit/win/FullscreenVideoController.cpp
+++ b/Source/WebKit/win/FullscreenVideoController.cpp
@@ -532,15 +532,16 @@ void FullscreenVideoController::draw()
// the text at the center of the slider.
// Left string
s = timeToString(currentTime());
+ int fontHeight = font.fontMetrics().height();
TextRun leftText(s);
context.setFillColor(Color(textColor), ColorSpaceDeviceRGB);
- context.drawText(font, leftText, IntPoint(windowWidth / 2 - timeSliderWidth / 2 - margin - font.width(leftText), windowHeight - margin - sliderHeight / 2 + font.height() / 4));
+ context.drawText(font, leftText, IntPoint(windowWidth / 2 - timeSliderWidth / 2 - margin - font.width(leftText), windowHeight - margin - sliderHeight / 2 + fontHeight / 4));
// Right string
s = timeToString(currentTime() - duration());
TextRun rightText(s);
context.setFillColor(Color(textColor), ColorSpaceDeviceRGB);
- context.drawText(font, rightText, IntPoint(windowWidth / 2 + timeSliderWidth / 2 + margin, windowHeight - margin - sliderHeight / 2 + font.height() / 4));
+ context.drawText(font, rightText, IntPoint(windowWidth / 2 + timeSliderWidth / 2 + margin, windowHeight - margin - sliderHeight / 2 + fontHeight / 4));
// Copy to the window
BLENDFUNCTION blendFunction = {AC_SRC_OVER, 0, 255, AC_SRC_ALPHA};
diff --git a/Source/WebKit/win/WebCoreStatistics.cpp b/Source/WebKit/win/WebCoreStatistics.cpp
index 29feea5..f5c399f 100644
--- a/Source/WebKit/win/WebCoreStatistics.cpp
+++ b/Source/WebKit/win/WebCoreStatistics.cpp
@@ -139,8 +139,8 @@ HRESULT STDMETHODCALLTYPE WebCoreStatistics::javaScriptProtectedObjectTypeCounts
/* [retval][out] */ IPropertyBag2** typeNamesAndCounts)
{
JSLock lock(SilenceAssertionsOnly);
- OwnPtr<HashCountedSet<const char*> > jsObjectTypeNames(JSDOMWindow::commonJSGlobalData()->heap.protectedObjectTypeCounts());
- typedef HashCountedSet<const char*>::const_iterator Iterator;
+ OwnPtr<TypeCountSet> jsObjectTypeNames(JSDOMWindow::commonJSGlobalData()->heap.protectedObjectTypeCounts());
+ typedef TypeCountSet::const_iterator Iterator;
Iterator end = jsObjectTypeNames->end();
HashMap<String, int> typeCountMap;
for (Iterator current = jsObjectTypeNames->begin(); current != end; ++current)
diff --git a/Source/WebKit/win/WebCoreSupport/EmbeddedWidget.cpp b/Source/WebKit/win/WebCoreSupport/EmbeddedWidget.cpp
index 371ff3a..fb2b564 100644
--- a/Source/WebKit/win/WebCoreSupport/EmbeddedWidget.cpp
+++ b/Source/WebKit/win/WebCoreSupport/EmbeddedWidget.cpp
@@ -120,7 +120,7 @@ void EmbeddedWidget::frameRectsChanged()
rgn = ::CreateRectRgn(0, 0, 0, 0);
::SetWindowRgn(m_window, rgn, FALSE);
} else {
- rgn = ::CreateRectRgn(m_clipRect.x(), m_clipRect.y(), m_clipRect.right(), m_clipRect.bottom());
+ rgn = ::CreateRectRgn(m_clipRect.x(), m_clipRect.y(), m_clipRect.maxX(), m_clipRect.maxY());
::SetWindowRgn(m_window, rgn, TRUE);
}
@@ -128,7 +128,7 @@ void EmbeddedWidget::frameRectsChanged()
::MoveWindow(m_window, m_windowRect.x(), m_windowRect.y(), m_windowRect.width(), m_windowRect.height(), TRUE);
if (clipToZeroRect) {
- rgn = ::CreateRectRgn(m_clipRect.x(), m_clipRect.y(), m_clipRect.right(), m_clipRect.bottom());
+ rgn = ::CreateRectRgn(m_clipRect.x(), m_clipRect.y(), m_clipRect.maxX(), m_clipRect.maxY());
::SetWindowRgn(m_window, rgn, TRUE);
}
}
diff --git a/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp b/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp
index f5cce4e..47ca713 100644
--- a/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp
+++ b/Source/WebKit/win/WebCoreSupport/WebChromeClient.cpp
@@ -862,6 +862,11 @@ bool WebChromeClient::selectItemWritingDirectionIsNatural()
return true;
}
+bool WebChromeClient::selectItemAlignmentFollowsMenuWritingDirection()
+{
+ return false;
+}
+
PassRefPtr<PopupMenu> WebChromeClient::createPopupMenu(PopupMenuClient* client) const
{
return adoptRef(new PopupMenuWin(client));
diff --git a/Source/WebKit/win/WebCoreSupport/WebChromeClient.h b/Source/WebKit/win/WebCoreSupport/WebChromeClient.h
index b6c2525..9298f1c 100644
--- a/Source/WebKit/win/WebCoreSupport/WebChromeClient.h
+++ b/Source/WebKit/win/WebCoreSupport/WebChromeClient.h
@@ -144,8 +144,6 @@ public:
virtual void formStateDidChange(const WebCore::Node*) { }
- virtual PassOwnPtr<WebCore::HTMLParserQuirks> createHTMLParserQuirks() { return 0; }
-
#if USE(ACCELERATED_COMPOSITING)
// Pass 0 as the GraphicsLayer to detatch the root layer.
virtual void attachRootGraphicsLayer(WebCore::Frame*, WebCore::GraphicsLayer*);
@@ -175,6 +173,7 @@ public:
#endif
virtual bool selectItemWritingDirectionIsNatural();
+ virtual bool selectItemAlignmentFollowsMenuWritingDirection();
virtual PassRefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::PopupMenuClient*) const;
virtual PassRefPtr<WebCore::SearchPopupMenu> createSearchPopupMenu(WebCore::PopupMenuClient*) const;
diff --git a/Source/WebKit/win/WebCoreSupport/WebDragClient.cpp b/Source/WebKit/win/WebCoreSupport/WebDragClient.cpp
index 184df95..c232867 100644
--- a/Source/WebKit/win/WebCoreSupport/WebDragClient.cpp
+++ b/Source/WebKit/win/WebCoreSupport/WebDragClient.cpp
@@ -35,39 +35,11 @@
#include <WebCore/ClipboardWin.h>
#include <WebCore/DragController.h>
#include <WebCore/DragData.h>
-#include <WebCore/Font.h>
-#include <WebCore/FontDescription.h>
-#include <WebCore/FontSelector.h>
#include <WebCore/FrameView.h>
#include <WebCore/GraphicsContext.h>
#include <WebCore/Page.h>
-#include <WebCore/Settings.h>
-#include <WebCore/StringTruncator.h>
-#include <WebCore/TextRun.h>
-#include <WebCore/WebCoreTextRenderer.h>
#pragma warning(pop)
-namespace WebCore {
- HBITMAP allocImage(HDC dc, IntSize size, PlatformGraphicsContext** targetRef);
- void deallocContext(PlatformGraphicsContext* target);
-}
-
-
-#define DRAG_LABEL_BORDER_X 4
-// Keep border_y in synch with DragController::LinkDragBorderInset
-#define DRAG_LABEL_BORDER_Y 2
-#define DRAG_LABEL_RADIUS 5
-#define DRAG_LABEL_BORDER_Y_OFFSET 2
-
-#define MIN_DRAG_LABEL_WIDTH_BEFORE_CLIP 120
-
-// Observation says max size is 200x200
-#define MAX_DRAG_LABEL_WIDTH 200
-#define MAX_DRAG_LABEL_STRING_WIDTH (MAX_DRAG_LABEL_WIDTH - 2 * DRAG_LABEL_BORDER_X)
-
-#define DRAG_LINK_LABEL_FONT_SIZE 11
-#define DRAG_LINK_URL_FONT_SIZE 10
-
using namespace WebCore;
static DWORD draggingSourceOperationMaskToDragCursors(DragOperation op)
@@ -197,129 +169,6 @@ void WebDragClient::startDrag(DragImageRef image, const IntPoint& imageOrigin, c
}
}
-static Font dragLabelFont(int size, bool bold, FontRenderingMode renderingMode)
-{
- NONCLIENTMETRICS metrics;
- metrics.cbSize = sizeof(metrics);
- SystemParametersInfo(SPI_GETNONCLIENTMETRICS, metrics.cbSize, &metrics, 0);
- FontDescription desc;
- desc.setWeight(bold ? FontWeightBold : FontWeightNormal);
- FontFamily family;
- family.setFamily(metrics.lfSmCaptionFont.lfFaceName);
- desc.setFamily(family);
- desc.setSpecifiedSize((float)size);
- desc.setComputedSize((float)size);
- desc.setRenderingMode(renderingMode);
- Font result = Font(desc, 0, 0);
- result.update(0);
- return result;
-}
-
-DragImageRef WebDragClient::createDragImageForLink(KURL& url, const String& inLabel, Frame* frame)
-{
- // This is more or less an exact match for the Mac OS X code.
-
- const Font* labelFont;
- const Font* urlFont;
-
- if (frame->settings() && frame->settings()->fontRenderingMode() == AlternateRenderingMode) {
- static const Font alternateRenderingModeLabelFont = dragLabelFont(DRAG_LINK_LABEL_FONT_SIZE, true, AlternateRenderingMode);
- static const Font alternateRenderingModeURLFont = dragLabelFont(DRAG_LINK_URL_FONT_SIZE, false, AlternateRenderingMode);
- labelFont = &alternateRenderingModeLabelFont;
- urlFont = &alternateRenderingModeURLFont;
- } else {
- static const Font normalRenderingModeLabelFont = dragLabelFont(DRAG_LINK_LABEL_FONT_SIZE, true, NormalRenderingMode);
- static const Font normalRenderingModeURLFont = dragLabelFont(DRAG_LINK_URL_FONT_SIZE, false, NormalRenderingMode);
- labelFont = &normalRenderingModeLabelFont;
- urlFont = &normalRenderingModeURLFont;
- }
-
- bool drawURLString = true;
- bool clipURLString = false;
- bool clipLabelString = false;
-
- String urlString = url.string();
- String label = inLabel;
- if (label.isEmpty()) {
- drawURLString = false;
- label = urlString;
- }
-
- //First step in drawing the link drag image width
- TextRun labelRun(label.impl());
- TextRun urlRun(urlString.impl());
- IntSize labelSize(labelFont->width(labelRun), labelFont->ascent() + labelFont->descent());
-
- if (labelSize.width() > MAX_DRAG_LABEL_STRING_WIDTH){
- labelSize.setWidth(MAX_DRAG_LABEL_STRING_WIDTH);
- clipLabelString = true;
- }
-
- IntSize urlStringSize;
- IntSize imageSize(labelSize.width() + DRAG_LABEL_BORDER_X * 2,
- labelSize.height() + DRAG_LABEL_BORDER_Y * 2);
-
- if (drawURLString) {
- urlStringSize.setWidth(urlFont->width(urlRun));
- urlStringSize.setHeight(urlFont->ascent() + urlFont->descent());
- imageSize.setHeight(imageSize.height() + urlStringSize.height());
- if (urlStringSize.width() > MAX_DRAG_LABEL_STRING_WIDTH) {
- imageSize.setWidth(MAX_DRAG_LABEL_WIDTH);
- clipURLString = true;
- } else {
- imageSize.setWidth(std::max(labelSize.width(), urlStringSize.width()) + DRAG_LABEL_BORDER_X * 2);
- }
- }
-
- // We now know how big the image needs to be, so we create and
- // fill the background
- HBITMAP image = 0;
- HDC dc = GetDC(0);
- HDC workingDC = CreateCompatibleDC(dc);
- if (!workingDC) {
- ReleaseDC(0, dc);
- return 0;
- }
-
- PlatformGraphicsContext* contextRef;
- image = allocImage(workingDC, imageSize, &contextRef);
- if (!image) {
- DeleteDC(workingDC);
- ReleaseDC(0, dc);
- return 0;
- }
-
- ::SelectObject(workingDC, image);
- GraphicsContext context(contextRef);
- // On Mac alpha is {0.7, 0.7, 0.7, 0.8}, however we can't control alpha
- // for drag images on win, so we use 1
- static const Color backgroundColor(140, 140, 140);
- static const IntSize radii(DRAG_LABEL_RADIUS, DRAG_LABEL_RADIUS);
- IntRect rect(0, 0, imageSize.width(), imageSize.height());
- context.fillRoundedRect(rect, radii, radii, radii, radii, backgroundColor, ColorSpaceDeviceRGB);
-
- // Draw the text
- static const Color topColor(0, 0, 0, 255); //original alpha = 0.75
- static const Color bottomColor(255, 255, 255, 127); //original alpha = 0.5
- if (drawURLString) {
- if (clipURLString)
- urlString = StringTruncator::rightTruncate(urlString, imageSize.width() - (DRAG_LABEL_BORDER_X * 2.0f), *urlFont, false);
- IntPoint textPos(DRAG_LABEL_BORDER_X, imageSize.height() - (DRAG_LABEL_BORDER_Y_OFFSET + urlFont->descent()));
- WebCoreDrawDoubledTextAtPoint(context, urlString, textPos, *urlFont, topColor, bottomColor);
- }
-
- if (clipLabelString)
- label = StringTruncator::rightTruncate(label, imageSize.width() - (DRAG_LABEL_BORDER_X * 2.0f), *labelFont, false);
-
- IntPoint textPos(DRAG_LABEL_BORDER_X, DRAG_LABEL_BORDER_Y + labelFont->pixelSize());
- WebCoreDrawDoubledTextAtPoint(context, label, textPos, *labelFont, topColor, bottomColor);
-
- deallocContext(contextRef);
- DeleteDC(workingDC);
- ReleaseDC(0, dc);
- return image;
-}
-
void WebDragClient::dragControllerDestroyed()
{
delete this;
diff --git a/Source/WebKit/win/WebCoreSupport/WebDragClient.h b/Source/WebKit/win/WebCoreSupport/WebDragClient.h
index da2d208..303edd6 100644
--- a/Source/WebKit/win/WebCoreSupport/WebDragClient.h
+++ b/Source/WebKit/win/WebCoreSupport/WebDragClient.h
@@ -39,7 +39,6 @@ public:
virtual WebCore::DragSourceAction dragSourceActionMaskForPoint(const WebCore::IntPoint&);
virtual void willPerformDragSourceAction(WebCore::DragSourceAction, const WebCore::IntPoint&, WebCore::Clipboard*);
virtual void startDrag(WebCore::DragImageRef, const WebCore::IntPoint&, const WebCore::IntPoint&, WebCore::Clipboard*, WebCore::Frame*, bool);
- virtual WebCore::DragImageRef createDragImageForLink(WebCore::KURL&, const WTF::String&, WebCore::Frame*);
private:
WebView* m_webView;
};
diff --git a/Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp b/Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp
index 7fd2b98..710fec2 100644
--- a/Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp
+++ b/Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp
@@ -628,7 +628,7 @@ void WebFrameLoaderClient::didDisplayInsecureContent()
frameLoadDelegatePriv2->didDisplayInsecureContent(webView);
}
-void WebFrameLoaderClient::didRunInsecureContent(SecurityOrigin* origin)
+void WebFrameLoaderClient::didRunInsecureContent(SecurityOrigin* origin, const KURL& insecureURL)
{
COMPtr<IWebSecurityOrigin> webSecurityOrigin = WebSecurityOrigin::createInstance(origin);
diff --git a/Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h b/Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h
index 573b58f..5fada31 100644
--- a/Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h
+++ b/Source/WebKit/win/WebCoreSupport/WebFrameLoaderClient.h
@@ -99,7 +99,7 @@ public:
virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
- virtual void didRunInsecureContent(WebCore::SecurityOrigin*);
+ virtual void didRunInsecureContent(WebCore::SecurityOrigin*, const WebCore::KURL&);
virtual PassRefPtr<WebCore::DocumentLoader> createDocumentLoader(const WebCore::ResourceRequest&, const WebCore::SubstituteData&);
virtual void setTitle(const WTF::String& title, const WebCore::KURL&);
diff --git a/Source/WebKit/win/WebCoreSupport/WebInspectorClient.cpp b/Source/WebKit/win/WebCoreSupport/WebInspectorClient.cpp
index 76ebc8f..2922485 100644
--- a/Source/WebKit/win/WebCoreSupport/WebInspectorClient.cpp
+++ b/Source/WebKit/win/WebCoreSupport/WebInspectorClient.cpp
@@ -173,7 +173,7 @@ void WebInspectorClient::openInspectorFrontend(InspectorController* inspectorCon
return;
m_frontendPage = core(frontendWebView.get());
- WebInspectorFrontendClient* frontendClient = new WebInspectorFrontendClient(m_inspectedWebView, m_inspectedWebViewHwnd, frontendHwnd, frontendWebView, frontendWebViewHwnd, this);
+ WebInspectorFrontendClient* frontendClient = new WebInspectorFrontendClient(m_inspectedWebView, m_inspectedWebViewHwnd, frontendHwnd, frontendWebView, frontendWebViewHwnd, this, createFrontendSettings());
m_frontendPage->inspectorController()->setInspectorFrontendClient(frontendClient);
m_frontendHwnd = frontendHwnd;
}
@@ -206,8 +206,8 @@ void WebInspectorClient::updateHighlight()
m_highlight->update();
}
-WebInspectorFrontendClient::WebInspectorFrontendClient(WebView* inspectedWebView, HWND inspectedWebViewHwnd, HWND frontendHwnd, const COMPtr<WebView>& frontendWebView, HWND frontendWebViewHwnd, WebInspectorClient* inspectorClient)
- : InspectorFrontendClientLocal(inspectedWebView->page()->inspectorController(), core(frontendWebView.get()))
+WebInspectorFrontendClient::WebInspectorFrontendClient(WebView* inspectedWebView, HWND inspectedWebViewHwnd, HWND frontendHwnd, const COMPtr<WebView>& frontendWebView, HWND frontendWebViewHwnd, WebInspectorClient* inspectorClient, PassOwnPtr<Settings> settings)
+ : InspectorFrontendClientLocal(inspectedWebView->page()->inspectorController(), core(frontendWebView.get()), settings)
, m_inspectedWebView(inspectedWebView)
, m_inspectedWebViewHwnd(inspectedWebViewHwnd)
, m_inspectorClient(inspectorClient)
@@ -271,8 +271,7 @@ void WebInspectorFrontendClient::attachWindow()
if (m_attached)
return;
- // FIXME: This flag can be saved to the flags storage directly.
- m_inspectedWebView->page()->inspectorController()->setInspectorStartsAttached(true);
+ m_inspectorClient->setInspectorStartsAttached(true);
closeWindowWithoutNotifications();
showWindowWithoutNotifications();
@@ -283,8 +282,7 @@ void WebInspectorFrontendClient::detachWindow()
if (!m_attached)
return;
- // FIXME: This flag can be saved to the flags storage directly.
- m_inspectedWebView->page()->inspectorController()->setInspectorStartsAttached(false);
+ m_inspectorClient->setInspectorStartsAttached(false);
closeWindowWithoutNotifications();
showWindowWithoutNotifications();
@@ -365,7 +363,7 @@ void WebInspectorFrontendClient::showWindowWithoutNotifications()
else {
// If no preference is set - default to an attached window. This is important for inspector LayoutTests.
// FIXME: This flag can be fetched directly from the flags storage.
- shouldAttach = m_inspectedWebView->page()->inspectorController()->inspectorStartsAttached();
+ shouldAttach = m_inspectorClient->inspectorStartsAttached();
if (shouldAttach && !canAttachWindow())
shouldAttach = false;
diff --git a/Source/WebKit/win/WebCoreSupport/WebInspectorClient.h b/Source/WebKit/win/WebCoreSupport/WebInspectorClient.h
index 0c38247..a059559 100644
--- a/Source/WebKit/win/WebCoreSupport/WebInspectorClient.h
+++ b/Source/WebKit/win/WebCoreSupport/WebInspectorClient.h
@@ -34,6 +34,7 @@
#include <WebCore/InspectorFrontendClientLocal.h>
#include <WebCore/PlatformString.h>
#include <WebCore/WindowMessageListener.h>
+#include <wtf/Forward.h>
#include <wtf/OwnPtr.h>
#include <windows.h>
@@ -58,11 +59,13 @@ public:
virtual void highlight(WebCore::Node*);
virtual void hideHighlight();
- virtual void populateSetting(const WTF::String& key, WTF::String* value);
- virtual void storeSetting(const WTF::String& key, const WTF::String& value);
-
virtual bool sendMessageToFrontend(const WTF::String&);
+ bool inspectorStartsAttached();
+ void setInspectorStartsAttached(bool);
+
+ void releaseFrontendPage();
+
void updateHighlight();
void frontendClosing()
{
@@ -70,9 +73,9 @@ public:
releaseFrontendPage();
}
- void releaseFrontendPage();
private:
~WebInspectorClient();
+ WTF::PassOwnPtr<WebCore::InspectorFrontendClientLocal::Settings> createFrontendSettings();
WebView* m_inspectedWebView;
WebCore::Page* m_frontendPage;
@@ -84,7 +87,7 @@ private:
class WebInspectorFrontendClient : public WebCore::InspectorFrontendClientLocal, WebCore::WindowMessageListener {
public:
- WebInspectorFrontendClient(WebView* inspectedWebView, HWND inspectedWebViewHwnd, HWND frontendHwnd, const COMPtr<WebView>& frotnendWebView, HWND frontendWebViewHwnd, WebInspectorClient* inspectorClient);
+ WebInspectorFrontendClient(WebView* inspectedWebView, HWND inspectedWebViewHwnd, HWND frontendHwnd, const COMPtr<WebView>& frotnendWebView, HWND frontendWebViewHwnd, WebInspectorClient*, WTF::PassOwnPtr<Settings>);
virtual void frontendLoaded();
diff --git a/Source/WebKit/win/WebDownload.cpp b/Source/WebKit/win/WebDownload.cpp
index fc72232..45e36cc 100644
--- a/Source/WebKit/win/WebDownload.cpp
+++ b/Source/WebKit/win/WebDownload.cpp
@@ -38,12 +38,9 @@
#include "WebURLResponse.h"
#include <wtf/text/CString.h>
-#include <io.h>
-#include <sys/stat.h>
-#include <sys/types.h>
-
#pragma warning(push, 0)
#include <WebCore/BString.h>
+#include <WebCore/DownloadBundle.h>
#include <WebCore/NotImplemented.h>
#include <WebCore/ResourceError.h>
#include <WebCore/ResourceHandle.h>
@@ -55,18 +52,6 @@
using namespace WebCore;
-// Download Bundle file utilities ----------------------------------------------------------------
-const String& WebDownload::bundleExtension()
-{
- DEFINE_STATIC_LOCAL(const String, bundleExtension, (".download"));
- return bundleExtension;
-}
-
-UInt32 WebDownload::bundleMagicNumber()
-{
- return 0xDECAF4EA;
-}
-
// WebDownload ----------------------------------------------------------------
WebDownload::WebDownload()
@@ -165,7 +150,7 @@ HRESULT STDMETHODCALLTYPE WebDownload::bundlePathForTargetPath(
if (bundle[bundle.length()-1] == '/')
bundle.truncate(1);
- bundle += bundleExtension();
+ bundle += DownloadBundle::fileExtension();
*bundlePath = SysAllocStringLen(bundle.characters(), bundle.length());
if (!*bundlePath)
return E_FAIL;
@@ -182,148 +167,3 @@ HRESULT STDMETHODCALLTYPE WebDownload::request(
}
return S_OK;
}
-
-// Download Bundle file utilities ----------------------------------------------------------------
-
-CFDataRef WebDownload::extractResumeDataFromBundle(const String& bundlePath)
-{
- if (bundlePath.isEmpty()) {
- LOG_ERROR("Cannot create resume data from empty download bundle path");
- return 0;
- }
-
- // Open a handle to the bundle file
- String nullifiedPath = bundlePath;
- FILE* bundle = 0;
- if (_wfopen_s(&bundle, nullifiedPath.charactersWithNullTermination(), TEXT("r+b")) || !bundle) {
- LOG_ERROR("Failed to open file %s to get resume data", bundlePath.ascii().data());
- return 0;
- }
-
- CFDataRef result = 0;
- Vector<UInt8> footerBuffer;
-
- // Stat the file to get its size
- struct _stat64 fileStat;
- if (_fstat64(_fileno(bundle), &fileStat))
- goto exit;
-
- // Check for the bundle magic number at the end of the file
- fpos_t footerMagicNumberPosition = fileStat.st_size - 4;
- ASSERT(footerMagicNumberPosition >= 0);
- if (footerMagicNumberPosition < 0)
- goto exit;
- if (fsetpos(bundle, &footerMagicNumberPosition))
- goto exit;
-
- UInt32 footerMagicNumber = 0;
- if (fread(&footerMagicNumber, 4, 1, bundle) != 1) {
- LOG_ERROR("Failed to read footer magic number from the bundle - errno(%i)", errno);
- goto exit;
- }
-
- if (footerMagicNumber != bundleMagicNumber()) {
- LOG_ERROR("Footer's magic number does not match 0x%X - errno(%i)", bundleMagicNumber(), errno);
- goto exit;
- }
-
- // Now we're *reasonably* sure this is a .download bundle we actually wrote.
- // Get the length of the resume data
- fpos_t footerLengthPosition = fileStat.st_size - 8;
- ASSERT(footerLengthPosition >= 0);
- if (footerLengthPosition < 0)
- goto exit;
-
- if (fsetpos(bundle, &footerLengthPosition))
- goto exit;
-
- UInt32 footerLength = 0;
- if (fread(&footerLength, 4, 1, bundle) != 1) {
- LOG_ERROR("Failed to read ResumeData length from the bundle - errno(%i)", errno);
- goto exit;
- }
-
- // Make sure theres enough bytes to read in for the resume data, and perform the read
- fpos_t footerStartPosition = fileStat.st_size - 8 - footerLength;
- ASSERT(footerStartPosition >= 0);
- if (footerStartPosition < 0)
- goto exit;
- if (fsetpos(bundle, &footerStartPosition))
- goto exit;
-
- footerBuffer.resize(footerLength);
- if (fread(footerBuffer.data(), 1, footerLength, bundle) != footerLength) {
- LOG_ERROR("Failed to read ResumeData from the bundle - errno(%i)", errno);
- goto exit;
- }
-
- // CFURLDownload will seek to the appropriate place in the file (before our footer) and start overwriting from there
- // However, say we were within a few hundred bytes of the end of a download when it was paused -
- // The additional footer extended the length of the file beyond its final length, and there will be junk data leftover
- // at the end. Therefore, now that we've retrieved the footer data, we need to truncate it.
- if (errno_t resizeError = _chsize_s(_fileno(bundle), footerStartPosition)) {
- LOG_ERROR("Failed to truncate the resume footer off the end of the file - errno(%i)", resizeError);
- goto exit;
- }
-
- // Finally, make the resume data. Now, it is possible by some twist of fate the bundle magic number
- // was naturally at the end of the file and its not actually a valid bundle. That, or someone engineered
- // it that way to try to attack us. In that cause, this CFData will successfully create but when we
- // actually try to start the CFURLDownload using this bogus data, it will fail and we will handle that gracefully
- result = CFDataCreate(0, footerBuffer.data(), footerLength);
-exit:
- fclose(bundle);
- return result;
-}
-
-HRESULT WebDownload::appendResumeDataToBundle(CFDataRef resumeData, const String& bundlePath)
-{
- if (!resumeData) {
- LOG_ERROR("Invalid resume data to write to bundle path");
- return E_FAIL;
- }
- if (bundlePath.isEmpty()) {
- LOG_ERROR("Cannot write resume data to empty download bundle path");
- return E_FAIL;
- }
-
- String nullifiedPath = bundlePath;
- FILE* bundle = 0;
- if (_wfopen_s(&bundle, nullifiedPath.charactersWithNullTermination(), TEXT("ab")) || !bundle) {
- LOG_ERROR("Failed to open file %s to append resume data", bundlePath.ascii().data());
- return E_FAIL;
- }
-
- HRESULT hr = E_FAIL;
-
- const UInt8* resumeBytes = CFDataGetBytePtr(resumeData);
- ASSERT(resumeBytes);
- if (!resumeBytes)
- goto exit;
-
- UInt32 resumeLength = CFDataGetLength(resumeData);
- ASSERT(resumeLength > 0);
- if (resumeLength < 1)
- goto exit;
-
- if (fwrite(resumeBytes, 1, resumeLength, bundle) != resumeLength) {
- LOG_ERROR("Failed to write resume data to the bundle - errno(%i)", errno);
- goto exit;
- }
-
- if (fwrite(&resumeLength, 4, 1, bundle) != 1) {
- LOG_ERROR("Failed to write footer length to the bundle - errno(%i)", errno);
- goto exit;
- }
-
- const UInt32& magic = bundleMagicNumber();
- if (fwrite(&magic, 4, 1, bundle) != 1) {
- LOG_ERROR("Failed to write footer magic number to the bundle - errno(%i)", errno);
- goto exit;
- }
-
- hr = S_OK;
-exit:
- fclose(bundle);
- return hr;
-}
diff --git a/Source/WebKit/win/WebDownload.h b/Source/WebKit/win/WebDownload.h
index bbb645e..3e8e734 100644
--- a/Source/WebKit/win/WebDownload.h
+++ b/Source/WebKit/win/WebDownload.h
@@ -122,11 +122,6 @@ public:
#endif
protected:
- static CFDataRef extractResumeDataFromBundle(const WTF::String&);
- static HRESULT appendResumeDataToBundle(CFDataRef, const WTF::String&);
- static const WTF::String& bundleExtension();
- static UInt32 bundleMagicNumber();
-
ULONG m_refCount;
WTF::String m_destination;
diff --git a/Source/WebKit/win/WebDownloadCFNet.cpp b/Source/WebKit/win/WebDownloadCFNet.cpp
index a199315..5a1f1bc 100644
--- a/Source/WebKit/win/WebDownloadCFNet.cpp
+++ b/Source/WebKit/win/WebDownloadCFNet.cpp
@@ -48,6 +48,7 @@
#include <WebCore/AuthenticationCF.h>
#include <WebCore/BString.h>
#include <WebCore/CredentialStorage.h>
+#include <WebCore/DownloadBundle.h>
#include <WebCore/LoaderRunLoopCF.h>
#include <WebCore/ResourceError.h>
#include <WebCore/ResourceHandle.h>
@@ -167,8 +168,8 @@ HRESULT STDMETHODCALLTYPE WebDownload::initToResumeWithBundle(
{
LOG(Download, "Attempting resume of download bundle %s", String(bundlePath, SysStringLen(bundlePath)).ascii().data());
- RetainPtr<CFDataRef> resumeData(AdoptCF, extractResumeDataFromBundle(String(bundlePath, SysStringLen(bundlePath))));
-
+ RetainPtr<CFDataRef> resumeData(AdoptCF, DownloadBundle::extractResumeData(String(bundlePath, SysStringLen(bundlePath))));
+
if (!resumeData)
return E_FAIL;
@@ -194,9 +195,9 @@ HRESULT STDMETHODCALLTYPE WebDownload::initToResumeWithBundle(
m_bundlePath = String(bundlePath, SysStringLen(bundlePath));
// Attempt to remove the ".download" extension from the bundle for the final file destination
// Failing that, we clear m_destination and will ask the delegate later once the download starts
- if (m_bundlePath.endsWith(bundleExtension(), false)) {
+ if (m_bundlePath.endsWith(DownloadBundle::fileExtension(), false)) {
m_destination = m_bundlePath.threadsafeCopy();
- m_destination.truncate(m_destination.length() - bundleExtension().length());
+ m_destination.truncate(m_destination.length() - DownloadBundle::fileExtension().length());
} else
m_destination = String();
@@ -249,14 +250,14 @@ HRESULT STDMETHODCALLTYPE WebDownload::cancelForResume()
CFURLDownloadSetDeletesUponFailure(m_download.get(), false);
CFURLDownloadCancel(m_download.get());
- resumeData = CFURLDownloadCopyResumeData(m_download.get());
+ resumeData.adoptCF(CFURLDownloadCopyResumeData(m_download.get()));
if (!resumeData) {
LOG(Download, "WebDownload - Unable to create resume data for download (%p)", this);
goto exit;
}
- appendResumeDataToBundle(resumeData.get(), m_bundlePath);
-
+ DownloadBundle::appendResumeData(resumeData.get(), m_bundlePath);
+
exit:
m_download = 0;
return hr;
@@ -288,7 +289,7 @@ HRESULT STDMETHODCALLTYPE WebDownload::setDestination(
return E_FAIL;
m_destination = String(path, SysStringLen(path));
- m_bundlePath = m_destination + bundleExtension();
+ m_bundlePath = m_destination + DownloadBundle::fileExtension();
CFURLRef pathURL = MarshallingHelpers::PathStringToFileCFURLRef(m_bundlePath);
CFURLDownloadSetDestination(m_download.get(), pathURL, !!allowOverwrite);
diff --git a/Source/WebKit/win/WebFrame.cpp b/Source/WebKit/win/WebFrame.cpp
index 05ee075..80b91cd 100644
--- a/Source/WebKit/win/WebFrame.cpp
+++ b/Source/WebKit/win/WebFrame.cpp
@@ -703,7 +703,7 @@ KURL WebFrame::url() const
if (!coreFrame)
return KURL();
- return coreFrame->loader()->url();
+ return coreFrame->document()->url();
}
HRESULT STDMETHODCALLTYPE WebFrame::stopLoading( void)
@@ -1966,11 +1966,11 @@ static IntRect printerRect(HDC printDC)
GetDeviceCaps(printDC, PHYSICALHEIGHT) - 2 * GetDeviceCaps(printDC, PHYSICALOFFSETY));
}
-void WebFrame::setPrinting(bool printing, float minPageWidth, float maxPageWidth, bool adjustViewSize)
+void WebFrame::setPrinting(bool printing, float minPageWidth, float maxPageWidth, float minPageHeight, bool adjustViewSize)
{
Frame* coreFrame = core(this);
ASSERT(coreFrame);
- coreFrame->setPrinting(printing, FloatSize(minPageWidth, 0), maxPageWidth / minPageWidth, adjustViewSize ? Frame::AdjustViewSize : Frame::DoNotAdjustViewSize);
+ coreFrame->setPrinting(printing, FloatSize(minPageWidth, minPageHeight), maxPageWidth / minPageWidth, adjustViewSize ? Frame::AdjustViewSize : Frame::DoNotAdjustViewSize);
}
HRESULT STDMETHODCALLTYPE WebFrame::setInPrintingMode(
@@ -1990,20 +1990,25 @@ HRESULT STDMETHODCALLTYPE WebFrame::setInPrintingMode(
// according to the paper size
float minLayoutWidth = 0.0f;
float maxLayoutWidth = 0.0f;
+ float minLayoutHeight = 0.0f;
if (m_inPrintingMode && !coreFrame->document()->isFrameSet()) {
if (!printDC) {
ASSERT_NOT_REACHED();
return E_POINTER;
}
- const int desiredHorizontalPixelsPerInch = 72;
+ const int desiredPixelsPerInch = 72;
+ IntRect printRect = printerRect(printDC);
int paperHorizontalPixelsPerInch = ::GetDeviceCaps(printDC, LOGPIXELSX);
- int paperWidth = printerRect(printDC).width() * desiredHorizontalPixelsPerInch / paperHorizontalPixelsPerInch;
+ int paperWidth = printRect.width() * desiredPixelsPerInch / paperHorizontalPixelsPerInch;
+ int paperVerticalPixelsPerInch = ::GetDeviceCaps(printDC, LOGPIXELSY);
+ int paperHeight = printRect.height() * desiredPixelsPerInch / paperVerticalPixelsPerInch;
minLayoutWidth = paperWidth * PrintingMinimumShrinkFactor;
maxLayoutWidth = paperWidth * PrintingMaximumShrinkFactor;
+ minLayoutHeight = paperHeight * PrintingMinimumShrinkFactor;
}
- setPrinting(m_inPrintingMode, minLayoutWidth, maxLayoutWidth, true);
+ setPrinting(m_inPrintingMode, minLayoutWidth, maxLayoutWidth, minLayoutHeight, true);
if (!m_inPrintingMode)
m_pageRects.clear();
@@ -2066,8 +2071,8 @@ const Vector<WebCore::IntRect>& WebFrame::computePageRects(HDC printDC)
IntRect adjustedRect = IntRect(
pageRect.x() + marginRect.x(),
pageRect.y() + marginRect.y(),
- pageRect.width() - marginRect.x() - marginRect.right(),
- pageRect.height() - marginRect.y() - marginRect.bottom());
+ pageRect.width() - marginRect.x() - marginRect.maxX(),
+ pageRect.height() - marginRect.y() - marginRect.maxY());
computePageRectsForFrame(coreFrame, adjustedRect, headerHeight, footerHeight, 1.0,m_pageRects, m_pageHeight);
diff --git a/Source/WebKit/win/WebFrame.h b/Source/WebKit/win/WebFrame.h
index bdc28ab..0095590 100644
--- a/Source/WebKit/win/WebFrame.h
+++ b/Source/WebKit/win/WebFrame.h
@@ -384,7 +384,7 @@ protected:
void loadHTMLString(BSTR string, BSTR baseURL, BSTR unreachableURL);
void loadData(PassRefPtr<WebCore::SharedBuffer>, BSTR mimeType, BSTR textEncodingName, BSTR baseURL, BSTR failingURL);
const Vector<WebCore::IntRect>& computePageRects(HDC printDC);
- void setPrinting(bool printing, float minPageWidth, float maxPageWidth, bool adjustViewSize);
+ void setPrinting(bool printing, float minPageWidth, float maxPageWidth, float minPageHeight, bool adjustViewSize);
void headerAndFooterHeights(float*, float*);
WebCore::IntRect printerMarginRect(HDC);
void spoolPage (PlatformGraphicsContext* pctx, WebCore::GraphicsContext* spoolCtx, HDC printDC, IWebUIDelegate*, float headerHeight, float footerHeight, UINT page, UINT pageCount);
diff --git a/Source/WebKit/win/WebHistory.cpp b/Source/WebKit/win/WebHistory.cpp
index 5383a0c..4caa554 100644
--- a/Source/WebKit/win/WebHistory.cpp
+++ b/Source/WebKit/win/WebHistory.cpp
@@ -476,7 +476,7 @@ HRESULT STDMETHODCALLTYPE WebHistory::orderedLastVisitedDays(
*count = dateCount;
if (!m_orderedLastVisitedDays) {
- m_orderedLastVisitedDays.set(new DATE[dateCount]);
+ m_orderedLastVisitedDays = adoptArrayPtr(new DATE[dateCount]);
DateToEntriesMap::const_iterator::Keys end = m_entriesByDate.end().keys();
int i = 0;
for (DateToEntriesMap::const_iterator::Keys it = m_entriesByDate.begin().keys(); it != end; ++it, ++i)
diff --git a/Source/WebKit/win/WebInspector.cpp b/Source/WebKit/win/WebInspector.cpp
index c3823b2..ec35099 100644
--- a/Source/WebKit/win/WebInspector.cpp
+++ b/Source/WebKit/win/WebInspector.cpp
@@ -110,7 +110,7 @@ HRESULT STDMETHODCALLTYPE WebInspector::showConsole()
{
if (m_webView)
if (Page* page = m_webView->page())
- page->inspectorController()->showPanel(InspectorController::ConsolePanel);
+ page->inspectorController()->showConsole();
return S_OK;
}
@@ -205,10 +205,9 @@ HRESULT STDMETHODCALLTYPE WebInspector::toggleProfilingJavaScript()
InspectorController* inspector = page->inspectorController();
- if (inspector->isRecordingUserInitiatedProfile()) {
+ if (inspector->isRecordingUserInitiatedProfile())
inspector->stopUserInitiatedProfiling();
- inspector->showPanel(InspectorController::ProfilesPanel);
- } else
+ else
inspector->startUserInitiatedProfiling();
return S_OK;
@@ -277,7 +276,7 @@ HRESULT STDMETHODCALLTYPE WebInspector::isTimelineProfilingEnabled(BOOL* isEnabl
if (!page)
return S_OK;
- *isEnabled = page->inspectorController()->timelineAgent() != 0;
+ *isEnabled = page->inspectorController()->timelineProfilerEnabled();
return S_OK;
}
diff --git a/Source/WebKit/win/WebKit.vcproj/WebKit.make b/Source/WebKit/win/WebKit.vcproj/WebKit.make
index ef8e7a6..b777d2f 100755
--- a/Source/WebKit/win/WebKit.vcproj/WebKit.make
+++ b/Source/WebKit/win/WebKit.vcproj/WebKit.make
@@ -8,12 +8,12 @@ install:
set WebKitLibrariesDir=$(SRCROOT)\AppleInternal
set WebKitOutputDir=$(OBJROOT)
set ConfigurationBuildDir=$(OBJROOT)\$(BUILDSTYLE)
- set WebKitVSPropsRedirectionDir=$(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\
+ set WebKitVSPropsRedirectionDir=$(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\4\
set PRODUCTION=1
devenv "WebKit.submit.sln" /rebuild $(BUILDSTYLE)
- -xcopy "$(ConfigurationBuildDir)\bin\*.exe" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y
- xcopy "$(ConfigurationBuildDir)\bin\*.pdb" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y
- -xcopy "$(ConfigurationBuildDir)\bin\*.dll" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y
- xcopy "$(ConfigurationBuildDir)\include\*" "$(DSTROOT)\AppleInternal\include\" /e/v/i/h/y
- xcopy "$(ConfigurationBuildDir)\lib\*" "$(DSTROOT)\AppleInternal\lib\" /e/v/i/h/y
- xcopy "$(ConfigurationBuildDir)\bin\WebKit.resources\*" "$(DSTROOT)\AppleInternal\bin\WebKit.resources" /e/v/i/h/y
+ -xcopy "%ConfigurationBuildDir%\bin\*.exe" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y
+ xcopy "%ConfigurationBuildDir%\bin\*.pdb" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y
+ -xcopy "%ConfigurationBuildDir%\bin\*.dll" "$(DSTROOT)\AppleInternal\bin\" /e/v/i/h/y
+ xcopy "%ConfigurationBuildDir%\include\*" "$(DSTROOT)\AppleInternal\include\" /e/v/i/h/y
+ xcopy "%ConfigurationBuildDir%\lib\*" "$(DSTROOT)\AppleInternal\lib\" /e/v/i/h/y
+ xcopy "%ConfigurationBuildDir%\bin\WebKit.resources\*" "$(DSTROOT)\AppleInternal\bin\WebKit.resources" /e/v/i/h/y
diff --git a/Source/WebKit/win/WebKit.vcproj/WebKit.submit.sln b/Source/WebKit/win/WebKit.vcproj/WebKit.submit.sln
index c4830fc..8f431f1 100644
--- a/Source/WebKit/win/WebKit.vcproj/WebKit.submit.sln
+++ b/Source/WebKit/win/WebKit.vcproj/WebKit.submit.sln
@@ -38,8 +38,8 @@ Global
{B8437A41-67BC-4769-9452-45203827F821}.Release_LTCG|Win32.Build.0 = Release_LTCG|Win32
{B8437A41-67BC-4769-9452-45203827F821}.Release|Win32.ActiveCfg = Release|Win32
{B8437A41-67BC-4769-9452-45203827F821}.Release|Win32.Build.0 = Release|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_All|Win32.ActiveCfg = Debug|Win32
- {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_All|Win32.Build.0 = Debug|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_All|Win32.ActiveCfg = Debug_All|Win32
+ {91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug_All|Win32.Build.0 = Debug_All|Win32
{91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug|Win32.ActiveCfg = Debug|Win32
{91762BE2-87EF-4F5A-A480-48B90EB3F406}.Debug|Win32.Build.0 = Debug|Win32
{91762BE2-87EF-4F5A-A480-48B90EB3F406}.Release_LTCG|Win32.ActiveCfg = Release_LTCG|Win32
diff --git a/Source/WebKit/win/WebKitGraphics.cpp b/Source/WebKit/win/WebKitGraphics.cpp
index 5343608..1907050 100644
--- a/Source/WebKit/win/WebKitGraphics.cpp
+++ b/Source/WebKit/win/WebKitGraphics.cpp
@@ -32,7 +32,6 @@
#include "WebPreferences.h"
#pragma warning(push, 0)
-#include <WebCore/CharacterNames.h>
#include <WebCore/Font.h>
#include <WebCore/FontDescription.h>
#include <WebCore/FontSelector.h>
@@ -40,6 +39,7 @@
#include <WebCore/PlatformString.h>
#include <WebCore/StringTruncator.h>
#include <WebCore/WebCoreTextRenderer.h>
+#include <wtf/unicode/CharacterNames.h>
#include <CoreGraphics/CoreGraphics.h>
#pragma warning(pop)
@@ -105,7 +105,7 @@ void WebDrawText(WebTextRenderInfo* info)
GraphicsContext context(info->cgContext);
String drawString(info->text, info->length);
if (info->drawAsPassword)
- drawString = drawString.impl()->secure(WebCore::bullet);
+ drawString = drawString.impl()->secure(WTF::Unicode::bullet);
context.save();
@@ -133,15 +133,16 @@ void FontMetrics(const WebFontDescription& description, int* ascent, int* descen
return;
Font font(makeFont(description));
+ const WebCore::FontMetrics& fontMetrics(font.fontMetrics());
if (ascent)
- *ascent = font.ascent();
+ *ascent = fontMetrics.ascent();
if (descent)
- *descent = font.descent();
+ *descent = fontMetrics.descent();
if (lineSpacing)
- *lineSpacing = font.lineSpacing();
+ *lineSpacing = fontMetrics.lineSpacing();
}
unsigned CenterTruncateStringToWidth(LPCTSTR text, int length, const WebFontDescription& description, float width, WCHAR* buffer)
diff --git a/Source/WebKit/win/WebPreferences.cpp b/Source/WebKit/win/WebPreferences.cpp
index a962471..01cab2b 100644
--- a/Source/WebKit/win/WebPreferences.cpp
+++ b/Source/WebKit/win/WebPreferences.cpp
@@ -463,8 +463,8 @@ void WebPreferences::copyWebKitPreferencesToCFPreferences(CFDictionaryRef dict)
CFStringRef didRemoveDefaultsKey = CFSTR(WebKitDidMigrateDefaultSettingsFromSafari3BetaPreferenceKey);
bool omitDefaults = !booleanValueForPreferencesValue(CFDictionaryGetValue(dict, didRemoveDefaultsKey));
- OwnArrayPtr<CFTypeRef> keys(new CFTypeRef[count]);
- OwnArrayPtr<CFTypeRef> values(new CFTypeRef[count]);
+ OwnArrayPtr<CFTypeRef> keys = adoptArrayPtr(new CFTypeRef[count]);
+ OwnArrayPtr<CFTypeRef> values = adoptArrayPtr(new CFTypeRef[count]);
CFDictionaryGetKeysAndValues(dict, keys.get(), values.get());
for (int i = 0; i < count; ++i) {
diff --git a/Source/WebKit/win/WebScrollBar.cpp b/Source/WebKit/win/WebScrollBar.cpp
index 45bc8f3..9f0131b 100644
--- a/Source/WebKit/win/WebScrollBar.cpp
+++ b/Source/WebKit/win/WebScrollBar.cpp
@@ -174,9 +174,9 @@ HRESULT STDMETHODCALLTYPE WebScrollBar::frameRect(
return E_POINTER;
IntRect rect = m_scrollBar->frameRect();
bounds->left = rect.x();
- bounds->right = rect.right();
+ bounds->right = rect.maxX();
bounds->top = rect.y();
- bounds->bottom = rect.bottom();
+ bounds->bottom = rect.maxY();
return S_OK;
}
@@ -275,3 +275,13 @@ void WebScrollBar::invalidateScrollbarRect(Scrollbar*, const IntRect& rect)
RECT r = rect;
::InvalidateRect(m_containingWindow, &r, false);
}
+
+Scrollbar* WebScrollBar::horizontalScrollbar() const
+{
+ return m_scrollBar->orientation() == HorizontalScrollbar ? m_scrollBar.get() : 0;
+}
+
+Scrollbar* WebScrollBar::verticalScrollbar() const
+{
+ return m_scrollBar->orientation() == VerticalScrollbar ? m_scrollBar.get() : 0;
+}
diff --git a/Source/WebKit/win/WebScrollBar.h b/Source/WebKit/win/WebScrollBar.h
index ca44e8b..39457d4 100644
--- a/Source/WebKit/win/WebScrollBar.h
+++ b/Source/WebKit/win/WebScrollBar.h
@@ -123,6 +123,9 @@ protected:
virtual bool scrollbarCornerPresent() const { return false; }
+ virtual WebCore::Scrollbar* horizontalScrollbar() const;
+ virtual WebCore::Scrollbar* verticalScrollbar() const;
+
ULONG m_refCount;
HWND m_containingWindow;
int m_currentPosition;
diff --git a/Source/WebKit/win/WebView.cpp b/Source/WebKit/win/WebView.cpp
index da88be4..a85b23d 100644
--- a/Source/WebKit/win/WebView.cpp
+++ b/Source/WebKit/win/WebView.cpp
@@ -152,6 +152,11 @@
#include <WebKitSystemInterface/WebKitSystemInterface.h>
#endif
+#if USE(ACCELERATED_COMPOSITING)
+#include <WebCore/CACFLayerTreeHost.h>
+#include <WebCore/PlatformCALayer.h>
+#endif
+
#include <ShlObj.h>
#include <comutil.h>
#include <dimm.h>
@@ -797,7 +802,7 @@ void WebView::addToDirtyRegion(const IntRect& dirtyRect)
#endif
HRGN newRegion = ::CreateRectRgn(dirtyRect.x(), dirtyRect.y(),
- dirtyRect.right(), dirtyRect.bottom());
+ dirtyRect.maxX(), dirtyRect.maxY());
addToDirtyRegion(newRegion);
}
@@ -4806,9 +4811,9 @@ HRESULT WebView::notifyPreferencesChanged(IWebNotification* notification)
settings->setWebAudioEnabled(true);
#endif // ENABLE(WEB_AUDIO)
-#if ENABLE(3D_CANVAS)
+#if ENABLE(WEBGL)
settings->setWebGLEnabled(true);
-#endif // ENABLE(3D_CANVAS)
+#endif // ENABLE(WEBGL)
hr = prefsPrivate->isDNSPrefetchingEnabled(&enabled);
if (FAILED(hr))
@@ -4975,8 +4980,8 @@ HRESULT STDMETHODCALLTYPE WebView::visibleContentRect(
FloatRect visibleContent = m_page->mainFrame()->view()->visibleContentRect();
rect->left = (LONG) visibleContent.x();
rect->top = (LONG) visibleContent.y();
- rect->right = (LONG) visibleContent.right();
- rect->bottom = (LONG) visibleContent.bottom();
+ rect->right = (LONG) visibleContent.maxX();
+ rect->bottom = (LONG) visibleContent.maxY();
return S_OK;
}
@@ -5340,9 +5345,9 @@ void WebView::prepareCandidateWindow(Frame* targetFrame, HIMC hInputContext)
form.ptCurrentPos.x = caret.x();
form.ptCurrentPos.y = caret.y() + caret.height();
form.rcArea.top = caret.y();
- form.rcArea.bottom = caret.bottom();
+ form.rcArea.bottom = caret.maxY();
form.rcArea.left = caret.x();
- form.rcArea.right = caret.right();
+ form.rcArea.right = caret.maxX();
IMMDict::dict().setCandidateWindow(hInputContext, &form);
}
diff --git a/Source/WebKit/win/WebView.h b/Source/WebKit/win/WebView.h
index 1a993c6..ddfb6db 100644
--- a/Source/WebKit/win/WebView.h
+++ b/Source/WebKit/win/WebView.h
@@ -40,8 +40,12 @@
#include <wtf/RefPtr.h>
#if USE(ACCELERATED_COMPOSITING)
-#include <WebCore/CACFLayerTreeHost.h>
-#include <WebCore/PlatformCALayer.h>
+#include <WebCore/CACFLayerTreeHostClient.h>
+#include <WebCore/GraphicsLayerClient.h>
+
+namespace WebCore {
+ class CACFLayerTreeHost;
+}
#endif
class FullscreenVideoController;
diff --git a/Source/WebKit/wince/ChangeLog b/Source/WebKit/wince/ChangeLog
index f44bddf..77d6ef3 100644
--- a/Source/WebKit/wince/ChangeLog
+++ b/Source/WebKit/wince/ChangeLog
@@ -1,3 +1,86 @@
+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/FrameLoaderClientWinCE.cpp:
+ (WebKit::FrameLoaderClientWinCE::finishedLoading):
+
+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/ChromeClientWinCE.cpp:
+ * WebCoreSupport/ChromeClientWinCE.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/DragClientWinCE.cpp:
+ * WebCoreSupport/DragClientWinCE.h:
+
+2011-02-06 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Martin Robinson.
+
+ [WINCE] FrameLoaderClient calls loadURLInChildFrame on the child's frame loader
+ https://bugs.webkit.org/show_bug.cgi?id=53896
+
+ * WebView.cpp:
+ (WebView::createFrame): Use coreFrame instead of childFrame.
+
+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/FrameLoaderClientWinCE.cpp:
+ (WebKit::FrameLoaderClientWinCE::didRunInsecureContent):
+ * WebCoreSupport/FrameLoaderClientWinCE.h:
+
+2011-02-02 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed WinCE build fix for r77398.
+
+ * WebView.cpp:
+ (WebView::paint):
+
+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/ChromeClientWinCE.cpp:
+ (WebKit::ChromeClientWinCE::selectItemAlignmentFollowsMenuWritingDirection): Added.
+ * WebCoreSupport/ChromeClientWinCE.h:
+
+2011-01-25 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ [WINCE] Ensure layouted frame when painting
+ https://bugs.webkit.org/show_bug.cgi?id=53108
+
+ * WebView.cpp:
+ (WebView::paint):
+
2011-01-04 Patrick Gansterer <paroga@webkit.org>
Unreviewed WinCE build fix.
diff --git a/Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.cpp b/Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.cpp
index 659d246..3430c66 100644
--- a/Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.cpp
+++ b/Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.cpp
@@ -370,11 +370,6 @@ void ChromeClientWinCE::formStateDidChange(const Node*)
notImplemented();
}
-PassOwnPtr<HTMLParserQuirks> ChromeClientWinCE::createHTMLParserQuirks()
-{
- return 0;
-}
-
void ChromeClientWinCE::requestGeolocationPermissionForFrame(Frame*, Geolocation*)
{
notImplemented();
@@ -390,6 +385,11 @@ bool ChromeClientWinCE::selectItemWritingDirectionIsNatural()
return false;
}
+bool ChromeClientWinCE::selectItemAlignmentFollowsMenuWritingDirection()
+{
+ return false;
+}
+
PassRefPtr<PopupMenu> ChromeClientWinCE::createPopupMenu(PopupMenuClient* client) const
{
return adoptRef(new PopupMenuWin(client));
diff --git a/Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.h b/Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.h
index 4e7fb28..781989d 100644
--- a/Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.h
+++ b/Source/WebKit/wince/WebCoreSupport/ChromeClientWinCE.h
@@ -154,8 +154,6 @@ public:
// will be called frequently, so handling should be very fast.
virtual void formStateDidChange(const WebCore::Node*);
- virtual PassOwnPtr<WebCore::HTMLParserQuirks> createHTMLParserQuirks();
-
#if USE(ACCELERATED_COMPOSITING)
// Pass 0 as the GraphicsLayer to detatch the root layer.
virtual void attachRootGraphicsLayer(WebCore::Frame*, WebCore::GraphicsLayer*);
@@ -174,6 +172,7 @@ public:
#endif
virtual bool selectItemWritingDirectionIsNatural();
+ virtual bool selectItemAlignmentFollowsMenuWritingDirection();
virtual PassRefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::PopupMenuClient*) const;
virtual PassRefPtr<WebCore::SearchPopupMenu> createSearchPopupMenu(WebCore::PopupMenuClient*) const;
diff --git a/Source/WebKit/wince/WebCoreSupport/DragClientWinCE.cpp b/Source/WebKit/wince/WebCoreSupport/DragClientWinCE.cpp
index 1fc4379..904c61a 100644
--- a/Source/WebKit/wince/WebCoreSupport/DragClientWinCE.cpp
+++ b/Source/WebKit/wince/WebCoreSupport/DragClientWinCE.cpp
@@ -58,12 +58,6 @@ void DragClientWinCE::startDrag(DragImageRef, const IntPoint&, const IntPoint&,
notImplemented();
}
-DragImageRef DragClientWinCE::createDragImageForLink(KURL&, const String& label, Frame*)
-{
- notImplemented();
- return 0;
-}
-
void DragClientWinCE::dragControllerDestroyed()
{
delete this;
diff --git a/Source/WebKit/wince/WebCoreSupport/DragClientWinCE.h b/Source/WebKit/wince/WebCoreSupport/DragClientWinCE.h
index dc5168c..ec81f30 100644
--- a/Source/WebKit/wince/WebCoreSupport/DragClientWinCE.h
+++ b/Source/WebKit/wince/WebCoreSupport/DragClientWinCE.h
@@ -38,7 +38,6 @@ public:
virtual WebCore::DragSourceAction dragSourceActionMaskForPoint(const WebCore::IntPoint&);
virtual void startDrag(WebCore::DragImageRef, const WebCore::IntPoint&, const WebCore::IntPoint&, WebCore::Clipboard*, WebCore::Frame*, bool = false);
- virtual WebCore::DragImageRef createDragImageForLink(WebCore::KURL&, const WTF::String&, WebCore::Frame*);
virtual void dragControllerDestroyed();
};
diff --git a/Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.cpp b/Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.cpp
index 6a8fb74..7d8f614 100644
--- a/Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.cpp
+++ b/Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.cpp
@@ -265,7 +265,7 @@ void FrameLoaderClientWinCE::didDisplayInsecureContent()
notImplemented();
}
-void FrameLoaderClientWinCE::didRunInsecureContent(SecurityOrigin*)
+void FrameLoaderClientWinCE::didRunInsecureContent(SecurityOrigin*, const KURL&)
{
notImplemented();
}
@@ -450,8 +450,7 @@ String FrameLoaderClientWinCE::generatedMIMETypeForURLScheme(const String&) cons
void FrameLoaderClientWinCE::finishedLoading(DocumentLoader* documentLoader)
{
if (!m_pluginView) {
- FrameLoader* loader = documentLoader->frameLoader();
- loader->writer()->setEncoding(m_response.textEncodingName(), false);
+ documentLoader->writer()->setEncoding(m_response.textEncodingName(), false);
return;
}
diff --git a/Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.h b/Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.h
index c4dcf6d..ed49d89 100644
--- a/Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.h
+++ b/Source/WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.h
@@ -140,7 +140,7 @@ public:
virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
- virtual void didRunInsecureContent(WebCore::SecurityOrigin*);
+ virtual void didRunInsecureContent(WebCore::SecurityOrigin*, const WebCore::KURL&);
virtual WebCore::ResourceError cancelledError(const WebCore::ResourceRequest&);
virtual WebCore::ResourceError blockedError(const WebCore::ResourceRequest&);
diff --git a/Source/WebKit/wince/WebView.cpp b/Source/WebKit/wince/WebView.cpp
index ce90149..c21a7fd 100644
--- a/Source/WebKit/wince/WebView.cpp
+++ b/Source/WebKit/wince/WebView.cpp
@@ -169,7 +169,7 @@ PassRefPtr<Frame> WebView::createFrame(const KURL& url, const String& name, HTML
if (!childFrame->page())
return 0;
- childFrame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
+ coreFrame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
// The frame's onload handler may have removed it from the document.
if (!childFrame->tree()->parent())
@@ -232,11 +232,17 @@ void WebView::stop()
void WebView::paint(HDC hDC, const IntRect& clipRect)
{
- OwnPtr<HRGN> clipRgn(CreateRectRgn(clipRect.x(), clipRect.y(), clipRect.right(), clipRect.bottom()));
+ FrameView* frameView = view();
+ if (!frameView)
+ return;
+
+ OwnPtr<HRGN> clipRgn(CreateRectRgn(clipRect.x(), clipRect.y(), clipRect.maxX(), clipRect.maxY()));
SelectClipRgn(hDC, clipRgn.get());
+ frameView->updateLayoutAndStyleIfNeededRecursive();
+
GraphicsContext gc(hDC);
- view()->paint(&gc, clipRect);
+ frameView->paint(&gc, clipRect);
}
bool WebView::handlePaint(HWND hWnd)
diff --git a/Source/WebKit/wx/ChangeLog b/Source/WebKit/wx/ChangeLog
index 4862225..13ab1b8 100644
--- a/Source/WebKit/wx/ChangeLog
+++ b/Source/WebKit/wx/ChangeLog
@@ -1,3 +1,84 @@
+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
+
+ * WebKitSupport/FrameLoaderClientWx.cpp:
+ (WebCore::FrameLoaderClientWx::finishedLoading):
+
+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
+
+ * WebKitSupport/ChromeClientWx.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.
+
+ * WebKitSupport/DragClientWx.cpp:
+ * WebKitSupport/DragClientWx.h:
+
+2011-02-07 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [wx] FrameLoaderClient calls loadURLInChildFrame on the child's frame loader
+ https://bugs.webkit.org/show_bug.cgi?id=53895
+
+ * WebKitSupport/FrameLoaderClientWx.cpp:
+ (WebCore::FrameLoaderClientWx::createFrame): Use m_frame instead of childFrame.
+
+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/*
+
+ * WebKitSupport/FrameLoaderClientWx.cpp:
+ (WebCore::FrameLoaderClientWx::didRunInsecureContent):
+ * WebKitSupport/FrameLoaderClientWx.h:
+
+2011-02-02 Kevin Ollivier <kevino@theolliviers.com>
+
+ [wx] Build fixes for wxWebKit.
+
+ * bindings/python/wscript:
+
+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
+
+ * WebKitSupport/ChromeClientWx.cpp:
+ (WebCore::ChromeClientWx::selectItemAlignmentFollowsMenuWritingDirection): Added.
+ * WebKitSupport/ChromeClientWx.h:
+
+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
+
+ * WebKitSupport/FrameLoaderClientWx.cpp:
+ (WebCore::FrameLoaderClientWx::dispatchDidFinishDocumentLoad):
+
2011-01-14 Yuzo Fujishima <yuzo@google.com>
Reviewed by Antti Koivisto.
diff --git a/Source/WebKit/wx/WebKitSupport/ChromeClientWx.cpp b/Source/WebKit/wx/WebKitSupport/ChromeClientWx.cpp
index c89bb17..026d8a6 100644
--- a/Source/WebKit/wx/WebKitSupport/ChromeClientWx.cpp
+++ b/Source/WebKit/wx/WebKitSupport/ChromeClientWx.cpp
@@ -476,6 +476,11 @@ bool ChromeClientWx::selectItemWritingDirectionIsNatural()
return false;
}
+bool ChromeClientWx::selectItemAlignmentFollowsMenuWritingDirection()
+{
+ return false;
+}
+
PassRefPtr<PopupMenu> ChromeClientWx::createPopupMenu(PopupMenuClient* client) const
{
return adoptRef(new PopupMenuWx(client));
diff --git a/Source/WebKit/wx/WebKitSupport/ChromeClientWx.h b/Source/WebKit/wx/WebKitSupport/ChromeClientWx.h
index 2ccad43..94e6504 100644
--- a/Source/WebKit/wx/WebKitSupport/ChromeClientWx.h
+++ b/Source/WebKit/wx/WebKitSupport/ChromeClientWx.h
@@ -139,8 +139,6 @@ public:
virtual void formStateDidChange(const Node*) { }
- virtual PassOwnPtr<HTMLParserQuirks> createHTMLParserQuirks() { return 0; }
-
virtual void setCursor(const Cursor&);
virtual void scrollRectIntoView(const IntRect&, const ScrollView*) const {}
@@ -149,6 +147,7 @@ public:
virtual void cancelGeolocationPermissionRequestForFrame(Frame*, Geolocation*) { }
virtual bool selectItemWritingDirectionIsNatural();
+ virtual bool selectItemAlignmentFollowsMenuWritingDirection();
virtual PassRefPtr<PopupMenu> createPopupMenu(PopupMenuClient*) const;
virtual PassRefPtr<SearchPopupMenu> createSearchPopupMenu(PopupMenuClient*) const;
diff --git a/Source/WebKit/wx/WebKitSupport/DragClientWx.cpp b/Source/WebKit/wx/WebKitSupport/DragClientWx.cpp
index fb6905b..75744ba 100644
--- a/Source/WebKit/wx/WebKitSupport/DragClientWx.cpp
+++ b/Source/WebKit/wx/WebKitSupport/DragClientWx.cpp
@@ -68,10 +68,4 @@ void DragClientWx::startDrag(DragImageRef dragImage,
notImplemented();
}
-DragImageRef DragClientWx::createDragImageForLink(KURL&, const String& label, Frame*)
-{
- notImplemented();
- return 0;
-}
-
}
diff --git a/Source/WebKit/wx/WebKitSupport/DragClientWx.h b/Source/WebKit/wx/WebKitSupport/DragClientWx.h
index afb54fb..45425c4 100644
--- a/Source/WebKit/wx/WebKitSupport/DragClientWx.h
+++ b/Source/WebKit/wx/WebKitSupport/DragClientWx.h
@@ -39,7 +39,6 @@ public:
virtual WebCore::DragSourceAction dragSourceActionMaskForPoint(const WebCore::IntPoint&);
virtual void startDrag(WebCore::DragImageRef dragImage, const WebCore::IntPoint& dragImageOrigin, const WebCore::IntPoint& eventPos, WebCore::Clipboard*, WebCore::Frame*, bool linkDrag = false);
- virtual WebCore::DragImageRef createDragImageForLink(WebCore::KURL&, const WTF::String& label, WebCore::Frame*);
};
}
diff --git a/Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.cpp b/Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.cpp
index 362c726..a10df7d 100644
--- a/Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.cpp
+++ b/Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.cpp
@@ -320,7 +320,7 @@ void FrameLoaderClientWx::dispatchDidFinishDocumentLoad()
if (m_webView) {
wxWebViewLoadEvent wkEvent(m_webView);
wkEvent.SetState(wxWEBVIEW_LOAD_DOC_COMPLETED);
- wkEvent.SetURL(m_frame->loader()->url().string());
+ wkEvent.SetURL(m_frame->document()->url().string());
m_webView->GetEventHandler()->ProcessEvent(wkEvent);
}
}
@@ -394,7 +394,7 @@ void FrameLoaderClientWx::postProgressFinishedNotification()
if (m_webView) {
wxWebViewLoadEvent wkEvent(m_webView);
wkEvent.SetState(wxWEBVIEW_LOAD_DL_COMPLETED);
- wkEvent.SetURL(m_frame->loader()->url().string());
+ wkEvent.SetURL(m_frame->document()->url().string());
m_webView->GetEventHandler()->ProcessEvent(wkEvent);
}
}
@@ -434,8 +434,7 @@ void FrameLoaderClientWx::finishedLoading(DocumentLoader* loader)
{
if (!m_pluginView) {
if (m_firstData) {
- FrameLoader* fl = loader->frameLoader();
- fl->writer()->setEncoding(m_response.textEncodingName(), false);
+ loader->writer()->setEncoding(m_response.textEncodingName(), false);
m_firstData = false;
}
} else {
@@ -595,7 +594,7 @@ void FrameLoaderClientWx::didDisplayInsecureContent()
notImplemented();
}
-void FrameLoaderClientWx::didRunInsecureContent(WebCore::SecurityOrigin*)
+void FrameLoaderClientWx::didRunInsecureContent(WebCore::SecurityOrigin*, const KURL&)
{
notImplemented();
}
@@ -850,7 +849,7 @@ PassRefPtr<Frame> FrameLoaderClientWx::createFrame(const KURL& url, const String
if (!childFrame->page())
return 0;
- childFrame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
+ m_frame->loader()->loadURLIntoChildFrame(url, referrer, childFrame.get());
// The frame's onload handler may have removed it from the document.
if (!childFrame->tree()->parent())
diff --git a/Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.h b/Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.h
index b56a900..e26cbe2 100644
--- a/Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.h
+++ b/Source/WebKit/wx/WebKitSupport/FrameLoaderClientWx.h
@@ -167,7 +167,7 @@ namespace WebCore {
virtual bool canCachePage() const;
virtual void didDisplayInsecureContent();
- virtual void didRunInsecureContent(SecurityOrigin*);
+ virtual void didRunInsecureContent(SecurityOrigin*, const KURL&);
virtual void setMainDocumentError(DocumentLoader*, const ResourceError&);
virtual void committedLoad(DocumentLoader*, const char*, int);
diff --git a/Source/WebKit/wx/bindings/python/wscript b/Source/WebKit/wx/bindings/python/wscript
index 0a1df31..5e1dfc1 100644
--- a/Source/WebKit/wx/bindings/python/wscript
+++ b/Source/WebKit/wx/bindings/python/wscript
@@ -33,7 +33,7 @@ include_paths = [
os.path.join(wk_root, 'Source', 'JavaScriptCore'),
os.path.join(wk_root, 'Source', 'WebCore', 'bindings', 'cpp'),
os.path.join(wk_root, 'Source', 'WebCore', 'DerivedSources'),
- os.path.join(wk_root, 'WebKit', 'wx'),
+ os.path.join(wk_root, 'Source', 'WebKit', 'wx'),
os.path.join(wx_root, 'wxPython', 'include'),
os.path.join(wx_root, '..', 'wxPython', 'include'),
]