-
Notifications
You must be signed in to change notification settings - Fork 770
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Chrome breaks entire page when many vector layers are present and the map is enlarged. #1181
Comments
We've also experience this problem, which seems to be related to the latest version of Chrome or at least have gotten worse. I'm am currently using a computer with an older Chrome version (27.0.1453.93), with which I do not experience the problem in our application. If I however use a computer with the latest Chrome version, then the problem appears. It also seems, that If any kind og browser dialog is brought up (e.g. "Do you want Chrome to save your password"), then the map suddenly appears again until I close the dialog. |
I just sent the issue to Google Chrome team as well in case they can help. |
Hi Kjelderg Can you link to the Google Chrome issue you have created |
Hmm...I could not find the Chrome issue (I used the Tools->Report An Issue feature which seems to deposit the issue in a black hole) so I created a Chromium issue[1] as well. [1] https://code.google.com/p/chromium/issues/detail?id=325236 |
The latest version of chrome (32.0.1700.76 m) seems to have made this even worse. I have found though that OpenLayers 2.12 does not exhibit the problem. See http://jsfiddle.net/tHWV6/19/ |
1000 layers? This means 1000 dom elements on the map. I'm not surprised that this causes issues. Try to reduce the number of layers. |
Sorry, I should have clarified. I was trying to show that version 2.12 works (does not cause rendering issues) in the latest version of chrome even with an excessive number of layers. |
We were able to reproduce this with arround 6 layers on a fullscreen map on a 1920x1200 screen. that's not so excesive. |
@belug23 can you share a link to your example? |
I dont have a live server with it, but this fiddle brake with 10 layers on a 1920x1048 screen : Here's how to make it brake (since it's not full screen) Enlarge the map to the maximum of the fiddle page, then use the map vertical scroll to scroll down. You may have to close your download bar and hide your bookmarks bar. One thing I've discover this morning, Linux and chrome 32 don't have any problems. |
Hi all I've gotten closer to the cause of the problem. The file OpenLayers-2.13.1/theme/default/style.css contains the style configuration .olTileImage { From what I can see then the webkit specific CSS configurations If I remove these using the Google Chrome Developer Tools. Then the problem disappears. I will now create a custom CSS without these and try to run it in our test environments. |
Just like you say, I added the following to my CSS and the problem is reduced to blinking/flashing when resizing, but the page does render: /* work around conflict of Chrome and OpenLayers */ |
|
I can reproduce this bug, but only on Chrome on Windows platform; I cannot reproduce on Linux nor Mac. I have also created another simple test. Adding vector layers one by one allows me to make the tile layer glitchy and not invisible: http://ivan.sanchezortega.es/chrome_ol_bug/ |
Thank you for that great test page. Maximized on my iMac in Chrome, I the map partially disappears at 4 vector layers and entirely at 5. |
Even with the CSS patch the blinking happend while resizing and moving on the map. Anything else could cause that? |
@mprins: I tried to override the -webkit-perspective with the following configuration in own CSS file: .olTileImage { It did however not solve the problem. I must conclude it is related to -webkit-backface-visibility and -webkit-transform. I've added same configuration as @kjelderg in my own CSS. i.e. .olTileImage { |
The CSS tweak from @kjelderg doesn't seem to have any effect on my page :-/ |
@IvanSanchez I see similar problem in this thread: |
Thanks @kwadrat, using that other thread I came up with the following: svg { This fixes it for me even with 500 layers (yes i know that is way too much). See here http://jsfiddle.net/6fxLe/7/ Version 33.0.1750.146 m |
Workaround above results in displayed map but flicker when zooming/panning. Removing CSS classes olLayerGrid olTileImage from the OL default theme resolves the issue completely for me, but that of course also means that GPU acceleration is off :( I guess that Leaflet has been hit by this issue too so it would probably be worth looking into if they have found a workaround. |
Sure enough - Leaflet/Leaflet#2612. |
Now I can also reproduce this with Chrome on windows, by using just two vector layers and 5 or 6 tile layers. |
Related chrome issue: https://code.google.com/p/chromium/issues/detail?id=337493 |
I fix this?; in firefox if it can load smoothly layers |
This issue also impacts OpenLayers openlayers/openlayers#1181 and Leaftlet Leaflet/Leaflet#2612 The solution is to deactivate 3D chrome effects.
This issue also impacts OpenLayers openlayers/openlayers#1181 and Leaftlet Leaflet/Leaflet#2612 The solution is to deactivate 3D chrome effects.
This problem only seems to exist in Chrome. This problem is a little tricky to quantify since the variables are both number of vector layers and size of map.
I created a minimal fiddle [1] that demonstrates the problem. To see the issue, run the code and expand your browser window to a fairly large size. Near-maximized on my 2560x1440 is plenty with the values in it currently.
Increasing the number of vector layers decreases the required size of the window. Decreasing either the size of the window or the number of vector layers causes everything to work like normal. This definitely looks like some sort of memory problem.
[1] http://jsfiddle.net/kjelderg/j2u9T/1/
The text was updated successfully, but these errors were encountered: