Page MenuHomePhabricator

provide a keyboard shortcut for expanding hidden changes
Closed, ResolvedPublic

Description

The 'some changes are hidden' flow is annoying in some situations. For example: during triage review, status update, or some other meeting where someone is projecting the person driving will often view tickets (why is this one is state foo? Didn't we close this ticket already? Why is that assigned to Bob?) and since they are a responsible-staying-on-top-of-things-team-leader they will almost always have looked at the ticket before and end up with the 'changes are hidden' box. Since they are projecting in front of other people they will also almost always fumble with their mouse and scroll around for a while before managing to click 'show all'.

More general complaints in T6400 but config options make upstream sad while keyboard shortcuts are cool.

Event Timeline

cburroughs raised the priority of this task from to Needs Triage.
cburroughs updated the task description. (Show Details)
cburroughs added a subscriber: cburroughs.

On this specific issue, we could also make the whole yellow bar a click target for "show older".

More broadly, given that this use case is extremely narrow, I wonder if we shouldn't consider a "presentation mode" -- which could maybe do things like disable notifications (particularly if we do more chat stuff later), make UI adjustments like this, possibly engage fullscreen mode, and let other users follow along (e.g., the presenter's open pages become shared, and you "follow screen" on the presenter and get the pages they open pushed to you so you can follow along locally, and maybe the pages could be saved for meeting notes or whatever, so you can go back and find stuff).

Although we don't do meetings with projections in the upstream, it's somewhat hard for me to imagine that fumbling with this link is the worst part of presenting stuff from Phabricator.

This class of use case feels wishlisty to me, but I've seen a few similar use cases (broadly, the "presentation" use case) -- for example, T4900 describes something similar. It seems like something we could eventually improve significantly on with relatively little effort.

I'm not sure how useful things like a reviewable list of "all the things we looked at in the meeting" are (and I haven't seen other software trying to build lists like this, so maybe it's not very useful) but it's the kind of thing that seems hard in the common case but easier for us given how broadly integrated we are. I could imagine this being something that doesn't exist because it's usually hard to build, but actually works really well.

On this specific issue, we could also make the whole yellow bar a click target for "show older".

This reminds me a request to Increase the clickable region of the "Show all changes" expand box in https://phabricator.wikimedia.org/T962

We changed the text link to a button on large diffs, but I'm not super hot on that treatment. I can look into something better for transactions.

From that commit:

Test Plan: clicked the yellow box and it worked!

Indeed!

pressed '~' and it worked!

Er... really? I can't make it work.

pressed '~' and it worked!

Er... really? I can't make it work.

Er, really. It even works on this install right now. Please try clearing your browser cache. If that doesn't fix the issue, I'll revert the feature, as it made it based on having no support costs. This is very standard code so there's some low level bug if its not working across platform / browsers.

Not that you have to type ~, exactly -- "shift + `" on US keyboards. International keyboards may not have a reasonable way to press this key.

btrahan rescinded a token.
btrahan awarded a token.
btrahan rescinded a token.

Problem found.

Like many multilingual techies buying cheaper hardware in the US, I have a US keyboard configured as "English - US, International with dead keys". I can type ~ using exactly the same key as you, but for me it takes Shift + 2 times `. And this is what is killing this feature. I switched to plain English and it works.

Maybe you can use a better combination of keys for the rest of the world? I'm going back to dead keys because typing Latin languages without them is just a pain. As epriestley says, for people with non-English keyboard, typing ~ in a single stroke might be simply mission impossible, because those "extra" keys are used for local heroes surviving globalization. In fact, I barely remember how, many years ago, I had to type Alt + some number to get a ~.

Please don't drop the shortcut, it's a cool feature.

Do you have key suggestions? You can press "?" to see the various keypress commands in use for any given tool. Differential and Pholio come to mind as reasonably interactive.

Isn't the "+" key the same exact problem, except you're pressing "=" instead of "`" ?

Been googling around for "English - US, International with dead keys", etc. and not learning much.

No, because "=" has no dead key. "`" is an accent, and it does have dead key.

... just like "?" works without problems, being Shift + "/".

How do I learn about this dead key stuff?

On this specific issue, we could also make the whole yellow bar a click target for "show older".

More broadly, given that this use case is extremely narrow, I wonder if we shouldn't consider a "presentation mode" -- which could maybe do things like disable notifications (particularly if we do more chat stuff later), make UI adjustments like this, possibly engage fullscreen mode, and let other users follow along (e.g., the presenter's open pages become shared, and you "follow screen" on the presenter and get the pages they open pushed to you so you can follow along locally, and maybe the pages could be saved for meeting notes or whatever, so you can go back and find stuff).

Although we don't do meetings with projections in the upstream, it's somewhat hard for me to imagine that fumbling with this link is the worst part of presenting stuff from Phabricator.

This class of use case feels wishlisty to me, but I've seen a few similar use cases (broadly, the "presentation" use case) -- for example, T4900 describes something similar. It seems like something we could eventually improve significantly on with relatively little effort.

I'm not sure how useful things like a reviewable list of "all the things we looked at in the meeting" are (and I haven't seen other software trying to build lists like this, so maybe it's not very useful) but it's the kind of thing that seems hard in the common case but easier for us given how broadly integrated we are. I could imagine this being something that doesn't exist because it's usually hard to build, but actually works really well.

FWIW this sounds really useful to me. During my team's weekly meetings we make extensive use of etherpad for meeting notes but it's far from ideal. I think it would be a big improvement if we had a list of every task that was visited during a meeting, plus maybe a way to inject arbitrary remarkup notes at any arbitrary point, then format the result as a simple timeline.

@epriestley: I think you're on to something, maybe it should be a separate task though ;)