Skip to main content

Foxglove 2.45.0

๐Ÿ—‚๏ธ Desktop Tabsโ€‹

The Foxglove desktop app now supports tabbed browsing, letting you work with multiple data sources, layouts, and views within a single window.

  • Create new tabs to work with different data files, layouts, or projects side-by-side without juggling multiple windows
  • Drag and drop tabs to reorder them within the tab bar
  • Each tab maintains its own navigation historyโ€”use the back and forward buttons to navigate within a tab

Keyboard shortcuts:

ActionShortcut
New TabCmd/Ctrl + T
Close TabCmd/Ctrl + W
Next TabCtrl + Tab
Previous TabCtrl + Shift + Tab
Last Active TabCmd/Ctrl + /
BackCmd/Ctrl + [
ForwardCmd/Ctrl + ]

๐Ÿ“ Image Panel Cursor Publishingโ€‹

The Image panel now includes publish settings that let you emit real-time cursor position events. Configure topics in the panel settings:

  • Hover topic: Publishes cursor position continuously as you move the mouse over the image
  • Click topic: Publishes cursor position when you click on the image

Messages are published as foxglove.Point3InFrame (non-ROS) or geometry_msgs/PointStamped (ROS), making it easy for downstream systems to react to cursor interactions.

๐Ÿ—บ๏ธ Map Panel Updatesโ€‹

The Map panel has several improvements:

  • GPS coordinates now display in the HUD, and tooltips show topic information when hovering over points and GeoJSON features
  • A new "Last N seconds" sliding time window history mode lets you display only recent data, improving performance with large datasets
  • Color swatches now appear in topic section headers, making it easier to identify topics when collapsed
  • "Expand all" and "Collapse all" options for topic lists make it easier to navigate complex configurations
  • A visibility filter lets you quickly find visible or hidden topics
New & Improved
  • Added "Expand all" and "Collapse all" options to topic and series lists in the 3D, Image, Plot, State Transitions, and Log panels
  • Added a 10x playback speed option to the playback controls dropdown menu
  • Added visibility filters to series lists in Plot panel settings
  • Added color swatches to series section headers in the Plot panel, and colored icons for Polygons and Custom Layer Grids in the 3D panel
  • The Image panel now shows a synced timestamp when "Sync annotations" is enabled
  • Mesh up-axis and COLLADA up-axis settings now apply immediately without requiring a restart
  • The Publish panel now preserves message content when switching to a topic with the same schema
  • The "Create event" button now appears when streaming data using the ds.eventId URL parameter, and the Download option is available in the data source dropdown
  • Changed the default Map panel time range mode from "All" to "Latest" for improved performance with large datasets. Note: Existing panels previously configured for "All" may need to be updated
  • The Recordings table is now more information dense, making it easier to scan and find relevant information
  • The playback range editor's start and end time text fields now update the slider handles immediately as you type
  • Increased maximum WebSocket frame and message size to 256MB; larger messages are now dropped with a warning
Performance
  • Improved scrubbing performance
  • Improved timeseries plot performance
API
  • macOS desktop builds are now distributed as separate Intel (x64) and Apple Silicon (arm64) downloads instead of universal binaries, reducing download size by ~100MB
  • The @foxglove/embed and @foxglove/embed-react packages are now ESM-only, removing CommonJS exports
  • The FoxgloveViewer embed now inherits its color scheme from the containing page when using colorScheme: "auto"
Fixes
  • Fixed ULog file log messages incorrectly displaying as DEBUG level instead of their correct severity
  • Fixed URDFs disappearing shortly after being made visible for the first time
  • Fixed Image panel showing a blank display when camera calibration data is invalid; now falls back to showing the uncalibrated image with a warning
  • Fixed the playback range error message not clearing and slider handles not updating correctly after adjusting an invalid time range
  • Fixed State Transitions panel not properly reserving space for series with invalid paths, causing label misalignment
  • Fixed intermittent flickering of covariance ellipses in the Map panel
  • Fixed the right sidebar toggle not working when an event was selected
  • Fixed markers appearing above other markers despite having a lower z-position in the 3D panel
  • Fixed State Transitions panel series resetting when adjusting global variables that the panel does not use
  • Fixed the 3D panel silently failing when displaying a foxglove.Grid message with elevation that exceeds possible dimensions; an error is now shown
  • Fixed a message delivery bug that over-delivered messages to some panels when multiple panels used range subscriptions
  • Fixed State Transitions panel not showing gaps when protobuf optional fields become unset
  • Fixed Map panel centering behavior to always center on location data instead of relying on previously saved center positions
  • Fixed the Raw Messages panel plot button producing unexpected results in some cases; the button is now hidden when it would not work properly
  • The custom date range picker for recordings now has default start/end values to ensure URL parameters are updated correctly
  • Copying and pasting a tab with a User Scripts panel now includes the associated scripts

Downloads: Linux: deb amd64 arm64, snap amd64 | Windows: x64 arm64 | Mac: Apple Silicon Intel