Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
0dcd1eaa
Commit
0dcd1eaa
authored
May 02, 2022
by
Jacek Caban
Committed by
Alexandre Julliard
May 06, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winex11: Directly use NtUserCreateWindowEx.
Signed-off-by:
Jacek Caban
<
jacek@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
21c8ff87
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
17 additions
and
9 deletions
+17
-9
mouse.c
dlls/winex11.drv/mouse.c
+5
-2
window.c
dlls/winex11.drv/window.c
+12
-7
No files found.
dlls/winex11.drv/mouse.c
View file @
0dcd1eaa
...
...
@@ -373,6 +373,7 @@ static BOOL grab_clipping_window( const RECT *clip )
#if HAVE_X11_EXTENSIONS_XINPUT2_H
static
const
WCHAR
messageW
[]
=
{
'M'
,
'e'
,
's'
,
's'
,
'a'
,
'g'
,
'e'
,
0
};
struct
x11drv_thread_data
*
data
=
x11drv_thread_data
();
UNICODE_STRING
class_name
;
Window
clip_window
;
HWND
msg_hwnd
=
0
;
POINT
pos
;
...
...
@@ -383,8 +384,10 @@ static BOOL grab_clipping_window( const RECT *clip )
if
(
!
data
)
return
FALSE
;
if
(
!
(
clip_window
=
init_clip_window
()))
return
TRUE
;
if
(
!
(
msg_hwnd
=
CreateWindowW
(
messageW
,
NULL
,
0
,
0
,
0
,
0
,
0
,
HWND_MESSAGE
,
0
,
GetModuleHandleW
(
0
),
NULL
)))
RtlInitUnicodeString
(
&
class_name
,
messageW
);
if
(
!
(
msg_hwnd
=
NtUserCreateWindowEx
(
0
,
&
class_name
,
&
class_name
,
NULL
,
0
,
0
,
0
,
0
,
0
,
HWND_MESSAGE
,
0
,
NtCurrentTeb
()
->
Peb
->
ImageBaseAddress
,
NULL
,
0
,
NULL
,
0
,
FALSE
)))
return
TRUE
;
if
(
keyboard_grabbed
)
...
...
dlls/winex11.drv/window.c
View file @
0dcd1eaa
...
...
@@ -2004,10 +2004,11 @@ HWND create_foreign_window( Display *display, Window xwin )
unsigned
int
nchildren
;
XWindowAttributes
attr
;
DWORD
style
=
WS_CLIPCHILDREN
;
UNICODE_STRING
class_name
;
if
(
!
class_registered
)
{
UNICODE_STRING
class_name
,
version
=
{
0
};
UNICODE_STRING
version
=
{
0
};
WNDCLASSEXW
class
;
memset
(
&
class
,
0
,
sizeof
(
class
)
);
...
...
@@ -2050,8 +2051,10 @@ HWND create_foreign_window( Display *display, Window xwin )
pos
.
y
=
attr
.
y
;
}
hwnd
=
CreateWindowW
(
classW
,
NULL
,
style
,
pos
.
x
,
pos
.
y
,
attr
.
width
,
attr
.
height
,
parent
,
0
,
0
,
NULL
);
RtlInitUnicodeString
(
&
class_name
,
classW
);
hwnd
=
NtUserCreateWindowEx
(
0
,
&
class_name
,
&
class_name
,
NULL
,
style
,
pos
.
x
,
pos
.
y
,
attr
.
width
,
attr
.
height
,
parent
,
0
,
NULL
,
NULL
,
0
,
NULL
,
0
,
FALSE
);
if
(
!
(
data
=
alloc_win_data
(
display
,
hwnd
)))
{
...
...
@@ -2167,6 +2170,7 @@ NTSTATUS x11drv_systray_dock( void *arg )
XSetWindowAttributes
attr
;
XVisualInfo
visual
;
struct
x11drv_win_data
*
data
;
UNICODE_STRING
class_name
;
BOOL
layered
;
HWND
hwnd
;
...
...
@@ -2189,10 +2193,11 @@ NTSTATUS x11drv_systray_dock( void *arg )
*
params
->
layered
=
layered
=
(
visual
.
depth
==
32
);
hwnd
=
CreateWindowExW
(
layered
?
WS_EX_LAYERED
:
0
,
icon_classname
,
NULL
,
WS_CLIPSIBLINGS
|
WS_POPUP
,
CW_USEDEFAULT
,
CW_USEDEFAULT
,
params
->
cx
,
params
->
cy
,
NULL
,
NULL
,
NULL
,
params
->
icon
);
RtlInitUnicodeString
(
&
class_name
,
icon_classname
);
hwnd
=
NtUserCreateWindowEx
(
layered
?
WS_EX_LAYERED
:
0
,
&
class_name
,
&
class_name
,
NULL
,
WS_CLIPSIBLINGS
|
WS_POPUP
,
CW_USEDEFAULT
,
CW_USEDEFAULT
,
params
->
cx
,
params
->
cy
,
NULL
,
0
,
NULL
,
params
->
icon
,
0
,
NULL
,
0
,
FALSE
);
if
(
!
(
data
=
get_win_data
(
hwnd
)))
return
STATUS_UNSUCCESSFUL
;
if
(
layered
)
set_window_visual
(
data
,
&
visual
,
TRUE
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment