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
99c09872
Commit
99c09872
authored
Feb 18, 2021
by
Zebediah Figura
Committed by
Alexandre Julliard
Feb 19, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
quartz: Inline the WndNotify structure into struct filter_graph.
Signed-off-by:
Zebediah Figura
<
z.figura12@gmail.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
d40bc6dc
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
30 additions
and
31 deletions
+30
-31
filtergraph.c
dlls/quartz/filtergraph.c
+30
-31
No files found.
dlls/quartz/filtergraph.c
View file @
99c09872
...
...
@@ -42,13 +42,6 @@
WINE_DEFAULT_DEBUG_CHANNEL
(
quartz
);
typedef
struct
{
HWND
hWnd
;
/* Target window */
UINT
msg
;
/* User window message */
LONG_PTR
instance
;
/* User data */
int
disabled
;
/* Disabled messages posting */
}
WndNotify
;
struct
media_event
{
struct
list
entry
;
...
...
@@ -113,9 +106,11 @@ struct filter_graph
struct
list
media_events
;
HANDLE
media_event_handle
;
HWND
media_event_window
;
UINT
media_event_message
;
LPARAM
media_event_lparam
;
HANDLE
hEventCompletion
;
int
CompletionStatus
;
WndNotify
notif
;
int
nRenderers
;
int
EcCompleteCount
;
int
HandleEcComplete
;
...
...
@@ -141,6 +136,7 @@ struct filter_graph
unsigned
int
needs_async_run
:
1
;
unsigned
int
got_ec_complete
:
1
;
unsigned
int
media_events_disabled
:
1
;
};
struct
enum_filters
...
...
@@ -317,8 +313,8 @@ static BOOL queue_media_event(struct filter_graph *graph, LONG code,
list_add_tail
(
&
graph
->
media_events
,
&
event
->
entry
);
SetEvent
(
graph
->
media_event_handle
);
if
(
graph
->
notif
.
hWnd
)
PostMessageW
(
graph
->
notif
.
hWnd
,
graph
->
notif
.
msg
,
0
,
graph
->
notif
.
instance
);
if
(
graph
->
media_event_window
)
PostMessageW
(
graph
->
media_event_window
,
graph
->
media_event_message
,
0
,
graph
->
media_event_lparam
);
return
TRUE
;
}
...
...
@@ -4826,44 +4822,47 @@ static HRESULT WINAPI MediaEvent_FreeEventParams(IMediaEventEx *iface, LONG lEvC
}
/*** IMediaEventEx methods ***/
static
HRESULT
WINAPI
MediaEvent_SetNotifyWindow
(
IMediaEventEx
*
iface
,
OAHWND
hwnd
,
LONG
lMsg
,
LONG_PTR
lInstanceData
)
static
HRESULT
WINAPI
MediaEvent_SetNotifyWindow
(
IMediaEventEx
*
iface
,
OAHWND
window
,
LONG
message
,
LONG_PTR
lparam
)
{
struct
filter_graph
*
This
=
impl_from_IMediaEventEx
(
iface
);
struct
filter_graph
*
graph
=
impl_from_IMediaEventEx
(
iface
);
TRACE
(
"
(%p/%p)->(%08lx, %d, %08lx)
\n
"
,
This
,
iface
,
hwnd
,
lMsg
,
lInstanceData
);
TRACE
(
"
graph %p, window %#Ix, message %#x, lparam %#Ix.
\n
"
,
graph
,
window
,
message
,
lparam
);
This
->
notif
.
hWnd
=
(
HWND
)
hwnd
;
This
->
notif
.
msg
=
lMsg
;
This
->
notif
.
instance
=
lInstanceData
;
graph
->
media_event_window
=
(
HWND
)
window
;
graph
->
media_event_message
=
message
;
graph
->
media_event_lparam
=
lparam
;
return
S_OK
;
}
static
HRESULT
WINAPI
MediaEvent_SetNotifyFlags
(
IMediaEventEx
*
iface
,
LONG
lNoNotifyF
lags
)
static
HRESULT
WINAPI
MediaEvent_SetNotifyFlags
(
IMediaEventEx
*
iface
,
LONG
f
lags
)
{
struct
filter_graph
*
This
=
impl_from_IMediaEventEx
(
iface
);
struct
filter_graph
*
graph
=
impl_from_IMediaEventEx
(
iface
);
TRACE
(
"
(%p/%p)->(%d)
\n
"
,
This
,
iface
,
lNoNotifyF
lags
);
TRACE
(
"
graph %p, flags %#x.
\n
"
,
graph
,
f
lags
);
if
((
lNoNotifyFlags
!=
0
)
&&
(
lNoNotifyFlags
!=
1
))
return
E_INVALIDARG
;
if
(
flags
&
~
AM_MEDIAEVENT_NONOTIFY
)
{
WARN
(
"Invalid flags %#x, returning E_INVALIDARG.
\n
"
,
flags
);
return
E_INVALIDARG
;
}
This
->
notif
.
disabled
=
lNoNotifyF
lags
;
graph
->
media_events_disabled
=
f
lags
;
return
S_OK
;
}
static
HRESULT
WINAPI
MediaEvent_GetNotifyFlags
(
IMediaEventEx
*
iface
,
LONG
*
lplNoNotifyF
lags
)
static
HRESULT
WINAPI
MediaEvent_GetNotifyFlags
(
IMediaEventEx
*
iface
,
LONG
*
f
lags
)
{
struct
filter_graph
*
This
=
impl_from_IMediaEventEx
(
iface
);
struct
filter_graph
*
graph
=
impl_from_IMediaEventEx
(
iface
);
TRACE
(
"
(%p/%p)->(%p)
\n
"
,
This
,
iface
,
lplNoNotifyF
lags
);
TRACE
(
"
graph %p, flags %p.
\n
"
,
graph
,
f
lags
);
if
(
!
lplNoNotifyF
lags
)
return
E_POINTER
;
if
(
!
f
lags
)
return
E_POINTER
;
*
lplNoNotifyFlags
=
This
->
notif
.
disabled
;
*
flags
=
graph
->
media_events_
disabled
;
return
S_OK
;
}
...
...
@@ -5246,7 +5245,7 @@ static HRESULT WINAPI MediaEventSink_Notify(IMediaEventSink *iface, LONG code,
{
if
(
++
graph
->
EcCompleteCount
==
graph
->
nRenderers
)
{
if
(
graph
->
notif
.
disabled
)
if
(
graph
->
media_events_
disabled
)
SetEvent
(
graph
->
media_event_handle
);
else
queue_media_event
(
graph
,
EC_COMPLETE
,
S_OK
,
0
);
...
...
@@ -5259,7 +5258,7 @@ static HRESULT WINAPI MediaEventSink_Notify(IMediaEventSink *iface, LONG code,
{
FIXME
(
"EC_REPAINT is not handled.
\n
"
);
}
else
if
(
!
graph
->
notif
.
disabled
)
else
if
(
!
graph
->
media_events_
disabled
)
{
queue_media_event
(
graph
,
code
,
param1
,
param2
);
}
...
...
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