Support external keyboard function (SelectAll, Cut, Copy, Paste)
[framework/web/webkit-efl.git] / Source / WebCore / ChangeLog
index c59f731..4bca8e5 100644 (file)
-2012-11-30  Jer Noble  <jer.noble@apple.com>
+2013-03-18  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
 
-        Unreviewed Windows build fix.
+        [EFL] Cancel mark on search field is not displayed
+        https://bugs.webkit.org/show_bug.cgi?id=94880
 
-        Add a default: entry to an case statement to fix a build error when compiled in VS2005.
+        Reviewed by Kenneth Rohde Christiansen.
 
-        * html/MediaController.cpp:
-        (MediaController::playbackState):
+        adjustSearchFieldCancelButtonStyle() doesn't set style width and height for search cancel button.
+        So, the button isn't showing up in search input field. Besides the button size should be scaled based
+        on the font size as chromium, qt, and blackberry ports.
+
+        Tests: fast/forms/search-cancel-button-style-sharing.html
+               fast/forms/search-rtl.html
+        * platform/efl/RenderThemeEfl.cpp:
+        (WebCore):
+        (WebCore::RenderThemeEfl::adjustSearchFieldCancelButtonStyle):
+
+2012-08-30  Kangil Han  <kangil.han@samsung.com>
+
+        Fix compile warning when enable tiled backing store
+        https://bugs.webkit.org/show_bug.cgi?id=95422
+
+        Reviewed by Kentaro Hara.
+
+        Fixed compile warning messages when enabled tiled backing store.
+        In case of TiledBackingStore, it was first thought about static_cast<unsigned>.
+        However, if minus value is assigned to the comparison, it would be critical.
+        So, it was modified as using int value in tiled coordinate calculation.
+
+        * page/Frame.cpp:
+        (WebCore::Frame::tiledBackingStorePaintEnd): comparison between signed and unsigned integer expressions [-Wsign-compare]
+        * platform/graphics/TiledBackingStore.cpp:
+        (WebCore::TiledBackingStore::invalidate): comparison between signed and unsigned integer expressions [-Wsign-compare]
+        (WebCore::TiledBackingStore::paint): comparison between signed and unsigned integer expressions [-Wsign-compare]
+        (WebCore::TiledBackingStore::coverageRatio): comparison between signed and unsigned integer expressions [-Wsign-compare]
+        (WebCore::TiledBackingStore::createTiles): comparison between signed and unsigned integer expressions [-Wsign-compare]
+        * platform/graphics/cairo/GLContext.cpp:
+        (WebCore::GLContext::createOffscreenContext): no return statement in function returning non-void [-Wreturn-type]
+
+2012-09-28  Alberto Garcia  <agarcia@igalia.com>
+
+        TextureMapperGL: fix -Wsign-compare compilation warning.
+        https://bugs.webkit.org/show_bug.cgi?id=97928
+
+        Reviewed by Martin Robinson.
+
+        Use size_t rather than int to iterate over FilterOperations.
+
+        * platform/graphics/texmap/TextureMapperGL.cpp:
+        (WebCore::BitmapTextureGL::applyFilters):
+
+2013-03-11  Kent Tamura  <tkent@chromium.org>
+
+        Inappropriate validation message for required number/date input elements
+        https://bugs.webkit.org/show_bug.cgi?id=111982
+
+        Reviewed by Kentaro Hara.
+
+        For validation message, badInput messages should take precedence
+        over valueMissing messages because users already filled out the
+        field with a bad value.
+
+        Tests: Update fast/forms/validationMessage.html
+
+        * html/InputType.cpp:
+        (WebCore::InputType::validationMessage):
+        Check badInput first.
+
+2013-03-11  Kent Tamura  <tkent@chromium.org>
+
+        Refactoring: Move the content of HTMLInputElement::subtreeHasChanged to TextFieldInputType
+        https://bugs.webkit.org/show_bug.cgi?id=103195
+
+        Reviewed by Kentaro Hara.
+
+        HTMLInputElement::subtreeHasChanged is called only if the input is
+        a text field. The code should be moved to TextFieldInputType.
+
+        No new tests. This should not change any behavior.
+
+        * html/HTMLInputElement.cpp:
+        - Remove unnecessary NumberInputType.h inclusion.
+        - Remove convertFromVisibleValue. It was used only by subtreeHasChanged.
+        (WebCore::HTMLInputElement::subtreeHasChanged):
+        Move the code to TextFieldInputType::subtreeHasChanged except
+        calculateAndAdjustDirectionality, which is a protected member of
+        HTMLElement.
+        * html/HTMLInputElement.h:
+        (HTMLInputElement): Remove convertFromVisibleValue.
+
+        * html/InputType.cpp:
+        Move convertFromVisibleValue to TextFieldInputType.
+        (WebCore::InputType::subtreeHasChanged):
+        Add ASSERT_NOT_REACHED.
+        * html/InputType.h:
+        (InputType): Remove convertFromVisibleValue.
+
+        * html/TextFieldInputType.cpp:
+        (WebCore::TextFieldInputType::convertFromVisibleValue):
+        Moved from InputType.
+        (WebCore::TextFieldInputType::subtreeHasChanged):
+        Moved from HTMLInputElement. A latter part is moved to
+        didSetValueByUserEdit to be hooked by SearchInputType.
+        (WebCore::TextFieldInputType::didSetValueByUserEdit):
+        Moved from HTMLInputElement::subtreeHasChanged, and clean up the code.
+        * html/TextFieldInputType.h:
+        (TextFieldInputType):
+        - Move convertFromVisibleValue from InputType.
+        - Add didSetValueByUserEdit and subtreeHasChanged.
+
+        * html/SearchInputType.cpp:
+        (WebCore::SearchInputType::didSetValueByUserEdit):
+        Renamed from subtreeHasChanged, and calls TextFieldInputType::didSetValueByUserEdit.
+        * html/SearchInputType.h:
+        (SearchInputType): Rename subtreeHasChanged to didSetValueByUserEdit.
+
+2012-11-22  Kentaro Hara  <haraken@chromium.org>
+
+        [V8] Move WorkerExecutionContextProxy::initializeIfNeeded() to V8Initializer
+        https://bugs.webkit.org/show_bug.cgi?id=103061
+
+        Reviewed by Adam Barth.
+
+        This is an incremental step to remove WorkerExecutionContextProxy.
+        This patch moves WorkerExecutionContextProxy::initializeIfNeeded() to V8Initializer.
+        This patch also renames methods so that the names become consistent
+        between the main thread and workers.
+
+        No tests. No change in behavior.
+
+        * bindings/v8/V8Initializer.cpp:
+        (WebCore::reportFatalErrorInMainThread):
+        (WebCore::messageHandlerInMainThread):
+        (WebCore::failedAccessCheckCallbackInMainThread):
+        (WebCore::V8Initializer::initializeMainThreadIfNeeded):
+        (WebCore::reportFatalErrorInWorker):
+        (WebCore):
+        (WebCore::messageHandlerInWorker):
+        (WebCore::V8Initializer::initializeWorkerIfNeeded):
+        * bindings/v8/V8Initializer.h:
+        (V8Initializer):
+        * bindings/v8/WorkerContextExecutionProxy.cpp:
+        (WebCore::WorkerContextExecutionProxy::WorkerContextExecutionProxy):
+        * bindings/v8/WorkerContextExecutionProxy.h:
+        (WorkerContextExecutionProxy):
+
+2012-11-25  Christophe Dumez  <christophe.dumez@intel.com>
+
+        [EFL] Refactor RenderThemeEfl::ThemePartCacheEntry::reuse()
+        https://bugs.webkit.org/show_bug.cgi?id=103189
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Check if the entry size and type changed in
+        RenderThemeEfl::ThemePartCacheEntry::reuse() to avoid
+        useless processing if one of them did not change.
+
+        Remove useless call to cairo_surface_finish() since
+        we are using a smart pointer for the surface.
+
+        Resize the edge object *after* loading its content
+        from the theme file as it seems more logical this
+        way.
+
+        No new tests, no behavior change for layout tests.
+
+        * platform/efl/RenderThemeEfl.cpp:
+        (WebCore::RenderThemeEfl::ThemePartCacheEntry::reuse):
+        * platform/efl/RenderThemeEfl.h:
+        (ThemePartCacheEntry):
+
+2012-11-25  Ryosuke Niwa  <rniwa@webkit.org>
+
+        Rename DynamicNodeList to LiveNodeList
+        https://bugs.webkit.org/show_bug.cgi?id=103197
+
+        Reviewed by Ojan Vafai.
+
+        Rename DynamicNodeList to LiveNodeList to match the terminology used in DOM4 working draft:
+        http://www.w3.org/TR/2012/WD-dom-20120405/#concept-collection-live
+        "A collection (either NodeList or HTMLCollection) can be either live or static".
+
+        Also rename DynamicNodeListCacheBase to LiveNodeListBase, and merge DynamicSubtreeNodeList
+        into LiveNodeList (old DynamicNodeList) now that the only difference between those two classes
+        is the former calling registerNodeListCache and unregisterNodeListCache on Document.
+
+        This patch completes the series of simplification of NodeList/HTMLCollection classes.
+
+        * CMakeLists.txt:
+        * GNUmakefile.list.am:
+        * Target.pri:
+        * WebCore.gypi:
+        * WebCore.xcodeproj/project.pbxproj:
+        * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
+        (WebCore::getNamedItems):
+        * bindings/js/JSNodeListCustom.cpp:
+        (WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):
+        * bindings/v8/custom/V8NodeListCustom.cpp:
+        (WebCore::V8NodeList::opaqueRootForGC):
+        * dom/ChildNodeList.cpp:
+        (WebCore::ChildNodeList::ChildNodeList):
+        (WebCore::ChildNodeList::nodeMatches):
+        * dom/ChildNodeList.h:
+        * dom/ClassNodeList.cpp:
+        (WebCore::ClassNodeList::ClassNodeList):
+        * dom/ClassNodeList.h:
+        * dom/DOMAllInOne.cpp:
+        * dom/Document.cpp:
+        (WebCore::Document::registerNodeListCache):
+        (WebCore::Document::unregisterNodeListCache):
+        (WebCore):
+        * dom/Document.h:
+        (WebCore):
+        (Document):
+        * dom/DynamicNodeList.cpp: Removed.
+        * dom/DynamicNodeList.h: Removed.
+        * dom/LiveNodeList.cpp: Copied from Source/WebCore/dom/DynamicNodeList.cpp.
+        (WebCore::LiveNodeListBase::rootNode):
+        (WebCore::LiveNodeListBase::invalidateCache):
+        (WebCore::LiveNodeListBase::invalidateIdNameCacheMaps):
+        (WebCore::LiveNodeListBase::reportMemoryUsage):
+        (WebCore::LiveNodeList::namedItem):
+        * dom/LiveNodeList.h: Copied from Source/WebCore/dom/DynamicNodeList.h.
+        (WebCore::LiveNodeListBase::LiveNodeListBase):
+        (WebCore::LiveNodeListBase::shouldInvalidateTypeOnAttributeChange):
+        (WebCore::LiveNodeList::LiveNodeList):
+        (WebCore::LiveNodeList::~LiveNodeList):
+        (LiveNodeList):
+        * dom/MicroDataItemList.cpp:
+        (WebCore::MicroDataItemList::MicroDataItemList):
+        * dom/MicroDataItemList.h:
+        * dom/NameNodeList.cpp:
+        (WebCore::NameNodeList::NameNodeList):
+        * dom/NameNodeList.h:
+        * dom/Node.cpp:
+        (WebCore::shouldInvalidateNodeListCachesForAttr):
+        (WebCore::Document::invalidateNodeListCaches):
+        * dom/Node.h:
+        (WebCore):
+        * dom/NodeList.h:
+        (WebCore::NodeList::isLiveNodeList):
+        * dom/NodeRareData.h:
+        (NodeListsNodeData):
+        (WebCore::NodeListsNodeData::removeCacheWithAtomicName):
+        (WebCore::NodeListsNodeData::removeCacheWithName):
+        (WebCore::NodeListsNodeData::removeCacheWithQualifiedName):
+        (WebCore::NodeListsNodeData::adoptTreeScope):
+        * dom/PropertyNodeList.cpp:
+        (WebCore::PropertyNodeList::PropertyNodeList):
+        * dom/PropertyNodeList.h:
+        * dom/TagNodeList.cpp:
+        (WebCore::TagNodeList::TagNodeList):
+        * dom/TagNodeList.h:
+        * html/HTMLCollection.cpp:
+        (WebCore::HTMLCollection::HTMLCollection):
+        (WebCore::LiveNodeListBase::iterateForNextNode):
+        (WebCore::LiveNodeListBase::itemBeforeOrAfter):
+        (WebCore::LiveNodeListBase::itemBefore):
+        (WebCore::LiveNodeListBase::itemAfter):
+        (WebCore::LiveNodeListBase::isLastItemCloserThanLastOrCachedItem):
+        (WebCore::LiveNodeListBase::isFirstItemCloserThanCachedItem):
+        (WebCore::LiveNodeListBase::setItemCache):
+        (WebCore::LiveNodeListBase::length):
+        (WebCore::LiveNodeListBase::item):
+        (WebCore::LiveNodeListBase::itemBeforeOrAfterCachedItem):
+        * html/HTMLCollection.h:
+        * html/LabelsNodeList.cpp:
+        (WebCore::LabelsNodeList::LabelsNodeList):
+        * html/LabelsNodeList.h:
+        * html/RadioNodeList.cpp:
+        (WebCore::RadioNodeList::RadioNodeList):
+        * html/RadioNodeList.h:
+
+2012-10-08  Robert Hogan  <robert@webkit.org>
+
+        Changing position:relative to position:static results in mis-positioned div
+        https://bugs.webkit.org/show_bug.cgi?id=26397
+
+        Reviewed by Ojan Vafai.
+
+        When a block changes position from relative to static it is no longer the containing block for any
+        positioned objects it may have. If any of those positioned objects actually have a position specified
+        they are going to need a layout as their new containing block will likely have a different location they
+        need to offset from. Positioned objects without a specified position always get a layout anyway 
+        in layoutPositionedObjects() so no need to worry about them in this situation. 
+
+        Test: fast/block/abspos-child-container-changes-from-relative-to-static-expected.html
+
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::styleWillChange):
+        (WebCore::RenderBlock::layoutPositionedObjects):
+        (WebCore::RenderBlock::removePositionedObjects):
+        * rendering/RenderBlock.h:
+        (RenderBlock):
+
+2012-11-25  Kent Tamura  <tkent@chromium.org>
+
+        Correct input[type=number] value sanitization for user-input
+        https://bugs.webkit.org/show_bug.cgi?id=103018
+
+        Reviewed by Kentaro Hara.
+
+        If a number field has non-number string, HTMLInputElement::value is not
+        updated and returns the past valid value. It doesn't match to the value
+        sanitization algorithm defined by the HTML standard [1], and Opera's
+        behavior. We should sanitize non-number strings to "".
+
+        [1] http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#number-state-(type=number)
+        > The value sanitization algorithm is as follows: If the value of the
+        > element is not a valid floating-point number, then set it to the empty
+        > string instead.
+
+        No new tests. Update existing tests;
+        fast/forms/number/number-commit-valid-only.html and
+        fast/forms/number/number-unacceptable-style.html
+
+        * html/HTMLInputElement.cpp:
+        (WebCore::HTMLInputElement::subtreeHasChanged):
+        Remove isAcceptableValue check.
+
+        * html/HTMLInputElement.h:
+        (HTMLInputElement): isAcceptableValue is no longer needed.
+        * html/InputType.cpp: Remove isAcceptableValue.
+        * html/InputType.h: Ditto.
+        * html/NumberInputType.cpp: Ditto.
+        (WebCore::NumberInputType::hasUnacceptableValue):
+        Fold the isAcceptableValue content into this.
+        * html/NumberInputType.h:
+        (NumberInputType): Remove isAcceptableValue.
 
 2012-12-11  Viatcheslav Ostapenko  <sl.ostapenko@samsung.com>
 
         (WebCore::ImageFrame::fixPointUnsignedMultiply):
         (WebCore::ImageFrame::setRGBA):
 
+2012-11-30  Jer Noble  <jer.noble@apple.com>
+
+        Unreviewed Windows build fix.
+
+        Add a default: entry to an case statement to fix a build error when compiled in VS2005.
+
+        * html/MediaController.cpp:
+        (MediaController::playbackState):
+
+2012-11-28  Byungwoo Lee  <bw80.lee@samsung.com>
+
+        [EFL] Use mutex locker in wakeUp() to ensure thread-safety.
+        https://bugs.webkit.org/show_bug.cgi?id=101132
+
+        Reviewed by Gyuyoung Kim.
+
+        Add mutex locker for the ecore pipe to ensure thread-safety of
+        RunLoop::wakeUp().
+
+        RunLoop::wakeUp() can be called by multiple thread. It uses
+        ecore_pipe_write() function but the function is not thread-safe.
+
+        * platform/RunLoop.h:
+        (RunLoop):
+        * platform/efl/RunLoopEfl.cpp:
+        (WebCore::RunLoop::wakeUp):
+
 2012-11-09  Huang Dongsung  <luxtella@company100.net>
 
         Coordinated Graphics: Remove a backing store of GraphicsLayer when the layer is far from the viewport.