Added
- Added an error indicator for invalid custom tile URLs in the Map panel’s settings
- Added support for images encoded in
rgba8
in the Image panel
- Added a
callService
method to the custom panel extension API
Changed
- Cleaned up topic dropdown and refactored the zoom button for visual consistency in the Image panel
- Updated Node Playground type definitions to include newer Foxglove message schemas from @foxglove/schemas
- Updated ROS 2 native connection's type definitions to include newer Foxglove message schemas from @foxglove/schemas
- Sorted the annotation topics in the Image panel so that camera topics are at the top of the list
- Removed the help icon from the panel toolbar to conserve toolbar space
- Reorganized panel toolbar buttons for improved UX
- Improved performance of the Layouts sidebar with more caching
- Changed sample data exploration to serve the demo bag from our CDN
- Encourage users to get rid of any deprecated Welcome panels in their layouts
- Made it possible to rename node labels in the sidebar's settings UI
- Moved the topic dropdown from the Log panel's toolbar into the sidebar's settings UI and removed the item count from the toolbar
- Moved the topic selector in the Diagnostics – Summary panel into the sidebar’s settings UI
- Moved the topic selector in the Diagnostics – Detail panel into the sidebar’s settings UI
- Hid the settings cog icon in the panel toolbar for panels without settings
- Allowed using
http://localhost
for custom map tile URLs in the Map panel when using the desktop app
Fixed
- Fixed autocomplete logic for arrays in message path syntax
- Fixed the Raw Message panel from crashing when a user hovers over (u)int64 values within object array fields on messages
- Fixed crash when viewing data with types that reference themselves in the message path input component
- Fixed the Image panel’s zoom to fit and zoom to fill features
- Fixed an issue with keyboard shortcuts in the Image panel
- Fixed desktop app so that clicking "New Window" correctly opens a new app window
Changed
- Improved performance for the Image panel’s zoom functionality
- Disabled the "Experimental bag player" feature by default
Fixed
- Fixed ability to click a marker to view details in the Image panel
- Fixed a crash when parsing Foxglove JSON schemas that contain enums
- Fixed an erroneous empty state in the Image panel
Added
- Added editable title to Plot panel toolbar
Changed
- Increased padding on panel toolbar icons
Added
- Added animation effect when panels enter or exit fullscreen mode
Changed
- Cleaned up extension styling in the app sidebar
- Surfaced an error in the settings sidebar when the Plot panel's "Y min" is greater than its "Y max"
Fixed
- Fixed handling of Protobuf messages containing
google.protobuf.Timestamp
and google.protobuf.Duration
- Fixed an incorrect error message when an MCAP file contains messages that can't be decoded
- Fixed the 3D panel's pose tool to publish a pose based on the user's first click (start of pose arrow), rather than the second (end of pose arrow)
Changed
- Removed the default folder and file Icons in the settings sidebar
Fixed
- Fixed the issue of redundant toolbars on extension panels
- Fixed y-axis min and max settings for the Plot panel
- Fixed a crash when trying to edit Teleop panel settings
Changed
- Moved the Image panel's topic and marker selection into the settings sidebar
- Refactored panels to have a persistent toolbar with consistent height
- Changed the settings sidebar to display field-level errors
- Renamed the Diagnostics – Summary and Diagnostics – Detail panels to reflect that they are ROS-specific
- Removed the Studio – Internals panel
Fixed
- Hovering over buttons with tooltips properly displays the tooltip, without the button title
- Fixed support for ROS 2
rcl_interfaces/msg/Log
messages in the Log panel
Added
- Add Custom map tile layer option to Map panel
- Add new message expansion options in the Raw Messages panel
Changed
- Updated Tab panel tabs to look more like tabs
- Moved ordering messages by
header.stamp
for playback behind an experimental flag
Fixed
- Fixed panel dragging
- Fixed sample data source creating many duplicate layouts
Added
- Added support for rgba color values in the panel settings sidebar
- Added ability to toggle the visibility of nodes in the panel settings sidebar
- Added a 2-point gradient color picker to the panel settings sidebar
Changed
- Formatted the x-axis tick marks in the Plot panel for consistency, to reduce jitter for live-updating data
- Replaced the inline help buttons on panel settings fields with tooltips
- Adjusted light mode background color hierarchy to be more consistent with dark mode styles
- Moved the Rosbridge connection option to the top of the list in the Data source dialog
- Moved the actions buttons in the panel settings sidebar into an action menu
- Improved the link-sharing experience by always attempting to remotely load a URL’s
layoutId
from a signed in user’s account
Fixed
- Fixed app from freezing when seeking to the end of a dataset time range
- Fixed panels so that they no longer flash to an empty state when seeking or scrubbing
- Fixed ROS 2 native subscriptions to large message topics
- Fixed a bug where ROS 1 C++ subscribers were unable to connect to topics published by the app
- Fixed a
CameraInfo
error in the Image panel when the “Transform markers” setting is enabled
Changed
- Converted Plot panel settings to the new settings sidebar
- Converted 3D panel to new settings sidebar
- Printed datatype along with topic in errors for ROS2 connections
- Improved message path autocomplete suggestions
- Showed panel settings for single panel layouts when opening the settings sidebar
Fixed
- Fixed settings toggle interaction
- Fixed Foxglove publishing for ROS1 C++ subscribers
- Fixed the docs link in the open dialog
- Fixed a crash when trying to visualize a ROS2 topic with a missing message definition
- Fixed handling of the
layoutId
URL query param
- Improved React rendering performance
Added
- Display message counts and frequencies for live data sources' subscribed topics in the Data source sidebar
- Implemented a new settings interface for the Map panel
- Implemented a new settings interface for the Image panel
- Implemented a new settings interface for the Publish panel
- Implemented a new settings interface for the Variable Slider panel
- Implemented a new settings interface for the Diagnostics – Summary panel
- Implemented a new settings interface for the Node Playground panel
- Implemented a new settings interface for the 3D panel’s camera settings
Changed
- Allow users to name their nodes in the Node Playground panel without a
/studio_node/
prefix
- Display useful errors for invalid URL formats under the relevant field in the Data source dialog
- Improved bag player to backfill the last message on every topic on seek
Fixed
- Support
NaN
and Infinity
rosparam
values when using a native ROS 1 connection
- Keep the user’s cursor in the proper location while editing node names in the Node Playground panel
- Fixed an issue where creating too many layouts caused the web app to run out of storage space
- Fixed an issue where errors while loading Foxglove data could lead to the app repeatedly requesting the same data
- Fixed the missing marker images in the GeoJSON layers on the Map panel