| 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 #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 <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 24 matching lines...) Expand all Loading... |
| 35 #include "components/omnibox/browser/omnibox_popup_model_observer.h" | 35 #include "components/omnibox/browser/omnibox_popup_model_observer.h" |
| 36 #include "ui/base/accelerators/accelerator.h" | 36 #include "ui/base/accelerators/accelerator.h" |
| 37 #include "ui/base/models/simple_menu_model.h" | 37 #include "ui/base/models/simple_menu_model.h" |
| 38 #include "ui/gfx/native_widget_types.h" | 38 #include "ui/gfx/native_widget_types.h" |
| 39 #include "ui/views/controls/button/button.h" | 39 #include "ui/views/controls/button/button.h" |
| 40 #include "ui/views/controls/webview/unhandled_keyboard_event_handler.h" | 40 #include "ui/views/controls/webview/unhandled_keyboard_event_handler.h" |
| 41 #include "ui/views/widget/widget_delegate.h" | 41 #include "ui/views/widget/widget_delegate.h" |
| 42 #include "ui/views/widget/widget_observer.h" | 42 #include "ui/views/widget/widget_observer.h" |
| 43 #include "ui/views/window/client_view.h" | 43 #include "ui/views/window/client_view.h" |
| 44 | 44 |
| 45 #if defined(OS_WIN) | |
| 46 #include "chrome/browser/hang_monitor/hung_plugin_action.h" | |
| 47 #include "chrome/browser/hang_monitor/hung_window_detector.h" | |
| 48 #endif | |
| 49 | |
| 50 // NOTE: For more information about the objects and files in this directory, | 45 // NOTE: For more information about the objects and files in this directory, |
| 51 // view: http://dev.chromium.org/developers/design-documents/browser-window | 46 // view: http://dev.chromium.org/developers/design-documents/browser-window |
| 52 | 47 |
| 53 class BookmarkBarView; | 48 class BookmarkBarView; |
| 54 class Browser; | 49 class Browser; |
| 55 class BrowserViewLayout; | 50 class BrowserViewLayout; |
| 56 class ContentsLayoutManager; | 51 class ContentsLayoutManager; |
| 57 class DownloadShelfView; | 52 class DownloadShelfView; |
| 58 class ExclusiveAccessBubbleViews; | 53 class ExclusiveAccessBubbleViews; |
| 59 class InfoBarContainerView; | 54 class InfoBarContainerView; |
| (...skipping 496 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 556 // for tab-fullscreen and not for app/popup type windows). | 551 // for tab-fullscreen and not for app/popup type windows). |
| 557 bool ShouldUseImmersiveFullscreenForUrl(const GURL& url) const; | 552 bool ShouldUseImmersiveFullscreenForUrl(const GURL& url) const; |
| 558 | 553 |
| 559 // Copy the accelerator table from the app resources into something we can | 554 // Copy the accelerator table from the app resources into something we can |
| 560 // use. | 555 // use. |
| 561 void LoadAccelerators(); | 556 void LoadAccelerators(); |
| 562 | 557 |
| 563 // Retrieves the command id for the specified Windows app command. | 558 // Retrieves the command id for the specified Windows app command. |
| 564 int GetCommandIDForAppCommandID(int app_command_id) const; | 559 int GetCommandIDForAppCommandID(int app_command_id) const; |
| 565 | 560 |
| 566 // Initialize the hung plugin detector. | |
| 567 void InitHangMonitor(); | |
| 568 | |
| 569 // Possibly records a user metrics action corresponding to the passed-in | 561 // Possibly records a user metrics action corresponding to the passed-in |
| 570 // accelerator. Only implemented for Chrome OS, where we're interested in | 562 // accelerator. Only implemented for Chrome OS, where we're interested in |
| 571 // learning about how frequently the top-row keys are used. | 563 // learning about how frequently the top-row keys are used. |
| 572 void UpdateAcceleratorMetrics(const ui::Accelerator& accelerator, | 564 void UpdateAcceleratorMetrics(const ui::Accelerator& accelerator, |
| 573 int command_id); | 565 int command_id); |
| 574 | 566 |
| 575 // Calls |method| which is either WebContents::Cut, ::Copy, or ::Paste on | 567 // Calls |method| which is either WebContents::Cut, ::Copy, or ::Paste on |
| 576 // the given WebContents, returning true if it consumed the event. | 568 // the given WebContents, returning true if it consumed the event. |
| 577 bool DoCutCopyPasteForWebContents( | 569 bool DoCutCopyPasteForWebContents( |
| 578 content::WebContents* contents, | 570 content::WebContents* contents, |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 679 bool handling_theme_changed_; | 671 bool handling_theme_changed_; |
| 680 | 672 |
| 681 // True when in ProcessFullscreen(). The flag is used to avoid reentrance and | 673 // True when in ProcessFullscreen(). The flag is used to avoid reentrance and |
| 682 // to ignore requests to layout while in ProcessFullscreen() to reduce | 674 // to ignore requests to layout while in ProcessFullscreen() to reduce |
| 683 // jankiness. | 675 // jankiness. |
| 684 bool in_process_fullscreen_; | 676 bool in_process_fullscreen_; |
| 685 | 677 |
| 686 scoped_ptr<ExclusiveAccessBubbleViews> exclusive_access_bubble_; | 678 scoped_ptr<ExclusiveAccessBubbleViews> exclusive_access_bubble_; |
| 687 | 679 |
| 688 #if defined(OS_WIN) | 680 #if defined(OS_WIN) |
| 689 // This object is used to perform periodic actions in a worker | |
| 690 // thread. It is currently used to monitor hung plugin windows. | |
| 691 WorkerThreadTicker ticker_; | |
| 692 | |
| 693 // This object is initialized with the frame window HWND. This | |
| 694 // object is also passed as a tick handler with the ticker_ object. | |
| 695 // It is used to periodically monitor for hung plugin windows | |
| 696 HungWindowDetector hung_window_detector_; | |
| 697 | |
| 698 // This object is invoked by hung_window_detector_ when it detects a hung | |
| 699 // plugin window. | |
| 700 HungPluginAction hung_plugin_action_; | |
| 701 | |
| 702 // Helper class to listen for completion of first page load. | 681 // Helper class to listen for completion of first page load. |
| 703 scoped_ptr<LoadCompleteListener> load_complete_listener_; | 682 scoped_ptr<LoadCompleteListener> load_complete_listener_; |
| 704 | 683 |
| 705 // The custom JumpList for Windows 7. | 684 // The custom JumpList for Windows 7. |
| 706 scoped_refptr<JumpList> jumplist_; | 685 scoped_refptr<JumpList> jumplist_; |
| 707 #endif | 686 #endif |
| 708 | 687 |
| 709 // The timer used to update frames for the Loading Animation. | 688 // The timer used to update frames for the Loading Animation. |
| 710 base::RepeatingTimer loading_animation_timer_; | 689 base::RepeatingTimer loading_animation_timer_; |
| 711 | 690 |
| (...skipping 14 matching lines...) Expand all Loading... |
| 726 | 705 |
| 727 // The class that registers for keyboard shortcuts for extension commands. | 706 // The class that registers for keyboard shortcuts for extension commands. |
| 728 scoped_ptr<ExtensionKeybindingRegistryViews> extension_keybinding_registry_; | 707 scoped_ptr<ExtensionKeybindingRegistryViews> extension_keybinding_registry_; |
| 729 | 708 |
| 730 mutable base::WeakPtrFactory<BrowserView> activate_modal_dialog_factory_; | 709 mutable base::WeakPtrFactory<BrowserView> activate_modal_dialog_factory_; |
| 731 | 710 |
| 732 DISALLOW_COPY_AND_ASSIGN(BrowserView); | 711 DISALLOW_COPY_AND_ASSIGN(BrowserView); |
| 733 }; | 712 }; |
| 734 | 713 |
| 735 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_H_ | 714 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_H_ |
| OLD | NEW |