REGRESSION (r101575): Chinese input is broken when composing mail in iCloud using Safari.
https://bugs.webkit.org/show_bug.cgi?id=85840
<rdar://problem/11115520> 
        
Reviewed by Alexey Proskuryakov.

The revision that broke this, introduced a way to sanitize the markup when deleting a range selection.
iCloud listens for DOM modification events and clears the selection, altering the input method state.
The fix consists in adding a paramenter to DeleteSelectionCommand to control when we sanitize the
markup.
        
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::deleteSelection):
* editing/CompositeEditCommand.h:
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
(WebCore::DeleteSelectionCommand::doApply):
* editing/DeleteSelectionCommand.h:
(WebCore::DeleteSelectionCommand::create):
* editing/InsertTextCommand.cpp:
(WebCore::InsertTextCommand::doApply):



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

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

* platform/gtk/test_expectations.txt: Mark seamless frames as
failing until we enable the feature.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116370 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Refactor windowClipRectForLayer to remove the explicit RenderLayer dependency
https://bugs.webkit.org/show_bug.cgi?id=84090

Reviewed by David Hyatt.

Source/WebCore:

No observable change in behavior.

The function name was ambiguous as it was not a general purpose function but was
working directly on HTMLFrameOwnerElement. The rename makes this more obvious as
well as removes the explicit dependency on RenderLayer.

One of the slight change of this refactoring is that we now always null-check the
HTMLFrameOwnerElement's renderer as part windowClipRectForFrameOwner as I don't see
any evidence for the other code paths not to hit that. Also we may recur more on our
frame tree if we have no layer as we now call windowClipRect() in this case.

* page/FrameView.h:
(FrameView):
* plugins/PluginView.cpp:
(WebCore::PluginView::windowClipRect):
* WebCore.exp.in:
* WebCore.order:
* page/FrameView.cpp:
(WebCore::FrameView::windowClipRect):
Updated after windowClipRectForLayer name and signature change.

(WebCore::FrameView::windowClipRectForFrameOwner):
This function now takes the HTMLFrameOwnerElement directly.

* plugins/PluginView.cpp:
(WebCore::PluginView::PluginView):
(WebCore::PluginView::create):
* plugins/PluginView.h:
(PluginView):
Updated |m_element| to be an HTMLPlugInElement as this was what was
passed by every caller. This makes the conversion to HTMLFrameOwnerElement
possible.

Source/WebKit/chromium:

* src/WebPluginContainerImpl.cpp:
Updated after windowClipRectForLayer name and signature change.

Source/WebKit/win:

* WebCoreSupport/EmbeddedWidget.cpp:
(EmbeddedWidget::windowClipRect):
Updated after windowClipRectForLayer name and signature change.

* WebCoreSupport/EmbeddedWidget.h:
(EmbeddedWidget):
(EmbeddedWidget::EmbeddedWidget):
Updated the internal DOM pointer to be an HTMLPlugInElement
as it was what was passed in anyway. Also fixed some style
issues detected by our tools.

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::clipRectInWindowCoordinates):
Updated after windowClipRectForLayer name and signature change.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116371 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-05-07  Oliver Hunt  <oliver@apple.com>

        Rolling out r110287

        RS=Filip Pizlo

        r110287 was meant to be refactoring only, but changed behavior
        enough to break some websites, including qq.com.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116372 268f45cc-cd09-0410-ab3c-d52691b4dbfc
:first-line text-decorations are not rendered
https://bugs.webkit.org/show_bug.cgi?id=6047

Source/WebCore:

Text-decorations are applied during paint phase. The style was not being properly selected in case of
first line box. The patch fixes this.

Patch by Pravin D <pravind.2k4@gmail.com> on 2012-05-07
Reviewed by Eric Seidel.

Tests: fast/css/first-line-text-decoration-inherited-from-parent.html
       fast/css/first-line-text-decoration.html

* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paintDecoration):
Inform the decoration color retriever if this box is part of the first line box or not.

* rendering/RenderObject.cpp:
(WebCore::decorationColor):
Changed the argument from RenderObject* to RenderStyle*. As this function is just a helper to getTextDecorationColors
as used RenderObject solely to retrieve the corresponding RenderStyle, which(RenderStyle*) was already available with the latter function.

(WebCore::RenderObject::getTextDecorationColors):
Take a new variable to check if first line style or the regular style has to be used.
Sends RenderStyle* as an argument to decorationColor().

* rendering/RenderObject.h:
(RenderObject):

LayoutTests:

Patch by Pravin D <pravind.2k4@gmail.com> on 2012-05-07
Reviewed by Eric Seidel.

* fast/css/first-line-text-decoration.html: Added.
* platform/qt-linux/fast/css/first-line-text-decoration-expected.png: Added.
* platform/qt-linux/fast/css/first-line-text-decoration-expected.txt: Added.
 This test checks if text-decoration present in the tags first-line style is applied properly.

* fast/css/first-line-text-decoration-inherited-from-parent.html: Added.
* platform/qt-linux/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/qt-linux/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt: Added.
 This test checks if the text-decoration and text color is chosen properly in the case where
 the first-line style is inherited from a parent and contains such text-decorations.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116373 268f45cc-cd09-0410-ab3c-d52691b4dbfc
vertexAttribPointer needs to reject large negative offsets
https://bugs.webkit.org/show_bug.cgi?id=85117

Reviewed by Kenneth Russell.

Source/WebCore: 

* html/canvas/WebGLRenderingContext.cpp: Use long long for GLsizeiptr and GLintptr
(WebCore):
(WebCore::WebGLRenderingContext::bufferData):
(WebCore::WebGLRenderingContext::bufferSubData):
(WebCore::WebGLRenderingContext::drawElements):
(WebCore::WebGLRenderingContext::getVertexAttribOffset):
(WebCore::WebGLRenderingContext::vertexAttribPointer):
* html/canvas/WebGLRenderingContext.h: Ditto
(WebGLRenderingContext):
* html/canvas/WebGLRenderingContext.idl: Ditto

LayoutTests: 

* fast/canvas/webgl/index-validation-expected.txt:
* fast/canvas/webgl/index-validation.html: Add a test case for large negative offset.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116374 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] move event_listener_unittest to webkit_unit_tests
https://bugs.webkit.org/show_bug.cgi?id=85836

Reviewed by James Robinson.

Porting the test from src/webkit/tools/test_shell/event_listener_unittest.cc.
All I did was change the style and use the FrameTestHelper to load the file.

* WebKit.gyp: Exclude file in components build.
* WebKit.gypi: Add new file.
* tests/EventListenerTest.cpp: Added.
(WebKit):
(TestWebDOMEventListener):
(WebKit::TestWebDOMEventListener::TestWebDOMEventListener):
(WebKit::TestWebDOMEventListener::~TestWebDOMEventListener):
(WebKit::TestWebDOMEventListener::eventCount):
(WebKit::TestWebDOMEventListener::eventAt):
(WebKit::TestWebDOMEventListener::clearEvents):
(WebDOMEventListenerTest):
(WebKit::WebDOMEventListenerTest::WebDOMEventListenerTest):
(WebKit::WebDOMEventListenerTest::SetUp):
(WebKit::WebDOMEventListenerTest::TearDown):
(WebKit::WebDOMEventListenerTest::mainFrame):
(WebKit::WebDOMEventListenerTest::document):
(WebKit::WebDOMEventListenerTest::executeScript):
(WebKit::WebDOMEventListenerTest::GetNodeID):
(WebKit::TEST_F):
* tests/data/listener/mutation_event_listener.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116375 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Correct logical error in accessibilityIsIgnored.
https://bugs.webkit.org/show_bug.cgi?id=85828

Patch by David Tseng <dtseng@google.com> on 2012-05-07
Reviewed by Chris Fleizach.

Covered by existing tests.

* accessibility/AccessibilityMenuListOption.cpp:
(WebCore::AccessibilityMenuListOption::accessibilityIsIgnored):
* accessibility/AccessibilityMenuListPopup.cpp:
(WebCore::AccessibilityMenuListPopup::accessibilityIsIgnored):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116376 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Region::intersects() and Region::contains() are slow due to copy overhead
https://bugs.webkit.org/show_bug.cgi?id=81076

Reviewed by Anders Carlsson.

Source/WebCore:

Testing contains() and intersects() requires a copy which ends up
invoking a malloc on sufficiently complicated web pages, and slows down
the test unnecessarily. These methods can be done by iterating over the
Region::Shape values rather than making a copy of the entire region and
manipulating it.

This uses Region::Shape::compareShapes() to walk the query regions and
compute the result of the intersects or contains tests without making a
copy.

This change improves the performance of the Region overlap testing for
composited layers, and allows for testing contains() before unite() to
avoid unnecessary copies of the Region when inserting into complex
Regions. With a layout test that has 225 composited layers, and tests
Region.intersects() for 1000 layers above them, this change decreases
the running time of the test by 1.2% by avoiding a copy of the 225
rects each time.

Unit test: RegionTest.intersectsRegion
           RegionTest.containsRegion

* platform/graphics/Region.cpp:
(WebCore::Region::contains):
(WebCore::Region::intersects):
(WebCore):
(WebCore::Region::Shape::compareShapes):
(Region::Shape::CompareContainsOperation):
(WebCore::Region::Shape::CompareContainsOperation::aOutsideB):
(WebCore::Region::Shape::CompareContainsOperation::bOutsideA):
(WebCore::Region::Shape::CompareContainsOperation::aOverlapsB):
(Region::Shape::CompareIntersectsOperation):
(WebCore::Region::Shape::CompareIntersectsOperation::aOutsideB):
(WebCore::Region::Shape::CompareIntersectsOperation::bOutsideA):
(WebCore::Region::Shape::CompareIntersectsOperation::aOverlapsB):
* platform/graphics/Region.h:
(Shape):

Source/WebKit/chromium:

* tests/RegionTest.cpp:
(WebCore):
(WebCore::TEST):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116377 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add platform/mac/ results for new tests added by r116373.

* platform/mac/fast/css/first-line-text-decoration-expected.txt: Added.
* platform/mac/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116382 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r116375.
http://trac.webkit.org/changeset/116375
https://bugs.webkit.org/show_bug.cgi?id=85850

Build break on Chromium-win and Chromium-mac. (Requested by
tkent on #webkit).

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

* WebKit.gyp:
* WebKit.gypi:
* tests/EventListenerTest.cpp: Removed.
* tests/data/listener/mutation_event_listener.html: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116383 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Web Intents] Flagged-off implementation of an intent tag for registration.
https://bugs.webkit.org/show_bug.cgi?id=73039

Patch by Greg Billock <gbillock@google.com> on 2012-05-07
Reviewed by Adam Barth.

Source/WebCore:

The intent tag is a declarative way for pages to register that they
accept delivery of web intent invocations of particular types. See the
spec at http://dvcs.w3.org/hg/web-intents/raw-file/tip/spec/Overview.html

After discussion on the WhatWG list (see thread at
http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-April/035301.html)
the current plan is to combine declarative registration of Web
Intents and protocol/content handlers with this tag. Alternatives
considered were the meta and link tags.

* WebCore.gypi:
* html/HTMLAttributeNames.in:
* html/HTMLElementsAllInOne.cpp:
* html/HTMLIntentElement.cpp: Added.
(WebCore::HTMLIntentElement::HTMLIntentElement):
(WebCore::HTMLIntentElement::create):
(WebCore::HTMLIntentElement::insertedIntoDocument):
* html/HTMLIntentElement.h: Added.
* html/HTMLIntentElement.idl: Added.
* html/HTMLTagNames.in:
* loader/FrameLoaderClient.h:
(WebCore::FrameLoaderClient::registerIntentService):
* page/DOMWindow.idl:

Source/WebKit/chromium:

The intent tag allows web pages to mark themselves declaratively as accepting
web intent delivery of particular characteristics (action/type).
See the spec at:
http://dvcs.w3.org/hg/web-intents/raw-file/tip/spec/Overview.html

* WebKit.gyp:
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::registerIntentService):
* src/FrameLoaderClientImpl.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116384 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Android wishes to use an empty implementation if AXObjectCache
https://bugs.webkit.org/show_bug.cgi?id=85842

Reviewed by Eric Seidel.

Source/WebCore:

Add proper HAVE(ACCESSIBILITY) ifdefs so that Chromium builds without
accessibility.

* accessibility/chromium/AXObjectCacheChromium.cpp:
* accessibility/chromium/AccessibilityObjectChromium.cpp:

Source/WTF:

Disable accessibility on OS(ANDROID) for PLATFORM(CHROMIUM).

* wtf/Platform.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116385 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Chromium rebaselines after http://trac.webkit.org/changeset/116373.
Differences look to just be in platform-specific text rendering.

* platform/chromium-linux/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-mac/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-win/fast/css/first-line-text-decoration-inherited-from-parent-expected.png: Added.
* platform/chromium-win/fast/css/first-line-text-decoration-inherited-from-parent-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116386 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[webkitpy] Remove Python 2.5-specific workaround from http_server_base.py.
https://bugs.webkit.org/show_bug.cgi?id=85852

Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/servers/http_server_base.py:
(HttpServerBase._is_server_running_on_all_ports): Revert the part
of r89412 which was a workaround for an issue with Python 2.5 on
Mac 10.5.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116387 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Support cross-filesystem operations in FileSystem API
https://bugs.webkit.org/show_bug.cgi?id=84135

Reviewed by David Levin.

Source/WebCore:

Currently we pass Entry's fullPath to AsyncFileSystem layer where
we convert the given path to filesystem URL which includes origin and
filesystem type information, but in that way we cannot handle
cross-filesystem operations (e.g. cross-filesystem copy and move)
well since we end up with always attaching the source filesystem's
origin and type information for argument paths.

This patch does:
- change AsyncFileSystem's operation methods not to take entry paths
  but complete filesystem URLs.
- move type and rootURL information from AsyncFileSystem instance into
  DOMFileSystemBase instance (platform layer to Modules/filesystem layer)
- move filesystem-type related code in AsyncFileSystemChromium.cpp into
  DOMFileSystemChromium.cpp, which implements chromioum-specific
  DOMFileSystem code.
- move platform/FileSystemType.h into Modules/filesystem/FileSystemType.h.
- adding FileSystemType.h entry to build files (e.g. WebCore.gypi, WebCore.xcodeproj etc)

Test: fast/filesystem/cross-filesystem-op.html

* Modules/filesystem/DOMFileSystem.cpp:
(WebCore::DOMFileSystem::create):
(WebCore::DOMFileSystem::DOMFileSystem):
(WebCore::DOMFileSystem::createWriter):
(WebCore::DOMFileSystem::createFile):
* Modules/filesystem/DOMFileSystem.h:
* Modules/filesystem/DOMFileSystemBase.cpp:
(WebCore::DOMFileSystemBase::DOMFileSystemBase):
(WebCore::DOMFileSystemBase::createFileSystemURL): Added as an internal
implementation of Entry.toURL().
(WebCore::DOMFileSystemBase::getMetadata):
(WebCore::verifyAndGetDestinationPathForCopyOrMove):
(WebCore::DOMFileSystemBase::move):
(WebCore::DOMFileSystemBase::copy):
(WebCore::DOMFileSystemBase::remove):
(WebCore::DOMFileSystemBase::removeRecursively):
(WebCore::DOMFileSystemBase::getParent):
(WebCore::DOMFileSystemBase::getFile):
(WebCore::DOMFileSystemBase::getDirectory):
(WebCore::DOMFileSystemBase::readDirectory):
* Modules/filesystem/DOMFileSystemBase.h: Changed to make each
DOMFileSystemBase instance have filesystem type and rootURL (they were
held by AsyncFileSystem previously)
(WebCore::DOMFileSystemBase::create): Changed to take additional parameters.
(WebCore::DOMFileSystemBase::type): Added.(Moved from AsyncFileSystem::type)
(WebCore::DOMFileSystemBase::rootURL): Added.(Moved from AsyncFileSystem::rootURL).
* Modules/filesystem/DOMFileSystemSync.cpp:
(WebCore::DOMFileSystemSync::create):
(WebCore::DOMFileSystemSync::DOMFileSystemSync):
(WebCore::DOMFileSystemSync::createFile):
(WebCore::DOMFileSystemSync::createWriter):
* Modules/filesystem/DOMFileSystemSync.h:
(WebCore::DOMFileSystemSync::create):
* Modules/filesystem/DOMWindowFileSystem.cpp:
(WebCore::DOMWindowFileSystem::webkitRequestFileSystem):
(WebCore::DOMWindowFileSystem::webkitResolveLocalFileSystemURL):
* Modules/filesystem/EntryBase.cpp:
(WebCore::EntryBase::toURL):
* Modules/filesystem/FileSystemCallbacks.cpp:
(WebCore::FileSystemCallbacks::create):
(WebCore::FileSystemCallbacks::FileSystemCallbacks):
(WebCore::FileSystemCallbacks::didOpenFileSystem):
(WebCore::ResolveURICallbacks::create):
(WebCore::ResolveURICallbacks::ResolveURICallbacks):
(WebCore::ResolveURICallbacks::didOpenFileSystem):
* Modules/filesystem/FileSystemCallbacks.h:
(FileSystemCallbacks):
(ResolveURICallbacks):
* Modules/filesystem/FileSystemType.h: Renamed from Source/WebCore/platform/FileSystemType.h.
* Modules/filesystem/LocalFileSystem.cpp:
(WebCore::openFileSystem):
(WebCore::LocalFileSystem::readFileSystem):
(WebCore::LocalFileSystem::requestFileSystem):
* Modules/filesystem/LocalFileSystem.h:
* Modules/filesystem/WorkerContextFileSystem.cpp:
(WebCore::WorkerContextFileSystem::webkitRequestFileSystem):
(WebCore::WorkerContextFileSystem::webkitRequestFileSystemSync):
(WebCore::WorkerContextFileSystem::webkitResolveLocalFileSystemURL):
(WebCore::WorkerContextFileSystem::webkitResolveLocalFileSystemSyncURL):
* Modules/filesystem/chromium/DOMFileSystemChromium.cpp: Added for chromium-specific
implementation. Almost all of the code is moved from AsyncFileSystemChromium.
(WebCore::DOMFileSystemBase::isValidType):
(WebCore::DOMFileSystemBase::crackFileSystemURL):
(WebCore::DOMFileSystemBase::supportsToURL):
(WebCore::DOMFileSystemBase::createFileSystemURL):
(WebCore::DOMFileSystemChromium::createIsolatedFileSystem):
* Modules/filesystem/chromium/DOMFileSystemChromium.h: Added.
* Modules/filesystem/chromium/DataTransferItemFileSystemChromium.cpp:
(WebCore::DataTransferItemFileSystem::webkitGetAsEntry):
* Modules/filesystem/chromium/DraggedIsolatedFileSystem.cpp:
(WebCore::DraggedIsolatedFileSystem::getDOMFileSystem):
* WebCore.gypi:
* platform/AsyncFileSystem.cpp:
(WebCore::AsyncFileSystem::openFileSystem):
* platform/AsyncFileSystem.h:
(AsyncFileSystem):
(WebCore::AsyncFileSystem::AsyncFileSystem):
* platform/AsyncFileSystemCallbacks.h:
(WebCore::AsyncFileSystemCallbacks::didOpenFileSystem):
* platform/blackberry/AsyncFileSystemBlackBerry.cpp:
(WebCore::AsyncFileSystem::create):
(WebCore::AsyncFileSystem::openFileSystem):
(WebCore::AsyncFileSystemBlackBerry::AsyncFileSystemBlackBerry):
(WebCore::AsyncFileSystemBlackBerry::move):
(WebCore::AsyncFileSystemBlackBerry::copy):
(WebCore::AsyncFileSystemBlackBerry::remove):
(WebCore::AsyncFileSystemBlackBerry::removeRecursively):
(WebCore::AsyncFileSystemBlackBerry::readMetadata):
(WebCore::AsyncFileSystemBlackBerry::createFile):
(WebCore::AsyncFileSystemBlackBerry::createDirectory):
(WebCore::AsyncFileSystemBlackBerry::fileExists):
(WebCore::AsyncFileSystemBlackBerry::directoryExists):
(WebCore::AsyncFileSystemBlackBerry::readDirectory):
(WebCore::AsyncFileSystemBlackBerry::createWriter):
(WebCore::AsyncFileSystemBlackBerry::createSnapshotFileAndReadMetadata):
* platform/blackberry/AsyncFileSystemBlackBerry.h:
* platform/chromium/PlatformSupport.h:
* platform/gtk/AsyncFileSystemGtk.cpp:
(WebCore::AsyncFileSystem::create):
(WebCore::AsyncFileSystem::openFileSystem):
(WebCore::AsyncFileSystemGtk::AsyncFileSystemGtk):
(WebCore::AsyncFileSystemGtk::move):
(WebCore::AsyncFileSystemGtk::copy):
(WebCore::AsyncFileSystemGtk::remove):
(WebCore::AsyncFileSystemGtk::removeRecursively):
(WebCore::AsyncFileSystemGtk::readMetadata):
(WebCore::AsyncFileSystemGtk::createFile):
(WebCore::AsyncFileSystemGtk::createDirectory):
(WebCore::AsyncFileSystemGtk::fileExists):
(WebCore::AsyncFileSystemGtk::directoryExists):
(WebCore::AsyncFileSystemGtk::readDirectory):
(WebCore::AsyncFileSystemGtk::createWriter):
* platform/gtk/AsyncFileSystemGtk.h:

* GNUmakefile.list.am: Added FileSystemType.h.
* WebCore.gypi: Added FileSystemType.h.
* WebCore.vcproj/WebCore.vcproj: Added FileSystemType.h.
* WebCore.xcodeproj/project.pbxproj: Added FileSystemType.h.

Source/WebKit/chromium:

Currently we pass Entry's fullPath to AsyncFileSystem layer where
we convert the given path to filesystem URL which includes origin and
filesystem type information, but in that way we cannot handle
cross-filesystem operations (e.g. cross-filesystem copy and move)
well since we end up with always attaching the source filesystem's
origin and type information for argument paths.

This patch does:
- move filesystem-type related code out of AsyncFileSystemChromium.cpp
  (moving into DOMFileSystemChromium.cpp)
- change AsyncFileSystemChromium's methods implementation not to take
  entry paths but complete filesystem URLs.

* src/AsyncFileSystemChromium.cpp:
(WebCore::AsyncFileSystemChromium::AsyncFileSystemChromium):
(WebCore::AsyncFileSystemChromium::move):
(WebCore::AsyncFileSystemChromium::copy):
(WebCore::AsyncFileSystemChromium::remove):
(WebCore::AsyncFileSystemChromium::removeRecursively):
(WebCore::AsyncFileSystemChromium::readMetadata):
(WebCore::AsyncFileSystemChromium::createFile):
(WebCore::AsyncFileSystemChromium::createDirectory):
(WebCore::AsyncFileSystemChromium::fileExists):
(WebCore::AsyncFileSystemChromium::directoryExists):
(WebCore::AsyncFileSystemChromium::readDirectory):
(WebCore::AsyncFileSystemChromium::createWriter):
(WebCore::AsyncFileSystemChromium::createSnapshotFileAndReadMetadata):
* src/AsyncFileSystemChromium.h:
(WebCore::AsyncFileSystemChromium::create):
(AsyncFileSystemChromium):
* src/LocalFileSystemChromium.cpp:
(WebCore::openFileSystemHelper):
* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::createAsyncFileSystem):
* src/WebFileSystemCallbacksImpl.cpp:
(WebKit::WebFileSystemCallbacksImpl::WebFileSystemCallbacksImpl):
(WebKit::WebFileSystemCallbacksImpl::didOpenFileSystem):
* src/WebFileSystemCallbacksImpl.h:
(WebFileSystemCallbacksImpl):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::createFileSystem):
(WebKit::WebFrameImpl::createFileEntry):
* src/WorkerAsyncFileSystemChromium.cpp:
(WebCore::WorkerAsyncFileSystemChromium::WorkerAsyncFileSystemChromium):
(WebCore::WorkerAsyncFileSystemChromium::move):
(WebCore::WorkerAsyncFileSystemChromium::copy):
(WebCore::WorkerAsyncFileSystemChromium::remove):
(WebCore::WorkerAsyncFileSystemChromium::removeRecursively):
(WebCore::WorkerAsyncFileSystemChromium::readMetadata):
(WebCore::WorkerAsyncFileSystemChromium::createFile):
(WebCore::WorkerAsyncFileSystemChromium::createDirectory):
(WebCore::WorkerAsyncFileSystemChromium::fileExists):
(WebCore::WorkerAsyncFileSystemChromium::directoryExists):
(WebCore::WorkerAsyncFileSystemChromium::readDirectory):
(WebCore::WorkerAsyncFileSystemChromium::createWriter):
(WebCore::WorkerAsyncFileSystemChromium::createSnapshotFileAndReadMetadata):
* src/WorkerAsyncFileSystemChromium.h:
(WebCore::WorkerAsyncFileSystemChromium::create):
(WorkerAsyncFileSystemChromium):

LayoutTests:

* fast/filesystem/cross-filesystem-op-expected.txt: Added.
* fast/filesystem/cross-filesystem-op.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116388 268f45cc-cd09-0410-ab3c-d52691b4dbfc
width/height attributes of input element cannot be accessed by JavaScript.
https://bugs.webkit.org/show_bug.cgi?id=70304

Patch by Dongwoo Im <dw.im@samsung.com> on 2012-05-07
Reviewed by Darin Adler.

If the type of input element is image button, width/height attributes should be supported.
These attributes are defined in HTML5 spec.
http://www.w3.org/TR/html5/the-map-element.html#attr-dim-width

Source/WebCore:

Tests: fast/forms/input-width-height-attributes-without-renderer-loaded-image.html
       fast/forms/input-width-height-attributes-without-renderer-not-loaded-image.html
       fast/forms/input-width-height-attributes-without-renderer.html
       fast/forms/input-width-height-attributes.html

* html/HTMLInputElement.cpp: Add setter/getter functions to query/set width/height of input element.
(WebCore):
(WebCore::HTMLInputElement::height): Gets height of input element.
(WebCore::HTMLInputElement::width): Gets width of input element.
(WebCore::HTMLInputElement::setHeight): Sets height of input element.
(WebCore::HTMLInputElement::setWidth): Sets width of input element.
* html/HTMLInputElement.h: Add public prototype.
(HTMLInputElement):
* html/HTMLInputElement.idl: Add width/height attributes.
* html/ImageInputType.cpp: Add getter functions if the element is an image button.
(WebCore):
(WebCore::ImageInputType::height): Gets height of input element.
(WebCore::ImageInputType::width): Gets width of input element.
* html/ImageInputType.h: Add prototype.
(ImageInputType):
* html/InputType.cpp: Add getter functions.
(WebCore::InputType::height): Returns zero.
(WebCore):
(WebCore::InputType::width): Returns zero.
* html/InputType.h: Add prototype.
(InputType):

LayoutTests:

* fast/forms/input-width-height-attributes-expected.txt: Added.
* fast/forms/input-width-height-attributes-without-renderer-expected.txt: Added.
* fast/forms/input-width-height-attributes-without-renderer-loaded-image-expected.txt: Added.
* fast/forms/input-width-height-attributes-without-renderer-loaded-image.html: Added.
* fast/forms/input-width-height-attributes-without-renderer-not-loaded-image-expected.txt: Added.
* fast/forms/input-width-height-attributes-without-renderer-not-loaded-image.html: Added.
* fast/forms/input-width-height-attributes-without-renderer.html: Added.
* fast/forms/input-width-height-attributes.html: Added.
* fast/forms/resources/green.jpg: Added.
* fast/forms/resources/image-slow.pl: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116389 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Add expectations for first-line-text-decoration.html.

* platform/chromium-linux/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-mac-leopard/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-mac/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-win/fast/css/first-line-text-decoration-expected.png: Added.
* platform/chromium-win/fast/css/first-line-text-decoration-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116390 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed build fix: adding missing include.

* src/AsyncFileSystemChromium.cpp:

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