From 0351dd2f0552e76c01a7e3e8be6a723debbb449f Mon Sep 17 00:00:00 2001 From: Bjorn Winckler Date: Mon, 6 Aug 2007 13:21:43 +0000 Subject: [PATCH] Fixed tab selection bug where the wrong tab would get opened if multiple files were dragged onto the Vim dock icon. git-svn-id: http://macvim.googlecode.com/svn/trunk@88 96c4425d-ca35-0410-94e5-3396d5c13a8f --- MMWindowController.m | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/MMWindowController.m b/MMWindowController.m index c2c5b78187..afbddc4366 100644 --- a/MMWindowController.m +++ b/MMWindowController.m @@ -456,8 +456,10 @@ NSMutableArray *buildMenuAddress(NSMenu *menu) if (!vimTaskSelectedTab) { // Propagate the selection message to the VimTask. int idx = [self representedIndexOfTabViewItem:tabViewItem]; - NSData *data = [NSData dataWithBytes:&idx length:sizeof(int)]; - [vimController sendMessage:SelectTabMsgID data:data wait:YES]; + if (NSNotFound != idx) { + NSData *data = [NSData dataWithBytes:&idx length:sizeof(int)]; + [vimController sendMessage:SelectTabMsgID data:data wait:YES]; + } } } @@ -703,9 +705,13 @@ NSMutableArray *buildMenuAddress(NSMenu *menu) // BUG! This call seems to have no effect; see comment in // tabView:didSelectTabViewItem:. - [tvi setInitialFirstResponder:textView]; + //[tvi setInitialFirstResponder:textView]; + // NOTE: If this is the first tab it will be automatically selected. + vimTaskSelectedTab = YES; [tabView addTabViewItem:tvi]; + vimTaskSelectedTab = NO; + [tvi release]; return tvi;