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

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

Issue 11791039: Removes SimpleMenuModel::FlipIndex. It was only used by (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 11 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/ui/views/frame/system_menu_model.h » ('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 #include "chrome/browser/ui/views/frame/browser_frame_win.h" 5 #include "chrome/browser/ui/views/frame/browser_frame_win.h"
6 6
7 #include <dwmapi.h> 7 #include <dwmapi.h>
8 #include <shellapi.h> 8 #include <shellapi.h>
9 #include <set> 9 #include <set>
10 10
(...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after
367 } 367 }
368 368
369 void BrowserFrameWin::InitSystemContextMenu() { 369 void BrowserFrameWin::InitSystemContextMenu() {
370 system_menu_contents_.reset(new SystemMenuModel(system_menu_delegate_.get())); 370 system_menu_contents_.reset(new SystemMenuModel(system_menu_delegate_.get()));
371 // We add the menu items in reverse order so that insertion_index never needs 371 // We add the menu items in reverse order so that insertion_index never needs
372 // to change. 372 // to change.
373 if (browser_view_->IsBrowserTypeNormal()) 373 if (browser_view_->IsBrowserTypeNormal())
374 BuildSystemMenuForBrowserWindow(); 374 BuildSystemMenuForBrowserWindow();
375 else 375 else
376 BuildSystemMenuForAppOrPopupWindow(); 376 BuildSystemMenuForAppOrPopupWindow();
377 AddFrameToggleItems();
377 system_menu_.reset( 378 system_menu_.reset(
378 new views::NativeMenuWin(system_menu_contents_.get(), GetNativeWindow())); 379 new views::NativeMenuWin(system_menu_contents_.get(), GetNativeWindow()));
379 system_menu_->Rebuild(); 380 system_menu_->Rebuild();
380 } 381 }
381 382
382 int BrowserFrameWin::GetMinimizeButtonOffset() const { 383 int BrowserFrameWin::GetMinimizeButtonOffset() const {
383 return minimize_button_metrics_.GetMinimizeButtonOffsetX(); 384 return minimize_button_metrics_.GetMinimizeButtonOffsetX();
384 } 385 }
385 386
386 void BrowserFrameWin::TabStripDisplayModeChanged() { 387 void BrowserFrameWin::TabStripDisplayModeChanged() {
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 gfx::Rect tabstrip_bounds( 460 gfx::Rect tabstrip_bounds(
460 browser_frame_->GetBoundsForTabStrip(browser_view_->tabstrip())); 461 browser_frame_->GetBoundsForTabStrip(browser_view_->tabstrip()));
461 margins.cyTopHeight = tabstrip_bounds.bottom() + kDWMFrameTopOffset; 462 margins.cyTopHeight = tabstrip_bounds.bottom() + kDWMFrameTopOffset;
462 } 463 }
463 } 464 }
464 465
465 DwmExtendFrameIntoClientArea(GetNativeView(), &margins); 466 DwmExtendFrameIntoClientArea(GetNativeView(), &margins);
466 } 467 }
467 468
468 void BrowserFrameWin::BuildSystemMenuForBrowserWindow() { 469 void BrowserFrameWin::BuildSystemMenuForBrowserWindow() {
469 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR); 470 system_menu_contents_->AddItemWithStringId(IDC_NEW_TAB, IDS_NEW_TAB);
470 471 system_menu_contents_->AddItemWithStringId(IDC_RESTORE_TAB, IDS_RESTORE_TAB);
471 if (chrome::CanOpenTaskManager()) { 472 if (chrome::CanOpenTaskManager()) {
473 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
472 system_menu_contents_->AddItemWithStringId(IDC_TASK_MANAGER, 474 system_menu_contents_->AddItemWithStringId(IDC_TASK_MANAGER,
473 IDS_TASK_MANAGER); 475 IDS_TASK_MANAGER);
474 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
475 } 476 }
476 system_menu_contents_->AddItemWithStringId(IDC_RESTORE_TAB, IDS_RESTORE_TAB); 477 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
477 system_menu_contents_->AddItemWithStringId(IDC_NEW_TAB, IDS_NEW_TAB);
478 AddFrameToggleItems();
479 // If it's a regular browser window with tabs, we don't add any more items, 478 // If it's a regular browser window with tabs, we don't add any more items,
480 // since it already has menus (Page, Chrome). 479 // since it already has menus (Page, Chrome).
481 } 480 }
482 481
483 void BrowserFrameWin::BuildSystemMenuForAppOrPopupWindow() { 482 void BrowserFrameWin::BuildSystemMenuForAppOrPopupWindow() {
484 Browser* browser = browser_view()->browser(); 483 Browser* browser = browser_view()->browser();
485 if (browser->is_app() && chrome::CanOpenTaskManager()) { 484 system_menu_contents_->AddItemWithStringId(IDC_BACK,
486 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR); 485 IDS_CONTENT_CONTEXT_BACK);
487 system_menu_contents_->AddItemWithStringId(IDC_TASK_MANAGER, 486 system_menu_contents_->AddItemWithStringId(IDC_FORWARD,
488 IDS_TASK_MANAGER); 487 IDS_CONTENT_CONTEXT_FORWARD);
489 } 488 system_menu_contents_->AddItemWithStringId(IDC_RELOAD, IDS_APP_MENU_RELOAD);
490 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
491 encoding_menu_contents_.reset(new EncodingMenuModel(browser));
492 system_menu_contents_->AddSubMenuWithStringId(IDC_ENCODING_MENU,
493 IDS_ENCODING_MENU,
494 encoding_menu_contents_.get());
495 zoom_menu_contents_.reset(new ZoomMenuModel(system_menu_delegate_.get()));
496 system_menu_contents_->AddSubMenuWithStringId(IDC_ZOOM_MENU, IDS_ZOOM_MENU,
497 zoom_menu_contents_.get());
498 system_menu_contents_->AddItemWithStringId(IDC_PRINT, IDS_PRINT);
499 system_menu_contents_->AddItemWithStringId(IDC_FIND, IDS_FIND);
500 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
501 system_menu_contents_->AddItemWithStringId(IDC_PASTE, IDS_PASTE);
502 system_menu_contents_->AddItemWithStringId(IDC_COPY, IDS_COPY);
503 system_menu_contents_->AddItemWithStringId(IDC_CUT, IDS_CUT);
504 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR); 489 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
505 if (browser->is_app()) { 490 if (browser->is_app()) {
506 system_menu_contents_->AddItemWithStringId(IDC_NEW_TAB, 491 system_menu_contents_->AddItemWithStringId(IDC_NEW_TAB,
507 IDS_APP_MENU_NEW_WEB_PAGE); 492 IDS_APP_MENU_NEW_WEB_PAGE);
508 } else { 493 } else {
509 system_menu_contents_->AddItemWithStringId(IDC_SHOW_AS_TAB, 494 system_menu_contents_->AddItemWithStringId(IDC_SHOW_AS_TAB,
510 IDS_SHOW_AS_TAB); 495 IDS_SHOW_AS_TAB);
511 } 496 }
512 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR); 497 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
513 system_menu_contents_->AddItemWithStringId(IDC_RELOAD, IDS_APP_MENU_RELOAD); 498 system_menu_contents_->AddItemWithStringId(IDC_CUT, IDS_CUT);
514 system_menu_contents_->AddItemWithStringId(IDC_FORWARD, 499 system_menu_contents_->AddItemWithStringId(IDC_COPY, IDS_COPY);
515 IDS_CONTENT_CONTEXT_FORWARD); 500 system_menu_contents_->AddItemWithStringId(IDC_PASTE, IDS_PASTE);
516 system_menu_contents_->AddItemWithStringId(IDC_BACK, 501 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
517 IDS_CONTENT_CONTEXT_BACK); 502 system_menu_contents_->AddItemWithStringId(IDC_FIND, IDS_FIND);
518 AddFrameToggleItems(); 503 system_menu_contents_->AddItemWithStringId(IDC_PRINT, IDS_PRINT);
504 zoom_menu_contents_.reset(new ZoomMenuModel(system_menu_delegate_.get()));
505 system_menu_contents_->AddSubMenuWithStringId(IDC_ZOOM_MENU, IDS_ZOOM_MENU,
506 zoom_menu_contents_.get());
507 encoding_menu_contents_.reset(new EncodingMenuModel(browser));
508 system_menu_contents_->AddSubMenuWithStringId(IDC_ENCODING_MENU,
509 IDS_ENCODING_MENU,
510 encoding_menu_contents_.get());
511 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
512 if (browser->is_app() && chrome::CanOpenTaskManager()) {
513 system_menu_contents_->AddItemWithStringId(IDC_TASK_MANAGER,
514 IDS_TASK_MANAGER);
515 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
516 }
519 } 517 }
520 518
521 void BrowserFrameWin::AddFrameToggleItems() { 519 void BrowserFrameWin::AddFrameToggleItems() {
522 if (CommandLine::ForCurrentProcess()->HasSwitch( 520 if (CommandLine::ForCurrentProcess()->HasSwitch(
523 switches::kDebugEnableFrameToggle)) { 521 switches::kDebugEnableFrameToggle)) {
524 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
525 system_menu_contents_->AddItem(IDC_DEBUG_FRAME_TOGGLE, 522 system_menu_contents_->AddItem(IDC_DEBUG_FRAME_TOGGLE,
526 L"Toggle Frame Type"); 523 L"Toggle Frame Type");
524 system_menu_contents_->AddSeparator(ui::NORMAL_SEPARATOR);
527 } 525 }
528 } 526 }
529 527
530 void BrowserFrameWin::HandleMetroNavSearchRequest(WPARAM w_param, 528 void BrowserFrameWin::HandleMetroNavSearchRequest(WPARAM w_param,
531 LPARAM l_param) { 529 LPARAM l_param) {
532 if (!base::win::IsMetroProcess()) { 530 if (!base::win::IsMetroProcess()) {
533 NOTREACHED() << "Received unexpected metro navigation request"; 531 NOTREACHED() << "Received unexpected metro navigation request";
534 return; 532 return;
535 } 533 }
536 534
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
615 613
616 //////////////////////////////////////////////////////////////////////////////// 614 ////////////////////////////////////////////////////////////////////////////////
617 // NativeBrowserFrame, public: 615 // NativeBrowserFrame, public:
618 616
619 // static 617 // static
620 NativeBrowserFrame* NativeBrowserFrame::CreateNativeBrowserFrame( 618 NativeBrowserFrame* NativeBrowserFrame::CreateNativeBrowserFrame(
621 BrowserFrame* browser_frame, 619 BrowserFrame* browser_frame,
622 BrowserView* browser_view) { 620 BrowserView* browser_view) {
623 return new BrowserFrameWin(browser_frame, browser_view); 621 return new BrowserFrameWin(browser_frame, browser_view);
624 } 622 }
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/ui/views/frame/system_menu_model.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698