158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// found in the LICENSE file.
458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#ifndef ASH_TEST_APP_LIST_CONTROLLER_TEST_API_H_
658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#define ASH_TEST_APP_LIST_CONTROLLER_TEST_API_H_
758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#include "base/basictypes.h"
958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
1058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)namespace app_list {
1158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)class AppListView;
121e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)class AppsGridView;
1358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)}
1458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
1558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)namespace ash {
1658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)class AppListController;
17c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochclass Shell;
1858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
1958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)namespace test {
2058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
2158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// Accesses private data from an AppListController for testing.
2258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)class AppListControllerTestApi {
2358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles) public:
2458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  explicit AppListControllerTestApi(Shell* shell);
2558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
261e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)  // Gets the root level apps grid view.
271e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)  app_list::AppsGridView* GetRootGridView();
281e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)
2958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  app_list::AppListView* view();
3058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
3158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles) private:
32c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  AppListController* app_list_controller_;  // Not owned.
3358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
3458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  DISALLOW_COPY_AND_ASSIGN(AppListControllerTestApi);
3558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)};
3658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
3758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)}  // namespace test
3858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)}  // namespace ash
3958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
4058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#endif  // ASH_TEST_APP_LIST_CONTROLLER_TEST_API_H_
41