--- a/src/video/windib/SDL_dibevents.c Sun Oct 06 18:47:20 2002 +0000
+++ b/src/video/windib/SDL_dibevents.c Sun Oct 06 20:25:05 2002 +0000
@@ -28,6 +28,9 @@
#include <stdlib.h>
#include <stdio.h>
#include <windows.h>
+#ifdef HAVE_AYGSHELL
+#include <aygshell.h>
+#endif
#include "SDL_events.h"
#include "SDL_error.h"
@@ -363,6 +366,12 @@
void DIB_DestroyWindow(_THIS)
{
if ( SDL_windowid == NULL ) {
+#ifdef HAVE_AYGSHELL
+ /* Unhide taskbar, etc. */
+ SHFullScreen(SDL_Window, SHFS_SHOWTASKBAR);
+ SHFullScreen(SDL_Window, SHFS_SHOWSIPBUTTON);
+ ShowWindow(FindWindow(TEXT("HHTaskBar"),NULL),SW_SHOWNORMAL);
+#endif
DestroyWindow(SDL_Window);
}
}
--- a/src/video/windib/SDL_dibvideo.c Sun Oct 06 18:47:20 2002 +0000
+++ b/src/video/windib/SDL_dibvideo.c Sun Oct 06 20:25:05 2002 +0000
@@ -29,6 +29,9 @@
#include <stdlib.h>
#include <malloc.h>
#include <windows.h>
+#ifdef HAVE_AYGSHELL
+#include <aygshell.h>
+#endif
/* Not yet in the mingw32 cross-compile headers */
#ifndef CDS_FULLSCREEN
@@ -514,6 +517,23 @@
video->h = height;
video->pitch = SDL_CalculatePitch(video);
+#ifdef HAVE_AYGSHELL
+ /* Stuff to hide that $#!^%#$ WinCE taskbar in fullscreen... */
+ if ( flags & SDL_FULLSCREEN ) {
+ if ( !(prev_flags & SDL_FULLSCREEN) ) {
+ SHFullScreen(SDL_Window, SHFS_HIDETASKBAR);
+ SHFullScreen(SDL_Window, SHFS_HIDESIPBUTTON);
+ ShowWindow(FindWindow(TEXT("HHTaskBar"),NULL),SW_HIDE);
+ }
+ video->flags |= SDL_FULLSCREEN;
+ } else {
+ if ( prev_flags & SDL_FULLSCREEN ) {
+ SHFullScreen(SDL_Window, SHFS_SHOWTASKBAR);
+ SHFullScreen(SDL_Window, SHFS_SHOWSIPBUTTON);
+ ShowWindow(FindWindow(TEXT("HHTaskBar"),NULL),SW_SHOWNORMAL);
+ }
+ }
+#endif
#ifndef NO_CHANGEDISPLAYSETTINGS
/* Set fullscreen mode if appropriate */
if ( (flags & SDL_FULLSCREEN) == SDL_FULLSCREEN ) {