summaryrefslogtreecommitdiff
path: root/fb
AgeCommit message (Collapse)AuthorFilesLines
2010-01-27Fix source pictures getting random transforms after 2d6a8f668342a5190cdf43b5.Pierre-Loup A. Griffais1-0/+1
*xoff and *yoff were uninitialized for source-only pictures.x Signed-off-by: Pierre-Loup A. Griffais <pgriffais@nvidia.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit a6bd5d2e482a5aa84acb3d4932e2a166d8670ef1)
2009-12-23fb: backport fb changes from master for src window operations.Dave Airlie4-60/+108
This rolls up the following commits and also keeps the image_from_pict API compatiblity. It introduces a new image_from_pict_18 API that is used by the server leaving the old API alone. I've rolled this up as I don't want to introduce ABI breaks in bisection. a72c65e9176c51de95db2fdbf4c5d946a4911695 fb: Adjust transform or composite coordinates for pixman operations bd567061c8b84b268d9bbb01bc4d8981feefb862 Split fbGetDrawable into fbGetDrawablePixmap and fbGetPixmapBitsData 61335052972a78d67c0ba74f902273b34c63a198 Revert "Fix clipping when windows are used as sources" 071b3c1810d9f2602173acc8578caac20e0b771e Revert "Use IncludeInferiors when copying windows before compositing." 8e640d6b131d2865a9725d8997023865b0ef3d69 Revert "Reserve space for two GC values in copy_drawable()." Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-12-18Update Sun license notices to current X.Org standard formAlan Coopersmith2-58/+44
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-11-30Restore ABI by reintroducing the "is_src" paramter to image_from_pict.Aaron Plattner3-8/+10
Restores old ABI after 196aff9b18381d700fb28027186cce6e68ad587c. Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Tested-by: Julien Cristau <jcristau@debian.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-11-26Bug #25136: Revert "Fix clipping when windows are used as sources"Aaron Plattner3-102/+23
That change causes lib(w)fb to make accelerated driver calls after the driver has entered a software fallback. Most drivers don't expect this, which leads to corruption or crashes. A change to make this code do the copy in software is unacceptably slow. This reverts commit e9aa61e9f0d663d5b34a397b943b4d1df44e873d. Conflicts: configure.ac fb/fbpict.c Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-14Add xoff and yoff to drawable->x and drawable->y in create_bits_picture().Soeren Sandmann1-1/+3
These are 0, except when the drawable is a redirected window. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-09-07Fix "warning: left-hand operand of comma expression has no effect"Eamon Walsh3-18/+30
Signed-off-by: Eamon Walsh <efw@eamonwalsh.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-04Add support for RENDER BGRA formats.Michel Dänzer1-0/+2
2009-07-09Reserve space for two GC values in copy_drawable().Soren Sandmann Pedersen1-1/+1
Pointed out by Pierre Willenbrock.
2009-07-06Use IncludeInferiors when copying windows before compositing.Søren Sandmann Pedersen1-3/+4
Part of bug 22484.
2009-06-18Fix clipping when windows are used as sourcesSøren Sandmann Pedersen3-24/+101
The new clipping rules: - client clips happen after transformation - pixels unavailable due to the hierarchy are undefined The first one is implemented in pixman; the second one is realized by making a copy of window sources (to prevent out-of-bounds access).
2009-05-10Make compositing with transformed windows work again.Søren Sandmann Pedersen1-16/+8
The coordinate translation was broken in pretty much every way imaginable.
2009-04-29Fix most remaining deprecated resource lookups.Eamon Walsh1-2/+4
Callsites updated to use dixLookupResourceBy{Type,Class}. TODO: Audit access modes to make sure they reflect the usage.
2009-02-11fb: add fbDoCopy and fbCopyRegion compatibility wrappers.Maarten Maathuis2-0/+73
2009-02-06fb: move some code to miMaarten Maathuis5-367/+7
2008-12-07Use libtool convenience libraries and better "symbol" table.Paulo Cesar Pereira de Andrade1-0/+2
All .a libraries were converted to .la, and instead of linking the Xorg binary with a mix of .a and .la, and adding some libraries more then once in the command line, etc, now it generates a single libxorg.la from all the required convenience libraries, and links with a dummy xorg.c (that should usually be the file with the main function...). This removes the requirement of some things like libosandcommon and libinit, that existed to circumvent problems when linking multiple .a and .la in the final Xorg binary. The "symbol table" is now generated dynamically, by a shell script, with an embedded gawk parser that parses cpp output. The new file sdksyms.sh is generated by hand by analyzing all Makefile.am's and making it create a sdksyms.c file, that includes all sdk headers that will add symbols for the Xorg binary. Module headers aren't read, and a in 2 files it was required to add a "<hash>ifndef XorgLoader" around declarations shared between the Xorg binary and libextmod. A few other changes were added to other sdk headers, like preventing multiple inclusion, or including other headers to satisfy dependencies. This should be a lot more portable, and better (hopefully properly) using libtool to generate convenience libraries.
2008-12-03Rework symbol visibility for easier maintenancePaulo Cesar Pereira de Andrade36-338/+339
Save in a few special cases, _X_EXPORT should not be used in C source files. Instead, it should be used in headers, and the proper C source include that header. Some special cases are symbols that need to be shared between modules, but not expected to be used by external drivers, and symbols that are accessible via LoaderSymbol/dlopen. This patch also adds conditionally some new sdk header files, depending on extensions enabled. These files were added to match pattern for other extensions/modules, that is, have the headers "deciding" symbol visibility in the sdk. These headers are: o Xext/panoramiXsrv.h, Xext/panoramiX.h o fbpict.h (unconditionally) o vidmodeproc.h o mioverlay.h (unconditionally, used only by xaa) o xfixes.h (unconditionally, symbols required by dri2) LoaderSymbol and similar functions now don't have different prototypes, in loaderProcs.h and xf86Module.h, so that both headers can be included, without the need of defining IN_LOADER. xf86NewInputDevice() device prototype readded to xf86Xinput.h, but not exported (and with a comment about it).
2008-12-02Add visibility flags to XSERVER_CFLAGS.Paulo Cesar Pereira de Andrade2-8/+8
This is done to actually change DIX_CFLAGS, as not all "modules" use XORG_CFLAGS. Also export the symbols that are required by other modules after the change.
2008-11-30Remove declarations of symbols that are never defined.Paulo Cesar Pereira de Andrade2-24/+0
These symbols were removed from the X Server, or never declared. One symbol that may need special attention is XkbBuildCoreState(), that doesn't have a prototype anywhere, but is called from xkb/xkbEvents.c:XkbFilterEvents(), and also used by the macros XkbStateFieldFromRec() and XkbGrabStateFromRec() defined in include/xkbstr.h. fb/wfbrename.h also may need some cleanup, as it makes several "renames" of non existing symbols.
2008-11-29Export symbols defined in the sdk.Paulo Cesar Pereira de Andrade30-159/+159
This is the biggest "visibility" patch. Instead of doing a "export" symbol on demand, export everything in the sdk, so that if some module fails due to an unresolved symbol, it is because it is using a symbol not in the sdk. Most exported symbols shouldn't really be made visible, neither advertised in the sdk, as they are only used by a single shared object. Symbols in the sdk (or referenced in sdk macros), but not defined anywhere include: XkbBuildCoreState() XkbInitialMap XkbXIUnsupported XkbCheckActionVMods() XkbSendCompatNotify() XkbDDXFakePointerButton() XkbDDXApplyConfig() _XkbStrCaseCmp() _XkbErrMessages[] _XkbErrCode _XkbErrLocation _XkbErrData XkbAccessXDetailText() XkbNKNDetailMaskText() XkbLookupGroupAndLevel() XkbInitAtoms() XkbGetOrderedDrawables() XkbFreeOrderedDrawables() XkbConvertXkbComponents() XkbWriteXKBSemantics() XkbWriteXKBLayout() XkbWriteXKBKeymap() XkbWriteXKBFile() XkbWriteCFile() XkbWriteXKMFile() XkbWriteToServer() XkbMergeFile() XkmFindTOCEntry() XkmReadFileSection() XkmReadFileSectionName() InitExtInput() xf86CheckButton() xf86SwitchCoreDevice() RamDacSetGamma() RamDacRestoreDACValues() xf86Bpp xf86ConfigPix24 xf86MouseCflags[] xf86SupportedMouseTypes[] xf86NumMouseTypes xf86ChangeBusIndex() xf86EntityEnter() xf86EntityLeave() xf86WrapperInit() xf86RingBell() xf86findOptionBoolean() xf86debugListOptions() LoadSubModuleLocal() LoaderSymbolLocal() getInt10Rec() xf86CurrentScreen xf86ReallocatePciResources() xf86NewSerialNumber() xf86RandRSetInitialMode() fbCompositeSolidMask_nx1xn fbCompositeSolidMask_nx8888x0565C fbCompositeSolidMask_nx8888x8888C fbCompositeSolidMask_nx8x0565 fbCompositeSolidMask_nx8x0888 fbCompositeSolidMask_nx8x8888 fbCompositeSrc_0565x0565 fbCompositeSrc_8888x0565 fbCompositeSrc_8888x0888 fbCompositeSrc_8888x8888 fbCompositeSrcAdd_1000x1000 fbCompositeSrcAdd_8000x8000 fbCompositeSrcAdd_8888x8888 fbGeneration fbIn fbOver fbOver24 fbOverlayGeneration fbRasterizeEdges fbRestoreAreas fbSaveAreas composeFunctions VBEBuildVbeModeList() VBECalcVbeModeIndex() TIramdac3030CalculateMNPForClock() shadowBufPtr shadowFindBuf() miRRGetScreenInfo() RRSetScreenConfig() RRModePruneUnused() PixmanImageFromPicture() extern int miPointerGetMotionEvents() miClipPicture() miRasterizeTriangle() fbPush1toN() fbInitializeBackingStore() ddxBeforeReset() SetupSprite() InitSprite() DGADeliverEvent() SPECIAL CASES o defined as _X_INTERNAL xf86NewInputDevice() o defined as static fbGCPrivateKey fbOverlayScreenPrivateKey fbScreenPrivateKey fbWinPrivateKey o defined in libXfont.so, but declared in xorg/dixfont.h GetGlyphs() QueryGlyphExtents() QueryTextExtents() ParseGlyphCachingMode() InitGlyphCaching() SetGlyphCachingMode()
2008-11-28Make visible symbols required by xorg modules.Paulo Cesar Pereira de Andrade2-2/+2
This patch exports all symbols required by the compilable (in a x86 linux computer) xorg/driver/* modules. Still missing symbols worth mentioning are: sunleo miFindMaxBand no longer available intel (uxa/uxa-accel.c) fbShmPutImage no longer available (and should have been static) mga MGAGetClientPointer (should come from matrox's libhal) This is not a definitive "visibility" patch, as all it does is to export missing symbols, but the modules that current don't compile, may require more symbols once fixed, and third party drivers should also require more symbols exported. A "definitive" patch should export symbols defined in the sdk.
2008-10-03Partially reverts commit 505c216d030a8eb6e9fa757ecebed9597a850c88.Jeremy Huddleston1-0/+250
I don't know how the hell git-cherrypick messed that up to delete fbwindow.c
2008-10-03Added dep on applewmproto 1.1.0Jeremy Huddleston1-250/+0
(cherry picked from commit b350b066740a2e72585153e35478538cf1bca9ef)
2008-10-02Fix bad preprocessor lineAdam Jackson1-1/+1
2008-08-28Prepare for array-index based devPrivates.Tomas Carnecky2-4/+10
TODO: static indices can be made just an int; some indices can be combined.
2008-07-23Unifdef sgi.Adam Jackson1-2/+1
2008-07-17Dead code removalDaniel Stone4-14/+0
Remove a whole bunch of code that was never built, be it entire files or just dead ifdefs.
2008-06-24Check for __amd64__, not __x86_64__.Adam Jackson1-1/+1
Spiritual revert of 1fa4de80fcfc697b5e5879cc351fb3e9dbf6acbe. Intel's C compiler claims to be gcc-compatible; if they're not defining the same macros as gcc then that's their bug, not ours. Even if we were to do this aliasing we should do it once and for all in servermd.h.
2008-06-20Bug #12414: Create full-fledged pixmaps in fb24_32ReformatTile().Adam Jackson1-6/+4
... instead of creating pixmaps that only fb knows about, which will have no devPrivates for any other subsystem and thus cause havoc if (when) they leak out.
2008-06-13Fix "warning: passing argument 1 of 'pixman_fill' from incompatible pointer ↵Eamon Walsh1-1/+1
type".
2008-06-13Death to mfb.Adam Jackson1-3/+0
Anyone still interested in 1 or 4 bpp framebuffers, talk to fb.
2008-05-20fb: shut up two compiler warnings.Peter Hutterer2-1/+3
2008-04-19Removed fbpseudocolor.h from sdk_HEADERS.Tilman Sauerbeck1-1/+1
2008-04-19Remove fbpseudocolorAdam Jackson4-2279/+1
"An experimental pseudocolor emulation layer. Not fully completed, currently only works for 16bpp." That was almost four years ago. It still doesn't work, only one driver even attempts to use it, it contains an ad-hoc implementation of damage, and should really be done up in Composite now anyway.
2008-04-12Check for __x86_64__ when we check for __amd64__Matt Turner1-1/+1
It seems Intel C Compiler neglects to define __amd64__, __amd64, or amd64, but *does* define __x86_64__.
2008-02-22fbFillRegionTiled() is now dead code.Adam Jackson3-71/+0
Only ever called from the old PaintWindow* screen hooks, but those are gone now. As a pleasant side effect, fb loses its #ifdef PANORAMIX.
2007-12-13Merge branch 'master' into XACE-SELINUXEamon Walsh1-3/+0
Conflicts: Xext/EVI.c Xext/bigreq.c Xext/cup.c Xext/dpms.c Xext/fontcache.c Xext/mitmisc.c Xext/xcmisc.c Xext/xf86bigfont.c Xext/xtest.c configure.ac dbe/dbe.c hw/darwin/darwin.h hw/darwin/darwinEvents.c hw/darwin/iokit/xfIOKit.h hw/darwin/iokit/xfIOKitCursor.c hw/darwin/quartz/fullscreen/fullscreen.c hw/darwin/quartz/fullscreen/quartzCursor.c hw/darwin/quartz/quartz.c hw/darwin/quartz/quartzCommon.h hw/darwin/quartz/quartzCursor.c hw/darwin/quartz/xpr/dri.c hw/darwin/quartz/xpr/dristruct.h hw/darwin/quartz/xpr/xprCursor.c hw/darwin/quartz/xpr/xprFrame.c hw/xfree86/modes/xf86RandR12.c include/cursor.h miext/rootless/rootlessCommon.h miext/rootless/rootlessScreen.c miext/rootless/rootlessWindow.c render/picturestr.h Trying to pick up the pieces from the darwin churn here...
2007-12-02Clean up many #if 0.Adam Jackson1-3/+0
2007-11-20Remove some duplicate include statements.Eamon Walsh1-1/+0
2007-11-19Merge branch 'master' into XACE-SELINUXEamon Walsh3-4/+8
Conflicts: hw/xnest/Pixmap.c include/dix.h
2007-11-15Save pixmap allocation hints into the PixmapRec.Aaron Plattner3-4/+8
2007-11-05Merge branch 'master' into XACE-SELINUXEamon Walsh5-17/+19
Conflicts: dix/dispatch.c dix/property.c hw/xfree86/common/xf86VidMode.c include/xkbsrv.h render/glyph.c xkb/xkbActions.c
2007-11-05fb: Remove usage of allocaDaniel Stone2-13/+13
Replace with heap storage.
2007-11-04Add CreatePixmap allocation hints.Aaron Plattner4-4/+6
These hints allow an acceleration architecture to optimize allocation of certain types of pixmaps, such as pixmaps that will serve as backing pixmaps for redirected windows.
2007-10-17Merge branch 'master' into XACE-SELINUXEamon Walsh2-4/+41
Conflicts: os/access.c
2007-10-02fbcmap_mi.c: add a missing apiDodji Seketeli1-0/+8
* fb/fbcmap_mi.c: (fbSetVisualTypesAndMasks): added this entry point that was missing. This is useful so that servers using this entry point can use fbcmap_mi.c, and be obliged to stick to fbcmap.c. Note that fbcmap.c does implement this entry point. Up to now, kdrive based server could not use fbcmap_mi.c because this entry point was missing. The will allow Xephyr to properly use GL.
2007-09-27Add the FB_ACCESS_WRAPPER checksAlan Hourihane1-0/+10
2007-09-27Fix bug #12286Alan Hourihane1-4/+23
2007-09-19Merge branch 'master' into XACE-SELINUXEamon Walsh7-146/+0
Conflicts: afb/afbpntwin.c afb/afbscrinit.c afb/afbwindow.c cfb/cfb.h cfb/cfballpriv.c cfb/cfbscrinit.c cfb/cfbwindow.c configure.ac fb/wfbrename.h hw/xfree86/xf4bpp/ppcIO.c hw/xfree86/xf4bpp/ppcPntWin.c hw/xfree86/xf4bpp/ppcWindow.c hw/xfree86/xf8_32bpp/cfbscrinit.c mfb/mfb.h mfb/mfbpntwin.c mfb/mfbscrinit.c mfb/mfbwindow.c mi/miexpose.c Note: conflicts caused by devPrivates rework vs. paintwindow changes.
2007-09-13Remove the PaintWindow optimization.Eric Anholt7-146/+0
This was an attempt to avoid scratch gc creation and validation for paintwin because that was expensive. This is not the case in current servers, and the danger of failure to implement it correctly (as seen in all previous implementations) is high enough to justify removing it. No performance difference detected with x11perf -create -move -resize -circulate on Xvfb. Leave the screen hooks for PaintWindow* in for now to avoid ABI change.