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

Issue 110693004: Moves the notification icon out of the status area overflow. (Closed)

Created:
7 years ago by dewittj
Modified:
6 years, 8 months ago
CC:
chromium-reviews
Visibility:
Public.

Description

Moves the notification icon out of the status area overflow. This only happens the first time it is created per data dir, so that the user can change back their setting if desired. This approach uses COM to talk with Windows Explorer to change the user's notification area preferences. R=dimich@chromium.org BUG=347693 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=265807

Patch Set 1 : Formatting #

Total comments: 12

Patch Set 2 : Address nits + some todos. #

Patch Set 3 : Update with a test. #

Patch Set 4 : Move to new named thread for COM work. #

Total comments: 12

Patch Set 5 : #

Total comments: 29

Patch Set 6 : Address sky+cpu first comments. #

Total comments: 9

Patch Set 7 : Move tray visibility functionality into the StatusIcon API. #

Patch Set 8 : Cleanup + address some comments #

Total comments: 6

Patch Set 9 : Rebase. #

Total comments: 17

Patch Set 10 : Update with cpu nits. #

Patch Set 11 : Address sky comments. #

Total comments: 1

Patch Set 12 : Address atwilson's concerns. #

Patch Set 13 : Merge. Moved preferences into MessageCenterNotificationManager. #

Patch Set 14 : Fix win_chromium_rel #

Patch Set 15 : Rebase. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+764 lines, -33 lines) Patch
M chrome/browser/notifications/message_center_notification_manager.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/status_icons/status_icon.h View 1 2 3 4 5 6 1 chunk +7 lines, -0 lines 0 comments Download
M chrome/browser/status_icons/status_icon.cc View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/ui/views/message_center/web_notification_tray.h View 1 2 3 4 5 6 7 8 9 10 11 12 5 chunks +16 lines, -1 line 0 comments Download
M chrome/browser/ui/views/message_center/web_notification_tray.cc View 1 2 3 4 5 6 7 8 9 10 11 12 4 chunks +19 lines, -2 lines 0 comments Download
M chrome/browser/ui/views/message_center/web_notification_tray_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +3 lines, -3 lines 0 comments Download
M chrome/browser/ui/views/message_center/web_notification_tray_win.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +6 lines, -1 line 0 comments Download
M chrome/browser/ui/views/status_icons/status_icon_win.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +9 lines, -3 lines 0 comments Download
M chrome/browser/ui/views/status_icons/status_icon_win.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +11 lines, -2 lines 0 comments Download
A chrome/browser/ui/views/status_icons/status_tray_state_changer_interactive_uitest_win.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +155 lines, -0 lines 0 comments Download
A chrome/browser/ui/views/status_icons/status_tray_state_changer_win.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +133 lines, -0 lines 0 comments Download
A chrome/browser/ui/views/status_icons/status_tray_state_changer_win.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +235 lines, -0 lines 0 comments Download
M chrome/browser/ui/views/status_icons/status_tray_win.h View 1 2 3 4 5 6 7 8 9 10 2 chunks +32 lines, -12 lines 0 comments Download
M chrome/browser/ui/views/status_icons/status_tray_win.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 6 chunks +87 lines, -9 lines 0 comments Download
M chrome/browser/ui/views/status_icons/status_tray_win_unittest.cc View 1 2 3 4 5 6 7 2 chunks +41 lines, -0 lines 0 comments Download
M chrome/chrome_browser_ui.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/chrome_tests.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -0 lines 0 comments Download
M chrome/common/pref_names.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -0 lines 0 comments Download
M chrome/common/pref_names.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 42 (0 generated)
dewittj
This is just a preliminary review, not ready for shipping. TODOs are: * Possibly move ...
7 years ago (2013-12-19 01:10:12 UTC) #1
Dmitry Titov
Great TODOs, love to see them done, although perhaps not a single patch. Some relatively ...
6 years, 11 months ago (2014-01-03 23:49:51 UTC) #2
dewittj
https://codereview.chromium.org/110693004/diff/80001/chrome/browser/ui/views/message_center/web_notification_tray_win.cc File chrome/browser/ui/views/message_center/web_notification_tray_win.cc (right): https://codereview.chromium.org/110693004/diff/80001/chrome/browser/ui/views/message_center/web_notification_tray_win.cc#newcode115 chrome/browser/ui/views/message_center/web_notification_tray_win.cc:115: } else if (interface_version_ == INTERFACE_VERSION_LEGACY) { On 2014/01/03 ...
6 years, 10 months ago (2014-02-14 17:44:31 UTC) #3
dewittj
Would you mind giving this one more look before I broaden the review?
6 years, 9 months ago (2014-03-10 20:27:25 UTC) #4
Dmitry Titov
Looks good, some comments: https://codereview.chromium.org/110693004/diff/290001/chrome/browser/ui/views/message_center/tray_watcher_win.cc File chrome/browser/ui/views/message_center/tray_watcher_win.cc (right): https://codereview.chromium.org/110693004/diff/290001/chrome/browser/ui/views/message_center/tray_watcher_win.cc#newcode101 chrome/browser/ui/views/message_center/tray_watcher_win.cc:101: // Explorer.exe maybe add "which ...
6 years, 9 months ago (2014-03-18 22:34:13 UTC) #5
dewittj
https://codereview.chromium.org/110693004/diff/290001/chrome/browser/ui/views/message_center/tray_watcher_win.cc File chrome/browser/ui/views/message_center/tray_watcher_win.cc (right): https://codereview.chromium.org/110693004/diff/290001/chrome/browser/ui/views/message_center/tray_watcher_win.cc#newcode101 chrome/browser/ui/views/message_center/tray_watcher_win.cc:101: // Explorer.exe On 2014/03/18 22:34:13, Dmitry Titov wrote: > ...
6 years, 9 months ago (2014-03-19 18:36:14 UTC) #6
Dmitry Titov
lgtm
6 years, 9 months ago (2014-03-19 18:38:04 UTC) #7
dewittj
atwilson: Please review status_icons changes sky: Please review all, since you own c/b/ui/views/status_icons and were ...
6 years, 9 months ago (2014-03-19 18:38:17 UTC) #8
sky
+cpu as he knows COM more than I. Is there a particular reason this is ...
6 years, 9 months ago (2014-03-19 22:26:38 UTC) #9
cpu_(ooo_6.6-7.5)
are you guys aware of these limitations here http://www.geoffchappell.com/studies/windows/shell/explorer/interfaces/itraynotify/registercallback.htm https://codereview.chromium.org/110693004/diff/310001/chrome/browser/ui/views/message_center/tray_watcher_win.cc File chrome/browser/ui/views/message_center/tray_watcher_win.cc (right): https://codereview.chromium.org/110693004/diff/310001/chrome/browser/ui/views/message_center/tray_watcher_win.cc#newcode17 chrome/browser/ui/views/message_center/tray_watcher_win.cc:17: ...
6 years, 9 months ago (2014-03-19 23:14:27 UTC) #10
dewittj
https://codereview.chromium.org/110693004/diff/310001/chrome/browser/status_icons/status_icon.h File chrome/browser/status_icons/status_icon.h (right): https://codereview.chromium.org/110693004/diff/310001/chrome/browser/status_icons/status_icon.h#newcode70 chrome/browser/status_icons/status_icon.h:70: StatusIconWin* AsStatusIconWin(); On 2014/03/19 22:26:39, sky wrote: > This ...
6 years, 9 months ago (2014-03-20 19:31:08 UTC) #11
sky
https://codereview.chromium.org/110693004/diff/310001/chrome/browser/status_icons/status_icon.h File chrome/browser/status_icons/status_icon.h (right): https://codereview.chromium.org/110693004/diff/310001/chrome/browser/status_icons/status_icon.h#newcode70 chrome/browser/status_icons/status_icon.h:70: StatusIconWin* AsStatusIconWin(); On 2014/03/20 19:31:08, dewittj wrote: > On ...
6 years, 9 months ago (2014-03-20 20:59:38 UTC) #12
Andrew T Wilson (Slow)
https://codereview.chromium.org/110693004/diff/330001/chrome/browser/status_icons/status_icon.h File chrome/browser/status_icons/status_icon.h (right): https://codereview.chromium.org/110693004/diff/330001/chrome/browser/status_icons/status_icon.h#newcode21 chrome/browser/status_icons/status_icon.h:21: class StatusIconWin; Yeah, I don't like this, even though ...
6 years, 9 months ago (2014-03-21 09:15:12 UTC) #13
sky
https://codereview.chromium.org/110693004/diff/330001/chrome/browser/status_icons/status_icon.h File chrome/browser/status_icons/status_icon.h (right): https://codereview.chromium.org/110693004/diff/330001/chrome/browser/status_icons/status_icon.h#newcode21 chrome/browser/status_icons/status_icon.h:21: class StatusIconWin; On 2014/03/21 09:15:13, Andrew T Wilson wrote: ...
6 years, 9 months ago (2014-03-21 16:11:21 UTC) #14
cpu_(ooo_6.6-7.5)
https://codereview.chromium.org/110693004/diff/330001/chrome/browser/ui/views/message_center/tray_watcher_win.cc File chrome/browser/ui/views/message_center/tray_watcher_win.cc (right): https://codereview.chromium.org/110693004/diff/330001/chrome/browser/ui/views/message_center/tray_watcher_win.cc#newcode19 chrome/browser/ui/views/message_center/tray_watcher_win.cc:19: // notifications. to answer your previous question, the class ...
6 years, 9 months ago (2014-03-21 20:41:42 UTC) #15
dewittj
On 2014/03/21 20:41:42, cpu wrote: > https://codereview.chromium.org/110693004/diff/330001/chrome/browser/ui/views/message_center/tray_watcher_win.cc > File chrome/browser/ui/views/message_center/tray_watcher_win.cc (right): > > https://codereview.chromium.org/110693004/diff/330001/chrome/browser/ui/views/message_center/tray_watcher_win.cc#newcode19 > ...
6 years, 9 months ago (2014-03-27 23:12:34 UTC) #16
dewittj
Sorry for the long delay. I moved the functionality into StatusTrayWin - since allowing arbitrary ...
6 years, 8 months ago (2014-04-01 17:58:09 UTC) #17
dewittj
ping?
6 years, 8 months ago (2014-04-04 16:59:12 UTC) #18
sky
I'm waiting for you to make cpu happy. Also, how come chromium-reviews isn't cc'd here?
6 years, 8 months ago (2014-04-04 17:12:23 UTC) #19
dewittj
I had marked it private a long time ago before I was ready for review ...
6 years, 8 months ago (2014-04-04 17:13:47 UTC) #20
cpu_(ooo_6.6-7.5)
lgtm https://codereview.chromium.org/110693004/diff/370001/chrome/browser/ui/views/status_icons/status_tray_win.cc File chrome/browser/ui/views/status_icons/status_tray_win.cc (right): https://codereview.chromium.org/110693004/diff/370001/chrome/browser/ui/views/status_icons/status_tray_win.cc#newcode59 chrome/browser/ui/views/status_icons/status_tray_win.cc:59: // It appears that IUnknowns are coincidentally compatible ...
6 years, 8 months ago (2014-04-04 18:04:15 UTC) #21
dewittj
https://codereview.chromium.org/110693004/diff/370001/chrome/browser/ui/views/status_icons/status_tray_win.cc File chrome/browser/ui/views/status_icons/status_tray_win.cc (right): https://codereview.chromium.org/110693004/diff/370001/chrome/browser/ui/views/status_icons/status_tray_win.cc#newcode59 chrome/browser/ui/views/status_icons/status_tray_win.cc:59: // It appears that IUnknowns are coincidentally compatible with ...
6 years, 8 months ago (2014-04-04 21:05:51 UTC) #22
sky
https://codereview.chromium.org/110693004/diff/390001/chrome/browser/ui/views/message_center/web_notification_tray_win.cc File chrome/browser/ui/views/message_center/web_notification_tray_win.cc (right): https://codereview.chromium.org/110693004/diff/390001/chrome/browser/ui/views/message_center/web_notification_tray_win.cc#newcode8 chrome/browser/ui/views/message_center/web_notification_tray_win.cc:8: #include <objbase.h> nit: Are all of these new includes ...
6 years, 8 months ago (2014-04-04 21:13:25 UTC) #23
dewittj
https://codereview.chromium.org/110693004/diff/390001/chrome/browser/ui/views/message_center/web_notification_tray_win.cc File chrome/browser/ui/views/message_center/web_notification_tray_win.cc (right): https://codereview.chromium.org/110693004/diff/390001/chrome/browser/ui/views/message_center/web_notification_tray_win.cc#newcode8 chrome/browser/ui/views/message_center/web_notification_tray_win.cc:8: #include <objbase.h> On 2014/04/04 21:13:25, sky wrote: > nit: ...
6 years, 8 months ago (2014-04-04 22:35:57 UTC) #24
sky
LGTM
6 years, 8 months ago (2014-04-04 23:12:54 UTC) #25
dewittj
atwilson: ping
6 years, 8 months ago (2014-04-07 16:13:43 UTC) #26
Andrew T Wilson (Slow)
StatusTray/Icon stuff LGTM. I couldn't follow the Win/COM code, but I'm assuming cpu/sky covered that. ...
6 years, 8 months ago (2014-04-08 16:06:19 UTC) #27
dewittj
The CQ bit was checked by dewittj@chromium.org
6 years, 8 months ago (2014-04-09 20:21:54 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/dewittj@chromium.org/110693004/410001
6 years, 8 months ago (2014-04-09 20:22:04 UTC) #29
dewittj
The CQ bit was unchecked by dewittj@chromium.org
6 years, 8 months ago (2014-04-09 20:22:32 UTC) #30
dewittj
The CQ bit was checked by dewittj@chromium.org
6 years, 8 months ago (2014-04-18 17:34:23 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/dewittj@chromium.org/110693004/430001
6 years, 8 months ago (2014-04-18 17:34:50 UTC) #32
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-18 17:34:56 UTC) #33
commit-bot: I haz the power
Failed to apply patch for chrome/browser/notifications/notification_prefs_manager.cc: While running patch -p1 --forward --force --no-backup-if-mismatch; can't find ...
6 years, 8 months ago (2014-04-18 17:34:57 UTC) #34
dewittj
The CQ bit was checked by dewittj@chromium.org
6 years, 8 months ago (2014-04-18 19:44:54 UTC) #35
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/dewittj@chromium.org/110693004/450001
6 years, 8 months ago (2014-04-18 19:45:05 UTC) #36
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-19 00:43:57 UTC) #37
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.chromium on win_chromium_rel
6 years, 8 months ago (2014-04-19 00:43:57 UTC) #38
dewittj
The CQ bit was checked by dewittj@chromium.org
6 years, 8 months ago (2014-04-23 21:22:24 UTC) #39
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/dewittj@chromium.org/110693004/490001
6 years, 8 months ago (2014-04-23 21:22:39 UTC) #40
commit-bot: I haz the power
Change committed as 265807
6 years, 8 months ago (2014-04-24 01:16:13 UTC) #41
Lei Zhang
6 years, 8 months ago (2014-04-24 03:16:51 UTC) #42
Message was sent while issue was closed.
A revert of this CL has been created in
https://codereview.chromium.org/256443004/ by thestig@chromium.org.

The reason for reverting is: From Vista Tests 1:

StatusTrayStateChangerWinTest.TraySizeApiTest (run #1):
[ RUN      ] StatusTrayStateChangerWinTest.TraySizeApiTest
c:\b\build\slave\cr-win-rel\build\src\chrome\browser\ui\views\status_icons\status_tray_state_changer_interactive_uitest_win.cc(149):
error: Expected: (new_width) > (width), actual: 241 vs 241
[  FAILED  ] StatusTrayStateChangerWinTest.TraySizeApiTest (94 ms)
.

Powered by Google App Engine
This is Rietveld 408576698