extract-localizable-strings output is not suited for parsing by Xcode
https://bugs.webkit.org/show_bug.cgi?id=119728

Reviewed by Darin Adler.

Added spaces where needed after “path:line:” to allow Xcode to recognize the file reference,
removed “ERROR” since messages that refer to a line in a file are shown as error by default,
added “warning: ” in messages that aren’t errors (i.e. don’t prevent the script from exiting
with 0).

* Scripts/extract-localizable-strings:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153980 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ASSERTION FAILED: type() == Percent in WebCore::Length::percent
https://bugs.webkit.org/show_bug.cgi?id=116715

Reviewed by Darin Adler.

Source/WebCore: 

Allow the Calculated type in the Length::percent method that returns the Length's
float value. This reflects the changes in r110148 that adjusted the Length::isPercent
method to return true for Length objects of either Percent or Calculated type.

Test: fast/css/calculated-length-as-percent-crash.html

* platform/Length.h:
(WebCore::Length::percent): Assert that Length::isPercent is true when Length::percent
is called, ensuring the Length's type is either Percent or Calculated.

LayoutTests: 

Add the test case, as produced by the Fuzzinator, that was causing assertions
in Length::percent due to Length objects of the Calculated type not being treated
as holding a proper percent value in that method, despite Length::isPercent
returning true for Length objects of either Percent or the Calculated type.

* fast/css/calculated-length-as-percent-crash-expected.txt: Added.
* fast/css/calculated-length-as-percent-crash.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153981 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix null dereference in HTMLAnchorElement::sendPings when frame is not attached to a page
https://bugs.webkit.org/show_bug.cgi?id=119716

Reviewed by Darin Adler.

Add a regression test for r153975.

* fast/html/detach-frame-while-clicking-on-anchor-with-ping-expected.txt: Added.
* fast/html/detach-frame-while-clicking-on-anchor-with-ping.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153982 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Windows build fix attempt after r153978.

* page/win/DragControllerWin.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153983 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Another Windows build fix attempt after r153978.

* page/win/DragControllerWin.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Yet another Windows build fix attempt after r153978.

* page/win/DragControllerWin.cpp:
(WebCore::DragController::declareAndWriteDragImage):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153985 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update scheme list according to latest specification
https://bugs.webkit.org/show_bug.cgi?id=119510

Reviewed by Christophe Dumez.

New schemes are added to it additionally. Those are bitcoin, im, ircs and wtai.
As additional work, scheme order is listed to be sync with spec.

Spec: http://www.w3.org/html/wg/drafts/html/master/webappapis.html#custom-handlers

Source/WebCore:

Test: fast/dom/register-protocol-handler.html
      fast/dom/unregister-protocol-handler.html

* Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
(WebCore::initProtocolHandlerWhitelist):

LayoutTests:

* fast/dom/register-protocol-handler-expected.txt:
* fast/dom/register-protocol-handler.html:
* fast/dom/unregister-protocol-handler-expected.txt:
* fast/dom/unregister-protocol-handler.html:
* platform/efl/fast/dom/register-protocol-handler-expected.txt:
* platform/efl/fast/dom/unregister-protocol-handler-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153986 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed GTK gardening.
Rebaselining after r153647.

* platform/gtk/fast/css/input-search-padding-expected.txt:
* platform/gtk/fast/css/text-overflow-input-expected.txt:
* platform/gtk/fast/forms/box-shadow-override-expected.txt:
* platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
* platform/gtk/fast/forms/input-appearance-height-expected.txt:
* platform/gtk/fast/forms/placeholder-position-expected.txt:
* platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
* platform/gtk/fast/forms/search-cancel-button-style-sharing-expected.txt:
* platform/gtk/fast/forms/search-display-none-cancel-button-expected.txt:
* platform/gtk/fast/forms/search-rtl-expected.txt:
* platform/gtk/fast/forms/search-size-with-decorations-expected.txt: Added.
* platform/gtk/fast/forms/search-styled-expected.txt:
* platform/gtk/fast/forms/search-vertical-alignment-expected.txt:
* platform/gtk/fast/forms/searchfield-heights-expected.txt:
* platform/gtk/fast/repaint/search-field-cancel-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153987 268f45cc-cd09-0410-ab3c-d52691b4dbfc
One more speculative Windows build fix after r153978.

* page/win/DragControllerWin.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153988 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed GTK gardening.

* platform/gtk/editing/caret/caret-color-expected.txt: Rebaselining after r152612.
* platform/gtk/fast/js/dom-static-property-for-in-iteration-expected.txt: Rebaselining after r153772.
* platform/gtk/fast/js/global-constructors-attributes-expected.txt: Ditto.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153989 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions] Compute correct region ranges for boxes
https://bugs.webkit.org/show_bug.cgi?id=116296

Reviewed by David Hyatt.

Source/WebCore:

The patch extends the region ranges implementation with the following behavior:
- the range of a box is always included in the range of its containing block (even for floats); this will simplify how overflow
is propagated to the regions and it should later change on a case by case basis.
- if the range of a box is not correctly estimated before the layout it will be marked for relayout; this is necessary to correctly
position boxes that overflow naturally, like floats.
- all the boxes have a range now, not only the blocks.
- regionAtBlockOffset can clamp to a box.
- an unsplittable box has a region range of a single region, the one where the box top falls into.

When the layout of a child box starts it tries to give an estimate based on the maximal height of the box. After the layout,
if the estimation was wrong, the box is relaid out. For example, if a block with a float is laid out in a region but the float
overflows in the next region a relayout is needed for the float so it can be positioned relative to the containing block
region (this step can be optimized by making a layout pass only for the children that don't have the region range enclosed in the
containing block range).

Tests: fast/regions/bottom-overflow-out-of-first-region-absolute.html
       fast/regions/float-pushed-width-change-2.html
       fast/regions/scrollable-paragraph-unsplittable.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateShapesBeforeBlockLayout): Doesn't do anything for regions now.
(WebCore::RenderBlock::updateShapesAfterBlockLayout): Doesn't do anything for regions now.
(WebCore::RenderBlock::relayoutToAvoidWidows): The layout to avoid widows. Widows use the line index to determine the break point,
not the RootLineBox pointer as before. This is necessary to prevent stale pointers in further layouts.
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::markForPaginationRelayoutIfNeeded): Relayout for widows during layoutBlock(). Don't wait to exit the block layout.
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::hasNextPage):
(WebCore::RenderBlock::applyBeforeBreak):
(WebCore::RenderBlock::applyAfterBreak):
(WebCore::RenderBlock::setPageBreak):
(WebCore::RenderBlock::updateMinimumPageHeight):
(WebCore::RenderBlock::regionAtBlockOffset): This function can now clamp at a box.
(WebCore::RenderBlock::computeRegionRangeForBoxChild): Calculate the box region range using the box height.
(WebCore::RenderBlock::estimateRegionRangeForBoxChild): Estimate the box region range using a huge height for the box.
(WebCore::RenderBlock::updateRegionRangeForBoxChild): Determine the final region range of a box.
* rendering/RenderBlock.h:
(WebCore::RenderBlock::logicalWidthForChild):
(WebCore::RenderBlock::logicalHeightForChild):
(WebCore::RenderBlock::logicalTopForChild):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutInlineChildren):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::clampToStartAndEndRegions):
(WebCore::RenderBox::borderBoxRectInRegion):
* rendering/RenderBox.h:
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::validateRegions):
(WebCore::RenderFlowThread::regionAtBlockOffset):
(WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent):
(WebCore::RenderFlowThread::pageLogicalTopForOffset):
(WebCore::RenderFlowThread::pageLogicalWidthForOffset):
(WebCore::RenderFlowThread::pageLogicalHeightForOffset):
(WebCore::RenderFlowThread::pageRemainingLogicalHeightForOffset):
(WebCore::RenderFlowThread::mapFromFlowToRegion):
(WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock):
(WebCore::RenderFlowThread::clearRenderObjectCustomStyle):
(WebCore::RenderFlowThread::clearRenderBoxRegionInfoAndCustomStyle):
(WebCore::RenderFlowThread::setRegionRangeForBox):
(WebCore::RenderFlowThread::applyBreakAfterContent):
(WebCore::RenderFlowThread::addForcedRegionBreak):
* rendering/RenderFlowThread.h:
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutBlock):
* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::setPageBreak):
(WebCore::RenderMultiColumnFlowThread::updateMinimumPageHeight):
* rendering/RenderMultiColumnFlowThread.h:

LayoutTests:

Tests for the changes in how region ranges are computed and applied.

* fast/regions/bottom-overflow-out-of-first-region-absolute-expected.html: Added.
* fast/regions/bottom-overflow-out-of-first-region-absolute.html: Added.
* fast/regions/float-pushed-width-change-2-expected.html: Copied from LayoutTests/fast/regions/float-pushed-width-change-expected.html.
* fast/regions/float-pushed-width-change-2.html: Copied from LayoutTests/fast/regions/float-pushed-width-change.html.
* fast/regions/float-pushed-width-change-expected.html:
* fast/regions/float-pushed-width-change.html:
* fast/regions/scrollable-paragraph-unsplittable-expected.html: Added.
* fast/regions/scrollable-paragraph-unsplittable.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153990 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Closing inspector window crashes wk
https://bugs.webkit.org/show_bug.cgi?id=110865

Reviewed by Carlos Garcia Campos.

Source/WebKit/gtk:

Deleting priv->corePage during the destruction of a webView will
trigger the deletion of InspectorFrontendClient. However that
object is supposed to handle the webView's destroy signal first in
order to do the necessary cleanup.

The solution is to wait until webkit_web_view_dispose finishes
before deleting priv->corePage.

* webkit/webkitwebview.cpp:
(webkit_web_view_dispose):

Tools:

Disconnect all signal handlers if the inspector window is
destroyed.

* GtkLauncher/LauncherInspectorWindow.c:
(inspectorWindowDestroyed):
(launcherInspectorWindowNew):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@153991 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Adding testcase for verifying editing behavior for up/down caret movement between lines.
https://bugs.webkit.org/show_bug.cgi?id=119511

Reviewed by Ryosuke Niwa.

* editing/selection/verify-editing-behavior-for-line-granularity-expected.txt: Added.
* editing/selection/verify-editing-behavior-for-line-granularity.html: Added.
Layout testcase added for verifying that the up/down caret movement between
lines is similar to the default text editor behavior on various platforms.


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