Skip to content

Retain envelope thread action on top right when switching between multiple threads #10720

Open
@st3iny

Description

@st3iny

Is your feature request related to a problem? Please describe.

The actions on the top right are reloaded each time a new thread is opened. The problem is that the actions menu needs to calculate the available width first and then decide how many buttons it can inline.

Navigating to another thread causes a full re-render of the whole right pane which causes this recalculation to happen over and over again.

Describe the solution you'd like

The available horizontal space doesn't change when navigation between threads so the menu shouldn't need to recalculate which actions to put inline. It should not jump around or flicker each time I switch to another thread.

Describe alternatives you've considered

No response

Additional context

I'm not sure if the effort is worth it. The only way I could image, is to keep the thread header alive and only render the content inside via the router. This way, the thread header and actions would stay "static" and only the contents would be re-rendered each time. However, this would require extensive code changes as the route is currently replacing everything in the right pane on navigation.

Another way would be to hack the NcActions component and somehow cache the amount of inline actions if the screen's width did not change since last time.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions