Commit Graph

48 Commits

Author SHA1 Message Date
Michael Jumper
4e130d2afd GUACAMOLE-884: Leverage createImageBitmap() for reading image data where supported.
Some browsers suffer from a memory leak when reading image data
repeatedly using the Image object. Reading from Blobs does not exhibit
the same behavior. While reading from Blobs has previously been seen to
perform poorly compared to data URIs, this was observed when reading
using createObjectURL(). The createImageBitmap() function appears to
perform identically to reading data URIs using Image.
2019-09-29 21:57:05 -07:00
Michael Jumper
2085ee7424 GUACAMOLE-629: Allow client to receive connection parameter values via "argv" streams. 2019-07-30 13:02:01 -07:00
Michael Jumper
75805e4cab GUACAMOLE-629: Add support for creating argument value streams using the "argv" instruction. 2018-09-25 13:01:15 -07:00
Michael Jumper
57d81544ea GUACAMOLE-495: Remove setClipboard() function of Guacamole.Client, deprecated since 0.9.1 (05a7c87). 2018-02-01 22:32:36 -08:00
Michael Jumper
171653dca5 GUACAMOLE-250: Require callback - calling exportState() makes no sense otherwise. 2017-04-14 14:26:13 -07:00
Michael Jumper
9ba6a5f69b GUACAMOLE-250: Export client state asynchronously (display state may not match protocol state otherwise). 2017-04-14 10:30:42 -07:00
Michael Jumper
4582f123c3 GUACAMOLE-250: Store image URL in client state only if such an image can be generated (non-zero width/height). 2017-04-12 23:05:52 -07:00
Michael Jumper
2a894ffcfb GUACAMOLE-250: Add support for saving/restoring Guacamole.Client state. 2017-04-11 21:23:59 -07:00
Michael Jumper
96140d4167 GUACAMOLE-231: Update software cursor location when a "mouse" instruction is received. 2017-03-11 14:41:06 -08:00
Michael Jumper
47f2b95abc GUACAMOLE-177: Tie all layer property changes to display frame flush. 2017-01-24 16:09:13 -08:00
Michael Jumper
41881be909 GUACAMOLE-172: Do not send potentially-invalid "sync" as a keep-alive. Use "nop" instead. 2017-01-24 11:01:45 -08:00
Michael Jumper
1cdbd49dff GUACAMOLE-115: Explicitly close connection when disconnect instruction is received. 2016-11-07 10:29:53 -08:00
Michael Jumper
df3347f631 GUACAMOLE-25: Automatically invalidate output stream due to "ack" ONLY if it's the same stream that received the "ack". It is possible for the output stream to be freed and replaced with a different stream within onack. 2016-05-23 21:08:54 -07:00
Michael Jumper
4e489fefad GUAC-1511: Clean up output stream creation. Add generic createOutputStream(). Add createAudioStream(). 2016-03-30 09:41:48 -07:00
Michael Jumper
1810ec971f GUACAMOLE-1: Relicense C and JavaScript files. 2016-03-28 20:50:18 -07:00
Michael Jumper
fb6d2fa550 GUAC-1452: Input streams must be invalidated when closed. 2016-01-12 18:58:58 -08:00
Michael Jumper
7cdfd146ef GUAC-791: Add missing private tags to inner variables/functions. 2015-12-14 14:51:15 -08:00
Michael Jumper
2959513d95 GUAC-791: Fix type expressions to comply with JSDoc 3. 2015-12-14 14:51:15 -08:00
Michael Jumper
e6d6c5c56e GUAC-1428: Do not call handlers on non-existent streams. 2015-12-09 19:43:44 -08:00
Michael Jumper
3057db60ff GUAC-1354: Add base Guacamole.VideoPlayer (no codec implementations at present). Allow custom video codec implementations via onvideo callback on Guacamole.Client. 2015-10-18 22:07:01 -07:00
Michael Jumper
f0e6da86c9 GUAC-1354: Use Guacamole.AudioPlayer.getInstance(), etc. to abstract away the various implementations. 2015-09-30 17:02:18 -07:00
Michael Jumper
ff5687c01e GUAC-1354: Refactor Guacamole.AudioChannel to Guacamole.AudioPlayer. 2015-09-28 12:37:09 -07:00
Michael Jumper
8a9c7ce35f GUAC-427: Limit audio latency to reasonable bounds relative to sync instructions. 2015-09-04 19:07:16 -07:00
Michael Jumper
63b31cf0b1 GUAC-240: Read images received through "img" streams using a Guacamole.DataURIReader - appending to standard Blob objects is too slow. 2015-08-11 19:17:06 -07:00
Michael Jumper
d393a833f4 GUAC-240: Add support for "img" instruction. 2015-08-11 16:24:54 -07:00
Frode Langelo
d950e99101 GUAC-240 Add support for JPEG instruction 2015-07-27 14:57:56 -07:00
Michael Jumper
4ec407b6b6 GUAC-1172: Comply with newly-adopted JavaScript coding style. 2015-06-22 14:33:11 -07:00
Michael Jumper
d332b028e3 GUAC-1172: Add Guacamole.Object and handlers for object-related instructions. 2015-06-19 21:38:56 -07:00
James Muehlner
466aa8ba2d GUAC-928 Always send error codes as numbers, not strings. 2014-12-04 23:51:16 -08:00
Michael Jumper
5a6623540f GUAC-676: Conversion to Guacamole.Display wasn't finished - "transfer" and others still directly used layer. 2014-05-12 12:25:32 -07:00
Michael Jumper
299c341ce0 GUAC-676: Implement Guacamole.Display. Perform initial refactor. 2014-05-11 23:23:36 -07:00
Michael Jumper
05a7c87b4c GUAC-608: Add support for stream style clipboard. 2014-04-07 17:32:26 -07:00
Michael Jumper
af4de98277 GUAC-558: Do not trigger client onerror for tunnel onerror. 2014-03-21 11:19:07 -07:00
Michael Jumper
6a70dd5582 GUAC-549: Use Guacamole.Status for ack messages. 2014-03-19 14:35:31 -07:00
Michael Jumper
d4a6fd21f7 GUAC-549: Throw status instead of error for connect() in tunnel and client. Pass status instead of message/code parameters for onerror event handlers. 2014-03-19 13:58:52 -07:00
Michael Jumper
4982971fec Remove automatic calls to sendAck(). 2014-02-28 18:34:08 -08:00
Michael Jumper
71ae352208 Migrate to cleaner InputStream and OutputStream with Reader wrappers. 2014-02-28 15:25:01 -08:00
Michael Jumper
beb9e5c684 Refactor InputStream API. 2014-02-28 10:03:01 -08:00
Michael Jumper
4478e91c8a Add support for pipe instruction. 2014-02-27 22:26:53 -08:00
Michael Jumper
b8c4419bf5 Set default layer and cursor layer z-index so they display correctly. 2014-01-17 01:55:25 -08:00
Michael Jumper
8936faa6a5 Sort layer containers within flatten(). 2014-01-16 17:17:51 -08:00
Michael Jumper
f706e0febf Add new layers to default layer by default. 2014-01-16 11:12:38 -08:00
Michael Jumper
d6c9b8bf81 Fix recursive handling of layers in flatten(). 2014-01-16 10:50:56 -08:00
Michael Jumper
7a7901d18f Fix distort instruction (called transform() on wrong object). Store matrix. 2014-01-16 01:17:15 -08:00
Michael Jumper
e3c013804d Implement dispose() within LayerContainer. 2014-01-16 01:08:19 -08:00
Michael Jumper
773f64762a Implement shade(). 2014-01-15 22:01:05 -08:00
Michael Jumper
ad5ab18605 Add support for multiple layers to flatten(). Add move() to LayerContainer. Track properties of LayerContainer. 2014-01-15 22:01:05 -08:00
Michael Jumper
6c00d8428c Migrate to minify-maven-plugin and Google Closure Compiler. 2014-01-15 21:50:18 -08:00