1. 21 Sep, 2012 40 commits
    • fpizlo@apple.com's avatar
      Unreviewed, fix ARM build. · ba8829bc
      fpizlo@apple.com authored
      * assembler/MacroAssemblerARMv7.h:
      (JSC::MacroAssemblerARMv7::store8):
      (MacroAssemblerARMv7):
      * offlineasm/armv7.rb:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129274 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ba8829bc
    • bashi@chromium.org's avatar
      [Chromium] Use OpenTypeVerticalData on Linux · 7f59b957
      bashi@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97277
      
      Reviewed by Tony Chang.
      
      Source/WebCore:
      
      Remove HarfBuzz dependency from GlyphPageTreeNodeSkia. Use OpenTypeVerticalData instead.
      
      No new tests. Rebaselined existing tests.
      
      * WebCore.gyp/WebCore.gyp: Added OpenTypeTypes.h and OpenTypeVerticalData.(cpp|h) for linux and android.
      * platform/graphics/FontCache.cpp:
      Inserted a space between > and > in typedef of FontVerticalDataCache so that making some compilers happy.
      (WebCore):
      * platform/graphics/SimpleFontData.h:
      (SimpleFontData): Moved declaration of m_verticalData to avoid compile warnings.
      * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
      (WebCore):
      (WebCore::FontPlatformData::verticalData): Added.
      (WebCore::FontPlatformData::openTypeTable): Added.
      * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h:
      (WebCore):
      (FontPlatformData):
      * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Removed substituteWithVerticalGlyphs().
      (WebCore::GlyphPage::fill):
      
      Source/WebKit/chromium:
      
      * features.gypi: Enable OPENTYPE_VERTICAL on linux and android.
      
      LayoutTests:
      
      Rebaselined vertical writing test expectations.
      
      * platform/chromium-linux/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png:
      * platform/chromium-linux/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-backward-wrap-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png:
      * platform/chromium-linux/editing/selection/vertical-rl-ltr-extend-line-forward-wrap-expected.png:
      * platform/chromium-linux/fast/dynamic/text-combine-expected.png:
      * platform/chromium-linux/fast/repaint/japanese-rl-selection-repaint-expected.png:
      * platform/chromium-linux/fast/text/international/text-spliced-font-expected.png:
      * platform/chromium-linux/fast/writing-mode/Kusa-Makura-background-canvas-expected.png:
      * platform/chromium-linux/fast/writing-mode/border-vertical-lr-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-lr-selection-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-lr-text-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-rl-selection-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-rl-text-expected.png:
      * platform/chromium-linux/fast/writing-mode/japanese-rl-text-with-broken-font-expected.png:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129273 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7f59b957
    • fpizlo@apple.com's avatar
      REGRESSION (r128400): Opening Google Web Fonts page hangs or crashes · 57fb54da
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97328
      
      Reviewed by Mark Hahnenberg.
      
      It's a bad idea to emit stub code that reallocates property storage when we're in indexed
      storage mode. DFGRepatch.cpp knew this and had the appropriate check in one of the places,
      but it didn't have it in all of the places.
              
      This change also adds some more handy disassembly support, which I used to find the bug.
      
      * assembler/LinkBuffer.h:
      (JSC):
      * dfg/DFGRepatch.cpp:
      (JSC::DFG::generateProtoChainAccessStub):
      (JSC::DFG::tryCacheGetByID):
      (JSC::DFG::tryBuildGetByIDList):
      (JSC::DFG::emitPutReplaceStub):
      (JSC::DFG::emitPutTransitionStub):
      (JSC::DFG::tryCachePutByID):
      * jit/JITStubRoutine.h:
      (JSC):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129272 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      57fb54da
    • commit-queue@webkit.org's avatar
      Crash in WebCore::Document::fullScreenChangeDelayTimerFired · 921569db
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97367
      
      Patch by Jeremy Apthorp <jeremya@chromium.org> on 2012-09-21
      Reviewed by Abhishek Arya.
      
      The document could be destroyed during the processing of the
      fullscreenchange event, if the document was destroyed as a result of
      one of the dispatchEvent calls.
      
      This bug isn't reliably reproducible, so no new tests.
      
      * dom/Document.cpp:
      (WebCore::Document::fullScreenChangeDelayTimerFired):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129270 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      921569db
    • weinig@apple.com's avatar
      REGRESSION (r120361) Warnings while preprocessing com.apple.WebProcess.sb.in · fd1fe81b
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=91079
      <rdar://problem/12332660>
      
      Reviewed by Anders Carlsson.
      
      * WebProcess/com.apple.WebProcess.sb.in:
      Add pragma to ignore the invalid preprocessor warnings.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129269 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fd1fe81b
    • benjamin@webkit.org's avatar
      Skip fast/dom/Geolocation/disconnected-frame.html until the assertion is fixed · ec770db5
      benjamin@webkit.org authored
      Unreviewed. The test assert in Debug, skip it until this has been fixed.
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-21
      
      * platform/wk2/Skipped:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129268 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ec770db5
    • psolanki@apple.com's avatar
      No need to pass order file for WebCoreTestSupport build · e1abd439
      psolanki@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97363
      
      Reviewed by David Kilzer.
      
      No new tests because no functional change.
      
      * Configurations/WebCoreTestSupport.xcconfig:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129267 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e1abd439
    • fpizlo@apple.com's avatar
      DFG CSE assumes that a holy PutByVal does not interfere with GetArrayLength, when it clearly does · 687b646a
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97373
      
      Reviewed by Mark Hahnenberg.
      
      Source/JavaScriptCore: 
      
      * dfg/DFGCSEPhase.cpp:
      (JSC::DFG::CSEPhase::pureCSE):
      (JSC::DFG::CSEPhase::getArrayLengthElimination):
      (JSC::DFG::CSEPhase::putStructureStoreElimination):
      (JSC::DFG::CSEPhase::performNodeCSE):
      * dfg/DFGGraph.h:
      (Graph):
      
      LayoutTests: 
      
      * fast/js/dfg-holy-put-by-val-interferes-with-get-array-length-expected.txt: Added.
      * fast/js/dfg-holy-put-by-val-interferes-with-get-array-length.html: Added.
      * fast/js/jsc-test-list:
      * fast/js/script-tests/dfg-holy-put-by-val-interferes-with-get-array-length.js: Added.
      (foo):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129266 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      687b646a
    • dpranke@chromium.org's avatar
      webkitpy: drop support for old TestExpectations syntax · ca66f9a2
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97364
      
      Reviewed by Ryosuke Niwa.
      
      * Scripts/webkitpy/layout_tests/models/test_expectations.py:
      (TestExpectationParser._collect_matching_tests):
      (TestExpectationParser):
      (TestExpectationParser._tokenize_line):
      * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
      (SkippedTests.test_skipped_entry_dont_exist):
      (ExpectationSyntaxTests.assert_tokenize_exp):
      (ExpectationSyntaxTests.test_bare_name):
      (ExpectationSyntaxTests.test_bare_name_and_bugs):
      (ExpectationSyntaxTests.test_comments):
      (ExpectationSyntaxTests.test_config_modifiers):
      (ExpectationSyntaxTests.test_unknown_config):
      (ExpectationSyntaxTests.test_unknown_expectation):
      (ExpectationSyntaxTests.test_skip):
      (ExpectationSyntaxTests.test_slow):
      (ExpectationSyntaxTests.test_wontfix):
      (ExpectationSyntaxTests.test_blank_line):
      (ExpectationSyntaxTests.test_warnings):
      (RebaseliningTest.test_no_get_rebaselining_failures):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129265 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ca66f9a2
    • simon.fraser@apple.com's avatar
      Improve WTR unresponsiveness output a little · f6942003
      simon.fraser@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97370
      
      Reviewed by Timothy Horton.
      
      Distinguish between conditions that already set the errorMessage,
      and unresponsiveness due to slow about:blank loads when WTR
      reports unresponsiveness.
      
      * WebKitTestRunner/TestInvocation.cpp:
      (WTR::TestInvocation::invoke):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129264 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f6942003
    • dpranke@chromium.org's avatar
      Roll Chromium DEPS to r158095 to pick up typo fix in test_expectations.txt · c0c25944
      dpranke@chromium.org authored
      Unreviewed, rolled DEPS.
      
      * DEPS:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129263 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c0c25944
    • roger_fong@apple.com's avatar
    • dpranke@chromium.org's avatar
      Roll Chromium DEPS to r158060 · 5c16d385
      dpranke@chromium.org authored
      Unreviewed, rolled DEPS.
      
      * DEPS:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129261 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5c16d385
    • crogers@google.com's avatar
      Add Web Audio support for deprecated/legacy APIs · 143fd02e
      crogers@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97050
      
      Reviewed by Eric Carlson.
      
      .:
      
      * Source/cmake/WebKitFeatures.cmake:
      
      Source/JavaScriptCore:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      The Web Audio API specification has undergone much review and some small API changes
      have been made (mostly naming-related changes).  This patch adds an ENABLE_LEGACY_WEB_AUDIO
      build option to allow ports to support the old names.
      
      Tests changed:
      audiobuffersource-playbackrate.html
      audiobuffersource.html
      note-grain-on-testing.js
      oscillator-testing.js
      
      * Configurations/FeatureDefines.xcconfig:
      * GNUmakefile.features.am:
      * Modules/webaudio/AudioBufferSourceNode.cpp:
      (WebCore::AudioBufferSourceNode::startGrain):
      (WebCore):
      (WebCore::AudioBufferSourceNode::noteGrainOn):
      * Modules/webaudio/AudioBufferSourceNode.h:
      (AudioBufferSourceNode):
      * Modules/webaudio/AudioBufferSourceNode.idl:
      * Modules/webaudio/AudioScheduledSourceNode.cpp:
      (WebCore::AudioScheduledSourceNode::start):
      (WebCore::AudioScheduledSourceNode::stop):
      (WebCore):
      (WebCore::AudioScheduledSourceNode::noteOn):
      (WebCore::AudioScheduledSourceNode::noteOff):
      * Modules/webaudio/AudioScheduledSourceNode.h:
      * Modules/webaudio/Oscillator.idl:
      * page/FeatureObserver.h:
      
      Source/WebKit/chromium:
      
      * features.gypi:
      
      Source/WebKit/mac:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm:
      
      LayoutTests:
      
      * webaudio/audiobuffersource-playbackrate.html:
      * webaudio/audiobuffersource.html:
      * webaudio/resources/note-grain-on-testing.js:
      (playGrain):
      * webaudio/resources/oscillator-testing.js:
      (generateExponentialOscillatorSweep):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129260 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      143fd02e
    • dpranke@chromium.org's avatar
      webkitpy: update remaining tests to use the new expectation syntax · 597c606d
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97362
      
      Reviewed by Ojan Vafai.
      
      This patch updates all the unit tests that were still using the
      old TestExpectations syntax to use the new syntax *except* for
      the tests that were specifically testing that we parsed the old
      syntax correctly.
      
      Also, a block of tests for the new syntax were duplicated, so
      I've deleted the duplicate.
      
      Note that the old syntax is still supported so this change should
      produce no visible changes.
      
      * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
      (MiscTests.test_multiple_results):
      (MiscTests.test_category_expectations):
      (MiscTests.test_error_on_different_platform):
      (MiscTests.test_error_on_different_build_type):
      (MiscTests.test_overrides):
      (MiscTests.test_overrides__directory):
      (MiscTests.test_overrides__duplicate):
      (MiscTests.test_more_specific_override_resets_skip):
      (SkippedTests.check):
      (SkippedTests.test_duplicate_skipped_test_fails_lint):
      (SkippedTests.test_skipped_file_overrides_expectations):
      (SkippedTests.test_skipped_dir_overrides_expectations):
      (SkippedTests.test_skipped_file_overrides_overrides):
      (SkippedTests.test_skipped_dir_overrides_overrides):
      (ExpectationSyntaxTests.disabled_test_missing_expectation):
      (ExpectationSyntaxTests.disabled_test_missing_colon):
      (ExpectationSyntaxTests.disabled_test_too_many_colons):
      (ExpectationSyntaxTests.disabled_test_too_many_equals_signs):
      (ExpectationSyntaxTests):
      (ExpectationSyntaxTests.test_unrecognized_expectation):
      (ExpectationSyntaxTests.test_macro):
      (SemanticTests.test_bug_format):
      (SemanticTests.test_bad_bugid):
      (SemanticTests.test_missing_bugid):
      (SemanticTests.test_slow_and_timeout):
      (SemanticTests.test_rebaseline):
      (test_missing_file):
      (test_ambiguous):
      (test_more_modifiers):
      (test_order_in_file):
      (test_macro_overrides):
      (OldExpectationParserTests):
      (OldExpectationParserTests._tokenize):
      (OldExpectationParserTests.test_tokenize_extra_colon):
      (OldExpectationParserTests.test_tokenize_missing_equal):
      (OldExpectationParserTests.test_tokenize_extra_equal):
      * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
      (MainTest.test_skip_failing_tests):
      (MainTest.test_additional_expectations):
      * Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
      (TestExpectationsTestCase.test_valid_expectations):
      (TestExpectationsTestCase.test_invalid_expectations):
      (TestExpectationsTestCase.test_tab):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129259 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      597c606d
    • roger_fong@apple.com's avatar
      Unreviewed. As in https://bugs.webkit.org/show_bug.cgi?id=92916, Windows... · 5083699f
      roger_fong@apple.com authored
      Unreviewed. As in https://bugs.webkit.org/show_bug.cgi?id=92916, Windows specific results need to be added for various accessibility tests.
      
      * platform/win/accessibility/aria-toggle-button-with-title-expected.txt: Added.
      * platform/win/accessibility/canvas-fallback-content-2-expected.txt: Added.
      * platform/win/accessibility/img-fallsback-to-title-expected.txt: Added.
      * platform/win/accessibility/svg-image-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129258 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5083699f
    • pilgrim@chromium.org's avatar
      [Chromium] remove getFontFamilyForCharacters from PlatformSupport · 651734d7
      pilgrim@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96282
      
      Reviewed by Tony Chang.
      
      Migrating away from PlatformSupport. getFontFamilyForCharacters is
      moved to FontCache.h and overridden by the two platforms that
      need it (Chromium Linux and Blackberry). New files for the overrides.
      Part of a larger refactoring series. See tracking bug 82948.
      
      Source/WebCore:
      
      * PlatformBlackBerry.cmake:
      * WebCore.gypi:
      * platform/chromium/PlatformSupport.h:
      (PlatformSupport):
      * platform/graphics/FontCache.h:
      (SimpleFontFamily):
      (FontCache):
      * platform/graphics/blackberry/FontCacheBlackberry.cpp: Added.
      (WebCore):
      (WebCore::FontCache::getFontFamilyForCharacters):
      * platform/graphics/blackberry/skia/PlatformSupport.cpp:
      (WebCore):
      * platform/graphics/blackberry/skia/PlatformSupport.h:
      (PlatformSupport):
      * platform/graphics/chromium/FontCacheAndroid.cpp:
      (WebCore::FontCache::getFontDataForCharacters):
      * platform/graphics/chromium/FontCacheChromiumLinux.cpp: Added.
      (WebCore):
      (WebCore::FontCache::getFontFamilyForCharacters):
      * platform/graphics/skia/FontCacheSkia.cpp:
      (WebCore::FontCache::getFontDataForCharacters):
      
      Source/WebKit/chromium:
      
      * src/PlatformSupport.cpp:
      (WebCore):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129257 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      651734d7
    • roger_fong@apple.com's avatar
      Unreviewed. Creating some Windows specific tests. · d5780378
      roger_fong@apple.com authored
      http://trac.webkit.org/changeset/128652 changed results for these tests on Mac but Windows results should stay the same.
      
      * platform/win/fast/block/positioning: Added.
      * platform/win/fast/block/positioning/016-expected.txt: Added.
      * platform/win/fast/block/positioning/025-expected.txt: Added.
      * platform/win/fast/block/positioning/fixed-position-stacking-context-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129255 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d5780378
    • cfleizach@apple.com's avatar
      Source/WebCore: AX: WebKit exposes incorrect bounds for embedded SVG in HTML · f2c84846
      cfleizach@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=96168
      
      Reviewed by Eric Seidel.
      
      Override absoluteFocusRingQuads() for SVG objects because the default
      implementation relies on addFocusRingRects(). In addFocusRingRects(), SVG 
      objects adds local positions for its rects instead of absolute positions.
      
      Test: accessibility/svg-bounds.html
      
      * rendering/RenderObject.h:
      (RenderObject):
      * rendering/svg/RenderSVGModelObject.cpp:
      (WebCore):
      (WebCore::RenderSVGModelObject::absoluteFocusRingQuads):
      * rendering/svg/RenderSVGModelObject.h:
      (RenderSVGModelObject):
      
      LayoutTests: WebKit exposes incorrect bounds for embedded SVG in HTML
      https://bugs.webkit.org/show_bug.cgi?id=96168
      
      Reviewed by Eric Seidel.
      
      * accessibility/svg-bounds.html: Added.
      * platform/chromium/TestExpectations:
      * platform/mac/accessibility/svg-bounds-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129254 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f2c84846
    • benjamin@webkit.org's avatar
      [WK2] Add basic testing support for Geolocation · 04e047f0
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97278
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-21
      Reviewed by Kenneth Rohde Christiansen.
      
      Source/WebKit2: 
      
      * Shared/API/c/WKNumber.h: Fix an unfortunate copy-paste :)
      
      * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
      * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
      * WebProcess/InjectedBundle/InjectedBundle.cpp:
      * WebProcess/InjectedBundle/InjectedBundle.h:
      (InjectedBundle):
      Remove the code forcing the Geolocation permissions. It was working around the normal
      Geolocation code and updating all the GeolocationController, which is a terrible idea.
      
      Tools: 
      
      Update the Geolocation testing to use the proper API in the UIProcess.
      
      * WebKitTestRunner/CMakeLists.txt:
      * WebKitTestRunner/GNUmakefile.am:
      
      * WebKitTestRunner/GeolocationProviderMock.cpp: Added.
      (WTR::startUpdatingCallback):
      (WTR::stopUpdatingCallback):
      (WTR::GeolocationProviderMock::GeolocationProvierMock):
      (WTR::GeolocationProviderMock::setMockGeolocationPosition):
      (WTR::GeolocationProviderMock::startUpdating):
      (WTR::GeolocationProviderMock::stopUpdating):
      (GeolocationProviderMock):
      The GeolocationProvider store the location update and deliver them as needed.
      
      WebCore GeolocationController do not support asynchronous update on start/stop. This is not
      a problem in this case because all the messages between the WebProcess and the UIProcess are
      asynchronous. Because of this, unlike GeolocationClientMock, we do not use a timer for event
      delivery.
      
      * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
      * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
      (WTR::InjectedBundle::setGeolocationPermission):
      (WTR::InjectedBundle::setMockGeolocationPosition):
      * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
      (InjectedBundle):
      * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
      (WTR::TestRunner::setGeolocationPermission):
      (WTR::TestRunner::setMockGeolocationPosition):
      From the InjectedBundle, we now pass the information to the UIProcess so that
      GeolocationProvider and the TestController can respond appropriately.
      
      * WebKitTestRunner/InjectedBundle/TestRunner.h:
      (TestRunner):
      * WebKitTestRunner/Target.pri:
      * WebKitTestRunner/TestController.cpp:
      (WTR::TestController::TestController):
      (WTR::decidePolicyForGeolocationPermissionRequest):
      (WTR::TestController::createOtherPage):
      (WTR::TestController::initialize):
      (WTR::TestController::setMockGeolocationPosition):
      * WebKitTestRunner/TestController.h:
      (TestController):
      (WTR::TestController::setGeolocationPermission):
      (WTR::TestController::isGeolocationPermissionAllowed):
      * WebKitTestRunner/TestInvocation.cpp:
      (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
      * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
      * WebKitTestRunner/win/WebKitTestRunner.vcproj:
      
      LayoutTests: 
      
      * platform/wk2/Skipped: Unskip the passing tests.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129252 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      04e047f0
    • commit-queue@webkit.org's avatar
      [BlackBerry] Really fix bug 95488 that user can get the authentication... · 0cffe019
      commit-queue@webkit.org authored
      [BlackBerry] Really fix bug 95488 that user can get the authentication challenge dialog while the other tab has focus.
      https://bugs.webkit.org/show_bug.cgi?id=97348
      Internal PR: 186597.
      
      Internally reviewed by Yong Li, Joe Mason.
      Patch by Lianghui Chen <liachen@rim.com> on 2012-09-21
      Reviewed by Yong Li.
      
      Source/WebCore:
      
      Add a singleton AuthenticationChallengeManager to manage authentication
      challenge dialog. It does following things:
      Record page creation/deletion, so it knows what page is present or not.
      Record page visibility change so it knows when to display a dialog or not.
      Accept authentication challenge, and decide whether to postpone the
          challenge dialog based on whether there is active authentication challenge
          dialog already and whether its page is visible or not.
      When a challenge result comes back, notify the result to all clients
          authenticating for the same protection space, and then start the next
          authentication challenge from the same page, if there is one.
      When a page becomes visible, start the first authentication challenge
          dialog that has been blocked before.
      
      And to support this new AuthenticationChallengeManager, and making the
          challenge really asynchronous, NetworkJob has been updated to support
          the concept of "freeze", which means buffering all network loading status
          change but don't send them to NetworkJob clients.
      This is necessary when authentication challenge is asynchronous, as the
          previous network loading status will likely come before user make any
          decision.
      
      No new tests for platform specific internal change.
      
      * PlatformBlackBerry.cmake:
      * platform/blackberry/AuthenticationChallengeManager.cpp: Added.
      (WebCore):
      (ChallengeInfo):
      (WebCore::ChallengeInfo::ChallengeInfo):
      (AuthenticationChallengeManagerPrivate):
      (WebCore::AuthenticationChallengeManagerPrivate::AuthenticationChallengeManagerPrivate):
      (WebCore::AuthenticationChallengeManagerPrivate::resumeAuthenticationChallenge):
      (WebCore::AuthenticationChallengeManagerPrivate::startAuthenticationChallenge):
      (WebCore::AuthenticationChallengeManagerPrivate::pageExists):
      (WebCore::AuthenticationChallengeManager::AuthenticationChallengeManager):
      (WebCore::AuthenticationChallengeManager::pageCreated):
      (WebCore::AuthenticationChallengeManager::pageDeleted):
      (WebCore::AuthenticationChallengeManager::pageVisibilityChanged):
      (WebCore::AuthenticationChallengeManager::authenticationChallenge):
      (WebCore::AuthenticationChallengeManager::cancelAuthenticationChallenge):
      (WebCore::AuthenticationChallengeManager::notifyChallengeResult):
      (WebCore::AuthenticationChallengeManager::instance):
      (WebCore::AuthenticationChallengeManager::init):
      * platform/blackberry/AuthenticationChallengeManager.h:
      (WebCore):
      (AuthenticationChallengeManager):
      * platform/blackberry/PageClientBlackBerry.h:
      * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
      (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
      (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
      (WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
      (WebCore::MediaPlayerPrivate::notifyChallengeResult):
      * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
      (MediaPlayerPrivate):
      * platform/network/blackberry/NetworkJob.cpp:
      (WebCore::NetworkJob::NetworkJob):
      (WebCore::NetworkJob::~NetworkJob):
      (WebCore):
      (WebCore::NetworkJob::handleNotifyStatusReceived):
      (WebCore::NetworkJob::handleNotifyClose):
      (WebCore::NetworkJob::sendRequestWithCredentials):
      (WebCore::NetworkJob::notifyChallengeResult):
      * platform/network/blackberry/NetworkJob.h:
      (NetworkJob):
      
      Source/WebKit/blackberry:
      
      Update WebPage to use new AuthenticationChallengeManager.
      Register page creation/deletion and visibility change to the new
          AuthenticationChallengeManager.
      Initialize AuthenticationChallengeManager in GlobalInitialize() function.
      
      * Api/BlackBerryGlobal.cpp:
      (BlackBerry::WebKit::globalInitialize):
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
      (BlackBerry::WebKit::WebPagePrivate::~WebPagePrivate):
      (BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
      (BlackBerry::WebKit::WebPage::setVisible):
      * Api/WebPage_p.h:
      (WebPagePrivate):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129251 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0cffe019
    • ap@apple.com's avatar
      [WK2] Make Web Inspector work in multiple web process mode · cdcf3092
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97354
      
      Reviewed by Timothy Hatcher.
      
      * UIProcess/mac/WebInspectorProxyMac.mm: (WebKit::WebInspectorProxy::platformCreateInspectorPage):
      Tell WKView that it's related to original page, making inspector page be in the same process.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129250 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cdcf3092
    • hausmann@webkit.org's avatar
      Unreviewed, rolling out r129248. · 55c27406
      hausmann@webkit.org authored
      http://trac.webkit.org/changeset/129248
      https://bugs.webkit.org/show_bug.cgi?id=96000
      
      Broke win build
      
      * Target.pri:
      * WebCore.vcproj/WebCore.vcproj:
      * rendering/RenderingAllInOne.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129249 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      55c27406
    • hausmann@webkit.org's avatar
      Make RenderingAllInOne.cpp usable for ports other than Apple/Win · 24aec3a2
      hausmann@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96000
      
      Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-21
      Reviewed by Ryosuke Niwa.
      
      RenderingAllInOne.cpp unconditionally includes RenderThemeWin. This patch separates
      it out from the file.
      
      * Target.pri: Add RenderingAllInOne.cpp to the list of supported all-in-one files.
      * WebCore.vcproj/WebCore.vcproj: Compile RenderThemeWin.cpp separately.
      * rendering/RenderingAllInOne.cpp: Don't include RenderThemeWin.cpp here.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129248 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      24aec3a2
    • commit-queue@webkit.org's avatar
      REGRESSION (r127882): accessibility/spinbutton-value.html failing on GTK · c985400e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96196
      
      Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-21
      Reviewed by Martin Robinson.
      
      The "regression" is that a new test was added but the support was missing
      in the Gtk port for spin buttons.
      
      Source/WebCore:
      
      No new tests. Instead the new test which had been skipped was unskipped
      as part of this fix.
      
      * accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
      (atkRole): Map SpinButtonRole to ATK_ROLE_SPIN_BUTTON
      (getInterfaceMaskFromObject): Add SpinButtonRole to the roles implementing
      the AtkValue interface.
      
      Tools:
      
      * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
      (AccessibilityUIElement::valueDescription): Updated the FIXME comment to
      indicate that this cannot be implemented until it is implemented in ATK.
      URL of the newly-filed ATK bug included for reference.
      
      LayoutTests:
      
      * platform/gtk/TestExpectations: Unskip the new test.
      * platform/gtk/accessibility/spinbutton-value-expected.txt: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c985400e
    • commit-queue@webkit.org's avatar
      [GTK] [Stable] Infinite recursion in WebCore::AXObjectCache::getOrCreate · 7c58a0dc
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=96932
      
      Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-21
      Reviewed by Martin Robinson.
      
      Source/WebCore:
      
      Make the decision based on RenderObjects rather than AccessibilityObjects
      to avoid the infinite recursion which occurs when remapAriaRoleDueToParent
      gets called.
      
      Test: platform/gtk/accessibility/remapped-aria-crash.html
      
      * accessibility/gtk/AccessibilityObjectAtk.cpp:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      
      LayoutTests:
      
      Added a new test which replicates the recursion and crash.
      
      * platform/gtk/accessibility/remapped-aria-crash-expected.txt: Added.
      * platform/gtk/accessibility/remapped-aria-crash.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129246 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7c58a0dc
    • dpranke@chromium.org's avatar
      Fix test_skip_and_wontfix failure · df97e985
      dpranke@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97225
      
      Unreviewed, build fix.
      
      * Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
      (SemanticTests.test_skip_and_wontfix):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      df97e985
    • commit-queue@webkit.org's avatar
      [BlackBerry] HTML5 media does not handle SSL certificate failures · ac50457e
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93324
      
      Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-09-21
      Reviewed by Eric Carlson.
      
      RIM PR: 116205
      Passed FrameLoaderClientBlackBerry's playerId to MMRPlayer::load()
      because MMRPlayer::load() added playerId as a new parameter, which
      is required to initiate a MediaSSLHandlerStream to deal with
      certificate failure when loading a "https" media url.
      
      Internally reviewed by Joe Mason <jmason@rim.com>.
      
      No new tests since there's no functional change.
      
      * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
      (WebCore::MediaPlayerPrivate::load):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129244 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ac50457e
    • danakj@chromium.org's avatar
      [chromium] Add setters to WebFilterOperation for IPC pickling · faef3c50
      danakj@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97147
      
      Reviewed by James Robinson.
      
      Source/Platform:
      
      These methods allow us to restore a WebFilterOperation from a blob
      of opaque data. The pickling code needs to be able to create an
      empty object and then fill in the pieces, so these setters allow it
      to do so.
      
      Test: WebFilterOperationsTest.saveAndRestore
      
      * chromium/public/WebFilterOperation.h:
      (WebKit::WebFilterOperation::amount):
      (WebKit::WebFilterOperation::dropShadowOffset):
      (WebKit::WebFilterOperation::matrix):
      (WebKit::WebFilterOperation::zoomRect):
      (WebFilterOperation):
      (WebKit::WebFilterOperation::createEmptyFilter):
      (WebKit::WebFilterOperation::setType):
      (WebKit::WebFilterOperation::setAmount):
      (WebKit::WebFilterOperation::setDropShadowOffset):
      (WebKit::WebFilterOperation::setDropShadowColor):
      (WebKit::WebFilterOperation::setMatrix):
      (WebKit::WebFilterOperation::setZoomRect):
      * chromium/src/WebFilterOperation.cpp:
      
      Source/WebKit/chromium:
      
      * tests/FilterOperationsTest.cpp:
      (WebKit):
      (WebKit::TEST):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      faef3c50
    • tony@chromium.org's avatar
      [chromium] Unreviewed, remove duplicate section of WebKit.gyp pointed out by Nico. · 5a2e055e
      tony@chromium.org authored
      * WebKit.gyp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129242 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5a2e055e
    • barraclough@apple.com's avatar
      Global Math object should be configurable but isn't · dd714578
      barraclough@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=55343
      
      Reviewed by Oliver Hunt.
      
      Source/JavaScriptCore: 
      
      This has no performance impact.
      
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::reset):
          - Make 'Math' a regular property.
      
      LayoutTests: 
      
      Added test case.
      
      * fast/js/math-expected.txt:
      * fast/js/script-tests/math.js:
          - Added test case.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129241 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dd714578
    • commit-queue@webkit.org's avatar
      Unreviewed. Rolled DEPS. · 77d1efd8
      commit-queue@webkit.org authored
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-21
      
      * DEPS:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129240 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      77d1efd8
    • commit-queue@webkit.org's avatar
      [WebSocket] Receiving a large message is really slow · 36588dcc
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97237
      
      Patch by Evan Wallace <evan.exe@gmail.com> on 2012-09-21
      Reviewed by Alexey Proskuryakov.
      
      WebSocketChannel always reallocates its internal buffer when it receives
      and appends new data which causes dramatic slowdowns for messages over
      2 MB in size. This patch changes the internal buffer of WebSocketChannel
      from a raw char array to a Vector<char> and uses its amortized append()
      method. This brings the time to receive a 5 MB message from 5.2 seconds
      to 0.25 seconds.
      
      This patch is only for optimization. No new tests are needed.
      
      * Modules/websockets/WebSocketChannel.cpp:
      (WebCore::WebSocketChannel::WebSocketChannel):
      (WebCore::WebSocketChannel::~WebSocketChannel):
      (WebCore::WebSocketChannel::fail):
      (WebCore::WebSocketChannel::resume):
      (WebCore::WebSocketChannel::didReceiveSocketStreamData):
      (WebCore::WebSocketChannel::appendToBuffer):
      (WebCore::WebSocketChannel::skipBuffer):
      (WebCore::WebSocketChannel::processBuffer):
      (WebCore::WebSocketChannel::resumeTimerFired):
      (WebCore::WebSocketChannel::processFrame):
      * Modules/websockets/WebSocketChannel.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129239 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      36588dcc
    • carlosgc@webkit.org's avatar
      [GTK] Implement ViewState methods in PageClientImpl in WebKit2 · b99a79f9
      carlosgc@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97202
      
      Reviewed by Martin Robinson.
      
      Source/WebKit2:
      
      Implement isViewWindowActive(), isViewFocused(), isViewVisible()
      and isViewInWindow() in PageClientImpl.
      
      * GNUmakefile.list.am: Add new files to compilation.
      * UIProcess/API/C/gtk/WKView.cpp:
      (WKViewSetFocus): New private method used by WTR to focus the
      WebView.
      * UIProcess/API/C/gtk/WKViewPrivate.h: Added.
      * UIProcess/API/gtk/PageClientImpl.cpp:
      (WebKit::PageClientImpl::isViewWindowActive): Return
      webkitWebViewBaseIsInWindowActive().
      (WebKit::PageClientImpl::isViewFocused): Return
      webkitWebViewBaseIsFocused().
      (WebKit::PageClientImpl::isViewVisible): Return
      webkitWebViewBaseIsVisible().
      (WebKit::PageClientImpl::isViewInWindow): Return
      webkitWebViewBaseIsInWindow().
      * UIProcess/API/gtk/WebKitWebViewBase.cpp:
      (webkitWebViewBaseNotifyResizerSize): Updated to not receive the
      window as parameter since it's now saved in the instance struct.
      (toplevelWindowResizeGripVisibilityChanged): Update to
      webkitWebViewBaseNotifyResizerSize() API change.
      (toplevelWindowFocusInEvent): Update ViewWindowIsActive flag and
      notify the WebPageProxy if it changed.
      (toplevelWindowFocusOutEvent): Ditto.
      (webkitWebViewBaseSetToplevelOnScreenWindow): Set the toplevel
      on-screen window where the view is currently added and notify
      WebPageProxy if it changed.
      (webkitWebViewBaseRealize): Call
      webkitWebViewBaseSetToplevelOnScreenWindow() if the view has been
      added to an on-screen window.
      (webkitWebViewBaseFinalize): Reset the toplevel on-screen window
      to make sure all signals are disconnected when the view is
      destroyed.
      (webkit_web_view_base_init): Remove unneeded initialization.
      (resizeWebKitWebViewBaseFromAllocation): Update to
      webkitWebViewBaseNotifyResizerSize() API change.
      (webkitWebViewBaseMap): Update ViewIsVisible flag and notify
      WebPageProxy if it changed.
      (webkitWebViewBaseUnmap): Ditto.
      (webkitWebViewBaseFocusInEvent): Call webkitWebViewBaseSetFocus()
      passing true to focus the view.
      (webkitWebViewBaseFocusOutEvent): Call webkitWebViewBaseSetFocus()
      passing false to unfocus the view.
      (webkitWebViewBaseParentSet): Reset the toplevel on-screen window
      if the view is re-parented.
      (webkit_web_view_base_class_init): Add implementations for map and
      parent-set virtual functions.
      (webkitWebViewBaseSetFocus): Update the ViewIsFocused and notify
      WebPageProxy if it changed.
      (webkitWebViewBaseIsInWindowActive):
      (webkitWebViewBaseIsFocused):
      (webkitWebViewBaseIsVisible):
      (webkitWebViewBaseIsInWindow):
      * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
      * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
      (testWebViewMouseTarget): Use a GTK_WINDOW_TOPLEVEL instead of
      POPUP for this test to make sure the view receives focus change
      events.
      
      Tools:
      
      * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
      (WTR::PlatformWebView::focus): Focus the view.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129238 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b99a79f9
    • commit-queue@webkit.org's avatar
      Fix build with ENABLE_WEBGL=false · 1d43a702
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97309
      
      Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-09-21
      Reviewed by Eric Seidel.
      
      WebKit no longer builds when WEBGL is not enabled.
      
      * rendering/FilterEffectRenderer.h:
      (FilterEffectRenderer):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129236 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1d43a702
    • commit-queue@webkit.org's avatar
      [BlackBerry] Media player won't resize for the following source when first source fail to load · 73bd804a
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97342
      
      Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-09-21
      Reviewed by Yong Li.
      
      As platformPlayer will notify MediaPlayerPrivate for size change
      when loading metadata failed (in this case hasVideo() is false),
      we should prevent MediaPlayerPrivate to set width and height
      attribute of media element, otherwise we won't get the correct
      dimension for the following media sources.
      
      Internally reviewed by Max Feil.
      
      Test case: media/video-size.html
      
      * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
      (WebCore::MediaPlayerPrivate::resizeSourceDimensions):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129235 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      73bd804a
    • commit-queue@webkit.org's avatar
      [Qt] REGRESSION: 5 tests started to fail with newer Qt5 · e6eca916
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=90687
      
      Patch by Marcelo Lira <marcelo.lira@openbossa.org> on 2012-09-21
      Reviewed by Luiz Agostini.
      
      When sending null data via POST method in  XMLHttpRequest the
      expected Content-Type "application/x-www-form-urlencoded",
      instead of "application/octet-stream". In fact that was the previously
      expected value for Qt, but was changed to conform to Qt 4.8 results.
      
      The cookie test result was updated to follow RFC 6265 behavior, as
      already does chromium, gtk, and efl.
      
      * platform/qt-5.0/Skipped:
      * platform/qt/http/tests/cookies/double-quoted-value-with-semi-colon-expected.txt: Added.
      * platform/qt/http/tests/xmlhttprequest/methods-expected.txt:
      * platform/qt/http/tests/xmlhttprequest/workers/methods-async-expected.txt:
      * platform/qt/http/tests/xmlhttprequest/workers/methods-expected.txt:
      * platform/qt/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129234 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e6eca916
    • mitz@apple.com's avatar
      REGRESSION (r126763): Incorrect line breaking when both kerning and word spacing are enabled · be32e299
      mitz@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=97280
      
      Reviewed by Adele Peterson.
      
      Source/WebCore: 
      
      Font::width() never applies word spacing to the first character in the TextRun. The
      TextLayout optimization tried to achieve this behavior by not applying word spacing to
      any character, which led to this bug.
      
      Test: fast/text/word-space-with-kerning-2.html
      
      * platform/graphics/mac/ComplexTextController.cpp:
      (WebCore::TextLayout::TextLayout): Changed to use the given font rather than a version
      without word spacing.
      (WebCore::TextLayout::width): Added a check if the run starts with a space at a non-zero
      offset. If that is the case, then the ComplexTextController has added word spacing to that
      space, so subtract it here in order to maintain the behavior described above.
      
      LayoutTests: 
      
      * fast/text/word-space-with-kerning-2-expected.html: Added.
      * fast/text/word-space-with-kerning-2.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129233 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      be32e299
    • commit-queue@webkit.org's avatar
      [WTR] Memory leaks in InjectedBundleController::initialize() · cc123596
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97329
      
      Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-09-21
      Reviewed by Alexey Proskuryakov.
      
      Fix leaks in InjectedBundleController::initialize() by adopting
      strings created with WKStringCreateWithUTF8CString().
      
      * TestWebKitAPI/InjectedBundleController.cpp:
      (TestWebKitAPI::InjectedBundleController::initialize):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129232 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cc123596
    • commit-queue@webkit.org's avatar
      [Qt][WK2] Removed duplicated code from EventSenderProxy::keyDown · 11234b0b
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=97235
      
      Patch by Marcelo Lira <marcelo.lira@openbossa.org> on 2012-09-21
      Reviewed by Luiz Agostini.
      
      * WebKitTestRunner/qt/EventSenderProxyQt.cpp:
      (WTR::EventSenderProxy::keyDown):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129231 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      11234b0b