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

Unified Diff: ui/android/resources/resource.h

Issue 2746483003: ui/android: Fix Resource meta-data sharing with ResourceManager. (Closed)
Patch Set: jni Created 3 years, 9 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 | « ui/android/resources/nine_patch_resource.cc ('k') | ui/android/resources/resource.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/android/resources/resource.h
diff --git a/ui/android/resources/resource.h b/ui/android/resources/resource.h
new file mode 100644
index 0000000000000000000000000000000000000000..a30f128f58f363cecc252d787a9f07456c5adb34
--- /dev/null
+++ b/ui/android/resources/resource.h
@@ -0,0 +1,44 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef UI_ANDROID_RESOURCES_RESOURCE_H_
+#define UI_ANDROID_RESOURCES_RESOURCE_H_
+
+#include "cc/resources/scoped_ui_resource.h"
+#include "third_party/skia/include/core/SkBitmap.h"
+#include "ui/android/ui_android_export.h"
+#include "ui/gfx/geometry/rect.h"
+
+namespace ui {
+
+class UI_ANDROID_EXPORT Resource {
+ public:
+ enum class Type { BITMAP, NINE_PATCH_BITMAP };
+
+ Resource();
+ virtual ~Resource();
+
+ virtual std::unique_ptr<Resource> CreateForCopy();
+ void SetUIResource(std::unique_ptr<cc::ScopedUIResource> ui_resource,
+ const gfx::Size& size_in_px);
+ size_t EstimateMemoryUsage() const;
+
+ cc::ScopedUIResource* ui_resource() const { return ui_resource_.get(); }
+ gfx::Size size() const { return size_; }
+ Type type() const { return type_; }
+
+ protected:
+ Resource(Type type);
+
+ private:
+ const Type type_;
+
+ // Size of the bitmap in physical pixels.
+ gfx::Size size_;
+ std::unique_ptr<cc::ScopedUIResource> ui_resource_;
+};
+
+} // namespace ui
+
+#endif // UI_ANDROID_RESOURCES_RESOURCE_H_
« no previous file with comments | « ui/android/resources/nine_patch_resource.cc ('k') | ui/android/resources/resource.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698