Kang Yu
a84b5f07bc
simplify window recovery procedure
2020-01-29 10:58:30 -08:00
Kang Yu
c82aaa3c59
remove dos new line
2020-01-29 10:55:32 -08:00
Kang Yu
7e4f3820b1
reject false window placement change when real screen position does not
2020-01-29 09:37:38 -08:00
Kang Yu
39fdc0cace
overwrite label text with dynamic content during form load event, dynamic text is not allowed during form design
2020-01-28 16:26:24 -08:00
Kang Yu
f2e86f0878
refined string construction
2020-01-28 16:17:56 -08:00
Kang Yu
dd0a31dfc7
remove obsolete code
2020-01-28 12:39:49 -08:00
Kang Yu
eda1839e4a
rename local var to emphasize current and previous value
2020-01-28 12:30:21 -08:00
Kang Yu
fddbb85279
only release version has the limit of singleton running instance
2020-01-28 02:21:24 -08:00
Kang Yu
4bda3525db
avoid taking invalid value in WindowPlacement by focusing only on normal position part
2020-01-28 01:00:39 -08:00
Kang Yu
9f0680b8d4
allow only one instance to run in release mode. update version to 2.5.xx
2020-01-27 22:05:31 -08:00
Kang Yu
107b82c33e
use standard method to get release version
2020-01-27 21:02:01 -08:00
Kang Yu
52fed8b1c8
use process id to resolve hash key (hwnd) conflict
2020-01-27 20:26:20 -08:00
Kang Yu
fe4fd6f8d0
safe guard hash collision between destroyed window and new window
2020-01-27 01:20:10 -08:00
Kang Yu
0d708214a1
refine text format in splash screen
2020-01-27 00:04:12 -08:00
kangyu
a3803a9164
start program with a splash screen
2020-01-26 23:57:38 -08:00
kangyu
9406f220d4
rename variable name to indicate screen coordinate instead of workspace coordinate
2020-01-26 12:59:17 -08:00
kangyu
357756d384
reduce the amount of MoveWindow() call
2020-01-26 12:55:57 -08:00
kangyu
b7fcca2df6
reliably restore window position by calling SetWindowPlacement() first, followed by MoveWindow(). Required for release build
2020-01-26 01:51:16 -08:00
kangyu
f3f414797a
smooth window location update using 3 second window to reduce noise across timer boundary
2020-01-26 01:06:29 -08:00
kangyu
b2216a3a9e
refix failure to restore snapped window using GetWindowRect()/MoveWindow() API in addition to GetWindowPlacement()/SetWindowPlacement()
2020-01-26 00:06:29 -08:00
kangyu
49aedbde38
rename variable and magic const
2020-01-25 14:26:45 -08:00
kangyu
d148fa4119
fix inconsistent snap window recovery
2020-01-25 14:00:44 -08:00
kangyu
e45577fa6b
update to version 2.3, show version number in tool tip
2020-01-25 01:54:19 -08:00
kangyu
50fdf0c0f1
tag version 2.2
2020-01-25 01:09:05 -08:00
kangyu
a632877ee4
fix failure to restore snapped window
2020-01-25 01:03:39 -08:00
kangyu
22e9f4cc84
change program title to PersistentWindows, update version and copyright info
2020-01-23 22:39:54 -08:00
kangyu
c132f80c2b
recapture all window position right after restore, also clear waiting counter to avoid hazard with next restore
2020-01-23 20:42:14 -08:00
kangyu
33b6fd26de
enhance window position comparison
2020-01-23 20:17:06 -08:00
kangyu
78ac961f4d
avoid generate log file in release mode
2020-01-23 20:16:10 -08:00
kangyu
b42b29005d
tag build version 2.0
2019-12-23 23:06:53 -08:00
kangyu
0c075ab4b2
postpone goofy window movement update by waiting as long as 60 seconds. Refine coding style
2019-12-23 22:47:46 -08:00
kangyu
589989844d
resolve issue when switching between rdp sessions with different monitor configuration
2019-12-22 21:40:21 -08:00
kangyu
93b905ed00
simplify code, update comment
2019-12-22 19:59:32 -08:00
kangyu
d3633e26a8
limit 2 window position update per second
2019-12-22 19:59:32 -08:00
kangyu
a09f07b17a
add comment on runtime fix
2019-12-22 19:59:31 -08:00
kangyu
a9d14eee07
keep compatibility with legacy windows 7/8
2019-12-22 19:59:31 -08:00
kangyu
2e65bd3d46
remove ManagedWinapi dll from source tree, use NuGet (from within MSVC tools menu) to download it before build
2019-12-21 21:57:31 -08:00
kangyu
a06d62a9b9
add ManagedWinapi package
2019-12-21 18:54:02 -08:00
kangyu
67b801370b
windows10 update: fix display name variation in rdp session; fix hang in call to SetWindowsPosition for "CodeSetup*"
2019-12-21 18:27:25 -08:00
Min Yong Kim
edeb86a1f2
1. Removing the weird lingering reference that I had for managedwinapi
...
2. Can't remember if this has to be manually downloaded or if it can actually be nugetted
3. Adding gitignore
2016-08-27 22:49:45 -07:00
kwlockwo
ca03b6b652
All restore of snapped Windows
2016-08-28 14:35:21 +10:00
Min Yong Kim
4250eae2cb
1. One more final change to make sure the icon loads properly and doesn't throw an exception when the diagnostic tool is opened.
2015-02-27 01:55:10 -05:00
Min Yong Kim
a71ea99b8e
1. Adding missing files
...
2. Adding icon resources
3. Swapping WPF shell to being a class library
4. Formalling closing the NotifyIcon when the app is shutdown
2015-02-27 00:48:10 -05:00
Min Yong Kim
9409d20445
1. Modification to make the application run in the systray
...
2. Abstracting processor and winapi logic into common dll and entry points into separate dlls
3. Adding icons
4. Switching build platform to AnyCPU. Seems to work on x64, don't have a x86 platform to test on
2015-02-27 00:38:08 -05:00
Min Yong Kim
b3776ce827
1. Fixing another bug where the restore was throwing an exception due to mismatching window search criteria
2015-01-20 23:19:51 -05:00
Min Yong Kim
67c2a93542
1. Modifying DesktopDisplayMetrics.ToString so that it's easier to understand
...
2. Fixing a bug where metrics were being captured pre-maturely
2015-01-16 08:49:07 -05:00
Min Yong Kim
e26c464a95
1. Modifying the UI to scroll the diagnositcs to the bottom
...
2. Updating logic to be a little smarter in regards to when to update the stored locations
2015-01-14 18:48:48 -05:00
Min Yong Kim
7e49f459b4
1. Adding event capture logic
...
2. Trying to modify where the changes are captured.
3. More logging
2014-11-05 17:42:12 -05:00
Min Yong Kim
d2d1819552
1. Adding some global handlers to track down when to capture
2014-11-05 01:55:48 -05:00
Min Yong Kim
90885bf9ba
1. Fixing some logging stuff
...
2. Fixing freeze lock at startup
3. More diagnostics
2014-10-30 07:22:27 -04:00