OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_TRAY_STATE_CHANGER_WIN_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_TRAY_STATE_CHANGER_WIN_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_TRAY_STATE_CHANGER_WIN_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_TRAY_STATE_CHANGER_WIN_H_ |
7 | 7 |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "base/strings/string16.h" | 9 #include "base/strings/string16.h" |
10 #include "base/threading/non_thread_safe.h" | 10 #include "base/threading/non_thread_safe.h" |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 // IUnknown. | 65 // IUnknown. |
66 ULONG STDMETHODCALLTYPE AddRef() override; | 66 ULONG STDMETHODCALLTYPE AddRef() override; |
67 ULONG STDMETHODCALLTYPE Release() override; | 67 ULONG STDMETHODCALLTYPE Release() override; |
68 HRESULT STDMETHODCALLTYPE QueryInterface(REFIID, PVOID*) override; | 68 HRESULT STDMETHODCALLTYPE QueryInterface(REFIID, PVOID*) override; |
69 | 69 |
70 // INotificationCB. | 70 // INotificationCB. |
71 // Notify is called in response to RegisterCallback for each current | 71 // Notify is called in response to RegisterCallback for each current |
72 // entry in Explorer's list of notification area icons, and ever time | 72 // entry in Explorer's list of notification area icons, and ever time |
73 // one of them changes, until UnregisterCallback is called or |this| | 73 // one of them changes, until UnregisterCallback is called or |this| |
74 // is destroyed. | 74 // is destroyed. |
75 virtual HRESULT STDMETHODCALLTYPE Notify(ULONG, NOTIFYITEM*); | 75 HRESULT STDMETHODCALLTYPE Notify(ULONG, NOTIFYITEM*) override; |
76 | 76 |
77 protected: | 77 protected: |
78 virtual ~StatusTrayStateChangerWin(); | 78 ~StatusTrayStateChangerWin() override; |
79 | 79 |
80 private: | 80 private: |
81 friend class StatusTrayStateChangerWinTest; | 81 friend class StatusTrayStateChangerWinTest; |
82 | 82 |
83 enum InterfaceVersion { | 83 enum InterfaceVersion { |
84 INTERFACE_VERSION_LEGACY = 0, | 84 INTERFACE_VERSION_LEGACY = 0, |
85 INTERFACE_VERSION_WIN8, | 85 INTERFACE_VERSION_WIN8, |
86 INTERFACE_VERSION_UNKNOWN | 86 INTERFACE_VERSION_UNKNOWN |
87 }; | 87 }; |
88 | 88 |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
124 // TrayNotify->RegisterCallback() | 124 // TrayNotify->RegisterCallback() |
125 // ... other COM stack frames .. | 125 // ... other COM stack frames .. |
126 // StatusTrayStateChangerWin->Notify(NOTIFYITEM); | 126 // StatusTrayStateChangerWin->Notify(NOTIFYITEM); |
127 // so we can't just return the notifyitem we're looking for. | 127 // so we can't just return the notifyitem we're looking for. |
128 scoped_ptr<NOTIFYITEM> notify_item_; | 128 scoped_ptr<NOTIFYITEM> notify_item_; |
129 | 129 |
130 DISALLOW_COPY_AND_ASSIGN(StatusTrayStateChangerWin); | 130 DISALLOW_COPY_AND_ASSIGN(StatusTrayStateChangerWin); |
131 }; | 131 }; |
132 | 132 |
133 #endif // CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_TRAY_STATE_CHANGER_WIN_H_ | 133 #endif // CHROME_BROWSER_UI_VIEWS_STATUS_ICONS_STATUS_TRAY_STATE_CHANGER_WIN_H_ |
OLD | NEW |