| Index: third_party/mozilla/include/ToolTip.mm
|
| ===================================================================
|
| --- third_party/mozilla/include/ToolTip.mm (revision 18450)
|
| +++ third_party/mozilla/include/ToolTip.mm (working copy)
|
| @@ -65,18 +65,18 @@
|
| // we don't want closing the window to release it, because we aren't always in control
|
| // of the close (AppKit may do it on quit).
|
| [mTooltipWindow setReleasedWhenClosed:NO];
|
| -
|
| +
|
| // Create a textfield as the content of our new window.
|
| // Field occupies all but the top 2 and bottom 2 pixels of the panel (bug 149635)
|
| mTextView = [[NSTextView alloc] initWithFrame:NSMakeRect(0.0, kBorderPadding, kMaxTextFieldWidth, 0.0)];
|
| [[mTooltipWindow contentView] addSubview:mTextView];
|
| [mTextView release]; // window holds ref
|
| -
|
| +
|
| // set up the panel
|
| [mTooltipWindow setHasShadow:YES];
|
| [mTooltipWindow setBackgroundColor:[NSColor colorWithCalibratedRed:1.0 green:1.0 blue:0.81 alpha:1.0]];
|
| -
|
|
|
| +
|
| // set up the text view
|
| [mTextView setDrawsBackground:NO];
|
| [mTextView setEditable:NO];
|
| @@ -91,6 +91,8 @@
|
|
|
| - (void)dealloc
|
| {
|
| + [self closeToolTip];
|
| +
|
| [[NSNotificationCenter defaultCenter] removeObserver:self];
|
|
|
| [mTooltipWindow close]; // we set the window not to release on -close
|
| @@ -137,10 +139,10 @@
|
| textViewWidth = kMaxTextFieldWidth;
|
|
|
| textViewWidth += 2.0 * 5.0; // magic numbers required to make the text not wrap. No, this isn't -textContainerInset.
|
| -
|
| +
|
| // set up the text view
|
| [mTextView setMaxSize:NSMakeSize(kMaxTextFieldWidth, screenSize.height - 2 * kBorderPadding)]; // do this here since we know screen size
|
| - [mTextView setString:string]; // do this after setting max size, before setting constrained frame size,
|
| + [mTextView setString:string]; // do this after setting max size, before setting constrained frame size,
|
| // reset to max width - it will not grow horizontally when resizing, only vertically
|
| [mTextView setConstrainedFrameSize:NSMakeSize(kMaxTextFieldWidth, 0.0)];
|
| // to avoid wrapping when we don't want it, set the min width
|
| @@ -155,15 +157,15 @@
|
| [mTextView sizeToFit];
|
| textViewFrame = [mTextView frame];
|
| }
|
| -
|
| +
|
| // set the origin back where its supposed to be
|
| [mTextView setFrameOrigin:NSMakePoint(0, kBorderPadding)];
|
| -
|
| +
|
| // size the panel correctly, taking border into account
|
| NSSize textSize = textViewFrame.size;
|
| textSize.height += kBorderPadding + kBorderPadding;
|
| [mTooltipWindow setContentSize:textSize];
|
| -
|
| +
|
| // We try to put the top left point right below the cursor. If that doesn't fit
|
| // on screen, put the bottom left point above the cursor.
|
| if (point.y - kVOffset - textSize.height > NSMinY(screenFrame)) {
|
| @@ -174,7 +176,7 @@
|
| point.y += kVOffset / 2.5;
|
| [mTooltipWindow setFrameOrigin:point];
|
| }
|
| -
|
| +
|
| // if it doesn't fit on screen horizontally, adjust so that it does
|
| float amountOffScreenX = NSMaxX(screenFrame) - NSMaxX([mTooltipWindow frame]);
|
| if (amountOffScreenX < 0) {
|
| @@ -183,7 +185,7 @@
|
| [mTooltipWindow setFrame:movedFrame display:NO];
|
| }
|
|
|
| - // add as a child window
|
| + // add as a child window
|
| [inWindow addChildWindow:mTooltipWindow ordered:NSWindowAbove];
|
| // show the panel
|
| [mTooltipWindow orderFront:nil];
|
|
|