Skip to content
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

Add ability to install available versions #11

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

kczx3
Copy link

@kczx3 kczx3 commented Jul 21, 2023

This is a very rough start to something I intended to attempt a long while ago. I made use of the commented menu item in the Dash labeled "Maintenance" since its description included the phrase "add/remove versions". Of course, it can go elsewhere or the label description can (and should) be adjusted.

Since the removal of versions is possible from the Control Panel, I wanted to wait to see if adding that to the GUI created here was necessary.

Look forward to your comments and suggestions.

@Lexikos
Copy link
Contributor

Lexikos commented Jul 21, 2023

IL_Add(il, 'shell32.dll', 297) ; green checkmark

On my Windows 11 (22621.1992) system, it is a folder icon with green plus symbol, which I suppose conveys the opposite meaning to what you wanted.

Versions Installed has both a vertical scrollbar and an unnecessary horizontal scrollbar on my system. I assume the horizontal scrollbar is present because the header was sized before the items were added. I have enough versions installed to warrant the vertical scrollbar, although given the nature of the GUI, a vertical limit of 6 seems unnecessarily low.

It took me a while to figure out that the left-hand list has a context menu (especially because the right-hand list apparently does not). First I tried clicking the item, then clicking the icon, then double-clicking the item, and nothing happened. A complete lack of visual cues is not good UI design. It is also not consistent with existing UI in the Dash (which uses single-click, as indicated by the hand cursor) or Control Panel (which uses visible check boxes and buttons).

I think context menus are best suited to secondary actions.

... or the label description can (and should) be adjusted.

Even putting aside the "add/remove" label, it would make more sense for a single GUI to provide both functions, whether this is accessible only via Control Panel or from Dash as well. (Technically, one can also run ui-uninstall.ahk directly or launch it by the "Uninstall" option which appears when you right click "AutoHotkey Dash" in the "modern" Start menu.)

I think I was originally considering putting reset-assoc.ahk in Maintenance, but it already does its check transparently when a new version is installed. This is the main "repair" that tends to be needed. Another task would be verifying the installed files (against the recorded hashes) and reinstalling versions, but I think that's not commonly needed. I'd guess that many users think to run the installer again if they are having issues.

@kczx3
Copy link
Author

kczx3 commented Aug 4, 2023

I attempted to simplify the PR for now. Now a banner will show at the bottom of the Dash when a newer version is available. I may need to redo this as I'm not as familiar with GitHub (I use GitLab at work) so I had to revert my first commit. I couldn't figure out how to reset my branch locally and force push it to the remote.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants