Index: chrome/browser/views/status_icons/status_tray_win.cc |
diff --git a/chrome/browser/views/status_icons/status_tray_win.cc b/chrome/browser/views/status_icons/status_tray_win.cc |
index 5a4587f2fbbd51124d249c60165e4774b5084ef9..29ed0255786d790bc7f8e3af88643ec1c5d5d826 100644 |
--- a/chrome/browser/views/status_icons/status_tray_win.cc |
+++ b/chrome/browser/views/status_icons/status_tray_win.cc |
@@ -41,20 +41,23 @@ LRESULT CALLBACK StatusTrayWin::WndProc(HWND hwnd, |
UINT message, |
WPARAM wparam, |
LPARAM lparam) { |
- // TODO(atwilson): Add support for right clicks and context menu messages |
- // (tracked in http://crbug.com/37375). |
switch (message) { |
case kStatusIconMessage: |
switch (lparam) { |
case WM_LBUTTONDOWN: |
+ case WM_RBUTTONDOWN: |
+ case WM_CONTEXTMENU: |
// Walk our icons, find which one was clicked on, and invoke its |
- // DispatchClickEvent() method. |
+ // HandleClickEvent() method. |
for (StatusIconList::const_iterator iter = status_icons().begin(); |
iter != status_icons().end(); |
++iter) { |
StatusIconWin* win_icon = static_cast<StatusIconWin*>(*iter); |
- if (win_icon->icon_id() == wparam) |
- win_icon->DispatchClickEvent(); |
+ if (win_icon->icon_id() == wparam) { |
+ POINT p; |
+ GetCursorPos(&p); |
+ win_icon->HandleClickEvent(p.x, p.y, lparam == WM_LBUTTONDOWN); |
+ } |
} |
return TRUE; |
} |