Skip to content

UXL Launcher Version 3.1 Stable

Compare
Choose a tag to compare
@DrewNaylor DrewNaylor released this 10 Jul 21:52
· 1389 commits to master since this release

Edit Oct 2, 2018: I've made an installer! Its checksum was added below and the file name is UXL-Launcher_v3.1-Stable.exe. The files included are the same as the ones in the zip file. I'll probably make an installer for 3.2 when it's out since most of the work is done now. The installer uses Inno Setup and was compiled from this script. Please note that this installer was tested on Windows 10, 1803, and Windows 7 SP1, and does not check for .Net 4.6.1, so that'll have to be installed separately if it isn't already. If you run into trouble with the installer, please file an issue on the Issues tab above.

---------------------------------------------------

After an entire one and a half years (1.5 years/18 months) and almost two weeks of work with numerous delays (mostly from video editing, HideSettingsPages, and classes), the release of UXL Launcher Version 3.1 Stable is finally here! I was feeling generous, so I released it a few days early. I wanted to get this out sooner, but there were some delays as previously mentioned. Once this is released, I'll start working on Version 3.2 which should have Office 2019 support.

Please enjoy this version and its changelog. I worked hard on both Version 3.1 and the changelog and there are several optimizations that might not be immediately obvious, such as using an RTF document in the About window instead of an embedded web browser and a bug fix for a major issue that was discovered after the release of Version 3.0 Stable. Other changes include the implementation of a theme engine with custom theme support. Important links, including links for more information on specific topics, are in the changelog below, so I'll let you read it.

As of October 2, 2018, an installer is available if you want to avoid manually extracting zip files. It adds a shortcut in the Start Menu and on the desktop, if you want it to.

---------------
CHECKSUMS
~~~~~~~~~

MD5 checksums are no longer used for UXL Launcher as of Version 3.1 Stable. More details.

You can use Windows PowerShell to confirm the hash of the main UXL Launcher EXE file by running
Get-FileHash .\UXL-Launcher.exe -Algorithm SHA256 in the folder you extracted the archive to and comparing the output to my sum listed below. HowToGeek has a nice article on this, but the Windows section is a bit further down on the page.

To check the installer's hash, run Get-FileHash .\UXL-Launcher_v3.1-Stable.exe -Algorithm SHA256 in Windows PowerShell.

SHA-256 sum for "UXL-Launcher.exe" in the archive:
732D53E2821D025A63EE612F93A17FA76620EF7AD239BF3866E9718F26ECE7C2

SHA-256 sum for "UXL-Launcher_v3.1-Stable.exe" (the installer attached to this release):
88506A1D8584A28247EF87DB304EFC3EC6E929AFCB333E782F18638FB354D06C

---------------
CHANGELOG
~~~~~~~~~

Below this text is the changelog. It compares UXL Launcher Version 3.0 Stable to UXL Launcher Version 3.1 Stable.

If you would like to look at the same comparison as I did while writing this changelog, you can do so here:
v3.0...v3.1
The link above will be active by the time this is posted, but I used a slightly different comparison since the one I linked to wasn't ready yet. However, the content was the same, so it shouldn't matter.

Many of the changes presented below have a related issue in the Version 3.1 milestone, if you would like to look at a bit more detail than listed here. Not all of the changes listed in this changelog were linked to a related issue, so you may need to do a bit of digging in that milestone to find the related issues.


UXL Launcher Version 3.1 Stable Changelog

  • Added:
    • A basic theme engine (known as the "UXL Launcher Theme Engine") has been added to UXL Launcher.
      • Its version is currently Version 1.01. This number will increase when there's any change at all made to the theme engine and some changes can be avoided by the theme designers if the change causes problems with their custom theme.
      • This allows the user to change the colors on the main window and Quickmenu with either built-in or custom themes.
      • The theme engine is turned off by default (to retain the overall look of Version 3.0 so that it's not a jarring upgrade) and can be turned on from Tools>Options...>Personalization tab>Enable UXL Launcher Theme Engine checkbox. Enabling or disabling the theme engine requires an application restart. Currently, a manual application restart is required, though this may change in the future. Enabling or disabling the theme engine requires an app restart because I don't know of an easy way to enable or disable a custom professional toolbar renderer at runtime after one is enabled and I don't want things to break.
      • Themes can be configured from Tools>Options...>Personalization tab by selecting a theme from the theme list dropdown box, then clicking Save. A description of each theme is shown in a textbox on the left side of the Options window.
      • If you want to temporarily reset to using the Default theme until the next time the app starts or settings are saved in the Options window, you can use the View>Revert to Default Theme menu button, or press Ctrl+0 (Control and the number "zero" at the same time). This button only shows up when the theme engine is enabled.
      • For companies who want to keep their computers locked down, support for custom themes can be disabled by changing the value of the allowCustomThemes setting in the config file from True to False. The user will be told that support for custom themes has been disabled and to contact their administrator if they try to choose a custom theme in the Options window. It may be a good idea to install UXL Launcher and its config file in a location away from regular users with write access, such as in a read-only folder in a network drive and have the config file hidden to prevent modification.
      • Currently, there are six themes included with UXL Launcher and the option to use your own theme or a theme downloaded from the Internet. If a particular custom theme becomes popular enough within the community, it may become a built-in theme if the theme designer gives permission.
      • You can use a custom theme by selecting (Custom) in the theme list drop down box, then clicking the Browse... button next to the custom theme path textbox and navigating to the file you want to use, or by pasting the custom theme file's path into the textbox. Currently, the Browse... file open dialog has filters for XML files, TXT files, and all other file types.
      • A wiki page on how to make your own custom theme is available.
      • Theme engine output such as errors and theme file info can be shown by changing the value of the debugmodeShowThemeEngineOutput setting in the config file from False to True. It'll show up in the Visual Studio Immediate Window and any other configured debug listeners. Please be aware that this may cause the app to slow down if enabled.
      • Theme-related debug labels have been added to the main window.
    • Users can now opt to use a custom statusbar greeting personalized with their firstname or nickname.
      • This is configured under Tools>Options...>Personalization tab>Use personalized statusbar greeting and typing in a firstname or nickname into the textbox below the radio button, then clicking Save.
      • The resulting statusbar greeting will be in the format of Welcome back to UXL Launcher, Firstname! "Firstname" is where the user's configured firstname/nickname goes.
      • The name typed into this textbox will not be used to personally identify the user.
      • If necessary, you can use the Clear button to the right of the textbox to erase all content within the textbox and set focus to it for easier firstname/nickname changes.
    • Hide When Minimized (View>Hide When Minimized) allows the user to hide the main window and only use the Quickmenu to launch apps. Double-clicking on the Quickmenu icon or right-clicking the Quickmenu and clicking Show UXL Launcher will both show the main window again.
    • The titlebar text now includes information on whether the app build currently running is considered "Stable", "Git" (built from code and not ready for release), or any other status.
    • Information on the theme engine and applauncher-icons (most of the icons used in UXL Launcher) has been added to the About window.
    • The license has been added next to copyright text in the About window so that it's now easier to tell what license a particular component uses. In the case of UXL Launcher, it says, "Copyright (C) 2013-2018 Drew Naylor. Licensed under Gnu GPLv3+." If there's no copyright, it's next to the author's name. This is how applauncher-icons displays this: "By Drew Naylor. Licensed under CC BY 4.0."
    • A bunch of screenshots have been added to a wiki page linked from the readme.
    • Buttons that update based on current build status that link to the AppVeyor page for UXL Launcher have been added to the readme.
    • The UXL Launcher logo has been added to the readme.
    • Better code organization.
    • Information on how UXL Launcher and Drew Naylor are not associated with Microsoft and that Microsoft does not endorse this software has been added to the project.
    • Additional applications are now listed in the part of the boilerplate text that says that UXL Launcher is not to be confused with other apps. The new ones are "UX Launcher" (an Android launcher) and "Ulauncher" (a Linux app launcher).
    • applauncher-icons (most of the icons in use within this app) boilerplate text has been added to the readme.

---------------------------------------------------------------------------------------------------------------

  • Changed:
    • The readme and parts of the wiki have been improved since the release of UXL Launcher 3.0. This includes the addition of a "Screenshots" page in the wiki and a list of known Microsoft Office install locations.
    • UXL Launcher icon and About window banner has an updated border that's a bit easier to see.
    • applauncher-icons has been updated to version 2.1.
    • The UXL Launcher icon is now displayed on the readme.
    • Boilerplate text in the readme now uses the Markdown triple backtick (```) for code blocks rather than the HTML <code> tag.
    • Update readme instructions on building from source.
    • The License and Acknowledgments tabs in the About window now render their text with an RTF textbox instead of using a WebBrowser control. This improves performance considerably and reduces file size while also no longer requiring Internet Explorer to be installed to use UXL Launcher fully.
    • About window banner resolution increased from 256x512 to 512x1024.
    • Updated copyright years from 2013-2016 to 2013-2018.
    • The build date in the About window now has the new line in its text file that's created at build time removed when opening the window. This would allow text to be placed directly after the build date text.
    • About window information for UXL Launcher is now mostly read from a file resource in My.Resources rather than hardcoded in the About window's class. Shortly after the release candidate for Version 3.1 was made available, it was discovered that AppVeyor builds and building directly from source hosted on GitHub made this text get jumbled up due to Unix line endings, but this problem was fixed several days later when preparing the final cleanups and changes for UXL Launcher Version 3.1 Stable.
    • The Office Language Preferences button in the Tools menu now has an access key underscore under the first letter "f".
    • The flow layout panel used in the main window now uses the Windows Window system color rather than just white.
    • Statusbar text has been updated:
      • Old statusbar text: Welcome to UXL, the Unified eXecutable Launcher! Click the buttons to launch the relevant app. Also, explore the UI.
      • New statusbar text: Welcome to UXL Launcher, the Unified eXecutable Launcher! Click the app names to launch them and explore the UI.
    • Debug labels for the Always On Top feature have been moved to the Extra Apps + Tools groupbox to make room for the theme engine-related debug labels.
    • Debug labels have also been aligned vertically.
    • If you want to show the debug labels, you can change the value of debugmodeShowLabels in the config file from False to True. This change requires an app restart before they will be visible or hidden. This isn't something that changed; it's just something that may be useful. If the theme engine is enabled along with this setting, the debug labels for the theme engine will also be visible.
    • The Microsoft Picture Manager button had its text changed to Microsoft Office Picture Manager.
    • Many code regions and comments have been updated to be more clear.
    • Update Options window dialogs to state that some settings may require an application restart, such as enabling the theme engine.
    • Optimization is turned off for Release builds because I don't really need the speed and storage improvements. I'm not really sure what the benefit of using the Release builds would be over Debug, so for now, I'm just using Debug builds for distribution until I find out why I should use the Release configuration instead.
    • Each app launcher button now uses a single sub (block of code) that accepts arguments. Those arguments are the EXE file for the app (such as EXCEL.EXE for Microsoft Excel) and the "friendly name" for the app (the name most people would use to refer to an app, such as "Microsoft Excel"). This improves maintainability since all the important code relating to actually launching the app and handling errors is in one place. More details.
    • File size for UXL-Launcher.exe has been reduced from 644 KB (Version 3.0) to 576 KB (Version 3.1).
    • Code that updates the Always On Top debug label has been moved to the code that updates debug labels instead of just copying it everywhere that particular debug label can update.
    • The About window "copyright notice" is now much more detailed about the fact that Microsoft owns their copyrights, trademarks, and registered trademarks. The copyright year for Microsoft's copyrights was also changed to be the current copyright year whenever Microsoft Office or Windows gets a new copyright year in new program versions.

---------------------------------------------------------------------------------------------------------------

  • Fixed:
    • If the main window is set to Always On Top and the user opens the Options window from the Quickmenu and clicks on a window behind the UXL Launcher window, the Options window will not be able to be interacted with until the user right-clicks on the Quickmenu icon again.
      • This was fixed by passing the name of the form that the new form is shown from when opening a new form (window).
      • More details and a video showing the bug are available here.
    • Always On Top now continues to work as expected when opening the Options window or the About window; instead of setting the main window (form) to not be on top when these windows show up and returning to on top when they close, both the main window and the new windows stay on top. This problem was related to the other issue with Always On Top referenced above this item.
    • Markdown files such as the readme have been updated to look better after some of GitHub's changes that were made to better align GFM (GitHub Flavored Markdown) with regular Markdown. A little more info (I couldn't easily find the article that said that GitHub was changing how Markdown files were rendered).
    • If the user chooses to test their settings via "Options...>Test settings" and OfficeLangPrefs.exe can't be found, the main window will be sent to the back of the currently showing windows.
      • I don't know if this was a bug in Version 3.0 or not, but if it was, it's fixed now for anyone who ran into this problem.
      • More details.
    • There was a typo in a code comment that had the text "textox" instead of the corrected "textbox".
    • This was mentioned in the "Changed" section above, but I think it's important enough to mention in the "Fixed" section, too:
      • Opening the About window on a computer booted from a regular spinning hard drive is now much faster and doesn't hang as badly anymore, mainly because the License and Acknowledgments tabs no longer use an embedded WebBrowser control to display their files. They instead use an RTF textbox control.
      • I do know that the Acknowledgments tab RTF file header text still says "UXL Launcher Acknowledgements"; I'll fix that in Version 3.2.
      • The second list item was only written because it would be improper grammar with only one subitem in a list.
      • Expecting another list item? TOO BAD. THIS IS THE LAST ONE.

---------------------------------------------------------------------------------------------------------------

  • Removed:
    • UXL-Standalone-Icon.png was removed from app resources (My.Resources) because it's not actually used in UXL-Launcher.exe. It's still in the Resources folder, though, and is used on the project's readme for GitHub.
    • Acknowledgments.html and gpl-3.0-standalone.html were deleted because they were replaced with RTF documents.
    • An extra space was removed from between the copyright years and developer name in the About window text.

---------------------------------------------------------------------------------------------------------------

  • Deprecated:
    • The "View system info" button under Tools>Options...>Advanced tab will be replaced with a label that directly shows your Windows edition (32-bit or 64-bit) in version 3.2. More info.
    • The two checkboxes under Tools>Options...>General tab for choosing your Office installation method ( I installed via Office 365/via MSI) will be combined in version 3.2. More info.