Index: ui/base/window_open_disposition.cc |
=================================================================== |
--- ui/base/window_open_disposition.cc (revision 0) |
+++ ui/base/window_open_disposition.cc (revision 0) |
@@ -0,0 +1,40 @@ |
+// Copyright (c) 2013 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. |
+ |
+#include "ui/base/window_open_disposition.h" |
+ |
+#include "build/build_config.h" |
+#include "ui/base/events/event_constants.h" |
+ |
+namespace ui { |
+ |
+WindowOpenDisposition DispositionFromClick(bool middle_button, |
+ bool alt_key, |
+ bool ctrl_key, |
+ bool meta_key, |
+ bool shift_key) { |
+ // MacOS uses meta key (Command key) to spawn new tabs. |
+#if defined(OS_MACOSX) |
+ if (middle_button || meta_key) |
+#else |
+ if (middle_button || ctrl_key) |
+#endif |
+ return shift_key ? NEW_FOREGROUND_TAB : NEW_BACKGROUND_TAB; |
+ if (shift_key) |
+ return NEW_WINDOW; |
+ if (alt_key) |
+ return SAVE_TO_DISK; |
+ return CURRENT_TAB; |
+} |
+ |
+WindowOpenDisposition DispositionFromEventFlags(int event_flags) { |
+ return DispositionFromClick( |
+ (event_flags & ui::EF_MIDDLE_MOUSE_BUTTON) != 0, |
+ (event_flags & ui::EF_ALT_DOWN) != 0, |
+ (event_flags & ui::EF_CONTROL_DOWN) != 0, |
+ (event_flags & ui::EF_COMMAND_DOWN) != 0, |
+ (event_flags & ui::EF_SHIFT_DOWN) != 0); |
+} |
+ |
+} // namespace ui |
Property changes on: ui\base\window_open_disposition.cc |
___________________________________________________________________ |
Added: svn:eol-style |
+ LF |