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
a15df248
Commit
a15df248
authored
May 19, 2022
by
Jacek Caban
Committed by
Alexandre Julliard
May 19, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
win32u: Export NtUserGetWindowPlacement.
Signed-off-by:
Jacek Caban
<
jacek@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
9abd2ae8
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
18 additions
and
30 deletions
+18
-30
user32.spec
dlls/user32/user32.spec
+1
-1
winpos.c
dlls/user32/winpos.c
+1
-13
gdiobj.c
dlls/win32u/gdiobj.c
+1
-0
sysparams.c
dlls/win32u/sysparams.c
+1
-1
win32u.spec
dlls/win32u/win32u.spec
+1
-1
win32u_private.h
dlls/win32u/win32u_private.h
+1
-1
window.c
dlls/win32u/window.c
+5
-6
wrappers.c
dlls/win32u/wrappers.c
+6
-0
ntuser.h
include/ntuser.h
+1
-7
No files found.
dlls/user32/user32.spec
View file @
a15df248
...
...
@@ -412,7 +412,7 @@
@ stdcall GetWindowModuleFileName(long ptr long) GetWindowModuleFileNameA
@ stdcall GetWindowModuleFileNameA(long ptr long)
@ stdcall GetWindowModuleFileNameW(long ptr long)
@ stdcall GetWindowPlacement(long ptr)
@ stdcall GetWindowPlacement(long ptr)
NtUserGetWindowPlacement
@ stdcall GetWindowRect(long ptr)
@ stdcall GetWindowRgn(long long)
@ stdcall GetWindowRgnBox(long ptr)
...
...
dlls/user32/winpos.c
View file @
a15df248
...
...
@@ -225,7 +225,7 @@ UINT WINAPI GetInternalWindowPos( HWND hwnd, LPRECT rectWnd,
WINDOWPLACEMENT
wndpl
;
wndpl
.
length
=
sizeof
(
wndpl
);
if
(
GetWindowPlacement
(
hwnd
,
&
wndpl
))
if
(
NtUser
GetWindowPlacement
(
hwnd
,
&
wndpl
))
{
if
(
rectWnd
)
*
rectWnd
=
wndpl
.
rcNormalPosition
;
if
(
ptIcon
)
*
ptIcon
=
wndpl
.
ptMinPosition
;
...
...
@@ -236,18 +236,6 @@ UINT WINAPI GetInternalWindowPos( HWND hwnd, LPRECT rectWnd,
/***********************************************************************
* GetWindowPlacement (USER32.@)
*
* Win95:
* Fails if wndpl->length of Win95 (!) apps is invalid.
*/
BOOL
WINAPI
GetWindowPlacement
(
HWND
hwnd
,
WINDOWPLACEMENT
*
wndpl
)
{
return
NtUserGetWindowPlacement
(
hwnd
,
wndpl
);
}
/***********************************************************************
* AnimateWindow (USER32.@)
* Shows/Hides a window with an animation
* NO ANIMATION YET
...
...
dlls/win32u/gdiobj.c
View file @
a15df248
...
...
@@ -1184,6 +1184,7 @@ static struct unix_funcs unix_funcs =
NtUserGetUpdateRect
,
NtUserGetUpdateRgn
,
NtUserGetUpdatedClipboardFormats
,
NtUserGetWindowPlacement
,
NtUserHideCaret
,
NtUserIsClipboardFormatAvailable
,
NtUserMapVirtualKeyEx
,
...
...
dlls/win32u/sysparams.c
View file @
a15df248
...
...
@@ -2163,7 +2163,7 @@ HMONITOR monitor_from_window( HWND hwnd, DWORD flags, UINT dpi )
TRACE
(
"(%p, 0x%08x)
\n
"
,
hwnd
,
flags
);
wp
.
length
=
sizeof
(
wp
);
if
(
is_iconic
(
hwnd
)
&&
get_window_p
lacement
(
hwnd
,
&
wp
))
if
(
is_iconic
(
hwnd
)
&&
NtUserGetWindowP
lacement
(
hwnd
,
&
wp
))
return
monitor_from_rect
(
&
wp
.
rcNormalPosition
,
flags
,
dpi
);
if
(
get_window_rect
(
hwnd
,
&
rect
,
dpi
))
...
...
dlls/win32u/win32u.spec
View file @
a15df248
...
...
@@ -1014,7 +1014,7 @@
@ stub NtUserGetWindowFeedbackSetting
@ stub NtUserGetWindowGroupId
@ stub NtUserGetWindowMinimizeRect
@ st
ub NtUserGetWindowPlacement
@ st
dcall NtUserGetWindowPlacement(long ptr)
@ stub NtUserGetWindowProcessHandle
@ stdcall -syscall NtUserGetWindowRgnEx(long long long)
@ stub NtUserGhostWindowFromHungWindow
...
...
dlls/win32u/win32u_private.h
View file @
a15df248
...
...
@@ -246,6 +246,7 @@ struct unix_funcs
BOOL
(
WINAPI
*
pNtUserGetUpdateRect
)(
HWND
hwnd
,
RECT
*
rect
,
BOOL
erase
);
INT
(
WINAPI
*
pNtUserGetUpdateRgn
)(
HWND
hwnd
,
HRGN
hrgn
,
BOOL
erase
);
BOOL
(
WINAPI
*
pNtUserGetUpdatedClipboardFormats
)(
UINT
*
formats
,
UINT
size
,
UINT
*
out_size
);
BOOL
(
WINAPI
*
pNtUserGetWindowPlacement
)(
HWND
hwnd
,
WINDOWPLACEMENT
*
placement
);
BOOL
(
WINAPI
*
pNtUserHideCaret
)(
HWND
hwnd
);
BOOL
(
WINAPI
*
pNtUserIsClipboardFormatAvailable
)(
UINT
format
);
UINT
(
WINAPI
*
pNtUserMapVirtualKeyEx
)(
UINT
code
,
UINT
type
,
HKL
layout
);
...
...
@@ -442,7 +443,6 @@ extern HWND get_full_window_handle( HWND hwnd ) DECLSPEC_HIDDEN;
extern
HWND
get_parent
(
HWND
hwnd
)
DECLSPEC_HIDDEN
;
extern
HWND
get_hwnd_message_parent
(
void
)
DECLSPEC_HIDDEN
;
extern
DPI_AWARENESS_CONTEXT
get_window_dpi_awareness_context
(
HWND
hwnd
)
DECLSPEC_HIDDEN
;
extern
BOOL
get_window_placement
(
HWND
hwnd
,
WINDOWPLACEMENT
*
placement
)
DECLSPEC_HIDDEN
;
extern
MINMAXINFO
get_min_max_info
(
HWND
hwnd
)
DECLSPEC_HIDDEN
;
extern
HWND
get_window_relative
(
HWND
hwnd
,
UINT
rel
)
DECLSPEC_HIDDEN
;
extern
DWORD
get_window_thread
(
HWND
hwnd
,
DWORD
*
process
)
DECLSPEC_HIDDEN
;
...
...
dlls/win32u/window.c
View file @
a15df248
...
...
@@ -2400,8 +2400,10 @@ static BOOL empty_point( POINT pt )
return
pt
.
x
==
-
1
&&
pt
.
y
==
-
1
;
}
/* see GetWindowPlacement */
BOOL
get_window_placement
(
HWND
hwnd
,
WINDOWPLACEMENT
*
placement
)
/***********************************************************************
* NtUserGetWindowPlacement (win32u.@)
*/
BOOL
WINAPI
NtUserGetWindowPlacement
(
HWND
hwnd
,
WINDOWPLACEMENT
*
placement
)
{
RECT
work_rect
=
get_maximized_work_rect
(
hwnd
);
WND
*
win
=
get_win_ptr
(
hwnd
);
...
...
@@ -4036,7 +4038,7 @@ static UINT window_min_maximize( HWND hwnd, UINT cmd, RECT *rect )
TRACE
(
"%p %u
\n
"
,
hwnd
,
cmd
);
wpl
.
length
=
sizeof
(
wpl
);
get_window_p
lacement
(
hwnd
,
&
wpl
);
NtUserGetWindowP
lacement
(
hwnd
,
&
wpl
);
if
(
call_hooks
(
WH_CBT
,
HCBT_MINMAX
,
(
WPARAM
)
hwnd
,
cmd
,
TRUE
))
return
SWP_NOSIZE
|
SWP_NOMOVE
;
...
...
@@ -5393,9 +5395,6 @@ ULONG_PTR WINAPI NtUserCallHwndParam( HWND hwnd, DWORD_PTR param, DWORD code )
case
NtUserCallHwndParam_GetWindowLongPtrW
:
return
get_window_long_ptr
(
hwnd
,
param
,
FALSE
);
case
NtUserCallHwndParam_GetWindowPlacement
:
return
get_window_placement
(
hwnd
,
(
WINDOWPLACEMENT
*
)
param
);
case
NtUserCallHwndParam_GetWindowRect
:
return
get_window_rect
(
hwnd
,
(
RECT
*
)
param
,
get_thread_dpi
()
);
...
...
dlls/win32u/wrappers.c
View file @
a15df248
...
...
@@ -1023,6 +1023,12 @@ BOOL WINAPI NtUserGetUpdatedClipboardFormats( UINT *formats, UINT size, UINT *ou
return
unix_funcs
->
pNtUserGetUpdatedClipboardFormats
(
formats
,
size
,
out_size
);
}
BOOL
WINAPI
NtUserGetWindowPlacement
(
HWND
hwnd
,
WINDOWPLACEMENT
*
placement
)
{
if
(
!
unix_funcs
)
return
FALSE
;
return
unix_funcs
->
pNtUserGetWindowPlacement
(
hwnd
,
placement
);
}
BOOL
WINAPI
NtUserIsClipboardFormatAvailable
(
UINT
format
)
{
if
(
!
unix_funcs
)
return
FALSE
;
...
...
include/ntuser.h
View file @
a15df248
...
...
@@ -577,6 +577,7 @@ HDESK WINAPI NtUserGetThreadDesktop( DWORD thread );
INT
WINAPI
NtUserGetUpdateRgn
(
HWND
hwnd
,
HRGN
hrgn
,
BOOL
erase
);
BOOL
WINAPI
NtUserGetUpdatedClipboardFormats
(
UINT
*
formats
,
UINT
size
,
UINT
*
out_size
);
BOOL
WINAPI
NtUserGetUpdateRect
(
HWND
hwnd
,
RECT
*
rect
,
BOOL
erase
);
BOOL
WINAPI
NtUserGetWindowPlacement
(
HWND
hwnd
,
WINDOWPLACEMENT
*
placement
);
int
WINAPI
NtUserGetWindowRgnEx
(
HWND
hwnd
,
HRGN
hrgn
,
UINT
unk
);
BOOL
WINAPI
NtUserHideCaret
(
HWND
hwnd
);
NTSTATUS
WINAPI
NtUserInitializeClientPfnArrays
(
const
struct
user_client_procs
*
client_procsA
,
...
...
@@ -1000,7 +1001,6 @@ enum
NtUserCallHwndParam_GetWindowLongW
,
NtUserCallHwndParam_GetWindowLongPtrA
,
NtUserCallHwndParam_GetWindowLongPtrW
,
NtUserCallHwndParam_GetWindowPlacement
,
NtUserCallHwndParam_GetWindowRect
,
NtUserCallHwndParam_GetWindowRelative
,
NtUserCallHwndParam_GetWindowThread
,
...
...
@@ -1093,12 +1093,6 @@ static inline LONG NtUserGetWindowLongW( HWND hwnd, INT offset )
return
NtUserCallHwndParam
(
hwnd
,
offset
,
NtUserCallHwndParam_GetWindowLongW
);
}
static
inline
BOOL
NtUserGetWindowPlacement
(
HWND
hwnd
,
WINDOWPLACEMENT
*
wndpl
)
{
return
NtUserCallHwndParam
(
hwnd
,
(
UINT_PTR
)
wndpl
,
NtUserCallHwndParam_GetWindowPlacement
);
}
static
inline
BOOL
NtUserGetWindowRect
(
HWND
hwnd
,
RECT
*
rect
)
{
return
NtUserCallHwndParam
(
hwnd
,
(
UINT_PTR
)
rect
,
NtUserCallHwndParam_GetWindowRect
);
...
...
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