Commit Graph

390 Commits

Author SHA1 Message Date
Terry MacDonald
8cf85c5227 Added empty DisplayConfig and CustomDisplays to Display Profiles
Added empty DisplayConfig dictionary and CustomDisplays list to the Display Profiles JSON format, as I'm going to need it in a while when I add the integer scaling.
2021-11-07 20:49:21 +13:00
Terry MacDonald
a1f9bb5e2f First (probably) working process creation upgrade
I have completely rewritten the process creation logic for the start programs to handle launchers, and applications that require higher level privileges. It doesn't quite handle asking for UAC if the programn requires it, but that's something I can add at a later date. At the moment it seems to work a lot more reliably than the last set of code.
2021-11-07 17:34:55 +13:00
Terry MacDonald
9200b82e29 Added shortcut loading form
You now get warned that the shortcut form is loading and will take a while.
2021-11-07 14:41:11 +13:00
Terry MacDonald
fd6ab9fc47 Fixed shortcut name populating when no game selected
Now works as intended.
2021-11-07 14:18:43 +13:00
Terry MacDonald
10506a6537 First partially working process launching/monitoring update 2021-11-07 11:04:53 +13:00
Terry MacDonald
c06ba48923 Partial fix for process start
CreateProcessWithPriority doesn't always work. Need to troubleshoot why, but at least have a workaround currently.
2021-11-06 21:59:38 +13:00
Terry MacDonald
a80349f31a Initial ProcessUtils update
ProcessUtils functions don't work at the moment, so I need to fix them!
2021-11-06 18:38:37 +13:00
Terry MacDonald
712f0333f5 Added some extra UI logging 2021-11-06 12:05:58 +13:00
Terry MacDonald
ed07d84750 Trimmed some unneeded code. 2021-11-05 16:44:49 +13:00
Terry MacDonald
5f2b018725 Final few tweaks to shortcut image selection
The ChooseImageForm list now correctly higlights and selects the selected image when it's refreshed.
2021-11-05 16:36:39 +13:00
Terry MacDonald
9e91e0fd45 Now can import images as icons
As an extension to what was requested, you can now import any images and use those as the shortcut image (including the desktop image!). This amazing new functionality now makes it possible to make your shortcuts look exactly as you want them!
2021-11-05 16:28:58 +13:00
Terry MacDonald
ccba5cac40 Fixed run afterwards program
Fixes #48. It's not a full blown "run multiple programs" fix, but it will at least allow people to start to experiment with a single program (or powershell file if more than one needed)
2021-11-05 15:23:14 +13:00
Terry MacDonald
41a75acb1a Working icon selector
It looks like the work is done on the icon selector. Adds #51, hopefully fixing the last issue in #49 too.
2021-11-05 11:26:11 +13:00
Terry MacDonald
4d9216328d Working manual game icon selection
Also copes with patching existing shortcuts
2021-11-05 10:32:05 +13:00
Terry MacDonald
65cca02e5d [WIP] Partially working image selection
Need to handle situation when image is null.
2021-11-04 21:25:31 +13:00
Terry MacDonald
0926aa723d Moved game bitmap parsing to GameLibrary
'Tis a better place for it to live.
2021-11-03 08:34:16 +13:00
Terry MacDonald
e33961645c Partially completed stop program form 2021-11-02 23:08:08 +13:00
Terry MacDonald
6febe82c2f Additional stop program settings. 2021-11-02 22:54:34 +13:00
Terry MacDonald
fb482030e2 Added first part of adding a command to run afterwards
This is the basic first part of #48, only to provide basic functionality that may be useful to people. This is not a common occurance, so will allow people to run a program or powershell script if they need to do something unusual. This at least gives them a mechanism to do so.
2021-11-02 22:40:53 +13:00
Terry MacDonald
634b17c7f2 Partially implemented user selecting bitmap icon
Based on an idea from @erbkaiser, I'm implementing a process to allow the user to select the best image in the list of images extracted from icons, and allowing the user to choose the best one if they want. The idea is that DisplayMagician will try to pick the best image to use, but in the case that it gets's it wrong, theuser will be able to override it so that the nicest images/icons are used for their games!
2021-11-02 22:23:49 +13:00
Terry MacDonald
19a2caa188 Fully working manu icon override 2021-11-01 22:02:50 +13:00
Terry MacDonald
e3d78d3dc1 Fixed saving shortcut icon 2021-11-01 21:48:40 +13:00
Terry MacDonald
bd0f3484bb Working user added icons 2021-11-01 21:20:22 +13:00
Terry MacDonald
f1023df478 Initial manual shortcut implementation 2021-11-01 20:57:16 +13:00
Terry MacDonald
ecb3acad0e Updated build 2021-11-01 08:37:50 +13:00
Terry MacDonald
275adbeda6 Found longstanding dual game load issue
Should stop the double loading of games once and for all.
2021-10-31 20:47:46 +13:00
Terry MacDonald
2da00a55ec Fixed auto start functionality
DM wasn't autstarting when the checkbox on the MainForm was started. It wasn't correctly enabling the setting. It now does.
2021-10-31 16:22:21 +13:00
Terry MacDonald
d6887e53e6 Updated right-click menu tp bold the active display
This should help remove confusion.
2021-10-31 10:24:27 +13:00
Terry MacDonald
1965ef714f Wrapped try statements around programToStop
If a program starts, and then runs another app and then closes itself, then there is a real possibility that the processToStop logic will fail while trying to handle this process. This code now has 3 try/catch statements around it to try and catch this in a friendly way. This should also highlight any issues with the logic and hopefully make it better.
2021-10-31 10:11:14 +13:00
Terry MacDonald
613283da41 Temporarily force DisplayMagician to wait for games to load
This is a test to see if this fixes the missing Steam games in large Steam libraries issue (#49).
2021-10-31 10:00:57 +13:00
Terry MacDonald
340e1a6db0 Added additional places to refresh notification icons
This should hopefully cover all the instances of when we need to update the notification icons to refresh the correct profiles and game shortcuts.
2021-10-31 09:50:34 +13:00
Terry MacDonald
b7a03c1a61 Update the right-click icon menu more consistently
This should ensure that the shortcut and profile menus available from right click of the DisplayMagician system tray icon are updated more reliably. They should apply properly now.
2021-10-31 09:27:20 +13:00
Terry MacDonald
1ef9e5b818 Made some changes to allow more statuses as ok
Added all of the OK ADL statuses to be considered as successful. Should minimise the chances of things going wrong if there is a little issue like the display driver being busy, or if the display is fine but needs to wait for the next modeset.
2021-10-30 20:43:47 +13:00
Terry MacDonald
5f266aacbb Improved loading speed by skipping game loading in certain instances
No longer attempt to load games in profile reload, and in create profile. Need it for all other modes, but at least those two load quicker now!
2021-10-30 20:05:44 +13:00
Terry MacDonald
9cdb1cb3f2 Adjusted MainForm logic so it loads top most window
Now that we load a splashscreen, I've had to adjust the MainForm window display logic so that it goes to the topmost window when the user requests it to. This is much easier to use.
2021-10-30 19:38:21 +13:00
Terry MacDonald
913cf34d72 Made splashscreen settable
Partially fixes #49
2021-10-30 19:21:25 +13:00
Terry MacDonald
0d6536e7fe Splash screen to inform user when program starting
This is designed to inform the user that DisplayMagician is starting. Partially fixes #49.
2021-10-30 19:01:03 +13:00
Terry MacDonald
bb524749b5 Update right-click menu as soon as changes made
Partially fixes #49
2021-10-30 17:39:17 +13:00
Terry MacDonald
a8a27bddde Found CTD error with long game library names
Incorrect logic when checking long file names which restuled in text loneer than the 64 character limit for the notification icon. Partially fixes #49
2021-10-30 17:11:24 +13:00
Terry MacDonald
b44bc3f269 Updated incorrect error message 2021-10-29 22:36:12 +13:00
Terry MacDonald
9c2c8bd257 Changing spacing 2021-10-28 21:15:06 +13:00
Terry MacDonald
3ea0ff479b Updated screen drawing so surround displays work with additional screens
The display logic now works when both NVIDIA surround and normal windows are both being used at the same time.
2021-10-28 20:57:16 +13:00
Terry MacDonald
643daeae49 Loosened GDI matching a bit more 2021-10-26 21:26:23 +13:00
Terry MacDonald
5743cd377b Fixed bug in ApplyingProfile caused by new profile buffering
As I'd changed the profile config to buffer it within the libraries themselves, ApplyProfile wasn't telling the libraries to update their config. Therefore they thought they were still on the original display config, and that meant that ApplyProfile didn't revert the profile after the application had closed. This is now fixed.
2021-10-26 21:19:48 +13:00
Terry MacDonald
6d25635846 Added ability to generate Support ZIP from settings screen 2021-10-26 20:56:28 +13:00
Terry MacDonald
0434113e4b [WIP] Partial support package creation button
Adding button to create support package ZIP file to make troubleshooting easier.
2021-10-25 21:36:33 +13:00
Terry MacDonald
0e0195e3a1 Preaparation for a popup window if loading takes too long 2021-10-25 20:45:21 +13:00
Terry MacDonald
d54328ceef Loosened GDI matching for updated GDI usage
As we now only copy across some of the GDI display settings, we aren't able to have really tight matching on the GDI part of the Windows display profiles. For this reason, I loosened off the Equals test so that it would match on the functions that we change within DisplayMagician. The profile matching now works correctly.
2021-10-25 19:18:46 +13:00
Terry MacDonald
ff83331f4d Updated version 2021-10-25 16:02:26 +13:00
Terry MacDonald
1faa8ecc5b Updated AMDLibrary and WinLibrary to latest versions
AMDLibrary had an error that caused issues due to a missing call to get a valid default config. WinLibrary had an issue where it wasn't applying the GDIDisplaySettings correctly after a reboot. This has now been fixed.
2021-10-25 15:19:02 +13:00