OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2007 David Smith (catfish.man@gmail.com) | 4 * (C) 2007 David Smith (catfish.man@gmail.com) |
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc.
All rights reserved. | 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc.
All rights reserved. |
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
7 * | 7 * |
8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
(...skipping 20 matching lines...) Expand all Loading... |
31 #include "core/dom/StyleEngine.h" | 31 #include "core/dom/StyleEngine.h" |
32 #include "core/dom/shadow/ShadowRoot.h" | 32 #include "core/dom/shadow/ShadowRoot.h" |
33 #include "core/editing/Editor.h" | 33 #include "core/editing/Editor.h" |
34 #include "core/editing/FrameSelection.h" | 34 #include "core/editing/FrameSelection.h" |
35 #include "core/editing/htmlediting.h" | 35 #include "core/editing/htmlediting.h" |
36 #include "core/events/OverflowEvent.h" | 36 #include "core/events/OverflowEvent.h" |
37 #include "core/fetch/ResourceLoadPriorityOptimizer.h" | 37 #include "core/fetch/ResourceLoadPriorityOptimizer.h" |
38 #include "core/frame/FrameView.h" | 38 #include "core/frame/FrameView.h" |
39 #include "core/frame/LocalFrame.h" | 39 #include "core/frame/LocalFrame.h" |
40 #include "core/frame/Settings.h" | 40 #include "core/frame/Settings.h" |
| 41 #include "core/html/HTMLMarqueeElement.h" |
41 #include "core/layout/HitTestLocation.h" | 42 #include "core/layout/HitTestLocation.h" |
42 #include "core/layout/HitTestResult.h" | 43 #include "core/layout/HitTestResult.h" |
43 #include "core/layout/LayoutAnalyzer.h" | 44 #include "core/layout/LayoutAnalyzer.h" |
44 #include "core/layout/LayoutDeprecatedFlexibleBox.h" | 45 #include "core/layout/LayoutDeprecatedFlexibleBox.h" |
45 #include "core/layout/LayoutFlexibleBox.h" | 46 #include "core/layout/LayoutFlexibleBox.h" |
46 #include "core/layout/LayoutFlowThread.h" | 47 #include "core/layout/LayoutFlowThread.h" |
47 #include "core/layout/LayoutGrid.h" | 48 #include "core/layout/LayoutGrid.h" |
48 #include "core/layout/LayoutInline.h" | 49 #include "core/layout/LayoutInline.h" |
49 #include "core/layout/LayoutMultiColumnSpannerPlaceholder.h" | 50 #include "core/layout/LayoutMultiColumnSpannerPlaceholder.h" |
50 #include "core/layout/LayoutObject.h" | 51 #include "core/layout/LayoutObject.h" |
(...skipping 1949 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2000 { | 2001 { |
2001 if (childrenInline()) { | 2002 if (childrenInline()) { |
2002 // FIXME: Remove this const_cast. | 2003 // FIXME: Remove this const_cast. |
2003 toLayoutBlockFlow(const_cast<LayoutBlock*>(this))->computeInlinePreferre
dLogicalWidths(minLogicalWidth, maxLogicalWidth); | 2004 toLayoutBlockFlow(const_cast<LayoutBlock*>(this))->computeInlinePreferre
dLogicalWidths(minLogicalWidth, maxLogicalWidth); |
2004 } else { | 2005 } else { |
2005 computeBlockPreferredLogicalWidths(minLogicalWidth, maxLogicalWidth); | 2006 computeBlockPreferredLogicalWidths(minLogicalWidth, maxLogicalWidth); |
2006 } | 2007 } |
2007 | 2008 |
2008 maxLogicalWidth = std::max(minLogicalWidth, maxLogicalWidth); | 2009 maxLogicalWidth = std::max(minLogicalWidth, maxLogicalWidth); |
2009 | 2010 |
| 2011 if (isHTMLMarqueeElement(node()) && toHTMLMarqueeElement(node())->isHorizont
al()) |
| 2012 minLogicalWidth = LayoutUnit(); |
| 2013 |
2010 if (isTableCell()) { | 2014 if (isTableCell()) { |
2011 Length tableCellWidth = toLayoutTableCell(this)->styleOrColLogicalWidth(
); | 2015 Length tableCellWidth = toLayoutTableCell(this)->styleOrColLogicalWidth(
); |
2012 if (tableCellWidth.isFixed() && tableCellWidth.value() > 0) | 2016 if (tableCellWidth.isFixed() && tableCellWidth.value() > 0) |
2013 maxLogicalWidth = std::max(minLogicalWidth, adjustContentBoxLogicalW
idthForBoxSizing(tableCellWidth.value())); | 2017 maxLogicalWidth = std::max(minLogicalWidth, adjustContentBoxLogicalW
idthForBoxSizing(tableCellWidth.value())); |
2014 } | 2018 } |
2015 | 2019 |
2016 int scrollbarWidth = intrinsicScrollbarLogicalWidth(); | 2020 int scrollbarWidth = intrinsicScrollbarLogicalWidth(); |
2017 maxLogicalWidth += scrollbarWidth; | 2021 maxLogicalWidth += scrollbarWidth; |
2018 minLogicalWidth += scrollbarWidth; | 2022 minLogicalWidth += scrollbarWidth; |
2019 } | 2023 } |
(...skipping 897 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2917 void LayoutBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m
arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Layout
Object* obj) const | 2921 void LayoutBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m
arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Layout
Object* obj) const |
2918 { | 2922 { |
2919 showLayoutObject(); | 2923 showLayoutObject(); |
2920 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot
Box()) | 2924 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot
Box()) |
2921 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa
bel2, obj, 1); | 2925 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa
bel2, obj, 1); |
2922 } | 2926 } |
2923 | 2927 |
2924 #endif | 2928 #endif |
2925 | 2929 |
2926 } // namespace blink | 2930 } // namespace blink |
OLD | NEW |