1 |
Sebastian Beßler <sebastian@××××××××××××.de> posted |
2 |
4A45EEAF.8090906@××××××××××××.de, excerpted below, on Sat, 27 Jun 2009 |
3 |
12:04:31 +0200: |
4 |
|
5 |
> It works again. |
6 |
> All I had to do was disable xrandr1.2 support in the driver by stopping |
7 |
> X and using aticonfig --set-pcs-str="DDX,EnableRandR12,FALSE" |
8 |
> |
9 |
> If xrandr support is enabled the driver gives all controll over the |
10 |
> displaysettings to xrandr so that the SwapScreens Option in xorg.conf |
11 |
> gets ignored. |
12 |
|
13 |
Cool, thanks! =:^) |
14 |
|
15 |
I figured it had to be something simple like that and suspected it might |
16 |
be RandR related, but as I don't do proprietary, including proprietary |
17 |
video drivers, I had no idea what sort of mangling of RandR the |
18 |
proprietary driver might be doing. |
19 |
|
20 |
But turning it off should work, for now... |
21 |
|
22 |
FWIW, assuming the RadeonHD driver is RandR 1.2 compliant, and the fglrx |
23 |
driver should be similar, check out the monitor section of the xorg.conf |
24 |
manpage. In particular, the layout and screen sections work a bit |
25 |
differently with RandR and position information that was previously to be |
26 |
found there is now located in the various monitor sections. |
27 |
|
28 |
Among other things, this facilitates monitor hotplugging, tho there are a |
29 |
few kinks still being worked out there. But the idea is to put all the |
30 |
information used with a particular detected monitor together in the |
31 |
section for that monitor, so with a laptop for instance, you can have |
32 |
different settings for your external monitors at home and at work, plus a |
33 |
projector setup you use for presentations, plus just the laptop monitor |
34 |
itself, and once they get the kinks worked out, you should be able to |
35 |
boot your laptop into X with say the external monitor at work plugged in, |
36 |
put it into suspend, take it on the train/bus, open the laptop and it'll |
37 |
detect that you no longer have the work monitor plugged in and switch to |
38 |
laptop monitor only, suspend again, plug in at home and have it detect |
39 |
and setup for the home system, suspend again, take it on the plane and |
40 |
use it in flight with just the laptop monitor, suspend again, get to your |
41 |
presentation, plugin the projector, unsuspend and have it detect the |
42 |
projector and use the mode already setup for it, etc... |
43 |
|
44 |
With the latest ~arch xorg (and RandR 1.3), you should get most of that. |
45 |
The caveat ATM is that xorg-server can't yet expand its virtual screen, |
46 |
or at least there are problems in some cases with doing so, so regardless |
47 |
of what's plugged in when you start X, you have to have the config set |
48 |
the initial virtual screen size large enough to enable the screen real |
49 |
estate for whatever else you might plug into the system until you shut |
50 |
down and restart X again. Given that, the rest of the RandR based |
51 |
autodetect should work, and you'll get more or less usable configurations |
52 |
based on what you've preset... the defaults are still for a newly plugged |
53 |
in monitor to clone the existing primary display. |
54 |
|
55 |
The second caveat is that RandR 1.3 is where it finally got decently |
56 |
usable, and even if you're running the latest xorg with RandR 1.3, |
57 |
everything else still has to catchup to X, with various window managers |
58 |
and GUI RandR apps still being somewhat behind. |
59 |
|
60 |
xrandr works well enough from the command line, but one either has to |
61 |
master all the various options to get it to do what one wants, or set it |
62 |
up with scripts and the like. The more intuitive GUI RandR applets, |
63 |
krandrtray for instance, are still at RandR 1.2, semiusable, or RandR 1.1 |
64 |
or earlier, more broken than usable, state, and while they might work |
65 |
well enough to change resolution on a single monitor, they are way more |
66 |
frustrating than actually workable once a second monitor is added. Thus, |
67 |
at this point, effectively only those who have troubled themselves to |
68 |
master xrandr well enough to write scripts to do what they want have it |
69 |
working decently. |
70 |
|
71 |
As mentioned above, window managers are the second aspect of this |
72 |
caveat. They're behind as well, and frankly, none of them deals |
73 |
particularly well with the large virtual desktops necessary for effective |
74 |
monitor hotplugging, dynamically confining apps to just the displayed |
75 |
area when only a single monitor is plugged in, but remembering where they |
76 |
should be when a second one is plugged in and moving everything |
77 |
accordingly -- specific to what monitor is plugged in, as well, so your |
78 |
home layout, work layout, and presentation layout, can all be different |
79 |
and don't conflict with each other and with the laptop-monitor-only |
80 |
layout. My guess is that it'll be another year or so before they sort of |
81 |
get it working, and a couple before they get it working /well/. |
82 |
|
83 |
Anyway, there's definitely a method to the madness, with the usability |
84 |
for laptop users vastly improving, but for relatively stable desktop |
85 |
configs that seldom change, it's a pain, as the process is breaking what |
86 |
/was/ perfectly usable, working configs, forcing people to learn a whole |
87 |
new way of configuring things, with various features that used to work |
88 |
often temporarily broken in the mean time. As I said, RandR 1.3 is the |
89 |
first RandR that's fully usable here, bringing back panning functionality |
90 |
and all, but it was a difficult transition learning how to get the new |
91 |
setup to do what I wanted. And every once in awhile there are still |
92 |
quirks. For instance, the full-screen-mode of many apps forces the |
93 |
system into primary-display clone mode, at whatever resolution the app |
94 |
wants for full-screen-mode. So I get the same cloned display on both |
95 |
monitors, when what I really wanted was either a single full screen |
96 |
display spread over both, or full screen on the one, setting it to |
97 |
whatever resolution was desired, but leaving the other monitor alone, so |
98 |
it continues to display at its previous resolution and pixel |
99 |
coordinates. I'm not sure even all FLOSS software will ultimately get |
100 |
that right, let alone ages old proprietaryware games and the like that |
101 |
won't be getting any more updates. So it's something we'll have to live |
102 |
with for awhile. Meanwhile, I've learned to avoid the in-app full-screen |
103 |
modes and use my xrandr scripts and normal mode window moving and |
104 |
resizing to accomplish what I want. That almost always works, once the |
105 |
scripts are setup correctly, but it's nowhere near as simple as having |
106 |
the in-app full-screen-mode just work as it really should. |
107 |
|
108 |
-- |
109 |
Duncan - List replies preferred. No HTML msgs. |
110 |
"Every nonfree program has a lord, a master -- |
111 |
and if you use the program, he is your master." Richard Stallman |