The outport is most likely unnecessary on any currently used hardware,
the byte copy is necessary from what I know on IA64 and friends so leave it.
Add a new API entry point which lets a driver select the old behaviour if
such a needs is ever found.
This gives me ~20% speed up on startup on 945 hardware.
This prevents situations where the server doesn't use the target the
client thinks it does, usually resulting in the texture being sampled as all
white.
I went through the entire xorg-server distribution and aggregated all
the licenses I could find (except the questionable GPL files, see my
last mail).
There are many many permutations on essentially the same license terms,
but I have been pedantic and treated slight differences as separate
licenses.
Here is a description of the process I used:
tar xvjf /usr/portage/distfiles/xorg-server-1.1.1.tar.bz2
cd xorg-server-1.1.1
find -name '*.c' -o -name '*.h' | xargs gvim
egrep -Rli "permission|copyright" * | grep -v "\.[ch]" \
| grep -v "\.in$" | xargs gvim
cd ..
tar xvjf /usr/portage/distfiles/xorg-server-1.3.0.0.tar.bz2
diff -urNp xorg-server-1.1.1 xorg-server-1.3.0.0
git clone git://anongit.freedesktop.org/git/xorg/xserver
cd xserver
git diff xorg-server-1.3.0.0..
For each file, licenses have been aggregated as follows:
If 2 files have identical license text but different copyright notices,
the copyright notices are aggregated and the license text
is included only once.
Note that by identical I mean really identical, i.e.:
'AUTHOR(S)' is not the same as 'AUTHORS'
'KEITH PACKARD DISCLAIMS' is not the same as 'KEITH PACKARD AND COMPAQ
DISCLAIM'
Otherwise, licenses and accompanying copyright notices have been
stacked.
When going through the changes from 1.1.1 to 1.3.0.0 then HEAD, licenses
have been added and removed (so I have reflected this since the original
version of my COPYING file). It's slightly concerning to see that even
between 1.3.0.0 and HEAD, new license permutations are being added. I'd
suggest that a primary license be chosen and this would be indicated at
the top of this COPYING file.
I went through the entire xorg-server distribution and aggregated all
the licenses I could find (except the questionable GPL files, see my
last mail).
There are many many permutations on essentially the same license terms,
but I have been pedantic and treated slight differences as separate
licenses.
Here is a description of the process I used:
tar xvjf /usr/portage/distfiles/xorg-server-1.1.1.tar.bz2
cd xorg-server-1.1.1
find -name '*.c' -o -name '*.h' | xargs gvim
egrep -Rli "permission|copyright" * | grep -v "\.[ch]" \
| grep -v "\.in$" | xargs gvim
cd ..
tar xvjf /usr/portage/distfiles/xorg-server-1.3.0.0.tar.bz2
Disclaimer: It's 6:51am. I'm trying to be as understandable as possible.
What was happening previously was this:
* Press Alt
* Extended event generated and processed: state is now Alt down once
* Core event generated
- keyboard switched: inherited state is Alt down once
- event processed: Alt down twice
* Release Alt
* Extended event generated and processed: state is now null
* Core event generated and processed: Alt down once
If we switch the order:
* Press Alt
* Core event generated:
- keyboard switched: inherited state is null
- event processed: Alt down once
* Extended event generated and processed: state is now Alt down once
* Release Alt
* Core event generated and processed: state is now null
* Extended event generated and processed: state is now null
When we carry over the previous state, it needs to be the _previous_ state
(state and modifiersPerKey), assuming that we're going to catch now-core
events for any of these. For example, if Ctrl is held down as we pivot, we
need to carry Ctrl over with a count of one, for which an extended + core
release will then clear. Carrying over the union of the previous state _and
the state resulting from the immediate action_ was what broke things.
If NoAutoAddDevices is given as a server flag, then no devices will be added
from HAL events at all. If NoAutoEnableDevices is given, then the devices will
be added (and the DevicePresenceNotify sent), but not enabled, thus leaving
policy up to the client.
Add support for HAL-based hotplugging, in which we just get the list of
input devices and properties from HAL. Requires an FDI which is not yet
in mainline HAL.
For some reason, my keyboard has 25 mouse buttons, but zero valuators. This
causes GPE to blow up spectacularly, trying to get (and set) co-ordinates from
devices without valuators. For now, just prevent this from ever happening,
and whack a dirty great FIXME in.
Make sure the font path is always 'built-ins' when we use built-in fonts,
rather than having it as a fixed path for a while, then clobbering it
halfway through startup.
Use uint32s instead of int32s where practical, and add an API version
request. Also, try to return all devices added, not just the first,
and box device arguments.
Break up D-Bus into two components: a D-Bus core that can be used by any
part of the server (for the moment, just the D-Bus hotplug API, and the
forthcoming HAL hotplug API), and the old D-Bus hotplug API.
Not sure why these are conditionals, anyway. This one really needs
revisiting, but at least causes configure, rather than the compilation,
to bomb out.
If the pixel in framebuffer memory isn't modified since we uploaded it, we
can just read from the system memory copy, wihch avoids both a readback and
an accelerator stall.
In principle this function is still wrong, and all the framebuffer pixel
access should be going through (w)fb so we can get pixel layout corrections.