Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4182)

Unified Diff: cc/blink/web_compositor_support_impl.cc

Issue 2389973002: Use std::unique_ptr to signal ownership transfer in WebCompositorSupport (Closed)
Patch Set: rebase Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/blink/web_compositor_support_impl.cc
diff --git a/cc/blink/web_compositor_support_impl.cc b/cc/blink/web_compositor_support_impl.cc
index be6d95e9b249ecf5a9c5ed92160add2759bac4cf..ac2b81589d687592b6428e2e44c7a20122be4eec 100644
--- a/cc/blink/web_compositor_support_impl.cc
+++ b/cc/blink/web_compositor_support_impl.cc
@@ -4,8 +4,9 @@
#include "cc/blink/web_compositor_support_impl.h"
-#include <memory>
+#include <utility>
+#include "base/memory/ptr_util.h"
#include "cc/blink/web_content_layer_impl.h"
#include "cc/blink/web_display_item_list_impl.h"
#include "cc/blink/web_external_texture_layer_impl.h"
@@ -35,44 +36,49 @@ WebCompositorSupportImpl::WebCompositorSupportImpl() {
WebCompositorSupportImpl::~WebCompositorSupportImpl() {
}
-WebLayer* WebCompositorSupportImpl::createLayer() {
- return new WebLayerImpl();
+std::unique_ptr<WebLayer> WebCompositorSupportImpl::createLayer() {
+ return base::MakeUnique<WebLayerImpl>();
}
-WebLayer* WebCompositorSupportImpl::createLayerFromCCLayer(cc::Layer* layer) {
- return new WebLayerImpl(layer);
+std::unique_ptr<WebLayer> WebCompositorSupportImpl::createLayerFromCCLayer(
+ cc::Layer* layer) {
+ return base::MakeUnique<WebLayerImpl>(layer);
}
-WebContentLayer* WebCompositorSupportImpl::createContentLayer(
+std::unique_ptr<WebContentLayer> WebCompositorSupportImpl::createContentLayer(
WebContentLayerClient* client) {
- return new WebContentLayerImpl(client);
+ return base::MakeUnique<WebContentLayerImpl>(client);
}
-WebExternalTextureLayer* WebCompositorSupportImpl::createExternalTextureLayer(
+std::unique_ptr<WebExternalTextureLayer>
+WebCompositorSupportImpl::createExternalTextureLayer(
cc::TextureLayerClient* client) {
- return new WebExternalTextureLayerImpl(client);
+ return base::MakeUnique<WebExternalTextureLayerImpl>(client);
}
-blink::WebImageLayer* WebCompositorSupportImpl::createImageLayer() {
- return new WebImageLayerImpl();
+std::unique_ptr<blink::WebImageLayer>
+WebCompositorSupportImpl::createImageLayer() {
+ return base::MakeUnique<WebImageLayerImpl>();
}
-WebScrollbarLayer* WebCompositorSupportImpl::createScrollbarLayer(
- WebScrollbar* scrollbar,
+std::unique_ptr<WebScrollbarLayer>
+WebCompositorSupportImpl::createScrollbarLayer(
+ std::unique_ptr<WebScrollbar> scrollbar,
WebScrollbarThemePainter painter,
- WebScrollbarThemeGeometry* geometry) {
- return new WebScrollbarLayerImpl(scrollbar, painter, geometry);
+ std::unique_ptr<WebScrollbarThemeGeometry> geometry) {
+ return base::MakeUnique<WebScrollbarLayerImpl>(std::move(scrollbar), painter,
+ std::move(geometry));
}
-WebScrollbarLayer* WebCompositorSupportImpl::createSolidColorScrollbarLayer(
+std::unique_ptr<WebScrollbarLayer>
+WebCompositorSupportImpl::createSolidColorScrollbarLayer(
WebScrollbar::Orientation orientation,
int thumb_thickness,
int track_start,
bool is_left_side_vertical_scrollbar) {
- return new WebScrollbarLayerImpl(orientation,
- thumb_thickness,
- track_start,
- is_left_side_vertical_scrollbar);
+ return base::MakeUnique<WebScrollbarLayerImpl>(
+ orientation, thumb_thickness, track_start,
+ is_left_side_vertical_scrollbar);
}
} // namespace cc_blink

Powered by Google App Engine
This is Rietveld 408576698