1. 15 Aug, 2012 40 commits
    • commit-queue@webkit.org's avatar
      [BlackBerry] Should not keep recreating GeoTracker in setEnableHighAccuracy() · 37a7f56b
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94136
      
      Patch by Yong Li <yoli@rim.com> on 2012-08-15
      Reviewed by Rob Buis.
      Internally reviewed by Lyon Chen.
      
      PR# 192401.
      1. The prototype of GeoTracker::create() has changed.
      2. Fix the issue that it could recreate tracker unnecessarily when
         setEnableHighAccuracy() is called but accuracy requirment hasn't
         changed.
      3. Fix the issue setEnableHighAccuracy() could start tracking when
         tracker was suspended.
      
      * WebCoreSupport/GeolocationControllerClientBlackBerry.cpp:
      (GeolocationControllerClientBlackBerry::startUpdating):
      (GeolocationControllerClientBlackBerry::setEnableHighAccuracy):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125705 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      37a7f56b
    • commit-queue@webkit.org's avatar
      Buildfix after r125541 · b6cc1858
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94097
      
      Patch by Gabor Ballabas <gaborb@inf.u-szeged.hu> on 2012-08-15
      Reviewed by Filip Pizlo.
      
      r125541 has broken the traditional ARM port build of JSC.
      
      * assembler/MacroAssemblerARM.h:
      (JSC::MacroAssemblerARM::neg32):
      (JSC::MacroAssemblerARM::xor32):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125704 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b6cc1858
    • commit-queue@webkit.org's avatar
      Mark Skia and Compositor Contexts · 017cfd54
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94129
      
      Patch by Gregg Tavares <gman@google.com> on 2012-08-15
      Reviewed by James Robinson.
      
      Marks the Skia and Compositor contexts to aid in debugging.
      
      No new tests as no new functionality.
      
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
      (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
      * platform/graphics/skia/ImageBufferSkia.cpp:
      (WebCore::createAcceleratedCanvas):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125703 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      017cfd54
    • vollick@chromium.org's avatar
      [chromium] Must account for empty transformation lists when checking for big rotations. · 5b15b743
      vollick@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93975
      
      Reviewed by James Robinson.
      
      Source/WebCore:
      
      AnimationTranslationUtil.cpp is supposed to reject large rotations
      (>= 180 degrees between keyframes). The current code assumes that if
      the lists of transforms at two consecutive keyframes do not match
      (i.e., are different types), then do not need to reject. The rationale
      is that we will revert to matrix blending -- we will collapse the lists
      of transform operations to matrices at each keyframe and blend those.
      Unfortunately, this is not true if a list is empty. It can be the case
      that we transition from no transform to a rotation about the z axis of
      360 degrees. In this case, the first list of transform operations will
      be empty and the second will have a single rotation of 360 degrees. An
      empty list should be treated as a rotation of zero degrees.
      
      Unit tested in: GraphicsLayerChromiumTest.createTransformAnimationWithBigRotationAndEmptyTransformOperationList
      
      * platform/graphics/chromium/AnimationTranslationUtil.cpp:
      (WebCore::causesRotationOfAtLeast180Degrees):
      
      Source/WebKit/chromium:
      
      Adds a test to check that creating an animation with a big (> 180
      degree) rotation, where the transform operations list in the 1st
      keyframe is empty fails as expected.
      
      * tests/AnimationTranslationUtilTest.cpp:
      (WebKit::TEST):
      (WebKit):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125702 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5b15b743
    • mifenton@rim.com's avatar
      [BlackBerry] Use the unconverted attribute instead of composing when deciding... · bae3f561
      mifenton@rim.com authored
      [BlackBerry] Use the unconverted attribute instead of composing when deciding to how to handle key input.
      https://bugs.webkit.org/show_bug.cgi?id=94132
      
      Reviewed by Rob Buis.
      
      PR 139838.
      
      Switch direct key input handling to be based on the unconverted
      attribute being present.  Converted keys, even during composition
      are now input directly.
      
      Reviewed Internally by Nima Ghanavatian.
      
      * WebKitSupport/InputHandler.cpp:
      (BlackBerry::WebKit::InputHandler::setText):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125701 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bae3f561
    • bdakin@apple.com's avatar
      https://bugs.webkit.org/show_bug.cgi?id=93693 · d7640138
      bdakin@apple.com authored
      [WK2] REGRESSION(125091): pixel results don't sow scrollbars 
      anymore
      
      Reviewed by Sam Weinig.
      
      Source/WebCore: 
      
      This is a regression from http://trac.webkit.org/changeset/125091 
      in which I failed to noticed that 
      WKBundlePageCreateSnapshotInViewCoordinates() did actually do 
      something different than 
      WKBundlePageCreateSnapshotInDocumentCoordinates(). Specifically, 
      it used ScrollView::paint() to paint instead of 
      FrameView::paintContents(). So this patch restores that 
      functionality by adding a value to SnapshotOptions indicating 
      whether the snapshot should be taken in ViewCoordinates 
      (otherwise it defaults to DocumentCoordinates).
      
      FrameView:: paintContentsForSnapshot() now takes a new parameter 
      that indicates whether to take the snapshot in document 
      coordinates or view coordinates.
      * WebCore.exp.in:
      * page/FrameView.cpp:
      (WebCore::FrameView::paintContentsForSnapshot):
      * page/FrameView.h:
      
      Source/WebKit2: 
      
      This is a regression from http://trac.webkit.org/changeset/125091 
      in which I failed to noticed that 
      WKBundlePageCreateSnapshotInViewCoordinates() did actually do 
      something different than 
      WKBundlePageCreateSnapshotInDocumentCoordinates(). Specifically, 
      it used ScrollView::paint() to paint instead of 
      FrameView::paintContents(). So this patch restores that 
      functionality by adding a value to SnapshotOptions indicating 
      whether the snapshot should be taken in ViewCoordinates 
      (otherwise it defaults to DocumentCoordinates).
      
      * Shared/API/c/WKImage.h:
      * Shared/API/c/WKSharedAPICast.h:
      (WebKit::toSnapshotOptions):
      * Shared/ImageOptions.h:
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::scaledSnapshotWithOptions):
      
      Even though we plan to deprecate this API, it should keep doing 
      the right thing until it's gone.
      * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
      (WKBundlePageCreateSnapshotInViewCoordinates):
      
      Tools: 
      
      Use new API WKBundlePageCreateSnapshotWithOptions().
      * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
      (WTR::InjectedBundlePage::dump):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125700 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d7640138
    • ap@apple.com's avatar
      Add rfong to Bugzilla CC "contributor" list. · 09dfd682
      ap@apple.com authored
              * Scripts/webkitpy/common/config/committers.py:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125698 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      09dfd682
    • benjamin@webkit.org's avatar
      Use literal initialization for CSS's pseudo types · 4afa2d6f
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94066
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-08-15
      Reviewed by Kenneth Rohde Christiansen.
      
      Initialize CSS pseudo type strings with the new initialization from literal.
      
      The first invocation of nameToPseudoTypeMap() becomes 20% faster and we use
      less memory to store the strings.
      
      * css/CSSSelector.cpp:
      (WebCore::nameToPseudoTypeMap):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125697 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4afa2d6f
    • jsbell@chromium.org's avatar
      [chromium] IndexedDB: Delete unused WebKit API cursor accessors · fc178c69
      jsbell@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94134
      
      Reviewed by Adam Barth.
      
      Last bit of refactor work from http://webkit.org/b/92278 that ships the
      cursor key/primaryKey/value to the front end via success messages, eliminating
      the need for these accessors and the old success messages.
      
      * public/WebIDBCallbacks.h:
      * public/WebIDBCursor.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125696 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fc178c69
    • beidson@apple.com's avatar
      Removing a plug-in element from a page opened in a background tab in Safari crashes · 6e913b27
      beidson@apple.com authored
      <rdar://problem/12057991> and https://bugs.webkit.org/show_bug.cgi?id=93913
      
      Reviewed by Beth Dakin.
      
      .:
      
      * Source/autotools/symbols.filter: Allow this symbol through for DRT's sake.
      
      Source/WebCore:
      
      Expose Page::setCanStartMedia to regression tests so they can pretend to be in a non-windowed WebView.
      
      Test: platform/mac-wk2/plugins/asynchronous-destroy-before-initialization.html
      
      * testing/InternalSettings.cpp:
      (WebCore::InternalSettings::Backup::Backup):
      (WebCore::InternalSettings::Backup::restoreTo):
      (WebCore::InternalSettings::setCanStartMedia):
      (WebCore):
      * testing/InternalSettings.h:
      (Backup):
      (InternalSettings):
      * testing/InternalSettings.idl:
      
      Source/WebKit2:
      
      This only happens in WebKit2 with asynchronous plug-in initialization enabled.
      
      * WebProcess/Plugins/PluginProxy.cpp:
      (WebKit::PluginProxy::destroy): Null-check m_connection, as it might not have been created yet.
      
      * win/WebKit2.def: Export Page::setCanStartMedia for InternalSettings/DRT use.
      
      LayoutTests:
      
      Using internal setting setCanStartMedia, pretend the page is in an unwindowed WebView then remove
      the plug-in element.
      
      * platform/mac-wk2/plugins/asynchronous-destroy-before-initialization-expected.txt: Added.
      * platform/mac-wk2/plugins/asynchronous-destroy-before-initialization.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125695 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6e913b27
    • leviw@chromium.org's avatar
      AutoTableLayout truncates preferred widths for cells when it needs to ceil... · f1bfd647
      leviw@chromium.org authored
      AutoTableLayout truncates preferred widths for cells when it needs to ceil them to contain the contents
      https://bugs.webkit.org/show_bug.cgi?id=93911
      
      Reviewed by Eric Seidel.
      
      Source/WebCore: 
      
      Avoiding truncation of sub-pixel accumulated values when determining the preferred width of a table cell
      in AutoTableLayout. Since we continue to layout tables using integers, we need to ceil the contents to
      prevent premature wrapping of the contents.
      
      This only affects ports with sub-pixel layout enabled, and fixes regressions of a handful of tests that
      were missed when updating expectations when sub-pixel was enabled.
      
      Test: fast/sub-pixel/auto-table-layout-should-avoid-text-wrapping.html
      
      * rendering/AutoTableLayout.cpp:
      (WebCore::AutoTableLayout::recalcColumn):
      
      LayoutTests: 
      
      This only affects ports with sub-pixel layout enabled, and fixes regressions of a handful of tests that
      were missed when updating expectations when sub-pixel was enabled.
      
      * fast/sub-pixel/auto-table-layout-should-avoid-text-wrapping-expected.txt: Added.
      * fast/sub-pixel/auto-table-layout-should-avoid-text-wrapping.html: Added.
      * platform/chromium-mac/editing/deleting/5144139-2-expected.txt:
      * platform/chromium-mac/fast/forms/001-expected.png:
      * platform/chromium-mac/fast/forms/001-expected.txt:
      * platform/chromium-mac/fast/forms/button-white-space-expected.txt:
      * platform/chromium-mac/fast/forms/form-element-geometry-expected.png:
      * platform/chromium-mac/fast/forms/form-element-geometry-expected.txt:
      * platform/chromium-mac/fast/forms/formmove3-expected.txt:
      * platform/chromium-mac/fast/replaced/width100percent-button-expected.png:
      * platform/chromium-mac/fast/replaced/width100percent-button-expected.txt:
      * platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.png:
      * platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.txt:
      * platform/chromium-mac/fast/replaced/width100percent-radio-expected.png:
      * platform/chromium-mac/fast/replaced/width100percent-radio-expected.txt:
      * platform/chromium-mac/fast/table/rowindex-expected.png:
      * platform/chromium-mac/fast/table/rowindex-expected.txt:
      * platform/chromium-mac/fast/text/international/bidi-LDB-2-CSS-expected.png:
      * platform/chromium-mac/fast/text/international/bidi-LDB-2-CSS-expected.txt:
      * platform/chromium-mac/fast/text/international/bidi-LDB-2-HTML-expected.png:
      * platform/chromium-mac/fast/text/international/bidi-LDB-2-HTML-expected.txt:
      * platform/chromium-mac/fast/text/international/bidi-LDB-2-formatting-characters-expected.png:
      * platform/chromium-mac/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
      * platform/chromium-mac/fast/text/international/bidi-layout-across-linebreak-expected.png:
      * platform/chromium-mac/fast/text/international/bidi-layout-across-linebreak-expected.txt:
      * platform/chromium-mac/fast/text/international/bidi-override-expected.png:
      * platform/chromium-mac/fast/text/international/bidi-override-expected.txt:
      * platform/chromium-mac/fast/text/textIteratorNilRenderer-expected.png:
      * platform/chromium-mac/fast/text/textIteratorNilRenderer-expected.txt:
      * platform/chromium-mac/fast/transforms/bounding-rect-zoom-expected.txt:
      * platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
      * platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
      * platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
      * platform/chromium-mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png:
      * platform/chromium-mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
      * platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.png:
      * platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.txt:
      * platform/chromium-mac/tables/mozilla/bugs/bug138725-expected.txt:
      * platform/chromium-mac/tables/mozilla/bugs/bug18359-expected.txt:
      * platform/chromium-mac/tables/mozilla/bugs/bug33855-expected.png:
      * platform/chromium-mac/tables/mozilla/bugs/bug33855-expected.txt:
      * platform/chromium-mac/tables/mozilla/bugs/bug39209-expected.png:
      * platform/chromium-mac/tables/mozilla/bugs/bug39209-expected.txt:
      * platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.png:
      * platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.txt:
      * platform/chromium-mac/tables/mozilla/bugs/bug55527-expected.png:
      * platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug89315-expected.png:
      * platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:
      * platform/chromium/TestExpectations:
      * platform/mac/tables/mozilla/bugs/bug55527-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125694 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f1bfd647
    • ojan@chromium.org's avatar
      z-index should work without position on flexitems · a4039c89
      ojan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=91405
      
      Reviewed by Tony Chang.
      
      Source/WebCore:
      
      Require a layer on any RenderBox that has a non-auto z-index.
      Statically positioned, non-flex-item's have their z-index coerced to auto,
      so it's safe to check z-index unconditionally.
      
      Test: css3/flexbox/z-index.html
      
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::adjustRenderStyle):
      -Don't coerce z-index to auto on statically positioned flex-items.
      -Use the parentStyle to determine if the parent is a flexbox instead of
      looking at the element's parentNode's renderer.
      * rendering/RenderBox.h:
      -Add having a non-auto z-index to the list of things that require a layer.
      
      LayoutTests:
      
      * css3/flexbox/z-index-expected.html: Added.
      * css3/flexbox/z-index.html: Added.
      Use a ref-test since we want to be sure that the elements get painted in the right order.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125693 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a4039c89
    • commit-queue@webkit.org's avatar
      [Gtk] atk_text_set_caret_offset() fails for table cells · d0a8b977
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=83501
      
      Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-08-15
      Reviewed by Chris Fleizach.
      
      Source/WebCore:
      
      Allow using text ranges in accessible table cells.
      
      * accessibility/gtk/AccessibilityObjectAtk.cpp:
      (WebCore::AccessibilityObject::allowsTextRanges):
      Add table cells to the list of accessibility objects supporting text ranges.
      
      Source/WebKit/gtk:
      
      Update unit test to include setting the caret in a table cell via the AtkText interface.
      
      * tests/testatk.c:
      (testWebkitAtkCaretOffsets): Add setting the caret inside the text of a table cell.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125692 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d0a8b977
    • commit-queue@webkit.org's avatar
      Rename window.internals.fastMallocStatistics to mallocStatistics · 4ba6cdbe
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94033
      
      Patch by Scott Graham <scottmg@chromium.org> on 2012-08-15
      Reviewed by Adam Barth.
      
      PerformanceTests:
      
      * resources/runner.js:
      (PerfTestRunner.storeHeapResults):
      (PerfTestRunner.getUsedMallocHeap):
      (PerfTestRunner.getAndPrintMemoryStatistics):
      (PerfTestRunner.initAndStartLoop):
      
      Source/WebCore:
      
      Mechanical rename. In preparation for plumbing allocation information
      from allocators that aren't "fastMalloc".
      
      * CMakeLists.txt:
      * DerivedSources.make:
      * DerivedSources.pri:
      * GNUmakefile.list.am:
      * Target.pri:
      * WebCore.gyp/WebCore.gyp:
      * WebCore.gypi:
      * WebCore.vcproj/WebCoreTestSupport.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * loader/DocumentLoader.h:
      (WebCore::DocumentLoader::didTellClientAboutLoad):
      * loader/cache/CachedResourceLoader.cpp:
      (WebCore::CachedResourceLoader::loadResource):
      * testing/FastMallocStatistics.h: Removed.
      * testing/FastMallocStatistics.idl: Removed.
      * testing/Internals.cpp:
      (WebCore::Internals::mallocStatistics):
      * testing/Internals.h:
      (WebCore):
      (Internals):
      * testing/Internals.idl:
      * testing/MallocStatistics.h: Added.
      * testing/MallocStatistics.idl: Added.
      
      Tools:
      
      * GNUmakefile.am:
      * Scripts/webkitpy/performance_tests/perftest.py:
      (PerfTest):
      * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
      (test_run_memory_test):
      
      LayoutTests:
      
      * fast/harness/fastmallocstatistics-object.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125691 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4ba6cdbe
    • commit-queue@webkit.org's avatar
      [BlackBerry] Upstream BlackBerry build fixes · afb1dbd3
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94121
      
      Patch by Joshua Netterfield <jnetterfield@rim.com> on 2012-08-15
      Reviewed by Rob Buis.
      
      This includes several build fixes due to incorrect upstream patches.
      These mistakes were never present downstream.
      
      No new tests, because no new functionality is added.
      
      Source/WebCore:
      
      * platform/graphics/GraphicsContext3D.cpp:
      (WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
      * platform/graphics/GraphicsContext3D.h:
      (GraphicsContext3D):
      (WebCore::GraphicsContext3D::ShaderSourceEntry::ShaderSourceEntry):
      * platform/graphics/blackberry/LayerFilterRenderer.cpp:
      (WebCore::LayerFilterRendererAction::LayerFilterRendererAction):
      * platform/graphics/blackberry/LayerFilterRenderer.h:
      (LayerFilterRendererAction):
      
      Source/WebKit/blackberry:
      
      * WebCoreSupport/AboutDataEnableFeatures.in:
      * WebCoreSupport/AboutTemplate.html.cpp:
      (writeHeader):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125690 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      afb1dbd3
    • ojan@chromium.org's avatar
      Update expectations to match the bots. This test hasn't timed out in over 500 runs. · 87c411a3
      ojan@chromium.org authored
      * platform/chromium/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125689 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      87c411a3
    • abarth@webkit.org's avatar
      JSDOMWrapper should ASSERT that it has an associated ScriptExecutionContext · df6de5d0
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94053
      
      Reviewed by Sam Weinig.
      
      Previously we were unable have this ASSERT because DOMWindow needed a
      Frame to find Document. Now that we can find the Document without a
      Frame, we can include the ASSERT and sanity will rein across the land.
      
      * bindings/js/JSDOMWrapper.h:
      (WebCore::JSDOMWrapper::globalObject):
      (WebCore::JSDOMWrapper::scriptExecutionContext):
      (WebCore::JSDOMWrapper::JSDOMWrapper):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125688 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      df6de5d0
    • mhahnenberg@apple.com's avatar
      Change behavior of MasqueradesAsUndefined to better accommodate DFG changes · 35d5455b
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=93884
      
      Reviewed by Geoffrey Garen.
      
      Source/JavaScriptCore: 
      
      With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of 
      MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines, 
      we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined 
      objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject). 
      For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not 
      masquerade as undefined within frame B, but it will continue to masquerade in frame A.
      
      There are two primary changes that are taking place here. One is to thread the ExecState* through 
      JSValue::toBoolean and JSCell::toBoolean so that JSCell::toBoolean can check the object's 
      JSGlobalObject to compare it to the lexical JSGlobalObject of the currently running code. If the two 
      are distinct, then the object cannot MasqueradeAsUndefined.
      
      The other change is to perform this comparison of JSGlobalObjects everywhere where the MasqueradesAsUndefined
      flag in the Structure is checked. For C++ code, this check has been factored into its own function in 
      Structure::masqueradesAsUndefined. We only perform this check in the DFG if the current JSGlobalObject has 
      had a MasqueradesAsUndefined object allocated within its context. This conditional compilation is managed 
      through the use of a WatchpointSet in each JSGlobalObject and alternate create() functions for JS DOM wrappers
      that are MasqueradesAsUndefined.
      
      * API/JSValueRef.cpp:
      (JSValueToBoolean):
      * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
      * bytecode/Watchpoint.h:
      (WatchpointSet):
      * debugger/DebuggerCallFrame.h:
      (JSC::DebuggerCallFrame::callFrame):
      * dfg/DFGAbstractState.cpp:
      (JSC::DFG::AbstractState::execute):
      * dfg/DFGCFGSimplificationPhase.cpp:
      (JSC::DFG::CFGSimplificationPhase::run):
      * dfg/DFGOperations.cpp:
      * dfg/DFGOperations.h:
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
      (JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
      (JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
      (JSC::DFG::SpeculativeJIT::compile):
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::privateExecute):
      * jit/JITOpcodes.cpp:
      (JSC::JIT::emit_op_is_undefined):
      (JSC::JIT::emit_op_jeq_null):
      (JSC::JIT::emit_op_jneq_null):
      (JSC::JIT::emit_op_eq_null):
      (JSC::JIT::emit_op_neq_null):
      * jit/JITOpcodes32_64.cpp:
      (JSC::JIT::emit_op_is_undefined):
      (JSC::JIT::emit_op_jeq_null):
      (JSC::JIT::emit_op_jneq_null):
      (JSC::JIT::emit_op_eq_null):
      (JSC::JIT::emit_op_neq_null):
      * jit/JITStubs.cpp:
      (JSC::DEFINE_STUB_FUNCTION):
      * llint/LLIntSlowPaths.cpp:
      (JSC::LLInt::LLINT_SLOW_PATH_DECL):
      * llint/LowLevelInterpreter32_64.asm:
      * llint/LowLevelInterpreter64.asm:
      * runtime/ArrayPrototype.cpp:
      (JSC::arrayProtoFuncFilter):
      (JSC::arrayProtoFuncEvery):
      (JSC::arrayProtoFuncSome):
      * runtime/BooleanConstructor.cpp:
      (JSC::constructBoolean):
      (JSC::callBooleanConstructor):
      * runtime/JSCell.h:
      (JSCell):
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::JSGlobalObject):
      * runtime/JSGlobalObject.h:
      (JSGlobalObject):
      (JSC::JSGlobalObject::masqueradesAsUndefinedWatchpoint):
      * runtime/JSString.h:
      (JSC::JSCell::toBoolean):
      (JSC::JSValue::toBoolean):
      * runtime/JSValue.h:
      * runtime/ObjectConstructor.cpp:
      (JSC::toPropertyDescriptor):
      * runtime/Operations.cpp:
      (JSC::jsTypeStringForValue):
      (JSC::jsIsObjectType):
      * runtime/Operations.h:
      (JSC):
      (JSC::JSValue::equalSlowCaseInline):
      * runtime/RegExpConstructor.cpp:
      (JSC::setRegExpConstructorMultiline):
      * runtime/RegExpPrototype.cpp:
      (JSC::regExpProtoFuncToString):
      * runtime/Structure.h:
      (Structure):
      (JSC::Structure::globalObjectOffset):
      (JSC::Structure::masqueradesAsUndefined):
      (JSC):
      
      Source/WebCore: 
      
      With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of 
      MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines, 
      we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined 
      objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject). 
      For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not 
      masquerade as undefined within frame B, but it will continue to masquerade in frame A.
      
      Test: fast/js/document-all-between-frames.html
      
      All of the changes in WebCore are simply passing the additional ExecState argument to JSValue::toBoolean.
      
      * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
      (WebCore::JSSQLStatementErrorCallback::handleEvent):
      * bindings/js/JSDOMWindowCustom.cpp:
      (WebCore::JSDOMWindow::addEventListener):
      (WebCore::JSDOMWindow::removeEventListener):
      * bindings/js/JSDataViewCustom.cpp:
      (WebCore::getDataViewMember):
      * bindings/js/JSDeviceMotionEventCustom.cpp:
      (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
      * bindings/js/JSDeviceOrientationEventCustom.cpp:
      (WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):
      * bindings/js/JSDictionary.cpp:
      (WebCore::JSDictionary::convertValue):
      * bindings/js/JSDirectoryEntryCustom.cpp:
      (WebCore::JSDirectoryEntry::getFile):
      (WebCore::JSDirectoryEntry::getDirectory):
      * bindings/js/JSDirectoryEntrySyncCustom.cpp:
      (WebCore::getFlags):
      * bindings/js/JSHTMLCanvasElementCustom.cpp:
      (WebCore::JSHTMLCanvasElement::getContext):
      * bindings/js/JSInspectorFrontendHostCustom.cpp:
      (WebCore::populateContextMenuItems):
      * bindings/js/JSMessageEventCustom.cpp:
      (WebCore::handleInitMessageEvent):
      * bindings/js/JSWebGLRenderingContextCustom.cpp:
      (WebCore::dataFunctionMatrix):
      * bindings/js/JSXMLHttpRequestCustom.cpp:
      (WebCore::JSXMLHttpRequest::open):
      * bindings/js/JavaScriptCallFrame.cpp:
      (WebCore::JavaScriptCallFrame::exec):
      (WebCore):
      * bindings/js/JavaScriptCallFrame.h:
      (JavaScriptCallFrame):
      * bindings/js/ScriptDebugServer.cpp:
      (WebCore::ScriptDebugServer::hasBreakpoint):
      * bindings/scripts/CodeGeneratorJS.pm: Also add the custom create function for MasqueradesAsUndefined JS DOM wrappers.
      (GenerateEventListenerCall):
      (GenerateHeader):
      (JSValueToNative):
      * bindings/scripts/test/JS/JSTestEventTarget.cpp:
      (WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
      (WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
      * bindings/scripts/test/JS/JSTestEventTarget.h:
      (WebCore::JSTestEventTarget::create):
      * bindings/scripts/test/JS/JSTestObj.cpp:
      (WebCore::setJSTestObjCreate):
      (WebCore::setJSTestObjReflectedBooleanAttr):
      (WebCore::setJSTestObjReflectedCustomBooleanAttr):
      (WebCore::jsTestObjPrototypeFunctionAddEventListener):
      (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
      * bridge/c/c_utility.cpp:
      (JSC::Bindings::convertValueToNPVariant):
      * bridge/jni/jni_jsobject.mm:
      (JavaJSObject::convertValueToJObject):
      * bridge/qt/qt_runtime.cpp:
      (JSC::Bindings::convertValueToQVariant):
      
      Source/WebKit/mac: 
      
      With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of 
      MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines, 
      we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined 
      objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject). 
      For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not 
      masquerade as undefined within frame B, but it will continue to masquerade in frame A.
      
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      (WebKit::NetscapePluginInstanceProxy::addValueToArray): Passing ExecState to toBoolean call.
      
      Source/WebKit2: 
      
      With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of 
      MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines, 
      we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined 
      objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject). 
      For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not 
      masquerade as undefined within frame B, but it will continue to masquerade in frame A.
      
      * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
      (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant): Passing ExecState to toBoolean call.
      
      LayoutTests: 
      
      Added a test that uses a variety of ways of checking whether something is correctly 
      masquerading as undefined (or not) in a subframe.
      
      * fast/js/document-all-between-frames-expected.txt: Added.
      * fast/js/document-all-between-frames.html: Added.
      * fast/js/resources/document-all-between-frames-subframe.html: Added.
      * platform/chromium/TestExpectations: Chromium treats document.all differently, so skip our new test.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125687 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      35d5455b
    • abarth@webkit.org's avatar
      Update TestExpectations entry to refer to an actual bug. · 87917fe4
      abarth@webkit.org authored
      * platform/chromium/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125686 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      87917fe4
    • commit-queue@webkit.org's avatar
      [Gtk] atk_text_get_text_at_offset() fails to provide the correct line for... · b042b553
      commit-queue@webkit.org authored
      [Gtk] atk_text_get_text_at_offset() fails to provide the correct line for paragraphs in list items whose text wraps
      https://bugs.webkit.org/show_bug.cgi?id=83435
      
      Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-08-15
      Reviewed by Chris Fleizach.
      
      Source/WebCore:
      
      Fix a logic error when checking if an object is a list marker.
      
      * accessibility/gtk/WebKitAccessibleInterfaceText.cpp:
      (textForRenderer):
      
      Source/WebKit/gtk:
      
      Updated unit test to include a paragraph in a list item when testing atk_text_get_text_at_offset().
      
      * tests/testatk.c:
      (testWebkitAtkGetTextAtOffsetWithSpecialCharacters):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125685 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b042b553
    • commit-queue@webkit.org's avatar
      There is additional space not belonged to a table between the table cells · 01f61419
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=74864
      
      Patch by Arpita Bahuguna <arpitabahuguna@gmail.com> on 2012-08-15
      Reviewed by Julien Chaffraix.
      
      Source/WebCore:
      
      Hittest for a point on the edge, i.e. between two table columns, currently
      does not return any matching underlying element.
      
      A hittest on such a point (on the edge of two table columns) should return
      the column that lies either on the logical right/bottom of the said point.
      
      Tests: fast/table/hittest-tablecell-bottom-edge.html
             fast/table/hittest-tablecell-right-edge.html
             fast/table/hittest-tablecell-with-borders-bottom-edge.html
             fast/table/hittest-tablecell-with-borders-right-edge.html
      
      * rendering/RenderTableSection.cpp:
      (WebCore::RenderTableSection::spannedRows):
      Removed the FIXME regarding the correctness of the usage of the upper_bound algorithm
      since that is now verified by the testcases in this patch. Also, the comment
      regarding the inconsistency between the algorithms used in spannedRows and spannedColumns
      is no longer valid.
      
      (WebCore::RenderTableSection::spannedColumns):
      Changed lower_bound() algorithm to upper_bound() for obtaining the next column.
      This is now similar to what is used for obtaining the next row in spannedRows().
      
      LayoutTests:
      
      * fast/table/hittest-tablecell-bottom-edge-expected.txt: Added.
      * fast/table/hittest-tablecell-bottom-edge.html: Added.
      * fast/table/hittest-tablecell-right-edge-expected.txt: Added.
      * fast/table/hittest-tablecell-right-edge.html: Added.
      Testcases added for verifying that the proper node is returned upon hit test
      carried out at a point lying on the edge of two table cells.
      
      * fast/table/hittest-tablecell-with-borders-bottom-edge-expected.txt: Added.
      * fast/table/hittest-tablecell-with-borders-bottom-edge.html: Added.
      * fast/table/hittest-tablecell-with-borders-right-edge-expected.txt: Added.
      * fast/table/hittest-tablecell-with-borders-right-edge.html: Added.
      These testcases verify the aforementioned behavior when the table cells
      also have border specified for them.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125684 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      01f61419
    • peter@chromium.org's avatar
      Fix a warning in TestWebKitAPI's MediaTime test-suite · 7769cce6
      peter@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94096
      
      Reviewed by Adam Barth.
      
      This warning is visible when building the file with certain GCC versions,
      including the one used by Chromium for Android. The warning is visible in
      the cr-android build bot output:
      
      MediaTime.cpp:152: warning: this decimal constant is unsigned only in ISO C90
      
      * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
      (TestWebKitAPI::TEST):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125683 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7769cce6
    • annacc@chromium.org's avatar
      Add the timestampOffset attribute to SourceBuffer. · c2d132c5
      annacc@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93303
      
      Reviewed by Dimitri Glazkov.
      
      On the 30 July 2012 version of the Media Source Extensions spec, a timestampOffset
      attribute was added to the SourceBuffer object:
      http://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html#dom-timestampoffset
      
      Source/WebCore:
      
      Tests: additions to http/tests/media/media-source/video-media-source-objects.html
      
      * Modules/mediasource/MediaSource.cpp:
      (WebCore::MediaSource::setTimestampOffset): Set the timestampOffset on MediaPlayer.
      (WebCore):
      * Modules/mediasource/MediaSource.h:
      (MediaSource):
      * Modules/mediasource/SourceBuffer.cpp:
      (WebCore::SourceBuffer::SourceBuffer): Let the timestampOffset be 0 initially
      (WebCore::SourceBuffer::timestampOffset): Return the last value set.
      (WebCore):
      (WebCore::SourceBuffer::setTimestampOffset): Forward the call onto MediaSouce.
      * Modules/mediasource/SourceBuffer.h:
      (SourceBuffer):
      * Modules/mediasource/SourceBuffer.idl: Create the new timestampOffset attr.
      * platform/graphics/MediaPlayer.cpp:
      (WebCore::NullMediaPlayerPrivate::sourceSetTimestampOffset): A null media player
          should just return false (nothing to set).
      (WebCore):
      (WebCore::MediaPlayer::sourceSetTimestampOffset):  Forward the call.
      * platform/graphics/MediaPlayer.h:
      * platform/graphics/MediaPlayerPrivate.h:
      (WebCore::MediaPlayerPrivateInterface::sourceSetTimestampOffset):
      
      Source/WebKit/chromium:
      
      * public/WebMediaPlayer.h:
      (WebKit::WebMediaPlayer::sourceSetTimestampOffset): Add the new method.
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit):
      (WebKit::WebMediaPlayerClientImpl::sourceSetTimestampOffset): Forward the call.
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      
      LayoutTests:
      
      * http/tests/media/media-source/video-media-source-objects-expected.txt:
      * http/tests/media/media-source/video-media-source-objects.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125682 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c2d132c5
    • vsevik@chromium.org's avatar
      Source/WebCore: Web Inspector: Incorrect XHR responses when two async xhrs are sent synchronously · dcc56abd
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=91630
      
      Patch by Pavel Chadnov <chadnov@google.com> on 2012-08-15
      Reviewed by Vsevolod Vlasov.
      
      CachedResource object for XHR response is now taken from ResourceLoader (if it's possible).
      
      Test: http/tests/inspector/network/network-xhr-async-double.html
      
      * inspector/InspectorInstrumentation.cpp:
      (WebCore):
      (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
      (WebCore::InspectorInstrumentation::didReceiveResourceResponseButCanceledImpl):
      * inspector/InspectorInstrumentation.h:
      (InspectorInstrumentation):
      (WebCore::InspectorInstrumentation::didReceiveResourceResponse):
      * inspector/InspectorResourceAgent.cpp:
      (WebCore::InspectorResourceAgent::willSendRequest):
      (WebCore::InspectorResourceAgent::didReceiveResponse):
      * inspector/InspectorResourceAgent.h:
      (WebCore):
      (InspectorResourceAgent):
      * loader/DocumentThreadableLoader.cpp:
      (WebCore::DocumentThreadableLoader::didReceiveResponse):
      * loader/ResourceLoadNotifier.cpp:
      (WebCore::ResourceLoadNotifier::didReceiveResponse):
      (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
      * loader/ResourceLoadNotifier.h:
      (ResourceLoadNotifier):
      * loader/ResourceLoader.cpp:
      (WebCore::ResourceLoader::isSubresourceLoader):
      (WebCore):
      * loader/ResourceLoader.h:
      (ResourceLoader):
      * loader/SubresourceLoader.cpp:
      (WebCore::SubresourceLoader::cachedResource):
      (WebCore):
      (WebCore::SubresourceLoader::isSubresourceLoader):
      * loader/SubresourceLoader.h:
      (SubresourceLoader):
      * loader/appcache/ApplicationCacheGroup.cpp:
      (WebCore::ApplicationCacheGroup::didReceiveResponse):
      
      LayoutTests: Web Inspector: Incorrect XHR responses when two async xhrs are sent synchronously
      https://bugs.webkit.org/show_bug.cgi?id=91630
      
      Patch by Pavel Chadnov <chadnov@google.com> on 2012-08-15
      Reviewed by Vsevolod Vlasov.
      
      New test for two async XHRs sent synchronously.
      
      * http/tests/inspector/network-test.js:
      (doXHR):
      (doXHRWithPayload.xhr.onreadystatechange):
      (doXHRWithPayload):
      * http/tests/inspector/network/network-xhr-async-double-expected.txt: Added.
      * http/tests/inspector/network/network-xhr-async-double.html: Added.
      * http/tests/inspector/network/resources/echo-payload.php: Added.
      * platform/chromium/http/tests/inspector/console-xhr-logging-async-expected.txt:
      * platform/chromium/http/tests/inspector/console-xhr-logging-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125681 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dcc56abd
    • commit-queue@webkit.org's avatar
      [BlackBerry] Use nested layout when rotating · f813d03e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94117
      
      Partially patched by Arvid Nilsson.
      
      Patch by Leo Yang <leoyang@rim.com> on 2012-08-15
      Reviewed by George Staikos.
      Reviewed internally by Arvid Nilsson.
      
      When rotating the content width used for fixedLayoutSize is not
      correct because we are changing the rotation and the content with
      should be determined after layout. So we set the with to 0 if we
      are rotating and beginning the nested layout. And in setViewportSize
      we need a nested layout loop to trigger zoom-to-fit.
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::fixedLayoutSize):
      (BlackBerry::WebKit::WebPagePrivate::setViewportSize):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125680 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f813d03e
    • tonikitoo@webkit.org's avatar
      [BlackBerry] Stop copying ScrollViewBase vector all over · 1ed197c7
      tonikitoo@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94021
      
      Reviewed by Rob Buis.
      
      It outlives long enough in WebKit that we can
      just pass a const+ref of it.
      
      Internally reviewed by Gen Mak.
      
      * Api/WebPageClient.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125679 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1ed197c7
    • tonikitoo@webkit.org's avatar
      Robust-fy the LayerWebKitThread ownership with InRegionScroller · 4461aa0a
      tonikitoo@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93983
      PR #191737
      
      Reviewed by Yong Li.
      Patch by Antonio Gomes <agomes@rim.com>
      
      Patch changes the way we currently keep track of the active scrollable area
      objects: before, we acquired the scrollable areas and just passed them in a vector up
      to the client, copying it over and over again. Also, it was a client responsability to
      delete stuff (BAD!).
      Now, we keep track of vector within InRegionScroller, as a class member, which allows us to
      avoid copies (in follow up patch), and control until when these objects outlive.
      
      Patch also changes InRegionScrollableArea to "retptr" the composited layer
      associated to it (if any). This ensure we have a non-null scrollable element always.
      
      As mentioned, InRegionScroller is now responsible for deleting and vector of scrollable areas.
      
      Internally reviewed by Arvid Nilsson.
      
      * Api/InRegionScroller.cpp:
      (WebKit):
      (BlackBerry::WebKit::InRegionScrollerPrivate::reset): Method is now responsible for
      deleting the tracked scrollable areas.
      (BlackBerry::WebKit::InRegionScrollerPrivate::calculateInRegionScrollableAreasForPoint):
      Renamed from 'inRegionScrollableAreasForPoint'. It was changed in order to store the
      scrollable area objects instead of just pass a copy of them up to the client.
      (BlackBerry::WebKit::InRegionScrollerPrivate::activeInRegionScrollableAreas): Getter.
      (BlackBerry::WebKit::InRegionScrollerPrivate::pushBackInRegionScrollable): It was
      promoted to a class method instead of a local helper.
      * Api/InRegionScroller_p.h:
      (WebKit):
      (InRegionScrollerPrivate):
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::setScrollOriginPoint): Adjustments needed due to the
      above changed.
      * WebKitSupport/InRegionScrollableArea.cpp:
      (BlackBerry::WebKit::InRegionScrollableArea::~InRegionScrollableArea): Clear up the cached layer.
      (WebKit):
      (BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):
      * WebKitSupport/InRegionScrollableArea.h:
      (InRegionScrollableArea):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125678 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4461aa0a
    • commit-queue@webkit.org's avatar
      Web Inspector: Use default parameter on reportResult in InspectorFileSystemAgent · 7d60f613
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93930
      
      Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-08-15
      Reviewed by Vsevolod Vlasov.
      
      No functional change.
      
      * inspector/InspectorFileSystemAgent.cpp:
      (WebCore):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125677 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7d60f613
    • commit-queue@webkit.org's avatar
      [BlackBerry] Check for valid field focus before processing a spellcheck request · 9f51cb97
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94115
      
      Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-08-15
      Reviewed by Rob Buis.
      
      PR192891
      Checking for valid field focus before processing the spellcheck
      request.
      
      Internally reviewed by Mike Fenton.
      
      * WebKitSupport/InputHandler.cpp:
      (BlackBerry::WebKit::InputHandler::requestCheckingOfString):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125676 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9f51cb97
    • commit-queue@webkit.org's avatar
      Fix the 'git log' call in VCSUtils.pm for Windows · 7227bfea
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94113
      
      Patch by Kevin Funk <kevin.funk@kdab.com> on 2012-08-15
      Reviewed by Kenneth Rohde Christiansen.
      
      Failed because of invalid enquoting characters.
      
      * Scripts/VCSUtils.pm:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125675 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7227bfea
    • kov@webkit.org's avatar
      [jhbuild] move md5sum checking to update-webkit-libs-jhbuild · f5b7edb8
      kov@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93208
      
      Reviewed by Martin Robinson.
      
      This change makes the md5sum check and saving be done by the script
      that performs the dependencies update. build-webkit no longer prefixes
      calls to commands with jhbuild-wrapper if jhbuild has not been
      bootstrapped by the developer and --update-gtk is not given.
      
      * Scripts/update-webkit-libs-jhbuild:
      (getMD5HashForFile): moved from webkitdirs.
      (jhbuildConfigurationChanged): ditto.
      (saveJhbuildMd5): ditto.
      (cleanJhbuild): ditto, and changed to run jhbuild clean before removing
      jhbuild.
      * Scripts/webkitdirs.pm:
      (runAutogenForAutotoolsProjectIfNecessary): use jhbuildWrapperPrefixIfNeeded.
      (buildAutotoolsProject): ditto.
      (jhbuildWrapperPrefixIfNeeded): add a code branch for GTK+.
      (generateBuildSystemFromCMakeProject): call update-webkitefl-libs
      unconditionally for EFL.
      * jhbuild/jhbuild-wrapper:
      (update_webkit_libs_jhbuild): removed, jhbuild-wrapper no longer runs the
      update script itself
      (ensure_jhbuild): remove update call.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125674 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f5b7edb8
    • vsevik@chromium.org's avatar
      Web Inspector: TabbedEditorContainer Doens't show '*' near modified file name sometimes. · d01df445
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94095
      
      Reviewed by Pavel Feldman.
      
      TabbedEditorContainer now correctly updates event listeners on UISourceCodeReplaced event.
      
      * inspector/front-end/TabbedEditorContainer.js:
      (WebInspector.TabbedEditorContainer.prototype._appendFileTab):
      (WebInspector.TabbedEditorContainer.prototype._tabClosed):
      (WebInspector.TabbedEditorContainer.prototype._addUISourceCodeListeners):
      (WebInspector.TabbedEditorContainer.prototype._removeUISourceCodeListeners):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125673 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d01df445
    • vsevik@chromium.org's avatar
      Web Inspector: Scroll/selection are not saved in sources panel editors sometimes. · 009d28b9
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94098
      
      Reviewed by Pavel Feldman.
      
      SourceFrame listeners and _currentFile field are now cleared only when currently open tab is closed.
      
      * inspector/front-end/TabbedEditorContainer.js:
      (WebInspector.TabbedEditorContainer.prototype._tabClosed):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125672 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      009d28b9
    • commit-queue@webkit.org's avatar
      [EFL][WK2] Refactoring: start using WKEinaSharedString in ewk_ classes · e7f5cabb
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93964
      
      Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-15
      Reviewed by Kenneth Rohde Christiansen.
      
      Started using WKEinaSharedString where it is advisable.
      
      * UIProcess/API/cpp/efl/WKEinaSharedString.cpp:
      (WKEinaSharedString::operator==):
      * UIProcess/API/cpp/efl/WKEinaSharedString.h:
      * UIProcess/API/efl/ewk_download_job.cpp:
      (_Ewk_Download_Job):
      (_Ewk_Download_Job::_Ewk_Download_Job):
      (_Ewk_Download_Job::~_Ewk_Download_Job):
      (ewk_download_job_destination_set):
      (ewk_download_job_suggested_filename_set):
      * UIProcess/API/efl/ewk_intent.cpp:
      (_Ewk_Intent):
      (_Ewk_Intent::_Ewk_Intent):
      (_Ewk_Intent::~_Ewk_Intent):
      (ewk_intent_action_get):
      (ewk_intent_type_get):
      (ewk_intent_service_get):
      * UIProcess/API/efl/ewk_intent_service.cpp:
      (_Ewk_Intent_Service):
      (_Ewk_Intent_Service::_Ewk_Intent_Service):
      (_Ewk_Intent_Service::~_Ewk_Intent_Service):
      (ewk_intent_service_action_get):
      (ewk_intent_service_type_get):
      (ewk_intent_service_href_get):
      (ewk_intent_service_title_get):
      (ewk_intent_service_disposition_get):
      * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
      (_Ewk_Navigation_Policy_Decision):
      (_Ewk_Navigation_Policy_Decision::_Ewk_Navigation_Policy_Decision):
      (_Ewk_Navigation_Policy_Decision::~_Ewk_Navigation_Policy_Decision):
      * UIProcess/API/efl/ewk_url_request.cpp:
      (_Ewk_Url_Request):
      (_Ewk_Url_Request::_Ewk_Url_Request):
      (_Ewk_Url_Request::~_Ewk_Url_Request):
      (ewk_url_request_url_get):
      (ewk_request_cookies_first_party_get):
      (ewk_url_request_http_method_get):
      * UIProcess/API/efl/ewk_url_response.cpp:
      (_Ewk_Url_Response):
      (_Ewk_Url_Response::_Ewk_Url_Response):
      (_Ewk_Url_Response::~_Ewk_Url_Response):
      (ewk_url_response_url_get):
      (ewk_url_response_mime_type_get):
      * UIProcess/API/efl/ewk_view.cpp:
      (_Ewk_View_Private_Data):
      (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
      (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
      (ewk_view_uri_update):
      (ewk_view_title_get):
      (ewk_view_theme_set):
      (ewk_view_setting_encoding_custom_get):
      (ewk_view_setting_encoding_custom_set):
      * UIProcess/API/efl/ewk_web_error.cpp:
      (_Ewk_Web_Error):
      (_Ewk_Web_Error::_Ewk_Web_Error):
      (_Ewk_Web_Error::~_Ewk_Web_Error):
      (ewk_web_error_url_get):
      (ewk_web_error_description_get):
      * UIProcess/API/efl/ewk_web_resource.cpp:
      (_Ewk_Web_Resource):
      (_Ewk_Web_Resource::_Ewk_Web_Resource):
      (_Ewk_Web_Resource::~_Ewk_Web_Resource):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125671 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e7f5cabb
    • commit-queue@webkit.org's avatar
      [WK2] Add support for Web Intents MessagePorts · 6ff3153f
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=89072
      
      Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-15
      Reviewed by Kenneth Rohde Christiansen.
      
      Source/WebKit2:
      
      Add support for WebIntents MessagePorts in WebKit2.
      MessagePorts can be passed with a Web Intent in
      order to open a direct communication channel
      between the Web application and the intent service.
      
      This functionality is already supported by WebKit 1.
      
      This patch introduces a new InjectedBundleIntent
      class which wraps a WebCore::Intent. This way
      information regarding the MessagePorts in a Web
      Intent is kept when using an injected bundle.
      
      For the UIProcess, WebIntentData now carries
      identifiers for the MessagePorts which can go over
      IPC. Those identifiers map to actual MessagePorts
      stored in the Web process. This way, when the UI
      delivers an intent to a frame, we can get back the
      corresponding MessagePorts from the Web process
      before delivering the intent to the DOMWindow.
      
      This functionality is already tested by:
      
      - webintents/web-intents-invoke-port.html
      - webintents/web-intents-obj-constructor.html
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Shared/API/c/WKBase.h:
      * Shared/APIObject.h:
      * Shared/IntentData.cpp: Add MessagePort identifiers.
      (WebKit::IntentData::IntentData):
      (WebKit::IntentData::encode):
      (WebKit::IntentData::decode):
      * Shared/IntentData.h:
      (IntentData):
      * Target.pri:
      * UIProcess/API/C/WKIntentData.cpp: Rename WKIntentDataCopyExtra() to
      WKIntentDataCopyExtraValue() for clarity.
      (WKIntentDataCopyExtraValue):
      * UIProcess/API/C/WKIntentData.h: Remove WKIntentDataCreate() function now
      that WTR uses WKBundleIntentCreate() instead.
      * UIProcess/API/efl/ewk_intent.cpp:
      (ewk_intent_extra_get): Use WKIntentDataCopyExtraValue() instead of
      WKIntentDataCopyExtra() since it was renamed.
      * UIProcess/WebIntentData.cpp:
      (WebKit::WebIntentData::WebIntentData):
      (WebKit::WebIntentData::~WebIntentData): Remove MessagePorts from WebProcess upon
      WebIntentData destruction.
      (WebKit):
      (WebKit::WebIntentData::extras):
      * UIProcess/WebIntentData.h:
      (WebKit):
      (WebKit::WebIntentData::create):
      (WebIntentData):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::didReceiveIntentForFrame):
      * UIProcess/WebProcessProxy.cpp:
      (WebKit):
      (WebKit::WebProcessProxy::removeMessagePortChannel):
      * UIProcess/WebProcessProxy.h:
      (WebProcessProxy):
      * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
      (WebKit):
      * WebProcess/InjectedBundle/API/c/WKBundleIntent.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKIntentData.cpp.
      (WKBundleIntentGetTypeID):
      (WKBundleIntentCreate):
      (WKBundleIntentCopyAction):
      (WKBundleIntentCopyType):
      (WKBundleIntentCopyService):
      (WKBundleIntentCopySuggestions):
      (WKBundleIntentCopyExtraValue):
      (WKBundleIntentCopyExtras):
      (WKBundleIntentMessagePortCount):
      * WebProcess/InjectedBundle/API/c/WKBundleIntent.h: Copied from Source/WebKit2/UIProcess/API/C/WKIntentData.h.
      * WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.cpp:
      (WKBundleIntentRequestCopyIntent):
      * WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.h:
      * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
      (WKBundlePageDeliverIntentToFrame):
      * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
      * WebProcess/InjectedBundle/InjectedBundleIntent.cpp: Copied from Source/WebKit2/UIProcess/WebIntentData.cpp.
      (WebKit):
      (WebKit::InjectedBundleIntent::create):
      (WebKit::InjectedBundleIntent::InjectedBundleIntent):
      (WebKit::InjectedBundleIntent::action):
      (WebKit::InjectedBundleIntent::payloadType):
      (WebKit::InjectedBundleIntent::service):
      (WebKit::InjectedBundleIntent::data):
      (WebKit::InjectedBundleIntent::extra):
      (WebKit::InjectedBundleIntent::extras):
      (WebKit::InjectedBundleIntent::suggestions):
      * WebProcess/InjectedBundle/InjectedBundleIntent.h: Copied from Source/WebKit2/UIProcess/WebIntentData.h.
      (WebKit):
      (InjectedBundleIntent):
      (WebKit::InjectedBundleIntent::coreIntent):
      (WebKit::InjectedBundleIntent::type):
      * WebProcess/InjectedBundle/InjectedBundleIntentRequest.cpp:
      (WebKit::InjectedBundleIntentRequest::intent):
      * WebProcess/InjectedBundle/InjectedBundleIntentRequest.h:
      (WebKit):
      (InjectedBundleIntentRequest):
      * WebProcess/WebPage/WebFrame.cpp:
      (WebKit::WebFrame::deliverIntent):
      (WebKit):
      * WebProcess/WebPage/WebFrame.h:
      (WebCore):
      (WebFrame):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit):
      (WebKit::WebPage::deliverCoreIntentToFrame):
      * WebProcess/WebPage/WebPage.h:
      (WebCore):
      (WebPage):
      * WebProcess/WebProcess.cpp: Store MessagePorts in WebProcess and keep mapping with
      their identifiers.
      (WebKit):
      (WebKit::WebProcess::addMessagePortChannel):
      (WebKit::WebProcess::messagePortChannel):
      (WebKit::WebProcess::removeMessagePortChannel):
      * WebProcess/WebProcess.h:
      (WebCore):
      (WebProcess):
      * WebProcess/WebProcess.messages.in:
      
      Tools:
      
      Use WKBundleIntent instead of WebIntentData in
      WebKitTestRunner. WTR now prints the number of
      MessagePorts in received Web intents as
      expected by the following layout tests:
      webintents/web-intents-invoke-port.html
      webintents/web-intents-obj-constructor.html
      
      * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
      (WTR::InjectedBundlePage::didReceiveIntentForFrame):
      * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
      (WTR::LayoutTestController::deliverWebIntent):
      
      LayoutTests:
      
      Unskip webintents/web-intents-invoke-port.html and
      webintents/web-intents-obj-constructor.html for
      WebKit2 EFL now that information about message ports
      is correctly displayed by WebKitTestRunner.
      
      * platform/efl-wk2/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125670 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6ff3153f
    • commit-queue@webkit.org's avatar
      [EFL] Remove image expectation added for a ref test · e6e8cff3
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94090
      
      Unreviewed gardening.
      
      Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-08-15
      
      * platform/efl/TestExpectations:
      * platform/efl/fast/css-generated-content/quotes-lang-expected.png: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125669 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e6e8cff3
    • vsevik@chromium.org's avatar
      Web Inspector: [REGRESSION] "save as" of edited source in developer mode fails to update saved file · e452fc34
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94074
      
      Reviewed by Pavel Feldman.
      
      Added dirty flag check when saving uiSourceCode to save working copy in this case.
      
      * inspector/front-end/HandlerRegistry.js:
      (WebInspector.HandlerRegistry.prototype.appendApplicableItems.save):
      (WebInspector.HandlerRegistry.prototype.appendApplicableItems):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125668 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e452fc34
    • kkristof@inf.u-szeged.hu's avatar
      [Qt] Unreviewed gardening. Add platfrom specific expected results after r125593. · 52b6bddc
      kkristof@inf.u-szeged.hu authored
      Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-08-15
      
      * platform/qt-5.0-wk2/http/tests/misc/window-dot-stop-expected.txt: Added.
      * platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
      * platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
      * platform/qt-5.0-wk2/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
      * platform/qt-5.0-wk2/http/tests/xmlhttprequest/abort-should-cancel-load-expected.txt: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125667 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      52b6bddc
    • shinyak@chromium.org's avatar
      [Chromium Mac] Unreviewed, rebaseline after r125659. · 32401869
      shinyak@chromium.org authored
      * fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt: Renamed from LayoutTests/platform/efl/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt.
      * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-styles-changing-pseudo-expected.txt:
      * platform/chromium-mac/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt:
      * platform/chromium-win-xp/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.txt:
      * platform/gtk/fast/dom/HTMLMeterElement/meter-writing-mode-expected.txt: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125666 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      32401869
    • peter@chromium.org's avatar
      [Chromium] Roll WebKit Chromium DEPS to r151672 · 16ed046a
      peter@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94091
      
      Unreviewed DEPS roll.
      
      This also adds the new dependency on third_party/skia/gyp/, as was
      introduced in Chromium's revision 151463.
      
      
      * DEPS:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125665 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      16ed046a