Allow "route from here" or "route to here" when right-clicking somewhere after left-clicking a PoI (routing from popover)
With version 46 beta / nightly: https://youtu.be/dH-QW1-7Kek
Here are some specific scenarios where the behavior feels unexpected.
Scenario A
Without an existing route set in the directions:
- Left-click a point on the map. The information popover shows up.
- Directly Right-click anywhere else on the map
Actual result: currently, it just dismisses the popover, and does not let me route to/from using the previously selected POI, even if I right-click a second time on another point to call the menu. It "forgets" the previous POI.
Expected result: it should allow me to directly open the right-click menu, route to/from here, and use the popover's PoI as the other corresponding starting/ending point.
Scenario B
Without an existing route set in the directions:
- Left-click a point on the map. The information popover shows up.
- Click "Directions". The destination is set to this point.
- Right-click to dismiss the popup
- Right-click again (only necessary because of the problem like in Scenario A) on another point on the map to open the right-click menu
- Select "Route to Here"
Actual result: the "To" field is replaced, while the "From" field remains blank... which is not actually what the user really meant in this case.
Expected result: this one is kinda tricky. I'm thinking that in this specific case it shouldn't let me "Route to Here" (make that menu item insensitive) as long as the routing sidebar is still auto-shown and doesn't have its destination entry's value cleared, because the intent of the user here was just to route between the two points...
Scenario C
Without an existing route set in the directions:
- Right-click a point anywhere on the map, choose "Route from here" or "Route to here"
- Left-click another POI. The info popover shows up, with the "Directions" button.
- Click the Directions button
Actual result: it always sets the popover's POI as the routing destination and clears the starting point if any.
Expected result: be routed to/from that point depending on what was previously selected for the other end of the route