GBC 1.00.51

GBC 1.00.51 was released on January 28, 2019.

This page provides information about new features, as well as changes you need to take care of when migrating your customization to this version.

New Action Panel for mobile: the Chromebar

A new design has been created to handle the main header bar (the blue header bar as seen in the default GBC) as an Action Panel / Toolbar like Genero Mobile. It is enabled by default for all devices.

You can choose to put actions or toolbar items into the Chromebar via Genero presentation style (.4st) attributes:

  • actionPanelPosition=chrome
  • ringMenuPosition=chrome
  • toolBarPosition=chrome

The presentation style attributes must be loaded before the form. Otherwise, the Chromebar will not be changed without reloading the form.

The Chromebar could also be enabled via new theme variables:

Variable Desktop default Mobile default
gbc-WindowWidget-defaultActionPanelPosition "right" "chrome"
gbc-WindowWidget-defaultRingMenuPosition "right" "chrome"
gbc-WindowWidget-defaultToolBarPosition "top" "chrome"

The design of the Chromebar matches the Material Design specification. It contains (in this order):

  • toolbar actions
  • action panel
  • GBC default actions (about, settings, bookmarks, and so on)

The GBC attempts to put as many actions as possible in the top bar. If there is not enough space, it will flow into a sidebar on the right of the view, accessible via the three-dots icon located at the top right of the interface.

Deprecated widgets

The GBC Chromebar replace the ApplicationHostMenuWidget widget, which is now deprecated.

In order to maintain compatibility with customized apps, the GBC adds a new theme variable:

Variable Comment
theme-legacy-topbar Use the old topbar (ApplicationHostMenuWidget) instead of the new GBC Chromebar

/!\ All widgets used in ApplicationHostMenuWidget will be removed in a future version.

Node.js version upgrade

GBC customization project is now compatible with the latest Node.js LTS version : 10.15.0 After upgrading Node.js, clean your environment:

rm -rf node_modules dist/customization dist/packages dist/doc dist/web
npm install -g grunt-cli
npm install