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

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

Issue 688853005: Consolidate javascript_dialog_manager.h and javascript_dialog_manager_impl.h (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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/views/frame/browser_view.h" 5 #include "chrome/browser/ui/views/frame/browser_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/auto_reset.h" 9 #include "base/auto_reset.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 1496 matching lines...) Expand 10 before | Expand all | Expand 10 after
1507 1507
1508 bool BrowserView::CanMaximize() const { 1508 bool BrowserView::CanMaximize() const {
1509 return true; 1509 return true;
1510 } 1510 }
1511 1511
1512 bool BrowserView::CanMinimize() const { 1512 bool BrowserView::CanMinimize() const {
1513 return true; 1513 return true;
1514 } 1514 }
1515 1515
1516 bool BrowserView::CanActivate() const { 1516 bool BrowserView::CanActivate() const {
1517 if (!AppModalDialogQueue::GetInstance()->active_dialog() || 1517 app_modal::AppModalDialogQueue* queue =
1518 !AppModalDialogQueue::GetInstance()->active_dialog()->native_dialog()) 1518 app_modal::AppModalDialogQueue::GetInstance();
1519 if (!queue->active_dialog() || !queue->active_dialog()->native_dialog())
1519 return true; 1520 return true;
1520 1521
1521 #if defined(USE_AURA) && defined(OS_CHROMEOS) 1522 #if defined(USE_AURA) && defined(OS_CHROMEOS)
1522 // On Aura window manager controls all windows so settings focus via PostTask 1523 // On Aura window manager controls all windows so settings focus via PostTask
1523 // will make only worse because posted task will keep trying to steal focus. 1524 // will make only worse because posted task will keep trying to steal focus.
1524 AppModalDialogQueue::GetInstance()->ActivateModalDialog(); 1525 queue->ActivateModalDialog();
1525 #else 1526 #else
1526 // If another browser is app modal, flash and activate the modal browser. This 1527 // If another browser is app modal, flash and activate the modal browser. This
1527 // has to be done in a post task, otherwise if the user clicked on a window 1528 // has to be done in a post task, otherwise if the user clicked on a window
1528 // that doesn't have the modal dialog the windows keep trying to get the focus 1529 // that doesn't have the modal dialog the windows keep trying to get the focus
1529 // from each other on Windows. http://crbug.com/141650. 1530 // from each other on Windows. http://crbug.com/141650.
1530 base::MessageLoop::current()->PostTask( 1531 base::MessageLoop::current()->PostTask(
1531 FROM_HERE, 1532 FROM_HERE,
1532 base::Bind(&BrowserView::ActivateAppModalDialog, 1533 base::Bind(&BrowserView::ActivateAppModalDialog,
1533 activate_modal_dialog_factory_.GetWeakPtr())); 1534 activate_modal_dialog_factory_.GetWeakPtr()));
1534 #endif 1535 #endif
(...skipping 940 matching lines...) Expand 10 before | Expand all | Expand 10 after
2475 if (contents->GetRenderWidgetHostView()->HasFocus()) { 2476 if (contents->GetRenderWidgetHostView()->HasFocus()) {
2476 (contents->*method)(); 2477 (contents->*method)();
2477 return true; 2478 return true;
2478 } 2479 }
2479 2480
2480 return false; 2481 return false;
2481 } 2482 }
2482 2483
2483 void BrowserView::ActivateAppModalDialog() const { 2484 void BrowserView::ActivateAppModalDialog() const {
2484 // If another browser is app modal, flash and activate the modal browser. 2485 // If another browser is app modal, flash and activate the modal browser.
2485 AppModalDialog* active_dialog = 2486 app_modal::AppModalDialog* active_dialog =
2486 AppModalDialogQueue::GetInstance()->active_dialog(); 2487 app_modal::AppModalDialogQueue::GetInstance()->active_dialog();
2487 if (!active_dialog) 2488 if (!active_dialog)
2488 return; 2489 return;
2489 2490
2490 Browser* modal_browser = 2491 Browser* modal_browser =
2491 chrome::FindBrowserWithWebContents(active_dialog->web_contents()); 2492 chrome::FindBrowserWithWebContents(active_dialog->web_contents());
2492 if (modal_browser && (browser_ != modal_browser)) { 2493 if (modal_browser && (browser_ != modal_browser)) {
2493 modal_browser->window()->FlashFrame(true); 2494 modal_browser->window()->FlashFrame(true);
2494 modal_browser->window()->Activate(); 2495 modal_browser->window()->Activate();
2495 } 2496 }
2496 2497
2497 AppModalDialogQueue::GetInstance()->ActivateModalDialog(); 2498 app_modal::AppModalDialogQueue::GetInstance()->ActivateModalDialog();
2498 } 2499 }
2499 2500
2500 int BrowserView::GetMaxTopInfoBarArrowHeight() { 2501 int BrowserView::GetMaxTopInfoBarArrowHeight() {
2501 int top_arrow_height = 0; 2502 int top_arrow_height = 0;
2502 // Only show the arrows when not in fullscreen and when there's no omnibox 2503 // Only show the arrows when not in fullscreen and when there's no omnibox
2503 // popup. 2504 // popup.
2504 if (!IsFullscreen() && 2505 if (!IsFullscreen() &&
2505 !GetLocationBar()->GetOmniboxView()->model()->popup_model()->IsOpen()) { 2506 !GetLocationBar()->GetOmniboxView()->model()->popup_model()->IsOpen()) {
2506 gfx::Point icon_bottom( 2507 gfx::Point icon_bottom(
2507 toolbar_->location_bar()->GetLocationBarAnchorPoint()); 2508 toolbar_->location_bar()->GetLocationBarAnchorPoint());
2508 ConvertPointToTarget(toolbar_->location_bar(), this, &icon_bottom); 2509 ConvertPointToTarget(toolbar_->location_bar(), this, &icon_bottom);
2509 gfx::Point infobar_top(0, infobar_container_->GetVerticalOverlap(nullptr)); 2510 gfx::Point infobar_top(0, infobar_container_->GetVerticalOverlap(nullptr));
2510 ConvertPointToTarget(infobar_container_, this, &infobar_top); 2511 ConvertPointToTarget(infobar_container_, this, &infobar_top);
2511 top_arrow_height = infobar_top.y() - icon_bottom.y(); 2512 top_arrow_height = infobar_top.y() - icon_bottom.y();
2512 } 2513 }
2513 return top_arrow_height; 2514 return top_arrow_height;
2514 } 2515 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698