After upgrading to Safari 5.0.1, I noticed that the flashing text insertion point in Mailplane, the WebKit-based application that improves Gmail’s Web interface, stopped working when I used the arrow keys. To be specific, the insertion point disappeared entirely, such that it was impossible to tell where typed text would appear. Relaunching Mailplane made no difference, nor did turning off utilities (like Keyboard Maestro and TextExpander) that mess with the keyboard. Interestingly, the bug bit me only when I was writing plain text mail; if I switched to Rich Formatting for a given message, the insertion point worked properly again. Alas, I far prefer writing plain text messages.
A quick trip to the Mailplane support mailing list revealed what was going on. Mailplane’s developer, Ruben Bakker, identified the problem as being an interaction between the version of WebKit installed by Safari 5.0.1 and the current 10.1.53.64 version of Flash Player (that’s later than the version that Apple ships with Mac OS X 10.6.4, but is recommended for all users for security reasons; see “Adobe Flash Player 10.1.53.64 Blocks 32 Security Holes,” 11 June 2010 and “Mac OS X 10.6.4 Fixes Highly Specific Bugs,” 15 June 2010). Because the problem revolves around WebKit and Flash Player, it also manifests itself when you’re using Gmail in Safari, as long as you have the appropriate combination of software versions. Gmail viewed in Google Chrome doesn’t seem to suffer from the problem, despite that browser also being based on WebKit, but it’s impossible to know exactly why.
You might be confused about why Flash would enter into the picture at all, and that’s in fact a hint toward the easiest solution to this problem for Safari users. Gmail uses Flash to provide “advanced attachment features,” the capability to attach multiple files at once and to display progress bars while attachments upload. As far as I know, that’s the only place Gmail relies on Flash, and if you switch to Basic Attachment Features in Gmail’s Settings, that eliminates Gmail’s use of Flash and works around the bug.
Mailplane users now have an even better solution – updating to Mailplane 2.1.10, which resolves the problem even if you have Advanced Attachment Features turned on in Gmail. The update is free and is a 21.1 MB download.
There are several other workarounds for Safari users.
- You could, in theory, revert to an earlier version of Flash Player, but given the security vulnerabilities in the 10.0 versions, I wouldn’t recommend that. Adobe doesn’t make it easy to find older versions anyway.
- You could install the free ClickToFlash plug-in for Safari, which disables Flash generally and then lets you re-enable it for specific pages (see “ClickToFlash Spiffs the Safari Experience,” 28 May 2009). I’ve tested this, and it seems to resolve the problem when using Gmail in Safari.
You could disable Flash entirely by removing the Flash Player.plugin file from the Internet Plug-Ins folder in your top-level Library folder. To reinstall the latest version of Flash Player in the future, just visit the Adobe Flash Player download page. Disabling Flash may have other ramifications, depending on the sites you frequent, and ClickToFlash is a more elegant solution.
What I don’t know yet is where primary responsibility for the bug lies: Gmail, Safari, or Flash Player, although it was the update to Safari 5.0.1 that triggered it. I suspect that any of the three parties could fix the problem, as Ruben Bakker did for Mailplane, but it’s hard to see any of the three parties having as much incentive as he does.
I also don’t know if this problem affects sites other than Gmail. Presumably there are other sites that use Flash and provide text-input fields for users; it’s conceivable that they could suffer from the same problem when accessed via Safari 5.0.1. If you know of any, let me know in the comments.