ahocevar
2b53481932
Making Vienna's location more accurate
2012-09-29 09:54:34 +02:00
ahocevar
dcc3fdde96
Fixing popup in example
2012-09-28 19:19:46 +02:00
ahocevar
467fef8875
Updating readme
...
File urls work fine now, so using a HTTP server has become
optional.
2012-09-28 17:07:33 +02:00
ahocevar
163737d3de
Adding popup to full-screen example
2012-09-28 16:47:55 +02:00
ahocevar
6b395cafb5
Stop click event, as previously promised
...
This should have gone in with 3910318f1b .
2012-09-28 16:47:54 +02:00
ahocevar
82058412a1
Bringing label markup back
...
Also with a bit of css, we can make the label invisible before
it gets added as overlay to the map.
2012-09-28 14:44:36 +02:00
ahocevar
b233b8e1a5
Making sure that position:absolute is set
...
Positioning of overlays is only possible when position:absolute
is set on the element. So we set it programmatically now.
2012-09-28 14:44:35 +02:00
ahocevar
3910318f1b
Merge pull request #30 from openlayers/overlay
...
Introducing ol.overlay.Overlay and an overlayContainer. r=@twpayne
2012-09-28 04:05:21 -07:00
ahocevar
3d62b67172
Introducing ol.overlay.Overlay and an overlayContainer
...
ol.overlay.Overlay can be used to bind DOM elements to a
coordinate on the map. It has positioning options to support
e.g. popups or image markers that have an anchor at the bottom
and an unknown size.
The overlayContainer stops propagation on mousedown and
touchstart events, so clicks and gestures on overlays don't
trigger any MapBrowserEvent. To make this work reliably, we now
only fire dblclick in mapbrowserevent.js when there was a
previous mousedown or touchstart. The default container for
controls is now the overlayContainer.
2012-09-28 13:01:56 +02:00
ahocevar
9536ba8e14
Common place to store browser features
...
The ol.BrowserFeature object is supposed to provide all detected browser features in a central place.
2012-09-27 17:09:19 +02:00
ahocevar
26e3179b2e
Making linter and Travis happy
2012-09-27 12:18:05 +02:00
ahocevar
caaec7c366
Use the map's zoom method instead of our own
...
This also allows us to get rid of the resolutions constraint and configuration.
2012-09-27 12:05:53 +02:00
ahocevar
1b18dbedb7
Dispatch MapBrowserEvent before interactions get it
...
By doing so, application event handlers can preventDefault on the event, and interactions won't get the event any more. This means that interactions are default behavior that can be prevented by application event handlers.
2012-09-27 09:54:16 +02:00
ahocevar
2991fa1178
Adding important comment
2012-09-26 22:39:21 +02:00
ahocevar
d6f6b828f1
preventDefault on mousedown
...
This is needed to avoid native image dragging.
2012-09-26 18:48:57 +02:00
ahocevar
303960731c
CSS for previous commit
2012-09-26 18:33:07 +02:00
ahocevar
e390ff80ea
Adding zoom control
2012-09-26 18:27:45 +02:00
ahocevar
47c343ce4f
We can rely on the click event
...
No need to use the mousedown/touchstart event here, because the click event gives us both clientX/clientY and button on touch devices.
2012-09-26 18:27:12 +02:00
ahocevar
4257f5c7c6
Removing unneeded preventDefault calls
2012-09-26 18:26:11 +02:00
ahocevar
c7a32b33da
Fixing indentation
2012-09-26 15:11:47 +02:00
ahocevar
78c380c9a5
Type cast to make the compiler happy
2012-09-26 15:05:52 +02:00
ahocevar
fa16adec02
Making more use of Closure
2012-09-26 14:38:29 +02:00
ahocevar
bdd8a75123
Remove the box also if we don't zoom
2012-09-26 13:03:41 +02:00
ahocevar
3bd204fb6a
DragBox control provides visual shiftdragzoom feedback
...
Adding a new DragBox control and using it in the shiftdragzoom interaction to provide visual feedback of the zoom box. The control is nicely separated from the interaction - it only draws the box and does not perform any action.
2012-09-26 12:50:14 +02:00
ahocevar
86336b42e6
Ignoring index.html instead of debug.html
2012-09-25 19:47:26 +02:00
ahocevar
36a8dd81ee
Missing change from previous commit
...
This should have gone in with ef383ee7b6 .
2012-09-25 19:35:12 +02:00
ahocevar
3c099a96b7
No longer tap-selecting elements on touch devices
...
This finalizes the effort to improve map browser event handling.
2012-09-25 19:32:08 +02:00
ahocevar
ef383ee7b6
Examples using a script loader
...
This makes it possible to run examples hosted on hosts other than localhost. To get that version by default, debug.html has been renamed to index.html.
2012-09-25 19:06:29 +02:00
ahocevar
5a97655983
Optimizing touch device handling
...
The native event of the touchstart/mousedown event needs to be cloned; change includes some compiler optimizations.
2012-09-25 18:30:23 +02:00
ahocevar
ce977e5364
Map browser event handling for touch devices
...
By handling click, dblckick and drag sequences in MapBrowserEvent, we can overcome closure issues with touch events. In particular, these issues were double drag events (from mousemove and touchmove) and a missing dblclick event on touch devices.
2012-09-25 17:28:01 +02:00
ahocevar
b151304630
Prevent default on mousedown and touchstart for all renderers
...
By doing this on the map renderer, we do not need to duplicate code for the webgl and dom renderers.
2012-09-25 17:28:01 +02:00
ahocevar
6b8e14c623
Don't trigger extra drag events on touch devices.
2012-09-25 08:30:57 +02:00
ahocevar
002e23cb74
Satisfy latest Closure library/tools.
2012-09-24 17:59:34 +02:00
ahocevar
78f8ed04dd
Fixing typo.
2012-07-18 08:10:44 +02:00
ahocevar
6c9ef26c79
Using safe unicode notation.
2012-07-18 08:10:35 +02:00
ahocevar
fd2ac782cf
Using high level map event instead of browser event.
2012-07-13 17:54:34 +02:00
ahocevar
1c07c38a70
Using minus sign instead of ndash.
2012-07-13 17:53:33 +02:00
ahocevar
f4532f1548
Completing tests for map handlers.
2012-07-12 23:48:13 +02:00
ahocevar
ba986e536d
We decided to be explicit about bubble/capture.
2012-07-12 23:47:37 +02:00
ahocevar
8183164298
The underlying event will be needed frequently.
...
But there will also be events that don't have an underlying event, so we make it optional.
2012-07-12 23:47:16 +02:00
ahocevar
3cc069186c
Allow for using a different set of default behaviors.
...
The default behavior of dragging and wheel zooming feels specific to 2D maps. So I think it makes sense to introduce a special type of controls (ol.control.DefaultControl) that implement default behaviors. This change also re-introduces the Navigatin control, which is a container for the default behaviors that were previously defined in the map handlers. Maybe this control needs to be renamed to Navigatin2D in the future, and there could be a different Navigation control for 3D maps.
2012-07-12 20:51:47 +02:00
ahocevar
42c4c9d869
No need to pass the element to the constructor.
...
If MapHandler subclasses could live without a map, it would make sense to have a constructor with a target and an element. But because the target is always the map, and the handler need to know about the map for performing default behavior, we always assume the map's viewport as element.
2012-07-12 20:44:32 +02:00
ahocevar
f672303f0a
New MapHandler base class; better API docs
2012-07-12 15:21:15 +02:00
ahocevar
1ad915b428
Shuffling resources; better variable names; better type declarations.
2012-07-12 13:43:47 +02:00
ahocevar
d76eea8ac4
Fixing tests.
2012-07-09 08:26:25 +02:00
ahocevar
7bf1ffe606
Nice improvement of the wheel zooming experience.
2012-07-08 20:27:10 +02:00
ahocevar
4132ded263
Merge branch 'events'
2012-07-08 12:19:32 +02:00
ahocevar
ca2414c9d6
Simplify controls by registering click events on own elements.
...
This makes sense for all controls that provide buttons or similar UI elements that don't interfer with map interaction.
2012-07-08 12:17:11 +02:00
ahocevar
a38a331085
Allow for events on other elements than the map viewport.
...
Not registering browser events as priority events makes it easy for controls to preventDefault or stopPropagation when events are registered on children of the map viewport element.
2012-07-08 12:14:26 +02:00
ahocevar
e67e9049ca
preventDefault and stopPropagation convenience functions.
...
These functions can directly be used as browser event listeners.
2012-07-08 12:12:19 +02:00
ahocevar
e8ac3f1a6b
preventDefault for mousemove and touchmove.
...
This avoids panning of the browser page when drag-panning the map.
2012-07-08 11:55:31 +02:00
ahocevar
578f74eb86
Less magic.
...
Each control is responsible for its handlers. And all controls are rendered into an overlay, not any more depending on assumptions about link click handling.
2012-06-29 09:44:52 +02:00
ahocevar
f28fe4912f
I think we decided to name events in a noun+verb fashion.
2012-06-26 13:34:34 +02:00
ahocevar
8541490f53
Be more explicit about object properties to get rid of warnings.
2012-06-26 09:56:50 +02:00
ahocevar
b7c8486289
Testing Control.js.
2012-06-26 00:18:29 +02:00
ahocevar
56542de1f3
More Events.js tests.
2012-06-26 00:00:36 +02:00
ahocevar
f962b78caa
If no listeners are registered, triggerEvent does nothing now.
2012-06-25 06:32:10 +02:00
ahocevar
87459deb65
Removing unused variable.
2012-06-25 06:32:10 +02:00
ahocevar
9c46aadd22
Adding attribution control and attribution.
2012-06-24 22:22:18 +02:00
ahocevar
dfc21754c9
Adding addLayers method and addlayer event.
2012-06-24 22:14:48 +02:00
ahocevar
c218e7a139
Adding missing return type.
2012-06-24 22:12:58 +02:00
ahocevar
9758910fc6
Making Element/Node types more consistent.
2012-06-24 22:12:38 +02:00
ahocevar
eabc2d9922
Shortcut to register events.
2012-06-24 20:03:58 +02:00
ahocevar
1b93856e89
Keep track of the number of events we have registered.
...
This is needed to reliably prevent the handleBrowserEvent method to perform potentially expensive calculations.
2012-06-24 20:03:16 +02:00
ahocevar
d8599f28b9
Let the controls decide about stopPropagation and preventDefault.
2012-06-24 19:53:42 +02:00
ahocevar
68498bc36e
Fixing the way we prevent the extra click.
2012-06-24 19:48:59 +02:00
ahocevar
bd8354c831
Adding destroy method.
...
The control now removes its markup from the DOM. A nice aspect of our event handling is that no events need to be registered on any of the dom elements that controls create.
2012-06-24 17:08:32 +02:00
ahocevar
45222ac5cb
Adding getStaticOverlay method.
...
This will be used by overlays, e.g. to display layer attribution.
2012-06-24 17:07:02 +02:00
ahocevar
bc37121ae0
Accessibility - now we can use the keyboard to zoom in and out.
2012-06-24 13:45:32 +02:00
ahocevar
218ad77103
preventDefault now happens in Events.js for all handled events.
2012-06-24 13:43:53 +02:00
ahocevar
fcadf842e5
stopPropagation and preventDefault when the event was handled.
2012-06-24 13:43:11 +02:00
ahocevar
446a434c06
New isEnterOrSpace method for keyboard navigation.
2012-06-24 13:42:34 +02:00
ahocevar
7f01528311
Proper destruction.
2012-06-24 13:41:00 +02:00
ahocevar
2fbb29efa0
Using goog.object.clear in destroy.
2012-06-24 12:46:09 +02:00
ahocevar
53a1f9b579
Adding tests for Loc.add.
2012-06-24 12:02:45 +02:00
ahocevar
fdfccb7a82
Fixing type of maxResolution.
2012-06-24 11:40:18 +02:00
ahocevar
0c9b3d1d58
Making map_ protected instead of private.
2012-06-24 11:39:42 +02:00
ahocevar
81577d6dce
Adding Loc.add method.
2012-06-24 10:09:24 +02:00
ahocevar
12fb6c5af4
Merge branch 'master' of github.com:openlayers/ol3
2012-06-23 17:03:57 +02:00
ahocevar
bba7500ab7
Making Popup tests pass.
2012-06-23 17:00:58 +02:00
ahocevar
81b8a472d8
No longer need to calculate the anchor transformation.
2012-06-23 16:16:37 +02:00
ahocevar
026b60826e
Removing stub method, and use the real method in Popup.
2012-06-23 16:16:37 +02:00
ahocevar
ad8568a259
New setCenterAndZoom and setZoom methods.
2012-06-23 16:16:37 +02:00
ahocevar
abf4f41eab
Check for renderer before calling methods on it.
2012-06-23 16:16:37 +02:00
ahocevar
c656bac601
Making the pointer position the zoom origin.
2012-06-23 14:22:54 +02:00
ahocevar
d391c65ac6
New pixel conversion and zoom/center related methods.
2012-06-23 14:21:37 +02:00
ahocevar
6d7c79a9b9
Merge branch 'master' of github.com:openlayers/ol3
2012-06-23 14:18:25 +02:00
ahocevar
43adc61b26
No click event at the end of a drag sequence.
2012-06-23 14:18:02 +02:00
ahocevar
3adf04f728
Merge branch 'master' of github.com:openlayers/ol3
2012-06-23 13:41:35 +02:00
ahocevar
e03595fdac
Priority flag for unregistering priority events.
2012-06-23 13:37:39 +02:00
ahocevar
cdd9439bbd
Consistency: get/setMaxResolution instead of get/setMaxRes.
2012-06-23 09:10:01 +02:00
ahocevar
a6069bb78e
Center tranformation in the api; moveByPx implemented.
2012-06-22 20:49:58 +02:00
ahocevar
c72f803038
Adding scroll sequence and scroll support for the Navigation control.
2012-06-22 19:51:35 +02:00
ahocevar
6b8000d963
Removing debug output.
2012-06-22 19:48:05 +02:00
ahocevar
f504fe87b8
Removing incorrect comments.
2012-06-22 18:27:06 +02:00
ahocevar
84ee96fbd0
Don't subclass fx.Dragger - just use it.
2012-06-22 18:27:06 +02:00
ahocevar
6c1d510bf0
Getting rid of compiler warnings.
2012-06-22 17:17:25 +02:00
ahocevar
f12a20d7aa
Stop the event chain when we have handled the event.
2012-06-22 17:14:46 +02:00
ahocevar
0420d2efb9
Adding Zoom control.
...
Tests still missing.
2012-06-22 17:14:22 +02:00
ahocevar
d9537b558a
Simplified ISequence API; add object property also for browser events.
2012-06-22 17:12:29 +02:00