RickStrahl / MarkdownMonster

An extensible Markdown Editor, Viewer and Weblog Publisher for Windows
https://markdownmonster.west-wind.com
Other
1.59k stars 235 forks source link

Feature Request: Option to vertically split the Sidebar into multiple panels #1134

Closed nonplayer closed 4 days ago

nonplayer commented 1 month ago

It would be a neat feature to be able to split the sidebar into multiple panels. For example, I'd like to be able to have both the favorites list, folder browser, and document outline open on the left side, with the Favorites on top, the folder browser beneath that, and the document outline below. Being able to drag and resize them would be cool too.

For an example of this in action, the QOwnNotes app allows repositioning of panels all over the place, and by default has them all open on the left. While I don't expect that level of repositioning here, it'd still be super cool to have is just in the sidebar.

Thanks for consideration!

RickStrahl commented 1 month ago

That's a good idea, but not an easy one to get in mainly as it pertains to the UI. Getting a split panel and hosting say the bookmarks on the bottom would be easy enough, but if it's all configurable or memorized through sessions it becomes a lot more complicated to manage the window. And how do you know where what goes etc.

I have to give this some thought, but I like the idea and it would be certainly useful to me as well.

RickStrahl commented 3 weeks ago

Taking a first swipe at this:

image

For now it's just the Document outline that can be placed here, but it's a start.

I have a way to generically load panels, and move them around, but haven't figure out yet how to store the configuration. for now the Document outline is hardcoded explictly.

nonplayer commented 3 weeks ago

This looks fantastic!

RickStrahl commented 3 weeks ago

Some more updates on this: The left sidebar is now configurable with the ability to re-position all three of the stock panels. Here's what this now looks like:

image

There's no UI for this at this point - it has to be configured via the config file and then while MM is not running.

First UI step should probably be a context menu that lets you set:

For this first update probably just stick with the non-UI interface.

The default interface will be what we see now.

Current version is in the Preview release (v3.5.0.16+)

RickStrahl commented 1 week ago

More progress here and getting close to done. There's now a context menu that lets you move tabs and set the split mode.

SplitPanelNavigation

RickStrahl commented 4 days ago

Done as of v3.5

nonplayer commented 3 days ago

This is FANTASTIC. Thank you!