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 3 // found in the LICENSE file. 4 5 #ifndef APPS_SHELL_BROWSER_SHELL_APP_SORTING_H_ 6 #define APPS_SHELL_BROWSER_SHELL_APP_SORTING_H_ 7 8 #include "base/compiler_specific.h" 9 #include "extensions/browser/app_sorting.h" 10 11 namespace apps { 12 13 // A stub AppSorting. Since app_shell only runs a single app we don't need to 14 // sort them. 15 class ShellAppSorting : public extensions::AppSorting { 16 public: 17 ShellAppSorting(); 18 virtual ~ShellAppSorting(); 19 20 // extensions::AppSorting overrides: 21 virtual void SetExtensionScopedPrefs(extensions::ExtensionScopedPrefs* prefs) 22 OVERRIDE; 23 virtual void SetExtensionSyncService( 24 ExtensionSyncService* extension_sync_service) OVERRIDE; 25 virtual void Initialize( 26 const extensions::ExtensionIdList& extension_ids) OVERRIDE; 27 virtual void FixNTPOrdinalCollisions() OVERRIDE; 28 virtual void EnsureValidOrdinals( 29 const std::string& extension_id, 30 const syncer::StringOrdinal& suggested_page) OVERRIDE; 31 virtual void OnExtensionMoved( 32 const std::string& moved_extension_id, 33 const std::string& predecessor_extension_id, 34 const std::string& successor_extension_id) OVERRIDE; 35 virtual syncer::StringOrdinal GetAppLaunchOrdinal( 36 const std::string& extension_id) const OVERRIDE; 37 virtual void SetAppLaunchOrdinal( 38 const std::string& extension_id, 39 const syncer::StringOrdinal& new_app_launch_ordinal) OVERRIDE; 40 virtual syncer::StringOrdinal CreateFirstAppLaunchOrdinal( 41 const syncer::StringOrdinal& page_ordinal) const OVERRIDE; 42 virtual syncer::StringOrdinal CreateNextAppLaunchOrdinal( 43 const syncer::StringOrdinal& page_ordinal) const OVERRIDE; 44 virtual syncer::StringOrdinal CreateFirstAppPageOrdinal() const OVERRIDE; 45 virtual syncer::StringOrdinal GetNaturalAppPageOrdinal() const OVERRIDE; 46 virtual syncer::StringOrdinal GetPageOrdinal( 47 const std::string& extension_id) const OVERRIDE; 48 virtual void SetPageOrdinal( 49 const std::string& extension_id, 50 const syncer::StringOrdinal& new_page_ordinal) OVERRIDE; 51 virtual void ClearOrdinals(const std::string& extension_id) OVERRIDE; 52 virtual int PageStringOrdinalAsInteger( 53 const syncer::StringOrdinal& page_ordinal) const OVERRIDE; 54 virtual syncer::StringOrdinal PageIntegerAsStringOrdinal( 55 size_t page_index) OVERRIDE; 56 virtual void MarkExtensionAsHidden(const std::string& extension_id) OVERRIDE; 57 58 private: 59 DISALLOW_COPY_AND_ASSIGN(ShellAppSorting); 60 }; 61 62 } // namespace apps 63 64 #endif // APPS_SHELL_BROWSER_SHELL_APP_SORTING_H_ 65