'How Chrome Broke the Web' (tonsky.me) 283
Reader Tablizer writes (edited and condensed): The Chrome team "broke the web" to make Chrome perform better, according to Nikita Prokopov, a software engineer. So the story goes like this: there's a widely-used piece of DOM API called "addEventListener." Almost every web site or web app that does anything dynamic with JS probably depends on this method in some way. In 2016, Google came along and decided that this API was not extensible enough. But that's not the end of the story. Chrome team proposed the API change to add passive option because it allowed them to speed up scrolling on mobile websites. The gist of it: if you mark onscroll/ontouch event listener as passive, Mobile Google can scroll your page faster (let's not go into details, but that's how things are). Old websites continue to work (slow, as before), and new websites have an option to be made faster at the cost of an additional feature check and one more option. It's a win-win, right? Turned out, Google wasn't concerned about your websites at all. It was more concerned about its own product performance, Google Chrome Mobile. That's why on February 1, 2017, they made all top-level event listeners passive by default. They call it "an intervention." Now, this is a terrible thing to do. It's very, very, very bad. Basically, Chrome broke half of user websites, the ones that were relying on touch/scroll events being cancellable, at the benefit of winning some performance for websites that were not yet aware of this optional optimization. This was not backward compatible change by any means. All websites and web apps that did any sort of draggable UI (sliders, maps, reorderable lists, even slide-in panels) were affected and essentially broken by this change.
Get with the picture! (Score:2)
Is this why the Slashdot dragbar for hiding comments below a certain upvote doesn't work on my phone or tablet?
If so, get with the picture and fix it...Slashdot!
Re: (Score:2)
How is this Slashdot's fault when Google decided to fuck over half the web for their own gain?
Re: (Score:2)
Re:Get with the picture! (Score:5, Insightful)
Re: (Score:2)
What dragbar? Classic view here. /. looks like it did 15 years ago.
onScroll not passive? (Score:4, Insightful)
Re:onScroll not passive? (Score:5, Insightful)
The featured article claims that "All websites and web apps that did any sort of draggable UI (sliders, maps, reorderable lists, even slide-in panels)". In such web applications, if the user is performing a slide gesture, he doesn't necessarily want to make the whole document scroll just because the gesture has approached the edge of the document.
So let me get this straight: Are you claiming that such web applications "should fuck off"? Must they instead be rewritten as native executable applications that work only on one brand of operating system?
Re: (Score:2)
The featured article claims that "All websites and web apps that did any sort of draggable UI (sliders, maps, reorderable lists, even slide-in panels)". In such web applications, if the user is performing a slide gesture, he doesn't necessarily want to make the whole document scroll just because the gesture has approached the edge of the document.
I can't read /. with my cell phone and Opera. The sliders don't work (message filter) and the threads are unreadable.
Not to say I don't visit, I just stick with the summaries and links from them.
Re: (Score:3)
Maybe web sites should not be trying to behave like apps. Especially if doing so kills browser performance and battery life on mobile.
Can you give an example of a web site where this behaviour is actually desirable?
Re: (Score:3, Informative)
Maybe web sites should not be trying to behave like apps.
Have you considered that a website might be trying to behave like an app in order to circumvent the costs and censorship aspects of being in Apple's App Store?
Re: (Score:3)
Missing the point, I don't want apps wasting my battery on pointless crap either. A nice, usability focused UI will be fine, thanks.
I guess maybe there are some unusual applications that would benefit from your use case, but I really can't think of any app that was censored/driven out by price and would benefit from having that kind of interactivity via a web version.
Re: (Score:2)
A nice, usability focused UI will be fine, thanks.
What "nice, usability focused UI" do you recommend for reordering the relative position of items in an outline, or chat rooms in a server, or priorities in a to-do list, without slide gestures?
Re: (Score:2)
I assume that "move up/down buttons" move an item above the item above it or below the item below it. If so, good luck moving something up from the bottom of a list of a dozen or more items to near the top this way. If not, how would the user specify how far "move up/down buttons" move a particular item?
Re: (Score:3)
- A UI where, in order to move items in a list, you must click an up/down arrow and wait for the page to reload with the moved item in its new position
or
- A UI that lets you reorder a list by dragging the items where you want them?
Unlike most people (I've done market research on this very topic), you must not think the second option is more usable, because that's what Google broke.
Re: (Score:2)
Re: (Score:2)
Missing the point, I don't want apps wasting my battery on pointless crap either. A nice, usability focused UI will be fine, thanks.
Lynx.
Re: (Score:2)
Re: (Score:2)
A slide that st (Score:2)
When dragging is the standard way to scroll - as it is on mobile
True, a slide usually means a scroll. But a slide beginning with a long press is also the gesture on Android to move an object, such as a shortcut on the home screen. Why should a web application designed for browsers on Android not support a gesture consistent with the rest of Android?
Re: (Score:2)
nor does it make a huge amount of sense for slidable controls to be within a scrollable container that can scroll in the slide direction
A to-do item in a scrolling list of several dozen.
Re: (Score:3, Funny)
How about you fuck off the web, and go install a "native app", and get data-mined.
It's more than you deserve.
Yes, they should avoid installing native apps. Instead, they should use a Google-branded browser. That will DEFINITELY avoid data mining!
Re: (Score:2)
On a site running Google's analytic javascript!
Who wrote this? Donald Trump? (Score:5, Funny)
Re: (Score:2)
Do you mean the summary, or actual article? The summary I submitted in the story submission form was different from the Slashdot-published version. As the first line points out, it has been edited. Actually, my summary was shorter than the published version. For one, it didn't include the "very, very, very bad" line because I felt other wording already indicated Google's change made a bigly mess.
- Tablizer
Absolute power corrupts absolutely (Score:5, Interesting)
The mantra of the Chrome team was once "Don't break the web".
This hasn't been true for some time now. Why? Because power.
Take (for example) Google's newfound habit of "updating" their webfonts. How many layouts have they broken in the process? Millions.
Google needs to rediscover the value of accepted standards. But there seems to be a new management team calling the shots.
And they're mostly d*cks.
Re: (Score:3)
The mantra of the Chrome team was once "Don't break the web".
Their parent's mantra used to be "Don't be evil".
Can you see a pattern beginning to emerge here?
Re: (Score:3)
Take (for example) Google's newfound habit of "updating" their webfonts. How many layouts have they broken in the process? Millions.
If your website breaks because the font changes then it's not Google who deserves to be tared and feathered, but the web designer.
Re: (Score:2)
Take (for example) Google's newfound habit of "updating" their webfonts. How many layouts have they broken in the process? Millions.
If your website breaks because the font changes then it's not Google who deserves to be tared and feathered, but the web designer.
If you change a font used by a bunch of people without telling them and giving them an option to use the current version, you deserve to be tarred and feathered.
Why the FUCK would you pull the rug out from under someone like that?
Re: (Score:2)
Changing a font on a user without notice is bad. Changing a font on a website without notice to the website owner shouldn't make a difference. If it does make a difference, you're a bad, bad website designer.
Re: (Score:2)
Uh, that changes the font to the end user, so it's thus bad. Further, of course it makes difference! If there's no visual difference to the changed font, there's no point in changing the font!
Re: (Score:2)
Google needs to rediscover the value of accepted standards. But there seems to be a new management team calling the shots.
“It is difficult to get a man to understand something, when his salary depends on his not understanding it.”
-- Upton Sinclair
The Chrome team "broke the web"... (Score:2, Insightful)
if you use Chrome.
As I'm firmly in the 'fuck Google and all of their products' camp, I hadn't noticed.
Re: (Score:2)
Came here to say this. If Chrome is ever the only browser available, I'll simply do without the Web. Not only do I despise Google's antics, I'm one of the (apparently) small minority that thinks their browser utterly sucks and always has.
Re: (Score:2)
Re: (Score:2)
This is going to hurt Chrome more than anything.
Didn't they just break their own product? (Score:5, Insightful)
It doesn't sound like they broke the web; surely other browsers carried on working just fine? They broke their own product.
Re:Didn't they just break their own product? (Score:5, Insightful)
Except that users will perceive it as "this old website doesn't work", not "Chrome doesn't work", since the problems only happens in some websites and not others.
Re: (Score:2)
Re: (Score:2)
This should be obvious, but the end user -the one who suffers the problem- can't update the website.
Re: (Score:3)
Man, I'd thought "the internet won't start" browser confusion problems had died with the last millennium. Guess some things never change.
Re:Didn't they just break their own product? (Score:5, Insightful)
It's like a smudge on the screen, except users would probably figure out that not all web sites started having smudges in a fixed position.
During your first week of working in this industry, you will quickly learn one thing: never, ever depend on users to figure out anything.
You can only count on users to find the most ingenious ways to break things. You can't count on them to figure out new things. In fact most of them really hate learning. They will go to such extraordinary lengths to avoid learning, that actually learning would have been far less effort.
If you've ever worked in an office setting, you will have seen tons of users who have used the same systems for years. Yet they know nothing more about how things work than when they started. They managed to avoid even accidentally picking up bits of new info along the way. Now that takes real work. If a later version changes the location of a menu item or icon, the company has to invest in "retraining".
That's what "users" are like.
Re: (Score:2)
My kingdom for some mod points!
Speaking as the person responsible for much of that "retraining" it never ceases to amaze me just how much effort people are capable of putting in to the avoidance of knowledge.
Re: (Score:2)
If it's anything like AI, every time you learn something, the bar is instantly raised. Bar inflation is underappreciated by the pocket protector set. Thus perhaps the proper diagnosis is that the end user is investing enormous amounts of effort into stopping the bar from moving. Because there's no end in sight to how much IT support
Re: (Score:2)
Re: (Score:2)
Your safari number assumes that only 2/3 of safari users are on iOS (as iOS only has about 18% market share last I checked) Do you really think that many people install Safari on Android?
The most common browser on Android though is actually probably Samsung's bundled "internet" app, though admittedly it's just a crippled and re-branded Chrome. (oh how I wish manufacturers would quit putting their own branded apps on instead of actual working ones...)
Microsoft Redux (Score:2)
Re: (Score:3)
Isn't it funny how the bigger companies seem to just "know better" than the rest of the Internet engineers?
It would perhaps be better if you internalize the fact that the criticism of having "broke the web" is a one person opinion.
Others would probably disagree.
Chrome is the new IE (Score:5, Informative)
Dominant market position - check.
Starting to define its own browser-specific functionality - check.
Telling developers they should use their company's browser-specific functions to improve performance - check.
Meet the new boss, same as the old boss. Anyone who didn't see this coming the moment Google forked Webkit simply wasn't paying attention.
Re: (Score:2)
Totally sucks to the point of being unusable, and can't even do something as simple as sizing a box correctly, and can't even show a PNG with transparency ten fucking years after the standard: not-checked.
Anyone who thinks Chrome is the new MSIE, totally doesn't remember how outrageously bad MSIE was. I understand if you blotted it out of your memory; that isn't your fault. But don't pretend things now are nearly as bad as they were back then.
Chrome does seem to be trying to do some kind of embrace-and-ex
Re: (Score:2)
Meet the new boss, same as the old boss.
But.. but... the old boss was evil. New boss is not evil. He said so himself. That is his motto. Don't be evil.
Re: (Score:2)
Dominant market position - check.
Starting to define its own browser-specific functionality - check.
Telling developers they should use their company's browser-specific functions to improve performance - check.
One of my favorites is Google defining their own transport protocol and granting themselves full control over congestion algorithms.
Re: (Score:2)
Re: (Score:2)
Meet the new boss, same as the old boss. Anyone who didn't see this coming the moment Google forked Webkit simply wasn't paying attention.
YEAHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!
TL;DR: Tard Tears From Web "Devs" (Score:2, Interesting)
Re: (Score:2)
We need a new HTTP-friendly GUI standard. The HTML/DOM/JS stack sucks for modern needs. My suggestion is to move more of the computations, including the layout engine, to the server-side to reduce browser-version-dependency: slimmer client where the browser becomes mostly a dumb vector plotter.
You start by thinking, "what do we absolutely HAVE to do on the client" to be practical. If functionality can be moved to the server, then don't include it in the client (UI standard).
The X-Window system seems about t
Re: (Score:2)
Teradici PCoIP seems like the kind of thing you're looking for, but it's not really practical for a lot of casual applications because of bandwidth requirements. You've gotta remember that most people today are surfing the web on their phones; maybe not all the time, but they're doing it at least some of the time. If your alternative to client-side processing is unusable on a shitty 3G connection, it's a non-starter.
Ex-employee (Score:2)
This whole thing sounds like it was written by a gisgruntled ex-employee.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Have people completely forgotten about cross-compatibility or what? Now!! When all the browsers behave almost identically!
I want to know when you thought we ever had cross-compatibility? The only thing that's changed is which browser the web is built for. It used to be that sites only worked properly in Netscape, all other browsers be damned. Then it switched to IE and forget about using any other browser, and now you'd better use Chrome if you want the web to work. There's never really been a time since the dawn of the graphical browser where you could realistically expect the majority of the internet to "just work" on any br
Re: (Score:2)
Re: (Score:2)
I feel like you didn't live through the IE vs Netscape era...
Re: (Score:2)
How bad is it really? (Score:5, Insightful)
It's very, very, very bad
It explains:
Basically, Chrome broke half of user websites, the ones that were relying on touch/scroll events being cancellable, at the benefit of winning some performance for websites that were not yet aware of this optional optimization
OK, half the user websites? 50% of the web right? The linked article says:
We looked at the percentage of cancelable touch events that were sent to a root target (window, document, or body) and determined that about 80% of these listeners are conceptually passive but were not registered as such. Given the scale of this problem we noticed a great opportunity to improve scrolling without any developer action by making these events automatically "passive".
Looks like the chrome team did some basic profiling, figured out 80% of the listeners are actually passive. Still they should not have touched the default and educated the website developers to register conceptually passive listeners as passive, right?
Google gives some motivation for this:
We believe the web should be fast by default without developers needing to understand arcane details of browser behavior.
There are some plots and more profiling data there.
They could have done an RFC and got the standards updated in the next batch for this. But still, as evil behaviors go, this is not "dos is not done till lotus wont run" level. Does not even come to working around bugs in IIS in IE to make all other browsers crap out level of evil.
Re:How bad is it really? (Score:5, Insightful)
Yeah, I'm finding it a little difficult to get worked up about this. It's been this way for over half a year and I haven't noticed anything broken by it. And honestly I'm having a bit of difficulty imagining how a website could legitimately use this sort of eventListener and not be a prime example of sloppy coding. Yes it might've worked by the standard...I understand that. But really...listening for scroll events at the window, document, or body level? Can someone give me a good example of how this is used and couldn't be done better? Some of the "broken things" examples given in the linked article: Drag an drop list? Your list should be contained in some div or ul element and you should apply the listener at that wrapper level, not listen to ALL scroll events on the ENTIRE document. Sliders? Same. Maps? Same. Yes, it might have worked before by listening to all body events, but really that's just shit design.
So I feel like a better description would be more like "google broke 50% of the shitty websites, but not the well designed ones". But please, I welcome an example to show me where there are good reasons to do this.
Re: (Score:2)
It's been this way for over half a year and I haven't noticed anything broken by it. And honestly I'm having a bit of difficulty imagining how a website could legitimately use this sort of eventListener and not be a prime example of sloppy coding.
This should be the free square on this-is-why-developers-don't-write-requirements Bingo. Just because you don't use this style of interaction, nobody should need it.
How about these two use cases:
* Reordering elements in a list
* Maps
I use these all the time. It's entirely possible this change is why a few sites have become unusable on my phone and - like people have been pointing out - I've assumed it's because those sites weren't mobile compatible. Maybe the sites are mobile compatible, but not in Chrome. G
Re:How bad is it really? (Score:5, Insightful)
Or perhaps this should be the free square on why you read the post before replying to it. Read my post again. As I mentioned, this particular chrome change ONLY applies for event listeners that are bound to the window, document, or body. It's a pretty general rule that any type of listener should be scoped to only listen to the minimum required amount of events. When you bind to window, document, or body, you are pretty much saying GIVE ME EVERYTHING. So now you get called for every event...even those you couldn't possibly be the slightest bit interested in. Best programming practice is generally to scope your event listeners so that they only get called in cases where you might possibly be interested in handling them.
Lets look at a simple case....a webpage where the body contains 2 divs (divA and divB). In divA, you want to handle an event and perform some custom handling, possibly even cancel the the event with preventDefault. In divB, you never care about the event, so your event handler is always going to do nothing.
If you bind your event handler to divA, then whenever that event occurs in divB your event handler will never even be call. That's perfect...you aren't interested so lets not even waste time asking if you want to do anything. But if you bind your event handler to the body/document/window, your event handler is going to be needlessly called so that it can do ABSOLUTELY NOTHING (except waste CPU time) every time the event occurs in divB.
So that was my point...based on what I've read my gut instinct is to say that this would pretty much only affect web pages where the programmer was too sloppy/lazy to properly scope their event handler to the parts of the DOM where they're actually interested in doing something about that event.
But of course, I admit that I may certainly be overlooking cases where this isn't the case, and there's absolutely no way to implement it without throwing an event handler on the window/document/body. And that is why I humbly asked for examples where I was wrong and this is the only way to do it. I will note that you provided precisely zero example of such. Maps and reorderable lists can certainly have their event handlers properly scoped instead of just throwing them on the window/document/body
Re: (Score:2)
We looked at the percentage of cancelable touch events that were sent to a root target (window, document, or body) and determined that about 80% of these listeners are conceptually passive but were not registered as such. Given the scale of this problem we noticed a great opportunity to improve scrolling without any developer action by making these events automatically "passive".
What usually happens "We" is one person or small group with both power and a very particular interest. Then shockingly it turns out data collection and analysis reflects this same narrow view.
In the absence of "We" bothering to expend effort on a credible survey or offering up externally reviewable supporting evidence such proclamations in my view are best ignored in their entirety.
All browsers are broken (Score:3)
Can someone explain why I have to restart Firefox at least once a day in order to play back video of any kind?
And why doesn't Wunderground render properly on Firefox? It seems that everything is a lot slower these days further convincing me that trying to do anything online that used to be done with a dedicated program is a bad idea.
Re: (Score:3)
Because Firefox sucks, that's why (Score:2)
Firefox sucks. Use Pale Moon [palemoon.org].
Although everything gets slower and slower as they cram more and more into websites. Gotta have ads, and flying banners, and things minimizing, and embedded video auto-starting, and all that shit. For some reason.
Re: (Score:2)
I think there is a lack of optimization going on. Websites are now downloading more and more code to make them interactive and it's either not getting cached or it changes so often that caching it is pointless. That's a pretty dangerous precedent because it means more bandwidth is getting wasted.
Wunderground is a terrible mess (Score:3)
At this point I can count on Wunderground to be broken more than 50% of the time. Differently on different days, at different times of day, and on different clients, but broken most of the time. (Trying to change a display preference? Scroll through times in the 10-day forecast view? Select conditions from a controlled (airport) station instead of a random PWS sitting in someone's backyard next to their dryer vent? "We'll be rolling out an update in a couple of months.")
But not to worry. They're maintaining
Is Slashdot Affected? (Score:2)
I've noticed with Chrome for quite a while now that the slashboxes on the right don't scroll with the rest of the page, making them useless. Is this related to the change described in the article, or is this something different?
Really? (Score:2)
It sounds more like they broke chrome.
Won't be shuned as Internet Explorer (Score:3)
I came from Dos/Amiga to Windows, the very first time I used Internet Explorer I didn't want any part of it.
Not used to WWW I went to Microsoft.com found a game that looked decent and downloaded it (I thought). ActiveX kicked in and was installing something I hadn't looked at first, so pulled the computer power cord.
The second time I used IE was to download Netscape.
Multiple browsers (Score:5, Insightful)
It's idiocy like this why I am compelled to have at least 3 different browsers on every machine I use. Because it seems like every time there's some kind of update, stuff get horribly broken and I need to switch to a different browser for an extended period of time. It's to the point where I've purchased an xmarks premium subscription, so that all my bookmarks gets synced and I don't have to jump through hoops when the inevitable switch happens.
It's so frustrating the way companies think that they are allowed to have defacto control of the entire internet.
Fuck you Google, and fuck you Microsoft before you.
Embrace, Extend... (Score:3)
NWS Mobile (Score:3)
OnKeyDown breakage (Score:2)
If they really cared then they would fix the Chrome bug on Android, related to soft keyboards. Essentially the keyboardEvent.key is broken there and they donâ(TM)t care to fix it. Only platform where this does not work. >:(
So, you're saying... (Score:4, Interesting)
...developers should provide their own initial value for every parameter defined in the standard, and those non-standard parameters available in any popular implementation?
Re:So, you're saying... (Score:4, Insightful)
Re: (Score:2)
Yes, just like English being a living language (where we can get away with making things up on the fly) so is the World Wide Web. It is fluid, needs to change, has to change. If the new breaks the old, too bad for the old, it should of kept up!
This is not a falsifiable statement and therefore meaningless. Any change no matter how disruptive, useless or counterproductive can be justified equally simply by invoking this device.
Re: (Score:2)
I love you, WaffleMonster
This is not a falsifiable statement and therefore meaningless, Mom! GOD!!!!
Re: (Score:2)
I love you, WaffleMonster
This is not a falsifiable statement and therefore meaningless, Mom! GOD!!!!
Stating you like/love/hate something conveys what you think to others. It isn't meaningless.
All the waffles in my toaster disappeared, GOD ate them. Although probably incorrect is not meaningless.
I hate my new toaster because it's new and I don't like change. Although this is incorrect... I hate my new toaster because Belgian waffles won't fit in it... at least this is a statement that can be tested.
What makes parents statement different is it sets out a premise "It is fluid, needs to change, has to chan
Re: (Score:2)
'Living language' just means it's not a 'dead language', which is to say, people still speak it. It will naturally shift and change on its own, but that doesn't mean we have to go out of our way to corrupt it or make it harder for other people to use.
Re: (Score:2)
That will be fine as soon as Google makes Chrome smart enough to do what I mean every single time, no matter how I say it. Until browsers and web servers develop AI and conversational skills, we need them to simply conform to existing standards and not pull the rug out from under standards compliant web sites.
Re:Never rely on defaults... (Score:5, Insightful)
Re:Never rely on defaults... (Score:5, Insightful)
Years ago, websites were designed so that they rendered properly with Internet Explorer. Microsoft didn't have to follow any standards because they had the most widely used browser and Fuck You if you don't use IE.
Now Chrome is the most widely used browser and Google has decided to become the new Microsoft.
Re:Never rely on defaults... (Score:5, Insightful)
Exactly.
Google is just adopting Microsoft's "Embrace, Extend, Extinguish" tactic against its opposition because it has the market share to do it.
That, and Google's attack on free speech, are the reasons why I canceled my Google account.
Re: (Score:2)
It's more effective than being snarky from momma's basement.
Re: (Score:2)
It's more effective than being snarky from momma's basement.
Actually, it probably isn't.
Re: (Score:2)
An important thing to remember about Internet Explorer is that on of the reasons why it rendered everything is because it was happy to take extremely garbage, malformed HTML and find a way to make it work. You could make a compliant site, but IE made it easy to be lazy. It was the web designers that didn't have to follow standards—IE would render standards compliant sites well too.
Don't get me wrong, IE was a blight and I'm glad that it's basically dead. The user experience was terrible and it made th
Re: (Score:2)
And when IE was doing this, the standards weren't well established or even broad enough to cover most website features.
HTML5 was only ratified a couple years ago. Most of what HTML5 standardized was being done adhoc by all the browsers in the form of DHTML etc.
Re: (Score:2)
It should, but now that Google is the new Microsoft, I guess abusing that market dominance must just be something that happens to large companies.
Re: (Score:2)
That doesn't help when new parameters are added. How am I supposed to set a value for a parameter that doesn't exist yet?
Re: (Score:2)
Because they can change...
Sure, in the same way any aspect of an interface can be broken by non-backwards compatible changes. I think what you meant to say was:
Never rely on any code you didn't write.
Re: (Score:2)
Re: (Score:2)
Why settle for being merely evil when you can be so much more?
I'm surprised Google hasn't found a way to use that feature to ferret out some unmined corner of privacy.
I've never used Chrome. It flows in the same vein as not just up and giving my info to Google, but Google is welcome to grab it elsewhere.
Re: (Score:2)
Any website that has draggable UI, while also being scrollable in the same direction, on mobile device - is worth being broken.
You mean "is already broken". I have a website that I use on occasion that includes a map window on the main page. The map window allows for both scrolling in all directions, and zooming with your fingers on a mobile device. It is far too easy to accidentally zoom the map to fill the window. Once you do that, it is impossible to access any other part of the page as all scrolling will only move the map, and all zooming will only zoom the map. Your only recourse at that point is to re-load the page (and los