1. 01 Apr, 2014 1 commit
    • Kristian Høgsberg's avatar
      composite: Add exception mechanism for implicit redirection policy · 4ba7b594
      Kristian Høgsberg authored
      
      
      Normally composite will decide to add implicit redirection when a
      window with an alternate visual is a parent of a window with a regular
      visual or vice versa.  This uses extra pixmap memory and incurs an extra
      copy.  This exception mechanism provides a way for a DDX to override this
      if the DDX knows that its acceleration architecture will render correctly.
      
      The relevant case is that of an RGB window reparented into a ARGB parent
      frame window.  If the DDX knows that the acceleration architecture in use
      will pad the alpha channel to opaque when rendering to the RGB window,
      the implicit redirection can be avoided.
      
      This patch adds a new composite function:
      
        CompositeRegisterImplicitRedirectionException()
      
      which lets a DDX register a pair of parent and child window visuals, that
      will not be implicitly redirected even if the normal policy would have
      made that choice.
      Signed-off-by: Kristian H. Kristensen's avatarKristian Høgsberg <krh@bitplanet.net>
      Reviewed-by: Keith Packard's avatarKeith Packard <keithp@keithp.com>
      4ba7b594
  2. 12 Jan, 2014 1 commit
  3. 09 Dec, 2013 2 commits
  4. 05 Jun, 2012 1 commit
  5. 21 Mar, 2012 1 commit
    • Keith Packard's avatar
      Introduce a consistent coding style · 9838b703
      Keith Packard authored
      
      
      This is strictly the application of the script 'x-indent-all.sh'
      from util/modular. Compared to the patch that Daniel posted in
      January, I've added a few indent flags:
      
      	-bap
      	-psl
      	-T PrivatePtr
      	-T pmWait
      	-T _XFUNCPROTOBEGIN
      	-T _XFUNCPROTOEND
      	-T _X_EXPORT
      
      The typedefs were needed to make the output of sdksyms.sh match the
      previous output, otherwise, the code is formatted badly enough that
      sdksyms.sh generates incorrect output.
      
      The generated code was compared with the previous version and found to
      be essentially identical -- "assert" line numbers and BUILD_TIME were
      the only differences found.
      
      The comparison was done with this script:
      
      dir1=$1
      dir2=$2
      
      for dir in $dir1 $dir2; do
      	(cd $dir && find . -name '*.o' | while read file; do
      		dir=`dirname $file`
      		base=`basename $file .o`
      		dump=$dir/$base.dump
      		objdump -d $file > $dump
      	done)
      done
      
      find $dir1 -name '*.dump' | while read dump; do
      	otherdump=`echo $dump | sed "s;$dir1;$dir2;"`
      	diff -u $dump $otherdump
      done
      Signed-off-by: Keith Packard's avatarKeith Packard <keithp@keithp.com>
      Acked-by: Daniel Stone's avatarDaniel Stone <daniel@fooishbar.org>
      Acked-by: Alan Coopersmith's avatarAlan Coopersmith <alan.coopersmith@oracle.com>
      9838b703
  6. 05 Jan, 2011 3 commits
  7. 31 Dec, 2010 2 commits
  8. 07 Dec, 2010 1 commit
  9. 22 Jun, 2010 1 commit
  10. 06 Jun, 2010 1 commit
  11. 04 Jun, 2010 1 commit
    • Dave Airlie's avatar
      composite: use config notify hook to do pixmap resize. · 959a1eaf
      Dave Airlie authored
      
      
      Since reallocating the backing pixmap can fail, we need to try and do
      it before any other side effects of reconfiguring the window happen.
      
      This changes the ConfigNotify hook to return status, and moves the
      composite window reconfiguration wrappers to ConfigNotify. They all
      basically did the same thing, so we can drop the MoveWindow,
      ResizeWindow, ChangeBorderWidth wrappers, and allow ConfigNotify to do
      all the work. If reallocation fails we fail before we send any
      confiureNotify events, or enter the area we can't recover from.
      
      The only place we now enforce 32k limits are in EXA/UXA/fb, so drivers
      that don't use this should probably deal with it in their pixmap
      allocate if they don't already.
      
      This also breaks ABI, so we need an alternate fix for older servers,
      working on the X server makes me realise why I'm a kernel hacker.
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      Reviewed-by: Keith Packard's avatarKeith Packard <keithp@keithp.com>
      Signed-off-by: Keith Packard's avatarKeith Packard <keithp@keithp.com>
      959a1eaf
  12. 03 Jun, 2010 1 commit
    • Jamey Sharp's avatar
      Move each screen's root-window pointer into ScreenRec. · e7fae9ec
      Jamey Sharp authored
      
      
      Many references to the WindowTable array already had the corresponding
      screen pointer handy, which meant they usually looked like
      "WindowTable[pScreen->myNum]". Adding a field to ScreenRec instead of
      keeping this information in a parallel array simplifies those
      expressions, and eliminates a MAXSCREENS-sized array.
      
      Since dix uses this data, a screen private entry isn't appropriate.
      
      xf86-video-dummy currently uses WindowTable, so it needs to be updated
      to reflect this change.
      Signed-off-by: Jamey Sharp's avatarJamey Sharp <jamey@minilop.net>
      Reviewed-by: default avatarTiago Vignatti <tiago.vignatti@nokia.com>
      Tested-by: Tiago Vignatti <tiago.vignatti@nokia.com> (i686 GNU/Linux)
      e7fae9ec
  13. 12 May, 2010 1 commit
  14. 17 Dec, 2009 1 commit
  15. 09 Oct, 2009 1 commit
  16. 30 Sep, 2009 1 commit
  17. 04 Aug, 2009 1 commit
  18. 15 May, 2009 1 commit
  19. 27 Apr, 2009 1 commit
  20. 14 Apr, 2009 1 commit
  21. 03 Dec, 2008 1 commit
    • Paulo Cesar Pereira de Andrade's avatar
      Rework symbol visibility for easier maintenance · 49f77fff
      Paulo Cesar Pereira de Andrade authored
        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).
      49f77fff
  22. 18 Sep, 2008 1 commit
  23. 28 Aug, 2008 1 commit
  24. 05 May, 2008 1 commit
  25. 13 Sep, 2007 1 commit
    • Emma Anholt's avatar
      Remove the PaintWindow optimization. · e4d11e58
      Emma Anholt authored
      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.
      e4d11e58
  26. 28 Aug, 2007 1 commit
  27. 25 Aug, 2007 1 commit
    • Adam Jackson's avatar
      Implement core protocol backing store exclusively in terms of Composite. · ae7f71a8
      Adam Jackson authored
      Composite's automatic redirection is a more general mechanism than the
      ad-hoc BS machinery, so it's much prettier to implement the one in terms
      of the other.  Composite now wraps ChangeWindowAttributes and activates
      automatic redirection for windows with backing store requested.  The old
      backing store infrastructure is completely gutted: ABI-visible structures
      retain the function pointers, but they never get called, and all the
      open-coded conditionals throughout the DIX layer to implement BS are gone.
      
      Note that this is still not a strictly complete implementation of backing
      store, since Composite will throw the bits away on unmap and therefore
      WhenMapped and Always hints are equivalent.
      ae7f71a8
  28. 31 Jul, 2007 1 commit
  29. 18 Jul, 2007 1 commit
    • Adam Jackson's avatar
      Refactor how Composite adds visuals to the screen. · aed65693
      Adam Jackson authored
      Besides being slightly simpler to read, it's now trivial to add a depth-16
      visual to a depth-24 screen just by adding a line for it in the alternate
      visual list.  Visuals for indexed depths are slightly tricky still.
      aed65693
  30. 29 Jun, 2007 1 commit
  31. 25 Mar, 2007 1 commit
  32. 09 Aug, 2006 1 commit
  33. 29 Mar, 2006 1 commit
  34. 13 Mar, 2006 1 commit
  35. 03 Jul, 2005 2 commits