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

Side by Side Diff: chrome/browser/ui/ash/launcher/chrome_launcher_controller.h

Issue 97173003: ash: Rename more Launcher classes to Shelf*. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: link chrome Created 7 years 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 #ifndef CHROME_BROWSER_UI_ASH_LAUNCHER_CHROME_LAUNCHER_CONTROLLER_H_ 5 #ifndef CHROME_BROWSER_UI_ASH_LAUNCHER_CHROME_LAUNCHER_CONTROLLER_H_
6 #define CHROME_BROWSER_UI_ASH_LAUNCHER_CHROME_LAUNCHER_CONTROLLER_H_ 6 #define CHROME_BROWSER_UI_ASH_LAUNCHER_CHROME_LAUNCHER_CONTROLLER_H_
7 7
8 #include <list> 8 #include <list>
9 #include <map> 9 #include <map>
10 #include <set> 10 #include <set>
11 #include <string> 11 #include <string>
12 #include <vector> 12 #include <vector>
13 13
14 #include "ash/display/display_controller.h" 14 #include "ash/display/display_controller.h"
15 #include "ash/launcher/launcher_delegate.h" 15 #include "ash/launcher/launcher_delegate.h"
16 #include "ash/launcher/launcher_item_delegate.h"
17 #include "ash/launcher/launcher_types.h" 16 #include "ash/launcher/launcher_types.h"
17 #include "ash/shelf/shelf_item_delegate.h"
18 #include "ash/shelf/shelf_layout_manager_observer.h" 18 #include "ash/shelf/shelf_layout_manager_observer.h"
19 #include "ash/shelf/shelf_model_observer.h" 19 #include "ash/shelf/shelf_model_observer.h"
20 #include "ash/shelf/shelf_types.h" 20 #include "ash/shelf/shelf_types.h"
21 #include "ash/shell_observer.h" 21 #include "ash/shell_observer.h"
22 #include "base/basictypes.h" 22 #include "base/basictypes.h"
23 #include "base/compiler_specific.h" 23 #include "base/compiler_specific.h"
24 #include "base/memory/scoped_ptr.h" 24 #include "base/memory/scoped_ptr.h"
25 #include "base/memory/scoped_vector.h" 25 #include "base/memory/scoped_vector.h"
26 #include "base/prefs/pref_change_registrar.h" 26 #include "base/prefs/pref_change_registrar.h"
27 #include "chrome/browser/extensions/app_icon_loader.h" 27 #include "chrome/browser/extensions/app_icon_loader.h"
(...skipping 12 matching lines...) Expand all
40 class BrowserShortcutLauncherItemController; 40 class BrowserShortcutLauncherItemController;
41 class BrowserStatusMonitor; 41 class BrowserStatusMonitor;
42 class ExtensionEnableFlow; 42 class ExtensionEnableFlow;
43 class GURL; 43 class GURL;
44 class LauncherItemController; 44 class LauncherItemController;
45 class Profile; 45 class Profile;
46 class ShellWindowLauncherController; 46 class ShellWindowLauncherController;
47 class TabContents; 47 class TabContents;
48 48
49 namespace ash { 49 namespace ash {
50 class LauncherItemDelegateManager; 50 class ShelfItemDelegateManager;
51 class ShelfModel; 51 class ShelfModel;
52 } 52 }
53 53
54 namespace aura { 54 namespace aura {
55 class Window; 55 class Window;
56 } 56 }
57 57
58 namespace content { 58 namespace content {
59 class WebContents; 59 class WebContents;
60 } 60 }
(...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after
397 // Use kInsertItemAtEnd to add a shortcut as the last item. 397 // Use kInsertItemAtEnd to add a shortcut as the last item.
398 ash::LauncherID CreateAppShortcutLauncherItem(const std::string& app_id, 398 ash::LauncherID CreateAppShortcutLauncherItem(const std::string& app_id,
399 int index); 399 int index);
400 400
401 // Sets the AppTabHelper/AppIconLoader, taking ownership of the helper class. 401 // Sets the AppTabHelper/AppIconLoader, taking ownership of the helper class.
402 // These are intended for testing. 402 // These are intended for testing.
403 void SetAppTabHelperForTest(AppTabHelper* helper); 403 void SetAppTabHelperForTest(AppTabHelper* helper);
404 void SetAppIconLoaderForTest(extensions::AppIconLoader* loader); 404 void SetAppIconLoaderForTest(extensions::AppIconLoader* loader);
405 const std::string& GetAppIdFromLauncherIdForTest(ash::LauncherID id); 405 const std::string& GetAppIdFromLauncherIdForTest(ash::LauncherID id);
406 406
407 // Sets the ash::LauncherItemDelegateManager only for unittests and doesn't 407 // Sets the ash::ShelfItemDelegateManager only for unittests and doesn't
408 // take an ownership of it. 408 // take an ownership of it.
409 void SetLauncherItemDelegateManagerForTest( 409 void SetShelfItemDelegateManagerForTest(
410 ash::LauncherItemDelegateManager* manager); 410 ash::ShelfItemDelegateManager* manager);
411 411
412 private: 412 private:
413 friend class ChromeLauncherControllerTest; 413 friend class ChromeLauncherControllerTest;
414 friend class LauncherAppBrowserTest; 414 friend class LauncherAppBrowserTest;
415 friend class LauncherPlatformAppBrowserTest; 415 friend class LauncherPlatformAppBrowserTest;
416 416
417 typedef std::map<ash::LauncherID, LauncherItemController*> 417 typedef std::map<ash::LauncherID, LauncherItemController*>
418 IDToItemControllerMap; 418 IDToItemControllerMap;
419 typedef std::list<content::WebContents*> WebContentsList; 419 typedef std::list<content::WebContents*> WebContentsList;
420 typedef std::map<std::string, WebContentsList> AppIDToWebContentsListMap; 420 typedef std::map<std::string, WebContentsList> AppIDToWebContentsListMap;
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
513 // configuration of pinned and known (but not running) apps. 513 // configuration of pinned and known (but not running) apps.
514 int GetChromeIconIndexForCreation(); 514 int GetChromeIconIndexForCreation();
515 515
516 // Get the list of pinned programs from the preferences. 516 // Get the list of pinned programs from the preferences.
517 std::vector<std::string> GetListOfPinnedAppsAndBrowser(); 517 std::vector<std::string> GetListOfPinnedAppsAndBrowser();
518 518
519 // Close all windowed V1 applications of a certain extension which was already 519 // Close all windowed V1 applications of a certain extension which was already
520 // deleted. 520 // deleted.
521 void CloseWindowedAppsFromRemovedExtension(const std::string& app_id); 521 void CloseWindowedAppsFromRemovedExtension(const std::string& app_id);
522 522
523 // Set LauncherItemDelegate |item_delegate| for |id| and take an ownership. 523 // Set ShelfItemDelegate |item_delegate| for |id| and take an ownership.
524 // TODO(simon.hong81): Make this take a scoped_ptr of |item_delegate|. 524 // TODO(simon.hong81): Make this take a scoped_ptr of |item_delegate|.
525 void SetLauncherItemDelegate(ash::LauncherID id, 525 void SetShelfItemDelegate(ash::LauncherID id,
526 ash::LauncherItemDelegate* item_delegate); 526 ash::ShelfItemDelegate* item_delegate);
527 527
528 // Attach to a specific profile. 528 // Attach to a specific profile.
529 void AttachProfile(Profile* proifile); 529 void AttachProfile(Profile* proifile);
530 530
531 // Forget the current profile to allow attaching to a new one. 531 // Forget the current profile to allow attaching to a new one.
532 void ReleaseProfile(); 532 void ReleaseProfile();
533 533
534 // Returns true if |app_id| is a Packaged App that has already launched on the 534 // Returns true if |app_id| is a Packaged App that has already launched on the
535 // native desktop and, if so, executes it as a desktop shortcut to activate 535 // native desktop and, if so, executes it as a desktop shortcut to activate
536 // desktop mode and send another OnLaunched event to the Extension. 536 // desktop mode and send another OnLaunched event to the Extension.
537 bool LaunchedInNativeDesktop(const std::string& app_id); 537 bool LaunchedInNativeDesktop(const std::string& app_id);
538 538
539 static ChromeLauncherController* instance_; 539 static ChromeLauncherController* instance_;
540 540
541 ash::ShelfModel* model_; 541 ash::ShelfModel* model_;
542 542
543 ash::LauncherItemDelegateManager* item_delegate_manager_; 543 ash::ShelfItemDelegateManager* item_delegate_manager_;
544 544
545 // Profile used for prefs and loading extensions. This is NOT necessarily the 545 // Profile used for prefs and loading extensions. This is NOT necessarily the
546 // profile new windows are created with. 546 // profile new windows are created with.
547 Profile* profile_; 547 Profile* profile_;
548 548
549 IDToItemControllerMap id_to_item_controller_map_; 549 IDToItemControllerMap id_to_item_controller_map_;
550 550
551 // Maintains activation order of web contents for each app. 551 // Maintains activation order of web contents for each app.
552 AppIDToWebContentsListMap app_id_to_web_contents_list_; 552 AppIDToWebContentsListMap app_id_to_web_contents_list_;
553 553
(...skipping 29 matching lines...) Expand all
583 // If true, incoming pinned state changes should be ignored. 583 // If true, incoming pinned state changes should be ignored.
584 bool ignore_persist_pinned_state_change_; 584 bool ignore_persist_pinned_state_change_;
585 585
586 // True if each user has an own desktop. 586 // True if each user has an own desktop.
587 bool multi_profile_desktop_separation_; 587 bool multi_profile_desktop_separation_;
588 588
589 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherController); 589 DISALLOW_COPY_AND_ASSIGN(ChromeLauncherController);
590 }; 590 };
591 591
592 #endif // CHROME_BROWSER_UI_ASH_LAUNCHER_CHROME_LAUNCHER_CONTROLLER_H_ 592 #endif // CHROME_BROWSER_UI_ASH_LAUNCHER_CHROME_LAUNCHER_CONTROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698