linuxmint / cinnamon

A Linux desktop featuring a traditional layout, built from modern technology and introducing brand new innovative features.
GNU General Public License v2.0
4.48k stars 729 forks source link

raise-on-click=false isn't honoured #3992

Closed Fjodor42 closed 9 years ago

Fjodor42 commented 9 years ago

As of recently, windows seem to raise on click, even though org.cinnamon.desktop.wm.preferences.raise-on-click is set to false in dconf.

Being generally very pleased with Cinnamon, I shall try to apply the reasonable heuristic of not attributing to malice, that which can adequately be explained by incompetence, and I shall even withhold a verdict of incompetence in favour of one of simple oversight until convinced otherwise, but If this is a conscious subversion of the effect of the setting, please explain your reasons for ruining what I have elsewhere called one of my most significant productivity boosters and, if not, please fix immediately.

mtwebster commented 9 years ago

Thanks for the laugh - though we can usually explain all of our mistakes away due to incompetence, I don't recall meddling with any of this recently.

To quote the dconf description of this key:

        Setting this option to false can lead to buggy behavior, so users are
        strongly discouraged from changing it from the default of true.  Many
        actions (e.g. clicking in the client area, moving or resizing the window)
        normally raise the window as a side-effect. Setting this option to false,
        which is strongly discouraged, will decouple raising from other user
        actions, and ignore raise requests generated by applications.
        See http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6.

        Even when this option is false, windows can still be raised by an
        alt-left-click anywhere on the window, a normal click on the window
        decorations, or by special messages from pagers, such as activation
        requests from tasklist applets. This option is currently disabled
        in click-to-focus mode. Note that the list of ways to raise windows
        when raise-on-click is false does not include programmatic requests
        from applications to raise windows; such requests will be ignored
        regardless of the reason for the request.

        If you are an application developer and have a user complaining that
        your application does not work with this setting disabled, tell them
        it is -their- fault for breaking their window manager and that they
        need to change this option back to true or live with the "bug"
        they requested.

I can't detect any difference currently, with or without this set, though I'm on Debian with Gtk 3.14 at the moment. I can try on Mint later.

Cobinja commented 9 years ago

Seems to be a left-over from forking muffin from gnome's mutter (https://github.com/linuxmint/muffin/blob/master/src/core/prefs.c#L1239). Since before then, raise-on-click is forced, if focussing mode is clicking. Other focussing modes are hover-to-focus and "sloppy", whatever that might be.

Fjodor42 commented 9 years ago

I guess it was a fluke of some sort, because I can't seem to reproduce it anymore, so sorry for the noise - I'll close the the issue.

Fjodor42 commented 9 years ago

And, by the way, the way I understand the focus modes other than click-to-focus is that hover-to-focus does exactly that, but removes focus when the mouse leaves the window - sloppy (which I use) retains focus until the mouse hits another window, but otherwise, focus follows the mouse.

Regarding the dconf description, I seem to remember ranting about it somewhere, but I can't seem to find it, which might just be for the best :-)