Commit Graph

6208 Commits

Author SHA1 Message Date
Michael Jumper
98abadaef5 GUACAMOLE-462: Do not attempt to retrieve recordings for records with null UUIDs. 2022-03-31 19:56:50 +00:00
Virtually Nick
54dc3d2b46 GUACAMOLE-462: Merge ensure compatibility with 1.x extensions is maintained. 2022-03-31 14:43:50 -04:00
Michael Jumper
c45bd9f7d3 GUACAMOLE-462: Ensure compatibility with 1.x extensions is maintained. 2022-03-31 18:07:29 +00:00
Michael Jumper
ba54a3aa18 GUACAMOLE-462: Request correct sort order from REST API when searching history. 2022-03-31 18:06:11 +00:00
Virtually Nick
ed7746e061 GUACAMOLE-462: Merge add in-app player for session recordings. 2022-03-08 19:06:27 -05:00
Michael Jumper
357e585edd GUACAMOLE-462: Declare variables with "const" where appropriate. 2022-03-03 22:25:02 +00:00
Michael Jumper
531711493e GUACAMOLE-462: Add in-app player for session recordings. 2022-03-03 22:25:02 +00:00
Michael Jumper
2428c7eb14 GUACAMOLE-462: Report size of files downloaded via the static HTTP tunnel. 2022-03-02 23:05:02 +00:00
Michael Jumper
389bbece05 GUACAMOLE-462: Store REST API history entry directly in ConnectionHistoryEntryWrapper, rather than duplicating properties. 2022-03-02 23:05:02 +00:00
Virtually Nick
000357fbc9 GUACAMOLE-1545: Merge ensure tunnel "onload" fires only for true state changes. 2022-03-02 16:27:50 -05:00
Virtually Nick
b256250720 GUACAMOLE-462: Merge add support for associating connection history with logs/recordings. 2022-03-02 16:27:00 -05:00
Virtually Nick
1ca9179f15 GUACAMOLE-462: Merge correct recording playback artifacts during seek(). 2022-03-02 16:25:33 -05:00
Michael Jumper
c3aad01be8 GUACAMOLE-462: Continue playback only after keyframe import.
If this is not done, asynchronous decoding of the keyframe via text()
may complete AFTER replay continues, effectively ignoring the keyframe,
leaving currentFrame untouched, and unnecessarily replaying
instructions.
2022-03-02 20:37:41 +00:00
Michael Jumper
c4b8a13968 GUACAMOLE-462: State of recording after resetting to a keyframe is the index of that keyframe, not necessarily the requested seek index.
Further instructions may need to be replayed after seeking to the
keyframe in order to reach the desired frame index.
2022-03-02 20:37:37 +00:00
Michael Jumper
27c7ab782f GUACAMOLE-462: Do not continue an outstanding state import if its corresponding seek has been cancelled. 2022-03-02 20:37:30 +00:00
Michael Jumper
d4899f102f GUACAMOLE-462: Clear out pending display operations and fully reset when importing state. 2022-03-02 20:37:25 +00:00
Michael Jumper
a27bd2694a GUACAMOLE-462: Allow pending display frames to be cancelled. 2022-03-02 20:37:18 +00:00
Michael Jumper
8ebe13d085 GUACAMOLE-1545: Ensure tunnel "onload" fires only for true state changes.
Previously, the state of the tunnel implementations was initialized to
"CONNECTING", which is incorrect and may result in (1) initial state
changes to "CONNECTING" not firing "onstatechange" and (2) the state
change to "CLOSED" incorrectly firing when initially connecting,
despite there not being an established connection.
2022-03-02 20:35:52 +00:00
Michael Jumper
26a9246e32 GUACAMOLE-462: Correct missing import for JavaDoc reference. 2022-02-28 00:30:30 +00:00
Michael Jumper
f83ee0c60b GUACAMOLE-462: Add ${HISTORY_PATH} convenience token for automatically placing recordings in the expected location. 2022-02-28 00:30:30 +00:00
Michael Jumper
a123eacab5 GUACAMOLE-462: Add extension for automatically associated session recordings, logs, etc. with history entries. 2022-02-28 00:30:30 +00:00
Michael Jumper
c386845f24 GUACAMOLE-462: Retrieve individual database history records directly (by ID). 2022-02-28 00:30:30 +00:00
Michael Jumper
449fcb828e GUACAMOLE-462: Allow individual records to be identified and retrieved directly. 2022-02-28 00:30:30 +00:00
Michael Jumper
6874f9c6bd GUACAMOLE-462: Add JavaScript objects for REST API representations of activity logs. 2022-02-28 00:30:30 +00:00
Michael Jumper
b80d8da1bb GUACAMOLE-462: Migrate user/connection record mappers to common base interface. 2022-02-28 00:30:30 +00:00
Michael Jumper
45ac06e0d0 GUACAMOLE-462: Create connection history records for in-progress connections.
Besides restoring historically-provided functionality, the ID generated
by the database for connection history records is needed to generate a
deterministic UUID that can be injected into connection configurations
with ${HISTORY_UUID}. Having such a token allows session recordings to
be given names that can be reliably matched with history records.
2022-02-28 00:30:30 +00:00
Michael Jumper
fb3aeb7628 GUACAMOLE-462: Ensure activity record UUID becomes available/updated if underlying model is assigned an ID. 2022-02-28 00:30:30 +00:00
Michael Jumper
d367add785 GUACAMOLE-462: Allow logs associated with history entries to be retrieved via REST. 2022-02-28 00:30:30 +00:00
Michael Jumper
0cca98d0b2 GUACAMOLE-462: Directly support associating session recordings with history entries at API level. 2022-02-28 00:30:30 +00:00
Michael Jumper
538ac5d934 GUACAMOLE-462: Include history record UUID as token. 2022-02-28 00:30:30 +00:00
Michael Jumper
32c7ab03ad GUACAMOLE-462: Generate consistent history record UUIDs based on database record IDs. 2022-02-28 00:30:30 +00:00
Michael Jumper
a5c58e221b GUACAMOLE-462: Add convenience classes for decorating ActivityRecordSets and their records. 2022-02-28 00:30:30 +00:00
Michael Jumper
9cbf4f045f GUACAMOLE-462: Add API-level support for associating data with history records. 2022-02-28 00:30:30 +00:00
Michael Jumper
dc98633897 GUACAMOLE-462: Separate Attributes interface into read-only and read/write variations. 2022-02-28 00:30:30 +00:00
Mike Jumper
402197863f GUACAMOLE-1539: Merge correction to Docker entrypoint auth sanity check. 2022-02-27 14:55:03 -08:00
Virtually Nick
4f86ebbb32 GUACAMOLE-896: Merge always flush instruction buffer upon end of static tunnel. 2022-02-23 14:03:46 -05:00
Michael Jumper
a096abd735 GUACAMOLE-896: Always flush instruction buffer upon end of static tunnel. 2022-02-23 09:28:48 -08:00
Romain Aviolat
57db729afb GUACAMOLE-1539: fix docker init logic when only auth-json is configured
This commit fixes an issue where the Docker init-script won't start if only the
auth-json extension is present.
2022-02-17 22:22:23 +01:00
Virtually Nick
50693de217 GUACAMOLE-1495: Merge add keymap for Polish keyboard layout for RDP 2022-02-17 14:22:19 -05:00
ClassicGOD
3e68e5885e GUACAMOLE-1495: add pl_pl_qwerty to translations
GUACAMOLE-1495: add pl_pl_qwerty to ca translation

GUACAMOLE-1495: add pl_pl_qwerty to cs translation

GUACAMOLE-1495: add pl_pl_qwerty to de translation

GUACAMOLE-1495: add pl_pl_qwerty to es translation

GUACAMOLE-1495: add pl_pl_qwerty to fr translation

GUACAMOLE-1495: add pl_pl_qwerty to it translation

GUACAMOLE-1495: add pl_pl_qwerty to ko translation

GUACAMOLE-1495: add pl_pl_qwerty to nl translation

GUACAMOLE-1495: add pl_pl_qwerty to no translation

GUACAMOLE-1495: add pl_pl_qwerty to pt translation

GUACAMOLE-1495: add pl_pl_qwerty to zh translation

GUACAMOLE-1495: correct typo in no.json
2022-02-17 19:45:51 +01:00
Virtually Nick
97c37d6681 GUACAMOLE-896: Merge leverage Blobs for storage of recording keyframes. 2022-02-14 13:12:25 -05:00
Michael Jumper
d0257122bb GUACAMOLE-896: Leverage Blobs for storage of recording keyframes. 2022-02-14 09:21:22 -08:00
Virtually Nick
e2af997967 GUACAMOLE-896: Merge allow playback of session recordings that cannot fit in memory. 2022-02-12 20:54:31 -05:00
Mike Jumper
f82b7e884c GUACAMOLE-1322: Merge Docker image support for SAML. 2022-02-11 17:23:43 -08:00
Michael Jumper
b8da13243d GUACAMOLE-896: Ensure "seeking" class not erroneously assigned if seek() finishes immediately. 2022-02-11 17:17:44 -08:00
Michael Jumper
2c8bc58402 GUACAMOLE-896: Avoid XHR-related memory limitations by using Fetch API.
The Fetch API allows us to read HTTP responses as true streams, without
building an in-memory string. We can the buffer things ourselves as we
see fit, including as a Blob that can dynamically leverage disk storage
for larger data.
2022-02-11 17:17:44 -08:00
Michael Jumper
f559f5ca70 GUACAMOLE-896: Add JavaScript UTF-8 parser implementation. 2022-02-11 17:17:44 -08:00
Michael Jumper
a97404b6ad GUACAMOLE-896: Update session recording player to support efficient reading from Blobs. 2022-02-11 17:09:57 -08:00
Jean-Benoit Paux
3e1c92a532 GUACAMOLE-1322: implement correct property requirement logic 2022-02-10 12:37:31 +01:00
Jean-Benoit Paux
eb58d37d00 GUACAMOLE-1322: fix SAML/OpenID typo and style 2022-02-10 12:37:30 +01:00