]> git.sesse.net Git - vlc/blobdiff - modules/gui/macosx/simple_prefs.m
macosx: Close embedded if fullscreen ended.
[vlc] / modules / gui / macosx / simple_prefs.m
index 3e5666444b9ecb63108c544348852a05071698eb..fa6532af87ef15f90bf384921ed4d30c2f16d2b7 100644 (file)
@@ -48,10 +48,10 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     if (_o_sharedInstance) {
         [self dealloc];
     } else {
-        p_intf = VLCIntf;
         _o_sharedInstance = [super init];
+        p_intf = VLCIntf;
     }
-    
+
     return _o_sharedInstance;
 }
 
@@ -244,6 +244,7 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     [o_input_cachelevel_custom_txt setStringValue: _NS("Use the complete preferences to configure custom caching values for each access module.")];
     [o_input_dump_ckb setTitle: _NS("Dump")];
     [o_input_httpproxy_txt setStringValue: _NS("HTTP Proxy")];
+    [o_input_httpproxypwd_txt setStringValue: _NS("Password for HTTP Proxy")];
     [o_input_mux_box setTitle: _NS("Codecs / Muxers")];
     [o_input_net_box setTitle: _NS("Network")];
     [o_input_postproc_txt setStringValue: _NS("Post-Processing Quality")];
@@ -257,7 +258,6 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     [o_intf_embedded_ckb setTitle: _NS("Add controls to the video window")];
     [o_intf_fspanel_ckb setTitle: _NS("Show Fullscreen Controller")];
     [o_intf_lang_txt setStringValue: _NS("Language")];
-    [o_intf_meta_ckb setTitle: _NS("Fetch the metadata from the Internet")];
     [o_intf_network_box setTitle: _NS("Privacy / Network Interaction")];
     
     /* Subtitles and OSD */
@@ -273,17 +273,9 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     [o_osd_osd_box setTitle: _NS("On Screen Display")];
     [o_osd_osd_ckb setTitle: _NS("Enable OSD")];
 
-    /* generic stuff */
-    [[o_sprefs_basicFull_matrix cellAtRow: 0 column: 0] setStringValue: _NS("Basic")];
-    [[o_sprefs_basicFull_matrix cellAtRow: 0 column: 1] setStringValue: _NS("All")];
-    [o_sprefs_cancel_btn setTitle: _NS("Cancel")];
-    [o_sprefs_reset_btn setTitle: _NS("Reset Preferences")];
-    [o_sprefs_save_btn setTitle: _NS("Save")];
-    [o_sprefs_win setTitle: _NS("Preferences")];
-
     /* video */
     [o_video_black_ckb setTitle: _NS("Black screens in Fullscreen mode")];
-    [o_video_device_txt setStringValue: _NS("Display device")];
+    [o_video_device_txt setStringValue: _NS("Fullscreen Video Device")];
     [o_video_display_box setTitle: _NS("Display")];
     [o_video_enable_ckb setTitle: _NS("Enable Video")];
     [o_video_fullscreen_ckb setTitle: _NS("Fullscreen")];
@@ -296,6 +288,14 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     [o_video_snap_format_txt setStringValue: _NS("Format")];
     [o_video_snap_prefix_txt setStringValue: _NS("Prefix")];
     [o_video_snap_seqnum_ckb setTitle: _NS("Sequential numbering")];
+    
+    /* generic stuff */
+    [[o_sprefs_basicFull_matrix cellAtRow: 0 column: 0] setStringValue: _NS("Basic")];
+    [[o_sprefs_basicFull_matrix cellAtRow: 0 column: 1] setStringValue: _NS("All")];
+    [o_sprefs_cancel_btn setTitle: _NS("Cancel")];
+    [o_sprefs_reset_btn setTitle: _NS("Reset Preferences")];
+    [o_sprefs_save_btn setTitle: _NS("Save")];
+    [o_sprefs_win setTitle: _NS("Preferences")];
 }
 
 - (void)resetControls
@@ -355,13 +355,15 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     vlc_list_release( p_list ); \
     [object setToolTip: _NS(p_item->psz_longtext)]
 
+    [[o_sprefs_basicFull_matrix cellAtRow:0 column:0] setState: NSOnState];
+    [[o_sprefs_basicFull_matrix cellAtRow:0 column:1] setState: NSOffState];
+    
     /**********************
      * interface settings *
      **********************/
     SetupStringList( o_intf_lang_pop, "language" );
     SetupIntList( o_intf_art_pop, "album-art" );
 
-    [o_intf_meta_ckb setState: config_GetInt( p_intf, "fetch-meta" )];
     [o_intf_fspanel_ckb setState: config_GetInt( p_intf, "macosx-fspanel" )];
     [o_intf_embedded_ckb setState: config_GetInt( p_intf, "embedded-video" )];
 
@@ -391,19 +393,19 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     if( module_Exists( p_intf, "audioscrobbler" ) )
     {
         [o_audio_lastuser_fld setStringValue: [NSString stringWithUTF8String: config_GetPsz( p_intf, "lastfm-username" )]];
-        [o_audio_lastpwd_fld setStringValue: [NSString stringWithUTF8String: config_GetPsz( p_intf, "lastfm-password" )]];
+        [o_audio_lastpwd_sfld setStringValue: [NSString stringWithUTF8String: config_GetPsz( p_intf, "lastfm-password" )]];
 
         if( config_ExistIntf( VLC_OBJECT( p_intf ), "audioscrobbler" ) )
         {
             [o_audio_last_ckb setState: NSOnState];
             [o_audio_lastuser_fld setEnabled: YES];
-            [o_audio_lastpwd_fld setEnabled: YES];
+            [o_audio_lastpwd_sfld setEnabled: YES];
         }
         else
         {
             [o_audio_last_ckb setState: NSOffState];
             [o_audio_lastuser_fld setEnabled: NO];
-            [o_audio_lastpwd_fld setEnabled: NO];
+            [o_audio_lastpwd_sfld setEnabled: NO];
         }
     }
     else
@@ -431,7 +433,7 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
         [o_video_device_pop addItemWithTitle: 
          [NSString stringWithFormat: @"%@ %i (%ix%i)", _NS("Screen"), i+1,
                    (int)s_rect.size.width, (int)s_rect.size.height]];
-        [[o_video_device_pop lastItem] setTag: [[[NSScreen screens] objectAtIndex: i] displayID]];
+        [[o_video_device_pop lastItem] setTag: (int)[[[NSScreen screens] objectAtIndex: i] displayID]];
         i++;
     }
     [o_video_device_pop selectItemAtIndex: 0];
@@ -457,6 +459,8 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     [o_input_serverport_fld setIntValue: config_GetInt( p_intf, "server-port" )];
     if( config_GetPsz( p_intf, "http-proxy" ) != NULL )
         [o_input_httpproxy_fld setStringValue: [NSString stringWithUTF8String: config_GetPsz( p_intf, "http-proxy" )]];
+    if( config_GetPsz( p_intf, "http-proxy" ) != NULL )
+        [o_input_httpproxypwd_sfld setStringValue: [NSString stringWithUTF8String: config_GetPsz( p_intf, "http-proxy-pwd" )]];
     [o_input_postproc_fld setIntValue: config_GetInt( p_intf, "ffmpeg-pp-q" )];
 
     SetupIntList( o_input_avi_pop, "avi-index" );
@@ -607,8 +611,9 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     else if( sender == o_sprefs_basicFull_matrix )
     {
         [o_sprefs_win orderOut: self];
+        [[o_sprefs_basicFull_matrix cellAtRow:0 column:0] setState: NSOffState];
+        [[o_sprefs_basicFull_matrix cellAtRow:0 column:1] setState: NSOnState];
         [[[VLCMain sharedInstance] getPreferences] showPrefs];
-        [self resetControls];
     }
     else
         msg_Err( p_intf, "unknown buttonAction sender" );
@@ -677,13 +682,12 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
         SaveStringList( o_intf_lang_pop, "language" );
         SaveIntList( o_intf_art_pop, "album-art" );
 
-        config_PutInt( p_intf, "fetch-meta", [o_intf_meta_ckb state] );
         config_PutInt( p_intf, "macosx-fspanel", [o_intf_fspanel_ckb state] );
         config_PutInt( p_intf, "embedded-video", [o_intf_embedded_ckb state] );
 
         /* okay, let's save our changes to vlcrc */
         i = config_SaveConfigFile( p_intf, "main" );
-        i = config_SaveConfigFile( p_intf, "macosx" );
+        i = i + config_SaveConfigFile( p_intf, "macosx" );
 
         if( i != 0 )
         {
@@ -733,12 +737,12 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
         {   
             [o_audio_last_ckb setEnabled: YES];
             if( [o_audio_last_ckb state] == NSOnState )
-                config_AddIntf( VLC_OBJECT( p_intf ), "audioscrobbler" );
+                config_AddIntf( p_intf, "audioscrobbler" );
             else
-                config_RemoveIntf( VLC_OBJECT( p_intf ), "audioscrobbler" );
+                config_RemoveIntf( p_intf, "audioscrobbler" );
 
             config_PutPsz( p_intf, "lastfm-username", [[o_audio_lastuser_fld stringValue] UTF8String] );
-            config_PutPsz( p_intf, "lastfm-password", [[o_audio_lastuser_fld stringValue] UTF8String] );
+            config_PutPsz( p_intf, "lastfm-password", [[o_audio_lastpwd_sfld stringValue] UTF8String] );
         }
         else
             [o_audio_last_ckb setEnabled: NO];
@@ -795,6 +799,7 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     {
         config_PutInt( p_intf, "server-port", [o_input_serverport_fld intValue] );
         config_PutPsz( p_intf, "http-proxy", [[o_input_httpproxy_fld stringValue] UTF8String] );
+        config_PutPsz( p_intf, "http-proxy-pwd", [[o_input_httpproxypwd_sfld stringValue] UTF8String] );
         config_PutInt( p_intf, "ffmpeg-pp-q", [o_input_postproc_fld intValue] );
 
         SaveIntList( o_input_avi_pop, "avi-index" );
@@ -979,12 +984,12 @@ static VLCSimplePrefs *_o_sharedInstance = nil;
     {
         if( [o_audio_last_ckb state] == NSOnState )
         {
-            [o_audio_lastpwd_fld setEnabled: YES];
+            [o_audio_lastpwd_sfld setEnabled: YES];
             [o_audio_lastuser_fld setEnabled: YES];
         }
         else
         {
-            [o_audio_lastpwd_fld setEnabled: NO];
+            [o_audio_lastpwd_sfld setEnabled: NO];
             [o_audio_lastuser_fld setEnabled: NO];
         }
     }