-
-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use and doc the default input UI of maplibre-js #186
Comments
I would love to see an RFC for input handling for maplibre-rs. RFC would serve as a design foundation. They would describe what we want maplibre-rs to be like on a high level. Here is the RFC for the "RFC Process" of Rust: https://rust-lang.github.io/rfcs/0002-rfc-process.html I would very much like to see us documenting how maplibre-rs works in the style of RFCs. What do you think? |
This would be an excellent first try for that! |
Oh I just saw that you opened this issue as RFC! Excellent! Should we turn this into a PR right away and create an RFC section in the Rust book for that? (I have to look again into Rust's process) |
Sounds good, go ahead. So I will see the process working. |
So RFC would probably not use Github Issues, but only Github PRs:
(from the RFC RFC) Usually only a single person edits an RFC and others comment. If working in a team on a PR then people can create suggestions in the PR and the PR owner or admins can accept them. The Wiki is a Github only feature and I would like to avoid using more proprietary features of Github and lock ourselfes in. Also the Wiki lacks a way of doing a proper review process. |
Possibly duplicate of #91. @DerKarlos can you copy all the important things over to #91? Then close this one. |
Closing as the controls for the UI will likely change a lot |
To welcome the maplibre community to the Rust version, we should offer the same controls as they used to.
So we have to check, what controls are used, document and code them in our input control.
🔦 Context
The input controls are not documented. Here one can try them: https://demotiles.maplibre.org/terrain-tiles
There is the code (with some doc to): https://github.com/maplibre/maplibre-gl-js/tree/main/src/ui/handler
1st-mousekey, arrow-keys: shift=move=slide=pan the map 100 pixels. (No ADWS-kleys are used)
2nd-mousekey, arrow-keys+shift: rotate the camera-viewangles: direction (15) and up/down (10 degrees)
mousewheel, plus-key=equal-key/minus-key: zoom in/out 1 level, or 2 if shift is pressed
1-fingerr-tab: zoom in, double-tab: zoom out
1-finger-touch: shift
2-finger-touch: shift(move) + zoom(pinch) + rotate-direction(twist)
2-finger-touch: rotate-up/down(move) *)
*) This mode gets only active if the 2-finger-move-up/down is used first! It blocks pinch and twist and shift-left/right.
💻 Examples
We could document the default input UI in https://github.com/maplibre/maplibre-rs/tree/main/docs/src
The text was updated successfully, but these errors were encountered: