Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/android/compositor/tab_content_manager.h" | 5 #include "chrome/browser/android/compositor/tab_content_manager.h" |
| 6 | 6 |
| 7 #include <android/bitmap.h> | 7 #include <android/bitmap.h> |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 | 9 |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 105 } | 105 } |
| 106 | 106 |
| 107 TabContentManager::TabContentManager(JNIEnv* env, | 107 TabContentManager::TabContentManager(JNIEnv* env, |
| 108 jobject obj, | 108 jobject obj, |
| 109 jint default_cache_size, | 109 jint default_cache_size, |
| 110 jint approximation_cache_size, | 110 jint approximation_cache_size, |
| 111 jint compression_queue_max_size, | 111 jint compression_queue_max_size, |
| 112 jint write_queue_max_size, | 112 jint write_queue_max_size, |
| 113 jboolean use_approximation_thumbnail) | 113 jboolean use_approximation_thumbnail) |
| 114 : weak_java_tab_content_manager_(env, obj), weak_factory_(this) { | 114 : weak_java_tab_content_manager_(env, obj), weak_factory_(this) { |
| 115 thumbnail_cache_ = base::WrapUnique(new ThumbnailCache( | 115 thumbnail_cache_ = base::MakeUnique<ThumbnailCache>( |
| 116 (size_t)default_cache_size, (size_t)approximation_cache_size, | 116 (size_t)default_cache_size, (size_t)approximation_cache_size, |
|
sky
2016/09/12 17:13:36
Fix these too static_cast?
Adam Rice
2016/09/13 03:02:49
I was trying to pretend I hadn't seen those. Fixed
| |
| 117 (size_t)compression_queue_max_size, (size_t)write_queue_max_size, | 117 (size_t)compression_queue_max_size, (size_t)write_queue_max_size, |
| 118 use_approximation_thumbnail)); | 118 use_approximation_thumbnail); |
| 119 thumbnail_cache_->AddThumbnailCacheObserver(this); | 119 thumbnail_cache_->AddThumbnailCacheObserver(this); |
| 120 } | 120 } |
| 121 | 121 |
| 122 TabContentManager::~TabContentManager() { | 122 TabContentManager::~TabContentManager() { |
| 123 } | 123 } |
| 124 | 124 |
| 125 void TabContentManager::Destroy(JNIEnv* env, const JavaParamRef<jobject>& obj) { | 125 void TabContentManager::Destroy(JNIEnv* env, const JavaParamRef<jobject>& obj) { |
| 126 thumbnail_cache_->RemoveThumbnailCacheObserver(this); | 126 thumbnail_cache_->RemoveThumbnailCacheObserver(this); |
| 127 delete this; | 127 delete this; |
| 128 } | 128 } |
| (...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 230 pending_tab_readbacks_.find(tab_id) != pending_tab_readbacks_.end() || | 230 pending_tab_readbacks_.find(tab_id) != pending_tab_readbacks_.end() || |
| 231 pending_tab_readbacks_.size() >= kMaxReadbacks) { | 231 pending_tab_readbacks_.size() >= kMaxReadbacks) { |
| 232 thumbnail_cache_->Remove(tab_id); | 232 thumbnail_cache_->Remove(tab_id); |
| 233 return; | 233 return; |
| 234 } | 234 } |
| 235 | 235 |
| 236 TabReadbackCallback readback_done_callback = | 236 TabReadbackCallback readback_done_callback = |
| 237 base::Bind(&TabContentManager::PutThumbnailIntoCache, | 237 base::Bind(&TabContentManager::PutThumbnailIntoCache, |
| 238 weak_factory_.GetWeakPtr(), tab_id); | 238 weak_factory_.GetWeakPtr(), tab_id); |
| 239 pending_tab_readbacks_.set( | 239 pending_tab_readbacks_.set( |
| 240 tab_id, base::WrapUnique(new TabReadbackRequest( | 240 tab_id, base::MakeUnique<TabReadbackRequest>( |
| 241 web_contents, thumbnail_scale, readback_done_callback))); | 241 web_contents, thumbnail_scale, readback_done_callback)); |
| 242 } | 242 } |
| 243 } | 243 } |
| 244 | 244 |
| 245 void TabContentManager::CacheTabWithBitmap(JNIEnv* env, | 245 void TabContentManager::CacheTabWithBitmap(JNIEnv* env, |
| 246 const JavaParamRef<jobject>& obj, | 246 const JavaParamRef<jobject>& obj, |
| 247 const JavaParamRef<jobject>& tab, | 247 const JavaParamRef<jobject>& tab, |
| 248 const JavaParamRef<jobject>& bitmap, | 248 const JavaParamRef<jobject>& bitmap, |
| 249 jfloat thumbnail_scale) { | 249 jfloat thumbnail_scale) { |
| 250 TabAndroid* tab_android = TabAndroid::GetNativeTab(env, tab); | 250 TabAndroid* tab_android = TabAndroid::GetNativeTab(env, tab); |
| 251 DCHECK(tab_android); | 251 DCHECK(tab_android); |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 343 jboolean use_approximation_thumbnail) { | 343 jboolean use_approximation_thumbnail) { |
| 344 TabContentManager* manager = new TabContentManager( | 344 TabContentManager* manager = new TabContentManager( |
| 345 env, obj, default_cache_size, approximation_cache_size, | 345 env, obj, default_cache_size, approximation_cache_size, |
| 346 compression_queue_max_size, write_queue_max_size, | 346 compression_queue_max_size, write_queue_max_size, |
| 347 use_approximation_thumbnail); | 347 use_approximation_thumbnail); |
| 348 return reinterpret_cast<intptr_t>(manager); | 348 return reinterpret_cast<intptr_t>(manager); |
| 349 } | 349 } |
| 350 | 350 |
| 351 } // namespace android | 351 } // namespace android |
| 352 } // namespace chrome | 352 } // namespace chrome |
| OLD | NEW |