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

Unified Diff: content/browser/android/system_ui_resource.h

Issue 377013002: android: Use UIResource for overscroll glow (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: addressed comments. moved system_ui_resource* implementation to content Created 6 years, 5 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: content/browser/android/system_ui_resource.h
diff --git a/content/browser/android/system_ui_resource.h b/content/browser/android/system_ui_resource.h
new file mode 100644
index 0000000000000000000000000000000000000000..38df35f4fa0e01e11e9a40125bd8ecd809bcbe2d
--- /dev/null
+++ b/content/browser/android/system_ui_resource.h
@@ -0,0 +1,55 @@
+// Copyright 2014 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 CONTENT_BROWSER_ANDROID_SYSTEM_UI_RESOURCE_H_
+#define CONTENT_BROWSER_ANDROID_SYSTEM_UI_RESOURCE_H_
+
+#include "cc/resources/ui_resource_client.h"
+#include "third_party/skia/include/core/SkBitmap.h"
+#include "ui/base/android/ui_resource_client_android.h"
+
+namespace ui {
+class UIResourceProvider;
+}
+
+namespace content {
+
+class SystemUIResourceClient {
+ public:
+ virtual void OnUIResourceIdChanged() = 0;
+ virtual ~SystemUIResourceClient() {}
+};
+
+class SystemUIResource : public ui::UIResourceClientAndroid {
+ public:
+ static scoped_ptr<SystemUIResource> Create(const SkBitmap& bitmap,
+ ui::UIResourceProvider* provider);
+
+ virtual ~SystemUIResource();
+
+ // cc::UIResourceClient implementation.
+ virtual cc::UIResourceBitmap GetBitmap(cc::UIResourceId uid,
+ bool resource_lost) OVERRIDE;
+
+ // ui::UIResourceClientAndroid implementation.
+ virtual void UIResourceIsInvalid() OVERRIDE;
+
+ cc::UIResourceId id();
+ void Load();
+ void SetClient(SystemUIResourceClient* client);
+
+ private:
+ SystemUIResource(const SkBitmap& bitmap, ui::UIResourceProvider* provider);
+
+ SkBitmap bitmap_;
+ cc::UIResourceId id_;
+ ui::UIResourceProvider* provider_;
+ SystemUIResourceClient* client_;
+
+ DISALLOW_COPY_AND_ASSIGN(SystemUIResource);
+};
+
+} // namespace content
+
+#endif // CONTENT_BROWSER_ANDROID_SYSTEM_UI_RESOURCE_H_

Powered by Google App Engine
This is Rietveld 408576698