Skip to content

guofoo/makepad-map-codex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Makepad Map Widget Test App

Test application for the Makepad MapView widget - a cross-platform map component with OSM tile rendering.

Current Status (2026-01-23)

Working Features:

  • OSM tile loading and rendering
  • Mouse drag to pan
  • Scroll wheel to zoom (cursor-anchored with dampening)
  • Touch pan (single finger)
  • Pinch-to-zoom (two fingers)
  • Smooth fractional zoom with tile scaling
  • Fallback tile rendering (shows lower-zoom tiles while loading)
  • Dynamic min zoom (map always fills viewport)
  • LRU tile cache (512 tiles max, ~128MB)
  • Inertial scrolling (momentum after pan gesture)
  • Map markers with labels (city pins with text)
  • Marker click detection (shows clicked marker in panel)

Running

cargo run

Controls

Input Action
Mouse drag Pan the map
Scroll wheel Zoom in/out
Touch drag Pan (mobile)
Pinch Zoom (mobile)
Click marker Show marker info in panel

Project Structure

makepad-map-codex/
├── Cargo.toml              # Project config (depends on makepad-guofoo)
├── src/
│   ├── app.rs              # Test app with MapView widget
│   ├── lib.rs              # Library root
│   └── main.rs             # Entry point
└── docs/plans/
    ├── 2026-01-20-makepad-map-widget-design.md  # Architecture design
    └── 2026-01-21-fix-map-initial-load.md       # Bug fix plan (completed)

Widget Location

The MapView widget implementation is in the makepad-guofoo repository:

  • /makepad-guofoo/widgets/src/map_view.rs

Known Issues / Future Work

  • Keyboard navigation (arrow keys to pan, +/- to zoom)
  • iOS/Android native backends

See docs/plans/2026-01-20-makepad-map-widget-design.md for full roadmap.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages