Commit Graph

1044 Commits

Author SHA1 Message Date
Bryan Housel 5a4faa84a1 Fixed some of the point/vertex/midpoint snapping issues
Still working on snapping to lines/areas, and making sure drawing lines/areas
will complete
2017-12-16 01:33:12 -05:00
Bryan Housel 5cb5456869 Implement touch targets for midpoints and points 2017-12-15 22:50:55 -05:00
Bryan Housel 9d42d470ca Touch targets can be keyed on entity.id instead of osmEntity.key
to avoid excessive exit/enter flickering
2017-12-15 21:26:58 -05:00
Bryan Housel ba7437b4cc Fix order of vertex in _assign, always get latest entity
(selected or hovered entities are old, if we're moving vertices around)
2017-12-15 21:21:48 -05:00
Bryan Housel f0e2d3fbfe Slightly adjust numbers for iconified vertices for better centering
(maybe not changed after we switched to maki2 which has 11px icons)
2017-12-15 17:50:00 -05:00
Bryan Housel 89d8d37576 Drawing all the correct vertices now where I want them, simplify classes
Some highlights
- `getSiblingAndChildVertices` are expensive, so they're saved and called less frequently
- draw touch targets for all the visible vertices
- remove redundant css classes and `setClass` function
2017-12-15 17:28:20 -05:00
Bryan Housel ba5b3eee9c More work on vertex drawing, add debug for touch targets 2017-12-15 00:26:37 -05:00
Bryan Housel b9e48d1682 WIP: Move layer-hit to layer-points with explict sublayers, update tests
This is more work to further isolate the layers that entities draw to.
It makes it easier to debug what is going on, and can eventually lead to
deferred drawing, if each draw function is in its own place and not dependant
on anything else.

I've started to replace the vertex-hover with an explicit layer for touch
targets.

Also had to change a lot of the svg tests, which are really brittle.
Things would happen like - the surface would be created, it would kick of a
deferred redraw, which would notice that the zoom was 0 and call
editOff, which would remove the osm layers that were just created and
that the tests were trying to draw to. These tests need proper zoom and
projection otherwise nothing works.
2017-12-14 17:38:43 -05:00
Bryan Housel bfaf17538e Move text to single group with subgroups for halo,label,debug 2017-12-14 12:32:28 -05:00
Bryan Housel 24baa5390e Adjust some variable names to better match what they do
- `nodes` are for osm nodes
- `points` are the projected locations of those node `loc` in screen space
2017-12-13 18:31:37 -05:00
Bryan Housel d9e3367836 More improvements to label vertex avoidance
(re: #4271, #3636)

- better classification of "interesting" vertices
  (include tagged, selected, or child of selected)
- now we can draw labels on selected lines again (revert #3636)
  because the labels will avoid the vertices
- if debugging is on, draw a collision box for the mouse
2017-12-13 18:05:06 -05:00
Bryan Housel 006ee691bf Avoid placing labels in interesting points/vertices
(closes #4271)
2017-12-13 14:31:17 -05:00
Bryan Housel 450392d2e5 Fix label placement for directional points rendered as vertices 2017-12-13 10:23:25 -05:00
Bryan Housel 5d5546d54d Minor code formatting 2017-12-13 10:02:39 -05:00
Bryan Housel 789f1e5f6f Make sure points/vertices render the right things at different zooms 2017-12-13 08:57:43 -05:00
Bryan Housel 899abc7ef5 WIP to render vertices while dragging
(re: #3003 / #4602)

For now, drawHover is commented out.  Still not sure what I will do with it.
This means that things flicker a bit when dragging, also connecting nodes
(and closing lines) does not currently work.

There was lot going on preventing the vertices from rendering while dragging.

1. `modeDragNode` needed a proper `selectedIDs()` function that works like other
modes.. Many other places in iD (including the vertex renderer) call `context.selectedIDs()`..
This means that `modeDragNode` needs a new function `restoreSelectedIDs()` to do what
`selectedIDs()` was previously doing (a place to store selectedIDs so that we
can reselect those entities after the user is done dragging a node in select mode)

2. Just so many things in svg/vertices.js
  - siblingAndChildVertices was missing some things for points that we render
    as vertices (points in wireframe, points with directions)
  - the sibling vertices weren't being included in the `filter` function, so
    would disappear when doing differenced/extent redraws
  - probably some other things
2017-12-12 17:39:36 -05:00
Bryan Housel b394cb6dfa Variable cleanup, elminiate lodash _filter 2017-12-11 17:46:15 -05:00
Bryan Housel a5bbc21728 Remove unnecessary zoom parameter 2017-12-11 17:34:01 -05:00
Bryan Housel 4b5260a5ab Add wireframe viewfield marker
(styling marker fill in svg is not currently supported)
2017-12-11 15:48:08 -05:00
Bryan Housel 2edbcc4b82 Match any *:direction key, rather than hardcoding a list 2017-12-11 15:17:17 -05:00
Bryan Housel ee3083b113 Support rendering camera:direction 2017-12-11 11:46:11 -05:00
Bryan Housel 8e19474293 Render directional points (e.g. benches, cameras, signs) as vertices 2017-12-11 10:48:04 -05:00
Bryan Housel b42c096fe5 Make sure viewfields actually update on update selection 2017-12-10 14:34:50 -05:00
Bryan Housel 2a8bf6c7bf Don't draw viewfields on hover, rearrange code 2017-12-10 00:43:46 -05:00
Bryan Housel 34c98b94e6 Move directions code from vertices to node.js 2017-12-09 12:53:08 -05:00
Bryan Housel 42043b2ce1 Support more tags, cardinal and numeric directions 2017-12-08 16:23:35 -05:00
Bryan Housel 9c649b74cd After switching from arrows to viewfields, forward/backward is different 2017-12-08 14:54:26 -05:00
Bryan Housel 515094cb56 Only add viewfields for an all-way stop on a highway intersection.
Sometimes people tag all-way stop signs at the junction node,
othertimes people tag all-way stop signs at the stop sign location.

What we're doing here is:
- if `stop=all` tagged at the junction, show viewfield in all directions
- if `stop=all` tagged at the sign location, show viewfield according to `direction=` tag
2017-12-08 14:36:45 -05:00
Bryan Housel 6aba27c84a Display directional vertex with a viewfield, not an arrow 2017-12-08 14:29:56 -05:00
Bryan Housel b79b6ca97a Support rendering direction on vertices (stop sign, traffic_signals, etc)
(closes #3815)
2017-12-07 22:48:03 -05:00
Bryan Housel 6cfe7a2e71 When reversing a way, reverse traffic_signals:direction on child nodes
(closes #4595)
2017-12-06 20:48:21 -05:00
Bryan Housel 18ab596f58 Improve int'l date/time strings on imagery and history tools
(closes #4594)
2017-12-06 15:27:54 -05:00
Bryan Housel 3440b5523c Use ⌘F to focus the feature search box
(closes #4545)
2017-12-06 01:19:02 -05:00
Bryan Housel c6ab9e593d Flash message if drag not allowed because of a hidden connection
(closes #4493)
2017-12-06 00:11:42 -05:00
Bryan Housel f247bd1e66 Move icon code into uiFlash, default flash icon to icon-no
Previously it was up to the caller to draw whatever they want into the
footer flash.  With this change, uiFlash creates an icon and a text, so
the caller doesn't need to do as much work.
2017-12-05 23:41:34 -05:00
Bryan Housel 5e19c936f0 Avoid deferred fetching of OSM tiles at low zooms or with layer disabled
(closes #4572)
2017-12-05 14:36:12 -05:00
Bryan Housel c0040f3cd6 Add caseSensitive option for combofields, use for source=*
(closes #4558)
2017-11-26 19:30:19 -05:00
Bryan Housel cfa1759367 Add scroll zooming support to the OpenStreetCam viewer
(closes #4561)
2017-11-25 00:11:16 -05:00
Bryan Housel 434bc5af96 Improve styling of keyboard shortcuts, clicks, commands in help text 2017-11-23 02:31:12 -05:00
Bryan Housel fd49f47ede Now background, map_data, help stay open when user clicks on map surface
There is really no need to hide these, and the user might just want to
keep the pane open (e.g. viewing help) while they do stuff.
2017-11-22 22:29:06 -05:00
Bryan Housel bf2251bbc4 Add markdown headings with code, not in translation text 2017-11-22 22:27:23 -05:00
Bryan Housel 70fb1432ea Remove the unused icons from the replacements object 2017-11-22 21:27:24 -05:00
Bryan Housel 6490abbb4f Split up all help sections and titles, assemble markdown from keys
(also incorporate some of @1ec5's copyedits, and adjust icon styles)
2017-11-22 17:25:57 -05:00
Bryan Housel ca49166d6c Simplify language in relation section 2017-11-22 11:16:55 -08:00
Bryan Housel 5a70308947 Simplify language in feature_editor section 2017-11-22 11:16:55 -08:00
Bryan Housel c484e8cc92 Swap undo/redo when rtl 2017-11-22 11:16:55 -08:00
Bryan Housel 1f6c8d9132 Move more of the content from the walkthrough into the help sections 2017-11-22 11:16:55 -08:00
Bryan Housel 467fcb8b9a Simplify language in imagery section, move streetlevel and gps after 2017-11-22 11:16:55 -08:00
Bryan Housel f48a00ce50 Simplify language in GPS section, add section on streetlevel photos 2017-11-22 11:16:55 -08:00
Bryan Housel 3ae7ec8032 Simplify help overview, editing texts 2017-11-22 11:16:55 -08:00