-
Notifications
You must be signed in to change notification settings - Fork 433
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
Improvements #829
Improvements #829
Conversation
Opens pinned items on both sides of the start menu in just one click, while preserving hover functionality. Ignores the All Programs button for now as the All Programs folder is rarely accessed and this option can obstruct its use, especially for the inline menu style. Fixes Open-Shell#692.
Intercepts *most* instances of FLAG_DEFAULT getting set, including when XML files are loaded and when Open-Shell starts, adding if-statements to those spots to check if a new value is actually different from the setting's default value. Ensures more consistency behind the scenes and gets rid of inaccurate bold highlights.
Prevents settings from appearing in bold. Does not change the helper text at the bottom of the window.
When loading XML files, settings with active edit boxes open will not be adjusted. This adds an additional tab-reload before the load begins to forcibly close any active edit boxes.
If set, intercepts the search hint's DrawText function and swaps out the default text for user-defined text. Leaving the text blank results in an empty search box.
Hides the item in both start menu styles and adjusts search height to ensure the empty space is used. Partially fixes Open-Shell#660, but currently does not honor group policy settings.
Includes a unique option for each control and supports environment variables.
Expands the "display as a list of drives" option from This PC to work on almost any item in the Windows 7 style. Incompatible items have a new setting called ITEM_NODRIVES which blocks the option from appearing. This PC still uses the original "list of drives" text, while other items use "list of links" instead. Sorting has been updated to account for this option by adding a property called bFolderLink which marks any folder, even if it is not explicitly expandable.
Adds a new function called GetFakeFolder which attempts to find and get the target.lnk file from a fake folder (what Open-Shell uses to pin folders). If detected, InvokeCommand is swapped for a ShellExecute call to the target shortcut. Fixes Open-Shell#555, Open-Shell#653, and by extension, Open-Shell#691.
Items can be pinned to directories that require administative privileges (such as Open-Shell's default installation directory), so long as users take ownership of the pinned folder. Also adds a command to Open-Shell's context menu that opens the current pinned folder. Adds general support for directory-based settings by creating a new setting type called TYPE_DIRECTORY which uses a new bool added to BrowseLinkHelper, called bFoldersOnly. START_MENU_PINNED_ROOT has been removed, and all instances of both it and BrowseLinkHelper have been adjusted accordingly. To create your own directory-based settings, use CSetting::TYPE_DIRECTORY. Empty directory paths are reset to their default value as they can cause unexpected behavior.
These seem like a good amount of useful changes, thank you for taking the time to do this. Everything seems to work as I expected, except for one thing: The "Single-click to open folder shortcuts" option does not seem to be able to differentiate between jump list items and normal sub-menu lists. This causes the app to open directly when clicking a jump list, making those items inaccessible. Other than that, everything seems to be working as expected, except for some remaining issues with the "Pinned" items location and switching between the pinned folder in the "Programs" list to the standard "Pinned" folder. If you want to go further into those issues, I would take a look at #532 and #522, which outline some of those problems, mainly when the Again, thank you for taking your time to do this (Although I am not a maintainer, I have been using OSM for a while). I will try to post some more information if I find any problems with the custom Pinned folder, or anything else that may cause issues. |
@bonzibudd Good catch, thank you! Fixed. Also just to be clear for the issues you mentioned about the pinned location, are those specifically problems my changes caused/worsened or are they just related things you wanted me to look into? Because to be honest, I have no idea what causes those problems, and they seem like they may be deceptively complicated or possibly very deep-seated. I'll probably look into those eventually though (assuming they're not my fault and this pull request goes smoothly), after I finish a few other issues and ideas I have lined up. Also, I wanted to thank you (a second time). The change I did for Fluent-Metro two weeks ago was my first ever pull request, and you merging it (even after how hard I bungled it initially) is what gave me the confidence to try and tackle something as big as this, so really: Thank you. But also... you merging my first pull request indirectly resulted in my second pull request adding global search hint customization, thus making the first one obsolete. A cruel twist of irony, but a worthwhile sacrifice. So thank you (a fourth time). |
hmm.. not need to "seals around in the mud" we we are be in the international "land" ;) there is one grateful thank you enough ;)
a bugfix too of this suggestions ? |
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.
huhh, who have set up the "&&" .. we are not in dos batch..
thy for support our community :))
Fixed single-click option ignoring split arrows Fixed Apps folder being clickable
ebc9e05
to
20e49e2
Compare
@bonzibudd Fixed. I noticed that you said the apps folder can't be opened in a window via clicks at all, so on top of fixing the single-click issue, I also added a change to prevent it from opening via double clicks either so you can never accidentally "open" it. It still expands when you click it. I hope I didn't misunderstand you and that this change wasn't obtrusive. Edit: On second thought, this change might actually be more confusing for users than if double clicking it opened nothing, but I'll leave the change until I get feedback on it. |
@ge0rdi common, check it :) |
Sounds good! I'm not at my computer right now, so I can't test the changes immediately, but I'll post an update about the double-clicking behavior when I am able to. |
The clicking behavior with the Apps item seems much better now. I personally think it makes the most sense as it is now, as it wouldn't be intuitive to be able to click the item and wait for it to not do anything. Edit: Also, do you mind explaining what 0c308c7 does in more detail? I have an idea of what it is for, but I'm not sure how to apply it. |
@bonzibudd Sorry for the delay. That commit adds new options to the Controls page for each type of control called "custom command" which allows users to have Open-Shell execute any command they want for that control (similar to the options for running commands when clicking on the user's account picture). For example, I set the default custom command for middle-click to "taskmgr", so if a user has that option set, they can middle-click the start button to open up Task Manager. I made this change because most users only use at most 4 of the 6 controls (sometimes only using 2), always leaving spare controls that are otherwise useless. This gives some extra functionality to those controls, and I'm even considering adding two more (Shift+Middle Click, Shift+Hover). Also, once this pull request is squared away, I'll be submitting a separate pull request shortly after for a semi-big change I've been working on over the past few days. I'm starting to have second thoughts about it, but I'll save that discussion for when the changes are ready. |
@thisismy-github Any updates on this? I would like to see this eventually pushed, but I understand if you are busy or working on other things. |
Hi @blackcrack |
Thank you, @coddec . I'm no longer participating in the project because I'm simply not interested in it that much anymore. Though I have no problem to review PRs like this from time to time, or provide some advice (if I can help somehow). Regarding current PR, I have requested some changes and it is now up to @thisismy-github to implement them or discuss them. |
Thanks for your reply @ge0rdi That will be great, as you may still come back from time to time, hope we will see you around the corner :) |
@thisismy-github Are you still planning on working on this? |
Not to be repetitive @XenHat... LOL! Just a bit of feedback as to this push have everything it needs to work via the Team. 👍 ~Ibuprophen |
One of your changes broke menu sorting. See #1111 for details. Honestly, I don't get what was the point of those changes. |
This reverts commit 998d83c. This change was wrong and it shouldn't get merged in first place. See Open-Shell#829 (comment) for further explanation. Fixes Open-Shell#1135.
I have reverted the |
This reverts commit 998d83c. This change was wrong and it shouldn't get merged in first place. See #829 (comment) for further explanation. Fixes #1135.
I appreciate @thisismy-github's commits and contributions. It is nice to have some new features. |
New options:
Other changes:
*Because this changes the way the shell extension for pinning items through the context menu works, users may need to reinstall/repair their installations to actually update their context menus and start pinning to custom locations. I'm not sure if this will cause any issues when officially updating.
This is my first serious pull request, and my first serious C++ project. I tried my best to stay as consistent to the original code and formatting as possible. I wanted to do more, but finally stopped myself at 10 commits.