| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 
 | // Copyright 2015 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.
#include "chrome/browser/extensions/api/tabs/app_base_window.h"
#include "extensions/browser/app_window/app_window.h"
#include "extensions/browser/app_window/native_app_window.h"
#include "extensions/browser/app_window/size_constraints.h"
namespace extensions {
AppBaseWindow::AppBaseWindow(AppWindow* app_window) : app_window_(app_window) {}
AppBaseWindow::~AppBaseWindow() {}
bool AppBaseWindow::IsActive() const {
  return GetBaseWindow()->IsActive();
}
bool AppBaseWindow::IsMaximized() const {
  return GetBaseWindow()->IsMaximized();
}
bool AppBaseWindow::IsMinimized() const {
  return GetBaseWindow()->IsMinimized();
}
bool AppBaseWindow::IsFullscreen() const {
  return GetBaseWindow()->IsFullscreen();
}
gfx::NativeWindow AppBaseWindow::GetNativeWindow() const {
  return GetBaseWindow()->GetNativeWindow();
}
gfx::Rect AppBaseWindow::GetRestoredBounds() const {
  return GetBaseWindow()->GetRestoredBounds();
}
ui::WindowShowState AppBaseWindow::GetRestoredState() const {
  return GetBaseWindow()->GetRestoredState();
}
gfx::Rect AppBaseWindow::GetBounds() const {
  return GetBaseWindow()->GetBounds();
}
void AppBaseWindow::Show() {
  GetBaseWindow()->Show();
}
void AppBaseWindow::Hide() {
  GetBaseWindow()->Hide();
}
void AppBaseWindow::ShowInactive() {
  GetBaseWindow()->ShowInactive();
}
void AppBaseWindow::Close() {
  GetBaseWindow()->Close();
}
void AppBaseWindow::Activate() {
  GetBaseWindow()->Activate();
}
void AppBaseWindow::Deactivate() {
  GetBaseWindow()->Deactivate();
}
void AppBaseWindow::Maximize() {
  GetBaseWindow()->Maximize();
}
void AppBaseWindow::Minimize() {
  GetBaseWindow()->Minimize();
}
void AppBaseWindow::Restore() {
  GetBaseWindow()->Restore();
}
void AppBaseWindow::SetBounds(const gfx::Rect& bounds) {
  // We constrain the given size to the min/max sizes of the
  // application window.
  gfx::Insets frame_insets = GetBaseWindow()->GetFrameInsets();
  SizeConstraints constraints(
      SizeConstraints::AddFrameToConstraints(
          GetBaseWindow()->GetContentMinimumSize(), frame_insets),
      SizeConstraints::AddFrameToConstraints(
          GetBaseWindow()->GetContentMaximumSize(), frame_insets));
  gfx::Rect new_bounds = bounds;
  new_bounds.set_size(constraints.ClampSize(bounds.size()));
  GetBaseWindow()->SetBounds(new_bounds);
}
void AppBaseWindow::FlashFrame(bool flash) {
  GetBaseWindow()->FlashFrame(flash);
}
bool AppBaseWindow::IsAlwaysOnTop() const {
  return GetBaseWindow()->IsAlwaysOnTop();
}
void AppBaseWindow::SetAlwaysOnTop(bool always_on_top) {
  GetBaseWindow()->SetAlwaysOnTop(always_on_top);
}
NativeAppWindow* AppBaseWindow::GetBaseWindow() const {
  return app_window_->GetBaseWindow();
}
}  // namespace extensions
 |