johnfactotum / foliate

Read e-books in style
https://johnfactotum.github.io/foliate/
GNU General Public License v3.0
5.27k stars 256 forks source link

Integrate ebook viewer component into view switcher #446

Closed digitalethics closed 1 year ago

digitalethics commented 4 years ago

Currently, an external window opens up when opening an ebook. While the idea behind this decision may be to keep the viewer component as clean as possible and actually separated from the other components, I feel it makes Foliate appear more fragmented than necessary. I would definitely prefer to be able to switch between all current major Foliate components via the view switcher with as little external windowing as possible.¹

¹Priority-wise this is probably my most-wanted feature as I believe it would make Foliate feel significantly more "integrated" as an application and better accommodate my workflow.

johnfactotum commented 4 years ago

The easiest fix is to just close the library window when opening a book. That's what GNOME Builder does with it's "Open a Project" window, for example.

digitalethics commented 4 years ago

Maybe it could look like this:

viewswitcher_reader

I think naming it Reader would work better than Viewer in order to distinguish it from the image viewer component and to emphasize the actual reading experience. It is also the core component. My favourite would probably be a centered position as most time is spent in this component, like this: Library | Reader | Catalogs

digitalethics commented 4 years ago

A few more ideas: I think it would be good:

johnfactotum commented 4 years ago
digitalethics commented 3 years ago

Where would it put the book's title?

What about changing the alignment of the control buttons in GTKStackSwitcher or HdyViewSwitcher from horizontal to vertical like here or using the GTKStackSidebar instead for a vertical navigation? This would allow to use the header bar for the book title. From a pure desktop perspective vertical navigation is far more efficient, especially since it is better to use vertical screen space for navigational elements. From a convergence perspective, it is probably more difficult to use vertical navigation on mobile devices.

johnfactotum commented 1 year ago

In the gtk4 branch, there is now a library button on the sidebar, and the views are combined in the same window, which has addressed the problem, even though it doesn't use the view switcher pattern.