Commit Graph

3805 Commits

Author SHA1 Message Date
Jeremy Huddleston
ecaaf0462d XQuartz: unsetenv(DISPLAY) if we're not org.x.X11
Also some prefix related fixes.
(cherry picked from commit fd459e9658)
2008-12-10 15:07:26 -08:00
Jeremy Huddleston
ea94995982 XQuartz: Removed some debug spew
(cherry picked from commit 370dcf11b3)
2008-12-10 15:07:15 -08:00
Paulo Cesar Pereira de Andrade
aa71ac1dd4 Add dependency tracking to sdksyms.c and export composite wrapper.
Thanks to David Miller for noticing a make problem with sdksyms.c
not being regenerated when sdksyms.sh is updated. This is not yet the
best solution; automake generates dependency for sdksyms.o, but the
build really should also regenerate sdksyms.c when sdksyms.o needs to
be regenerated.
  Export the symbols in miext/cw/cw.h. These symbols are in libxaa, and
at least the nvidia driver uses them. Maybe cw.h should be installed
in the sdk.
2008-12-10 00:36:41 -02:00
Paulo Cesar Pereira de Andrade
7c8720c143 Correct wrong symbol reference on sparc.
The awk script was incorrectly referencing the struct name, and
not the struct variable.
  Also added some comments to sdksyms.sh, for the reason it generates
the "symbol table" and add a message to the generated file, telling
is was automatically generated.
2008-12-08 22:11:50 -02:00
Benjamin Close
8c1dd40a04 Don't use gnu specific extensions to awk when builing symbols
Traditional posix awk doesn't know about \W and whilst we check that
awk exists in configure.ac we don't check which awk we are using.
This corrects symbol generation for posix only awk.
2008-12-08 14:49:38 +10:30
Peter Hutterer
39db182b63 xfree86: init EQ before trying to initialise the devices (#18890)
The kbd driver may send events during device initialisation, and these events
need the EQ set up already.

X.Org Bug 18890 <http://bugs.freedesktop.org/show_bug.cgi?id=18890>

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2008-12-08 13:46:12 +10:00
Peter Hutterer
13de7511b1 xfree86: Only use the evdev ruleset on linux.
As suggested by Julien Cristau

This is an follow-up to
commit 9c5dd7337f
Author: Peter Hutterer <peter.hutterer@redhat.com>
Date:   Wed Dec 3 14:24:25 2008 +1000

    Let the DDX decide on the XkbRulesDefaults.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Acked-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
2008-12-08 12:05:48 +10:00
Peter Hutterer
8e32791349 xfree86: fix compiler warning (use of uninitialized variable)
drv and idev are only set for SDs, but are only dereferenced for SDs too, so
initializing them to NULL is safe.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-12-08 12:05:46 +10:00
Matthieu Herrb
22d4ddcc3d Merge branch 'master' of git://anongit.freedesktop.org/git/xorg/xserver 2008-12-07 23:56:15 +01:00
Matthieu Herrb
d2dad384f5 Fix build in separate build directory. 2008-12-07 23:52:26 +01:00
Paulo Cesar Pereira de Andrade
5a8068b390 Convert libx86emu.a to a "libtool convenience library". 2008-12-07 18:31:32 -02:00
Paulo Cesar Pereira de Andrade
ed4a172740 Export some symbols from libxf86config when installing it.
These are private symbols, but used by the X Server.
  The newly exported symbols were not added to the sdk headers.
  Optionally, libxf86config could be compiled without hidden symbols
when being installed.
  Thanks to Maarten Maathuis for noticing the problem.
2008-12-07 14:59:25 -02:00
Paulo Cesar Pereira de Andrade
bf4c29ab48 Correct xf86acpiDisableFlag symbol.
It is declared as
<hash>ifdef HAVE_ACPI
Bool xf86acpiDisableFlag = FALSE;
<hash>endif
in hw/xfree86/common/xf86Globals.c
but not protected by the ifdef in the sdk header xf86Priv.h, what
caused a build failure in the tinderbox, due to the address of the
symbol being taken (to ensure it is available) in sdksyms.c.
2008-12-07 05:12:41 -02:00
Paulo Cesar Pereira de Andrade
b1dac41fb3 Use libtool convenience libraries and better "symbol" table.
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-07 02:22:19 -02:00
Jeremy Huddleston
ccd2c668c1 XQuartz: darwinPointer reports the actual pixel position now rather than a relative position
(cherry picked from commit a41e7f75de)
2008-12-06 14:12:27 -08:00
Jeremy Huddleston
7ebd0c7e8d XQuartz: Corrected name/command labels in the customization widget
(cherry picked from commit a689c23f17)
2008-12-06 14:12:27 -08:00
Alan Coopersmith
027ff97a13 Make sure _X_EXPORT is defined in edid.h
Fixes build error in xf86-video-intel utilities
2008-12-05 12:01:31 -08:00
Paulo Cesar Pereira de Andrade
466b0fca9b Add back a simplified version of the loader static address tables.
If not taking the symbol addresses, linkage will break badly, as not
all symbols will be present, and it also requires changing library order,
and/or making some changes like the "libosandcommon".

  This table should be modified to be generated automatically, as
it is required to "fool" the compiler/loader into adding all required
symbols to the X Server.
2008-12-05 17:01:09 -02:00
Paulo Cesar Pereira de Andrade
44c8c3cf7d Remove static symbol address tables in hw/xfree86/loader/*sym.{c,h}
Those tables were once used to decide what symbols are visible to
modules, but they were outdated. The only real usage was that, since
it was taking the address of symbols, linkage should fail if the
symbols were not available.
  Now the proper way to make symbols available to modules should
be to use the _X_EXPORT macro, or not compile with hidden symbols,
so that all symbols would be available.
  All symbols in the tables were revised to ensure they are exported,
and only symbols that were not exported are ClientSleepUntil() and
DuplicateModule(), that were not in the sdk for quite some time
already, and should not have any users outside of the X Server
(and/or builtin modules).
2008-12-05 04:26:57 -02:00
Paulo Cesar Pereira de Andrade
091a50d126 Move _X_EXPORT attribute to header file.
The attribute should be set on header files to make it easier to
manage what symbols are available to modules.
  _X_EXPORT should be used in sources only for special cases, like
symbols that must be visible by non video/input driver/modules but
should not be "advertised" in the sdk.
2008-12-04 18:23:25 -02:00
Matthias Hopf
e5ab9e6662 randr: Allow panning to be disabled per axis 2008-12-04 18:16:43 +01:00
Matthias Hopf
bad118ace6 randr: Rework panning area verification 2008-12-04 18:16:43 +01:00
Matthias Hopf
219c26ce0c randr: Don't change panning parameters if verification fails. 2008-12-04 18:16:43 +01:00
Matthias Hopf
18a8bac1a1 randr: Rename pan() to set_origin(), and xf86CrtcPan() to xf86CrtcSetOrigin() 2008-12-04 18:16:43 +01:00
Matthias Hopf
b929d721ef randr: Panning support 2008-12-04 18:16:43 +01:00
Matthias Hopf
834cbc16f3 randr: Crtc interface update for panning support. 2008-12-04 18:16:42 +01:00
Matthias Hopf
a475eb9fee randr: Weird enough, crtc->version was never set upon creation. Fix that. 2008-12-04 18:16:42 +01:00
Jeremy Huddleston
fa4f2527a5 XQuartz: pbproxy: Simplify linking
(cherry picked from commit 909cc5c4dc)
2008-12-03 21:59:23 -08:00
Paulo Cesar Pereira de Andrade
5dbe70dd52 Remove dummylib.
Only cvt required it, and only used XNF{,c}alloc
via xnf{,c}alloc macros.
  Based on patch by Eric Anholt.
2008-12-04 02:42:28 -02:00
Paulo Cesar Pereira de Andrade
75b02dd0be Include <X11/Xfuncproto.h> if _X_EXPORT is not defined. 2008-12-03 14:46:30 -02:00
Timo Aaltonen
dd128ddcdc If AEI is on, disable 'vmmouse' in addition to 'kbd' and 'mouse'.
Signed-off-by: Timo Aaltonen <tjaalton@cc.hut.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-12-03 18:44:43 +02:00
Paulo Cesar Pereira de Andrade
49f77fff14 Rework symbol visibility for easier maintenance
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-03 05:43:34 -02:00
Stuart Bennett
0b8f8b24f7 xf86Cursors: xf86_reload_cursors shouldn't unconditionally show hwcursor (#14820)
Also, no need to call ShowCursor when SetCursorPosition already does it
Based on a previous patch by Maarten Maathuis

Signed-off-by: Keith Packard <keithp@keithp.com>
2008-12-02 22:54:18 -08:00
Peter Hutterer
9c5dd7337f Let the DDX decide on the XkbRulesDefaults.
Rather than assuming rules in the CoreKeyboardProc, init the default rules in
InitCoreDevices, then re-use them later.

In the xfree86 DDX, set the rules to "base" or "evdev", depending on whether
we'll load kbd or evdev.

If we create a new MD, use pc105,us as default and re-use the rules file used
previously.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-12-03 16:10:40 +10:00
Alan Coopersmith
4a61ad427c Update sample xorg.conf file 2008-12-02 14:35:45 -08:00
Alan Coopersmith
c1db925d10 Add atKeynames.h to libdmxinput_a_SOURCES so it's included in tarballs
Reported by geearu in #xorg-devel
2008-12-02 14:32:48 -08:00
Alan Coopersmith
8561514574 Don't need to check uid/euid for every commandline argument
Check uid/euid only when handling the arguments that are restricted
to root/non-setuid users
2008-12-02 13:35:03 -08:00
Alan Coopersmith
6de6ffff35 Remove unused config flags from FlagValues & FlagOptions
FLAG_DISABLEMODINDEV, FLAG_MODINDEVALLOWNONLOCAL, & FLAG_HANDLE_SPECIAL_KEYS
2008-12-02 13:35:03 -08:00
Peter Hutterer
bb072019fa xfree86: don't render SW cursors for devices attached to VCP (#16805)
When leaving 3D games such as quake3 or sauerbraten, a cursor may stay on the
screen. This is caused by one run of SW rendering for the SD, even though the
SD was attached to the VCP and thus has HW rendering capabilities.

Check for the SD's attachment (like in all other functions) before deciding on
SW or HW rendering.

X.Org Bug 16805 <http://bugs.freedesktop.org/show_bug.cgi?id=16805>

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-12-02 13:24:39 -08:00
Alan Coopersmith
3a690598cf Remove unused HandleSpecialKeys config option
Was only used by "keyboard" driver - the last place the value was checked
was in xf86PostKbdEvent, which was removed in commit
60ea7b51fe
2008-12-02 13:09:22 -08:00
Peter Hutterer
d507f60689 xfree86: don't FatalError on "too many input devices".
Just ignore devices after MAXDEVICES has been reached, but warn the user that
the devices are ignored.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-12-02 15:50:38 +10:00
Paulo Cesar Pereira de Andrade
180bad8477 Add visibility flags to XSERVER_CFLAGS.
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-12-02 02:50:45 -02:00
Alan Coopersmith
8c560422b4 More man page updates for 1.6 release for Xorg, xorg.conf & exa man pages.
- Remove remaining references to XFree86-Misc options AllowNonLocalModInDev
  and DisableModInDev.
- Remove remaining references to grab-breaking keys & associated options.
- Update description of Ctrl-Alt-Backspace to new -retro/DontZap defaults.
- Add description of new options -modalias and -showopts.
- Update list of modules loaded by default.
- Update input driver references from keyboard to evdev & kbd.
- Update list of driver man pages to match xf86-*-* drivers with man pages.
- Add See Also section to exa man page.

and various formatting/typo/etc. fixes.

The Xorg/xorg.conf sections on input device selection could use further
updates to better match the current state of HAL-enabled configuration.
2008-12-01 20:02:34 -08:00
Alan Coopersmith
6a1850b8c6 Correct warning for unknown GlxVisuals option in conf file 2008-12-01 19:58:14 -08:00
Kristian Høgsberg
ad01e86b5c Drop unused DRI2 vblank infrastructure.
For this first iteration of DRI2 we don't have any vsync functionality
in place yet, so back out the support in DRI2 and the protocol for now.
2008-12-01 21:34:23 -05:00
Alan Coopersmith
24c562f04b Update See Also lists in Xorg & xorg.conf man pages
Remove xorgconfig & xorgcfg
Update driver lists:
	- Remove vga
	- i810->intel
	- via->openchrome
2008-12-01 16:28:45 -08:00
Alan Coopersmith
bd147e6f4b Remove hack to only load font modules if magic strings appear in font path 2008-12-01 16:08:55 -08:00
Jay Cotton
5f3f14179e Sun bug 6618220: Xorg server core dump in xf86RandRModeRefresh(NULL)
<http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6618220>
2008-12-01 16:06:09 -08:00
Kristian Høgsberg
09df7cc5ad Avoid dereferencing NULL pScreen in xf86CrtcSetModeTransform().
We can get there during PreInit as we set a mode for load detection.
At that time there's no pScreen anywhere, so just skip the optimization
then.
2008-12-01 12:41:10 -05:00
Paulo Cesar Pereira de Andrade
16b11cd03d Correct static symbol XkmReadTOC and first pass on compile warning fixes.
The warnings corrected were only the ones that should correct
real problems. The most common one is 64 bit integers as
"printf %l" arguments.
  Note that there is a patch related to this at:
http://bugs.freedesktop.org/show_bug.cgi?id=18204
2008-11-30 02:59:34 -02:00
Paulo Cesar Pereira de Andrade
fb22d4d928 Remove declarations of symbols that are never defined.
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-30 01:33:20 -02:00
Paulo Cesar Pereira de Andrade
d6cbd4511e Export symbols defined in the sdk.
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-29 23:56:06 -02:00
Maarten Maathuis
ffb484f7ef randr: Avoid needlessly creating a shadow framebuffer.
- pScreen->width and height were zero, so it didn't "fit" the screen.
2008-11-29 14:30:55 +01:00
George Staplin
01eaebdc98 XQuartz: GL: Make various changes to makeFormat, so that it works better. Now glxgears looks normal with the old libGL.
Add various GLX extensions to the list of supported extensions.

Reformat the oddly formatted code in some areas.

Use xalloc and xfree instead of malloc and free.
(cherry picked from commit 755f53eb40)
2008-11-28 13:18:27 -08:00
Jeremy Huddleston
3d527b91b4 XQuartz: Added option to enable/disable test extensions
defaults write org.x.X11 enable_test_extensions -boolean true
(cherry picked from commit fd4710aff3)
(cherry picked from commit 635019ad18)
2008-11-28 13:02:54 -08:00
Jeremy Huddleston
71d3df7cc3 XQuartz: Avoid some warning messages being spewed to system.log by AppKit
(cherry picked from commit 780eff230c)
2008-11-28 13:02:52 -08:00
Jeremy Huddleston
a9796c7bc4 XQuarz: Setup our PATH and PWD earlier, so our initial client benefits from it as well...
(cherry picked from commit cbae2b4473)
2008-11-28 13:02:41 -08:00
Jeremy Huddleston
ef4179f43a XQuartz: Fix dead-acute on Greek keyboards
(cherry picked from commit 807f2ec35c)
2008-11-28 13:02:25 -08:00
Jeremy Huddleston
800f5c681b XQuartz: Fix Czech keyboard dead-acute
(cherry picked from commit 771df2786b)
2008-11-28 13:02:12 -08:00
Jeremy Huddleston
ac57bb36d5 XQuartz: Fix an uninitialized keyboard_type on Tiger
(cherry picked from commit 27b1a5eb34)
2008-11-28 13:01:59 -08:00
Paulo Cesar Pereira de Andrade
31285d063e Make visible symbols required by xorg modules.
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-11-28 01:55:11 -02:00
Julien Cristau
6f18ea7e65 Typo fix 2008-11-27 14:45:33 +01:00
Julien Cristau
efefc03f9b Add missing include
../../../../hw/xfree86/xaa/xaaTables.c:9:14: warning: symbol 'byte_expand3' was not declared. Should it be static?
../../../../hw/xfree86/xaa/xaaTables.c:53:14: warning: symbol 'byte_reversed_expand3' was not declared. Should it be static?
2008-11-27 14:45:32 +01:00
Paulo Cesar Pereira de Andrade
74bc792e18 Export symbols required by the vesa and fbdev drivers.
This is a minimal set of patches, to have an usable X Server when
compiling it with symbols hidden by default.
2008-11-27 05:34:14 -02:00
Paulo Cesar Pereira de Andrade
87a7fb7438 Rework code using return value of LoaderSymbol as a function pointer.
The patch removes all macros in the format
  define xf86_sym  ((type (*)(argument-list))LoaderSymbol("sym"))
creates a new macro in the format
  define xf86_sym  sym
and ensures "sym" is a "visible" symbol.
  The patch doesn't add or remove features, and is source and binary
compatible with previous shared objects (with the difference that it
requires the dlloader).
  These symbols are a special case, as, due to the fact that LoaderSymbol
was being used to reference them, they are not easily found by "automated"
tools that check for missing symbols. And now it also have the benefit
that the compiler/loader "knows what is going on".
2008-11-27 00:12:59 -02:00
Keith Packard
4715f079b9 Merge commit 'origin/master' 2008-11-25 22:19:08 -08:00
Keith Packard
9ffc671939 Move matrix operations from X server to pixman 0.13.2
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>
2008-11-25 22:17:58 -08:00
Jeremy Uejio
416685c295 Refix Sun bug #6685465: Xephyr uses wrong or bad colortable in 8-bit mode
<http://bugs.opensolaris.org/view_bug.do?bug_id=6685465>

This is a refix of the previous fix for CR 6685465.  In the first fix
I was shifting the colors to match the mask by the bits_per_rgb amount
in the visual structure.  That field has nothing to do with the # of
bits to shift by.  I should just instead shift the bits to match the mask.
2008-11-25 16:31:11 -08:00
Alan Coopersmith
d5f9a131a2 Fix const-mismatch warnings for DisplayModePtr's
Includes fixes for:
"xf86Config.c", line 2434: warning: argument #1 is incompatible with prototype:
	prototype: pointer to struct _DisplayModeRec: "xf86.h", line 351
	argument : pointer to const struct _DisplayModeRec

"xf86EdidModes.c", line 312: warning: argument #1 is incompatible with prototype:
	prototype: pointer to struct _DisplayModeRec: "../../../hw/xfree86/common/xf86.h", line 351
	argument : pointer to const struct _DisplayModeRec

"xf86EdidModes.c", line 438: warning: assignment type mismatch:
	pointer to struct _DisplayModeRec "=" pointer to const struct _DisplayModeRec

"xf86Modes.c", line 701: warning: assignment type mismatch:
	pointer to struct _DisplayModeRec "=" pointer to const struct _DisplayModeRec
2008-11-25 15:51:17 -08:00
Adam Jackson
e5eaea599a Warning fix
xf86info.c:11: warning: initialization makes integer from pointer
without a cast
2008-11-25 15:05:19 -05:00
Adam Jackson
37072500f7 Warning fix
helper_exec.c: In function ‘port_rep_inb’:
helper_exec.c:219: warning: implicit declaration of function
‘DEBUG_IO_TRACE’
helper_exec.c:219: warning: nested extern declaration of
‘DEBUG_IO_TRACE’
2008-11-25 15:05:19 -05:00
Adam Jackson
09ea671cbf Warning fix
lnx_bell.c:37: warning: no previous prototype for ‘xf86OSRingBell’
2008-11-25 15:05:18 -05:00
Adam Jackson
a9853c7d33 Warning fix
Pixmap.c: In function ‘xnestPixmapToRegion’:
Pixmap.c:93: warning: ‘Box.x1’ may be used uninitialized in this
function
2008-11-25 15:05:18 -05:00
Adam Jackson
81eafe9f93 Warning fix.
vbe.c: In function ‘VBEReadPanelID’:
vbe.c:1145: warning: return from incompatible pointer type
2008-11-25 15:05:18 -05:00
Adam Jackson
09bfb25e03 Remove unused XAAAvailableOptions 2008-11-25 15:05:18 -05:00
Adam Jackson
8b9253f638 Code motion: subsume xf86DoProbe.c into xf86Init.c 2008-11-25 15:05:17 -05:00
Adam Jackson
fbabb1c5c2 Warning fix.
In file included from l3-xaaStipple.c:4:
./xaaStipple.c:35: warning: no previous prototype for
‘XAAGetStippleScanlineFunc3LSBFirst’

etc
2008-11-25 15:05:17 -05:00
Adam Jackson
cbaca6ec66 Remove dead FreeModuleDesc. 2008-11-25 15:05:17 -05:00
Jeremy Huddleston
eb474adf98 XQuartz: Simplify the xquartz_resetenv_display path
(cherry picked from commit d2e0624dd3)
2008-11-25 11:53:12 -08:00
Jeremy Huddleston
94df1ab7f0 XQuartz: Force X11Controller to reset a broken DISPLAY envvar.
(cherry picked from commit f1a52b5b5a)
2008-11-25 11:53:06 -08:00
Jeremy Huddleston
0b314c50a2 XQuartz: Removed hardcoded org.x.X11 from MachIPC as well
(cherry picked from commit b4add7826d)
2008-11-25 11:52:59 -08:00
Jeremy Huddleston
065d2afb0c XQuartz: Add fallback for xpbproxy's display for Tiger or no-launchd-Leopard
(cherry picked from commit 7a8c666594)
2008-11-25 00:54:52 -08:00
Jeremy Huddleston
13df49dca2 XQuartz: Use the environment to pass the bundle's prefs domain on to xinit/quartz-wm for Tiger or no-launchd-LEOPARD
(cherry picked from commit fbf4b0d33f)
2008-11-25 00:54:47 -08:00
Jeremy Huddleston
40187f782b XQuartz: Dead code removal
(cherry picked from commit eeb323612e)
2008-11-25 00:54:42 -08:00
Jeremy Huddleston
b55cad4569 XQuartz: Don't hardcode values of org.x.X11 for the preferences domain
(cherry picked from commit 3a500d9247)
2008-11-25 00:54:37 -08:00
Jeremy Huddleston
d508a3dcca XQuartz: More dead code removal
(cherry picked from commit dcb0f6a2e6)
2008-11-25 00:54:32 -08:00
Jeremy Huddleston
41fbdf72f2 XQuartz: Disable some error spew on Tiger (where it wouldn't be an error)
(cherry picked from commit 73ec6d3dfe)
2008-11-25 00:54:27 -08:00
Jeremy Huddleston
09c3f6e04c XQuartz: Dead code removal
(cherry picked from commit 46c077d9b4)
2008-11-25 00:54:22 -08:00
Jeremy Huddleston
ab12c75162 XQuartz: More Tiger cleanup: bootstrap_strerror
(cherry picked from commit 37f535aff3)
2008-11-25 00:54:17 -08:00
Adam Jackson
208f091bfc Remove xf86IODelay 2008-11-24 23:40:06 -05:00
Adam Jackson
47478aa10a Remove xf86{En,Dis}ableInterrupts entirely 2008-11-24 23:40:06 -05:00
Adam Jackson
c7680befe5 Remove the remnants of Jensen support
As being an EISA-only machine, and as ISA support is gone now...
2008-11-24 23:40:06 -05:00
Adam Jackson
df14682a31 Bus: Remove ISA support.
No, really.  PCI is old enough to drive now.  If you want this, get the kernel
to expose a framebuffer device.
2008-11-24 23:40:06 -05:00
Adam Jackson
a8bcab2d3b Bus: Remove yet more unused overlap processing. 2008-11-24 23:40:06 -05:00
Adam Jackson
994b7c034f Bus: Don't pretend to care about IRQs, DMA, or PCI config space 2008-11-24 23:40:05 -05:00
Adam Jackson
eb5ae45127 Bus: Simplify a failure case (that pretty much never happens) 2008-11-24 23:40:05 -05:00
Adam Jackson
ee8b5cf94c Bus: Trust the kernel when registering driver resources
... everywhere, not just (linux && (ia64 || alpha)).
2008-11-24 23:40:05 -05:00
Adam Jackson
8397df8945 Remove unused MIN macro 2008-11-24 23:40:05 -05:00
Adam Jackson
c251c0baae Bus: remove special handling for init-only resources
This isn't used by any driver, nor has it ever been as far as I can
tell.
2008-11-24 23:40:04 -05:00
Adam Jackson
3e5281af17 PCI: Unexport xf86scanpci 2008-11-24 23:40:04 -05:00
Adam Jackson
6b198daa46 Bus: remove useless isaConvertRange2Host 2008-11-24 23:40:04 -05:00
Adam Jackson
a96db74c2a Bus: Don't try to find an ISA bus just for fun. 2008-11-24 23:40:04 -05:00
Adam Jackson
b21311a99d Bus: Remove unused RemoveOverlaps 2008-11-24 23:40:03 -05:00
Adam Jackson
41be6b3f0d Bus: Remove the notion of estimated resources. 2008-11-24 23:40:03 -05:00
Adam Jackson
095ba14355 Bus: remove the "reducer"
This code effectively didn't do anything anymore.
2008-11-24 23:40:03 -05:00
Adam Jackson
4457e31710 PCI: Remove unused ia64 platform code. 2008-11-24 23:40:03 -05:00
Adam Jackson
86cfe0ee23 PCI: Simplify OS PCI function registration a bit. 2008-11-24 23:40:02 -05:00
Adam Jackson
2d427b9cb1 PCI: Remove config mechanism details.
pciaccess handles this for us now, no need to remember PC arcana.
2008-11-24 23:40:02 -05:00
Adam Jackson
5bb86bafd6 PCI: Remove non-pciaccess path for x86. 2008-11-24 23:40:02 -05:00
Adam Jackson
a67360e79f PCI: Always build domain support. 2008-11-24 23:40:02 -05:00
Adam Jackson
51e105ccc3 Remove xf86GetResourcesImplicitly 2008-11-24 23:40:02 -05:00
Alan Coopersmith
599a0f3f1e Fix typo in 5bf2c88d23
Amazing how these things hide until you see the diff come back from
the commit list.
2008-11-24 20:37:58 -08:00
Alan Coopersmith
5bf2c88d23 Simplify filename generation code for Xorg -configure 2008-11-24 20:34:46 -08:00
Alan Coopersmith
75784e1e53 Solaris: Make KDSETMODE failure non fatal, and retry it on interrupts 2008-11-24 20:32:20 -08:00
Keith Packard
c4b9ab6bf5 Handle transform failure when computing shadow damage area.
PictureTransformBounds can fail, when this happens, damage the entire screen
so that the shadow gets repainted correctly.
2008-11-24 13:24:41 -08:00
Keith Packard
7236fd9dd4 Be careful about copying transforms around; they have allocated memory. 2008-11-24 13:24:41 -08:00
Keith Packard
7e69e364d2 Fix rotated/reflected cursor positions.
Doing projective transforms required repositioning the cursor using the
hotspot, but that requires relocating the upper left corner in terms of said
hotspot.
2008-11-24 13:24:40 -08:00
Keith Packard
7c61db66a4 Create rrtransform.[ch]. Add RRTransform argument to RRCrtcNotify.
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.
2008-11-24 13:24:40 -08:00
Keith Packard
6fe9c15731 Allow drivers to set crtc transforms.
Track curent transform down in the mode setting code so that it may be set
separately from RandR.
2008-11-24 13:24:40 -08:00
Keith Packard
49db14e4ac Handle RandR transform matrices in floating point.
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.
2008-11-24 13:24:40 -08:00
Keith Packard
197aa78469 Report whether transforms are support from driver through extension to client
Add APIs to xf86RandR12 support and randr extension to record whether the
driver supports transforms, report that value in the RRGetCrtcTransform
reply.
2008-11-24 13:24:39 -08:00
Keith Packard
e86c34663e Clear shadow pixmaps before using them.
This eliminates some ugly flashing, as well as clearing the borders when the
shadow will not be completely painted.
2008-11-24 13:24:39 -08:00
Keith Packard
8fd82c88e3 Adjust transformed cursor position to account for hotspot 2008-11-24 13:24:38 -08:00
Keith Packard
eb222e6412 Actually use filter kernel size to expand transform redisplay box 2008-11-24 13:24:37 -08:00
Keith Packard
ee6326a6b8 Handle filter widths in xf86Rotate 2008-11-24 13:24:37 -08:00
Keith Packard
ddc8466137 Initialize and cleanup new filter fields in xf86Crtc. 2008-11-24 13:24:37 -08:00
Keith Packard
f50349e193 [RANDR] Support filters in CRTC transforms.
Create new RRTransform datatype to hold all of the transform related
information, use that in lots of places to pass filters around.
2008-11-24 13:24:36 -08:00
Keith Packard
e3d6f279d5 Wire up RandR CRTC transform protocol, bump server to RandR 1.3
This involved removing a pile of matrix code from the DDX,
as well as moving a bit of transform logic from DDX to DIX.
2008-11-24 13:24:36 -08:00
Keith Packard
e063162e80 Add projective transforms to RandR DIX/DDX API.
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.
2008-11-24 13:24:35 -08:00
Keith Packard
9c7ac47b87 Notify DRI when crtc regions change
Drivers that care about crtc positions on the screen to ensure that vblank
works correctly need to be notified when crtcs are changed.

Provide a hook in the mode setting code that is invoked whenever any
configuration is done to the screen.

Use this new hook in the DRI code so that DRI clients are notified and
receive updated information.

Signed-off-by: Keith Packard <keithp@keithp.com>
2008-11-24 13:24:35 -08:00
Peter Hutterer
554592cd70 DGA: silence compiler warning.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-24 11:50:57 +10:00
Peter Hutterer
0dbcbd35f6 xfree86: Split the working code of NIDR into new xf86NewInputDevice.
The xfree86 server previously hat NewInputDeviceRequest and InitInput, and
both basically did the same thing. Reduce NIDR to parameter checking and use
xf86NewInputDevice from both InitInput and NIDR to actually create the device.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2008-11-24 10:17:45 +10:00
Matthieu Herrb
387563b777 Merge branch 'master' of git+ssh://herrb@git.freedesktop.org/git/xorg/xserver 2008-11-23 13:15:46 +01:00
Matthieu Herrb
85f650c9b7 missing action in if statement. 2008-11-23 13:15:17 +01:00
Stefan Dirsch
f6e01fa1b8 Added '-showopts' option to print available driver options (#5564). 2008-11-23 11:16:03 +01:00
Jeremy Huddleston
8964b8d0ec XQuartz: More 1.6 server API updates 2008-11-22 14:23:23 -08:00
Jeremy Huddleston
ad0f232165 XQuartz: Fixed --disable-glx 2008-11-22 14:04:28 -08:00
Jeremy Huddleston
8e2287c220 XQuartz: Updated some code to use newer server API 2008-11-22 13:57:45 -08:00
George Staplin
6eb33bc0cb XQuartz: GL: Remove the inclusion of glcontextmodes.h.
Add some commentary about future directions needed for the GLX drawable
creation and destruction code.

Match xalloc with xfree.

I made some minor formatting improvements.
(cherry picked from commit b772d64fce)
2008-11-22 11:13:51 -08:00
George Staplin
429b4b20d5 XQuartz: GL: Add a branch to prevent a NULL DrawablePtr structure access.
In attach() check for pDraw being NULL, and also print an ErrorF message,
because we eventually want to track down why this is occuring.

It's unclear how this occurs, but as I noted in the 1.4 branch, I believe that
the DrawablePtr/struct _Drawable -> id is the member being accessed that causes
KERN_PROTECTION_FAILURE at 0x0000000000000004

This passes my tests using: env LIBGL_ALWAYS_INDIRECT=1 ./sometest.

I fixed a warning: caused by initializing the screen->base.visuals with the
configs.  It is a ** not a *.  It seems that some other part of GLX will
initialize this for us.
(cherry picked from commit 17f6a261fc)
2008-11-22 11:13:46 -08:00
Matthieu Herrb
bc0c7075e2 Remove the old libusbhid copy from os-support/bsd.
This has been replaced by in-kernel support for USB mices several
years ago and hasn't been enabled in build since X.Org 6.8.
2008-11-22 19:12:23 +01:00
Jeremy Huddleston
76fcfc4801 XQuartz: GLX: sync up indirect.c to match George's updates in the xorg-server-1.5-apple branch 2008-11-21 20:25:55 -08:00
George Staplin
1a717779b6 XQuartz: GL: remove glcontextmodes.* from the Makefile.am. It has been replaced.
The new replacement is __GLXconfig.
(cherry picked from commit 3bed9b65c8)
2008-11-21 20:10:57 -08:00
Alan Coopersmith
dacad9ae0b Xephyr man page typo fixes.
Also trailing white space removal to clear git warnings.
2008-11-21 17:16:22 -08:00
Jeremy Huddleston
ca64b5949d XQuartz: Don't use LS to find X11.app on Tiger.
(cherry picked from commit e62107e552)
2008-11-21 11:55:49 -08:00
Jeremy Huddleston
393325f908 XQuartz: spewCallStack is noop on Tiger now...
(cherry picked from commit 56c469a68b)
2008-11-21 10:59:41 -08:00
Jeremy Huddleston
5d47a5d652 XQuartz: pbproxy: Added some typedefs for types not available on Tiger
(cherry picked from commit 0947aa7911)
2008-11-21 10:59:34 -08:00
Jeremy Huddleston
b262788401 XQuartz: More Tiger ifdefs
(cherry picked from commit 803509072f)
2008-11-21 10:59:26 -08:00
Jeremy Huddleston
5107444443 XQuartz: Resurrect the old audio path for Tiger
(cherry picked from commit a61a8d9047)
2008-11-21 10:59:17 -08:00
Jeremy Huddleston
d7ee76f9dd XQuartz: pbproxy: Push the pbproxy Xevent processing into its own thread
and just have the AppKit thread wake it up.
(cherry picked from commit 799715b8f3)
2008-11-21 10:59:10 -08:00
Egbert Eich
a9e20306fb int10: Do an mprotect(..,PROT_EXEC) on shmat()ed memory ranges.
When the linux kernel sets the NX bit vm86 segfaults when it tries to execute
code in memory that is not marked EXEC. Such code gets called whenever
we return from a VBIOS call to signal the calling program that the call
is actually finished and that we are not trapping for other reasons (like
IO accesses).
Use mprotect(2) to set these memory ranges PROT_EXEC.
2008-11-21 18:57:07 +01:00
Rémi Cardona
a54153e669 xfree86: don't reset Auto(Add|Enable)Devices, use defaults from xf86Globals
Without this, commit ace38fafb0 is useless
when HAL support is disabled.

Signed-off-by: Julien Cristau <jcristau@debian.org>
2008-11-21 18:55:07 +01:00
Matthieu Herrb
6a1b2fed7e Add a man page for Xephyr, with information from the README file. 2008-11-21 18:21:18 +01:00
Matthieu Herrb
10d472bf9d Support for BSD apm
XXX check amd64 pci init
2008-11-21 18:07:03 +01:00
Peter Hutterer
ace38fafb0 xfree86: without CONFIG_HAL, Auto{Add|Enable}Devices and AEI is false.
There's little chance that we'll get the input devices at runtime without HAL,
we might as well force the server to add mouse/kbd devices automatically -
just like in the olden days.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-21 08:48:38 +10:00
Jeremy Huddleston
c4ec71b405 XQuartz: pbproxy: nuke RCS Id, update header license/copyright
(cherry picked from commit 477c6968a8)
2008-11-19 10:58:15 -08:00
Jeremy Huddleston
42f330cf9e XQuartz: pbproxy: Remove thread-main.m
it got accidently added and isn't used.
(cherry picked from commit cb6ffce68a)
2008-11-19 10:58:06 -08:00
Alan Coopersmith
570835b9a8 Use bsd_pci stub routines on Solaris too, since we use pciaccess for real work
Depends on commit 70e18a3b6b to get
definition of xf86InitVidMem on Solaris.
2008-11-19 10:19:20 -08:00
Keith Packard
3932a84857 Xinput: use floats for ConstantDeceleration and AdaptiveDeceleration
These values need not be constrained to integer values.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2008-11-18 14:21:01 -05:00
Jeremy Huddleston
03f7a66a1a XQuartz: Don't use TIS on Tiger...
(cherry picked from commit be8ac84c15)
2008-11-15 19:52:52 -08:00
Jeremy Huddleston
e8112784e8 XQuartz: Integrated xpbproxy into the server.
Added a configure option called --enable-standalone-xpbproxy which is useful for deveoping xpbproxy.
The 'active' switch in preferences just disables the in-server xpbproxy (not this standalone).
(cherry picked from commit 4294493632)
2008-11-15 19:52:34 -08:00
Michel Dänzer
24928b85dc DRI2: Don't crash in DRI2ClipNotify when DRI2DrawablePtr is NULL. 2008-11-15 13:28:53 +01:00
Jeremy Huddleston
bc4f804cd8 XQuartz: Actually add glcontextmodes.[hc]
(cherry picked from commit 763195d338)
2008-11-14 15:13:59 -08:00
Ben Byer
aedafbea0e fix compilation on systems that don't have
XP_EVENT_SPACE_CHANGED defined
(cherry picked from commit 6e833e41e2)
2008-11-14 15:11:42 -08:00
Jeremy Huddleston
b078936571 XQuartz: Initial work on readding GLX to the 1.5 server
(cherry picked from commit a186cab6ae)
2008-11-14 15:10:32 -08:00
Jeremy Huddleston
1d7049f8fd Xquartz: Force sending mouse clicks to AppKit if we're over the menu bar
(cherry picked from commit 7dff93ec1a)
2008-11-14 11:10:24 -08:00
Jeremy Huddleston
3c12483264 XQuartz: Made X11Application.m a little more tidy.
(cherry picked from commit 3520386261)
2008-11-14 11:10:15 -08:00
Alex Deucher
ba4e08244e Merge branch 'master' of git+ssh://agd5f@git.freedesktop.org/git/xorg/./xserver 2008-11-13 15:04:18 -05:00
Alex Deucher
81fd17f5f4 Only add default modes if EDID supports continuous-frequency
When an EDID is present, only add the default mode pool if the
continuous-frequency bit is set in the EDID.  Should fix bugs
like 18512.
2008-11-13 15:00:30 -05:00
Adam Jackson
c232f3d673 xf86TargetExact should try harder if there's only one monitor attached.
If there's no preferred mode, but only one monitor, pick the
biggest mode for its aspect ratio, assuming one exists.
2008-11-13 14:58:21 -05:00
Jeremy Huddleston
5bad5d2abe XQuartz: Fixed XBell() when not using system alert.
(cherry picked from commit aa0e9ab1c7)
2008-11-13 11:34:32 -08:00
Jeremy Huddleston
0fca8588a2 XQuartz: Added more debugging to handoff spew
(cherry picked from commit acefa7e3c8)
2008-11-13 11:34:27 -08:00
George Staplin
47d3821870 XQuartz: GL: Handle the alpha differently when the alpha is equal to GLCAPS_COLOR_BUF_INVALID_VALUE.
This prevents visuals with odd sizes.  The machine I use didn't have
this problem, but it shows up on some others.
(cherry picked from commit ed181382dd)
2008-11-13 11:34:21 -08:00
Alex Deucher
6b501d7cc5 Add missing newline when printing edid info 2008-11-13 13:57:30 -05:00
George Staplin
33edd32702 XQuartz: Disable 2 calls to miSetVisualTypesAndMasks that seem to be unnecessary, and possibly wrong (with regard to masks and bits per RGB).
Use the settings queried from the system in xprScreen.c, rather than those 2 calls.

The 2 calls increased the total number of visuals a great deal (when using GLXEXT),
and not all of the visuals were usable with GLX.  Some of the visuals aren't usable
with GLX still, such as DirectColor, but that seems to be acceptable based on my
understanding of the manual that states "a subset of visuals are made available
for OpenGL rendering."
(cherry picked from commit 373b8a5f32)
2008-11-13 01:19:43 -08:00
Jeremy Huddleston
1523476afa XQuartz: CFBundleShortVersionString needs to conform to X.Y.Z as well... sigh
(cherry picked from commit 54d20f6d33)
2008-11-13 01:19:35 -08:00
George Staplin
1f301a0051 XQuartz: Restore the logic of AppleWMDoReorderWindow to the same as the 1.4 branch.
It was returning inverted values in comparison to the 1.4 branch.  This resulted in
the windows not drawing due to a deep path of: RootlessReorderWindow ->
SCREENREC(pScreen)->imp->DoReorderWindow(winRec) - > xprDoReorderWindow ->
AppleWMDoReorderWindow.
(cherry picked from commit d1d398db76)
2008-11-13 01:18:49 -08:00
James Cloos
24383056d0 Don’t recommend fixing HAL if HAL support is disabled.
As reported in http://bugs.freedesktop.org/show_bug.cgi?id=18438
the server suggests reconfiguring HAL if AllowEmptyInput is enabled
and no input devices are known.

Instead of that notice, if HAL is disabled at configure time,
AllowEmptyInput is enabled in the config and no input devices are
found report those facts and recommend disabling AllowEmptyInput.
2008-11-08 13:11:51 -05:00
James Cloos
b3c7e62664 Remove some null statements.
Remove several doubled statement-terminal semicolons.

Reported by Fernando Carrijo.
2008-11-08 12:21:20 -05:00
Luc Verhaegen
59f9fb4b8c XAA PixmapOps: Sync before accessing unwrapped callbacks.
When using any XAAPixmapOps, we call into unknown but freshly
unwrapped callbacks (like fb ones). Unlike the XAA*Fallback calls,
we did so without syncing first, exposing us to all kinds of
synchronisation issues.

I believe that the rendering errors appeared now because *PaintWindow
vanished (e4d11e58), and we just use miPaintWindow instead. This
takes a less direct route to the hw and ends up at
PolyFillRectPixmap, which very often left drawing artifacts.

We now sync accordingly, and no longer get the rendering artifacts i
was methodically reproducing on radeonhd, radeon, unichrome...

Also, in order to allow driver authors to remove extensive syncing
or flushing to hide this issue, create XAA_VERSION_ defines, put
them in xaa.h and bump the patchlevel.

(novell bug #435791)
2008-11-07 19:13:58 +01:00
Julien Cristau
991c88b754 xfree86: xf86SetDepthBpp needs to respect the driver's depth24flags
When setting the depth to 24, leave bpp unset so the logic to pick
a supported value is used instead of ignoring the driver's preference
and forcing 32 bpp.
2008-11-07 19:03:40 +01:00
Jeremy Huddleston
f59352881f XQuartz: Make LS parse our version properly... it didn't like our CFBundleVersion
(cherry picked from commit 980df1b4ff)
2008-11-06 14:49:54 -08:00
George Peter Staplin
13d06f5aaf XQuartz: GL: Add capability detection for depth buffers, and multisampling.
GL/capabilities.c: Add handleDepthModes(), and extend
handleRendererDescription() for the various depth and multisampling flags.

Add initialization of the new config options to initConfig().

GL/capabilities.h: Add depth and multisample config members.

GL/visualConfigs.c: Add depth and multisampling support to the visual config
setup.
(cherry picked from commit f527381eea)
2008-11-05 19:23:48 -08:00
George Peter Staplin
34bb06b292 XQuartz: GL: Work around problems with really deep visuals.
GL/capabilities.c: #if 0 (for now) any capabilities above 8 bits per channel,
because they introduce drawing problems.

GL/indirect.c: Comment out some visual setup code that shouldn't be running, and
actually seemed to cause some problems.  The current visualConfigs.c code seems
to do a reasonable job of setting up visuals for XQuartz.

GL/visualConfigs.c: Make use of the proper visual .class.   Eliminate depth 0.
It seems we really just want 24 for now, and 0 I think was a flaw in the original
code.
(cherry picked from commit 1e5f63f15e)
2008-11-05 19:23:41 -08:00
Jeremy Huddleston
39e82a9b12 XQuartz: Replace deprecated API usage thanks to Robery Murphy
(cherry picked from commit 71dd052412)
2008-11-05 19:23:36 -08:00
Jeremy Huddleston
b4db46320a XQuartz: version string updated for 2.3.2_beta3
(cherry picked from commit 81bb412857)
2008-11-05 19:23:30 -08:00
Adam Jackson
446d9443ce linux: Drain the console fd of data when using evdev for keyboards
Works around a silly bug in the kernel that causes wakeup storms after
too many keypresses.  Should fix the kernel bug too, but this at least
keeps the idle wakeup count below 1000/sec.
2008-11-05 11:51:06 -05:00
Adam Jackson
6d21fbf006 kdrive: Bye bye Xvesa 2008-11-05 11:39:46 -05:00
Egbert Eich
9a874a71a7 DDX/RandR: When positioning outputs assume width/height = 0 if no modes exist.
When a user specifies the position of an output for which no modes exist
(for whatever reason) assume that the width and height of this output
is 0. The result will be the same as if this output isn't taken into
consideration at all and thus should be sane. It will prevent a segfault
when trying to determine the width and height of a non-existent mode.
2008-11-04 21:31:27 +01:00
Peter Hutterer
6bb0e0a536 xnest: I'm sure xfree works fine, even if we're 64 bit.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:01:42 +10:30
Daniel Stone
f4036f6ace Remove XEvIE
It's unmaintained and has been broken for quite a while; MPX finally
smashed it completely.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:01:07 +10:30
Daniel Stone
8c3753a0b7 A bit of whitespace cleanup in include directives.
It's #include <foo>, not # include <foo>

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:01:07 +10:30
Daniel Stone
889a8dc02b Xi: XINPUT has been mandatory for ages
Ditch all #ifdef XINPUT, since it's always built.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-11-04 16:01:07 +10:30
Adam Jackson
4cf2f4172a Add xf86MonitorIsHDMI() helper. 2008-11-03 14:35:03 -05:00
Jeremy Huddleston
f8af66ddb2 XQuartz: Add option to allow access to the menu in fullscreen mode
(cherry picked from commit 637a9f4bd1)
2008-10-31 20:05:39 -07:00
Jeremy Huddleston
c5086badf0 XQuartz: LP64 related casting fixes from Bob Murphy
(cherry picked from commit ea71710aaa)
2008-10-31 19:03:38 -07:00
Jeremy Huddleston
ecd55bc859 XQuartz: displayScreenBounds uses quartzEnableRootless rather than !quartzHasRoot
(cherry picked from commit c883a78ef0)
2008-10-31 15:50:06 -07:00
Jeremy Huddleston
9f49f5172d XQuartz: Silence pointer debug spam
(cherry picked from commit 9ca099e928)
2008-10-31 15:49:52 -07:00
Jeremy Huddleston
93298c7f8f XQuartz: Don't map the menu bar to the screen area.
(cherry picked from commit 1115917ada)
2008-10-31 15:49:44 -07:00
Jeremy Huddleston
31907986a6 XQuartz: Fixed Xplugin thread safety issues, so rea-enable background window check
(cherry picked from commit 5fc73b1141)
2008-10-31 15:49:32 -07:00
George Peter Staplin
227d782a1b XQuartz: GL: Mark visuals that are slower than others, due to lack of acceleration.
This is used in libGL to determine a preferred visual.  glxinfo -v will also
report "visualCaveat=Slow" for such visuals.
(cherry picked from commit d5c17f585a)
2008-10-31 15:49:25 -07:00
Jeremy Huddleston
5287602a41 XQuartz: if 0 out a block to avoid thread-unsafe lockups
(cherry picked from commit 60d7359a67)
2008-10-31 15:48:24 -07:00
Jeremy Huddleston
93d7cd31c5 XQuartz: Purge the old XQUARTZ_EXPORTS_LAUNCHD_FD option
(cherry picked from commit 490756c7fb)
2008-10-31 15:48:15 -07:00
Alan Coopersmith
70e18a3b6b Refactor Solaris mapping code to work with standard shared/vidmem.c
Also merge sun_bios.c into sun_vid.c and upstream Solaris patch to
keep aperture device open, to allow mappings to occur after X server
has given up uid 0.
2008-10-30 21:00:46 -07:00
Peter Hutterer
4ce19b4477 xfree86: fix xf86ScaleAxis once again.
Maybe one day I stop doing stupid patches like
a3a7c12fcf.

So, if X < low, reset to low, and _not_ to high.
If X > high, reset to high, and _not_ to low.
2008-10-30 16:59:43 +10:30
Jeremy Huddleston
f12d7ad164 XQuartz: Pass along SIGINT and SIGTERM from the stub to X11.app
(cherry picked from commit 183ca5d68b)
2008-10-28 22:01:40 -07:00
George Peter Staplin
273df54685 XQuartz: pbproxy: Fix a bug that prevented nedit CLIPBOARD from being proxied.
It seems that we were calling copy_completed: too soon.  Now we return instead
of falling through to the free_propdata, and copy_completed:.
(cherry picked from commit 5797d5b662)
2008-10-28 22:01:34 -07:00
George Peter Staplin
313d87341a XQuartz: pbproxy: Work around bugs in some apps that aren't ICCCM compliant.
Eterm ends up setting the type of the property to TARGETS, instead of ATOM.
That's why it wasn't working.
(cherry picked from commit 9be5998ede)
2008-10-28 22:01:29 -07:00
George Peter Staplin
9007d3beea XQuartz: pbproxy: Add code to handle PICT conversion to PNG and JPEG.
This may work, unfortunately I don't have test apps that fail.

The way it works is by using an NSImage class initWithPasteboard:
method, which we then get the TIFFRepresentation of, and convert
to PNG or JPEG.

The TIFFRepresentation uses NSTIFFCompressionNone; which should be
lossless.
(cherry picked from commit 8d048cfa95)
2008-10-28 22:01:22 -07:00
Jeremy Huddleston
b742da0b71 XQuartz: pbproxy: fixed blocking
(cherry picked from commit bb330a1b1c)
2008-10-28 22:00:52 -07:00
Jeremy Huddleston
c885110aed Xquartz: pbproxy: Some debugging about unhandled mime types... this will spam up quick, but will be useful for a while...
(cherry picked from commit 3647215310)
2008-10-28 22:00:42 -07:00
George Peter Staplin
e7c26964ee XQuartz: GL: Fix several error handling mistakes in handleRenderDescriptions, that were leftover before the final code evolved.
(cherry picked from commit fe35a36390)
2008-10-28 22:00:36 -07:00
George Peter Staplin
21ea9d82aa XQuartz: GL: Add feature detection of color sizes, and accum sizes.
This gives us a *lot* more visuals, and they should be more accurate.
Some of the visuals may have been wrong before.  This may enable more
OpenGL programs to behave correctly.

I also suspect libGL needs a little work to handle some of these correctly.
(cherry picked from commit 98a084ce9c)
2008-10-28 22:00:29 -07:00
Peter Hutterer
c264826da9 xfree86: If AEI is on, disable "kbd" and "mouse" devices.
This consists of two parts:
In the implicit server layout, ignore those drivers when looking for a core
device.

And after finishing the server layout, run through the list of devices and
remove any that use mouse or kbd.

AEI is mutually exclusive with the kbd and mouse drivers, so pick either - or.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-29 12:07:26 +10:30
Julien Cristau
102c4dac7c x86emu: fix sparse warnings
ops2.c:113:18: warning: Using plain integer as NULL pointer
ops2.c:207:18: warning: Using plain integer as NULL pointer
2008-10-26 13:17:31 +01:00
Julien Cristau
ffaaa1a198 xfree86: fix compiler warnings in DoModalias()
The precedence of == is higher than that of &, so that code was
probably buggy.

xf86Init.c: In function 'DoModalias':
xf86Init.c:300: warning: suggest parentheses around comparison in operand of &
xf86Init.c:304: warning: suggest parentheses around comparison in operand of &
xf86Init.c:308: warning: suggest parentheses around comparison in operand of &
2008-10-26 13:13:21 +01:00
Julien Cristau
66fd05acd6 xfree86: Silence compiler warnings about function prototypes
xf86Init.c:136: warning: function declaration isn't a prototype
xf86Init.c:243: warning: function declaration isn't a prototype
xf86Init.c:249: warning: function declaration isn't a prototype
2008-10-26 13:11:41 +01:00
Julien Cristau
eadf90aa65 xaa: Fix compiler warning (implicit declaration)
xaaInit.c: In function 'XAAInit':
xaaInit.c:201: warning: implicit declaration of function 'miInitializeCompositeWrapper'
xaaInit.c:201: warning: nested extern declaration of 'miInitializeCompositeWrapper'
2008-10-26 11:44:57 +01:00
Julien Cristau
aee514cfb5 xfree86: Fix compiler warnings (implicit declarations)
Add missing includes to fix the following warnings:
xf86DGA.c: In function 'DGAProcessKeyboardEvent':
xf86DGA.c:1050: warning: implicit declaration of function 'UpdateDeviceState'
xf86DGA.c:1050: warning: nested extern declaration of 'UpdateDeviceState'
xf86Xinput.c: In function 'xf86ActivateDevice':
xf86Xinput.c:303: warning: implicit declaration of function 'AssignTypeAndName'
xf86Xinput.c:303: warning: nested extern declaration of 'AssignTypeAndName'
xf86Xinput.c:311: warning: implicit declaration of function 'DeviceIsPointerType'
xf86Xinput.c:311: warning: nested extern declaration of 'DeviceIsPointerType'
xf86Xinput.c:324: warning: implicit declaration of function 'XkbSetExtension'
xf86Xinput.c:324: warning: nested extern declaration of 'XkbSetExtension'
2008-10-26 11:44:11 +01:00
Julien Cristau
add946daed Nuke unused variables 2008-10-26 11:44:10 +01:00
Bernhard R. Link
24e863b0eb Bug#16501: autodetection of sbus graphic cards
Add automatic detection of the graphic driver to load for sbus devices.
This allows xorg to work on those devices without a "Device" section.

Debian bug#483942.

Signed-off-by: Julien Cristau <jcristau@debian.org>
2008-10-26 00:26:51 +02:00
Julien Cristau
fd97ff1bdd Bug#5851: Document the "Log" option in xorg.conf(5) 2008-10-25 22:59:43 +02:00
Jeremy Huddleston
80b6768536 XQuartz: Do check_xinitrc() later to avoid possible deadlock.
(cherry picked from commit af95174a08)
2008-10-23 19:22:36 -07:00
George Peter Staplin
d837d4e2af XQuartz: pbproxy: pbproxy.h had invalid macro usage with 2 #else statements, so it wasn't building. Fix the build.
(cherry picked from commit 6bcbb9ba85)
2008-10-23 19:22:28 -07:00
George Peter Staplin
6a2693b2f9 XQuartz: Remove the enable_stereo default. We now use feature detection to enable stereo visuals.
We need to revisit the GL/indirect.c changes.  I think indirect.c should
be using the same feature detection and GLX visual config code.  The
indirect changes will require testing...
(cherry picked from commit 49b7a7c6f2)
2008-10-23 19:22:16 -07:00
Alan Coopersmith
b015a021b2 Allow non-gcc compilers to build xf86Xinput.c 2008-10-23 17:39:30 -07:00
Jeremy Huddleston
28d4f71193 XQuartz: pbproxy: Fix compilation on case-sensitive file systems...
(cherry picked from commit 6622efca21)
2008-10-23 16:30:53 -07:00
Jeremy Huddleston
3e999d35c2 XQuartz: Honor the Spaces preference for "When switching to an application, switch to a space with open windows for the application"
(cherry picked from commit bf561a06b2)
2008-10-23 14:17:19 -07:00
Jeremy Huddleston
75067d12e4 XQuartz: Added missing semicolons to Localizable.strings
(cherry picked from commit e9fe3f36d9)
2008-10-23 14:17:10 -07:00
Jeremy Huddleston
a003932dcc XQuartz: Default dpi to 96 instead of 75
(cherry picked from commit 08a5a333d7)
2008-10-23 14:17:04 -07:00
Jeremy Huddleston
2d764e21f2 XQuartz: pbproxy: SIGHUP reloads preferences.
(cherry picked from commit cbc0935ef7)
2008-10-23 14:16:57 -07:00
Peter Hutterer
0b56b44add xfree86: AllowEmptyInput is true by default - update the xf86Info defaults.
Also set AutoAddDevices and AutoEnableDevices to their defaults.

And in doing so, switch the rest of the defaults over to named intializers.

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
2008-10-22 17:19:37 +10:30
Jeremy Huddleston
c837d182c4 XQuartz: Only send mouse events while in the background if we're over a visible window.
This "breaks" xeyes but gets rid of annoying tooltips.
(cherry picked from commit 10090a132a)
2008-10-21 09:34:56 -07:00
Jeremy Huddleston
2a9613980f XQuartz: More fullscreen fixes
Start in rooted mode when enabled
  Make the hotkey cmd-alt-a behave
(cherry picked from commit 22a54e4617)
2008-10-21 09:34:49 -07:00
Jeremy Huddleston
e4ea1494de XQuartz: Cleaned up keyboard init and map reload.
(cherry picked from commit f78c9fc06c)
2008-10-21 09:34:40 -07:00
Jeremy Huddleston
ebb2e1449c XQuartz: Fixed follow-keyboard-layout
≈
(cherry picked from commit a9f9fbf512)
2008-10-21 09:34:28 -07:00
Jeremy Huddleston
f67cd31d2c XQuartz: More progress towards fullscreen...
(cherry picked from commit 628cae86b4)
(cherry picked from commit b47b7ab6d6)
2008-10-21 09:34:17 -07:00
Jeremy Huddleston
d434ed4009 XQuartz: Fixed missing key-equiv for Hide-Others.
(cherry picked from commit 2c4b0f9615)
2008-10-21 09:32:20 -07:00
George Peter Staplin
f935c11398 XQuartz: pbproxy: Fix 2 bugs with the preferences.
Add dump_prefs() for instrospection.

Make prefs_get_bool a little more clear.

In get_property don't assume that the Mac realloc(NULL, 0); returns
non-NULL.  We shouldn't depend on implementation-defined behavior too
much.

Add more commentary in various spots.

Add TARGETS in the TARGETS response.  I don't know why some X11 apps
do this, but it could be something that some weird toolkit/app tests
for.

In reload_preferences add preferences synchronization, so that xpbproxy
reloads the preferences, and picks up any changes.

Fix a typo/misspelling of the sync_clipboard_to_pasteboard preference.
(cherry picked from commit 165cbbb90c)
2008-10-21 09:32:03 -07:00
Jeremy Huddleston
4d978af5c7 XQuartz: Fixed window levels.
(cherry picked from commit ef4d37c73f)
2008-10-21 09:31:56 -07:00
Rémi Cardona
58eacf0b7b Force LC_ALL=C when building xf86DefModeSet.c
Fixes build in not-quite-latin locales.
2008-10-21 10:07:24 -04:00
Peter Hutterer
8d0cb507ae dmx: avoid hilarious #define Xcalloc xcalloc game. 2008-10-17 10:19:11 +10:30
Peter Hutterer
8a23707b86 dmx: change remainder of manual EQ allocation to GetEventList(). 2008-10-17 10:19:10 +10:30
Peter Hutterer
d936a4235c xfree86: if AllowEmptyInput is true, enable RAW mode on the console.
Usually, the console is set to RAW in the kbd driver. If we hotplug all input
devices (i.e. the evdev driver for keyboards) and the console is left as-is.
As a result, the evdev driver must put an EVIOCGRAB on the device to avoid
characters leaking onto the console. This again breaks many things, amongst
them lirc, in-kernel mouse button emulation and HAL.

This patch sets the console to RAW if AllowEmptyInput is on.

Use-cases:
1. AEI is off
  1.1. Only kbd driver is used - behaviour as-is.
  1.2. kbd and evdev driver is used: if evdev does not grab the device,
       duplicate events are generated.
2. AEI is on
  2.1. Only evdev driver is used - behaviour as-is, but evdev does not need
       to grab the device anymore.
  2.2. evdev and kbd are used: duplicate key events are generated if evdev
       does not grab the device.

1.2 is a marginal use-case that can be fixed by adding a "grab" option to the
evdev driver (update of xorg.conf is needed).

2.2 is an issue. If we have no ServerLayout section, AEI is on, but devices
specified in the xorg.conf are still added [1], resulting in duplicate events.
This is a common configuration and needs sorting out.

[1] 2eaed4a10f

Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2008-10-16 21:35:27 +10:30
Jeremy Huddleston
84ef8ed6fb XQuartz: implemented primary-on-grab and fixed clipboard-to-pasteboard
(cherry picked from commit bcb83eea72)
2008-10-15 17:31:54 -07:00
Daniel Stone
2e60ebbd25 XFree86: Simplify DontZap/-retro interaction
How hard could it possibly be, right?
2008-10-15 14:11:13 +01:00
Alan Hourihane
66a87517bd re-enable DRI2 2008-10-15 12:00:16 +01:00
Kristian Høgsberg
ced6690284 dri2: Update to latest protocol draft.
Mainly rename SwapBuffers to CopyRegion, which adds the xfixes region
argument and the bitmask argument to let us extend it in the future.
2008-10-15 00:00:44 -04:00
Adam Jackson
b677bff97b int10: Degrade the checksum warning to X_INFO.
I've seen about one case in three years where this has actually been
correlated with the real cause of failure, and we've trained people to
freak out about X_WARNING, so let's be less alarmist.
2008-10-14 14:30:19 -04:00
Adam Jackson
bd9c6b3a4d EDID: Catch even more cases of encoding aspect as size.
Very cute, Samsung, not only do you claim to be 16cm by 9cm in the
global size record, you also claim to be 160mm by 90mm in the detailed
timings.  Grrr.
2008-10-14 14:04:01 -04:00