|10-09-07, 09:55 PM||#1|
Join Date: Mar 2007
Hotkey switching for enabling/disabling Xinerama?
So, before I had gotten hotkey switching of my display devices working (again, AFAIU) by upgrading to the 100.14.09 driver, I'd been using Xinerama to enable my external monitor and my builtin LCD (Dell D820 laptop) simultaneously as one large desktop.
This actually works well if one is willing to boot or restart X after connecting the external monitor -- I really like having all the extra deskspace, it's useful.
However, the only way I know of to enable the Xinerama mode is by having the external monitor connected at X start-time. And, if one sleeps and resumes the system, it assumes an external monitor is still connected, and happily resumes without one present, the main issue with this being that the external screen is automagically deemed as Screen1 by the driver+X system, and so all (in my case anyway) of my useful desktop controls (e.g. KDE panel, icons, etc) are invisible on the phantasmic Screen1.
Now, if the place where one resume's a system in this Xinerama-actually-mapped-to-two-physical-monitors system has an external monitor that's pretty close to the former one in terms of EDID characteristics, then AFAIK, it will just wake up (resume) and work.
I tried this with having initiated Xinerama using a external LCD monitor with 1920x1200 resolution, and then slept system, went home and plugged into an older Sony monitor whose EDID info reports it supporting only 1280x1024 (even tho it can physically easily support higher resolutions, e.g. 1400x1050). Anyway, uh, the results were suboptimal. I guess if all those blurbs I've seen on the Web about how one can actually fry a CRT by driving it with incorrect sync & refresh values are really true, then I'm lucky I didn't fry it.
So, the use case that all this is leading up to is what would be Really Useful, as in engines:
Have lapstation, boot it with no external monitor attached.
At some point, possibly after n-number suspend-resume cycles, attach external monitor.
Somehow use hotkey sequence or some software tool to tell video driver+X subsystem to initiate Xinerama using both monitors, without restarting X.
Or, simply be able to do hotkey switching of display devices.
Then, be able to go back to having Screen1 be mapped to the builtin lapstation LCD, and suspend, and repeat ad-infinitum.
In playing with nvidia-settings, it's pretty apparent that one can sort of do this today but the caveat is that X must be restarted, which for us living on these GUI desktops, is tantamount to a reboot, hence distasteful for folks whose system is portable and used as such.
I wonder if X.org 7.3 in combination with appropriate nvidia driver updates/refinements would enable such a use case?
IIRC, one can perform this use case on a Mac, and could have for many years. I used Mac laptops until about 1997 and distinctly recall dragging the bottom edge of my desktop down from the external monitor situated above my laptop builtin LCD onto said LCD, and being able to back out of that config and sleep the system and resume with just the builtin LCD, and doing all this without rebooting or restarting. This was in the early-to-mid-nineties. There were dinosaurs wandering about. You get the idea.
We really need such basic human-oriented usability in the X/Linux world. Please.