Page MenuHomePhabricator

Curtain v2

Mock History

Current Revision

Mock Description

This reduces "Flags, Subscribe, and Token" actions globally.

  • Flags: Will move to + menu, and display in the Curtain when you've flagged something.
  • Subscribe: Turns into a button underneath the Curtain.
  • Token: Turns into a button underneath the Curtain.

This would globally remove 3 actions from the action menu. Unclear if perhaps there are any object pages that only have these actions? Unsure.

Event Timeline

chad added a project: PHUI.
chad added a subscriber: epriestley.

Other issues:

  • "Automatically Subscribed" copy will need to change to be more space friendly.
  • Should these go away on mobile and just get added back to actions? or leave them under the curtain. This would add content previously hidden to push the main column down further on mobile.

These would become "Unsubscribe" and "Revoke Token" in the same spot?

Seems a little weird to have them separate from other actions and separate from their associated content.

I also probably "Award Token" at least 10x more often than I "Edit Pholio Mocks", although that's sort of a separate issue. But an alternate split might be, like:

  • Edit
  • Subscribe
  • Award
  • <content panels>
  • all rarely used actions

That seems a little silly but if we're just kicking some actions out of the action list, kicking the rarely-used ones out might possibly make more sense than kicking these out, if they aren't moving into their content panels?

Or what if we put the entire panels down there, including the button:

| Tokens            |
| No tokens yet.    |
| (  Award Token  ) |

Probably tricky to get working on mobile, but maybe a little more cohesive?

The "pull the whole panel out as a curtain widget" approach might also work better for third-party extensions and Phrequent, which isn't enabled on this install but is technically part of the upstream. Maybe the pathway forward there is "delete Phrequent + no support for extending this", of course.

Not thrilled about this:

  • Arguably, these actions are more used than the actions that are left above the fold. Maybe they should sit on the first part of the main view, like Diffusion's "View Raw File"?
  • What happens when we have a 3rd/4th button-worthy action?

Have we considered just folding all actions into an Actions submenu [If there's more than 5 of them]? I think I remember a mock of that once...

I've historically pushed against hiding actions in a submenu, since I think it's a pretty big negative for usability. I'm not totally opposed to heading in that direction but I personally prefer the space being used for actions over any other content. At least today, some of the actions also communicate stateful information ("Automatically Subscribed" shows your subscription state, "Flag for Later" shows the current flag).

Phriction folded into an "Actions" menu and I still haven't really gotten used to it. T8779 and T8172 are other users also disliking this.

That said, the total amount of negative feedback about it isn't particularly large, and it would be more consistent given that Phriction/Diviner do it.

Oh, notable community member @avivey also raised a concern about hiding options in a dropdown in T8172#117058. :)

lol :)
I don't really like hiding them, but for limited-height-screens... There's just not enough really good solutions.

Oh, we can fold them client-side with lots of javascript stuff, so they stay open if you have the right hardware :)

One thing I think about with these actions (flags, subscribe, tokens) is they are personal actions as opposed to object actions. That is, they are for me specifically, and not really affecting the underlying object. It's one reason I think pulling them out feels ok.

I worry that baking the buttons into the panels will feel bloated, but I can mock that out quickly. One thing that I'd also like to do then if we do, is have some sort of better display on mobile for them. I think they are all shown by default above the content now. We may need to add a mobileCollapse method to CurtainView or something so we can toggle it on and off accordingly?

Yeah, should be no problem to do mobile magic if that seems like the most promising way forward.

Tokens being its own separate island seems conceptually fine to me, although I tend to agree that subscribe is maybe a little weird to disconnect.

Maybe we can just fit a little "+" / "X" on the panel for that one, since it's always visible anyway?

| Subscribe  (+) |
| a, b, c        |

Dunno this feels more heavyweight to me, personally. Probably because this path signs us up to always show Tokens.

v4 moves "assigned" to gutter, and removes Authored (which is the first transaction).

hach-que added inline comment(s).
Inline Comments

this makes me very uncomfortable

unintentional for a 2-minute mock. See Differential.

pasted_file (405×970 px, 87 KB)

I think it actually aligns in practice (e.g., see Differential).

I don't really love the more heavyweight versions at first glance, either. What do you think about just doing the gutter + removing authored for now?

Or possibly even putting both in the gutter?

[@] Created by X on Y.
[@] Assigned to Z.
| Description                          |

One other possibly-bad idea I had was to show only one of these:

Open task with no assignee:

[@] Created by X on Y.

Open task with assignee:

[@] Assigned to Z.

Closed task:

[@] Closed by W on V.

That's maybe inconsistent/terrible, especially since there's no strong visual cue about the content of the text (the timeline has the colors/icons indicating transaction type, but the gutter doesn't) but maybe the user rarely cares about who authored the thing if it has been assigned (and rarely cares about author/assigned if it has been closed)?

v5 generally seems reasonable to me to build, though.

It's an interesting idea. I'm not super happy about promoting the author as the "important" part of the task / image, but having a nice summary explaining it's full current state seems pretty helpful.

Personally I'm not really sold on the gutter text. It forces everything else down for what could just be positioned at the top of the sidebar?

Actions are always at the top of the sidebar, and pushing them down inst something I want to explore, since it makes day to day use significantly harder, but maybe it wouldn't be as bad as I imagine.

Maybe we should just improve curtain first

The main challenge here is in Phabricator, tasks are ephemeral wikis that tend to be community built. Knowing the author is generally inconsequential, though here directly we may treat the severity of the task differently if we know which install is filing it. I think assignee is reasonable to highlight, but is not always present. So then do we only show if it's assigned, or have some pointless placeholder text taking up space. We tend to never hide information, so then on this install we'd be stuck with 98% of tasks saying unassigned. It's all kind of lose-lose which is why it's how it is today (which still feels correct for most installs).

Yeah I think assignee is an important piece of information, but created seems not that important? And like, in terms of focusing a user's attention, the gutter feels like "this is the second most important thing to title". Like having the avatar of the user who created it doesn't feel like very useful information.

The problem with having it switch between "Created by XYZ" and "Assigned to XYZ" is that people will just glance at the avatar and assume that's the assignee. You have to actually read the contextual text to find out that it's the person who created it, which feels like a lot more effort because then you have to do that on every task because you can't ever be really sure what the context will be. Then of course if you're reading the full text anyway, the avatar doesn't help much because it doesn't suffice as "at a glance" information.

(Hopefully most of that rambling made sense)