Commit 598c7a95 authored by mitz@apple.com's avatar mitz@apple.com

Reviewed by Dave Hyatt.

        - fix <rdar://problem/6990938> REGRESSION (r42787): After showing and
          hiding the Find banner, the WebHTMLView's height is not restored

        * WebView/WebFrameView.mm:
        (-[WebFrameView setFrameSize:]): Mark the FrameView for layout when the
        WebFrameView's size changes.
        * WebView/WebView.mm:
        (-[WebView setFrameSize:]): Left the resize logic here, but only for
        the single view model.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@44939 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 4d4db5b3
2009-06-22 Dan Bernstein <mitz@apple.com>
Reviewed by Dave Hyatt.
- fix <rdar://problem/6990938> REGRESSION (r42787): After showing and
hiding the Find banner, the WebHTMLView's height is not restored
* WebView/WebFrameView.mm:
(-[WebFrameView setFrameSize:]): Mark the FrameView for layout when the
WebFrameView's size changes.
* WebView/WebView.mm:
(-[WebView setFrameSize:]): Left the resize logic here, but only for
the single view model.
2009-06-20 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
......
......@@ -493,9 +493,15 @@ static inline void addTypesFromClass(NSMutableDictionary *allTypes, Class objCCl
- (void)setFrameSize:(NSSize)size
{
// See WebFrameLoaderClient::provisionalLoadStarted.
if (!NSEqualSizes(size, [self frame].size) && [[[self webFrame] webView] drawsBackground])
[[self _scrollView] setDrawsBackground:YES];
if (!NSEqualSizes(size, [self frame].size)) {
// See WebFrameLoaderClient::provisionalLoadStarted.
if ([[[self webFrame] webView] drawsBackground])
[[self _scrollView] setDrawsBackground:YES];
if (Frame* coreFrame = [self _web_frame]) {
if (FrameView* coreFrameView = coreFrame->view())
coreFrameView->setNeedsLayout();
}
}
[super setFrameSize:size];
}
......
......@@ -751,14 +751,13 @@ static bool runningTigerMail()
- (void)setFrameSize:(NSSize)size
{
if (!NSEqualSizes(_private->lastLayoutSize, size)) {
if (!_private->usesDocumentViews && !NSEqualSizes(_private->lastLayoutSize, size)) {
Frame* frame = [self _mainCoreFrame];
// FIXME: Viewless WebKit is broken with Safari banners (e.g., the Find banner). We'll have to figure out a way for
// Safari to communicate that this space is being consumed. For WebKit with document views, there's no
// need to do an explicit resize, since WebFrameViews have auto resizing turned on and will handle changing
// their bounds automatically. See <rdar://problem/6835573> for details.
if (!_private->usesDocumentViews)
frame->view()->resize(IntSize(size));
frame->view()->resize(IntSize(size));
frame->view()->setNeedsLayout();
[self setNeedsDisplay:YES];
_private->lastLayoutSize = size;
......
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