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/browser.h" | 5 #include "chrome/browser/ui/browser.h" |
6 | 6 |
7 #if defined(OS_WIN) | 7 #if defined(OS_WIN) |
8 #include <windows.h> | 8 #include <windows.h> |
9 #include <shellapi.h> | 9 #include <shellapi.h> |
10 #endif // OS_WIN | 10 #endif // OS_WIN |
(...skipping 3023 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3034 // Note: This will be called several times if TabStripEmpty is called several | 3034 // Note: This will be called several times if TabStripEmpty is called several |
3035 // times. This is because it does not close the window if tabs are | 3035 // times. This is because it does not close the window if tabs are |
3036 // still present. | 3036 // still present. |
3037 MessageLoop::current()->PostTask( | 3037 MessageLoop::current()->PostTask( |
3038 FROM_HERE, base::Bind(&Browser::CloseFrame, weak_factory_.GetWeakPtr())); | 3038 FROM_HERE, base::Bind(&Browser::CloseFrame, weak_factory_.GetWeakPtr())); |
3039 // Set is_attempting_to_close_browser_ here, so that extensions, etc, do not | 3039 // Set is_attempting_to_close_browser_ here, so that extensions, etc, do not |
3040 // attempt to add tabs to the browser before it closes. | 3040 // attempt to add tabs to the browser before it closes. |
3041 is_attempting_to_close_browser_ = true; | 3041 is_attempting_to_close_browser_ = true; |
3042 } | 3042 } |
3043 | 3043 |
| 3044 bool Browser::PreHandleKeyboardEvent(const NativeWebKeyboardEvent& event, |
| 3045 bool* is_keyboard_shortcut) { |
| 3046 // Escape exits tabbed fullscreen mode. |
| 3047 // TODO(koz): Write a test for this http://crbug.com/100441. |
| 3048 if (event.windowsKeyCode == 27 && |
| 3049 fullscreen_controller_->HandleUserPressedEscape()) { |
| 3050 return true; |
| 3051 } |
| 3052 return window()->PreHandleKeyboardEvent(event, is_keyboard_shortcut); |
| 3053 } |
| 3054 |
| 3055 void Browser::HandleKeyboardEvent(const NativeWebKeyboardEvent& event) { |
| 3056 window()->HandleKeyboardEvent(event); |
| 3057 } |
| 3058 |
3044 void Browser::OnAcceptFullscreenPermission( | 3059 void Browser::OnAcceptFullscreenPermission( |
3045 const GURL& url, | 3060 const GURL& url, |
3046 FullscreenExitBubbleType bubble_type) { | 3061 FullscreenExitBubbleType bubble_type) { |
3047 fullscreen_controller_->OnAcceptFullscreenPermission(url, bubble_type); | 3062 fullscreen_controller_->OnAcceptFullscreenPermission(url, bubble_type); |
3048 } | 3063 } |
3049 | 3064 |
3050 void Browser::OnDenyFullscreenPermission(FullscreenExitBubbleType bubble_type) { | 3065 void Browser::OnDenyFullscreenPermission(FullscreenExitBubbleType bubble_type) { |
3051 fullscreen_controller_->OnDenyFullscreenPermission(bubble_type); | 3066 fullscreen_controller_->OnDenyFullscreenPermission(bubble_type); |
3052 } | 3067 } |
3053 | 3068 |
(...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3451 | 3466 |
3452 void Browser::ViewSourceForFrame(WebContents* source, | 3467 void Browser::ViewSourceForFrame(WebContents* source, |
3453 const GURL& frame_url, | 3468 const GURL& frame_url, |
3454 const std::string& frame_content_state) { | 3469 const std::string& frame_content_state) { |
3455 DCHECK(source); | 3470 DCHECK(source); |
3456 TabContents* tab_contents = GetTabContentsAt( | 3471 TabContents* tab_contents = GetTabContentsAt( |
3457 tab_strip_model_->GetWrapperIndex(source)); | 3472 tab_strip_model_->GetWrapperIndex(source)); |
3458 ViewSource(tab_contents, frame_url, frame_content_state); | 3473 ViewSource(tab_contents, frame_url, frame_content_state); |
3459 } | 3474 } |
3460 | 3475 |
3461 bool Browser::PreHandleKeyboardEvent(const NativeWebKeyboardEvent& event, | |
3462 bool* is_keyboard_shortcut) { | |
3463 // Escape exits tabbed fullscreen mode. | |
3464 // TODO(koz): Write a test for this http://crbug.com/100441. | |
3465 if (event.windowsKeyCode == 27 && | |
3466 fullscreen_controller_->HandleUserPressedEscape()) { | |
3467 return true; | |
3468 } | |
3469 return window()->PreHandleKeyboardEvent(event, is_keyboard_shortcut); | |
3470 } | |
3471 | |
3472 void Browser::HandleKeyboardEvent(const NativeWebKeyboardEvent& event) { | |
3473 window()->HandleKeyboardEvent(event); | |
3474 } | |
3475 | |
3476 void Browser::ShowRepostFormWarningDialog(WebContents* source) { | 3476 void Browser::ShowRepostFormWarningDialog(WebContents* source) { |
3477 browser::ShowTabModalConfirmDialog( | 3477 browser::ShowTabModalConfirmDialog( |
3478 new RepostFormWarningController(source), | 3478 new RepostFormWarningController(source), |
3479 TabContents::GetOwningTabContentsForWebContents(source)); | 3479 TabContents::GetOwningTabContentsForWebContents(source)); |
3480 } | 3480 } |
3481 | 3481 |
3482 bool Browser::ShouldAddNavigationToHistory( | 3482 bool Browser::ShouldAddNavigationToHistory( |
3483 const history::HistoryAddPageArgs& add_page_args, | 3483 const history::HistoryAddPageArgs& add_page_args, |
3484 content::NavigationType navigation_type) { | 3484 content::NavigationType navigation_type) { |
3485 // Don't update history if running as app. | 3485 // Don't update history if running as app. |
(...skipping 1687 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5173 if (contents && !allow_js_access) { | 5173 if (contents && !allow_js_access) { |
5174 contents->web_contents()->GetController().LoadURL( | 5174 contents->web_contents()->GetController().LoadURL( |
5175 target_url, | 5175 target_url, |
5176 content::Referrer(), | 5176 content::Referrer(), |
5177 content::PAGE_TRANSITION_LINK, | 5177 content::PAGE_TRANSITION_LINK, |
5178 std::string()); // No extra headers. | 5178 std::string()); // No extra headers. |
5179 } | 5179 } |
5180 | 5180 |
5181 return contents != NULL; | 5181 return contents != NULL; |
5182 } | 5182 } |
OLD | NEW |