1. 23 Jan, 2014 5 commits
    • commit-queue@webkit.org's avatar
      [CSS Regions] Fix positioning composited layers when the region has overflow:hidden · 4affaa08
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=124042
      
      Patch by Mihai Maerean <mmaerean@adobe.com> on 2014-01-23
      Reviewed by Mihnea Ovidenie.
      
      Source/WebCore:
      
      If there's a clipping GraphicsLayer on the hierarchy, substract its offset, since it's its
      parent that positions us.
      
      Tests: compositing/regions/position-layer-inside-region-overflow-hidden.html
             compositing/regions/position-layer-inside-overflow-hidden.html
             compositing/regions/position-layers-inside-region-overflow-hidden.html
             compositing/regions/position-layers-inside-regions-overflow-hidden.html
      
      * rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread): The position
      must also be correct when the region has box-shadow that inflates the region's layer. The
      composited layers from the flow thread should be rendered in the same position whether the
      associated region has clipping or not.
      Using the position of the clipping layer instead of the location of the clipbox makes it
      also work with box-shadow that inflates the region's graphics layer.
      
      LayoutTests:
      
      * compositing/regions/position-layer-inside-region-overflow-hidden.html: Added.
      * compositing/regions/position-layer-inside-region-overflow-hidden-expected.html: Added.
      * compositing/regions/position-layer-inside-overflow-hidden.html: Added.
      * compositing/regions/position-layer-inside-overflow-hidden-expected.html: Added.
      * compositing/regions/position-layers-inside-region-overflow-hidden.html: Added.
      * compositing/regions/position-layers-inside-region-overflow-hidden-expected.html: Added.
      * compositing/regions/position-layers-inside-regions-overflow-hidden.html: Added.
      * compositing/regions/position-layers-inside-regions-overflow-hidden-expected.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162605 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4affaa08
    • abucur@adobe.com's avatar
      [CSS Regions] Convert regions iterator loops to range-based loops · 42276a7f
      abucur@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127464
      
      Reviewed by Antti Koivisto.
      
      Replace most of the iterator loops in the region implementation with
      range based for loops. The for loops that iterate only over subsets
      of collections have not been changed.
      
      Tests: no new tests, this is a refactoring patch.
      
      * dom/WebKitNamedFlow.cpp:
      (WebCore::WebKitNamedFlow::firstEmptyRegionIndex):
      (WebCore::WebKitNamedFlow::getRegionsByContent):
      (WebCore::WebKitNamedFlow::getRegions):
      (WebCore::WebKitNamedFlow::getContent):
      * inspector/InspectorOverlay.cpp:
      (WebCore::buildObjectForCSSRegionsHighlight):
      * rendering/RenderFlowThread.cpp:
      (WebCore::RenderFlowThread::validateRegions):
      (WebCore::RenderFlowThread::updateLogicalWidth):
      (WebCore::RenderFlowThread::computeLogicalHeight):
      (WebCore::RenderFlowThread::repaintRectangleInRegions):
      (WebCore::RenderFlowThread::removeRenderBoxRegionInfo):
      (WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock):
      (WebCore::RenderFlowThread::clearRenderBoxRegionInfoAndCustomStyle):
      (WebCore::RenderFlowThread::isAutoLogicalHeightRegionsCountConsistent):
      (WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout):
      (WebCore::RenderFlowThread::markRegionsForOverflowLayoutIfNeeded):
      (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
      (WebCore::RenderFlowThread::collectLayerFragments):
      (WebCore::RenderFlowThread::fragmentsBoundingBox):
      * rendering/RenderNamedFlowFragment.cpp:
      (WebCore::RenderNamedFlowFragment::setRegionObjectsRegionStyle):
      (WebCore::RenderNamedFlowFragment::restoreRegionObjectsOriginalStyle):
      * rendering/RenderNamedFlowThread.cpp:
      (WebCore::RenderNamedFlowThread::clearContentElements):
      (WebCore::RenderNamedFlowThread::nextRendererForNode):
      (WebCore::RenderNamedFlowThread::dependsOn):
      (WebCore::RenderNamedFlowThread::computeOversetStateForRegions):
      (WebCore::RenderNamedFlowThread::checkInvalidRegions):
      (WebCore::RenderNamedFlowThread::pushDependencies):
      (WebCore::RenderNamedFlowThread::registerNamedFlowContentElement):
      (WebCore::isContainedInElements):
      (WebCore::RenderNamedFlowThread::getRanges):
      (WebCore::RenderNamedFlowThread::checkRegionsWithStyling):
      (WebCore::RenderNamedFlowThread::clearRenderObjectCustomStyle):
      * rendering/RenderTreeAsText.cpp:
      (WebCore::writeRenderRegionList):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162602 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      42276a7f
    • commit-queue@webkit.org's avatar
      Range should be constructable. · e6c09a97
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=115639
      
      Patch by László Langó <llango.u-szeged@partner.samsung.com> on 2014-01-23
      Reviewed by Ryosuke Niwa.
      
      Source/WebCore:
      
      http://www.w3.org/TR/2013/WD-dom-20131107/#interface-range
      Now we can do `new Range()` instead of `document.createRange()`.
      
      Backported from Blink: https://chromium.googlesource.com/chromium/blink/+/47ca40efdf58a4787aa33aa75a35778899b1c002%5E%21
      
      Test: fast/dom/Range/range-constructor.html
      
      * dom/Range.cpp:
      (WebCore::Range::create):
      * dom/Range.h:
      * dom/Range.idl:
      
      LayoutTests:
      
      * fast/dom/Range/range-constructor-expected.txt: Added.
      * fast/dom/Range/range-constructor.html: Added.
      * fast/dom/dom-constructors-expected.txt:
      * fast/dom/dom-constructors.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162601 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e6c09a97
    • changseok.oh@collabora.com's avatar
      Unreviewed build fix for gles after r162565. Add missing definitions. · ac433e32
      changseok.oh@collabora.com authored
      * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
      (WebCore::GraphicsContext3D::drawArraysInstanced):
      (WebCore::GraphicsContext3D::drawElementsInstanced):
      (WebCore::GraphicsContext3D::vertexAttribDivisor):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162600 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ac433e32
    • carlosgc@webkit.org's avatar
      [GLIB] Use GUniquePtr instead of GOwnPtr · f2ece55f
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=127431
      
      Reviewed by Martin Robinson.
      
      GUniquePtr is a template alias of std::unique_ptr with a custom
      deleter that replaces GOwnPtr. GOwnPtr is still used for the cases
      where the output pointer is needed, but it will also be replaced soon.
      
      Source/WebCore:
      
      * GNUmakefile.list.am:
      * PlatformGTK.cmake:
      * accessibility/atk/AXObjectCacheAtk.cpp:
      * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
      (getAttributeSetForAccessibilityObject):
      (accessibilityObjectLength):
      (textExtents):
      (webkitAccessibleTextGetChar):
      (numberOfReplacedElementsBeforeOffset):
      * page/ContextMenuController.cpp:
      * platform/SharedBuffer.h:
      * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
      (webKitWebAudioSrcConstructed):
      (webKitWebAudioSrcLoop):
      * platform/audio/gtk/AudioBusGtk.cpp:
      (WebCore::AudioBus::loadPlatformResource):
      * platform/geoclue/GeolocationProviderGeoclue.cpp:
      * platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
      * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
      (WebCore::MediaPlayerPrivateGStreamer::setAudioStreamProperties):
      (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
      * platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:
      (webKitMediaSrcAddSrc):
      * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
      (webKitWebSrcStart):
      (ResourceHandleStreamingClient::wasBlocked):
      (ResourceHandleStreamingClient::cannotShowURL):
      * platform/graphics/gtk/ImageBufferGtk.cpp:
      (WebCore::encodeImage):
      (WebCore::ImageBuffer::toDataURL):
      * platform/graphics/gtk/ImageGtk.cpp:
      (WebCore::getThemeIconFileName):
      (WebCore::Image::loadPlatformResource):
      * platform/gtk/ContextMenuGtk.cpp:
      (WebCore::ContextMenu::itemCount):
      (WebCore::contextMenuItemVector):
      * platform/gtk/ContextMenuItemGtk.cpp:
      (WebCore::createPlatformMenuItemDescription):
      * platform/gtk/DataObjectGtk.cpp:
      (WebCore::DataObjectGtk::setURIList):
      (WebCore::DataObjectGtk::setURL):
      * platform/gtk/FileSystemGtk.cpp:
      (WebCore::filenameToString):
      (WebCore::fileSystemRepresentation):
      (WebCore::filenameForDisplay):
      (WebCore::pathGetFileName):
      (WebCore::applicationDirectoryPath):
      (WebCore::sharedResourcesPath):
      (WebCore::directoryName):
      (WebCore::listDirectory):
      (WebCore::openTemporaryFile):
      * platform/gtk/GOwnPtrGtk.cpp: Removed.
      * platform/gtk/GOwnPtrGtk.h: Removed.
      * platform/gtk/GUniquePtrGtk.h: Added.
      * platform/gtk/GamepadsGtk.cpp:
      (WebCore::GamepadsGtk::GamepadsGtk):
      * platform/gtk/GtkClickCounter.cpp:
      (WebCore::GtkClickCounter::shouldProcessButtonEvent):
      * platform/gtk/GtkInputMethodFilter.cpp:
      (WebCore::GtkInputMethodFilter::sendCompositionAndPreeditWithFakeKeyEvents):
      * platform/gtk/GtkPopupMenu.cpp:
      (WebCore::GtkPopupMenu::popUp):
      (WebCore::GtkPopupMenu::typeAheadFind):
      * platform/gtk/LanguageGtk.cpp:
      (WebCore::platformLanguage):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::imageTitle):
      (WebCore::localizedMediaTimeDescription):
      * platform/gtk/PasteboardHelper.cpp:
      (WebCore::selectionDataToUTF8String):
      (WebCore::PasteboardHelper::getClipboardContents):
      (WebCore::PasteboardHelper::fillSelectionData):
      * platform/gtk/PopupMenuGtk.cpp:
      (WebCore::PopupMenuGtk::createGtkActionForMenuItem):
      (WebCore::PopupMenuGtk::show):
      * platform/gtk/WebKitAuthenticationWidget.cpp:
      (webkitAuthenticationWidgetInitialize):
      * platform/network/ResourceHandleInternal.h:
      * platform/network/gtk/CredentialBackingStore.cpp:
      (WebCore::credentialForChallengeAsyncReadyCallback):
      * platform/network/soup/CookieJarSoup.cpp:
      (WebCore::setCookiesFromDOM):
      (WebCore::cookiesForSession):
      (WebCore::getRawCookies):
      (WebCore::deleteCookie):
      (WebCore::getHostnamesWithCookies):
      (WebCore::deleteCookiesForHostname):
      (WebCore::deleteAllCookies):
      * platform/network/soup/DNSSoup.cpp:
      * platform/network/soup/GUniquePtrSoup.h: Added.
      * platform/network/soup/ResourceErrorSoup.cpp:
      (WebCore::failingURI):
      * platform/network/soup/ResourceHandleSoup.cpp:
      (WebCore::ResourceHandle::ensureReadBuffer):
      (WebCore::cleanupSoupRequestOperation):
      (WebCore::createSoupRequestAndMessageForHandle):
      * platform/network/soup/ResourceRequestSoup.cpp:
      (WebCore::ResourceRequest::updateSoupMessageMembers):
      (WebCore::ResourceRequest::updateSoupMessage):
      * platform/network/soup/ResourceResponseSoup.cpp:
      * platform/network/soup/SoupURIUtils.cpp:
      (WebCore::soupURIToKURL):
      * platform/soup/SharedBufferSoup.cpp:
      (WebCore::SharedBuffer::SharedBuffer):
      (WebCore::SharedBuffer::clearPlatformData):
      (WebCore::SharedBuffer::maybeTransferPlatformData):
      (WebCore::SharedBuffer::hasPlatformData):
      * plugins/gtk/PluginPackageGtk.cpp:
      (WebCore::PluginPackage::fetchInfo):
      (WebCore::PluginPackage::load):
      
      Source/WebKit/gtk:
      
      * WebCoreSupport/ContextMenuClientGtk.cpp:
      (WebKit::getUnicodeMenuItemPosition):
      * WebCoreSupport/DragClientGtk.cpp:
      (WebKit::DragClient::startDrag):
      * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
      (DumpRenderTreeSupportGtk::setValueForUser):
      * WebCoreSupport/EditorClientGtk.h:
      * WebCoreSupport/FrameLoaderClientGtk.cpp:
      (WebKit::FrameLoaderClient::userAgent):
      (WebKit::FrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
      (WebKit::FrameLoaderClient::dispatchWillSendRequest):
      (WebKit::FrameLoaderClient::assignIdentifierToInitialRequest):
      (WebKit::FrameLoaderClient::dispatchDidReceiveResponse):
      (WebKit::FrameLoaderClient::dispatchDidReceiveContentLength):
      (WebKit::FrameLoaderClient::dispatchDidFinishLoading):
      (WebKit::FrameLoaderClient::dispatchDidFailLoading):
      (WebKit::FrameLoaderClient::dispatchDidFailLoad):
      * WebCoreSupport/InspectorClientGtk.h:
      * webkit/webkitfavicondatabase.cpp:
      (webkit_favicon_database_set_path):
      * webkit/webkitfilechooserrequest.cpp:
      * webkit/webkitglobals.cpp:
      (webkitInit):
      * webkit/webkithittestresult.cpp:
      (WebKit::kit):
      * webkit/webkiticondatabase.cpp:
      (webkit_icon_database_set_path):
      * webkit/webkitspellcheckerenchant.cpp:
      * webkit/webkitwebplugin.cpp:
      (webkit_web_plugin_get_path):
      * webkit/webkitwebpluginprivate.h:
      * webkit/webkitwebsettings.cpp:
      (webkit_web_settings_class_init):
      (webkit_web_settings_copy):
      * webkit/webkitwebview.cpp:
      (webkit_web_view_forward_context_menu_event):
      (fileChooserDialogResponseCallback):
      (webkit_web_view_drag_end):
      * webkit/webkitwebviewprivate.h:
      
      Source/WebKit2:
      
      * Shared/Downloads/soup/DownloadSoup.cpp:
      (WebKit::DownloadClient::didReceiveResponse):
      * Shared/NativeWebKeyboardEvent.h:
      * Shared/NativeWebMouseEvent.h:
      * Shared/NativeWebWheelEvent.h:
      * Shared/gtk/ArgumentCodersGtk.cpp:
      (IPC::encodeGKeyFile):
      (IPC::decodeGKeyFile):
      (IPC::encode):
      (IPC::decode):
      * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
      (webkitContextMenuItemSetSubMenuFromGtkMenu):
      * UIProcess/API/gtk/WebKitDownload.cpp:
      (webkitDownloadDecideDestination):
      (webkitDownloadNotifyProgress):
      (webkitDownloadFailed):
      * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
      (webkit_file_chooser_request_select_files):
      * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
      (didReceiveWebViewMessageFromInjectedBundle):
      (getInjectedBundleInitializationUserData):
      * UIProcess/API/gtk/WebKitLoaderClient.cpp:
      (didFailProvisionalLoadWithErrorForFrame):
      (didFailLoadWithErrorForFrame):
      * UIProcess/API/gtk/WebKitPrintOperation.cpp:
      (drawPagesForPrintingCompleted):
      * UIProcess/API/gtk/WebKitURIRequest.cpp:
      (webkit_uri_request_get_http_headers):
      * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
      (webkit_uri_scheme_request_get_scheme):
      (webkit_uri_scheme_request_get_path):
      * UIProcess/API/gtk/WebKitWebContext.cpp:
      (injectedBundleFilename):
      (webkit_web_context_set_favicon_database_directory):
      * UIProcess/API/gtk/WebKitWebView.cpp:
      (webkitWebViewLoadFail):
      (webkitWebViewCreateJavaScriptDialog):
      (fileChooserDialogResponseCallback):
      (webkitWebViewLoadChanged):
      (webkitWebViewLoadFailedWithTLSErrors):
      (webkitWebViewPopulateContextMenu):
      * UIProcess/API/gtk/WebKitWebViewBase.cpp:
      (webkitWebViewBaseButtonPressEvent):
      (webkitWebViewBaseStartDrag):
      * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
      (WebKit::WebInspectorServer::platformResourceForPath):
      * UIProcess/InspectorServer/soup/WebSocketServerSoup.cpp:
      (WebKit::connectionCallback):
      * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
      (WebKit::ProcessLauncher::launchProcess):
      * UIProcess/gtk/WebContextGtk.cpp:
      (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
      (WebKit::WebContext::platformDefaultDatabaseDirectory):
      (WebKit::WebContext::platformDefaultIconDatabasePath):
      (WebKit::WebContext::platformDefaultLocalStorageDirectory):
      (WebKit::WebContext::platformDefaultDiskCacheDirectory):
      * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
      (WebKit::contextMenuItemVisibilityChanged):
      * UIProcess/gtk/WebInspectorProxyGtk.cpp:
      (WebKit::WebInspectorProxy::platformInspectedURLChanged):
      * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
      (WebKit::WebPopupMenuProxyGtk::createGtkActionForMenuItem):
      * WebProcess/WebPage/gtk/WebInspectorGtk.cpp:
      * WebProcess/WebPage/gtk/WebPageGtk.cpp:
      (WebKit::WebPage::platformInitialize):
      * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
      * WebProcess/gtk/WebProcessMainGtk.cpp:
      * WebProcess/soup/WebSoupRequestManager.cpp:
      (WebKit::WebSoupRequestManager::send):
      
      Tools:
      
      * DumpRenderTree/atk/AccessibilityCallbacksAtk.cpp:
      (printAccessibilityEvent):
      (axObjectEventListener):
      * DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
      (indexRangeInTable):
      (AccessibilityUIElement::role):
      (AccessibilityUIElement::title):
      (AccessibilityUIElement::description):
      (AccessibilityUIElement::stringValue):
      (AccessibilityUIElement::language):
      (AccessibilityUIElement::lineForIndex):
      (AccessibilityUIElement::selectedTextRange):
      (AccessibilityUIElement::url):
      * DumpRenderTree/efl/AccessibilityControllerEfl.cpp:
      (AccessibilityController::accessibleElementById):
      * DumpRenderTree/gtk/AccessibilityControllerGtk.cpp:
      (AccessibilityController::accessibleElementById):
      * DumpRenderTree/gtk/DumpRenderTree.cpp:
      (getOutputDir):
      (getFontsPath):
      (initializeFonts):
      (dumpFramesAsText):
      (compareHistoryItems):
      (dumpHistoryItem):
      (soupURIToStringPreservingPassword):
      (resetDefaultsToConsistentValues):
      (temporaryDatabaseDirectory):
      (webViewTitleChanged):
      (webFrameLoadStatusNotified):
      (pathFromSoupURI):
      (convertWebResourceToURLPath):
      (urlSuitableForTestResult):
      (descriptionSuitableForTestResult):
      (willSendRequestCallback):
      (frameLoadEventCallback):
      * DumpRenderTree/gtk/EditingCallbacks.cpp:
      (dumpNodePath):
      (dumpRange):
      (shouldApplyStyle):
      * DumpRenderTree/gtk/EventSender.cpp:
      (contextClickCallback):
      (beginDragWithFilesCallback):
      * DumpRenderTree/gtk/TestRunnerGtk.cpp:
      (TestRunner::pathToLocalResource):
      (TestRunner::queueLoad):
      (TestRunner::removeOriginAccessWhitelistEntry):
      (TestRunner::setMockGeolocationPositionUnavailableError):
      (TestRunner::setIconDatabaseEnabled):
      (TestRunner::findString):
      (TestRunner::setDomainRelaxationForbiddenForURLScheme):
      (TestRunner::overridePreference):
      (TestRunner::addUserScript):
      (TestRunner::addUserStyleSheet):
      (TestRunner::setTextDirection):
      * DumpRenderTree/gtk/TextInputController.cpp:
      (setMarkedTextCallback):
      (insertTextCallback):
      (doCommandCallback):
      * DumpRenderTree/gtk/WorkQueueItemGtk.cpp:
      (LoadHTMLStringItem::invoke):
      * TestWebKitAPI/PlatformGTK.cmake:
      * TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
      (WebKitDOMNodeTest::testTagNames):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestBackForwardList.cpp:
      (testBackForwardListLimitAndCache):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
      (testContextMenuSmartSeparators):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp:
      * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
      (testDownloadLocalFile):
      (testDownloadLocalFileError):
      (addContentDispositionHTTPHeaderToResponse):
      (serverCallback):
      (testDownloadRemoteFileError):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:
      (startTestServer):
      (testInspectorServerPageList):
      (openRemoteDebuggingSession):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp:
      (testPrintOperationPrint):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
      (addCacheHTTPHeadersToResponse):
      (serverCallback):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:
      (httpsServerCallback):
      (httpServerCallback):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
      (testWebViewJavaScriptDialogs):
      (testWebViewWindowProperties):
      (testWebViewFileChooserRequest):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp:
      (testWebExtensionWindowObjectCleared):
      (testWebExtensionIsolatedWorld):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitAccessibility.cpp:
      (startTestServer):
      (checkAtspiAccessible):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp:
      (serverCallback):
      (testClearDatabase):
      (testGetFaviconURI):
      (webkitFaviconDatabaseFinalizedCallback):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
      (testWebContextGetPlugins):
      (testWebContextURIScheme):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
      (testWebViewRunJavaScript):
      (testWebViewMode):
      (testWebViewPageVisibility):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebViewGroup.cpp:
      (isStyleSheetInjectedForURLAtPath):
      * TestWebKitAPI/Tests/WebKit2Gtk/TestWebViewEditor.cpp:
      (testWebViewEditorCutCopyPasteNonEditable):
      (testWebViewEditorCutCopyPasteEditable):
      (testWebViewEditorSelectAllNonEditable):
      (testWebViewEditorSelectAllEditable):
      * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
      (sendRequestCallback):
      (methodCallCallback):
      * TestWebKitAPI/gtk/PlatformUtilitiesGtk.cpp:
      (TestWebKitAPI::Util::createInjectedBundlePath):
      (TestWebKitAPI::Util::createURLForResource):
      * TestWebKitAPI/gtk/PlatformWebViewGtk.cpp:
      (TestWebKitAPI::doKeyStroke):
      (TestWebKitAPI::doMouseButtonEvent):
      (TestWebKitAPI::PlatformWebView::simulateMouseMove):
      * TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp:
      (loadFailedCallback):
      (LoadTrackingTest::loadURI):
      (LoadTrackingTest::loadHtml):
      (LoadTrackingTest::loadPlainText):
      (LoadTrackingTest::loadRequest):
      (LoadTrackingTest::reload):
      (LoadTrackingTest::goBack):
      (LoadTrackingTest::goForward):
      * TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.h:
      * TestWebKitAPI/gtk/WebKit2Gtk/TestMain.cpp:
      (registerGResource):
      (removeNonEmptyDirectory):
      (main):
      * TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h:
      (Test::getWebKit1TestResoucesDir):
      (Test::getResourcesDir):
      * TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp:
      (WebKitTestBus::run):
      * TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.cpp:
      (WebKitTestServer::WebKitTestServer):
      (WebKitTestServer::getURIForPath):
      * TestWebKitAPI/gtk/WebKit2Gtk/WebProcessTestRunner.cpp:
      (WebProcessTestRunner::runTest):
      * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
      (resourceGetDataCallback):
      (WebViewTest::mainResourceData):
      (WebViewTest::mouseMoveTo):
      (WebViewTest::keyStroke):
      (WebViewTest::doMouseButtonEvent):
      * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:
      * WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
      (WTR::AccessibilityController::accessibleElementById):
      * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
      * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
      (WTR::AccessibilityUIElement::role):
      (WTR::AccessibilityUIElement::title):
      (WTR::AccessibilityUIElement::description):
      (WTR::AccessibilityUIElement::stringValue):
      (WTR::AccessibilityUIElement::language):
      (WTR::AccessibilityUIElement::lineForIndex):
      (WTR::AccessibilityUIElement::selectedTextRange):
      (WTR::AccessibilityUIElement::url):
      * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
      (WTR::getOutputDir):
      (WTR::getFontsPath):
      (WTR::initializeFontConfigSetting):
      * WebKitTestRunner/InjectedBundle/gtk/InjectedBundleUtilities.cpp:
      (WTR::topLevelPath):
      * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
      (WTR::TestRunner::pathToLocalResource):
      * WebKitTestRunner/gtk/TestControllerGtk.cpp:
      (WTR::TestController::initializeInjectedBundlePath):
      (WTR::TestController::initializeTestPluginDirectory):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162599 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f2ece55f
  2. 22 Jan, 2014 26 commits
    • simon.fraser@apple.com's avatar
      Surround fixedVisibleContentRect code with USE(TILED_BACKING_STORE) · 348cfdd3
      simon.fraser@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127461
      
      Source/WebCore:
      
      Reviewed by Andreas Kling.
      
      The "fixedVisibleContentRect" code path is only used by platforms
      which enabled TILED_BACKING_STORE, so to reduce confusion, surround
      this code with #if USE(TILED_BACKING_STORE).
      
      * page/Frame.cpp:
      (WebCore::Frame::createView):
      * page/FrameView.cpp:
      * page/FrameView.h:
      * platform/ScrollView.cpp:
      (WebCore::ScrollView::unscaledVisibleContentSize):
      (WebCore::ScrollView::visibleContentRect):
      * platform/ScrollView.h:
      (WebCore::ScrollView::visibleSize):
      
      Source/WebKit2:
      
      Reviewed by Andreas Kling.
      
      The "fixedVisibleContentRect" code path is only used by platforms
      which enabled TILED_BACKING_STORE, so to reduce confusion, surround
      this code with #if USE(TILED_BACKING_STORE).
      
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162597 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      348cfdd3
    • lforschler@apple.com's avatar
      Versioning. · 2744c58c
      lforschler@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162592 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2744c58c
    • mmaxfield@apple.com's avatar
      ASSERTION FAILED: v.isFixed() in WebCore::RenderStyle::setWordSpacing · 494da149
      mmaxfield@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126987
      
      Reviewed by Simon Fraser.
      
      When "inherit" is specified and there is no parent, Length values have an "Auto" type
      
      Source/WebCore:
      
      Test: fast/css3-text/css3-word-spacing-percentage/word-spacing-crash.html
      
      * rendering/style/RenderStyle.cpp:
      (WebCore::RenderStyle::setWordSpacing):
      
      LayoutTests:
      
      * fast/css3-text/css3-word-spacing-percentage/word-spacing-crash-expected.txt: Added.
      * fast/css3-text/css3-word-spacing-percentage/word-spacing-crash.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162588 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      494da149
    • samuel_white@apple.com's avatar
      AX: Can't always increment web sliders. · 24dac231
      samuel_white@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127451
      
      Reviewed by Chris Fleizach.
      
      Source/WebCore:
      
      Clamping the decrement/increment amount to one when necessary (if a percent change would result in a change of less than one).
      
      Test: accessibility/range-alter-by-percent.html
      
      * accessibility/AccessibilityNodeObject.cpp:
      (WebCore::AccessibilityNodeObject::changeValueByPercent):
      
      LayoutTests:
      
      Adding range-alter-by-percent.html to compliment the existing range-alter-by-step.html test.
      
      * accessibility/range-alter-by-percent-expected.txt: Added.
      * accessibility/range-alter-by-percent.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162587 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      24dac231
    • mmaxfield@apple.com's avatar
      Remove CSS3_TEXT_DECORATION define · 607bf6e3
      mmaxfield@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127333
      
      Source/JavaScriptCore:
      
      This is required for unprefixing the text-decoration-* CSS properties.
      
      Reviewed by Simon Fraser.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      Reviewed by Simon Fraser.
      
      This is required for unprefixing the text-decoration-* CSS properties.
      
      No new tests are necessary becase the flag was already on by default.
      
      * Configurations/FeatureDefines.xcconfig:
      * css/CSSComputedStyleDeclaration.cpp:
      (WebCore::renderTextDecorationSkipFlagsToCSSValue):
      (WebCore::ComputedStyleExtractor::propertyValue):
      * css/CSSParser.cpp:
      (WebCore::isColorPropertyID):
      (WebCore::CSSParser::parseValue):
      (WebCore::CSSParser::addTextDecorationProperty):
      (WebCore::CSSParser::parseTextUnderlinePosition):
      * css/CSSParser.h:
      * css/CSSPrimitiveValueMappings.h:
      (WebCore::CSSPrimitiveValue::operator TextUnderlinePosition):
      * css/CSSPropertyNames.in:
      * css/CSSValueKeywords.in:
      * css/DeprecatedStyleBuilder.cpp:
      (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
      * css/StylePropertyShorthand.cpp:
      (WebCore::webkitTextDecorationShorthand):
      (WebCore::shorthandForProperty):
      (WebCore::matchingShorthandsForLonghand):
      * css/StylePropertyShorthand.h:
      * css/StyleResolver.cpp:
      (WebCore::shouldApplyPropertyInParseOrder):
      (WebCore::isValidVisitedLinkProperty):
      (WebCore::StyleResolver::applyProperty):
      * platform/graphics/GraphicsContext.h:
      * platform/graphics/cairo/GraphicsContextCairo.cpp:
      (WebCore::GraphicsContext::setPlatformStrokeStyle):
      * platform/graphics/cg/GraphicsContextCG.cpp:
      (WebCore::GraphicsContext::platformInit):
      * platform/graphics/wince/GraphicsContextWinCE.cpp:
      (WebCore::createPen):
      * rendering/InlineFlowBox.cpp:
      (WebCore::InlineFlowBox::computeMaxLogicalTop):
      * rendering/InlineFlowBox.h:
      * rendering/InlineTextBox.cpp:
      (WebCore::textDecorationStyleToStrokeStyle):
      (WebCore::boundingBoxForAllActiveDecorations):
      (WebCore::InlineTextBox::paintDecoration):
      * rendering/RenderObject.cpp:
      (WebCore::decorationColor):
      * rendering/RootInlineBox.cpp:
      (WebCore::RootInlineBox::maxLogicalTop):
      * rendering/RootInlineBox.h:
      * rendering/style/RenderStyle.cpp:
      (WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline):
      (WebCore::RenderStyle::colorIncludingFallback):
      (WebCore::RenderStyle::visitedDependentColor):
      * rendering/style/RenderStyle.h:
      * rendering/style/RenderStyleConstants.h:
      * rendering/style/StyleRareInheritedData.cpp:
      (WebCore::StyleRareInheritedData::StyleRareInheritedData):
      (WebCore::StyleRareInheritedData::operator==):
      * rendering/style/StyleRareInheritedData.h:
      * rendering/style/StyleRareNonInheritedData.cpp:
      (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
      (WebCore::StyleRareNonInheritedData::operator==):
      * rendering/style/StyleRareNonInheritedData.h:
      
      Source/WebKit/mac:
      
      Reviewed by Simon Fraser.
      
      This is required for unprefixing the text-decoration-* CSS properties.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      Reviewed by Simon Fraser.
      
      This is required for unprefixing the text-decoration-* CSS properties.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WTF:
      
      Reviewed by Simon Fraser.
      
      This is required for unprefixing the text-decoration-* CSS properties.
      
      * wtf/Platform.h:
      
      Tools:
      
      This is required for unprefixing the text-decoration-* CSS properties.
      
      Reviewed by Simon Fraser.
      
      * Configurations/FeatureDefines.xcconfig:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162579 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      607bf6e3
    • cfleizach@apple.com's avatar
      Source/WebCore: AX: Do not return an accessible name for an object just because it has tabindex=0 · 7f23b89a
      cfleizach@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126914
      
      Reviewed by Mario Sanchez Prada.
      
      WebKit has code to return an accessible name for any object that is "generically" focusable (ie. tabindex=0).
      This behavior, which is not supported in ARIA, has caused many problems for VoiceOver. Often VoiceOver will
      speak all the text underneath any type of group.
      
      I think we need to revert this behavior and follow the ARIA spec more closely.
      
      Test: accessibility/aria-describedby-ensures-visibility.html
      
      * accessibility/AccessibilityNodeObject.cpp:
      (WebCore::AccessibilityNodeObject::visibleText):
      (WebCore::AccessibilityNodeObject::title):
      
      LayoutTests: AX: WebKit concatenates name of all toolbar buttons in the apple.com video player
      https://bugs.webkit.org/show_bug.cgi?id=126914
      
      Reviewed by Mario Sanchez Prada.
      
      * accessibility/focusable-div-expected.txt:
      * accessibility/focusable-div.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162576 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7f23b89a
    • beidson@apple.com's avatar
      Source/WebCore: The IDB backing store get() method shouldn't call IDB callbacks directly · 4c4044de
      beidson@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127453
      
      Reviewed by Beth Dakin.
      
      * Modules/indexeddb/IDBServerConnection.h:
      (WebCore::IDBGetResult::IDBGetResult): Add a new structure to hold all of the
        possible results of a get() call.
      
      * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
      (WebCore::IDBServerConnectionLevelDB::get): Don't call IDBCallbacks directly.
        Instead, return the GetResult to the GetOperation which will make IDBCallbacks.
      * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:
      
      * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
      (WebCore::GetOperation::perform): Get all of the IDBGetResults in the completion callback
        make the appropriate IDBCallback.
      * Modules/indexeddb/IDBTransactionBackendOperations.h:
      
      Source/WebKit2: The IDB backing store get() method shouldn't call IDB callbacks directly
      https://bugs.webkit.org/show_bug.cgi?id=127453
      
      Reviewed by Beth Dakin.
      
      * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
      (WebKit::WebIDBServerConnection::get):
      * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162569 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4c4044de
    • dino@apple.com's avatar
      Unreviewed attempt to fix 32-bit builds. · 52df9256
      dino@apple.com authored
      Use long long rather than GC3Dintptr.
      
      * html/canvas/ANGLEInstancedArrays.cpp:
      (WebCore::ANGLEInstancedArrays::drawElementsInstancedANGLE):
      * html/canvas/ANGLEInstancedArrays.h:
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore::WebGLRenderingContext::drawElementsInstanced):
      * html/canvas/WebGLRenderingContext.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162567 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      52df9256
    • beidson@apple.com's avatar
      IDB: "Put" support · 0f1c94b6
      beidson@apple.com authored
      <rdar://problem/15779643> and https://bugs.webkit.org/show_bug.cgi?id=127401
      
      Reviewed by Alexey Proskuryakov.
      
      Source/WebCore:
      
      Add persistent encode/decode for storage to the database:
      * Modules/indexeddb/IDBKey.cpp:
      (WebCore::IDBKey::encode):
      (WebCore::IDBKey::decode):
      * Modules/indexeddb/IDBKey.h:
      
      Add a data class to represent IDBKey suitable for crossing IPC:
      * Modules/indexeddb/IDBKeyData.cpp: Added.
      (WebCore::IDBKeyData::IDBKeyData):
      (WebCore::IDBKeyData::maybeCreateIDBKey):
      (WebCore::IDBKeyData::isolatedCopy):
      * Modules/indexeddb/IDBKeyData.h: Added.
      (WebCore::IDBKeyData::IDBKeyData):
      
      * platform/CrossThreadCopier.cpp:
      (WebCore::IDBKeyData>::copy):
      * platform/CrossThreadCopier.h:
      
      * WebCore.exp.in:
      * WebCore.xcodeproj/project.pbxproj:
      
      Source/WebKit2:
      
      Ship putRecord requests over to the DatabaseProcess, and listen for completion from the DatabaseProcess:
      * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
      (WebKit::WebIDBServerConnection::put):
      (WebKit::WebIDBServerConnection::didPutRecord):
      * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
      * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
      
      Pass off the putRecord request to the Unique IDBDatabase:
      * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
      (WebKit::DatabaseProcessIDBConnection::putRecord):
      * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
      * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
      
      Pass off the putRecord request to the backing store:
      * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
      (WebKit::UniqueIDBDatabase::putRecord):
      (WebKit::UniqueIDBDatabase::putRecordInBackingStore):
      (WebKit::UniqueIDBDatabase::didPutRecordInBackingStore):
      * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
      
      Add backing store methods related to putRecord, though only one is critical right now:
      * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
      * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
      (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata):
      (WebKit::UniqueIDBDatabaseBackingStoreSQLite::generateKey):
      (WebKit::UniqueIDBDatabaseBackingStoreSQLite::keyExistsInObjectStore):
      (WebKit::UniqueIDBDatabaseBackingStoreSQLite::putRecord):
      (WebKit::UniqueIDBDatabaseBackingStoreSQLite::updateKeyGenerator):
      * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
      
      Add the IDBKeyData type to IPC:
      * Scripts/webkit2/messages.py:
      (struct_or_class):
      
      * Shared/WebCoreArgumentCoders.cpp:
      (IPC::ArgumentCoder<IDBKeyData>::encode):
      (IPC::ArgumentCoder<IDBKeyData>::decode):
      * Shared/WebCoreArgumentCoders.h:
      
      * DatabaseProcess/IndexedDB/IDBSerialization.cpp:
      (WebKit::serializeIDBKey):
      * DatabaseProcess/IndexedDB/IDBSerialization.h:
      
      Implement more cross-thread copying:
      * Shared/WebCrossThreadCopier.cpp:
      (WebCore::Vector<uint8_t>>::copy):
      (WebCore::Vector<Vector<IDBKeyData>>>::copy):
      (WebCore::ASCIILiteral>::copy):
      * Shared/WebCrossThreadCopier.h:
      
      Implement more numbers of generic AsyncTask templates:
      * Shared/AsyncTask.h:
      (WebKit::createAsyncTask):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162566 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0f1c94b6
    • dino@apple.com's avatar
      Source/WebCore: [WebGL] Implement ANGLE_instanced_arrays · 81d4ed94
      dino@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127257
      
      Reviewed by Brent Fulgham.
      
      Implement the instanced drawing WebGL extension,
      ANGLE_instanced_arrays. This is currently Mac-only,
      but should be portable to other platforms if their
      OpenGL exposes the functions. It's also done in a way
      that will make exposing it to WebGL2 simple.
      
      Test: fast/canvas/webgl/angle-instanced-arrays.html
      
      * CMakeLists.txt:
      * DerivedSources.cpp:
      * DerivedSources.make:
      * GNUmakefile.list.am:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      Add the new files to all the build systems.
      
      * bindings/js/JSWebGLRenderingContextCustom.cpp:
      (WebCore::toJS): Link JS side to C++ side.
      
      * html/canvas/ANGLEInstancedArrays.cpp: Added.
      (WebCore::ANGLEInstancedArrays::ANGLEInstancedArrays):
      * html/canvas/ANGLEInstancedArrays.h: Added.
      * html/canvas/ANGLEInstancedArrays.idl: Added.
      New boilerplate files that expose the extension methods.
      
      * html/canvas/WebGLExtension.h: New extension enum.
      
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore::WebGLRenderingContext::validateVertexAttributes): Add an optional
      parameter representing the number of instance primitives we are asked
      to draw. Use that for the draw count if looking at an instanced attribute.
      Also make sure we see at least one non-instanced attribute.
      (WebCore::WebGLRenderingContext::validateDrawArrays): Update this so it could
      be used from either drawArrays or drawArraysInstanced.
      (WebCore::WebGLRenderingContext::drawArrays):
      (WebCore::WebGLRenderingContext::validateDrawElements): Same here, now can be
      used by the instanced and non-instanced versions.
      (WebCore::WebGLRenderingContext::drawElements):
      (WebCore::WebGLRenderingContext::getExtension): Create and return the new extension.
      (WebCore::WebGLRenderingContext::getSupportedExtensions): Add new extension to the list.
      (WebCore::WebGLRenderingContext::getVertexAttrib): Intercept a query to the divisor
      attribute and return the value we kept in the state.
      (WebCore::WebGLRenderingContext::drawArraysInstanced): Call the GC3D method.
      (WebCore::WebGLRenderingContext::drawElementsInstanced): Ditto.
      (WebCore::WebGLRenderingContext::vertexAttribDivisor): Ditto.
      
      * html/canvas/WebGLRenderingContext.h: Define the new methods and parameters.
      
      * html/canvas/WebGLVertexArrayObjectOES.cpp:
      (WebCore::WebGLVertexArrayObjectOES::setVertexAttribDivisor): Keep a record of the
      divisor if we set it.
      * html/canvas/WebGLVertexArrayObjectOES.h:
      (WebCore::WebGLVertexArrayObjectOES::VertexAttribState::VertexAttribState):
      
      * platform/graphics/GraphicsContext3D.h: New enum.
      * platform/graphics/mac/GraphicsContext3DMac.mm:
      (WebCore::GraphicsContext3D::drawArraysInstanced): The actual calls into OpenGL.
      (WebCore::GraphicsContext3D::drawElementsInstanced): Ditto.
      (WebCore::GraphicsContext3D::vertexAttribDivisor): Ditto.
      
      * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: Empty implementations
      for non-mac platforms.
      
      * platform/graphics/ios/GraphicsContext3DIOS.h: Define the iOS names for the
      functions.
      
      LayoutTests: Implement ANGLE_instanced_arrays
      https://bugs.webkit.org/show_bug.cgi?id=127257
      
      Reviewed by Brent Fulgham.
      
      Copied a slightly modified version of the Khronos instanced
      arrays test (mostly modified due to the fact this comes from
      an in-progress update to the test suite).
      
      * fast/canvas/webgl/angle-instanced-arrays-expected.txt: Added.
      * fast/canvas/webgl/angle-instanced-arrays.html: Added.
      * fast/canvas/webgl/resources/webgl-test-utils.js:
      (WebGLTestUtils): Added some new functions that were missing, and
      some output to a checkColor test.
      * platform/efl/TestExpectations: Skip this for EFL.
      * platform/mac-mountainlion/fast/canvas/webgl/angle-instanced-arrays-expected.txt: Not
      supported on Mountain Lion.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162565 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      81d4ed94
    • zalan@apple.com's avatar
      [CSS Shapes] shape-inside rectangle layout can fail · 588b6e43
      zalan@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=124784
      
      Reviewed by Darin Adler.
      
      Early subpixel rounding/flooring/ceiling can have unwanted
      side effect on the final pixel value. Delay pixel
      conversions as much as possible.
      
      Existing test is changed to reflect subpixel functionality.
      
      Source/WebCore:
      
      * rendering/shapes/RectangleShape.cpp:
      (WebCore::RectangleShape::firstIncludedIntervalLogicalTop):
      
      LayoutTests:
      
      * fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top-expected.html:
      * platform/mac/TestExpectations:
      * platform/win/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162559 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      588b6e43
    • jochen@chromium.org's avatar
      Add protocolIsInHTTPFamily for strings and use it where appropriate · 7e94f53b
      jochen@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=127336
      
      Reviewed by Alexey Proskuryakov.
      
      * html/HTMLAnchorElement.cpp:
      (WebCore::HTMLAnchorElement::parseAttribute):
      * page/ContentSecurityPolicy.cpp:
      (WebCore::CSPSource::schemeMatches):
      * page/SecurityPolicy.cpp:
      (WebCore::SecurityPolicy::generateReferrerHeader):
      * platform/URL.cpp:
      (WebCore::protocolIsInHTTPFamily):
      * platform/URL.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162555 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7e94f53b
    • zalan@apple.com's avatar
      Subpixel Layout: SimpleLineLayout needs more position rounding to match InlineFlowBox layout. · cb83ac5c
      zalan@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127404
      
      Reviewed by Antti Koivisto.
      
      In order to produce a CSS pixel perfect layout, SimpleLineLayout needs to
      round line positions to CSS (integral) position similarly to InlineFlowBox.
      
      Source/WebCore:
      
      Existing tests cover it.
      
      * rendering/SimpleLineLayoutResolver.h:
      (WebCore::SimpleLineLayout::RunResolver::Run::rect):
      (WebCore::SimpleLineLayout::RunResolver::Run::baseline):
      
      LayoutTests:
      
      * platform/mac/css1/box_properties/padding-expected.txt:
      * platform/mac/css1/box_properties/padding_top-expected.txt:
      * platform/mac/css1/formatting_model/vertical_formatting-expected.txt:
      * platform/mac/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt:
      * platform/mac/css2.1/t0804-c5510-padn-00-b-ag-expected.txt:
      * platform/mac/css2.1/t0905-c414-flt-wrap-00-e-expected.txt:
      * platform/mac/fast/css/empty-pseudo-class-expected.txt:
      * platform/mac/fast/css/fieldset-display-row-expected.txt:
      * platform/mac/fast/css/first-child-pseudo-class-expected.txt:
      * platform/mac/fast/css/last-child-pseudo-class-expected.txt:
      * platform/mac/fast/css/only-child-pseudo-class-expected.txt:
      * platform/mac/fast/repaint/reflection-redraw-expected.txt:
      * platform/mac/fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top-expected.png: Removed.
      * platform/mac/fast/table/dynamic-caption-add-remove-before-child-expected.txt:
      * platform/mac/fast/table/multiple-captions-display-expected.txt:
      * platform/mac/tables/mozilla/marvin/body_col-expected.txt:
      * platform/mac/tables/mozilla/marvin/x_th_valign_baseline-expected.txt:
      * platform/mac/tables/mozilla/other/body_col-expected.txt:
      * platform/mac/tables/mozilla_expected_failures/bugs/bug10140-expected.txt:
      * platform/mac/tables/mozilla_expected_failures/bugs/bug10216-expected.txt:
      * platform/mac/tables/mozilla_expected_failures/core/captions3-expected.txt:
      * platform/mac/tables/mozilla_expected_failures/other/test4-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162553 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cb83ac5c
    • joepeck@webkit.org's avatar
      Unreviewed rollout of r162534, this caused inspector test failures. · ff08b7ad
      joepeck@webkit.org authored
      * bindings/js/PageScriptDebugServer.cpp:
      (WebCore::PageScriptDebugServer::addListener):
      (WebCore::PageScriptDebugServer::removeListener):
      (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
      (WebCore::PageScriptDebugServer::didRemoveLastListener):
      * bindings/js/PageScriptDebugServer.h:
      * bindings/js/ScriptDebugServer.cpp:
      (WebCore::ScriptDebugServer::ScriptDebugServer):
      (WebCore::ScriptDebugServer::recompileAllJSFunctionsSoon):
      (WebCore::ScriptDebugServer::recompileAllJSFunctionsTimerFired):
      * bindings/js/ScriptDebugServer.h:
      * bindings/js/WorkerScriptDebugServer.cpp:
      (WebCore::WorkerScriptDebugServer::addListener):
      (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
      (WebCore::WorkerScriptDebugServer::removeListener):
      * inspector/InspectorProfilerAgent.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162550 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ff08b7ad
    • commit-queue@webkit.org's avatar
      Crashes in setTextForIterator · fb21bf27
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=127424
      
      Patch by peavo@outlook.com <peavo@outlook.com> on 2014-01-22
      Reviewed by Brent Fulgham.
      
      * platform/text/icu/UTextProviderLatin1.cpp:
      (WebCore::uTextLatin1Clone): Provide correct buffer size in utext_setup function call.
      (WebCore::uTextLatin1Access): Give correct buffer size to memset call.
      (WebCore::openLatin1UTextProvider): Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162544 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fb21bf27
    • jer.noble@apple.com's avatar
      [Mac] MediaPlayerPrivateMediaSourceAVFObjC::load ASSERTs on lots of tests · 86e07139
      jer.noble@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127430
      
      Reviewed by Eric Carlson.
      
      When other registered media engines cannot load a URL, the engine selection
      will eventually pick MediaPlayerPrivateMediaSourceAVFObjC and ask it to load
      the URL. Instead of ASSERTing here, simply reject the URL by setting the
      network state to FormatError.
      
      * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
      (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::load):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162540 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      86e07139
    • thiago.lacerda@openbossa.org's avatar
      [EFL][GTK] Get EFL and GTK compiling with ACCESSIBILITY disabled · 8e6984a4
      thiago.lacerda@openbossa.org authored
      https://bugs.webkit.org/show_bug.cgi?id=127119
      
      Reviewed by Mario Sanchez Prada.
      
      Source/WebCore:
      
      At build time, the compiler was not able to determine which Timer's constructor to call in AXObjectCache when
      ACCESSIBILITY is not enabled, fixing that.
      Also guarding some members in AccessibilityObject that are only being used by EFL and GTK with ACCESSIBILITY.
      
      * accessibility/AXObjectCache.h:
      (WebCore::AXObjectCache::AXObjectCache):
      * accessibility/AccessibilityObject.h:
      
      Source/WebKit/gtk:
      
      Guarding ACCESSIBILITY code with HAVE(ACCESSIBILITY).
      
      * webkit/webkitwebview.cpp:
      (webkit_web_view_class_init):
      
      Source/WebKit2:
      
      Guarding ACCESSIBILITY code with HAVE(ACCESSIBILITY).
      
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::WebPage):
      * WebProcess/WebPage/WebPage.h:
      * WebProcess/WebPage/gtk/WebPageGtk.cpp:
      (WebKit::WebPage::platformInitialize):
      
      Tools:
      
      Guarding ACCESSIBILITY code in DumpRenderTree and WebKitTestRunner with HAVE(ACCESSIBILITY).
      
      * DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
      * DumpRenderTree/gtk/AccessibilityControllerGtk.cpp:
      * DumpRenderTree/gtk/DumpRenderTree.cpp:
      (resetDefaultsToConsistentValues):
      (webViewWindowObjectCleared):
      (main):
      * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
      (WTR::AccessibilityController::platformName):
      * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
      (WTR::AccessibilityUIElement::isIndeterminate):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162538 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8e6984a4
    • commit-queue@webkit.org's avatar
      Refactor calculation of hasRx and hasRy values in SVGPathData · 3bc79669
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=127423
      
      Patch by Peter Molnar <pmolnar.u-szeged@partner.samsung.com> on 2014-01-22
      Reviewed by Darin Adler.
      
      This is a follow-up on https://bugs.webkit.org/show_bug.cgi?id=127337
      
      * rendering/svg/SVGPathData.cpp:
      (WebCore::updatePathFromRectElement):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162537 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3bc79669
    • joepeck@webkit.org's avatar
      Web Inspector: Remove recompileAllJSFunctions timer in ScriptDebugServer · 2b1f295b
      joepeck@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=127409
      
      Reviewed by Timothy Hatcher.
      
      * bindings/js/ScriptDebugServer.h:
      * bindings/js/ScriptDebugServer.cpp:
      (WebCore::ScriptDebugServer::ScriptDebugServer):
      Remove m_recompileTimer and the recompile soon function.
      We can just recompile immediately in all existing cases.
      
      * bindings/js/PageScriptDebugServer.h:
      * bindings/js/PageScriptDebugServer.cpp:
      (WebCore::PageScriptDebugServer::addListener):
      (WebCore::PageScriptDebugServer::removeListener):
      (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
      (WebCore::PageScriptDebugServer::didAddFirstListener):
      (WebCore::PageScriptDebugServer::didRemoveLastListener):
      Add a "didAddFirstListener" to match "didRemoveLastListener".
      Only recompile functions when we attach the debugger and when
      we detach the last listener.
      
      * bindings/js/WorkerScriptDebugServer.cpp:
      (WebCore::WorkerScriptDebugServer::addListener):
      (WebCore::WorkerScriptDebugServer::removeListener):
      (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
      Same thing. Also rearrange the functions to read better.
      
      * inspector/InspectorProfilerAgent.cpp:
      Use the direct recompile function instead of the removed "soon" version.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162534 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2b1f295b
    • commit-queue@webkit.org's avatar
      [curl] Improve detecting and handling of SSL client certificate · ba295c15
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=125006
      
      Patch by Robert Sipka <sipka@inf.u-szeged.hu> on 2014-01-22
      Reviewed by Brent Fulgham.
      
      Add client certificate handling.
      
      * platform/network/ResourceHandle.h:
      * platform/network/curl/ResourceError.h:
      (WebCore::ResourceError::hasSSLConnectError):
      * platform/network/curl/ResourceHandleCurl.cpp:
      (WebCore::ResourceHandle::setClientCertificateInfo):
      * platform/network/curl/ResourceHandleManager.cpp:
      (WebCore::ResourceHandleManager::initializeHandle):
      * platform/network/curl/SSLHandle.cpp:
      (WebCore::addAllowedClientCertificate):
      (WebCore::setSSLClientCertificate):
      * platform/network/curl/SSLHandle.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162530 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ba295c15
    • commit-queue@webkit.org's avatar
      [CSS Regions] layerOwner in RenderNamedFlowFragment cannot return null · 78d4631c
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=127343
      
      Patch by Mihai Maerean <mmaerean@adobe.com> on 2014-01-22
      Reviewed by Sam Weinig.
      
      RenderNamedFlowFragment::layerOwner cannot return null because regions create stacking
      contexts which create layers.
      
      No new tests, no functional change.
      
      * rendering/RenderFlowThread.cpp:
      (WebCore::RenderFlowThread::hasCompositingRegionDescendant):
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::calculateClipRects):
      * rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread):
      * rendering/RenderLayerCompositor.cpp:
      (WebCore::RenderLayerCompositor::computeRegionCompositingRequirements):
      * rendering/RenderNamedFlowFragment.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162523 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      78d4631c
    • antti@apple.com's avatar
      Avoid unthrottled layer flushes triggered by RenderLayerCompositor::ensureRootLayer · 3642be9f
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127426
      
      Reviewed by Anders Carlsson.
              
      * rendering/RenderLayerCompositor.cpp:
      (WebCore::RenderLayerCompositor::updateScrollLayerPosition):
      (WebCore::RenderLayerCompositor::frameViewDidScroll):
      
          Factor scroll layer position update to a function.
      
      (WebCore::RenderLayerCompositor::ensureRootLayer):
              
          Stop calling frameViewDidChangeSize/frameViewDidScroll. Instead call the relevent functions
          directly. This avoid unthrottled layer flush that is done when the view actually scrolls.
      
      * rendering/RenderLayerCompositor.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162518 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3642be9f
    • commit-queue@webkit.org's avatar
      [CSS Background Blending] -webkit-background-blend-mode fails for certain SVG files · 15e35e7a
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=127350
      
      Patch by Mihai Tica <mitica@adobe.com> on 2014-01-22
      Reviewed by Dirk Schulze.
      
      Source/WebCore:
      
      The graphics context of the SVG inherits the blend mode set
      on the background layer. Fix consists in drawing the SVG
      in a transparency layer.
      
      Test: css3/compositing/background-blend-mode-svg.html
      
      * svg/graphics/SVGImage.cpp:
      (WebCore::SVGImage::draw): Begin a transparency layer if a blend mode is set.
      
      LayoutTests:
      
      * css3/compositing/background-blend-mode-svg-expected.html: Added.
      * css3/compositing/background-blend-mode-svg.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162517 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      15e35e7a
    • antti@apple.com's avatar
      Update overlay scrollbars in single pass · df985172
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127289
      
      Source/WebCore: 
      
      Reviewed by Anders Carlsson.
      
      * platform/ScrollView.cpp:
      (WebCore::ScrollView::updateScrollbars):
              
          Multi-pass scrollbar resolution is only needed for traditional scrollbars. Overlay scrollbars don't affect layout.
      
      LayoutTests: 
      
      * platform/mac/accessibility/iframe-aria-hidden.html: 
              
          Try to keep this non-flaky by forcing layout. Real fix would probably be in the
          accessibility test framework.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162515 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      df985172
    • mihnea@adobe.com's avatar
      [CSSRegions] Incorrect layout of a region pseudo children · 4ebf1ec1
      mihnea@adobe.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126146
      
      Reviewed by David Hyatt.
      
      Source/WebCore:
      
      Test: fast/regions/collapse-anonymous-region.html
      
      A region behaviour, styled using -webkit-flow-from, is modeled using an anonymous
      block created to fragment the named flow content inside the region. We have to prevent
      the behaviour of anonymous children collapsing for this block to make sure that the
      region element children are still laid out properly when the region element becomes an ordinary
      element.
      
      * rendering/RenderBlockFlow.h:
      
      LayoutTests:
      
      * fast/regions/collapse-anonymous-region-expected.html: Added.
      * fast/regions/collapse-anonymous-region.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4ebf1ec1
    • ryuan.choi@samsung.com's avatar
      Remove unused "acceleratedCompositingForScrollableFramesEnabled" setting · 624f11dd
      ryuan.choi@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=127402
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore:
      
      compositing/iframes/iframe-composited-scrolling.html is updated because
      there are no usages in WebCore.
      
      * page/Settings.in:
      
      LayoutTests:
      
      * compositing/iframes/iframe-composited-scrolling.html:
      Removed acceleratedCompositingForScrollableFramesEnabled changes because
      it is dead code in WebCore side.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162507 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      624f11dd
  3. 21 Jan, 2014 9 commits