Commit Graph
100 Commits
Author SHA1 Message Date
ahocevar 142546c6d5 Merge pull request #961 from ahocevar/modifyfeature-layerorder
Regression: ModifyFeature control  not act if layer is not on top. r=@jorix
2013-04-29 04:25:59 -07:00
ahocevar 9d6ce21109 Raise layer that's being modified 2013-04-27 21:46:22 +02:00
ahocevar 27ccd3cbaa Completing mock for 2D transforms (see #950) 2013-04-24 22:03:37 +02:00
ahocevar 6af9f5f3d3 Merge pull request #954 from ahocevar/url-compare
URL comparison fails in IE8. r=@bartvde
2013-04-24 07:36:44 -07:00
ahocevar 2782fa47c8 URL comparison fails in IE8
The W3C standard says that setAttribute/getAttribute on any DOM element is
a simple setter/getter thing. IE8 tries to be smarter and returns the full
URL when calling getAttribute('src') on an image instead of the one that
was set with setAttribute('src').

This change makes sure that urls are compared properly, also in IE8.
2013-04-24 15:41:04 +02:00
ahocevar 11977f57a3 Making pagePosition test work in IE8 2013-04-24 14:31:33 +02:00
ahocevar 9f53506754 Tile bounds changed with #517 to remove white lines between tiles 2013-04-24 14:15:12 +02:00
ahocevar acc497bf3c Making TouchNavigation tests work in Firefox 2013-04-24 01:01:56 +02:00
ahocevar 11a187ffaf Merge pull request #849 from luizvital/master
Change language code from 'pt-br' to 'pt-BR'
2013-04-23 12:59:26 -07:00
ahocevar e0f0744500 Merge pull request #946 from Turbo87/uglify
build: Added "uglify-js" as optional compressor
2013-04-23 12:55:15 -07:00
ahocevar 60a966714d Hack for making page position calculations work
Many browsers do very limited rendering/reflow on hidden IFrames. By making
the test IFrame visible, we get everything rendered like a real page. This
is a partial fix for #947.
2013-04-23 14:22:59 +02:00
ahocevar 2e88ca6905 Use other edge and outside coordinates
This avoids a failing test due to anti-aliasing artifacts in Safari.
2013-04-23 12:40:15 +02:00
ahocevar 7cb38f69d5 Merge pull request #780 from ahocevar/ms-pointer-events
Touch Navigation doesn't work in Internet Explorer 10. r=@bartvde,@gregersrygg,@mpriour
2013-04-23 01:46:10 -07:00
ahocevar aa2345693a Addressing @bartvde's review comments 2013-04-23 10:45:08 +02:00
ahocevar 1bdfb492d5 Merge pull request #944 from Karamell/labelOutlineOpacity2
added a labelOutlineOpacity attribute to SVG and Canvas Renderers.
2013-04-22 00:53:30 -07:00
ahocevar 87d8b6003d Merge pull request #927 from adv-isu/HandlerPathUndoTouchFix2
Improved touch support for Handler.Path.undo
2013-04-20 02:32:31 -07:00
ahocevar f4725c48ce Merge pull request #937 from Turbo87/layer-switcher
LayerSwitcher: Simplified checkRedraw() method
2013-04-20 02:20:26 -07:00
ahocevar 6fb10d6e0a Re-ordering topics in the release notes 2013-04-20 11:08:43 +02:00
ahocevar 44a2b50455 Release notes for GPU, animated zoom and ModifyFeature control 2013-04-20 11:03:46 +02:00
ahocevar 010035e047 New example showing how to switch projections 2013-04-18 16:54:37 +02:00
ahocevar 111821e86d Making buttons work
Thanks @gregersrygg for testing. With this change, zoom and other buttons
(e.g. editing toolbar) work in touch mode.
2013-04-16 16:44:02 +02:00
ahocevar 9cdc991b8c Attempt to handle IE >= 10 pointer events
Using the same technique as Leaflet, this relays MSPointer events to touch
events. Using the simulator, I can verify that even pinch-zoom works with
this change, but the visual experience is a bit jumpy. Would be great if
people could test this on physical touch devices and see how it looks/feels
there.
2013-04-16 11:18:17 +02:00
ahocevar 80a6185947 Yet another documentation improvement for #932.
Now it should be clear that the map's changelayer event is triggered
whenever the layer's actual visibility (i.e. visible to the user) changes.
2013-04-10 10:21:28 +02:00
ahocevar 92ac9680d8 Another documentation improvement for #932. 2013-04-10 10:21:28 +02:00
ahocevar f22937b2ae Documentation improvement (fixes #932) 2013-04-10 10:21:28 +02:00
ahocevar 5deb2c6280 Merge pull request #931 from ahocevar/beforefeaturemodified
Also trigger beforefeaturemodified event in non-standalone mode. r=@bartvde
2013-04-10 01:12:29 -07:00
ahocevar e5dc583d52 Also trigger beforefeaturemodified event in non-standalone mode
d2a32d5 accidently changed the number of assertions in the
test_selectFeature function, so the change in behavior that no
beforefeaturemodified event is called any more in non-standalone mode got
unnoticed: Before unhacking ModifyFeature, the SelectFeature control
called the beforeSelectFeature method directly. Now, without a built-in
SelectFeature control, we need to call it from the selectFeature method in
both standalone and non-standalone mode.
2013-04-09 23:16:30 +02:00
ahocevar d3f32c4dea Merge pull request #925 from ahocevar/google-container
Google Maps rendering bug on fresh reload. r=@kevbradwick (fix #925)
2013-04-04 03:36:58 -07:00
ahocevar f0ef4728d8 Simplifying layer visibility handling
Instead of adding and removing the Google container, we just toggle
style.display. This also removes the unused rendered and displayed
properties of the cache.
2013-04-04 11:40:21 +02:00
ahocevar c62ffb29b8 Merge pull request #922 from ahocevar/backbuffer-zindex
Configurable backbuffer order. r=@bartvde
2013-03-27 13:13:36 -07:00
ahocevar bc5054399c Typo in API docs; use "map-resize" option in example 2013-03-27 21:11:15 +01:00
ahocevar 434178ef49 Making backbuffer order configurable
In OpenLayers 2.12, the backbuffer for each layer was placed right below
the layer itself. With animated zooming, that was changed so backbuffers
are all placed below the base layer. As it turned out, this is only good
for certain kinds of layers (e.g. street labels), so the default now is
to place the backbuffer right below its layer again. But the
transitionEffect option can now have a new value, 'map-resize', which will
cause the backbuffer to be placed below the base layer.
2013-03-27 17:46:36 +01:00
ahocevar fe172ccf6e Backbuffer needs z-index
Since we don't rely on the DOM order for layers, we also cannot rely on it
for backbuffers. This change simply adds a sensible z-index to the
backbuffer container.
2013-03-27 16:19:58 +01:00
ahocevar 246d2d99d3 Merge pull request #920 from ahocevar/backbuffer-conditional
Backbuffer and transitionend only when there are tiles. r=@bartvde
2013-03-27 07:14:51 -07:00
ahocevar 316c1888d2 Use the last child of the container only if loading was aborted
Otherwise we may pick a tile that is already half way through the
transition, which will cause the backbuffer to go away too early.
2013-03-26 14:48:23 +01:00
ahocevar 7f18a7b3df Backbuffer and transitionend only when there are tiles
When an application zooms the map programmatically right after
initialization, there will be an empty backbuffer. This should be avoided,
because it adds an unnecessary DOM element.

The tile.onLoadEnd handler registers a transitionend listener on the image
of the last loaded tile. But if loading was aborted, there will be no
image. The new logic registers the transitionend event on the last child
of the layer div, which is not necessarily the tile we're handling loadend
for. When the backbuffer is empty (i.e. no tile was loaded at the time the
backbuffer was created), it will be removed immediately.
2013-03-26 11:53:27 +01:00
ahocevar 63ea10a916 Merge pull request #917 from Turbo87/segment-distance
Geometry: Added distanceSquaredToSegment() function
2013-03-25 12:30:05 -07:00
ahocevar cae4df3ce7 Merge pull request #916 from Turbo87/bounds
Added extendXY() method to Bounds class
2013-03-25 05:17:49 -07:00
ahocevar 9a06ec47f6 Merge pull request #914 from Turbo87/encoded-polyline
EncodedPolyline: Backported ol3 polyline parser library
2013-03-22 06:12:52 -07:00
ahocevar 410a88c674 Thicker strokes make it easier to select line segments 2013-03-20 10:30:05 +01:00
ahocevar b0bc72fa7f Merge pull request #913 from ahocevar/modify-feature
Simplifying and unhacking the ModifyFeature control. r=@bartvde
2013-03-20 02:23:42 -07:00
ahocevar 6fca6aef60 Addressing @bartvde's review comments 2013-03-20 10:23:00 +01:00
ahocevar bed011514f Increasing point radius for easier touch selection 2013-03-20 05:12:35 +01:00
ahocevar d2a32d5421 Simplifying and unhacking the ModifyFeature control
With two nested controls (DragFeature, SelectFeature), which - among
others - activated two OpenLayers.Handler.Feature instances, the
ModifyFeature control was fragile and hard to debug.

The issue that @iwillig, @bartvde and myself tried to track down was
that the two Feature handlers interfered with each other, making it hard
to select features on mobile devices, and causing points to jump during
dragging because of not updated last pixel positions.

With this refactoring, there are no more nested controls. All that's left
is a Drag handler. All tests pass. I had to remove one test that checked
for dragging of an unselected point while another was selected, because
now (and partially even before this change, thanks to the ugly drag
handler hack that is now removed) dragging a point will also select it,
saving the user an extra click.
2013-03-19 23:00:10 +01:00
ahocevar 7002ec49e7 Merge pull request #903 from ahocevar/903
Google Maps and WMS layer Backbuffer error. r=@mosesonline
2013-03-19 14:38:46 -07:00
ahocevar 3dea8dacb4 Using the correct parent node
When we have a Google base layer, the parent node of the base layer's div
will be a different one.
2013-03-13 08:06:41 +01:00
ahocevar 5b98769234 Merge pull request #896 from mosesonline/refresh-bugfix
Refresh bugfix
2013-03-01 07:02:35 -08:00
ahocevar 2f85ca99bf Remove osm layer when back in Vienna
Thanks @tschaub for this suggestion.
2013-02-17 12:53:59 +01:00
ahocevar 419cb272c7 Adding ZoomBox and OSM fallback layer
Using the new defaults, we don't need to pass options to the Navigation
control anymore. As a side effect, we get ZoomBox, but need to add css for
it to work properly. For users outside Vienna, an OSM fallback layer was
added which gets activated when the viewport does not intersect Vienna.
2013-02-16 10:32:35 +01:00
ahocevar ba0ba64c74 Updating PinchZoom tests (see #800)
With the map's applyTransform method, the control does not need and have
its own applyTransform and center management any more.
2013-02-14 22:13:07 +01:00
ahocevar e9b65691c4 Updating example to match @ahocevar's mobile-wmts-vienna branch 2013-02-14 10:44:41 +01:00
ahocevar 4b163e0482 Merge pull request #800 from ahocevar/transform
Use GPU where available; animated zooming. r=@elemoine
2013-02-14 01:15:18 -08:00
ahocevar 18b0c5fc7d Merge pull request #812 from ahocevar/mousewheel
Better mousewheel/touchpad behavior for zooming. r=@elemoine
2013-02-14 01:13:56 -08:00
ahocevar d0249643b3 Incorporating @elemoine's review comments 2013-02-14 10:11:48 +01:00
ahocevar f46ed44131 Merge pull request #857 from faegi/featureClickPatch
Clear cached mousedown/up positions used for distinguishing between (fix #856).
2013-02-12 01:46:30 -08:00
ahocevar 982302ff03 Merge pull request #877 from finn-no/panzoombar-fix
Fix click on PanZoomBar when page is scrolled (fix #798).
2013-02-11 23:58:41 -08:00
ahocevar 47d60a6ab8 Merge pull request #874 from ahocevar/tilemanager-backbuffer-id
Tile images should not have an id. r=@bartvde
2013-02-07 08:17:35 -08:00
ahocevar 7936f0345f Tile images should not have an id
When the TileManager adds an image to its cache, it might be a backbuffer
image. Backbuffer images have an id with a '_bb' postfix. Regular images
do not have an id at all. In OpenLayers.Layer.Grid, in
addTileMonitoringHooks, a loadend listener is created for each tile. This
listener checks for tie image id, and will remove it from its parent node.
This will cause images to be removed from the layerDiv if the image comes
from the TileManager's tileCache and was on a backbuffer by the time it was
added to the cache.

Simply removing the image's id before assigning it to a tile resolves the
issue.
2013-02-07 16:44:16 +01:00
ahocevar 47e7c300a8 Merge pull request #863 from ahocevar/uncache
Uncache images that are no longer valid. r=@bartvde
2013-02-01 06:01:40 -08:00
ahocevar 378a0e97b5 Uncache images that are no longer valid
When a layer sets a cached image's className to something else than
.olTileImage (e.g. by setting .olTileReplacing), we should not keep the
image in the cache any more, because it may no longer be valid.
2013-02-01 00:58:40 +01:00
ahocevar 40f9296372 Merge pull request #850 from eykamp/irregular_character
Irregular character
2013-01-22 06:56:25 -08:00
ahocevar 32d7e02ec0 Merge pull request #843 from ahocevar/early-loadend
Safeguard against listeners that recreate the grid. r=@bartvde
2013-01-17 07:30:22 -08:00
ahocevar c742c14a52 Safeguard against listeners that recreate the grid
We need to handle the backbuffer before we fire the loadend event.
Otherwise listeners that call e.g. mergeNewParams() will cause the
backbuffer removal code to fail, because tile.imgDiv (and hence
this._transitionElement) will be null.
2013-01-17 16:24:15 +01:00
ahocevar 86c425774a Merge pull request #839 from ahocevar/tilemanager-changelayer
Process queue immediately when params change. r=@bartvde
2013-01-16 04:14:50 -08:00
ahocevar e23c18a09c Process queue immediately when params change
This fixes an issue where the queue would never be processed when a layer
is updated using mergeNewParams.
2013-01-16 12:09:37 +01:00
ahocevar 2a7547c36c Merge pull request #836 from ahocevar/replacing
No .olTileReplacing class for singleTile layers. r=@bartvde
2013-01-16 02:48:26 -08:00
ahocevar fde7c5cc76 After #829 fallThrough needs to be true for this test 2013-01-15 13:41:26 +01:00
ahocevar 2cd14dfbfd No .olTileReplacing class for singleTile layers
This fixes a regression for singleTile layers with transitionEffect set to
'resize', where the .olTileReplacing class was not removed from the tile.
2013-01-15 13:08:48 +01:00
ahocevar 3107751fb7 Clarifications on fallThorugh (see #829) 2013-01-10 22:12:35 +01:00
ahocevar 158185e9a2 Merge pull request #829 from bjornharrtell/fallThough
Default fallThrough to false
2013-01-10 13:08:21 -08:00
ahocevar 774e983631 Turning on GPU for the tiles only turns out to be faster
Especially on iOS 6, this gives way better performance. And it does not
seem to cause any additional flicker.
2013-01-09 14:38:18 +01:00
ahocevar 9b7e35d1dd Merge branch 'master' of github.com:openlayers/openlayers into transform
Conflicts:
	theme/default/style.css
2013-01-09 14:31:52 +01:00
ahocevar 6ce72e9185 Adding TileManager to mobile build profile, and note in Map.js
As suggested by @probins; see #702.
2013-01-08 14:26:18 +01:00
ahocevar 8b501eb051 Merge pull request #811 from ahocevar/mergenewparams
When the resolution does not change, remove backbuffer tile by tile. r=@bartvde
2013-01-07 13:45:53 -08:00
ahocevar f0db21f9c9 Fixing tests 2013-01-07 18:16:23 +01:00
ahocevar c8564838bc When the resolution does not change, remove backbuffer tile by tile
This change introduces a new 'replace' mode for tile transitions: when the
resolution does not change, which happens when mergeNewParams is called,
the tile will be marked with the .olTileReplace class. If this class sets
the tile's imgDiv display to 'none', the backbuffer for the tile will
immediately be removed when the tile is loaded.
2013-01-07 15:42:34 +01:00
ahocevar 18d548f979 Merge pull request #702 from ahocevar/smart-queue
New tile image cache and tile queue improvements. r=@bartvde,@elemoine
2013-01-07 06:38:07 -08:00
ahocevar 4a3651b7da Release notes and additional in-line comment
As suggested by @bartvde.
2013-01-07 15:30:05 +01:00
ahocevar 80f13188a3 Addressing @bartvde's review comments 2013-01-07 14:26:41 +01:00
ahocevar 1eeda5d9f7 Merge pull request #823 from probins/maxextent
Overview map should use map.getMaxExtent
2013-01-07 00:56:05 -08:00
ahocevar 94020f0fb1 Merge pull request #822 from probins/mapmax
Map: correct docs for maxExtent
2013-01-07 00:55:22 -08:00
ahocevar f71976b487 Merge pull request #818 from Turbo87/encoded-polyline
examples/vector-formats: Added "Encoded Polyline" format
2013-01-02 07:03:12 -08:00
ahocevar b57540ecfc Merge pull request #813 from Turbo87/encoded-polyline
Format: Added EncodedPolyline class. Merging this as a first step towards
support for alternative geometry encodings. See #813 for TBDs.
2012-12-28 11:55:12 -08:00
ahocevar 4b2e80fa36 Merge pull request #805 from mosesonline/unselectAllFix
unselectAll on removing layer fix
2012-12-24 06:17:04 -08:00
ahocevar 07e039b566 Merge pull request #803 from ahocevar/tween-framerate
Tween: skip frames when minimum frame rate is not reached. r=@bartvde
2012-12-24 06:11:11 -08:00
ahocevar 1b2003a2b4 Recovering from merge conflicts 2012-12-23 19:18:26 +01:00
ahocevar 21448d2fd5 Adding animated zooming 2012-12-23 18:47:03 +01:00
ahocevar d2b3bded72 Better way to get GPU support, and avoid flicker
These declarations were suggested on
http://blog.teamtreehouse.com/increase-your-sites-performance-with-hardware-accelerated-css
2012-12-23 18:34:55 +01:00
ahocevar afe53aba7d Put backbuffer below all layers, except when panning 2012-12-23 18:34:55 +01:00
ahocevar 0b8deb11a2 Revert "No backbuffer removal delay needed with 3d enabled"
This reverts commit 7e8271525ed52288092a135b1c65eed4849c8e49.
2012-12-23 18:34:55 +01:00
ahocevar aa5bab250a 3d transforms in svg content are bad in other browsers as well 2012-12-23 18:34:54 +01:00
ahocevar a309b24053 Only use 3d transforms when stylesheet has transform on layerContainerDiv
This allows users to control whether 3d acceleration should be used or not:
Just like with plain web pages, having a stylesheet that sets a transform
on the map's layerContainerDiv will make OpenLayers use translate3d and
scale3d. When no such transform is set in the stylesheet, style.left and
style.top will be used, except for e.g. pinch zoom, where scaling is
needed.
2012-12-23 18:34:54 +01:00
ahocevar 13b4ca6560 Do not set translate3d on svg children
In current Webkit browsers, having translate3d on svg child elements
causes the positioning from the layer not to be inherited by the vector
layer content.
2012-12-23 18:34:54 +01:00
ahocevar b89d3f1ee8 Going one element up with GPU support, adding it to mobile css also 2012-12-23 18:34:54 +01:00
ahocevar c03f1dc9bf Own applyTransform method is no longer needed 2012-12-23 18:34:53 +01:00
ahocevar 25c8b0ceaf Adding transforms to turn on GPU 2012-12-23 18:34:53 +01:00
ahocevar 980792e190 GPU needs to be turned on for all elements we move 2012-12-23 18:34:53 +01:00
ahocevar 3d79001a92 Updating and adding tests 2012-12-23 18:34:53 +01:00
ahocevar 3ab9a1f63b No closure, to make testing easier 2012-12-23 18:34:52 +01:00
ahocevar f51211e93f No magic for loadend delay
This change reintroduces the removeBackBufferDelay, and documents exactly
what it does and when it may be useful.
2012-12-23 18:34:52 +01:00