Update to xrandr 1.2.3.
This commit is contained in:
parent
73d1e76463
commit
6f491b67d8
@ -1,12 +1,21 @@
|
||||
This is a stub file. This package has not yet had its complete licensing
|
||||
information compiled. Please see the individual source files for details on
|
||||
your rights to use and modify this software.
|
||||
Copyright © 2001 Keith Packard, member of The XFree86 Project, Inc.
|
||||
Copyright © 2002 Hewlett Packard Company, Inc.
|
||||
Copyright © 2006 Intel Corporation
|
||||
|
||||
Please submit updated COPYING files to the Xorg bugzilla:
|
||||
Permission to use, copy, modify, distribute, and sell this software and its
|
||||
documentation for any purpose is hereby granted without fee, provided that
|
||||
the above copyright notice appear in all copies and that both that copyright
|
||||
notice and this permission notice appear in supporting documentation, and
|
||||
that the name of the copyright holders not be used in advertising or
|
||||
publicity pertaining to distribution of the software without specific,
|
||||
written prior permission. The copyright holders make no representations
|
||||
about the suitability of this software for any purpose. It is provided "as
|
||||
is" without express or implied warranty.
|
||||
|
||||
https://bugs.freedesktop.org/enter_bug.cgi?product=xorg
|
||||
|
||||
All licensing questions regarding this software should be directed at the
|
||||
Xorg mailing list:
|
||||
|
||||
http://lists.freedesktop.org/mailman/listinfo/xorg
|
||||
THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||
EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
|
||||
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
|
||||
DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||||
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
|
||||
OF THIS SOFTWARE.
|
||||
|
@ -1,47 +1,890 @@
|
||||
2006-04-26 Adam Jackson <ajax@freedesktop.org>
|
||||
commit 4450756d2d1d86f3c0bfaef81f6265f795468f32
|
||||
Author: Brice Goglin <bgoglin@debian.org>
|
||||
Date: Sat Dec 15 00:59:00 2007 +0100
|
||||
|
||||
* configure.ac:
|
||||
Bump to 1.0.2
|
||||
Clarify the ability to manipulate multiple outputs in the manpage
|
||||
|
||||
2006-04-25 Alan Coopersmith <alan.coopersmith@sun.com>
|
||||
commit 5c2a003adab4aaa979a095e18793b01cfa694bf4
|
||||
Author: Brice Goglin <bgoglin@debian.org>
|
||||
Date: Sat Dec 15 00:49:35 2007 +0100
|
||||
|
||||
* xrandr.c:
|
||||
Don't try to fprintf a NULL string when -display wasn't passed and
|
||||
connecting to $DISPLAY failed, since that segfaults on some platforms.
|
||||
Allow the same output to be specified several times on the command line
|
||||
|
||||
Without this
|
||||
xrandr --output FOO --mode 1024x768 --output FOO --rotate left
|
||||
only changed the mode but did not apply the rotation.
|
||||
|
||||
Reported by Marc Haber in
|
||||
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=455225
|
||||
|
||||
2006-03-20 Adam Jackson <ajax@freedesktop.org>
|
||||
commit ab5e07fdd10f6340289b786414804a034ca98f0b
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Fri Nov 30 16:13:51 2007 +0100
|
||||
|
||||
* xrandr.c:
|
||||
Bug #5511, #5512: Print more sensible error messages when fed broken
|
||||
command lines. (Bill Crawford)
|
||||
Add another test known to fail.
|
||||
|
||||
2005-12-20 Kevin E. Martin <kem-at-freedesktop-dot-org>
|
||||
commit 4bc84c331f4f0f0658ad1f6c0107e3e6af2a7911
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Thu Nov 29 19:54:34 2007 +0100
|
||||
|
||||
* configure.ac:
|
||||
Update package version for X11R7 release.
|
||||
Add informational output for known issues.
|
||||
|
||||
2005-12-14 Kevin E. Martin <kem-at-freedesktop-dot-org>
|
||||
commit 3fb533ff896bd642200e7242c4d35a887faeca74
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Thu Nov 29 19:54:03 2007 +0100
|
||||
|
||||
* configure.ac:
|
||||
Update package version number for final X11R7 release candidate.
|
||||
Add more tests, mostly regarding crtc switching and uncloning.
|
||||
|
||||
2005-12-06 Kevin E. Martin <kem-at-freedesktop-dot-org>
|
||||
commit 20c8a60950cb5b4ddef305dc9822bec1c33e938c
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Wed Nov 21 16:48:23 2007 +0100
|
||||
|
||||
* Makefile.am:
|
||||
Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
|
||||
Oops. Fix missing space introduced by last commit.
|
||||
|
||||
2005-12-03 Kevin E. Martin <kem-at-freedesktop-dot-org>
|
||||
commit 3347c849462b737a873a279c24d17c873667c821
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Wed Nov 21 16:47:08 2007 +0100
|
||||
|
||||
* configure.ac:
|
||||
Update package version number for X11R7 RC3 release.
|
||||
Be more robust in test case if mode database is borked.
|
||||
|
||||
If modes are reported multiple times per output only bother for the last.
|
||||
|
||||
2005-11-19 Kevin E. Martin <kem-at-freedesktop-dot-org>
|
||||
commit 81e8f2f5673befded3320424f4511e322d41c80b
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Wed Nov 21 16:41:33 2007 +0100
|
||||
|
||||
* configure.ac:
|
||||
Update dependencies to work with separate build roots.
|
||||
Some minor issues in test case fixed.
|
||||
|
||||
'my' not being used correctly.
|
||||
Some lines of xrandr --verbose output missing in failure case.
|
||||
If order of outputs change in xrandr -q output they are sorted into original
|
||||
order now.
|
||||
|
||||
2005-10-18 Kevin E. Martin <kem-at-freedesktop-dot-org>
|
||||
commit 3a27185879e7a9288de960ccb26a48104cf592e3
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Tue Nov 20 13:03:07 2007 +0100
|
||||
|
||||
* configure.ac:
|
||||
Update package version number for RC1 release.
|
||||
More tests for ambiguous xrandr output.
|
||||
|
||||
commit c9bd9721e162e4d9d83dd60400c75d4cc98090bd
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Mon Nov 19 20:06:39 2007 +0100
|
||||
|
||||
Use IDs for mode selection instead of hand-crafted <w>x<h>@<r> strings.
|
||||
|
||||
Some machines provide e.g. multiple 1024x768@60 modes with /slightly/
|
||||
different timings. Often only one of them can be used on multiple outputs.
|
||||
|
||||
commit a05d2b6e3ffd81ecc0be98b8d2b758505fb55f3f
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Mon Nov 19 12:24:04 2007 +0100
|
||||
|
||||
Improved test script.
|
||||
|
||||
Allow for outputs in "unknown" state.
|
||||
Check xrandr return value.
|
||||
Output full xrandr --verbose output if test failed.
|
||||
|
||||
commit e15a527b6cf1e66709eae4547c8e8bd3402362fe
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Mon Nov 12 15:25:44 2007 +0100
|
||||
|
||||
Add xrandr test suite.
|
||||
|
||||
At the moment it only tests setting one output at a time, it should be
|
||||
improved to add some multi-output setting as well. Also it only tests clone
|
||||
modes at the moment, no multi-monitor setups.
|
||||
|
||||
commit f7aaf8947a0f216ffedc7040b0a1ef153b471425
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Mon Nov 12 15:19:52 2007 +0100
|
||||
|
||||
Always reset other outputs using the best crtc.
|
||||
|
||||
pick_crtcs_score() didn't set up crtcs references correctly if anything but
|
||||
the last output resulted in the best score.
|
||||
|
||||
commit 307f3686d3d517cb29b8e66d8ad2ff76a48748b7
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Mon Nov 12 15:18:30 2007 +0100
|
||||
|
||||
Verify crtc against previous config.
|
||||
|
||||
When selecting a crtc for an output, it doesn't check for already attached
|
||||
outputs in check_crtc_for_output(), and so may select an crtc that is already
|
||||
in use.
|
||||
E.g. when changing from a cloned mode the displays won't be split up to
|
||||
different crtcs, but the same crtc will be used, changing the resolution for
|
||||
the unspecified display as well.
|
||||
|
||||
commit 4834439ce62e41204367cf5356a7a1719870791f
|
||||
Author: Matthias Hopf <mhopf@suse.de>
|
||||
Date: Thu Oct 11 16:54:40 2007 +0200
|
||||
|
||||
Build ChangeLog from git-log automatically.
|
||||
|
||||
commit 2fa28afb035cf2d2efb077db58d3858c57189be4
|
||||
Author: Adam Jackson <ajax@benzedrine.nwnk.net>
|
||||
Date: Tue Oct 2 11:06:18 2007 -0400
|
||||
|
||||
Death to ChangeLog
|
||||
|
||||
commit 0cfaad401711092f8858cdec64e4d4f33023f398
|
||||
Author: Adam Jackson <ajax@benzedrine.nwnk.net>
|
||||
Date: Tue Oct 2 11:06:02 2007 -0400
|
||||
|
||||
Update COPYING
|
||||
|
||||
commit 06d7272d845033fe3c6f0625cce5a32e7be636a7
|
||||
Author: Brice Goglin <bgoglin@debian.org>
|
||||
Date: Thu Aug 9 19:06:37 2007 +0200
|
||||
|
||||
When invoked with no option, xrandr dumps existing modes
|
||||
|
||||
commit b9b2fbbf7a7dd156d1fdffac2e4a4046f58baabb
|
||||
Author: Brice Goglin <bgoglin@debian.org>
|
||||
Date: Thu Aug 9 19:04:58 2007 +0200
|
||||
|
||||
Add *current and +preferred to the --verbose output
|
||||
|
||||
commit 200491c1fad5ea1a733dfbac799a2ebea0a2f23c
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Wed Jul 4 20:05:03 2007 -0700
|
||||
|
||||
Bump to 1.2.2
|
||||
|
||||
commit 9db36331a2acafbf2dab05f481ce16ab094fde52
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Wed Jul 4 20:04:29 2007 -0700
|
||||
|
||||
Print out mode flags in --verbose mode
|
||||
|
||||
commit 49058de9b743f5196f97fb13cd9a695087b1299c
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Wed Jul 4 19:41:32 2007 -0700
|
||||
|
||||
Mark 1.1 options as inconsistent with 1.2 options
|
||||
|
||||
commit c58e79a9c4c3967fb31a49a610a37b5797426415
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Thu Jun 21 15:57:37 2007 +0100
|
||||
|
||||
Document 1.2.1 options
|
||||
|
||||
commit 0499ce5ed6378bc68cbf8eafc9932ddf495ae708
|
||||
Author: Keith Packard <keithp@dulcimer.keithp.com>
|
||||
Date: Sat Jun 30 14:00:30 2007 -0700
|
||||
|
||||
When simple CRTC allocation fails, search all available configs.
|
||||
|
||||
When enabling an output, if there isn't an idle CRTC available, try to
|
||||
reconfigure existing outputs to make things work.
|
||||
|
||||
commit 0f2014e67193eb0f8e12ab1c3d5cae8991ba439d
|
||||
Author: Keith Packard <keithp@dulcimer.keithp.com>
|
||||
Date: Sat Jun 30 13:09:45 2007 -0700
|
||||
|
||||
Clean up code structure a bit
|
||||
|
||||
commit 63d385f2c24c522d974652da138a83d78014713e
|
||||
Author: Alan Coopersmith <alan.coopersmith@sun.com>
|
||||
Date: Thu Jun 21 09:35:53 2007 -0700
|
||||
|
||||
Add *~ to .gitignore to skip emacs & patch droppings
|
||||
|
||||
commit 4bd2f4004a6f75a7e4cb32b9e320e680f8839748
|
||||
Author: Alan Coopersmith <alan.coopersmith@sun.com>
|
||||
Date: Thu Jun 21 09:34:53 2007 -0700
|
||||
|
||||
Man page formatting and typo fixes
|
||||
|
||||
commit b0812f8efe448c85979a9f5fab4a5a4e0c0e78d0
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Thu Jun 21 11:37:56 2007 +0100
|
||||
|
||||
Update to version 1.2.1
|
||||
|
||||
commit 739f01957c8ebd3b7bcecfd7ad8174884561f7db
|
||||
Author: Aaron Plattner <aplattner@nvidia.com>
|
||||
Date: Wed Apr 25 11:59:48 2007 -0700
|
||||
|
||||
Fix bugs found by compiling with -Wall.
|
||||
|
||||
Also fix some unused variable warnings.
|
||||
|
||||
commit 8e43df335679c71930465e4c58c0bd14d9add29a
|
||||
Author: Aaron Plattner <aplattner@nvidia.com>
|
||||
Date: Wed Apr 25 10:52:19 2007 -0700
|
||||
|
||||
Fix a typo. Make mode flags case insensitive. Improve error messages.
|
||||
|
||||
commit 49aab1e0e4cb2226d5bcc8e4e6217309fd23ce52
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Fri Apr 6 03:36:27 2007 -0700
|
||||
|
||||
Skip relative positions for outputs without modes.
|
||||
|
||||
An output without a mode is turned off; do not try to position it.
|
||||
|
||||
commit 86d9b15cccc4d21ad5e5d34d7e7b82a50903939b
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Sun Mar 25 23:44:01 2007 -0700
|
||||
|
||||
Support XA_ATOM properties (like TV_FORMAT).
|
||||
|
||||
Atom properties have lists of valid values that are all atoms, so display
|
||||
those. Also, fetch property data and use that to determine which format new
|
||||
property values are supposed to be in.
|
||||
|
||||
commit dba14af8328eaaad716d1c27a5514df285d8d4cc
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Fri Mar 23 01:21:21 2007 -0700
|
||||
|
||||
Add --set option to set output properties.
|
||||
|
||||
Numeric values are set as XA_INTEGER format 32 values, everything else is
|
||||
set as an XA_STRING format 8 value.
|
||||
|
||||
commit ca7a5bb5691ecd1d8da6def373c793aa7a07dbbe
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Thu Mar 15 20:57:17 2007 -0700
|
||||
|
||||
Bounds check -s <index> argument to be 0 <= index < nsize
|
||||
|
||||
Print a nice error message when the -s option is passed a number out of
|
||||
bounds.
|
||||
|
||||
commit 0cbbc7804781c2e55899ba9271365735c4a2b544
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Thu Mar 15 20:56:15 2007 -0700
|
||||
|
||||
Make --q1 output RandR 1.1 query information.
|
||||
|
||||
--q1 required a --query option to actually output any information.
|
||||
|
||||
commit 7ae11b66cc26395d34070013e23813db3ca3e55f
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Thu Mar 15 20:55:30 2007 -0700
|
||||
|
||||
Make --auto after --output only affect the output.
|
||||
|
||||
--auto has two meanings; if presented before any --output flags, it requests
|
||||
that connected-but-disabled outputs be enable while disconnected-but-enabled
|
||||
outputs be disabled. After --output, --auto simply asks that the mode used
|
||||
for the output be automatically selected. Mixing these two operations is not
|
||||
a good default.
|
||||
|
||||
commit a53cc9b37c40dca936037a89013253f37c9a05ee
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Mon Mar 12 22:47:39 2007 -0700
|
||||
|
||||
Add --addmode and --delmode commands to edit list of modes per output.
|
||||
|
||||
--addmode <output> <mode> inserts <mode> into the list supported by
|
||||
<output>, while --delmode removes a mode.
|
||||
|
||||
commit dca4bd66b166b64314993aba34a3080c6953ac12
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Mon Feb 19 17:12:24 2007 -0800
|
||||
|
||||
Add --newmode/--rmmode to create/destroy user modes.
|
||||
|
||||
The syntax may be a bit hard to work with, but these serve to test the
|
||||
server infrastructure for custom modes.
|
||||
|
||||
commit 9fd6aa1445a8f1e721ba8cdcd1ac12375d6e5a26
|
||||
Author: Tilman Sauerbeck <tilman@code-monkey.de>
|
||||
Date: Fri Mar 9 10:12:17 2007 +0100
|
||||
|
||||
Fixed alignment of the clones list.
|
||||
|
||||
commit 3c44d68d78d8bddf69b5bd1a00f854d8cde971bb
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Wed Feb 21 11:24:35 2007 -0800
|
||||
|
||||
Add --same-as option to match output positions.
|
||||
|
||||
This provides another positioning option that makes two outputs appear at
|
||||
the same location.
|
||||
|
||||
commit 8a0c3b748b0e94c97fbc2a7449c6740b8acfe394
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sun Feb 18 21:27:55 2007 -0800
|
||||
|
||||
Update version number to 1.2.0 for release.
|
||||
|
||||
commit 13cef2baa884039e96f5dfd9245bb949aed99448
|
||||
Merge: 065f09c... a175972...
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sun Feb 18 21:26:50 2007 -0800
|
||||
|
||||
Merge branch 'origin'
|
||||
|
||||
commit 065f09cc304d0c70eaf3cf6f3ff21e712e41d205
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sun Feb 18 21:25:54 2007 -0800
|
||||
|
||||
Require only libXrandr 1.2.0, not 1.2.0.0.
|
||||
|
||||
Four digits seems excessive in a library version number.
|
||||
|
||||
commit a175972de6fbe5426fb5c6bee03112678f0a9548
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Thu Feb 15 23:07:34 2007 -0800
|
||||
|
||||
Select crtc which can be cloned to outputs which will be in use.
|
||||
|
||||
Correct crtc selection algorithm to choose a crtc which will be used by
|
||||
outputs which can all share the same crtc.
|
||||
|
||||
Also, make randr 1.0 commands work even when --verbose is specified, and
|
||||
terminate event loop in that case when the screen change event is seen.
|
||||
|
||||
commit d707822aab19a0a8fe08f03300fdd9d4e206871e
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sat Feb 10 18:27:06 2007 -0800
|
||||
|
||||
Selecting a crtc by index was failing to match a crtc.
|
||||
|
||||
--crtc <index> would fail to match because of a logic bug using & instead of
|
||||
&&.
|
||||
|
||||
commit 89bf2c3c0e17c67adc3e2fdca54f0e8254dc8968
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sat Feb 10 16:14:58 2007 -0800
|
||||
|
||||
Display set of available CRTCs per output in --verbose mode.
|
||||
|
||||
commit 067cafb5cda0aa6e34773e888fd469ff657760c2
|
||||
Merge: 7c25c24... b0a00df...
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Wed Jan 31 15:25:35 2007 -0800
|
||||
|
||||
Merge branch 'randr-1.2'
|
||||
|
||||
Merge support for RandR 1.2 changes to the xrandr program along with
|
||||
documentation for the new options.
|
||||
|
||||
commit b0a00df69f832ada40be6bd6973835439a698440
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Wed Jan 31 15:22:02 2007 -0800
|
||||
|
||||
Update documentation to include all RandR 1.2 options.
|
||||
|
||||
Also, require libXrandr version 1.2.0.0 or better.
|
||||
|
||||
commit 6b9310d66eed59527d4002294be13884a7cbeacc
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Tue Jan 30 20:35:58 2007 -0800
|
||||
|
||||
Missing return statement from output_rotation.
|
||||
|
||||
output_rotation was returning garbage making the available output rotations
|
||||
display incorrectly.
|
||||
|
||||
commit 5c3b6b1013c7565c40e82bfc0514a3dd80aec2d8
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Tue Jan 30 20:16:46 2007 -0800
|
||||
|
||||
Remove xrandr12.c app now that xrandr.c has RandR 1.2 support.
|
||||
|
||||
commit eaf3e459d7760bbcb3c7f7c9b23b1e386189c71e
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Tue Jan 30 00:10:23 2007 -0800
|
||||
|
||||
Add --reflect option for RandR 1.2 reflection selection.
|
||||
|
||||
Also, display available rotations after current rotation
|
||||
|
||||
commit 8ecc6c034836a6fb6df0e2ad24429f506bf82e37
|
||||
Author: Eric Anholt <eric@anholt.net>
|
||||
Date: Tue Jan 16 10:48:01 2007 -0800
|
||||
|
||||
Add display for 32-bit integer properties, such as backlight.
|
||||
|
||||
commit 4112d13d7b15150e33687b687604c3a72188c066
|
||||
Author: Keith Packard <keithp@mandolin.keithp.com>
|
||||
Date: Mon Jan 1 17:04:42 2007 -0800
|
||||
|
||||
Mode on CRTC may not be present for any output.
|
||||
|
||||
When an output gets disconnected, the current CRTC mode may no longer be
|
||||
listed as valid for any output, but will still be listed for the screen.
|
||||
Search for current crtc mode in the screen list rather than the per-output
|
||||
list.
|
||||
|
||||
commit 6ef7b2deafd09ae1a4b159f3c2e6e9db64bf01dc
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sun Dec 31 23:02:12 2006 -0800
|
||||
|
||||
Using %lf to read float overwrote adjacent variable.
|
||||
|
||||
Just use floats everywhere and %f instead.
|
||||
|
||||
commit f6073333dcfb6989ff8793854fb42e08388444c5
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sun Dec 31 13:55:14 2006 -0800
|
||||
|
||||
Add rotation/reflection status to 1.2 query output.
|
||||
|
||||
The previous cleanup had left these values missing from any output.
|
||||
Also it now reports the effective size of the mode within the screen.
|
||||
|
||||
commit 5d2a76b70b7b59a45655b25db79d75cb08fe671d
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sun Dec 31 13:38:40 2006 -0800
|
||||
|
||||
Clean up RandR 1.2 query output.
|
||||
|
||||
Make brief mode list just mode names and refresh rates.
|
||||
Add --prop/--properties flag to show properties.
|
||||
Add --q1 flag to force showing pre-1.2 data.
|
||||
|
||||
commit d9aeb4a7544ad4a33f6f54bc46bff5cdf231a986
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sun Dec 31 12:45:25 2006 -0800
|
||||
|
||||
Add --rate support to RandR 1.2 mode selection.
|
||||
|
||||
Search for mode closest to specified rate for each output and use that
|
||||
instead of the one with the first matching name. If no rate is specified,
|
||||
the first one still matches allowing the driver to place preferred rates
|
||||
first in the list.
|
||||
|
||||
commit c04d69cbd8a8a96862356afcda6ee679d663a524
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sun Dec 31 11:58:11 2006 -0800
|
||||
|
||||
Grab server while applying changes.
|
||||
|
||||
Applications that respond to screen size changes by quering Xinerama
|
||||
information need to be blocked so that they see the entirety of the changes
|
||||
rather than just the screen size shift and not the crtc changes.
|
||||
|
||||
commit 8e78af971048db711163ea297153703b4f37f3c9
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sat Dec 30 21:49:40 2006 -0800
|
||||
|
||||
Enable global --auto flag. Allow output name for --dpi switch.
|
||||
|
||||
--auto at the global level checks for output status changes and
|
||||
automatically configures changed outputs. --dpi with an output switch uses
|
||||
the specified output as the source of the dpi information.
|
||||
|
||||
commit f7a3e478a6a5d59a2bbcd6dc416639f93a0520fd
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sat Dec 30 19:41:48 2006 -0800
|
||||
|
||||
Use Bool type. Position relative to disabled output is 0,0.
|
||||
|
||||
Switch uses of int that are strictly boolean to Bool.
|
||||
Instead of making attempts to set position relative to a disabled output an
|
||||
error, just place the output at 0,0.
|
||||
|
||||
commit cb017692883daf64e0cf442a39b33eaafed0e420
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Sat Dec 30 17:34:46 2006 -0800
|
||||
|
||||
Restructure RandR 1.2 support to handle relative placement.
|
||||
|
||||
Ok, really, this is mostly a rewrite of the RandR 1.2 support. First,
|
||||
collect commands from command line arguments. Next, fill in existing
|
||||
configuration from X server. Calculate new configuration. Apply
|
||||
configuration, if anything fails, revert to previous configuration.
|
||||
|
||||
Still left -- pure --auto, and --extend/--clone options.
|
||||
|
||||
commit b9dee113ce4105c1cf25e3c417c616c024aea823
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Fri Dec 29 00:55:37 2006 -0800
|
||||
|
||||
Make query return 1.2 information if available
|
||||
|
||||
commit 90e4a4c13957bd003294f64b86460813dd38a3de
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Thu Dec 21 17:37:20 2006 -0800
|
||||
|
||||
Accept hex mode numbers as well as mode names.
|
||||
|
||||
Sometimes mode names are ambiguous; this lets the user specify modes by XID.
|
||||
|
||||
commit e8f7047885ec85096a3f35b9cfb20386104fdc55
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Tue Dec 19 16:27:46 2006 -0800
|
||||
|
||||
Actually respect the --fb option
|
||||
|
||||
commit 7b32611632ab08b6a123db5df1c2b919b3a12104
|
||||
Merge: a0df3aa... 4bb1a9c...
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Tue Dec 19 15:58:38 2006 -0800
|
||||
|
||||
Merge branch 'randr-1.2-origin' into randr-1.2
|
||||
|
||||
commit a0df3aa81205b35ff8d9541c036cfd158cbd99ed
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Tue Dec 19 15:58:21 2006 -0800
|
||||
|
||||
Correct format for sscanf to double variable "dpi"
|
||||
|
||||
commit 4bb1a9cd6f9cc3ed61d7913528afa3f573092833
|
||||
Merge: b6c0382... 6ef400f...
|
||||
Author: Keith Packard <keithp@bouzouki.jf.intel.com>
|
||||
Date: Wed Dec 13 11:36:36 2006 -0800
|
||||
|
||||
Merge branch 'randr-1.2-origin' into randr-1.2. Detect invalid mode.
|
||||
|
||||
Invalid mode test was checking wrong mode index. Also, print more
|
||||
informative error message when this occurs.
|
||||
|
||||
commit b6c03827bae74ef5b9517c4246b0165dad8ee780
|
||||
Author: Keith Packard <keithp@bouzouki.jf.intel.com>
|
||||
Date: Wed Dec 13 11:27:30 2006 -0800
|
||||
|
||||
Name CRTCs by index or id. Use current CRTC to get current mode.
|
||||
|
||||
CRTCs have no intrinsic name, so let users provide either the number in the
|
||||
list or the XID when referring to them explicitly.
|
||||
When no mode is specified, look up the current CRTC for the output and use
|
||||
that mode, instead of using the mode on the target CRTC.
|
||||
When switching an output from one CRTC
|
||||
|
||||
commit 6ef400f35d7d8712d1ad1efd87a8a3cb8bfacd96
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Wed Dec 13 09:53:17 2006 -0800
|
||||
|
||||
Add --preferred and --auto support.
|
||||
|
||||
--preferred selects the 'best' mode for the monitor automatically, either by
|
||||
looking for a preferred mode, or selecting one which is closest to the
|
||||
current screen DPI.
|
||||
|
||||
--auto checks connected status and disables the output if disconnected,
|
||||
otherwise it enables it with the preferred mode (as if --preferred).
|
||||
|
||||
commit c69c3080febd8617349f88557c3c04388a13a76c
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Tue Dec 12 09:54:52 2006 -0800
|
||||
|
||||
mark disabled crtc as changing, set rotation to 90 for disabled crtc.
|
||||
|
||||
--off code was not correctly finding and marking the to-be-disabled crtc,
|
||||
and the disabling code was sending an uninitialized rotation value to the
|
||||
server when no outputs were connected.
|
||||
|
||||
commit 6be56cd10d934e496004f9ffd377225fd179f4b1
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Mon Dec 11 00:39:48 2006 -0800
|
||||
|
||||
Update manual, elide unsupported options from usage, remove xrandr12 from build
|
||||
|
||||
commit 624c75e8c250b33a81890c8f0da741a13ad4e7d1
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Mon Dec 11 00:23:15 2006 -0800
|
||||
|
||||
Add RandR 1.2 support to plain xrandr app. primitive for now
|
||||
|
||||
commit 7c25c245bceb0474541fe7a2615a4f665842ac32
|
||||
Author: Jeremy C. Reed <reed@glacier.reedmedia.net>
|
||||
Date: Sat Dec 9 06:32:19 2006 -0600
|
||||
|
||||
Document -v switch.
|
||||
|
||||
commit 2a32fa8cf8550a3a30871d25a23af07f65646c47
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Tue Nov 21 01:17:38 2006 -0800
|
||||
|
||||
Track RandR output property changes
|
||||
|
||||
commit 795173d2b9b94a3468db277102b4898b4e5a1ead
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Thu Nov 16 22:14:33 2006 -0800
|
||||
|
||||
properties are stored in unsigned char arrays
|
||||
|
||||
commit 2df4352bb43e155977f8d4c0b53771cb0085ab74
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Thu Nov 16 11:45:51 2006 -0800
|
||||
|
||||
Remove RandR output options.
|
||||
|
||||
Output options are to be replaced with properties.
|
||||
|
||||
commit 643787365fd716b902b597b67b2ec228dacfc862
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Wed Nov 1 10:57:24 2006 -0800
|
||||
|
||||
Re-indent to 4 space tabs
|
||||
|
||||
commit 947ea6ee9d7cf72c5635c699b63ddda3be968675
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Wed Nov 1 10:55:21 2006 -0800
|
||||
|
||||
Fix copyright and license information
|
||||
|
||||
commit dc41095b577db571439ff1a52facc4efe9f5132f
|
||||
Author: Eric Anholt <eric@anholt.net>
|
||||
Date: Thu Nov 9 20:26:09 2006 -0800
|
||||
|
||||
Print 8-bit integer output properties as 32-char rows of hex.
|
||||
|
||||
This happens to produce pretty output for EDID data.
|
||||
|
||||
commit 67466ebb817e24bfd7f57cc82da16e194eb9c547
|
||||
Author: Eric Anholt <eric@anholt.net>
|
||||
Date: Thu Nov 9 17:15:56 2006 -0800
|
||||
|
||||
Add more .gitignore entries.
|
||||
|
||||
commit aafe9f7d24e96194a7ee11ba521a3c2c72dcdc95
|
||||
Author: Eric Anholt <eric@anholt.net>
|
||||
Date: Thu Nov 9 17:15:06 2006 -0800
|
||||
|
||||
Add output for output properties (assuming text) and blanking information.
|
||||
|
||||
commit 6ba07ae9ea5fa2829d17e8a1f3eb26e7c1a2813e
|
||||
Author: Eric Anholt <eric@anholt.net>
|
||||
Date: Wed Nov 8 10:23:47 2006 -0800
|
||||
|
||||
Add dot clock to output.
|
||||
|
||||
commit fba78f58029a806e4446d038b17b843d2c4026a6
|
||||
Author: Keith Packard <keithp@mandolin.keithp.com>
|
||||
Date: Wed Nov 1 00:32:22 2006 -0800
|
||||
|
||||
Track protocol moving physical size from mode to output
|
||||
|
||||
commit d9c45204a16e906b922ac94cae3c9f4f25b3ccdb
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Thu Oct 26 22:58:58 2006 -0700
|
||||
|
||||
add physical size setting
|
||||
|
||||
commit bd6ac82ff7e7fc04ab589a3053dc7f13ed7a1ec4
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Thu Oct 5 21:50:42 2006 -0700
|
||||
|
||||
Add crtc info. Mark preferred. Update to new SetCrtcConfig API.
|
||||
|
||||
commit fe04d38d01f54b93ddaf1cd48a655df7f7fe4b97
|
||||
Author: Keith Packard <keithp@neko.keithp.com>
|
||||
Date: Thu Sep 21 08:16:45 2006 -0700
|
||||
|
||||
Add CRTC disable code (given crtc, output 0, mode 0)
|
||||
|
||||
commit 7f1b81d443b78ff572726ad7d72eeb4a87c7189d
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Wed Sep 20 20:03:22 2006 -0700
|
||||
|
||||
xrandr12, a horrible kludge, is now sufficient to do dynamic mergefb games.
|
||||
|
||||
commit eba1d3d8ab6226737c29e63fdd5433190baab06f
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Wed Sep 20 20:02:43 2006 -0700
|
||||
|
||||
.cvsignore -> .gitignore
|
||||
|
||||
commit 6c5af262350a5fa33aa37293e8e7b537e344f52a
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Wed Sep 20 20:02:09 2006 -0700
|
||||
|
||||
.cvsignore -> .gitignore
|
||||
|
||||
commit d8e86340444577dc7634d3e0db24fd809f4e4fbb
|
||||
Author: Keith Packard <keithp@guitar.keithp.com>
|
||||
Date: Tue Sep 19 00:35:46 2006 -0700
|
||||
|
||||
Add new xrandr12 program for RandR 1.2 protocol.
|
||||
|
||||
Yes, xrandr12 will be merged with xrandr before release; it's just for
|
||||
debugging at present.
|
||||
|
||||
commit f88f8e79724b27f46a836fac4956cbe28749633a
|
||||
Author: Adam Jackson <ajax@nwnk.net>
|
||||
Date: Wed Apr 26 23:43:34 2006 +0000
|
||||
|
||||
Bump to 1.0.2
|
||||
|
||||
commit 47c6288e63ebe7a9bb2f3225e7d5a235bd979a5f
|
||||
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
|
||||
Date: Tue Apr 25 22:54:01 2006 +0000
|
||||
|
||||
Don't try to fprintf a NULL string when -display wasn't passed and
|
||||
connecting to $DISPLAY failed, since that segfaults on some platforms.
|
||||
|
||||
commit 0197bfdddca98c72bca0eeee349b90027638fc32
|
||||
Author: Adam Jackson <ajax@nwnk.net>
|
||||
Date: Mon Mar 20 18:56:37 2006 +0000
|
||||
|
||||
Bug #5511, #5512: Print more sensible error messages when fed broken
|
||||
command lines. (Bill Crawford)
|
||||
|
||||
commit 4f785cb5db6d95c9f539500e7b202a0f5addd19f
|
||||
Author: Kevin E Martin <kem@kem.org>
|
||||
Date: Wed Dec 21 02:29:53 2005 +0000
|
||||
|
||||
Update package version for X11R7 release.
|
||||
|
||||
commit 83491d233781c9e6a362aa8bac1ab4f2a239fdee
|
||||
Author: Adam Jackson <ajax@nwnk.net>
|
||||
Date: Mon Dec 19 16:22:46 2005 +0000
|
||||
|
||||
Stub COPYING files
|
||||
|
||||
commit 5d09a0b505a2c08b81879e61173459d23f4c41db
|
||||
Author: Kevin E Martin <kem@kem.org>
|
||||
Date: Thu Dec 15 00:24:10 2005 +0000
|
||||
|
||||
Update package version number for final X11R7 release candidate.
|
||||
|
||||
commit 3e0eb5b6f68ef9120153e7f01b4243ad4fa44254
|
||||
Author: Kevin E Martin <kem@kem.org>
|
||||
Date: Tue Dec 6 22:48:25 2005 +0000
|
||||
|
||||
Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
|
||||
|
||||
commit d52f178dc51182e14d5d7ad9f2842f3e1d30a57f
|
||||
Author: Kevin E Martin <kem@kem.org>
|
||||
Date: Sat Dec 3 05:49:27 2005 +0000
|
||||
|
||||
Update package version number for X11R7 RC3 release.
|
||||
|
||||
commit f3b3596d181a7ab89b90561490f822171ec77479
|
||||
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
|
||||
Date: Mon Nov 28 22:01:46 2005 +0000
|
||||
|
||||
Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
|
||||
update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)
|
||||
|
||||
commit 28c2280644f808c89e42e379b531fbb0fdf39bc7
|
||||
Author: Eric Anholt <anholt@freebsd.org>
|
||||
Date: Mon Nov 21 10:35:07 2005 +0000
|
||||
|
||||
Another pass at .cvsignores for apps.
|
||||
|
||||
commit e5ab923625baf41a59e033abf3527709c8ef255b
|
||||
Author: Eric Anholt <anholt@freebsd.org>
|
||||
Date: Sun Nov 20 22:08:55 2005 +0000
|
||||
|
||||
Add/improve .cvsignore files for apps.
|
||||
|
||||
commit 7e1cf1fef9dd000569dd5390380fb567314644a5
|
||||
Author: Kevin E Martin <kem@kem.org>
|
||||
Date: Sat Nov 19 07:15:38 2005 +0000
|
||||
|
||||
Update pkgconfig files to separate library build-time dependencies from
|
||||
application build-time dependencies, and update package deps to work
|
||||
with separate build roots.
|
||||
|
||||
commit 89ab28833d4e2ff412a92bb2b47af2d78a109c00
|
||||
Author: Kevin E Martin <kem@kem.org>
|
||||
Date: Wed Oct 19 02:47:57 2005 +0000
|
||||
|
||||
Update package version number for RC1 release.
|
||||
|
||||
commit 60178bb0c8bc97055c9aee7986866ada615491e6
|
||||
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
|
||||
Date: Mon Oct 17 23:56:24 2005 +0000
|
||||
|
||||
Use @APP_MAN_SUFFIX@ instead of $(APP_MAN_SUFFIX) in macro substitutions to
|
||||
work better with BSD make
|
||||
|
||||
commit 958b347b1e5e427858d3e693e5487ec7ba4f5054
|
||||
Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
|
||||
Date: Fri Oct 14 00:25:47 2005 +0000
|
||||
|
||||
Use sed to fill in variables in man page
|
||||
|
||||
commit 35e7414c6e4505b2e71be0e54ed0c7ff74f39db1
|
||||
Author: Aaron Plattner <aplattner@nvidia.com>
|
||||
Date: Thu Oct 6 10:03:08 2005 +0000
|
||||
|
||||
Tell the user when setting the screen configuration fails. Return nonzero
|
||||
so scripts can find out too.
|
||||
|
||||
commit 938ff7de3f2bc4979bbf8a5f68190cde2be12696
|
||||
Author: Kevin E Martin <kem@kem.org>
|
||||
Date: Fri Jul 29 21:22:37 2005 +0000
|
||||
|
||||
Various changes preparing packages for RC0:
|
||||
- Verify and update package version numbers as needed
|
||||
- Implement versioning scheme
|
||||
- Change bug address to point to bugzilla bug entry form
|
||||
- Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
|
||||
reenable it)
|
||||
- Fix makedepend to use pkgconfig and pass distcheck
|
||||
- Update build script to build macros first
|
||||
- Update modular Xorg version
|
||||
|
||||
commit f241e34fd0f3bedf5aa615dc8e17352b91de8cd9
|
||||
Author: Daniel Stone <daniel@fooishbar.org>
|
||||
Date: Fri Jul 22 07:18:28 2005 +0000
|
||||
|
||||
Fix path to man pages.
|
||||
|
||||
commit f87ac740a20ec3e8b452959081816f5fddeaaf87
|
||||
Author: Adam Jackson <ajax@nwnk.net>
|
||||
Date: Wed Jul 20 19:32:03 2005 +0000
|
||||
|
||||
Use a unique token for PKG_CHECK_MODULES. Otherwise, if you use a global
|
||||
configure cache, you cache it, and the cached value is probably wrong.
|
||||
|
||||
commit 5666f22654447eb381186a85a8e1630d419b0a88
|
||||
Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
|
||||
Date: Fri Jul 1 20:27:45 2005 +0000
|
||||
|
||||
Build systems for xrdb, xrandr, xrefresh
|
||||
|
||||
commit 39a8c733612722dca456c315a5ad299da1fe29d6
|
||||
Author: Markus Kuhn <Markus.Kuhn@cl.cam.ac.uk>
|
||||
Date: Sat Dec 4 00:43:18 2004 +0000
|
||||
|
||||
Encoding of numerous files changed to UTF-8
|
||||
|
||||
commit df8c56f1f66cce27dd018248a30cd9465d2b545c
|
||||
Author: Egbert Eich <eich@suse.de>
|
||||
Date: Fri Apr 23 19:55:03 2004 +0000
|
||||
|
||||
Merging XORG-CURRENT into trunk
|
||||
|
||||
commit 791685e93f32489dcd2d02a77e1a79ffb6c97c17
|
||||
Author: Egbert Eich <eich@suse.de>
|
||||
Date: Sun Mar 14 08:35:42 2004 +0000
|
||||
|
||||
Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
|
||||
|
||||
commit 342e5f4d491f137e3930213e62192de3eece3155
|
||||
Author: Egbert Eich <eich@suse.de>
|
||||
Date: Wed Mar 3 12:13:15 2004 +0000
|
||||
|
||||
Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
|
||||
|
||||
commit e3c0383c8fdcf38d34b3fad607949b0693184ca7
|
||||
Author: Egbert Eich <eich@suse.de>
|
||||
Date: Thu Feb 26 13:36:26 2004 +0000
|
||||
|
||||
readding XFree86's cvs IDs
|
||||
|
||||
commit 633350fa648d2b57b3dd94cb1d220a0b826bef55
|
||||
Author: Egbert Eich <eich@suse.de>
|
||||
Date: Thu Feb 26 09:24:14 2004 +0000
|
||||
|
||||
Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
|
||||
|
||||
commit 22c66075090a14ad022ae73a080e76a5ace7c5d1
|
||||
Author: Kaleb Keithley <kaleb@freedesktop.org>
|
||||
Date: Tue Nov 25 19:29:15 2003 +0000
|
||||
|
||||
XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
|
||||
|
||||
commit 05fa20267de7cdf44fb6de556910ed0e4ce665a5
|
||||
Author: Kaleb Keithley <kaleb@freedesktop.org>
|
||||
Date: Fri Nov 14 16:49:23 2003 +0000
|
||||
|
||||
XFree86 4.3.0.1
|
||||
|
||||
commit c973a27b6d07b8711041c0c22ba8568f168b447a
|
||||
Author: Kaleb Keithley <kaleb@freedesktop.org>
|
||||
Date: Fri Nov 14 16:49:23 2003 +0000
|
||||
|
||||
Initial revision
|
||||
|
@ -34,8 +34,9 @@ appmandir = $(APP_MAN_DIR)
|
||||
|
||||
appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
|
||||
|
||||
EXTRA_DIST = $(appman_PRE)
|
||||
EXTRA_DIST = $(appman_PRE) ChangeLog autogen.sh xrandr_test.pl
|
||||
CLEANFILES = $(appman_DATA)
|
||||
MAINTAINERCLEANFILES = ChangeLog
|
||||
|
||||
SED = sed
|
||||
|
||||
@ -60,3 +61,12 @@ SUFFIXES = .$(APP_MAN_SUFFIX) .man
|
||||
|
||||
.man.$(APP_MAN_SUFFIX):
|
||||
sed $(MAN_SUBSTS) < $< > $@
|
||||
|
||||
.PHONY: ChangeLog
|
||||
|
||||
ChangeLog:
|
||||
(GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || \
|
||||
(touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
|
||||
|
||||
dist-hook: ChangeLog
|
||||
|
||||
|
@ -216,8 +216,9 @@ appman_PRE = \
|
||||
|
||||
appmandir = $(APP_MAN_DIR)
|
||||
appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
|
||||
EXTRA_DIST = $(appman_PRE)
|
||||
EXTRA_DIST = $(appman_PRE) ChangeLog autogen.sh xrandr_test.pl
|
||||
CLEANFILES = $(appman_DATA)
|
||||
MAINTAINERCLEANFILES = ChangeLog
|
||||
SED = sed
|
||||
|
||||
# Strings to replace in man pages
|
||||
@ -436,6 +437,9 @@ distdir: $(DISTFILES)
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
$(MAKE) $(AM_MAKEFLAGS) \
|
||||
top_distdir="$(top_distdir)" distdir="$(distdir)" \
|
||||
dist-hook
|
||||
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
|
||||
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
|
||||
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
|
||||
@ -565,6 +569,7 @@ distclean-generic:
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
|
||||
@ -620,8 +625,8 @@ uninstall-am: uninstall-appmanDATA uninstall-binPROGRAMS \
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \
|
||||
clean-binPROGRAMS clean-generic ctags dist dist-all dist-bzip2 \
|
||||
dist-gzip dist-shar dist-tarZ dist-zip distcheck distclean \
|
||||
distclean-compile distclean-generic distclean-hdr \
|
||||
dist-gzip dist-hook dist-shar dist-tarZ dist-zip distcheck \
|
||||
distclean distclean-compile distclean-generic distclean-hdr \
|
||||
distclean-tags distcleancheck distdir distuninstallcheck dvi \
|
||||
dvi-am html html-am info info-am install install-am \
|
||||
install-appmanDATA install-binPROGRAMS install-data \
|
||||
@ -636,6 +641,14 @@ uninstall-am: uninstall-appmanDATA uninstall-binPROGRAMS \
|
||||
|
||||
.man.$(APP_MAN_SUFFIX):
|
||||
sed $(MAN_SUBSTS) < $< > $@
|
||||
|
||||
.PHONY: ChangeLog
|
||||
|
||||
ChangeLog:
|
||||
(GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || \
|
||||
(touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
|
||||
|
||||
dist-hook: ChangeLog
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
|
12
app/xrandr/aclocal.m4
vendored
12
app/xrandr/aclocal.m4
vendored
@ -1042,7 +1042,7 @@ AC_DEFUN([XORG_MACROS_VERSION],[
|
||||
XORG_MACROS_needed_major=`echo $XORG_MACROS_needed_version | sed 's/\..*$//'`
|
||||
XORG_MACROS_needed_minor=`echo $XORG_MACROS_needed_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`]
|
||||
AC_MSG_CHECKING([if xorg-macros used to generate configure is at least ${XORG_MACROS_needed_major}.${XORG_MACROS_needed_minor}])
|
||||
[XORG_MACROS_version=1.1.5
|
||||
[XORG_MACROS_version=1.1.6
|
||||
XORG_MACROS_major=`echo $XORG_MACROS_version | sed 's/\..*$//'`
|
||||
XORG_MACROS_minor=`echo $XORG_MACROS_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`]
|
||||
if test $XORG_MACROS_major -ne $XORG_MACROS_needed_major ; then
|
||||
@ -1191,7 +1191,11 @@ AC_DEFUN([XORG_CHECK_LINUXDOC],[
|
||||
XORG_SGML_PATH=$prefix/share/sgml
|
||||
HAVE_DEFS_ENT=
|
||||
|
||||
AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes])
|
||||
if test x"$cross_compiling" = x"yes" ; then
|
||||
HAVE_DEFS_ENT=no
|
||||
else
|
||||
AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes])
|
||||
fi
|
||||
|
||||
AC_PATH_PROG(LINUXDOC, linuxdoc)
|
||||
AC_PATH_PROG(PS2PDF, ps2pdf)
|
||||
@ -1463,14 +1467,14 @@ AC_DEFUN([XORG_RELEASE_VERSION],[
|
||||
AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],
|
||||
[`echo $PACKAGE_VERSION | cut -d . -f 1`],
|
||||
[Major version of this package])
|
||||
PVM=`echo $PACKAGE_VERSION | cut -d . -f 2`
|
||||
PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1`
|
||||
if test "x$PVM" = "x"; then
|
||||
PVM="0"
|
||||
fi
|
||||
AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],
|
||||
[$PVM],
|
||||
[Minor version of this package])
|
||||
PVP=`echo $PACKAGE_VERSION | cut -d . -f 3`
|
||||
PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1`
|
||||
if test "x$PVP" = "x"; then
|
||||
PVP="0"
|
||||
fi
|
||||
|
24
app/xrandr/configure
vendored
24
app/xrandr/configure
vendored
@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.59 for xrandr 1.2.2.
|
||||
# Generated by GNU Autoconf 2.59 for xrandr 1.2.3.
|
||||
#
|
||||
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
|
||||
#
|
||||
@ -269,8 +269,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
|
||||
# Identity of this package.
|
||||
PACKAGE_NAME='xrandr'
|
||||
PACKAGE_TARNAME='xrandr'
|
||||
PACKAGE_VERSION='1.2.2'
|
||||
PACKAGE_STRING='xrandr 1.2.2'
|
||||
PACKAGE_VERSION='1.2.3'
|
||||
PACKAGE_STRING='xrandr 1.2.3'
|
||||
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
|
||||
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE PKG_CONFIG ac_pt_PKG_CONFIG XRANDR_CFLAGS XRANDR_LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os APP_MAN_SUFFIX LIB_MAN_SUFFIX FILE_MAN_SUFFIX MISC_MAN_SUFFIX DRIVER_MAN_SUFFIX ADMIN_MAN_SUFFIX APP_MAN_DIR LIB_MAN_DIR FILE_MAN_DIR MISC_MAN_DIR DRIVER_MAN_DIR ADMIN_MAN_DIR LIBOBJS LTLIBOBJS'
|
||||
@ -750,7 +750,7 @@ if test "$ac_init_help" = "long"; then
|
||||
# Omit some internal or obsolete options to make the list less imposing.
|
||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures xrandr 1.2.2 to adapt to many kinds of systems.
|
||||
\`configure' configures xrandr 1.2.3 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
@ -816,7 +816,7 @@ fi
|
||||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of xrandr 1.2.2:";;
|
||||
short | recursive ) echo "Configuration of xrandr 1.2.3:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
@ -945,7 +945,7 @@ fi
|
||||
test -n "$ac_init_help" && exit 0
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
xrandr configure 1.2.2
|
||||
xrandr configure 1.2.3
|
||||
generated by GNU Autoconf 2.59
|
||||
|
||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||
@ -959,7 +959,7 @@ cat >&5 <<_ACEOF
|
||||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by xrandr $as_me 1.2.2, which was
|
||||
It was created by xrandr $as_me 1.2.3, which was
|
||||
generated by GNU Autoconf 2.59. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
@ -1557,7 +1557,7 @@ fi
|
||||
|
||||
# Define the identity of the package.
|
||||
PACKAGE='xrandr'
|
||||
VERSION='1.2.2'
|
||||
VERSION='1.2.3'
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
@ -3264,7 +3264,7 @@ cat >>confdefs.h <<_ACEOF
|
||||
#define PACKAGE_VERSION_MAJOR `echo $PACKAGE_VERSION | cut -d . -f 1`
|
||||
_ACEOF
|
||||
|
||||
PVM=`echo $PACKAGE_VERSION | cut -d . -f 2`
|
||||
PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1`
|
||||
if test "x$PVM" = "x"; then
|
||||
PVM="0"
|
||||
fi
|
||||
@ -3273,7 +3273,7 @@ cat >>confdefs.h <<_ACEOF
|
||||
#define PACKAGE_VERSION_MINOR $PVM
|
||||
_ACEOF
|
||||
|
||||
PVP=`echo $PACKAGE_VERSION | cut -d . -f 3`
|
||||
PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1`
|
||||
if test "x$PVP" = "x"; then
|
||||
PVP="0"
|
||||
fi
|
||||
@ -3668,7 +3668,7 @@ _ASBOX
|
||||
} >&5
|
||||
cat >&5 <<_CSEOF
|
||||
|
||||
This file was extended by xrandr $as_me 1.2.2, which was
|
||||
This file was extended by xrandr $as_me 1.2.3, which was
|
||||
generated by GNU Autoconf 2.59. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
@ -3731,7 +3731,7 @@ _ACEOF
|
||||
|
||||
cat >>$CONFIG_STATUS <<_ACEOF
|
||||
ac_cs_version="\\
|
||||
xrandr config.status 1.2.2
|
||||
xrandr config.status 1.2.3
|
||||
configured by $0, generated by GNU Autoconf 2.59,
|
||||
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
|
||||
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
dnl Copyright 2005 Red Hat, Inc.
|
||||
dnl
|
||||
dnl Permission to use, copy, modify, distribute, and sell this software and its
|
||||
@ -22,7 +21,7 @@ dnl
|
||||
dnl Process this file with autoconf to create configure.
|
||||
|
||||
AC_PREREQ([2.57])
|
||||
AC_INIT(xrandr,[1.2.2], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xrandr)
|
||||
AC_INIT(xrandr,[1.2.3], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xrandr)
|
||||
AM_INIT_AUTOMAKE([dist-bzip2])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
|
@ -1284,6 +1284,20 @@ check_crtc_for_output (crtc_t *crtc, output_t *output)
|
||||
if (crtc->rotation != output->rotation)
|
||||
return False;
|
||||
}
|
||||
else if (crtc->crtc_info->noutput)
|
||||
{
|
||||
/* make sure the state matches the already used state */
|
||||
XRRModeInfo *mode = find_mode_by_xid (crtc->crtc_info->mode);
|
||||
|
||||
if (mode != output->mode_info)
|
||||
return False;
|
||||
if (crtc->crtc_info->x != output->x)
|
||||
return False;
|
||||
if (crtc->crtc_info->y != output->y)
|
||||
return False;
|
||||
if (crtc->crtc_info->rotation != output->rotation)
|
||||
return False;
|
||||
}
|
||||
return True;
|
||||
}
|
||||
|
||||
@ -1520,14 +1534,13 @@ pick_crtcs_score (output_t *outputs)
|
||||
best_score = score;
|
||||
}
|
||||
}
|
||||
if (output->crtc_info != best_crtc)
|
||||
output->crtc_info = best_crtc;
|
||||
/*
|
||||
* Reset other outputs based on this one using the best crtc
|
||||
*/
|
||||
if (output->crtc_info != best_crtc)
|
||||
{
|
||||
output->crtc_info = best_crtc;
|
||||
(void) pick_crtcs_score (outputs);
|
||||
}
|
||||
(void) pick_crtcs_score (outputs);
|
||||
|
||||
return best_score;
|
||||
}
|
||||
|
||||
@ -1544,11 +1557,18 @@ pick_crtcs (void)
|
||||
*/
|
||||
for (output = outputs; output; output = output->next)
|
||||
{
|
||||
if (output->changes && output->mode_info && !output->crtc_info)
|
||||
if (output->changes && output->mode_info)
|
||||
{
|
||||
output->crtc_info = find_crtc_for_output (output);
|
||||
if (!output->crtc_info)
|
||||
break;
|
||||
if (output->crtc_info) {
|
||||
if (output->crtc_info->crtc_info->noutput > 0 &&
|
||||
(output->crtc_info->crtc_info->noutput > 1 ||
|
||||
output != find_output_by_xid (output->crtc_info->crtc_info->outputs[0])))
|
||||
break;
|
||||
} else {
|
||||
output->crtc_info = find_crtc_for_output (output);
|
||||
if (!output->crtc_info)
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
/*
|
||||
@ -1712,9 +1732,12 @@ main (int argc, char **argv)
|
||||
}
|
||||
if (!strcmp ("--output", argv[i])) {
|
||||
if (++i >= argc) usage();
|
||||
output = add_output ();
|
||||
|
||||
set_name (&output->output, argv[i], name_string|name_xid);
|
||||
output = find_output_by_name (argv[i]);
|
||||
if (!output) {
|
||||
output = add_output ();
|
||||
set_name (&output->output, argv[i], name_string|name_xid);
|
||||
}
|
||||
|
||||
setit_1_2 = True;
|
||||
continue;
|
||||
@ -2404,6 +2427,10 @@ main (int argc, char **argv)
|
||||
for (f = 0; mode_flags[f].flag; f++)
|
||||
if (mode->modeFlags & mode_flags[f].flag)
|
||||
printf (" %s", mode_flags[f].string);
|
||||
if (mode == output->mode_info)
|
||||
printf (" *current");
|
||||
if (j < output_info->npreferred)
|
||||
printf (" +preferred");
|
||||
printf ("\n");
|
||||
printf (" h: width %4d start %4d end %4d total %4d skew %4d clock %6.1fKHz\n",
|
||||
mode->width, mode->hSyncStart, mode->hSyncEnd,
|
||||
|
@ -70,8 +70,15 @@ xrandr \- primitive command line interface to RandR extension
|
||||
.I Xrandr
|
||||
is used to set the size, orientation and/or reflection of the outputs for a
|
||||
screen. It can also set the screen size.
|
||||
There are a few global options; the rest modify a particular output and
|
||||
follow the specification of that output on the command line.
|
||||
|
||||
If invoked without any option, it will dump the state of the outputs,
|
||||
showing the existing modes for each of them, with a '+' after the preferred
|
||||
mode and a '*' after the current mode.
|
||||
|
||||
There are a few global options. Other options modify the last output that is
|
||||
specified in earlier parameters in the command line. Multiple outputs may
|
||||
be modified at the same time by passing mutiple \-\-output options followed
|
||||
immediately by their corresponding modifying options.
|
||||
.IP \-\-help
|
||||
Print out a summary of the usage and exit.
|
||||
.IP \-v
|
||||
|
329
app/xrandr/xrandr_test.pl
Normal file
329
app/xrandr/xrandr_test.pl
Normal file
@ -0,0 +1,329 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
#
|
||||
# xrandr Test suite
|
||||
#
|
||||
# Do a set of xrandr calls and verify that the screen setup is as expected
|
||||
# after each call.
|
||||
#
|
||||
|
||||
$xrandr="xrandr";
|
||||
$xrandr=$ENV{XRANDR} if defined $ENV{XRANDR};
|
||||
$version="0.1";
|
||||
$inbetween="";
|
||||
print "\n***** xrandr test suite V$version *****\n\n";
|
||||
|
||||
# Known issues and their fixes
|
||||
%fixes=(
|
||||
s2 => "xrandr: 307f3686",
|
||||
s4 => "xserver: f7dd0c72",
|
||||
s11 => "xrandr: f7aaf894",
|
||||
s18 => "issue known, but not fixed yet"
|
||||
);
|
||||
|
||||
# Get output configuration
|
||||
@outputs=();
|
||||
%mode_name=();
|
||||
%out_modes=();
|
||||
%modes=();
|
||||
open P, "$xrandr --verbose|" or die "$xrandr";
|
||||
while (<P>) {
|
||||
if (/^\S/) {
|
||||
$o=""; $m=""; $x="";
|
||||
}
|
||||
if (/^(\S+)\s(connected|unknown connection)\s/) {
|
||||
$o=$1;
|
||||
push @outputs, $o if $2 eq "connected";
|
||||
push @outputs_unknown, $o if $2 eq "unknown connection";
|
||||
$out_modes{$o}=[];
|
||||
} elsif (/^\s+(\d+x\d+)\s+\((0x[0-9a-f]+)\)/) {
|
||||
my $m=$1;
|
||||
my $x=$2;
|
||||
while (<P>) {
|
||||
if (/^\s+(\d+x\d+)\s+\((0x[0-9a-f]+)\)/) {
|
||||
print "WARNING: Ignoring incomplete mode $x:$m on $o\n";
|
||||
$m=$1, $x=$2;
|
||||
} elsif (/^\s+v:.*?([0-9.]+)Hz\s*$/) {
|
||||
if (defined $mode_name{$x} && $mode_name{$x} ne "$m\@$1") {
|
||||
print "WARNING: Ignoring mode $x:$m\@$1 because $x:$mode_name{$x} already exists\n";
|
||||
last;
|
||||
}
|
||||
if (defined $modes{"$o:$x"}) {
|
||||
print "WARNING: Ignoring duplicate mode $x on $o\n";
|
||||
last;
|
||||
}
|
||||
$mode_name{$x}="$m\@$1";
|
||||
push @{$out_modes{$o}}, $x;
|
||||
$modes{"$o:$x"}=$x;
|
||||
$modes{"$o:$m\@$1"}=$x;
|
||||
$modes{"$o:$m"}=$x;
|
||||
last;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
close P;
|
||||
@outputs=(@outputs,@outputs_unknown) if @outputs < 2;
|
||||
|
||||
# preamble
|
||||
if ($ARGV[0] eq "-w") {
|
||||
print "Waiting for keypress after each test for manual verification.\n\n";
|
||||
$inbetween='print " Press <Return> to continue...\n"; $_=<STDIN>';
|
||||
} elsif ($ARGV[0] ne "") {
|
||||
print "Preparing for test # $ARGV[0]\n\n";
|
||||
$prepare = $ARGV[0];
|
||||
}
|
||||
|
||||
print "Detected connected outputs and available modes:\n\n";
|
||||
for $o (@outputs) {
|
||||
print "$o:";
|
||||
my $i=0;
|
||||
for $x (@{$out_modes{$o}}) {
|
||||
print "\n" if $i++ % 3 == 0;
|
||||
print " $x:$mode_name{$x}";
|
||||
}
|
||||
print "\n";
|
||||
}
|
||||
print "\n";
|
||||
|
||||
if (@outputs < 2) {
|
||||
print "Found less than two connected outputs. No tests available for that.\n";
|
||||
exit 1;
|
||||
}
|
||||
if (@outputs > 2) {
|
||||
print "Note: No tests for more than two connected outputs available yet.\n";
|
||||
print "Using the first two outputs.\n\n";
|
||||
}
|
||||
|
||||
$a=$outputs[0];
|
||||
$b=$outputs[1];
|
||||
|
||||
# For each resolution only a single refresh rate should be used in order to
|
||||
# reduce ambiguities. For that we need to find unused modes. The %used hash is
|
||||
# used to track used ones. All references point to <id>.
|
||||
# <output>:<id>
|
||||
# <output>:<width>x<height>@<refresh>
|
||||
# <output>:<width>x<height>
|
||||
# <id>
|
||||
# <width>x<height>@<refresh>
|
||||
# <width>x<height>
|
||||
%used=();
|
||||
|
||||
# Find biggest common mode
|
||||
undef $sab;
|
||||
for my $x (@{$out_modes{$a}}) {
|
||||
if (defined $modes{"$b:$x"}) {
|
||||
$m=$mode_name{$x};
|
||||
$sab="$x:$m";
|
||||
$m =~ m/(\d+x\d+)\@([0-9.]+)/;
|
||||
$used{$x} = $x;
|
||||
$used{$1} = $x;
|
||||
$used{"$a:$x"} = $x;
|
||||
$used{"$b:$x"} = $x;
|
||||
$used{"$a:$m"} = $mode_name{$x};
|
||||
$used{"$b:$m"} = $mode_name{$x};
|
||||
$used{"$a:$1"} = $x;
|
||||
$used{"$b:$1"} = $x;
|
||||
last;
|
||||
}
|
||||
}
|
||||
if (! defined $sab) {
|
||||
print "Cannot find common mode between $a and $b.\n";
|
||||
print "Test suite is designed to need a common mode.\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
# Find sets of additional non-common modes
|
||||
# Try to get non-overlapping resolution set, but if that fails get overlapping
|
||||
# ones but with different refresh values, if that fails any with nonequal
|
||||
# timings, and if that fails any one, but warn.
|
||||
# Try modes unknown to other outputs first, they might need common ones
|
||||
# themselves.
|
||||
sub get_mode {
|
||||
my $o=$_[0];
|
||||
for my $pass (1, 2, 3, 4, 5, 6, 7, 8, 9) {
|
||||
CONT: for my $x (@{$out_modes{$o}}) {
|
||||
$m = $mode_name{$x};
|
||||
$m =~ m/(\d+x\d+)\@([0-9.]+)/;
|
||||
next CONT if defined $used{"$o:$x"};
|
||||
next CONT if $pass < 9 && defined $used{"$o:$m"};
|
||||
next CONT if $pass < 7 && defined $used{"$o:$1"};
|
||||
next CONT if $pass < 6 && defined $used{$m};
|
||||
next CONT if $pass < 4 && defined $used{$1};
|
||||
for my $other (@outputs) {
|
||||
next if $other eq $o;
|
||||
next CONT if $pass < 8 && defined $used{"$o:$x"};
|
||||
next CONT if $pass < 5 && $used{"$other:$1"};
|
||||
next CONT if $pass < 3 && $modes{"$other:$m"};
|
||||
next CONT if $pass < 2 && $modes{"$other:$1"};
|
||||
}
|
||||
if ($pass >= 6) {
|
||||
print "Warning: No more non-common modes, using $m for $o\n";
|
||||
}
|
||||
$used{"$o:$x"} = $x;
|
||||
$used{"$o:$m"} = $x;
|
||||
$used{"$o:$1"} = $x;
|
||||
$used{$x} = $x;
|
||||
$used{$m} = $x;
|
||||
$used{$1} = $x;
|
||||
return "$x:$m";
|
||||
}
|
||||
}
|
||||
print "Warning: Cannot find any more modes for $o.\n";
|
||||
return undef;
|
||||
}
|
||||
sub mode_to_randr {
|
||||
$_[0] =~ m/^(0x[0-9a-f]+):(\d+)x(\d+)\@([0-9.]+)/;
|
||||
return "--mode $1";
|
||||
}
|
||||
|
||||
$sa1=get_mode($a);
|
||||
$sa2=get_mode($a);
|
||||
$sb1=get_mode($b);
|
||||
$sb2=get_mode($b);
|
||||
|
||||
$mab=mode_to_randr($sab);
|
||||
$ma1=mode_to_randr($sa1);
|
||||
$ma2=mode_to_randr($sa2);
|
||||
$mb1=mode_to_randr($sb1);
|
||||
$mb2=mode_to_randr($sb2);
|
||||
|
||||
# Shortcuts
|
||||
$oa="--output $a";
|
||||
$ob="--output $b";
|
||||
|
||||
# Print config
|
||||
print "A: $a (mab,ma1,ma2)\nB: $b (mab,mb1,mb2)\n\n";
|
||||
print "mab: $sab\nma1: $sa1\nma2: $sa2\nmb1: $sb1\nmb2: $sb2\n\n";
|
||||
print "Initial config:\n";
|
||||
system "$xrandr";
|
||||
print "\n";
|
||||
|
||||
# Test subroutine
|
||||
sub t {
|
||||
my $name=$_[0];
|
||||
my $expect=$_[1];
|
||||
my $args=$_[2];
|
||||
print "*** $name: $args\n";
|
||||
print "? $expect\n" if $expect ne "";
|
||||
if ($name eq $prepare) {
|
||||
print "-> Prepared to run test\n\nRun test now with\n$xrandr --verbose $args\n\n";
|
||||
exit 0;
|
||||
}
|
||||
my %r = ();
|
||||
my $r = "";
|
||||
my $out = "";
|
||||
if (system ("$xrandr --verbose $args") == 0) {
|
||||
# Determine active configuration
|
||||
open P, "$xrandr --verbose|" or die "$xrandr";
|
||||
my ($o, $c, $m, $x);
|
||||
while (<P>) {
|
||||
$out.=$_;
|
||||
if (/^\S/) {
|
||||
$o=""; $c=""; $m=""; $x="";
|
||||
}
|
||||
if (/^(\S+)\s(connected|unknown connection) (\d+x\d+)\+\d+\+\d+\s+\((0x[0-9a-f]+)\)/) {
|
||||
$o=$1;
|
||||
$m=$3;
|
||||
$x=$4;
|
||||
$o="A" if $o eq $a;
|
||||
$o="B" if $o eq $b;
|
||||
} elsif (/^\s*CRTC:\s*(\d)/) {
|
||||
$c=$1;
|
||||
} elsif (/^\s+$m\s+\($x\)/) {
|
||||
while (<P>) {
|
||||
$out.=$_;
|
||||
if (/^\s+\d+x\d+\s/) {
|
||||
$r{$o}="$x:$m\@?($c)" unless defined $r{$o};
|
||||
# we don't have to reparse this - something is wrong anyway,
|
||||
# and it probably is no relevant resolution as well
|
||||
last;
|
||||
} elsif (/^\s+v:.*?([0-9.]+)Hz\s*$/) {
|
||||
$r{$o}="$x:$m\@$1($c)";
|
||||
last;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
for $o (sort keys %r) {
|
||||
$r .= " $o: $r{$o}";
|
||||
}
|
||||
close P;
|
||||
} else {
|
||||
$expect="success" if $expect="";
|
||||
$r="failed";
|
||||
}
|
||||
# Verify
|
||||
if ($expect ne "") {
|
||||
print "->$r\n";
|
||||
if ($r eq " $expect") {
|
||||
print "-> ok\n\n";
|
||||
} else {
|
||||
print "\n$out";
|
||||
print "\n-> FAILED: Test # $name:\n\n";
|
||||
print " $xrandr --verbose $args\n\n";
|
||||
if ($fixes{$name}) {
|
||||
print "\nThere are known issues with some packages regarding this test.\n";
|
||||
print "Please verify that you have at least the following git versions\n";
|
||||
print "before reporting a bug to xorg-devel:\n\n";
|
||||
print " $fixes{$name}\n\n";
|
||||
}
|
||||
exit 1;
|
||||
}
|
||||
eval $inbetween;
|
||||
} else {
|
||||
print "-> ignored\n\n";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# Test cases
|
||||
#
|
||||
# The tests are carefully designed to test certain transitions between
|
||||
# RandR states that can only be reached by certain calling sequences.
|
||||
# So be careful with altering them. For additional tests, better add them
|
||||
# to the end of already existing tests of one part.
|
||||
|
||||
# Part 1: Single output switching tests (except for trivial explicit --crtc)
|
||||
t ("p", "", "$oa --off $ob --off");
|
||||
t ("s1", "A: $sa1(0)", "$oa $ma1 --crtc 0");
|
||||
t ("s2", "A: $sa1(0) B: $sab(1)", "$ob $mab");
|
||||
# TODO: should be A: $sab(1) someday (auto re-cloning)"
|
||||
#t ("s3", "A: $sab(1) B: $sab(1)", "$oa $mab");
|
||||
t ("s3", "A: $sab(0) B: $sab(1)", "$oa $mab --crtc 0");
|
||||
t ("p4", "A: $sab(1) B: $sab(1)", "$oa $mab --crtc 1 $ob --crtc 1");
|
||||
t ("s4", "A: $sa2(0) B: $sab(1)", "$oa $ma2");
|
||||
t ("s5", "A: $sa1(0) B: $sab(1)", "$oa $ma1");
|
||||
t ("s6", "A: $sa1(0) B: $sb1(1)", "$ob $mb1");
|
||||
t ("s7", "A: $sab(0) B: $sb1(1)", "$oa $mab");
|
||||
t ("s8", "A: $sab(0) B: $sb2(1)", "$ob $mb2");
|
||||
t ("s9", "A: $sab(0) B: $sb1(1)", "$ob $mb1");
|
||||
# TODO: should be B: $sab(0) someday (auto re-cloning)"
|
||||
#t ("s10", "A: $sab(0) B: $sab(0)", "$ob $mab");
|
||||
t ("p11", "A: $sab(0) B: $sab(0)", "$oa --crtc 0 $ob $mab --crtc 0");
|
||||
t ("s11", "A: $sa1(1) B: $sab(0)", "$oa $ma1");
|
||||
t ("s12", "A: $sa1(1) B: $sb1(0)", "$ob $mb1");
|
||||
t ("s13", "A: $sa1(1) B: $sab(0)", "$ob $mab");
|
||||
t ("s14", "A: $sa2(1) B: $sab(0)", "$oa $ma2");
|
||||
t ("s15", "A: $sa1(1) B: $sab(0)", "$oa $ma1");
|
||||
t ("p16", "A: $sab(0) B: $sab(0)", "$oa $mab --crtc 0 $ob --crtc 0");
|
||||
t ("s16", "A: $sab(1) B: $sab(0)", "$oa --pos 10x0");
|
||||
t ("p17", "A: $sab(0) B: $sab(0)", "$oa --crtc 0 $ob --crtc 0");
|
||||
t ("s17", "A: $sab(0) B: $sab(1)", "$ob --pos 10x0");
|
||||
t ("p18", "A: $sab(0) B: $sab(0)", "$oa --crtc 0 $ob --crtc 0");
|
||||
# TODO: s18-s19 are known to fail
|
||||
t ("s18", "A: $sab(1) B: $sab(0)", "$oa --crtc 1");
|
||||
t ("p19", "A: $sab(1) B: $sab(1)", "$oa --crtc 1 $ob --crtc 1");
|
||||
t ("s19", "A: $sab(0) B: $sab(1)", "$oa --pos 10x0");
|
||||
|
||||
# Part 2: Complex dual output switching tests
|
||||
# TODO: d1 is known to fail
|
||||
t ("pd1", "A: $sab(0)", "$oa --crtc 0 $ob --off");
|
||||
t ("d1", "B: $sab(0)", "$oa --off $ob $mab");
|
||||
|
||||
# Done
|
||||
|
||||
print "All tests succeeded.\n";
|
||||
|
||||
exit 0;
|
||||
|
Loading…
Reference in New Issue
Block a user