1 // Copyright 2014 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 MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_OBSERVER_H_ 6 #define MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_OBSERVER_H_ 7 8 #include <vector> 9 10 #include "base/basictypes.h" 11 12 #include "mojo/services/public/interfaces/input_events/input_events.mojom.h" 13 14 namespace mojo { 15 namespace view_manager { 16 17 class View; 18 19 class ViewObserver { 20 public: 21 enum DispositionChangePhase { 22 DISPOSITION_CHANGING, 23 DISPOSITION_CHANGED 24 }; 25 OnViewDestroy(View * view,DispositionChangePhase phase)26 virtual void OnViewDestroy(View* view, DispositionChangePhase phase) {} 27 OnViewInputEvent(View * view,const EventPtr & event)28 virtual void OnViewInputEvent(View* view, const EventPtr& event) {} 29 30 protected: ~ViewObserver()31 virtual ~ViewObserver() {} 32 }; 33 34 } // namespace view_manager 35 } // namespace mojo 36 37 #endif // MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_OBSERVER_H_ 38