<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On Oct 5, 2007, at 2:36 PM, Kai-Uwe Behrmann wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <blockquote type="cite"><p style="margin: 0.0px 0.0px 0.0px 10.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">The usual term for what you call a Xinerama screen is "monitor", at</font></p> </blockquote><p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">Monitor is for my taste ambiguos, as it is not clear whether a physical<span class="Apple-converted-space"> </span></font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">monitor is talked about or a Xinerama or Gtk one. It is easy to setup a<span class="Apple-converted-space"> </span></font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">configuration where one Xinerama screen spanns two physical monitors. This<span class="Apple-converted-space"> </span></font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">is then a Single Logical Screen (SLS) ;-)</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <blockquote type="cite"><p style="margin: 0.0px 0.0px 0.0px 10.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">least in GDK terminology. The spec is unclear about the way that those</font></p> <p style="margin: 0.0px 0.0px 0.0px 10.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">monitors are enumerated. I interpreted it to start with index 1 for the</font></p> <p style="margin: 0.0px 0.0px 0.0px 10.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">primary monitor.</font></p> </blockquote><p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px"><br></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">The numeration follows the one in Xorg starting with zero.</font></p> </blockquote></div><br><div>I think I've gotten a handle on the terminology confusion.</div><div><br class="webkit-block-placeholder"></div><div>(BTW, I seem to not be getting all mail from the list, as a few in this thread I only recently saw by using the archives)</div><div><br class="webkit-block-placeholder"></div><div>First off, some people have been using "display" to mean "physical monitor". I think that since it clashes with X11/Xlib's terminology we should probably avoid that.</div><div><br class="webkit-block-placeholder"></div><div>From XLib we get "display", "screen", "window" and "root window".</div><div><br></div><div>"display" is easy, that's the collection of monitors and such a person is sitting in front of. (well, not quite, but that gets us into the ballpark).</div><div><br class="webkit-block-placeholder"></div><div>"window" is also easy, as it's the visual thing that people get to drag around, and that most toolkits run.</div><div><br class="webkit-block-placeholder"></div><div>"root window" is the magic parent X11 window, but there could be a little fuzziness on how many there are.</div><div><br class="webkit-block-placeholder"></div><div>"screen" is the main problem. The concept had been a one-for-one correspondence between physical display device. That worked for a while but now things like Xinerama and RandR have broken that. However it appears that from a programming perspective "screen" should be the X11 "Screen" structure, that owns a root window, etc.</div><div><br class="webkit-block-placeholder"></div><div>That then leaves the actual physical display in want of a name. Given all the other factors, including that "Screen" is taken in Xlib and the naming RandR uses, I think "monitor" is very appropriate and unambiguous.</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>So we get </div><div>* The collective "display" that represents a connection to an X11 server and that owns one or more "screens".</div><div>* Each "screen" has a top-level "root window"</div><div>* Each "screen" has one or more "monitors" displaying subsets of the overall "screen"</div><div><br class="webkit-block-placeholder"></div><div><br></div><div>Then we get to simply say "ICC Profiles in X Specification" allows a user to associate an ICC profile with a given output monitor. Each monitor displaying a different area can have its own ICC profile, or have no profile designated and thus be considered uncharacterized as far as the application is concerned. Profiles might be cleared, loaded, or changed dynamically. Also screen and monitor configurations might change.</div><div><br class="webkit-block-placeholder"></div><div>Xinerama, RandR and GDK all allow for an application to easily get both the Screen and the monitor information (size, location, etc). (I'm not familiar with current Qt code on this front. However it seems like it might hide the "X11 Screen" concept and just expose "monitors" directly but call them "screens"... then again their docs might be just  a little misleading).</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><div>We still have an ambiguity in that two "monitors" could be displaying the same area of a "screen" (such as when a laptop has its display mirrored and hooked to an LCD projector). However... a proper solution in that case would require more than Application/X11 Client work and probably involves the X11 server more directly. I would suggest that at the application level only a single ICC profile would be retrieved for that area of the "screen" and that the end user would either a) have to decide which monitor to adjust to, or b) poke stuff into his X11 setup so that both monitors would respond close enough with the same RGB values and thus allow for a single ICC profile to be used "correctly" in the application/X11 client.</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div></div></body></html>