X-Git-Url: http://git.ithinksw.org/MenuTunes.git/blobdiff_plain/c9a21871b37d415af1d0723715c43bbfae86c25a..aeae287077a886690921baaea0a0f1149bc891db:/MainController.m?ds=sidebyside diff --git a/MainController.m b/MainController.m index 4c2ed2c..3c1cb6c 100755 --- a/MainController.m +++ b/MainController.m @@ -14,7 +14,6 @@ - (ITMTRemote *)loadRemote; - (void)timerUpdate; - (void)setLatestSongIdentifier:(NSString *)newIdentifier; -- (void)showCurrentTrackInfo; - (void)applicationLaunched:(NSNotification *)note; - (void)applicationTerminated:(NSNotification *)note; @end @@ -291,6 +290,9 @@ static MainController *sharedController; { if ([networkController isConnectedToServer]) { [statusItem setMenu:[menuController menu]]; + if ([[networkController networkObject] remote] == nil) { + [self networkError:nil]; + } } if ( [self songChanged] && (timerUpdating != YES) ) { @@ -998,7 +1000,7 @@ static MainController *sharedController; if ([networkController checkForServerAtHost:[df stringForKey:@"sharedPlayerHost"]]) { ITDebugLog(@"Remote server found."); [timer invalidate]; - if (![networkController isConnectedToServer]) { + if (![networkController isServerOn] && ![networkController isConnectedToServer]) { [[StatusWindowController sharedController] showReconnectQueryWindow]; } } else { @@ -1009,8 +1011,7 @@ static MainController *sharedController; - (void)networkError:(NSException *)exception { ITDebugLog(@"Remote exception thrown: %@: %@", [exception name], [exception reason]); - NSLog(@"%@", [exception reason]); - if ([[exception name] isEqualToString:NSPortTimeoutException] && [networkController isConnectedToServer]) { + if ( ((exception == nil) || [[exception name] isEqualToString:NSPortTimeoutException]) && [networkController isConnectedToServer]) { NSRunCriticalAlertPanel(@"Remote MenuTunes Disconnected", @"The MenuTunes server you were connected to stopped responding or quit. MenuTunes will revert back to the local player.", @"OK", nil, nil); if ([self disconnectFromServer]) { [[PreferencesController sharedPrefs] resetRemotePlayerTextFields];