window_state_observer.h revision 8bcbed890bc3ce4d7a057a8f32cab53fa534672e
14e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 24e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 34e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// found in the LICENSE file. 44e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 54e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#ifndef ASH_WM_WINDOW_STATE_OBSERVER_H_ 64e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#define ASH_WM_WINDOW_STATE_OBSERVER_H_ 74e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 88bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)#include "ash/ash_export.h" 94e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "ash/wm/wm_types.h" 104e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 114e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)namespace ash { 124e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)namespace wm { 134e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)class WindowState; 144e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 154e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)class ASH_EXPORT WindowStateObserver { 164e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) public: 174e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) // Called when the tracked_by_workspace has changed. 184e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) virtual void OnTrackedByWorkspaceChanged( 194e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) WindowState* window, 204e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) bool old_value) {} 214e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 224e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) // Called when the window's show type has changed. This is different from 234e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) // kWindowShowStatekey property change as this will be invoked when the window 244e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) // gets left/right maximized, and auto positioned. |old_type| is the value 254e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) // before the change. 264e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) virtual void OnWindowShowTypeChanged(WindowState* window_state, 274e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) WindowShowType old_type) {} 284e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)}; 294e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 304e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)} // namespace wm 314e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)} // namespace ash 324e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 334e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#endif // ASH_WM_WINDOW_STATE_OBSERVER_H_ 34