To create a shortcut, method 1 is to drag the Site Information icon at the left end of the address bar to the desktop. That creates a shortcut using the Brave icon. Method 2 is to use menu → Save & Share → Create shortcut which also creates a shortcut, but now with the web site’s favicon.ico as the icon for the shortcut. Both methods create a shortcut, but one uses Brave’s garrish icon while the other uses the site’s favicon.
I discovered that dragging the Site Info icon creates a .url file for a shortcut while the menu entry creates a .lnk file (which calls an .exe with a highly complicated string of arguments). So, method 1 creates a .url shortcut while method 2 creates a .lnk shortcut.
I would prefer the simpler .url shortcut for maintenance, but would like to use favicons for the shortcut’s icon. The .lnk scheme is ridiculously complex with the program (which is chrome_proxy.exe instead of brave.exe) and a list of superfluous arguments. I understand why the .lnk shortcut file was used for method 2, because .lnk files have a structure which allows defining attributes of the shortcut, like the icon. Brave saves the favicons under:
%USERPROFILE%\AppData\Local\BraveSoftware\Brave-Browser\User Data\Default\Web Shortcut Icons
with a numbered subfolder (don’t know where Brave tracks the number to the website) under which are stored the shortcut.ico files.
Okay, fair enough, Brave is saving the favicons which it can then specify in the .lnk shortcut file, but why all the other noise for the target of the shortcut? I get why a program is listed in a .lnk shortcut, as I’ve created my own .lnk files before, like to call the web browser by its executable with the site’s URL as the only argument, and edit the shortcut to use the Custom tab to Change Icon. However, I specify the web browser’s executable, not some proxy program and a slew of superfluous arguments.
My custom .lnk shortcut might have:
C:\Windows\System32\cmd.exe /c start
or
“C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe”
Using cmd.exe will call the default URL protocol handler, or I can specify which web browser to use to open the URL. Brave’s .lnk shortcut has:
%USERPROFILE%\AppData\Local\BraveSoftware\Brave-Browser\Application\chrome_proxy.exe --profile-directory=“Default” --ignore-profile-directory-if-not-exists
Yeah, a lot longer, calls some proxying agent instead of the web browser itself, specifies the default profile folder (which would be assumed, anyway, in my .lnk shortcut), and the ignore arg is meaningless since a profile must exist when using the web browser.
As a test, I created a new .lnk shortcut that points to a much simpler target (the Intel web site as an example):
%USERPROFILE%\AppData\Local\BraveSoftware\Brave-Browser\Application\brave.exe www.intel.com
It calls brave.exe instead of some proxy agent without all the noise of superfluous arguments, and I changed the shortcut’s icon to:
%USERPROFILE%\AppData\Local\BraveSoftware\Brave-Browser\User Data\Default\Web Shortcut Icons\3063586570\shortcut.ico
The number will change based on some scheme Brave uses to index the subfolders holding the icons. My simpler .lnk shortcut works just as well, calls brave.exe instead of a proxy agent, and the shortcut shows the site’s favicon. Brave would be writing the .lnk file, so it would know which subfolder under the Web Shortcut Icons folder to specify for the icon in the .lnk file.
Would be handy to have an setting in Brave that equates dragging the Site Info address bar icon to the menu navigation method to have both methods create a .lnk shortcut. The setting could select between “Create .url shortcut with address bar drag” or “Create .lnk shortcut with address bar drag”. Those that don’t want a desktop polluted with garrish orange lion icons for shortcuts, but prefer favicons, could select the 2nd choice.
Using favicons would make it obvious when a group of shortcuts were all pointing to the same site versus lion icons that give no clue to where they point unless the user edits the .url shortcut to change the icon, but they likely won’t have the favicons from which to choose, anyway.
Aside: Brave installs in the wrong parent folder
Come to think on it, and after seeing where brave.exe is deposited, why the h*ll is Brave installing executables under an appdata path? It could use appdata to where it saves data, like the favicons, but its executables should be in the program folders. What’s with violating the purpose of the appdata folders? Appdata folders are supposed to be Application Data Folders, not program executables folders.
https://www.xda-developers.com/appdata/
Because the appdata folders are under %userprofile%, they are specific to each Windows account. So, installing Brave works on a per-account basis; i.e., you get user-specific installations. Oh great, that means I would have to install Brave n times for n Windows accounts.
If Brave’s installer asked me if I wanted to install for all users, or just the one user under which the installer was ran, I don’t remember that choice. When I install a web browser, I want it available to ALL users of that host, not to just one user.