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

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

Issue 1865213004: Convert //chrome/browser/ui from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 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 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 551 matching lines...) Expand 10 before | Expand all | Expand 10 after
562 // There is a one-to-one mapping between each of the tabs in the 562 // There is a one-to-one mapping between each of the tabs in the
563 // TabStripController (TabStripModel) and |tabs_|. Because we animate tab 563 // TabStripController (TabStripModel) and |tabs_|. Because we animate tab
564 // removal there exists a period of time where a tab is displayed but not in 564 // removal there exists a period of time where a tab is displayed but not in
565 // the model. When this occurs the tab is removed from |tabs_| and placed in 565 // the model. When this occurs the tab is removed from |tabs_| and placed in
566 // |tabs_closing_map_|. When the animation completes the tab is removed from 566 // |tabs_closing_map_|. When the animation completes the tab is removed from
567 // |tabs_closing_map_|. The painting code ensures both sets of tabs are 567 // |tabs_closing_map_|. The painting code ensures both sets of tabs are
568 // painted, and the event handling code ensures only tabs in |tabs_| are used. 568 // painted, and the event handling code ensures only tabs in |tabs_| are used.
569 views::ViewModelT<Tab> tabs_; 569 views::ViewModelT<Tab> tabs_;
570 TabsClosingMap tabs_closing_map_; 570 TabsClosingMap tabs_closing_map_;
571 571
572 scoped_ptr<TabStripController> controller_; 572 std::unique_ptr<TabStripController> controller_;
573 573
574 // The "New Tab" button. 574 // The "New Tab" button.
575 NewTabButton* newtab_button_; 575 NewTabButton* newtab_button_;
576 576
577 // Ideal bounds of the new tab button. 577 // Ideal bounds of the new tab button.
578 gfx::Rect newtab_button_bounds_; 578 gfx::Rect newtab_button_bounds_;
579 579
580 // Returns the current widths of each type of tab. If the tabstrip width is 580 // Returns the current widths of each type of tab. If the tabstrip width is
581 // not evenly divisible into these widths, the initial tabs in the strip will 581 // not evenly divisible into these widths, the initial tabs in the strip will
582 // be 1 px larger. 582 // be 1 px larger.
583 int current_inactive_width_; 583 int current_inactive_width_;
584 int current_active_width_; 584 int current_active_width_;
585 585
586 // If this value is nonnegative, it is used as the width to lay out tabs 586 // If this value is nonnegative, it is used as the width to lay out tabs
587 // (instead of tab_area_width()). Most of the time this will be -1, but while 587 // (instead of tab_area_width()). Most of the time this will be -1, but while
588 // we're handling closing a tab via the mouse, we'll set this to the edge of 588 // we're handling closing a tab via the mouse, we'll set this to the edge of
589 // the last tab before closing, so that if we are closing the last tab and 589 // the last tab before closing, so that if we are closing the last tab and
590 // need to resize immediately, we'll resize only back to this width, thus 590 // need to resize immediately, we'll resize only back to this width, thus
591 // once again placing the last tab under the mouse cursor. 591 // once again placing the last tab under the mouse cursor.
592 int available_width_for_tabs_; 592 int available_width_for_tabs_;
593 593
594 // True if PrepareForCloseAt has been invoked. When true remove animations 594 // True if PrepareForCloseAt has been invoked. When true remove animations
595 // preserve current tab bounds. 595 // preserve current tab bounds.
596 bool in_tab_close_; 596 bool in_tab_close_;
597 597
598 // Valid for the lifetime of a drag over us. 598 // Valid for the lifetime of a drag over us.
599 scoped_ptr<DropInfo> drop_info_; 599 std::unique_ptr<DropInfo> drop_info_;
600 600
601 // To ensure all tabs pulse at the same time they share the same animation 601 // To ensure all tabs pulse at the same time they share the same animation
602 // container. This is that animation container. 602 // container. This is that animation container.
603 scoped_refptr<gfx::AnimationContainer> animation_container_; 603 scoped_refptr<gfx::AnimationContainer> animation_container_;
604 604
605 // MouseWatcher is used for two things: 605 // MouseWatcher is used for two things:
606 // . When a tab is closed to reset the layout. 606 // . When a tab is closed to reset the layout.
607 // . When a mouse is used and the layout dynamically adjusts and is currently 607 // . When a mouse is used and the layout dynamically adjusts and is currently
608 // stacked (|stacked_layout_| is true). 608 // stacked (|stacked_layout_| is true).
609 scoped_ptr<views::MouseWatcher> mouse_watcher_; 609 std::unique_ptr<views::MouseWatcher> mouse_watcher_;
610 610
611 // The controller for a drag initiated from a Tab. Valid for the lifetime of 611 // The controller for a drag initiated from a Tab. Valid for the lifetime of
612 // the drag session. 612 // the drag session.
613 scoped_ptr<TabDragController> drag_controller_; 613 std::unique_ptr<TabDragController> drag_controller_;
614 614
615 views::BoundsAnimator bounds_animator_; 615 views::BoundsAnimator bounds_animator_;
616 616
617 // Size we last layed out at. 617 // Size we last layed out at.
618 gfx::Size last_layout_size_; 618 gfx::Size last_layout_size_;
619 619
620 // See description above stacked_layout(). 620 // See description above stacked_layout().
621 bool stacked_layout_; 621 bool stacked_layout_;
622 622
623 // Should the layout dynamically adjust? 623 // Should the layout dynamically adjust?
624 bool adjust_layout_; 624 bool adjust_layout_;
625 625
626 // Only used while in touch mode. 626 // Only used while in touch mode.
627 scoped_ptr<StackedTabStripLayout> touch_layout_; 627 std::unique_ptr<StackedTabStripLayout> touch_layout_;
628 628
629 // If true the |stacked_layout_| is set to false when the mouse exits the 629 // If true the |stacked_layout_| is set to false when the mouse exits the
630 // tabstrip (as determined using MouseWatcher). 630 // tabstrip (as determined using MouseWatcher).
631 bool reset_to_shrink_on_exit_; 631 bool reset_to_shrink_on_exit_;
632 632
633 // Location of the mouse at the time of the last move. 633 // Location of the mouse at the time of the last move.
634 gfx::Point last_mouse_move_location_; 634 gfx::Point last_mouse_move_location_;
635 635
636 // Time of the last mouse move event. 636 // Time of the last mouse move event.
637 base::TimeTicks last_mouse_move_time_; 637 base::TimeTicks last_mouse_move_time_;
638 638
639 // Number of mouse moves. 639 // Number of mouse moves.
640 int mouse_move_count_; 640 int mouse_move_count_;
641 641
642 // Timer used when a tab is closed and we need to relayout. Only used when a 642 // Timer used when a tab is closed and we need to relayout. Only used when a
643 // tab close comes from a touch device. 643 // tab close comes from a touch device.
644 base::OneShotTimer resize_layout_timer_; 644 base::OneShotTimer resize_layout_timer_;
645 645
646 // True if tabs are painted as rectangular light-bars. 646 // True if tabs are painted as rectangular light-bars.
647 bool immersive_style_; 647 bool immersive_style_;
648 648
649 // Our observers. 649 // Our observers.
650 typedef base::ObserverList<TabStripObserver> TabStripObservers; 650 typedef base::ObserverList<TabStripObserver> TabStripObservers;
651 TabStripObservers observers_; 651 TabStripObservers observers_;
652 652
653 DISALLOW_COPY_AND_ASSIGN(TabStrip); 653 DISALLOW_COPY_AND_ASSIGN(TabStrip);
654 }; 654 };
655 655
656 #endif // CHROME_BROWSER_UI_VIEWS_TABS_TAB_STRIP_H_ 656 #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