You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Expected behavior
It should be easy to toggle the table of contents. We should have a good design concept of where and how to display it, both on wide screens with much whitespace left and right to the editor, and on narrow screens without any extra horizontal whitespace.
And another possible solution, which is my preferred one at this point, would be to replace the content of NcSidebar with it.
I think we're needlessly anchored to the idea that whenever the sidebar unfolds because of a certain action triggered within the content, we have to automatically present all other possible actions that one can do in the sidebar. I don't think it makes much sense.
This seems like a good opportunity for breaking out of this pattern
If you think it's too much to break out of the pattern at this point, I suggest we move sharing into a dialog and replace that tab with the outline.
Reasoning: there's no need to be looking the document while creating a share. On the other hand when navigating an outline we have very much the need of looking at the document simultaneously
In general I really like the approach to move the outline to the sidebar, both for standalone Text (opened from Files app) and for Collectives. It solves many problems at a time:
The space for the sidebar is already taken into account in our design and we have a concept of how it works with different screen sizes.
It provides a unified solution people can get used to both in standalone Text and Collectives.
In Collectives we then have a clear order from generic to specific from left to right (Collectives list, page list, page content, page details).
We can get rid of the grid container in Text app that currently provides the wrapper containers that hold the outline. The grid container currently brings many problems, with print view, with tables that overflow the horizontal editor width.
I would prefer to implement the outline as a new tab in the sidebar though, as this is technically easier and doesn't bring the problem of hiding other content in the sidebar. In Collectives I don't see a big problem with it as we currently have four sidebar tabs. In Files app (on our company instance) we already have five tabs in the sidebar. In my opinion it still works well.
Works well in English but translations will likely be cut off in a lot of languages already. However I agree that this is the most sensible position also considering the other technical factors. I remember lengthy discussions in the past about that we have too many tabs with 4/5 tabs already, so I'd like to get also some feedback from @jancborchardt here as well.
After discussing this with @jancborchardt, we came up with the idea to implement the outline similar to how notion does it with some adjustments. I'll try to write down the approach:
If document has two or more headings, display outline skeleton on the right side
Extend to a popover that shows the full outline
On narrow desktop view, make the outline popover overflow the document
In outline popover, allow to pin it (make it persistent, don't collapse on mouseleave)
Don't display outline skeleton on mobile
On mobile, popover to show outline becomes fullscreen and no option to pin it
Hide and don't allow to display outline in rich workspace
Hide outline in print view
Ellipsize long headings in outline popover
Implementation details:
Get rid of grid container
Use a column on the right side with 250-300px for the outline
In Collectives, make sure that we have enough space for drag handler and outline in the wrapping container
Given that we also want to display an outline on mobile, how and where should it be positioned? Taking away horizontal space for it doesn't look great in my opinion:
Activity
11 remaining items
marcoambrosini commentedon Nov 5, 2025
And another possible solution, which is my preferred one at this point, would be to replace the content of
NcSidebarwith it.I think we're needlessly anchored to the idea that whenever the sidebar unfolds because of a certain action triggered within the content, we have to automatically present all other possible actions that one can do in the sidebar. I don't think it makes much sense.
This seems like a good opportunity for breaking out of this pattern
marcoambrosini commentedon Nov 5, 2025
If you think it's too much to break out of the pattern at this point, I suggest we move sharing into a dialog and replace that tab with the outline.
Reasoning: there's no need to be looking the document while creating a share. On the other hand when navigating an outline we have very much the need of looking at the document simultaneously
mejo- commentedon Dec 3, 2025
In general I really like the approach to move the outline to the sidebar, both for standalone Text (opened from Files app) and for Collectives. It solves many problems at a time:
I would prefer to implement the outline as a new tab in the sidebar though, as this is technically easier and doesn't bring the problem of hiding other content in the sidebar. In Collectives I don't see a big problem with it as we currently have four sidebar tabs. In Files app (on our company instance) we already have five tabs in the sidebar. In my opinion it still works well.
marcoambrosini commentedon Dec 3, 2025
Fine by me as well, it's undoubtedly a step in the right direction even with this not ideal amount of tabs.
Would still prefer to move sharing to a dialog though.
juliusknorr commentedon Dec 3, 2025
Works well in English but translations will likely be cut off in a lot of languages already. However I agree that this is the most sensible position also considering the other technical factors. I remember lengthy discussions in the past about that we have too many tabs with 4/5 tabs already, so I'd like to get also some feedback from @jancborchardt here as well.
mejo- commentedon Dec 3, 2025
I tend to agree, but out of scope for Text. Something that would need to happen in the
files_sharingapp.mejo- commentedon Dec 3, 2025
After discussing this with @jancborchardt, we came up with the idea to implement the outline similar to how notion does it with some adjustments. I'll try to write down the approach:
Implementation details:
jancborchardt commentedon Dec 4, 2025
@mejo- sounds good to me!
mejo- commentedon Dec 8, 2025
Given that we also want to display an outline on mobile, how and where should it be positioned? Taking away horizontal space for it doesn't look great in my opinion:
@marcoambrosini @jancborchardt
mejo- commentedon Dec 16, 2025
Fixed with #8033.