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

Side by Side Diff: content/browser/android/system_ui_resource.cc

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 unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "content/browser/android/system_ui_resource.h"
6
7 #include "cc/resources/ui_resource_bitmap.h"
8 #include "ui/base/android/ui_resource_provider.h"
9
10 namespace content {
11
12 scoped_ptr<SystemUIResource> SystemUIResource::Create(
13 const SkBitmap& bitmap,
14 ui::UIResourceProvider* provider) {
15 return make_scoped_ptr(new SystemUIResource(bitmap, provider));
16 }
17
18 SystemUIResource::SystemUIResource(const SkBitmap& bitmap,
19 ui::UIResourceProvider* provider)
20 : bitmap_(bitmap), id_(0), provider_(provider), client_(NULL) {
21 DCHECK(provider_);
22 Load();
23 }
24
25 SystemUIResource::~SystemUIResource() {
26 if (id_)
27 provider_->DeleteUIResource(id_);
28 id_ = 0;
29 if (client_)
30 client_->OnUIResourceIdChanged();
31 }
32
33 cc::UIResourceBitmap SystemUIResource::GetBitmap(cc::UIResourceId uid,
34 bool resource_lost) {
35 DCHECK(!bitmap_.empty());
36 return cc::UIResourceBitmap(bitmap_);
37 }
38
39 void SystemUIResource::UIResourceIsInvalid() {
40 id_ = 0;
41 if (client_)
42 client_->OnUIResourceIdChanged();
43 }
44
45 cc::UIResourceId SystemUIResource::id() {
46 return id_;
47 }
48
49 void SystemUIResource::Load() {
50 if (id_)
51 return;
52
53 id_ = provider_->CreateUIResource(this);
54
55 if (client_)
56 client_->OnUIResourceIdChanged();
57 }
58
59 void SystemUIResource::SetClient(SystemUIResourceClient* client) {
60 client_ = client;
61 }
62
63 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698