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

Issue 11712003: [Fixit-Dec-2012] Also add dual_mode to Start Menu shortcuts in MigrateChromiumShortcuts. (Closed)

Created:
7 years, 12 months ago by gab
Modified:
7 years, 11 months ago
CC:
chromium-reviews
Visibility:
Public.

Description

[Fixit-Dec-2012] Also add dual_mode to Start Menu shortcuts in MigrateChromiumShortcuts. Restructured this code quite a bit to use the new shortcut magic. Added tests which turned out to expose edge cases that I think weren't covered by the previous implementation (i.e. would potentially update shortcuts when unecessary -- flashing the desktop in the process -- or not do it when necessary). NOTRY=TRUE (Actually dis use CQ at first, but iOS is messes up at LKGR looks like...) BUG=142980 TEST=Pin Desktop shortcut to Start Screen or pin chrome.exe directly to the start screen via context menu. Notice that there are now multiple shortcuts of Chrome (non-tiled; 1 for each "Pin to Start" action; upon launching Chrome those should all be merged down to one Chrome tile shortcut (not on the file system, but visually on the Start Screen itself). Note: if you do try this; there is an intentional 15s delay before the migration kicks in to avoid delaying Chrome startup; so be patient, it will work ;)! Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=175230 Reverted in: https://src.chromium.org/viewvc/chrome?view=rev&revision=175244 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=175302

Patch Set 1 #

Patch Set 2 : small tweaks #

Total comments: 34

Patch Set 3 : grt++ #

Total comments: 9

Patch Set 4 : add space to test shortcut paths #

Total comments: 2

Patch Set 5 : change aligment #

Patch Set 6 : DelayLoad propsys.dll #

Unified diffs Side-by-side diffs Delta from patch set Stats (+352 lines, -130 lines) Patch
M chrome/browser/shell_integration.h View 1 2 3 4 1 chunk +11 lines, -0 lines 0 comments Download
M chrome/browser/shell_integration_unittest.cc View 2 chunks +1 line, -32 lines 0 comments Download
M chrome/browser/shell_integration_win.cc View 1 2 3 4 6 chunks +133 lines, -98 lines 0 comments Download
A chrome/browser/shell_integration_win_unittest.cc View 1 2 3 1 chunk +197 lines, -0 lines 0 comments Download
M chrome/chrome_browser.gypi View 1 2 3 4 5 1 chunk +9 lines, -0 lines 0 comments Download
M chrome/chrome_tests_unit.gypi View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 25 (0 generated)
gab
Sir, sending your way since you volunteered for fixit reviews, it's been a couple I ...
7 years, 12 months ago (2012-12-29 04:13:07 UTC) #1
grt (UTC plus 2)
https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integration.h File chrome/browser/shell_integration.h (right): https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integration.h#newcode28 chrome/browser/shell_integration.h:28: int MigrateShortcutsInPath( Name this MigrateShortcutsInPathInternal, add to the comment ...
7 years, 11 months ago (2013-01-03 02:30:44 UTC) #2
gab
Robert, can you take this review over from grt? Thanks :)! Gab https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integration.h File chrome/browser/shell_integration.h ...
7 years, 11 months ago (2013-01-03 21:14:57 UTC) #3
robertshield
https://codereview.chromium.org/11712003/diff/19001/chrome/browser/shell_integration_win.cc File chrome/browser/shell_integration_win.cc (right): https://codereview.chromium.org/11712003/diff/19001/chrome/browser/shell_integration_win.cc#newcode397 chrome/browser/shell_integration_win.cc:397: L"\"%ls\" %ls", target_path.value().c_str(), arguments.c_str()))); Just to double check, is ...
7 years, 11 months ago (2013-01-03 22:41:59 UTC) #4
gab
Thanks, see replies below. https://codereview.chromium.org/11712003/diff/19001/chrome/browser/shell_integration_win.cc File chrome/browser/shell_integration_win.cc (right): https://codereview.chromium.org/11712003/diff/19001/chrome/browser/shell_integration_win.cc#newcode397 chrome/browser/shell_integration_win.cc:397: L"\"%ls\" %ls", target_path.value().c_str(), arguments.c_str()))); On ...
7 years, 11 months ago (2013-01-03 23:12:43 UTC) #5
robertshield
lgtm, please double check a shortcut with a quoted target to make sure things don't ...
7 years, 11 months ago (2013-01-04 01:38:14 UTC) #6
gab
Thanks, will verify quoted path tomorrow to make sure, but at the very least this ...
7 years, 11 months ago (2013-01-04 03:08:44 UTC) #7
gab
@robertshield: FYI, see below. Still @brettw for OWNER approval. Thanks! Gab https://codereview.chromium.org/11712003/diff/19001/chrome/browser/shell_integration_win.cc File chrome/browser/shell_integration_win.cc (right): ...
7 years, 11 months ago (2013-01-04 16:41:44 UTC) #8
brettw
lgtm https://codereview.chromium.org/11712003/diff/23004/chrome/browser/shell_integration.h File chrome/browser/shell_integration.h (right): https://codereview.chromium.org/11712003/diff/23004/chrome/browser/shell_integration.h#newcode166 chrome/browser/shell_integration.h:166: static int MigrateShortcutsInPathInternal( I'd align all these after ...
7 years, 11 months ago (2013-01-04 21:04:08 UTC) #9
gab
Thanks! https://codereview.chromium.org/11712003/diff/23004/chrome/browser/shell_integration.h File chrome/browser/shell_integration.h (right): https://codereview.chromium.org/11712003/diff/23004/chrome/browser/shell_integration.h#newcode166 chrome/browser/shell_integration.h:166: static int MigrateShortcutsInPathInternal( On 2013/01/04 21:04:08, brettw wrote: ...
7 years, 11 months ago (2013-01-04 21:23:09 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/gab@chromium.org/11712003/29001
7 years, 11 months ago (2013-01-04 21:23:36 UTC) #11
commit-bot: I haz the power
Change committed as 175230
7 years, 11 months ago (2013-01-04 23:28:08 UTC) #12
gab
Adding a delay load to propsys.dll, like we already do at http://code.google.com/searchframe#OAMlx_jo-ck/src/base/base.gyp&exact_package=chromium&q=propsys.dll&l=766 Reverted in https://codereview.chromium.org/11777006/ ...
7 years, 11 months ago (2013-01-06 00:52:59 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/gab@chromium.org/11712003/28002
7 years, 11 months ago (2013-01-06 00:53:27 UTC) #14
commit-bot: I haz the power
Retried try job too often on ios_dbg_simulator for step(s) sync_unit_tests, unit_tests
7 years, 11 months ago (2013-01-06 01:06:36 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/gab@chromium.org/11712003/28002
7 years, 11 months ago (2013-01-06 01:51:38 UTC) #16
commit-bot: I haz the power
Retried try job too often on ios_dbg_simulator for step(s) sync_unit_tests, unit_tests
7 years, 11 months ago (2013-01-06 02:00:16 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/gab@chromium.org/11712003/28002
7 years, 11 months ago (2013-01-06 13:42:13 UTC) #18
commit-bot: I haz the power
Retried try job too often on ios_dbg_simulator for step(s) sync_unit_tests, unit_tests
7 years, 11 months ago (2013-01-06 13:52:19 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/gab@chromium.org/11712003/28002
7 years, 11 months ago (2013-01-06 18:34:01 UTC) #20
commit-bot: I haz the power
Change committed as 175302
7 years, 11 months ago (2013-01-06 18:39:05 UTC) #21
grt (UTC plus 2)
https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integration_win.cc File chrome/browser/shell_integration_win.cc (right): https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integration_win.cc#newcode242 chrome/browser/shell_integration_win.cc:242: // return S_OK and |pv_app_id| will be set to ...
7 years, 11 months ago (2013-01-07 15:23:22 UTC) #22
gab
https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integration_win.cc File chrome/browser/shell_integration_win.cc (right): https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integration_win.cc#newcode242 chrome/browser/shell_integration_win.cc:242: // return S_OK and |pv_app_id| will be set to ...
7 years, 11 months ago (2013-01-07 15:37:09 UTC) #23
grt (UTC plus 2)
On 2013/01/07 15:37:09, gab wrote: > https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integration_win.cc > File chrome/browser/shell_integration_win.cc (right): > > https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integration_win.cc#newcode242 > ...
7 years, 11 months ago (2013-01-07 15:43:06 UTC) #24
gab
7 years, 11 months ago (2013-01-07 19:46:34 UTC) #25
Message was sent while issue was closed.
On 2013/01/07 15:43:06, grt wrote:
> On 2013/01/07 15:37:09, gab wrote:
> >
>
https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integ...
> > File chrome/browser/shell_integration_win.cc (right):
> > 
> >
>
https://codereview.chromium.org/11712003/diff/8001/chrome/browser/shell_integ...
> > chrome/browser/shell_integration_win.cc:242: // return S_OK and |pv_app_id|
> will
> > be set to VT_EMPTY which will in turn be
> > On 2013/01/07 15:23:22, grt wrote:
> > > On 2013/01/03 21:14:57, gab wrote:
> > > > On 2013/01/03 02:30:44, grt wrote:
> > > > > please explicitly test for VT_EMPTY rather than use
PropVariantToString.
> > the
> > > > > latter is overkill for your needs here.
> > > > 
> > > > Done.
> > > 
> > > Why did you mark this "Done" but not actually do it? 
> > 
> > Hmm?! I did do this... i.e. check for VT_EMPTY.
> > 
> > If what you meant is to not use PropVariantTo* altogether that's not what I
> > gathered from your comment.
> 
> Ah, that's precisely what I meant. Sorry I wasn't more clear.
> 
> > However after having to add DelayLoad I agree that
> > this seems overkill, I was going to talk with you guys today to see if you
> feel
> > that directly looking in the PropVariant (as was done before) is safe since
> the
> > PropVariantTo* methods unfortunately imply this undesired overhead (seems to
> me
> > it would be safe, but I don't know if PropVariantTo* does some clever things
> I'm
> > not aware of...).
> 
> Yeah, it's safe. PropVariantTo* is useful if you have no idea what the inbound
> PV is. In this case, the type of the inbound PV is known.

Sounds good, doing this in https://codereview.chromium.org/11786005/.

Powered by Google App Engine
This is Rietveld 408576698