Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-fonts
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
Aleksandr Isakov
wine-fonts
Commits
8cb06405
Commit
8cb06405
authored
Jun 24, 2022
by
Vitaly Lipatov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[PATCH v2] winex11.drv: Make "RoamingWindow" not managed. (eterbug #15105)
parent
9409fd44
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
14 additions
and
1 deletion
+14
-1
window.c
dlls/winex11.drv/window.c
+14
-1
No files found.
dlls/winex11.drv/window.c
View file @
8cb06405
...
...
@@ -259,12 +259,26 @@ static struct x11drv_win_data *alloc_win_data( Display *display, HWND hwnd )
*/
static
BOOL
is_window_managed
(
HWND
hwnd
,
UINT
swp_flags
,
const
RECT
*
window_rect
)
{
static
const
WCHAR
RoamingWindow
[]
=
{
'H'
,
'w'
,
'n'
,
'd'
,
'W'
,
'r'
,
'a'
,
'p'
,
'p'
,
'e'
,
'r'
,
'['
,
'D'
,
'e'
,
'f'
,
'a'
,
'u'
,
'l'
,
't'
,
'D'
,
'o'
,
'm'
,
'a'
,
'i'
,
'n'
,
';'
,
';'
};
DWORD
style
,
ex_style
;
WCHAR
buf
[
256
];
UNICODE_STRING
name
=
{
.
Buffer
=
buf
,
.
MaximumLength
=
256
*
sizeof
(
WCHAR
)
};
if
(
!
managed_mode
)
return
FALSE
;
/* child windows are not managed */
style
=
NtUserGetWindowLongW
(
hwnd
,
GWL_STYLE
);
ex_style
=
NtUserGetWindowLongW
(
hwnd
,
GWL_EXSTYLE
);
NtUserGetClassName
(
hwnd
,
FALSE
,
&
name
);
/* Make "RoamingWindow" not managed, eterbug #15105 */
if
(
!
wcsncmp
(
buf
,
RoamingWindow
,
ARRAY_SIZE
(
RoamingWindow
))
&&
style
==
0x06c80000
&&
ex_style
==
0x00080100
)
{
TRACE
(
"RoamingWindow: %p => NOT managed
\n
"
,
hwnd
);
return
FALSE
;
}
/* child windows are not managed */
if
((
style
&
(
WS_CHILD
|
WS_POPUP
))
==
WS_CHILD
)
return
FALSE
;
/* activated windows are managed */
if
(
!
(
swp_flags
&
(
SWP_NOACTIVATE
|
SWP_HIDEWINDOW
)))
return
TRUE
;
...
...
@@ -289,7 +303,6 @@ static BOOL is_window_managed( HWND hwnd, UINT swp_flags, const RECT *window_rec
return
TRUE
;
}
/* application windows are managed */
ex_style
=
NtUserGetWindowLongW
(
hwnd
,
GWL_EXSTYLE
);
if
(
ex_style
&
WS_EX_APPWINDOW
)
return
TRUE
;
/* windows that own popups are managed */
if
(
has_owned_popups
(
hwnd
))
return
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