123456789101112131415161718192021222324252627282930313233343536373839 |
- // Copyright (c) 2014 GitHub, Inc.
- // Use of this source code is governed by the MIT license that can be
- // found in the LICENSE file.
- #ifndef ATOM_BROWSER_UI_X_WINDOW_STATE_WATCHER_H_
- #define ATOM_BROWSER_UI_X_WINDOW_STATE_WATCHER_H_
- #include "ui/events/platform/platform_event_observer.h"
- #include "atom/browser/native_window_views.h"
- namespace atom {
- class WindowStateWatcher : public ui::PlatformEventObserver {
- public:
- explicit WindowStateWatcher(NativeWindowViews* window);
- ~WindowStateWatcher() override;
- protected:
- // ui::PlatformEventObserver:
- void WillProcessEvent(const ui::PlatformEvent& event) override;
- void DidProcessEvent(const ui::PlatformEvent& event) override;
- private:
- bool IsWindowStateEvent(const ui::PlatformEvent& event);
- NativeWindowViews* window_;
- gfx::AcceleratedWidget widget_;
- bool was_minimized_ = false;
- bool was_maximized_ = false;
- DISALLOW_COPY_AND_ASSIGN(WindowStateWatcher);
- };
- } // namespace atom
- #endif // ATOM_BROWSER_UI_X_WINDOW_STATE_WATCHER_H_
|