From f698ca4a3591ac90f624e91af66f37bc938dae94 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Fri, 21 Aug 2015 17:16:52 -0400 Subject: [PATCH] Did the same for uiEntry. --- redo/reredo/darwin/entry.m | 18 ++++++++++++++++-- redo/reredo/darwin/uipriv_darwin.h | 2 ++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/redo/reredo/darwin/entry.m b/redo/reredo/darwin/entry.m index 464909c5..cb7180c4 100644 --- a/redo/reredo/darwin/entry.m +++ b/redo/reredo/darwin/entry.m @@ -1,7 +1,21 @@ // 14 august 2015 #import "uipriv_darwin.h" -// TODO set a text field minimum width +// Text fields for entering text have no intrinsic width; we'll use the default Interface Builder width for them. +#define textfieldWidth 96 + +@implementation libui_intrinsicWidthNSTextField + +- (NSSize)intrinsicContentSize +{ + NSSize s; + + s = [super intrinsicContentSize]; + s.width = textfieldWidth; + return s; +} + +@end struct uiEntry { uiDarwinControl c; @@ -126,7 +140,7 @@ uiEntry *uiNewEntry(void) e = (uiEntry *) uiNewControl(uiEntryType()); - e->textfield = [[NSTextField alloc] initWithFrame:NSZeroRect]; + e->textfield = [[libui_intrinsicWidthNSTextField alloc] initWithFrame:NSZeroRect]; [e->textfield setSelectable:YES]; // otherwise the setting is masked by the editable default of YES finishNewTextField(e->textfield, YES); diff --git a/redo/reredo/darwin/uipriv_darwin.h b/redo/reredo/darwin/uipriv_darwin.h index 4041a185..c4d90c36 100644 --- a/redo/reredo/darwin/uipriv_darwin.h +++ b/redo/reredo/darwin/uipriv_darwin.h @@ -40,6 +40,8 @@ extern void uninitMenus(void); extern void disableAutocorrect(NSTextView *); // entry.m +@interface libui_intrinsicWidthNSTextField : NSTextField +@end extern void finishNewTextField(NSTextField *, BOOL); // window.m