Age | Commit message (Collapse) | Author |
|
The matrix multiply to combine rotation and projective transforms was being
done in the wrong order.
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit b2bf67b61c564a4b92a429ca9ad455403161f33a)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
We don't return rates to randr < 1.1 clients, so don't allocate space
for them. This fixes a FatalError due to not all allocated space being
used.
X.Org bug#21861 <http://bugs.freedesktop.org/show_bug.cgi?id=21861>
Reported-by: Guillaume Quintin <coincoin169g@gmail.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>
(cherry picked from commit 12e725d08b4cf7dbb7f09b9ec09fa1b621156ea9)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
The lastSetTime value which indicates when the configuration within the
server was last changed was not getting set in the appropriate RandR
requests.
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit 69a9545d1f8110841538410818df19fd960412c5)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
Also, remove redundant field swaps and make others match the order in which
they are declared in the xRR*NotifyEvent structs.
Signed-off-by: Federico Mena Quintero <federico@novell.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit e244a5991e2cc55f5aa2f6e5255f1dabf56f0235)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
Reported by Alan Coopersmith.
(cherry picked from commit 6544490700051b3b5e88ac1890d71b35634c9100)
|
|
The matrix computation for rotation and reflection resulted in dropping a
row or column of pixels as the offsets used in the matrix computations used
width and height rather than width-1 and height-1.
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit 77c7a64e8885696665556c9fbcb3cffb552e367a)
|
|
Just return a zeroed-out reply in that case. This is unambiguous, and
distinguishes "you didn't name a CRTC" from "you named a CRTC that can't
do panning".
(cherry picked from commit 123093996507c4d3b6dc457240ce00f8ac42f410)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
If the computation of the composite fixed-point transform for RandR
overflows at any point, take the resulting floating point transform and
scale that back to fit in a fixed point matrix. This ensures that a matrix
will always be available, although perhaps at reduced precision. Someday we
should add floating point matrices to Render.
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit 62fc98cb88e4e8b636f343453fc1168a87c58972)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
This is the RandR 1.1 version of GetScreenResources and needs to re-query the
DDX to see if the mode pool changed.
Fixes Launchpad bug #325115.
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
|
The new path should only re-query on the other requests when we haven't
gathered the information from the DDX yet (such as with a non-RandR 1.2 DDX).
Bug #19037.
(cherry picked from commit 317f2b4a9fe4b606975711bc332166a82db5087d)
|
|
Primary outputs may not have a CRTC.
Loops fetching CRTCs respecting primary output were broken.
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit 4de5705545792d77c9990bbec3e263a517757a2a)
|
|
The test was inverted from the protocol spec, and besides, the test is bogus
anyways.
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit c1f2be1f3fd0c80cb4c85b98140b98aa9311242b)
|
|
This makes the RandR info consistent with the Xinerama info.
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit 6e49fdd2c839b6244c23ce95c3ae76a1a265b986)
|
|
- This will allow window managers and applications to actually use the panned area.
(cherry picked from commit 332d65ec7a6e94d75efe95d53742f137835274de)
|
|
(cherry picked from commit 86c64ddf21763972aa7fc8c5770259123c9907b3)
|
|
(cherry picked from commit fe65f400ed16cb39db8c9518b9446f590c34db1a)
|
|
(cherry picked from commit cdcb516e561e2f65eb2fa523ca001c57674d5caf)
|
|
(cherry picked from commit d7b316e82bc7051f8829b4f4a640f50ae91c2db9)
|
|
(cherry picked from commit 9d58d2a319059989ccdfa758f586149ccdc16df6)
|
|
|
|
(cherry picked from commit 44bef8b850c5a78a3d3eca5f0d92b71bdd0a87e2)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
(cherry picked from commit 825b2c2f4a59ac4852f90bbbddf18ab832297fdd)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
(cherry picked from commit eeeb98d1df59baaaec954b6318d788a37e388d11)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
Fix a memory leak in ProcRRGetCrtcTransform() while I'm at it.
Signed-off-by: Julien Cristau <jcristau@debian.org>
Cc: Keith Packard <keithp@keithp.com>
(cherry picked from commit 0b5ecabfb803cd820338fb0364521fe39b05578b)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
If the Window resource type is already gone, there's no point in trying
to send events, all it can do is access already-freed memory.
Relevant thread:
http://lists.freedesktop.org/archives/xorg/2008-November/040443.html
(cherry picked from commit b0d371ab0a6efd4956c3677faa20b2ac15c33765)
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
This depends on randrproto 1.2.99.1
Signed-off-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit fc708394318ed92c612e2938b335c08c1ffebb28)
|
|
pixman 0.13.2 now holds all of the matrix operations. This leaves
the protocol conversion routines and some ABI stubs in place
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
Dereferencing the NULL mode pointer would cause a crash. As these transform
matrices won't be used while the CRTC is disabled, just leave their values
alone.
|
|
Need to compute and save the global transform when the driver changes it.
|
|
When the transform management was moved from randrstr.h, the associated
header file became necessary to build drivers. Include it as a part of the
sdk headers.
|
|
|
|
Instead of using a separate function to notify DIX about transform changes,
add the transform to RRCrtcNotify so that the whole Crtc state changes
atomically.
|
|
Track curent transform down in the mode setting code so that it may be set
separately from RandR.
|
|
RandR matrix computations lose too much precision in fixed point;
computations using the inverted matrix can be as much as 10 pixels off.
Convert them to double precision values and pass those around. These API
changes are fairly heavyweight; the official Render interface remains fixed
point, so the fixed point matrix comes along for the ride everywhere.
|
|
It is easier, and potentially more precise, to compute the inverse in the
server where everything can eventually be kept in floating point form.
|
|
Add APIs to xf86RandR12 support and randr extension to record whether the
driver supports transforms, report that value in the RRGetCrtcTransform
reply.
|
|
It doesn't make sense to have the client invert this matrix when the server
can do so reasonably efficiently. This avoids weird fixed point rounding
errors when testing the transform against its inverse. Now to fix the
protocol.
|
|
|
|
Report transformed crtc sizes through RandR and Xinerama. Test screen size
against transformed mode sizes when configuring the Crtc.
|
|
Create new RRTransform datatype to hold all of the transform related
information, use that in lots of places to pass filters around.
|
|
This involved removing a pile of matrix code from the DDX,
as well as moving a bit of transform logic from DDX to DIX.
|
|
New RRCrtcGetTransform function in DIX that DDX can use to get the pending
transform. The DDX code should be complete; the DIX code is just a stub at
this point.
|
|
Remove several doubled statement-terminal semicolons.
Reported by Fernando Carrijo.
|
|
|
|
|
|
|
|
Fix panoramiX request and reply swapping
Set window and screen values in panoramix replies
Prevent buffer overrun in ProcPanoramiXGetScreenSize
|
|
User mode has no customer when create until assigned
to some output.
|
|
This reverts commit 7c5ca85a9e6d49ab572831b3e0c08bb4cafb395e.
|