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
Added
- Added the concept of optional fields to Foxglove datatype definitions
- Allow users to load URDF files using
.obj
meshes into the URDF panel
Changed
- Respect the URL's
layoutId
query parameter in the web app, even if no other parameters are specified
- Persist app state across refreshes in the desktop app
Fixed
- Fixed an issue with the spacebar adding unwanted panels
- Fixed an issue with the Plot panel auto-scaling on the y-axis
- Fixed an issue with the Topic Graph panel on startup with a
rosbridge
connection
- Fixed a bug where the panel settings menu would close when the Log panel received a new message and scrolled to display it
- Fixed an issue with stale messages being shown in the Raw Messages panel
- Fixed a bug where seeking in large files would occasionally crash
- Fixed an issue with content in the Data source dialog overflowing
- Ensure the panel settings menu is always displayed for built-in and extension panels, even when there are currently no settings available
- Fixed URL state encoding for ROS 1 and ROS 2 players in the web app