| Differences between
and this patch
- a/Source/WebCore/ChangeLog +46 lines
Lines 1-3 a/Source/WebCore/ChangeLog_sec1
1
2012-07-20  Anna Cavender  <annacc@chromium.org>
2
3
        Create SourceBuffer and SourceBufferList objects
4
        https://bugs.webkit.org/show_bug.cgi?id=91771
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        SourceBuffer and SourceBufferList objects are needed in order to
9
        implement the new object-oriented MediaSource API:
10
        http://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html
11
12
        No new tests - will be able to test after landing BUGWK91775
13
14
        Adding new files to build files:
15
        * CMakeLists.txt:
16
        * DerivedSources.cpp:
17
        * DerivedSources.make:
18
        * DerivedSources.pri:
19
        * GNUmakefile.am:
20
        * GNUmakefile.list.am:
21
        * Target.pri:
22
        * WebCore.gyp/WebCore.gyp:
23
        * WebCore.gypi:
24
        * WebCore.vcproj/WebCore.vcproj:
25
        * WebCore.vcproj/WebCoreCommon.vsprops:
26
        * WebCore.vcproj/copyForwardingHeaders.cmd:
27
        * WebCore.xcodeproj/project.pbxproj:
28
29
        New objects:
30
        * Modules/mediasource/SourceBuffer.cpp: Added.
31
        * Modules/mediasource/SourceBuffer.h: Added.
32
        * Modules/mediasource/SourceBuffer.idl: Added.
33
        * Modules/mediasource/SourceBufferList.cpp: Added.
34
        * Modules/mediasource/SourceBufferList.h: Added.
35
        * Modules/mediasource/SourceBufferList.idl: Added.
36
37
        New events:
38
        * dom/EventNames.h:
39
        (WebCore):
40
        * dom/EventTarget.h:
41
        (WebCore):
42
        * dom/EventTargetFactory.in:
43
44
        Object constructors:
45
        * page/DOMWindow.idl:
46
1
2012-07-20  Ryosuke Niwa  <rniwa@webkit.org>
47
2012-07-20  Ryosuke Niwa  <rniwa@webkit.org>
2
48
3
        REGRESSION(r122873): 15% regression on Dromaeo/dom-attr
49
        REGRESSION(r122873): 15% regression on Dromaeo/dom-attr
- a/Source/WebCore/CMakeLists.txt +14 lines
Lines 2630-2635 SET(WebCoreTestSupport_SOURCES a/Source/WebCore/CMakeLists.txt_sec1
2630
    testing/InternalSettings.cpp
2630
    testing/InternalSettings.cpp
2631
)
2631
)
2632
2632
2633
IF (ENABLE_MEDIA_SOURCE)
2634
    LIST(APPEND WebCore_INCLUDE_DIRECTORIES
2635
        ${WEBCORE_DIR}/Modules/mediasource
2636
    )
2637
    LIST(APPEND WebCore_IDL_FILES
2638
        Modules/mediasource/SourceBuffer.idl
2639
        Modules/mediasource/SourceBufferList.idl
2640
    )
2641
    LIST(APPEND WebCore_SOURCES
2642
        Modules/mediasource/SourceBuffer.cpp
2643
        Modules/mediasource/SourceBufferList.cpp
2644
    )
2645
ENDIF()
2646
2633
# Modules that the bindings generator scripts may use
2647
# Modules that the bindings generator scripts may use
2634
SET(SCRIPTS_RESOLVE_SUPPLEMENTAL
2648
SET(SCRIPTS_RESOLVE_SUPPLEMENTAL
2635
    ${WEBCORE_DIR}/bindings/scripts/IDLParser.pm
2649
    ${WEBCORE_DIR}/bindings/scripts/IDLParser.pm
- a/Source/WebCore/DerivedSources.cpp +4 lines
Lines 279-284 a/Source/WebCore/DerivedSources.cpp_sec1
279
#include "JSShadowRoot.cpp"
279
#include "JSShadowRoot.cpp"
280
#include "JSSharedWorker.cpp"
280
#include "JSSharedWorker.cpp"
281
#include "JSSharedWorkerContext.cpp"
281
#include "JSSharedWorkerContext.cpp"
282
#if ENABLE(MEDIA_SOURCE)
283
#include "JSSourceBuffer.cpp"
284
#include "JSSourceBufferList.cpp"
285
#endif
282
#include "JSSQLError.cpp"
286
#include "JSSQLError.cpp"
283
#include "JSSQLException.cpp"
287
#include "JSSQLException.cpp"
284
#include "JSSQLResultSet.cpp"
288
#include "JSSQLResultSet.cpp"
- a/Source/WebCore/DerivedSources.make +4 lines
Lines 31-36 VPATH = \ a/Source/WebCore/DerivedSources.make_sec1
31
    $(WebCore)/Modules/filesystem \
31
    $(WebCore)/Modules/filesystem \
32
    $(WebCore)/Modules/geolocation \
32
    $(WebCore)/Modules/geolocation \
33
    $(WebCore)/Modules/indexeddb \
33
    $(WebCore)/Modules/indexeddb \
34
    $(WebCore)/Modules/mediasource \
34
    $(WebCore)/Modules/notifications \
35
    $(WebCore)/Modules/notifications \
35
    $(WebCore)/Modules/quota \
36
    $(WebCore)/Modules/quota \
36
    $(WebCore)/Modules/webaudio \
37
    $(WebCore)/Modules/webaudio \
Lines 105-110 BINDING_IDLS = \ a/Source/WebCore/DerivedSources.make_sec2
105
    $(WebCore)/Modules/indexeddb/IDBVersionChangeEvent.idl \
106
    $(WebCore)/Modules/indexeddb/IDBVersionChangeEvent.idl \
106
    $(WebCore)/Modules/indexeddb/IDBVersionChangeRequest.idl \
107
    $(WebCore)/Modules/indexeddb/IDBVersionChangeRequest.idl \
107
    $(WebCore)/Modules/indexeddb/WorkerContextIndexedDatabase.idl \
108
    $(WebCore)/Modules/indexeddb/WorkerContextIndexedDatabase.idl \
109
    $(WebCore)/Modules/mediasource/SourceBuffer.idl \
110
    $(WebCore)/Modules/mediasource/SourceBufferList.idl \
108
    $(WebCore)/Modules/notifications/DOMWindowNotifications.idl \
111
    $(WebCore)/Modules/notifications/DOMWindowNotifications.idl \
109
    $(WebCore)/Modules/notifications/Notification.idl \
112
    $(WebCore)/Modules/notifications/Notification.idl \
110
    $(WebCore)/Modules/notifications/NotificationCenter.idl \
113
    $(WebCore)/Modules/notifications/NotificationCenter.idl \
Lines 943-948 IDL_INCLUDES = \ a/Source/WebCore/DerivedSources.make_sec3
943
    $(WebCore)/fileapi \
946
    $(WebCore)/fileapi \
944
    $(WebCore)/html \
947
    $(WebCore)/html \
945
    $(WebCore)/css \
948
    $(WebCore)/css \
949
    $(WebCore)/Modules/mediasource \
946
    $(WebCore)/Modules/notifications \
950
    $(WebCore)/Modules/notifications \
947
    $(WebCore)/page \
951
    $(WebCore)/page \
948
    $(WebCore)/xml \
952
    $(WebCore)/xml \
- a/Source/WebCore/DerivedSources.pri +6 lines
Lines 618-623 contains(DEFINES, ENABLE_VIDEO_TRACK=1) { a/Source/WebCore/DerivedSources.pri_sec1
618
    $$PWD/html/track/TrackEvent.idl \
618
    $$PWD/html/track/TrackEvent.idl \
619
}
619
}
620
620
621
contains(DEFINES, ENABLE_MEDIA_SOURCE=1) {
622
  IDL_BINDINGS += \
623
    $$PWD/Modules/mediasource/SourceBuffer.idl \
624
    $$PWD/Modules/mediasource/SourceBufferList.idl
625
}
626
621
mathmlnames.output = MathMLNames.cpp
627
mathmlnames.output = MathMLNames.cpp
622
mathmlnames.input = MATHML_NAMES
628
mathmlnames.input = MATHML_NAMES
623
mathmlnames.depends = $$PWD/mathml/mathattrs.in
629
mathmlnames.depends = $$PWD/mathml/mathattrs.in
- a/Source/WebCore/GNUmakefile.am +3 lines
Lines 15-20 webcore_cppflags += \ a/Source/WebCore/GNUmakefile.am_sec1
15
	-I$(srcdir)/Source/WebCore/Modules/gamepad \
15
	-I$(srcdir)/Source/WebCore/Modules/gamepad \
16
	-I$(srcdir)/Source/WebCore/Modules/geolocation \
16
	-I$(srcdir)/Source/WebCore/Modules/geolocation \
17
	-I$(srcdir)/Source/WebCore/Modules/indexeddb \
17
	-I$(srcdir)/Source/WebCore/Modules/indexeddb \
18
	-I$(srcdir)/Source/WebCore/Modules/mediasource \
18
	-I$(srcdir)/Source/WebCore/Modules/mediastream \
19
	-I$(srcdir)/Source/WebCore/Modules/mediastream \
19
	-I$(srcdir)/Source/WebCore/Modules/notifications \
20
	-I$(srcdir)/Source/WebCore/Modules/notifications \
20
	-I$(srcdir)/Source/WebCore/Modules/protocolhandler \
21
	-I$(srcdir)/Source/WebCore/Modules/protocolhandler \
Lines 881-886 IDL_PATH := \ a/Source/WebCore/GNUmakefile.am_sec2
881
    $(WebCore)/Modules/gamepad \
882
    $(WebCore)/Modules/gamepad \
882
    $(WebCore)/Modules/geolocation \
883
    $(WebCore)/Modules/geolocation \
883
    $(WebCore)/Modules/indexeddb \
884
    $(WebCore)/Modules/indexeddb \
885
    $(WebCore)/Modules/mediasource \
884
    $(WebCore)/Modules/mediastream \
886
    $(WebCore)/Modules/mediastream \
885
    $(WebCore)/Modules/notifications \
887
    $(WebCore)/Modules/notifications \
886
    $(WebCore)/Modules/webaudio \
888
    $(WebCore)/Modules/webaudio \
Lines 1049-1054 EXTRA_DIST += \ a/Source/WebCore/GNUmakefile.am_sec3
1049
	$(shell ls $(srcdir)/Source/WebCore/Modules/gamepad/*.idl) \
1051
	$(shell ls $(srcdir)/Source/WebCore/Modules/gamepad/*.idl) \
1050
	$(shell ls $(srcdir)/Source/WebCore/Modules/geolocation/*.idl) \
1052
	$(shell ls $(srcdir)/Source/WebCore/Modules/geolocation/*.idl) \
1051
	$(shell ls $(srcdir)/Source/WebCore/Modules/indexeddb/*.idl) \
1053
	$(shell ls $(srcdir)/Source/WebCore/Modules/indexeddb/*.idl) \
1054
	$(shell ls $(srcdir)/Source/WebCore/Modules/mediasource/*.idl) \
1052
	$(shell ls $(srcdir)/Source/WebCore/Modules/mediastream/*.idl) \
1055
	$(shell ls $(srcdir)/Source/WebCore/Modules/mediastream/*.idl) \
1053
	$(shell ls $(srcdir)/Source/WebCore/Modules/notifications/*.idl) \
1056
	$(shell ls $(srcdir)/Source/WebCore/Modules/notifications/*.idl) \
1054
	$(shell ls $(srcdir)/Source/WebCore/Modules/protocolhandler/*.idl) \
1057
	$(shell ls $(srcdir)/Source/WebCore/Modules/protocolhandler/*.idl) \
- a/Source/WebCore/GNUmakefile.list.am +10 lines
Lines 503-508 webcore_built_sources += \ a/Source/WebCore/GNUmakefile.list.am_sec1
503
	DerivedSources/WebCore/JSSharedWorker.h \
503
	DerivedSources/WebCore/JSSharedWorker.h \
504
	DerivedSources/WebCore/JSSignalingCallback.cpp \
504
	DerivedSources/WebCore/JSSignalingCallback.cpp \
505
	DerivedSources/WebCore/JSSignalingCallback.h \
505
	DerivedSources/WebCore/JSSignalingCallback.h \
506
	DerivedSources/WebCore/JSSourceBuffer.cpp \
507
	DerivedSources/WebCore/JSSourceBuffer.h \
508
	DerivedSources/WebCore/JSSourceBufferList.cpp \
509
	DerivedSources/WebCore/JSSourceBufferList.h \
506
	DerivedSources/WebCore/JSSpeechInputEvent.cpp \
510
	DerivedSources/WebCore/JSSpeechInputEvent.cpp \
507
	DerivedSources/WebCore/JSSpeechInputEvent.h \
511
	DerivedSources/WebCore/JSSpeechInputEvent.h \
508
	DerivedSources/WebCore/JSSpeechInputResult.cpp \
512
	DerivedSources/WebCore/JSSpeechInputResult.cpp \
Lines 692-697 dom_binding_idls += \ a/Source/WebCore/GNUmakefile.list.am_sec2
692
	$(WebCore)/Modules/geolocation/PositionCallback.idl \
696
	$(WebCore)/Modules/geolocation/PositionCallback.idl \
693
	$(WebCore)/Modules/geolocation/PositionError.idl \
697
	$(WebCore)/Modules/geolocation/PositionError.idl \
694
	$(WebCore)/Modules/geolocation/PositionErrorCallback.idl \
698
	$(WebCore)/Modules/geolocation/PositionErrorCallback.idl \
699
	$(WebCore)/Modules/mediasource/SourceBuffer.idl \
700
	$(WebCore)/Modules/mediasource/SourceBufferList.idl \
695
	$(WebCore)/Modules/mediastream/DeprecatedPeerConnection.idl \
701
	$(WebCore)/Modules/mediastream/DeprecatedPeerConnection.idl \
696
	$(WebCore)/Modules/mediastream/DOMWindowMediaStream.idl \
702
	$(WebCore)/Modules/mediastream/DOMWindowMediaStream.idl \
697
	$(WebCore)/Modules/mediastream/IceCallback.idl \
703
	$(WebCore)/Modules/mediastream/IceCallback.idl \
Lines 1159-1164 webcore_modules_sources += \ a/Source/WebCore/GNUmakefile.list.am_sec3
1159
	Source/WebCore/Modules/indexeddb/PageGroupIndexedDatabase.h \
1165
	Source/WebCore/Modules/indexeddb/PageGroupIndexedDatabase.h \
1160
	Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.cpp \
1166
	Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.cpp \
1161
	Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.h \
1167
	Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.h \
1168
	Source/WebCore/Modules/mediasource/SourceBuffer.cpp \
1169
	Source/WebCore/Modules/mediasource/SourceBuffer.h \
1170
	Source/WebCore/Modules/mediasource/SourceBufferList.cpp \
1171
	Source/WebCore/Modules/mediasource/SourceBufferList.h \
1162
	Source/WebCore/Modules/mediastream/DeprecatedPeerConnection.cpp \
1172
	Source/WebCore/Modules/mediastream/DeprecatedPeerConnection.cpp \
1163
	Source/WebCore/Modules/mediastream/DeprecatedPeerConnection.h \
1173
	Source/WebCore/Modules/mediastream/DeprecatedPeerConnection.h \
1164
	Source/WebCore/Modules/mediastream/IceCallback.h \
1174
	Source/WebCore/Modules/mediastream/IceCallback.h \
- a/Source/WebCore/Modules/mediasource/SourceBuffer.cpp +69 lines
Line 0 a/Source/WebCore/Modules/mediasource/SourceBuffer.cpp_sec1
1
/*
2
 * Copyright (C) 2012 Google Inc. All rights reserved.
3
 *
4
 * Redistribution and use in source and binary forms, with or without
5
 * modification, are permitted provided that the following conditions are
6
 * met:
7
 *
8
 *     * Redistributions of source code must retain the above copyright
9
 * notice, this list of conditions and the following disclaimer.
10
 *     * Redistributions in binary form must reproduce the above
11
 * copyright notice, this list of conditions and the following disclaimer
12
 * in the documentation and/or other materials provided with the
13
 * distribution.
14
 *     * Neither the name of Google Inc. nor the names of its
15
 * contributors may be used to endorse or promote products derived from
16
 * this software without specific prior written permission.
17
 *
18
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
 */
30
31
#include "config.h"
32
#include "SourceBuffer.h"
33
34
#if ENABLE(MEDIA_SOURCE)
35
36
#include "TimeRanges.h"
37
#include <wtf/Uint8Array.h>
38
39
namespace WebCore {
40
41
SourceBuffer::SourceBuffer(const String& id)
42
    : m_id(id)
43
{
44
}
45
46
SourceBuffer::~SourceBuffer()
47
{
48
}
49
50
PassRefPtr<TimeRanges> SourceBuffer::buffered(ExceptionCode&) const
51
{
52
    // FIXME(91773): return buffered data from media source.
53
    return 0;
54
}
55
56
void SourceBuffer::append(PassRefPtr<Uint8Array> data, ExceptionCode&)
57
{
58
    UNUSED_PARAM(data);
59
    // FIXME(91773): append the data to the media source.
60
}
61
62
void SourceBuffer::abort(ExceptionCode&)
63
{
64
    // FIXME(91773): signal the media source to abort this source buffer.
65
}
66
67
} // namespace WebCore
68
69
#endif
- a/Source/WebCore/Modules/mediasource/SourceBuffer.h +73 lines
Line 0 a/Source/WebCore/Modules/mediasource/SourceBuffer.h_sec1
1
/*
2
 * Copyright (C) 2012 Google Inc. All rights reserved.
3
 *
4
 * Redistribution and use in source and binary forms, with or without
5
 * modification, are permitted provided that the following conditions are
6
 * met:
7
 *
8
 *     * Redistributions of source code must retain the above copyright
9
 * notice, this list of conditions and the following disclaimer.
10
 *     * Redistributions in binary form must reproduce the above
11
 * copyright notice, this list of conditions and the following disclaimer
12
 * in the documentation and/or other materials provided with the
13
 * distribution.
14
 *     * Neither the name of Google Inc. nor the names of its
15
 * contributors may be used to endorse or promote products derived from
16
 * this software without specific prior written permission.
17
 *
18
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
 */
30
31
#ifndef SourceBuffer_h
32
#define SourceBuffer_h
33
34
#if ENABLE(MEDIA_SOURCE)
35
36
#include "ExceptionCode.h"
37
#include <wtf/PassRefPtr.h>
38
#include <wtf/RefCounted.h>
39
#include <wtf/text/WTFString.h>
40
41
namespace WebCore {
42
43
class TimeRanges;
44
45
class SourceBuffer : public RefCounted<SourceBuffer> {
46
public:
47
    static PassRefPtr<SourceBuffer> create(const String& id)
48
    {
49
        return adoptRef(new SourceBuffer(id));
50
    }
51
52
    virtual ~SourceBuffer();
53
54
    PassRefPtr<TimeRanges> buffered(ExceptionCode&) const;
55
56
    void append(PassRefPtr<Uint8Array> data, ExceptionCode&);
57
58
    void abort(ExceptionCode&);
59
    
60
    const String& id() const { return m_id; }
61
62
    void clear() { }
63
64
private:
65
    explicit SourceBuffer(const String& id);
66
67
    String m_id;
68
};
69
70
} // namespace WebCore
71
72
#endif
73
#endif
- a/Source/WebCore/Modules/mediasource/SourceBuffer.idl +49 lines
Line 0 a/Source/WebCore/Modules/mediasource/SourceBuffer.idl_sec1
1
/*
2
 * Copyright (C) 2012 Google Inc. All rights reserved.
3
 *
4
 * Redistribution and use in source and binary forms, with or without
5
 * modification, are permitted provided that the following conditions are
6
 * met:
7
 *
8
 *     * Redistributions of source code must retain the above copyright
9
 * notice, this list of conditions and the following disclaimer.
10
 *     * Redistributions in binary form must reproduce the above
11
 * copyright notice, this list of conditions and the following disclaimer
12
 * in the documentation and/or other materials provided with the
13
 * distribution.
14
 *     * Neither the name of Google Inc. nor the names of its
15
 * contributors may be used to endorse or promote products derived from
16
 * this software without specific prior written permission.
17
 *
18
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
 */
30
 
31
module html {
32
33
    interface [
34
        Conditional=MEDIA_SOURCE,
35
        V8EnabledAtRuntime=mediaSource
36
    ] SourceBuffer {
37
38
        // Returns the time ranges buffered.
39
        readonly attribute TimeRanges buffered
40
            getter raises(DOMException);
41
42
        // Append segment data.
43
        void append(in Uint8Array data) raises (DOMException);
44
45
        // Abort the current segment append sequence.
46
        void abort() raises (DOMException);
47
    };
48
49
}
- a/Source/WebCore/Modules/mediasource/SourceBufferList.cpp +111 lines
Line 0 a/Source/WebCore/Modules/mediasource/SourceBufferList.cpp_sec1
1
/*
2
 * Copyright (C) 2012 Google Inc. All rights reserved.
3
 *
4
 * Redistribution and use in source and binary forms, with or without
5
 * modification, are permitted provided that the following conditions are
6
 * met:
7
 *
8
 *     * Redistributions of source code must retain the above copyright
9
 * notice, this list of conditions and the following disclaimer.
10
 *     * Redistributions in binary form must reproduce the above
11
 * copyright notice, this list of conditions and the following disclaimer
12
 * in the documentation and/or other materials provided with the
13
 * distribution.
14
 *     * Neither the name of Google Inc. nor the names of its
15
 * contributors may be used to endorse or promote products derived from
16
 * this software without specific prior written permission.
17
 *
18
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
 */
30
31
#include "config.h"
32
#include "SourceBufferList.h"
33
34
#if ENABLE(MEDIA_SOURCE)
35
36
#include "Event.h"
37
38
namespace WebCore {
39
40
SourceBufferList::SourceBufferList(ScriptExecutionContext* context)
41
    : m_scriptExecutionContext(context)
42
{
43
}
44
45
unsigned long SourceBufferList::length() const
46
{
47
    return m_list.size();
48
}
49
50
SourceBuffer* SourceBufferList::item(unsigned index) const
51
{
52
    if (index >= m_list.size())
53
        return 0;
54
    return m_list[index].get();
55
}
56
57
void SourceBufferList::add(PassRefPtr<SourceBuffer> buffer)
58
{
59
    m_list.append(buffer);
60
    createAndFireEvent(eventNames().webkitaddsourcebufferEvent);
61
}
62
63
bool SourceBufferList::remove(SourceBuffer* buffer)
64
{    
65
    size_t index = m_list.find(buffer);
66
    if (index == notFound)
67
        return false;
68
69
    m_list.remove(index);
70
    buffer->clear();
71
    createAndFireEvent(eventNames().webkitremovesourcebufferEvent);
72
    return true;
73
}
74
75
void SourceBufferList::clear()
76
{
77
    for (size_t i = 0; i < m_list.size(); ++i)
78
        remove(m_list[i].get());
79
}
80
81
void SourceBufferList::createAndFireEvent(const AtomicString& eventName)
82
{
83
    RefPtr<Event> event = Event::create(eventName, false, false);
84
    event->setTarget(this);
85
86
    EventTarget::dispatchEvent(event);
87
}
88
89
const AtomicString& SourceBufferList::interfaceName() const
90
{
91
    return eventNames().interfaceForSourceBufferList;
92
}
93
94
ScriptExecutionContext* SourceBufferList::scriptExecutionContext() const
95
{
96
    return m_scriptExecutionContext;
97
}
98
99
EventTargetData* SourceBufferList::eventTargetData()
100
{
101
    return &m_eventTargetData;
102
}
103
104
EventTargetData* SourceBufferList::ensureEventTargetData()
105
{
106
    return &m_eventTargetData;
107
}
108
109
} // namespace WebCore
110
111
#endif
- a/Source/WebCore/Modules/mediasource/SourceBufferList.h +86 lines
Line 0 a/Source/WebCore/Modules/mediasource/SourceBufferList.h_sec1
1
/*
2
 * Copyright (C) 2012 Google Inc. All rights reserved.
3
 *
4
 * Redistribution and use in source and binary forms, with or without
5
 * modification, are permitted provided that the following conditions are
6
 * met:
7
 *
8
 *     * Redistributions of source code must retain the above copyright
9
 * notice, this list of conditions and the following disclaimer.
10
 *     * Redistributions in binary form must reproduce the above
11
 * copyright notice, this list of conditions and the following disclaimer
12
 * in the documentation and/or other materials provided with the
13
 * distribution.
14
 *     * Neither the name of Google Inc. nor the names of its
15
 * contributors may be used to endorse or promote products derived from
16
 * this software without specific prior written permission.
17
 *
18
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
 */
30
31
#ifndef SourceBufferList_h
32
#define SourceBufferList_h
33
34
#if ENABLE(MEDIA_SOURCE)
35
36
#include "EventTarget.h"
37
#include "SourceBuffer.h"
38
#include <wtf/RefCounted.h>
39
#include <wtf/Vector.h>
40
41
namespace WebCore {
42
43
class SourceBufferList : public RefCounted<SourceBufferList>, public EventTarget {
44
public:
45
    static PassRefPtr<SourceBufferList> create(ScriptExecutionContext* context)
46
    {
47
        return adoptRef(new SourceBufferList(context));
48
    }
49
    virtual ~SourceBufferList() { }
50
51
    unsigned long length() const;
52
    SourceBuffer* item(unsigned index) const;
53
54
    void add(PassRefPtr<SourceBuffer>);
55
    bool remove(SourceBuffer*);
56
    void clear();
57
58
    // EventTarget interface
59
    virtual const AtomicString& interfaceName() const OVERRIDE;
60
    virtual ScriptExecutionContext* scriptExecutionContext() const OVERRIDE;
61
62
    using RefCounted<SourceBufferList>::ref;
63
    using RefCounted<SourceBufferList>::deref;
64
65
protected:
66
    virtual EventTargetData* eventTargetData() OVERRIDE;
67
    virtual EventTargetData* ensureEventTargetData() OVERRIDE;
68
69
private:
70
    explicit SourceBufferList(ScriptExecutionContext*);
71
72
    void createAndFireEvent(const AtomicString&);
73
74
    virtual void refEventTarget() OVERRIDE { ref(); }
75
    virtual void derefEventTarget() OVERRIDE { deref(); }
76
77
    EventTargetData m_eventTargetData;
78
    ScriptExecutionContext* m_scriptExecutionContext;
79
80
    Vector<RefPtr<SourceBuffer> > m_list;
81
};
82
83
} // namespace WebCore
84
85
#endif
86
#endif
- a/Source/WebCore/Modules/mediasource/SourceBufferList.idl +54 lines
Line 0 a/Source/WebCore/Modules/mediasource/SourceBufferList.idl_sec1
1
/*
2
 * Copyright (C) 2012 Google Inc. All rights reserved.
3
 *
4
 * Redistribution and use in source and binary forms, with or without
5
 * modification, are permitted provided that the following conditions are
6
 * met:
7
 *
8
 *     * Redistributions of source code must retain the above copyright
9
 * notice, this list of conditions and the following disclaimer.
10
 *     * Redistributions in binary form must reproduce the above
11
 * copyright notice, this list of conditions and the following disclaimer
12
 * in the documentation and/or other materials provided with the
13
 * distribution.
14
 *     * Neither the name of Google Inc. nor the names of its
15
 * contributors may be used to endorse or promote products derived from
16
 * this software without specific prior written permission.
17
 *
18
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
 */
30
 
31
module html {
32
33
    interface [
34
        Conditional=MEDIA_SOURCE,
35
        V8EnabledAtRuntime=mediaSource,
36
        IndexedGetter,
37
        EventTarget,
38
        CallWith=ScriptExecutionContext
39
    ] SourceBufferList {
40
        readonly attribute unsigned long length;
41
        SourceBuffer item(in unsigned long index);
42
43
        // EventTarget interface
44
        void addEventListener(in DOMString type,
45
                              in EventListener listener,
46
                              in [Optional] boolean useCapture);
47
        void removeEventListener(in DOMString type,
48
                                 in EventListener listener,
49
                                 in [Optional] boolean useCapture);
50
        boolean dispatchEvent(in Event event)
51
            raises(EventException);
52
    };
53
54
}
- a/Source/WebCore/Target.pri +9 lines
Lines 3003-3008 contains(DEFINES, ENABLE_FILE_SYSTEM=1) { a/Source/WebCore/Target.pri_sec1
3003
        platform/AsyncFileSystem.cpp
3003
        platform/AsyncFileSystem.cpp
3004
}
3004
}
3005
3005
3006
contains(DEFINES, ENABLE_MEDIA_SOURCE=1) {
3007
    HEADERS += \
3008
        Modules/mediasource/SourceBuffer.h \
3009
        Modules/mediasource/SourceBufferList.h
3010
    SOURCES += \
3011
        Modules/mediasource/SourceBuffer.cpp \
3012
        Modules/mediasource/SourceBufferList.cpp
3013
}
3014
3006
contains(DEFINES, ENABLE_ICONDATABASE=1) {
3015
contains(DEFINES, ENABLE_ICONDATABASE=1) {
3007
    SOURCES += \
3016
    SOURCES += \
3008
        loader/icon/IconDatabase.cpp \
3017
        loader/icon/IconDatabase.cpp \
- a/Source/WebCore/WebCore.gyp/WebCore.gyp +2 lines
Lines 60-65 a/Source/WebCore/WebCore.gyp/WebCore.gyp_sec1
60
      '../Modules/geolocation',
60
      '../Modules/geolocation',
61
      '../Modules/intents',
61
      '../Modules/intents',
62
      '../Modules/indexeddb',
62
      '../Modules/indexeddb',
63
      '../Modules/mediasource',
63
      '../Modules/mediastream',
64
      '../Modules/mediastream',
64
      '../Modules/notifications',
65
      '../Modules/notifications',
65
      '../Modules/protocolhandler',
66
      '../Modules/protocolhandler',
Lines 1066-1071 a/Source/WebCore/WebCore.gyp/WebCore.gyp_sec2
1066
              '--include', '../Modules/filesystem',
1067
              '--include', '../Modules/filesystem',
1067
              '--include', '../Modules/indexeddb',
1068
              '--include', '../Modules/indexeddb',
1068
              '--include', '../Modules/intents',
1069
              '--include', '../Modules/intents',
1070
              '--include', '../Modules/mediasource',
1069
              '--include', '../Modules/mediastream',
1071
              '--include', '../Modules/mediastream',
1070
              '--include', '../Modules/notifications',
1072
              '--include', '../Modules/notifications',
1071
              '--include', '../Modules/protocolhandler',
1073
              '--include', '../Modules/protocolhandler',
- a/Source/WebCore/WebCore.gypi +6 lines
Lines 825-830 a/Source/WebCore/WebCore.gypi_sec1
825
            'Modules/intents/Intent.idl',
825
            'Modules/intents/Intent.idl',
826
            'Modules/intents/IntentResultCallback.idl',
826
            'Modules/intents/IntentResultCallback.idl',
827
            'Modules/intents/NavigatorIntents.idl',
827
            'Modules/intents/NavigatorIntents.idl',
828
            'Modules/mediasource/SourceBuffer.idl',
829
            'Modules/mediasource/SourceBufferList.idl',
828
            'Modules/mediastream/DeprecatedPeerConnection.idl',
830
            'Modules/mediastream/DeprecatedPeerConnection.idl',
829
            'Modules/mediastream/DOMWindowMediaStream.idl',
831
            'Modules/mediastream/DOMWindowMediaStream.idl',
830
            'Modules/mediastream/IceCallback.idl',
832
            'Modules/mediastream/IceCallback.idl',
Lines 1535-1540 a/Source/WebCore/WebCore.gypi_sec2
1535
            'Modules/intents/IntentResultCallback.h',
1537
            'Modules/intents/IntentResultCallback.h',
1536
            'Modules/intents/NavigatorIntents.cpp',
1538
            'Modules/intents/NavigatorIntents.cpp',
1537
            'Modules/intents/NavigatorIntents.h',
1539
            'Modules/intents/NavigatorIntents.h',
1540
            'Modules/mediasource/SourceBuffer.cpp',
1541
            'Modules/mediasource/SourceBuffer.h',
1542
            'Modules/mediasource/SourceBufferList.cpp',
1543
            'Modules/mediasource/SourceBufferList.h',
1538
            'Modules/mediastream/DeprecatedPeerConnection.cpp',
1544
            'Modules/mediastream/DeprecatedPeerConnection.cpp',
1539
            'Modules/mediastream/DeprecatedPeerConnection.h',
1545
            'Modules/mediastream/DeprecatedPeerConnection.h',
1540
            'Modules/mediastream/IceCallback.h',
1546
            'Modules/mediastream/IceCallback.h',
- a/Source/WebCore/WebCore.vcproj/WebCore.vcproj +20 lines
Lines 24971-24976 a/Source/WebCore/WebCore.vcproj/WebCore.vcproj_sec1
24971
				</File>
24971
				</File>
24972
			</Filter>
24972
			</Filter>
24973
			<Filter
24973
			<Filter
24974
				Name="mediasource"
24975
				>
24976
				<File
24977
					RelativePath="..\Modules\mediasource\SourceBuffer.cpp"
24978
					>
24979
				</File>
24980
				<File
24981
					RelativePath="..\Modules\mediasource\SourceBuffer.h"
24982
					>
24983
				</File>
24984
				<File
24985
					RelativePath="..\Modules\mediasource\SourceBufferList.cpp"
24986
					>
24987
				</File>
24988
				<File
24989
					RelativePath="..\Modules\mediasource\SourceBufferList.h"
24990
					>
24991
				</File>
24992
			</Filter>
24993
			<Filter
24974
				Name="notifications"
24994
				Name="notifications"
24975
				>
24995
				>
24976
				<File
24996
				<File
- a/Source/WebCore/WebCore.vcproj/WebCoreCommon.vsprops -1 / +1 lines
Lines 7-13 a/Source/WebCore/WebCore.vcproj/WebCoreCommon.vsprops_sec1
7
	>
7
	>
8
	<Tool
8
	<Tool
9
		Name="VCCLCompilerTool"
9
		Name="VCCLCompilerTool"
10
		AdditionalIncludeDirectories="&quot;$(ProjectDir)..&quot;;&quot;$(ProjectDir)..\Modules\filesystem&quot;;&quot;$(ProjectDir)..\Modules\geolocation&quot;;&quot;$(ProjectDir)..\Modules\indexeddb&quot;;&quot;$(ProjectDir)..\Modules\protocolhandler&quot;;&quot;$(ProjectDir)..\Modules\quota&quot;;&quot;$(ProjectDir)..\Modules\notifications&quot;;&quot;$(ProjectDir)..\Modules\webdatabase&quot;;&quot;$(ProjectDir)..\Modules\websockets&quot;;&quot;$(ProjectDir)..\accessibility&quot;;&quot;$(ProjectDir)..\accessibility\win&quot;;&quot;$(ProjectDir)..\bridge&quot;;&quot;$(ProjectDir)..\bridge\c&quot;;&quot;$(ProjectDir)..\bridge\jsc&quot;;&quot;$(ProjectDir)..\css&quot;;&quot;$(ProjectDir)..\editing&quot;;&quot;$(ProjectDir)..\fileapi&quot;;&quot;$(ProjectDir)..\rendering&quot;;&quot;$(ProjectDir)..\rendering\mathml&quot;;&quot;$(ProjectDir)..\rendering\style&quot;;&quot;$(ProjectDir)..\rendering\svg&quot;;&quot;$(ProjectDir)..\bindings&quot;;&quot;$(ProjectDir)..\bindings\generic&quot;;&quot;$(ProjectDir)..\bindings\js&quot;;&quot;$(ProjectDir)..\bindings\js\specialization&quot;;&quot;$(ProjectDir)..\dom&quot;;&quot;$(ProjectDir)..\dom\default&quot;;&quot;$(ProjectDir)..\history&quot;;&quot;$(ProjectDir)..\html&quot;;&quot;$(ProjectDir)..\html\canvas&quot;;&quot;$(ProjectDir)..\html\parser&quot;;&quot;$(ProjectDir)..\html\shadow&quot;;&quot;$(ProjectDir)..\inspector&quot;;&quot;$(ProjectDir)..\loader&quot;;&quot;$(ProjectDir)..\loader\appcache&quot;;&quot;$(ProjectDir)..\loader\archive&quot;;&quot;$(ProjectDir)..\loader\archive\cf&quot;;&quot;$(ProjectDir)..\loader\cache&quot;;&quot;$(ProjectDir)..\loader\icon&quot;;&quot;$(ProjectDir)..\mathml&quot;;&quot;$(ProjectDir)..\page&quot;;&quot;$(ProjectDir)..\page\animation&quot;;&quot;$(ProjectDir)..\page\scrolling&quot;;&quot;$(ProjectDir)..\page\win&quot;;&quot;$(ProjectDir)..\platform&quot;;&quot;$(ProjectDir)..\platform\animation&quot;;&quot;$(ProjectDir)..\platform\mock&quot;;&quot;$(ProjectDir)..\platform\sql&quot;;&quot;$(ProjectDir)..\platform\win&quot;;&quot;$(ProjectDir)..\platform\network&quot;;&quot;$(ProjectDir)..\platform\network\win&quot;;&quot;$(ProjectDir)..\platform\cf&quot;;&quot;$(ProjectDir)..\platform\graphics&quot;;&quot;$(ProjectDir)..\platform\graphics\ca&quot;;&quot;$(ProjectDir)..\platform\graphics\filters&quot;;&quot;$(ProjectDir)..\platform\graphics\filters\arm&quot;;&quot;$(ProjectDir)..\platform\graphics\opentype&quot;;&quot;$(ProjectDir)..\platform\graphics\transforms&quot;;&quot;$(ProjectDir)..\platform\text&quot;;&quot;$(ProjectDir)..\platform\text\transcoder&quot;;&quot;$(ProjectDir)..\platform\graphics\win&quot;;&quot;$(ProjectDir)..\xml&quot;;&quot;$(ProjectDir)..\xml\parser&quot;;&quot;$(ConfigurationBuildDir)\obj\WebCore\DerivedSources&quot;;&quot;$(ProjectDir)..\plugins&quot;;&quot;$(ProjectDir)..\plugins\win&quot;;&quot;$(ProjectDir)..\svg\animation&quot;;&quot;$(ProjectDir)..\svg\graphics&quot;;&quot;$(ProjectDir)..\svg\properties&quot;;&quot;$(ProjectDir)..\svg\graphics\filters&quot;;&quot;$(ProjectDir)..\svg&quot;;&quot;$(ProjectDir)..\testing&quot;;&quot;$(ProjectDir)..\wml&quot;;&quot;$(ProjectDir)..\storage&quot;;&quot;$(ProjectDir)..\websockets&quot;;&quot;$(ProjectDir)..\workers&quot;;&quot;$(ConfigurationBuildDir)\include&quot;;&quot;$(ConfigurationBuildDir)\include\private&quot;;&quot;$(ConfigurationBuildDir)\include\JavaScriptCore&quot;;&quot;$(ConfigurationBuildDir)\include\private\JavaScriptCore&quot;;&quot;$(ProjectDir)..\ForwardingHeaders&quot;;&quot;$(WebKitLibrariesDir)\include&quot;;&quot;$(WebKitLibrariesDir)\include\private&quot;;&quot;$(WebKitLibrariesDir)\include\private\JavaScriptCore&quot;;&quot;$(WebKitLibrariesDir)\include\pthreads&quot;;&quot;$(WebKitLibrariesDir)\include\sqlite&quot;;&quot;$(WebKitLibrariesDir)\include\JavaScriptCore&quot;;&quot;$(WebKitLibrariesDir)\include\zlib&quot;"
10
		AdditionalIncludeDirectories="&quot;$(ProjectDir)..&quot;;&quot;$(ProjectDir)..\Modules\filesystem&quot;;&quot;$(ProjectDir)..\Modules\geolocation&quot;;&quot;$(ProjectDir)..\Modules\indexeddb&quot;;&quot;$(ProjectDir)..\Modules\mediasource&quot;;&quot;$(ProjectDir)..\Modules\protocolhandler&quot;;&quot;$(ProjectDir)..\Modules\quota&quot;;&quot;$(ProjectDir)..\Modules\notifications&quot;;&quot;$(ProjectDir)..\Modules\webdatabase&quot;;&quot;$(ProjectDir)..\Modules\websockets&quot;;&quot;$(ProjectDir)..\accessibility&quot;;&quot;$(ProjectDir)..\accessibility\win&quot;;&quot;$(ProjectDir)..\bridge&quot;;&quot;$(ProjectDir)..\bridge\c&quot;;&quot;$(ProjectDir)..\bridge\jsc&quot;;&quot;$(ProjectDir)..\css&quot;;&quot;$(ProjectDir)..\editing&quot;;&quot;$(ProjectDir)..\fileapi&quot;;&quot;$(ProjectDir)..\rendering&quot;;&quot;$(ProjectDir)..\rendering\mathml&quot;;&quot;$(ProjectDir)..\rendering\style&quot;;&quot;$(ProjectDir)..\rendering\svg&quot;;&quot;$(ProjectDir)..\bindings&quot;;&quot;$(ProjectDir)..\bindings\generic&quot;;&quot;$(ProjectDir)..\bindings\js&quot;;&quot;$(ProjectDir)..\bindings\js\specialization&quot;;&quot;$(ProjectDir)..\dom&quot;;&quot;$(ProjectDir)..\dom\default&quot;;&quot;$(ProjectDir)..\history&quot;;&quot;$(ProjectDir)..\html&quot;;&quot;$(ProjectDir)..\html\canvas&quot;;&quot;$(ProjectDir)..\html\parser&quot;;&quot;$(ProjectDir)..\html\shadow&quot;;&quot;$(ProjectDir)..\inspector&quot;;&quot;$(ProjectDir)..\loader&quot;;&quot;$(ProjectDir)..\loader\appcache&quot;;&quot;$(ProjectDir)..\loader\archive&quot;;&quot;$(ProjectDir)..\loader\archive\cf&quot;;&quot;$(ProjectDir)..\loader\cache&quot;;&quot;$(ProjectDir)..\loader\icon&quot;;&quot;$(ProjectDir)..\mathml&quot;;&quot;$(ProjectDir)..\page&quot;;&quot;$(ProjectDir)..\page\animation&quot;;&quot;$(ProjectDir)..\page\scrolling&quot;;&quot;$(ProjectDir)..\page\win&quot;;&quot;$(ProjectDir)..\platform&quot;;&quot;$(ProjectDir)..\platform\animation&quot;;&quot;$(ProjectDir)..\platform\mock&quot;;&quot;$(ProjectDir)..\platform\sql&quot;;&quot;$(ProjectDir)..\platform\win&quot;;&quot;$(ProjectDir)..\platform\network&quot;;&quot;$(ProjectDir)..\platform\network\win&quot;;&quot;$(ProjectDir)..\platform\cf&quot;;&quot;$(ProjectDir)..\platform\graphics&quot;;&quot;$(ProjectDir)..\platform\graphics\ca&quot;;&quot;$(ProjectDir)..\platform\graphics\filters&quot;;&quot;$(ProjectDir)..\platform\graphics\filters\arm&quot;;&quot;$(ProjectDir)..\platform\graphics\opentype&quot;;&quot;$(ProjectDir)..\platform\graphics\transforms&quot;;&quot;$(ProjectDir)..\platform\text&quot;;&quot;$(ProjectDir)..\platform\text\transcoder&quot;;&quot;$(ProjectDir)..\platform\graphics\win&quot;;&quot;$(ProjectDir)..\xml&quot;;&quot;$(ProjectDir)..\xml\parser&quot;;&quot;$(ConfigurationBuildDir)\obj\WebCore\DerivedSources&quot;;&quot;$(ProjectDir)..\plugins&quot;;&quot;$(ProjectDir)..\plugins\win&quot;;&quot;$(ProjectDir)..\svg\animation&quot;;&quot;$(ProjectDir)..\svg\graphics&quot;;&quot;$(ProjectDir)..\svg\properties&quot;;&quot;$(ProjectDir)..\svg\graphics\filters&quot;;&quot;$(ProjectDir)..\svg&quot;;&quot;$(ProjectDir)..\testing&quot;;&quot;$(ProjectDir)..\wml&quot;;&quot;$(ProjectDir)..\storage&quot;;&quot;$(ProjectDir)..\websockets&quot;;&quot;$(ProjectDir)..\workers&quot;;&quot;$(ConfigurationBuildDir)\include&quot;;&quot;$(ConfigurationBuildDir)\include\private&quot;;&quot;$(ConfigurationBuildDir)\include\JavaScriptCore&quot;;&quot;$(ConfigurationBuildDir)\include\private\JavaScriptCore&quot;;&quot;$(ProjectDir)..\ForwardingHeaders&quot;;&quot;$(WebKitLibrariesDir)\include&quot;;&quot;$(WebKitLibrariesDir)\include\private&quot;;&quot;$(WebKitLibrariesDir)\include\private\JavaScriptCore&quot;;&quot;$(WebKitLibrariesDir)\include\pthreads&quot;;&quot;$(WebKitLibrariesDir)\include\sqlite&quot;;&quot;$(WebKitLibrariesDir)\include\JavaScriptCore&quot;;&quot;$(WebKitLibrariesDir)\include\zlib&quot;"
11
		PreprocessorDefinitions="__WIN32__;DISABLE_3D_RENDERING;WEBCORE_CONTEXT_MENUS"
11
		PreprocessorDefinitions="__WIN32__;DISABLE_3D_RENDERING;WEBCORE_CONTEXT_MENUS"
12
		UsePrecompiledHeader="2"
12
		UsePrecompiledHeader="2"
13
		PrecompiledHeaderThrough="WebCorePrefix.h"
13
		PrecompiledHeaderThrough="WebCorePrefix.h"
- a/Source/WebCore/WebCore.vcproj/copyForwardingHeaders.cmd +1 lines
Lines 21-26 xcopy /y /d "%ProjectDir%..\config.h" "%CONFIGURATIONBUILDDIR%\include\WebCore" a/Source/WebCore/WebCore.vcproj/copyForwardingHeaders.cmd_sec1
21
xcopy /y /d "%CONFIGURATIONBUILDDIR%\obj\WebCore\DerivedSources\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
21
xcopy /y /d "%CONFIGURATIONBUILDDIR%\obj\WebCore\DerivedSources\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
22
xcopy /y /d "%ProjectDir%..\Modules\filesystem\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
22
xcopy /y /d "%ProjectDir%..\Modules\filesystem\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
23
xcopy /y /d "%ProjectDir%..\Modules\geolocation\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
23
xcopy /y /d "%ProjectDir%..\Modules\geolocation\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
24
xcopy /y /d "%ProjectDir%..\Modules\mediasource\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
24
xcopy /y /d "%ProjectDir%..\Modules\notifications\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
25
xcopy /y /d "%ProjectDir%..\Modules\notifications\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
25
xcopy /y /d "%ProjectDir%..\Modules\protocolhandler\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
26
xcopy /y /d "%ProjectDir%..\Modules\protocolhandler\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
26
xcopy /y /d "%ProjectDir%..\Modules\quota\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
27
xcopy /y /d "%ProjectDir%..\Modules\quota\*.h" "%CONFIGURATIONBUILDDIR%\include\WebCore"
- a/Source/WebCore/WebCore.xcodeproj/project.pbxproj +21 lines
Lines 11566-11571 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec1
11566
		B10B697E140C174000BC1C26 /* WebVTTTokenizer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebVTTTokenizer.cpp; sourceTree = "<group>"; };
11566
		B10B697E140C174000BC1C26 /* WebVTTTokenizer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebVTTTokenizer.cpp; sourceTree = "<group>"; };
11567
		B10B697F140C174000BC1C26 /* WebVTTTokenizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebVTTTokenizer.h; sourceTree = "<group>"; };
11567
		B10B697F140C174000BC1C26 /* WebVTTTokenizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebVTTTokenizer.h; sourceTree = "<group>"; };
11568
		B1827492134CA4C100B98C2D /* CallbackFunction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CallbackFunction.cpp; sourceTree = "<group>"; };
11568
		B1827492134CA4C100B98C2D /* CallbackFunction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CallbackFunction.cpp; sourceTree = "<group>"; };
11569
		B1A942E315B5CE2200D525D1 /* SourceBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SourceBuffer.cpp; sourceTree = "<group>"; };
11570
		B1A942E415B5CE2200D525D1 /* SourceBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourceBuffer.h; sourceTree = "<group>"; };
11571
		B1A942E515B5CE2200D525D1 /* SourceBuffer.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = SourceBuffer.idl; sourceTree = "<group>"; };
11572
		B1A942E615B5CE2200D525D1 /* SourceBufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SourceBufferList.cpp; sourceTree = "<group>"; };
11573
		B1A942E715B5CE2200D525D1 /* SourceBufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourceBufferList.h; sourceTree = "<group>"; };
11574
		B1A942E815B5CE2200D525D1 /* SourceBufferList.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = SourceBufferList.idl; sourceTree = "<group>"; };
11569
		B1AD4E7113A12A4600846B27 /* TextTrackLoader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TextTrackLoader.cpp; path = loader/TextTrackLoader.cpp; sourceTree = SOURCE_ROOT; };
11575
		B1AD4E7113A12A4600846B27 /* TextTrackLoader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TextTrackLoader.cpp; path = loader/TextTrackLoader.cpp; sourceTree = SOURCE_ROOT; };
11570
		B1AD4E7213A12A4600846B27 /* TextTrackLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TextTrackLoader.h; path = loader/TextTrackLoader.h; sourceTree = SOURCE_ROOT; };
11576
		B1AD4E7213A12A4600846B27 /* TextTrackLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TextTrackLoader.h; path = loader/TextTrackLoader.h; sourceTree = SOURCE_ROOT; };
11571
		B1D5ECB4134B58DA0087C78F /* CallbackFunction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CallbackFunction.h; sourceTree = "<group>"; };
11577
		B1D5ECB4134B58DA0087C78F /* CallbackFunction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CallbackFunction.h; sourceTree = "<group>"; };
Lines 17533-17538 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec2
17533
		971145FE14EF006E00674FD9 /* Modules */ = {
17539
		971145FE14EF006E00674FD9 /* Modules */ = {
17534
			isa = PBXGroup;
17540
			isa = PBXGroup;
17535
			children = (
17541
			children = (
17542
				B1A942DD15B5CE2200D525D1 /* mediasource */,
17536
				971145FF14EF007900674FD9 /* geolocation */,
17543
				971145FF14EF007900674FD9 /* geolocation */,
17537
				9712A55315004E3C0048AF10 /* indexeddb */,
17544
				9712A55315004E3C0048AF10 /* indexeddb */,
17538
				333F703D0FB49C16008E12A6 /* notifications */,
17545
				333F703D0FB49C16008E12A6 /* notifications */,
Lines 18967-18972 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec3
18967
			name = Plugins;
18974
			name = Plugins;
18968
			sourceTree = "<group>";
18975
			sourceTree = "<group>";
18969
		};
18976
		};
18977
		B1A942DD15B5CE2200D525D1 /* mediasource */ = {
18978
			isa = PBXGroup;
18979
			children = (
18980
				B1A942E315B5CE2200D525D1 /* SourceBuffer.cpp */,
18981
				B1A942E415B5CE2200D525D1 /* SourceBuffer.h */,
18982
				B1A942E515B5CE2200D525D1 /* SourceBuffer.idl */,
18983
				B1A942E615B5CE2200D525D1 /* SourceBufferList.cpp */,
18984
				B1A942E715B5CE2200D525D1 /* SourceBufferList.h */,
18985
				B1A942E815B5CE2200D525D1 /* SourceBufferList.idl */,
18986
			);
18987
			name = mediasource;
18988
			path = Modules/mediasource;
18989
			sourceTree = "<group>";
18990
		};
18970
		B1AD4E7713A12A7200846B27 /* track */ = {
18991
		B1AD4E7713A12A7200846B27 /* track */ = {
18971
			isa = PBXGroup;
18992
			isa = PBXGroup;
18972
			children = (
18993
			children = (
- a/Source/WebCore/dom/EventNames.h +2 lines
Lines 157-162 namespace WebCore { a/Source/WebCore/dom/EventNames.h_sec1
157
    macro(webkitbeginfullscreen) \
157
    macro(webkitbeginfullscreen) \
158
    macro(webkitendfullscreen) \
158
    macro(webkitendfullscreen) \
159
    \
159
    \
160
    macro(webkitaddsourcebuffer) \
161
    macro(webkitremovesourcebuffer) \
160
    macro(webkitsourceopen) \
162
    macro(webkitsourceopen) \
161
    macro(webkitsourceended) \
163
    macro(webkitsourceended) \
162
    macro(webkitsourceclose) \
164
    macro(webkitsourceclose) \
- a/Source/WebCore/dom/EventTarget.h +1 lines
Lines 64-69 namespace WebCore { a/Source/WebCore/dom/EventTarget.h_sec1
64
    class ScriptExecutionContext;
64
    class ScriptExecutionContext;
65
    class SharedWorker;
65
    class SharedWorker;
66
    class SharedWorkerContext;
66
    class SharedWorkerContext;
67
    class SourceBufferList;
67
    class TextTrack;
68
    class TextTrack;
68
    class TextTrackCue;
69
    class TextTrackCue;
69
    class WebSocket;
70
    class WebSocket;
- a/Source/WebCore/dom/EventTargetFactory.in +1 lines
Lines 26-31 PeerConnection00 conditional=MEDIA_STREAM a/Source/WebCore/dom/EventTargetFactory.in_sec1
26
Performance conditional=WEB_TIMING
26
Performance conditional=WEB_TIMING
27
SharedWorker conditional=SHARED_WORKERS
27
SharedWorker conditional=SHARED_WORKERS
28
SharedWorkerContext conditional=SHARED_WORKERS
28
SharedWorkerContext conditional=SHARED_WORKERS
29
SourceBufferList conditional=MEDIA_SOURCE
29
SpeechRecognition conditional=SCRIPTED_SPEECH
30
SpeechRecognition conditional=SCRIPTED_SPEECH
30
SVGElementInstance conditional=SVG
31
SVGElementInstance conditional=SVG
31
TextTrack conditional=VIDEO_TRACK
32
TextTrack conditional=VIDEO_TRACK
- a/Source/WebCore/page/DOMWindow.idl +3 lines
Lines 781-786 module window { a/Source/WebCore/page/DOMWindow.idl_sec1
781
781
782
        attribute [Conditional=MUTATION_OBSERVERS] MutationObserverConstructor WebKitMutationObserver;
782
        attribute [Conditional=MUTATION_OBSERVERS] MutationObserverConstructor WebKitMutationObserver;
783
783
784
        attribute [Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] SourceBufferConstructor SourceBuffer;
785
        attribute [Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] SourceBufferListConstructor SourceBufferList;
786
784
#endif // defined(LANGUAGE_JAVASCRIPT)
787
#endif // defined(LANGUAGE_JAVASCRIPT)
785
788
786
#if defined(V8_BINDING) && V8_BINDING
789
#if defined(V8_BINDING) && V8_BINDING

Return to Bug 91771