Commit Graph

642 Commits

Author SHA1 Message Date
Alexandre Julliard
2fd19dfb98 Use a dispatch table to handle X client messages. 2005-03-01 11:52:02 +00:00
Ulrich Czekalla
18fe91d8d2 If unexpected condition occurs just report an error. 2005-03-01 10:43:58 +00:00
Huw Davies
4cf9dd3d47 If the dibsection is based on a file-mapping object, then make sure
that the section is in sync when the dibsection is deleted.
2005-03-01 10:43:19 +00:00
Alexandre Julliard
94846a39dc Use a table of handlers to dispatch X events and get rid of the
special casing for DGA and tablet events.
Unify the declarations of all the event handlers.
2005-02-26 17:49:38 +00:00
Alexandre Julliard
0778a45da2 Moved clipboard event handling functions and some private data
structures to clipboard.c.
2005-02-25 21:01:15 +00:00
Alexandre Julliard
983a8b5888 Revert SC_CLOSE change, this is causing deadlocks. 2005-02-23 21:47:32 +00:00
Jason Edmeades
ddd1c1d0a1 Take into account additional requested spacing on break characters. 2005-02-23 12:42:17 +00:00
Alexandre Julliard
548c973457 Allow the client rectangle to be of arbitrary size and dimensions,
regardless of the window rectangle.
2005-02-22 19:41:43 +00:00
Ulrich Czekalla
43b5576998 Duplicate Windows behaviour and use SendMessage for the SC_CLOSE
system command instead of PostMessage.
2005-02-18 20:00:57 +00:00
Lauri Tulmin
373dc8909f Make minimized windows stay minimized. 2005-02-16 16:08:18 +00:00
Dmitry Timoshkov
39f960bdfa - Fix prototypes of GetClassLongA/W, GetClassLongPtrA/W and
SetClassLongA/W according to SDK definitions.
- Add prototypes for SetClassLongPtrA/W, protect some GWL_ and GCL_
  constants from using in Wine or in _WIN64 mode.
- Fix all places in Wine affected by the above changes.
2005-02-15 21:51:06 +00:00
Alexandre Julliard
e551555d4e Make the win data pointer only available in the thread that owns the
window.
2005-02-09 14:01:40 +00:00
Dmitry Timoshkov
641be42a88 Add support for Turkish (tr) X11 keyboard layout. 2005-02-09 13:25:59 +00:00
Dmitry Timoshkov
6dba0a7718 Add support for winevent hooks. 2005-02-03 16:40:20 +00:00
Alexandre Julliard
ae661da49c Properly compute the client area valid rects and pass them to the
server in set_window_pos to avoid invalidating areas that remain
valid.
2005-02-03 13:40:12 +00:00
Alexandre Julliard
d7726c3a73 Store the "managed" flag as a window property instead of the
Wine-specific WS_EX_MANAGED style bit.
2005-02-01 18:53:59 +00:00
Alexandre Julliard
f777d70a63 Only create an X window for top-level windows, not for child windows.
Get rid of the X client window too, it's no longer needed.
2005-01-31 16:34:07 +00:00
Alexandre Julliard
d56ccaa7e1 Use an X context to associated the x11drv private window data to a
window handle instead of accessing the WND structure directly.
2005-01-28 17:25:50 +00:00
Oliver Stieber
fe59db7ce3 Send a scancode through for the 5 key when numlock isn't on. 2005-01-28 11:27:00 +00:00
Glenn Wurster
bcaca0a5f7 Disable antialiasing of fonts while working in a palette. 2005-01-26 19:43:42 +00:00
Rein Klazes
3ee5db6e17 Make ShowWindow(...,SW_SHOWNA) also work on already visible windows
with some conformance tests.
2005-01-25 11:21:20 +00:00
Glenn Wurster
eae60bedd5 Disable antialiasing if the font dictates it. 2005-01-24 19:32:54 +00:00
Glenn Wurster
c3f8226ed1 Split caching of antialiased and non-antialiased glyphs. 2005-01-24 19:08:02 +00:00
Dmitry Timoshkov
50eb546e4f Put Brazilian ABNT2 keyboard layouts in line with appropriate virtual
keyboard maps.
2005-01-24 18:58:00 +00:00
Robert North
6d21f3e533 Bring wintab in line with Jeremy's X11 event timing patches again. 2005-01-24 13:38:32 +00:00
Robert North
589c9569b1 Add the rule that inverted cursor has -ve altitude, matching behaviour
on Windows wacom tablets.
2005-01-24 13:37:48 +00:00
Robert North
041e978353 Packets from eraser cursors are marked as inverted, matching behavior
on Windows Wacom tablets.
2005-01-24 13:36:42 +00:00
Robert North
e4a19500ca - In wintab's default system context, change context options to match
Wacom tablet in windows.
- Change device orientation unit definition to angular.
- Use Macros where appropriate to define cursor and device defaults.
2005-01-24 13:33:23 +00:00
Robert North
8ed495987e - Don't post messages on Wine message queue, if tablet context flags
posting are disabled.
- When posting messages on Wine message queue, use message base stored
  in tablet context, not the default message base.
- Ensure that X11 Proximity events put messages onto Wintab message
  queue.
2005-01-24 12:40:01 +00:00
Robert North
cb4652a71c Generate Wintab packets for XInput button up/down events. 2005-01-24 11:23:40 +00:00
Alexandre Julliard
5ae51c47dd Tweak SetWindowPos flags handling to make a few more of the messaging
tests pass.
2005-01-21 17:06:07 +00:00
Alexandre Julliard
f936428601 Make WIN_SetStyle more thread-safe by specifying the bits to change
instead of the new value.
2005-01-21 10:32:13 +00:00
Rémi Assailly
81b13c4bb5 Added missing declarations. 2005-01-20 20:36:01 +00:00
Alexandre Julliard
6382ffae2a Replace a number of calls to WIN_FindWndPtr by WIN_GetPtr. 2005-01-20 20:07:42 +00:00
Oleh R. Nykyforchyn
62b94d89bd Ukrainian codepage 21866 added and respective files corrected. Two
keyboard layouts (for Ukrainian and Russian) added.
2005-01-19 20:59:31 +00:00
Alexandre Julliard
6758db9a0c Get rid of nonclient.h and of the corresponding exported functions in
user32.spec.
2005-01-17 20:27:11 +00:00
Alexandre Julliard
fc5ce14592 Avoid most references to the internals of the WND structure by passing
around an x11drv_win_data pointer instead.
2005-01-17 19:17:47 +00:00
Alexandre Julliard
b819f4cd5c Removed a couple of unnecessary calls to WIN_SuspendWndsLock. 2005-01-17 15:49:02 +00:00
Alexandre Julliard
d820437b19 Removed unused ForceWindowRaise function. 2005-01-17 13:46:57 +00:00
Jeremy White
77502e7e62 Fix X11 event timing so that we correctly correlate X11 timing and
Wine timing and dynamically adjust it as we go.
2005-01-14 17:06:40 +00:00
Alexandre Julliard
56206376b8 Desktop window is repainted on WM_ERASEBKGND, it must never get a
WM_PAINT.
2005-01-11 15:15:11 +00:00
Alexandre Julliard
e2a7181069 Warning fix. 2005-01-11 15:13:11 +00:00
Jacek Caban
7e2a7c949d Get rid of W->A calls. 2005-01-11 15:10:56 +00:00
Eric Pouech
cf1d00bb08 Removed excessive statement (break after return or goto, not useful
break, not needed vars...)
2005-01-09 16:42:53 +00:00
Ulrich Czekalla
318b963f9f Always clearAllSelections since not clearing CLIPBOARD can get us into
an odd state.
2005-01-04 20:34:46 +00:00
Michael Stefaniuc
15a308a9d7 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2005-01-03 14:56:42 +00:00
Dmitry Timoshkov
ce81088eb5 - Do not print FIXME in X11DRV_GetKeyboardLayout if dwThreadid
identifies current thread.
- Make X11DRV_GetKeyboardLayoutList follow the same rule as
  X11DRV_GetKeyboardLayout and X11DRV_GetKeyboardLayoutName for CJK
  locales.
- There is no need to have 0xe001 in the high word of Japanese
  keyboard layouts lcids in main_key_tab, the above APIs take care of
  it.
- High word of a returned keyboard layout duplicates low word for non
  CJK locales under Windows.
2005-01-03 14:44:27 +00:00
Mike Hearn
9b98d3d3d8 Fix Xlib locking in create_desktop. 2004-12-27 17:03:15 +00:00
Michael Stefaniuc
5ad7d858e0 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2004-12-23 17:06:43 +00:00
Eric Pouech
4fa1d6bba7 Fixed bug with unsigned index in decreasing loop. 2004-12-22 17:16:03 +00:00
Jon Griffiths
32454a81a5 Remove unneeded headers to reduce unneeded rebuilds. 2004-12-20 19:00:11 +00:00
Rémi Assailly
853f79bdad - removed unused tagPALETTEOBJ and tagWINDOWPOS
- tagBITMAPOBJ is declared twice, removed one.
2004-12-17 19:35:16 +00:00
Dmitry Timoshkov
99fda0a1de Add a mouse input test case, make the test pass under Wine. 2004-12-17 18:49:24 +00:00
Michael Stefaniuc
1493433e38 Missing HeapFree's + 1 LocalFree (found by smatch). 2004-12-14 11:38:50 +00:00
Alexandre Julliard
25b6493aee Added some sanity checks on window dimensions. 2004-12-09 16:58:00 +00:00
Alexandre Julliard
6a78c16aac Moved private USER definitions to a new user_private.h header, and
removed the global user.h.
2004-12-08 18:06:14 +00:00
Alexandre Julliard
5defa49979 Moved update region handling to the server. 2004-12-07 17:31:53 +00:00
Jean-Michel Dault
ee2f10d51d Added another Canadian keyboard layout. 2004-12-06 17:06:20 +00:00
Dmitry Timoshkov
12f49fb9b1 ShowWindow activates only a being maximized child window, add a couple
of message tests for MDI child activation.
2004-12-06 16:38:19 +00:00
Eric Pouech
0a258964c2 Const correctness fixes. 2004-11-30 21:38:57 +00:00
Robert Shearman
83f7b39dab When changing from DIB_Status_GdiMod to DIB_Status_GdiMod, we have to
set the previous status to DIB_Status_GdiMod, otherwise a
non-committing unlock could incorrectly revert the DIB to another
state, rather than the correct DIB_Status_GdiMod.
2004-11-23 12:21:05 +00:00
Glenn Wurster
c26d15f876 Use physDev->textPixel instead of GetTextColor for ExtTextOut. 2004-11-22 18:10:16 +00:00
Huw Davies
a90a60866c Fallback to some sensible default values when underlining and striking
out bitmap fonts.
Rotate the strikeout line if the escapement is non-zero.
2004-11-19 18:10:47 +00:00
Kevin Koltzau
0e6408c408 Change AlphaBlend to use destination dimensions rather then source. 2004-11-09 20:02:57 +00:00
Walt Ogburn
0bec4b7024 Turn ISO_Left_Tab back into a tab character if needed. 2004-11-08 20:25:37 +00:00
Michael Kaufmann
0dd2910eba - Extended support for BITMAPCOREINFO / BITMAPCOREHEADER structures.
- Always calculate the location of the color table.
- CreateCompatibleBitmap: Create a DIB section if necessary.
- Added some tests.
2004-11-02 05:23:49 +00:00
Kevin Koltzau
92ec21bd2b Add stretching support to AlphaBlend. 2004-10-27 00:43:50 +00:00
Alexandre Julliard
d3c0cb77d9 VK_0-9 and VK_A-Z are not defined in the Windows headers, removed them
(spotted by Francois Gouget).
2004-10-22 20:29:10 +00:00
Robert North
e2bd6f36d0 Fix WTInfoA in wintab.c so it can now take lpOutput == NULL, as per
standard.
2004-10-21 19:53:02 +00:00
Alexandre Julliard
065fdde8f6 Authors: Doug Paul <doug@elemental.ath.cx>, Glenn Wurster <gwurster@scs.carleton.ca>
Change reading of PC_(EXPLICIT|NOCOLLAPSE|RESERVED) to handle multiple
values.
2004-10-18 21:18:30 +00:00
Vincent Béron
57fb99fa25 Protect some more types which can be redeclared in Xmd.h. 2004-10-18 19:37:19 +00:00
Dmitry Timoshkov
4f8a7592a7 Disable remaining piece of the code which auto assigns virtual key
codes, it breaks VK_OEM_102 in finnish/swedish keyboard layouts.
2004-10-08 20:50:24 +00:00
Dmitry Timoshkov
b0c45123e5 Add a test case for accelerators, make the test pass on Wine. 2004-10-05 23:45:35 +00:00
Dmitry Timoshkov
7d6f360f94 Ignore FocusOut event if there is no event window. 2004-09-29 21:11:28 +00:00
Michael Kaufmann
54be3001b4 - Add as many entries to the color map as specified by the DIB.
- Support bitmaps with a BITMAPV{4,5}HEADER.
2004-09-27 20:33:58 +00:00
Robert Shearman
bbdac5e475 GetWindowLong -> GetWindowLongPtr. 2004-09-22 19:14:08 +00:00
Rein Klazes
3430bc2cb2 X11DRV_ScrollDC should not have a WINAPI attribute. 2004-09-20 19:10:55 +00:00
Alexandre Julliard
807fe07417 Don't bother to return partial region data in get_window_region and
get_visible_region, return STATUS_BUFFER_OVERFLOW instead.
2004-09-17 18:20:11 +00:00
Huw Davies
daf776fdde When we blit with a monochrome dibsection as the source we should use
the colour table of that dib.
Added a test for this.
2004-09-16 20:29:25 +00:00
Huw Davies
530e789d7e It's important to keep the original dib colour table and not just the
colour mapping associated with a dib section - it's this table that
GetDIBColorTable should retrieve.
Added some GetDIBColorTable tests.
2004-09-16 19:10:14 +00:00
Dmitry Timoshkov
ca27b29f92 Remove a stray 'else' left by a previous patch. 2004-09-15 18:03:15 +00:00
Dmitry Timoshkov
d304e4f80d Log flags for WM_WINDOWPOSCHANGING/WM_WINDOWPOSCHANGED messages, make
the tests pass on Win95/Win98/Win2000, fix some test failures under
Wine.
2004-09-13 18:03:09 +00:00
Huw Davies
ce34568351 We want all 1bpp dibsections to have a monochrome bitmap and
everything else to be at the screen depth.
2004-09-10 19:35:56 +00:00
Alexandre Julliard
92acc58af6 Get rid of the WIN_SetRectangles export from user32. 2004-09-09 00:30:29 +00:00
Alexandre Julliard
bf5470c00e We still need to look for the top parent that doesn't clip siblings in
GetDC because of the X window clipping.
2004-09-01 17:30:35 +00:00
Alexandre Julliard
9fff718a6d wineclipsrv is no longer used, remove it. 2004-09-01 01:40:57 +00:00
Uwe Bonnes
a8509028c1 Spelling fix. 2004-08-30 18:36:35 +00:00
Huw Davies
ce4dfe23b4 Deprecate the "Resolution" entry in the config file in favour of
HKEY_CURRNET_CONFIG\Software\Fonts\LogPixels.
2004-08-26 18:24:49 +00:00
Evan Deaubl
627423d10b Fix an ERR log in X11DRV_CreateWindow. 2004-08-26 18:11:29 +00:00
Alexandre Julliard
8680ce1a0e In GetDC use the parent drawable when DCX_PARENTCLIP is set. 2004-08-24 18:49:34 +00:00
Alexandre Julliard
041c489a47 When possible, use the X window of the requested window in GetDC
instead of the parent to avoid trouble with OpenGL clipping.
2004-08-24 02:35:25 +00:00
Robert Shearman
553dc348b0 Allow the user to move managed windows by dragging on HTCAPTION
areas.
2004-08-18 23:47:48 +00:00
Krishna Murthy
af5feb9bdd Allow resizing windows without thickframe style. 2004-08-17 22:28:02 +00:00
Huw Davies
13f52454c4 Sync with dibsection in SetDIBitsToDevice. 2004-08-13 19:47:29 +00:00
Huw Davies
dd8922f20b Repect the width of both the src and dst when calculating how many
pixels to copy in a dib <-> bmp operation.
2004-08-12 20:02:39 +00:00
Hans Leidekker
5f6f63a49d Fix signed/unsigned comparison warnings. 2004-08-11 23:45:34 +00:00
Huw Davies
dbf5b2a320 Don't try to rotate bitmap fonts. 2004-08-11 19:34:20 +00:00
Huw Davies
175208f5e1 Ever since win98 pattern brushes have been able to be larger than 8x8
pixels, so remove this restriction.
2004-08-11 18:50:52 +00:00
Ulrich Czekalla
8322fc6a57 Avoid holding x11drv lock while calling function that grabs gdi
lock. Prevents potential deadly embrace.
2004-08-10 23:42:52 +00:00
Lionel Ulmer
aa25b1f886 Do not initialize variables before going into the Render short-cut. 2004-08-09 18:50:35 +00:00
Ofir Petruska
7054a8de78 Default DesktopDoubleBuffered to true. 2004-08-09 18:48:49 +00:00
Huw Davies
2bf1562c28 Actually pass the blend function on to the graphics driver. 2004-08-06 18:59:31 +00:00
Huw Davies
4e54df5a95 Added top-down dib support to AlphaBlend. 2004-08-04 18:15:42 +00:00
Huw Davies
dd5b23fddb Implement AlphaBlend using the XRENDER extension. 2004-08-02 18:54:54 +00:00
Huw Davies
f45befe411 Draw underline and strikeout lines in the non-xrender cases too. 2004-07-22 19:44:10 +00:00
Alexandre Julliard
642584c560 Make x11drv fail to load when it can't open the display, instead of
killing the whole process.
2004-07-13 03:49:52 +00:00
Marcus Meissner
035f34c99b Replaced lvalue casts / postincrement mixes. 2004-07-12 19:46:24 +00:00
Mike Hearn
c34b79ce43 Output X11 protocol errors before breaking into debugger. 2004-07-09 19:25:59 +00:00
Ulrich Czekalla
5b1a13b281 If the selection owner doesn't understand TARGETS, try retrieving
XA_STRING.
2004-07-08 20:14:37 +00:00
Ulrich Czekalla
0a8d550901 Handle case when data type is not registered. 2004-07-08 20:14:23 +00:00
Alexandre Julliard
6acd40dc98 Fixed X11DRV_GetDC for the desktop window.
Use the client window as drawable when possible.
2004-07-06 23:57:01 +00:00
Alexandre Julliard
618a7e5813 Added support for window regions in the server. 2004-06-29 03:53:25 +00:00
Alexandre Julliard
e59ec7cd94 Use X11DRV_GetRegionData to implement X11DRV_SetWindowRgn instead of
duplicating that functionality.
2004-06-28 23:54:22 +00:00
Dmitry Timoshkov
b3569e7015 Add a test case for clipboard functionality and fix some bugs revealed
by it.
2004-06-25 02:55:37 +00:00
Robert Shearman
55efefddee Fix small mistake in the previous visible region patch. 2004-06-24 04:06:51 +00:00
Dmitry Timoshkov
d530e54883 WM_WINDOWPOSCHANGED should always contain a final window position. 2004-06-23 20:50:30 +00:00
Alexandre Julliard
e8d86b7cd4 Moved visible region calculation to the server. 2004-06-23 20:44:58 +00:00
Vincent Béron
9d8036e1d8 Replace some more -debugmsg references for WINEDEBUG. 2004-06-21 23:56:15 +00:00
Alexandre Julliard
0118c8ba0f Only unmap the window when it gets moved off-screen by the app, not by
the window manager.
2004-06-18 22:34:19 +00:00
Dmitry Timoshkov
b6175f49af ShowWindow shouldn't fix SWP_ flags, it's the job of SetWindowPos. 2004-06-18 19:37:37 +00:00
Huw Davies
ed4bc907ef Remove an incorrect LeaveCriticalSection. 2004-06-16 19:02:25 +00:00
Ulrich Czekalla
06a60621ab ScrollDC should take into account overlapped windows. With this change
ScrollWindowEx can be moved out of X11drv.
2004-06-15 17:04:02 +00:00
Huw Davies
72ebbb61fa Don't allocate a glyphset until we actually need it. 2004-06-15 17:01:52 +00:00
Dmitry Timoshkov
4e23f101f3 Do nothing in ShowWindow(SW_SHOW) if a window is already visible. 2004-06-14 19:32:21 +00:00
Mike Hearn
0bc2edf341 Make UseXrandr default to true in the no config file case. 2004-06-14 16:58:38 +00:00
Mike Hearn
eff34efcf8 Ignore attempts to hide an already invisible window. Add a test case
for this behaviour, passes on Wine and Windows 2000.
2004-06-03 23:26:35 +00:00
Mike Hearn
e2a7b28960 Default to 96dpi when not specified in the config file. 2004-05-28 03:39:59 +00:00
Troy Rollo
2cf4ec3e2d Make underlining of fonts drawn at an angle follow the text. 2004-05-27 02:20:50 +00:00
Eric Pouech
df93f2eeee GetModuleFileName[AW] doesn't terminate the string if the buffer is
too small.
2004-05-19 03:22:55 +00:00
Patrik Stridvall
070db4e5de Fixed some issues found by winapi_check. 2004-05-17 21:08:31 +00:00
Dmitry Timoshkov
89525a1925 Fix Croatian keyboard layout to better match the XFree86 one. 2004-05-11 22:17:36 +00:00
Dmitry Timoshkov
80422fb830 Make WM_GETMINMAXINFO default behaviour more like the Windows one. 2004-05-07 00:41:32 +00:00
Ulrich Czekalla
b41466b3b1 Allow applications, under certain conditions, to set data into the
clipboard even if they are not the clipboard owners.
2004-05-06 23:40:30 +00:00
Francois Gouget
cfc3943c5f Make our ascii strings static const.
Remove a couple string variables that were used only once and use the
string literal directly.
2004-05-04 04:13:05 +00:00
Alexandre Julliard
9f986f9a99 Don't close the current thread display on process exit, we don't close
the other ones anyway. Should avoid XRender error in metafile test.
2004-05-04 02:57:29 +00:00
Krzysztof Foltman
9a900aa279 Make sure ascent/descent values don't become negative after coordinate
mapping.
2004-04-29 20:01:23 +00:00
Alexandre Julliard
7f8ad0a2bf Fixed unsigned comparison issue in previous change. 2004-04-28 00:31:21 +00:00
Alexandre Julliard
59b7d34b7d Replace empty window rect checks by a new X11DRV_is_window_rect_mapped
function so that we can reuse that support for off-screen windows.
2004-04-27 23:32:01 +00:00
Jukka Heinonen
6d58de6374 If source and destination are the same object, don't lock the object
twice as it will only be unlocked once.
2004-04-26 20:06:08 +00:00
Dmitry Timoshkov
11af61652b - start assigning custom VK codes from VK_OEM_8 since this code
already presents in the layout tables
- search the layout tables only if XLookupString returned non zero
  number of characters for a keysym, otherwise that's a non character
  key
- avoid inserting VK_OEM_x codes into unassigned positions since these
  codes might already be in the layout table, thus creating a conflict
2004-04-17 00:21:51 +00:00
Dmitry Timoshkov
e06dd2cfe4 A workaround for missing real support for keyboard layout APIs. 2004-04-14 19:34:06 +00:00
Dmitry Timoshkov
e1d413da84 Add a test case for children Z ordering at window creation time. 2004-04-12 22:05:53 +00:00
Dmitry Timoshkov
062080d633 Conditionally compile code which uses XK_EuroSign definition. 2004-04-09 19:06:08 +00:00
Dmitry Timoshkov
70c4864e8c Restore correct focus handling for ShowWindow(SW_HIDE) case. 2004-04-08 19:47:01 +00:00
Dmitry Timoshkov
b9001f3443 Revert an erroneous patch. 2004-04-08 19:07:20 +00:00
Mike McCormack
c7c9f93913 Load the XRandR extension dynamically (with help from Alex Pasadyn). 2004-04-07 03:57:35 +00:00
Rein Klazes
46138d8ef7 Do not crash if the clipboard format is unknown. 2004-04-05 20:17:13 +00:00
Dmitry Timoshkov
11a3a4f59c Add SWP_NOZORDER in the case it's not needed. 2004-04-02 20:22:29 +00:00
Dmitry Timoshkov
9858e235d2 A decision whether add SWP_NOACTIVATE or not should be based on
GetActiveWindow() test.
2004-04-02 20:18:20 +00:00
Dmitry Timoshkov
0d3748bbf6 ShowWindow should not optimize SW_HIDE, it's the job of SetWindowPos. 2004-04-02 20:16:39 +00:00