Commit graph

20 commits

Author SHA1 Message Date
Kang Yu
1dc841d783 refactor move taskbar function 2020-03-14 16:20:40 -07:00
Kang Yu
7cf8a152fc experiment to move taskbar 2020-03-10 16:16:51 -07:00
Kang Yu
43781dcb5e identify OS move by using counter; Capture user snap window using timer 2020-03-01 19:15:11 -08:00
Kang Yu
054565778a do not recapture window when restore period is finished, because there is a small chance that OS incorrectly placed window. In that case, user still has a chance to restore by doing another round of sleep/awake 2020-02-26 19:41:57 -08:00
Kang Yu
060e1f67e1 reduce window flickering by avoid unnecessary SetWindowPlacement() call. Revert complicated SetWindowPos() call to simple MoveWindow() call 2020-02-22 12:43:06 -08:00
Kang Yu
505d6d9126 Avoid capture when display setting changes before event handler is called
Distinguish user initiated move/resize from OS initiated move/resize
Introduce load-adaptive capture speed control for slow remote desktop connection
2020-02-16 22:27:03 -08:00
Kang Yu
1e04039dd2 implement second restore pass in a more elegant way 2020-02-14 15:43:54 -08:00
Kang Yu
4a25903024 Improve capture/restore accuracy using timer and event handler 2020-02-14 15:41:21 -08:00
Kang Yu
9a301996c2 Reimplement capture/restore using event handler 2020-02-11 23:12:22 -08:00
Kang Yu
a7b15a0f22 fix flickering window issue introduced in V2.6, try recover old WindowPlacement only once 2020-01-31 16:26:17 -08:00
Kang Yu
d724a282f8 1. Call restore window position routine twice to reliably restore window snapped to screen edge, as Windows OS may undo restore for unknown reasons.
2. Automatically undo unexpected WindowPlacement change when screen position stays the same, the unexpected behavior happens right AFTER window pos restoration is done
2020-01-30 12:11:52 -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
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
kangyu
9406f220d4 rename variable name to indicate screen coordinate instead of workspace coordinate 2020-01-26 12:59:17 -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
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
33b6fd26de enhance window position comparison 2020-01-23 20:17:06 -08:00
kwlockwo
ca03b6b652 All restore of snapped Windows 2016-08-28 14:35:21 +10: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
Renamed from Ninjacrab.PersistentWindows.Solution/Ninjacrab.PersistentWindows.WpfShell/Models/ApplicationDisplayMetrics.cs (Browse further)