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

Side by Side Diff: chrome/browser/ui/cocoa/task_manager_mac.mm

Issue 2724923004: cocoa: add --use-views-task-manager (Closed)
Patch Set: add histogram enum entries Created 3 years, 9 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
« no previous file with comments | « chrome/browser/about_flags.cc ('k') | chrome/common/chrome_features.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/cocoa/task_manager_mac.h" 5 #include "chrome/browser/ui/cocoa/task_manager_mac.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/feature_list.h"
12 #include "base/mac/bundle_locations.h" 13 #include "base/mac/bundle_locations.h"
13 #include "base/macros.h" 14 #include "base/macros.h"
14 #include "base/strings/sys_string_conversions.h" 15 #include "base/strings/sys_string_conversions.h"
15 #include "chrome/browser/browser_process.h" 16 #include "chrome/browser/browser_process.h"
16 #include "chrome/browser/chrome_notification_types.h" 17 #include "chrome/browser/chrome_notification_types.h"
17 #include "chrome/browser/task_manager/task_manager_interface.h" 18 #include "chrome/browser/task_manager/task_manager_interface.h"
18 #include "chrome/browser/ui/browser.h" 19 #include "chrome/browser/ui/browser.h"
19 #include "chrome/browser/ui/browser_dialogs.h" 20 #include "chrome/browser/ui/browser_dialogs.h"
20 #import "chrome/browser/ui/cocoa/window_size_autosaver.h" 21 #import "chrome/browser/ui/cocoa/window_size_autosaver.h"
21 #include "chrome/browser/ui/task_manager/task_manager_columns.h" 22 #include "chrome/browser/ui/task_manager/task_manager_columns.h"
23 #include "chrome/common/chrome_features.h"
22 #include "chrome/common/pref_names.h" 24 #include "chrome/common/pref_names.h"
23 #include "chrome/grit/generated_resources.h" 25 #include "chrome/grit/generated_resources.h"
24 #include "components/prefs/pref_service.h" 26 #include "components/prefs/pref_service.h"
25 #include "content/public/browser/notification_service.h" 27 #include "content/public/browser/notification_service.h"
26 #include "content/public/browser/notification_source.h" 28 #include "content/public/browser/notification_source.h"
27 #include "third_party/skia/include/core/SkBitmap.h" 29 #include "third_party/skia/include/core/SkBitmap.h"
28 #include "ui/base/l10n/l10n_util_mac.h" 30 #include "ui/base/l10n/l10n_util_mac.h"
29 #include "ui/gfx/image/image_skia.h" 31 #include "ui/gfx/image/image_skia.h"
30 #include "ui/gfx/image/image_skia_util_mac.h" 32 #include "ui/gfx/image/image_skia_util_mac.h"
31 33
32 namespace { 34 namespace {
33 35
34 NSString* ColumnIdentifier(int id) { 36 NSString* ColumnIdentifier(int id) {
35 return [NSString stringWithFormat:@"%d", id]; 37 return [NSString stringWithFormat:@"%d", id];
36 } 38 }
37 39
40 bool ShouldUseViewsTaskManager() {
41 return base::FeatureList::IsEnabled(features::kViewsTaskManager);
42 }
43
38 } // namespace 44 } // namespace
39 45
40 @interface TaskManagerWindowController (Private) 46 @interface TaskManagerWindowController (Private)
41 - (NSTableColumn*)addColumnWithData: 47 - (NSTableColumn*)addColumnWithData:
42 (const task_manager::TableColumnData&)columnData; 48 (const task_manager::TableColumnData&)columnData;
43 - (void)setUpTableColumns; 49 - (void)setUpTableColumns;
44 - (void)setUpTableHeaderContextMenu; 50 - (void)setUpTableHeaderContextMenu;
45 - (void)toggleColumn:(id)sender; 51 - (void)toggleColumn:(id)sender;
46 - (void)adjustSelectionAndEndProcessButton; 52 - (void)adjustSelectionAndEndProcessButton;
47 - (void)deselectRows; 53 - (void)deselectRows;
(...skipping 584 matching lines...) Expand 10 before | Expand all | Expand 10 after
632 if (instance_) 638 if (instance_)
633 [instance_->window_controller_ close]; 639 [instance_->window_controller_ close];
634 } 640 }
635 641
636 } // namespace task_manager 642 } // namespace task_manager
637 643
638 namespace chrome { 644 namespace chrome {
639 645
640 // Declared in browser_dialogs.h. 646 // Declared in browser_dialogs.h.
641 task_manager::TaskManagerTableModel* ShowTaskManager(Browser* browser) { 647 task_manager::TaskManagerTableModel* ShowTaskManager(Browser* browser) {
648 if (ShouldUseViewsTaskManager())
649 return chrome::ShowTaskManagerViews(browser);
642 return task_manager::TaskManagerMac::Show(); 650 return task_manager::TaskManagerMac::Show();
643 } 651 }
644 652
645 void HideTaskManager() { 653 void HideTaskManager() {
654 if (ShouldUseViewsTaskManager())
655 return chrome::HideTaskManagerViews();
646 task_manager::TaskManagerMac::Hide(); 656 task_manager::TaskManagerMac::Hide();
647 } 657 }
648 658
649 } // namespace chrome 659 } // namespace chrome
OLDNEW
« no previous file with comments | « chrome/browser/about_flags.cc ('k') | chrome/common/chrome_features.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698