| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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/toolbar/wrench_menu_model.h" | 5 #include "chrome/browser/ui/toolbar/wrench_menu_model.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <cmath> | 8 #include <cmath> |
| 9 | 9 |
| 10 #include "app/l10n_util.h" | 10 #include "app/l10n_util.h" |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 #if defined(OS_WIN) | 55 #if defined(OS_WIN) |
| 56 #include "chrome/browser/enumerate_modules_model_win.h" | 56 #include "chrome/browser/enumerate_modules_model_win.h" |
| 57 #endif | 57 #endif |
| 58 | 58 |
| 59 // The size of the font used for dynamic text overlays on menu items. | 59 // The size of the font used for dynamic text overlays on menu items. |
| 60 const float kMenuBadgeFontSize = 12.0; | 60 const float kMenuBadgeFontSize = 12.0; |
| 61 | 61 |
| 62 namespace { | 62 namespace { |
| 63 SkBitmap GetBackgroundPageIcon() { | 63 SkBitmap GetBackgroundPageIcon() { |
| 64 string16 pages = base::FormatNumber( | 64 string16 pages = base::FormatNumber( |
| 65 BackgroundPageTracker::GetSingleton()->GetBackgroundPageCount()); | 65 BackgroundPageTracker::GetInstance()->GetBackgroundPageCount()); |
| 66 return badge_util::DrawBadgeIconOverlay( | 66 return badge_util::DrawBadgeIconOverlay( |
| 67 *ResourceBundle::GetSharedInstance().GetBitmapNamed(IDR_BACKGROUND_MENU), | 67 *ResourceBundle::GetSharedInstance().GetBitmapNamed(IDR_BACKGROUND_MENU), |
| 68 kMenuBadgeFontSize, | 68 kMenuBadgeFontSize, |
| 69 pages, | 69 pages, |
| 70 l10n_util::GetStringUTF16(IDS_BACKGROUND_PAGE_BADGE_OVERFLOW)); | 70 l10n_util::GetStringUTF16(IDS_BACKGROUND_PAGE_BADGE_OVERFLOW)); |
| 71 } | 71 } |
| 72 | 72 |
| 73 } // namespace | 73 } // namespace |
| 74 | 74 |
| 75 //////////////////////////////////////////////////////////////////////////////// | 75 //////////////////////////////////////////////////////////////////////////////// |
| (...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 254 case IDC_FULLSCREEN: { | 254 case IDC_FULLSCREEN: { |
| 255 int string_id = IDS_ENTER_FULLSCREEN_MAC; // Default to Enter. | 255 int string_id = IDS_ENTER_FULLSCREEN_MAC; // Default to Enter. |
| 256 // Note: On startup, |window()| may be NULL. | 256 // Note: On startup, |window()| may be NULL. |
| 257 if (browser_->window() && browser_->window()->IsFullscreen()) | 257 if (browser_->window() && browser_->window()->IsFullscreen()) |
| 258 string_id = IDS_EXIT_FULLSCREEN_MAC; | 258 string_id = IDS_EXIT_FULLSCREEN_MAC; |
| 259 return l10n_util::GetStringUTF16(string_id); | 259 return l10n_util::GetStringUTF16(string_id); |
| 260 } | 260 } |
| 261 #endif | 261 #endif |
| 262 case IDC_VIEW_BACKGROUND_PAGES: { | 262 case IDC_VIEW_BACKGROUND_PAGES: { |
| 263 string16 num_background_pages = base::FormatNumber( | 263 string16 num_background_pages = base::FormatNumber( |
| 264 BackgroundPageTracker::GetSingleton()->GetBackgroundPageCount()); | 264 BackgroundPageTracker::GetInstance()->GetBackgroundPageCount()); |
| 265 return l10n_util::GetStringFUTF16(IDS_VIEW_BACKGROUND_PAGES, | 265 return l10n_util::GetStringFUTF16(IDS_VIEW_BACKGROUND_PAGES, |
| 266 num_background_pages); | 266 num_background_pages); |
| 267 } | 267 } |
| 268 default: | 268 default: |
| 269 NOTREACHED(); | 269 NOTREACHED(); |
| 270 return string16(); | 270 return string16(); |
| 271 } | 271 } |
| 272 } | 272 } |
| 273 | 273 |
| 274 void WrenchMenuModel::ExecuteCommand(int command_id) { | 274 void WrenchMenuModel::ExecuteCommand(int command_id) { |
| (...skipping 24 matching lines...) Expand all Loading... |
| 299 if (command_id == IDC_UPGRADE_DIALOG) { | 299 if (command_id == IDC_UPGRADE_DIALOG) { |
| 300 #if defined(OS_CHROMEOS) | 300 #if defined(OS_CHROMEOS) |
| 301 return (chromeos::CrosLibrary::Get()->GetUpdateLibrary()->status().status | 301 return (chromeos::CrosLibrary::Get()->GetUpdateLibrary()->status().status |
| 302 == chromeos::UPDATE_STATUS_UPDATED_NEED_REBOOT); | 302 == chromeos::UPDATE_STATUS_UPDATED_NEED_REBOOT); |
| 303 #else | 303 #else |
| 304 return UpgradeDetector::GetInstance()->notify_upgrade(); | 304 return UpgradeDetector::GetInstance()->notify_upgrade(); |
| 305 #endif | 305 #endif |
| 306 } else if (command_id == IDC_VIEW_INCOMPATIBILITIES) { | 306 } else if (command_id == IDC_VIEW_INCOMPATIBILITIES) { |
| 307 #if defined(OS_WIN) | 307 #if defined(OS_WIN) |
| 308 EnumerateModulesModel* loaded_modules = | 308 EnumerateModulesModel* loaded_modules = |
| 309 EnumerateModulesModel::GetSingleton(); | 309 EnumerateModulesModel::GetInstance(); |
| 310 return loaded_modules->confirmed_bad_modules_detected() > 0; | 310 return loaded_modules->confirmed_bad_modules_detected() > 0; |
| 311 #else | 311 #else |
| 312 return false; | 312 return false; |
| 313 #endif | 313 #endif |
| 314 } else if (command_id == IDC_VIEW_BACKGROUND_PAGES) { | 314 } else if (command_id == IDC_VIEW_BACKGROUND_PAGES) { |
| 315 BackgroundPageTracker* tracker = BackgroundPageTracker::GetSingleton(); | 315 BackgroundPageTracker* tracker = BackgroundPageTracker::GetInstance(); |
| 316 return tracker->GetBackgroundPageCount() > 0; | 316 return tracker->GetBackgroundPageCount() > 0; |
| 317 } | 317 } |
| 318 return true; | 318 return true; |
| 319 } | 319 } |
| 320 | 320 |
| 321 bool WrenchMenuModel::GetAcceleratorForCommandId( | 321 bool WrenchMenuModel::GetAcceleratorForCommandId( |
| 322 int command_id, | 322 int command_id, |
| 323 menus::Accelerator* accelerator) { | 323 menus::Accelerator* accelerator) { |
| 324 return provider_->GetAcceleratorForCommandId(command_id, accelerator); | 324 return provider_->GetAcceleratorForCommandId(command_id, accelerator); |
| 325 } | 325 } |
| (...skipping 18 matching lines...) Expand all Loading... |
| 344 // it is the opposite in gtk land. | 344 // it is the opposite in gtk land. |
| 345 tabstrip_model_->RemoveObserver(this); | 345 tabstrip_model_->RemoveObserver(this); |
| 346 tabstrip_model_ = NULL; | 346 tabstrip_model_ = NULL; |
| 347 } | 347 } |
| 348 | 348 |
| 349 void WrenchMenuModel::Observe(NotificationType type, | 349 void WrenchMenuModel::Observe(NotificationType type, |
| 350 const NotificationSource& source, | 350 const NotificationSource& source, |
| 351 const NotificationDetails& details) { | 351 const NotificationDetails& details) { |
| 352 switch (type.value) { | 352 switch (type.value) { |
| 353 case NotificationType::BACKGROUND_PAGE_TRACKER_CHANGED: { | 353 case NotificationType::BACKGROUND_PAGE_TRACKER_CHANGED: { |
| 354 int num_pages = BackgroundPageTracker::GetSingleton()-> | 354 int num_pages = BackgroundPageTracker::GetInstance()-> |
| 355 GetUnacknowledgedBackgroundPageCount(); | 355 GetUnacknowledgedBackgroundPageCount(); |
| 356 if (num_pages > 0) { | 356 if (num_pages > 0) { |
| 357 SetIcon(GetIndexOfCommandId(IDC_VIEW_BACKGROUND_PAGES), | 357 SetIcon(GetIndexOfCommandId(IDC_VIEW_BACKGROUND_PAGES), |
| 358 GetBackgroundPageIcon()); | 358 GetBackgroundPageIcon()); |
| 359 } else { | 359 } else { |
| 360 // Just set a blank icon (no icon). | 360 // Just set a blank icon (no icon). |
| 361 SetIcon(GetIndexOfCommandId(IDC_VIEW_BACKGROUND_PAGES), SkBitmap()); | 361 SetIcon(GetIndexOfCommandId(IDC_VIEW_BACKGROUND_PAGES), SkBitmap()); |
| 362 } | 362 } |
| 363 break; | 363 break; |
| 364 } | 364 } |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 459 const string16 product_name = l10n_util::GetStringUTF16(IDS_PRODUCT_OS_NAME); | 459 const string16 product_name = l10n_util::GetStringUTF16(IDS_PRODUCT_OS_NAME); |
| 460 #else | 460 #else |
| 461 const string16 product_name = l10n_util::GetStringUTF16(IDS_PRODUCT_NAME); | 461 const string16 product_name = l10n_util::GetStringUTF16(IDS_PRODUCT_NAME); |
| 462 #endif | 462 #endif |
| 463 // On Mac, there is no About item. | 463 // On Mac, there is no About item. |
| 464 if (browser_defaults::kShowAboutMenuItem) { | 464 if (browser_defaults::kShowAboutMenuItem) { |
| 465 AddItem(IDC_ABOUT, l10n_util::GetStringFUTF16( | 465 AddItem(IDC_ABOUT, l10n_util::GetStringFUTF16( |
| 466 IDS_ABOUT, product_name)); | 466 IDS_ABOUT, product_name)); |
| 467 } | 467 } |
| 468 string16 num_background_pages = base::FormatNumber( | 468 string16 num_background_pages = base::FormatNumber( |
| 469 BackgroundPageTracker::GetSingleton()->GetBackgroundPageCount()); | 469 BackgroundPageTracker::GetInstance()->GetBackgroundPageCount()); |
| 470 AddItem(IDC_VIEW_BACKGROUND_PAGES, l10n_util::GetStringFUTF16( | 470 AddItem(IDC_VIEW_BACKGROUND_PAGES, l10n_util::GetStringFUTF16( |
| 471 IDS_VIEW_BACKGROUND_PAGES, num_background_pages)); | 471 IDS_VIEW_BACKGROUND_PAGES, num_background_pages)); |
| 472 AddItem(IDC_UPGRADE_DIALOG, l10n_util::GetStringFUTF16( | 472 AddItem(IDC_UPGRADE_DIALOG, l10n_util::GetStringFUTF16( |
| 473 IDS_UPDATE_NOW, product_name)); | 473 IDS_UPDATE_NOW, product_name)); |
| 474 AddItem(IDC_VIEW_INCOMPATIBILITIES, l10n_util::GetStringUTF16( | 474 AddItem(IDC_VIEW_INCOMPATIBILITIES, l10n_util::GetStringUTF16( |
| 475 IDS_VIEW_INCOMPATIBILITIES)); | 475 IDS_VIEW_INCOMPATIBILITIES)); |
| 476 | 476 |
| 477 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); | 477 ResourceBundle& rb = ResourceBundle::GetSharedInstance(); |
| 478 SetIcon(GetIndexOfCommandId(IDC_UPGRADE_DIALOG), | 478 SetIcon(GetIndexOfCommandId(IDC_UPGRADE_DIALOG), |
| 479 *rb.GetBitmapNamed(IDR_UPDATE_MENU)); | 479 *rb.GetBitmapNamed(IDR_UPDATE_MENU)); |
| 480 #if defined(OS_WIN) | 480 #if defined(OS_WIN) |
| 481 SetIcon(GetIndexOfCommandId(IDC_VIEW_INCOMPATIBILITIES), | 481 SetIcon(GetIndexOfCommandId(IDC_VIEW_INCOMPATIBILITIES), |
| 482 *rb.GetBitmapNamed(IDR_CONFLICT_MENU)); | 482 *rb.GetBitmapNamed(IDR_CONFLICT_MENU)); |
| 483 #endif | 483 #endif |
| 484 | 484 |
| 485 // Add an icon to the View Background Pages item if there are unacknowledged | 485 // Add an icon to the View Background Pages item if there are unacknowledged |
| 486 // pages. | 486 // pages. |
| 487 if (BackgroundPageTracker::GetSingleton()-> | 487 if (BackgroundPageTracker::GetInstance()-> |
| 488 GetUnacknowledgedBackgroundPageCount() > 0) { | 488 GetUnacknowledgedBackgroundPageCount() > 0) { |
| 489 SetIcon(GetIndexOfCommandId(IDC_VIEW_BACKGROUND_PAGES), | 489 SetIcon(GetIndexOfCommandId(IDC_VIEW_BACKGROUND_PAGES), |
| 490 GetBackgroundPageIcon()); | 490 GetBackgroundPageIcon()); |
| 491 } | 491 } |
| 492 | 492 |
| 493 AddItemWithStringId(IDC_HELP_PAGE, IDS_HELP_PAGE); | 493 AddItemWithStringId(IDC_HELP_PAGE, IDS_HELP_PAGE); |
| 494 if (browser_defaults::kShowExitMenuItem) { | 494 if (browser_defaults::kShowExitMenuItem) { |
| 495 AddSeparator(); | 495 AddSeparator(); |
| 496 #if defined(OS_CHROMEOS) | 496 #if defined(OS_CHROMEOS) |
| 497 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kGuestSession)) { | 497 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kGuestSession)) { |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 530 &enable_increment, &enable_decrement); | 530 &enable_increment, &enable_decrement); |
| 531 } | 531 } |
| 532 zoom_label_ = l10n_util::GetStringFUTF16( | 532 zoom_label_ = l10n_util::GetStringFUTF16( |
| 533 IDS_ZOOM_PERCENT, base::IntToString16(zoom_percent)); | 533 IDS_ZOOM_PERCENT, base::IntToString16(zoom_percent)); |
| 534 } | 534 } |
| 535 | 535 |
| 536 string16 WrenchMenuModel::GetSyncMenuLabel() const { | 536 string16 WrenchMenuModel::GetSyncMenuLabel() const { |
| 537 return sync_ui_util::GetSyncMenuLabel( | 537 return sync_ui_util::GetSyncMenuLabel( |
| 538 browser_->profile()->GetOriginalProfile()->GetProfileSyncService()); | 538 browser_->profile()->GetOriginalProfile()->GetProfileSyncService()); |
| 539 } | 539 } |
| OLD | NEW |