Source/WebCore: Web Inspector: Move formatting support from JavaScriptSource to UISourceCode.
https://bugs.webkit.org/show_bug.cgi?id=92373

Reviewed by Pavel Feldman.

Moved formatting support from JavaScriptSource to UISourceCode.
Extracted Formatter interface from ScriptFormatter and created IdentityFormatter
implememntation and Formatter.createFormatter(contentType) formatter factory.
Introduced virtual formattedChanged() method on UISourceCode.

* inspector/front-end/JavaScriptSource.js:
(WebInspector.JavaScriptSource):
(WebInspector.JavaScriptSource.prototype.uiLocationToRawLocation):
(WebInspector.JavaScriptSource.prototype.breakpointStorageId):
(WebInspector.JavaScriptSource.prototype.searchInContent):
(WebInspector.JavaScriptSource.prototype.formattedChanged):
* inspector/front-end/ScriptFormatter.js:
(WebInspector.Formatter):
(WebInspector.Formatter.createFormatter):
(WebInspector.Formatter.locationToPosition):
(WebInspector.Formatter.positionToLocation):
(WebInspector.Formatter.prototype.formatContent):
(WebInspector.ScriptFormatter):
(WebInspector.IdentityFormatter):
(WebInspector.IdentityFormatter.prototype.formatContent):
(WebInspector.FormatterSourceMappingImpl.prototype.originalToFormatted):
(WebInspector.FormatterSourceMappingImpl.prototype.formattedToOriginal):
* inspector/front-end/UISourceCode.js:
(WebInspector.UISourceCode):
(WebInspector.UISourceCode.prototype.requestContent):
(WebInspector.UISourceCode.prototype._fireContentAvailable):
(WebInspector.UISourceCode.prototype.uiLocationToRawLocation):
(WebInspector.UISourceCode.prototype.overrideLocation):
(WebInspector.UISourceCode.prototype.togglingFormatter):
(WebInspector.UISourceCode.prototype.formatted):
(WebInspector.UISourceCode.prototype.setFormatted.if):
(WebInspector.UISourceCode.prototype.setFormatted.didGetContent.formattedChanged):
(WebInspector.UISourceCode.prototype.setFormatted.didGetContent):
(WebInspector.UISourceCode.prototype.setFormatted):
(WebInspector.UISourceCode.prototype.createFormatter):
(WebInspector.UISourceCode.prototype.formattedChanged):

Source/WebKit2: [EFL][WK2] Add unit tests for Ewk_View form client
https://bugs.webkit.org/show_bug.cgi?id=92468

Reviewed by Simon Hausmann.

Add unit test for form client functionality in
Ewk_View.

* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(onFormAboutToBeSubmitted):
(TEST_F):

LayoutTests: Web Inspector: Move formatting support from JavaScriptSource to UISourceCode.
https://bugs.webkit.org/show_bug.cgi?id=92373

Reviewed by Pavel Feldman.

* inspector/debugger/script-formatter.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123853 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed.  Rolled DEPS.

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123854 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Fix issues in visiblePositionForWindowPoint (offscreen points / iframes).
https://bugs.webkit.org/show_bug.cgi?id=79117

Fix two issues in WebFrameImpl::visiblePositionForWindowPoint.

1) If the point is off-screen, the visiblePosition is clipped to the screen.
   - The fix is to add HitTestRequest::IgnoreClipping.

2) The result is incorrect if the point is within an iframe.
   - This is because we are calling convertFromContainingWindow twice: once in windowToContents,
     and then explicitly as well.
   - This patch removes the explicit call to convertFromContainingWindow.

Patch by Oli Lan <olilan@chromium.org> on 2012-07-27
Reviewed by Adam Barth.

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::visiblePositionForWindowPoint):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123855 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add a Setting to expose quantized, rate-limited MemoryInfo values
https://bugs.webkit.org/show_bug.cgi?id=80444

Reviewed by Eric Seidel.

We do not currently expose real MemoryInfo objects to the web unless
the user opts in because we're worried that this memory information
could be used in side-channel attacks.

We've gotten feedback from a number of web app developers that this
information is very useful in tracking the performance of their
applications.  These developers use the setting in their testing labs
and regression harnesses to catch memory leaks and regressiosn early in
their development cycle.

Some of these developers have experimented with enabling this feature
within their enterprise and have found the memory data from the field
extremely useful in tracking down memory issues that slip through their
testing.

Based on this experience, they've asked whether we can enable this
functionality on a wider scale so they catch even more problems
including problems that don't manifest within their enterprise.
Because we're still worried about side-channel attacks, we don't want
to expose the raw data, so we've talked with these folks in more detail
to understand what information they find most valuable.

This patch is the result of those discussions.  In particular, this
patch adds an option to expose quantized and rate-limited memory
information to web pages.  Web pages can only learn new data every 20
minutes, which helps mitigate attacks where the attacker compares two
or readings to extract side-channel information.  The patch also only
reports 100 distinct memory values, which (combined with the rate
limts) makes it difficult for attackers to learn about small changes in
memory use.

* page/MemoryInfo.cpp:
(WebCore):
(HeapSizeCache):
(WebCore::HeapSizeCache::HeapSizeCache):
(WebCore::HeapSizeCache::getCachedHeapSize):
(WebCore::HeapSizeCache::maybeUpdate):
(WebCore::HeapSizeCache::update):
(WebCore::HeapSizeCache::quantize):
(WebCore::MemoryInfo::MemoryInfo):
* page/Settings.cpp:
(WebCore::Settings::Settings):
* page/Settings.h:
(WebCore::Settings::setQuantizedMemoryInfoEnabled):
(WebCore::Settings::quantizedMemoryInfoEnabled):
(Settings):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123856 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed GTK gardening, adding a text failure expectation for an accessibility
test that started failing after r123767.

* platform/gtk/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123857 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Fix wrong return value in EWK_VIEW_XXX macro.
https://bugs.webkit.org/show_bug.cgi?id=92466

Reviewed by Simon Hausmann.

There are wrong return values in EWK_VIEW_XXX macros. The wrong return values
should be fixed. In addition, API description is also modified according to returned
value change.

Source/WebKit/efl:

* ewk/ewk_view.cpp:
(ewk_view_setting_minimum_timer_interval_get):
(ewk_view_navigation_policy_decision):
(ewk_view_page_rect_get):
(ewk_view_setting_enable_xss_auditor_get):
* ewk/ewk_view.h:

Source/WebKit2:

* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_uri_set):
(ewk_view_load_progress_get):
(ewk_view_device_pixel_ratio_get):
* UIProcess/API/efl/ewk_view.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123858 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2][EFL][WTR] TestNetscapePlugin is required.
https://bugs.webkit.org/show_bug.cgi?id=88756

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-07-27
Reviewed by Simon Hausmann.

libTestNetscapePlugin.so should be required for DRT/WTR/EFL.

* CMakeLists.txt:
* DumpRenderTree/TestNetscapePlugin/CMakeList.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123859 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Keyboard events miss key location data.
https://bugs.webkit.org/show_bug.cgi?id=92235

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-07-27
Reviewed by Simon Hausmann.

EFL WK2 did not initialize WebKeyboardEvent::m_isKeypad field.
This caused failure of fast/events/keydown-numpad-keys.html test.

* Shared/efl/WebEventFactory.cpp: WebKeyboardEvent::m_isKeypad is initialized.
(WebKit::WebEventFactory::createWebKeyboardEvent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123860 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed.  Rolled DEPS.

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123861 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] platform/qt/editing/pasteboard tests needs update after font change.
https://bugs.webkit.org/show_bug.cgi?id=91399.

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-07-27
Reviewed by Csaba Osztrogonác.

* platform/qt-5.0-wk1/Skipped:
* platform/qt-5.0-wk2/Skipped:
* platform/qt-5.0-wk2/editing/pasteboard/4806874-expected.txt: Added.
* platform/qt-5.0-wk2/editing/pasteboard/4944770-1-expected.png: Removed.
* platform/qt-5.0-wk2/editing/pasteboard/4944770-1-expected.txt: Removed.
* platform/qt-5.0-wk2/editing/pasteboard/4944770-2-expected.png: Removed.
* platform/qt-5.0-wk2/editing/pasteboard/4944770-2-expected.txt: Removed.
* platform/qt-5.0-wk2/editing/pasteboard/input-field-1-expected.txt: Copied from LayoutTests/platform/qt/editing/pasteboard/input-field-1-expected.txt.
* platform/qt-5.0/Skipped:
* platform/qt-5.0/editing/pasteboard/4944770-1-expected.png: Removed.
* platform/qt-5.0/editing/pasteboard/4944770-1-expected.txt: Removed.
* platform/qt-5.0/editing/pasteboard/4944770-2-expected.png: Removed.
* platform/qt-5.0/editing/pasteboard/4944770-2-expected.txt: Removed.
* platform/qt-5.0/editing/pasteboard/paste-text-at-tabspan-003-expected.txt: Removed.
* platform/qt/editing/pasteboard/3976872-expected.png: Added.
* platform/qt/editing/pasteboard/3976872-expected.txt:
* platform/qt/editing/pasteboard/4076267-2-expected.png:
* platform/qt/editing/pasteboard/4076267-2-expected.txt:
* platform/qt/editing/pasteboard/4076267-3-expected.png:
* platform/qt/editing/pasteboard/4076267-3-expected.txt:
* platform/qt/editing/pasteboard/4076267-expected.png:
* platform/qt/editing/pasteboard/4076267-expected.txt:
* platform/qt/editing/pasteboard/4242293-expected.png: Added.
* platform/qt/editing/pasteboard/4242293-expected.txt:
* platform/qt/editing/pasteboard/4631972-expected.png: Added.
* platform/qt/editing/pasteboard/4631972-expected.txt:
* platform/qt/editing/pasteboard/4641033-expected.png:
* platform/qt/editing/pasteboard/4641033-expected.txt:
* platform/qt/editing/pasteboard/4806874-expected.png:
* platform/qt/editing/pasteboard/4806874-expected.txt:
* platform/qt/editing/pasteboard/4944770-1-expected.png:
* platform/qt/editing/pasteboard/4944770-1-expected.txt:
* platform/qt/editing/pasteboard/4944770-2-expected.png:
* platform/qt/editing/pasteboard/4944770-2-expected.txt:
* platform/qt/editing/pasteboard/4989774-expected.png: Added.
* platform/qt/editing/pasteboard/4989774-expected.txt:
* platform/qt/editing/pasteboard/5006779-expected.png: Added.
* platform/qt/editing/pasteboard/5006779-expected.txt:
* platform/qt/editing/pasteboard/5028447-expected.png: Added.
* platform/qt/editing/pasteboard/5028447-expected.txt:
* platform/qt/editing/pasteboard/5032095-expected.png: Added.
* platform/qt/editing/pasteboard/5032095-expected.txt:
* platform/qt/editing/pasteboard/5071074-2-expected.png: Added.
* platform/qt/editing/pasteboard/5071074-2-expected.txt:
* platform/qt/editing/pasteboard/5071074-expected.png: Added.
* platform/qt/editing/pasteboard/5071074-expected.txt:
* platform/qt/editing/pasteboard/5075944-expected.png: Added.
* platform/qt/editing/pasteboard/5075944-expected.txt:
* platform/qt/editing/pasteboard/5134759-expected.png: Added.
* platform/qt/editing/pasteboard/5134759-expected.txt:
* platform/qt/editing/pasteboard/5156401-1-expected.png: Added.
* platform/qt/editing/pasteboard/5156401-1-expected.txt:
* platform/qt/editing/pasteboard/5247341-expected.png: Added.
* platform/qt/editing/pasteboard/5247341-expected.txt:
* platform/qt/editing/pasteboard/5387578-expected.png:
* platform/qt/editing/pasteboard/5387578-expected.txt:
* platform/qt/editing/pasteboard/5478250-expected.png:
* platform/qt/editing/pasteboard/5478250-expected.txt:
* platform/qt/editing/pasteboard/5601583-1-expected.png: Added.
* platform/qt/editing/pasteboard/5601583-1-expected.txt:
* platform/qt/editing/pasteboard/5780697-2-expected.txt:
* platform/qt/editing/pasteboard/7955-expected.png: Added.
* platform/qt/editing/pasteboard/7955-expected.txt:
* platform/qt/editing/pasteboard/8145-1-expected.png: Added.
* platform/qt/editing/pasteboard/8145-1-expected.txt:
* platform/qt/editing/pasteboard/8145-2-expected.png: Added.
* platform/qt/editing/pasteboard/8145-2-expected.txt:
* platform/qt/editing/pasteboard/8145-3-expected.png:
* platform/qt/editing/pasteboard/8145-3-expected.txt:
* platform/qt/editing/pasteboard/bad-placeholder-expected.png:
* platform/qt/editing/pasteboard/bad-placeholder-expected.txt:
* platform/qt/editing/pasteboard/block-wrappers-necessary-expected.txt:
* platform/qt/editing/pasteboard/cut-text-001-expected.png:
* platform/qt/editing/pasteboard/cut-text-001-expected.txt:
* platform/qt/editing/pasteboard/displaced-generic-placeholder-expected.png: Added.
* platform/qt/editing/pasteboard/displaced-generic-placeholder-expected.txt:
* platform/qt/editing/pasteboard/displaced-placeholder-expected.png: Added.
* platform/qt/editing/pasteboard/displaced-placeholder-expected.txt:
* platform/qt/editing/pasteboard/emacs-cntl-y-001-expected.png: Added.
* platform/qt/editing/pasteboard/emacs-cntl-y-001-expected.txt:
* platform/qt/editing/pasteboard/innerText-inline-table-expected.png:
* platform/qt/editing/pasteboard/innerText-inline-table-expected.txt:
* platform/qt/editing/pasteboard/input-field-1-expected.png:
* platform/qt/editing/pasteboard/input-field-1-expected.txt:
* platform/qt/editing/pasteboard/merge-after-delete-1-expected.png: Added.
* platform/qt/editing/pasteboard/merge-after-delete-1-expected.txt:
* platform/qt/editing/pasteboard/merge-after-delete-2-expected.png: Added.
* platform/qt/editing/pasteboard/merge-after-delete-2-expected.txt:
* platform/qt/editing/pasteboard/merge-after-delete-expected.png: Added.
* platform/qt/editing/pasteboard/merge-after-delete-expected.txt:
* platform/qt/editing/pasteboard/merge-end-blockquote-expected.png:
* platform/qt/editing/pasteboard/merge-end-blockquote-expected.txt:
* platform/qt/editing/pasteboard/merge-end-borders-expected.png:
* platform/qt/editing/pasteboard/merge-end-borders-expected.txt:
* platform/qt/editing/pasteboard/merge-start-blockquote-expected.png: Added.
* platform/qt/editing/pasteboard/merge-start-blockquote-expected.txt:
* platform/qt/editing/pasteboard/merge-start-list-expected.png: Added.
* platform/qt/editing/pasteboard/merge-start-list-expected.txt:
* platform/qt/editing/pasteboard/paste-4035648-fix-expected.png: Added.
* platform/qt/editing/pasteboard/paste-4035648-fix-expected.txt:
* platform/qt/editing/pasteboard/paste-4038267-fix-expected.png: Added.
* platform/qt/editing/pasteboard/paste-4038267-fix-expected.txt:
* platform/qt/editing/pasteboard/paste-blockquote-after-blockquote-expected.png: Added.
* platform/qt/editing/pasteboard/paste-blockquote-after-blockquote-expected.txt:
* platform/qt/editing/pasteboard/paste-blockquote-into-blockquote-4-expected.png: Added.
* platform/qt/editing/pasteboard/paste-blockquote-into-blockquote-4-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-001-expected.png: Added.
* platform/qt/editing/pasteboard/paste-line-endings-001-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-002-expected.png: Added.
* platform/qt/editing/pasteboard/paste-line-endings-002-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-003-expected.png: Added.
* platform/qt/editing/pasteboard/paste-line-endings-003-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-004-expected.png: Added.
* platform/qt/editing/pasteboard/paste-line-endings-004-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-005-expected.png: Added.
* platform/qt/editing/pasteboard/paste-line-endings-005-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-006-expected.png: Added.
* platform/qt/editing/pasteboard/paste-line-endings-006-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-007-expected.png:
* platform/qt/editing/pasteboard/paste-line-endings-007-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-008-expected.png:
* platform/qt/editing/pasteboard/paste-line-endings-008-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-009-expected.png:
* platform/qt/editing/pasteboard/paste-line-endings-009-expected.txt:
* platform/qt/editing/pasteboard/paste-line-endings-010-expected.png:
* platform/qt/editing/pasteboard/paste-line-endings-010-expected.txt:
* platform/qt/editing/pasteboard/paste-match-style-001-expected.png:
* platform/qt/editing/pasteboard/paste-match-style-001-expected.txt:
* platform/qt/editing/pasteboard/paste-match-style-002-expected.png: Added.
* platform/qt/editing/pasteboard/paste-match-style-002-expected.txt:
* platform/qt/editing/pasteboard/paste-table-003-expected.png:
* platform/qt/editing/pasteboard/paste-table-003-expected.txt:
* platform/qt/editing/pasteboard/paste-table-cells-expected.png:
* platform/qt/editing/pasteboard/paste-table-cells-expected.txt:
* platform/qt/editing/pasteboard/paste-text-004-expected.png:
* platform/qt/editing/pasteboard/paste-text-004-expected.txt:
* platform/qt/editing/pasteboard/paste-text-005-expected.png:
* platform/qt/editing/pasteboard/paste-text-005-expected.txt:
* platform/qt/editing/pasteboard/paste-text-006-expected.png: Added.
* platform/qt/editing/pasteboard/paste-text-006-expected.txt:
* platform/qt/editing/pasteboard/paste-text-007-expected.png: Added.
* platform/qt/editing/pasteboard/paste-text-007-expected.txt:
* platform/qt/editing/pasteboard/paste-text-008-expected.png:
* platform/qt/editing/pasteboard/paste-text-008-expected.txt:
* platform/qt/editing/pasteboard/paste-text-009-expected.png:
* platform/qt/editing/pasteboard/paste-text-009-expected.txt:
* platform/qt/editing/pasteboard/paste-text-013-expected.png: Added.
* platform/qt/editing/pasteboard/paste-text-013-expected.txt:
* platform/qt/editing/pasteboard/paste-text-014-expected.png:
* platform/qt/editing/pasteboard/paste-text-014-expected.txt:
* platform/qt/editing/pasteboard/paste-text-016-expected.png: Added.
* platform/qt/editing/pasteboard/paste-text-016-expected.txt:
* platform/qt/editing/pasteboard/paste-text-019-expected.png:
* platform/qt/editing/pasteboard/paste-text-019-expected.txt:
* platform/qt/editing/pasteboard/paste-text-at-tabspan-003-expected.png:
* platform/qt/editing/pasteboard/paste-text-at-tabspan-003-expected.txt:
* platform/qt/editing/pasteboard/pasting-object-expected.png:
* platform/qt/editing/pasteboard/pasting-object-expected.txt:
* platform/qt/editing/pasteboard/quirks-mode-br-1-expected.png: Added.
* platform/qt/editing/pasteboard/quirks-mode-br-1-expected.txt:
* platform/qt/editing/pasteboard/smart-paste-004-expected.txt: Added.
* platform/qt/editing/pasteboard/smart-paste-007-expected.png:
* platform/qt/editing/pasteboard/smart-paste-007-expected.txt:
* platform/qt/editing/pasteboard/styled-element-markup-expected.png: Added.
* platform/qt/editing/pasteboard/styled-element-markup-expected.txt:
* platform/qt/editing/pasteboard/undoable-fragment-removes-expected.png: Added.
* platform/qt/editing/pasteboard/undoable-fragment-removes-expected.txt:
* platform/qt/editing/pasteboard/unrendered-br-expected.png: Added.
* platform/qt/editing/pasteboard/unrendered-br-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123862 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Add more Ewk_View unit tests
https://bugs.webkit.org/show_bug.cgi?id=92407

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-27
Reviewed by Kenneth Rohde Christiansen.

Add more unit tests for WebKit2 Ewk_View API.
In particular, navigation, HTML loading and
device pixel ratio functions are now tested.

* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
(EWK2UnitTest::EWK2UnitTestBase::SetUp): Call ewk_init() instead
of duplicating initialization code.
(EWK2UnitTest::EWK2UnitTestBase::TearDown): call ewk_shutdown().
(TitleChangedData):
(EWK2UnitTest):
(EWK2UnitTest::onTitleChanged):
(EWK2UnitTest::EWK2UnitTestBase::waitUntilTitleChangedTo): Add convenience
method to wait until the view main frame title changes to a given value.
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
(EWK2UnitTestBase):
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):
(serverCallbackNavigation):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123863 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Cairo] Add complex font drawing using HarfbuzzNG
https://bugs.webkit.org/show_bug.cgi?id=91864

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-07-27
Reviewed by Simon Hausmann and Martin Robinson.

.:

Configuring Freetype backend to use HarfBuzz by default.

* Source/cmake/FindHarfBuzz.cmake: Added pkgconfig based discovery of HarfBuzz.
* Source/cmake/OptionsEfl.cmake: Adding Harfbuzz configuration.

Source/WebCore:

Adding Harfbuzz support to EFL by implementing it with the help of cairo and cairo-ft.
Reusing Chromium's Harfbuzz-NG support.

No new tests, complex font support is covered by existing tests.

* CMakeLists.txt: Adding new cairo based implementations, removing emtpy FontEfl.cpp
* WebCore.gypi: Removing FontEfl.cpp
* platform/graphics/cairo/FontCairoHarfbuzzNG.cpp: Added. New implementation that implements cairo & harfbuzz-ng based complex font drawing.
(WebCore):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::canReturnFallbackFontsForComplexText):
(WebCore::Font::canExpandAroundIdeographsInComplexText):
(WebCore::Font::floatWidthForComplexText):
(WebCore::Font::offsetForPositionForComplexText):
(WebCore::Font::selectionRectForComplexText):
* platform/graphics/efl/FontEfl.cpp: Removed.
* platform/graphics/freetype/FontPlatformData.h: Adding a getter that retrieves a harfbuzz face.
(FontPlatformData):
* platform/graphics/freetype/FontPlatformDataFreeType.cpp: Adding a getter that retrieves a harfbuzz face.
(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::FontPlatformData):
(WebCore):
(WebCore::FontPlatformData::harfbuzzFace):
* platform/graphics/harfbuzz/ng/HarfBuzzNGFaceCairo.cpp: Added. Cairo-freetype based approach to get complex font metrics.
(WebCore):
(CairoFtFaceLocker):
(WebCore::CairoFtFaceLocker::CairoFtFaceLocker):
(WebCore::CairoFtFaceLocker::lock):
(WebCore::CairoFtFaceLocker::~CairoFtFaceLocker):
(WebCore::floatToHarfBuzzPosition):
(WebCore::doubleToHarfBuzzPosition):
(WebCore::CairoGetGlyphWidthAndExtents):
(WebCore::harfbuzzGetGlyph):
(WebCore::harfbuzzGetGlyphHorizontalAdvance):
(WebCore::harfbuzzGetGlyphHorizontalOrigin):
(WebCore::harfbuzzGetGlyphExtents):
(WebCore::harfbuzzCairoTextGetFontFuncs):
(WebCore::harfbuzzCairoGetTable):
(WebCore::HarfBuzzNGFace::createFace):
(WebCore::HarfBuzzNGFace::createFont):
(WebCore::HarfBuzzShaper::createGlyphBufferAdvance):

Source/WebKit:

Adding includes for harfbuzz folders.

* CMakeLists.txt:

Source/WebKit2:

Adding includes for harfbuzz folders.

* CMakeLists.txt:

Tools:

Bringing Harfbuzz support to EFL with this patch, so we need HarfBuzz in the pulled in jhbuild dependencies.

* WebKitTestRunner/CMakeLists.txt: Adding additional header include directories.
* efl/jhbuild.modules: Adding source for HarfBuzz release version 0.9.0.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123864 268f45cc-cd09-0410-ab3c-d52691b4dbfc
webkit.review.bot should run clean-review-queue and clean-pending-commit periodically
https://bugs.webkit.org/show_bug.cgi?id=92472

Reviewed by Eric Seidel.

We need to run these command periodically to keep cruft from
accumulating in bugs.webkit.org. Rather than running them manually, we
should just have a bot run them. This patch has the style-queue run the
commands, which admittedly is a bit odd but it doesn't seem worthwhile
to create another bot specifically for this purposes.

* Scripts/webkitpy/tool/commands/queues.py:
(AbstractReviewQueue):
(StyleQueue.begin_work_queue):
(StyleQueue):
(StyleQueue.clean_bugzilla):
* Scripts/webkitpy/tool/commands/queues_unittest.py:
(StyleQueueTest.test_style_queue_with_style_exception):
(test_style_queue_with_watch_list_exception):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123865 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Stop using C API to interact with the page in Ewk_View
https://bugs.webkit.org/show_bug.cgi?id=92463

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-27
Reviewed by Simon Hausmann.

Stop using C API to interact with the PageProxy in Ewk_View
and use the PageProxy object directly. This avoids useless
converting to WK type using toAPI() all the time.

* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_base_add):
(ewk_view_uri_update):
(ewk_view_uri_set):
(ewk_view_reload):
(ewk_view_reload_bypass_cache):
(ewk_view_stop):
(ewk_view_load_progress_get):
(ewk_view_device_pixel_ratio_set):
(ewk_view_theme_get):
(ewk_view_cursor_set):
(ewk_view_back):
(ewk_view_forward):
(ewk_view_intent_deliver):
(ewk_view_back_possible):
(ewk_view_forward_possible):
(ewk_view_setting_encoding_custom_get):
(ewk_view_setting_encoding_custom_set):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123866 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Replace ColorChooserClient::elementRectRelativeToWindow with elementRectRelativeToRootView
https://bugs.webkit.org/show_bug.cgi?id=92488

Reviewed by Kent Tamura.

Changing ColorChooserClient interface to return element rectangle that is relative to root view instead of window.

No new tests. Method is not used yet.

* html/ColorInputType.cpp:
(WebCore::ColorInputType::elementRectRelativeToRootView): Replaced elementRectRelativeToWindow. Returns element rectangle relative to root view.
* html/ColorInputType.h:
(ColorInputType):
* platform/ColorChooserClient.h:
(ColorChooserClient):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123867 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Gardening after r123786. It made 3 fast/animation tests fail
https://bugs.webkit.org/show_bug.cgi?id=92490

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-07-27
Rubber stamped by Zoltan Herczeg.

* platform/qt/Skipped:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123868 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[NRWT] should have a way to restrict pixel tests for individual directories
https://bugs.webkit.org/show_bug.cgi?id=91754

Reviewed by Zoltan Herczeg.

Rollout r123729 because it made Qt debug bots crasy.

* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::open):
(WebCore::DumpRenderTree::processLine):
(WebCore::DumpRenderTree::setDumpPixels):
(WebCore::DumpRenderTree::dump):
* DumpRenderTree/qt/DumpRenderTreeQt.h:
(DumpRenderTree):
* DumpRenderTree/qt/main.cpp:
(main):
* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._should_fetch_expected_checksum):
(SingleTestRunner._overwrite_baselines):
(SingleTestRunner._compare_output):
* Scripts/webkitpy/layout_tests/controllers/worker.py:
(Worker._update_test_input):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.lookup_virtual_test_args):
* Scripts/webkitpy/layout_tests/port/driver.py:
(Driver.cmd_line):
(Driver._command_from_driver_input):
* Scripts/webkitpy/layout_tests/port/qt.py:
(QtPort.check_sys_deps):
* Scripts/webkitpy/layout_tests/port/test.py:
(TestPort.virtual_test_suites):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options):
(parse_args):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(MainTest.test_run_singly_actually_runs_tests):
(MainTest.test_missing_and_unexpected_results):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::TestController):
(WTR::TestController::initialize):
(WTR::TestController::runTest):
* WebKitTestRunner/TestController.h:
(TestController):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123869 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Add API to Ewk_Cookie_Manager to watch for cookie changes
https://bugs.webkit.org/show_bug.cgi?id=92484

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-07-27
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Make use of soup/CookieStorageSoup.cpp for EFL port instead
of defining empty implementations for cookie storage
functions.

No new tests, no behavior change.

* PlatformEfl.cmake:
* platform/efl/TemporaryLinkStubs.cpp:

Source/WebKit2:

Add API tp Ewk_Cookie_Manager so that the client can watch
for cookie changes.

* UIProcess/API/efl/ewk_cookie_manager.cpp:
* UIProcess/API/efl/ewk_cookie_manager.h:
* UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp: Add unit tests
for cookie changes watching.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123870 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r123869.
http://trac.webkit.org/changeset/123869
https://bugs.webkit.org/show_bug.cgi?id=92501

"it did not fix anything but made things even worst"
(Requested by kbalazs on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-07-27

* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::open):
(WebCore::DumpRenderTree::processLine):
(WebCore::DumpRenderTree::setDumpPixelsForAllTests):
(WebCore::DumpRenderTree::dump):
* DumpRenderTree/qt/DumpRenderTreeQt.h:
(DumpRenderTree):
* DumpRenderTree/qt/main.cpp:
(main):
* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._should_fetch_expected_checksum):
(SingleTestRunner._overwrite_baselines):
(SingleTestRunner._compare_output):
* Scripts/webkitpy/layout_tests/controllers/worker.py:
(Worker._update_test_input):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.supports_switching_pixel_tests_per_test):
(Port):
(Port._supports_switching_pixel_tests_per_test):
(Port.should_run_as_pixel_test):
(Port._should_run_as_pixel_test):
* Scripts/webkitpy/layout_tests/port/driver.py:
(Driver.cmd_line):
(Driver._command_from_driver_input):
* Scripts/webkitpy/layout_tests/port/qt.py:
(QtPort.check_sys_deps):
(QtPort):
(QtPort._supports_switching_pixel_tests_per_test):
(QtPort._should_run_as_pixel_test):
(QtPort._default_pixel_test_directories):
* Scripts/webkitpy/layout_tests/port/test.py:
(TestPort.supports_switching_pixel_tests_per_test):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options):
(parse_args):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(MainTest.test_run_singly_actually_runs_tests):
(MainTest.test_pixel_test_directories):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::TestController):
(WTR::TestController::initialize):
(WTR::TestController::runTest):
* WebKitTestRunner/TestController.h:
(TestController):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123871 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2][EFL] Add an ACCELERATED_COMPOSITING implementation for Efl WebKit2
https://bugs.webkit.org/show_bug.cgi?id=91581

Patch by YoungTaeck Song <youngtaeck.song@samsung.com> on 2012-07-27
Reviewed by Noam Rosenthal.

Source/WebKit2:

This patch is a subset of Efl's UI_SIDE_COMPOSITING implementation.
When enter accelerated compositing mode, create evas_gl, evas_gl_context, and evas_gl_surface.

* PlatformEfl.cmake:
* Shared/LayerTreeContext.h:
(LayerTreeContext):
* UIProcess/API/efl/PageClientImpl.cpp:
(WebKit::PageClientImpl::viewSize):
(WebKit::PageClientImpl::enterAcceleratedCompositingMode):
(WebKit::PageClientImpl::exitAcceleratedCompositingMode):
* UIProcess/API/efl/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_Ewk_View_Private_Data::_Ewk_View_Private_Data):
(ewk_view_size_get):
(ewk_view_create_gl_surface):
(ewk_view_enter_accelerated_compositing_mode):
(ewk_view_exit_accelerated_compositing_mode):
(_ewk_view_smart_calculate):
* UIProcess/API/efl/ewk_view_private.h:

Tools:

Add a MiniBrowser's option for selecting evas engine.

* MiniBrowser/efl/main.c:
(browserCreate):
(main):

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