Index: Source/WebCore/ChangeLog |
=================================================================== |
--- Source/WebCore/ChangeLog (revision 79604) |
+++ Source/WebCore/ChangeLog (working copy) |
@@ -1,1715 +1,3 @@ |
-2011-02-19 Charlie Reis <creis@chromium.org> |
- |
- Reviewed by Mihai Parparita. |
- |
- Ensure loading has stopped in HistoryController::goToItem |
- https://bugs.webkit.org/show_bug.cgi?id=54517 |
- |
- Avoid stopping all loaders in goToItem for same document navigations |
- or pseudo-back-forward URLs. Make HistoryController::goToItem private |
- to force callers to go through Page::goToItem. Also add a callback to |
- FrameLoaderClient to let clients decide whether to stop loading first. |
- |
- Test: http/tests/navigation/forward-to-fragment-fires-onload.html |
- |
- * loader/EmptyClients.h: |
- * loader/FrameLoader.h: |
- * loader/FrameLoaderClient.h: |
- * loader/HistoryController.cpp: |
- * loader/HistoryController.h: |
- * page/Page.cpp: |
- |
-2011-02-19 Adam Barth <abarth@webkit.org> |
- |
- Reviewed by Daniel Bates. |
- |
- Fix xssAuditor/iframe-injection.html |
- https://bugs.webkit.org/show_bug.cgi?id=54591 |
- |
- We should block the iframe src attribute. Although this technically |
- can't be used to run script, it's a pretty easy vector for stealing |
- passwords. |
- |
- * html/parser/XSSFilter.cpp: |
- (WebCore::XSSFilter::filterTokenInitial): |
- (WebCore::XSSFilter::filterIframeToken): |
- * html/parser/XSSFilter.h: |
- |
-2011-02-18 Tony Gentilcore <tonyg@chromium.org> |
- |
- Reviewed by Eric Seidel. |
- |
- Let the parser yield for layout before running scripts |
- https://bugs.webkit.org/show_bug.cgi?id=54355 |
- |
- Prior to this patch, the parser would yield to perform a layout/paint before running a |
- script only if the script or a stylesheet blocking the script is not loaded yet. Since we |
- don't preload scan into the body while parsing the head, typically we'll block on a script |
- early in the body that causes us to yield to do the first paint within a reasonable time. |
- |
- However, I'm planning to change the PreloadScanner to scan into the body from the head. |
- That significantly improves overall load time, but would hurt first paint time because |
- fewer scripts would be blocked during parsing and thus wouldn't yield. |
- |
- This change causes us to yield before running scripts if we haven't painted yet (regardless |
- of whether or not the script is loaded). In addition to allowing the above mentioned |
- PreloadScanner change to be implemented without regressing first paint time, this also |
- improves first paint time by itself. |
- |
- I tested Alexa's top 45 websites using Web Page Replay to control the content and simulate |
- bandwidth. This patch improved average first paint time by 1% over an unlimited connection, |
- 6% over a 1Mbps connection and 11% over a 5Mbps connection. There was no statistically |
- signifcant change in page load time. |
- |
- Within the pages tested, 33 had no statistically significant change in time to first paint, |
- 12 improved, and none regressed. Of the improved, some of the standouts from the 1Mbps set |
- are: 20% on youtube, 37% on wiki, 27% on ebay, 13% on cnn, 16% on espn, 74% on sohu. |
- |
- * html/parser/HTMLDocumentParser.cpp: |
- (WebCore::HTMLDocumentParser::canTakeNextToken): This is the new yield point. |
- (WebCore::HTMLDocumentParser::pumpTokenizer): Remove ASSERT that we are not paused. isPaused |
- means that we are waiting for a script. Bug 54574 changed pumpTokenizer() so that it does |
- the right thing whether we are just before a token or waiting for a script. Now that we may |
- yield before a token or before a script, this may be called while paused. |
- * html/parser/HTMLParserScheduler.cpp: |
- (WebCore::isLayoutTimerActive): Added a FIXME because r52919 changed minimumLayoutDelay() |
- to return m_extraLayoutDelay instead of 0 as a minimum. So checking !minimumLayoutDelay() |
- no longer works. The fix is to change it to check minimumLayoutDelay() == |
- m_extraLayoutDelay. But this is all the more reason to move this method onto Document. I'll |
- do this in a follow up. |
- (WebCore::HTMLParserScheduler::checkForYieldBeforeScript): Added. |
- * page/FrameView.h: |
- (WebCore::FrameView::hasEverPainted): Added. |
- |
-2011-02-18 Dawit Alemayehu <adawit@kde.org> |
- |
- Reviewed by Andreas Kling. |
- |
- [Qt] Button Element is rendered w/ text off-center. |
- https://bugs.webkit.org/show_bug.cgi?id=53373 |
- |
- Test: LayoutTests/fast/forms/button-white-space.html |
- |
- * platform/qt/RenderThemeQt.cpp: |
- (WebCore::RenderThemeQt::adjustButtonStyle): |
- |
-2011-02-18 Jonathan Backer <backer@chromium.org> |
- |
- Reviewed by Eric Seidel. |
- |
- [chromium] Fix leak of texture IDs in compositor. |
- https://bugs.webkit.org/show_bug.cgi?id=54750 |
- |
- No new tests. It is extremely unlikely that this leak would have |
- any user visible impact because only a few bytes of space are wasted |
- (we're leaking texture IDs, not actual textures) and the space of |
- texture IDs is large (32 bits). |
- |
- * platform/graphics/chromium/TextureManager.cpp: |
- (WebCore::TextureManager::requestTexture): |
- |
-2011-02-18 Yi Shen <yi.4.shen@nokia.com> |
- |
- Reviewed by Tor Arne Vestbø. |
- |
- Always display the media controls when requiresFullscreenForVideoPlayback() is true |
- https://bugs.webkit.org/show_bug.cgi?id=54308 |
- |
- For video element, it should have controls when |
- Chrome::requiresFullscreenForVideoPlayback() is true. |
- |
- * html/HTMLMediaElement.cpp: |
- (WebCore::HTMLMediaElement::controls): |
- |
-2011-02-18 Adrienne Walker <enne@google.com> |
- |
- Reviewed by Kenneth Russell. |
- |
- [chromium] Use nearest-neighbor filtering for root layer. |
- https://bugs.webkit.org/show_bug.cgi?id=54409 |
- https://bugs.webkit.org/show_bug.cgi?id=54509 |
- |
- This setting creates more consistent images for LayoutTests and |
- prevents small floating point errors in texture coordinates from |
- creating off-by-one pixel color differences. |
- |
- * platform/graphics/chromium/LayerTilerChromium.cpp: |
- (WebCore::LayerTilerChromium::update): |
- |
-2011-02-18 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
- |
- Reviewed by Kent Tamura. |
- |
- [EFL] Fix coding style errors in RenderThemeEfl.h |
- https://bugs.webkit.org/show_bug.cgi?id=54693 |
- |
- Fix style errors in RenderThemeEfl.h |
- |
- * platform/efl/RenderThemeEfl.h: |
- |
-2011-02-18 Ademar de Souza Reis Jr <ademar.reis@openbossa.org> |
- |
- Reviewed by Andreas Kling. |
- |
- [Qt] The localized vendor name for Qt SIS packages should be "Nokia" |
- https://bugs.webkit.org/show_bug.cgi?id=54742 |
- |
- This change was applied in the Qt repository (qt/src/3rdparty/webkit), |
- so we should do the same here in QtWebKit. |
- |
- Patch by Eckhart Koppen <eckhart.koppen@nokia.com> |
- a8a84f1667966acfa093c4be0b7d4b0900ddd3d9: |
- |
- The previously used name "Nokia, Qt" was not usable for Nokia |
- Content Signing, which only allows "Nokia" as the visible vendor |
- name. The unique vendor ID remains as "Nokia, Qt" |
- |
- * WebCore.pro: |
- |
-2011-02-18 Alexis Menard <alexis.menard@openbossa.org> |
- |
- Reviewed by Andreas Kling. |
- |
- [Qt] REGRESSION(r67516) : on www.gmail.com a strange rendering issue appears on the |
- menu bar due to flash. |
- https://bugs.webkit.org/show_bug.cgi?id=54741 |
- |
- Only show plugins with a valid size. We then don't involve X11 if there is |
- nothing to see anyway. |
- |
- * plugins/qt/PluginViewQt.cpp: |
- (WebCore::PluginView::updatePluginWidget): |
- (WebCore::PluginView::platformStart): |
- |
-2011-02-18 Ryuan Choi <ryuan.choi@samsung.com> |
- |
- Reviewed by Kent Tamura. |
- |
- [EFL] Remove GDK dependency. |
- https://bugs.webkit.org/show_bug.cgi?id=53978 |
- |
- Remove GLIB_SUPPORT macro in GDK related code. |
- Regardless of GLIB_SUPPORT, getDefaultFontOptions() will works same way. |
- |
- * CMakeListsEfl.txt: |
- * platform/graphics/freetype/FontPlatformDataFreeType.cpp: |
- (WebCore::getDefaultFontOptions): |
- |
-2011-02-18 Noel Gordon <noel.gordon@gmail.com> |
- |
- Reviewed by James Robinson. |
- |
- [Chromium] Add elliptical gradient support to GradientSkia |
- https://bugs.webkit.org/show_bug.cgi?id=51841 |
- |
- Covered by existing tests, these need new rebaselines once this patch |
- lands for chrome linux, win32 |
- |
- fast/gradients/css3-color-stop-units.html |
- fast/gradients/css3-color-stops.html |
- fast/gradients/css3-linear-angle-gradients.html |
- fast/gradients/css3-radial-gradients.html |
- fast/gradients/css3-radial-gradients2.html |
- fast/gradients/css3-radial-gradients3.html |
- fast/gradients/css3-repeating-radial-gradients.html |
- |
- * platform/graphics/skia/GradientSkia.cpp: |
- (WebCore::Gradient::platformGradient): |
- |
-2011-02-18 James Robinson <jamesr@chromium.org> |
- |
- Fix typo in boundary test in ASSERT() - test is for an inclusive range, not exclusive. |
- |
- * platform/graphics/chromium/ContentLayerChromium.cpp: |
- (WebCore::ContentLayerChromium::updateTextureIfNeeded): |
- |
-2011-02-18 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com> |
- |
- Reviewed by Kenneth Rohde Christiansen. |
- |
- Tiled backing store area is too big. |
- Error in area calculcation causes size of backing store |
- up to 6 times bigger than viewport with default multipliers. |
- https://bugs.webkit.org/show_bug.cgi?id=54587 |
- |
- * platform/graphics/TiledBackingStore.cpp: |
- (WebCore::TiledBackingStore::createTiles): |
- |
-2011-02-18 Beth Dakin <bdakin@apple.com> |
- |
- Reviewed by Sam Weinig. |
- |
- Fix for <rdar://problem/9018729> Horizontal scroller doesn't |
- appear when loading a page with a Horizontal scrollbar from |
- the back/forward cache. |
- |
- This patch adds a new bool member variable to FrameView to |
- keep track of whether we are loading a page from the back/ |
- forward cache. If we are, don't suppress scrollbars on |
- first layout. |
- * history/CachedFrame.cpp: |
- (WebCore::CachedFrameBase::restore): |
- * page/FrameView.cpp: |
- (WebCore::FrameView::FrameView): |
- (WebCore::FrameView::reset): |
- (WebCore::FrameView::layout): |
- * page/FrameView.h: |
- (WebCore::FrameView::setIsRestoringFromBackForward): |
- (WebCore::FrameView::isRestoringFromBackForward): |
- |
-2011-02-18 Patrick Gansterer <paroga@webkit.org> |
- |
- Unreviewed WinCE build fix for r78846. |
- |
- * platform/graphics/wince/FontWinCE.cpp: |
- (WebCore::TextRunComponent::TextRunComponent): |
- * platform/graphics/wince/GraphicsContextWinCE.cpp: |
- (WebCore::GraphicsContext::drawLineForText): |
- (WebCore::GraphicsContext::drawLineForTextChecking): |
- (WebCore::GraphicsContext::drawText): |
- * platform/wince/FileChooserWinCE.cpp: |
- (WebCore::FileChooser::basenameForWidth): |
- |
-2011-02-18 Emil A Eklund <eae@chromium.org> |
- |
- Reviewed by Darin Adler. |
- |
- Crash in EventHandler::sendContextMenuEventForKey |
- https://bugs.webkit.org/show_bug.cgi?id=54495 |
- |
- Test: fast/events/menu-keydown-on-hidden-element.html |
- |
- * page/EventHandler.cpp: |
- (WebCore::EventHandler::sendContextMenuEventForKey): Add null check. |
- |
-2011-02-15 Adrienne Walker <enne@google.com> |
- |
- Reviewed by James Robinson. |
- |
- [chromium] Clean up shader code from LayerChromium classes |
- https://bugs.webkit.org/show_bug.cgi?id=54484 |
- |
- This is a refactoring and there should be no change in functionality. |
- All shader code is pulled out into classes in ShaderChromium. |
- The SharedValues classes are now turned into ProgramBinding, one per |
- shader program. These contain shader classes that know about what |
- variables they can bind. |
- |
- * WebCore.gypi: |
- * platform/graphics/chromium/CanvasLayerChromium.cpp: |
- (WebCore::CanvasLayerChromium::draw): |
- * platform/graphics/chromium/CanvasLayerChromium.h: |
- * platform/graphics/chromium/ContentLayerChromium.cpp: |
- (WebCore::ContentLayerChromium::draw): |
- * platform/graphics/chromium/ContentLayerChromium.h: |
- * platform/graphics/chromium/GeometryBinding.cpp: Added. |
- (WebCore::GeometryBinding::GeometryBinding): |
- (WebCore::GeometryBinding::~GeometryBinding): |
- (WebCore::GeometryBinding::prepareForDraw): |
- * platform/graphics/chromium/GeometryBinding.h: Copied from Source/WebCore/platform/graphics/chromium/PluginLayerChromium.h. |
- (WebCore::GeometryBinding::initialized): |
- (WebCore::GeometryBinding::context): |
- (WebCore::GeometryBinding::quadVerticesVbo): |
- (WebCore::GeometryBinding::quadElementsVbo): |
- (WebCore::GeometryBinding::positionAttribLocation): |
- (WebCore::GeometryBinding::texCoordAttribLocation): |
- * platform/graphics/chromium/LayerChromium.cpp: |
- (WebCore::LayerChromium::drawDebugBorder): |
- * platform/graphics/chromium/LayerChromium.h: |
- * platform/graphics/chromium/LayerRendererChromium.cpp: |
- (WebCore::LayerRendererChromium::drawLayers): |
- (WebCore::LayerRendererChromium::initializeSharedObjects): |
- (WebCore::LayerRendererChromium::cleanupSharedObjects): |
- * platform/graphics/chromium/LayerRendererChromium.h: |
- (WebCore::LayerRendererChromium::sharedGeometry): |
- (WebCore::LayerRendererChromium::borderProgram): |
- (WebCore::LayerRendererChromium::contentLayerProgram): |
- (WebCore::LayerRendererChromium::canvasLayerProgram): |
- (WebCore::LayerRendererChromium::videoLayerRGBAProgram): |
- (WebCore::LayerRendererChromium::videoLayerYUVProgram): |
- (WebCore::LayerRendererChromium::pluginLayerProgram): |
- (WebCore::LayerRendererChromium::renderSurfaceProgram): |
- (WebCore::LayerRendererChromium::renderSurfaceMaskProgram): |
- (WebCore::LayerRendererChromium::tilerProgram): |
- * platform/graphics/chromium/LayerTilerChromium.cpp: |
- (WebCore::LayerTilerChromium::draw): |
- (WebCore::LayerTilerChromium::drawTexturedQuad): |
- * platform/graphics/chromium/LayerTilerChromium.h: |
- * platform/graphics/chromium/PluginLayerChromium.cpp: |
- (WebCore::PluginLayerChromium::draw): |
- * platform/graphics/chromium/PluginLayerChromium.h: |
- * platform/graphics/chromium/ProgramBinding.cpp: Added. |
- (WebCore::ProgramBindingBase::ProgramBindingBase): |
- (WebCore::ProgramBindingBase::~ProgramBindingBase): |
- (WebCore::ProgramBindingBase::init): |
- (WebCore::ProgramBindingBase::loadShader): |
- (WebCore::ProgramBindingBase::createShaderProgram): |
- * platform/graphics/chromium/ProgramBinding.h: Added. |
- (WebCore::ProgramBindingBase::program): |
- (WebCore::ProgramBindingBase::initialized): |
- (WebCore::ProgramBinding::ProgramBinding): |
- (WebCore::ProgramBinding::vertexShader): |
- (WebCore::ProgramBinding::fragmentShader): |
- * platform/graphics/chromium/RenderSurfaceChromium.cpp: |
- (WebCore::RenderSurfaceChromium::drawSurface): |
- * platform/graphics/chromium/RenderSurfaceChromium.h: |
- * platform/graphics/chromium/ShaderChromium.cpp: Added. |
- (WebCore::VertexShaderPosTex::VertexShaderPosTex): |
- (WebCore::VertexShaderPosTex::init): |
- (WebCore::VertexShaderPosTex::getShaderString): |
- (WebCore::VertexShaderPosTexYUVStretch::VertexShaderPosTexYUVStretch): |
- (WebCore::VertexShaderPosTexYUVStretch::init): |
- (WebCore::VertexShaderPosTexYUVStretch::getShaderString): |
- (WebCore::VertexShaderPos::VertexShaderPos): |
- (WebCore::VertexShaderPos::init): |
- (WebCore::VertexShaderPos::getShaderString): |
- (WebCore::VertexShaderPosTexTransform::VertexShaderPosTexTransform): |
- (WebCore::VertexShaderPosTexTransform::init): |
- (WebCore::VertexShaderPosTexTransform::getShaderString): |
- (WebCore::FragmentTexAlphaBinding::FragmentTexAlphaBinding): |
- (WebCore::FragmentTexAlphaBinding::init): |
- (WebCore::FragmentShaderRGBATexFlipAlpha::getShaderString): |
- (WebCore::FragmentShaderRGBATexAlpha::getShaderString): |
- (WebCore::FragmentShaderBGRATexAlpha::getShaderString): |
- (WebCore::FragmentShaderRGBATexAlphaMask::FragmentShaderRGBATexAlphaMask): |
- (WebCore::FragmentShaderRGBATexAlphaMask::init): |
- (WebCore::FragmentShaderRGBATexAlphaMask::getShaderString): |
- (WebCore::FragmentShaderYUVVideo::FragmentShaderYUVVideo): |
- (WebCore::FragmentShaderYUVVideo::init): |
- (WebCore::FragmentShaderYUVVideo::getShaderString): |
- (WebCore::FragmentShaderColor::FragmentShaderColor): |
- (WebCore::FragmentShaderColor::init): |
- (WebCore::FragmentShaderColor::getShaderString): |
- * platform/graphics/chromium/ShaderChromium.h: Added. |
- (WebCore::VertexShaderPosTex::matrixLocation): |
- (WebCore::VertexShaderPosTexYUVStretch::matrixLocation): |
- (WebCore::VertexShaderPosTexYUVStretch::yWidthScaleFactorLocation): |
- (WebCore::VertexShaderPosTexYUVStretch::uvWidthScaleFactorLocation): |
- (WebCore::VertexShaderPos::matrixLocation): |
- (WebCore::VertexShaderPosTexTransform::matrixLocation): |
- (WebCore::VertexShaderPosTexTransform::texTransformLocation): |
- (WebCore::FragmentTexAlphaBinding::alphaLocation): |
- (WebCore::FragmentTexAlphaBinding::samplerLocation): |
- (WebCore::FragmentShaderRGBATexAlphaMask::alphaLocation): |
- (WebCore::FragmentShaderRGBATexAlphaMask::samplerLocation): |
- (WebCore::FragmentShaderRGBATexAlphaMask::maskSamplerLocation): |
- (WebCore::FragmentShaderYUVVideo::yTextureLocation): |
- (WebCore::FragmentShaderYUVVideo::uTextureLocation): |
- (WebCore::FragmentShaderYUVVideo::vTextureLocation): |
- (WebCore::FragmentShaderYUVVideo::alphaLocation): |
- (WebCore::FragmentShaderYUVVideo::ccMatrixLocation): |
- (WebCore::FragmentShaderYUVVideo::signAdjLocation): |
- (WebCore::FragmentShaderColor::colorLocation): |
- * platform/graphics/chromium/VideoLayerChromium.cpp: |
- (WebCore::VideoLayerChromium::draw): |
- (WebCore::VideoLayerChromium::drawYUV): |
- (WebCore::VideoLayerChromium::drawRGBA): |
- * platform/graphics/chromium/VideoLayerChromium.h: |
- |
-2011-02-18 James Robinson <jamesr@chromium.org> |
- |
- Reviewed by Kenneth Russell. |
- |
- [chromium] Update texture for ContentLayerChromiums in draw() call instead of updateContents..() call |
- https://bugs.webkit.org/show_bug.cgi?id=54315 |
- |
- This defers all operations on the compositor's GL context until the |
- draw() call which is a prerequisite for moving the draw() off-thread. |
- Also cleans up the update cycle a bit - there were some unused local |
- variables and whatnot. |
- |
- One consequence of this change is that the upload buffer is retained |
- across updates now instead of allocated by each paint. This is |
- necessary so that the full layer contents can be uploaded if the |
- texture manager evicts the layer's backing texture. This costs more |
- persistent memory but avoids lots of allocator churn on updates. |
- Another nonobvious detail is that I have to update the texture for |
- ContentLayerChromiums in bindContentsTexture() because mask layers |
- never draw(), they are instead bound to the secondary texture unit. |
- |
- * platform/graphics/chromium/ContentLayerChromium.cpp: |
- (WebCore::ContentLayerChromium::requiresClippedUpdateRect): |
- (WebCore::ContentLayerChromium::updateContentsIfDirty): |
- (WebCore::ContentLayerChromium::resizeUploadBufferForImage): |
- (WebCore::ContentLayerChromium::resizeUploadBuffer): |
- (WebCore::SkBitmapConditionalAutoLockerPixels::SkBitmapConditionalAutoLockerPixels): |
- (WebCore::SkBitmapConditionalAutoLockerPixels::~SkBitmapConditionalAutoLockerPixels): |
- (WebCore::SkBitmapConditionalAutoLockerPixels::lockPixels): |
- (WebCore::ContentLayerChromium::updateTextureIfNeeded): |
- (WebCore::ContentLayerChromium::draw): |
- (WebCore::ContentLayerChromium::unreserveContentsTexture): |
- (WebCore::ContentLayerChromium::bindContentsTexture): |
- * platform/graphics/chromium/ContentLayerChromium.h: |
- * platform/graphics/chromium/ImageLayerChromium.cpp: |
- (WebCore::ImageLayerChromium::updateContentsIfDirty): |
- * platform/graphics/chromium/LayerChromium.cpp: |
- (WebCore::LayerChromium::setBounds): |
- * platform/graphics/chromium/LayerChromium.h: |
- |
-2011-02-18 Kenneth Russell <kbr@google.com> |
- |
- Unreviewed, Chromium build fix on certain Linux platforms. |
- |
- * platform/graphics/gpu/LoopBlinnSolidFillShader.cpp: |
- |
-2011-02-18 Mahesh Kulkarni <mahesh.kulkarni@nokia.com> |
- |
- Reviewed by Kenneth Rohde Christiansen. |
- |
- [Qt] Implement client based geolocation for qtport |
- https://bugs.webkit.org/show_bug.cgi?id=42629 |
- |
- Implements client based geolocation for qtwebkit. Removed old code related to non-client based geolocation |
- |
- No tests as yet. This will be raised as different bug as new mock client implementation need to be done. |
- |
- * WebCore.pro: |
- * features.pri: |
- * platform/qt/GeolocationServiceQt.cpp: Removed. |
- * platform/qt/GeolocationServiceQt.h: Removed. |
- |
-2011-02-18 Yael Aharon <yael.aharon@nokia.com> |
- |
- Reviewed by Dave Hyatt. |
- |
- Add support for dir=auto |
- https://bugs.webkit.org/show_bug.cgi?id=50916 |
- |
- When an element has dir attribute with value "auto", call defaultWritingMode |
- to find its directionality. |
- Added a flag SelfOrAncestorHasDirAutoFlag, and added hooks in the DOM to set |
- and check this flag. This flag is set on every node between an element with |
- dir=auto attribute and its first text node. Changes in the DOM between those |
- elements will trigger re-evaluating the directionality, but changes not |
- between those element do not need to be concerned. |
- The DOM hooks were added to childrenChanged, and to parseMappedAttribute. |
- The directionality is evaluated when children are added, and cleared when they are |
- removed. Directionality flag is also cleared on a child that is no longer determining |
- the directionality due to a sibling being added before that child. |
- |
- Added 2 static CSSMutableStyleDeclarations to be used for elements with dir=auto. |
- We cannot used the mapped declaration, because it can take only one value. |
- |
- Tests: fast/dom/HTMLElement/attr-dir-auto-change-before-text-node.html |
- fast/dom/HTMLElement/attr-dir-auto-change-child-node.html |
- fast/dom/HTMLElement/attr-dir-auto-change-text.html |
- fast/dom/HTMLElement/attr-dir-auto-children.html |
- fast/dom/HTMLElement/attr-dir-auto-remove-add-children.html |
- fast/dom/HTMLElement/attr-dir-auto.html |
- fast/dom/HTMLElement/attr-dir-value-change.html |
- |
- * css/CSSStyleSelector.cpp: |
- (WebCore::leftToRightDeclaration): |
- (WebCore::rightToLeftDeclaration): |
- (WebCore::CSSStyleSelector::canShareStyleWithElement): |
- (WebCore::CSSStyleSelector::styleForElement): |
- * dom/Node.h: |
- (WebCore::Node::selfOrAncestorHasDirAutoAttribute): |
- (WebCore::Node::setSelfOrAncestorHasDirAutoAttribute): |
- * html/HTMLElement.cpp: |
- (WebCore::HTMLElement::mapToEntry): |
- (WebCore::HTMLElement::parseMappedAttribute): |
- (WebCore::setHasDirAutoFlagRecursively): |
- (WebCore::HTMLElement::childrenChanged): |
- (WebCore::HTMLElement::directionalityIfhasDirAutoAttribute): |
- (WebCore::HTMLElement::directionality): |
- (WebCore::HTMLElement::dirAttributeChanged): |
- (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildAttributeChanged): |
- (WebCore::HTMLElement::calculateAndAdjustDirectionality): |
- (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged): |
- * html/HTMLElement.h: |
- |
-2011-02-18 Yael Aharon <yael.aharon@nokia.com> |
- |
- Reviewed by Antonio Gomes. |
- |
- Navigating downwards / upwards does not focus on the links spread across more than one line. |
- https://bugs.webkit.org/show_bug.cgi?id=54639 |
- |
- When 2 anchor elements span more than one line each, and one ends on the same line that the |
- second starts on, the rects reported by their renderers are overlapping. When handling |
- 2 overlapping nodes, check for this case, and don't assume that one of the nodes is on a higher layer. |
- |
- Test: fast/spatial-navigation/snav-two-elements-one-line.html |
- |
- * page/FocusController.cpp: |
- (WebCore::updateFocusCandidateIfNeeded): |
- (WebCore::FocusController::findFocusCandidateInContainer): |
- * page/SpatialNavigation.cpp: |
- (WebCore::areElementsOnSameLine): |
- (WebCore::distanceDataForNode): |
- * page/SpatialNavigation.h: |
- |
-2011-02-18 Ben Vanik <benvanik@google.com> |
- |
- Reviewed by Kenneth Russell. |
- |
- Bug 53940: Implement the OES_vertex_array_object WebGL extension |
- https://bugs.webkit.org/show_bug.cgi?id=53940 |
- |
- Initial implementation of the OES_vertex_array_object extension adding the OESVertexArrayObject |
- extension container and WebGLVertexArrayObjectOES VAO object. The extension is plumbed through |
- the Extensions3D interface and implemented in the Extensions3DOpenGL (WebKit/OSX) version when |
- it is available. |
- Two big changes touching code outside of the extension files: |
- * Moved the typedefs at the top of GraphicsContext3D.h to GraphicsTypes3D.h (modeled after |
- GraphicsTypes.h). They are not namespaced as they weren't before. |
- * To make the code cleaner/clearer all vertex attribute state has been moved to the |
- WebGLVertexArrayObjectOES type (struct VertexAttribState) except for values which are still |
- on the WebGLRenderingContext. A default VAO is now used to store the existing attribute |
- states for when no other VAO is used. Code in WebGLRenderingContext dealing with buffers and |
- vertex attributes now defers to or stores values in the bound array object. |
- |
- Tested against the WebGL conformance suite and the new |
- oes-vertex-array-object test: |
- https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/oes-vertex-array-object.html |
- |
- * CMakeLists.txt: |
- * CodeGenerators.pri: |
- * DerivedSources.make: |
- * GNUmakefile.am: |
- * WebCore.gyp: Modified property svn:ignore. |
- * WebCore.gypi: |
- * WebCore.pro: |
- * WebCore.xcodeproj/project.pbxproj: |
- * bindings/js/JSWebGLRenderingContextCustom.cpp: |
- (WebCore::toJS): |
- * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: |
- (WebCore::toV8Object): |
- * html/canvas/OESVertexArrayObject.cpp: Added. |
- (WebCore::OESVertexArrayObject::OESVertexArrayObject): |
- (WebCore::OESVertexArrayObject::~OESVertexArrayObject): |
- (WebCore::OESVertexArrayObject::getName): |
- (WebCore::OESVertexArrayObject::create): |
- (WebCore::OESVertexArrayObject::createVertexArrayOES): |
- (WebCore::OESVertexArrayObject::deleteVertexArrayOES): |
- (WebCore::OESVertexArrayObject::isVertexArrayOES): |
- (WebCore::OESVertexArrayObject::bindVertexArrayOES): |
- * html/canvas/OESVertexArrayObject.h: Added. |
- * html/canvas/OESVertexArrayObject.idl: Added. |
- * html/canvas/WebGLExtension.h: |
- * html/canvas/WebGLGetInfo.cpp: |
- (WebCore::WebGLGetInfo::WebGLGetInfo): |
- (WebCore::WebGLGetInfo::getWebGLVertexArrayObjectOES): |
- * html/canvas/WebGLGetInfo.h: |
- * html/canvas/WebGLRenderingContext.cpp: |
- (WebCore::WebGLRenderingContext::initializeNewContext): |
- (WebCore::WebGLRenderingContext::bindBuffer): |
- (WebCore::WebGLRenderingContext::deleteBuffer): |
- (WebCore::WebGLRenderingContext::disableVertexAttribArray): |
- (WebCore::WebGLRenderingContext::validateElementArraySize): |
- (WebCore::WebGLRenderingContext::validateIndexArrayConservative): |
- (WebCore::WebGLRenderingContext::validateIndexArrayPrecise): |
- (WebCore::WebGLRenderingContext::validateRenderingState): |
- (WebCore::WebGLRenderingContext::drawElements): |
- (WebCore::WebGLRenderingContext::enableVertexAttribArray): |
- (WebCore::WebGLRenderingContext::getExtension): |
- (WebCore::WebGLRenderingContext::getParameter): |
- (WebCore::WebGLRenderingContext::getSupportedExtensions): |
- (WebCore::WebGLRenderingContext::getVertexAttrib): |
- (WebCore::WebGLRenderingContext::vertexAttribPointer): |
- (WebCore::WebGLRenderingContext::validateBufferDataParameters): |
- (WebCore::WebGLRenderingContext::vertexAttribfImpl): |
- (WebCore::WebGLRenderingContext::vertexAttribfvImpl): |
- (WebCore::WebGLRenderingContext::initVertexAttrib0): |
- (WebCore::WebGLRenderingContext::simulateVertexAttrib0): |
- (WebCore::WebGLRenderingContext::restoreStatesAfterVertexAttrib0Simulation): |
- (WebCore::WebGLRenderingContext::getNumberOfExtensions): |
- (WebCore::WebGLRenderingContext::getExtensionNumber): |
- * html/canvas/WebGLRenderingContext.h: |
- (WebCore::WebGLRenderingContext::getMaxVertexAttribs): |
- (WebCore::WebGLRenderingContext::setBoundVertexArrayObject): |
- (WebCore::WebGLRenderingContext::VertexAttribValue::VertexAttribValue): |
- * html/canvas/WebGLVertexArrayObjectOES.cpp: Added. |
- (WebCore::WebGLVertexArrayObjectOES::create): |
- (WebCore::WebGLVertexArrayObjectOES::WebGLVertexArrayObjectOES): |
- (WebCore::WebGLVertexArrayObjectOES::deleteObjectImpl): |
- * html/canvas/WebGLVertexArrayObjectOES.h: Added. |
- (WebCore::WebGLVertexArrayObjectOES::~WebGLVertexArrayObjectOES): |
- (WebCore::WebGLVertexArrayObjectOES::VertexAttribState::VertexAttribState): |
- (WebCore::WebGLVertexArrayObjectOES::isDefaultObject): |
- (WebCore::WebGLVertexArrayObjectOES::hasEverBeenBound): |
- (WebCore::WebGLVertexArrayObjectOES::setHasEverBeenBound): |
- (WebCore::WebGLVertexArrayObjectOES::getElementArrayBuffer): |
- (WebCore::WebGLVertexArrayObjectOES::setElementArrayBuffer): |
- (WebCore::WebGLVertexArrayObjectOES::getVertexAttribState): |
- (WebCore::WebGLVertexArrayObjectOES::isVertexArray): |
- * html/canvas/WebGLVertexArrayObjectOES.idl: Added. |
- * platform/graphics/Extensions3D.h: |
- * platform/graphics/GraphicsContext3D.h: |
- * platform/graphics/GraphicsTypes3D.h: Added. |
- * platform/graphics/chromium/Extensions3DChromium.h: |
- * platform/graphics/opengl/Extensions3DOpenGL.cpp: |
- (WebCore::Extensions3DOpenGL::supports): |
- (WebCore::Extensions3DOpenGL::createVertexArrayOES): |
- (WebCore::Extensions3DOpenGL::deleteVertexArrayOES): |
- (WebCore::Extensions3DOpenGL::isVertexArrayOES): |
- (WebCore::Extensions3DOpenGL::bindVertexArrayOES): |
- * platform/graphics/opengl/Extensions3DOpenGL.h: |
- * platform/graphics/qt/Extensions3DQt.cpp: |
- (WebCore::Extensions3DQt::createVertexArrayOES): |
- (WebCore::Extensions3DQt::deleteVertexArrayOES): |
- (WebCore::Extensions3DQt::isVertexArrayOES): |
- (WebCore::Extensions3DQt::bindVertexArrayOES): |
- * platform/graphics/qt/Extensions3DQt.h: |
- |
-2011-02-17 Alexander Pavlov <apavlov@chromium.org> |
- |
- Reviewed by Pavel Feldman. |
- |
- Web Inspector: reflect changes to styles when they happen outside inspector. |
- https://bugs.webkit.org/show_bug.cgi?id=44620 |
- |
- Notify InspectorInstrumentation of inline style changes from CSSMutableStyleDeclaration |
- whenever the style change does not come from a direct "style" attribute modification. |
- The performance regression occurs only with the Web Inspector opened, when inline styles |
- are modified through setting style.cssText or style.<styleAttribute>: according to the Web Inspector protocol, |
- an attribute change requires that all attributes for the node in question be pushed into the frontend. |
- |
- Test: inspector/styles/styles-update-from-js.html |
- |
- * css/CSSMutableStyleDeclaration.cpp: |
- (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc): |
- * inspector/InspectorDOMAgent.cpp: |
- (WebCore::RevalidateStyleAttributeTask::reset): |
- (WebCore::RevalidateStyleAttributeTask::RevalidateStyleAttributeTask): |
- (WebCore::RevalidateStyleAttributeTask::scheduleFor): |
- (WebCore::RevalidateStyleAttributeTask::onTimer): |
- (WebCore::InspectorDOMAgent::reset): |
- (WebCore::InspectorDOMAgent::didInvalidateStyleAttr): |
- * inspector/InspectorDOMAgent.h: |
- * inspector/InspectorInstrumentation.cpp: |
- (WebCore::InspectorInstrumentation::didInvalidateStyleAttrImpl): |
- * inspector/InspectorInstrumentation.h: |
- (WebCore::InspectorInstrumentation::didInvalidateStyleAttr): |
- * inspector/InspectorStyleSheet.cpp: |
- (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute): |
- (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady): |
- (WebCore::InspectorStyleSheetForInlineStyle::elementStyleText): |
- * inspector/InspectorStyleSheet.h: |
- * inspector/front-end/ElementsPanel.js: |
- (WebInspector.ElementsPanel.prototype._attributesUpdated): |
- * inspector/front-end/StylesSidebarPane.js: |
- (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules): |
- (WebInspector.StylesSidebarPane.prototype.addBlankSection): |
- (WebInspector.StylePropertiesSection.prototype.onpopulate): |
- (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty): |
- (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate): |
- (WebInspector.BlankStylePropertiesSection): |
- (WebInspector.StylePropertyTreeElement): |
- (WebInspector.StylePropertyTreeElement.prototype): |
- (WebInspector.StylePropertyTreeElement.prototype.element.userInput.previousContent.context.moveDirection): |
- |
-2011-02-16 Tony Gentilcore <tonyg@chromium.org> |
- |
- Reviewed by Eric Seidel. |
- |
- Refactor pumpTokenizer loop |
- https://bugs.webkit.org/show_bug.cgi?id=54574 |
- |
- 1. This makes pumpTokenizer() safe to call when waiting for a script or when about to get |
- the next token, although ASSERTs still enforce that we aren't waiting for a script. This |
- enables resumeParsingAfterYield() to call pumpTokenizer with no modifications even if we |
- yield before running a script rather than before taking a token (see bug 54355). |
- 2. This also picks up the refCount >= 1 assert when stopped. |
- |
- Tested PerformanceTests/Parser to verify no regression. If anything it got faster. |
- Before: |
- avg 985.05 |
- median 985.5 |
- stdev 3.007906248539007 |
- min 980 |
- max 990 |
- After: |
- avg 980.05 |
- median 981 |
- stdev 3.122098653149833 |
- min 974 |
- max 985 |
- |
- No new tests because no new functionality. |
- |
- * html/parser/HTMLDocumentParser.cpp: |
- (WebCore::HTMLDocumentParser::canTakeNextToken): Added. |
- (WebCore::HTMLDocumentParser::pumpTokenizer): |
- * html/parser/HTMLDocumentParser.h: |
- |
-2011-02-18 Sheriff Bot <webkit.review.bot@gmail.com> |
- |
- Unreviewed, rolling out r79003. |
- http://trac.webkit.org/changeset/79003 |
- https://bugs.webkit.org/show_bug.cgi?id=54753 |
- |
- It broke tests on GTK bots (Requested by Ossy on #webkit). |
- |
- * accessibility/AccessibilityRenderObject.cpp: |
- (WebCore::lastChildConsideringContinuation): |
- * dom/Node.cpp: |
- (WebCore::Node::removeEventListener): |
- * html/DateComponents.cpp: |
- (WebCore::DateComponents::parseTime): |
- |
-2011-02-18 Csaba Osztrogonác <ossy@webkit.org> |
- |
- Rubber-stamped by Andreas Kling. |
- |
- Warning fix. Use ASSERT_UNUSED() instead of ASSERT(). |
- |
- * accessibility/AccessibilityRenderObject.cpp: |
- (WebCore::lastChildConsideringContinuation): |
- * dom/Node.cpp: |
- (WebCore::Node::removeEventListener): |
- * html/DateComponents.cpp: |
- (WebCore::DateComponents::parseTime): |
- |
-2011-02-18 Andrey Adaikin <aandrey@google.com> |
- |
- Reviewed by Pavel Feldman. |
- |
- Web Inspector: [Text editor] Optimize editing updates in main panel |
- https://bugs.webkit.org/show_bug.cgi?id=54661 |
- |
- * inspector/front-end/TextViewer.js: |
- (WebInspector.TextViewer): |
- (WebInspector.TextViewer.prototype._textChanged): |
- (WebInspector.TextViewer.prototype._enterInternalTextChangeMode): |
- (WebInspector.TextViewer.prototype._exitInternalTextChangeMode): |
- (WebInspector.TextViewer.prototype._syncDecorationsForLine): |
- (WebInspector.TextEditorChunkedPanel.prototype.textChanged): |
- (WebInspector.TextEditorChunkedPanel.prototype._scroll): |
- (WebInspector.TextEditorChunkedPanel.prototype.chunkForLine): |
- (WebInspector.TextEditorChunkedPanel.prototype._totalHeight): |
- (WebInspector.TextEditorGutterPanel.prototype._expandChunks): |
- (WebInspector.TextEditorGutterChunk): |
- (WebInspector.TextEditorGutterChunk.prototype.addDecoration): |
- (WebInspector.TextEditorGutterChunk.prototype.removeDecoration): |
- (WebInspector.TextEditorMainPanel): |
- (WebInspector.TextEditorMainPanel.prototype._expandChunks): |
- (WebInspector.TextEditorMainPanel.prototype._highlightDataReady): |
- (WebInspector.TextEditorMainPanel.prototype._markSkippedPaintLines): |
- (WebInspector.TextEditorMainPanel.prototype._paintSkippedLines): |
- (WebInspector.TextEditorMainPanel.prototype._paintLines): |
- (WebInspector.TextEditorMainPanel.prototype._paintLine): |
- (WebInspector.TextEditorMainPanel.prototype._positionToSelection): |
- (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates): |
- (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges): |
- (WebInspector.TextEditorMainPanel.prototype._updateHighlightsForRange): |
- (WebInspector.TextEditorMainPanel.prototype._collectLinesFromDiv): |
- (WebInspector.TextEditorMainChunk): |
- (WebInspector.TextEditorMainChunk.prototype.get startLine): |
- (WebInspector.TextEditorMainChunk.prototype.set startLine): |
- (WebInspector.TextEditorMainChunk.prototype.getExpandedLineRow): |
- (WebInspector.TextEditorMainChunk.prototype.updateCollapsedLineRow): |
- |
-2011-02-18 Steve Block <steveblock@google.com> |
- |
- Reviewed by Andreas Kling |
- |
- Memory allocation error in convertV8ObjectToNPVariant() for strings |
- https://bugs.webkit.org/show_bug.cgi?id=54737 |
- |
- Include the termination character in the length when allocating memory |
- and copying the string. This fixes a crashing bug on Android. |
- |
- This should be tested by the java/ tests on Chromium, but these |
- tests are currently skipped. |
- |
- * bindings/v8/V8NPUtils.cpp: |
- (WebCore::convertV8ObjectToNPVariant): |
- |
-2011-02-18 Philippe Normand <pnormand@igalia.com> |
- |
- Unreviewed, rolling out r78979. |
- http://trac.webkit.org/changeset/78979 |
- https://bugs.webkit.org/show_bug.cgi?id=53146 |
- |
- causes multiple crashes on GTK |
- |
- * accessibility/gtk/AXObjectCacheAtk.cpp: |
- (WebCore::notifyChildrenSelectionChange): |
- (WebCore::AXObjectCache::postPlatformNotification): |
- |
-2011-02-18 Philippe Normand <pnormand@igalia.com> |
- |
- Reviewed by Martin Robinson. |
- |
- [GTK] minimal build unrecognized options |
- https://bugs.webkit.org/show_bug.cgi?id=50890 |
- |
- * GNUmakefile.am: new feature defines for optional features build. |
- |
-2011-02-17 Hans Wennborg <hans@chromium.org> |
- |
- Reviewed by Jeremy Orlow. |
- |
- IndexedDB: Populate indexes created for object stores with data |
- https://bugs.webkit.org/show_bug.cgi?id=54669 |
- |
- Make sure that indices for object stores that already hold data get |
- populated. |
- |
- * storage/IDBIndexBackendImpl.h: |
- (WebCore::IDBIndexBackendImpl::hasValidId): |
- * storage/IDBObjectStoreBackendImpl.cpp: |
- (WebCore::IDBObjectStoreBackendImpl::putInternal): |
- (WebCore::populateIndex): |
- (WebCore::IDBObjectStoreBackendImpl::createIndexInternal): |
- |
-2011-02-18 Mario Sanchez Prada <msanchez@igalia.com> |
- |
- Reviewed by Martin Robinson. |
- |
- [GTK] Combo boxes should emit object:selection-changed even when collapsed |
- https://bugs.webkit.org/show_bug.cgi?id=53146 |
- |
- Emit the selection-changed signals when the menu list value has changed |
- |
- Test: platform/gtk/accessibility/combo-box-collapsed-selection-changed.html |
- |
- * accessibility/gtk/AXObjectCacheAtk.cpp: |
- (WebCore::getListObject): New, return the right list object for |
- menu lists and list boxes. |
- (WebCore::notifyChildrenSelectionChange): Support menu lists. |
- (WebCore::AXObjectCache::postPlatformNotification): Call function |
- notifyChildrenSelectionChange for AXMenuListValueChanged. |
- |
-2011-02-18 Mario Sanchez Prada <msanchez@igalia.com> |
- |
- Reviewed by Martin Robinson. |
- |
- [Gtk] atk_text_get_selection/atk_text_set_selection fails for list items |
- https://bugs.webkit.org/show_bug.cgi?id=53453 |
- |
- Ensure that atk_text_{get|set}_selection() work with list items. |
- |
- * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: |
- (webkit_accessible_text_get_text): Properly handle list item |
- markers when returning the text for an object for a given interval |
- specified through the startOffset and endOffset parameters. |
- (getSelectionOffsetsForObject): Bear in mind list item markers |
- when returning the offsets for a selection over a list item. |
- (webkit_accessible_text_set_selection): Adjust offsets if needed |
- for list items with item markers. Ensure that it returns TRUE only |
- when everything went fine setting the text selection. |
- |
-2011-02-18 Antti Koivisto <antti@apple.com> |
- |
- Reviewed by Maciej Stachowiak. |
- |
- https://bugs.webkit.org/show_bug.cgi?id=54728 |
- checkSelector*Value functions used in fastCheckSelector fail to inline |
- |
- Wrap the functions used as template arguments to classes. |
- |
- * css/CSSStyleSelector.cpp: |
- (WebCore::fastCheckSingleSelector): |
- (WebCore::ClassCheck::checkValue): |
- (WebCore::IdCheck::checkValue): |
- (WebCore::TagCheck::checkValue): |
- (WebCore::CSSStyleSelector::SelectorChecker::fastCheckSelector): |
- |
-2011-02-17 Simon Fraser <simon.fraser@apple.com> |
- |
- Reviewed by Sam Weinig. |
- |
- Composited iframe content is missing from snapshots in WebKit2 |
- https://bugs.webkit.org/show_bug.cgi?id=54696 |
- |
- We need to propagate the 'flattening' paint behavior flag |
- down to subviews while painting. WebKit1 does this via |
- code in WebFrameView, but this is a more general fix |
- that works in WebKit2 as well. |
- |
- Made a utility method, parentFrameView(), which I changed |
- some other methods to use as well. |
- |
- * page/FrameView.cpp: |
- (WebCore::FrameView::isEnclosedInCompositingLayer): |
- (WebCore::FrameView::useSlowRepaints): |
- (WebCore::FrameView::useSlowRepaintsIfNotOverlapped): |
- (WebCore::FrameView::isOverlappedIncludingAncestors): |
- (WebCore::FrameView::parentFrameView): |
- (WebCore::FrameView::paintContents): |
- * page/FrameView.h: |
- |
-2011-02-17 Dan Bernstein <mitz@apple.com> |
- |
- Reviewed by Simon Fraser. |
- |
- <rdar://problem/8898595> Pages that use fixed positioning display poorly when scaled |
- |
- * html/HTMLBodyElement.cpp: |
- (WebCore::adjustForZoom): Account for page scale. |
- (WebCore::HTMLBodyElement::setScrollLeft): Ditto. |
- (WebCore::HTMLBodyElement::setScrollTop): Ditto. |
- * page/FrameView.cpp: |
- (WebCore::FrameView::scrollXForFixedPosition): Moved from ScrollView here and changed to |
- account for page scale: when the page is scaled, the “viewport” with respect to which fixed |
- objects are positioned is scaled as well. Since it’s now bigger than the real viewport (that is, |
- the frame view), we move it around in proportion to the document scroll, so that when the document |
- is fully scrolled to the bottom-right, the bottom right of the scaled viewport is visible. |
- (WebCore::FrameView::scrollYForFixedPosition): Ditto. |
- (WebCore::FrameView::scrollOffsetForFixedPosition): Moved from ScrollView here. |
- * page/FrameView.h: |
- * platform/ScrollView.cpp: Moved functions to FrameView. |
- * platform/ScrollView.h: |
- * rendering/RenderLayer.cpp: |
- (WebCore::RenderLayer::updateRepaintRectsAfterScroll): Account for the RenderView being transformed. |
- (WebCore::RenderLayer::calculateClipRects): Used scrollOffsetForFixedPosition(). |
- (WebCore::RenderLayer::backgroundClipRect): Ditto. |
- |
-2011-02-17 Kenneth Russell <kbr@google.com> |
- |
- Reviewed by James Robinson. |
- |
- Add support for GPU accelerated path rendering |
- https://bugs.webkit.org/show_bug.cgi?id=44729 |
- |
- Incorporates the Loop and Blinn path rendering algorithm as an |
- option to the GPU-accelerated canvas code, currently only compiled |
- in to the Chromium port. Currently it's toggled by changing a |
- hardcoded constant in |
- SharedGraphicsContext3D::useLoopBlinnForPathRendering() and is |
- disabled by default. This mechanism can be improved once we've |
- gained more confidence in the implementation. There are some known |
- bugs that need to be fixed first. |
- |
- No new tests; ran some 2D Canvas tests manually with the new flag |
- both enabled and disabled. |
- |
- * WebCore.gypi: |
- * platform/graphics/chromium/GLES2Canvas.cpp: |
- (WebCore::GLES2Canvas::GLES2Canvas): |
- (WebCore::GLES2Canvas::fillPath): |
- * platform/graphics/chromium/GLES2Canvas.h: |
- * platform/graphics/gpu/LoopBlinnClassifier.h: |
- * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: |
- * platform/graphics/gpu/SharedGraphicsContext3D.cpp: |
- (WebCore::SharedGraphicsContext3D::create): |
- (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D): |
- (WebCore::SharedGraphicsContext3D::createBuffer): |
- (WebCore::SharedGraphicsContext3D::bindBuffer): |
- (WebCore::SharedGraphicsContext3D::bufferData): |
- (WebCore::SharedGraphicsContext3D::bufferSubData): |
- (WebCore::SharedGraphicsContext3D::useLoopBlinnForPathRendering): |
- (WebCore::SharedGraphicsContext3D::useLoopBlinnInteriorProgram): |
- (WebCore::SharedGraphicsContext3D::useLoopBlinnExteriorProgram): |
- * platform/graphics/gpu/SharedGraphicsContext3D.h: |
- * platform/graphics/skia/GraphicsContextSkia.cpp: |
- (WebCore::GraphicsContext::fillPath): |
- |
-2011-02-16 Stephen White <senorblanco@chromium.org> |
- |
- Reviewed by James Robinson. |
- |
- Layout Test fast/canvas/setWidthResetAfterForcedRender.html fails on |
- accelerated 2D canvas w/compositor enabled. |
- https://bugs.webkit.org/show_bug.cgi?id=54561 |
- |
- When resetting the CanvasRenderingContext2D, we also need to send a |
- contentChanged() to the relevant RenderLayer. This is similar to what |
- is done in didDraw(). |
- |
- Covered by fast/canvas/setWidthResetAfterForcedRender.html, but note |
- that this test will still fail pixel tests because the compositor |
- is not compatible with repaint tests (the green square is now white, |
- but the half-transparent grey repaint rect does not appear). |
- |
- * html/canvas/CanvasRenderingContext2D.cpp: |
- (WebCore::CanvasRenderingContext2D::reset): |
- |
-2011-02-17 Sergey Glazunov <serg.glazunov@gmail.com> |
- |
- Reviewed by Kenneth Russell. |
- |
- Null out the WEBKIT_lose_context WebGL extension's context pointer when |
- the WebGL rendering context is removed. |
- https://bugs.webkit.org/show_bug.cgi?id=54679 |
- |
- Test: fast/canvas/webgl/context-destroyed-crash.html |
- |
- * html/canvas/WebGLRenderingContext.cpp: |
- (WebCore::WebGLRenderingContext::~WebGLRenderingContext): |
- * html/canvas/WebKitLoseContext.cpp: |
- (WebCore::WebKitLoseContext::loseContext): Add null-check for m_context. |
- * html/canvas/WebKitLoseContext.h: |
- (WebCore::WebKitLoseContext::contextDestroyed): |
- |
-2011-02-17 Kenneth Russell <kbr@google.com> |
- |
- Reviewed by Chris Marrin. |
- |
- Construction of Uint8Array from JS Array (and possibly others) incorrectly clamps values |
- https://bugs.webkit.org/show_bug.cgi?id=52768 |
- |
- Removed incorrect clamping code from IntegralTypedArrayBase. Fixed |
- code which casts from incoming double to the destination type. |
- Changed the JSC bindings to use this code, rather than a copy of |
- the casting code and a different constructor, in order to reuse |
- the fix. |
- |
- * bindings/js/JSArrayBufferViewHelper.h: |
- (WebCore::constructArrayBufferView): |
- * html/canvas/Int32Array.h: |
- (WebCore::Int32Array::set): |
- * html/canvas/Int8Array.h: |
- (WebCore::Int8Array::set): |
- * html/canvas/IntegralTypedArrayBase.h: |
- (WebCore::IntegralTypedArrayBase::set): |
- * html/canvas/Uint16Array.h: |
- (WebCore::Uint16Array::set): |
- * html/canvas/Uint32Array.h: |
- (WebCore::Uint32Array::set): |
- * html/canvas/Uint8Array.h: |
- (WebCore::Uint8Array::set): |
- |
-2011-02-17 Sam Weinig <sam@webkit.org> |
- |
- Reviewed by Dan Bernstein. |
- |
- Knob proportion not quite right during rubber-band. |
- <rdar://problem/9015201> |
- |
- Change knob proportion algorithm to treat overhang as making the view smaller, |
- rather than document bigger. |
- |
- * platform/mac/ScrollbarThemeMac.mm: |
- (WebCore::ScrollbarThemeMac::paint): |
- |
-2011-02-16 Luiz Agostini <luiz.agostini@openbossa.org> |
- |
- Reviewed by Andreas Kling. |
- |
- Summary: HTML5 <details> and <summary>: HTMLSummaryElement |
- https://bugs.webkit.org/show_bug.cgi?id=54584 |
- |
- Adding class HTMLSummaryElement to build systems. This class will be used in |
- the implementation of new HTML5 tag <summary>. |
- |
- * CMakeLists.txt: |
- * GNUmakefile.am: |
- * WebCore.gypi: |
- * WebCore.pro: |
- * WebCore.vcproj/WebCore.vcproj: |
- * WebCore.xcodeproj/project.pbxproj: |
- * html/HTMLElementsAllInOne.cpp: |
- * html/HTMLSummaryElement.cpp: Added. |
- (WebCore::HTMLSummaryElement::create): |
- (WebCore::HTMLSummaryElement::HTMLSummaryElement): |
- * html/HTMLSummaryElement.h: Added. |
- * html/HTMLTagNames.in: |
- |
-2011-02-17 Jeremy Orlow <jorlow@chromium.org> |
- |
- Reviewed by Nate Chapin. |
- |
- Throwing in an IndexedDB error or success event should lead to the transaction aborting |
- https://bugs.webkit.org/show_bug.cgi?id=54249 |
- |
- When an exception is thrown but not handled within an IDBRequests success/error event, |
- we should abort the transaction. |
- |
- Test: storage/indexeddb/exception-in-event-aborts.html |
- |
- * bindings/js/JSEventListener.cpp: |
- (WebCore::JSEventListener::handleEvent): |
- * bindings/js/JSEventTarget.cpp: |
- (WebCore::toJS): |
- * bindings/v8/V8AbstractEventListener.cpp: |
- (WebCore::V8AbstractEventListener::invokeEventHandler): |
- * dom/EventTarget.cpp: |
- (WebCore::EventTarget::uncaughtExceptionInEventHandler): |
- * dom/EventTarget.h: |
- * storage/IDBRequest.cpp: |
- (WebCore::IDBRequest::uncaughtExceptionInEventHandler): |
- * storage/IDBRequest.h: |
- |
-2011-02-17 Sam Weinig <sam@webkit.org> |
- |
- Reviewed by Maciej Stachowiak. |
- |
- WebKit2: Support Dictionary popup |
- <rdar://problem/7660670> |
- |
- Add some necessary exports. |
- |
- * WebCore.exp.in: |
- |
-2011-02-17 W. James MacLean <wjmaclean@chromium.org> |
- |
- Reviewed by James Robinson. |
- |
- [chromium] Add command-line flag to enable composite to offscreen texture. |
- https://bugs.webkit.org/show_bug.cgi?id=52311 |
- |
- Add plumbing to allow command-line switch to enable offscreen compositing. Function |
- LayerRendererChromium::copyOffscreenTextureToDisplay used for now to mimic |
- normal renderer operation. |
- |
- Existing functionality not changed; offscreen compositing will be tested via GPU test framework. |
- |
- * platform/graphics/chromium/LayerRendererChromium.cpp: |
- (WebCore::LayerRendererChromium::setRootLayer): |
- (WebCore::LayerRendererChromium::setCompositeOffscreen): |
- (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay): |
- (WebCore::LayerRendererChromium::useRenderSurface): |
- (WebCore::LayerRendererChromium::setScissorToRect): |
- * platform/graphics/chromium/LayerRendererChromium.h: |
- (WebCore::LayerRendererChromium::isCompositingOffscreen): |
- |
-2011-02-17 Kevin Ollivier <kevino@theolliviers.com> |
- |
- [wx] Build fixes after recent changes. |
- |
- * dom/ScriptedAnimationController.h: |
- * platform/graphics/wx/FontWx.cpp: |
- (WebCore::Font::drawComplexText): |
- * platform/graphics/wx/GraphicsContextWx.cpp: |
- (WebCore::GraphicsContext::drawLineForText): |
- (WebCore::GraphicsContext::drawLineForTextChecking): |
- * platform/wx/WidgetWx.cpp: |
- (WebCore::Widget::setFrameRect): |
- |
-2011-02-16 Brian Weinstein <bweinstein@apple.com> |
- |
- Reviewed by Brady Eidson. |
- |
- WebKit2: Need a way to manage the WebCore Cache |
- https://bugs.webkit.org/show_bug.cgi?id=54501 |
- |
- Add a way to get a set of all of the origins that have entries in the |
- WebCore memory cache, and a method to remove all resources from the memory |
- cache from a given security origin. |
- |
- No change in behavior. |
- |
- * WebCore.exp.in: Add functions that need to be exported. |
- * loader/cache/MemoryCache.cpp: |
- (WebCore::MemoryCache::removeResourcesWithOrigin): |
- (WebCore::MemoryCache::getOriginsWithCache): |
- * loader/cache/MemoryCache.h: |
- |
-2011-02-16 David Hyatt <hyatt@apple.com> |
- |
- Reviewed by Dan Bernstein. |
- |
- https://bugs.webkit.org/show_bug.cgi?id=54244 |
- |
- Convert the line box tree to floating point and eliminate font rounding hacks. This patch removes all of the rounding |
- hacks from the Font code and makes sure all Font APIs involving width measurement and width offsets use floats. |
- |
- The line box tree's x, y and logicalWidth members have all been converted to floats and all of the line box APIs have |
- been changed as well. |
- |
- In terms of pixel adjustments, overflow is using an enclosing model (so it will be enclosingIntRect of a line box's x/y/width/height). |
- |
- Background and border painting is using a rounding model, so borders and backgrounds will round to the nearest pixel when painting. |
- |
- Replaced elements still snap to integer positions on lines, and they use a rounding model as well, although their underlying line boxes |
- still have a precise floating point position. |
- |
- Justification will now allow subpixel positioning to occur as well. Platforms that don't support subpixel positioning should already |
- be rounding justification spacing in their font code. |
- |
- Many layout test results change on Mac, since rounding hacks were used there and are now gone. |
- |
- * WebCore.exp.in: |
- * html/canvas/CanvasRenderingContext2D.cpp: |
- (WebCore::CanvasRenderingContext2D::drawTextInternal): |
- * platform/chromium/FileChooserChromium.cpp: |
- (WebCore::FileChooser::basenameForWidth): |
- * platform/graphics/Font.cpp: |
- (WebCore::Font::width): |
- * platform/graphics/Font.h: |
- (WebCore::Font::spaceWidth): |
- (WebCore::Font::tabWidth): |
- * platform/graphics/FontFastPath.cpp: |
- (WebCore::Font::getGlyphsAndAdvancesForSimpleText): |
- * platform/graphics/GraphicsContext.cpp: |
- (WebCore::GraphicsContext::drawText): |
- (WebCore::GraphicsContext::drawEmphasisMarks): |
- (WebCore::GraphicsContext::drawBidiText): |
- (WebCore::GraphicsContext::drawHighlightForText): |
- * platform/graphics/GraphicsContext.h: |
- * platform/graphics/SimpleFontData.cpp: |
- (WebCore::SimpleFontData::SimpleFontData): |
- (WebCore::SimpleFontData::platformGlyphInit): |
- * platform/graphics/SimpleFontData.h: |
- (WebCore::SimpleFontData::spaceWidth): |
- * platform/graphics/StringTruncator.cpp: |
- (WebCore::stringWidth): |
- (WebCore::truncateString): |
- (WebCore::StringTruncator::centerTruncate): |
- (WebCore::StringTruncator::rightTruncate): |
- (WebCore::StringTruncator::width): |
- * platform/graphics/StringTruncator.h: |
- * platform/graphics/TextRun.h: |
- (WebCore::TextRun::TextRun): |
- (WebCore::TextRun::xPos): |
- (WebCore::TextRun::expansion): |
- (WebCore::TextRun::directionalOverride): |
- (WebCore::TextRun::disableSpacing): |
- * platform/graphics/WidthIterator.cpp: |
- (WebCore::WidthIterator::WidthIterator): |
- (WebCore::WidthIterator::advance): |
- * platform/graphics/WidthIterator.h: |
- * platform/graphics/cairo/GraphicsContextCairo.cpp: |
- (WebCore::GraphicsContext::drawLineForText): |
- (WebCore::GraphicsContext::drawLineForTextChecking): |
- * platform/graphics/cg/GraphicsContextCG.cpp: |
- (WebCore::GraphicsContext::drawLineForText): |
- * platform/graphics/mac/ComplexTextController.cpp: |
- (WebCore::ComplexTextController::ComplexTextController): |
- (WebCore::ComplexTextController::advance): |
- (WebCore::ComplexTextController::adjustGlyphsAndAdvances): |
- * platform/graphics/mac/ComplexTextController.h: |
- * platform/graphics/mac/FontComplexTextMac.cpp: |
- (WebCore::Font::getGlyphsAndAdvancesForComplexText): |
- * platform/graphics/mac/GraphicsContextMac.mm: |
- (WebCore::GraphicsContext::drawLineForTextChecking): |
- * platform/graphics/qt/GraphicsContextQt.cpp: |
- (WebCore::GraphicsContext::drawLineForText): |
- (WebCore::GraphicsContext::drawLineForTextChecking): |
- * platform/graphics/qt/SimpleFontDataQt.cpp: |
- (WebCore::SimpleFontData::platformGlyphInit): |
- * platform/graphics/skia/GraphicsContextSkia.cpp: |
- (WebCore::GraphicsContext::drawLineForTextChecking): |
- (WebCore::GraphicsContext::drawLineForText): |
- * platform/graphics/win/GraphicsContextCGWin.cpp: |
- (WebCore::GraphicsContext::drawLineForTextChecking): |
- * platform/graphics/win/UniscribeController.cpp: |
- (WebCore::UniscribeController::shapeAndPlaceItem): |
- * platform/gtk/FileChooserGtk.cpp: |
- (WebCore::FileChooser::basenameForWidth): |
- * platform/mac/DragImageMac.mm: |
- (WebCore::widthWithFont): |
- (WebCore::drawAtPoint): |
- * platform/mac/FileChooserMac.mm: |
- (WebCore::FileChooser::basenameForWidth): |
- * platform/win/DragImageWin.cpp: |
- (WebCore::createDragImageForLink): |
- * platform/win/FileChooserWin.cpp: |
- (WebCore::FileChooser::basenameForWidth): |
- * platform/win/PopupMenuWin.cpp: |
- (WebCore::PopupMenuWin::calculatePositionAndSize): |
- * platform/win/WebCoreTextRenderer.cpp: |
- (WebCore::WebCoreTextFloatWidth): |
- * rendering/HitTestResult.cpp: |
- (WebCore::HitTestResult::addNodeToRectBasedTestResult): |
- * rendering/HitTestResult.h: |
- * rendering/InlineBox.cpp: |
- (WebCore::InlineBox::adjustPosition): |
- (WebCore::InlineBox::placeEllipsisBox): |
- (WebCore::InlineBox::locationIncludingFlipping): |
- (WebCore::InlineBox::flipForWritingMode): |
- * rendering/InlineBox.h: |
- (WebCore::InlineBox::InlineBox): |
- (WebCore::InlineBox::adjustLineDirectionPosition): |
- (WebCore::InlineBox::adjustBlockDirectionPosition): |
- (WebCore::InlineBox::setX): |
- (WebCore::InlineBox::x): |
- (WebCore::InlineBox::setY): |
- (WebCore::InlineBox::y): |
- (WebCore::InlineBox::width): |
- (WebCore::InlineBox::height): |
- (WebCore::InlineBox::logicalLeft): |
- (WebCore::InlineBox::logicalRight): |
- (WebCore::InlineBox::setLogicalLeft): |
- (WebCore::InlineBox::pixelSnappedLogicalLeft): |
- (WebCore::InlineBox::pixelSnappedLogicalRight): |
- (WebCore::InlineBox::setLogicalWidth): |
- (WebCore::InlineBox::logicalWidth): |
- (WebCore::InlineBox::verticalAlign): |
- * rendering/InlineFlowBox.cpp: |
- (WebCore::InlineFlowBox::roundedFrameRect): |
- (WebCore::InlineFlowBox::adjustPosition): |
- (WebCore::InlineFlowBox::placeBoxesInInlineDirection): |
- (WebCore::InlineFlowBox::adjustMaxAscentAndDescent): |
- (WebCore::verticalPositionForBox): |
- (WebCore::InlineFlowBox::computeLogicalBoxHeights): |
- (WebCore::InlineFlowBox::placeBoxesInBlockDirection): |
- (WebCore::InlineFlowBox::addBoxShadowVisualOverflow): |
- (WebCore::InlineFlowBox::addTextBoxVisualOverflow): |
- (WebCore::InlineFlowBox::computeOverflow): |
- (WebCore::InlineFlowBox::setLayoutOverflow): |
- (WebCore::InlineFlowBox::setVisualOverflow): |
- (WebCore::InlineFlowBox::nodeAtPoint): |
- (WebCore::InlineFlowBox::paintBoxDecorations): |
- (WebCore::InlineFlowBox::paintMask): |
- (WebCore::InlineFlowBox::placeEllipsisBox): |
- * rendering/InlineFlowBox.h: |
- (WebCore::InlineFlowBox::maxYLayoutOverflow): |
- (WebCore::InlineFlowBox::maxXLayoutOverflow): |
- (WebCore::InlineFlowBox::layoutOverflowRect): |
- (WebCore::InlineFlowBox::maxYVisualOverflow): |
- (WebCore::InlineFlowBox::maxXVisualOverflow): |
- (WebCore::InlineFlowBox::visualOverflowRect): |
- * rendering/InlineTextBox.cpp: |
- (WebCore::InlineTextBox::placeEllipsisBox): |
- (WebCore::InlineTextBox::nodeAtPoint): |
- (WebCore::paintTextWithShadows): |
- (WebCore::InlineTextBox::paint): |
- (WebCore::InlineTextBox::paintSelection): |
- (WebCore::InlineTextBox::paintCompositionBackground): |
- (WebCore::InlineTextBox::paintDecoration): |
- (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): |
- (WebCore::InlineTextBox::paintTextMatchMarker): |
- (WebCore::InlineTextBox::paintDocumentMarkers): |
- (WebCore::InlineTextBox::paintCompositionUnderline): |
- (WebCore::InlineTextBox::textPos): |
- (WebCore::InlineTextBox::offsetForPosition): |
- (WebCore::InlineTextBox::positionForOffset): |
- * rendering/InlineTextBox.h: |
- (WebCore::InlineTextBox::setExpansion): |
- * rendering/RenderBR.h: |
- (WebCore::RenderBR::width): |
- * rendering/RenderBlock.cpp: |
- (WebCore::stripTrailingSpace): |
- (WebCore::updatePreferredWidth): |
- (WebCore::RenderBlock::computeInlinePreferredLogicalWidths): |
- (WebCore::RenderBlock::adjustForBorderFit): |
- (WebCore::RenderBlock::addFocusRingRects): |
- * rendering/RenderBlock.h: |
- * rendering/RenderBlockLineLayout.cpp: |
- (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): |
- (WebCore::RenderBlock::fitBelowFloats): |
- (WebCore::textWidth): |
- (WebCore::tryHyphenating): |
- (WebCore::RenderBlock::findNextLineBreak): |
- * rendering/RenderBox.cpp: |
- (WebCore::RenderBox::positionLineBox): |
- (WebCore::RenderBox::flipForWritingMode): |
- * rendering/RenderBox.h: |
- * rendering/RenderCombineText.cpp: |
- (WebCore::RenderCombineText::width): |
- (WebCore::RenderCombineText::adjustTextOrigin): |
- (WebCore::RenderCombineText::combineText): |
- * rendering/RenderCombineText.h: |
- (WebCore::RenderCombineText::combinedTextWidth): |
- * rendering/RenderCounter.cpp: |
- (WebCore::RenderCounter::computePreferredLogicalWidths): |
- * rendering/RenderCounter.h: |
- * rendering/RenderEmbeddedObject.cpp: |
- (WebCore::RenderEmbeddedObject::getReplacementTextGeometry): |
- * rendering/RenderFileUploadControl.cpp: |
- (WebCore::RenderFileUploadControl::computePreferredLogicalWidths): |
- * rendering/RenderImage.cpp: |
- * rendering/RenderInline.cpp: |
- (WebCore::RenderInline::linesBoundingBox): |
- (WebCore::RenderInline::linesVisualOverflowBoundingBox): |
- (WebCore::RenderInline::addFocusRingRects): |
- (WebCore::RenderInline::paintOutline): |
- * rendering/RenderListBox.cpp: |
- (WebCore::RenderListBox::updateFromElement): |
- (WebCore::RenderListBox::paintItemForeground): |
- * rendering/RenderMenuList.cpp: |
- (WebCore::RenderMenuList::updateOptionsWidth): |
- * rendering/RenderText.cpp: |
- (WebCore::RenderText::localCaretRect): |
- (WebCore::RenderText::widthFromCache): |
- (WebCore::RenderText::trimmedPrefWidths): |
- (WebCore::RenderText::minLogicalWidth): |
- (WebCore::RenderText::maxLogicalWidth): |
- (WebCore::RenderText::computePreferredLogicalWidths): |
- (WebCore::RenderText::firstRunOrigin): |
- (WebCore::RenderText::firstRunX): |
- (WebCore::RenderText::firstRunY): |
- (WebCore::RenderText::width): |
- (WebCore::RenderText::linesBoundingBox): |
- * rendering/RenderText.h: |
- * rendering/RenderTextControl.cpp: |
- (WebCore::RenderTextControl::getAvgCharWidth): |
- (WebCore::RenderTextControl::paintPlaceholder): |
- * rendering/RenderTreeAsText.cpp: |
- (WebCore::writeTextRun): |
- * rendering/RootInlineBox.cpp: |
- (WebCore::RootInlineBox::placeEllipsis): |
- (WebCore::RootInlineBox::placeEllipsisBox): |
- (WebCore::RootInlineBox::adjustPosition): |
- (WebCore::RootInlineBox::beforeAnnotationsAdjustment): |
- (WebCore::RootInlineBox::paddedLayoutOverflowRect): |
- * rendering/RootInlineBox.h: |
- * rendering/VerticalPositionCache.h: |
- * rendering/svg/SVGInlineTextBox.cpp: |
- (WebCore::SVGInlineTextBox::offsetForPosition): |
- (WebCore::SVGInlineTextBox::positionForOffset): |
- (WebCore::SVGInlineTextBox::constructTextRun): |
- * rendering/svg/SVGInlineTextBox.h: |
- * rendering/svg/SVGRenderTreeAsText.cpp: |
- (WebCore::writeRenderSVGTextBox): |
- * rendering/svg/SVGTextMetrics.cpp: |
- (WebCore::SVGTextMetrics::SVGTextMetrics): |
- (WebCore::constructTextRun): |
- * svg/SVGFont.cpp: |
- (WebCore::floatWidthMissingGlyphCallback): |
- (WebCore::Font::drawTextUsingSVGFont): |
- |
-2011-02-17 Nikolas Zimmermann <nzimmermann@rim.com> |
- |
- Reviewed by Dirk Schulze. |
- |
- 'ex' coordinates fail, when SVGFont doesn't provide an explicit xHeight attribute |
- https://bugs.webkit.org/show_bug.cgi?id=54672 |
- |
- Measure the xHeight from the 'x' glyph of a SVGFont, if the font itself doesn't explicitely specify an x-height attribute. |
- Fixes the modern version of SVG 1.1 2nd Edition coords-units-03-b.svg. |
- |
- Test: svg/W3C-SVG-1.1-SE/coords-units-03-b.svg |
- |
- * platform/graphics/SimpleFontData.cpp: |
- (WebCore::SimpleFontData::SimpleFontData): |
- |
-2011-02-10 Luiz Agostini <luiz.agostini@openbossa.org> |
- |
- Reviewed by Adam Roben. |
- |
- HTML5 <details> and <summary>: localized text |
- https://bugs.webkit.org/show_bug.cgi?id=54260 |
- |
- The method defaultDetailsSummaryText was added to LocalizationStrategy class and to |
- platform/LocalizedStrings. It is used to provide the default label to be used by a |
- <details> tag that has no <summary> child. |
- |
- * platform/LocalizationStrategy.h: |
- * platform/LocalizedStrings.cpp: |
- (WebCore::fileButtonNoFileSelectedLabel): |
- (WebCore::defaultDetailsSummaryText): |
- * platform/LocalizedStrings.h: |
- * platform/android/LocalizedStringsAndroid.cpp: |
- (WebCore::defaultDetailsSummaryText): |
- * platform/brew/LocalizedStringsBrew.cpp: |
- (WebCore::defaultDetailsSummaryText): |
- * platform/efl/LocalizedStringsEfl.cpp: |
- (WebCore::defaultDetailsSummaryText): |
- * platform/gtk/LocalizedStringsGtk.cpp: |
- (WebCore::defaultDetailsSummaryText): |
- * platform/haiku/LocalizedStringsHaiku.cpp: |
- (WebCore::defaultDetailsSummaryText): |
- * platform/wx/LocalizedStringsWx.cpp: |
- (WebCore::defaultDetailsSummaryText): |
- |
-2011-02-17 Kristian Amlie <kristian.amlie@nokia.com> |
- |
- Reviewed by Laszlo Gombos. |
- |
- Updated include paths for phonon. |
- |
- [Qt] WebKit patches required to work with a modularized version of Qt |
- https://bugs.webkit.org/show_bug.cgi?id=53916 |
- |
- Build fix. No tests. |
- |
- * WebCore.pro: |
- |
-2011-02-17 Hui Huang <hui.2.huang@nokia.com> |
- |
- Reviewed by Laszlo Gombos. |
- |
- The URL of HTML5 Video Element is percent encoded at websites such as youtube. |
- It is percent encoded again by QUrl constructor QUrl::QUrl(QString). This causes |
- the HTTP GET request for the video to be rejected by the service provider. |
- https://bugs.webkit.org/show_bug.cgi?id=53973. |
- |
- The bug is fixed by constructing QUrl from the encoded URL. |
- |
- New test function tst_QWebPage::loadHtml5Video() is added in |
- Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp |
- |
- * platform/graphics/qt/MediaPlayerPrivateQt.cpp: |
- (WebCore::MediaPlayerPrivateQt::commitLoad): |
- |
-2011-02-17 Andreas Kling <kling@webkit.org> |
- |
- Reviewed by Antti Koivisto. |
- |
- [Qt] Crash when calling QWebFrame::setUrl() while a previous load has pending requests |
- https://bugs.webkit.org/show_bug.cgi?id=49216 |
- |
- CachedResourceRequest::didFail() will protect the CachedResourceLoader's |
- document() while it runs, but if we're being called from the Document destructor, |
- the protecting RefPtr<Document> will cause a double-delete instead. |
- |
- * loader/cache/CachedResourceLoader.cpp: |
- (WebCore::CachedResourceLoader::~CachedResourceLoader): Clear the m_document |
- pointer so CachedResourceRequest::didFail() won't try to protect it. |
- (WebCore::CachedResourceLoader::frame): Add null-check for m_document. |
- |
-2011-02-17 Andrey Adaikin <aandrey@google.com> |
- |
- Reviewed by Pavel Feldman. |
- |
- Web Inspector: [Text editor] Add updateHighlight method to the highlighter |
- https://bugs.webkit.org/show_bug.cgi?id=54448 |
- |
- * inspector/front-end/SourceTokenizer.js: |
- * inspector/front-end/TextEditorHighlighter.js: |
- (WebInspector.TextEditorHighlighter.prototype.set mimeType): |
- (WebInspector.TextEditorHighlighter.prototype.reset): |
- (WebInspector.TextEditorHighlighter.prototype.updateHighlight): |
- (WebInspector.TextEditorHighlighter.prototype._highlightInChunks): |
- (WebInspector.TextEditorHighlighter.prototype._highlightLines): |
- |
-2011-02-16 Pavel Podivilov <podivilov@chromium.org> |
- |
- Reviewed by Yury Semikhatsky. |
- |
- Web Inspector: show all inlined scripts from single document in the same source frame. |
- https://bugs.webkit.org/show_bug.cgi?id=54544 |
- |
- Currently when debugging synchronously executed inlined scripts each script is shown in it's own source frame ("example.html:24"). |
- We should show such scripts in the same source frame "example.html" with <script></script> framing. |
- |
- Test: inspector/debugger/debug-inlined-scripts.html |
- |
- * inspector/front-end/ScriptsPanel.js: |
- (WebInspector.ScriptsPanel.prototype._scriptSourceChanged): |
- (WebInspector.ScriptsPanel.prototype._addScript): |
- (WebInspector.ScriptsPanel.prototype._resourceForURL): |
- (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished): |
- (WebInspector.ScriptsPanel.prototype.addConsoleMessage): |
- (WebInspector.ScriptsPanel.prototype.clearConsoleMessages): |
- (WebInspector.ScriptsPanel.prototype.reset): |
- (WebInspector.ScriptsPanel.prototype._sourceFrameForResource): |
- (WebInspector.ScriptsPanel.prototype._sourceFrameForScript): |
- (WebInspector.ScriptsPanel.prototype._recreateSourceFrame): |
- (WebInspector.ScriptsPanel.prototype._showScriptOrResource): |
- (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu.optionCompare): |
- (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): |
- (WebInspector.SourceFrameContentProviderForScript.prototype.requestContent): |
- (WebInspector.SourceFrameContentProviderForScript.prototype._buildSource): |
- |
-2011-02-17 Nikolas Zimmermann <nzimmermann@rim.com> |
- |
- Reviewed by Dirk Schulze. |
- |
- svg/batik/paints/patternRegions-positioned-objects.svg fails on Windows |
- https://bugs.webkit.org/show_bug.cgi?id=44484 |
- |
- Pattern of pattern defined with objectBoundingBox does not render correctly |
- https://bugs.webkit.org/show_bug.cgi?id=53463 |
- |
- Fix <pattern> + patternContentUnits="objectBoundingBox" support. |
- We were incorrrectly translating the tile image transform, by the target objects bbox.x()/y(). |
- RenderSVGResourceMask/Clipper don't have this error. |
- |
- Fix nesting <patterns> in objectBoundingBox mode, propagate the tileImageTransform as new user-space |
- when drawing the pattern children. <mask> + <clipPath> don't have the problem. |
- |
- Test: svg/custom/nested-pattern-boundingBoxModeContent.svg |
- |
- * rendering/svg/RenderSVGResourcePattern.cpp: |
- (WebCore::RenderSVGResourcePattern::buildTileImageTransform): |
- (WebCore::RenderSVGResourcePattern::createTileImage): |
- |
-2011-02-17 Csaba Osztrogonác <ossy@webkit.org> |
- |
- Unreviewed. |
- |
- [Qt][V8] Buildfix after r78752. |
- |
- * CodeGenerators.pri: Add missing IDL files. |
- |
-2011-02-17 Benjamin Kalman <kalman@chromium.org> |
- |
- Reviewed by Ryosuke Niwa. |
- |
- RTL lineboundary left/right is reversed when cursor is at start of RTL container |
- https://bugs.webkit.org/show_bug.cgi?id=54534 |
- |
- Test: editing/selection/extend-left-right-by-lineboundary.html |
- |
- Add missing cases for extending left/right by lineboundary. |
- |
- * editing/SelectionController.cpp: |
- (WebCore::SelectionController::modifyExtendingRight): |
- (WebCore::SelectionController::modifyExtendingLeft): |
- |
-2011-02-16 Philippe Normand <pnormand@igalia.com> |
- |
- Reviewed by Martin Robinson. |
- |
- [GTK] libsoup critical warnings |
- https://bugs.webkit.org/show_bug.cgi?id=54557 |
- |
- Avoid pausing a soup message for already downloaded resources. |
- |
- * platform/network/soup/ResourceHandleSoup.cpp: |
- (WebCore::ResourceHandle::platformSetDefersLoading): |
- |
-2011-02-16 Brian Ryner <bryner@chromium.org> |
- |
- Reviewed by Darin Fisher. |
- |
- Split the socket address field into separate IP address and port fields. |
- This will make the field less error-prone to parse, for example when |
- dealing with IPv6 literals. |
- https://bugs.webkit.org/show_bug.cgi?id=54607 |
- |
- No new tests required. |
- |
- * platform/network/chromium/ResourceResponse.cpp: |
- (WebCore::ResourceResponse::doPlatformCopyData): |
- (WebCore::ResourceResponse::doPlatformAdopt): |
- * platform/network/chromium/ResourceResponse.h: |
- (WebCore::ResourceResponse::ResourceResponse): |
- (WebCore::ResourceResponse::remoteIPAddress): |
- (WebCore::ResourceResponse::setRemoteIPAddress): |
- (WebCore::ResourceResponse::remotePort): |
- (WebCore::ResourceResponse::setRemotePort): |
- |
-2011-02-16 Dominic Mazzoni <dmazzoni@google.com> |
- |
- Reviewed by Chris Fleizach. |
- |
- Add support for canvas fallback content. |
- https://bugs.webkit.org/show_bug.cgi?id=50126 |
- |
- Test: accessibility/canvas-fallback-content.html |
- |
- * accessibility/AccessibilityObject.h: |
- * accessibility/AccessibilityRenderObject.cpp: |
- (WebCore::AccessibilityRenderObject::determineAccessibilityRole): |
- (WebCore::AccessibilityRenderObject::canHaveChildren): |
- * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: |
- (atkRole): |
- * accessibility/mac/AccessibilityObjectWrapper.mm: |
- * html/HTMLFormControlElement.cpp: |
- (WebCore::HTMLFormControlElement::isFocusable): |
- * rendering/RenderHTMLCanvas.cpp: |
- (WebCore::RenderHTMLCanvas::recursiveSetNoNeedsLayout): |
- (WebCore::RenderHTMLCanvas::layout): |
- (WebCore::RenderHTMLCanvas::nodeAtPoint): |
- * rendering/RenderHTMLCanvas.h: |
- (WebCore::RenderHTMLCanvas::children): |
- (WebCore::RenderHTMLCanvas::canHaveChildren): |
- (WebCore::RenderHTMLCanvas::virtualChildren): |
- * rendering/RenderObject.cpp: |
- (WebCore::RenderObject::repaint): |
- * rendering/RenderTreeAsText.cpp: |
- (WebCore::write): |
- |
-2011-02-16 Matthew Delaney <mdelaney@apple.com> |
- |
- Reviewed by Simon Fraser. |
- |
- Allow acceleratesDrawing for WebKit2 |
- https://bugs.webkit.org/show_bug.cgi?id=54511 |
- |
- Plumb through preference for accelerated drawing. |
- |
- When accelerated drawing is enabled, set a flag on new GraphicsLayers. |
- |
- Not testable via Layout Tests |
- |
- * WebCore.exp.in: |
- * page/Settings.cpp: |
- (WebCore::Settings::Settings): |
- (WebCore::Settings::setAcceleratedDrawingEnabled): |
- * page/Settings.h: |
- (WebCore::Settings::acceleratedDrawingEnabled): |
- * rendering/RenderLayerCompositor.cpp: |
- (WebCore::RenderLayerCompositor::updateBacking): |
- |
2011-02-16 Victoria Kirst <vrk@google.com> |
Reviewed by Kenneth Russell. |