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

Side by Side Diff: chrome/browser/ui/views/status_icons/status_tray_win.cc

Issue 11030017: Add context to gfx::Screen calls in support of simultaneous desktop+ash (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix other os's Created 8 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 | Annotate | Revision Log
OLDNEW
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_tray_win.h" 5 #include "chrome/browser/ui/views/status_icons/status_tray_win.h"
6 6
7 #include "base/win/metro.h" 7 #include "base/win/metro.h"
8 #include "base/win/wrapped_window_proc.h" 8 #include "base/win/wrapped_window_proc.h"
9 #include "chrome/browser/ui/views/status_icons/status_icon_win.h" 9 #include "chrome/browser/ui/views/status_icons/status_icon_win.h"
10 #include "chrome/common/chrome_constants.h" 10 #include "chrome/common/chrome_constants.h"
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 switch (lparam) { 71 switch (lparam) {
72 case WM_LBUTTONDOWN: 72 case WM_LBUTTONDOWN:
73 case WM_RBUTTONDOWN: 73 case WM_RBUTTONDOWN:
74 case WM_CONTEXTMENU: 74 case WM_CONTEXTMENU:
75 // Walk our icons, find which one was clicked on, and invoke its 75 // Walk our icons, find which one was clicked on, and invoke its
76 // HandleClickEvent() method. 76 // HandleClickEvent() method.
77 for (StatusIcons::const_iterator i(status_icons().begin()); 77 for (StatusIcons::const_iterator i(status_icons().begin());
78 i != status_icons().end(); ++i) { 78 i != status_icons().end(); ++i) {
79 StatusIconWin* win_icon = static_cast<StatusIconWin*>(*i); 79 StatusIconWin* win_icon = static_cast<StatusIconWin*>(*i);
80 if (win_icon->icon_id() == wparam) { 80 if (win_icon->icon_id() == wparam) {
81 gfx::Point cursor_pos(gfx::Screen::GetCursorScreenPoint()); 81 gfx::Point cursor_pos(gfx::Screen::GetCursorScreenPoint(
82 gfx::Screen::BadTwoWorldsContext()));
82 win_icon->HandleClickEvent(cursor_pos, lparam == WM_LBUTTONDOWN); 83 win_icon->HandleClickEvent(cursor_pos, lparam == WM_LBUTTONDOWN);
83 break; 84 break;
84 } 85 }
85 } 86 }
86 return TRUE; 87 return TRUE;
87 } 88 }
88 } 89 }
89 return ::DefWindowProc(hwnd, message, wparam, lparam); 90 return ::DefWindowProc(hwnd, message, wparam, lparam);
90 } 91 }
91 92
92 StatusTrayWin::~StatusTrayWin() { 93 StatusTrayWin::~StatusTrayWin() {
93 if (window_) 94 if (window_)
94 DestroyWindow(window_); 95 DestroyWindow(window_);
95 96
96 if (atom_) 97 if (atom_)
97 UnregisterClass(MAKEINTATOM(atom_), instance_); 98 UnregisterClass(MAKEINTATOM(atom_), instance_);
98 } 99 }
99 100
100 StatusIcon* StatusTrayWin::CreatePlatformStatusIcon() { 101 StatusIcon* StatusTrayWin::CreatePlatformStatusIcon() {
101 if (base::win::IsMetroProcess()) { 102 if (base::win::IsMetroProcess()) {
102 return new StatusIconMetro(next_icon_id_++); 103 return new StatusIconMetro(next_icon_id_++);
103 } else { 104 } else {
104 return new StatusIconWin(next_icon_id_++, window_, kStatusIconMessage); 105 return new StatusIconWin(next_icon_id_++, window_, kStatusIconMessage);
105 } 106 }
106 } 107 }
107 108
108 StatusTray* StatusTray::Create() { 109 StatusTray* StatusTray::Create() {
109 return new StatusTrayWin(); 110 return new StatusTrayWin();
110 } 111 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698