| OLD | NEW | 
|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/ui/views/bookmarks/bookmark_bar_view.h" | 5 #include "chrome/browser/ui/views/bookmarks/bookmark_bar_view.h" | 
| 6 | 6 | 
| 7 #include <stdint.h> | 7 #include <stdint.h> | 
| 8 | 8 | 
| 9 #include <algorithm> | 9 #include <algorithm> | 
| 10 #include <limits> | 10 #include <limits> | 
| (...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 197 } | 197 } | 
| 198 | 198 | 
| 199 // BookmarkButtonBase ----------------------------------------------- | 199 // BookmarkButtonBase ----------------------------------------------- | 
| 200 | 200 | 
| 201 // Base class for non-menu hosting buttons used on the bookmark bar. | 201 // Base class for non-menu hosting buttons used on the bookmark bar. | 
| 202 | 202 | 
| 203 class BookmarkButtonBase : public views::LabelButton { | 203 class BookmarkButtonBase : public views::LabelButton { | 
| 204  public: | 204  public: | 
| 205   BookmarkButtonBase(views::ButtonListener* listener, | 205   BookmarkButtonBase(views::ButtonListener* listener, | 
| 206                      const base::string16& title) | 206                      const base::string16& title) | 
| 207       : LabelButton(listener, title), ink_drop_delegate_(this, this) { | 207       : LabelButton(listener, title) { | 
| 208     SetElideBehavior(kElideBehavior); | 208     SetElideBehavior(kElideBehavior); | 
| 209     set_ink_drop_delegate(&ink_drop_delegate_); | 209     set_ink_drop_delegate( | 
|  | 210         base::WrapUnique(new views::ButtonInkDropDelegate(this, this))); | 
| 210     set_has_ink_drop_action_on_click(true); | 211     set_has_ink_drop_action_on_click(true); | 
| 211     show_animation_.reset(new gfx::SlideAnimation(this)); | 212     show_animation_.reset(new gfx::SlideAnimation(this)); | 
| 212     if (!animations_enabled) { | 213     if (!animations_enabled) { | 
| 213       // For some reason during testing the events generated by animating | 214       // For some reason during testing the events generated by animating | 
| 214       // throw off the test. So, don't animate while testing. | 215       // throw off the test. So, don't animate while testing. | 
| 215       show_animation_->Reset(1); | 216       show_animation_->Reset(1); | 
| 216     } else { | 217     } else { | 
| 217       show_animation_->Show(); | 218       show_animation_->Show(); | 
| 218     } | 219     } | 
| 219   } | 220   } | 
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 254   } | 255   } | 
| 255 | 256 | 
| 256   SkColor GetInkDropBaseColor() const override { | 257   SkColor GetInkDropBaseColor() const override { | 
| 257     return GetThemeProvider()->GetColor( | 258     return GetThemeProvider()->GetColor( | 
| 258         ThemeProperties::COLOR_TOOLBAR_BUTTON_ICON); | 259         ThemeProperties::COLOR_TOOLBAR_BUTTON_ICON); | 
| 259   } | 260   } | 
| 260 | 261 | 
| 261  private: | 262  private: | 
| 262   std::unique_ptr<gfx::SlideAnimation> show_animation_; | 263   std::unique_ptr<gfx::SlideAnimation> show_animation_; | 
| 263 | 264 | 
| 264   // Controls the visual feedback for the button state. |  | 
| 265   views::ButtonInkDropDelegate ink_drop_delegate_; |  | 
| 266 | 265 | 
| 267   DISALLOW_COPY_AND_ASSIGN(BookmarkButtonBase); | 266   DISALLOW_COPY_AND_ASSIGN(BookmarkButtonBase); | 
| 268 }; | 267 }; | 
| 269 | 268 | 
| 270 // BookmarkButton ------------------------------------------------------------- | 269 // BookmarkButton ------------------------------------------------------------- | 
| 271 | 270 | 
| 272 // Buttons used for the bookmarks on the bookmark bar. | 271 // Buttons used for the bookmarks on the bookmark bar. | 
| 273 | 272 | 
| 274 class BookmarkButton : public BookmarkButtonBase { | 273 class BookmarkButton : public BookmarkButtonBase { | 
| 275  public: | 274  public: | 
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 325 const char ShortcutButton::kViewClassName[] = "ShortcutButton"; | 324 const char ShortcutButton::kViewClassName[] = "ShortcutButton"; | 
| 326 | 325 | 
| 327 // BookmarkMenuButtonBase ----------------------------------------------------- | 326 // BookmarkMenuButtonBase ----------------------------------------------------- | 
| 328 | 327 | 
| 329 // Base class for menu hosting buttons used on the bookmark bar. | 328 // Base class for menu hosting buttons used on the bookmark bar. | 
| 330 class BookmarkMenuButtonBase : public views::MenuButton { | 329 class BookmarkMenuButtonBase : public views::MenuButton { | 
| 331  public: | 330  public: | 
| 332   BookmarkMenuButtonBase(const base::string16& title, | 331   BookmarkMenuButtonBase(const base::string16& title, | 
| 333                          views::MenuButtonListener* menu_button_listener, | 332                          views::MenuButtonListener* menu_button_listener, | 
| 334                          bool show_menu_marker) | 333                          bool show_menu_marker) | 
| 335       : MenuButton(title, menu_button_listener, show_menu_marker), | 334       : MenuButton(title, menu_button_listener, show_menu_marker) { | 
| 336         ink_drop_delegate_(this, this) { | 335     set_ink_drop_delegate( | 
| 337     set_ink_drop_delegate(&ink_drop_delegate_); | 336         base::WrapUnique(new views::ButtonInkDropDelegate(this, this))); | 
| 338   } | 337   } | 
| 339 | 338 | 
| 340   std::unique_ptr<views::InkDropRipple> CreateInkDropRipple() const override { | 339   std::unique_ptr<views::InkDropRipple> CreateInkDropRipple() const override { | 
| 341     return base::WrapUnique(new views::FloodFillInkDropRipple( | 340     return base::WrapUnique(new views::FloodFillInkDropRipple( | 
| 342         CalculateInkDropBounds(size()), GetInkDropCenter(), | 341         CalculateInkDropBounds(size()), GetInkDropCenter(), | 
| 343         GetInkDropBaseColor())); | 342         GetInkDropBaseColor())); | 
| 344   } | 343   } | 
| 345 | 344 | 
| 346   std::unique_ptr<views::InkDropHover> CreateInkDropHover() const override { | 345   std::unique_ptr<views::InkDropHover> CreateInkDropHover() const override { | 
| 347     if (!ShouldShowInkDropHover()) | 346     if (!ShouldShowInkDropHover()) | 
| 348       return nullptr; | 347       return nullptr; | 
| 349 | 348 | 
| 350     const gfx::Rect bounds = CalculateInkDropBounds(size()); | 349     const gfx::Rect bounds = CalculateInkDropBounds(size()); | 
| 351     return base::WrapUnique(new views::InkDropHover( | 350     return base::WrapUnique(new views::InkDropHover( | 
| 352         bounds.size(), 0, bounds.CenterPoint(), GetInkDropBaseColor())); | 351         bounds.size(), 0, bounds.CenterPoint(), GetInkDropBaseColor())); | 
| 353   } | 352   } | 
| 354 | 353 | 
| 355   SkColor GetInkDropBaseColor() const override { | 354   SkColor GetInkDropBaseColor() const override { | 
| 356     return GetThemeProvider()->GetColor( | 355     return GetThemeProvider()->GetColor( | 
| 357         ThemeProperties::COLOR_TOOLBAR_BUTTON_ICON); | 356         ThemeProperties::COLOR_TOOLBAR_BUTTON_ICON); | 
| 358   } | 357   } | 
| 359 | 358 | 
| 360  private: | 359  private: | 
| 361   // Controls the visual feedback for the button state. |  | 
| 362   views::ButtonInkDropDelegate ink_drop_delegate_; |  | 
| 363 |  | 
| 364   DISALLOW_COPY_AND_ASSIGN(BookmarkMenuButtonBase); | 360   DISALLOW_COPY_AND_ASSIGN(BookmarkMenuButtonBase); | 
| 365 }; | 361 }; | 
| 366 | 362 | 
| 367 // BookmarkFolderButton ------------------------------------------------------- | 363 // BookmarkFolderButton ------------------------------------------------------- | 
| 368 | 364 | 
| 369 // Buttons used for folders on the bookmark bar, including the 'other folders' | 365 // Buttons used for folders on the bookmark bar, including the 'other folders' | 
| 370 // button. | 366 // button. | 
| 371 class BookmarkFolderButton : public BookmarkMenuButtonBase { | 367 class BookmarkFolderButton : public BookmarkMenuButtonBase { | 
| 372  public: | 368  public: | 
| 373   BookmarkFolderButton(const base::string16& title, | 369   BookmarkFolderButton(const base::string16& title, | 
| (...skipping 1785 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2159     return; | 2155     return; | 
| 2160   apps_page_shortcut_->SetVisible(visible); | 2156   apps_page_shortcut_->SetVisible(visible); | 
| 2161   UpdateBookmarksSeparatorVisibility(); | 2157   UpdateBookmarksSeparatorVisibility(); | 
| 2162   LayoutAndPaint(); | 2158   LayoutAndPaint(); | 
| 2163 } | 2159 } | 
| 2164 | 2160 | 
| 2165 void BookmarkBarView::OnShowManagedBookmarksPrefChanged() { | 2161 void BookmarkBarView::OnShowManagedBookmarksPrefChanged() { | 
| 2166   if (UpdateOtherAndManagedButtonsVisibility()) | 2162   if (UpdateOtherAndManagedButtonsVisibility()) | 
| 2167     LayoutAndPaint(); | 2163     LayoutAndPaint(); | 
| 2168 } | 2164 } | 
| OLD | NEW | 
|---|