2008-03-24

a trio of extensions

Last week while on vacation I spent a bit of time hacking, and I cooked up three extensions to improve the Firefox experience.

The first two are pretty trivial:

Bookmark Toolbar Icons unhides those icons on the Mac using Vlad's user chrome code (with the enhancement Abdulkadir Topal suggested in his comment on Vlad's post):



Extensions are easier to install and remove than chunks of user chrome code, so this makes that enhancement accessible to greater numbers of users.



And Command-PageUp/PageDown lets you use those shortcuts for switching between tabs on the Mac, which is handy for selectively closing tabs via the keyboard, since otherwise you have to switch accelerators between moving to a tab (Ctrl-PageUp/PageDown) and closing it (Cmd-W).

Besides making that use case easier, the Command accelerator feels a bit more Mactuitive in general, although there's no standard shortcut for tab-switching in particular. Apple apps like Safari and Terminal use the clunky Cmd-Shift-[/], while Colloquy uses Cmd-LeftArrow/RightArrow, and ActiveState Komodo uses Cmd-PageUp/PageDown (i.e. the same shortcut this extension enables in Firefox).



The third extension, Bookmarks UI Consolidator, is more involved. It consolidates the Bookmarks menu in the menubar and the Smart Bookmarks folder in the Bookmarks Toolbar into a single Bookmarks folder in the toolbar:



Besides simplifying the UI, the extension makes the toolbar keyboard-accessible. Just press Alt-B (Ctrl-B on Mac) to focus and open the folder, Esc to close it again (but leave it focused), and then the LeftArrow/RightArrow keys (or Tab/Shift-Tab) to move between items on the toolbar. Space/Return/Enter on an item in the toolbar loads a focused bookmark and opens a focused folder.

(That second step in the process, hitting Esc, shouldn't be necessary, but I haven't yet figured out how to make the toolbar behave like the menubar, where hitting RightArrow while a menu is open focuses the next menu to the right if the current menuitem doesn't have a submenu.)

Note: focusing outside the toolbar turns off the focusability of its items, so you don't have to tab through all items on the toolbar every time you want to go from the Search bar to the tab strip.

And while you can't drop off the toolbar with the arrow keys, you can drop off it with Tab/Shift-Tab (as with the tab strip, although there it drops you off immediately; maybe the Bookmarks Toolbar should behave the same).

Adding this keyboard access method allowed me to simplify further by removing the Bookmarks Toolbar menuitem, which was added primarily for accessibility over in bug 408938.

And replacing Smart Bookmarks with Bookmarks saves a "smart" amount of precious horizontal toolbar real estate for user bookmarks.

I wonder how far we could take this kind of change. Could we consolidate the History menu into the Back/Forward buttons dropdown menu? Could we get rid of the menubar entirely, integrating all menu-accessible functions into other UI (perhaps a command toolbar)?

Maybe the four menu commands (Bookmark This Page, Subscribe to This Page, Bookmark All Tabs, and Organize Bookmarks) could be buttons on the Bookmarks Toolbar for better discoverability and immediate accessibility (although it would take up more of that precious toolbar space).

8 comments:

Gen Kanai said...

Myk, thank you very much! I think that Bookmark Toolbar Icons should be default- it's so much easier to which is a folder and which is a bookmark.

jag said...

In Safari, for some reason you can't use cmd+shift+left/right on blank tabs to switch to the one on the left/right, but when there's content it works, and is less awkward than cmd+shift+[/]

Daniel E said...

Thanks Myk for giving me the idea to fix my bookmarks toolbar.

I opted for a Stylish script instead of an extension, but I didn't even think of it until I saw your post. :)

GrzegorzJZD said...

Bookmarks UI Consolidator doesn't work for latest Firefox 3 trunk.

Myk said...

GrzegorzJZD: thanks for letting me know. I'll look into the problem.

Myk said...

Hmm, Bookmarks UI Consolidator is working fine for me on the latest trunk builds. If you're still having problems, let me know.

Twentyafterfour said...

The Bookmarks consolidation seems like a brilliant idea... I hope it's not mac only ;)

Myk said...

Twentyafterfour: You're in luck! Bookmarks UI Consolidator is available for all three platforms. :-)