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 |