Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / extensions / common / view_type.h
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef EXTENSIONS_COMMON_VIEW_TYPE_H_
6 #define EXTENSIONS_COMMON_VIEW_TYPE_H_
7
8 namespace extensions {
9
10 // Icky RTTI used by a few systems to distinguish the host type of a given
11 // WebContents.
12 //
13 // TODO(aa): Remove this and teach those systems to keep track of their own
14 // data.
15 enum ViewType {
16   VIEW_TYPE_INVALID,
17   VIEW_TYPE_APP_WINDOW,
18   VIEW_TYPE_BACKGROUND_CONTENTS,
19   VIEW_TYPE_EXTENSION_BACKGROUND_PAGE,
20   VIEW_TYPE_EXTENSION_DIALOG,
21   VIEW_TYPE_EXTENSION_INFOBAR,
22   VIEW_TYPE_EXTENSION_POPUP,
23   VIEW_TYPE_PANEL,
24   VIEW_TYPE_TAB_CONTENTS,
25   VIEW_TYPE_VIRTUAL_KEYBOARD,
26   VIEW_TYPE_LAST = VIEW_TYPE_VIRTUAL_KEYBOARD
27 };
28
29 // Constant strings corresponding to the Type enumeration values.  Used
30 // when converting JS arguments.
31 extern const char kViewTypeAll[];
32 extern const char kViewTypeAppWindow[];
33 extern const char kViewTypeBackgroundPage[];
34 extern const char kViewTypeExtensionDialog[];
35 extern const char kViewTypeInfobar[];
36 extern const char kViewTypePanel[];
37 extern const char kViewTypePopup[];
38 extern const char kViewTypeTabContents[];
39
40 }  // namespace extensions
41
42 #endif  // EXTENSIONS_COMMON_VIEW_TYPE_H_