-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Port All Apps plugin again #409
Conversation
@zadjii-msft FYI Ready for review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm inclined to just sign off on this since it's 99% just porting remaining code that I had commented out or ignored back in June, but I want to give it a test run before we merge it in
that being said - this looks awesome and I'm excited to see everything hopefully finally have the right subtitles again
|
||
// ExePath = app.FullPath, | ||
IsPackaged = true, | ||
Commands = app.Commands, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
📝: UWPs just use app.Commands, Win32's need app.GetCommands()?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I swear this was aligned! At some point at least! :) GetCommands() introduced in UWP apps as well.
}; | ||
|
||
if (string.IsNullOrEmpty(app.UserModelId)) | ||
if (!_app.IsPackaged) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: we can collapse these two branches down since they're the same now
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hah. of course :)
public OpenInConsoleCommand(string target) | ||
{ | ||
Name = Resources.open_path_in_console; | ||
Icon = new IconInfo("\ue838"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: we can probably save some memory by having a single static instance of this IconInfo for all OpenInConsoleCommand
's, but who knows if that's significant
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done.
|
||
public RunAsUserCommand(string target, string parentDir) | ||
{ | ||
Name = "Run as different user"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
does this one need to get localized too?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ooh, nice catch. there are few more. fixed
|
||
namespace Microsoft.CmdPal.Ext.Apps.Commands; | ||
|
||
// NOTE this is pretty close to what we'd put in the SDK |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: this comment can probably go away now - I think it's been copy/pasted a bunch of times since the original hackathon for this project 10 months ago
OtherUser, | ||
} | ||
|
||
public static ProcessStartInfo GetProcessStartInfo(string target, string parentDir, string programArguments, RunAsType runAs = RunAsType.None) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ha you know, I think I already pilfered a bunch of this into ShellHelpers
in the toolkit. I should file a future todo to just de-dupe all the calls that do this everywhere
fixed all. But do not merge yet! I see some issues with icons for Packaged apps.. working on it |
All good. Fixed packaged apps icon load. Give it a test end let me know how it goes :) |
uhg then that's definitely the same list virtualization bug we were seeing with the icons. At least that wasn't unique to the hack job for apps I had before, but yikes we need to fix this. oh my god wait I think I have an idea. I have a theory - it might be that we're never PropertyChanged'ing the items when we fetch their properties - it was something I noticed in #388. I've got a branch, gimme a bit to go build this with that branch merged |
Okay no, it wasn't that. I think there might be two problems, and I'm not sure they're separate yet.
|
|
oh it's so obvious (in retrospect)
|
okay affb26f fixes the subtitles I think |
and 51b162a fixes the icon loading. Thanks for your patience Feel free to just merge those two in here. The only other thing that I'd want to double check is that it feels like the main page no longer reports the initial app load as part of its |
Just did |
Mmk so I pushed a commit just now that should have the main page also show the loading state of the apps again. Definitely takes a bit longer to settle now, but that's mostly because there are so many apps we're enumerating now. We can work on porting that settings file to a |
MISSING:
Live app detection (newly installed apps, updates, etc..)LocalizationCleanupArgument passing requires conversion to DynamicListPage and is low priority. Let's merge this first and I'll work on this as a follow up
Closes #76