DXR UI Refresh

From MozillaWiki
Revision as of 18:16, 26 July 2013 by Erikrose (talk | contribs) (Add Advanced Search discloser graveyard.)
Jump to navigation Jump to search

Once upon a time, Schalk Neethling surveyed the userbase and heuristically analyzed the UI, resulting in some nifty mockups.

Then Erik Rose came along and did another round of wireframes adding these simplifications:

  • Removing the front page, which not a soul remembers the reason for and which complicates the implementation and visually destabilizes the UI when it goes "poof". (I think the UI was inspired by Google. But, unlike them, we don't have other properties to advertise, so we don't need a place to park a navbar.)
  • Teaching the query syntax via live feedback from the advanced search form rather than through written instructions. It's a little more JS, but users won't have to pogo-stick back and forth to a help page.
  • Making a few improvements to the multi-tree story

Feel free to comment on Talk:DXR_UI_Refresh and factor up the results of discussion to this page.

Basic Search

The basic search form gets an always-present case-insensitivity checkbox, which checks itself as soon as the user enters any capital letters. I'm not totally sold on that last bit, but it's something a few of the users requested. We should spend more design time on it.

Dxr basic search.png

Advanced Search

Currently, nobody understands when the advanced search form shows up. It seems rather random. Now, it'll always be accessible via a disclosure control on the basic search form.

Dxr advanced search.png

We'll need to do something different with the advanced search form: curerntly, we support 24 types of structured queries, and putting those all onscreen at once is going to leave no room for content. So, tabs, a Sherlock-style interface, or something.

Initial Page

DXR's current front page goes away, replaced with a code-browsing view.

Dxr front page.png

Search Results

Dxr results page.png

File View

Dxr file view.png

Other Considerations & Use Cases

  • The need for the magnifying glass logo is diminished: we now have plenty of other ways to get back to code-browsing mode. Perhaps we can better use the space for something else.
  • The Navigation pane, also something which shows up apparently at random, should be more predictable and should have whatever kind of disclosure control we decide upon for the Advanced Search form.
  • Mook switches trees a lot while looking at a single file in MXR. He's like to be able to do that without losing his scroll position, as it typically lands him at a similar-enough place in the code that he can reorient himself. Maybe…
    • Move the tree-chooser to the upper right and pin it, or
    • Pin the whole search widget (is the advanced search thing too ridiculously big?), or
    • Put a little pushpin control on the search bar so you can choose whether it's pinned.

Gallery of Unwanted Advanced-Search Widgets

Just for fun, here's a slagheap of discarded advanced-search disclosers. :-)

Dxr advanced disclosers.png