OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "ash/system/system_notifier.h" | 5 #include "ash/system/system_notifier.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 | 8 |
9 namespace ash { | 9 namespace ash { |
10 namespace system_notifier { | 10 namespace system_notifier { |
11 | 11 |
12 namespace { | 12 namespace { |
13 | 13 |
14 // See http://dev.chromium.org/chromium-os/chromiumos-design-docs/ | 14 // See http://dev.chromium.org/chromium-os/chromiumos-design-docs/ |
15 // system-notifications for the reasoning. | 15 // system-notifications for the reasoning. |
16 const char* kAlwaysShownNotifierIds[] = { | 16 const char* kAlwaysShownNotifierIds[] = { |
17 kNotifierDisplay, | 17 kNotifierDisplay, |
18 kNotifierDisplayError, | 18 kNotifierDisplayError, |
19 kNotifierNetworkError, | 19 kNotifierNetworkError, |
20 kNotifierPower, | 20 kNotifierPower, |
| 21 // Note: Order doesn't matter here, so keep this in alphabetic order, don't |
| 22 // just add your stuff at the end! |
21 NULL | 23 NULL |
22 }; | 24 }; |
23 | 25 |
24 const char* kAshSystemNotifiers[] = { | 26 const char* kAshSystemNotifiers[] = { |
| 27 kNotifierBluetooth, |
25 kNotifierDisplay, | 28 kNotifierDisplay, |
| 29 kNotifierDisplayError, |
26 kNotifierDisplayResolutionChange, | 30 kNotifierDisplayResolutionChange, |
27 kNotifierDisplayError, | |
28 kNotifierLocale, | 31 kNotifierLocale, |
29 kNotifierLocallyManagedUser, | |
30 kNotifierMultiProfileFirstRun, | 32 kNotifierMultiProfileFirstRun, |
31 kNotifierNetwork, | 33 kNotifierNetwork, |
32 kNotifierNetworkError, | 34 kNotifierNetworkError, |
33 kNotifierNetworkPortalDetector, | 35 kNotifierNetworkPortalDetector, |
| 36 kNotifierPower, |
34 kNotifierScreenshot, | 37 kNotifierScreenshot, |
35 kNotifierScreenCapture, | 38 kNotifierScreenCapture, |
36 kNotifierScreenShare, | 39 kNotifierScreenShare, |
37 kNotifierSessionLengthTimeout, | 40 kNotifierSessionLengthTimeout, |
38 kNotifierPower, | 41 kNotifierSupervisedUser, |
39 kNotifierBluetooth, | 42 // Note: Order doesn't matter here, so keep this in alphabetic order, don't |
| 43 // just add your stuff at the end! |
40 NULL | 44 NULL |
41 }; | 45 }; |
42 | 46 |
43 bool MatchSystemNotifierId(const message_center::NotifierId& notifier_id, | 47 bool MatchSystemNotifierId(const message_center::NotifierId& notifier_id, |
44 const char* id_list[]) { | 48 const char* id_list[]) { |
45 if (notifier_id.type != message_center::NotifierId::SYSTEM_COMPONENT) | 49 if (notifier_id.type != message_center::NotifierId::SYSTEM_COMPONENT) |
46 return false; | 50 return false; |
47 | 51 |
48 for (size_t i = 0; id_list[i] != NULL; ++i) { | 52 for (size_t i = 0; id_list[i] != NULL; ++i) { |
49 if (notifier_id.id == id_list[i]) | 53 if (notifier_id.id == id_list[i]) |
50 return true; | 54 return true; |
51 } | 55 } |
52 return false; | 56 return false; |
53 } | 57 } |
54 | 58 |
55 } // namespace | 59 } // namespace |
56 | 60 |
57 const char kNotifierBluetooth[] = "ash.bluetooth"; | 61 const char kNotifierBluetooth[] = "ash.bluetooth"; |
58 const char kNotifierDisplay[] = "ash.display"; | 62 const char kNotifierDisplay[] = "ash.display"; |
| 63 const char kNotifierDisplayError[] = "ash.display.error"; |
59 const char kNotifierDisplayResolutionChange[] = "ash.display.resolution-change"; | 64 const char kNotifierDisplayResolutionChange[] = "ash.display.resolution-change"; |
60 const char kNotifierDisplayError[] = "ash.display.error"; | |
61 const char kNotifierLocale[] = "ash.locale"; | 65 const char kNotifierLocale[] = "ash.locale"; |
62 const char kNotifierLocallyManagedUser[] = "ash.locally-managed-user"; | |
63 const char kNotifierMultiProfileFirstRun[] = "ash.multi-profile.first-run"; | 66 const char kNotifierMultiProfileFirstRun[] = "ash.multi-profile.first-run"; |
64 const char kNotifierNetwork[] = "ash.network"; | 67 const char kNotifierNetwork[] = "ash.network"; |
65 const char kNotifierNetworkError[] = "ash.network.error"; | 68 const char kNotifierNetworkError[] = "ash.network.error"; |
66 const char kNotifierNetworkPortalDetector[] = "ash.network.portal-detector"; | 69 const char kNotifierNetworkPortalDetector[] = "ash.network.portal-detector"; |
67 const char kNotifierPower[] = "ash.power"; | 70 const char kNotifierPower[] = "ash.power"; |
68 const char kNotifierScreenshot[] = "ash.screenshot"; | 71 const char kNotifierScreenshot[] = "ash.screenshot"; |
69 const char kNotifierScreenCapture[] = "ash.screen-capture"; | 72 const char kNotifierScreenCapture[] = "ash.screen-capture"; |
70 const char kNotifierScreenShare[] = "ash.screen-share"; | 73 const char kNotifierScreenShare[] = "ash.screen-share"; |
71 const char kNotifierSessionLengthTimeout[] = "ash.session-length-timeout"; | 74 const char kNotifierSessionLengthTimeout[] = "ash.session-length-timeout"; |
| 75 const char kNotifierSupervisedUser[] = "ash.locally-managed-user"; |
72 | 76 |
73 bool ShouldAlwaysShowPopups(const message_center::NotifierId& notifier_id) { | 77 bool ShouldAlwaysShowPopups(const message_center::NotifierId& notifier_id) { |
74 return MatchSystemNotifierId(notifier_id, kAlwaysShownNotifierIds); | 78 return MatchSystemNotifierId(notifier_id, kAlwaysShownNotifierIds); |
75 } | 79 } |
76 | 80 |
77 bool IsAshSystemNotifier(const message_center::NotifierId& notifier_id) { | 81 bool IsAshSystemNotifier(const message_center::NotifierId& notifier_id) { |
78 return MatchSystemNotifierId(notifier_id, kAshSystemNotifiers); | 82 return MatchSystemNotifierId(notifier_id, kAshSystemNotifiers); |
79 } | 83 } |
80 | 84 |
81 } // namespace system_notifier | 85 } // namespace system_notifier |
82 } // namespace ash | 86 } // namespace ash |
OLD | NEW |