12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- // Copyright 2014 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #ifndef EXTENSIONS_SHELL_BROWSER_SHELL_NATIVE_APP_WINDOW_H_
- #define EXTENSIONS_SHELL_BROWSER_SHELL_NATIVE_APP_WINDOW_H_
- #include "base/memory/raw_ptr.h"
- #include "extensions/browser/app_window/app_window.h"
- #include "extensions/browser/app_window/native_app_window.h"
- namespace extensions {
- // app_shell's NativeAppWindow implementation.
- class ShellNativeAppWindow : public NativeAppWindow {
- public:
- ShellNativeAppWindow(AppWindow* app_window,
- const AppWindow::CreateParams& params);
- ShellNativeAppWindow(const ShellNativeAppWindow&) = delete;
- ShellNativeAppWindow& operator=(const ShellNativeAppWindow&) = delete;
- ~ShellNativeAppWindow() override;
- AppWindow* app_window() const { return app_window_; }
- // ui::BaseWindow overrides:
- bool IsMaximized() const override;
- bool IsMinimized() const override;
- bool IsFullscreen() const override;
- gfx::Rect GetRestoredBounds() const override;
- ui::WindowShowState GetRestoredState() const override;
- void ShowInactive() override;
- void Close() override;
- void Maximize() override;
- void Minimize() override;
- void Restore() override;
- void FlashFrame(bool flash) override;
- ui::ZOrderLevel GetZOrderLevel() const override;
- void SetZOrderLevel(ui::ZOrderLevel order) override;
- // web_modal::ModalDialogHost overrides:
- gfx::NativeView GetHostView() const override;
- gfx::Point GetDialogPosition(const gfx::Size& size) override;
- void AddObserver(web_modal::ModalDialogHostObserver* observer) override;
- void RemoveObserver(web_modal::ModalDialogHostObserver* observer) override;
- // web_modal::WebContentsModalDialogHost overrides:
- gfx::Size GetMaximumDialogSize() override;
- // NativeAppWindow overrides:
- void SetFullscreen(int fullscreen_types) override;
- bool IsFullscreenOrPending() const override;
- void UpdateWindowIcon() override;
- void UpdateWindowTitle() override;
- void UpdateDraggableRegions(
- const std::vector<DraggableRegion>& regions) override;
- SkRegion* GetDraggableRegion() override;
- void UpdateShape(std::unique_ptr<ShapeRects> rects) override;
- bool HandleKeyboardEvent(
- const content::NativeWebKeyboardEvent& event) override;
- bool IsFrameless() const override;
- bool HasFrameColor() const override;
- SkColor ActiveFrameColor() const override;
- SkColor InactiveFrameColor() const override;
- gfx::Insets GetFrameInsets() const override;
- void SetContentSizeConstraints(const gfx::Size& min_size,
- const gfx::Size& max_size) override;
- void SetVisibleOnAllWorkspaces(bool always_visible) override;
- bool CanHaveAlphaEnabled() const override;
- void SetActivateOnPointer(bool activate_on_pointer) override;
- private:
- raw_ptr<AppWindow> app_window_;
- };
- } // namespace extensions
- #endif // EXTENSIONS_SHELL_BROWSER_SHELL_NATIVE_APP_WINDOW_H_
|