Commit Graph

1091 Commits

Author SHA1 Message Date
Terry MacDonald
3fba28087c Made TaskBarLayout creation more robust
TaskBarLayout now catches exceptions recording the taskbar location and handles them properly. It will skip any screenss that it cannot access the taskbar information for. The Screen layout generator for NVIDIA, AMD and Windows have all been updated to handle having no taskbar layout information (it just assumes the taskbar is down the bottom of the screen).

Hopefully fixes #114
2022-06-02 19:51:07 +12:00
Terry MacDonald
56c2410d85 Updated WinLibrary so it patches adapter IDs accurately
This was a major error that somehow slipped through previous work. WinLibrary was only partially patching the Windows Display Config when it was being loaded, and that resulted in some parts  of the Windows Display Config not working after a windows reboot. This should now be fixed!

Fixes #103
2022-06-02 18:14:51 +12:00
Terry MacDonald
b7395020cf Updated build. 2022-05-31 21:32:28 +12:00
Terry MacDonald
5faa2e919b Fixed Game Shortcut system tray menu all greyed out on startup
Problem was the MainForm needed to be started after the games were loaded in the background.
2022-05-31 21:11:35 +12:00
Terry MacDonald
a318dc64f2 Adding WIndows DPI Scaling config patching for DisplayMagician
IMPORTANT: This patching means that DisplayMagician is able to use your existing Display Profiles, but there is a catch! DisplayMagician won't be able to detect that your old profiles are currently in use... in other words DisplayMagician will constantly think that you have a new Display Profile until you save a copy of the DisplayProfile again.

This occurs because DisplayMagician now gets and compares the NVIDIA 3D Settings and there is no way for us to figure out what previous 3D settings were in use when you set up previous display profiles. For that reason we'll just need you to save new Display Profiles.
2022-05-31 20:55:48 +12:00
Terry MacDonald
340387dcc4 Updated WinLibrary, NVIDIALibrary and AMDLIbrary to latest versions
Updated video libraries to v1.7.5
2022-05-31 09:02:18 +12:00
Terry MacDonald
a93c9e62d2 Added Windows per source DPI scaling settings 2022-05-30 10:01:43 +12:00
Terry MacDonald
f40640ccbd Updated UpdateActiveConfig 2022-05-29 21:16:55 +12:00
Terry MacDonald
567c9b7af2 Reduced the displayid calls for profile comparison 2022-05-29 21:01:08 +12:00
Terry MacDonald
f6b1eed990 Fixed ProgramSetting loading and use
There was a flaw in the way that ProgramSettings was being used that meant there was a lot of reloading and saving going on which was unnecessary. Additionally there were some errors in the way that the Settings file was upgraded which mean that the old settings were keeping on getting overwritten. Fixes #104.
2022-05-28 21:09:53 +12:00
Terry MacDonald
9a886190dd Merge branch 'develop' of https://github.com/terrymacdonald/DisplayMagician into develop 2022-05-28 19:41:21 +12:00
Terry MacDonald
70e0765a59 Added WorkingDirectory to ProcessStartInfo
By adding working directory to the ProcessStartInfo, it should hopefully mean that software that looks for config files in the same directory as the executable should work now. Should fix #112.
2022-05-28 19:40:49 +12:00
terrymacdonald
621cac8cb2
Merge pull request #106 from terrymacdonald/dependabot/nuget/develop/protobuf-net-3.1.4
Bump protobuf-net from 3.1.0 to 3.1.4
2022-05-27 15:16:25 +12:00
terrymacdonald
9660b6937d
Merge pull request #107 from terrymacdonald/dependabot/nuget/develop/Microsoft.NET.Test.Sdk-17.2.0
Bump Microsoft.NET.Test.Sdk from 17.1.0 to 17.2.0
2022-05-27 15:16:14 +12:00
terrymacdonald
ae2bb768a5
Merge pull request #109 from terrymacdonald/dependabot/nuget/develop/NLog-5.0.0
Bump NLog from 4.7.15 to 5.0.0
2022-05-27 15:15:58 +12:00
Terry MacDonald
6d8da7f478 Handle empty Steam Libraries without breaking
Fixes #108.
2022-05-25 08:51:56 +12:00
Terry MacDonald
0e42a3aad3 Bugfix to stop high CPU usage. 2022-05-18 21:36:01 +12:00
dependabot[bot]
335250035c
Bump NLog from 4.7.15 to 5.0.0
Bumps [NLog](https://github.com/NLog/NLog) from 4.7.15 to 5.0.0.
- [Release notes](https://github.com/NLog/NLog/releases)
- [Changelog](https://github.com/NLog/NLog/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/NLog/NLog/compare/v4.7.15...v5.0)

---
updated-dependencies:
- dependency-name: NLog
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-17 08:27:33 +00:00
dependabot[bot]
1f94de1ebb
Bump Microsoft.NET.Test.Sdk from 17.1.0 to 17.2.0
Bumps [Microsoft.NET.Test.Sdk](https://github.com/microsoft/vstest) from 17.1.0 to 17.2.0.
- [Release notes](https://github.com/microsoft/vstest/releases)
- [Commits](https://github.com/microsoft/vstest/compare/v17.1.0...v17.2.0)

---
updated-dependencies:
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-12 08:22:27 +00:00
dependabot[bot]
8c05438a21
Bump protobuf-net from 3.1.0 to 3.1.4
Bumps [protobuf-net](https://github.com/protobuf-net/protobuf-net) from 3.1.0 to 3.1.4.
- [Release notes](https://github.com/protobuf-net/protobuf-net/releases)
- [Changelog](https://github.com/protobuf-net/protobuf-net/blob/main/docs/releasenotes.md)
- [Commits](https://github.com/protobuf-net/protobuf-net/compare/3.1.0...3.1.4)

---
updated-dependencies:
- dependency-name: protobuf-net
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-11 08:32:05 +00:00
Terry MacDonald
b3bf040be7 New Build 2022-05-04 22:15:23 +12:00
Terry MacDonald
f1650c7a7d Added two settings to reduce the messages sent to the Windows Action Center
Adds feature #99.
2022-05-04 22:10:20 +12:00
Terry MacDonald
6be58e881f Merge branch 'develop' of https://github.com/terrymacdonald/DisplayMagician into develop 2022-05-04 21:24:09 +12:00
Terry MacDonald
86a4696084 Fixed Hotkey being left after profile and shortcut deleted
This set of changes removes the hotkeys so that they can be reused again without restarting DisplayMagician. Fixes #102.
2022-05-04 21:23:57 +12:00
terrymacdonald
5794cf9f47
Merge pull request #100 from terrymacdonald/dependabot/nuget/develop/protobuf-net-3.1.0
Bump protobuf-net from 3.0.101 to 3.1.0
2022-04-29 08:20:48 +12:00
dependabot[bot]
a32f454f9a
Bump protobuf-net from 3.0.101 to 3.1.0
Bumps [protobuf-net](https://github.com/protobuf-net/protobuf-net) from 3.0.101 to 3.1.0.
- [Release notes](https://github.com/protobuf-net/protobuf-net/releases)
- [Changelog](https://github.com/protobuf-net/protobuf-net/blob/main/docs/releasenotes.md)
- [Commits](https://github.com/protobuf-net/protobuf-net/commits/3.1.0)

---
updated-dependencies:
- dependency-name: protobuf-net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 08:32:54 +00:00
Terry MacDonald
8d58b89602 Updated some screenshots 2022-04-20 20:43:55 +12:00
Terry MacDonald
f8a9ca8e1e Added in partial DRS Setting support
This DRS Support is just reserving a space for the future addition of DRS Settings pulled from the driver. This will allow the recording of settings listed in the 3D Settings within the NVIDIA Control panel.
2022-04-20 20:35:51 +12:00
Terry MacDonald
9a745ea3e7 Adjusted mainform startup now we're singleinstance
Made some adjustments to when the MainForm is loaded, and how the NotifyIcon works for system tray.

Also Adjusted the way that the Windows Screens are computed so that we can reuse some of the code in AMD and NVIDIA screen generation so that the additional non-NVIDIA and non-AMD connected screens are still shown.
2022-04-20 17:39:34 +12:00
Terry MacDonald
a45fab4ee9 Fixed profile invalidity bug with RunShortcut from command.
When the RunShortcut command was run, sometimes the profile used in the shortcut would  incorrectly be shown to no be possible when it was in fact possible. This was due to a missing possibility profile refresh. This has now been added so the shortcuts run correctly from the desktoip shortcuts.
2022-04-19 22:20:04 +12:00
Terry MacDonald
ae7bb095e2 Revamped display layout image shortcut generation
Made many changes to simplify the configuration and make the profile display layout image generation faster and more reliable.
2022-04-19 21:12:00 +12:00
Terry MacDonald
51806494ab Added checks for non-NVIDIA screens to NVIDIA mode
This will ensure that all screens show up in the images even if they aren't connected through an NVIDIA device. I also made the same changes to the AMD mode.
2022-04-19 15:23:35 +12:00
Terry MacDonald
716942812e Updated build number 2022-04-19 10:01:24 +12:00
Terry MacDonald
b7194dd6e9 Added extra logging 2022-04-19 09:51:35 +12:00
Terry MacDonald
f042622921 Added SpaceDesk to recognised PCI devices
Also improved logging around PatchAdapterIDs
2022-04-19 09:31:07 +12:00
Terry MacDonald
ff93a1007c Found exception when tracking taskbar location
This is a subtle error, caused by either the NVIDIA driver being slow, or windows being slow in updating the location of the windows taskbar edge. This was causing an error in the GetNVIDIASCreenPositions function. Have added a 0.5 second delay to allow windows to update iit's display layout before we try to read it which should help, and also if we can't find the taskbar location in the settings, we just assume it is at the bottom. This should avoid exception.
2022-04-17 23:15:55 +12:00
Terry MacDonald
6f778f556d Detect 0 width and height screens and alert
Added specific checks to find and alert on 0 width or 0 height screens. This will then break other parts of the display layout.

Also moved the cloned screen check higher up to ensure we skip them properly.
2022-04-16 15:07:10 +12:00
Terry MacDonald
cc5f334917 Fix to ToTightestBitmap
Removed a divide by zero issue with ToTighestBitmap that could cause issues.
2022-04-16 14:55:24 +12:00
Terry MacDonald
c99c166b3d Cloned display image layout fixes
Cloned displays weren't showing properly in the image layouts, and this fixes that issue.
2022-04-15 15:13:27 +12:00
Terry MacDonald
fa05920618 Fixed Desktop right-click menu
Had forgottent to update the profiles json file to new v2.3 filename.
2022-04-15 11:46:46 +12:00
Terry MacDonald
25b8d1102f [WIP] Partially overhauled NVIDIA screen calculations
Had some mistakes in the way that the profile graphics images were calculated on NVIDIA video cards. This meant that in some situations it calculated the image structures incorrectly, and didn't put the displays in the right places. This now changes that fact.

There is still an outstanding issue that the GetNVIDIAScreenPositions function still doesn't put the taskbar location in the right place yet. I need to fix that tomorrow.
2022-04-13 22:48:32 +12:00
Terry MacDonald
5d97bf5d38 Fixed issues creating new Shortcuts 2022-04-13 21:28:18 +12:00
Terry MacDonald
11792ec1a3 Fixed incorrect log function name 2022-04-13 09:30:27 +12:00
Terry MacDonald
d75289145e Fixed display profile upgrade bug during upgrade
DisplayMagician incorrectly tried copying the old DisplayProfile over to a new file when upgraading from v2.2 format to v2.3 format. This is incorrect as the file format can't be upgraded. This was stopping DisplayMagician from working upon first restart. Now fixed.
2022-04-12 08:55:32 +12:00
Terry MacDonald
e4aab07b03 Tweaked error messages to better represent errorlevel
Changed a few ERROR level log messages to WARN as that better represents their classification.
2022-04-10 09:40:28 +12:00
Terry MacDonald
0c3dab719a Latest build 2022-04-10 09:14:46 +12:00
Terry MacDonald
5eb268bda5 Added new v2.3 profiles to support zip file
Also fixed issue where Display Profile window and the Shortcut Library window wouldn't always be shown on screen when returning from a different shortcut. This made using the application difficult. This has now been rectified.
2022-04-07 18:47:22 +12:00
Terry MacDonald
412ac2c855 Attempt to open the singleInstance if passed no command parameters
Also attempted to set the system tray notification popup correctly after a shortcut has been run.
2022-04-06 23:07:06 +12:00
Terry MacDonald
17a23009ff Working RunShortcut and improved process error logging 2022-04-03 16:33:09 +12:00
Terry MacDonald
5a9dbed680 Fixed command line errorlevels
The errorlevels are now reported properly across the application
2022-04-03 09:37:13 +12:00