Bring window to front when opening already opened path

Closes #104
This commit is contained in:
Kevin Sawicki
2012-12-19 09:32:06 -08:00
parent da841b0ac6
commit 35f362df1d
3 changed files with 16 additions and 1 deletions

View File

@@ -128,6 +128,19 @@
}
- (void)open:(NSString *)path {
NSArray *windows = [NSApp windows];
int count = [windows count];
for (int i = 0; i < count; i++) {
NSWindow *window = [windows objectAtIndex:i];
if ([window isVisible] && ![window isExcludedFromWindowsMenu]) {
AtomWindowController *controller = [window windowController];
if ([path isEqualToString:controller.pathToOpen]) {
[window makeKeyAndOrderFront:nil];
return;
}
}
}
[[AtomWindowController alloc] initWithPath:path];
}

View File

@@ -21,6 +21,7 @@ class AtomCefClient;
@property (nonatomic, retain) IBOutlet NSSplitView *splitView;
@property (nonatomic, retain) IBOutlet NSView *webView;
@property (nonatomic, retain) IBOutlet NSView *devToolsView;
@property (nonatomic, retain) NSString *pathToOpen;
- (id)initWithPath:(NSString *)path;
- (id)initUnstableWithPath:(NSString *)path;

View File

@@ -9,6 +9,7 @@
@synthesize splitView=_splitView;
@synthesize webView=_webView;
@synthesize devToolsView=_devToolsView;
@synthesize pathToOpen=_pathToOpen;
- (void)dealloc {
[_splitView release];
@@ -17,7 +18,7 @@
[_bootstrapScript release];
[_resourcePath release];
[_pathToOpen release];
_cefClient = NULL;
_cefDevToolsClient = NULL;