Go to file
Søren Sandmann Pedersen c6cb70be1e Fix trapezoid and triangle rendering to windows
For fbAdd{Traps,Triangles}() and fbRasterizeTrapezoid() this is just a
matter of adding the image offsets to the trap offsets.

For fbShapes, the story is more complicated:

The recently added pixman API did not allow offsetting
trapezoids. Instead, it would use x_dst and y_dst in such a way that
the effect was to only offset the source image.

In pixman 0.21.8, this API has changed such that all the traps are
conceptually rendered to an infinitely big image, and the source and
destination coordinates are then aligned with (0, 0) of that
image. This means offsetting dst_x and dst_y will now offset the
entire drawing, which is similar to how other composite functions
work.

This patch then changes fbComposite{Triangles,Traps} such that the
source image is aligned with the shapes, and the destination
coordinates offset according to drawable->{x, y}.

Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Soren Sandmann <ssp@redhat.com>
2011-04-22 22:11:20 -04:00
composite Revert "composite: Don't backfill non-bg-None windows" 2011-04-15 12:55:48 -04:00
config config: handle device change event properly 2011-03-24 09:51:09 +10:00
damageext damage: use DamageReportDamage for the initial borderClip damage report 2011-04-13 18:59:09 -07:00
dbe miDbe window priv priv is pre-allocated, don't use dixSetPrivate (bug 28639) 2010-07-02 12:30:24 -04:00
dix dix: improve control flow in QueryTrackers 2011-04-21 16:05:16 +10:00
doc man: refactor common code in the man pages makefiles 2011-01-18 15:11:10 -08:00
exa Add RegionInitBoxes(), and fix some buggy callers of RegionInit(). 2011-04-22 21:39:31 -04:00
fb Fix trapezoid and triangle rendering to windows 2011-04-22 22:11:20 -04:00
glx Add RegionInitBoxes(), and fix some buggy callers of RegionInit(). 2011-04-22 21:39:31 -04:00
hw Merge remote-tracking branch 'jeremyhu/master' 2011-04-22 11:20:16 -07:00
include Add RegionInitBoxes(), and fix some buggy callers of RegionInit(). 2011-04-22 21:39:31 -04:00
m4 Add macro for detecting thread local storage support. 2011-01-08 08:42:49 -08:00
mi mi: fix memory leak in miZeroLine 2011-04-04 15:47:58 +03:00
miext damage: use DamageReportDamage for the initial borderClip damage report 2011-04-13 18:59:09 -07:00
os os: fix use after free in EstablishNewConnections 2011-04-07 19:57:38 +03:00
randr Send events that were missing from RRSelectInput 2011-04-13 19:04:32 -07:00
record Merge remote branch 'whot/for-keith' 2011-03-09 14:25:54 -08:00
render render: Remove unused TriStrip and TriFan typedefs 2011-04-22 21:39:36 -04:00
test test: remove glib dependency 2011-04-21 13:43:43 +10:00
Xext input: remove GetKeyboardValuatorEvents, this is now unnecessary. 2011-04-18 13:05:46 +10:00
xfixes xorg: remove unused pointer values all over the server 2011-04-04 15:41:13 +03:00
Xi Xi: don't swap the status byte in the XIPassiveGrab replies 2011-04-18 13:04:47 +10:00
xkb Merge remote-tracking branch 'vignatti/for-keith' 2011-04-04 11:57:39 -07:00
.gitignore .gitignore: use common defaults with custom section #24239 2009-11-11 21:40:20 -08:00
autogen.sh autogen.sh: Pass --force to autoreconf 2008-07-22 16:55:26 +03:00
configure.ac Fix trapezoid and triangle rendering to windows 2011-04-22 22:11:20 -04:00
COPYING Add asprintf() implementation for platforms without it 2010-12-07 11:10:35 -08:00
fix-miregion Change region implementation names to eliminate the 'mi' prefix 2010-06-05 17:47:32 -07:00
fix-miregion-private Change region implementation names to eliminate the 'mi' prefix 2010-06-05 17:47:32 -07:00
fix-patch-whitespace Rename region macros to eliminate screen argument 2010-06-05 18:59:00 -07:00
fix-region Rename region macros to eliminate screen argument 2010-06-05 18:59:00 -07:00
Makefile.am remove dolt 2010-09-30 17:44:59 -07:00
manpages.am man: refactor common code in the man pages makefiles 2011-01-18 15:11:10 -08:00
README packaging: provide a default README file #24206 2010-01-27 14:00:17 -08:00
xorg-server.m4 macros: use PKG_CONFIG variable rather than executable name 2010-01-07 12:57:23 -08:00
xorg-server.pc.in config: declare xserver private dependencies in xorg-server.pc 2010-06-22 11:34:47 -07:00

					X Server

The X server accepts requests from client applications to create windows,
which are (normally rectangular) "virtual screens" that the client program
can draw into.

Windows are then composed on the actual screen by the X server
(or by a separate composite manager) as directed by the window manager,
which usually communicates with the user via graphical controls such as buttons
and draggable titlebars and borders.

For a comprehensive overview of X Server and X Window System, consult the
following article:
http://en.wikipedia.org/wiki/X_server

All questions regarding this software should be directed at the
Xorg mailing list:

        http://lists.freedesktop.org/mailman/listinfo/xorg

Please submit bug reports to the Xorg bugzilla:

        https://bugs.freedesktop.org/enter_bug.cgi?product=xorg

The master development code repository can be found at:

        git://anongit.freedesktop.org/git/xorg/xserver

        http://cgit.freedesktop.org/xorg/xserver

For patch submission instructions, see:

	http://www.x.org/wiki/Development/Documentation/SubmittingPatches

For more information on the git code manager, see:

        http://wiki.x.org/wiki/GitPage