AX: Webkit2 not sending UAZoomFocusChanged notifications
https://bugs.webkit.org/show_bug.cgi?id=55916

Reviewed by Darin Adler.

Needed to implement the windowToScreen() method so that the right frame
could be calculated to send for zoom focus changes.

* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::windowToScreen):
* UIProcess/API/qt/qwkpage.cpp:
(QWKPagePrivate::windowToScreen):
* UIProcess/API/qt/qwkpage_p.h:
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::windowToScreen):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/win/WebView.cpp:
(WebKit::WebView::windowToScreen):
* UIProcess/win/WebView.h:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::windowToScreen):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::windowToScreen):
* WebProcess/WebPage/WebPage.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80569 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Chris Marrin  <cmarrin@apple.com>

        Reviewed by Darin Adler.

        The first time animations are committed they have a bad start time
        https://bugs.webkit.org/show_bug.cgi?id=55947

        Do a check for a returned lastCommitTime of <=0 and replace it
        with the mediaTime.


        * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
        (WebCore::CACFLayerTreeHost::notifyAnimationsStarted):




git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80570 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Alejandro G. Castro  <alex@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] Add new files to compilation after r77974
        https://bugs.webkit.org/show_bug.cgi?id=54076

        The commit added new code to allow passing context to policy
        delegate methods, we also added dummy ResourceRequest and
        ResourceResponse decoders until we implement them.

        * GNUmakefile.am:
        * Shared/gtk/WebCoreArgumentCodersGtk.cpp:
        (CoreIPC::decodeResourceRequest):
        (CoreIPC::decodeResourceResponse):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80571 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Overflow: scroll areas should not paint white in scroll corner if the 
scrollbars are overlay.
<rdar://problem/9082871>

Reviewed by Anders Carlsson.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintScrollCorner):
Don't paint the scroll corner white if we have overlay scrollbars.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80572 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Darin Adler  <darin@apple.com>

        Reviewed by Timothy Hatcher.

        Promote a method used outside WebKit from internal to private
        https://bugs.webkit.org/show_bug.cgi?id=55949

        * Misc/WebNSPasteboardExtras.mm: Removed an unused category declaration.
        Minor tweak, not directly related to the rest of this patch.

        * WebView/WebFrame.mm:
        (-[WebFrame _computePageRectsWithPrintScaleFactor:pageSize:]): Moved
        this method from the internal category into the private category.
        Streamlined the code a bit.

        * WebView/WebFrameInternal.h: Removed _computePageRects method.
        * WebView/WebFramePrivate.h: Added _computePageRects method.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80573 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Jeff Miller  <jeffm@apple.com>

        Reviewed by Darin Adler.

        Remove Source/WebKit2/UIProcess/API/C/win/WKBaseWin.h
        https://bugs.webkit.org/show_bug.cgi?id=55952

        * UIProcess/API/C/win/WKBaseWin.h: Removed.
        * win/WebKit2.vcproj: Refer to the Shared version of WKBaseWin.h instead of the one in UIProcess.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80574 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Martin Maly  <mmaly@chromium.org>

        Reviewed by Dimitri Glazkov.

        [Chromium] Expectation updates for strict mode V8 features.
        https://bugs.webkit.org/show_bug.cgi?id=55789

        * platform/chromium/fast/js/mozilla/strict/15.5.5.1-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80575 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Tony Chang  <tony@chromium.org>

        Unreviewed, add pngs to chromium and chromium-linux .checksum files
        that are missing pngs.  I generated these on my local desktop.

        * platform/chromium-linux/fast/block/float/clear-element-too-wide-for-containing-block-expected.png: Added.
        * platform/chromium-linux/fast/blockflow/english-bt-text-expected.png: Added.
        * platform/chromium-linux/fast/blockflow/english-lr-text-expected.png: Added.
        * platform/chromium-linux/fast/blockflow/english-rl-text-expected.png: Added.
        * platform/chromium-linux/fast/multicol/border-padding-pagination-expected.png: Added.
        * platform/chromium-linux/fast/multicol/margin-collapse-expected.png: Added.
        * platform/chromium-linux/tables/mozilla/bugs/bug16012-expected.png: Added.
        * platform/chromium/fast/images/png_per_row_alpha_decoding-expected.png: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80576 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, fix last change so WKBaseWin.h is in alphabetical order in the project XML.

* win/WebKit2.vcproj: Move WKBaseWin.h to be in alphabetical order.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80577 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: WK2: Cannot set focus on an element when focus is outside of WKView
https://bugs.webkit.org/show_bug.cgi?id=55281
    
Reviewed by Sam Weinig.

In WK2, focus cannot be set from the WebProcess side because there's no platformWidget().
Instead, the focus/unfocus messages need to be sent to the UIProcess side.

* platform/mac/WidgetMac.mm:
(WebCore::Widget::setFocus):

Source/WebKit2: WK2: Cannot set focus on an element when focus is outside of WKView
https://bugs.webkit.org/show_bug.cgi?id=55281

Reviewed by Sam Weinig.

* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::setFocus):
* UIProcess/API/qt/qwkpage_p.h:
(QWKPagePrivate::setFocus):
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setFocus):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/win/WebView.h:
(WebKit::WebView::setFocus):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::focus):
(WebKit::WebChromeClient::unfocus):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80578 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Nico Weber  <thakis@chromium.org>

        Reviewed by James Robinson.

        Crash on big blur radius with canvas
        https://bugs.webkit.org/show_bug.cgi?id=55951

        * fast/canvas/shadow-huge-blur-expected.txt: Added.
        * fast/canvas/shadow-huge-blur.html: Added.
2011-03-08  Nico Weber  <thakis@chromium.org>

        Reviewed by James Robinson.

        Crash on big blur radius with canvas
        https://bugs.webkit.org/show_bug.cgi?id=55951

        Move the clamping code out of an if branch, so that it happens in the
        canvas case as well.

        Test: fast/canvas/shadow-huge-blur.html

        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::setPlatformShadow):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80579 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        addInlineStyleIfNeeded should take EditingStyle
        https://bugs.webkit.org/show_bug.cgi?id=55950

        Deployed EditingStyle in addInlineStyleIfNeeded, StyleChange::StyleChange, and StyleChange::init.
        Also extracted EditingStyle::styleIsPresentInComputedStyleOfNode from removeStyleFromRunBeforeApplyingStyle.

        * editing/ApplyStyleCommand.cpp:
        (WebCore::StyleChange::StyleChange): Takes EditingStyle instead of CSSStyleDeclaration.
        (WebCore::StyleChange::init): Ditto.
        (WebCore::ApplyStyleCommand::applyBlockStyle): Instantiates StyleChange.
        (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Calls addInlineStyleIfNeeded.
        (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Calls styleIsPresentInComputedStyleOfNode.
        (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Calls EditingStyle::mergeInlineStyleOfElement
        instead of manually merging styles.
        (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Calls addInlineStyleIfNeeded.
        (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Takes EditingStyle instead of CSSMutableStyleDeclaration.
        * editing/ApplyStyleCommand.h:
        * editing/CompositeEditCommand.h:
        * editing/EditingStyle.cpp:
        (WebCore::EditingStyle::styleIsPresentInComputedStyleOfNode): Extracted from removeStyleFromRunBeforeApplyingStyle.
        * editing/EditingStyle.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80580 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Alejandro G. Castro  <alex@igalia.com>

        Unreviewed, fixed GTK+ compilation after r80569.

        * UIProcess/gtk/WebView.cpp:
        (WebKit::WebView::windowToScreen):
        * UIProcess/gtk/WebView.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80581 268f45cc-cd09-0410-ab3c-d52691b4dbfc
https://bugs.webkit.org/show_bug.cgi?id=48540, support the text-orientation CSS property.
        
Reviewed by Dan Bernstein.

This patch adds support for two values of the text-orientation property (the ones that actually matter): vertical-right and upright.
The TextOrientation is part of the FontDescription and used to look up fonts (similar to FontOrientation).
        
Orientation of non-CJK characters is done using fallback font data of the appropriate orientation type, e.g., verticalRightOrientation and
uprightOrientation fallback font data.  Vertical right is just implemented as a normal horizontal font.  Upright is implemented as a
vertically oriented font that rotates all glyphs.
        
The main complication implementing text-orientation is that fonts have "baked-in" vertical glyphs for letters that are hardcoded to
a vertical right facing.  This means that you can use those special vertical glyphs for vertical-right orientation without having to 
fall back, but then for upright orientation you have to ignore them and still fall back.  As you can see from the test case, this doesn't
work very well, but hopefully it won't be all that common.  Limitations of CoreText prevent this case from rendering properly in either the
simple or complex code paths, although the simple code path at least gets close.

Added fast/blockflow/text-orientation-basic.html

Source/WebCore: 

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSFontFaceSource.cpp:
(WebCore::CSSFontFaceSource::getFontData):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator TextOrientation):
* css/CSSPropertyNames.in:
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyDeclarations):
(WebCore::CSSStyleSelector::applyProperty):
* css/CSSValueKeywords.in:
* loader/cache/CachedFont.cpp:
(WebCore::CachedFont::platformDataFromCustomData):
* loader/cache/CachedFont.h:
* platform/graphics/FontCache.cpp:
(WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
(WebCore::FontPlatformDataCacheKey::operator==):
(WebCore::computeHash):
(WebCore::FontCache::getCachedFontPlatformData):
* platform/graphics/FontDescription.h:
(WebCore::FontDescription::FontDescription):
(WebCore::FontDescription::textOrientation):
(WebCore::FontDescription::setTextOrientation):
(WebCore::FontDescription::operator==):
* platform/graphics/FontFastPath.cpp:
(WebCore::Font::glyphDataForCharacter):
(WebCore::offsetToMiddleOfGlyph):
* platform/graphics/SimpleFontData.cpp:
(WebCore::SimpleFontData::SimpleFontData):
(WebCore::SimpleFontData::verticalRightOrientationFontData):
(WebCore::SimpleFontData::uprightOrientationFontData):
(WebCore::SimpleFontData::brokenIdeographFontData):
(WebCore::SimpleFontData::DerivedFontData::~DerivedFontData):
* platform/graphics/SimpleFontData.h:
(WebCore::SimpleFontData::hasVerticalGlyphs):
(WebCore::SimpleFontData::isTextOrientationFallback):
* platform/graphics/cairo/FontCustomPlatformData.h:
* platform/graphics/cocoa/FontPlatformData.h:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::textOrientation):
(WebCore::FontPlatformData::hash):
(WebCore::FontPlatformData::operator==):
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::operator=):
* platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* platform/graphics/haiku/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* platform/graphics/haiku/FontCustomPlatformData.h:
* platform/graphics/mac/ComplexTextControllerCoreText.cpp:
(WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
* platform/graphics/mac/FontCacheMac.mm:
(WebCore::FontCache::createFontPlatformData):
* platform/graphics/mac/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* platform/graphics/mac/FontCustomPlatformData.h:
* platform/graphics/mac/FontMac.mm:
(WebCore::showGlyphsWithAdvances):
(WebCore::Font::drawGlyphs):
* platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
(WebCore::shouldUseCoreText):
(WebCore::GlyphPage::fill):
* platform/graphics/mac/SimpleFontDataCoreText.cpp:
(WebCore::SimpleFontData::getCFStringAttributes):
* platform/graphics/mac/SimpleFontDataMac.mm:
(WebCore::SimpleFontData::platformInit):
(WebCore::SimpleFontData::platformBoundsForGlyph):
(WebCore::SimpleFontData::platformWidthForGlyph):
* platform/graphics/pango/FontCustomPlatformDataPango.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* platform/graphics/qt/FontCustomPlatformData.h:
* platform/graphics/qt/FontCustomPlatformDataQt.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* platform/graphics/skia/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* platform/graphics/skia/FontCustomPlatformData.h:
* platform/graphics/win/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* platform/graphics/win/FontCustomPlatformData.h:
* platform/graphics/win/FontCustomPlatformDataCairo.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* platform/graphics/win/FontCustomPlatformDataCairo.h:
* platform/graphics/wince/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::fontPlatformData):
* platform/graphics/wince/FontCustomPlatformData.h:
* platform/text/TextOrientation.h: Added.
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::requiresIdeographicBaseline):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::initialTextOrientation):

LayoutTests: 

* fast/blockflow/text-orientation-basic.html: Added.
* platform/mac/fast/blockflow/text-orientation-basic-expected.checksum: Added.
* platform/mac/fast/blockflow/text-orientation-basic-expected.png: Added.
* platform/mac/fast/blockflow/text-orientation-basic-expected.txt: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80582 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix Lion build bustage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80583 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Alok priyadarshi  <alokp@chromium.org>

        Reviewed by Dimitri Glazkov.

        Plugins needs a way to trigger style recalc
        https://bugs.webkit.org/show_bug.cgi?id=55242

        No test needed. A simple get function is added.

        * platform/graphics/chromium/PluginLayerChromium.h:
        (WebCore::PluginLayerChromium::getTextureId):
2011-03-08  Alok priyadarshi  <alokp@chromium.org>

        Reviewed by Dimitri Glazkov.

        Plugins needs a way to trigger style recalc
        https://bugs.webkit.org/show_bug.cgi?id=55242

        It will be tested by Pepper2D and Pepper3D layout/smoke tests
        on the Chromium side.

        * public/WebPluginContainer.h:
        * src/WebPluginContainerImpl.cpp:
        (WebKit::WebPluginContainerImpl::setBackingTextureId):
        * src/WebPluginContainerImpl.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80584 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reverted the patch for https://bugs.webkit.org/show_bug.cgi?id=55940
        
The patch was insufficient, and it wasn't useful for the intended client use either.

* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80585 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Crash in CFNetwork visiting google.com
https://bugs.webkit.org/show_bug.cgi?id=55958

Reviewed by Anders Carlsson.

Source/WebKit2: 

* Shared/API/c/cf/WKURLResponseCF.cpp:
(WKURLResponseCopyCFURLResponse):
If the response to copy is null, return 0;

Tools: 

Add a test for not trying to copy a null CFURLResponse.

* TestWebKitAPI/Tests/WebKit2/win/DoNotCopyANullCFURLResponse.cpp: Added.
(TestWebKitAPI::TEST):
* TestWebKitAPI/win/TestWebKitAPI.vcproj:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80586 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Joe Wild  <joseph.wild@nokia.com>

        Reviewed by Csaba Osztrogonác.

        [Qt] Missing SVG variables
        https://bugs.webkit.org/show_bug.cgi?id=32941

        Basically, this patch just modifies features.pri to the Qt build to
        pass on the ENABLE_SVG_* flags to the IDL binding generator.

        Also I had remove global-construtors.html from the skip list and
        updated the associated expected results files.

        * platform/qt/Skipped:
        * platform/qt/fast/dom/Window/window-properties-expected.txt:
        * platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
        * platform/qt/fast/dom/prototype-inheritance-expected.txt:
        * platform/qt/fast/js/global-constructors-expected.txt:
2011-03-08  Joe Wild  <joseph.wild@nokia.com>

        Reviewed by Csaba Osztrogonác.

        [Qt] Missing SVG variables
        https://bugs.webkit.org/show_bug.cgi?id=32941

        Basically, this patch just modifies features.pri to the Qt build to
        pass on the ENABLE_SVG_* flags to the IDL binding generator.

        Also I had remove global-construtors.html from the skip list and
        updated the associated expected results files.

        * features.pri:
        * page/DOMWindow.idl:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80587 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-03-08  Martin Robinson  <mrobinson@igalia.com>

        Fix the WebKit2 compilation after r80578.

        * UIProcess/gtk/WebView.cpp:
        (WebKit::WebView::setFocus): Added.
        * UIProcess/gtk/WebView.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80588 268f45cc-cd09-0410-ab3c-d52691b4dbfc