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) 2005 Allan Sandfeld Jensen (kde@carewolf.com) | 4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) |
5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com) | 5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com) |
6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv
ed. | 6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv
ed. |
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 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
104 if (documentBeingDestroyed()) | 104 if (documentBeingDestroyed()) |
105 return; | 105 return; |
106 | 106 |
107 if (isFloating()) { | 107 if (isFloating()) { |
108 RenderBlock* outermostBlock = containingBlock(); | 108 RenderBlock* outermostBlock = containingBlock(); |
109 for (RenderBlock* p = outermostBlock; p && !p->isRenderView(); p = p->co
ntainingBlock()) { | 109 for (RenderBlock* p = outermostBlock; p && !p->isRenderView(); p = p->co
ntainingBlock()) { |
110 if (p->containsFloat(this)) | 110 if (p->containsFloat(this)) |
111 outermostBlock = p; | 111 outermostBlock = p; |
112 } | 112 } |
113 | 113 |
114 if (outermostBlock) | 114 if (outermostBlock) { |
| 115 RenderObject* parent = outermostBlock->parent(); |
| 116 if (parent && parent->isFlexibleBox()) |
| 117 outermostBlock = toRenderBlock(parent); |
| 118 |
115 outermostBlock->markAllDescendantsWithFloatsForLayout(this, false); | 119 outermostBlock->markAllDescendantsWithFloatsForLayout(this, false); |
| 120 } |
116 } | 121 } |
117 | 122 |
118 if (isPositioned()) { | 123 if (isPositioned()) { |
119 RenderObject* p; | 124 RenderObject* p; |
120 for (p = parent(); p; p = p->parent()) { | 125 for (p = parent(); p; p = p->parent()) { |
121 if (p->isRenderBlock()) | 126 if (p->isRenderBlock()) |
122 toRenderBlock(p)->removePositionedObject(this); | 127 toRenderBlock(p)->removePositionedObject(this); |
123 } | 128 } |
124 } | 129 } |
125 } | 130 } |
(...skipping 2783 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2909 | 2914 |
2910 if (visualOverflowRect() == borderBoxRect()) { | 2915 if (visualOverflowRect() == borderBoxRect()) { |
2911 m_overflow.clear(); | 2916 m_overflow.clear(); |
2912 return; | 2917 return; |
2913 } | 2918 } |
2914 | 2919 |
2915 m_overflow->resetLayoutOverflow(borderBoxRect()); | 2920 m_overflow->resetLayoutOverflow(borderBoxRect()); |
2916 } | 2921 } |
2917 | 2922 |
2918 } // namespace WebCore | 2923 } // namespace WebCore |
OLD | NEW |