AX: isWordEndMatch should allow for multiple word selections
https://bugs.webkit.org/show_bug.cgi?id=135573

Reviewed by Mario Sanchez Prada.


Source/WebCore: 
isWordEndMatch was searching from the beginning of the selected range, which meant
that if the result was multiple words, we'd reject the result. 
Instead, we should search from the end of the range, so that we encompass all words.

Modified existing test: platform/mac/accessibility/select-text-should-match-whole-words.html

* editing/TextIterator.cpp:
(WebCore::SearchBuffer::isWordEndMatch):

LayoutTests: 
* platform/mac/accessibility/select-text-should-match-whole-words-expected.txt:
* platform/mac/accessibility/select-text-should-match-whole-words.html:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172005 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Always clear ConsoleClient when Page/WindowShell is destroyed
https://bugs.webkit.org/show_bug.cgi?id=135569

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-04
Reviewed by Mark Lam.

* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::~ScriptController):
Whenever a window shell goes away, clear the console client.
We did this in clearWindowShell but not before destroying.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172006 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r171992, r171995, & r172000.

The cumulative effect of those revisions was to cause decoding errors when switching resolutions on YouTube.

Reverted changesets:

https://bugs.webkit.org/show_bug.cgi?id=135422 / http://trac.webkit.org/changeset/171992
https://bugs.webkit.org/show_bug.cgi?id=135424 / http://trac.webkit.org/changeset/171995
https://bugs.webkit.org/show_bug.cgi?id=135572 / http://trac.webkit.org/changeset/172000

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172007 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Subpixel rendering: InlineTextBox mistakenly rounds offset value before painting.
https://bugs.webkit.org/show_bug.cgi?id=135470

Reviewed by Simon Fraser.

This patch removes the premature paint offset adjustment for inlines. Premature snapping
could alter the final painting coordinates and push content to wrong positions.

This patch also enforces WebCore's pixel snapping strategy (round) on text painting.
It ensures that text positioning is in sync with other painting related operations including
clipping, box decorations etc. Underlying graphics libraries can take different directions on
text snapping, for example CG ceils text coordinates vertically (in horizontal context,
with the current settings). It can lead to undesired side effects.

Source/WebCore:
Test: fast/inline/hidpi-inline-selection-leaves-gap.html

* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paint):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects): wrong direction used at r171896.
* rendering/SimpleLineLayoutFunctions.cpp: we don't paint vertical content here.
(WebCore::SimpleLineLayout::paintFlow):

LayoutTests:
* fast/inline/hidpi-inline-selection-leaves-gap-expected.html: Added.
* fast/inline/hidpi-inline-selection-leaves-gap.html: Added.
* fast/multicol/newmulticol/multicol-clip-rounded-corners-expected.html:
* fast/multicol/newmulticol/multicol-clip-rounded-corners.html: pixels are distributed properly.
No need to have the special 122px shortened width for col2.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172008 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Create a more generic way for VMEntryScope to notify those interested that it will be destroyed
https://bugs.webkit.org/show_bug.cgi?id=135358

Patch by Saam Barati <sbarati@apple.com> on 2014-08-04
Reviewed by Geoffrey Garen.

When VMEntryScope is destroyed, and it has a flag set indicating that the
Debugger needs to recompile all functions, it calls Debugger::recompileAllJSFunctions.
This flag is only used by Debugger to have VMEntryScope notify it when the
Debugger is safe to recompile all functions. This patch will substitute this
Debugger-specific recompilation flag with a list of callbacks that are notified
when the outermost VMEntryScope dies. This creates a general purpose interface
for being notified when the VM stops executing code via the event of the outermost
VMEntryScope dying.

* debugger/Debugger.cpp:
(JSC::Debugger::recompileAllJSFunctions):
* runtime/VMEntryScope.cpp:
(JSC::VMEntryScope::VMEntryScope):
(JSC::VMEntryScope::addEntryScopeDidPopListener):
(JSC::VMEntryScope::~VMEntryScope):
* runtime/VMEntryScope.h:
(JSC::VMEntryScope::setRecompilationNeeded): Deleted.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172009 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Shapes] shape-margin not respected when it extends beyond an explicitly set margin
https://bugs.webkit.org/show_bug.cgi?id=135308

Reviewed by Dean Jackson.

Source/WebCore:
When a zero height line is supplied and the image shape extends into
the margin box (only possible when a shape-margin is supplied), then
only an empty interval was being returned. This patch makes it
properly return the interval for the line in question.

Test: fast/shapes/shape-outside-floats/shape-outside-image-shape-margin.html

* rendering/shapes/RasterShape.cpp:
(WebCore::RasterShape::getExcludedIntervals): Handle the zero height
line case.

LayoutTests:
Test case based on the one supplied by Rebecca Hauck in the bug
report.

* fast/shapes/resources/square.png: Added.
* fast/shapes/shape-outside-floats/shape-outside-image-shape-margin-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-image-shape-margin.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172010 268f45cc-cd09-0410-ab3c-d52691b4dbfc
lldb_webkit.py throws exception when generating summary of null StringImpl
https://bugs.webkit.org/show_bug.cgi?id=129448

Patch by Matt Baker <mattbaker@apple.com> on 2014-08-04
Reviewed by Jer Noble.

Added checks for null StringImpl and 0 byte ReadMemory calls.

* lldb/lldb_webkit.py:
(WTFStringImpl_SummaryProvider):
(ustring_to_string):
(lstring_to_string):
(WTFStringImplProvider.to_string):
(WTFStringImplProvider.is_initialized):

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