Commit Graph

276 Commits

Author SHA1 Message Date
Marc Jansen
a34e627b75 Remove dangling space in license header. 2013-02-07 10:33:20 +01: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
Bart van den Eijnden
d7f013ddbd when cloning a layer that is loading, make sure numLoadingTiles is reset to 0 on the clone 2013-01-16 16:26:51 +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
Tim Schaub
bbc73a21d8 Update copyright date 2013-01-07 22:01:16 -05: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
80f13188a3 Addressing @bartvde's review comments 2013-01-07 14:26:41 +01:00
Bart van den Eijnden
9adbf431ca clear the grid when we change from singleTile mode true to false or vice versa, discussed change with @ahocevar see #821 for the details 2013-01-07 13:25:15 +01:00
Bart van den Eijnden
5b5415d6b7 fix indentation 2013-01-04 17:09:38 +01:00
Bart van den Eijnden
de4b995616 incorporate @ahocevar's review 2013-01-04 17:05:03 +01:00
Bart van den Eijnden
1e1ce54e5b add tests and finish off the functionality for switching between singleTile true and false 2013-01-04 15:10:48 +01:00
Bart van den Eijnden
5114ecbaee ability to switch between singleTile true and false 2013-01-04 14:29:07 +01:00
ahocevar
efd2de870a Recovering from merge conflicts 2012-12-23 17:24:20 +01:00
ahocevar
c0913668d3 moveTimerId is no longer used 2012-12-23 17:00:45 +01:00
ahocevar
80fa251649 New TileManager
This removes all tile queueing/loading specific code from Layer.Grid
and creates a new class that manages tile loading and caching.
2012-12-23 17:00:45 +01:00
ahocevar
2ee362a79b New tile image cache and tile queue improvements
We now reuse tile images by maintaining a cache of image elements with a
simplified LRU expiry policy (by order, not by timestamp). The tile queue
is bypassed for images that are available in the cache, so they can be
rendered immediately. And the tile queue itself loads more than just one
image at a time now (2 per layer url).
2012-12-23 16:57:24 +01:00
ahocevar
810d9ea95d Fixing line breaks. 2012-12-21 13:10:26 +01:00
ahocevar
fcd8586883 Using an array for the transitionend event names 2012-12-21 13:07:36 +01:00
ahocevar
43c646b6da Use new Opera event name as well
As pointed out by @bartvde, according to
http://stackoverflow.com/questions/5819912/webkit-transition-end-in-mozilla-and-opera,
Opera uses otransitionend or oTransitionEnd, depending on the version.
2012-12-21 13:01:15 +01:00
ahocevar
dd244e6988 Use transitionend listeners where available
In addition to relying on removeBackBufferDelay, we can remove the
backbuffer earlier without flicker in an ontransitionend listener on the
last loaded tile.
2012-12-21 12:33:28 +01:00
ahocevar
c3b13b5df3 Using radix parameter to make linter happy 2012-10-15 08:27:01 +02:00
ahocevar
583dc15700 Merge pull request #587 from ahocevar/587
Layer.WMS: BBOX precision errors in URLs. r=@bartvde
2012-10-12 08:53:23 -07:00
ahocevar
a0acf1e550 Calculating rowSign only once 2012-10-12 16:16:44 +02:00
ahocevar
0eb8949ad2 Updating and fixing API docs 2012-10-12 16:11:10 +02:00
ahocevar
157dd9e1c2 Fixing typo 2012-10-12 14:44:48 +02:00
ahocevar
6607bcc0bb Do not cache data from aborted tile loads
This also results in a simplified cache method that can more easily be
overridden for use with other storage providers.
2012-10-12 14:06:08 +02:00
ahocevar
ff4a1b2468 Optimizing positions for rendering
Calculating pixel positions from origin and grid index causes alignment
issues in the grid. By going back to incremental positioning, we get a
result without blank spaces between tiles again.
2012-10-12 03:23:56 +02:00
ahocevar
66455600c7 Better precision for right and top corners 2012-10-12 03:10:42 +02:00
ahocevar
c5bb52d93f No deltas for tile bounds/position calculation
Now we also do not use deltas for shiftRow and shiftColumn. Some
refactoring was done so we do not need different calculateGridLayout
methods for layers with top-left and bottom-left tile origin.

TODO: With this commit, ArcGisCache and KaMap layers are broken.
2012-10-11 21:22:52 +02:00
ahocevar
d4f011d00c Absolute calculation of tile bounds
This avoids cumulated tile bounds errors for layer types that do not use a
tile row/column index in requests (e.g. WMS).
2012-10-10 12:22:57 +02:00
ahocevar
75f2e1f847 Addressing @bartdve's review comments. 2012-08-21 14:00:48 +02:00
ahocevar
a3ec0f77e0 Using integer pixel space to avoid whitespace between tiles. 2012-08-21 13:57:11 +02:00
ahocevar
b2210d00a9 Removing no longer needed code.
Thanks @elemoine for catching the IE6 reflow in Tile/Image.js.
2012-08-21 13:57:11 +02:00
ahocevar
f0ad48597f No more percentage based positioning.
Client zoom now supports both over- and undersampling.
2012-08-21 13:57:11 +02:00
ahocevar
26d4fe3ce8 Making row and column size consistent, as suggested by @bartvde. 2012-08-21 13:37:48 +02:00
ahocevar
0f58868830 When using a buffer, the grid lacks rows/columns at the top/left.
This is because the threshold used for deciding when a column or row is shifted is too far to the bottom right. A tiny fix, but effective. A new test makes sure that we don't shift columns more than necessary when the layer is dragged.
2012-08-20 18:52:17 +02:00
Éric Lemoine
d289aa327e Grid.removeExcessTiles removes more tiles than it should, refs #481 2012-05-24 22:55:43 +02:00
ahocevar
72d1b54956 Also taking into account zoomOffset.
Now the meaning of getServerZoom is fully clarified, and we can get rid of some code again as well.
2012-05-11 00:26:09 -06:00
ahocevar
40b4cc49e0 Using OpenLayers.Util.indexOf.
Thanks @jorix for catching this.
2012-05-11 00:26:09 -06:00
ahocevar
9585341d9c Changing/fixing the meaning of getServerZoom.
If a layer is configured with serverResolutions, then getServerZoom should return the zoom level as index of the current resolution in the serverResolutions array.
2012-05-11 00:26:08 -06:00
Éric Lemoine
f870417a30 class name olLayerGridTile renamed olLayerGrid 2012-04-03 06:28:06 +02:00
Éric Lemoine
d650ba20d9 Layer.Grid - better docs for transitionEffect, removeBackBufferDelay, and className 2012-04-02 20:59:16 +02:00
Éric Lemoine
d8473f9249 make Layer.Grid.prototype.className an API property 2012-04-02 17:57:37 +02:00
Éric Lemoine
8c6466bf2a move transitionEffect to Layer.Grid.prototype, and discourage the use of transitionEffect:"resize" on non-opaque layers 2012-03-31 21:32:49 +02:00
Éric Lemoine
1e5f83593c removeBackBufferDelay defaults to 0 for singleTile layers 2012-03-31 21:23:21 +02:00
Éric Lemoine
86cd9c7bf7 add class to Layer.Grid layer div 2012-03-31 21:22:36 +02:00
Éric Lemoine
e0b93c2e45 The OpenLayers code is published under the 2-clause BSD license 2012-03-30 08:33:55 +02:00
Éric Lemoine
650df2a8f1 change copyright header in every OpenLayers js file 2012-03-29 22:14:56 +02:00
ahocevar
5e9104a2a2 Revert "Merge pull request #304 from mpriour/singleTile"
This reverts commit 84fb15e1d2, reversing
changes made to d0d116efdf.
2012-03-21 10:05:22 +01:00