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

Unified Diff: ui/views/bubble/bubble_border.cc

Issue 8565034: Add a drop shadow to the fullscreen exit bubble on windows. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: modify BubbleBorder Created 9 years, 1 month 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 | « ui/views/bubble/bubble_border.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/bubble/bubble_border.cc
diff --git a/ui/views/bubble/bubble_border.cc b/ui/views/bubble/bubble_border.cc
index 2538b73dd3c677c99ab9e03f1503d1b319df64df..2e5e12b27421f79ba5a707b910f02e2f85664d91 100644
--- a/ui/views/bubble/bubble_border.cc
+++ b/ui/views/bubble/bubble_border.cc
@@ -29,7 +29,8 @@ struct BubbleBorder::BorderImages {
left_arrow(NULL),
top_arrow(NULL),
right_arrow(NULL),
- bottom_arrow(NULL) {
+ bottom_arrow(NULL),
+ pixels_to_border(0) {
}
SkBitmap* left;
@@ -44,6 +45,7 @@ struct BubbleBorder::BorderImages {
SkBitmap* top_arrow;
SkBitmap* right_arrow;
SkBitmap* bottom_arrow;
+ int pixels_to_border;
};
// static
@@ -202,6 +204,10 @@ void BubbleBorder::GetInsets(gfx::Insets* insets) const {
insets->Set(top, left, bottom, right);
}
+int BubbleBorder::pixels_to_border() const {
+ return images_->pixels_to_border;
+}
+
int BubbleBorder::SetArrowOffset(int offset, const gfx::Size& contents_size) {
gfx::Size border_size(contents_size);
gfx::Insets insets;
@@ -232,6 +238,7 @@ BubbleBorder::BorderImages* BubbleBorder::GetBorderImages(Shadow shadow) {
shadow_images_->top_arrow = new SkBitmap();
shadow_images_->right_arrow = new SkBitmap();
shadow_images_->bottom_arrow = new SkBitmap();
+ shadow_images_->pixels_to_border = 10;
} else if (shadow == NO_SHADOW && normal_images_ == NULL) {
ResourceBundle& rb = ResourceBundle::GetSharedInstance();
normal_images_ = new BorderImages();
@@ -247,6 +254,7 @@ BubbleBorder::BorderImages* BubbleBorder::GetBorderImages(Shadow shadow) {
normal_images_->top_arrow = rb.GetBitmapNamed(IDR_BUBBLE_T_ARROW);
normal_images_->right_arrow = rb.GetBitmapNamed(IDR_BUBBLE_R_ARROW);
normal_images_->bottom_arrow = rb.GetBitmapNamed(IDR_BUBBLE_B_ARROW);
+ normal_images_->pixels_to_border = 0;
}
return shadow == SHADOW ? shadow_images_ : normal_images_;
}
@@ -501,8 +509,10 @@ void BubbleBackground::Paint(gfx::Canvas* canvas, views::View* view) const {
gfx::Path path;
gfx::Rect bounds(view->GetContentsBounds());
SkRect rect;
+ int offset = border_->pixels_to_border();
rect.set(SkIntToScalar(bounds.x()), SkIntToScalar(bounds.y()),
SkIntToScalar(bounds.right()), SkIntToScalar(bounds.bottom()));
+ rect.inset(-border_->pixels_to_border(), -border_->pixels_to_border());
SkScalar radius = SkIntToScalar(BubbleBorder::GetCornerRadius());
path.addRoundRect(rect, radius, radius);
canvas->GetSkCanvas()->drawPath(path, paint);
« no previous file with comments | « ui/views/bubble/bubble_border.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698