spheras / desktopfolder

Bring your Desktop Back to Life
GNU General Public License v3.0
200 stars 40 forks source link

Multiple problems under Openbox+Compton #220

Open Vladimir-csp opened 5 years ago

Vladimir-csp commented 5 years ago

Description

I gave desktopfolder a spin on Debian testing, running Openbox+Compton. Experiencing several problems.

Expected result

Actual result

System Information

Terminal output

** (desktopfolder:26244): WARNING **: 15:00:43.174: CustomShortcutSettings.vala:43: Schema "org.gnome.settings-daemon.plugins.media-keys" is not installed on your system.

** (desktopfolder:26244): CRITICAL **: 15:00:43.174: pantheon_keyboard_shortcuts_custom_shortcut_settings_list_custom_shortcuts: assertion 'available' failed

** (desktopfolder:26244): CRITICAL **: 15:00:43.174: pantheon_keyboard_shortcuts_custom_shortcut_settings_create_shortcut: assertion 'available' failed

** (desktopfolder:26244): CRITICAL **: 15:00:43.174: pantheon_keyboard_shortcuts_custom_shortcut_settings_edit_command: assertion 'relocatable_schema != NULL' failed

** (desktopfolder:26244): CRITICAL **: 15:00:43.174: pantheon_keyboard_shortcuts_custom_shortcut_settings_edit_shortcut: assertion 'relocatable_schema != NULL' failed

(desktopfolder:26244): Gtk-WARNING **: 15:00:53.550: Only 'activatable' widgets can be packed into the action area of a GtkDialog
^C
psycho@mindflash6:~$ desktopfolder 

** (desktopfolder:27108): WARNING **: 15:01:31.244: CustomShortcutSettings.vala:43: Schema "org.gnome.settings-daemon.plugins.media-keys" is not installed on your system.

** (desktopfolder:27108): CRITICAL **: 15:01:31.244: pantheon_keyboard_shortcuts_custom_shortcut_settings_list_custom_shortcuts: assertion 'available' failed

** (desktopfolder:27108): CRITICAL **: 15:01:31.244: pantheon_keyboard_shortcuts_custom_shortcut_settings_create_shortcut: assertion 'available' failed

** (desktopfolder:27108): CRITICAL **: 15:01:31.244: pantheon_keyboard_shortcuts_custom_shortcut_settings_edit_command: assertion 'relocatable_schema != NULL' failed

** (desktopfolder:27108): CRITICAL **: 15:01:31.244: pantheon_keyboard_shortcuts_custom_shortcut_settings_edit_shortcut: assertion 'relocatable_schema != NULL' failed

(desktopfolder:27108): Gtk-WARNING **: 15:01:40.246: Only 'activatable' widgets can be packed into the action area of a GtkDialog
fossfreedom commented 5 years ago

DesktopFolder currently has been tested on gnome-shell, budgie-desktop and pantheon

Hence why you are seeing those errors in the terminal output. CustomShortSettings.vala should probably only try to map shortcuts if the XDG_CURRENT_DESKTOP contains "GNOME" or the window manager is "Pantheon" at a minimum.

Alternatively @spheras - maybe the same suggested check above be added to DesktopFolder startup to throw a message to users that DesktopFolder has only been tested on the supported desktop's.

The other issues are due to using OpenBox. So really this is an enhancement request to support OpenBox.

I would kindly suggest that if you or others use OpenBox then perhaps a pull-request or two will help here to make DesktopFolder work with a wider range of window managers?

Vladimir-csp commented 5 years ago

Well, Workarea is part of NET_WM and is not specific to any DE. As for desktop window, here is xprop data for desktop windows of desktopfolder and pcmanfm-qt (differences): pcmanfm-qt:

_MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 0x2, 0x1, 0x0, 0x0, 0x0
_NET_WM_ALLOWED_ACTIONS(ATOM) = 
_NET_WM_STATE(ATOM) = _OB_WM_STATE_UNDECORATED
_OB_APP_TYPE(UTF8_STRING) = "desktop"
WM_NORMAL_HINTS(WM_SIZE_HINTS):
        user specified location: 0, 0
        user specified size: 1920 by 1080
        program specified minimum size: 85 by 85
        window gravity: Static

desktopfolder:

_MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 0x1, 0x21, 0x0, 0x0, 0x0
_NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_BELOW
_NET_WM_STATE(ATOM) = _NET_WM_STATE_SKIP_TASKBAR, _NET_WM_STATE_SKIP_PAGER, _NET_WM_STATE_BELOW
_OB_APP_TYPE(UTF8_STRING) = "dock"
WM_NORMAL_HINTS(WM_SIZE_HINTS):
        program specified minimum size: 1003 by 218
        program specified base size: 0 by 0
        window gravity: NorthWest

I have a suspicion that "dock" type is a culprit here. Meanwhile, secondary desktopfolder panels have "desktop" type.

fossfreedom commented 5 years ago

As a quick test, if you change https://github.com/spheras/desktopfolder/blob/03018066d0561661e58057d5765efcd44098f314/src/logic/DesktopManager.vala#L40

to

this.get_view ().set_type_hint (Gdk.WindowTypeHint.DESKTOP);

What happens?

Vladimir-csp commented 5 years ago

The layer problem is gone.

aljelly commented 5 years ago

From what I understand and IIRC the strange type hints for Desktop Folder's windows might have been to fix problems with elementary OS/Pantheon's multitasking view features.

fossfreedom commented 5 years ago

@aljelly hmm ... can you remember if there were any other issues when you had "DESKTOP" for elementary. I will need to check with budgie-desktop what happens with a "DESKTOP" hint - this may be a case of having a "if pantheon set DOCK else set DESKTOP" type code.

spheras commented 5 years ago

DOCK - DESKTOP - NORMAL hints changes were a lot of tricks I did time ago to support moveable, resizable and DOCK/DESKTOP features for the panels at the same time. Maybe we could create an issue to reevaluate the problem and see a better solution. I can't remember exactly the problems, but I remember it like a hell :imp: , touching here and there to fit exactly to the current behaviour. (i.e. you can see the #7 issue)

spheras commented 5 years ago

I'm tagging this issue as an enhancement to support Openbox+Compton. You're right @Vladimir-csp that perhaps this is something generic, I opened a new issue to review the hint changes in code. Perhaps that solve some of the issues you reported. Anyway, help to support different Desktops/Distributions/... combinations is more than welcome, unfortunately, we are few and can only concentrate in some distributions.