webkit-patch should add reviewer if "Reviewed by NOBODY ..." is missing
https://bugs.webkit.org/show_bug.cgi?id=67935

Patch by Balazs Ankes <bank@inf.u-szeged.hu> on 2012-06-20
Reviewed by Ryosuke Niwa.

* Scripts/webkitpy/common/checkout/changelog.py:
(ChangeLog.set_reviewer):
* Scripts/webkitpy/common/checkout/changelog_unittest.py:
(test_set_reviewer):
(test_set_short_description_and_bug_url):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120821 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: don't report context ids before DidCommitLoad
https://bugs.webkit.org/show_bug.cgi?id=89567

Reviewed by Pavel Feldman.

When inspector state is restored only report existing context ids
if "did commit load" even has already been dispatched.

* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/PageRuntimeAgent.cpp:
(WebCore::PageRuntimeAgent::PageRuntimeAgent):
(WebCore::PageRuntimeAgent::restore):
* inspector/PageRuntimeAgent.h:
(WebCore):
(WebCore::PageRuntimeAgent::create):
(PageRuntimeAgent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120822 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Import themaninblue.com/experiment/AnimationBenchmark/ as performance tests
https://bugs.webkit.org/show_bug.cgi?id=78789

Reviewed by Ryosuke Niwa.

PerformanceTests:

Added PerfTestRunner fixture around it.

* Animation/balls.html: Added.

Tools:

Updated parser to include fps as a valid unit.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest):
(PerfTest.parse_output):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120823 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use HitTestPoint instead of LayoutPoint for nodeAtPoint.
https://bugs.webkit.org/show_bug.cgi?id=89448

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-06-20
Reviewed by Eric Seidel.

This patch updates the API of nodeAtPoint without changing any
functionality. This is largest change necessary to support
transforms in area-based hit-testing, but is only boilerplate.

No change in functionality. No new tests.

* rendering/EllipsisBox.cpp:
(WebCore::EllipsisBox::nodeAtPoint):
* rendering/EllipsisBox.h:
(EllipsisBox):
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::addNodeToRectBasedTestResult):
* rendering/HitTestResult.h:
(WebCore::HitTestPoint::intersects):
(HitTestPoint):
(HitTestResult):
* rendering/InlineBox.cpp:
(WebCore::InlineBox::nodeAtPoint):
* rendering/InlineBox.h:
(InlineBox):
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::nodeAtPoint):
* rendering/InlineFlowBox.h:
(InlineFlowBox):
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::nodeAtPoint):
* rendering/InlineTextBox.h:
(InlineTextBox):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::nodeAtPoint):
(WebCore::RenderBlock::hitTestFloats):
(WebCore::RenderBlock::hitTestColumns):
(WebCore::RenderBlock::hitTestContents):
* rendering/RenderBlock.h:
(RenderBlock):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::nodeAtPoint):
* rendering/RenderBox.h:
(RenderBox):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::nodeAtPoint):
* rendering/RenderEmbeddedObject.h:
(RenderEmbeddedObject):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::hitTestRegion):
* rendering/RenderFlowThread.h:
* rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::nodeAtPoint):
* rendering/RenderFrameSet.h:
(RenderFrameSet):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::nodeAtPoint):
* rendering/RenderImage.h:
(RenderImage):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::nodeAtPoint):
* rendering/RenderInline.h:
(RenderInline):
* rendering/RenderLayer.cpp:
(WebCore::ClipRect::intersects):
(WebCore::RenderLayer::hitTest):
(WebCore::RenderLayer::createLocalTransformState):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestContents):
(WebCore::RenderLayer::hitTestList):
(WebCore::RenderLayer::hitTestPaginatedChildLayer):
(WebCore::RenderLayer::hitTestChildLayerColumns):
* rendering/RenderLayer.h:
(ClipRect):
(RenderLayer):
* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::hitTest):
* rendering/RenderLineBoxList.h:
(RenderLineBoxList):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::nodeAtPoint):
* rendering/RenderListBox.h:
(RenderListBox):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::hitTest):
(WebCore::RenderObject::nodeAtPoint):
* rendering/RenderObject.h:
(RenderObject):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::nodeAtPoint):
* rendering/RenderRegion.h:
(RenderRegion):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::nodeAtPoint):
* rendering/RenderTable.h:
(RenderTable):
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::nodeAtPoint):
* rendering/RenderTableRow.h:
(RenderTableRow):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::nodeAtPoint):
* rendering/RenderTableSection.h:
(RenderTableSection):
* rendering/RenderText.h:
* rendering/RenderTextControlMultiLine.cpp:
(WebCore::RenderTextControlMultiLine::nodeAtPoint):
* rendering/RenderTextControlMultiLine.h:
(RenderTextControlMultiLine):
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::nodeAtPoint):
* rendering/RenderTextControlSingleLine.h:
(RenderTextControlSingleLine):
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::nodeAtPoint):
* rendering/RenderWidget.h:
(RenderWidget):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::nodeAtPoint):
* rendering/RootInlineBox.h:
(RootInlineBox):
* rendering/svg/RenderSVGForeignObject.cpp:
(WebCore::RenderSVGForeignObject::nodeAtFloatPoint):
(WebCore::RenderSVGForeignObject::nodeAtPoint):
* rendering/svg/RenderSVGForeignObject.h:
(RenderSVGForeignObject):
* rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::nodeAtPoint):
* rendering/svg/RenderSVGModelObject.h:
(RenderSVGModelObject):
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::nodeAtPoint):
* rendering/svg/RenderSVGRoot.h:
(RenderSVGRoot):
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::nodeAtFloatPoint):
(WebCore::RenderSVGText::nodeAtPoint):
* rendering/svg/RenderSVGText.h:
(RenderSVGText):
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::nodeAtPoint):
* rendering/svg/SVGInlineTextBox.h:
(SVGInlineTextBox):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120824 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed: Back out accidentally checked in debug print which broke a test

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest.parse_output):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120825 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Cairo] Fix memory leak in GraphicsContext3DCairo.cpp
https://bugs.webkit.org/show_bug.cgi?id=89561

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-20
Reviewed by Martin Robinson.

Fix a memory leak in GraphicsContext3D::getImageData().

* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::getImageData): asNewNativeImage() returns a
caller-owned pointer to the native image data. So, using OwnPtr to manage
memory automatically.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120826 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: duplicating selected text when Enter key is pressed
https://bugs.webkit.org/show_bug.cgi?id=89559

Patch by Sergey Rogulenko <rogulenko@google.com> on 2012-06-20
Reviewed by Pavel Feldman.

* inspector/front-end/TextViewer.js:
(WebInspector.TextEditorMainPanel.prototype.handleEnterKey):
The returned result of method normalize() should be used.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120827 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] IndexedDB: Don't close database if pending connections are in flight
https://bugs.webkit.org/show_bug.cgi?id=89512

Source/WebCore:

Add a counter tracking connections between the two phases, which is used along with
the completed connection count to determine the total number of connections.

Reviewed by Tony Chang.

Test: webkit_unit_tests --gtest_filter='IDBDatabaseBackendTest.ConnectionLifecycle'

* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::setVersion):
(WebCore::IDBDatabaseBackendImpl::connectionCount):
(WebCore):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::transaction):
(WebCore::IDBDatabaseBackendImpl::registerFrontendCallbacks):
(WebCore::IDBDatabaseBackendImpl::openConnection):
(WebCore::IDBDatabaseBackendImpl::close):
* Modules/indexeddb/IDBDatabaseBackendImpl.h:
(IDBDatabaseBackendImpl):
* Modules/indexeddb/IDBFactoryBackendImpl.cpp:
(WebCore::IDBFactoryBackendImpl::openInternal):
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore):

Source/WebKit/chromium:

Reviewed by Tony Chang.

* tests/IDBDatabaseBackendTest.cpp:
(MockIDBCallbacks):
(WebCore::MockIDBCallbacks::create):
(WebCore::MockIDBCallbacks::MockIDBCallbacks):
(WebCore):
(FakeIDBDatabaseCallbacks):
(WebCore::FakeIDBDatabaseCallbacks::create):
(WebCore::FakeIDBDatabaseCallbacks::FakeIDBDatabaseCallbacks):
(WebCore::TEST):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120828 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: mark used/allocated JS heap on the native memory bar chart.
https://bugs.webkit.org/show_bug.cgi?id=89476

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-06-20
Reviewed by Yury Semikhatsky.

* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.NativeMemoryBarChart):
(WebInspector.NativeMemoryBarChart.prototype._updateView):
* inspector/front-end/nativeMemoryProfiler.css:
(.memory-bar-chart-bar):
(.memory-bar-chart-unused):
(.memory-bar-chart-percent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120829 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2] Implement Web Intent delivery
https://bugs.webkit.org/show_bug.cgi?id=88989

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-20
Reviewed by Anders Carlsson.

Add a deliverIntent() method to the WebFrame so that
Web intents can be delivered once matched to a
specific service.

* UIProcess/WebFrameProxy.cpp:
(WebKit):
(WebKit::WebFrameProxy::deliverIntent):
* UIProcess/WebFrameProxy.h:
(WebKit):
(WebFrameProxy):
* UIProcess/WebIntentData.h:
(WebKit::WebIntentData::store):
* WebProcess/WebPage/WebFrame.cpp:
(WebKit):
(WebKit::WebFrame::deliverIntent):
* WebProcess/WebPage/WebFrame.h:
(WebKit):
(WebFrame):
* WebProcess/WebPage/WebPage.cpp:
(WebKit):
(WebKit::WebPage::deliverIntentToFrame):
* WebProcess/WebPage/WebPage.h:
(WebKit):
(WebPage):
* WebProcess/WebPage/WebPage.messages.in:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120831 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use IntSize in RenderLayer to represent scroll offsets
https://bugs.webkit.org/show_bug.cgi?id=89154

Reviewed by Eric Seidel.

Source/WebCore:

Refactoring, covered by existing tests.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::scrollTo):
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::forwardEvent):
* page/SpatialNavigation.cpp:
(WebCore::scrollInDirection):
* rendering/RenderMarquee.cpp:
(WebCore::RenderMarquee::start):
Updated those call-sites to use the IntSize variant of the scrolling function.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::panScrollFromPoint):
Updated the signature to use IntPoint to avoid an extra round-trip to LayoutPoint
(furthermore touch points should be in device pixels).

(WebCore::RenderLayer::clampScrollOffset):
Added this function that clamps a scroll offset to the box's size. This enables more
code sharing between the different functions. Also removed a NULL-check that shouldn't
be needed: scrolling is a RenderBox concept so any callers should ensure that we have
a RenderBox or it makes no sense to try to scroll.

(WebCore::RenderLayer::updateLayerPosition):
(WebCore::adjustedScrollDelta):
(WebCore::RenderLayer::scrollByRecursively):
(WebCore::RenderLayer::scrollToOffset):
(WebCore::RenderLayer::scrollRectToVisible):
(WebCore::RenderLayer::updateScrollInfoAfterLayout):
Updated to do IntSize arithmetic. Reuse clampScrollOffset when applicable.

* rendering/RenderLayer.h:
(WebCore::RenderLayer::scrollToXOffset):
(WebCore::RenderLayer::scrollToYOffset):
Updated the functions to take IntSize as much as possible.

Source/WebKit/blackberry:

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::scrollRenderer):
Updated to pass an IntSize to scrollToOffset.

Source/WebKit/win:

* WebView.cpp:
(WebView::gesture):
Updated to pass an IntSize to scrollByRecursively.

Source/WebKit2:

* WebProcess/WebPage/win/WebPageWin.cpp:
(WebKit::WebPage::gestureDidScroll):
Updated to pass an IntSize to scrollByRecursively.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120832 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed build fix.

* tests/IDBDatabaseBackendTest.cpp:
(WebCore::MockIDBCallbacks::~MockIDBCallbacks):
(WebCore::FakeIDBDatabaseCallbacks::~FakeIDBDatabaseCallbacks):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120833 268f45cc-cd09-0410-ab3c-d52691b4dbfc
DFG should be able to print disassembly interleaved with the IR
https://bugs.webkit.org/show_bug.cgi?id=89551

Reviewed by Geoffrey Garen.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::labelIgnoringWatchpoints):
(ARMv7Assembler):
* assembler/AbstractMacroAssembler.h:
(AbstractMacroAssembler):
(JSC::AbstractMacroAssembler::labelIgnoringWatchpoints):
* assembler/X86Assembler.h:
(X86Assembler):
(JSC::X86Assembler::labelIgnoringWatchpoints):
* dfg/DFGCommon.h:
(JSC::DFG::shouldShowDisassembly):
(DFG):
* dfg/DFGDisassembler.cpp: Added.
(DFG):
(JSC::DFG::Disassembler::Disassembler):
(JSC::DFG::Disassembler::dump):
(JSC::DFG::Disassembler::dumpDisassembly):
* dfg/DFGDisassembler.h: Added.
(DFG):
(Disassembler):
(JSC::DFG::Disassembler::setStartOfCode):
(JSC::DFG::Disassembler::setForBlock):
(JSC::DFG::Disassembler::setForNode):
(JSC::DFG::Disassembler::setEndOfMainPath):
(JSC::DFG::Disassembler::setEndOfCode):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dumpCodeOrigin):
(JSC::DFG::Graph::amountOfNodeWhiteSpace):
(DFG):
(JSC::DFG::Graph::printNodeWhiteSpace):
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::dumpBlockHeader):
* dfg/DFGGraph.h:
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::JITCompiler):
(DFG):
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):
* dfg/DFGJITCompiler.h:
(JITCompiler):
(JSC::DFG::JITCompiler::setStartOfCode):
(JSC::DFG::JITCompiler::setForBlock):
(JSC::DFG::JITCompiler::setForNode):
(JSC::DFG::JITCompiler::setEndOfMainPath):
(JSC::DFG::JITCompiler::setEndOfCode):
* dfg/DFGNode.h:
(Node):
(JSC::DFG::Node::willHaveCodeGen):
* dfg/DFGNodeFlags.cpp:
(JSC::DFG::nodeFlagsAsString):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
* runtime/Options.cpp:
(Options):
(JSC::Options::initializeOptions):
* runtime/Options.h:
(Options):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120834 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS3 Backgrounds and Borders] Implement box-decoration-break rendering.
https://bugs.webkit.org/show_bug.cgi?id=88228

Reviewed by Eric Seidel.

Source/WebCore:

Implement the new CSS property box-decoration-break. It modifies
where we decide whether the borders needs to be sliced or not by
checking if the box-decoration-break is set to clone. If it's the case
then we need to explicitely redraw all edges.

Test: fast/box-decoration-break/box-decoration-break-rendering.html

* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
(WebCore::InlineFlowBox::paintFillLayer):

LayoutTests:

Add new tests to cover the feature.

* fast/box-decoration-break/box-decoration-break-rendering-expected.html: Added.
* fast/box-decoration-break/box-decoration-break-rendering.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120835 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix JSC ChangeLog, forgot to add a comment to the ChangeLog before committing.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120836 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Make sure that render surfaces are not pixel doubled with a device scale factor of 2
https://bugs.webkit.org/show_bug.cgi?id=86882

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-20
Reviewed by Adrienne Walker.

To ensure that render surfaces are not pixel doubled when device scale factor is
two, the render surface's owning layer's draw transform is scaled by the
contents scale (in the same way that the parent matrix is scaled by the device
scale factor). The transformedLayerRect's dimensions also need to be in pixel
space. The surface origin transform should not scale, but needs to offset the
correct number of pixels, and the replica transforms need to be modified to
account for the scaling.

Source/WebCore:

To accomplish this, CCLayerImpl's needed to be made aware of contentsScale.

Thanks to Adrienne Walker for the computation of the replica draw transform.

Unit test: CCLayerTreeHostCommonTest.verifyRenderSurfaceTranformsInHighDPI

* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::pushPropertiesTo):
* platform/graphics/chromium/LayerChromium.h:
(LayerChromium):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore::CCLayerImpl::setContentsScale):
(WebCore::CCLayerImpl::contentsScale):
(CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::calculateDrawTransformsInternal):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
(WebCore::CCScrollbarLayerImpl::CCScrollbar::totalSize):

Source/WebKit/chromium:

* tests/CCLayerTreeHostCommonTest.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120837 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Timeline label bar jiggles when scrolling
https://bugs.webkit.org/show_bug.cgi?id=89579

Reviewed by Vsevolod Vlasov.

Adding timeline header into the timeline panel and settings its position
to absolute. Drive-by fix that updates rulers on sidebar resize.

* inspector/front-end/TimelineGrid.js:
(WebInspector.TimelineGrid):
(WebInspector.TimelineGrid.prototype.get gridHeaderElement):
(WebInspector.TimelineGrid.prototype.addEventDividers):
(WebInspector.TimelineGrid.prototype.setScrollAndDividerTop):
* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineOverviewPane.prototype.sidebarResized):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel):
(WebInspector.TimelinePanel.prototype.sidebarResized):
(WebInspector.TimelinePanel.prototype.onResize):
* inspector/front-end/timelinePanel.css:
(#timeline-grid-header):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120838 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Enable setAcceleratedCompositingForFixedPositionEnabled
https://bugs.webkit.org/show_bug.cgi?id=89575

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-06-20
Reviewed by Antonio Gomes.

Enable the flag so that we get position:fixed elemetns to be rendered
using accelerated compositing.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::init):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120839 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Made the incremental sweeper more aggressive
https://bugs.webkit.org/show_bug.cgi?id=89527

Reviewed by Oliver Hunt.

This is a pre-requisite to getting rid of "berzerker GC" because we need
the sweeper to reclaim memory in a timely fashion, or we'll see a memory
footprint regression.

* heap/IncrementalSweeper.h:
* heap/IncrementalSweeper.cpp:
(JSC::IncrementalSweeper::scheduleTimer): Since the time slice is predictable,
no need to use a data member to record it.

(JSC::IncrementalSweeper::doSweep): Sweep as many blocks as we can in a
small time slice. This is better than sweeping only one block per timer
fire because that strategy has a heavy timer overhead, and artificially
delays memory reclamation.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120841 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Allow module injections into the InjectedScript
https://bugs.webkit.org/show_bug.cgi?id=89530

Add a new InjectedScriptModule abstract class that inherits InjectedScriptBase
to reuse implementation, and which javascript code is injected via
InjectedScript.

Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-06-20
Reviewed by Pavel Feldman.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/ScriptObject.cpp:
(WebCore::ScriptObject::ScriptObject):
(WebCore):
* bindings/js/ScriptObject.h:
(ScriptObject):
(WebCore::ScriptObject::ScriptObject):
* bindings/v8/ScriptObject.cpp:
(WebCore::ScriptObject::ScriptObject):
(WebCore):
* bindings/v8/ScriptObject.h:
(ScriptObject):
(WebCore::ScriptObject::~ScriptObject):
* inspector/InjectedScript.cpp:
* inspector/InjectedScript.h:
(WebCore):
(WebCore::InjectedScript::name):
(InjectedScript):
* inspector/InjectedScriptBase.cpp:
(WebCore::InjectedScriptBase::callFunctionWithEvalEnabled):
* inspector/InjectedScriptBase.h:
(WebCore):
(InjectedScriptBase):
* inspector/InjectedScriptManager.h:
(InjectedScriptManager):
(WebCore::InjectedScriptManager::inspectedStateAccessCheck):
* inspector/InjectedScriptModule.cpp: Copied from Source/WebCore/inspector/InjectedScriptBase.h.
(WebCore):
(WebCore::InjectedScriptModule::InjectedScriptModule):
(WebCore::InjectedScriptModule::ensureInjected):
* inspector/InjectedScriptModule.h: Copied from Source/WebCore/bindings/js/ScriptObject.h.
(WebCore):
(InjectedScriptModule):
* inspector/InjectedScriptSource.js:
(.):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120842 268f45cc-cd09-0410-ab3c-d52691b4dbfc