Commit Graph

1790 Commits

Author SHA1 Message Date
Peter Åstrand
68ceebd8e0 Removed WITH_DEBUG_SEAMLESS.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1172 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-20 16:10:33 +00:00
Peter Åstrand
c997751ac9 Removed unneccessary return.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1171 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-20 15:58:16 +00:00
Peter Åstrand
d9b1dc3e3c Do not explicitly specify override_redirect=False when creating
SeamlessRDP window; default false is fine.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1170 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-20 15:55:18 +00:00
Peter Åstrand
b09bdd7fac Cleaned up SeamlessRDP functions: All utility functions are prefixed with sw_.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1169 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-20 15:43:15 +00:00
Pierre Ossman
04df9b10c3 Add info about serials and ACK:s to the seamless protocol spec.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1168 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-20 15:21:53 +00:00
Pierre Ossman
a62da2d8fb Make sure we do not update seamless windows' offsets until we get an ACK
back (i.e. when the request has been executed).


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1167 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-20 14:39:00 +00:00
Pierre Ossman
62b1c67758 Basic infrastructure for receiving seamless ACK:s.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1165 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-20 12:36:14 +00:00
Pierre Ossman
56b4c2714a Increase length to include the newline character.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1163 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-20 12:00:09 +00:00
Pierre Ossman
9319c65dbb Add serial numbers to protocol.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1162 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-20 10:31:58 +00:00
Pierre Ossman
54bd012205 Set _NET_WM_STATE property manually for withdrawn windows.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1158 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-17 15:16:52 +00:00
Peter Åstrand
2e7aa4b8b4 Send back our local positions upon changes, but only after a small timeout.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1156 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-17 12:39:09 +00:00
Pierre Ossman
d54d68dccc Add some client side book keeping of window ordering and focus in order to
not send unnecessary updates. This is done to avoid side effects for commands
that would seem to be no-ops.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1154 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-17 10:48:11 +00:00
Pierre Ossman
b899e2f50f Detect focus changes and send FOCUS to the server.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1153 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-17 09:56:20 +00:00
Pierre Ossman
8d65411c21 Support for seamless window restacking (ZCHANGE).
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1150 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-17 08:52:29 +00:00
Pierre Ossman
905e228417 Don't activate seamless mode until we have a working connection with the
remote server (i.e. when we get a HELLO).

Also change g_seamless_rdp to mean that -A was specified on the command line.
g_seamless_active now indicates if we're in seamless or "normal" mode.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1148 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-16 15:27:59 +00:00
Pierre Ossman
7b5cd1c963 Add HELLO command to seamless spec.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1147 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-16 14:56:27 +00:00
Pierre Ossman
8eabb673ff Combine the functions to add and remove wm states into a single function.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1145 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-16 13:27:13 +00:00
Pierre Ossman
c6a5ea32e6 Only allocate the XWMHints structure where we need it.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1143 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-16 10:14:18 +00:00
Pierre Ossman
06b0c2eb6e Set _NET_WM_STATE atoms via the window manager (as required by the spec.).
Unfortunately, this means we have to wait for the window to leave the
withdrawn state.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1142 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-16 08:41:53 +00:00
Pierre Ossman
bb3bcfc8a2 Handle initially minimized windows through WM_HINTS.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1141 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-16 08:11:29 +00:00
Pierre Ossman
70af626e05 Spec says that the wm doesn't have to respect requests to change
_NET_WM_STATE_HIDDEN, so we shouldn't rely on it.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1140 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-16 08:09:41 +00:00
Pierre Ossman
f91d09e47a The logic for parent window was borked. Minor if-statement tweak.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1139 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 15:27:24 +00:00
Peter Åstrand
661a93ab08 Set _NET_WM_NAME
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1138 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 15:16:18 +00:00
Pierre Ossman
2e0cc034a0 Add info about parent-less popup windows to the protocol spec.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1137 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 15:11:53 +00:00
Pierre Ossman
f4cb53875c Handle popups without a parent by setting the window manager hints
_NET_WM_STATE_SKIP_TASKBAR and _NET_WM_STATE_SKIP_PAGER. That seems to get
the behaviour we want.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1136 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 15:10:21 +00:00
Pierre Ossman
7c9b0860e8 Update protocol spec to state string format.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1135 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 13:47:41 +00:00
Peter Åstrand
0c06b6b1ef Changed default WM_NAME. Changed WM_CLASS to
rdesktop/SeamlessRDP. This makes it easier to identify seamless
windows, but also shows a nicer title in kwin when WM_NAME is empty.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1132 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 13:15:51 +00:00
Peter Åstrand
bce447b305 Do not map seamless window until STATE is recieved
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1131 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 12:58:50 +00:00
Peter Åstrand
90aa81def6 Prototype for ui_seamless_syncbegin.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1126 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 11:48:32 +00:00
Pierre Ossman
456e775f90 Clarify the behaviour when windows are initially created.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1125 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 11:43:57 +00:00
Peter Åstrand
c90a9e7064 Use strtol for signed variables.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1124 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 11:34:55 +00:00
Peter Åstrand
34208b5634 SETSTATE -> TITLE and STATE
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1123 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 08:43:38 +00:00
Peter Åstrand
4a7a75d402 Support for SeamlessRDP SYNCBEGIN/SYNCEND
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1122 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 08:41:48 +00:00
Peter Åstrand
b198566f5f Ignoring CREATEs for existing windows - be idempotent.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1121 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 08:35:13 +00:00
Peter Åstrand
94d8419910 Changed strtoll/strtol to strtoul.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1120 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 08:18:05 +00:00
Peter Åstrand
1644b0aecd Using strtoll for window ids, since strtol is signed, and we need to
use all bits of a long.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1119 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 06:55:29 +00:00
Peter Åstrand
1894873fb3 When a seamless window is moved to a new desktop, move all other seamless windows as well.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1118 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-15 06:42:57 +00:00
Peter Åstrand
2a804a8b4f Implemented support for changing state normal/minimized/maximized via EWMH. Also, sending notifications to server when local state changes.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1117 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-14 13:56:50 +00:00
Peter Åstrand
5652570792 Always printing what we are sending, when DEBUG_SEAMLESS is enabled.
Use 0x%08lx instead of 0x%p.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1115 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-13 15:04:51 +00:00
Peter Åstrand
feece41363 Enable large file support
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1114 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-13 09:27:10 +00:00
Peter Åstrand
7b4304a21c Implemented seamless_send_state.
seamless_send is now a varargs function.


git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1109 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 15:19:52 +00:00
Peter Åstrand
0c70be11d4 Checking return value from seamless_get_window_* everywhere
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1106 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 14:09:16 +00:00
Peter Åstrand
0146173a59 ui_seamless_setstate: Support for leaving iconic state.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1104 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 13:46:15 +00:00
Peter Åstrand
26df0c0c94 Always call strtol with zero base, to be tolerant
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1103 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 13:34:41 +00:00
Peter Åstrand
b557b2dc63 ui_seamless_create_window: Only search for parent if not zero
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1102 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 13:32:18 +00:00
Peter Åstrand
e6cb9fee3b Setting WM_TRANSIENT_FOR, when necessary
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1100 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 12:56:38 +00:00
Peter Åstrand
95f39af2d3 Parsing the new CREATE command, with parent parameter.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1097 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 12:44:32 +00:00
Pierre Ossman
6903b4e52d Add a field to the create command to be able to indicate child windows.
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1094 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 12:22:51 +00:00
Peter Åstrand
f756bec8c3 SETSTATE is not two ops: TITLE and STATE
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1093 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 10:40:50 +00:00
Peter Åstrand
6c76781ce0 Using American english
git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/branches/seamlessrdp-branch/rdesktop@1091 423420c4-83ab-492f-b58f-81f9feb106b5
2006-03-10 09:20:03 +00:00