Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
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-winehq
Commits
00b06dac
Commit
00b06dac
authored
Jan 04, 2010
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winex11: Don't process ConfigureNotify events that have been superseded by a…
winex11: Don't process ConfigureNotify events that have been superseded by a later configure request.
parent
f74e312b
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
17 additions
and
7 deletions
+17
-7
event.c
dlls/winex11.drv/event.c
+9
-2
window.c
dlls/winex11.drv/window.c
+7
-5
x11drv.h
dlls/winex11.drv/x11drv.h
+1
-0
No files found.
dlls/winex11.drv/event.c
View file @
00b06dac
...
...
@@ -308,8 +308,8 @@ static inline void call_event_handler( Display *display, XEvent *event )
hwnd
=
0
;
/* not for a registered window */
if
(
!
hwnd
&&
event
->
xany
.
window
==
root_window
)
hwnd
=
GetDesktopWindow
();
TRACE
(
"%s for hwnd/window %p/%lx
\n
"
,
dbgstr_event
(
event
->
type
),
hwnd
,
event
->
xany
.
window
);
TRACE
(
"%
lu %
s for hwnd/window %p/%lx
\n
"
,
event
->
xany
.
serial
,
dbgstr_event
(
event
->
type
),
hwnd
,
event
->
xany
.
window
);
wine_tsx11_unlock
();
thread_data
=
x11drv_thread_data
();
prev
=
thread_data
->
current_event
;
...
...
@@ -829,6 +829,13 @@ void X11DRV_ConfigureNotify( HWND hwnd, XEvent *xev )
if
(
!
hwnd
)
return
;
if
(
!
(
data
=
X11DRV_get_win_data
(
hwnd
)))
return
;
if
(
!
data
->
mapped
||
data
->
iconic
||
!
data
->
managed
)
return
;
if
(
data
->
configure_serial
&&
(
long
)(
data
->
configure_serial
-
event
->
serial
)
>
0
)
{
TRACE
(
"win %p/%lx event %d,%d,%dx%d ignoring old serial %lu/%lu
\n
"
,
hwnd
,
data
->
whole_window
,
event
->
x
,
event
->
y
,
event
->
width
,
event
->
height
,
event
->
serial
,
data
->
configure_serial
);
return
;
}
/* Get geometry */
...
...
dlls/winex11.drv/window.c
View file @
00b06dac
...
...
@@ -1321,16 +1321,18 @@ static void sync_window_position( Display *display, struct x11drv_win_data *data
/* and Above with a sibling doesn't work so well either, so we ignore it */
}
TRACE
(
"setting win %p/%lx pos %d,%d,%dx%d after %lx changes=%x
\n
"
,
data
->
hwnd
,
data
->
whole_window
,
data
->
whole_rect
.
left
,
data
->
whole_rect
.
top
,
data
->
whole_rect
.
right
-
data
->
whole_rect
.
left
,
data
->
whole_rect
.
bottom
-
data
->
whole_rect
.
top
,
changes
.
sibling
,
mask
);
wine_tsx11_lock
();
set_size_hints
(
display
,
data
,
style
);
data
->
configure_serial
=
NextRequest
(
display
);
XReconfigureWMWindow
(
display
,
data
->
whole_window
,
DefaultScreen
(
display
),
mask
,
&
changes
);
wine_tsx11_unlock
();
TRACE
(
"win %p/%lx pos %d,%d,%dx%d after %lx changes=%x serial=%lu
\n
"
,
data
->
hwnd
,
data
->
whole_window
,
data
->
whole_rect
.
left
,
data
->
whole_rect
.
top
,
data
->
whole_rect
.
right
-
data
->
whole_rect
.
left
,
data
->
whole_rect
.
bottom
-
data
->
whole_rect
.
top
,
changes
.
sibling
,
mask
,
data
->
configure_serial
);
}
...
...
dlls/winex11.drv/x11drv.h
View file @
00b06dac
...
...
@@ -741,6 +741,7 @@ struct x11drv_win_data
BOOL
shaped
:
1
;
/* is window using a custom region shape? */
int
wm_state
;
/* current value of the WM_STATE property */
DWORD
net_wm_state
;
/* bit mask of active x11drv_net_wm_state values */
unsigned
long
configure_serial
;
/* serial number of last configure request */
HBITMAP
hWMIconBitmap
;
HBITMAP
hWMIconMask
;
};
...
...
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