Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User interface improvements #1202

Open
goshatch opened this issue Mar 12, 2020 · 6 comments
Open

User interface improvements #1202

goshatch opened this issue Mar 12, 2020 · 6 comments
Assignees
Milestone

Comments

@goshatch
Copy link

goshatch commented Mar 12, 2020

Hello! I love Zeal, and I would love to see some user interface improvements in it.

For example, in this screenshot, several things could be improved:

Screenshot from 2020-03-12 16-03-41

  • The "favicons" for each tab should match the docset being used, instead of the Zeal logo
  • There are 4 layers of toolbars in between the top of the window, and the content (Window title bar, menu bar, tabs bar, search/navigation). It would be good to somehow combine these into fewer layers. The Gnome project has a design pattern for this that can be found here but I'm not too sure if there's something equivalent for Qt.
  • One simple way I can see to start doing this is to supply an option for hiding the menu bar. Many applications (for example Firefox or Slack) allow to do this by using the Alt key. As the menu bar doesn't expose any essential functionality, this could be a good way to get started.

I'm happy to try to contribute code, but I don't know the first thing about Qt, so I might need some help to get started on this.

Edit: Forgot to mention that this screenshot is from the zeal-git package on the AUR, running under Gnome.

@goshatch
Copy link
Author

Some solutions to the issues above can be seen in the Dash user interface, although I'm not at all sure how/if that can be translated into Qt.

@trollixx
Copy link
Member

Thanks for reporting!

The "favicons" for each tab should match the docset being used, instead of the Zeal logo

This is a regression from #1182, that I didn't notice. I'll fix this.

I agree about the toolbars, but unfortunately there's no fasttrack solution. Qt doesn't support GNOME's Header Bars, and even if it did, that would have been GNOME specific.

My quick attempt to make the menu bar show and hide on Alt was not very successful. For some reason hiding the menu bar also steals focus from the current widget, and also any Alt+ combinations do not work while the menu bar is invisible.

At some point I was considering implementing a custom UI a la VS Code, but that'd be a enormous amount of work, and designing interfaces is not my strong suit as you can see. So, lately the medium term plan has been to move all core logic to a standalone headless service, that native UI apps can use.

Unfortunately, Qt is not what it used to be, and it can't effectively play the catch up game with the modern operating systems changing their UI/UX practices in every update. That leaves us with only two viable options, either multiple native UI apps, or a single cross platform with its own UI.

@trollixx trollixx self-assigned this Mar 14, 2020
@goshatch
Copy link
Author

Thank you for the clarifications!

I think that the plan to move the core logic into a standalone service that can be used by native apps is a brilliant one. I would be happy to contribute to building a GTK UI following the HIG for Linux, but I understand that it might be tricky to build a Windows UI.

I understand that Zeal and Dash share docsets, but I'm not too sure how different they are under the hood. It would be kind of awesome if the core could be shared across all platforms, and if Dash becomes a Mac frontend for the unified service. @Kapeli, what do you think?

@trollixx Do you have a plan for how to start extracting functionality into a separate service? I can see that there's a src/libs/core directory with code that seems like good candidate to start with, but if you have thought about this a bit and could share an outline of how that might happen, I would be happy to help where I can.

trollixx added a commit that referenced this issue Apr 5, 2020
A regression from switching to serving content over HTTP.

Reported in #1202.
@trollixx
Copy link
Member

trollixx commented Apr 5, 2020

The "favicons" for each tab should match the docset being used, instead of the Zeal logo

Fixed in c2acb42, please test.

@goshatch
Copy link
Author

goshatch commented Apr 5, 2020

The "favicons" for each tab should match the docset being used, instead of the Zeal logo

Fixed in c2acb42, please test.

Just tested and it is fixed. Thank you very much!

@Zyox-zSys
Copy link

Zyox-zSys commented Jun 12, 2024

[Alt] focuses the menu bar, thus preventing [Alt] combinations from working. It does not highlight the menu entry selected nor open any of the drop-down menus though, which makes it seem as if nothing happened.

To verify: press either the up or down arrow key or a top-level accelerator hotkey (such as Alt and then any of [F]ile, [E]dit, [T]ools, or [H]elp). I believe merging pull request #1441 should address the issue, also reducing issue #1251.

@trollixx trollixx added this to the 0.8.0 milestone Sep 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

3 participants