]> git.sesse.net Git - vlc/blobdiff - modules/gui/wxwidgets/interface.cpp
- Undo [14667]
[vlc] / modules / gui / wxwidgets / interface.cpp
index fa3591cb0a1fab7e37f94cc1be5c2a757d929d4d..1237702c2750b617e4db6a4e8b37c98b7f7dbfd0 100644 (file)
@@ -396,6 +396,8 @@ Interface::Interface( intf_thread_t *_p_intf, long style ):
     /* Put this in the splitter */
     splitter->Initialize( main_panel );
 
+/* wxCocoa pretends to support this, but at least 2.6.x doesn't */
+#ifndef __APPLE__
 #ifdef wxHAS_TASK_BAR_ICON
     /* Systray integration */
     p_systray = NULL;
@@ -403,6 +405,7 @@ Interface::Interface( intf_thread_t *_p_intf, long style ):
     {
         p_systray = new Systray( this, p_intf );
     }
+#endif
 #endif
 
     /* Creation of the menu bar */
@@ -493,8 +496,11 @@ Interface::~Interface()
 
     if( video_window ) delete video_window;
 
+/* wxCocoa pretends to support this, but at least 2.6.x doesn't */
+#ifndef __APPLE__
 #ifdef wxHAS_TASK_BAR_ICON
     if( p_systray ) delete p_systray;
+#endif
 #endif
 
     p_intf->b_interaction = VLC_FALSE;
@@ -913,7 +919,7 @@ void Interface::OnAbout( wxCommandEvent& WXUNUSED(event) )
        wxU(_("Compiler: "))+ wxU(VLC_Compiler())+wxT( ".\n") +
        wxU(_("Based on SVN revision: "))+wxU(VLC_Changeset())+wxT(".\n\n") +
 #ifdef __WXMSW__
-        wxU( vlc_wraptext(LICENSE_MSG,WRAPCOUNT,VLC_TRUE) ) + wxT("\n\n") +
+        wxU( vlc_wraptext(LICENSE_MSG,WRAPCOUNT) ) + wxT("\n\n") +
 #else
         wxU( LICENSE_MSG ) + wxT("\n\n") +
 #endif
@@ -1255,49 +1261,13 @@ bool DragAndDrop::OnDropFiles( wxCoord, wxCoord,
 
     for( size_t i = 0; i < filenames.GetCount(); i++ )
     {
-#ifdef wxUSE_UNICODE
-        /*
-         * FIXME: this is yet another awful and ugly bug-to-bug work-around
-         * for the painfully broken and brain-dead wxWidgets character
-         * encoding internals. Maybe, one day the wxWidgets team will find out
-         * and we will have to remove (phew) this kludge or autodetect whether
-         * to trigger it (damn).
-         *
-         * In Unicode mode, wxWidgets will encode file names in the locale
-         * encoding with each **bytes** (rather than characters) represented
-         * by a 32 bits unsigned integer. If you are lucky enough to be using
-         * ISO-8859-1 as your local character encoding, that lame encoding
-         * scheme happens to be identical to UTF-32 with your arch native
-         * byte-endianess. If you are using anything else, including not only
-         * UTF-8 but also Windows-1252(!) and ISO-8859-15(!) or any
-         * non-western encoding, it obviously fails.
-         */
-        unsigned len = 1;
-        const wxChar *stupid = filenames[i];
-
-        for (const wxChar *braindead = stupid; *braindead; braindead++)
-            len++;
-        char *psz_local = (char *)malloc (len);
-        do
-            psz_local[len] = (char)stupid[len];
-        while (len--);
-
-        fprintf (stderr, "local = \"%s\"\n", psz_local);
-        char *psz_utf8 = FromLocale( psz_local );
-        fprintf (stderr, "utf8 = \"%s\"\n", psz_utf8);
-#else
-        char *psz_utf8 = wxFromLocale( filenames[i] );
-#endif
+        char *psz_utf8 = wxDnDFromLocale( filenames[i] );
 
         playlist_Add( p_playlist, psz_utf8, psz_utf8,
                       PLAYLIST_APPEND | ((i | b_enqueue) ? 0 : PLAYLIST_GO),
                       PLAYLIST_END );
-#ifdef wxUSE_UNICODE
-        LocaleFree( psz_utf8 );
-        free( psz_local );
-#else
-        wxLocaleFree( psz_utf8 );
-#endif
+
+        wxDnDLocaleFree( psz_utf8 );
     }
 
     vlc_object_release( p_playlist );
@@ -1412,6 +1382,8 @@ void VLCVolCtrl::UpdateVolume()
  * Systray class.
  *****************************************************************************/
 
+/* wxCocoa pretends to support this, but at least 2.6.x doesn't */
+#ifndef __APPLE__
 #ifdef wxHAS_TASK_BAR_ICON
 
 BEGIN_EVENT_TABLE(Systray, wxTaskBarIcon)
@@ -1506,3 +1478,4 @@ void Systray::UpdateTooltip( const wxChar* tooltip )
     SetIcon( wxIcon( vlc16x16_xpm ), tooltip );
 }
 #endif
+#endif