[vlc-devel] commit: WinCE: wingdi plugin update (Geoffroy Couprie )
git version control
git at videolan.org
Mon Sep 22 16:42:07 CEST 2008
vlc | branch: 0.9-bugfix | Geoffroy Couprie <geo.couprie at gmail.com> | Thu Sep 4 14:49:23 2008 +0200| [355168879ee0cc465cc09049c8192b7ffada203c] | committer: Jean-Baptiste Kempf
WinCE: wingdi plugin update
Signed-off-by: Rémi Denis-Courmont <rdenis at simphalempin.com>
(cherry picked from commit 84b3a5e68b9c354f364ce8fe9291b7e905cd51c0)
Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=355168879ee0cc465cc09049c8192b7ffada203c
---
modules/video_output/msw/events.c | 32 ++++++++++++++++----------
modules/video_output/msw/vout.h | 45 ++++++++++++++++++++++++++++++++-----
modules/video_output/msw/wingdi.c | 12 +++++-----
3 files changed, 65 insertions(+), 24 deletions(-)
diff --git a/modules/video_output/msw/events.c b/modules/video_output/msw/events.c
index 4edb568..623f439 100644
--- a/modules/video_output/msw/events.c
+++ b/modules/video_output/msw/events.c
@@ -59,12 +59,18 @@
#include "vlc_keys.h"
#include "vout.h"
-#if defined(UNDER_CE) && !defined(__PLUGIN__) /*FIXME*/
-# define SHFS_SHOWSIPBUTTON 0x0004
+#ifdef UNDER_CE
+#include <aygshell.h>
+ //WINSHELLAPI BOOL WINAPI SHFullScreen(HWND hwndRequester, DWORD dwState);
+#endif
+
+/*#if defined(UNDER_CE) && !defined(__PLUGIN__) /*FIXME*/
+/*# define SHFS_SHOWSIPBUTTON 0x0004
# define SHFS_HIDESIPBUTTON 0x0008
# define MENU_HEIGHT 26
BOOL SHFullScreen(HWND hwndRequester, DWORD dwState);
-#endif
+#endif*/
+
/*****************************************************************************
* Local prototypes.
@@ -907,16 +913,16 @@ static long FAR PASCAL DirectXEventProc( HWND hwnd, UINT message,
if( !p_vout->p_sys->b_parent_focus ) GXSuspend();
#endif
#ifdef UNDER_CE
- if( hWnd == p_vout->p_sys->hfswnd )
+ if( hwnd == p_vout->p_sys->hfswnd )
{
HWND htbar = FindWindow( _T("HHTaskbar"), NULL );
ShowWindow( htbar, SW_SHOW );
}
if( !p_vout->p_sys->hparent ||
- hWnd == p_vout->p_sys->hfswnd )
+ hwnd == p_vout->p_sys->hfswnd )
{
- SHFullScreen( hWnd, SHFS_SHOWSIPBUTTON );
+ SHFullScreen( hwnd, SHFS_SHOWSIPBUTTON );
}
#endif
return 0;
@@ -928,19 +934,19 @@ static long FAR PASCAL DirectXEventProc( HWND hwnd, UINT message,
#endif
#ifdef UNDER_CE
if( p_vout->p_sys->hparent &&
- hWnd != p_vout->p_sys->hfswnd && p_vout->b_fullscreen )
+ hwnd != p_vout->p_sys->hfswnd && p_vout->b_fullscreen )
p_vout->p_sys->i_changes |= VOUT_FULLSCREEN_CHANGE;
- if( hWnd == p_vout->p_sys->hfswnd )
+ if( hwnd == p_vout->p_sys->hfswnd )
{
HWND htbar = FindWindow( _T("HHTaskbar"), NULL );
ShowWindow( htbar, SW_HIDE );
}
if( !p_vout->p_sys->hparent ||
- hWnd == p_vout->p_sys->hfswnd )
+ hwnd == p_vout->p_sys->hfswnd )
{
- SHFullScreen( hWnd, SHFS_HIDESIPBUTTON );
+ SHFullScreen( hwnd, SHFS_HIDESIPBUTTON );
}
#endif
return 0;
@@ -1195,7 +1201,8 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout )
rect.right, rect.bottom,
SWP_NOZORDER|SWP_FRAMECHANGED );
- HWND topLevelParent = GetAncestor( p_vout->p_sys->hparent, GA_ROOT );
+ HWND topLevelParent = GetParent( p_vout->p_sys->hparent );
+ //HWND topLevelParent = GetAncestor( p_vout->p_sys->hparent, GA_ROOT );
ShowWindow( topLevelParent, SW_HIDE );
}
@@ -1219,7 +1226,8 @@ void Win32ToggleFullscreen( vout_thread_t *p_vout )
rect.right, rect.bottom,
SWP_NOZORDER|SWP_FRAMECHANGED );
- HWND topLevelParent = GetAncestor( p_vout->p_sys->hparent, GA_ROOT );
+ HWND topLevelParent = GetParent( p_vout->p_sys->hparent );
+ //HWND topLevelParent = GetAncestor( p_vout->p_sys->hparent, GA_ROOT );
ShowWindow( topLevelParent, SW_SHOW );
SetForegroundWindow( p_vout->p_sys->hparent );
ShowWindow( hwnd, SW_HIDE );
diff --git a/modules/video_output/msw/vout.h b/modules/video_output/msw/vout.h
index 52bf816..d964c36 100644
--- a/modules/video_output/msw/vout.h
+++ b/modules/video_output/msw/vout.h
@@ -33,6 +33,39 @@ typedef struct event_thread_t
} event_thread_t;
+#ifdef MODULE_NAME_IS_wingapi
+ typedef struct GXDisplayProperties {
+ DWORD cxWidth;
+ DWORD cyHeight;
+ long cbxPitch;
+ long cbyPitch;
+ long cBPP;
+ DWORD ffFormat;
+ } GXDisplayProperties;
+
+ typedef struct GXScreenRect {
+ DWORD dwTop;
+ DWORD dwLeft;
+ DWORD dwWidth;
+ DWORD dwHeight;
+ } GXScreenRect;
+
+# define GX_FULLSCREEN 0x01
+# define GX_NORMALKEYS 0x02
+# define GX_LANDSCAPEKEYS 0x03
+
+# ifndef kfLandscape
+# define kfLandscape 0x8
+# define kfPalette 0x10
+# define kfDirect 0x20
+# define kfDirect555 0x40
+# define kfDirect565 0x80
+# define kfDirect888 0x100
+# define kfDirect444 0x200
+# define kfDirectInverted 0x400
+# endif
+#endif
+
/*****************************************************************************
* vout_sys_t: video output method descriptor
*****************************************************************************
@@ -219,18 +252,18 @@ void Win32ToggleFullscreen ( vout_thread_t *p_vout );
# define GCL_HBRBACKGROUND (-10)
#endif
-#define FindWindowEx(a,b,c,d) 0
+//#define FindWindowEx(a,b,c,d) 0
#define GetWindowPlacement(a,b)
#define SetWindowPlacement(a,b)
-typedef struct _WINDOWPLACEMENT {
+/*typedef struct _WINDOWPLACEMENT {
UINT length;
UINT flags;
UINT showCmd;
POINT ptMinPosition;
POINT ptMaxPosition;
RECT rcNormalPosition;
-} WINDOWPLACEMENT;
+} WINDOWPLACEMENT;*/
#ifndef WM_NCMOUSEMOVE
# define WM_NCMOUSEMOVE 160
@@ -257,8 +290,8 @@ typedef struct _WINDOWPLACEMENT {
#define WS_EX_APPWINDOW 0x40000
#endif
-#define SetWindowLongPtr SetWindowLong
-#define GetWindowLongPtr GetWindowLong
-#define GWLP_USERDATA GWL_USERDATA
+//#define SetWindowLongPtr SetWindowLong
+//#define GetWindowLongPtr GetWindowLong
+//#define GWLP_USERDATA GWL_USERDATA
#endif //UNDER_CE
diff --git a/modules/video_output/msw/wingdi.c b/modules/video_output/msw/wingdi.c
index 310d3ea..d03b618 100644
--- a/modules/video_output/msw/wingdi.c
+++ b/modules/video_output/msw/wingdi.c
@@ -38,9 +38,7 @@
#include <commctrl.h>
-#include "vout.h"
-
-#ifdef MODULE_NAME_IS_wingapi
+/*#ifdef MODULE_NAME_IS_wingapi
typedef struct GXDisplayProperties {
DWORD cxWidth;
DWORD cyHeight;
@@ -73,6 +71,8 @@
# endif
#endif /* MODULE_NAME_IS_wingapi */
+#include "vout.h"
+
#define MAX_DIRECTBUFFERS 10
#ifdef UNDER_CE
@@ -85,9 +85,9 @@
#ifndef WS_EX_APPWINDOW
#define WS_EX_APPWINDOW 0x40000
#endif
-#define SetWindowLongPtr SetWindowLong
-#define GetWindowLongPtr GetWindowLong
-#define GWLP_USERDATA GWL_USERDATA
+//#define SetWindowLongPtr SetWindowLong
+//#define GetWindowLongPtr GetWindowLong
+//#define GWLP_USERDATA GWL_USERDATA
#define AdjustWindowRect(a,b,c)
#endif //UNDER_CE
More information about the vlc-devel
mailing list