Comment 15 for bug 1231091

Revision history for this message
Gordon N. Squash (thesquash) wrote (last edit ):

Regarding @hellsworth's observation (post # 11):

Though this observation may well lead us down the correct path, I strongly believe both run as the superuser. Here's why:

For the record, the MATE desktop's window manager is Marco; the "window manager" on stock Ubuntu is Mutter since stock Ubuntu uses the GNOME desktop. Another thing to note is that stock Ubuntu tends to use Wayland by default, whereas Ubuntu MATE exclusively uses X11 (mainly because the MATE applications don't work very well on Wayland yet).

Marco adds the " (as superuser)" suffix to the end of windows which are owned by the superuser. The Marco code which adds the suffix is located on lines 486-491 in the source file `src/core/window-props.c` (see https://github.com/mate-desktop/marco/blob/master/src/core/window-props.c#L486-L491):

             if (window_owner==0)
               {
                 /* Simple case-- don't bother to look it up. It's root. */
                 *target = g_strdup_printf (_("%s (as superuser)"),
                                            title);
               }

I was going to look up whether Mutter has a similar block of code for the function, but I discovered I didn't need to: On stock Ubuntu, the maybe-ubiquity screen uses just a plain old, client-side-decorated header bar, which bypasses the window manager's own decorations. I can prove it since this screenshot (https://phoenixnap.com/kb/wp-content/uploads/2021/04/choose-keyboard-layout-for-ubuntu-20.04.png) shows Ubiquity's title bar without the menu button on the left side of the window title bar; the menu icon (which is a group of three white horizontal lines) always appears with the default Mutter settings if Mutter draws the window title. Note that Mutter never draws the window title on Wayland.

So in other words, just because one says it's run as the superuser and the other doesn't say it does not mean that the other is not run as the superuser. To find the real answer, we'd have to boot up a stock Ubuntu to the maybe-ubiquity screen, press Ctrl-Alt-F1 to go to a console, log in, and then use `ps` to find out who owns the `ubiquity` process.

However, furthermore it would be a good experiment to find out if the Wayland / X11 difference is the culprit. I wonder if any accessibility information is communicated over the X protocol, or if it's all done via D-Bus?