Age | Commit message (Collapse) | Author | Files | Lines |
|
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)
|
|
(cherry picked from commit 86c64ddf21763972aa7fc8c5770259123c9907b3)
|
|
(cherry picked from commit 9d58d2a319059989ccdfa758f586149ccdc16df6)
|
|
|
|
Supports protocol requests, events, and errors, and resource names.
Modify XRES extension to use it.
|
|
|
|
Removing an output mode without decrementing the mode count scrambles the
output mode array badly.
|
|
Set the new randr crtc of the output before the output change notification is
delivered to the clients.
Remove RROutputSetCrtc as it is not really necessary. All we have to do is set
the output's crtc on RRCrtcNotify
|
|
Yes, two changes in one commit. Sorry 'bout that.
The first change ensures that when pending property values have been
changed, a mode set to the current mode will actually do something, rather
than being identified as a no-op. In addition, the driver no longer needs to
manage the migration of pending to current values, that is handled both
within the xf86 mode setting code (to deal with non-RandR changes) as well
as within the RandR extension itself.
The second change eliminates the two-call Create/AttachScreen stuff that was
done in a failed attempt to create RandR resources before the screen
structures were allocated. Merging these back into the Create function is
cleaner.
(cherry picked from commit 57e87e0d006cbf1f5b175fe02eeb981f741d92f0)
Conflicts:
randr/randrstr.h
randr/rrcrtc.c
I think master and server-1.3-branch are more in sync now.
|
|
RRModes are referenced by the resource db, RROutput and RRCrtc structures.
Ensure that the mode reference count is decremented each time a reference is
lost from one of these sources. The missing destroys were in
RRCrtcDestroyResource and RROutputDestroyResource, which only happen at
server reset time, so modes would be unavailable in subsequent server
generations.
|
|
The RandR protocol spec has several requests in support of user-defined
modes, but the implementation was stubbed out inside the X server. Fill out
the DIX portion and start on the xf86 DDX portion. It might be necessary to
add more code to the DDX to insert the user-defined modes into the output
mode list.
(cherry picked from commit 63cc2a51ef87130c632a874672a8c9167f14314e)
Conflicts:
randr/randrstr.h
Updated code to work in master with recent security API changes.
|
|
Bugzilla #7145: <http://bugs.freedesktop.org/show_bug.cgi?id=7145>
Patch #8987: <http://bugs.freedesktop.org/attachment.cgi?id=8987>
|
|
The config time in the RandR protocol reflects when the hardware state has
changed. It was getting changed anytime the driver changed the usage
of the hardware as well.
(cherry picked from 98d18a6578130adb411ca4bcc776fcb7e07f189f commit)
|
|
|
|
RRCrtcDestroyResource and RROutputDestroyResource had matching
bugs that would overwrite memory past the end of the storage
of the crtc or output arrays. Oops.
(cherry picked from 4202b23ed86405a4cebfdcf239df1b023c1d10ca commit)
|
|
Now that resources can be created during server initialization, make sure
the crtc, output and mode resource types are created before attempting to
create associated resources.
(cherry picked from commit ec83d674167e7045d5317b179c9998e3172a26dc)
|
|
RandR output options are now expected to be handled by properties instead.
(cherry picked from commit 8b2a7e94a1dc2776ab2cfaaebb309be02502602a)
|
|
To allow RandR objects to be created before the screen object exists,
the resource types must be registered with the resource database.
A driver wishing to create RandR objects must call RRInit before doing so.
Also, fix a segfault when setting Output data before it is associated with a
screen.
|
|
xf86 drivers need to create RandR object in the PreInit stage,
before the ScreenRec is allocated. Changing the RandR DIX code
to permit this required the addition of functions that later associate the
objects with the related screen.
An additional change is that modes are now global, and no longer associated
with a specific screen. This change actually makes mode management cleaner
as there is no more per-screen list of modes to deal with.
This changes the RandR 1.2 ABI/API for drivers.
|
|
Modes can be shared across different sized monitors this way.
Also caught some missing byteswapping and an incorrect return type.
|
|
Add function to keep pointer within valid crtc areas.
Finish event delivery and swapping code.
Separate configuration from layout changes to send correct events.
|
|
|
|
Output options and mode origins both affected driver ABI. memmove mistakes
were causing 'Freeing resource which isn't there' messages.
Prune unused non-user defined modes from available list now.
|
|
|
|
|
|
|
|
|
|
Removed separate id field in RRModeRec.
Pull screen subpixel order from Render extension.
Implement RGetScreenResources and RRGetOutputInfo
|
|
|
|
More disassembly to ease ongoing development.
|
|
RandR is getting too big to live in one file; split into one file per object
type (crtc, mode, screen), leaving the rest of the code in randr.c.
Code is slowly approaching the point where it will drop-in as a replacement
for the old 1.0 implementation.
|