Add custom_tabs_client to third_party.
[chromium-blink-merge.git] / ui / base / window_open_disposition.h
blobb548984e7928c02f25d4ed691e871764a62968aa
1 // Copyright 2011 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.
5 #ifndef UI_BASE_WINDOW_OPEN_DISPOSITION_H_
6 #define UI_BASE_WINDOW_OPEN_DISPOSITION_H_
8 #include "ui/base/ui_base_export.h"
10 // A Java counterpart will be generated for this enum.
11 // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.ui
12 enum WindowOpenDisposition {
13 UNKNOWN,
14 SUPPRESS_OPEN,
15 CURRENT_TAB,
16 // Indicates that only one tab with the url should exist in the same window.
17 SINGLETON_TAB,
18 NEW_FOREGROUND_TAB,
19 NEW_BACKGROUND_TAB,
20 NEW_POPUP,
21 NEW_WINDOW,
22 SAVE_TO_DISK,
23 OFF_THE_RECORD,
24 IGNORE_ACTION,
25 // Update when adding a new disposition.
26 WINDOW_OPEN_DISPOSITION_LAST = IGNORE_ACTION
29 namespace ui {
31 // Translates event flags from a click on a link into the user's desired
32 // window disposition. For example, a middle click would mean to open
33 // a background tab.
34 UI_BASE_EXPORT WindowOpenDisposition DispositionFromClick(bool middle_button,
35 bool alt_key,
36 bool ctrl_key,
37 bool meta_key,
38 bool shift_key);
40 // Translates event flags into what kind of disposition they represents.
41 // For example, a middle click would mean to open a background tab.
42 // event_flags are the flags as understood by ui::MouseEvent.
43 UI_BASE_EXPORT WindowOpenDisposition DispositionFromEventFlags(int event_flags);
45 } // namespace ui
47 #endif // UI_BASE_WINDOW_OPEN_DISPOSITION_H_