Skip to content

Conversation

@kylebarron
Copy link
Member

@kylebarron kylebarron commented Oct 14, 2025

Change list

  • Adds definitions for map "controls" (which deck.gl calls "widgets", but the name "widget" is too overloaded in the context of Jupyter, so I'd like to call them "controls")
  • Support for ScaleControl, NavigationControl, FullscreenControl
  • These controls are supported by both deck.gl and maplibre, and so implementations are defined for creating both the deck.gl and maplibre counterparts

Example

from lonboard import Map
from lonboard.controls import ScaleControl, FullscreenControl, NavigationControl
from lonboard.basemap import MaplibreBasemap

m = Map([], 
    basemap=MaplibreBasemap(mode="overlaid"),
    controls=[ScaleControl(), FullscreenControl(), NavigationControl()]
)
m
image

We should probably change the default positioning of controls, move the bbox selector, or make the bbox selector a control itself.


However, for deck.gl-driven rendering, I can only see the scale control:
image

Logged in #990

Todo list

Closes #842, relevant to #681

@github-actions github-actions bot added the feat label Oct 14, 2025
Base automatically changed from kyle/split-renderers2 to main October 14, 2025 18:43
@kylebarron kylebarron added this to the 0.13 milestone Oct 22, 2025
@kylebarron kylebarron marked this pull request as ready for review October 22, 2025 03:47
@kylebarron
Copy link
Member Author

kylebarron commented Oct 28, 2025

I moved the bounding box selection widget to the bottom right

image

@kylebarron kylebarron enabled auto-merge (squash) October 28, 2025 03:24
@kylebarron kylebarron merged commit 1ec97a8 into main Oct 28, 2025
6 checks passed
@kylebarron kylebarron deleted the kyle/widgets branch October 28, 2025 03:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fullscreen

2 participants