X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/41fecb4451682f11e352fc5b9b7383f6335322a7..2cbf0a5e43b372fad030043d8a1d995f13d9818e:/src/common/settcmn.cpp diff --git a/src/common/settcmn.cpp b/src/common/settcmn.cpp index 93ebe6286d..d8d68f8de0 100644 --- a/src/common/settcmn.cpp +++ b/src/common/settcmn.cpp @@ -4,7 +4,7 @@ // Author: Robert Roebling // RCS-ID: $Id$ // Copyright: (c) wxWindows team -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// // ============================================================================ @@ -15,7 +15,7 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "settings.h" #endif @@ -44,17 +44,9 @@ wxSystemScreenType wxSystemSettings::ms_screen = wxSYS_SCREEN_NONE; wxSystemScreenType wxSystemSettings::GetScreenType() { if (ms_screen == wxSYS_SCREEN_NONE) -#ifndef __WXUNIV__ - { - // As a start, all GUI are desktops. - ms_screen = wxSYS_SCREEN_DESKTOP; - } -#else { // wxUniv will be used on small devices, too. - int x = 0; - int y = 0; - wxGetDisplaySize( &x, &y ); + int x = GetMetric( wxSYS_SCREEN_X ); ms_screen = wxSYS_SCREEN_DESKTOP; @@ -66,8 +58,11 @@ wxSystemScreenType wxSystemSettings::GetScreenType() if (x < 200) ms_screen = wxSYS_SCREEN_TINY; + + // This is probably a bug, but VNC seems to report 0 + if (x < 10) + ms_screen = wxSYS_SCREEN_DESKTOP; } -#endif return ms_screen; }