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
84d68639
Commit
84d68639
authored
Jun 20, 2011
by
André Hentschel
Committed by
Alexandre Julliard
Jun 28, 2011
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
shdocvw: Add ITaskbarList2 Interface.
parent
ec2f5136
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
48 additions
and
19 deletions
+48
-19
taskbarlist.c
dlls/shdocvw/taskbarlist.c
+33
-19
shobjidl.idl
include/shobjidl.idl
+15
-0
No files found.
dlls/shdocvw/taskbarlist.c
View file @
84d68639
...
...
@@ -27,23 +27,24 @@ WINE_DEFAULT_DEBUG_CHANNEL(shdocvw);
struct
taskbar_list
{
ITaskbarList
ITaskbarList
_iface
;
ITaskbarList
2
ITaskbarList2
_iface
;
LONG
refcount
;
};
static
inline
struct
taskbar_list
*
impl_from_ITaskbarList
(
ITaskbarList
*
iface
)
static
inline
struct
taskbar_list
*
impl_from_ITaskbarList
2
(
ITaskbarList2
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
struct
taskbar_list
,
ITaskbarList_iface
);
return
CONTAINING_RECORD
(
iface
,
struct
taskbar_list
,
ITaskbarList
2
_iface
);
}
/* IUnknown methods */
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_QueryInterface
(
ITaskbarList
*
iface
,
REFIID
riid
,
void
**
object
)
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_QueryInterface
(
ITaskbarList
2
*
iface
,
REFIID
riid
,
void
**
object
)
{
TRACE
(
"iface %p, riid %s, object %p
\n
"
,
iface
,
debugstr_guid
(
riid
),
object
);
if
(
IsEqualGUID
(
riid
,
&
IID_ITaskbarList
)
||
IsEqualGUID
(
riid
,
&
IID_IUnknown
))
if
(
IsEqualGUID
(
riid
,
&
IID_ITaskbarList
)
||
IsEqualGUID
(
riid
,
&
IID_ITaskbarList2
)
||
IsEqualGUID
(
riid
,
&
IID_IUnknown
))
{
IUnknown_AddRef
(
iface
);
*
object
=
iface
;
...
...
@@ -56,9 +57,9 @@ static HRESULT STDMETHODCALLTYPE taskbar_list_QueryInterface(ITaskbarList *iface
return
E_NOINTERFACE
;
}
static
ULONG
STDMETHODCALLTYPE
taskbar_list_AddRef
(
ITaskbarList
*
iface
)
static
ULONG
STDMETHODCALLTYPE
taskbar_list_AddRef
(
ITaskbarList
2
*
iface
)
{
struct
taskbar_list
*
This
=
impl_from_ITaskbarList
(
iface
);
struct
taskbar_list
*
This
=
impl_from_ITaskbarList
2
(
iface
);
ULONG
refcount
=
InterlockedIncrement
(
&
This
->
refcount
);
TRACE
(
"%p increasing refcount to %u
\n
"
,
This
,
refcount
);
...
...
@@ -66,9 +67,9 @@ static ULONG STDMETHODCALLTYPE taskbar_list_AddRef(ITaskbarList *iface)
return
refcount
;
}
static
ULONG
STDMETHODCALLTYPE
taskbar_list_Release
(
ITaskbarList
*
iface
)
static
ULONG
STDMETHODCALLTYPE
taskbar_list_Release
(
ITaskbarList
2
*
iface
)
{
struct
taskbar_list
*
This
=
impl_from_ITaskbarList
(
iface
);
struct
taskbar_list
*
This
=
impl_from_ITaskbarList
2
(
iface
);
ULONG
refcount
=
InterlockedDecrement
(
&
This
->
refcount
);
TRACE
(
"%p decreasing refcount to %u
\n
"
,
This
,
refcount
);
...
...
@@ -84,42 +85,53 @@ static ULONG STDMETHODCALLTYPE taskbar_list_Release(ITaskbarList *iface)
/* ITaskbarList methods */
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_HrInit
(
ITaskbarList
*
iface
)
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_HrInit
(
ITaskbarList
2
*
iface
)
{
TRACE
(
"iface %p
\n
"
,
iface
);
return
S_OK
;
}
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_AddTab
(
ITaskbarList
*
iface
,
HWND
hwnd
)
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_AddTab
(
ITaskbarList
2
*
iface
,
HWND
hwnd
)
{
FIXME
(
"iface %p, hwnd %p stub!
\n
"
,
iface
,
hwnd
);
return
E_NOTIMPL
;
}
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_DeleteTab
(
ITaskbarList
*
iface
,
HWND
hwnd
)
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_DeleteTab
(
ITaskbarList
2
*
iface
,
HWND
hwnd
)
{
FIXME
(
"iface %p, hwnd %p stub!
\n
"
,
iface
,
hwnd
);
return
E_NOTIMPL
;
}
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_ActivateTab
(
ITaskbarList
*
iface
,
HWND
hwnd
)
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_ActivateTab
(
ITaskbarList
2
*
iface
,
HWND
hwnd
)
{
FIXME
(
"iface %p, hwnd %p stub!
\n
"
,
iface
,
hwnd
);
return
E_NOTIMPL
;
}
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_SetActiveAlt
(
ITaskbarList
*
iface
,
HWND
hwnd
)
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_SetActiveAlt
(
ITaskbarList
2
*
iface
,
HWND
hwnd
)
{
FIXME
(
"iface %p, hwnd %p stub!
\n
"
,
iface
,
hwnd
);
return
E_NOTIMPL
;
}
static
const
struct
ITaskbarListVtbl
taskbar_list_vtbl
=
/* ITaskbarList2 method */
static
HRESULT
STDMETHODCALLTYPE
taskbar_list_MarkFullscreenWindow
(
ITaskbarList2
*
iface
,
HWND
hwnd
,
BOOL
fullscreen
)
{
FIXME
(
"iface %p, hwnd %p, fullscreen %s stub!
\n
"
,
iface
,
hwnd
,
(
fullscreen
)
?
"true"
:
"false"
);
return
E_NOTIMPL
;
}
static
const
struct
ITaskbarList2Vtbl
taskbar_list_vtbl
=
{
/* IUnknown methods */
taskbar_list_QueryInterface
,
...
...
@@ -131,6 +143,8 @@ static const struct ITaskbarListVtbl taskbar_list_vtbl =
taskbar_list_DeleteTab
,
taskbar_list_ActivateTab
,
taskbar_list_SetActiveAlt
,
/* ITaskbarList2 method */
taskbar_list_MarkFullscreenWindow
,
};
HRESULT
TaskbarList_Create
(
IUnknown
*
outer
,
REFIID
riid
,
void
**
taskbar_list
)
...
...
@@ -155,12 +169,12 @@ HRESULT TaskbarList_Create(IUnknown *outer, REFIID riid, void **taskbar_list)
return
E_OUTOFMEMORY
;
}
object
->
ITaskbarList_iface
.
lpVtbl
=
&
taskbar_list_vtbl
;
object
->
ITaskbarList
2
_iface
.
lpVtbl
=
&
taskbar_list_vtbl
;
object
->
refcount
=
0
;
TRACE
(
"Created ITaskbarList %p
\n
"
,
object
);
TRACE
(
"Created ITaskbarList
2
%p
\n
"
,
object
);
hr
=
ITaskbarList
_QueryInterface
(
&
object
->
ITaskbarList
_iface
,
riid
,
taskbar_list
);
hr
=
ITaskbarList
2_QueryInterface
(
&
object
->
ITaskbarList2
_iface
,
riid
,
taskbar_list
);
if
(
FAILED
(
hr
))
{
HeapFree
(
GetProcessHeap
(),
0
,
object
);
...
...
include/shobjidl.idl
View file @
84d68639
...
...
@@ -1857,6 +1857,21 @@ interface ITaskbarList : IUnknown
cpp_quote("EXTERN_C const CLSID CLSID_TaskbarList;")
/*****************************************************************************
* ITaskbarList2 interface
*/
[
object,
uuid(602D4995-B13A-429B-A66E-1935E44F4317),
pointer_default(unique)
]
interface ITaskbarList2 : ITaskbarList
{
HRESULT MarkFullscreenWindow(
[in] HWND hwnd,
[in] BOOL fullscreen);
}
/*****************************************************************************
* IAutoCompleteDropDown interface
*/
[
...
...
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