AX: VoiceOver does not announce text changes for content editable regions in Safari
https://bugs.webkit.org/show_bug.cgi?id=132577

Reviewed by Mario Sanchez Prada.

Source/WebCore:
When text or children are changed inside of a contenteditable region, we need to
convert those actions into AXValueChange notifications.

Test: accessibility/content-editable-set-inner-text-generates-axvalue-notification.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::childrenChanged):
(WebCore::AccessibilityNodeObject::hasContentEditableAttributeSet): Deleted.
* accessibility/AccessibilityNodeObject.h:
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::hasContentEditableAttributeSet):
* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textChanged):

LayoutTests:
* accessibility/content-editable-set-inner-text-generates-axvalue-notification-expected.txt: Added.
* accessibility/content-editable-set-inner-text-generates-axvalue-notification.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168360 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Try to fix iOS build.

* DumpRenderTree/mac/TestRunnerMac.mm:
(-[APITestDelegateIPhone initWithTestRunner:utf8Data:baseURL:]):
Updated since I changed testRunner into a pointer instead of a reference.
Updated argument names to avoid conflict with field names.
(-[APITestDelegateIPhone run]): Ditto.
(-[APITestDelegateIPhone _cleanUp]): Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168361 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Extended Background] Respect repeat-x/repeat-y when creating margin tiles
https://bugs.webkit.org/show_bug.cgi?id=132534

Reviewed by Beth Dakin.

If the background image that is causing margin tiles only repeats in dimension only create
the tiles in that dimension.

* page/FrameView.cpp:
(WebCore::FrameView::updateExtendBackgroundIfNecessary):
(WebCore::FrameView::calculateExtendedBackgroundMode):
(WebCore::FrameView::updateTilesForExtendedBackgroundMode):
(WebCore::FrameView::setBackgroundExtendsBeyondPage): Deleted.
(WebCore::FrameView::needsExtendedBackgroundRectForPainting): Deleted.
(WebCore::FrameView::setHasExtendedBackgroundRectForPainting): Deleted.
* page/FrameView.h:
* page/Settings.cpp:
(WebCore::Settings::setBackgroundShouldExtendBeyondPage):
* platform/graphics/TiledBacking.h:
* platform/graphics/ca/mac/TileController.h:
* platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::hasHorizontalMargins):
(WebCore::TileController::hasVerticalMargins):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::styleWillChange):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::setTiledBackingHasMargins):
* rendering/RenderLayerBacking.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168362 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions] Optimize the number of regions invalidations
https://bugs.webkit.org/show_bug.cgi?id=132611

Reviewed by David Hyatt.

Source/WebCore:
It is possible to invalidate the region chain of a flow thread
during the layout of the region when its height is not final.

This patch places the check after the height of the region
is determined, reducing the number of invalidations.

Tests: Less invalidations and repaints in the repaint tests for
the flow threads.

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::updateLogicalHeight):
* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::layoutBlock):
(WebCore::RenderNamedFlowFragment::invalidateRegionIfNeeded):
* rendering/RenderNamedFlowFragment.h:

LayoutTests:
Because there are less region invalidations there are less repaints
of the flow threads.

* fast/regions/repaint/repaint-regions-overflow-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168363 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION(r155957): Selection rects are incorrect when the selection contains BR elements.
https://bugs.webkit.org/show_bug.cgi?id=132596
<rdar://problem/16692206>

Reviewed by Antti Koivisto.

This patch adds an implementation of collectSelectionRects to RenderLineBreak.
It uses the same logic used by RenderText to compute and annotate the returned rect
which is computed, like the caret rect, using information from the rootline box.

* rendering/RenderLineBreak.cpp:
(WebCore::RenderLineBreak::collectSelectionRects):
* rendering/RenderLineBreak.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168364 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[HTML] Default argument to HTMLTableSectionElement.insertRow() should be -1
https://bugs.webkit.org/show_bug.cgi?id=132570

Reviewed by Darin Adler.

Source/WebCore:
HTMLTableSectionElement.insertRow()'s argument default value should be -1, not
0, as per the specification:
http://www.whatwg.org/specs/web-apps/current-work/multipage/tabular-data.html#the-tbody-element

The new behavior matches the one of Firefox 29 and IE11, and soon Blink:
https://code.google.com/p/chromium/issues/detail?id=369803

Test: fast/dom/HTMLTableSectionElement/insertRow-default-argument.html

* html/HTMLTableSectionElement.h:
* html/HTMLTableSectionElement.idl:

LayoutTests:
Add layout test to test that the default argument to
HTMLTableSectionElement.insertRow() is -1.

* fast/dom/HTMLTableSectionElement/insertRow-default-argument-expected.txt: Added.
* fast/dom/HTMLTableSectionElement/insertRow-default-argument.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168365 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed build fix after http://trac.webkit.org/changeset/168364

* rendering/RenderLineBreak.cpp:



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