blob: e6dc17d198a29b7e3655f7c2d21224ab061c92e0 [file] [log] [blame]
// Copyright (c) 2012 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.
// This is used by the app window API internally to pass through messages to
// the shell window.
namespace app.currentWindowInternal {
// Null or undefined indicates that a value should not change.
dictionary Bounds {
long? left;
long? top;
long? width;
long? height;
};
// Null or undefined indicates that a value should not change. A value of 0
// will clear the constraints.
dictionary SizeConstraints {
long? minWidth;
long? minHeight;
long? maxWidth;
long? maxHeight;
};
dictionary RegionRect {
long left;
long top;
long width;
long height;
};
dictionary Region {
RegionRect[]? rects;
};
interface Functions {
static void focus();
static void fullscreen();
static void minimize();
static void maximize();
static void restore();
static void drawAttention();
static void clearAttention();
static void show(optional boolean focused);
static void hide();
static void setBounds(DOMString boundsType, Bounds bounds);
static void setSizeConstraints(DOMString boundsType,
SizeConstraints constraints);
static void setIcon(DOMString icon_url);
static void setShape(Region region);
static void setAlwaysOnTop(boolean always_on_top);
static void setVisibleOnAllWorkspaces(boolean always_visible);
};
interface Events {
static void onClosed();
static void onBoundsChanged();
static void onFullscreened();
static void onMinimized();
static void onMaximized();
static void onRestored();
static void onAlphaEnabledChanged();
// Only sent in tests.
static void onWindowShownForTests();
};
};