Commit ffe57a7a authored by Alp Aker's avatar Alp Aker Committed by Chong Yidong
Browse files

Fix tooltip dimensions on NS (Bug#9176).

* src/nsmenu.m (-setText): Size tooltip dimensions precisely to
contents.
(EmacsTooltip -init): Remove bezels and add shadows to
tooltip windows.
parent d8c2fa78
......@@ -4,6 +4,11 @@
setting frame foreground color (Bug#9175).
(x_set_background_color): Likewise.
* nsmenu.m (-setText): Size tooltip dimensions precisely to
contents (Bug#9176).
(EmacsTooltip -init): Remove bezels and add shadows to
tooltip windows.
2011-07-28 Alp Aker <alp.tekin.aker@gmail.com>
Implement strike-through and overline on NextStep (Bug#8863).
......
......@@ -1228,8 +1228,8 @@ @implementation EmacsTooltip
[textField setEditable: NO];
[textField setSelectable: NO];
[textField setBordered: YES];
[textField setBezeled: YES];
[textField setBordered: NO];
[textField setBezeled: NO];
[textField setDrawsBackground: YES];
win = [[NSWindow alloc]
......@@ -1237,6 +1237,7 @@ @implementation EmacsTooltip
styleMask: 0
backing: NSBackingStoreBuffered
defer: YES];
[win setHasShadow: YES];
[win setReleasedWhenClosed: NO];
[win setDelegate: self];
[[win contentView] addSubview: textField];
......@@ -1257,17 +1258,15 @@ - (void) dealloc
- (void) setText: (char *)text
{
NSString *str = [NSString stringWithUTF8String: text];
NSRect r = [textField frame];
NSSize textSize = [str sizeWithAttributes:
[NSDictionary dictionaryWithObject: [[textField font] screenFont]
forKey: NSFontAttributeName]];
NSSize padSize = [[[textField font] screenFont]
boundingRectForFont].size;
r.size.width = textSize.width + padSize.width/2;
r.size.height = textSize.height + padSize.height/2;
[textField setFrame: r];
NSRect r = [textField frame];
NSSize tooltipDims;
[textField setStringValue: str];
tooltipDims = [[textField cell] cellSize];
r.size.width = tooltipDims.width;
r.size.height = tooltipDims.height;
[textField setFrame: r];
}
- (void) showAtX: (int)x Y: (int)y for: (int)seconds
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment