Hacker News new | comments | show | ask | jobs | submit login

It doesn’t feel equivalent to me; I tend to think that there’s a meaningful distinction between a bug known before shipping and a bug discovered after.

That said, it’s fair to ask why Apple hasn’t placed priority on the scrolling bug, post-AMP. What the real dynamics are I can only guess; I’d love to hear from lurking AMP or WebKit engineers.

The three main issues are that scrolling behavior was busted, clicking on the top bar doesn't scroll to the top like it does in all other scroll views in the system, and the URL bar doesn't show the 'real site' so links shared via the built-in mechanism are links to google, not to the actual site content.

All three of these are Google not taking into account mobile browser design. None of these can really be classified as issues in Safari, rather they are consequences of the Safari design and the design choices Google made.

The first two are due to the content being embedded within an iframe.

The scrolling issue was partly because Safari implemented custom scroll behavior (supposedly due to a Steve Jobs request) for its main web view, but scrollable iframes did not override the scrolling behavior. The fix here (I believe it was rolled out in iOS 11) was to change system-wide behavior for Safari to use the system default scrolling behavior, so that everything behaved the same.

The title bar issue is due to the content not being a scroll view, but a view the size of the screen containing one or more scroll views (the iframes). Which of these should be scrolled to the top on a tap? Changing this behavior could change it for deployed sites, so rolling out any sort of new heuristic requires testing and probably wouldn't be done outside a new major version (e.g. iOS 12).

The third issue is across all browsers - Google is the one serving the content, not the third party that wrote the content. Because of this, any attempt to change where the browser 'thinks' a page is being served to another domain runs afoul of pretty fundamental web security principles. You might be able to design some sort of call (similar to CORS) to ask if google is representing your content in order to get permission to forge the address, but that would be a new web standard that hasn't been written yet.

Google should have just not used a scrolling iframe. MobileSafari has this beautiful quirk that iframes greater than 8 pixels tall automatically expand to the size of their content, solving all of the awkward coordination problems of sizing the iframe. It would have been just so damned simple for Google to fix this in MobileSafari :/.

The AMP viewer and the AMP cache page are served from different domains. Leaking the size of the cache page to the viewer page would be a security bug, which is worse than the scrolling bug that Apple actually had.

That's certainly an interesting quirk, I've never heard of it, nor seen it in another browser.

Definitely useful, though, why isn't that a feature in HTML5?

> I’d love to hear from lurking AMP or WebKit engineers.

A WebKit engineer explained the scrolling bug and how they fixed it here: https://news.ycombinator.com/item?id=14386292

> That said, it’s fair to ask why Apple hasn’t placed priority on the scrolling bug, post-AMP

Because Apple is incapable of fixing a browser bug without an OS update. You should be asking why Apple won't let you use a non-buggy browser on your phone to begin with.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact