Chromium Code Reviews| Index: ui/views/controls/menu/menu_runner.h |
| diff --git a/ui/views/controls/menu/menu_runner.h b/ui/views/controls/menu/menu_runner.h |
| index 824afdf8d4b52a37c7a37eb4bc8f36d67ebd8aa4..51796f23a83990ff3cb6d11fa35a55b860d1dc3f 100644 |
| --- a/ui/views/controls/menu/menu_runner.h |
| +++ b/ui/views/controls/menu/menu_runner.h |
| @@ -34,7 +34,7 @@ class Widget; |
| namespace internal { |
| class DisplayChangeListener; |
| -class MenuRunnerImpl; |
| +class MenuRunnerImplInterface; |
| } |
| namespace test { |
| @@ -133,9 +133,16 @@ class VIEWS_EXPORT MenuRunner { |
| // Sets an implementation of RunMenuAt. This is intended to be used at test. |
| void SetRunnerHandler(scoped_ptr<MenuRunnerHandler> runner_handler); |
| + internal::MenuRunnerImplInterface* CreateImpl(int32 types); |
| + internal::MenuRunnerImplInterface* CreateNativeImpl(); |
|
tapted
2014/06/24 23:28:08
Id probably try to have
MenuRunnerImplInterface::
|
| + |
| + ui::MenuModel* menu_model_; // Weak. Owned by our owner. |
| + // NULL if constructed with a MenuView. |
| scoped_ptr<MenuModelAdapter> menu_model_adapter_; |
| + MenuItemView* menu_view_; // Weak. Owned by holder_. Can be NULL. |
| - internal::MenuRunnerImpl* holder_; |
| + // We own this. No scoped_ptr because it is destroyed by calling Release(). |
| + internal::MenuRunnerImplInterface* holder_; |
| // An implementation of RunMenuAt. This is usually NULL and ignored. If this |
| // is not NULL, this implementation will be used. |
| @@ -164,7 +171,7 @@ class DisplayChangeListener { |
| DisplayChangeListener() {} |
| }; |
| -} |
| +} // namespace internal |
| } // namespace views |