12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file.
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#ifndef ASH_SHELF_SHELF_TYPES_H_
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define ASH_SHELF_SHELF_TYPES_H_
72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace ash {
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)enum ShelfAlignment {
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_ALIGNMENT_BOTTOM,
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_ALIGNMENT_LEFT,
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_ALIGNMENT_RIGHT,
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_ALIGNMENT_TOP,
152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)};
162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)enum ShelfAutoHideBehavior {
182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // Always auto-hide.
192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS,
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // Never auto-hide.
222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_AUTO_HIDE_BEHAVIOR_NEVER,
232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // Always hide.
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_AUTO_HIDE_ALWAYS_HIDDEN,
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)};
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)enum ShelfVisibilityState {
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // Always visible.
302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_VISIBLE,
312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // A couple of pixels are reserved at the bottom for the shelf.
332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_AUTO_HIDE,
342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // Nothing is shown. Used for fullscreen windows.
362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_HIDDEN,
372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)};
382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)enum ShelfAutoHideState {
402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_AUTO_HIDE_SHOWN,
412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SHELF_AUTO_HIDE_HIDDEN,
422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)};
432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
447dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochenum ShelfBackgroundType {
457dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch  // The default transparent background.
467dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch  SHELF_BACKGROUND_DEFAULT,
477dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch
487dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch  // The background when a window is overlapping.
497dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch  SHELF_BACKGROUND_OVERLAP,
507dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch
517dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch  // The background when a window is maximized.
527dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch  SHELF_BACKGROUND_MAXIMIZED,
537dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch};
547dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch
552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}  // namespace ash
562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif  // ASH_SHELF_SHELF_TYPES_H_
58