Commit Graph

38 Commits

Author SHA1 Message Date
Colin Harrison
a49ae50370 Xming: Apply window style hints in -multiwindow mode
Remove frames from 'dock' windows and make them topmost in -multiwindow mode.
Remove frames from windows with MOTIF_WM_HINTS of no decorations in -multiwindow mode.
Apply some _NET_WM_STATE hints in -multiwindow mode.
Apply window styles overrides from .rc file
Correctly update region of shaped windows when applying styles

Copyright (C) Colin Harrison 2005-2009
http://www.straightrunning.com/XmingNotes/
http://sourceforge.net/projects/xming/
2009-07-03 11:19:38 +01:00
Jon TURNEY
638ca9a7a2 Cygwin/X: Avoid a visual glitch on window move in rootless modes
Handle and ignore WM_ERASEBKGND since we repaint the entire invalidated region anyhow
(this avoids a white flickering on window resize)

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-06-29 17:54:40 +01:00
Jon TURNEY
85614946ba Cygwin/X: Improve mouse tracking for moving/resizing undecorated windows
In -multiwindow mode, tell Windows we wish to capture the mouse when a button
is down.  This causes Windows to continue to send movement events for the mouse
even if the mouse pointer moves outside the window frame.

This helps greatly with undecorated windows which have regions you can grab
to move (e.g. gmplayer, xine control panels) or resize (e.g. Songbird) the
window, as it means the window continues to receive the mouse motion even if the
mouse pointer  moves out of the window (which presumably happens if we don't
manage to update the window fast enough to track the mouse pointer)

Consolidate the multiple instances of the code to start the mouse position
polling timer into a new function winStartMousePolling(), and use that to
restart the polling timer when we release the mouse.

Also, start the timer on WM_SHOW, so that xeyes will track the mouse position
when it is first shown, even if the mouse doesn't enter it's window
(You probably need focus-stealing turned off to see this problem)

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-06-29 17:54:35 +01:00
Colin Harrison
4ec110327b Xming: Prevent the mouse wheel from stalling when another window is minimized.
Fix internal WM to prevent the mouse wheel from stalling when another window is minimized.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-05-27 14:11:54 +01:00
Jon TURNEY
888e6961a4 Cygwin/X: Correctly allow for the native window frame width in ValidateSizing()
Fix internal WM to correctly calculate the native window border when validating window sizing

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-05-27 14:11:36 +01:00
Colin Harrison
847a91ad2e Xming: Notify X when the keyboard focus is lost to a pure Windows window in -multiwindow mode.
Fix internal WM to notify X when the keyboard focus is lost to a pure Windows window in -multiwindow mode.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-01-19 14:49:08 +00:00
Colin Harrison
6c3e7e4d05 Xming: Only allow WM_MOUSEWHEEL messages to act on the client area of a focused window.
Fix internal WM so it only allows WM_MOUSEWHEEL messages to act on the client area of a focused window.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-01-19 14:48:38 +00:00
Colin Harrison
d84e0e3877 Xming: Correctly parent XA_WM_TRANSIENT_FOR windows in -multiwindow mode when a windows window is created.
Fix internal WM to correctly parent XA_WM_TRANSIENT_FOR windows in -multiwindow mode when a windows window is created,
and to de-iconize parent windows when a child window acquires focus.

XXX: Perhaps we should also shuffle parent(s) forward through Z-order when a child acquires focus?

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-01-19 14:48:07 +00:00
Colin Harrison
6f065a26db Xming: Reduce MOUSE_POLLING_INTERVAL
Reduce MOUSE_POLLING_INTERVAL from 500ms to 50ms

In -multiwindow mode, this determines how quickly X windows can track the mouse
when it is outside any X window... Move the cursor around an xeyes, and you will
see what this timing effects.
2009-01-15 21:49:52 +00: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
Eamon Walsh
4017d31902 devPrivates rework: since API is already broken, switch everything
over to new system.

Need to update documentation and address some remaining vestiges of
old system such as CursorRec structure, fb "offman" structure, and
FontRec privates.
2007-08-28 09:28:25 -04:00
Colin Harrison
178d426311 Missing piece from bug 9808 2007-05-11 10:08:42 +01:00
Colin Harrison
be44018a3c Fix bad use of hwnd (bug: 9808) 2007-05-09 16:55:09 +01:00
Alan Hourihane
ce4a0a4dda Apply patch in bug #7919, blit improvements in
multiwindow mode for Xming/CygwinX
2006-08-24 13:56:22 +01:00
Alan Hourihane
a1a8e4f7f5 Fix bug #7280, round title corner background
should be transparent not black in Xming/CygwinX
(Colin Harrison)
2006-08-18 09:08:12 +01:00
Adam Jackson
0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04: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
0bb2eb8eaa Fix problem with fake Control press on Alt-Gr
https://bugs.freedesktop.org/show_bug.cgi?id=3680
    https://bugs.freedesktop.org/show_bug.cgi?id=3497
Fix static declaration of winGetBaseDir
2005-07-05 15:43:20 +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
1230c55ac3 Pass serverClient instead of NULL to ConfigureWindow. This should fix a
crash reported by Øyvind Harboe
2005-06-30 18:50:20 +00:00
Alexander Gottwald
0d206e177f Backout last winRaiseWindow patch which caused stacking problems 2005-06-03 08:12:22 +00:00
Alexander Gottwald
2c9b1e337b Only call ConfigureWindow from winRaiseWindow if the windows message
dispatch loop is running.
2005-05-08 21:14:55 +00:00
Alexander Gottwald
c062d7f96f Prevent recursive calls to winRaiseWindow. 2005-04-19 18:21:01 +00:00
Alexander Gottwald
8653db5d57 Force rebuilding of window stack if a window changes it's state from
minimized.
2005-03-10 20:05:46 +00:00
Alexander Gottwald
cb0aa2b4d8 Prevent winRaiseWindow from calling ConfigureWindow if the message was sent
from within winDestroyWindowsWindow
DestroyWindow send a WM_WINDOWPOSCHANGED to another window causing a
    restacking of all windows, even of the window which is just about to
    destroyed and whose structures may not be intact anymore.
2005-03-07 22:26:59 +00:00
Alexander Gottwald
409c0618bc on WM_WINDOWPOSCHANGED raise window directly and in sync without utilizing
the async windowmanager thread. Fixes some restacking problems occuring
    which were timing dependent Do not raise the window on WM_ACTIVATE
    Removed unused code for WM_WINDOWPOSCHANGING ESC is debug key. Print
    status but do not abort processing the message
2005-02-24 22:53:17 +00:00
Alexander Gottwald
01b156240c winmultiwindowwindow.c
winmultiwindowwndproc.c
Cleanup some message debugging
2005-02-12 14:55:24 +00:00
Alexander Gottwald
d3ca132061 winmultiwindowwindow.c
Create windows with SWP_NOACTIVATE flag (updated) (Kensuke Matsuzaki)
Fixes for window ordering problem (updated) (Kensuke Matsuzaki)
2005-01-31 10:49:30 +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
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
90f1536dd3 Initial revision 2003-11-25 19:29:01 +00:00