Commit Graph

95 Commits

Author SHA1 Message Date
a4db4b39b7 Updated game library images
Also changed from game library icons
to game library images to better match
the current icon generation logic.
2021-05-19 20:40:26 +12:00
5b99c3ac7a Working Game selection window
Also correctly extracts icons from icon
files and game exes as best it can.
2021-05-18 22:03:02 +12:00
5bdb2adba8 Mostly working Game icons!
Well this took enough time! I have
almost corrected all the issues with
the icon parsing functions, but I still
have a couple of edge cases to fix.
2021-05-16 21:46:58 +12:00
94d9da1b7c [WIP] Using single BItmap Generator
Changed to use a single bitmap generator
to try and simplify and standardise the way
that images are extracted from the games.
Have tried to use every method to extract
icons from icon files and from exes, but it's
still not quite right :(
2021-05-15 21:58:46 +12:00
1366ef0ab2 [WIP] Some smaller icons still broken
Currently struggling with the fact that
the smaller game icons don't get extracted
properly, and that they end up tucked into
the top left of the 256x256 bitmap at
32x32 size... so really tiny. Need to find a
fix for this so it always returns a 256x256,
and attempts to grow the 32x32 icons into
256x256 icons.
2021-05-14 21:22:29 +12:00
91a493a35d [WIP] Almost working game selection
This is almost working. I'm struggling with
the icons loaded from various icon files which
are coming in really small rather than the large
size they should be. The .Net Icon constructor
isn't making an Icon the size I requested, so I may
need to change something else.
2021-05-14 20:07:53 +12:00
b84eff07ad [WIP] Nearly completed ilv game selector
This is almost working, but the icons aren't
being grabbed from the game bitmaps and
loaded into the ilb_games ImageListView
2021-05-14 18:17:23 +12:00
b96a846410 First working Hotkeys
In this first working hotkey scenario
the DisplayProfiles and Shortcuts can
be run from Hotkey. I now need to add
the ability to run the mainfor, display profile
config page, and the shortcut library itself.
And of course add the items to the settings
window so they can be changed.
2021-05-01 17:03:15 +12:00
209e3f0338 [WIP] Partway through swap to NHotkey
Also trying to port Willy-Kimura's HKL
HotkeySelector code over as well cause
it is ace!
2021-04-27 22:19:44 +12:00
fd50594211 [WIP] Adding hotkey buttons to forms 2021-04-23 21:25:42 +12:00
395d4fa5d9 First working version after refactor
Have fixed the mistake I made with the
Parallel.Invoke actions where I accidentally
kept adding the SteamLibrary 3 times!

This now works well, and as a bonus the
game libraries are now thread safe!
2021-04-19 22:32:58 +12:00
81edd1df2b [WIP] 1st working refactor
The program compiles and pulls
origin game data into the application.
The steam refactor didnt work as there
are 3x entries for each game being loaded
and I need to see why!

Need to also test that the new Origin
shortcuts are being loaded and saved correctly
and that the RunShortcut works now it's had
a massive refactor.
2021-04-19 20:50:29 +12:00
4c46c6315d [WIP] Refactor Gamelibraries singleton pattern
Moved from basic static class to proper thread
safe singleton pattern for the GameLibrary to
simplify the code in ShortcutRepository.

Still only halfway through that ShortcutRepository
code refactor :(
2021-04-18 21:44:52 +12:00
44b620851a [WIP] Origin Games are detected
The Task finds the origin games and
returns them. Just need to add the logic
to actually use the returned data to
populate the game library, as well as
use the game library in the shortcuts
as well as actually run the new library too!
2021-04-16 22:40:58 +12:00
f7d3a04f28 Updating branch with v1.0.4 release code 2021-04-10 23:04:16 +12:00
a377f3477f Fixing library with no installed games error
Both Steam and Uplay library logic would error
when the library was installed, but didn't have
any installed games. Thanks to @joeymanson23
for the report. Fixes #4.

Adds a LOT more logging to the Steam and Uplay
libraries to allow for remote troubleshooting via
the log file, especially if the logging settings are
set to TRACE.

Also fixed the long standing issue for being able
to install two copies of DisplayMagician of the
same version. Now the installer will prevent that
from happening!
2021-04-07 23:37:05 +12:00
3fcd90a542 Create app dirs on first boot
Also improve logging detail when
loglevel is set to trace.
2021-04-04 21:49:37 +12:00
87fcc3e8d0 [WIP] Adding Origin Library 2021-03-31 21:43:34 +13:00
965f73377b Changed shortcut cancellation logic 2021-03-28 20:25:01 +13:00
4531a0d4d5 [WIP] Partially working shortcut detection
Fixed the profile validitiy detection on load,
but now have issue with the shortcut detection
2021-03-07 17:11:46 +13:00
7b9a676cb6 Disabled internal NLog debugging 2021-03-06 17:55:04 +13:00
25df13e52a Library include cleanup 2021-02-21 20:23:41 +13:00
79f535ce08 Fixing broken NLog config 2021-02-20 23:14:16 +13:00
bb37dc908a Changed LogLevel applies immediately
Configured NLog so that the loglevel
UI changes happen straight away. Also
am using NLog to generate the user
messages while it's running.
2021-02-20 22:03:19 +13:00
2959d5f280 Changing the default logging level to info 2021-02-20 21:04:58 +13:00
24c1ff29b4 Applied logging to program.cs
Continued to apply logging to the
various software components so that
we can get debugging logs when the
software is released for use.
2021-02-14 09:18:49 +13:00
dd8939b395 Logging changes
Combined DisplayMagicianShared logging into
the main log file to simplify log reporting for the
future. Also started adding info and debug
statements to the program to make the debug
level log work well for troubleshooting. This is
going to take a LONG time to complete, but will
be worth it in the end.
2021-02-10 22:40:22 +13:00
8336e910b0 Works without Game libraries installed
Basic checks for game libraries so program
will work with neither Steam or Uplay now.
2021-01-06 16:19:45 +13:00
93fc295bf2 Fixing automatic admin version upgrade
Upgrade processs wasn't upgrading using
elevated privileges. Appears to be doing so
now.
2020-12-28 23:17:13 +13:00
c7a1f1ab55 Fix Code Analysis changes that broke things 2020-12-28 10:34:15 +13:00
49329b870e Initial Code Analysis fixes
Also fixed up the Setup properties
file for x64 build configuration.
2020-12-26 21:46:32 +13:00
b5d6f3f680 Fully working Windows Toast 2020-12-26 16:59:45 +13:00
e53f76f0ce Working open and exit toasts
Toasts working for minimised start (allows use to
open the application) and for minimised close
(allows user to open the application or exit the
application).
2020-12-23 21:13:21 +13:00
15386ba756 Basic bidirectional notifications working 2020-12-23 18:29:20 +13:00
e4ed01f33b Added .Net 4.8 and Win 10 checks to installer 2020-12-21 15:02:06 +13:00
9e1ef4a095 [WIP] First working WiX installer
Installer works, but there are a few issues with it.
- It doesn't register the DesktopBackground COM server
- It doesn't create a start menu shortcut with the AUMID
- It doesn't check for .Net Framework 4.8 or later
- It doesn't try to install .Net Framework 4.8 or later if not there
- It doesn't have any customised backgrounds...
- It doesn't ask to run DisplayMagician when install is finished
2020-12-20 20:42:04 +13:00
3a2b74b049 [WIP] Basic Notification Compat intergration 2020-12-20 15:21:53 +13:00
33689931ca Moved AUMID to Shared project
And also added it to the LogReporter
project.
2020-12-20 12:45:50 +13:00
7a730b7a36 Register DisplayMagician AUMID with Win10
This registers the Application User Model ID
with Win 10 so that it recognises the application
and can interact with it. This allows Toasts, Taskbar
pinning, right-click menus and other functions to
work.
2020-12-20 12:35:36 +13:00
0830ed58dd Fixed Steam and Uplay game detection
Fixed an issue where Steam and Uplay don't detect the
game correctly. Now they find the processes themselves.

Also fixed ProgramSettings so that it generates a new
settings file on startup.

Also added LogLevel option to the ProgramSettings so that
I can start rolling out the NLog log statements to report
errors from the binary when it's installed on people's
PCs.
2020-12-09 20:47:30 +13:00
c0389cdba7 Added NLog to Program.cs
Did the first basic integration and setup for
NLog to the application as part of my push
to get better error logging.
2020-12-08 21:20:26 +13:00
9522af5574 Added new CreateProfile startup action
CreateProfile will just open a new DisplayProfile
window and that will be used only from the
Shell Extension.
2020-12-06 21:33:00 +13:00
45e2c32c30 Updated shell ext to createprofile 2020-12-06 21:19:03 +13:00
6743061962 Fixed missing HeliosPLus renames 2020-12-02 22:06:50 +13:00
415ff0eed0 Rename HeliosPlus to DisplayMagician
Decided to rename the application to DisplayMagician
to make it way more discoverable. Turns out there are
a LOT of applications named HeliosPlus!
2020-12-02 21:11:23 +13:00