- a/Source/WebCore/CMakeLists.txt -1 lines
Lines 1222-1228 SET(WebCore_SOURCES a/Source/WebCore/CMakeLists.txt_sec1
1222
    rendering/RenderImage.cpp
1222
    rendering/RenderImage.cpp
1223
    rendering/RenderImageResource.cpp
1223
    rendering/RenderImageResource.cpp
1224
    rendering/RenderImageResourceStyleImage.cpp
1224
    rendering/RenderImageResourceStyleImage.cpp
1225
    rendering/RenderIndicator.cpp
1226
    rendering/RenderInline.cpp
1225
    rendering/RenderInline.cpp
1227
    rendering/RenderLayer.cpp
1226
    rendering/RenderLayer.cpp
1228
    rendering/RenderLineBoxList.cpp
1227
    rendering/RenderLineBoxList.cpp
- a/Source/WebCore/ChangeLog +24 lines
Lines 1-5 a/Source/WebCore/ChangeLog_sec1
1
2011-04-11  MORITA Hajime  <morrita@google.com>
1
2011-04-11  MORITA Hajime  <morrita@google.com>
2
2
3
        Reviewed by NOBODY (OOPS!).
4
        
5
        RenderIndicator and ShadowBlockElement are no longer used.
6
        https://bugs.webkit.org/show_bug.cgi?id=58277
7
8
        Removed RenderIndicator and ShadowBlockElement.
9
        
10
        No new tests. Just removed unused code.
11
12
        * CMakeLists.txt:
13
        * GNUmakefile.list.am:
14
        * WebCore.gypi:
15
        * WebCore.pro:
16
        * WebCore.vcproj/WebCore.vcproj:
17
        * WebCore.xcodeproj/project.pbxproj:
18
        * rendering/RenderIndicator.cpp: Removed.
19
        * rendering/RenderIndicator.h: Removed.
20
        * rendering/RenderMeter.h:
21
        * rendering/RenderingAllInOne.cpp:
22
        * rendering/ShadowElement.cpp:
23
        * rendering/ShadowElement.h:
24
25
2011-04-11  MORITA Hajime  <morrita@google.com>
26
3
        Unreviewed build fix.
27
        Unreviewed build fix.
4
28
5
        Changeset 83492 broke Leopard build.
29
        Changeset 83492 broke Leopard build.
- a/Source/WebCore/GNUmakefile.list.am -2 lines
Lines 2777-2784 webcore_sources += \ a/Source/WebCore/GNUmakefile.list.am_sec1
2777
	Source/WebCore/rendering/RenderImageResource.h \
2777
	Source/WebCore/rendering/RenderImageResource.h \
2778
	Source/WebCore/rendering/RenderImageResourceStyleImage.cpp \
2778
	Source/WebCore/rendering/RenderImageResourceStyleImage.cpp \
2779
	Source/WebCore/rendering/RenderImageResourceStyleImage.h \
2779
	Source/WebCore/rendering/RenderImageResourceStyleImage.h \
2780
	Source/WebCore/rendering/RenderIndicator.cpp \
2781
	Source/WebCore/rendering/RenderIndicator.h \
2782
	Source/WebCore/rendering/RenderInline.cpp \
2780
	Source/WebCore/rendering/RenderInline.cpp \
2783
	Source/WebCore/rendering/RenderInline.h \
2781
	Source/WebCore/rendering/RenderInline.h \
2784
	Source/WebCore/rendering/RenderLayerBacking.h \
2782
	Source/WebCore/rendering/RenderLayerBacking.h \
- a/Source/WebCore/WebCore.gypi -2 lines
Lines 5162-5169 a/Source/WebCore/WebCore.gypi_sec1
5162
            'rendering/RenderImage.cpp',
5162
            'rendering/RenderImage.cpp',
5163
            'rendering/RenderImageResource.cpp',
5163
            'rendering/RenderImageResource.cpp',
5164
            'rendering/RenderImageResourceStyleImage.cpp',
5164
            'rendering/RenderImageResourceStyleImage.cpp',
5165
            'rendering/RenderIndicator.cpp',
5166
            'rendering/RenderIndicator.h',
5167
            'rendering/RenderInline.cpp',
5165
            'rendering/RenderInline.cpp',
5168
            'rendering/RenderInline.h',
5166
            'rendering/RenderInline.h',
5169
            'rendering/RenderInputSpeech.cpp',
5167
            'rendering/RenderInputSpeech.cpp',
- a/Source/WebCore/WebCore.pro -2 lines
Lines 1101-1107 SOURCES += \ a/Source/WebCore/WebCore.pro_sec1
1101
    rendering/RenderImage.cpp \
1101
    rendering/RenderImage.cpp \
1102
    rendering/RenderImageResource.cpp \
1102
    rendering/RenderImageResource.cpp \
1103
    rendering/RenderImageResourceStyleImage.cpp \
1103
    rendering/RenderImageResourceStyleImage.cpp \
1104
    rendering/RenderIndicator.cpp \
1105
    rendering/RenderInline.cpp \
1104
    rendering/RenderInline.cpp \
1106
    rendering/RenderLayer.cpp \
1105
    rendering/RenderLayer.cpp \
1107
    rendering/RenderLayerBacking.cpp \
1106
    rendering/RenderLayerBacking.cpp \
Lines 2110-2116 HEADERS += \ a/Source/WebCore/WebCore.pro_sec2
2110
    rendering/RenderImageResource.h \
2109
    rendering/RenderImageResource.h \
2111
    rendering/RenderImageResourceStyleImage.h \
2110
    rendering/RenderImageResourceStyleImage.h \
2112
    rendering/RenderImage.h \
2111
    rendering/RenderImage.h \
2113
    rendering/RenderIndicator.h \
2114
    rendering/RenderInline.h \
2112
    rendering/RenderInline.h \
2115
    rendering/RenderInputSpeech.h \
2113
    rendering/RenderInputSpeech.h \
2116
    rendering/RenderLayer.h \
2114
    rendering/RenderLayer.h \
- a/Source/WebCore/WebCore.vcproj/WebCore.vcproj -56 lines
Lines 34494-34555 a/Source/WebCore/WebCore.vcproj/WebCore.vcproj_sec1
34494
				>
34494
				>
34495
			</File>
34495
			</File>
34496
			<File
34496
			<File
34497
				RelativePath="..\rendering\RenderIndicator.cpp"
34498
				>
34499
				<FileConfiguration
34500
					Name="Debug|Win32"
34501
					ExcludedFromBuild="true"
34502
					>
34503
					<Tool
34504
						Name="VCCLCompilerTool"
34505
					/>
34506
				</FileConfiguration>
34507
				<FileConfiguration
34508
					Name="Release|Win32"
34509
					ExcludedFromBuild="true"
34510
					>
34511
					<Tool
34512
						Name="VCCLCompilerTool"
34513
					/>
34514
				</FileConfiguration>
34515
				<FileConfiguration
34516
					Name="Debug_Cairo_CFLite|Win32"
34517
					ExcludedFromBuild="true"
34518
					>
34519
					<Tool
34520
						Name="VCCLCompilerTool"
34521
					/>
34522
				</FileConfiguration>
34523
				<FileConfiguration
34524
					Name="Release_Cairo_CFLite|Win32"
34525
					ExcludedFromBuild="true"
34526
					>
34527
					<Tool
34528
						Name="VCCLCompilerTool"
34529
					/>
34530
				</FileConfiguration>
34531
				<FileConfiguration
34532
					Name="Debug_All|Win32"
34533
					ExcludedFromBuild="true"
34534
					>
34535
					<Tool
34536
						Name="VCCLCompilerTool"
34537
					/>
34538
				</FileConfiguration>
34539
				<FileConfiguration
34540
					Name="Production|Win32"
34541
					ExcludedFromBuild="true"
34542
					>
34543
					<Tool
34544
						Name="VCCLCompilerTool"
34545
					/>
34546
				</FileConfiguration>
34547
			</File>
34548
			<File
34549
				RelativePath="..\rendering\RenderIndicator.h"
34550
				>
34551
			</File>
34552
			<File
34553
				RelativePath="..\rendering\RenderingAllInOne.cpp"
34497
				RelativePath="..\rendering\RenderingAllInOne.cpp"
34554
				>
34498
				>
34555
			</File>
34499
			</File>
- a/Source/WebCore/WebCore.xcodeproj/project.pbxproj -8 lines
Lines 3230-3237 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec1
3230
		A78FE13C12366B1000ACE8D0 /* SpellChecker.h in Headers */ = {isa = PBXBuildFile; fileRef = A78FE13A12366B1000ACE8D0 /* SpellChecker.h */; settings = {ATTRIBUTES = (Private, ); }; };
3230
		A78FE13C12366B1000ACE8D0 /* SpellChecker.h in Headers */ = {isa = PBXBuildFile; fileRef = A78FE13A12366B1000ACE8D0 /* SpellChecker.h */; settings = {ATTRIBUTES = (Private, ); }; };
3231
		A795463E0B5C4C80007B438F /* DragDataMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = A795463D0B5C4C80007B438F /* DragDataMac.mm */; };
3231
		A795463E0B5C4C80007B438F /* DragDataMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = A795463D0B5C4C80007B438F /* DragDataMac.mm */; };
3232
		A79546430B5C4CB4007B438F /* DragData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A79546420B5C4CB4007B438F /* DragData.cpp */; };
3232
		A79546430B5C4CB4007B438F /* DragData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A79546420B5C4CB4007B438F /* DragData.cpp */; };
3233
		A7AA66D611C5ED6A001D8C8C /* RenderIndicator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7AA66D411C5ED6A001D8C8C /* RenderIndicator.cpp */; };
3234
		A7AA66D711C5ED6A001D8C8C /* RenderIndicator.h in Headers */ = {isa = PBXBuildFile; fileRef = A7AA66D511C5ED6A001D8C8C /* RenderIndicator.h */; };
3235
		A7AD2F870EC89D07008AB002 /* LinkHash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7AD2F850EC89D07008AB002 /* LinkHash.cpp */; };
3233
		A7AD2F870EC89D07008AB002 /* LinkHash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7AD2F850EC89D07008AB002 /* LinkHash.cpp */; };
3236
		A7AD2F880EC89D07008AB002 /* LinkHash.h in Headers */ = {isa = PBXBuildFile; fileRef = A7AD2F860EC89D07008AB002 /* LinkHash.h */; settings = {ATTRIBUTES = (Private, ); }; };
3234
		A7AD2F880EC89D07008AB002 /* LinkHash.h in Headers */ = {isa = PBXBuildFile; fileRef = A7AD2F860EC89D07008AB002 /* LinkHash.h */; settings = {ATTRIBUTES = (Private, ); }; };
3237
		A7B070D2130A409C00A3763C /* FrameActionScheduler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7B070D0130A409C00A3763C /* FrameActionScheduler.cpp */; };
3235
		A7B070D2130A409C00A3763C /* FrameActionScheduler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7B070D0130A409C00A3763C /* FrameActionScheduler.cpp */; };
Lines 9773-9780 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec2
9773
		A78FE13A12366B1000ACE8D0 /* SpellChecker.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; path = SpellChecker.h; sourceTree = "<group>"; };
9771
		A78FE13A12366B1000ACE8D0 /* SpellChecker.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.c.h; fileEncoding = 4; path = SpellChecker.h; sourceTree = "<group>"; };
9774
		A795463D0B5C4C80007B438F /* DragDataMac.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = DragDataMac.mm; sourceTree = "<group>"; };
9772
		A795463D0B5C4C80007B438F /* DragDataMac.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; path = DragDataMac.mm; sourceTree = "<group>"; };
9775
		A79546420B5C4CB4007B438F /* DragData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DragData.cpp; sourceTree = "<group>"; };
9773
		A79546420B5C4CB4007B438F /* DragData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DragData.cpp; sourceTree = "<group>"; };
9776
		A7AA66D411C5ED6A001D8C8C /* RenderIndicator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderIndicator.cpp; sourceTree = "<group>"; };
9777
		A7AA66D511C5ED6A001D8C8C /* RenderIndicator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderIndicator.h; sourceTree = "<group>"; };
9778
		A7AD2F850EC89D07008AB002 /* LinkHash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LinkHash.cpp; sourceTree = "<group>"; };
9774
		A7AD2F850EC89D07008AB002 /* LinkHash.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LinkHash.cpp; sourceTree = "<group>"; };
9779
		A7AD2F860EC89D07008AB002 /* LinkHash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LinkHash.h; sourceTree = "<group>"; };
9775
		A7AD2F860EC89D07008AB002 /* LinkHash.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LinkHash.h; sourceTree = "<group>"; };
9780
		A7B070D0130A409C00A3763C /* FrameActionScheduler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FrameActionScheduler.cpp; sourceTree = "<group>"; };
9776
		A7B070D0130A409C00A3763C /* FrameActionScheduler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FrameActionScheduler.cpp; sourceTree = "<group>"; };
Lines 19120-19127 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec3
19120
				08F2F0081213E61700DCEC48 /* RenderImageResource.h */,
19116
				08F2F0081213E61700DCEC48 /* RenderImageResource.h */,
19121
				08641D4512142F7D008DE9F6 /* RenderImageResourceStyleImage.cpp */,
19117
				08641D4512142F7D008DE9F6 /* RenderImageResourceStyleImage.cpp */,
19122
				08641D4612142F7D008DE9F6 /* RenderImageResourceStyleImage.h */,
19118
				08641D4612142F7D008DE9F6 /* RenderImageResourceStyleImage.h */,
19123
				A7AA66D411C5ED6A001D8C8C /* RenderIndicator.cpp */,
19124
				A7AA66D511C5ED6A001D8C8C /* RenderIndicator.h */,
19125
				BCEA4838097D93020094C9E4 /* RenderInline.cpp */,
19119
				BCEA4838097D93020094C9E4 /* RenderInline.cpp */,
19126
				BCEA4839097D93020094C9E4 /* RenderInline.h */,
19120
				BCEA4839097D93020094C9E4 /* RenderInline.h */,
19127
				750D029111D0E7F300BD1B27 /* RenderInputSpeech.cpp */,
19121
				750D029111D0E7F300BD1B27 /* RenderInputSpeech.cpp */,
Lines 22117-22123 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec4
22117
				BCEA4876097D93020094C9E4 /* RenderImage.h in Headers */,
22111
				BCEA4876097D93020094C9E4 /* RenderImage.h in Headers */,
22118
				08F2F00A1213E61700DCEC48 /* RenderImageResource.h in Headers */,
22112
				08F2F00A1213E61700DCEC48 /* RenderImageResource.h in Headers */,
22119
				08641D4812142F7D008DE9F6 /* RenderImageResourceStyleImage.h in Headers */,
22113
				08641D4812142F7D008DE9F6 /* RenderImageResourceStyleImage.h in Headers */,
22120
				A7AA66D711C5ED6A001D8C8C /* RenderIndicator.h in Headers */,
22121
				BCEA4878097D93020094C9E4 /* RenderInline.h in Headers */,
22114
				BCEA4878097D93020094C9E4 /* RenderInline.h in Headers */,
22122
				750D029411D0E7F300BD1B27 /* RenderInputSpeech.h in Headers */,
22115
				750D029411D0E7F300BD1B27 /* RenderInputSpeech.h in Headers */,
22123
				BCEA487A097D93020094C9E4 /* RenderLayer.h in Headers */,
22116
				BCEA487A097D93020094C9E4 /* RenderLayer.h in Headers */,
Lines 24980-24986 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec5
24980
				BCEA4875097D93020094C9E4 /* RenderImage.cpp in Sources */,
24973
				BCEA4875097D93020094C9E4 /* RenderImage.cpp in Sources */,
24981
				08F2F0091213E61700DCEC48 /* RenderImageResource.cpp in Sources */,
24974
				08F2F0091213E61700DCEC48 /* RenderImageResource.cpp in Sources */,
24982
				08641D4712142F7D008DE9F6 /* RenderImageResourceStyleImage.cpp in Sources */,
24975
				08641D4712142F7D008DE9F6 /* RenderImageResourceStyleImage.cpp in Sources */,
24983
				A7AA66D611C5ED6A001D8C8C /* RenderIndicator.cpp in Sources */,
24984
				BCEA4877097D93020094C9E4 /* RenderInline.cpp in Sources */,
24976
				BCEA4877097D93020094C9E4 /* RenderInline.cpp in Sources */,
24985
				750D029311D0E7F300BD1B27 /* RenderInputSpeech.cpp in Sources */,
24977
				750D029311D0E7F300BD1B27 /* RenderInputSpeech.cpp in Sources */,
24986
				BCEA4879097D93020094C9E4 /* RenderLayer.cpp in Sources */,
24978
				BCEA4879097D93020094C9E4 /* RenderLayer.cpp in Sources */,
- a/Source/WebCore/rendering/RenderIndicator.cpp -102 lines
Lines 1-102 a/Source/WebCore/rendering/RenderIndicator.cpp_sec1
1
/*
2
 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
3
 *
4
 * This library is free software; you can redistribute it and/or
5
 * modify it under the terms of the GNU Library General Public
6
 * License as published by the Free Software Foundation; either
7
 * version 2 of the License, or (at your option) any later version.
8
 *
9
 * This library is distributed in the hope that it will be useful,
10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12
 * Library General Public License for more details.
13
 *
14
 * You should have received a copy of the GNU Library General Public License
15
 * along with this library; see the file COPYING.LIB.  If not, write to
16
 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17
 * Boston, MA 02110-1301, USA.
18
 *
19
 */
20
21
#include "config.h"
22
23
#if ENABLE(PROGRESS_TAG) || ENABLE(METER_TAG)
24
25
#include "RenderIndicator.h"
26
27
#include "RenderTheme.h"
28
#include "RenderView.h"
29
30
using namespace std;
31
32
namespace WebCore {
33
34
RenderIndicatorPart::RenderIndicatorPart(Node* node)
35
    : RenderBlock(node)
36
    , m_originalVisibility(HIDDEN)
37
{
38
}
39
40
RenderIndicatorPart::~RenderIndicatorPart()
41
{
42
}
43
44
void RenderIndicatorPart::layout()
45
{
46
    RenderBox* parentRenderer = toRenderBox(parent());
47
    IntRect oldRect = frameRect();
48
    IntRect newRect = preferredFrameRect();
49
50
    LayoutStateMaintainer statePusher(parentRenderer->view(), parentRenderer, parentRenderer->size(), parentRenderer->style()->isFlippedBlocksWritingMode());
51
52
    if (oldRect.size() != newRect.size())
53
        setChildNeedsLayout(true, false);
54
    if (needsLayout())
55
        RenderBlock::layout();
56
    setFrameRect(newRect);
57
58
    if (checkForRepaintDuringLayout())
59
        repaintDuringLayoutIfMoved(oldRect);
60
        
61
    statePusher.pop();
62
    parentRenderer->addOverflowFromChild(this);
63
    style()->setVisibility(shouldBeHidden() ? HIDDEN : originalVisibility());
64
}
65
66
void RenderIndicatorPart::styleDidChange(StyleDifference diff, const RenderStyle* oldStyle)
67
{
68
    m_originalVisibility = style()->visibility();
69
    RenderBlock::styleDidChange(diff, oldStyle);
70
}
71
72
73
RenderIndicator::RenderIndicator(Node* node)
74
    : RenderBlock(node)
75
{
76
}
77
78
RenderIndicator::~RenderIndicator()
79
{
80
}
81
82
void RenderIndicator::layout()
83
{
84
    ASSERT(needsLayout());
85
86
    LayoutRepainter repainter(*this, checkForRepaintDuringLayout());
87
    computeLogicalWidth();
88
    computeLogicalHeight();
89
    layoutParts();
90
    repainter.repaintAfterLayout();
91
    setNeedsLayout(false);
92
}
93
94
void RenderIndicator::updateFromElement()
95
{
96
    setNeedsLayout(true);
97
    repaint();
98
}
99
100
} // namespace WebCore
101
102
#endif
- a/Source/WebCore/rendering/RenderIndicator.h -66 lines
Lines 1-66 a/Source/WebCore/rendering/RenderIndicator.h_sec1
1
/*
2
 * Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
3
 *
4
 * This library is free software; you can redistribute it and/or
5
 * modify it under the terms of the GNU Library General Public
6
 * License as published by the Free Software Foundation; either
7
 * version 2 of the License, or (at your option) any later version.
8
 *
9
 * This library is distributed in the hope that it will be useful,
10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12
 * Library General Public License for more details.
13
 *
14
 * You should have received a copy of the GNU Library General Public License
15
 * along with this library; see the file COPYING.LIB.  If not, write to
16
 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17
 * Boston, MA 02110-1301, USA.
18
 *
19
 */
20
21
#ifndef RenderIndicator_h
22
#define RenderIndicator_h
23
24
#if ENABLE(PROGRESS_TAG) || ENABLE(METER_TAG)
25
#include "RenderBlock.h"
26
27
namespace WebCore {
28
29
class RenderIndicatorPart : public RenderBlock {
30
public:
31
    RenderIndicatorPart(Node*);
32
    virtual ~RenderIndicatorPart();
33
34
protected:
35
    EVisibility originalVisibility() const { return m_originalVisibility; }
36
    virtual IntRect preferredFrameRect() = 0;
37
    virtual bool shouldBeHidden() = 0;
38
private:
39
    virtual void layout();
40
    virtual bool requiresForcedStyleRecalcPropagation() const { return true; }
41
    virtual bool canHaveChildren() const { return false; }
42
    virtual void styleDidChange(StyleDifference, const RenderStyle*);
43
44
    EVisibility m_originalVisibility;
45
};
46
47
class RenderIndicator : public RenderBlock {
48
public:
49
    RenderIndicator(Node*);
50
    virtual ~RenderIndicator();
51
52
protected:
53
    virtual void layout();
54
    virtual void updateFromElement();
55
    virtual bool requiresForcedStyleRecalcPropagation() const { return true; }
56
    virtual bool canHaveChildren() const { return false; }
57
58
    virtual void layoutParts() = 0;
59
};
60
61
} // namespace WebCore
62
63
#endif
64
65
#endif // RenderIndicator_h
66
- a/Source/WebCore/rendering/RenderMeter.h -2 lines
Lines 23-36 a/Source/WebCore/rendering/RenderMeter.h_sec1
23
23
24
#if ENABLE(METER_TAG)
24
#if ENABLE(METER_TAG)
25
#include "RenderBlock.h"
25
#include "RenderBlock.h"
26
#include "RenderIndicator.h"
27
#include "RenderWidget.h"
26
#include "RenderWidget.h"
28
27
29
28
30
namespace WebCore {
29
namespace WebCore {
31
30
32
class HTMLMeterElement;
31
class HTMLMeterElement;
33
class ShadowBlockElement;
34
32
35
class RenderMeter : public RenderBlock {
33
class RenderMeter : public RenderBlock {
36
public:
34
public:
- a/Source/WebCore/rendering/RenderingAllInOne.cpp -1 lines
Lines 62-68 a/Source/WebCore/rendering/RenderingAllInOne.cpp_sec1
62
#include "RenderImage.cpp"
62
#include "RenderImage.cpp"
63
#include "RenderImageResource.cpp"
63
#include "RenderImageResource.cpp"
64
#include "RenderImageResourceStyleImage.cpp"
64
#include "RenderImageResourceStyleImage.cpp"
65
#include "RenderIndicator.cpp"
66
#include "RenderInline.cpp"
65
#include "RenderInline.cpp"
67
#include "RenderLayer.cpp"
66
#include "RenderLayer.cpp"
68
#include "RenderLayerCompositor.cpp"
67
#include "RenderLayerCompositor.cpp"
- a/Source/WebCore/rendering/ShadowElement.cpp -79 lines
Lines 29-113 namespace WebCore { a/Source/WebCore/rendering/ShadowElement.cpp_sec1
29
29
30
using namespace HTMLNames;
30
using namespace HTMLNames;
31
31
32
PassRefPtr<ShadowBlockElement> ShadowBlockElement::create(HTMLElement* shadowParent)
33
{
34
    return adoptRef(new ShadowBlockElement(shadowParent));
35
}
36
37
ShadowBlockElement::ShadowBlockElement(HTMLElement* shadowParent)
38
    : ShadowElement<HTMLDivElement>(divTag, shadowParent)
39
{
40
}
41
42
void ShadowBlockElement::layoutAsPart(const IntRect& partRect)
43
{
44
    RenderBox* parentRenderer = toRenderBox(renderer()->parent());
45
    RenderBox* selfRenderer = toRenderBox(renderer());
46
    IntRect oldRect = selfRenderer->frameRect();
47
48
    LayoutStateMaintainer statePusher(parentRenderer->view(), parentRenderer, parentRenderer->size(), parentRenderer->style()->isFlippedBlocksWritingMode());
49
50
    if (oldRect.size() != partRect.size())
51
        selfRenderer->setChildNeedsLayout(true, false);
52
53
    selfRenderer->layoutIfNeeded();
54
    selfRenderer->setFrameRect(partRect);
55
56
    if (selfRenderer->checkForRepaintDuringLayout())
57
        selfRenderer->repaintDuringLayoutIfMoved(oldRect);
58
        
59
    statePusher.pop();
60
    parentRenderer->addOverflowFromChild(selfRenderer);
61
}
62
63
void ShadowBlockElement::updateStyleForPart(PseudoId pseudoId)
64
{
65
    if (renderer()->style()->styleType() != pseudoId)
66
        renderer()->setStyle(createStyleForPart(renderer()->parent(), pseudoId));
67
}
68
69
PassRefPtr<ShadowBlockElement> ShadowBlockElement::createForPart(HTMLElement* shadowParent, PseudoId pseudoId)
70
{
71
    RefPtr<ShadowBlockElement> part = create(shadowParent);
72
    part->initAsPart(pseudoId);
73
    return part.release();
74
}
75
76
void ShadowBlockElement::initAsPart(PseudoId pseudoId)
77
{
78
    RenderObject* parentRenderer = shadowHost()->renderer();
79
    RefPtr<RenderStyle> styleForPart = createStyleForPart(parentRenderer, pseudoId);
80
    setRenderer(createRenderer(parentRenderer->renderArena(), styleForPart.get()));
81
    renderer()->setStyle(styleForPart.release());
82
    setAttached();
83
    setInDocument();
84
}
85
86
PassRefPtr<RenderStyle> ShadowBlockElement::createStyleForPart(RenderObject* parentRenderer, PseudoId pseudoId)
87
{
88
    RefPtr<RenderStyle> styleForPart;
89
    RenderStyle* pseudoStyle = parentRenderer->getCachedPseudoStyle(pseudoId);
90
    if (pseudoStyle)
91
        styleForPart = RenderStyle::clone(pseudoStyle);
92
    else
93
        styleForPart = RenderStyle::create();
94
    
95
    styleForPart->inheritFrom(parentRenderer->style());
96
    styleForPart->setDisplay(BLOCK);
97
    styleForPart->setAppearance(NoControlPart);
98
    return styleForPart.release();
99
}
100
101
bool ShadowBlockElement::partShouldHaveStyle(const RenderObject* parentRenderer, PseudoId pseudoId)
102
{
103
    // We have some -webkit-appearance values for default styles of parts and
104
    // that appearance get turned off during RenderStyle creation 
105
    // if they have background styles specified.
106
    // So !hasAppearance() implies that there are something to be styled.
107
    RenderStyle* pseudoStyle = parentRenderer->getCachedPseudoStyle(pseudoId);
108
    return !(pseudoStyle && pseudoStyle->hasAppearance());
109
}
110
111
PassRefPtr<ShadowInputElement> ShadowInputElement::create(HTMLElement* shadowParent)
32
PassRefPtr<ShadowInputElement> ShadowInputElement::create(HTMLElement* shadowParent)
112
{
33
{
113
    return adoptRef(new ShadowInputElement(shadowParent));
34
    return adoptRef(new ShadowInputElement(shadowParent));
- a/Source/WebCore/rendering/ShadowElement.h -15 lines
Lines 61-81 void ShadowElement<BaseElement>::detach() a/Source/WebCore/rendering/ShadowElement.h_sec1
61
    BaseElement::setShadowHost(0);
61
    BaseElement::setShadowHost(0);
62
}
62
}
63
63
64
class ShadowBlockElement : public ShadowElement<HTMLDivElement> {
65
public:
66
    static PassRefPtr<ShadowBlockElement> create(HTMLElement*);
67
    static PassRefPtr<ShadowBlockElement> createForPart(HTMLElement*, PseudoId);
68
    static bool partShouldHaveStyle(const RenderObject* parentRenderer, PseudoId pseudoId);
69
    void layoutAsPart(const IntRect& partRect);
70
    virtual void updateStyleForPart(PseudoId);
71
72
protected:
73
    ShadowBlockElement(HTMLElement*);
74
    void initAsPart(PseudoId pasuedId);
75
private:
76
    static PassRefPtr<RenderStyle> createStyleForPart(RenderObject*, PseudoId);
77
};
78
79
class ShadowInputElement : public ShadowElement<HTMLInputElement> {
64
class ShadowInputElement : public ShadowElement<HTMLInputElement> {
80
public:
65
public:
81
    static PassRefPtr<ShadowInputElement> create(HTMLElement*);
66
    static PassRefPtr<ShadowInputElement> create(HTMLElement*);

Return to Bug 58277