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

Unified Diff: cc/paint/paint_image.cc

Issue 2873003002: Add stable id to PaintImage. (Closed)
Patch Set: rebase Created 3 years, 7 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
« no previous file with comments | « cc/paint/paint_image.h ('k') | cc/paint/paint_op_buffer_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/paint/paint_image.cc
diff --git a/cc/paint/paint_image.cc b/cc/paint/paint_image.cc
index 846b3beecf6bc17923a6ba1280efc8b2e10e73f3..085ef24c65dbe61ca233753e96b7ea7fb9b1c6da 100644
--- a/cc/paint/paint_image.cc
+++ b/cc/paint/paint_image.cc
@@ -3,14 +3,20 @@
// found in the LICENSE file.
#include "cc/paint/paint_image.h"
+#include "base/atomic_sequence_num.h"
namespace cc {
+namespace {
+base::StaticAtomicSequenceNumber s_next_id_;
+}
PaintImage::PaintImage() = default;
-PaintImage::PaintImage(sk_sp<SkImage> sk_image,
+PaintImage::PaintImage(Id id,
+ sk_sp<SkImage> sk_image,
AnimationType animation_type,
CompletionState completion_state)
- : sk_image_(std::move(sk_image)),
+ : id_(id),
+ sk_image_(std::move(sk_image)),
animation_type_(animation_type),
completion_state_(completion_state) {}
PaintImage::PaintImage(const PaintImage& other) = default;
@@ -21,9 +27,13 @@ PaintImage& PaintImage::operator=(const PaintImage& other) = default;
PaintImage& PaintImage::operator=(PaintImage&& other) = default;
bool PaintImage::operator==(const PaintImage& other) {
- return sk_image_ == other.sk_image_ &&
+ return id_ == other.id_ && sk_image_ == other.sk_image_ &&
animation_type_ == other.animation_type_ &&
completion_state_ == other.completion_state_;
}
+PaintImage::Id PaintImage::GetNextId() {
+ return s_next_id_.GetNext();
+}
+
} // namespace cc
« no previous file with comments | « cc/paint/paint_image.h ('k') | cc/paint/paint_op_buffer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698