Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Side by Side Diff: ui/base/mojo/window_open_disposition_enum_traits.h

Issue 2363533002: Add mojom for WindowOpenDisposition (Closed)
Patch Set: . Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ui/base/mojo/window_open_disposition.typemap ('k') | ui/base/window_open_disposition.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2016 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 UI_BASE_MOJO_WINDOW_OPEN_DISPOSITION_ENUM_TRAITS_H_
6 #define UI_BASE_MOJO_WINDOW_OPEN_DISPOSITION_ENUM_TRAITS_H_
7
8 #include "base/logging.h"
9 #include "mojo/public/cpp/bindings/enum_traits.h"
10 #include "ui/base/mojo/window_open_disposition.mojom.h"
11 #include "ui/base/window_open_disposition.h"
12
13 namespace mojo {
14
15 template <>
16 struct EnumTraits<ui::mojom::WindowOpenDisposition, WindowOpenDisposition> {
17 static ui::mojom::WindowOpenDisposition ToMojom(
18 WindowOpenDisposition disposition) {
19 switch (disposition) {
20 case WindowOpenDisposition::UNKNOWN:
21 return ui::mojom::WindowOpenDisposition::UNKNOWN;
22 case WindowOpenDisposition::CURRENT_TAB:
23 return ui::mojom::WindowOpenDisposition::CURRENT_TAB;
24 case WindowOpenDisposition::SINGLETON_TAB:
25 return ui::mojom::WindowOpenDisposition::SINGLETON_TAB;
26 case WindowOpenDisposition::NEW_FOREGROUND_TAB:
27 return ui::mojom::WindowOpenDisposition::NEW_FOREGROUND_TAB;
28 case WindowOpenDisposition::NEW_BACKGROUND_TAB:
29 return ui::mojom::WindowOpenDisposition::NEW_BACKGROUND_TAB;
30 case WindowOpenDisposition::NEW_POPUP:
31 return ui::mojom::WindowOpenDisposition::NEW_POPUP;
32 case WindowOpenDisposition::NEW_WINDOW:
33 return ui::mojom::WindowOpenDisposition::NEW_WINDOW;
34 case WindowOpenDisposition::SAVE_TO_DISK:
35 return ui::mojom::WindowOpenDisposition::SAVE_TO_DISK;
36 case WindowOpenDisposition::OFF_THE_RECORD:
37 return ui::mojom::WindowOpenDisposition::OFF_THE_RECORD;
38 case WindowOpenDisposition::IGNORE_ACTION:
39 return ui::mojom::WindowOpenDisposition::IGNORE_ACTION;
40 default:
41 NOTREACHED();
42 return ui::mojom::WindowOpenDisposition::UNKNOWN;
43 }
44 }
45
46 static bool FromMojom(ui::mojom::WindowOpenDisposition disposition,
47 WindowOpenDisposition* out) {
48 switch (disposition) {
49 case ui::mojom::WindowOpenDisposition::UNKNOWN:
50 *out = WindowOpenDisposition::UNKNOWN;
51 return true;
52 case ui::mojom::WindowOpenDisposition::CURRENT_TAB:
53 *out = WindowOpenDisposition::CURRENT_TAB;
54 return true;
55 case ui::mojom::WindowOpenDisposition::SINGLETON_TAB:
56 *out = WindowOpenDisposition::SINGLETON_TAB;
57 return true;
58 case ui::mojom::WindowOpenDisposition::NEW_FOREGROUND_TAB:
59 *out = WindowOpenDisposition::NEW_FOREGROUND_TAB;
60 return true;
61 case ui::mojom::WindowOpenDisposition::NEW_BACKGROUND_TAB:
62 *out = WindowOpenDisposition::NEW_BACKGROUND_TAB;
63 return true;
64 case ui::mojom::WindowOpenDisposition::NEW_POPUP:
65 *out = WindowOpenDisposition::NEW_POPUP;
66 return true;
67 case ui::mojom::WindowOpenDisposition::NEW_WINDOW:
68 *out = WindowOpenDisposition::NEW_WINDOW;
69 return true;
70 case ui::mojom::WindowOpenDisposition::SAVE_TO_DISK:
71 *out = WindowOpenDisposition::SAVE_TO_DISK;
72 return true;
73 case ui::mojom::WindowOpenDisposition::OFF_THE_RECORD:
74 *out = WindowOpenDisposition::OFF_THE_RECORD;
75 return true;
76 case ui::mojom::WindowOpenDisposition::IGNORE_ACTION:
77 *out = WindowOpenDisposition::IGNORE_ACTION;
78 return true;
79 default:
80 NOTREACHED();
81 return false;
82 }
83 }
84 };
85
86 } // namespace mojo
87
88 #endif // UI_BASE_MOJO_WINDOW_OPEN_DISPOSITION_ENUM_TRAITS_H_
OLDNEW
« no previous file with comments | « ui/base/mojo/window_open_disposition.typemap ('k') | ui/base/window_open_disposition.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698