diff --git a/Cocoa/Document.h b/Cocoa/Document.h index ffbc7f08b..6f19877dd 100644 --- a/Cocoa/Document.h +++ b/Cocoa/Document.h @@ -79,7 +79,10 @@ enum model { @property IBOutlet GBDebuggerButton *debuggerNextButton; @property IBOutlet GBDebuggerButton *debuggerStepButton; @property IBOutlet GBDebuggerButton *debuggerFinishButton; -@property (strong) IBOutlet GBDebuggerButton *debuggerBackstepButton; +@property IBOutlet GBDebuggerButton *debuggerBackstepButton; + +@property IBOutlet NSScrollView *debuggerScrollView; +@property IBOutlet NSView *debugBar; + (NSImage *) imageFromData:(NSData *)data width:(NSUInteger) width height:(NSUInteger) height scale:(double) scale; diff --git a/Cocoa/Document.m b/Cocoa/Document.m index de5796dce..fbfe3c97a 100644 --- a/Cocoa/Document.m +++ b/Cocoa/Document.m @@ -811,6 +811,28 @@ again:; NSFont *newFont = [self debuggerFontOfSize:0]; NSFont *newBoldFont = [[NSFontManager sharedFontManager] convertFont:newFont toHaveTrait:NSBoldFontMask]; self.debuggerSideViewInput.font = newFont; + + unsigned inputHeight = MAX(ceil([@" " sizeWithAttributes:@{ + NSFontAttributeName: newFont + }].height) + 6, 26); + + + NSRect frame = _consoleInput.frame; + unsigned oldHeight = frame.size.height; + frame.size.height = inputHeight; + _consoleInput.frame = frame; + + frame = _debugBar.frame; + frame.origin.y += (signed)(inputHeight - oldHeight); + _debugBar.frame = frame; + + frame = _debuggerScrollView.frame; + frame.origin.y += (signed)(inputHeight - oldHeight); + frame.size.height -= (signed)(inputHeight - oldHeight); + _debuggerScrollView.frame = frame; + + _consoleInput.font = newFont; + for (NSTextView *view in @[_debuggerSideView, _consoleOutput]) { NSMutableAttributedString *newString = view.attributedString.mutableCopy; [view.attributedString enumerateAttribute:NSFontAttributeName diff --git a/Cocoa/Document.xib b/Cocoa/Document.xib index 2447d810d..cb106b680 100644 --- a/Cocoa/Document.xib +++ b/Cocoa/Document.xib @@ -15,15 +15,12 @@ - - - - + + - @@ -153,87 +150,93 @@ - - + + - - - - - - - - - - - + + + + + + + + + + + + + + + + +