JourneyApps Product Team

Runtime 4.83.9

AUTHOR: JourneyApps Product Team

We are excited to announce that runtime version 4.83.9 stable has been released.

Version 4.83 introduces a new way to customize the styling and default behavior of UI components using extendable themes and component configuration. Additionally, it includes many small fixes and improvements.

You can use this version of the runtime by selecting it from the list of stable runtime versions under App Settings/Runtime Version in OXIDE.



  • An error that occurred when an app booted while offline.



  • Internal updates to the capture-coordinates and display-coordinates components.


This version contains the following update from runtime version 4.85.6:

  • Added journey.env which returns information about the deployment and backend that a user is currently enrolled in. Please note that journey.env has replaced journey.server. See its details here.



  • An issue in context-menu, where the show-if/hide-if attributes did not show or hide the component.

  • An issue in display-coordinates, where the color and icon-color attributes for a marker or marker-query did not update the colors as specified.



  • An issue with edit-typeahead scrolling in dialogs on iOS devices.



  • A regression in list where long words would wrap incorrectly, making them illegible.



  • A regression where a downloaded file from the display-file and capture-file components no longer immediately opened after the download completed.



  • An issue with an object-table's typeahead cell type, where background (default) colors were missing.

  • A bug with the list component, where its heading would wrap to a new line mid-word.

  • A bug with the button-group component, where buttons were not referencing the default style, color, etc. attributes correctly.

  • An issue with the toZPL() function when using the capture-signature component, causing it to return "No path in SVG".



  • Support for password protected PDFs in the file preview within the display-file  and capture-file components.


  • An issue where a HTML component's height was no longer automatically calculated when no height was specified.

  • A bug with the capture-coordinates component that caused markers to break.

  • A bug with the capture-coordinates component that caused and on-location to fire when zooming.

  • A bug resulting in no longer being able to update the time within the datetime-input component on Android and iOS.

  • A "TypeError: Cannot read properties of undefined" error that occurred in certain cases when a view initializes after an app update.



  • We have added more ways for you to customize the look and feel of apps using extendable themes. Themes can be applied across the entire app, on specific views, or specific components can also be styled. In addition, you can specify default values for UI component fields (e.g. whether controls should be visible by default on object-table). You can read more in the documentation.

  • single-choice-radio and multiple-choice-select options can now be displayed in a row using the mode="row" attributes.

  • text-input component has a clear() method to programmatically clear the inputted value. Usage: component.textInput({id:"name"}).clear()


  • Underlying improvements to the database and sync system which results in a limitation when downgrading from runtime version 4.83.0+. Please see further details in this developer community post.

  • The first input component that fails validation will now scroll into view.

  • The initial placement of very wide or high images when users view them full screen.

  • The 1000-parameter limit was removed from the in query operator. E.g. DB.myobject.where('id in ?', myLargeArray). This prevents a "too many SQL variables" error.

  • Performance improvements when using .include() on queries.

  • Apps with runtime version 4.83.0+ will always have the JSON1 query engine enabled.


  • Clicking Cancel on the Leave App dialog no longer signs out the user.

  • Long words wrap correctly on info-table and list components.

  • Long titles wrap correctly in the action-sheet component.

  • The app no longer goes into a broken state when users repeatedly tap / click on the hardware back button (Android).

  • South African ID number validation is now fixed for 29 February birth dates.

  • The context menu will now correctly show indicators when defined in the app.xml.

  • Disabled buttons in a split button-group now trigger the configured disabled-message.

  • object-table now renders all objects in an array, even if there are duplicate objects.

  • on-change, on-scan and other on- actions now show a loading spinner until the triggered functions stop executing.

  • The language selector is legible in dark mode.

  • A regression that affected the default-sorting behavior in object-tables

  • A bug that resulted in the following error: Uncaught TypeError: Class constructor JourneyError cannot be invoked without 'new'.

  • A bug that resulted in a "this is undefined" error when performing an action via an on-change function.

  • An issue with the toggle component on mobile devices where touch events were not always handled correctly.

Powered by LaunchNotes