OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/ui/views/status_icons/status_icon_win.h" | 5 #include "chrome/browser/ui/views/status_icons/status_icon_win.h" |
6 | 6 |
7 #include "base/strings/string_number_conversions.h" | 7 #include "base/strings/string_number_conversions.h" |
8 #include "base/win/windows_version.h" | 8 #include "base/win/windows_version.h" |
9 #include "chrome/browser/ui/views/status_icons/status_tray_win.h" | 9 #include "chrome/browser/ui/views/status_icons/status_tray_win.h" |
10 #include "third_party/skia/include/core/SkBitmap.h" | 10 #include "third_party/skia/include/core/SkBitmap.h" |
11 #include "ui/gfx/icon_util.h" | 11 #include "ui/gfx/icon_util.h" |
12 #include "ui/gfx/point.h" | 12 #include "ui/gfx/point.h" |
13 #include "ui/views/controls/menu/menu_item_view.h" | 13 #include "ui/gfx/rect.h" |
14 #include "ui/views/controls/menu/menu_runner.h" | 14 #include "ui/views/controls/menu/menu_runner.h" |
15 | 15 |
16 //////////////////////////////////////////////////////////////////////////////// | 16 //////////////////////////////////////////////////////////////////////////////// |
17 // StatusIconWin, public: | 17 // StatusIconWin, public: |
18 | 18 |
19 StatusIconWin::StatusIconWin(StatusTrayWin* tray, | 19 StatusIconWin::StatusIconWin(StatusTrayWin* tray, |
20 UINT id, | 20 UINT id, |
21 HWND window, | 21 HWND window, |
22 UINT message) | 22 UINT message) |
23 : tray_(tray), | 23 : tray_(tray), |
(...skipping 30 matching lines...) Expand all Loading... |
54 if (!menu_model_) | 54 if (!menu_model_) |
55 return; | 55 return; |
56 | 56 |
57 // Set our window as the foreground window, so the context menu closes when | 57 // Set our window as the foreground window, so the context menu closes when |
58 // we click away from it. | 58 // we click away from it. |
59 if (!SetForegroundWindow(window_)) | 59 if (!SetForegroundWindow(window_)) |
60 return; | 60 return; |
61 | 61 |
62 menu_runner_.reset(new views::MenuRunner(menu_model_)); | 62 menu_runner_.reset(new views::MenuRunner(menu_model_)); |
63 | 63 |
64 ignore_result(menu_runner_->RunMenuAt(NULL, NULL, | 64 ignore_result(menu_runner_->RunMenuAt(NULL, |
65 gfx::Rect(cursor_pos, gfx::Size()), views::MenuItemView::TOPLEFT, | 65 NULL, |
66 ui::MENU_SOURCE_MOUSE, views::MenuRunner::HAS_MNEMONICS)); | 66 gfx::Rect(cursor_pos, gfx::Size()), |
| 67 views::MENU_ANCHOR_TOPLEFT, |
| 68 ui::MENU_SOURCE_MOUSE, |
| 69 views::MenuRunner::HAS_MNEMONICS)); |
67 } | 70 } |
68 | 71 |
69 void StatusIconWin::HandleBalloonClickEvent() { | 72 void StatusIconWin::HandleBalloonClickEvent() { |
70 if (HasObservers()) | 73 if (HasObservers()) |
71 DispatchBalloonClickEvent(); | 74 DispatchBalloonClickEvent(); |
72 } | 75 } |
73 | 76 |
74 void StatusIconWin::ResetIcon() { | 77 void StatusIconWin::ResetIcon() { |
75 NOTIFYICONDATA icon_data; | 78 NOTIFYICONDATA icon_data; |
76 InitIconData(&icon_data); | 79 InitIconData(&icon_data); |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
167 memset(icon_data, 0, sizeof(NOTIFYICONDATA)); | 170 memset(icon_data, 0, sizeof(NOTIFYICONDATA)); |
168 icon_data->cbSize = sizeof(NOTIFYICONDATA); | 171 icon_data->cbSize = sizeof(NOTIFYICONDATA); |
169 } else { | 172 } else { |
170 memset(icon_data, 0, NOTIFYICONDATA_V3_SIZE); | 173 memset(icon_data, 0, NOTIFYICONDATA_V3_SIZE); |
171 icon_data->cbSize = NOTIFYICONDATA_V3_SIZE; | 174 icon_data->cbSize = NOTIFYICONDATA_V3_SIZE; |
172 } | 175 } |
173 | 176 |
174 icon_data->hWnd = window_; | 177 icon_data->hWnd = window_; |
175 icon_data->uID = icon_id_; | 178 icon_data->uID = icon_id_; |
176 } | 179 } |
OLD | NEW |