Still lots to fix here, punting up since I'm running into a few roadblocks.
TODO:
- Sort Personal/Global correctly
- Quicksand in Help Items correctly on page changes
Differential D17209
Redesign header menus and search chad on Jan 14 2017, 8:18 PM. Authored by Tags None Referenced Files
Subscribers
Details
Still lots to fix here, punting up since I'm running into a few roadblocks. TODO:
Verify new menus work on desktop, tablet, mobile. Test logged in menus, logged out menus. Logging out via a menu, verify each link works as expected. Help menus get build when using an app like Maniphest, Differential. Check that search works, preferences still save.
Diff Detail
Event TimelineThere are a very large number of changes, so older changes are hidden. Show Older Changes Comment Actions Calling it a night, feel like this is 90% there, but I need to fix a few more bugs up on the list. Feel free to review stuff that's obviously wrong. Comment Actions Tried to fix the Quicksand issue, have it redraw the PhabricatorHomeApplication menu each pass, but it pops an Exception Attempting to add more metadata after metadata has been locked. when drawing the dropdown actionlistview. I'm not sure how to resolve that. Comment Actions Help stuff feels a little weird in this menu but I guess it's the best place to put it. Would be nice to have icons, maybe? But given the removal from remarkup I guess that's intentional and you want to move away from icons in menus? Maybe fa-bookmark (or -o) instead of fa-star-o? Also resolves T12107. Meaning of star isn't immediately obvious/intuitive to me. Not sure bookmark is really better, of course. Also, other icons are non-outline (notification, chat). Not obvious what outline means or why this one is outlined. My initial guess is maybe that it's an outline because it's empty, e.g. nothing in the menu? But I assume the real reason is just "it looks better"? Edit UIs are kinda funky because they show the menu on the left, and both have an "Edit Favorites" item. I'll look at the quicksand thing...
Comment Actions I can't repro any errors with Quicksand enabled, presumably that's after additional changes? In general, what's probably happening is this:
The fix is probably to force the menu to render earlier, then drop the rendered nodes in later. But I'm not exactly sure. It might look something like this: - $body = $this->buildThePageBodyNormally($menu); + $rendered_menu = hsprintf('%s', $menu); + $body = $this->buildThePageBodyNormally($rendered_menu); But hard to say.
Comment Actions
Comment Actions I removed the icons in the header mostly because I found them to be distracting / useless. It might be an our install thing, but I'm betting not. Having three items for "new task", "new bug", "new feature" is a lot easier for me to read and find without identical icons for each. So at least for now, I decided not to include icons into the Favorites menu. I think though over time once we get a better sense of how we're using it, we'll spruce it up (ie, project images, etc). Comment Actions On this install, I'd expect to delete most of that menu and pick new icons:
Comment Actions I'd lean towards putting that onto EditEngine itself, so that wherever we use those form name/icon it's consistent. Comment Actions
Comment Actions Quicksand doens't work for me (the menu doesn't update), but it doesn't break either -- are you seeing actual breaking stuff? If it just doesn't work, I can counter-diff you to fix it up after this. I can probably just fix it faster than I can give you pointers, since I pretty much have no clue where to start. I think Tthe personal/global stuff is because the "global" query is still loading all personal items for all users, too, because it never adds customPHID IS NULL to the query. Currently, PhabricatorProfileMenuEngine->loadItems() has two modes:
It should really have three modes:
Comment Actions Still working out kinks on trying to build this with one query. Two queries seems so much easier. lol.
Comment Actions I can shoot you a followup to merge 'em if you want to do the two-queries way. One query is slightly cleaner but this isn't a big performance issue like "N+1" stuff is. Comment Actions Throwing in the towel on the queries. Sorry, I can't really wrap my head around a correct way to do this. It seems to sort of work, but Ideally I want:
I'm just down to getting the queries correctly returned and I have for example, have personal items in the global editor. I'm pretty sure I just need another query for NULL there, which itself is easy, but I don't know how to build it out in QueryWorldPHP. Comment Actions This should be OK to land, I don't have any fatals I can find, just need 2 counter diffs. Comment Actions Sounds good to me. I'll get you followups for One Fancy Query and Quicksand doc links. |