Commit Graph

33 Commits

Author SHA1 Message Date
Jon TURNEY
33106e1e80 Cygwin/X: Generate RANDR change on WM_DISPLAYCHANGE for rootless modes
When RANDR resizing is enabled, generate an internal RANDR change when
WM_DISPLAYCHANGE occurs in rootless modes for screens which occupy an
entire monitor or the virtual desktop.

Store the monitor number and use that to handle WM_DISPLAYCHANGE for a
screen specified with '-screen @monitor'

In rooted mode, WM_DISPLAYCHANGE isn't relevant (except where display
depth changes may cause problems). (A maximized screen window will get
WM_SIZE to adjust it to the new monitor size)

In rooted fullscreen mode, WM_DISPLAYCHANGE shouldn't be seen, as we
have the resolution we have selected for the fullscreen session)
(Could client randr requests be handled in fullscreen to cause a change
of the fullscreen resolution? )

Don't bother do a RANDR resize if the dimensions aren't actually changing
when WM_DISPLAYCHANGE is sent (should handle WM_DISPLAYCHANGE to size 0x0
that the intel driver seems to like to send)

Various debug output improvements

Also, remove the note that XWin can't handle display mode changes from
the man page

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
Tested-by: Colin Harrison <colin.harrison@virgin.net>
2011-01-19 14:02:26 +00:00
Jon TURNEY
bbc511e80b Cygwin/X: Make WM_SIZE use RandR resizing when -resize=randr
To avoid recursion, WM_SIZE requests shouldn't generate XRANDR requests
when no change is neeeded.

We do the actual resize on WM_EXITSIZEMOVE, as resizing occurs in
a modal loop, to avoid a backlog of resize events building up as
the X server doesn't get a change to process anything until the resize
is completed.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
Tested-by: Colin Harrison <colin.harrison@virgin.net>
2011-01-19 14:02:25 +00:00
Jon TURNEY
873abef315 Cygwin/X: Add -resize command line option
Add -resize command line option to configure how native window sizing frame
is used.

In additions to the existing fixed and scrollbars modes, add a new mode to
allow framebuffer to be resized using native window frame

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
Tested-by: Colin Harrison <colin.harrison@virgin.net>
2011-01-19 14:02:22 +00:00
Jon TURNEY
73b02e9647 Cygwin/X: Remove an attempt at detecting if WM_DISPLAYCHANGE affects the X screen
Remove an attempt at the rather difficult optimization of detecting
if WM_DISPLAYCHANGE affects any of the monitors which intersect the
native window for the X screen.

We'll always act as if it does, which it probably usually the case.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
Tested-by: Colin Harrison <colin.harrison@virgin.net>
2011-01-19 14:02:19 +00:00
Jon TURNEY
25801a2556 Cygwin/X: Move duplicate extern variable declarations from various .c files to a new header file
For the global variables defined in winglobals.c, remove duplicate extern
declarations from the beginning of various .c files, and move most of them
into a new header file, winglobals.h

Leave some clipboard related variables alone for the moment, they need treating
more carefully, to avoid mixing client and server type definitions.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2010-10-19 15:02:00 +01:00
Jon TURNEY
04d11abcf2 Cygwin/X: Remove g_hwndKeyboardFocus
It's set but it's value is never used

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2010-10-19 15:01:58 +01:00
Jon TURNEY
22b38f513c Cygwin/X: Avoid a potential null pointer dereference before input initialization
Avoid a null pointer dereference if WM_MOUSEMOVE occurred before
the input device had been initialized (a timing sensitive bug
occassionally seen during initialization)

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2009-10-14 20:29:10 +01:00
Jon TURNEY
ab2c98b86f Cygwin/X: Place prototypes for winCheckKeyPressed() and winFixShiftKeys() in a header file
Fixes warnings as they are now in scope at the definition

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-02-12 12:05:13 +00:00
Jon TURNEY
4475ae036c Cygwin/X: Fix compilation for mandatory XKB
Fix a stray '}'
Update to use RMLVO interface
Remove g_winInfo.xkb.disable, can never be set since noXkbExtension has been removed
Change to retrieve modifier key state using XkbStateFieldFromRec() from Colin Harrison
Update to use XKB defaults from xkb-config.h

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-02-02 17:51:50 +00:00
Daniel Stone
40877c6680 XKB: Make XKB mandatory
No more #ifdef XKB, because you can't disable the build, and no more
noXkbExtension either.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22 15:06:25 +11:00
Jon TURNEY
35d7602830 Cygwin/X: enqueue a pointer motion event on mouse movement
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2008-12-17 13:37:38 +00:00
Jon TURNEY
bca7483c4e Cygwin/X: update for MPX device changes
Bring Cygwin/X up to date with MPX device API changes

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2008-12-17 13:37:36 +00:00
Colin Harrison
178d426311 Missing piece from bug 9808 2007-05-11 10:08:42 +01:00
Adam Jackson
0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
Daniel Stone
4fd668940f Bug #6619: Fix disappearing hardware cursor. (Colin Harrison) 2006-06-03 10:58:37 +00:00
Alan Hourihane
29237c1977 https://bugs.freedesktop.org/show_bug.cgi?id=4538 Fix mouse button release
on multiwindows scrolling.
2006-03-03 09:50:55 +00:00
Alexander Gottwald
d72fef26d4 Fix simultanious presses of Left and Right Control and Shift keys.
https://bugs.freedesktop.org/show_bug.cgi?id=3677
2005-07-05 17:52:35 +00:00
Alexander Gottwald
508cdb5cb0 Include xwin-config.h if HAVE_XWIN_CONFIG is defined Cleanup X11 includes
handling Warning fixes
2005-07-04 22:10:43 +00:00
Alexander Gottwald
8d277ceb22 winmessages.h
winmsg.h
winmsg.c
winmultiwindowwndproc.c
winwin32rootlesswndproc.c
Make logging of messages configurable with environment variables
2005-01-31 10:43:37 +00:00
Alexander Gottwald
57387e115c winkeybd.h
winkeyhook.c
Make keyhook feature work in multiwindowmode too Hook windows keys
2005-01-10 13:13:08 +00:00
Alexander Gottwald
9826b83826 Bufzilla #1802, http://freedesktop.org/bugzilla/show_bug.cgi?id=1802 Added
mingw (Win32) port
2004-11-15 15:06:51 +00:00
Alexander Gottwald
e494e24c50 Wrap all mwextwm and internalwm code with XWIN_MULTIWINDOWEXTWM 2004-11-06 11:56:57 +00:00
Kensuke Matsuzaki
1aef106064 Add InternalWM mode. 2004-11-04 11:52:22 +00:00
Alexander Gottwald
9d4823adc8 Import recent changes from CYGWIN branch 2004-10-28 14:23:08 +00:00
Alexander Gottwald
c4083511ac add support for mice with more than 3 buttons and one scroll wheel (Chris
B)
2004-09-15 17:58:50 +00:00
Alexander Gottwald
d6e8b1affe Bug 777: Merge from CYGWIN branch 2004-06-21 13:19:32 +00:00
Egbert Eich
2fb5886200 Merging XORG-CURRENT into trunk 2004-04-23 19:54:30 +00:00
Egbert Eich
dae90c3af9 Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004 2004-03-14 08:34:49 +00:00
Egbert Eich
867451f1ab Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004 2004-03-03 12:12:50 +00:00
Egbert Eich
df0313d35b readding XFree86's cvs IDs 2004-02-26 13:36:15 +00:00
Egbert Eich
147aae87fd Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004 2004-02-26 09:23:53 +00:00
Kaleb Keithley
adc7f9a4eb XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks 2003-11-25 19:29:01 +00:00
Kaleb Keithley
9508a382f8 Initial revision 2003-11-14 16:48:57 +00:00