Commit Graph

285 Commits

Author SHA1 Message Date
John Firebaugh
228dfbe993 Add URL flag for translate3d 2013-05-10 17:43:53 -07:00
John Firebaugh
1641f38632 Use context.mouse() 2013-05-09 21:55:05 -07:00
John Firebaugh
bb487ba0ee Use fastMouse 2013-05-09 21:55:05 -07:00
John Firebaugh
1b72bba425 Workaround Opera SVG event dispatch bug
Opera will not dispatch mouse events to an absolutely
positioned SVG element:

http://bl.ocks.org/jfirebaugh/6fbfbd922552bf776c16

We need layers to be absolutely positioned in order to
obtain the correct positioning and z-order simultaneously.
Therefore we must wrap the SVG in a div and absolutely
position that instead.

Fixes #1416.
2013-05-09 14:50:51 -07:00
John Firebaugh
79ae9346e7 Simplify layer structure
Also, always give SVG elements an explicit size -- seems
to be necessary for Firefox to render them correctly.

Fixes #1436.
2013-05-08 13:10:55 -07:00
John Firebaugh
786c2ab540 Cache transform status 2013-05-01 09:44:49 -07:00
John Firebaugh
464b387040 Bail out of translate3d in Opera 2013-04-26 17:46:19 -07:00
John Firebaugh
99fe5f615d Use translate3d 2013-04-26 17:40:45 -07:00
John Firebaugh
62e53fc98b Transform supersurface on pan/zoom 2013-04-26 17:40:45 -07:00
John Firebaugh
14b79d068e Merge branch 'perfect-resampling'
Conflicts:
	js/id/renderer/map.js
2013-04-26 17:35:04 -07:00
John Firebaugh
6941d1914b Perfect oneway markers 2013-04-26 17:33:01 -07:00
John Firebaugh
86988a09a3 Fix vertex rendering 2013-04-25 15:43:16 -07:00
John Firebaugh
7d66e03c0b Redraw hovered vertices more efficiently (#1377) 2013-04-25 13:53:31 -07:00
John Firebaugh
78aee5b6aa Fix tests 2013-04-23 20:09:36 -07:00
John Firebaugh
1d5b13c45d Don't draw when not editable 2013-04-23 17:52:09 -07:00
John Firebaugh
d31fa9ae70 Don't redraw vertices during pan/zoom transform 2013-04-23 17:31:53 -07:00
John Firebaugh
a2f86154ce Also show vertices on hover in draw modes 2013-04-23 16:52:32 -07:00
John Firebaugh
66551ba903 Show vertices only for selected way (#1022) 2013-04-23 16:52:02 -07:00
John Firebaugh
20150cb9d4 Avoid retaining a graph reference
The supersurface event bindings retained a reference to the initial
graph, preventing it being GC'd after a save operation.
2013-04-20 15:18:14 -07:00
John Firebaugh
c8dcba31ad Auto-zoom to entity specified by id param 2013-04-18 14:24:10 -07:00
John Firebaugh
77ce20c8c1 Add configurable image path 2013-04-16 17:20:21 -07:00
John Firebaugh
fb16dc8af6 Custom d3 3.1 build (fixes #1232) 2013-04-02 15:00:32 -07:00
Ansis Brammanis
691156caec fix flash style 2013-04-02 14:19:02 -04:00
Ansis Brammanis
2f04868770 add support for overlay layers
This is mostly added for the Tiger2012 road overlay
2013-03-29 16:42:53 -04:00
Ansis Brammanis
e9244159dc fix midpoint redrawing
Midpoints weren't being redrawn when the way was deleted
but both edge nodes still existed in other ways.
2013-03-28 18:30:10 -04:00
Ansis Brammanis
4a2cb9841d fix nudging during move operation 2013-03-28 15:03:31 -04:00
Tom MacWright
51d915c8a6 Refactoring and fixing layers
* Fixed opacity control
* Reorganize layer switcher
* Add GPX item to menu
* Allow user to cinch to GPX extent

Needs:

* Moderate refactoring
* Possibly a specific 'layerchange event'
* Dropping GPX on the map should be a behavior, probably, instead of in
  the layer
* Layers, if we want them, should be named rather than just have list
  indices
* A better icon for zoom to extent and for that icon to be properly
  placed
2013-03-20 15:59:15 -04:00
Tom MacWright
c94ec3b4a9 Local GPX file support, first push towards multilayer support. 2013-03-19 18:41:16 -04:00
Ansis Brammanis
6e0925003c add Maki icons to areas 2013-03-15 13:57:08 -04:00
John Firebaugh
3787185182 Rendering tagged points
At z16 and below, tagged points are rendered with a small
dot in the center. At z17 and above, they are rendered with
a maki icon.

See the test rendering page for examples.

Fixes #381.
2013-03-13 17:31:25 -07:00
John Firebaugh
60ff6fc021 Use maki icons for points (fixes #881) 2013-03-08 20:22:06 -08:00
Tom MacWright
0fafa340fe Start using d3 3.1.0
Update d3, use streams, d3.set, clip
Use clipping, fix side effects
2013-03-07 17:45:16 -05:00
Ansis Brammanis
32a78d4573 let centerEase be stopped by dragging 2013-03-06 14:42:56 -05:00
Ansis Brammanis
8fc4cffd20 Revert "shorter wait before redrawing after zooming"
This reverts commit 7a22e62426.
2013-03-06 13:12:46 -05:00
Ansis Brammanis
f8f86e7a42 Avoid style recalculation in resetTransform 2013-03-06 12:11:46 -05:00
Ansis Brammanis
7a22e62426 shorter wait before redrawing after zooming
Feels a lot snappier.
Slightly longer delay when panning.
2013-03-06 12:04:41 -05:00
John Firebaugh
417e21ab05 Remove unused 2013-03-05 16:02:27 -08:00
John Firebaugh
60a290282c Clip lines with Cohen-Sutherland algorithm
This yields a 10x paint performance increase at
#map=18.88/38.85208/-76.72632, as measured with
Chrome Canary's "Continuous Page Repainting" mode.

Fixes #885.
2013-03-03 18:25:42 -08:00
Ansis Brammanis
0090920d41 maintain center when map resized 2013-02-28 14:35:33 -05:00
Ansis Brammanis
4081d1234e set centerzoom before drawing map 2013-02-28 13:12:00 -05:00
John Firebaugh
b7894ceaf0 Calculate participating ways in AddMidpoint
Due to differenced redraw, midpoint.ways was getting stale,
so sometimes dragging a midpoint didn't add the new node to
all ways. Better to calculate participating ways when needed.
This also simplifies the code for adding a midpoint via double
click. It does make filtering midpoints on redraw a bit more
expensive, but a cursory profile didn't show it being a problem.

Fixes #763.
2013-02-27 20:41:38 -08:00
John Firebaugh
571edc707d d3.tail -> iD.ui.Tail 2013-02-27 17:55:23 -08:00
John Firebaugh
e154a94ef0 Draw only visible midpoints (#804) 2013-02-17 11:27:36 -08:00
Ansis Brammanis
147fce1f49 Merge branch 'tree-intersects'
Conflicts:
	js/id/behavior/lasso.js
2013-02-15 13:40:01 -05:00
Ansis Brammanis
7102fea04d add history.intersects to context 2013-02-13 18:12:53 -05:00
Tom MacWright
b8c79b8b48 Fix map.extent 2013-02-13 18:12:38 -05:00
Tom MacWright
eb2a133ac6 Hate multiline bracketless ifs 2013-02-13 17:57:58 -05:00
Ansis Brammanis
e60c9ab16b Fix zoom limitation while drawing 2013-02-13 17:31:23 -05:00
John Firebaugh
3be61a65e6 Manual redraw debouncing
This avoids a duplicate full redraw at the end of a drag pan. The
redraw triggered by mouseup.zoom now cancels the pending debounced
redraw.

Also, bump the debounce interval to 300ms, which helps avoid full
redraws during scroll zoom, making it more responsive.
2013-02-13 14:27:01 -08:00
Tom MacWright
8538339b44 Fix zooming to validated features. Fixes #748 2013-02-13 17:21:21 -05:00