blob: 51b4fedfb8264adbc4bd014f9b6a8a9e29497bd5 [file] [log] [blame]
// Copyright 2017 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 UI_KEYBOARD_CONTAINER_FULLSCREEN_BEHAVIOR_H_
#define UI_KEYBOARD_CONTAINER_FULLSCREEN_BEHAVIOR_H_
#include "ui/keyboard/container_full_width_behavior.h"
#include "ui/keyboard/keyboard_export.h"
namespace keyboard {
class KEYBOARD_EXPORT ContainerFullscreenBehavior
: public ContainerFullWidthBehavior {
public:
explicit ContainerFullscreenBehavior(Delegate* controller);
~ContainerFullscreenBehavior() override;
// ContainerFullWidthBehavior overrides
gfx::Rect AdjustSetBoundsRequest(
const gfx::Rect& display_bounds,
const gfx::Rect& requested_bounds_in_screen_coords) override;
void SetCanonicalBounds(aura::Window* container,
const gfx::Rect& display_bounds) override;
mojom::ContainerType GetType() const override;
void SetOccludedBounds(const gfx::Rect& occluded_bounds_in_window) override;
gfx::Rect GetOccludedBounds(
const gfx::Rect& visual_bounds_in_screen) const override;
private:
// The occluded bounds for fullscreen behavior is determined on the IME
// extension side, so it has to be passed here via the extension API.
gfx::Rect occluded_bounds_;
};
} // namespace keyboard
#endif // UI_KEYBOARD_CONTAINER_FULLSCREEN_BEHAVIOR_H_