summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraurimas <aurimas@chromium.org>2015-07-27 17:54:46 -0700
committerCommit bot <commit-bot@chromium.org>2015-07-28 00:55:37 +0000
commit7a0d32250eaedd102f90d8c7932c7f8be2355d16 (patch)
tree86afd5b4dfeb604975a34045058b1362598262d1
parentb07283fe544aafcb1d11feaaafeb2166bf15c87f (diff)
downloadchromium_src-7a0d32250eaedd102f90d8c7932c7f8be2355d16.zip
chromium_src-7a0d32250eaedd102f90d8c7932c7f8be2355d16.tar.gz
chromium_src-7a0d32250eaedd102f90d8c7932c7f8be2355d16.tar.bz2
Add shadow to contextual search panel.
BUG=498531 Review URL: https://codereview.chromium.org/1249863002 Cr-Commit-Position: refs/heads/master@{#340619}
-rw-r--r--chrome/android/java/res/drawable-hdpi/contextual_search_bar_background.9.pngbin118 -> 274 bytes
-rw-r--r--chrome/android/java/res/drawable-mdpi/contextual_search_bar_background.9.pngbin98 -> 204 bytes
-rw-r--r--chrome/android/java/res/drawable-xhdpi/contextual_search_bar_background.9.pngbin112 -> 308 bytes
-rw-r--r--chrome/android/java/res/drawable-xxhdpi/contextual_search_bar_background.9.pngbin126 -> 478 bytes
-rw-r--r--chrome/android/java/res/drawable-xxxhdpi/contextual_search_bar_background.9.pngbin130 -> 664 bytes
-rw-r--r--chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanelBase.java31
-rw-r--r--chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ContextualSearchSceneLayer.java3
-rw-r--r--chrome/browser/android/compositor/layer/contextual_search_layer.cc68
-rw-r--r--chrome/browser/android/compositor/layer/contextual_search_layer.h6
-rw-r--r--chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.cc2
-rw-r--r--chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.h1
11 files changed, 53 insertions, 58 deletions
diff --git a/chrome/android/java/res/drawable-hdpi/contextual_search_bar_background.9.png b/chrome/android/java/res/drawable-hdpi/contextual_search_bar_background.9.png
index e47d2faf..fe48680 100644
--- a/chrome/android/java/res/drawable-hdpi/contextual_search_bar_background.9.png
+++ b/chrome/android/java/res/drawable-hdpi/contextual_search_bar_background.9.png
Binary files differ
diff --git a/chrome/android/java/res/drawable-mdpi/contextual_search_bar_background.9.png b/chrome/android/java/res/drawable-mdpi/contextual_search_bar_background.9.png
index d3206a4..e101b48 100644
--- a/chrome/android/java/res/drawable-mdpi/contextual_search_bar_background.9.png
+++ b/chrome/android/java/res/drawable-mdpi/contextual_search_bar_background.9.png
Binary files differ
diff --git a/chrome/android/java/res/drawable-xhdpi/contextual_search_bar_background.9.png b/chrome/android/java/res/drawable-xhdpi/contextual_search_bar_background.9.png
index 378d25a..67f969e 100644
--- a/chrome/android/java/res/drawable-xhdpi/contextual_search_bar_background.9.png
+++ b/chrome/android/java/res/drawable-xhdpi/contextual_search_bar_background.9.png
Binary files differ
diff --git a/chrome/android/java/res/drawable-xxhdpi/contextual_search_bar_background.9.png b/chrome/android/java/res/drawable-xxhdpi/contextual_search_bar_background.9.png
index 010f9af..8c66ba8 100644
--- a/chrome/android/java/res/drawable-xxhdpi/contextual_search_bar_background.9.png
+++ b/chrome/android/java/res/drawable-xxhdpi/contextual_search_bar_background.9.png
Binary files differ
diff --git a/chrome/android/java/res/drawable-xxxhdpi/contextual_search_bar_background.9.png b/chrome/android/java/res/drawable-xxxhdpi/contextual_search_bar_background.9.png
index 14fd76f..9e5902f 100644
--- a/chrome/android/java/res/drawable-xxxhdpi/contextual_search_bar_background.9.png
+++ b/chrome/android/java/res/drawable-xxxhdpi/contextual_search_bar_background.9.png
Binary files differ
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanelBase.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanelBase.java
index 14442d7..ad4f73c 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanelBase.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanelBase.java
@@ -28,12 +28,6 @@ import org.chromium.ui.resources.dynamics.DynamicResourceLoader;
*/
abstract class ContextualSearchPanelBase extends ContextualSearchPanelStateHandler
implements ContextualSearchPromoHost {
-
- /**
- * The margin top of the Contextual Search Bar in dps.
- */
- private static final float SEARCH_BAR_MARGIN_TOP_DP = 16.f;
-
/**
* The side padding of Search Bar icons in dps.
*/
@@ -249,8 +243,8 @@ abstract class ContextualSearchPanelBase extends ContextualSearchPanelStateHandl
mSearchBarPaddingTop = PANEL_SHADOW_HEIGHT_DP;
mSearchBarHeightPeeking = context.getResources().getDimension(
- R.dimen.contextual_search_bar_height) * mPxToDp + mSearchBarPaddingTop;
- mSearchBarHeightMaximized = mToolbarHeight + mSearchBarPaddingTop;
+ R.dimen.contextual_search_bar_height) * mPxToDp;
+ mSearchBarHeightMaximized = mToolbarHeight;
mSearchBarHeightExpanded =
Math.round((mSearchBarHeightPeeking + mSearchBarHeightMaximized) / 2.f);
@@ -551,8 +545,6 @@ abstract class ContextualSearchPanelBase extends ContextualSearchPanelStateHandl
// --------------------------------------------------------------------------------------------
// Contextual Search Bar states
// --------------------------------------------------------------------------------------------
-
- private float mSearchBarMarginTop;
private float mSearchBarMarginSide;
private float mSearchBarHeight;
private float mSearchBarTextOpacity;
@@ -574,13 +566,6 @@ abstract class ContextualSearchPanelBase extends ContextualSearchPanelStateHandl
private float mCloseIconWidth;
/**
- * @return The top margin of the Contextual Search Bar.
- */
- public float getSearchBarMarginTop() {
- return mSearchBarMarginTop;
- }
-
- /**
* @return The side margin of the Contextual Search Bar.
*/
public float getSearchBarMarginSide() {
@@ -863,7 +848,6 @@ abstract class ContextualSearchPanelBase extends ContextualSearchPanelStateHandl
mIsShowing = false;
// Static values.
- mSearchBarMarginTop = SEARCH_BAR_MARGIN_TOP_DP;
mSearchBarMarginSide = SEARCH_BAR_ICON_SIDE_PADDING_DP;
mProgressBarHeight = PROGRESS_BAR_HEIGHT_DP;
mSearchBarBorderHeight = SEARCH_BAR_BORDER_HEIGHT_DP;
@@ -892,18 +876,15 @@ abstract class ContextualSearchPanelBase extends ContextualSearchPanelStateHandl
panelHeight = mSearchBarHeightPeeking;
} else if (state == PanelState.EXPANDED) {
if (isFullscreenSizePanel()) {
- panelHeight = fullscreenHeight * EXPANDED_PANEL_HEIGHT_PERCENTAGE
- + mSearchBarPaddingTop;
+ panelHeight = fullscreenHeight * EXPANDED_PANEL_HEIGHT_PERCENTAGE;
} else {
- panelHeight = fullscreenHeight * NARROW_EXPANDED_PANEL_HEIGHT_PERCENTAGE
- + mSearchBarPaddingTop;
+ panelHeight = fullscreenHeight * NARROW_EXPANDED_PANEL_HEIGHT_PERCENTAGE;
}
} else if (state == PanelState.MAXIMIZED) {
if (isFullscreenSizePanel()) {
- panelHeight = fullscreenHeight + mSearchBarPaddingTop;
+ panelHeight = fullscreenHeight;
} else {
- panelHeight = fullscreenHeight * NARROW_MAXIMIZED_PANEL_HEIGHT_PERCENTAGE
- + mSearchBarPaddingTop;
+ panelHeight = fullscreenHeight * NARROW_MAXIMIZED_PANEL_HEIGHT_PERCENTAGE;
}
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ContextualSearchSceneLayer.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ContextualSearchSceneLayer.java
index a1134cb..c253682 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ContextualSearchSceneLayer.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ContextualSearchSceneLayer.java
@@ -46,7 +46,6 @@ public class ContextualSearchSceneLayer extends SceneLayer {
float searchPanelWidth = mSearchPanel.getWidth();
float searchPanelHeight = mSearchPanel.getHeight();
- float searchBarMarginTop = mSearchPanel.getSearchBarMarginTop();
float searchBarMarginSide = mSearchPanel.getSearchBarMarginSide();
float searchBarHeight = mSearchPanel.getSearchBarHeight();
float searchBarTextOpacity = mSearchPanel.getSearchBarTextOpacity();
@@ -96,7 +95,6 @@ public class ContextualSearchSceneLayer extends SceneLayer {
searchPanelY * mDpToPx,
searchPanelWidth * mDpToPx,
searchPanelHeight * mDpToPx,
- searchBarMarginTop * mDpToPx,
searchBarMarginSide * mDpToPx,
searchBarHeight * mDpToPx,
searchBarTextOpacity,
@@ -160,7 +158,6 @@ public class ContextualSearchSceneLayer extends SceneLayer {
float searchPanelY,
float searchPanelWidth,
float searchPanelHeight,
- float searchBarMarginTop,
float searchBarMarginSide,
float searchBarHeight,
float searchBarTextOpacity,
diff --git a/chrome/browser/android/compositor/layer/contextual_search_layer.cc b/chrome/browser/android/compositor/layer/contextual_search_layer.cc
index 4d5be11..46f8eb0 100644
--- a/chrome/browser/android/compositor/layer/contextual_search_layer.cc
+++ b/chrome/browser/android/compositor/layer/contextual_search_layer.cc
@@ -18,6 +18,7 @@
namespace {
const SkColor kSearchBackgroundColor = SkColorSetRGB(0xee, 0xee, 0xee);
+const SkColor kSearchBarBackgroundColor = SkColorSetRGB(0xff, 0xff, 0xff);
const SkColor kSearchBarBorderColor = SkColorSetRGB(0xf1, 0xf1, 0xf1);
} // namespace
@@ -32,7 +33,7 @@ scoped_refptr<ContextualSearchLayer> ContextualSearchLayer::Create(
}
void ContextualSearchLayer::SetProperties(
- int search_bar_background_resource_id,
+ int panel_shadow_resource_id,
int search_bar_text_resource_id,
int search_bar_shadow_resource_id,
int search_provider_icon_resource_id,
@@ -50,7 +51,6 @@ void ContextualSearchLayer::SetProperties(
float search_panel_y,
float search_panel_width,
float search_panel_height,
- float search_bar_margin_top,
float search_bar_margin_side,
float search_bar_height,
float search_bar_text_opacity,
@@ -79,32 +79,46 @@ void ContextualSearchLayer::SetProperties(
search_bar_text_resource_id);
// Grabs required static resources.
- ui::ResourceManager::Resource* search_bar_background_resource =
+ ui::ResourceManager::Resource* panel_shadow_resource =
resource_manager_->GetResource(ui::ANDROID_RESOURCE_TYPE_STATIC,
- search_bar_background_resource_id);
+ panel_shadow_resource_id);
ui::ResourceManager::Resource* search_provider_icon_resource =
resource_manager_->GetResource(ui::ANDROID_RESOURCE_TYPE_STATIC,
search_provider_icon_resource_id);
- DCHECK(search_bar_background_resource);
+ DCHECK(panel_shadow_resource);
DCHECK(search_provider_icon_resource);
// Round values to avoid pixel gap between layers.
search_bar_height = floor(search_bar_height);
- search_bar_margin_top = floor(search_bar_margin_top);
bool is_rtl = l10n_util::IsLayoutRtl();
// ---------------------------------------------------------------------------
+ // Panel Shadow
+ // ---------------------------------------------------------------------------
+ gfx::Size shadow_res_size = panel_shadow_resource->size;
+ gfx::Rect shadow_res_padding = panel_shadow_resource->padding;
+ gfx::Size shadow_bounds(
+ search_panel_width + shadow_res_size.width()
+ - shadow_res_padding.size().width(),
+ search_panel_height + shadow_res_size.height()
+ - shadow_res_padding.size().height());
+ panel_shadow_->SetUIResourceId(panel_shadow_resource->ui_resource->id());
+ panel_shadow_->SetBorder(panel_shadow_resource->Border(shadow_bounds));
+ panel_shadow_->SetAperture(panel_shadow_resource->aperture);
+ panel_shadow_->SetBounds(shadow_bounds);
+ gfx::Point shadow_position(
+ -shadow_res_padding.origin().x(),
+ -shadow_res_padding.origin().y());
+ panel_shadow_->SetPosition(shadow_position);
+
+ // ---------------------------------------------------------------------------
// Search Bar Background
// ---------------------------------------------------------------------------
gfx::Size background_size(search_panel_width, search_bar_height);
- search_bar_background_->SetUIResourceId(
- search_bar_background_resource->ui_resource->id());
- search_bar_background_->SetBorder(
- search_bar_background_resource->Border(background_size));
- search_bar_background_->SetAperture(search_bar_background_resource->aperture);
search_bar_background_->SetBounds(background_size);
+ search_bar_background_->SetPosition(gfx::PointF(0.f, 0.f));
// ---------------------------------------------------------------------------
// Search Bar Text
@@ -112,8 +126,7 @@ void ContextualSearchLayer::SetProperties(
if (search_bar_text_resource) {
// Centers the text vertically in the Search Bar.
float search_bar_padding_top =
- search_bar_margin_top +
- (search_bar_height - search_bar_margin_top) / 2 -
+ search_bar_height / 2 -
search_bar_text_resource->size.height() / 2;
search_bar_text_->SetUIResourceId(
search_bar_text_resource->ui_resource->id());
@@ -136,15 +149,16 @@ void ContextualSearchLayer::SetProperties(
search_provider_icon_left = search_bar_margin_side;
}
// Centers the Search Provider Icon vertically in the Search Bar.
- search_provider_icon_top = search_bar_margin_top +
- (search_bar_height - search_bar_margin_top) / 2 -
+ search_provider_icon_top =
+ search_bar_height / 2 -
search_provider_icon_resource->size.height() / 2;
} else {
// Centers the Search Provider Icon horizontally in the Search Bar.
search_provider_icon_left =
search_panel_width / 2.f -
search_provider_icon_resource->size.width() / 2.f;
- search_provider_icon_top = 0.f;
+ search_provider_icon_top =
+ -search_provider_icon_resource->size.height() / 2;
}
search_provider_icon_->SetUIResourceId(
search_provider_icon_resource->ui_resource->id());
@@ -175,8 +189,8 @@ void ContextualSearchLayer::SetProperties(
}
// Centers the Search Icon vertically in the Search Bar.
- float search_icon_top = search_bar_margin_top +
- (search_bar_height - search_bar_margin_top) / 2 -
+ float search_icon_top =
+ search_bar_height / 2 -
search_icon_resource->size.height() / 2;
search_icon_->SetUIResourceId(search_icon_resource->ui_resource->id());
search_icon_->SetBounds(search_icon_resource->size);
@@ -210,8 +224,7 @@ void ContextualSearchLayer::SetProperties(
}
// Centers the Arrow Icon vertically in the Search Bar.
- float arrow_icon_top = search_bar_margin_top +
- (search_bar_height - search_bar_margin_top) / 2 -
+ float arrow_icon_top = search_bar_height / 2 -
arrow_icon_resource->size.height() / 2;
arrow_icon_->SetUIResourceId(arrow_icon_resource->ui_resource->id());
@@ -258,8 +271,8 @@ void ContextualSearchLayer::SetProperties(
}
// Centers the Close Icon vertically in the Search Bar.
- float close_icon_top = search_bar_margin_top +
- (search_bar_height - search_bar_margin_top) / 2 -
+ float close_icon_top =
+ search_bar_height / 2 -
close_icon_resource->size.height() / 2;
close_icon_->SetUIResourceId(close_icon_resource->ui_resource->id());
@@ -429,8 +442,10 @@ ContextualSearchLayer::ContextualSearchLayer(
ui::ResourceManager* resource_manager)
: resource_manager_(resource_manager),
layer_(cc::Layer::Create(content::Compositor::LayerSettings())),
- search_bar_background_(
+ panel_shadow_(
cc::NinePatchLayer::Create(content::Compositor::LayerSettings())),
+ search_bar_background_(
+ cc::SolidColorLayer::Create(content::Compositor::LayerSettings())),
search_bar_text_(
cc::UIResourceLayer::Create(content::Compositor::LayerSettings())),
search_bar_shadow_(
@@ -458,9 +473,14 @@ ContextualSearchLayer::ContextualSearchLayer(
layer_->SetMasksToBounds(false);
layer_->SetIsDrawable(true);
+ // Panel Shadow
+ panel_shadow_->SetIsDrawable(true);
+ panel_shadow_->SetFillCenter(false);
+ layer_->AddChild(panel_shadow_);
+
// Search Bar Background
search_bar_background_->SetIsDrawable(true);
- search_bar_background_->SetFillCenter(true);
+ search_bar_background_->SetBackgroundColor(kSearchBarBackgroundColor);
layer_->AddChild(search_bar_background_);
// Search Bar Text
diff --git a/chrome/browser/android/compositor/layer/contextual_search_layer.h b/chrome/browser/android/compositor/layer/contextual_search_layer.h
index 8805094..9062774 100644
--- a/chrome/browser/android/compositor/layer/contextual_search_layer.h
+++ b/chrome/browser/android/compositor/layer/contextual_search_layer.h
@@ -32,7 +32,7 @@ class ContextualSearchLayer : public Layer {
static scoped_refptr<ContextualSearchLayer> Create(
ui::ResourceManager* resource_manager);
- void SetProperties(int search_bar_background_resource_id,
+ void SetProperties(int panel_shaddow_resource_id,
int search_bar_text_resource_id,
int search_bar_shadow_resource_id,
int search_provider_icon_resource_id,
@@ -50,7 +50,6 @@ class ContextualSearchLayer : public Layer {
float search_panel_y,
float search_panel_width,
float search_panel_height,
- float search_bar_margin_top,
float search_bar_margin_side,
float search_bar_height,
float search_bar_text_opacity,
@@ -84,7 +83,8 @@ class ContextualSearchLayer : public Layer {
ui::ResourceManager* resource_manager_;
scoped_refptr<cc::Layer> layer_;
- scoped_refptr<cc::NinePatchLayer> search_bar_background_;
+ scoped_refptr<cc::NinePatchLayer> panel_shadow_;
+ scoped_refptr<cc::SolidColorLayer> search_bar_background_;
scoped_refptr<cc::UIResourceLayer> search_bar_text_;
scoped_refptr<cc::UIResourceLayer> search_bar_shadow_;
scoped_refptr<cc::UIResourceLayer> search_provider_icon_;
diff --git a/chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.cc b/chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.cc
index f07d9c1..b1aab33 100644
--- a/chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.cc
+++ b/chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.cc
@@ -42,7 +42,6 @@ void ContextualSearchSceneLayer::UpdateContextualSearchLayer(
jfloat search_panel_y,
jfloat search_panel_width,
jfloat search_panel_height,
- jfloat search_bar_margin_top,
jfloat search_bar_margin_side,
jfloat search_bar_height,
jfloat search_bar_text_opacity,
@@ -104,7 +103,6 @@ void ContextualSearchSceneLayer::UpdateContextualSearchLayer(
search_panel_y,
search_panel_width,
search_panel_height,
- search_bar_margin_top,
search_bar_margin_side,
search_bar_height,
search_bar_text_opacity,
diff --git a/chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.h b/chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.h
index 5342c7a..018edc6 100644
--- a/chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.h
+++ b/chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.h
@@ -44,7 +44,6 @@ class ContextualSearchSceneLayer : public SceneLayer {
jfloat search_panel_y,
jfloat search_panel_width,
jfloat search_panel_height,
- jfloat search_bar_margin_top,
jfloat search_bar_margin_side,
jfloat search_bar_height,
jfloat search_bar_text_opacity,