Start to use std::unique_ptr for DragImageLoader
authorgyuyoung.kim@samsung.com <gyuyoung.kim@samsung.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 21 Feb 2014 04:04:23 +0000 (04:04 +0000)
committergyuyoung.kim@samsung.com <gyuyoung.kim@samsung.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 21 Feb 2014 04:04:23 +0000 (04:04 +0000)
https://bugs.webkit.org/show_bug.cgi?id=129078

Reviewed by Ryosuke Niwa.

As a step to use std::unique_ptr, this patch replace uses of OwnPtr and PassOwnPtr
in the DragImageLoader class with std::unique_ptr. Besides DragImageLoader is set to
non-copyable class.

* dom/Clipboard.cpp:
(WebCore::Clipboard::setDragImage):
* dom/Clipboard.h:

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

Source/WebCore/ChangeLog
Source/WebCore/dom/Clipboard.cpp
Source/WebCore/dom/Clipboard.h

index e9e179d..d61e82e 100644 (file)
@@ -1,3 +1,18 @@
+2014-02-20  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
+
+        Start to use std::unique_ptr for DragImageLoader
+        https://bugs.webkit.org/show_bug.cgi?id=129078
+
+        Reviewed by Ryosuke Niwa.
+
+        As a step to use std::unique_ptr, this patch replace uses of OwnPtr and PassOwnPtr
+        in the DragImageLoader class with std::unique_ptr. Besides DragImageLoader is set to
+        non-copyable class.
+
+        * dom/Clipboard.cpp:
+        (WebCore::Clipboard::setDragImage):
+        * dom/Clipboard.h:
+
 2014-02-20  Brady Eidson  <beidson@apple.com>
 
         Move the image controls setting to Settings.in
index 30d13dd..73eba7d 100644 (file)
@@ -42,14 +42,13 @@ namespace WebCore {
 #if ENABLE(DRAG_SUPPORT)
 
 class DragImageLoader final : private CachedImageClient {
-    WTF_MAKE_FAST_ALLOCATED;
+    WTF_MAKE_NONCOPYABLE(DragImageLoader); WTF_MAKE_FAST_ALLOCATED;
 public:
-    static PassOwnPtr<DragImageLoader> create(Clipboard*);
+    explicit DragImageLoader(Clipboard*);
     void startLoading(CachedResourceHandle<CachedImage>&);
     void stopLoading(CachedResourceHandle<CachedImage>&);
 
 private:
-    DragImageLoader(Clipboard*);
     virtual void imageChanged(CachedImage*, const IntRect*) override;
     Clipboard* m_clipboard;
 };
@@ -242,7 +241,7 @@ void Clipboard::setDragImage(Element* element, int x, int y)
     m_dragImage = image;
     if (m_dragImage) {
         if (!m_dragImageLoader)
-            m_dragImageLoader = DragImageLoader::create(this);
+            m_dragImageLoader = std::make_unique<DragImageLoader>(this);
         m_dragImageLoader->startLoading(m_dragImage);
     }
 
@@ -286,11 +285,6 @@ DragImageRef Clipboard::createDragImage(IntPoint& location) const
 
 #endif
 
-PassOwnPtr<DragImageLoader> DragImageLoader::create(Clipboard* clipboard)
-{
-    return adoptPtr(new DragImageLoader(clipboard));
-}
-
 DragImageLoader::DragImageLoader(Clipboard* clipboard)
     : m_clipboard(clipboard)
 {
index 5ca2700..6eb34b5 100644 (file)
@@ -114,7 +114,7 @@ namespace WebCore {
         IntPoint m_dragLocation;
         CachedResourceHandle<CachedImage> m_dragImage;
         RefPtr<Element> m_dragImageElement;
-        OwnPtr<DragImageLoader> m_dragImageLoader;
+        std::unique_ptr<DragImageLoader> m_dragImageLoader;
 #endif
     };