noodlylight / fusilli

X Window Manager (Compiz fork)
Other
25 stars 5 forks source link

Multiple desktops and multiple viewports - Native way to navigate multiple desktops AND viewports? #2

Closed ShadowKyogre closed 9 years ago

ShadowKyogre commented 10 years ago

I noticed you left the multiple desktop configuration in the core plugin. I wanted to let you know about a wnck bug that doesn't properly detect multiple workspaces since the check for the number of desktop atoms pairs is faulty. This can lead to people not knowing where some windows went if they accidentally send them to desktop X when they mean viewport X on their current desktop.

Currently one can work around this issue with an app that's capable of this on its own, like Compiz Boxmenu (link also contains the details on why I added desktop menu to complement viewport menus).

I'd like it if libwnck fixed this upstream, but I still haven't heard from them.

On a related note, would it be possible to port the vpswitch plugin so one can launch an application by clicking on the desktop? Same with the workspacenames (<- this is a 0.9.x plugin, but I think the code looks simple enough to backport) so users can easily see which desktop/viewport combo they're on?

[EDIT]: I'm not sure if I can compile the current compiz plugins against fusilli, as I don't see any detailed steps on how to do that. Does it just pick these up automagically?

noodlylight commented 10 years ago

I plan on dropping support for viewports, keeping desktops only. I wasn't aware of that wnck bug, good to know.

No, you cannot use any compiz plugins with fusilli, the headers, the XML plugin metadata format, the option system, everything has changed. Every plugin needs significant changes to work with fusilli.

Some plugins won't be ported, others will be simplified, others consolidated into core. I will add a list of my plans on the README soon.

workspacenames needs the text plugin, but I think both should be easy to port. vpswitch requires dbus support to work fully, which is also missing right now.

I'll look at both plugins soon.

compiz-boxmenu looks interesting.

ShadowKyogre commented 10 years ago

@noodlylight: Gotchas. Do let me know when those two plugins are ported (especially the workspace names since I'd like a way to pick those up from fusilli in Compiz-Boxmenu).

Also, there's still a reference in fusilli/NEWS to the Compiz wallpaper plugin. You may need to port that too to avoid the confusion.

noodlylight commented 10 years ago

@ShadowKyogre Sure, I'll let you know.

The wallpaper plugin is in the TODO list too.

KristianLyng commented 10 years ago

You don't want to drop support for viewports.

The difference between viewports and desktops is that when you switch desktop, the windows on the other desktop are all unmapped. To put it simply: This means no effects for any window not on the current desktop. Or even simpler: no cube. Or multi-desktop switcher/scale with live preview.

If you really are dropping any of it, you probably want to drop multiple dekstops instead.

BTW: minimized windows are also unmapped, which is why you either get a screenshot or a hack or a static thumbnail in the switchers when alt-tabbing past minimized windows.

noodlylight commented 10 years ago

I wasn't aware of that limitation.

Plans foiled by X :p

noodlylight commented 10 years ago

@ShadowKyogre workspacenames is back (now called wsnames).

No dbus support yet though (soon).

noodlylight commented 10 years ago

@ShadowKyogre

You can now launch applications by clicking on the desktop:

Plugin commands:
command0=compiz-boxmenu
run_command_button0=<ClickOnDesktop>Button1

Also see: https://github.com/noodlylight/fusilli/issues/3

ShadowKyogre commented 10 years ago

@noodlylight: The workspacenames works fantastically, but the ClickOnDesktop doesn't for some reason. If I remove the modifier, the command runs with the expected button.

I left a link to the current banana.xml on #3.

noodlylight commented 10 years ago

Weird. Your config file works here: I right-click and both the terminal and the expected drop-down menu appears (Create folder, change background etc)

(I even installed lilyterm to test)

What DE do you use? Which application manages the desktop? caja? nautilus?

ShadowKyogre commented 10 years ago

Nothing on the test box.

On 11/19/2014 07:34 PM, Michail Bitzes wrote:

Weird. Your config file works here: I right-click and both the terminal and the expected drop-down menu appears (Create folder, change background etc)

(I even installed lilyterm to test)

What DE do you use? Which application manages the desktop? caja? nautilus?

— Reply to this email directly or view it on GitHub https://github.com/noodlylight/fusilli/issues/2#issuecomment-63756569.

noodlylight commented 10 years ago

Ok! Now I check for the root window of the screen too.

Check again.

ShadowKyogre commented 10 years ago

@noodlylight: It works as expected! (Screenie attached for your viewing) systemd test box

noodlylight commented 10 years ago

Excellent! Thanks for testing!

Now, I should look at dbus...

noodlylight commented 10 years ago

@ShadowKyogre I just pushed some delicious dbus noodles...

This:

dbus-send --print-reply --type=method_call --dest=org.fusilli /org/fusilli/wsnames org.fusilli.getNames int32:'0'

returns an ordered list of the workspace names for screen 0

ShadowKyogre commented 10 years ago

@noodlylight: I implemented the lookup in https://github.com/ShadowKyogre/Compiz-Boxmenu/commit/0fbb6b28d9fc3c42a17f605de90bfce7a55e529c

Though, there is this weird crash that specifically happens when I do the following:

  1. Open FSM
  2. Enable wsnames (be sure there are some names)
  3. Pull up the viewport menu (should show the viewport names after compiling support for that)
  4. Disable wsnames
  5. Pull up the viewport menu (should crash since it's trying to call a method to a path Fusilli thought was available, but isn't now. Peculiarly enough, this does not happen when the viewport menu is shown while wsnames is disabled)

gdb backtrace: http://dpaste.com/1RJYBK0

noodlylight commented 10 years ago

Oops, fixed !

Commit: 98f09560242b6c31849aaa36dec1a4e3f33f057b

ShadowKyogre commented 10 years ago

@noodlylight: Just tested the fix you committed and the fix works!

noodlylight commented 10 years ago

Sweet!

I'll add a dbus signal soon, too.

noodlylight commented 9 years ago

Oops, I forgot about this. I'll add the dbus signal ASAP. ShadowKyogre, sorry for the ridiculous delay.