Remove RenderTheme::supportsCalendarPicker
[WebKit-https.git] / Source / WebCore / ChangeLog
index 6f62096..8b3ddd1 100644 (file)
@@ -1,3 +1,206 @@
+2013-05-14  Daker Fernandes Pinheiro  <daker.pinheiro@openbossa.org>
+
+        Remove RenderTheme::supportsCalendarPicker
+        https://bugs.webkit.org/show_bug.cgi?id=116068
+
+        Reviewed by Benjamin Poulain.
+
+        No new tests needed because it doesn't affect behaviour.
+
+        This method was never overrided by any platform
+        and always leaded to the same behaviour.
+        The code which depended on it was also removed.
+
+        * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
+        (WebCore::BaseMultipleFieldsDateAndTimeInputType::createShadowSubtree):
+        (WebCore::BaseMultipleFieldsDateAndTimeInputType::updatePickerIndicatorVisibility):
+        * html/BaseMultipleFieldsDateAndTimeInputType.h:
+        (BaseMultipleFieldsDateAndTimeInputType):
+        * page/ChromeClient.h:
+        (ChromeClient):
+        * rendering/RenderTheme.h:
+
+2013-04-30  Balazs Kelemen  <b.kelemen@sisa.samsung.com>
+
+        [GStreamer] cannot seek after video finished
+        https://bugs.webkit.org/show_bug.cgi?id=114044
+
+        Reviewed by Philippe Normand.
+
+        Test: media/video-seek-after-end.html
+
+        Reland without wrong assertion. If seek is called after didEnd the pipeline
+        state will not be in GST_STATE_NULL yet but it is not a problem because we handle that.
+
+        Rework the seeking logic to be able to seek after reseting the pipeline.
+        In addition to solve the actual problem this patch supposed to make seeking
+        more robust and correct.
+        The previous implementation tried to hide the complexity of asynchronous operations
+        on the pipeline. It did not handle the GST_MESSAGE_ASYNC_DONE message from the bus
+        but instead reported the seek as finished when it saw an asynchronous pending state
+        (GST_STATE_CHANGE_ASYNC) which could happen way before the seek is really done.
+        Now we pay attention to the GST_MESSAGE_ASYNC_DONE message to track the status of seeks.
+        Seeks are not the only operations executed asynchronously, changing the pipeling state is
+        similar. It means a seek can overlap with onother ongoing asynchronous operation.
+        This change address this by introducing an invariant for seeks, which is that we only request
+        a seek if there are no other ongoing asynchronous operations and the pipeline state is either
+        paused or playing (which is recommended anyway according to GStreamer's documentation).
+        This way we can be sure that the time when we get the next GST_MESSAGE_ASYNC_DONE message the
+        seek has been completed.
+
+        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+        (WebCore::toGstClockTime): Factored time conversation into a helper.
+        (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
+
+        (WebCore::MediaPlayerPrivateGStreamer::playbackPosition): The position might not be available
+        if the pipeline still has a pending state. As a workaround, if we are right after a seek we can
+        use the seek time. Avoiding this situation would be possible by not allowing any asynchronous
+        operation to overlap. I believe it would add a lot more complexity so I decided to rather introduce
+        this workaround. Otherwise those overlapping operations are handled fine by GStreamer.
+
+        (WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Do not reset internal state variables.
+        This function called when there is an intent to restart playback but it does not actually restart it.
+        (WebCore::MediaPlayerPrivateGStreamer::currentTime): Just removed a staling newline.
+        (WebCore::MediaPlayerPrivateGStreamer::seek): Take a look to the pipeline state and act upon that.
+        If there is an ongoing asynchronous operation make the seek pending, otherwise do it now.
+        Now we handle overlapping seeks as well because I saw that it can happen in some tests.
+        Added an early return for live streams as it doesn't makes sense to try seeking in them.
+
+        (WebCore::MediaPlayerPrivateGStreamer::handleMessage): Handle GST_MESSAGE_ASYNC_DONE and some refactoring.
+        (WebCore::MediaPlayerPrivateGStreamer::asyncStateChangeDone):
+        (WebCore::MediaPlayerPrivateGStreamer::updateStates): Only handle seeks in the pending case, the rest is
+        now handled in asyncStateChangeDone.
+        (WebCore::MediaPlayerPrivateGStreamer::cacheDuration): Do not reset the m_mediaDurationKnown if the pipeline
+        has an asynchronous pending state because it would fail. It does actually happen when we get a duration message
+        after restarting the pipeline and it would result in restarting playback from the start. It seems to be a bug
+        in GStreamer that it sends the duration message too early. Also sanitized this function by merging redundant branches.
+        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
+        (MediaPlayerPrivateGStreamer):
+
+2013-05-14  Zalan Bujtas  <zalan@apple.com>
+
+        Ellipsis text is placed to wrong position, when the truncated text is fully cut off in RTL direction.
+        https://bugs.webkit.org/show_bug.cgi?id=115858
+
+        Reviewed by Darin Adler.
+
+        Take text direction into account to calculate ellipsis position in case of
+        full truncation.
+
+        Test: fast/css/text-overflow-ellipsis-full-truncate-rtl.html
+
+        * rendering/InlineTextBox.cpp:
+        (WebCore::InlineTextBox::placeEllipsisBox):
+
+2013-05-14  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        [BlackBerry] Implement platform strategies
+        https://bugs.webkit.org/show_bug.cgi?id=112162
+
+        Reviewed by Rob Buis.
+
+        This is just a refactoring, covered by existing tests.
+
+        * CMakeLists.txt: Move PlatformStrategies.cpp from platform
+        specific makefiles to the global one now that all platforms using
+        cmake implement platform strategies.
+        * PlatformBlackBerry.cmake:
+        * PlatformEfl.cmake:
+        * PlatformWinCE.cmake:
+        * loader/CookieJar.cpp: Remove the preprocessor error that is not
+        needed anymore.
+        * loader/blackberry/CookieJarBlackBerry.cpp: Removed.
+        * platform/network/blackberry/CookieJarBlackBerry.cpp: Added.
+        (WebCore):
+        (WebCore::setCookiesFromDOM):
+        (WebCore::cookiesForDOM):
+        (WebCore::cookieRequestHeaderFieldValue):
+        (WebCore::cookiesEnabled):
+        (WebCore::getRawCookies):
+        (WebCore::deleteCookie):
+        (WebCore::getHostnamesWithCookies):
+        (WebCore::deleteCookiesForHostname):
+        (WebCore::deleteAllCookies):
+        * plugins/blackberry/PluginDataBlackBerry.cpp: Removed.
+
+2013-05-14  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
+
+        [Qt] Fix a crash under ~PingLoader when the QNAM on the page has been destroyed.
+        https://bugs.webkit.org/show_bug.cgi?id=116035
+
+        Reviewed by Simon Hausmann.
+
+        Reproduced with arora which does destroy the QNetworkAccessManager in some situations.
+        The problem is that PingLoader can still be pending meanwhile, holding a ResourceHandle
+        with a dangling pointer to a QNetworkReply destroyed with the QNetworkAccessManager.
+
+        * platform/network/qt/QNetworkReplyHandler.cpp:
+        (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
+          Set the parent to 0 like we did before the introduction of QNetworkReplyWrapper.
+        (WebCore::QNetworkReplyWrapper::release):
+
+2013-05-13  Eric Carlson  <eric.carlson@apple.com>
+
+        [Mac] update in-band caption attributes
+        https://bugs.webkit.org/show_bug.cgi?id=116057
+
+        Reviewed by Dean Jackson.
+
+        * html/track/InbandTextTrack.cpp:
+        (WebCore::InbandTextTrack::updateCueFromCueData): Copy highlight color.
+
+        * html/track/TextTrackCueGeneric.cpp:
+        (WebCore::TextTrackCueGenericBoxElement::applyCSSProperties): "highlight" color sets the cue
+            background, "background" color sets the cue container background.
+        * html/track/TextTrackCueGeneric.h:
+
+        * platform/graphics/InbandTextTrackPrivateClient.h:
+
+        * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
+        (WebCore::InbandTextTrackPrivateAVF::processCueAttributes): Process "highlight" color.
+
+2013-05-13  David Kilzer  <ddkilzer@apple.com>
+
+        BUILD FIX (r150049): Fix RetainPtr<> type in PasteboardIOS.mm
+
+        * platform/ios/PasteboardIOS.mm:
+        (WebCore::Pasteboard::writeImage): Use RetainPtr<CFStringRef>
+        instead of RetainPtr<NSString>.
+
+2013-05-13  Benjamin Poulain  <bpoulain@apple.com>
+
+        Remove platform/graphic's Generator
+        https://bugs.webkit.org/show_bug.cgi?id=116084
+
+        Reviewed by Darin Adler.
+
+        The Generator no longer abstract anything useful, its only
+        implementation is Gradient.
+
+        * GNUmakefile.list.am:
+        * WebCore.exp.in:
+        * WebCore.vcproj/WebCore.vcproj:
+        * WebCore.vcxproj/WebCore.vcxproj:
+        * WebCore.vcxproj/WebCore.vcxproj.filters:
+        * WebCore.xcodeproj/project.pbxproj:
+        * platform/graphics/GeneratedImage.h:
+        * platform/graphics/Generator.h: Removed.
+        * platform/graphics/GeneratorGeneratedImage.cpp:
+        (WebCore::GeneratorGeneratedImage::draw):
+        (WebCore::GeneratorGeneratedImage::drawPattern):
+        * platform/graphics/GeneratorGeneratedImage.h:
+        (WebCore::GeneratorGeneratedImage::create):
+        (WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
+        (GeneratorGeneratedImage):
+        * platform/graphics/Gradient.h:
+        (WebCore):
+        (Gradient):
+        * platform/graphics/GraphicsContext.cpp:
+        (WebCore::GraphicsContext::fillRect):
+        * platform/graphics/GraphicsContext.h:
+        (WebCore):
+        (GraphicsContext):
+
 2013-05-13  David Kilzer  <ddkilzer@apple.com>
 
         Upstream iOS Clipboard and Pasteboard changes