zulip/zulip-terminal

'All messages' are not consistently accessible compared to P/#/f

neiljp opened this issue · 1 comments

Bug description

As discussed in the past, and again in #1480, the key(s) for 'all messages' (a, Esc ) do not work reliably except when a message is selected.

This compares with P, #, f, which are also in the top left list of views (as the web app now names/groups them), which are accessible from:

  • the left panel (whether on the button or not)
  • the right panel (ie. user list)
  • possibly elsewhere? (to be confirmed)

Discussed at:
#zulip-terminal > Make the ALL_MESSAGES command work everywhere

How is the bug triggered?

How can you reproduce the bug?

  1. Enter different areas of the UI where one of P/#/f are confirmed to change narrow (as above, and excluding the central message area)
  2. The a hotkey fails to trigger a change in the central active narrow (message list), as does Esc, though also behaves differently depending upon context

What did you expect to happen?

For context, when a message is selected, narrowing keys like these are currently expected to keep message focus, but change the narrow to view around it - this is not the intent for this fix.

Instead, when selecting a view/narrow explicitly (stream/topic/DMs/etc), from a side panel or hotkey from these locations, this should enter the first unread message in that view. This is what should already occur with the existing P/#/f hotkeys.

One possible challenge here is that Esc is used for various other functions, so they should likely take precedence, for example:

  • exiting popups
  • exiting searches
  • exiting compose

Similarly, when a text box is open, such as during searches or when the compose box is open, regular keys such as a would not be expected to cause narrowing.

Related aspects

These were discussed in the topic linked above:

  • Esc could be enabled or disabled depending upon the organization user setting for using Esc to go to the default/home view
  • Splitting the GO_BACK command may make it clearer in the help, compared to 'Go back'; otherwise this is somewhat of a refactor in the context of this issue

How are you running the application?

Please include as many of the following as possible:

  • Zulip-terminal version: 0.7.0+git
    eg. a specific version (0.7.0), or if running from main also ideally the git ref
  • Zulip server version(s): chat.zulip.org
    eg. Zulip Cloud, the version you are running self-hosted, or the Zulip Community server (chat.zulip.org)
  • Operating system (and version): Debian
    eg. Debian Linux, Ubuntu Linux, macOS, WSL in Windows, Docker
  • Python version (and implementation): 3.9
    eg. 3.8, 3.9, 3.10, ... (implementation is likely to be eg. CPython, or PyPy)

If possible, please provide details from the About menu: (hotkey: Meta + ?)
(this can provide some of the details above)

Hello @zulip/server-hotkeys members, this issue was labeled with the "area: hotkeys" label, so you may want to check it out!