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

Side by Side Diff: chrome/browser/chromeos/login/language_switch_menu.h

Issue 7720012: Moves ownership of MenuItemView to MenuRunner as well as responbility (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix unit test Created 9 years, 4 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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_CHROMEOS_LOGIN_LANGUAGE_SWITCH_MENU_H_ 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_LANGUAGE_SWITCH_MENU_H_
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_LANGUAGE_SWITCH_MENU_H_ 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_LANGUAGE_SWITCH_MENU_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
10 10
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "testing/gtest/include/gtest/gtest_prod.h" 12 #include "testing/gtest/include/gtest/gtest_prod.h"
13 #include "views/controls/menu/menu_delegate.h" 13 #include "views/controls/menu/menu_delegate.h"
14 #include "views/controls/menu/view_menu_delegate.h" 14 #include "views/controls/menu/view_menu_delegate.h"
15 #include "views/view.h" 15 #include "views/view.h"
16 16
17 class WizardControllerTest_SwitchLanguage_Test; 17 class WizardControllerTest_SwitchLanguage_Test;
18 18
19 namespace views { 19 namespace views {
20 class MenuItemView; 20 class MenuItemView;
21 class MenuRunner;
21 } // namespace views 22 } // namespace views
22 23
23 namespace chromeos { 24 namespace chromeos {
24 25
25 class LanguageList; 26 class LanguageList;
26 class ScreenObserver; 27 class ScreenObserver;
27 28
28 class LanguageSwitchMenu : public views::ViewMenuDelegate, 29 class LanguageSwitchMenu : public views::ViewMenuDelegate,
29 public views::MenuDelegate { 30 public views::MenuDelegate {
30 public: 31 public:
(...skipping 20 matching lines...) Expand all
51 52
52 private: 53 private:
53 static void LoadFontsForCurrentLocale(); 54 static void LoadFontsForCurrentLocale();
54 55
55 // views::ViewMenuDelegate implementation. 56 // views::ViewMenuDelegate implementation.
56 virtual void RunMenu(views::View* source, const gfx::Point& pt) OVERRIDE; 57 virtual void RunMenu(views::View* source, const gfx::Point& pt) OVERRIDE;
57 58
58 // views::MenuDelegate implementation. 59 // views::MenuDelegate implementation.
59 virtual void ExecuteCommand(int command_id) OVERRIDE; 60 virtual void ExecuteCommand(int command_id) OVERRIDE;
60 61
61 // Dialog controls that we own ourselves. 62 // The menu.
62 scoped_ptr<views::MenuItemView> menu_; 63 views::MenuItemView* menu_;
64
65 // Runs and owns |menu_|.
66 scoped_ptr<views::MenuRunner> menu_runner_;
63 67
64 // Language locale name storage. 68 // Language locale name storage.
65 scoped_ptr<LanguageList> language_list_; 69 scoped_ptr<LanguageList> language_list_;
66 70
67 FRIEND_TEST(::WizardControllerTest, SwitchLanguage); 71 FRIEND_TEST(::WizardControllerTest, SwitchLanguage);
68 DISALLOW_COPY_AND_ASSIGN(LanguageSwitchMenu); 72 DISALLOW_COPY_AND_ASSIGN(LanguageSwitchMenu);
69 }; 73 };
70 74
71 } // namespace chromeos 75 } // namespace chromeos
72 76
73 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_LANGUAGE_SWITCH_MENU_H_ 77 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_LANGUAGE_SWITCH_MENU_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698