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

Side by Side Diff: chrome/browser/ui/views/frame/browser_view.h

Issue 2931573003: Fix stability and data racing issues, coalesce more updates for JumpList (Closed)
Patch Set: Remove null check Created 3 years, 6 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
« no previous file with comments | « no previous file | chrome/browser/ui/views/frame/browser_view.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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_FRAME_BROWSER_VIEW_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_H_
6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_H_ 6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_H_
7 7
8 #include <map> 8 #include <map>
9 #include <memory> 9 #include <memory>
10 #include <string> 10 #include <string>
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 class ExclusiveAccessBubbleViews; 56 class ExclusiveAccessBubbleViews;
57 class InfoBarContainerView; 57 class InfoBarContainerView;
58 class LocationBarView; 58 class LocationBarView;
59 class NewBackShortcutBubble; 59 class NewBackShortcutBubble;
60 class StatusBubbleViews; 60 class StatusBubbleViews;
61 class TabStrip; 61 class TabStrip;
62 class ToolbarView; 62 class ToolbarView;
63 class TopContainerView; 63 class TopContainerView;
64 class WebContentsCloseHandler; 64 class WebContentsCloseHandler;
65 65
66 #if defined(OS_WIN)
67 class JumpList;
68 #endif
69
70 namespace extensions { 66 namespace extensions {
71 class ActiveTabPermissionGranter; 67 class ActiveTabPermissionGranter;
72 class Command; 68 class Command;
73 class Extension; 69 class Extension;
74 } 70 }
75 71
76 namespace views { 72 namespace views {
77 class AccessiblePaneView; 73 class AccessiblePaneView;
78 class ExternalFocusTracker; 74 class ExternalFocusTracker;
79 class WebView; 75 class WebView;
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after
490 // Appends to |toolbars| a pointer to each AccessiblePaneView that 486 // Appends to |toolbars| a pointer to each AccessiblePaneView that
491 // can be traversed using F6, in the order they should be traversed. 487 // can be traversed using F6, in the order they should be traversed.
492 void GetAccessiblePanes(std::vector<views::AccessiblePaneView*>* panes); 488 void GetAccessiblePanes(std::vector<views::AccessiblePaneView*>* panes);
493 489
494 // Constructs and initializes the child views. 490 // Constructs and initializes the child views.
495 void InitViews(); 491 void InitViews();
496 492
497 // Callback for the loading animation(s) associated with this view. 493 // Callback for the loading animation(s) associated with this view.
498 void LoadingAnimationCallback(); 494 void LoadingAnimationCallback();
499 495
500 // LoadCompleteListener::Delegate implementation. Creates and initializes the 496 // LoadCompleteListener::Delegate implementation. Creates the JumpList after
501 // |jumplist_| after the first page load. 497 // the first page load.
502 void OnLoadCompleted() override; 498 void OnLoadCompleted() override;
503 499
504 // Returns the BrowserViewLayout. 500 // Returns the BrowserViewLayout.
505 BrowserViewLayout* GetBrowserViewLayout() const; 501 BrowserViewLayout* GetBrowserViewLayout() const;
506 502
507 // Returns the ContentsLayoutManager. 503 // Returns the ContentsLayoutManager.
508 ContentsLayoutManager* GetContentsLayoutManager() const; 504 ContentsLayoutManager* GetContentsLayoutManager() const;
509 505
510 // Prepare to show the Bookmark Bar for the specified WebContents. 506 // Prepare to show the Bookmark Bar for the specified WebContents.
511 // Returns true if the Bookmark Bar can be shown (i.e. it's supported for this 507 // Returns true if the Bookmark Bar can be shown (i.e. it's supported for this
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after
680 bool in_process_fullscreen_ = false; 676 bool in_process_fullscreen_ = false;
681 677
682 std::unique_ptr<ExclusiveAccessBubbleViews> exclusive_access_bubble_; 678 std::unique_ptr<ExclusiveAccessBubbleViews> exclusive_access_bubble_;
683 679
684 std::unique_ptr<NewBackShortcutBubble> new_back_shortcut_bubble_; 680 std::unique_ptr<NewBackShortcutBubble> new_back_shortcut_bubble_;
685 base::TimeTicks last_back_shortcut_press_time_; 681 base::TimeTicks last_back_shortcut_press_time_;
686 682
687 #if defined(OS_WIN) 683 #if defined(OS_WIN)
688 // Helper class to listen for completion of first page load. 684 // Helper class to listen for completion of first page load.
689 std::unique_ptr<LoadCompleteListener> load_complete_listener_; 685 std::unique_ptr<LoadCompleteListener> load_complete_listener_;
690
691 // The custom JumpList for Windows 7.
692 scoped_refptr<JumpList> jumplist_;
693 #endif 686 #endif
694 687
695 // The timer used to update frames for the Loading Animation. 688 // The timer used to update frames for the Loading Animation.
696 base::RepeatingTimer loading_animation_timer_; 689 base::RepeatingTimer loading_animation_timer_;
697 690
698 views::UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_; 691 views::UnhandledKeyboardEventHandler unhandled_keyboard_event_handler_;
699 692
700 // If this flag is set then SetFocusToLocationBar() will set focus to the 693 // If this flag is set then SetFocusToLocationBar() will set focus to the
701 // location bar even if the browser window is not active. 694 // location bar even if the browser window is not active.
702 bool force_location_bar_focus_ = false; 695 bool force_location_bar_focus_ = false;
703 696
704 std::unique_ptr<ImmersiveModeController> immersive_mode_controller_; 697 std::unique_ptr<ImmersiveModeController> immersive_mode_controller_;
705 698
706 std::unique_ptr<WebContentsCloseHandler> web_contents_close_handler_; 699 std::unique_ptr<WebContentsCloseHandler> web_contents_close_handler_;
707 700
708 // The class that registers for keyboard shortcuts for extension commands. 701 // The class that registers for keyboard shortcuts for extension commands.
709 std::unique_ptr<ExtensionKeybindingRegistryViews> 702 std::unique_ptr<ExtensionKeybindingRegistryViews>
710 extension_keybinding_registry_; 703 extension_keybinding_registry_;
711 704
712 std::unique_ptr<BrowserWindowHistogramHelper> histogram_helper_; 705 std::unique_ptr<BrowserWindowHistogramHelper> histogram_helper_;
713 706
714 mutable base::WeakPtrFactory<BrowserView> activate_modal_dialog_factory_{ 707 mutable base::WeakPtrFactory<BrowserView> activate_modal_dialog_factory_{
715 this}; 708 this};
716 709
717 DISALLOW_COPY_AND_ASSIGN(BrowserView); 710 DISALLOW_COPY_AND_ASSIGN(BrowserView);
718 }; 711 };
719 712
720 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_H_ 713 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/ui/views/frame/browser_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698