changing the screen resolution wasn't still allowed for larger virtual desktops.
added an exclusive option to ghost so the fullscreen window is ignored by the window manager and we get all events. (common practice for games on X11).
This is and old patch (June, 2009). The reason it never made into trunk it's that we (me at least) thought that
it should be optional, as a ui or command-line option.
However, it seems that OSX always have the OpenGL context with alpha enabled. So I think it's consistent to
have the other OSs to follow.
The main usage of this is the BGE (or more specifically people using BGE for TV broadcasting) but I think
pydevs can have their share of fun with it in Blender as well.
which makes it impossible to toggle from fullscreen to windowed mode
when startup.blend is saved in fullscreen mode.
Reshuffled checks a bit, which is actually makes sense, will investigate
which change caused regression since 2.65a tomorrow.
Now the active monitor size is used on startup.
Currently the cursor position is checked for intersection with the monitor bounds to find the active screen.
This returns the desktop size, not just the size of the active monitor, useful since this constrains the mouse and we dont have to detect the active monitor (which isn't so straightforward with xlib).
carbon/cocoa are TODO, they still use getMainDisplayDimensions().
This didnt work well with making blender areas into windows.
Real fix: check such minimums based on what's in the window itself... or just
make scaling work flawless.
When you open a Blender window larger than a screen, Macs clip it to match the height,
but they allow the width to be more.
Problem is that this clipping happens after all window opening code. That causes
check for HiDPI mode to fail.
Now it checks it again on event GHOST_kEventWindowUpdate, which is only on startup.
Notices this while using continuous-grab, since this is disabled when the tablet is being used.
Quite often I would use the tablet then drag a button with the mouse but blender would still have the tablet enabled.
This error would cause other parts of blender to behave incorrectly too since wmEvents would have wmTabletData set, operators check for this in some cases.
The problem was blender didn't reliably get ProximityOut events, eg:
moving the cursor outside the window with the tablet, then back over the window with the mouse -
meant blender didn't get a 'ProximityOut' event and would keep the active stylus value set.
For now, when the processing events and the active stylus is set, run a check that the tablet is still in proximity.
Touch input events map nicely to trackpad input now.
However, I noticed the event values are a factor 10 scaled larger compared
to other touch delta's. Makes using touch input on the tablet not so nice.
I found a hack to detect Wacom events, but if it works for more devices?
Anyway - for me the Wacom works perfectly smooth for view manipulations now.
Issue was caused by opening the same device id twice and closing one of
descriptors on closing window. This used to close device used by other
windows.
Now moved all device-specific code to SystemX11, so opening and closing
happens only once.