Commit Graph

212 Commits

Author SHA1 Message Date
Michael Jumper
1c363ec37b Stubbed out Guacamole.Mouse.Touchscreen. 2012-07-27 23:00:00 -07:00
Michael Jumper
6800bd7329 Cleaned up Guacamole.Mouse.Touchpad and docs. 2012-07-27 22:59:59 -07:00
Michael Jumper
afdc4ed536 Split Guacamole.Mouse into Guacamole.Mouse (mouse event handling) and Guacamole.Mouse.Touchpad (touch event translation handling). 2012-07-27 22:59:59 -07:00
Michael Jumper
078322f808 Do not handle keypress if we already handled the event in keydown. 2012-07-27 13:21:45 -07:00
Michael Jumper
8f8b41fe8b Use timeout only as failsafe. Send key events immediately when we know we will handle via keypress or keydown. 2012-06-20 22:46:53 -07:00
Michael Jumper
03486264d1 Implement size for buffers. 2012-05-17 00:23:52 -07:00
Michael Jumper
88e2a7d500 Renamed deferred handler. 2012-05-16 15:32:46 -07:00
Michael Jumper
6cc12e88f9 preventDefault() in keypress, too. 2012-05-16 13:38:28 -07:00
Michael Jumper
a650a4a6ec As keydown/keypress are handled via deferred setTimeout(), so should keyup (otherwise, there's a race condition that keyup might happen before the deferred handling of keydown/keypress, and the key might be effectively stuck down or in a repeating state). 2012-05-16 13:36:28 -07:00
Michael Jumper
aa7c38be32 Should be using clearTimeout(), not clearInterval() for timeout. 2012-05-16 10:40:06 -07:00
Michael Jumper
685f07ed75 Don't wait for keypress if keycode well defined. Define space via keycode (some browsers interpret "space" as scroll down). 2012-05-16 10:36:37 -07:00
Michael Jumper
0399689177 Ignore unknown key events. 2012-05-16 00:52:16 -07:00
Michael Jumper
49fa2723a9 Only send release for ctrl+alt when both are pressed (we assume Ctrl+Alt == AltGr in the context of keypress). 2012-05-14 13:54:44 -07:00
Michael Jumper
b8ad66ab6e Only release ctrl/alt in keypress handler if character is not a control character. Beware that this causes a regression in Firefox as it sends keypress for Alt+combinations and Ctrl+combinations even though they will not type anything. 2012-05-14 13:44:17 -07:00
Michael Jumper
d3f5d003ea Only cancel keydown if not typable. Release Ctrl and Alt if actually typing a character via keypress (if they are not functioning as Ctrl or Alt). Cancel keydown if Ctrl or Alt (but not both) are held, even if we expect the character to be typable. 2012-05-14 13:21:43 -07:00
Michael Jumper
0abc6b3562 Add keyidentifier map. 2012-05-14 10:15:43 -07:00
Michael Jumper
d6b1985396 Defer handling of keypress via JS event queue. 2012-05-14 09:17:15 -07:00
Michael Jumper
f5515d6752 Updated ChangeLog 2012-05-04 18:46:20 -07:00
Michael Jumper
76fd31bd53 Properly offset mouse by document scroll amount (Firefox/Chrome, etc. inconsistency) - fixes ticket #124. 2012-05-01 14:33:31 -07:00
Michael Jumper
63685aa048 Position mouse cursor only at integer coordinates. 2012-04-10 22:53:30 -07:00
Michael Jumper
b2bcaef681 Fix non-left mouse button clicks (there may not be one touchstart event per touch). Fix setting/resetting of gesture_in_progress flag. 2012-04-09 13:57:58 -07:00
Michael Jumper
5e0c6d8c51 Only send integer coordinates in mouse events. 2012-04-08 21:51:35 -07:00
Michael Jumper
47b9e43559 Mouse acceleration. 2012-04-08 21:51:00 -07:00
Michael Jumper
df595d46ec Avoid crazy accelerating autoscroll by using clientX/clientY instead of screenX/screenY. 2012-04-08 21:22:09 -07:00
Michael Jumper
eaa233520c Calculate mouse position including scroll of overflow elements (cannot rely on pageX/Y). 2012-04-06 12:38:24 -07:00
Michael Jumper
041f22563c Revert fixes for iPad #90 due to performance regression - can avoid bug in libguac-client-rdp and friends until it is fixed upstream. 2012-04-05 15:29:55 -07:00
Michael Jumper
6e835dacdc More efficient blocking, leveraging the now-necessary image data copy. 2012-04-03 02:35:32 -07:00
Michael Jumper
9e1d2b2442 Fix iPad synchronization issue (ticket #90). 2012-04-03 02:18:47 -07:00
Michael Jumper
f6868b8661 "device" not "display" (typo). Switch back to two-finger scroll. 2012-04-01 18:52:49 -07:00
Michael Jumper
ff20799b29 Provide means of retrieving scale. 2012-04-01 18:52:06 -07:00
Michael Jumper
818f081bb5 Set scroll and click thresholds relative to screen pixel density (if readable) and size of gesture. 2012-04-01 18:20:18 -07:00
Michael Jumper
dcf55cbd75 Add scale function, use bounding div for main display element, such that the display can be scaled independently of the surrounding div, which provides the layout. 2012-04-01 01:07:14 -07:00
Michael Jumper
5e2858a413 Move all thresholds into properties, implement scrollwheel via touch. 2012-03-30 23:12:19 -07:00
Michael Jumper
e22296bbff Check for last touch by verifying touch length 0, not 1. Fix wrong use of max() (should be min). 2012-03-30 22:59:46 -07:00
Michael Jumper
ed3d12fbce Implement right and middle-click. 2012-03-30 22:48:22 -07:00
Michael Jumper
fa96143884 Move layers using translation via matrices - do not use CSS top/left. 2012-03-29 23:48:45 -07:00
Michael Jumper
b0196b89f1 Partial cleanup, track and expose key and modifier states. 2012-03-29 23:11:13 -07:00
Michael Jumper
8c7b883d55 Fixed regression with key repeat. 2012-03-29 17:42:34 -07:00
Michael Jumper
eca34b24fb Allow user of API to decide whether keyboard events are canceled. 2012-03-29 10:05:38 -07:00
Michael Jumper
e8ee79a5b0 Fixed project URL. 2012-03-26 18:51:16 -07:00
Michael Jumper
631ec6120e Change "Connection does not exist" to more user-friendly error. 2012-03-25 23:03:54 -07:00
Michael Jumper
3b7b8382a3 Add error for status code of 0. 2012-03-25 17:56:33 -07:00
Michael Jumper
d4aabf013b Assume space cap if blank (blank caps would otherwise not render, and IE trims the contents of XML tags, which breaks the OSK spacebar). 2012-03-25 13:37:16 -07:00
Michael Jumper
b80ede52a4 Generic error messages from status codes. 2012-03-24 19:13:32 -07:00
Michael Jumper
e6249fbf5b Do not use X-Guacamole-Error-Message - use status code only. 2012-03-24 16:57:58 -07:00
Michael Jumper
8ad557cf31 Use screenX/screenY for touch. 2012-03-22 17:28:24 -07:00
Michael Jumper
7522c3a853 Fix ticket #114 - mouse position calculated incorrectly. 2012-03-20 10:14:49 -07:00
Michael Jumper
fccfe52a19 In chained tunnel, clear handlers in old tunnel when new tunnel is taking over. 2012-03-19 15:11:05 -07:00
Michael Jumper
431d38d21f Properly handle errors on write as well as read. 2012-03-14 16:18:11 -07:00
Michael Jumper
cc6c2671ac Refactor arc to include drawing direction. 2012-03-13 18:59:57 -07:00