Mac OSX Lion's scroll breaks the web
micho.biz
micho.biz
This is an excellent complaint, and it has been raised before by users (https://discussions.apple.com/thread/3192014?start=0&tst...) and bloggers (http://www.tuaw.com/2011/08/02/baffling-inconsistencies-in-o...). It's a UI inconsistency which makes no sense, is confusing for users trying to scroll, and causes problems for developers.
Regarding reverting it, the following Stack Overflow question and answer seems to have found a solution via a github plugin:
http://stackoverflow.com/q/8737709/168775
I have no idea if it works. Good luck!
Safari's implementation is much less painful, is only triggered when I really want it, and provides sufficient visual clues about what's going on.
Chrome's blunder is almost enough for me to switch to Safari, which is saying a lot given my preference for Chrome otherwise.
Safaris implementation makes it very clear you are going to navigate back a page, and it's very easy for the user to cancel the action.
* I'd scroll something horizontally,
* I'd reach the edge of the page
* Chrome would render the "I'm about to go back a page" arrow
* Nothing I tried would cancel the "Back" action
Overuse of POST should help, though, as it lets the browser jump in to rescue you with a popup before you go Back.
Chrome is terrible compared to safari - the notification to the user is a very small barely visible arrow that gains visibility as the user scrolls further sideways.
Firefox is terrible compared to chrome, it just happens.
So as I said - Safari does something great, others copy it poorly, and "Lion breaks the web".
It’s a bug in Firefox and Chrome, nothing else.
It listens to see if the user scrolled recently and navigated away without clicking, and then explains her what happened and how to avoid it next time. You can dismiss that message if you like Mac's behavior, or you now know how to disable it. Easy peasy.
How is highlighting that "froth"?
I think differently if I'm looking at a page vs, navigating, and I continue to fail to use scroll-to-navigate. If 2 fingers did forward back I would love it. The current method overloads an abstraction to the point I can't trust it.
The fact that chrome and firefox duplicated it is disappointing.
Imagine drawing apps that could only handle a fixed width, or spreadsheets where you could only go as far as the F column
That is true. It is also true that it is becoming more frustrating to use the web for its original purpose of reading plain text documents, and the need to scroll some pages horizontally is a symptom of that.
It's one of the many reasons post-Lion that I've decided to just move on to another OS. I shouldn't have to adapt the way I work to some OS updates quirks.
Since a trackpoint can't possibly support two-finger scroll, which is what makes scrolling both directions so easy on a trackpad, it seems like you either would need to drag the scrollbar block or hold down a key in order to scroll, two cumbersome solutions.
All browsers will not automatically wrap text inside pre tags, since the text inside pre is supposed to have both width and line-breaks preserved. Scroll with two fingers inside the box to view whatever has been hidden by "overflow: scroll;". If you find a site that lets pre code snippets overflow into the right sidebar and off the screen, let them know their site is unusable and to add an overflow CSS rule to make it respect smaller screen widths.
There is a huge visual clue to the user that they are doing a "back" instead of a scroll (the whole page moves off to reveal the previous page behind it). It can be done accidentally, but a user will know what they have done and return. (In the static case, you have to move the page at least a quarter of the way out of the window. If you do a dynamic release it looks like less depending on how fast you are going. A "flick" could get you an accidental "back".)
Without looking at your site, I'll suggest that the bigger issue is that either "back"-"forward" isn't a no-op, or you leave a string of strange things in the back list. Both are common and both annoy users.
If this behavior is overloaded with a navigational function, the user now may very well accidentally invoke the navigation function with a flick and lose data (HTML form data for example.)
This is a genuine usability issue that needs to be addressed by Apple.
…except, if you happen to be in a browser and at the far left or right of a page, then a big context switch suddenly occurs and navigational action is performed, potentially losing valuable state.
The use of two finger "flicking" is unnecessarily overloaded. Apple can solve this by making 3-finger navigation the default.
http://forum.greenfelt.net/viewtopic.php?f=2&t=1268
in which a user doesn't understand what is happening and one of the devs heroically guesses the cause of his symptom.That said, I am not very excited about many pieces of the Lion UI either. Inertial scrolling is amazingly useful, though. Also, I quite like the 'Ribbon' in Office. Much better discoverability than all those hundreds of menus beforehand.
The single greatest improvement I've seen in the time I've had my iMac was when the hard drive died and it came back with Snow Leopard without me having to spend the time to downgrade it myself.
But as I said, inertial scrolling is great. Spaces are great. The gestures to navigate spaces are great.
All that Versions and Autosave stuff is atrocious. But I rarely stumble into it since I mostly use Emacs.
I really like the non-existent scrollbars. I don't miss having those ugly grab-bars on every window one bit.
All things told, I'd rather have Lion than Snow Leopard, but really only by a small margin.
Except that the useless button replaced one that I actually used before. Especially Finder windows are a pain to get to 'normal mode'.
> I really like the non-existent scrollbars.
The problem is that they only work when the content is obviously clipped, which is easier to ensure on the iPhone.
I had two instances where the content seemed to perfectly fit its box (Xcode4 & Recovery Partition). Took me a while to find out that there's more.
I appreciate what Lion aims for, but I could rant about its usability for hours. Almost all my bugs are duplicates, and they are all still open even after 10.7.3. :(
We use a mac mini for a 'display wall' monitor... which it turns out sucks because OSX doesn't like you fullscreening things.
Then there's the good old 'everyone gather 'round, I want to show you how this works' type thing.
Then there's wild differences in the visual area available on a 13" screen vs 27"+
There's plenty of use for fullscreening programs.
I have liked that Spaces is no longer incredibly broken, but it's a bit annoying that I can't have any configuration other than a really long line full of virtual desktops.
I don't know, I don't like most of the changes in Lion. They look like a really bad "first step" towards something that isn't there yet. Like removing your car's wheels just because you imagine that at some point people will want flying cars that work on antigravity. And then you get the inconsistent bits like making the window buttons smaller. Just... crap.
> it breaks a convention that people (even Apple users)
> have been used to for decades
And it took me about 40 minutes to adjust. I just told myself "you are moving content within a window, not window around the content, just like you do on iPhone" and thing everything clicked into places.Further, it may be easy to adapt to for one person on one system, but what is the net benefit? It seems to me the sole benefit for "natural" scrolling (and most other Lion changes) is seen primarily in unifying the UI for users who own a Mac and one or more iOS devices. Otherwise, it's yet one more change forcing users to adapt. And yet, the new scrolling method is the default. Was the old way really hindering anyone?
They don't always lead to improvement, but they are a requirement a large amount of the time. Why the nostalgia for what you've used for 'decades'?
I agree with you though, I bought a refurbished Macbook Pro for school this summer and I was so happy to learn refurbished machines still shipped with Snow Leopard.
Let's say you view a sensitive image in Preview, then use Cmd+Q to quit. A week later you open a new image, directly from the Finder, to show a work colleague, and it opens in Preview.
First Preview loads up the previous sensitive image (restoring the state of Preview), and afterwards your work image. Work colleauge sees sensitive image. Embarrassment all around! (Well, actually just lots of laughs, but it could have been!)
Moral of the story: always use Cmd+W to close all documents individually in Preview, and only afterwards Cmd+Q.
Bigger moral: Apple really messed this one up. Opening applications via documents in the Finder shouldn't restore previous application states, because the whole point is that you're starting with a new, specific document.
Another privacy trap is how Lion's Dock menus show recent files. Given a setup where a Mac is connected to a projector (presentation, video night), this makes it fatally dangerous to quit applications. You easily end up broadcasting Secret-Client-Sales-Pitch.ppt or sensitive video filenames. Also annoying when sharing computers, where before I used to trust my friends not to dig into Recent Files menus (not something you'd do by accident).
Two of my personal anecdotes:
Winamp cleverly remembers its last playlist. I once wanted to use a close relative's open Windows laptop to play a clearly visible music file at a family gathering. I accidentally presented his most recently watched 'rather sensitive video' to everyone.
Another time, I downloaded a sex ed quiz from the App Store's Top 50. It claimed a very low rate of infection from an HIV positive mom to her baby. For the benefit of science, we verified that fact using Google. Imagine the thoughts of a CouchSurfer when she saw the "recent" search query weeks later, borrowing my iPad to look up train schedules. Glad she asked me about it.
These are all things that should not even go wrong once, so "getting used to it" does not help.
(It's under General > Restore Windows When Quitting and Re-opening Apps)
Now if only there were a way to stop Document Versions from irrevocably eating up hard drive space...
If I just wanted to close all my open applications, I would just close all my open applications.
Plus Lion asks you everytime if you want to save the state or not.
We'd both be happy if it remembered our preference in that dialog box. It does not.
(It looks like he's just unlocking that plist! - I haven't tried it myself as I almost never restart my macs and I'm on my iPad right now.)
It doesn't make you wrong. Your preferences are your own. But the changes very well could be better for newcomers. At some point you have to abandon old conventions to improve.
Sadly there doesn't appear to be a system-wide solution yet, and even after months of using Lion it still grates on my nerves every time.
- System Preferences -> Desktop (duh!) - System Preferences -> Appearance (ok...) - Right click on desktop -> Show view options (surely it's here!)
By the time I finally found it, I had a familiar feeling of low-level frustration that I usually associate with Windows.
The new maximize feature is rather passive-aggressive as well. Instead of something sensible like making option-clicking the '+' maximize the window, they added yet another button which does a needless animation and disables the menu bar and the dock. It almost feels like a fuck-you to people who have been asking for such a feature for years.
Anytime I have to scroll horizontally in a browser, it feels awkward and non-standard (especially if I have to scroll horizontal AND vertical).
Whilst it's just my preference, I'd sooner not have any web pages scroll horizontally.
(I also agree that mapping forward/backward to the horizontal scroll is worse than ugly: it breaks user expectations by being inconsistent.)
For reference: http://www.apple.com/mac/
Not that it matters, I'm just clarifying.
They give you a very good reason why the webpage should horizontally scroll: task boards. I've implemented and used task boards before and hit this exact same issue.
Horizontal scrolling is only really an issue for those users who don't have a decent device for horizontal scrolling. On trackpads and the Magic/Mighty mouses, horizontal scrolling is very natural.
"Horizontal scrolling is only really an issue for those users who don't have a decent device for horizontal scrolling"
Then why are you developing applications that likely an issue for most people?
I've seen this happen with JIRA and Gmail. Hacker News, which does not attempt to catch a user with unsubmitted data, works just fine. You can type a comment, swipe back, then swipe forward, and your comment will still be there.
I'm not trying to diminish the complaint of the posting (which is valid) but web-apps should really capture "intents" as new stored data. If I intend open a new ticket, a new record should be automatically be created regardless, and then marked "deleted" if I abandon it (which could be reversed later).
The latter behavior is fine in most cases, as you can initiate a Forward action and return to the page with your text. There is a specific case where this is broken, which is what I was talking about.
I think it's pretty safe to assume that apple & google won't be providing you with a javascript api to inhibit page back & page forward.
I've made my forward/back three finger and spaces switch to four finger, seems to work well.
As someone who uses this gesture all the time I'd be very annoyed if a page hijacked the scroll to prevent my forward/back.
FWIW I like a lot of the UI change in Lion, natural scrolling in particular.
Dont you know google is every single developers favourite company and they can do no wrong?
It's clearly not googles fault for copying a feature in a half-assed manner, it's apples fault for not predicting that would happen and abandoning the feature.
Here's the thing its only going to get worse as more and more devices and interaction models start working their way in. My company does bespoke app design and development across a lot of emerging platforms. We're building apps that work on connected TV's, Game Consoles, and mobile devices. Right now we have a project which has an app on LG/Samsung connected tvs which need to be navigated via a traditional up/down/left/right enter remote and the LG TV "Smart Remote" (basically a Wiimote pointer - or a mouse). We're porting this app to the Xbox, on which we need to support the console constroller/Kinect Gestures and Voice. As well as parts of the design are making their way into tablet devices with gestures. One App/Design - 5 different input mechanisms.
Maybe it's just me, but mouse gestures, swiping and scrolling are far too easily activated. Take the worst offender in this area of all: Google. There is no UI inconsistency worse, IMHO, than scroll to zoom on Google maps. Absolutely atrocious. No matter how long I've used Google maps, I cannot seem to stop myself from using the scroll wheel/swipe/whatever to move around on the page, inadvertently zooming. Not only that, but the trackpads and Apple's "magic mouse" are impossibly sensitive, scrolling, swiping, and gesturing seemingly at random. How anyone uses these, I cannot say.
Must be me.
I'd say that sideways scrolling has a big future ahead of it and in a lot of cases is better than having to press prev-next buttons.
Slicing apple with laptop video: http://www.youtube.com/watch?v=rZvMlzVxQJE
Saying "dont scroll horizontally" is not a solution, there are a lot of solutions where scrolling horizontally is required, think of a drawing tool with a fixed width canvas, or a spreadsheet where you can only go to column F
It should be that way by default, hopefully that changes in an upcoming patch or 10.8.
I believe that's the best compromise: Keeping the scroll behavior, but teaching you how to change it. http://cl.ly/1R0T1Z1n2y160C1V3V0V
I recall the startupweekend website had this issue but they seem to have redesigned around it.
My solution would be for OSX to only scroll the contents of a div if the scrolling action started on that div, and never to scroll the page if the scrolling gesture started on an element which responds to scrolling.
That sort of behaviour might fix the issue. Although, perhaps fwd/back swiping in OSX should only be three fingered by default.
In fact, I find it presumptuous that they are trying to even detect this, and then tell the user to disable it system-wide!
You can adjust this in your OSX mouse settings by having it to two fingers (which is very handy). I switched mine instantly and now i'm able to navigate through various pages with two finger swipes.
This isn't OSX breaking the web...
I don't think it's such a big deal. The only websites that have this problem are horizontal scrolling websites, and even then it's usually when I'm playing around with the mouse.
Good. Stuff breaking the web, the web should stop breaking the browser! Disabling right click menus should never have been allowed, nor should Flash overriding browser/OS hotkeys, nor should sites hiding browser chrome in new windows, nor should disabling zoom on mobiles, and nor should stopping back navigation in JS.
Authorize Teambox to use your account?
This application will be able to: Read Tweets from your timeline. See who you follow, and follow new people. Update your profile. Post Tweets for you.
And for google:
The site teambox.com is requesting access to your Google Account for the product(s) listed below.
Google Docs Google Calendar Google Contacts Gmail
wat?
Honestly, I don't understand all of the API hate lately. People get upset when you don't have OAuth or integrate with their existing services, and then they get upset when you DO have it and it tries to integrate with your existing services.
For a community that is supposed to support each other trying to innovate and take risks, we've lately been really negative.
Personally I'd take gestures for moving back and forward in history over the ability to easily scroll horizontally. I find it very unintuitive and awkward.
I also dislike that the "delete" key backs up a page. It should not be so easy to accidentally move pages, especially since it potentially messes up form data.
I would love to see javascript hooks to this events so you could cancel this behaviour programatically.
Set "Swipe between pages" to anything other than "Scroll left or right with two fingers"
The Web is all about separation of concerns and unintended reuse; it's about browsers being able to innovate and provide new features while staying backwards-compatible with existing reasonable content.
If you want perfect control, go use Flash or Silverlight (and, thereby, die in a fire).
- Linux/Windows user
Web developers have spent the better part of the past decade avoiding anything to do with horizontal scrolling as it's far from the best way to display information to the user in both software and hardware configurations and Apple simply went ahead and codified what had become a standard convention. And if you pick up any tablet product, regardless of manufacturer, you can confirm this.
If you're still intent on designing apps that don't follow convention while simultaneously blaming manufacturers for a poor user experience, then I have nothing to offer. The rules of the web are not set in stone and they will evolve over time as users either demand a different experience or become accustomed to and expectant of certain functionality that works for them.
The issue for our application is that sometimes there's just too much data. If I have a matrix of information that is 25 columns by 100 rows, I don't have a lot of choices but to scroll horizontally. Drilldown is taken off the table by the fact that the information must be available for quick cross-reference.
Our issue is not unique. Lots of people solving business process problems face this issue, and I'm not aware of any good solutions. I'm ready and willing to be educated though. Even if an alternate solution is harder, we're not afraid of putting in the extra effort. We have a base set of requirements to meet though:
* Must accommodate variable record counts in the x and y axis
* Must make data available for quick cross-reference (moving in and out of sub-screens to compare data is not acceptable)
* Must maintain the x and y axis relationship of data; that is to say, collapsing columns or rows is fine, but shuffling is not
We experimented with an option that collapses columns, but at some point, even collapsed columns take up too much space. This means moving them out to a separate "column selection" widget, which limits the maximum number of selections and is even more confusing for users than horizontal scrolling.
Not an easy problem to solve.
If that's the case then you have either not executed proper information architecture and design or you're trying to shoehorn a product into software for which it is not suited.
Not everything can be translated properly inside of a web browser. It's a very limited tool that has its uses, but beyond the basics it cannot compete with native applications which can take true advantage of the OS and hardware along with allowing the developer to circumvent many web conventions.
"...or you're trying to shoehorn a product into software for which it is not suited."
I agree with the statement, but disagree with the context. If by software we mean the display methodology, then yes. I take issue with the assertion that this is a web browser problem though. We're basically talking about a pivot table here. Large pivot tables often require horizontal scrolling. Moving the pivot table to native software doesn't magically solve this problem.
This is an information representation problem. We're currently using a pivot table. There is probably a better solution. I'll readily admit that I don't see it, and that's my deficiency. I cannot see that this is a problem inherent to web browsers though.