Widgets
Widgets are additional layout objects that can provide 'at-a-glance' views and additional functionality to just application icons.
Last updated
Widgets are additional layout objects that can provide 'at-a-glance' views and additional functionality to just application icons.
Last updated
The BlueFletch Launcher configuration allows placement of different kinds of widgets on the home screen for the user. Like applications and shortcuts, these can configured to be role-based, such that front-line workers may see widgets related to pending or pickup orders, while managers may see high level metrics about the current store operations.
Unlike other Launchers, the BlueFletch Launcher allows the administrator to pre-define the widget configuration and not have to rely on the user to place the widgets themselves.
Widgets are just another layout object to be included in the layouts
section of the launcher configuration file. Each widget layout object consists of the following:
widgetId
string a unique string identifier for this widget. This must be unique across all widgets in the configuration file, and is also used to send data updates to a widget.
widgetType
string describes the type of widget to render. Current available values are: app, list, text, login, session, toolbar, bannerLarge, webview
columnSpan
number the number of columns this widget will occupy. This is based on the number of columns specified in the layoutSettings
configuration.
rowSpan
number the number of rows this widget will occupy. Each row is one icon high.
widgetParams
object this is a JSON object that contains additional parameters to configure the widget. This object changes based on the widgetType
specified above. Available starting in Launcher version 3.22.x.
widgetParams
values also support configuration and session replacement variables as defined in this link.
Launcher has the ability to host different kinds of widgets. The Launcher can host native application widgets (e.g. widgets that are built into an application). Launcher has other pre-built widgets designed specifically for shared device use.
These are widgets built into applications that follow the App Widget SDK guidelines from Android as defined in https://developer.android.com/develop/ui/views/appwidgets/overview.
To configure an application widget, use the widgetType = app
and define the widgetParams
as follows:
The widgetParams
object for type app
consists of the following:
package
string the package name of the application containing the widget.
componentName
string (optional) the full component name of the widget inside the application. This is not required if there is only one widget in the application. If an application has multiple available widgets, specify the full component name here, otherwise the Launcher will use the first enumerated widget.
Below is an example of the clock widget, specifying the analog clock widget provider (instead of the digital clock):
These are widgets that are built into the Launcher to allow you to take advantage of widgets without requiring additional native development of widgets into your applications, with several that can be updated by a simple broadcast intent. The following custom Launcher widgets are currently available:
This widget can be used to display text or a simple value/text combination or an icon/text combination, and can run a custom intent when the widget is tapped.
To display a simple text in a widget, specify the title in the widget params:
To display a simple value/text in a widget, specify the value in the widget params as well as the command to launch the BOPIS application when tapped:
The widgetParams
object for type text
consists of the following:
defaultTitle
string the text to display at the bottom of the widget.
defaultValue
string (optional) if specified, will display the value in large font above the widget. if not specified or blank, the value will be hidden.
icon
string (optional) URL, file path or asset name of the icon image to display. If specified will display the icon above the title. If not specified or blank, the icon will be hidden.
iconSize
string (optional) Size in dp for the icon, if specified. Note that the icon shall always be rendered in a square container.
onItemClick
Note that you can use custom replacement strings for each of the widget params.
This widget allows you to display a webpage directly on the Launcher home screen.
You can display a webview widget using the configuration below, by specifying the type webview
The widgetParams
object for type webview
consists of the following:
url
string The URL of the webpage to be displayed in the webview
allowInteraction
boolean If set to true, will allow the user to interact with the page like a normal browser, e.g. scroll and tap within the page. Default is false
.
onItemClick
object A custom intent object that will be triggered when the user taps on the widget. If using this function, allowInteractions
must be set to false.
This widget replaces the current fixed header with a widget and comes standard with your default Launcher installation. Beginning Launcher 3.22.x, you can now specify a widget as the header for the open zone by defining a widget within the "header"
array at the base level of the launcher configuration.
This is configured in Launcher using the following widget configuration, which includes criteria to check that there is no user session:
The widgetParams
object for type bannerLarge
consists of the following:
bannerImage
string A URL, filepath or asset for the image logo
bannerText
string (optional) The text to display between the logo and the Login button. You can use replacement variables here to be able to display dynamic information like site, serial number, etc.
useDarkText
boolean If set to true
, will render the bannerText in dark text to contrast a white wallpaper, otherwise will render the bannerText in light text.
buttonColor
string Hexidecimal representation of a color for the button. The button text will automatically change color based on the appropriate contrast level.
backgroundColor
string Hexadecimal representation of the background. To change the background opacity, add the alpha value as the first two values in the hex string, e.g. #50FFFFFF
isAuthPresent
boolean If true
, the login button is present in the header; if false
, login button is hidden. By using a launcherState variable, Launcher will dynamically set the boolean value based on installation status of the Auth app. Introduced in Launcher version 3.24.11.
This widget can display your current session information, along with a button to be able to log out or exit your current session. You are able to specify one headline and two additional sub-text under the headline.
This widget can be configured in Launcher using criteria to check for a current user session, and is represented by the following widget configuration:
object A custom intent object that will be triggered when the user taps on the widget. For more information on a configuring a custom intent, refer to this .
For more information on a configuring a custom intent, refer to this .