I am using a dual monitor setup with Xfce 4.8. Each monitor has its own panel with a number of launchers and the Window Buttons plugin. Lately I unset the 'Show windows from all monitors' property to clean up the number of buttons on each panel, which helped a lot However, the behavior of this property is not maintained between reboots. When I booted yesterday I had the full list of buttons, when checking the Properties the checkbox was unchecked. By checking the box and unchecking again the correct behavior is established again. My assumption is that this behavior is only enabled when setting the property, and not on load of the plugin. I am using xfce4-panel-4.8.1 on Gentoo (unstable: ~amd64).
Created attachment 3464 adds a xfce_tasklist_gdk_screen_changed call when the screen is connected I investigated this bug and did not find any inconsistencies for storing the all_monitors property. What I found out is that the xfce_tasklist_filter_monitors call not only depends on the all_monitors property but also on the monitor_geometry. Looking into this part I discovered that the tasklist is not notified about the initial screen change (i.e. the adding of the screen). The attached patch fixes this, and also solves my problem. Please verify, and if this is indeed the right way to fix (i.e. it does not break other things) this bug can be closed.
*** Bug 7224 has been marked as a duplicate of this bug. ***
Looks fine, applied in master. Thanks.
*** Bug 7180 has been marked as a duplicate of this bug. ***
Hey Pim. I am still having this issue with 4.12.0. I am running Ubuntu Wily (15.10) on amd64. I've looked at my distro's package for xfce4-panel and it appears as though your patch has been applied, yet for some reason it doesn't work on my machine. As a workaround, when I enable my second monitor, I have to go into the Window Buttons settings for the second monitor's panel and double toggle the "Show windows from all monitors" setting to get the panel to update correctly (e.g. hide windows from other monitors in my case).