Commit Graph

155 Commits

Author SHA1 Message Date
ahocevar
a54ecca32b Merge pull request #705 from ahocevar/animation
Remove complexity from the image loading sequence. r=@elemoine,@tschaub
2012-11-05 10:33:59 -08:00
ahocevar
5a3bcc716b Not using requestAnimationFrame
Using the Timeline tab of the Chrome Developer Tools, no significant
difference of Paint events can be observed when requestAnimationFrame is
used. So I agree with @elemoine that there is no need to introduce
asynchronous behavior here.
2012-11-05 17:28:10 +01:00
ahocevar
65fa1aaa2d Make sure we do not make abandoned tiles visible 2012-11-05 10:43:05 +01:00
ahocevar
ebeb49b5e7 blankImageUrl is no longer needed for image tiles 2012-11-05 10:40:05 +01: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
7e5e221c8d Image loading performance improvements
Performance improvements are achieved by using requestAnimationFrame when
a tile's visibility changes, and by not starting with a blank image when
creating a new tile image. It seems that even Firefox does not show a
loading placeholder when the tile is made visible in an animation.
2012-10-05 09:24:53 +02:00
Pierre GIRAUD
8d8abac32a call stopObserving before setting img.src to blank image as well 2012-09-21 11:32:48 +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
ff1f99a03f Don't reuse tile images unless we have a new url to load.
Without this change, some browsers don't cache the images. See #454 for a discussion about this issue.
2012-05-25 18:47:57 +02:00
Éric Lemoine
612401a644 fix bug where tiles with gutters are shifted (refs #441) 2012-04-28 21:23:55 +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
f32bfa2240 Making backbuffer work again for tiles with frame. 2012-03-19 10:10:40 +01:00
ahocevar
81e7913075 Fixing crossorigin attribute handling. 2012-03-06 23:21:25 +01:00
ahocevar
a05eab29db Adding tileloadstart event to layer.
For this to be useful (i.e. so listeners can see/modify the tile url), a change in Tile.Image is required so we do not fire the loadstart event before we have the url to load.
2012-03-06 14:40:08 +01:00
Éric Lemoine
3b860ca4d7 Merge pull request #168 from jorix/Docs-issues3
Some problems in the documentation
2012-03-06 00:05:52 -08:00
ahocevar
fe63d0aa63 New events: loaderror for Tile, tileerror for Layer.Grid. 2012-03-05 14:20:01 +01:00
Xavier Mamano
bfb379f349 Fix some problems in the documentation. 2012-03-05 11:43:09 +01:00
ahocevar
85498cb23f Removing imageOffset and using getImageSize.
This fixes a regression that was introduced with the Tile.Image overhaul. See http://trac.osgeo.org/openlayers/ticket/3625.
2012-02-21 15:06:32 +01:00
ahocevar
5e734f20dc Merge pull request #179 from ahocevar/tile-queue
A tile queue that can be aborted. r=@elemoine,@fredj,@tonio
2012-02-14 10:59:12 -08:00
fredj
f8099e9ab1 Unset crossOrigin when setting blankImageUrl to the image.
Tested with FF 10, Chrome 16 and 18.
2012-02-10 13:46:13 +01:00
ahocevar
342d624616 New crossOriginKeyword property.
Set to 'anonymous' for Layer.OSM and Layer.Bing, and not used by default for other layers.
2012-02-10 12:50:13 +01:00
fredj
b34f272fa7 Optimize the string test 2012-02-09 15:35:35 +01:00
fredj
e9097ce066 More APIdoc for OpenLayers.Tile.Image.getCanvasContext 2012-02-09 15:34:08 +01:00
fredj
b4ac0af5d8 New OpenLayers.Tile.Image.getCanvasContext function 2012-02-09 15:34:00 +01:00
fredj
57ae02f381 Set image.crossOrigin attribute in OpenLayers.Tile.Image 2012-02-09 15:33:54 +01:00
ahocevar
720c49c040 Re-introducing tileLoadingDelay.
Only use it if no native requestAnimationFrame function is available. This should improve performance on mobile devices.
2012-01-29 18:50:03 +01:00
ahocevar
dde45696f7 Simplified tile queue; using the tile's beforedraw listener.
Since draw is the only tile operation that we defer, the tile queue can be an array of tiles and queue handling can be simplified. We now use the beforedraw event to defer drawing, and remove all occurrences of a tile from the tile queue when we draw it.

Instead of layers that want to defer tile drawing having to override the tile's draw method, layers can now abort drawing by returning false from a beforedraw listener, and later call draw(true) to draw the tile directly, without clearing it first.
2012-01-28 16:12:29 +01:00
fredj
40806dbe68 Pass the callback scope to getURLasync 2012-01-27 14:50:34 +01:00
fredj
fe202cef14 Change getUrlAsync parameters.
Instead of giving the function a bound, a scope, a property to update
and a callback, only give the bound and a callback.

When the url is retrieved by getUrlAsync, simply call the callback
with the url as argument and let the caller manage this.
2012-01-27 13:23:08 +01:00
Éric Lemoine
d3db3011a3 in Tile.Image do the opacity filter setting where it was done before, i.e. right after the img creation 2012-01-10 21:24:09 +01:00
Éric Lemoine
30c5b11d99 Merge branch 'master' into tile-fade-in
Conflicts:
	examples/fullScreen.js
2012-01-05 09:39:39 +01:00
tschaub
b844a3b11b Happy New Year!
Updating copyright to 2012.
2012-01-03 09:01:10 -07:00
Éric Lemoine
fcb9a6cd2c remove Tile.Image.onTransitionEnd - it is no longer used 2012-01-02 23:20:15 +01:00
Éric Lemoine
eb924c8f77 no longer rely on the transitionend event, unwanted flashes are avoid using a timer 2012-01-02 22:53:53 +01:00
tschaub
b7b0d6b712 Collecting image tile changes in the Image.js. 2012-01-02 11:40:50 -07:00
Éric Lemoine
5edd3d3f84 make Tile.Image compatible with CSS-based tile fade animation 2011-12-31 00:19:19 +01:00
ahocevar
7fbae9f345 Fixing IFrame tile layers.
A problem introduced with 5fda8835da can easily be solved by re-adding a check for imgDiv and a strict type check for useIFrame. Thanks @elemoine for pointing out that there could be a problem.
2011-12-22 01:14:04 +01:00
fredj
3cfd21c318 group the img.style changes 2011-12-12 15:05:51 +01:00
fredj
ee37617c21 Only set img.style.position once 2011-12-12 13:48:57 +01:00
fredj
efdd9d0eb2 don't create div for image tile when no gutter is used 2011-11-30 14:19:36 +01:00
ahocevar
4b0e45b369 adding comment that the reproject option is deprecated and getBoundsFromLayer is defined in deprecated.js, as suggested by @elemoine. 2011-11-18 13:48:07 +01:00
Éric Lemoine
c80746b890 Tile.Image.cloneMarkup renamed Tile.Image.createBackBuffer 2011-10-29 12:22:08 +02:00
Éric Lemoine
b39f4fde1c remove Tile.Image:insertBackBuffer and add API docs for Tile.Image:cloneMarkup 2011-10-18 08:25:46 +02:00
Éric Lemoine
0971124669 Tile.Image inherits from Tile 2011-10-18 08:25:02 +02:00
Éric Lemoine
1bffc4fe28 Tile/Image.js does not require Tile/BackBufferable.js 2011-10-18 08:24:32 +02:00
Éric Lemoine
69d3c76254 a "big back buffer" attempt 2011-10-15 23:48:13 +02:00
Éric Lemoine
89388880b7 do not return too early from onImageLoad 2011-10-08 00:22:22 +02:00
Éric Lemoine
1ee40cec02 IE<7 needs a reflow when the tiles are loaded 2011-10-08 00:06:28 +02:00