Glue42 Enterprise is now io.Connect Desktop! The new documentation site for all interop.io products is located at docs.interop.io.

Changelog

Glue42 Desktop

Release date: 25.06.2021

Components Version
Electron 11.4.8
Chromium 87.0.4280.141
Node.js 12.18.3

New Features

Global Search - a search bar that is globally accessible (through a configurable keyboard shortcut) allowing users to search for system (apps, Layouts, Workspaces) or custom entities made available by custom search providers (e.g., Clients, Instruments, etc.).

Global Search

Launchpad

Launchpad - a new option for a Glue42 Toolbar. The Launchpad is a toolbar in the style of the Windows Start menu and is hidden by default. Users can open it via a configurable shortcut.

Launchpad

Glue42 Server

Glue42 Server - a server-side app that provides data to Glue42 (apps, Layouts, app preferences) and allows monitoring and interacting with users running Glue42. It also includes an Admin UI that helps managing the data stored in the Glue42 Server easier.

Global Protocol Handler

Global Protocol Handler - Glue42 will now register itself as the default handler for the glue42:// protocol, meaning any link that starts with this scheme will be opened in Glue42. This allows users or apps to create links that will execute different Glue42 actions (e.g., starting apps, restoring Layouts, etc.) when clicked. Those links can be shared between users in chat, emails, web pages.

// Clicking on this link will open google.com in a Glue42 Window.
glue42://url/https://google.com

// Clicking on this link will start the "Client List" app in Glue42.
glue42://app/clientlist

// Clicking on this link will restore the "Start of Day" Workspace in Glue42.
glue42://workspace/StartOfDay

Citrix Apps

Experimental support for Citrix Virtual Apps. Citrix apps can participate in the Glue42 environment as first-class citizens and use all Glue42 functionalities like Interop, Channels, etc. For more details, see also how to configure a Citrix app and modify the system-wide Citrix configuration.

Workspaces

New Workspaces functionalities and API features.

Hibernation

Hibernate and resume Workspaces based on configurable rules to save system resources and improve performance.

Loading Strategies

Load apps in Workspaces using different strategies to improve performance and UX.

Lock Settings

Use Lock Settings for a Workspace or some of its elements to prevent the users from modifying them.

Size Constraints

Set constraints for Workspace elements and create pinned elements - elements that will preserve their width (columns) or height (rows) when the user resizes the Workspace.

App Preferences

Added a JavaScript App Preferences API - manage (store and retrieve) programmatically user preferences for apps.

JavaScript Managing App Definitions at Runtime

Manage app definitions at runtime - import, export, remove or clear app definitions from an in-memory store at runtime.

Java Multi Window Support

Added multi window support for Java apps.

Java Intents API

Added a Java Intents API.

.NET Intents API

Added a .NET Intents API.

.NET Pub/Sub API

Added a .NET Pub/Sub API.

App Shortcut

Added a "shortcut" top-level key to the app configuration that you can use to define a keyboard shortcut for your app. When the user presses the shortcut, the app will start or will be focused.

{
    "name": "client-list",
    "type": "window",
    "shortcut": "ctrl+alt+space"
}

Themes

Added an "icon" property to the "group" key in the Themes configuration file which can be used for specifying a taskbar icon for Glue42 Window groups.

{
    "group": {
        "icon": "custom-group-icon.ico"
    }
}

Improvements and Bug Fixes

  • Upgraded to Electron 11 (Chromium 87).

  • Glue42 Java published to Maven Central Repository.

  • The Channel Selector can now be set as read-only through configuration to prevent the users from changing the selected Channel manually, while the app can still join or leave Channels programmatically.

  • Authentication improvements - more options added to the login page: ability to pass authentication tokens that will be used when fetching data from REST services.