| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> | 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> |
| 3 * 1999 Lars Knoll <knoll@kde.org> | 3 * 1999 Lars Knoll <knoll@kde.org> |
| 4 * 1999 Antti Koivisto <koivisto@kde.org> | 4 * 1999 Antti Koivisto <koivisto@kde.org> |
| 5 * 2000 Dirk Mueller <mueller@kde.org> | 5 * 2000 Dirk Mueller <mueller@kde.org> |
| 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
| 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
| 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 9 * Copyright (C) 2009 Google Inc. All rights reserved. | 9 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 10 * | 10 * |
| (...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 241 } | 241 } |
| 242 } | 242 } |
| 243 | 243 |
| 244 void FrameView::init() | 244 void FrameView::init() |
| 245 { | 245 { |
| 246 reset(); | 246 reset(); |
| 247 | 247 |
| 248 m_size = LayoutSize(); | 248 m_size = LayoutSize(); |
| 249 | 249 |
| 250 // Propagate the marginwidth/height and scrolling modes to the view. | 250 // Propagate the marginwidth/height and scrolling modes to the view. |
| 251 // FIXME: Do we need to do this for OOPI? | 251 if (m_frame->owner() && m_frame->owner()->scrollingMode() == ScrollbarAlways
Off) |
| 252 Element* ownerElement = m_frame->deprecatedLocalOwner(); | 252 setCanHaveScrollbars(false); |
| 253 if (ownerElement && (isHTMLFrameElement(*ownerElement) || isHTMLIFrameElemen
t(*ownerElement))) { | |
| 254 HTMLFrameElementBase* frameElt = toHTMLFrameElementBase(ownerElement); | |
| 255 if (frameElt->scrollingMode() == ScrollbarAlwaysOff) | |
| 256 setCanHaveScrollbars(false); | |
| 257 } | |
| 258 } | 253 } |
| 259 | 254 |
| 260 void FrameView::dispose() | 255 void FrameView::dispose() |
| 261 { | 256 { |
| 262 RELEASE_ASSERT(!isInPerformLayout()); | 257 RELEASE_ASSERT(!isInPerformLayout()); |
| 263 | 258 |
| 264 if (ScrollAnimator* scrollAnimator = existingScrollAnimator()) | 259 if (ScrollAnimator* scrollAnimator = existingScrollAnimator()) |
| 265 scrollAnimator->cancelAnimations(); | 260 scrollAnimator->cancelAnimations(); |
| 266 cancelProgrammaticScrollAnimation(); | 261 cancelProgrammaticScrollAnimation(); |
| 267 | 262 |
| (...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 567 | 562 |
| 568 void FrameView::calculateScrollbarModes(ScrollbarMode& hMode, ScrollbarMode& vMo
de, ScrollbarModesCalculationStrategy strategy) | 563 void FrameView::calculateScrollbarModes(ScrollbarMode& hMode, ScrollbarMode& vMo
de, ScrollbarModesCalculationStrategy strategy) |
| 569 { | 564 { |
| 570 #define RETURN_SCROLLBAR_MODE(mode) \ | 565 #define RETURN_SCROLLBAR_MODE(mode) \ |
| 571 { \ | 566 { \ |
| 572 hMode = vMode = mode; \ | 567 hMode = vMode = mode; \ |
| 573 return; \ | 568 return; \ |
| 574 } | 569 } |
| 575 | 570 |
| 576 // Setting scrolling="no" on an iframe element disables scrolling. | 571 // Setting scrolling="no" on an iframe element disables scrolling. |
| 577 // FIXME: Handle this for OOPI? | 572 if (m_frame->owner() && m_frame->owner()->scrollingMode() == ScrollbarAlways
Off) |
| 578 if (const HTMLFrameOwnerElement* owner = m_frame->deprecatedLocalOwner()) { | 573 RETURN_SCROLLBAR_MODE(ScrollbarAlwaysOff); |
| 579 if (owner->scrollingMode() == ScrollbarAlwaysOff) | |
| 580 RETURN_SCROLLBAR_MODE(ScrollbarAlwaysOff); | |
| 581 } | |
| 582 | 574 |
| 583 // Framesets can't scroll. | 575 // Framesets can't scroll. |
| 584 Node* body = m_frame->document()->body(); | 576 Node* body = m_frame->document()->body(); |
| 585 if (isHTMLFrameSetElement(body) && body->layoutObject()) | 577 if (isHTMLFrameSetElement(body) && body->layoutObject()) |
| 586 RETURN_SCROLLBAR_MODE(ScrollbarAlwaysOff); | 578 RETURN_SCROLLBAR_MODE(ScrollbarAlwaysOff); |
| 587 | 579 |
| 588 // Scrollbars can be disabled by FrameView::setCanHaveScrollbars. | 580 // Scrollbars can be disabled by FrameView::setCanHaveScrollbars. |
| 589 if (!m_canHaveScrollbars && strategy != RulesFromWebContentOnly) | 581 if (!m_canHaveScrollbars && strategy != RulesFromWebContentOnly) |
| 590 RETURN_SCROLLBAR_MODE(ScrollbarAlwaysOff); | 582 RETURN_SCROLLBAR_MODE(ScrollbarAlwaysOff); |
| 591 | 583 |
| (...skipping 3485 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4077 } | 4069 } |
| 4078 | 4070 |
| 4079 bool FrameView::canThrottleRendering() const | 4071 bool FrameView::canThrottleRendering() const |
| 4080 { | 4072 { |
| 4081 if (!RuntimeEnabledFeatures::renderingPipelineThrottlingEnabled()) | 4073 if (!RuntimeEnabledFeatures::renderingPipelineThrottlingEnabled()) |
| 4082 return false; | 4074 return false; |
| 4083 return m_hiddenForThrottling && m_crossOriginForThrottling; | 4075 return m_hiddenForThrottling && m_crossOriginForThrottling; |
| 4084 } | 4076 } |
| 4085 | 4077 |
| 4086 } // namespace blink | 4078 } // namespace blink |
| OLD | NEW |