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

Side by Side Diff: chrome/browser/ui/views/tabs/tab_strip.h

Issue 682763002: Standardize usage of virtual/override/final specifiers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 6 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 unified diff | Download patch
OLDNEW
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 #ifndef CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_H_
6 #define CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_H_ 6 #define CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 static const int kNewTabButtonVerticalOffset; 67 static const int kNewTabButtonVerticalOffset;
68 68
69 // The size of the new tab button must be hardcoded because we need to be 69 // The size of the new tab button must be hardcoded because we need to be
70 // able to lay it out before we are able to get its image from the 70 // able to lay it out before we are able to get its image from the
71 // ui::ThemeProvider. It also makes sense to do this, because the size of the 71 // ui::ThemeProvider. It also makes sense to do this, because the size of the
72 // new tab button should not need to be calculated dynamically. 72 // new tab button should not need to be calculated dynamically.
73 static const int kNewTabButtonAssetWidth; 73 static const int kNewTabButtonAssetWidth;
74 static const int kNewTabButtonAssetHeight; 74 static const int kNewTabButtonAssetHeight;
75 75
76 explicit TabStrip(TabStripController* controller); 76 explicit TabStrip(TabStripController* controller);
77 virtual ~TabStrip(); 77 ~TabStrip() override;
78 78
79 // Add and remove observers to changes within this TabStrip. 79 // Add and remove observers to changes within this TabStrip.
80 void AddObserver(TabStripObserver* observer); 80 void AddObserver(TabStripObserver* observer);
81 void RemoveObserver(TabStripObserver* observer); 81 void RemoveObserver(TabStripObserver* observer);
82 82
83 // If |adjust_layout| is true the stacked layout changes based on whether the 83 // If |adjust_layout| is true the stacked layout changes based on whether the
84 // user uses a mouse or a touch device with the tabstrip. 84 // user uses a mouse or a touch device with the tabstrip.
85 void set_adjust_layout(bool adjust_layout) { adjust_layout_ = adjust_layout; } 85 void set_adjust_layout(bool adjust_layout) { adjust_layout_ = adjust_layout; }
86 86
87 // |stacked_layout_| defines what should happen when the tabs won't fit at 87 // |stacked_layout_| defines what should happen when the tabs won't fit at
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 bool IsAnimating() const; 204 bool IsAnimating() const;
205 205
206 // Stops any ongoing animations. If |layout| is true and an animation is 206 // Stops any ongoing animations. If |layout| is true and an animation is
207 // ongoing this does a layout. 207 // ongoing this does a layout.
208 void StopAnimating(bool layout); 208 void StopAnimating(bool layout);
209 209
210 // Called to indicate whether the given URL is a supported file. 210 // Called to indicate whether the given URL is a supported file.
211 void FileSupported(const GURL& url, bool supported); 211 void FileSupported(const GURL& url, bool supported);
212 212
213 // TabController overrides: 213 // TabController overrides:
214 virtual const ui::ListSelectionModel& GetSelectionModel() override; 214 const ui::ListSelectionModel& GetSelectionModel() override;
215 virtual bool SupportsMultipleSelection() override; 215 bool SupportsMultipleSelection() override;
216 virtual void SelectTab(Tab* tab) override; 216 void SelectTab(Tab* tab) override;
217 virtual void ExtendSelectionTo(Tab* tab) override; 217 void ExtendSelectionTo(Tab* tab) override;
218 virtual void ToggleSelected(Tab* tab) override; 218 void ToggleSelected(Tab* tab) override;
219 virtual void AddSelectionFromAnchorTo(Tab* tab) override; 219 void AddSelectionFromAnchorTo(Tab* tab) override;
220 virtual void CloseTab(Tab* tab, CloseTabSource source) override; 220 void CloseTab(Tab* tab, CloseTabSource source) override;
221 virtual void ToggleTabAudioMute(Tab* tab) override; 221 void ToggleTabAudioMute(Tab* tab) override;
222 virtual void ShowContextMenuForTab(Tab* tab, 222 void ShowContextMenuForTab(Tab* tab,
223 const gfx::Point& p, 223 const gfx::Point& p,
224 ui::MenuSourceType source_type) override; 224 ui::MenuSourceType source_type) override;
225 virtual bool IsActiveTab(const Tab* tab) const override; 225 bool IsActiveTab(const Tab* tab) const override;
226 virtual bool IsTabSelected(const Tab* tab) const override; 226 bool IsTabSelected(const Tab* tab) const override;
227 virtual bool IsTabPinned(const Tab* tab) const override; 227 bool IsTabPinned(const Tab* tab) const override;
228 virtual void MaybeStartDrag( 228 void MaybeStartDrag(
229 Tab* tab, 229 Tab* tab,
230 const ui::LocatedEvent& event, 230 const ui::LocatedEvent& event,
231 const ui::ListSelectionModel& original_selection) override; 231 const ui::ListSelectionModel& original_selection) override;
232 virtual void ContinueDrag(views::View* view, 232 void ContinueDrag(views::View* view, const ui::LocatedEvent& event) override;
233 const ui::LocatedEvent& event) override; 233 bool EndDrag(EndDragReason reason) override;
234 virtual bool EndDrag(EndDragReason reason) override; 234 Tab* GetTabAt(Tab* tab, const gfx::Point& tab_in_tab_coordinates) override;
235 virtual Tab* GetTabAt(Tab* tab, 235 void OnMouseEventInTab(views::View* source,
236 const gfx::Point& tab_in_tab_coordinates) override; 236 const ui::MouseEvent& event) override;
237 virtual void OnMouseEventInTab(views::View* source, 237 bool ShouldPaintTab(const Tab* tab, gfx::Rect* clip) override;
238 const ui::MouseEvent& event) override; 238 bool IsImmersiveStyle() const override;
239 virtual bool ShouldPaintTab(const Tab* tab, gfx::Rect* clip) override; 239 void UpdateTabAccessibilityState(const Tab* tab,
240 virtual bool IsImmersiveStyle() const override; 240 ui::AXViewState* state) override;
241 virtual void UpdateTabAccessibilityState(const Tab* tab,
242 ui::AXViewState* state) override;
243 241
244 // MouseWatcherListener overrides: 242 // MouseWatcherListener overrides:
245 virtual void MouseMovedOutOfHost() override; 243 void MouseMovedOutOfHost() override;
246 244
247 // views::View overrides: 245 // views::View overrides:
248 virtual void Layout() override; 246 void Layout() override;
249 virtual void PaintChildren(gfx::Canvas* canvas, 247 void PaintChildren(gfx::Canvas* canvas,
250 const views::CullSet& cull_set) override; 248 const views::CullSet& cull_set) override;
251 virtual const char* GetClassName() const override; 249 const char* GetClassName() const override;
252 virtual gfx::Size GetPreferredSize() const override; 250 gfx::Size GetPreferredSize() const override;
253 // NOTE: the drag and drop methods are invoked from FrameView. This is done 251 // NOTE: the drag and drop methods are invoked from FrameView. This is done
254 // to allow for a drop region that extends outside the bounds of the TabStrip. 252 // to allow for a drop region that extends outside the bounds of the TabStrip.
255 virtual void OnDragEntered(const ui::DropTargetEvent& event) override; 253 void OnDragEntered(const ui::DropTargetEvent& event) override;
256 virtual int OnDragUpdated(const ui::DropTargetEvent& event) override; 254 int OnDragUpdated(const ui::DropTargetEvent& event) override;
257 virtual void OnDragExited() override; 255 void OnDragExited() override;
258 virtual int OnPerformDrop(const ui::DropTargetEvent& event) override; 256 int OnPerformDrop(const ui::DropTargetEvent& event) override;
259 virtual void GetAccessibleState(ui::AXViewState* state) override; 257 void GetAccessibleState(ui::AXViewState* state) override;
260 virtual views::View* GetTooltipHandlerForPoint( 258 views::View* GetTooltipHandlerForPoint(const gfx::Point& point) override;
261 const gfx::Point& point) override;
262 259
263 // Returns preferred height in immersive style. 260 // Returns preferred height in immersive style.
264 static int GetImmersiveHeight(); 261 static int GetImmersiveHeight();
265 262
266 private: 263 private:
267 typedef std::vector<Tab*> Tabs; 264 typedef std::vector<Tab*> Tabs;
268 typedef std::map<int, Tabs> TabsClosingMap; 265 typedef std::map<int, Tabs> TabsClosingMap;
269 typedef std::pair<TabsClosingMap::iterator, 266 typedef std::pair<TabsClosingMap::iterator,
270 Tabs::iterator> FindClosingTabResult; 267 Tabs::iterator> FindClosingTabResult;
271 268
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after
559 556
560 // Returns true if |touch_layout_| is needed. 557 // Returns true if |touch_layout_| is needed.
561 bool NeedsTouchLayout() const; 558 bool NeedsTouchLayout() const;
562 559
563 // Sets the value of |reset_to_shrink_on_exit_|. If true |mouse_watcher_| is 560 // Sets the value of |reset_to_shrink_on_exit_|. If true |mouse_watcher_| is
564 // used to track when the mouse truly exits the tabstrip and the stacked 561 // used to track when the mouse truly exits the tabstrip and the stacked
565 // layout is reset. 562 // layout is reset.
566 void SetResetToShrinkOnExit(bool value); 563 void SetResetToShrinkOnExit(bool value);
567 564
568 // views::ButtonListener implementation: 565 // views::ButtonListener implementation:
569 virtual void ButtonPressed(views::Button* sender, 566 void ButtonPressed(views::Button* sender, const ui::Event& event) override;
570 const ui::Event& event) override;
571 567
572 // View overrides. 568 // View overrides.
573 virtual const views::View* GetViewByID(int id) const override; 569 const views::View* GetViewByID(int id) const override;
574 virtual bool OnMousePressed(const ui::MouseEvent& event) override; 570 bool OnMousePressed(const ui::MouseEvent& event) override;
575 virtual bool OnMouseDragged(const ui::MouseEvent& event) override; 571 bool OnMouseDragged(const ui::MouseEvent& event) override;
576 virtual void OnMouseReleased(const ui::MouseEvent& event) override; 572 void OnMouseReleased(const ui::MouseEvent& event) override;
577 virtual void OnMouseCaptureLost() override; 573 void OnMouseCaptureLost() override;
578 virtual void OnMouseMoved(const ui::MouseEvent& event) override; 574 void OnMouseMoved(const ui::MouseEvent& event) override;
579 virtual void OnMouseEntered(const ui::MouseEvent& event) override; 575 void OnMouseEntered(const ui::MouseEvent& event) override;
580 576
581 // ui::EventHandler overrides. 577 // ui::EventHandler overrides.
582 virtual void OnGestureEvent(ui::GestureEvent* event) override; 578 void OnGestureEvent(ui::GestureEvent* event) override;
583 579
584 // views::ViewTargeterDelegate: 580 // views::ViewTargeterDelegate:
585 virtual views::View* TargetForRect(views::View* root, 581 views::View* TargetForRect(views::View* root, const gfx::Rect& rect) override;
586 const gfx::Rect& rect) override;
587 582
588 // -- Member Variables ------------------------------------------------------ 583 // -- Member Variables ------------------------------------------------------
589 584
590 // There is a one-to-one mapping between each of the tabs in the 585 // There is a one-to-one mapping between each of the tabs in the
591 // TabStripController (TabStripModel) and |tabs_|. Because we animate tab 586 // TabStripController (TabStripModel) and |tabs_|. Because we animate tab
592 // removal there exists a period of time where a tab is displayed but not in 587 // removal there exists a period of time where a tab is displayed but not in
593 // the model. When this occurs the tab is removed from |tabs_| and placed in 588 // the model. When this occurs the tab is removed from |tabs_| and placed in
594 // |tabs_closing_map_|. When the animation completes the tab is removed from 589 // |tabs_closing_map_|. When the animation completes the tab is removed from
595 // |tabs_closing_map_|. The painting code ensures both sets of tabs are 590 // |tabs_closing_map_|. The painting code ensures both sets of tabs are
596 // painted, and the event handling code ensures only tabs in |tabs_| are used. 591 // painted, and the event handling code ensures only tabs in |tabs_| are used.
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
677 bool immersive_style_; 672 bool immersive_style_;
678 673
679 // Our observers. 674 // Our observers.
680 typedef ObserverList<TabStripObserver> TabStripObservers; 675 typedef ObserverList<TabStripObserver> TabStripObservers;
681 TabStripObservers observers_; 676 TabStripObservers observers_;
682 677
683 DISALLOW_COPY_AND_ASSIGN(TabStrip); 678 DISALLOW_COPY_AND_ASSIGN(TabStrip);
684 }; 679 };
685 680
686 #endif // CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_H_ 681 #endif // CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_H_
OLDNEW
« no previous file with comments | « chrome/browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc ('k') | chrome/browser/ui/views/tabs/tab_strip.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698