Mike Jumper
7f581a1536
GUACAMOLE-774: Merge dynamic loading of MD4 support (for RADIUS MSCHAPv1/2).
2019-08-12 18:08:36 -07:00
Michael Jumper
25c87922d5
Merge 1.1.0 changes back to master.
2019-08-12 10:15:49 -07:00
Mike Jumper
c643fe9610
GUACAMOLE-234: Merge fixes for LDAP resource leak regressions.
2019-08-12 10:15:13 -07:00
Mike Jumper
97d550de8e
GUACAMOLE-769: Merge cleanup of RADIUS challenge response interface.
2019-08-11 15:58:05 -07:00
Michael Jumper
6e439bf827
Merge 1.1.0 changes back to master.
2019-08-11 15:54:36 -07:00
Mike Jumper
2d86bbf5e6
GUACAMOLE-234: Merge migration from JLDAP to Apache Directory API.
2019-08-11 15:53:58 -07:00
Michael Jumper
4768f66a8b
GUACAMOLE-360: When joining an active connection, retrieve name and protocol from underlying connection.
2019-08-11 14:30:31 -07:00
Michael Jumper
04182391e9
GUACAMOLE-360: Add interface for connecting to active connections from "Active Sessions" tab.
2019-08-11 14:30:31 -07:00
Michael Jumper
1645516156
GUACAMOLE-360: Add TunnelRequestService support for joining active connections.
2019-08-11 14:30:31 -07:00
Michael Jumper
1c7242b800
GUACAMOLE-360: Refactor TunnelRequestService to handle any Connectable supported by TunnelRequestType.
2019-08-11 14:30:31 -07:00
Michael Jumper
403431bf92
GUACAMOLE-360: Add support for joining active connections to the database auth.
2019-08-11 14:30:31 -07:00
Michael Jumper
a59e20eb8d
GUACAMOLE-360: Allow connections to active connections at API level.
2019-08-10 17:19:29 -07:00
Michael Jumper
518e320ef9
GUACAMOLE-630: Correct header level within terminal color scheme field.
...
In typical usage of the color scheme field, the "Details" header will
be fourth level, not third. Form section headers will be third.
2019-08-08 21:30:44 -07:00
Michael Jumper
7c26dfadfa
GUACAMOLE-630: Add compatibility prefixes for flexbox layout properties.
2019-08-08 21:30:44 -07:00
Michael Jumper
32fd94d8d6
GUACAMOLE-630: Simplify terminal color scheme field structure and styling.
2019-08-08 21:30:44 -07:00
Michael Jumper
86d18b061b
GUACAMOLE-630: Revert expansion of getFieldHeader() functionality, as it is no longer needed.
...
This reverts commit d618bdcabf .
2019-08-08 21:30:44 -07:00
Michael Jumper
a4a0318f95
GUACAMOLE-630: Tolerate insufficient JavaScript features to run "Pickr" color picker (Internet Explorer).
2019-08-08 21:30:44 -07:00
Michael Jumper
ad92e86b0c
GUACAMOLE-630: Do not check spelling of color scheme source.
2019-08-08 21:30:44 -07:00
Michael Jumper
62108bf37c
GUACAMOLE-630: Remove padding added to color scheme headers when within Guacamole menu.
2019-08-08 21:30:44 -07:00
Michael Jumper
9191a9f9ea
GUACAMOLE-630: Always expand connection parameters to available width, not just within Guacamole menu.
2019-08-08 21:30:44 -07:00
Michael Jumper
54ce038e3d
GUACAMOLE-630: Allow raw contents of custom color scheme to be edited directly.
2019-08-08 21:30:44 -07:00
Michael Jumper
3ce2adbae6
GUACAMOLE-630: Preserve raw contents of color scheme if manually edited.
2019-08-08 21:30:44 -07:00
Michael Jumper
588cdcd97a
GUACAMOLE-630: Preserve the original color scheme string if no changes have been made.
2019-08-08 21:30:44 -07:00
Michael Jumper
038f5ba0c5
GUACAMOLE-630: Do not contain entire field nor entire header within <label>.
...
Enclosing the entire field within the <label> results in problems when
the field is large and when the field contains multiple interactive
elements. Clicking within interactive elements of a complex field
triggers the <label>, refocusing the first input element. If the field
is large, the <label> will contain empty space which also refocuses the
input field upon being clicked, despite appearing to be the background
of the page.
2019-08-08 21:30:44 -07:00
Michael Jumper
a1a8be6fe5
GUACAMOLE-630: Move color scheme headers within color buttons.
2019-08-08 21:30:44 -07:00
Michael Jumper
f9bfac9de2
GUACAMOLE-630: Include newlines within color scheme strings for readability.
2019-08-08 21:30:44 -07:00
Michael Jumper
02d3732c9c
GUACAMOLE-630: Switch to Pickr for color picker.
2019-08-08 21:30:44 -07:00
Michael Jumper
6936aef540
GUACAMOLE-630: Allow connection parameters within Guacamole menu to use full available width.
2019-08-08 21:00:06 -07:00
Michael Jumper
cbc25aac6f
GUACAMOLE-630: Add field type for terminal color schemes.
2019-08-08 21:00:06 -07:00
Michael Jumper
c41b6774fd
GUACAMOLE-630: Allow parameters received via "argv" streams to be edited within the Guacamole menu.
2019-08-08 20:31:16 -07:00
Michael Jumper
d618bdcabf
GUACAMOLE-630: Expand the getFieldHeader() utility function to accept arbitrary field names.
2019-08-07 19:58:54 -07:00
Michael Jumper
6ebb53477c
GUACAMOLE-623: Add Kubernetes protocol/parameter definitions and translations.
2019-08-03 13:58:50 -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
3f7d1346b3
GUACAMOLE-821: Use Japanese word for the Japanese language as the name of the Japanese translation.
2019-07-20 12:22:20 -07:00
Mike Jumper
0dee33bfe4
GUACAMOLE-821: Merge Japanese translation.
2019-07-19 23:40:10 -07:00
Mike Jumper
6af8782862
GUACAMOLE-846: Merge changes ensuring tunnel.uuid is initialized regardless of tunnel state.
2019-07-16 15:43:44 -07:00
Michael Jumper
c0d1ace629
GUACAMOLE-610: Add SSH/telnet parameter definitions for maximum scrollback size.
2019-07-16 12:11:21 -07:00
Mike Jumper
63fa8504b8
GUACAMOLE-837: Merge parameter definition and translation for Hungarian keyboard layout.
2019-07-11 21:21:53 -07:00
Michael Jumper
acaa422992
GUACAMOLE-302: Do not rely on $evalAsync() for assigning focus.
...
$evalAsync() does not necessarily guarantee execution within a timer;
the provided function may well execute after the current $digest loop
without control returning to the browser. If we need a timer to ensure
focus() behaves reliably, we should explicitly use one via $timeout.
2019-06-25 14:15:18 -07:00
Mike Jumper
e9ed4150b9
GUACAMOLE-302: Merge narrowing of guacFocus behavior to simply setting/removing focus.
...
Additionally reporting whether the affected element receives or loses focus causes trouble if the source of the original value is non-assignable. It also seems like it could cause unexpected side effects if usages of guacFocus expect to separate their intent (assigning a value via the expression watched by guacFocus) from the result of attempting to set/remove focus. If tracking of focus is needed, that would best be served by another directive dedicated solely to tracking.
2019-06-25 13:04:42 -07:00
Mike Jumper
1818b6a7ee
GUACAMOLE-302: Merge logic for automatically focusing relevant login fields.
2019-06-24 14:54:38 -07:00
Michael Jumper
ba60449786
GUACAMOLE-822: Correct retrieval of client identifier for connection groups.
...
Commit f92bf9c moved the getClientIdentifier() function to the
GroupListItem class, thus making the function available as
item.getClientIdentifier() within the connection or connection group
templates referenced by an instance of the guacGroupList directive.
This change correctly updated all but the connection group template for
the home screen, which was incorrectly updated to reference the
function as if it were directly on the scope. As such a function
doesn't exist, AngularJS didn't substitute any value, resulting in a
non-functional link.
2019-06-24 00:21:06 -07:00
Michael Jumper
00f59420e5
Merge 1.1.0 changes back to master.
2019-06-23 19:37:32 -07:00
Mike Jumper
f5aa986e63
GUACAMOLE-579: Merge support for retrieving user attributes CAS.
2019-06-23 19:20:14 -07:00
Michael Jumper
3d71f84f0a
GUACAMOLE-723: Display connection selection menu only if multiple choices are available.
2019-06-23 12:48:36 -07:00
Michael Jumper
40ee0d3775
GUACAMOLE-723: Consider entire connection hierarchy when determining whether only one connection is available.
2019-06-23 12:39:44 -07:00
Michael Jumper
47ed39fb33
GUACAMOLE-723: Prefer a wider connection selection menu, but no wider than the sidebar.
2019-06-22 18:54:17 -07:00
Michael Jumper
93dbf85a14
GUACAMOLE-723: Automatically close menus upon click unless explicitly marked as interactive.
2019-06-22 18:41:29 -07:00
Michael Jumper
0e33525d7b
GUACAMOLE-723: Use ellipsis for overflowing connection names within the connection selection menu.
2019-06-22 17:47:57 -07:00
Michael Jumper
5f1c70e737
Merge 1.1.0 changes back to master.
2019-06-17 18:38:29 -07:00
Mike Jumper
82ea1d6ff5
GUACAMOLE-354: Merge translation and definition for Swiss German keymap option.
2019-06-17 18:34:02 -07:00
Michael Jumper
e412742b59
GUACAMOLE-723: Apply ellipsis to all overflowing menu titles by default.
2019-06-15 18:49:32 -07:00
Michael Jumper
e351b355a5
GUACAMOLE-723: Apply ellipsis when connection name overflows available space, regardless of whether the connection selection menu is used.
2019-06-15 18:35:14 -07:00
Michael Jumper
a084ad41de
GUACAMOLE-723: Padding adjustment should be made only to the connection select menu.
2019-06-15 18:11:23 -07:00
Michael Jumper
18e1ec2240
GUACAMOLE-723: Apply ellipsis to portion of connection name that overflows connection selection menu title.
2019-06-15 18:08:40 -07:00
Michael Jumper
4f41890e2b
GUACAMOLE-723: Separate connection selection menu to own CSS class.
2019-06-15 18:05:03 -07:00
Michael Jumper
48ce083ad7
GUACAMOLE-815: Remove duplicated "timezone" field definitions and translations.
2019-06-15 14:00:32 -07:00
Michael Jumper
78977ae4fc
GUACAMOLE-422: Use the same display mechanism and structure (the guacForm directive) for all locale preferences, not just the time zone.
2019-06-15 13:43:28 -07:00
Michael Jumper
ec963dd036
GUACAMOLE-422: Define field type which represents the ID of any supported language.
2019-06-15 13:40:16 -07:00
Michael Jumper
092657aa79
GUACAMOLE-422: Replace non-short-circuit logic in null check (&) with proper short-circuit logic (&&).
...
Checking `timezone != null & !timezone.isEmpty()` will result in a
`NullPointerException` when `timezone` is null, as the `&` ensures
`timezone.isEmpty()` will run in all cases.
2019-06-08 13:44:45 -07:00
Michael Jumper
1e676559a5
GUACAMOLE-422: Correct toString() for GuacamoleProtocolVersion (must be manually implemented after migrating away from enum). Add unit test for verifying toString().
2019-06-08 13:37:28 -07:00
Michael Jumper
84bbbc4fa0
GUACAMOLE-422: Add unit test for verifying GuacamoleProtocolVersion.
2019-06-08 13:23:47 -07:00
Michael Jumper
df9a0b1662
GUACAMOLE-422: Implement equals() and hashCode() for GuacamoleProtocolVersion.
2019-06-08 12:55:17 -07:00
Michael Jumper
dc66f84d71
GUACAMOLE-422: Clarify behavior of atLeast().
2019-06-08 12:51:08 -07:00
Michael Jumper
8aff7b6f5b
GUACAMOLE-422: Correct logic error in atLeast() - this version should be compared against otherVersion.
2019-06-08 12:48:01 -07:00
Michael Jumper
9d1b264417
GUACAMOLE-422: Clarify meaning of protocol capabilities.
2019-06-08 12:44:00 -07:00
Michael Jumper
a247ec1edc
GUACAMOLE-422: Add getter for retrieving the protocol version negotiated by ConfiguredGuacamoleSocket.
2019-06-08 12:34:34 -07:00
Michael Jumper
001918e2d7
GUACAMOLE-422: Allow arbitrary protocol versions to be represented. Remove API-level assumption that protocol capabilities will have a minimum base version and remain present from that point forward.
2019-06-08 12:34:03 -07:00
Michael Jumper
4df22ce67b
Merge 1.1.0 changes back to master.
2019-06-07 09:01:40 -07:00
Mike Jumper
f2ae848b1b
GUACAMOLE-422: Merge support for forwarding client timezone at Guacamole protocol level.
2019-06-07 08:53:49 -07:00
Michael Jumper
1c1fac700c
GUACAMOLE-807: Correct handling of parameter tokens within LDAP.
...
Parameter tokens are intended to be interpreted by the connections
stored within LDAP. This was previously done through explicitly using a
TokenFilter and the StandardTokens class, however usage of
StandardTokens is now deprecated and the values of tokens to be applied
are now expected to be received through connect(). Usage of
StandardTokens was removed from LDAP with commit 1210d56 , but this is
insufficient. An additional parameter must also be provided to the
SimpleConnection constructor to enable its automatic token handling
behavior.
2019-06-07 08:39:30 -07:00
Michael Jumper
fe7ef19851
GUACAMOLE-805: Only reformat a URL fragment that appears to be from OpenID Connect if the fragment is not already in a format consumable by AngularJS ("#?..." or "#/?...").
2019-06-02 17:01:49 -07:00
Michael Jumper
21f1ee6ac3
GUACAMOLE-805: Handle OpenID Connect "id_token" parameter regardless of location within URL fragment.
2019-06-02 16:10:22 -07:00
Michael Jumper
1a57088bfb
GUACAMOLE-742: Use "data-disabled" instead of "disabled" for directive attributes.
...
Internet Explorer 11 interprets the "disabled" attribute on all HTML
elements, even unknown elements like AngularJS directives, disabling any
input fields that end up on the DOM tree within those elements. This
breaks the login form.
The alternative "data-disabled" attribute form supported by AngularJS
allows things to work without interference.
2019-05-16 14:21:47 -07:00
Michael Jumper
fb34512833
GUACAMOLE-422: Use TIMEZONE rather than TEXT fields for RDP/SSH "timezone" parameter.
...
It has been confirmed that the TIMEZONE field does indeed represent IANA
time zone database IDs, as required by the "timezone" parameter.
2019-05-13 18:26:01 -07:00
Michael Jumper
5be810ec6b
GUACAMOLE-422: Remove "Canada/East-Saskatchewan" time zone, which was removed from the IANA database in release 2017c of the database.
...
From http://mm.icann.org/pipermail/tz-announce/2017-October/000047.html :
>
> Remove Canada/East-Saskatchewan from the 'backward' file, as it
> exceeded the 14-character limit and was an unused misnomer anyway.
>
2019-05-13 18:24:37 -07:00
Michael Jumper
803ff27468
GUACAMOLE-422: Update TIMEZONE field documentation to reference IANA time zone database.
2019-05-13 18:21:38 -07:00
Michael Jumper
212a39b025
GUACAMOLE-422: Add definitions and translations for the RDP/SSH "timezone" parameter.
2019-05-09 18:39:18 -07:00
Michael Jumper
b5c5fa39ca
GUACAMOLE-649: Add definition and translation for SSH "locale" parameter.
2019-05-09 18:25:23 -07:00
Michael Jumper
1623f55191
Merge 1.1.0 changes back to master.
2019-05-05 19:39:21 -07:00
Mike Jumper
4d1e0f18dd
GUACAMOLE-696: Merge changes taking database groups into account with respect to database objects when user is otherwise external to the database.
2019-05-05 19:36:37 -07:00
Michael Jumper
91f6bf23c5
GUACAMOLE-742: Reorganize login dialog CSS hierarchically.
2019-04-27 17:43:07 -07:00
Michael Jumper
6a9981c160
GUACAMOLE-742: Remove unnecessary element specificity of login CSS selectors.
2019-04-27 17:41:42 -07:00
Michael Jumper
81872f5718
GUACAMOLE-742: Fade in overall login UI, not just login dialog.
...
Placing the fade animation on the login dialog (which also handles the
error shake-head animation) results in the dialog fading in each time
the login process changes state. It really should only fade when the
overall login interface initially appears.
2019-04-27 17:39:41 -07:00
Michael Jumper
65995e3f5a
GUACAMOLE-783: Ensure GET requests to the REST API are not serviced from the cache in Internet Explorer.
...
IE 11 appears to ignore the `Cache-Control` header on requests despite
RFC 7234 and does not invalidate cache after changes are made to a
resource via PUT/DELETE/POST despite RFC 2616. It _does_ behave
correctly when the `Pragma` header is included.
This behavior is not observed for Chrome/Firefox which both correctly
honor the `Cache-Control` header and correctly invalidate cache after
changes.
2019-04-27 17:02:18 -07:00
Michael Jumper
583c82a45c
GUACAMOLE-742: Disable login form after credentials have been submitted.
2019-04-27 16:56:11 -07:00
Michael Jumper
59fdc80e9f
GUACAMOLE-742: Provide "disabled" attribute for forms and fields.
2019-04-27 16:52:37 -07:00
Michael Jumper
61b6664eac
GUACAMOLE-715: Include all provided effective user groups that exist within the database in results of effective groups query, regardless of whether the user is declared as a member of those groups within the database.
...
While this query is generally functioning as described above for all
supported databases, it is not functioning properly for the
non-recursive variant of the MySQL/MariaDB query. This change corrects
that behavior.
2019-04-21 12:02:25 -07:00
Michael Jumper
3ac3c1dc4f
Merge 1.1.0 changes back to master.
2019-04-20 10:50:53 -07:00
Michael Jumper
ea1b10e9d1
Merge 1.1.0 changes back to master.
2019-04-09 11:11:50 -07:00
Michael Jumper
319c40c906
GUACAMOLE-723: Ensure thumbnail is always confined within designated space.
2019-04-03 11:20:45 -07:00
Michael Jumper
b5bfc680e7
GUACAMOLE-723: Size panel thumbnails vertically, not horizontally.
2019-04-02 17:56:48 -07:00
Michael Jumper
cbd357c683
GUACAMOLE-723: Allow connections to be closed/removed directly from the panel.
2019-04-02 17:37:57 -07:00
Michael Jumper
d7dfd08add
GUACAMOLE-723: Display warning icon when background connection disconnects due to an error.
2019-04-02 11:14:23 -07:00
Michael Jumper
378cae57a7
GUACAMOLE-723: Sort connections in panel by last use.
2019-04-02 09:20:45 -07:00
Michael Jumper
19da6e32a2
GUACAMOLE-723: Allow connections in Guacamole menu dropdown to be filtered.
2019-04-02 08:44:45 -07:00
Michael Jumper
7fddb26202
GUACAMOLE-723: Limit size of connections in menu to 10 items. Restore padding around list and pager.
2019-04-02 07:48:57 -07:00
Michael Jumper
bd474e9761
GUACAMOLE-723: Allow mouse interaction with the contents of a menu without closing the menu.
2019-04-02 07:47:40 -07:00
Michael Jumper
dc012e4226
GUACAMOLE-723: Hide scrollbar and thumbnails when client panel is hidden.
2019-03-25 17:02:36 -07:00
Michael Jumper
07a967bb6b
GUACAMOLE-723: Ensure client panel renders above status notifications.
2019-03-25 17:02:32 -07:00