-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove "Check for duplicated lxpanel instances" #72
Comments
I have no idea. The check for a single instance is from 2006.
Yes, but wouldn't it then also be possible to run multiple instances of lxpanel per XScreen? |
Sure but what's the issue? Again if it's an issue of preventing some system misconfiguration launching multiple lxpanels with the same profile / location then again the check should not be generically looking for another instance but an instance with the same profile on the same XScreen. This is more or less just saying why the training wheels? With the check removed LXPanel becomes useful again (like it used to be) for people with more than one XScreen due to multi GPU or just because they organize that way. (I ran LXDE for years until the colors applet stopped working and things stopped running on each GPU.) If you look at the "Task Bar (Window List)" panel applet the option to only show windows on the same monitor as the task bar, this has no purpose anymore since if you have that enabled and you have other monitors you've now got no way to have a panel for those windows on those monitors unless the check is removed and LXPanel can have an instance per monitor. This means in theory LXPanel if there is to be a check for -overlapping- instances should have a way to ensure each instance has a separate profile and the geometry + edge are distinct. However I would also say this needs geometry + edge + XScreen (so you can use the same profile for each position per XScreen. Or you could just remove the check and let users use it like they used to ;). When LXPanel "broke" for me I never dug into the code because damn near everything broke back then (GTK 3 stopped enumerating XScreens which was like a nuke for multi GPU users) so I just moved to something else (Tint2). However it's getting flaky so while searching for alternatives I tried LXPanel again and noticed the output. Then decided to look at the code as to why it was checking and bailing on a second instance. A 4 line comment made it work again. Again, this is more of a feature request because I know hardware configs like mine have become rare. However as shown in the taskbar applet there are features that are useless now because of that check. *As an addendum it's a tad clunky to initially configure but ATM I have 3 LXPanels per XScreen (one LXPanel per monitor) with the "Only show windows on the same monitor as the taskbar" feature enabled. So 3 monitors per XScreen/GPU with the check removed I can run as many LXPanels as needed and the taskbar window list feature is once again useable. This allows a more natural use where I don't have to go WAY to the right to access windows on the leftmost screen. This also means each bar is cleaner rather than being confined to a single taskbar with a "kitchen sink" mess to visually sort through looking for the window you want. |
What if there was an option to run a separate instance of lxpanel? |
Well sure I guess but if you remove those 4 lines it's already there. I've got 6 instances running right now. ;) Which is to say no real effort required, no additional options or changes if you just comment/remove those 4 lines from the normal builds. If you really wanted/needed it just needs perhaps a little tutorial in the docs on how to configure/run multi panels which I could do. That said the fact the taskbar applet still has the multi instance options shows it was common enough back in the day to have an option for it so I'd wager anyone that wanted a separate panel per monitor could figure it out easy enough. |
This is an issue for me but more like a feature request for anyone else I suppose.
In src/main.c line 533-537 there is a check that as far as I can tell doesn't need to be there and kills lxpanels ability to be run on more than one XScreen. Building without the check you can run an instance of lxpanel per XScreen as intended and lxpanelctl works fine per instance so long as each is launched with its own profile and you give lxpanelctl the correct DISPLAY= prefix on launch.
I know these days "X anything" is out of fashion but unless Wayland changes how multiGPU is handled I and others running configs like mine will be on X for a long time to come. As more and more breaks for X / MultiGPU as everything pushes towards "Waylandification" utils that play nice are scarce. When LXPanel can be adapted with a such a small fix and seemingly no harm running multiple instances why not just remove/comment that bit so the main builds have more flexibility?
If there is a real reason to stop multiple instances (maybe run away launches being hidden behind each other) perhaps an instance + defined profile would make more sense? Some user feedback "Assign a separate profile to run another instance." or something?
The text was updated successfully, but these errors were encountered: