(*** This bug was imported into bugs.kde.org ***) Package: kdesktop Version: KDE 3.0.0 Severity: wishlist Installed from: Compiled From Sources Compiler: g++ 2.95.4 OS: Linux OS/Compiler notes: Debian unstable At the moment backgrounds and wallpapers are based on the size of the whole desktop in xinerama mode. Could that be changed to be based on the size of each monitor and then repeated across all monitors? For example background mode "Elliptic Gradient" centered on the middle of first screen and repeated on the others. Or wallpaper mode "Centered" or "Scaled" to be based on the geometry of the first screen and repeated on the others. Many thanks. Ashley (Submitted via bugs.kde.org)
I think that another option should be to have a different background on each xinerama desktop, just as youc an have different backgrounds on each virtual desktop. Currently, when I try to apply my 1280x1024 background on my multi-monitor setup at full size, it is all skewed out of proportion because it is stretched to twice its width.
I would also like to be able to use different wallpapers on different screens because I am using a 1280x1024 screen and one with 1024x786 and it really looks ugly when the wallpaper gets cut off on the second screen.
I would suggest something similar to OSX where the "Desktop Background" control panel actually opens twice, once on each screen to enable the user to set the background (gradient, colour, picture, whatever) on each screen as seperate entities.
Would like too the same or different wallpaper adapted (stretched) on each screen instead of on the virtual size, since the stretched result is ugly. (See also bug 59682)
*** Bug 71264 has been marked as a duplicate of this bug. ***
*** Bug 59682 has been marked as a duplicate of this bug. ***
*** Bug 77896 has been marked as a duplicate of this bug. ***
*** Bug 47224 has been marked as a duplicate of this bug. ***
I would just like to add that I believe this should be an _option_. I have found some great wallpaper that is designed for dual monitors. I would still like to be able to use one picture to span the two monitors, but I think this would be a good option to add.
I would also like to suggest that the "background slideshow" be fixed as well to take advantage of this functionality to allow rotation of backgrounds across all available desktops, eg: if you want two different pictures per screen it would rotate those two instead of just the left screen for example.
I've started coding this feature, so soon we should have per-monitor configurability of background :). I'd love to hear suggestions / criticisms of the plan so far: There will be three different "modes" for when the user has more than one monitor: * Single - All monitors will be treated as one background (i.e. the same as what we currently have). * Repeated - The user will configure settings for one monitor, and they will be repeated for each monitor. So for example, the "Elliptic Gradient" background will appear once on each monitor, appropriate scaled et al; slide shows will show a random image on each monitor; etc etc. * Individual - Each monitor can be configured individually. This will work alongside selecting the desktop, e.g. if the user selects "Screen 1" and "All Desktops", then he will be configuring the background image for monitor 1; or if the user selects "screen 2" and "Desktop 3", then he will be configuring the background image for desktop 3 on monitor 1. The above options seemed like the only way to allow all that a user might (reasonably) want to do. I'll attach a couple of screenshots of what the UI looks like so far, the first one showing the different modes, and the second one shows the ability to select the desktop and the monitor in the individual mode. P.S. This is my first time I've played around with the kde code base, so wish me luck :)
Created attachment 11517 [details] Screenshot showing the different behaviours for multiple monitor setups.
Created attachment 11518 [details] Screenshot showing the individual mode for configuring the background
I've had a slight change of plan: the "Repeated" mode described above will be replaced by an "All Screens" option in the screen select dialog; much like how the user can currently either configure All Desktops at once, or each desktop individually. This will leave two screen configuration modes: either treating all monitors as one desktop (as it currently is), or the ability to configure the background to display per-monitor (where the user can either select each monitor individually, or apply the background to all monitors).
This sounds sweeeeeet ! Thank you very much for coding it up. I will very much enjoy using it. Let me know when you get it ready.
Thanks for getting to this, David! One thing, though. Please, be careful to distinguish multiple monitors joined into one screen (as with Xinerama) and multiple screens (as with DISPLAY being :0.0, :0.1, :0.2 ...). For example, with multiple screens setting backgrounds individually is currently possible, but specifying different screen-savers (like DPMS turn off on one and slide-show on the other) is not. Also there is a bug in localization of multiple screens. The first one (:0.0) has desktop and trash icons properly localized, for example, but the two others (I have three screens at work) ignore localization settings.
Well it seems ok to me. But will this code be applied to the kdm login screen background configuration part too ?
The code used by kdm is the same as used by kdesktop, so kdm will get per-screen support as well (although I haven't tested this yet). Most of the code now seems to be working. I'll attach a screenshot showing the config dialog against the desktop background. However, there are still a few quirks that need sorting out.
Created attachment 11561 [details] Config dialog set against the xinerama desktop background
Created attachment 11573 [details] Implement per-monitor configuration of background for kdesktop and kdm The patch is against the svn kdebase. I've tested thie code in a variety of setups - xinerama and non-xinerama, different positioning / sizes of screens, etc, and it seems to work for all of them (at least on kdesktop). The code also works for kdm, presumably in all sorts of weird setups as well. The only remaining issue is with the DCOP interface for the kdesktop background - see "dcop kdesktop KBackgroundIface". Some of the function names are ambigious now (e.g. "setCommon" - this applies to common desktop, but could equally apply to common screen). I've so far left the DCOP interface untouched for backwards compatibility issues, but it deserves further attention. Otherwise, this bug looks like it can be closed :)
*cough cough* Are there any KDE developers CC'ed into this bug report that know a little about kdesktop et al, and can comment on the patch / accept or reject it into SVN? (I know you're out there :)) Thanks, David Saxton <-- not an all-knowing kde developer
Created attachment 11884 [details] Implement per-monitor configuration of background for kdesktop and kdm Updated the patch to reflect changes discussed in kde-devel thread: http://lists.kde.org/?l=kde-devel&m=112197335022184&w=2
Created attachment 11885 [details] The new Background Dialog
Thank you very much, David! Perhaps, you can also help kicker's maintainer with the bugs 108965 and 108970? He, pretty much, refuses to accept the problem as legitimate :-( Yours, -mi
Hello mi, I've looked over the bug reports, and it sound's like you've got a pretty strange setup! Having played around with xinerama / multihead with two monitors, it's pretty confusing from a code point just to work out what does what (terminology such as screen, display, monitor, desktop, etc seems to get mixed about quite a bit, and code for handling different setups can get pretty ugly). Although many developers might be able to test a multihead setup with two monitors, the number of developers who either have enough monitors to test combined xinerema + dual head, combined with the masochism needed to get the code working in all setups, is probably somewhere around zero. If you're feeling brave enough, you could delve in and fix the code. Alternatively, you could identify what you like about dual head, and see if kde can be improved in these areas. In the long run, this is pretty much the only viable option - even if combined xineram + dual head working, it would quickly suffer from bit rotdue to lack of people using it.
The reason, I do not use Xinerama is that one of my four monitors is completely different from the three others (a CRT, with bigger resolution than the LCDs). The secondary reason is that DRI/GLX does not work on Radeon cards in Xinerama mode -- only using the MergedFB option. And the MergedFB option, in turn, only works to unite two heads of the _same_ card. And I have two (an AGP and a PCI). You think, KDE can help solve all these issues? As for bit-rot, I upgrade fairly often, so I'll spot a regression quickly :-)
#26: it is not true that radeon doesent work with glx in xinerama, i do it on my laptop + tvout
Kasper! Please, look into your /etc/X11/xorg.conf or XF86Config and find the "MergedFB" option in the video card section. I'm sure, it is there. In any case, only one of my two radeon cards (PCI) is even supported by DRI on FreeBSD. The other one (AGP) is too new :-(
Some good reasons there mi, I guess. It wasn't until recently that I was able to have glx working on both screens with nvidia drivers. Well...if you want stuff fixing, you'll still need to do it yourself, as there don't seem to be any kde developers who have both the ability and the inclination to do xinerama+dualhead. In most cases, it's probably a matter of making a few minor adjustments to the code to handle config issues. If you need help, I'll try and provide it... As for this bug, it's getting frustrating to have received so little feedback from kde developers (although thanks to those that have given feedback - in particular, Aaron Seigo).
Why can't we all just get along, right?
Aaron: you seem to have some clue about this topic, which I don't. Please commit if the patch is OK with you, I certainly have no objections myself.
yes, i've been talking with David Saxton on irc about it for a bit and it will make it into 3.5 =)
SVN commit 451134 by mattr: Apply the patch to configure backgrounds per display in Xinerama mode. Fixes bug 42778. If it works, praise David Saxton who wrote it and if it doesn't work, blame me. David: Thanks for the patch! BUG: 42778 M +27 -14 doc/kdm/kdmrc-ref.docbook M +3 -1 kcontrol/background/bgdefaults.h M +362 -105 kcontrol/background/bgdialog.cpp M +17 -8 kcontrol/background/bgdialog.h M +120 -40 kcontrol/background/bgdialog_ui.ui M +166 -1 kcontrol/background/bgmonitor.cpp M +66 -2 kcontrol/background/bgmonitor.h M +368 -7 kcontrol/background/bgrender.cpp M +68 -3 kcontrol/background/bgrender.h M +66 -12 kcontrol/background/bgsettings.cpp M +30 -8 kcontrol/background/bgsettings.h M +4 -1 kcontrol/kicker/positiontab_impl.cpp M +2 -2 kcontrol/kicker/positiontab_impl.h M +66 -52 kdesktop/bgmanager.cc M +2 -2 kdesktop/bgmanager.h M +10 -0 kdesktop/kdesktop.kcfg M +11 -8 kdm/kfrontend/krootimage.cpp M +1 -1 kdm/kfrontend/krootimage.h
Can the patch from attachment 11884 [details] be simply applied to 3.4.2?.. Thanks!
no, as we don't add new features to previous releases, just bug fixes. this will be in 3.5, however, which will be out soon.
Bug closed. Kdesktop is no more mantained.