shinyMobile 0.9.1 Unreleased

This release only fixes an issue with Shiny 1.7.0 with a failing unit test. Thanks @schloerke

shinyMobile 0.9.0 2021-07-22

This release also fixes an issue with R CMD check and htmltools

Breaking change

Major change

Minor change

  • More security for embedded apps.
  • Added shinyMobile hands on slides in Getting Started vignette.
  • f7Dialog() has a fixed height of 300px and vertical overflow to avoid issues.
  • Add ... to f7SmartSelect().
  • Add options to f7SearchBar() to provide more configuration. Fixes #47: thanks @rodrigoheck.
  • Add valueText param for f7Gauge(). Fixes #84: thanks @tanho63.
  • Reworked f7Gauge() JS code (no user impact).
  • Rework widget JS code base (no user impact).

Bug fixes

shinyMobile 0.8.0 2021-01-11

This release is to addresses the following reverse dependency issue with shiny. Moreover, it also starts the road to v1.0.0 (later this year).

Soft Deprecations

Breaking changes







  • f7Link(): external has been removed from (much simpler), src becomes href
  • f7Button(): src becomes href


Major changes

Minor changes

  • app instance accessible from anywhere is JS code
  • New parameter for f7PhotoBrowser()
  • Add choices to updateF7SmartSelect(): thanks @Edireito
  • Add disconnect toast if shiny:disconnect occurs. Gives ability to reload or reconnect

Bug fixes

shinyMobile 0.7.0 2020-06-17


  • disable backdrop in f7Searchbar() since it messes up with tabbar navigation. This does not have any impact on user experience. In a future release of shinyMobile, f7Searchbar() will have input binding associated as well as more parameters for configuration

Breaking changes

  • f7SmartSelect(): type param becomes openIn to align with other inputs
  • rework f7Messages(): messages are updated on the server side with f7AddMessages(). New f7MessageBar() to send messages from the server side.
  • f7ActionSheet(): to access the currently selected button, use input$[sheet_id]_button. This is to make action sheets compatible with shiny modules. Moreover, the buttons provided must be included in a list (not in a dataframe)
  • f7Sheet() is still inserted in the UI side but can be triggered either on the server side in combination with updateF7Sheet() (see example) or on the UI side. Overall, this improves flexibility since user may choose any trigger element. In practice, any element having data-sheet pointing to the sheet id as well as the “sheet-open” css class may open it, instead of having a default trigger contained in the sheet. A use case may be to open a sheet in the tabbar (the trigger would be a f7TabLink() that is a special button styled for the tabbar)
  • All update method for inputs : argument session is now optional and has been moved to the last position in function call
  • f7AutoComplete(): type becomes openIn to align with the framework7 documentation
  • remove parameter fill from f7Icon() (not used)
  • Rewrite f7Popup(). It has now an input associated giving the popup state (opened or closed) as well as new parameters: backdrop, closeByBackdropClick, closeOnEscape, animate and swipeToClose. label parameters has been removed. To create an f7Popup() put the f7Popup() tag in you UI. On the server side call f7TogglePopup(). See documentation for a detailed example. Thanks @pasahe
  • f7NavbarHide() renamed to f7HideNavbar() for consistancy
  • f7NavbarShow() renamed to f7ShowNavbar() for consistancy
  • In f7Gauge() valueText was removed. It does not make sense that the value can be accidentally different from the text displayed. valueText is then an internal parameter.
  • In f7DatePicker(): min becomes minDate, max becomes maxDate and format becomes dateFormat
  • remove maximizable parameter from f7Appbar()

Major changes

  • new input$shinyInfo and input$lastInputChanged (see shinyMobile tools vignette for more details)
  • f7SmartSelect() has input binding as well as an update function updateF7SmartSelect()
  • new f7VirtualList(), f7VirtualListItem(), updateF7VirtualList(): high performance list with caching system -> faster rendering (up to 10x faster than f7List()). Ability to add item(s), remove item(s), move item, filter items, …
  • new messagebar parameter to f7TabLayout(). This allows to use the f7Messagebar() in a tabs layout configuration.
  • new f7ValidateInput() function to validate input from the server side (similar to shinyFeedback but internal to shinyMobile and without dependencies)
  • new f7Login() and updateF7Login() feature to provide UI boilerplates for authentication
  • f7Tabs() may be used as standalone components with the style argument (segmented or strong). toolbar has the default behavior.
  • update f7Icon() and icons dependencies. thanks @pvictor
  • new updateF7DatePicker(): thanks @pvictor
  • add input binding to f7Fabs() to get the status of the container
  • add updateF7Button() and updateF7Fabs()
  • new pullToRefresh parameter to f7Init(). Pull the screen from top to bottom fires input$ptr which becomes TRUE. When the pull to refresh event is finished, input$ptr is NULL. Useful to trigger events in an observeEvent
  • add new updateF7Select(): thanks @Seyphaton for the suggestion
  • add f7TogglePopup() to close/open a f7Popup(). Thanks @pasahe
  • add preview_mobile(): function that previews your app in a seleted range of devices (iphone, samsung, htc, …)
  • redesign the way inputs options are passed from R to Javascript. This does not have impact on the user side but improves security and code quality

Minor changes

Bug fix

shinyMobile 0.1.0 2019-11-30

  • Added a file to track changes to the package.