diff options
author | rowanbeentje <rowan@beent.je> | 2010-06-05 23:51:54 +0000 |
---|---|---|
committer | rowanbeentje <rowan@beent.je> | 2010-06-05 23:51:54 +0000 |
commit | abfba8d070eca98f602a25722b27eff44a613a40 (patch) | |
tree | 554488e511dda9155fb43108c78560678d650225 /Source | |
parent | d2fc07c38b51c6fa0f27586e52eee668d5bf2add (diff) | |
download | sequelpro-abfba8d070eca98f602a25722b27eff44a613a40.tar.gz sequelpro-abfba8d070eca98f602a25722b27eff44a613a40.tar.bz2 sequelpro-abfba8d070eca98f602a25722b27eff44a613a40.zip |
- Tweak initial window load to select the correct favourite, also applying focus correctly
Diffstat (limited to 'Source')
-rw-r--r-- | Source/SPConnectionController.m | 6 | ||||
-rw-r--r-- | Source/SPDatabaseDocument.m | 6 |
2 files changed, 9 insertions, 3 deletions
diff --git a/Source/SPConnectionController.m b/Source/SPConnectionController.m index 5ea3aa77..ad2bdf62 100644 --- a/Source/SPConnectionController.m +++ b/Source/SPConnectionController.m @@ -110,8 +110,9 @@ [favoritesTable setDoubleAction:@selector(initiateConnection:)]; [favoritesTable registerForDraggedTypes:[NSArray arrayWithObject:favoritesPBoardType]]; [favoritesTable setDraggingSourceOperationMask:NSDragOperationMove forLocal:YES]; - // Set the focus to the favorites table and select the appropriate row - [[tableDocument parentWindow] setInitialFirstResponder:favoritesTable]; + + // Sort the favourites to match prefs and select the appropriate row + [self _sortFavorites]; NSInteger tableRow; if ([prefs boolForKey:SPSelectLastFavoriteUsed] == YES) { tableRow = [prefs integerForKey:SPLastFavoriteIndex] + 1; @@ -128,7 +129,6 @@ [self resizeTabViewToConnectionType:SPTCPIPConnection animating:NO]; } } - [self _sortFavorites]; return self; } diff --git a/Source/SPDatabaseDocument.m b/Source/SPDatabaseDocument.m index c91a5c08..d5ebb24c 100644 --- a/Source/SPDatabaseDocument.m +++ b/Source/SPDatabaseDocument.m @@ -3972,6 +3972,12 @@ */ - (void)setParentWindow:(NSWindow *)aWindow { + // If the window is being set for the first time - connection controller is visible - update focus + if (!parentWindow && !mySQLConnection) { + [aWindow makeFirstResponder:[connectionController valueForKey:@"favoritesTable"]]; + [connectionController performSelector:@selector(updateFavoriteSelection:) withObject:self afterDelay:0.0]; + } + parentWindow = aWindow; SPSSHTunnel *currentTunnel = [connectionController valueForKeyPath:@"sshTunnel"]; if (currentTunnel) [currentTunnel setParentWindow:parentWindow]; |