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

Unified Diff: chrome/browser/android/compositor/layer/contextual_search_layer.cc

Issue 1061063005: [Contextual Search] Fix Promo behavior. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixing issues Created 5 years, 8 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 | « chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManagementDelegate.java ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/android/compositor/layer/contextual_search_layer.cc
diff --git a/chrome/browser/android/compositor/layer/contextual_search_layer.cc b/chrome/browser/android/compositor/layer/contextual_search_layer.cc
index ad18013c281dc04a9474f72f07eb9143e6858c11..3a1c815c6f4c26a9801b14fdaebb5cce61e2cbed 100644
--- a/chrome/browser/android/compositor/layer/contextual_search_layer.cc
+++ b/chrome/browser/android/compositor/layer/contextual_search_layer.cc
@@ -141,6 +141,7 @@ void ContextualSearchLayer::SetProperties(
// ---------------------------------------------------------------------------
// Search Promo
// ---------------------------------------------------------------------------
+ bool is_search_promo_resource_ready = false;
if (search_promo_visible) {
// Grab the Search Opt Out Promo resource.
ui::ResourceManager::Resource* search_promo_resource =
@@ -148,6 +149,8 @@ void ContextualSearchLayer::SetProperties(
search_promo_resource_id);
if (search_promo_resource) {
+ is_search_promo_resource_ready = true;
+
// Search Promo Container
if (search_promo_container_->parent() != layer_)
layer_->AddChild(search_promo_container_);
@@ -195,7 +198,12 @@ void ContextualSearchLayer::SetProperties(
// ---------------------------------------------------------------------------
// Search Bar Shadow
// ---------------------------------------------------------------------------
- if (search_bar_shadow_visible) {
+ // NOTE(pedrosimonetti): Since the Promo resource is a dynamic one (it will
+ // take a snapshot of the Promo View) it will always be available before
Donn Denman 2015/04/14 23:50:04 This is confusing to me. If the promo will always
pedro (no code reviews) 2015/04/16 19:05:29 It was supposed to read: "it will NOT always be av
+ // the Shadow resource. Therefore, we need to confirm that the Promo resource
+ // is ready before adding the Shadow layer, otherwise the Promo layer will
+ // be placed over the Shadow layer, making it not visible.
David Trainor- moved to gerrit 2015/04/15 07:36:15 You can insert children at specific points in the
pedro (no code reviews) 2015/04/16 19:05:29 Good idea. I'm using InsertChild() now. On the ot
David Trainor- moved to gerrit 2015/04/16 20:51:45 Yeah, I wonder if we could make that public. I do
+ if (is_search_promo_resource_ready && search_bar_shadow_visible) {
ui::ResourceManager::Resource* search_bar_shadow_resource =
resource_manager_->GetResource(ui::ANDROID_RESOURCE_TYPE_STATIC,
search_bar_shadow_resource_id);
@@ -203,16 +211,16 @@ void ContextualSearchLayer::SetProperties(
if (search_bar_shadow_resource) {
if (search_bar_shadow_->parent() != layer_)
layer_->AddChild(search_bar_shadow_);
- }
- int shadow_height = search_bar_shadow_resource->size.height();
- gfx::Size shadow_size(search_panel_width, shadow_height);
+ int shadow_height = search_bar_shadow_resource->size.height();
+ gfx::Size shadow_size(search_panel_width, shadow_height);
- search_bar_shadow_->SetUIResourceId(
- search_bar_shadow_resource->ui_resource->id());
- search_bar_shadow_->SetBounds(shadow_size);
- search_bar_shadow_->SetPosition(gfx::PointF(0.f, search_bar_height));
- search_bar_shadow_->SetOpacity(search_bar_shadow_opacity);
+ search_bar_shadow_->SetUIResourceId(
+ search_bar_shadow_resource->ui_resource->id());
+ search_bar_shadow_->SetBounds(shadow_size);
+ search_bar_shadow_->SetPosition(gfx::PointF(0.f, search_bar_height));
+ search_bar_shadow_->SetOpacity(search_bar_shadow_opacity);
+ }
} else {
if (search_bar_shadow_.get() && search_bar_shadow_->parent())
search_bar_shadow_->RemoveFromParent();
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManagementDelegate.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698