Bug 7907 - GTK dialog buttons have inconsistent style
Summary: GTK dialog buttons have inconsistent style
Status: CLOSED FIXED
Alias: None
Product: ThinLinc
Classification: Unclassified
Component: Other (show other bugs)
Version: trunk
Hardware: PC Unknown
: P2 Normal
Target Milestone: 4.15.0
Assignee: Tobias
URL:
Keywords: relnotes, wilsj_tester
Depends on:
Blocks: 7903
  Show dependency treegraph
 
Reported: 2022-04-27 10:25 CEST by Pierre Ossman
Modified: 2022-10-12 11:22 CEST (History)
2 users (show)

See Also:
Acceptance Criteria:
• Layout and functionality follows the Gnome HIG and/or popular usage • The designs are consistent with other dialog windows for a given desktop environment (see for instance gedit) A few points to consider: • Alignment • Word casing • Font size • Punctuation marks when appropriate • Short and precise headers • Few words as possible in the text • No colloquial language (don't, can't, etc...) • Button labels with imperative verbs that are well-known • Button labels relate to the headers for quick association • Button labels with non-conflicting mnemonics. A single character should be underlined for each button when Alt is pressed, corresponding to the access keys for keyboard navigation • The default answer should be appropriate for the situation, e.g. "Cancel" when hasty answers are not suited or "Return" when accidentally quitting a wizard • Entry widgets should initially be focused, if appropriate, and connect to the forward button


Attachments

Description Pierre Ossman cendio 2022-04-27 10:25:20 CEST
For some reason, a GtkDialog and a GtkMessageDialog look very different. This can be very surprising and look very out of place. Especially so in the server installer, as it presents those two types back to back during the sudo handling.

Upstream seems to think it's the applications' responsibility to deal with this:

https://gitlab.gnome.org/GNOME/gtk/-/issues/3938

It seems the appearance should also vary depending on the desktop environment. E.g. a button bar in GNOME, but individual buttons under Xfce.
Comment 14 Pierre Ossman cendio 2022-05-10 08:08:08 CEST
The following crash occurs in some cases, for unknown reasons:

> cendio@ubuntu2204:~$ tl-setup
> <frozen importlib._bootstrap>:671: ImportWarning: DynamicImporter.exec_module() not found; falling back to load_module()
> <frozen importlib._bootstrap>:671: ImportWarning: DynamicImporter.exec_module() not found; falling back to load_module()
> ERROR:root:Traceback (most recent call last):
> ERROR:root:  File "/opt/thinlinc/sbin/../libexec/tl-setup.py", line 309, in <module>
> ERROR:root:    oOoO00 ( )
> ERROR:root:  File "/opt/thinlinc/sbin/../libexec/tl-setup.py", line 216, in oOoO00
> ERROR:root:    sudorelaunch . sudo_question ( i1I1 , i1I1 )
> ERROR:root:  File "/opt/thinlinc/modules/thinlinc/sudorelaunch.py", line 65, in sudo_question
> ERROR:root:    I1Ii111i1I . get_titlebar ( ) . get_children ( ) [ 0 ] . hide ( )
> ERROR:root:AttributeError: 'NoneType' object has no attribute 'get_children'
Comment 44 William Sjöblom cendio 2022-05-18 16:53:26 CEST
> • Layout and functionality follows the Gnome HIG and/or popular usage

I have checked all the dialogs, their wording/casing on both titles and body
text, punctuation, layout, behavior under different GTK themes, etc.

Things look good and consistent and the design and wording of the dialogs are
very much in line with both the HIG and other applications.

Regarding the wording, I made a small non-controversial correction to the use of "Authentication" vs "Authorization". Other than that things look perfectly fine.

The one problem I found in this area was not a regression and has been broken
out into bug 7929.

> • The designs are consistent with other dialog windows for a given desktop
  environment (see for instance gedit)

I have tested the dialogs under XFCE, KDE, and GNOME. All of these under Fedora
35, and additionally GNOME under SLES12 to ensure that we do not make use of any
GTK features that are too new. SLES12 has the oldest GTK version of all
supported distributions.

The dialogs are consistent with the rest of the user interface under these
desktop environments.

Additionally, I had a look at the changes themselves, and things look fine!

Closing.
Comment 45 Pierre Ossman cendio 2022-05-19 13:32:38 CEST
setlocale() is being incorrectly called from sudorelaunch. Need to refactor that a bit.
Comment 46 Pierre Ossman cendio 2022-05-19 13:35:35 CEST
There are also a few new files with translations in them. They need to be added to the list of files scanned, or they won't actually get translated.
Comment 49 Tobias cendio 2022-05-27 15:07:12 CEST
The issue with locale in sudorelaunch has handled, and missing files in translation scan have been added. A few provisional translations show that translations of dialogs are working as intended. We are however forced to temporarily disable the forced locale in certain places to see this effect.

The dialogs this bug pertain to primarily appear -- with a few exceptions -- for the installer and setup of ThinLinc for which we presently force a POSIX locale. So while locale-based translation functionality is in place most dialog windows we encounter won't actually be translated from English.

Closing.

Note You need to log in before you can comment on or make changes to this bug.