1. Linked Window Manager Maximize/Minimize and Restore operations to those from the Server Rail Window so that they are in sync
2. Enable things like "CTRL-ALT-DELETE" and "WindowsKey-L" to show the full desktop window again since the desktop is not actively monitored since
this was still trying to draw to the rail window without updating the size of the window to accomodate the full workspace area.
3. Changed local window coordinates to be based on the visibileOffsetX/Y- while moving server window based on WindowOffsetX/Y. I have seen various issues regarding this when trying to use a maximized window where this is a disconnect between local window coordinates and remote window coordinates. This change clears these things up.
4. Commented the XShapeCombineRectangles calls - this can cause issues where the entire window is not visible and it does not currently play well with the changes from #3. The gain here is greater than the loss.
5. Draw the initial workspace correctly when running across multiple monitors. The correct size was always used, but the window was only starting on the current monitor and thus could draw the window off of the viewable area.
Known Issues:
Although the changes for #2 worked well in the stable branch that I developed from - the desktop window shown once the rail windows are destroyed does not respond to input unless I minimize/restore the window. Once the window starts responding to input - you can hit cancel to close the desktop window and return to your rail windows again(or launch task manager, etc.). This is still a big step in the right direction as xfreerdp is now correctly acting when the rail server stops Actively Monitoring the desktop.
XShapeCombineRectangles needs to be revisited, most windows applications will give you a rectangular window anyways.
_NET_WM_PID is used by some window managers to map the window
and the XDG desktop files. This patch sets _NET_WM_PID for this
purpose.
Signed-off-by: Ying-Chun Liu (PaulLiu) <paul.liu@canonical.com>
This switch will prompt username, password, domain and connection
host if not specified at the command line.
Signed-off-by: Rex Tsai <chihchun@kalug.linux.org.tw>
This will make sure we get an appropriate error message in case of memory allocation error, and not just a "Segmentation Fault"
Added some validation on xzalloc return in serial_tty_new to properly deallocate resources when an error occurs.
The values in @msdn{ms892480} seems to be what is used in TS_KEYBOARD_EVENT @msdn{cc240584}.
All the "XT Scan Code Translation Libraries" has been checked and integrated.
Only the Korean has been skipped. It is clearly something completely different
from everything else. The Japanese is just an extension of the US keyboard like
the others.
This also introduces a slightly more high-level convenience function for
sending key events. The existing function where an RDP protocol flag field has
to be encoded by the caller is very lowlevel ... and a bad fit for fastpath
input. That could use a refactoring.