Timeline



Nov 20, 2012:

10:50 PM Changeset in webkit [135354] by haraken@chromium.org
  • 4 edits
    1 delete in trunk/Source/WebCore

[V8] Remove v8/custom/V8XMLHttpRequestConstructor.cpp
https://bugs.webkit.org/show_bug.cgi?id=102876

Reviewed by Sam Weinig.

It doesn't make sense to have one custom cpp file for
XXX::constructorCallback() only. We can move XXX::constructorCallback()
in v8/custom/V8XXXConstructor.cpp to v8/custom/V8XXXCustom.cpp
and thus remove v8/custom/V8XXXConstructor.cpp.

Note: Some XXX::constructorCallback()s are already written in
v8/custom/V8XXXCustom.cpp. JSC already has almost all
XXX::constructorCallback()s in js/JSXXXCustom.cpp.

No tests. No change in behavior.

  • UseV8.cmake:
  • WebCore.gypi:
  • bindings/v8/custom/V8XMLHttpRequestConstructor.cpp: Removed.
  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

(WebCore::V8XMLHttpRequest::constructorCallbackCustom):
(WebCore):

10:48 PM Changeset in webkit [135353] by yurys@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Fixed webkit_lint complaints about overlapping entries in Chromium TestExpectations.

  • platform/chromium/TestExpectations:
10:10 PM Changeset in webkit [135352] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed morning gardening, skip a new security
timeouting test to paint the bots green.

  • platform/qt/TestExpectations:
10:07 PM Changeset in webkit [135351] by haraken@chromium.org
  • 16 edits in trunk/Source/WebCore

Unreviewed. Rebaselined run-bindings-tests.

  • bindings/scripts/test/CPP/WebDOMFloat64Array.cpp:
  • bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.cpp:
  • bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
  • bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.cpp:
  • bindings/scripts/test/CPP/WebDOMTestEventConstructor.cpp:
  • bindings/scripts/test/CPP/WebDOMTestEventTarget.cpp:
  • bindings/scripts/test/CPP/WebDOMTestException.cpp:
  • bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
  • bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.cpp:
  • bindings/scripts/test/CPP/WebDOMTestNamedConstructor.cpp:
  • bindings/scripts/test/CPP/WebDOMTestNode.cpp:
  • bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  • bindings/scripts/test/CPP/WebDOMTestOverloadedConstructors.cpp:
  • bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::withScriptStateAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptStateAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptStateVoidCallback):
(WebCore::TestObjV8Internal::withScriptStateObjCallback):
(WebCore::TestObjV8Internal::withScriptStateVoidExceptionCallback):
(WebCore::TestObjV8Internal::withScriptStateObjExceptionCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesCallback):

10:05 PM Changeset in webkit [135350] by commit-queue@webkit.org
  • 4 edits in trunk

Unreviewed, rolling out r133859.
http://trac.webkit.org/changeset/133859
https://bugs.webkit.org/show_bug.cgi?id=102875

This patch makes API test broken (Requested by gyuyoung on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-20

.:

  • Source/cmake/OptionsEfl.cmake:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
9:32 PM Changeset in webkit [135349] by commit-queue@webkit.org
  • 23 edits in trunk/Source/WebKit2

[EFL][WK2] Remove unnecessary #include in API test
https://bugs.webkit.org/show_bug.cgi?id=102674

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-11-20
Reviewed by Laszlo Gombos.

Removed duplicated header files from the API test cases.
Now, EWK2UnitTestBase.h includes the basic header files,
so test cases may only include this one and add the addtional
header files if necessary.

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestMain.cpp:
  • UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
  • UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
  • UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
  • UIProcess/API/efl/tests/test_ewk2_context.cpp:
  • UIProcess/API/efl/tests/test_ewk2_context_history_callbacks.cpp:
  • UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
  • UIProcess/API/efl/tests/test_ewk2_database_manager.cpp:
  • UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
  • UIProcess/API/efl/tests/test_ewk2_eina_shared_string.cpp:
  • UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:
  • UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp:
  • UIProcess/API/efl/tests/test_ewk2_intents.cpp:
  • UIProcess/API/efl/tests/test_ewk2_object.cpp:
  • UIProcess/API/efl/tests/test_ewk2_popup_menu.cpp:
  • UIProcess/API/efl/tests/test_ewk2_refptr_evas_object.cpp:
  • UIProcess/API/efl/tests/test_ewk2_settings.cpp:
  • UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp:
  • UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
  • UIProcess/API/efl/tests/test_ewk2_view.cpp:
9:26 PM Changeset in webkit [135348] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL][WK2][WTR] Unskip passed cases under css3/device-adapt/opera/
https://bugs.webkit.org/show_bug.cgi?id=102868

Unreviewed, EFL gardening.

As BUG 102517 has been resolved, we can move those from EFL common to WK1 only.

Patch by Kangil Han <kangil.han@samsung.com> on 2012-11-20

  • platform/efl-wk1/TestExpectations:
  • platform/efl/TestExpectations:
9:23 PM Changeset in webkit [135347] by weinig@apple.com
  • 11 edits in trunk/Source/WebKit2

Simplify WebConnection by removing its underlying CoreIPC::Connection
https://bugs.webkit.org/show_bug.cgi?id=102771

Reviewed by Anders Carlsson.

Instead of having WebConnection subclasses own the CoreIPC::Connection,
move back to having the WebProcess and WebProcessProxy own it (and be
its Connection::Client) and use the new MessageReceiver class to vend
messages to the WebConnection.

  • Shared/WebConnection.cpp:

(WebKit::WebConnection::WebConnection):
(WebKit::WebConnection::postMessage):
(WebKit::WebConnection::didClose):
(WebKit::WebConnection::didReceiveMessage):

  • Shared/WebConnection.h:

Make WebConnection both a MessageReceiver and MessageSender
and add virtual functions for derived classes to fill in.

  • UIProcess/WebConnectionToWebProcess.cpp:

(WebKit::WebConnectionToWebProcess::create):
(WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
(WebKit::WebConnectionToWebProcess::invalidate):
(WebKit::WebConnectionToWebProcess::decodeMessageBody):
(WebKit::WebConnectionToWebProcess::connection):
(WebKit::WebConnectionToWebProcess::destinationID):
(WebKit::WebConnectionToWebProcess::hasValidConnection):

  • UIProcess/WebConnectionToWebProcess.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::~WebProcessProxy):
(WebKit::WebProcessProxy::fromConnection):
(WebKit::WebProcessProxy::disconnect):
(WebKit::WebProcessProxy::addMessageReceiver):
(WebKit::WebProcessProxy::didClose):
(WebKit::WebProcessProxy::didReceiveInvalidMessage):
(WebKit::WebProcessProxy::didFinishLaunching):

  • UIProcess/WebProcessProxy.h:

(WebKit::WebProcessProxy::connection):
(WebProcessProxy):
(WebKit::WebProcessProxy::webConnection):

  • WebProcess/WebConnectionToUIProcess.cpp:

(WebKit::WebConnectionToUIProcess::create):
(WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
(WebKit):
(WebKit::WebConnectionToUIProcess::invalidate):
(WebKit::WebConnectionToUIProcess::connection):
(WebKit::WebConnectionToUIProcess::destinationID):
(WebKit::WebConnectionToUIProcess::hasValidConnection):

  • WebProcess/WebConnectionToUIProcess.h:

(WebConnectionToUIProcess):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initialize):
(WebKit::WebProcess::terminate):

  • WebProcess/WebProcess.h:

(WebKit::WebProcess::connection):
(WebKit::WebProcess::webConnectionToUIProcess):
Move the CoreIPC::Connection back to the processes.

9:02 PM Changeset in webkit [135346] by haraken@chromium.org
  • 14 edits in trunk

[V8] Introduce constructorCallbackCustom()
https://bugs.webkit.org/show_bug.cgi?id=102763

Reviewed by Adam Barth.

Source/WebCore:

Currently custom constructors have the following code:

v8::Handle<v8::Value> V8XXX::constructorCallback(const v8::Arguments& args) {

INC_STATS("DOM.XXX.Constructor");
if (!args.IsConstructCall())

return throwTypeError("DOM object constructor cannot be called as a function.", args.GetIsolate());

if (ConstructorMode::current() == ConstructorMode::WrapExistingObject)

return args.Holder();

/* body of the constructor */;

}

To avoid duplicating the same logic in all custom constructors,
this patch changes the generated code as follows:

Generated automatically
v8::Handle<v8::Value> V8XXX::constructorCallback(const v8::Arguments& args) {

INC_STATS("DOM.XXX.Constructor");
${maybeObserveFeature} Newly supported for custom constructors.
if (!args.IsConstructCall())

return throwTypeError("DOM object constructor cannot be called as a function.", args.GetIsolate());

if (ConstructorMode::current() == ConstructorMode::WrapExistingObject)

return args.Holder();

V8XXX::constructorCallbackCustom(args);

}

Written manually
v8::Handle<v8::Value> V8XXX::constructorCallback(const v8::Arguments& args) {

/* body of the constructor */;

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(HasCustomConstructor):
(GenerateCustomConstructorCallback):
(GenerateImplementation):

  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:

(WebCore::V8TestEventConstructor::constructorCallback):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructorConstructorCallback):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:

(WebCore::V8TestOverloadedConstructors::constructorCallback):

  • bindings/v8/custom/V8ArrayBufferCustom.cpp:

(WebCore::V8ArrayBuffer::constructorCallbackCustom):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallbackCustom):

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCallbackCustom):

  • bindings/v8/custom/V8DOMFormDataCustom.cpp:

(WebCore::V8DOMFormData::constructorCallbackCustom):

  • bindings/v8/custom/V8DataViewCustom.cpp:

(WebCore::V8DataView::constructorCallbackCustom):

  • bindings/v8/custom/V8IntentConstructor.cpp:

(WebCore::V8Intent::constructorCallbackCustom):

  • bindings/v8/custom/V8MessageChannelConstructor.cpp:

(WebCore::V8MessageChannel::constructorCallbackCustom):

  • bindings/v8/custom/V8MutationObserverCustom.cpp:

(WebCore::V8MutationObserver::constructorCallbackCustom):

  • bindings/v8/custom/V8WebKitPointConstructor.cpp:

(WebCore::V8WebKitPoint::constructorCallbackCustom):

  • bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:

(WebCore::V8XMLHttpRequest::constructorCallbackCustom):

LayoutTests:

Updated a test result.

  • platform/chromium/fast/dom/call-a-constructor-as-a-function-expected.txt:
8:54 PM Changeset in webkit [135345] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r135263): Fix a wrong argument for udat_close
https://bugs.webkit.org/show_bug.cgi?id=102856

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-11-20
Reviewed by Kent Tamura.

Fixed a bug that passed wrong pointer to udat_close.

No new tests. No changes in behavior.

  • platform/text/LocaleICU.cpp:

(WebCore::LocaleICU::initializeDateTimeFormat): Close correct object.

7:58 PM Changeset in webkit [135344] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Websites/webkit.org

Add Samsung to security vendor member list
https://bugs.webkit.org/show_bug.cgi?id=102863

Reviewed by Sam Weinig.

  • security/security-group-members.html: Add Samsung members.
7:21 PM Changeset in webkit [135343] by commit-queue@webkit.org
  • 11 edits
    4 adds in trunk

[EFL][WK2] Add Ewk_Window_Features API and related UI callbacks
https://bugs.webkit.org/show_bug.cgi?id=99114

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-11-20
Reviewed by Gyuyoung Kim.

Source/WebKit2:

Added Ewk_Window_Features API so that we can create new windows
with various window features such as location, size, toolbar, menubar,
statusbar, locationbar, scrollbar, resizable, and fullscreen.

UI client callbacks related to window features also implemented
so that it is possible to retrieve the window object property values.

  • PlatformEfl.cmake:
  • UIProcess/API/efl/EWebKit2.h:
  • UIProcess/API/efl/EwkViewCallbacks.h:

(EwkViewCallbacks):

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::windowFeatures):
(EwkViewImpl::createNewPage):
(EwkViewImpl::closePage):

  • UIProcess/API/efl/EwkViewImpl.h:

(EwkViewImpl):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/efl/PageUIClientEfl.cpp:

(WebKit::PageUIClientEfl::createNewPage):
(WebKit::PageUIClientEfl::toolbarsAreVisible):
(WebKit):
(WebKit::PageUIClientEfl::setToolbarsAreVisible):
(WebKit::PageUIClientEfl::menuBarIsVisible):
(WebKit::PageUIClientEfl::setMenuBarIsVisible):
(WebKit::PageUIClientEfl::statusBarIsVisible):
(WebKit::PageUIClientEfl::setStatusBarIsVisible):
(WebKit::PageUIClientEfl::isResizable):
(WebKit::PageUIClientEfl::setIsResizable):
(WebKit::PageUIClientEfl::PageUIClientEfl):

  • UIProcess/efl/PageUIClientEfl.h:

(PageUIClientEfl):

Tools:

Implemented window_create and window_close smartcallback functions.

  • MiniBrowser/efl/main.c:

(on_window_create):
(on_window_close):
(window_create):

7:13 PM Changeset in webkit [135342] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Need spellcheck suggestions even if continuous check is off.
https://bugs.webkit.org/show_bug.cgi?id=102535

Patch by Rachel Blum <groby@chromium.org> on 2012-11-20
Reviewed by Hajime Morita.

Make sure the context menu always has suggestions for misspelled words.

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):

6:34 PM Changeset in webkit [135341] by fpizlo@apple.com
  • 3 edits in trunk/Source/WTF

DFG should be able to cache closure calls
https://bugs.webkit.org/show_bug.cgi?id=102662

Reviewed by Gavin Barraclough.

Added support to the meta allocator for easily querying whether an address falls within
a certain allocated chunk. Also added a useful debug routine to SentinelLinkedList,
which can be used to check if a node is on a particular list.

  • wtf/MetaAllocatorHandle.h:

(MetaAllocatorHandle):
(WTF::MetaAllocatorHandle::containsIntegerAddress):
(WTF::MetaAllocatorHandle::contains):

  • wtf/SentinelLinkedList.h:

(SentinelLinkedList):
(WTF::::isOnList):
(WTF):

6:32 PM Changeset in webkit [135340] by haraken@chromium.org
  • 8 edits in trunk

Remove $outputDir and $outputHeadersDir from global variables of code generators
https://bugs.webkit.org/show_bug.cgi?id=102492

Reviewed by Adam Barth.

$outputDir and $outputHeadersDir are used in WriteData() only.
We don't need to use global variables for them.

No tests. No change in behavior.

  • bindings/scripts/CodeGenerator.pm:

(ProcessDocument):
(FileNamePrefix):

  • bindings/scripts/CodeGeneratorCPP.pm:

(new):
(GenerateInterface):
(WriteData):

  • bindings/scripts/CodeGeneratorGObject.pm:

(new):
(WriteData):
(GenerateInterface):

  • bindings/scripts/CodeGeneratorJS.pm:

(new):
(GenerateInterface):
(WriteData):

  • bindings/scripts/CodeGeneratorObjC.pm:

(new):
(GenerateInterface):
(WriteData):

  • bindings/scripts/CodeGeneratorV8.pm:

(new):
(GenerateInterface):
(WriteData):

6:15 PM Changeset in webkit [135339] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

7% regression in dromaeo_domcorequery/dom_query_getElementsByTagNamenot_in_document
https://bugs.webkit.org/show_bug.cgi?id=102852

Reviewed by Kentaro Hara.

In http://trac.webkit.org/changeset/135208/, we lost the early-exit
check for whether isolatedWorldsExist() in this code path. This
regression points to benchmarks that we can further improve by
continuing to merge the general ScriptWrappable code path with the Node
code path.

  • bindings/v8/DOMDataStore.cpp:

(WebCore::DOMDataStore::current):

5:58 PM Changeset in webkit [135338] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

[V8] Change a return type of V8Parameter::prepare() from bool to void
https://bugs.webkit.org/show_bug.cgi?id=102805

Reviewed by Adam Barth.

This is an incremental step for V8Parameter refactoring.

V8Parameter::prepare() is always called just after V8Parameter's
constructor. So I want to move the logic of V8Parameter::prepare()
to V8Parameter's constructor. In preparation for that (i.e. because
a constructor cannot return any value), this patch changes the return
type of V8Parameter::prepare() from bool to void.

Tests: fast/workers/worker-constructor.html

storage/websql/sql-error-codes.html
inspector/console/alert-toString-exception.html
http/tests/websocket/tests/hybi/send-throw.html
etc

  • bindings/v8/V8BindingMacros.h:
  • bindings/v8/V8StringResource.h:

(V8Parameter):
(WebCore::V8Parameter::prepareBase): This patch removes a TryCatch block.
This change is safe because (1) all V8Parameter::prepareBase() in the code base
is called inside STRING_TO_V8PARAMETER_EXCEPTION_BLOCK(), and because
(2) STRING_TO_V8PARAMETER_EXCEPTION_BLOCK() has a TryCatch block.
(Note: In a follow-up patch I'm planning to refactor the macros.)
(WebCore::::prepare): I will remove this method shortly.

5:35 PM Changeset in webkit [135337] by adamk@chromium.org
  • 10 edits in trunk

[JSC] MutationObserver wrapper should not be collected while still observing
https://bugs.webkit.org/show_bug.cgi?id=102744

Reviewed by Adam Barth.

Source/WebCore:

This is the JSC side of the change landed for V8 in r135228.
It ensures MutationObserver wrapper objects are kept alive as long as
any observed nodes.

  • bindings/js/JSMutationObserverCustom.cpp:

(WebCore::JSMutationObserverOwner::isReachableFromOpaqueRoots): Keep MutationObserver wrappers alive
if any of their observed nodes' roots is an opaque root.

  • dom/MutationObserver.idl: Add JSCustomIsReachable

LayoutTests:

Remove suppressions for wrapper dropoff tests.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
5:29 PM Changeset in webkit [135336] by fpizlo@apple.com
  • 25 edits
    2 adds in trunk/Source/JavaScriptCore

DFG should be able to cache closure calls (part 2/2)
https://bugs.webkit.org/show_bug.cgi?id=102662

Reviewed by Gavin Barraclough.

Added caching of calls where the JSFunction* varies, but the Structure* and ExecutableBase*
stay the same. This is accomplished by replacing the branch that compares against a constant
JSFunction* with a jump to a closure call stub. The closure call stub contains a fast path,
and jumps slow directly to the virtual call thunk.

Looks like a 1% win on V8v7.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/CallLinkInfo.cpp:

(JSC::CallLinkInfo::unlink):

  • bytecode/CallLinkInfo.h:

(CallLinkInfo):
(JSC::CallLinkInfo::isLinked):
(JSC::getCallLinkInfoBytecodeIndex):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::finalizeUnconditionally):
(JSC):
(JSC::CodeBlock::findClosureCallForReturnPC):
(JSC::CodeBlock::bytecodeOffset):
(JSC::CodeBlock::codeOriginForReturn):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::getCallLinkInfo):
(CodeBlock):
(JSC::CodeBlock::isIncomingCallAlreadyLinked):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::addJSCall):
(JSC::DFG::JITCompiler::JSCallRecord::JSCallRecord):
(JSCallRecord):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGRepatch.cpp:

(JSC::DFG::linkSlowFor):
(DFG):
(JSC::DFG::dfgLinkFor):
(JSC::DFG::dfgLinkSlowFor):
(JSC::DFG::dfgLinkClosureCall):

  • dfg/DFGRepatch.h:

(DFG):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):

  • dfg/DFGThunks.cpp:

(DFG):
(JSC::DFG::linkClosureCallThunkGenerator):

  • dfg/DFGThunks.h:

(DFG):

  • heap/Heap.h:

(Heap):
(JSC::Heap::jitStubRoutines):

  • heap/JITStubRoutineSet.h:

(JSC::JITStubRoutineSet::size):
(JSC::JITStubRoutineSet::at):
(JITStubRoutineSet):

  • jit/ClosureCallStubRoutine.cpp: Added.

(JSC):
(JSC::ClosureCallStubRoutine::ClosureCallStubRoutine):
(JSC::ClosureCallStubRoutine::~ClosureCallStubRoutine):
(JSC::ClosureCallStubRoutine::markRequiredObjectsInternal):

  • jit/ClosureCallStubRoutine.h: Added.

(JSC):
(ClosureCallStubRoutine):
(JSC::ClosureCallStubRoutine::structure):
(JSC::ClosureCallStubRoutine::executable):
(JSC::ClosureCallStubRoutine::codeOrigin):

  • jit/GCAwareJITStubRoutine.cpp:

(JSC::GCAwareJITStubRoutine::GCAwareJITStubRoutine):

  • jit/GCAwareJITStubRoutine.h:

(GCAwareJITStubRoutine):
(JSC::GCAwareJITStubRoutine::isClosureCall):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

5:11 PM Changeset in webkit [135335] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

REGRESSION(r131106): magnitude-perf.js calls bind on undefined
https://bugs.webkit.org/show_bug.cgi?id=102848

Reviewed by Tony Gentilcore.

Check the existence of performance.now before calling bind on it.

  • resources/magnitude-perf.js:

(Magnitude._runIteration):

4:45 PM Changeset in webkit [135334] by ojan@chromium.org
  • 3 edits in trunk/Tools

Simplify builder filters now that we have lists of which builders run which tests
https://bugs.webkit.org/show_bug.cgi?id=102849

Reviewed by Dirk Pranke.

We only need filters when we load the same master for multiple groups in the
same test type, i.e. when we need to only include some of the builders that run
a given test suite on a given master.

Also, get rid of the DEFAULT_BUILDER enum. We were always using the first builder anyways.
Now just make it a method on BuilderGroup.

  • TestResultServer/static-dashboards/builders.js:

(BuilderGroup.prototype.append):
(BuilderGroup.prototype.setup):
(BuilderGroup.prototype._defaultBuilder):
(BuilderGroup.prototype.master):
(requestBuilderList):
(isChromiumWebkitTipOfTreeTestRunner):
(isChromiumWebkitDepsTestRunner):
(loadBuildersList):

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

(test):

4:45 PM Changeset in webkit [135333] by dgrogan@chromium.org
  • 5 edits in trunk/LayoutTests

IndexedDB: remove setVersion from pending-version-change-on-exit.html
https://bugs.webkit.org/show_bug.cgi?id=102457

Reviewed by Tony Chang.

This test doesn't work in single-process mode because of
http://wkb.ug/82776. We run it in content_shell in chromium.

  • platform/chromium/TestExpectations:
  • storage/indexeddb/pending-version-change-on-exit-expected.txt:
  • storage/indexeddb/pending-version-change-on-exit.html:
  • storage/indexeddb/resources/pending-version-change-on-exit.js:

(request.onblocked):

4:35 PM Changeset in webkit [135332] by jsbell@chromium.org
  • 6 edits in trunk/Source/WebCore

IndexedDB: Move control of transaction completion to front end
https://bugs.webkit.org/show_bug.cgi?id=100903

Reviewed by Tony Chang.

"When a transaction can no longer become active, the implementation must attempt to
commit it" - that is, all requests have dispatched success/error events and no further
requests have been made. Previously, this was done by the back end waiting for events
from the front end, but the front end can more efficiently make the decision.

There should be no detectable behavior change.

Tests: storage/indexeddb/transaction-*.html

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::IDBTransaction):
(WebCore::IDBTransaction::setActive):
(WebCore::IDBTransaction::registerRequest):

  • Modules/indexeddb/IDBTransaction.h:
  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::hasPendingTasks): Added.
(WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents):
(WebCore::IDBTransactionBackendImpl::run):
(WebCore::IDBTransactionBackendImpl::taskEventTimerFired):

4:27 PM Changeset in webkit [135331] by ojan@chromium.org
  • 2 edits in trunk/Tools

Remove perfav master for webkit_unit_tests and test_shell_tests.
There are no bots on this master that run these tests.

  • TestResultServer/static-dashboards/builders.js:
4:22 PM Changeset in webkit [135330] by fpizlo@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

DFG should be able to cache closure calls (part 1/2)
https://bugs.webkit.org/show_bug.cgi?id=102662

Reviewed by Gavin Barraclough.

Add ability to revert a jump replacement back to
branchPtrWithPatch(Condition, RegisterID, TrustedImmPtr). This is meant to be
a mandatory piece of functionality for all assemblers. I also renamed some of
the functions for reverting jump replacements back to
patchableBranchPtrWithPatch(Condition, Address, TrustedImmPtr), so as to avoid
confusion.

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::BadReg):
(ARMv7Assembler):
(JSC::ARMv7Assembler::revertJumpTo_movT3):

  • assembler/LinkBuffer.h:

(JSC):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::startOfBranchPtrWithPatchOnRegister):
(MacroAssemblerARMv7):
(JSC::MacroAssemblerARMv7::revertJumpReplacementToBranchPtrWithPatch):
(JSC::MacroAssemblerARMv7::startOfPatchableBranchPtrWithPatchOnAddress):

  • assembler/MacroAssemblerX86.h:

(JSC::MacroAssemblerX86::startOfBranchPtrWithPatchOnRegister):
(MacroAssemblerX86):
(JSC::MacroAssemblerX86::startOfPatchableBranchPtrWithPatchOnAddress):
(JSC::MacroAssemblerX86::revertJumpReplacementToBranchPtrWithPatch):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::startOfBranchPtrWithPatchOnRegister):
(JSC::MacroAssemblerX86_64::startOfPatchableBranchPtrWithPatchOnAddress):
(MacroAssemblerX86_64):
(JSC::MacroAssemblerX86_64::revertJumpReplacementToBranchPtrWithPatch):

  • assembler/RepatchBuffer.h:

(JSC::RepatchBuffer::startOfBranchPtrWithPatchOnRegister):
(RepatchBuffer):
(JSC::RepatchBuffer::startOfPatchableBranchPtrWithPatchOnAddress):
(JSC::RepatchBuffer::revertJumpReplacementToBranchPtrWithPatch):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::revertJumpTo_cmpl_ir_force32):
(X86Assembler):

  • dfg/DFGRepatch.cpp:

(JSC::DFG::replaceWithJump):
(JSC::DFG::dfgResetGetByID):
(JSC::DFG::dfgResetPutByID):

4:20 PM Changeset in webkit [135329] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

Unreviewed. Rebaselined run-bindings-tests results.

  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:

(WebCore::V8TestEventConstructor::constructorCallback):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructorConstructorCallback):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:

(WebCore::V8TestOverloadedConstructors::constructorCallback):

4:12 PM Changeset in webkit [135328] by hclam@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Chromium build fix.

Removed unnecessary mutex unlock that triggered crash on Linux debug build.

Chromium Linux Debug layout tests should be green:
platform/chromium/virtual/deferred/fast/images/image-in-map.html

  • platform/graphics/chromium/LazyDecodingPixelRef.cpp:

(WebCore::LazyDecodingPixelRef::onLockPixels):

4:07 PM Changeset in webkit [135327] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

Fix another typo. I need to checking that type() != NodeListCollectionType,
not that type() >= FirstNodeCollectionType.

  • dom/DynamicNodeList.cpp:

(WebCore::DynamicNodeListCacheBase::invalidateIdNameCacheMaps):

  • dom/DynamicNodeList.h:

(WebCore::DynamicNodeListCacheBase::invalidateCache):

3:56 PM Changeset in webkit [135326] by ojan@chromium.org
  • 3 edits in trunk/Tools

Remove special case for layout tests when builders fail to load
https://bugs.webkit.org/show_bug.cgi?id=102842

Reviewed by Tony Chang.

Now that we load only builders that actually run the given test
type, we can reliably show errors to the users because it
represents a broken bot.

  • TestResultServer/static-dashboards/loader.js:
3:50 PM Changeset in webkit [135325] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[V8] Pass ScriptState::current() to functions marked with CallWith=ScriptState
https://bugs.webkit.org/show_bug.cgi?id=102739

Patch by Michael Pruett <michael@68k.org> on 2012-11-20
Reviewed by Kentaro Hara.

Previously EmptyScriptState rather than ScriptState::current()
was passed to functions marked with [CallWith=ScriptState].
Since the EmptyScriptState has a null v8::Context, any functions
which depended upon a valid v8::Context would fail.

No new tests. Covered by existing tests.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateCallWith):
(GenerateFunctionCallString):

  • bindings/v8/ScriptState.h:

(WebCore::ScriptState::clearException): Added.

3:47 PM Changeset in webkit [135324] by bfulgham@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Build fix after r135217.
https://bugs.webkit.org/show_bug.cgi?id=102787

  • platform/win/WindowsExtras.h: Switch to direct include of <ObjBase.h>, as is done in other <shlwapi.h> includes.
3:45 PM Changeset in webkit [135323] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

Fix typos. Apparently XCode failed to text-replace earlier when it was busy making a snapshot :(

  • dom/DynamicNodeList.cpp:

(WebCore::DynamicNodeListCacheBase::invalidateIdNameCacheMaps):

  • dom/DynamicNodeList.h:

(WebCore::DynamicNodeListCacheBase::invalidateCache):
(DynamicNodeListCacheBase):

3:42 PM Changeset in webkit [135322] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Introduce GenerateConstructorHeader() to CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=102806

Reviewed by Adam Barth.

This is an incremental step for introducing constructorCallbackCustom().
(See bug 102763.) This patch adds GenerateConstructorHeader()
that generates a common code for constructors.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateOverloadedConstructorCallback):
(GenerateSingleConstructorCallback):
(GenerateEventConstructorCallback):
(GenerateNamedConstructorCallback):
(GenerateConstructorHeader):

3:40 PM Changeset in webkit [135321] by rniwa@webkit.org
  • 5 edits in trunk/Source/WebCore

HTMLCollection's cache should not be invalidated when id or name attributes are changed
https://bugs.webkit.org/show_bug.cgi?id=102843

Reviewed by Eric Seidel.

When an id or name attribute changes, only invaliate id and name cache maps when the collection
doesn't depend on id and name attributes (e.g. document.images).

Unfortunately, I could not create a reliable test for this performance problem.

  • dom/DynamicNodeList.cpp:

(WebCore::DynamicNodeListCacheBase::invalidateIdNameCacheMaps):

  • dom/DynamicNodeList.h:

(WebCore::DynamicNodeListCacheBase::invalidateCache):
(DynamicNodeListCacheBase):

  • dom/ElementRareData.h:

(WebCore::ElementRareData::clearHTMLCollectionCaches):

  • html/HTMLCollection.cpp:

(WebCore::invalidationTypeExcludingIdAndNameAttributes):

3:38 PM Changeset in webkit [135320] by adamk@chromium.org
  • 3 edits in trunk/Source/WebCore

[v8] Avoid unnecessary call to ToObject() in Callback constructors
https://bugs.webkit.org/show_bug.cgi?id=102831

Reviewed by Adam Barth.

The code already asserted that the argument was an object, so calling
ToObject() is unnecessary: a simple Cast() suffices.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateCallbackHeader):

  • bindings/scripts/test/V8/V8TestCallback.h:

(WebCore::V8TestCallback::create):

3:34 PM Changeset in webkit [135319] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Animated gifs pause on scroll or zoom and sometimes don't resume after scroll or zoom completes
https://bugs.webkit.org/show_bug.cgi?id=102838

Patch by Andrew Lo <anlo@rim.com> on 2012-11-20
Reviewed by Rob Buis.

Internally reviewed by Adam Treat.
Internal PR244646
When entering scrolling & zooming, we suspend regular render jobs
in order to pause animations. When finishing scrolling or zooming,
dispatch a render job in order to resume those animations.

If an animation requests a repaint while the backing store is suspended,
add the regular render job to the render queue so that it can be
processed later.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::setScrollingOrZooming):

3:27 PM Changeset in webkit [135318] by rjkroege@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

[chromium] Use embedder-supported gesture curves
https://bugs.webkit.org/show_bug.cgi?id=100884

Reviewed by James Robinson.

Use embedder-provided gesture animation curves via WebKit api interfaces.
Tested by existing tests.

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):
(WebKit::WebCompositorInputHandlerImpl::scrollBy):

  • src/WebCompositorInputHandlerImpl.h:

(WebCompositorInputHandlerImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::scrollBy):
(WebKit::WebViewImpl::handleGestureEvent):
(WebKit::WebViewImpl::transferActiveWheelFlingAnimation):

  • src/WebViewImpl.h:

(WebCore):
(WebKit):
(WebViewImpl):

2:54 PM Changeset in webkit [135317] by bfulgham@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo] Build fix after r135316

  • platform/network/curl/AuthenticationChallenge.h: Update stub implementations to match Apple Windows port.

(WebCore::AuthenticationChallenge::AuthenticationChallenge): Add

missing identifier argument.

(WebCore::AuthenticationChallenge::setAuthenticationClient): Supply

missing set method.

2:50 PM Changeset in webkit [135316] by tony@chromium.org
  • 4 edits in trunk/Source

When calling DocumentStyleSheetCollection::addUserSheet, pass in a user sheet
https://bugs.webkit.org/show_bug.cgi?id=102835

Reviewed by Ojan Vafai.

After r135082, Chromium browser_tests were triggering the ASSERT in
StyleResolver::collectRulesFromUserStyleSheets. Add an ASSERT that will
trigger earlier and make it clear in the Chromium code that we're always
inserting user level styles.

Source/WebCore:

No new tests, no behavior change except no longer triggering the StyleResolver ASSERT
in Chromium browser_tests.

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::addUserSheet):

Source/WebKit/chromium:

  • src/WebDocument.cpp:

(WebKit::WebDocument::insertUserStyleSheet):

2:41 PM Changeset in webkit [135315] by commit-queue@webkit.org
  • 9 edits
    4 adds in trunk/Source/WebKit/chromium

Provide page/window coordinates to plugin's local coordinates translation in WebPluginContainer.
https://bugs.webkit.org/show_bug.cgi?id=102339

Patch by Istiaque Ahmed <lazyboy@chromium.org> on 2012-11-20
Reviewed by Adam Barth.

This change will allow converting a page's window coordinates to plugins's local coordinates,
taking CSS transformations into account. Embedder page of the plugin can use this information
for targetting elements inside the plugin (e.g. devtools can inspect a specific element at the
local coordinate position inside plugin).

  • WebKit.gyp:
  • WebKit.gypi:
  • public/WebNode.h:

(WebKit):

  • public/WebPluginContainer.h:

(WebKit):
(WebPluginContainer):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::executeCommand):
(WebKit::WebFrameImpl::printBegin):
(WebKit::WebFrameImpl::isPrintScalingDisabledForPlugin):

  • src/WebNode.cpp:

(WebKit::WebNode::pluginContainer):
(WebKit):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::windowToLocalPoint):
(WebKit):

  • src/WebPluginContainerImpl.h:

(WebPluginContainerImpl):

  • tests/FakeWebPlugin.cpp: Added.

(WebKit):
(WebKit::FakeWebPlugin::FakeWebPlugin):
(WebKit::FakeWebPlugin::~FakeWebPlugin):
(WebKit::FakeWebPlugin::initialize):
(WebKit::FakeWebPlugin::destroy):

  • tests/FakeWebPlugin.h: Added.

(WebKit):
(FakeWebPlugin):

  • tests/WebPluginContainerTest.cpp: Added.

(WebKit):
(WebPluginContainerTest):
(WebKit::WebPluginContainerTest::WebPluginContainerTest):
(WebKit::WebPluginContainerTest::TearDown):
(WebKit::getWebPluginContainer):
(WebKit::TEST_F):

  • tests/data/plugin_container.html: Added.
2:39 PM Changeset in webkit [135314] by commit-queue@webkit.org
  • 21 edits
    1 add in trunk

[CSS Exclusions] Support outside-shape value on shape-inside
https://bugs.webkit.org/show_bug.cgi?id=101108

Patch by Bear Travis <betravis@adobe.com> on 2012-11-20
Reviewed by Dirk Schulze.

Source/WebCore:

Shape-inside can potentially be: 'auto' | 'outside-shape' | <shape> | <url>.
Webkit currently supports the value 'auto' (null) and <shape> (a BasicShape*).
This patch adds support for the value 'outside-shape.' It adds the ExclusionShapeValue
class, which may be any of the three values: 'auto', 'outside-shape', or <shape>.
Bug 102738 tracks adding <url> support.

Modifying existing tests:
LayoutTests/fast/exclusions/parsing-wrap-shape-inside.html
LayoutTests/fast/exclusions/parsing-wrap-shape-outside.html

  • GNUmakefile.list.am: Adding ExclusionShapeValue.h to the build files.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.

(WebCore):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Modifying code to use
ExclusionShapeValue* rather than the previous BasicShape* values.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue): Handle the outside-shape value.

  • css/CSSValueKeywords.in: Adding outside-shape value.
  • css/StyleBuilder.cpp:

(WebCore):
(WebCore::ApplyPropertyExclusionShape::setValue): Modify code to use
ExclusionShapeValue* rather than BasicShape*.
(WebCore::ApplyPropertyExclusionShape::applyValue): Ditto.
(WebCore::ApplyPropertyExclusionShape::createHandler): Ditto.

  • page/animation/CSSPropertyAnimation.cpp: Ditto.

(WebCore::blendFunc): Ditto.
(WebCore::PropertyWrapperExclusionShape::PropertyWrapperExclusionShape): Ditto.
(WebCore::CSSPropertyAnimation::ensurePropertyMap): Ditto.

  • rendering/ExclusionShapeInsideInfo.cpp:

(WebCore::ExclusionShapeInsideInfo::isExclusionShapeInsideInfoEnabledForRenderBlock):
Ditto.
(WebCore::ExclusionShapeInsideInfo::computeShapeSize): Ditto.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange): Ditto.

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/style/ExclusionShapeValue.h: Added.

(WebCore):
(ExclusionShapeValue): New type to represent the possible values of shape-inside
and shape-outside. Only shape-inside can have a value of 'outside-shape.'
(WebCore::ExclusionShapeValue::~ExclusionShapeValue):
(WebCore::ExclusionShapeValue::type): Returns the value type.
(WebCore::ExclusionShapeValue::shape): Returns <shape> value's BasicShape*.
(WebCore::ExclusionShapeValue::operator==):
(WebCore::ExclusionShapeInfo::createShapeValue):
(WebCore::ExclusionShapeInfo::createOutsideValue):
(WebCore::ExclusionShapeValue::ExclusionShapeValue):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareNonInheritedData.h:

(StyleRareNonInheritedData):

LayoutTests:

Adding tests to make sure the 'outside-shape' value properly applies only to the
shape-inside property.

  • fast/exclusions/parsing-wrap-shape-inside-expected.txt:
  • fast/exclusions/parsing-wrap-shape-outside-expected.txt:
  • fast/exclusions/script-tests/parsing-wrap-shape-inside.js:
  • fast/exclusions/script-tests/parsing-wrap-shape-outside.js:
2:27 PM Changeset in webkit [135313] by hclam@chromium.org
  • 7 edits in trunk/Source

[chromium] Make lazy image decoding thread-safe
https://bugs.webkit.org/show_bug.cgi?id=102721

Reviewed by Stephen White.

Source/WebCore:

Added mutex to LazyDecodingPixelRef such that there is no parallel
onLockPixels() running on multiple threads.

Added mutex to ImageFrameGenerator to protect the use of raw image
data.

The result is that we can decode on threads other than the main
thread while data is being supplied on the main thread.

New unit test:
DeferredImageDecoderTest.decodeOnOtherThread

  • platform/graphics/chromium/ImageFrameGenerator.cpp:

(WebCore::ImageFrameGenerator::setData):
(WebCore::ImageFrameGenerator::decodeAndScale):

  • platform/graphics/chromium/ImageFrameGenerator.h:

(ImageFrameGenerator):

  • platform/graphics/chromium/LazyDecodingPixelRef.cpp:

(WebCore::LazyDecodingPixelRef::onLockPixels):
(WebCore::LazyDecodingPixelRef::onUnlockPixels):

  • platform/graphics/chromium/LazyDecodingPixelRef.h:

(LazyDecodingPixelRef):

Source/WebKit/chromium:

Added a new unit test to verify that lazy image decoding operates
correctly on non-main threads.

  • tests/DeferredImageDecoderTest.cpp:

(Rasterizer):
(WebCore):
(WebCore::rasterizeMain):
(WebCore::TEST_F):

2:25 PM Changeset in webkit [135312] by bfulgham@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Build fix after r135217.
https://bugs.webkit.org/show_bug.cgi?id=102787

  • platform/win/WindowsExtras.h: Add #undef of NOSHLWAPI to

allow include of <ObjBase.h> needed by Qt build.

2:25 PM Changeset in webkit [135311] by jianli@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Updated chromium test expectations.

  • platform/chromium/TestExpectations:
2:08 PM Changeset in webkit [135310] by commit-queue@webkit.org
  • 39 edits
    1 delete in trunk/Source

Unreviewed, rolling out r135295.
http://trac.webkit.org/changeset/135295
https://bugs.webkit.org/show_bug.cgi?id=102834

This patch causes assertion to some layout tests on chromium
(Requested by jianli on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-20

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/FrameLoadRequest.cpp: Removed.
  • loader/FrameLoadRequest.h:

(WebCore::FrameLoadRequest::FrameLoadRequest):
(FrameLoadRequest):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::load):

  • loader/FrameLoader.h:

(FrameLoader):

  • page/DragController.cpp:

(WebCore::DragController::performDrag):

  • plugins/PluginView.cpp:

(WebCore::PluginView::performRequest):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::load):
(BlackBerry::WebKit::WebPagePrivate::loadString):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::loadRequest):
(WebKit::WebFrameImpl::loadData):

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::initializeLoader):

Source/WebKit/efl:

  • ewk/ewk_frame.cpp:

(ewk_frame_uri_set):
(_ewk_frame_contents_set_internal):

Source/WebKit/gtk:

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_load_uri):
(webkit_web_frame_load_data):
(webkit_web_frame_load_request):

Source/WebKit/mac:

  • Plugins/WebPluginController.mm:
  • WebView/WebFrame.mm:

(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):

Source/WebKit/qt:

  • Api/qwebframe.cpp:

(QWebFrame::QWebFrame):
(QWebFrame::load):
(QWebFrame::setHtml):
(QWebFrame::setContent):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::setAlternateHtml):

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::callErrorPageExtension):

Source/WebKit/win:

  • WebFrame.cpp:

(WebFrame::loadRequest):
(WebFrame::loadData):

Source/WebKit/wince:

  • WebView.cpp:

(WebView::load):

Source/WebKit/wx:

  • WebFrame.cpp:

(WebKit::WebFrame::SetPageSource):

Source/WebKit2:

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::performFrameLoadURLRequest):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadURLRequest):
(WebKit::WebPage::loadData):
(WebKit::WebPage::linkClicked):

1:47 PM Changeset in webkit [135309] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebCore

Unreviewed, rolling out r135293.
http://trac.webkit.org/changeset/135293
https://bugs.webkit.org/show_bug.cgi?id=102832

This patch causes crash to some layout tests on chromium
(Requested by jianli on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-20

  • bindings/v8/DOMDataStore.cpp:

(WebCore::DOMDataStore::current):

  • bindings/v8/DOMWrapperWorld.cpp:
  • bindings/v8/DOMWrapperWorld.h:
  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::existingWindowShell):
(WebCore::ScriptController::windowShell):
(WebCore::ScriptController::evaluateInIsolatedWorld):
(WebCore::ScriptController::currentWorldContext):
(WebCore::ScriptController::collectIsolatedContexts):

  • bindings/v8/ScriptController.h:

(ScriptController):

  • bindings/v8/V8Binding.h:

(WebCore::worldForEnteredContextIfIsolated):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::destroyIsolatedShell):
(WebCore):
(WebCore::isolatedContextWeakCallback):
(WebCore::V8DOMWindowShell::disposeContext):
(WebCore::V8DOMWindowShell::initializeIfNeeded):

  • bindings/v8/V8DOMWindowShell.h:

(WebCore::V8DOMWindowShell::isolated):
(V8DOMWindowShell):

  • bindings/v8/V8PerContextData.h:
  • bindings/v8/WorldContextHandle.cpp:

(WebCore::WorldContextHandle::WorldContextHandle):

1:10 PM Changeset in webkit [135308] by dgrogan@chromium.org
  • 12 edits in trunk

IndexedDB: Remove legacy enum-based constants from IDL
https://bugs.webkit.org/show_bug.cgi?id=85315

Reviewed by Adam Barth.

Source/WebCore:

These were only present in an earlier working draft of the spec and have
been removed for 8 months. See
http://lists.w3.org/Archives/Public/public-webapps/2012JanMar/0957.html

Tests - legacy-constants.html

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::stringToDirection):

  • Modules/indexeddb/IDBCursor.idl:
  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::stringToMode):

  • Modules/indexeddb/IDBTransaction.idl:

LayoutTests:

  • storage/indexeddb/constants-expected.txt:
  • storage/indexeddb/cursor-overloads-expected.txt:
  • storage/indexeddb/cursor-overloads.html:
  • storage/indexeddb/legacy-constants-expected.txt:
  • storage/indexeddb/resources/constants.js:

(test):

  • storage/indexeddb/resources/legacy-constants.js:

(testObsoleteConstants):

1:00 PM Changeset in webkit [135307] by commit-queue@webkit.org
  • 10 edits
    1 delete in trunk/LayoutTests

animations/stop-animation-on-suspend.html sometimes fails on all platforms
https://bugs.webkit.org/show_bug.cgi?id=49182

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-11-20
Reviewed by Antti Koivisto.

stop-animation-on-suspend incorrectly assumed that animation in a subframe would start
roughly at document load. Keep both animations (one in main frame, one in iframe) paused
until the iframe is loaded: this way they should run synchronised enough.

Also increase the tolerance of the test slightly: measuring timing like this is inherently flaky.

Remove failure expectation from all TestExpectations and remove the clearly wrong expected
result for chromium-mac.

  • animations/resources/stop-animation-on-suspend-subframe.html:
  • animations/stop-animation-on-suspend.html:
  • platform/chromium/TestExpectations:
  • platform/chromium-mac/animations/stop-animation-on-suspend-expected.txt:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt-arm/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
12:33 PM Changeset in webkit [135306] by reed@google.com
  • 2 edits in trunk/LayoutTests

update TestExpectations before a skia change
https://bugs.webkit.org/show_bug.cgi?id=102829

Reviewed by NOBODY. expectations change only.

optimization for rectangular blurs (with holes) changes some images in the low bit. mark for rebaselining.

  • platform/chromium/TestExpectations:
11:59 AM Changeset in webkit [135305] by commit-queue@webkit.org
  • 7 edits
    1 add in trunk

Store MutationObserver callback in a hidden property for V8
https://bugs.webkit.org/show_bug.cgi?id=102555

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-20
Reviewed by Adam Barth.

.:

Test for reference cycle leaks with mutation observers. There doesn't seem
to be a way to check this for v8, but if you manually run you can see if it
leaks observers.

  • ManualTests/leak-cycle-observer-wrapper.html: Added.

Source/WebCore:

To prevent circular reference leaks we should store the MutationObserver
callback in a hidden property on the wrapper of the observer.

This is done by extending the code generator to support a new owner
argument to ::create() that lets you set the owner of the callback where
the hidden property should be stored.

Test: ManualTests/leak-cycle-observer-wrapper.html

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateCallbackHeader):
(GenerateCallbackImplementation):

  • bindings/scripts/test/V8/V8TestCallback.cpp: rebaselined.
  • bindings/scripts/test/V8/V8TestCallback.h: rebaselined.
  • bindings/v8/V8HiddenPropertyName.h:
  • bindings/v8/custom/V8MutationObserverCustom.cpp:

(WebCore::V8MutationObserver::constructorCallback):

11:58 AM Changeset in webkit [135304] by ojan@chromium.org
  • 10 edits
    4 adds in trunk/Tools

Generate a list of builders/test suites from the buildbot json
https://bugs.webkit.org/show_bug.cgi?id=102443

Reviewed by Dirk Pranke.

Instead of the cludgy things we do now to track which bots run which tests,
we generate all that data from the buildbots' json files.
This is the minimal amount to keep everything working. Once this lands,
we can also do a bunch of followup cleanup.

For now we commit the generated data. In theory, in the future, we could
have the test results server generate the data on the fly.

For the sake of easily understanding what changes when we run the generate script,
also checkin a pretty printed version of the output. The pretty printed version
is too large to serve as part of the flakiness dashboard though.

This also has the benefit of making the dashboard load much faster since
we no longer ever need to block on requests to buildbot.

  • TestResultServer/generate_builders_json.py: Added.

(master_json_url):
(builder_json_url):
(cached_build_json_url):
(fetch_json):
(insert_builder_and_test_data):
(main):

  • TestResultServer/generate_builders_json_unittest.py: Added.

(GenerateBuildersJsonTest):
(GenerateBuildersJsonTest.test_master_json_url):
(GenerateBuildersJsonTest.test_builder_json_url):
(GenerateBuildersJsonTest.test_cached_build_json_url):
(GenerateBuildersJsonTest.test_generate_json_data):
(GenerateBuildersJsonTest.test_generate_json_data.dummy_fetch_json):

  • TestResultServer/static-dashboards/builders-pretty.jsonp: Added.
  • TestResultServer/static-dashboards/builders.js:

(LOAD_BUILDBOT_DATA):
(BuilderGroup):
(BuilderGroup.prototype.append):
(BuilderGroup.prototype.master):
(requestBuilderList):

  • TestResultServer/static-dashboards/builders.jsonp: Added.
  • TestResultServer/static-dashboards/builders_unittests.js: Added.
  • TestResultServer/static-dashboards/dashboard_base.js:
  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(showPopupForBuild):
(htmlForTestResults):
(htmlForIndividualTestOnAllBuildersWithResultsLinks):
(loadExpectationsLayoutTests):

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:

(resetGlobals):
(test):

  • TestResultServer/static-dashboards/loader.js:
  • TestResultServer/static-dashboards/loader_unittests.js:
  • TestResultServer/static-dashboards/run-embedded-unittests.html:
  • TestResultServer/static-dashboards/run-unittests.html:
  • TestResultServer/static-dashboards/timeline_explorer.html:
11:46 AM Changeset in webkit [135303] by inferno@chromium.org
  • 3 edits
    2 adds in trunk

Crash in FrameLoader::stopLoading.
https://bugs.webkit.org/show_bug.cgi?id=99504

Reviewed by Nate Chapin.

Source/WebCore:

Frame can be blown away in unload event handler. Need
to protect it with a RefPtr.

Test: fast/frames/frame-unload-crash2.html

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::commitProvisionalLoad):

LayoutTests:

  • fast/frames/frame-unload-crash2-expected.txt: Added.
  • fast/frames/frame-unload-crash2.html: Added.
11:29 AM Changeset in webkit [135302] by commit-queue@webkit.org
  • 4 edits in trunk/Tools

[WTR][Qt] Enable fixedLayout when needed by the test
https://bugs.webkit.org/show_bug.cgi?id=102811

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-11-20
Reviewed by Kenneth Rohde Christiansen.

Create a flickable view for CSS Device Adaptation tests. This is
crucial for testing them since they will change the size of the
viewport.

  • WebKitTestRunner/PlatformWebView.h:

(PlatformWebView):

  • WebKitTestRunner/qt/PlatformWebViewQt.cpp:

(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::viewSupportsOptions):
(WTR):

  • WebKitTestRunner/qt/main.cpp:

(main):

11:12 AM Changeset in webkit [135301] by krit@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove unnecessary FilterOperations header from RenderBoxModelObject
https://bugs.webkit.org/show_bug.cgi?id=102821

Reviewed by Ojan Vafai.

No new tests, simple refactoring.

  • rendering/RenderBoxModelObject.cpp:
11:04 AM ViewportInteractionTopics created by Noam Rosenthal
10:54 AM Changeset in webkit [135300] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] fix FPS counter disappearing when changing page
https://bugs.webkit.org/show_bug.cgi?id=102532

Patch by Eberhard Graether <egraether@google.com> on 2012-11-20
Reviewed by Pavel Feldman.

When changing the page with opened WebInspector and active FPS counter the WebInspector is
reloaded before the WebView switches to accelerated compositing, so the showFPSCounter call
to WebLayerTreeView is not yet possible. This fix saves the showFPSCounter value in the
WebSettings so it can be read when accelerated compositing is activated.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setShowFPSCounter):

10:49 AM Changeset in webkit [135299] by tsepez@chromium.org
  • 3 edits
    2 adds in trunk

XSSAuditor::decodedSnippetForJavaScript stopping when comma encountered.
https://bugs.webkit.org/show_bug.cgi?id=102587

Reviewed by Adam Barth.

Source/WebCore:

Rather than returning an empty fragment, continue processing the body
of a script tag when the decoded fragment reduces to nothing.

Test: http/tests/security/xssAuditor/script-tag-with-actual-comma.html

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::decodedSnippetForJavaScript):

LayoutTests:

  • http/tests/security/xssAuditor/script-tag-with-actual-comma-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-actual-comma.html: Added.
10:46 AM Changeset in webkit [135298] by pfeldman@chromium.org
  • 1 edit in branches/chromium/1312/Source/WebCore/inspector/front-end/ElementsTreeOutline.js

Merge 134605 - Web Inspector: "Reveal in Element Panel" doesn't work if Elements panel hasn't been opened
https://bugs.webkit.org/show_bug.cgi?id=102219

Reviewed by Alexander Pavlov.

Force elements module load upon context menu invocation.

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement):
(WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):

TBR=pfeldman@chromium.org
BUG=161156
Review URL: https://chromiumcodereview.appspot.com/11414088

10:42 AM Changeset in webkit [135297] by pfeldman@chromium.org
  • 1 edit in branches/chromium/1312/Source/WebCore/inspector/front-end/ObjectPropertiesSection.js

Merge 134595 - Web Inspector: context menu on ObjectPropertyTreeElement's values is masked by the section.
https://bugs.webkit.org/show_bug.cgi?id=102212

Reviewed by Vsevolod Vlasov.

  • inspector/front-end/ObjectPropertiesSection.js:

(WebInspector.ObjectPropertiesSection.prototype.enableContextMenu):

TBR=pfeldman@chromium.org
BUG=161156
Review URL: https://chromiumcodereview.appspot.com/11416111

10:40 AM Changeset in webkit [135296] by commit-queue@webkit.org
  • 5 edits in trunk/LayoutTests

[CSS Exclusions] writing-mode:vertical-rl shape-inside tests are incorrectly configured
https://bugs.webkit.org/show_bug.cgi?id=102729

Patch by Hans Muller <hmuller@adobe.com> on 2012-11-20
Reviewed by Dirk Schulze.

Corrected the dimensions of the border elements in two exclusions tests. They
define a rectangle that's five pixels larger than the tests' rectangular
shape-inside exclusions shapes. They now enclose the shape-inside element's
text contents.

  • fast/exclusions/shape-inside/shape-inside-polygon-rectangle-expected.html:
  • fast/exclusions/shape-inside/shape-inside-polygon-rectangle.html:
  • fast/exclusions/shape-inside/shape-inside-vertical-text-expected.html:
  • fast/exclusions/shape-inside/shape-inside-vertical-text.html:
10:30 AM Changeset in webkit [135295] by simonjam@chromium.org
  • 39 edits
    1 add in trunk/Source

Consolidate FrameLoader::load() into one function taking a FrameLoadRequest
https://bugs.webkit.org/show_bug.cgi?id=102151

Reviewed by Adam Barth.

Source/WebCore:

There's a FIXME that we have too many FrameLoader::load*() functions. This patch consolidates 3 into 1.
There are still a few more load functions that will be consolidated later. Using FrameLoadRequest as
the interface into FrameLoader will also provide a place to pass in the initiator. Finally, this matches
the refactoring done with CachedResourceRequest and CachedResourceLoader.

No new tests. No change in functionality.

  • WebCore.exp.in:
  • loader/FrameLoadRequest.h:

(WebCore::FrameLoadRequest::FrameLoadRequest):
(WebCore::FrameLoadRequest::setLockHistory): These are former arguments to load().
(WebCore::FrameLoadRequest::lockHistory): Ditto.
(FrameLoadRequest):
(WebCore::FrameLoadRequest::setShouldCheckNewWindowPolicy): Ditto.
(WebCore::FrameLoadRequest::shouldCheckNewWindowPolicy): Ditto.
(WebCore::FrameLoadRequest::substituteData): Ditto.
(WebCore::FrameLoadRequest::setSubstituteData): Ditto.
(WebCore::FrameLoadRequest::hasSubstituteData): Ditto.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::load): No change in behavior, just merged it all into one function.

  • loader/FrameLoader.h:

(FrameLoader):

  • page/DragController.cpp:

(WebCore::DragController::performDrag):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::load):
(BlackBerry::WebKit::WebPagePrivate::loadString):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::loadRequest):
(WebKit::WebFrameImpl::loadData):

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::initializeLoader):

Source/WebKit/efl:

  • ewk/ewk_frame.cpp:

(_ewk_frame_contents_set_internal):

Source/WebKit/gtk:

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_load_uri):
(webkit_web_frame_load_data):
(webkit_web_frame_load_request):

Source/WebKit/mac:

  • Plugins/WebPluginController.mm:
  • WebView/WebFrame.mm:

(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):

Source/WebKit/qt:

  • Api/qwebframe.cpp:

(QWebFrame::QWebFrame):
(QWebFrame::load):
(QWebFrame::setHtml):
(QWebFrame::setContent):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::setAlternateHtml):
(qt_dump_set_accepts_editing):

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::callErrorPageExtension):

Source/WebKit/win:

  • WebFrame.cpp:

(WebFrame::loadRequest):
(WebFrame::loadData):

Source/WebKit/wince:

  • WebView.cpp:

(WebView::load):

Source/WebKit/wx:

  • WebFrame.cpp:

(WebKit::WebFrame::SetPageSource):

Source/WebKit2:

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::performFrameLoadURLRequest):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadURLRequest):
(WebKit::WebPage::loadData):

10:30 AM Changeset in webkit [135294] by kareng@chromium.org
  • 9 edits in branches/chromium/1312/Source/WebCore/platform/graphics

Revert 135211 - Merge 134871
BUG=157875
Review URL: https://codereview.chromium.org/11299089

TBR=cevans@google.com

10:26 AM Changeset in webkit [135293] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebCore

Remove V8DOMWindowShell::getEntered
https://bugs.webkit.org/show_bug.cgi?id=96637

Patch by Dan Carney <dcarney@google.com> on 2012-11-20
Reviewed by Adam Barth.

V8DOMWindowShell::getEntered was refactored so that the window shell
no longer has to be kept alive by a v8 context. Instead, only
the DOMWrapperWorld will be kept alive.

No new tests. No change in functionality.

  • bindings/v8/DOMDataStore.cpp:

(WebCore::DOMDataStore::current):

  • bindings/v8/DOMWrapperWorld.cpp:

(WebCore::isolatedWorldWeakCallback):
(WebCore):
(WebCore::DOMWrapperWorld::makeContextWeak):
(WebCore::DOMWrapperWorld::setIsolatedWorldField):

  • bindings/v8/DOMWrapperWorld.h:

(DOMWrapperWorld):
(WebCore::DOMWrapperWorld::isolated):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::existingWindowShell):
(WebCore::ScriptController::windowShell):
(WebCore::ScriptController::evaluateInIsolatedWorld):
(WebCore::ScriptController::currentWorldContext):
(WebCore::ScriptController::collectIsolatedContexts):

  • bindings/v8/ScriptController.h:

(ScriptController):

  • bindings/v8/V8Binding.h:

(WebCore::worldForEnteredContextIfIsolated):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::destroyIsolatedShell):
(WebCore::V8DOMWindowShell::disposeContext):
(WebCore::V8DOMWindowShell::initializeIfNeeded):

  • bindings/v8/V8DOMWindowShell.h:

(V8DOMWindowShell):

  • bindings/v8/V8PerContextData.h:
  • bindings/v8/WorldContextHandle.cpp:

(WebCore::WorldContextHandle::WorldContextHandle):

10:24 AM Changeset in webkit [135292] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[GTK] fast/hidpi/video-controls-in-hidpi.html and fast/layers/video-layer.html need new baseline
https://bugs.webkit.org/show_bug.cgi?id=102815

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2012-11-20
Reviewed by Philippe Normand.

Added new GTK baseline for those tests.

  • platform/gtk/fast/hidpi/video-controls-in-hidpi-expected.txt:

New GTK baseline

  • platform/gtk/fast/layers/video-layer-expected.txt: New GTK

baseline

9:58 AM Changeset in webkit [135291] by mkwst@chromium.org
  • 6 edits in trunk/Source/WebCore

Remove '#include "ScriptCallStackFactory.h"' include when unnecessary.
https://bugs.webkit.org/show_bug.cgi?id=102812

Reviewed by Jochen Eisinger.

"ScriptCallStackFactory.h" is included in a few files where it doesn't
seem to be required. Since I'm in the process of centralizing stack
trace generation anyway, I'll just clean this up as a drive-by.

  • bindings/js/JSConsoleCustom.cpp:
  • bindings/v8/custom/V8DOMWindowCustom.cpp:
  • bindings/v8/custom/V8WorkerContextCustom.cpp:
  • loader/FrameLoader.cpp:

Removed "ScriptCallStackFactory.h".

  • bindings/js/ScheduledAction.cpp:

This also included (but didn't use) "ScriptCallStack.h". I've
removed it as well.

9:44 AM Changeset in webkit [135290] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Merge checks for creating renderers into shouldCreateRenderer
https://bugs.webkit.org/show_bug.cgi?id=102768

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-20
Reviewed by Ojan Vafai.

Merge the checks for if renderers should be created into shouldCreateRenderer
so simplify the code and ensure correctness if doing
NodeRenderingContext(node).shouldCreateRenderer() in other places in webkit.

No new tests, just refactoring.

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::shouldCreateRenderer):
(WebCore::NodeRendererFactory::createRendererIfNeeded):

9:25 AM Changeset in webkit [135289] by rakuco@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening.

Temporarily mark fast/multicol/span/positioned-child-not-removed-crash.html
as crashing while the regression is addressed.

  • platform/efl-wk2/TestExpectations:
9:16 AM Changeset in webkit [135288] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

WinCairo build fails to link.
https://bugs.webkit.org/show_bug.cgi?id=102804

Patch by peavo@outlook.com <peavo@outlook.com> on 2012-11-20
Reviewed by Alexey Proskuryakov.

  • win/WebKit2CFLite.def:
9:14 AM Changeset in webkit [135287] by commit-queue@webkit.org
  • 10 edits in trunk

[WTR] WebKitTestRunner should be able to run tests using fixed layout
https://bugs.webkit.org/show_bug.cgi?id=102517

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-11-20
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Update EFL private API so we can create a view with fixed layout. We
can keep this as private as I don't see a real life use case for it
outside WTR and the WebInspector.

  • UIProcess/API/C/efl/WKView.cpp:

(WKViewCreate):
(WKViewCreateWithFixedLayout):

  • UIProcess/API/C/efl/WKView.h:
  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_base_add):

  • UIProcess/API/efl/ewk_view_private.h:
  • UIProcess/efl/WebInspectorProxyEfl.cpp:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

Tools:

WTR will now request the creation of a view that has a page using
fixed layout for CSS Device Adaptation tests, but this feature might
be used in the future by any other test that requires a mobile-like type
of viewport (i.e. Viewport META tests should be ported).

The viewport type of the other tests remains unchanged and is restored
when the runner leaves the device-adapt/ folder.

  • WebKitTestRunner/PlatformWebView.h:

(PlatformWebView):

  • WebKitTestRunner/TestInvocation.cpp:

(WTR):
(WTR::shouldUseFixedLayout):
(WTR::updateLayoutType):
(WTR::TestInvocation::invoke):

  • WebKitTestRunner/efl/PlatformWebViewEfl.cpp:

(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::viewSupportsOptions):
(WTR):

8:32 AM Changeset in webkit [135286] by yoli@rim.com
  • 2 edits in trunk/Source/JavaScriptCore

[ARMv7] Neither linkCall() nor linkPointer() should flush code.
https://bugs.webkit.org/show_bug.cgi?id=99213

Reviewed by George Staikos.

LinkBuffer doesn't need to flush code during linking. It will
eventually flush the whole executable. Fixing this gives >%5
sunspider boost (on QNX).

Also make replaceWithLoad() and replaceWithAddressComputation() flush
only when necessary.

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::linkCall):
(JSC::ARMv7Assembler::linkPointer):
(JSC::ARMv7Assembler::relinkCall):
(JSC::ARMv7Assembler::repatchInt32):
(JSC::ARMv7Assembler::repatchPointer):
(JSC::ARMv7Assembler::replaceWithLoad): Flush only after it did write.
(JSC::ARMv7Assembler::replaceWithAddressComputation): Flush only after it did write.
(JSC::ARMv7Assembler::setInt32):
(JSC::ARMv7Assembler::setPointer):

8:31 AM Changeset in webkit [135285] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: simplify? damaged region computation in the editor
https://bugs.webkit.org/show_bug.cgi?id=102688

Reviewed by Vsevolod Vlasov.

This change simplifies the damaged region computation. Drive-by make _getSelection work properly.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.DefaultTextEditor):
(WebInspector.DefaultTextEditor.prototype._handleCut):
(WebInspector.TextEditorChunkedPanel.prototype._findFirstVisibleLineNumber.compareLineRowOffsetTops):
(WebInspector.TextEditorChunkedPanel.prototype._findFirstVisibleLineNumber):
(WebInspector.TextEditorMainPanel.prototype.handleEnterKey.get var):
(WebInspector.TextEditorMainPanel.prototype.handleEnterKey):
(WebInspector.TextEditorMainPanel.prototype._paintLineChunks):
(WebInspector.TextEditorMainPanel.prototype._getSelection):
(WebInspector.TextEditorMainPanel.prototype._restoreSelection):
(WebInspector.TextEditorMainPanel.prototype._selectionToPosition):
(WebInspector.TextEditorMainPanel.prototype._positionToSelection):
(WebInspector.TextEditorMainPanel.prototype._handleMutations):
(WebInspector.TextEditorMainPanel.prototype._collectDirtyLines):
(WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
(WebInspector.TextEditorMainPanel.prototype._guessEditRangeBasedOnSelection):
(WebInspector.TextEditorMainPanel.prototype._assertDOMMatchesTextModel):
(WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
(WebInspector.TextEditorMainPanel.prototype._collectLinesFromDOM):
(WebInspector.TextEditorMainChunk):
(WebInspector.TextEditorMainChunk.prototype.addDecoration):
(WebInspector.TextEditorMainChunk.prototype.get endLine):
(WebInspector.TextEditorMainChunk.prototype.lineRowContainingLine):
(WebInspector.TextEditorMainChunk.prototype.expandedLineRow):

8:26 AM Changeset in webkit [135284] by pfeldman@chromium.org
  • 3 edits in branches/chromium/1312/Source/WebCore/inspector

Merge 134577 - Web Inspector: highlight is not updating as one edits CSS properties
https://bugs.webkit.org/show_bug.cgi?id=102191

Reviewed by Alexander Pavlov.

We should update highlight upon layout / style recalculation.

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::didRecalculateStyleImpl):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::enable):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::domContentEventFired):
(WebCore::InspectorPageAgent::didPaint):
(WebCore::InspectorPageAgent::didLayout):
(WebCore::InspectorPageAgent::didScroll):
(WebCore):
(WebCore::InspectorPageAgent::didRecalculateStyle):

  • inspector/InspectorPageAgent.h:

TBR=pfeldman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11413088

8:20 AM Changeset in webkit [135283] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebKit2

[Qt] PageViewportControllerClient::didChangeViewportAttributes called twice
https://bugs.webkit.org/show_bug.cgi?id=102790

Reviewed by Kenneth Rohde Christiansen.

Change updateMinimumScaleToFit to no longer call PageViewportControllerClient::didChangeViewportAttributes,
but instead return whether it has changed the minimumScaleToFit.

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::didChangeContentsSize):
(WebKit::PageViewportController::updateMinimumScaleToFit):

  • UIProcess/PageViewportController.h:

(PageViewportController):

8:10 AM Changeset in webkit [135282] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebKit2

[Qt] No test of double-click to zoom out
https://bugs.webkit.org/show_bug.cgi?id=102810

Reviewed by Kenneth Rohde Christiansen.

Adds tests of zoom-stack behaviour, the ability to restore previous zoom levels. It tests
that zoom out always goes to lower zoom levels.

  • UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml:
8:08 AM Changeset in webkit [135281] by Carlos Garcia Campos
  • 2 edits in trunk

Unreviewed. Update NEWS and configure.ac for 1.11.2 release

  • configure.ac: Bump tarball version number, not updated in

previous commit by mistake.

8:02 AM Changeset in webkit [135280] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebKit2

[Qt] Large areas highlighted on touch
https://bugs.webkit.org/show_bug.cgi?id=97216

Reviewed by Simon Hausmann.

Restrict highlighting of scripted event-handlers to inline elements only.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::highlightPotentialActivation):

8:02 AM Changeset in webkit [135279] by Carlos Garcia Campos
  • 4 edits in trunk

Unreviewed. Update NEWS and configure.ac for 1.11.2 release

.:

  • configure.ac: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Added release notes for 1.11.2.
7:56 AM Changeset in webkit [135278] by yael@webkit.org
  • 3 edits
    1 add in trunk/LayoutTests

Unreviewed gardening.
Update results for compositing/geometry/vertical-scroll-composited.html after 133898.
Mark animations/negative-delay.html as flaky.
Remove a few passing tests from TextExpectations.

  • platform/efl/TestExpectations:
  • platform/efl/compositing/geometry/vertical-scroll-composited-expected.png: Added.
  • platform/efl/compositing/geometry/vertical-scroll-composited-expected.txt:
7:35 AM Changeset in webkit [135277] by arv@chromium.org
  • 4 edits in trunk/Source/WebCore

Remove historical enums from ExceptionCode.h
https://bugs.webkit.org/show_bug.cgi?id=102095

Reviewed by Ojan Vafai.

Remove unused enums from ExceptionCode.

No new tests. No tests affected.

  • Modules/intents/NavigatorIntents.cpp:

(WebCore::NavigatorIntents::webkitStartActivity): The error type for this is unspecified.

  • dom/DOMCoreException.cpp:
  • dom/ExceptionCode.h:
7:34 AM Changeset in webkit [135276] by schenney@chromium.org
  • 9 edits
    1 delete in trunk/LayoutTests

[Chromium] Expectations update

Unreviewed test expectations update.

Some results for calendar and month picker may not be up-to-date for the slow bots.

  • platform/chromium-mac-lion/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-step-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-step-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-step-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-step-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-step-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/month-picker-appearance-step-expected.png:
  • platform/chromium-win-xp/fast/block/float/overhanging-tall-block-expected.png: Removed.
  • platform/chromium-win/fast/block/float/overhanging-tall-block-expected.png:
  • platform/chromium-win/fast/block/float/overhanging-tall-block-expected.txt:
6:11 AM Changeset in webkit [135275] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] REGRESSION(r128174): Fast build path doesn't work now
https://bugs.webkit.org/show_bug.cgi?id=100360

Reviewed by Tor Arne Vestbø.

Use a separated .builtRevisions.cache file instead of .qmake.cache to cache built SVN revisions.

  • Scripts/webkitdirs.pm:

(buildQMakeProjects):

6:02 AM Changeset in webkit [135274] by keishi@webkit.org
  • 7 edits in trunk

Week picker width is too small
https://bugs.webkit.org/show_bug.cgi?id=102766

Reviewed by Kent Tamura.

Source/WebCore:

The width of week picker was too small because we were forgetting about
the week number column when calculating the desired width.

No new tests. Covered by week-picker-appearance*.html.

  • Resources/pagepopups/calendarPicker.css:

(.week-mode .week-column): Needs to be table-cell.

  • Resources/pagepopups/calendarPicker.js:

(CalendarPicker.prototype.fixWindowSize):

LayoutTests:

  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/week-picker-appearance-step-expected.png:
  • platform/chromium/TestExpectations:
5:40 AM Changeset in webkit [135273] by Philippe Normand
  • 18 edits in trunk

[GTK] no volume slider in HTML5 media element controls
https://bugs.webkit.org/show_bug.cgi?id=97192

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2012-11-20
Reviewed by Philippe Normand.

r115829 was causing this regression so it was partially
reverted. The revert causes some small regressions, in the tests
but it is better to have the volume slider shown.

Source/WebCore:

  • css/mediaControlsGtk.css:

(audio::-webkit-media-controls-panel)
(video::-webkit-media-controls-panel): Partially reverted
r115829.

LayoutTests:

  • platform/gtk-wk2/TestExpectations: Updated because it causes

some new regressions

  • platform/gtk/TestExpectations: Updated because it causes some

new regressions

  • platform/gtk/media/audio-controls-rendering-expected.txt: Updated
  • platform/gtk/media/controls-after-reload-expected.txt: Updated
  • platform/gtk/media/controls-strict-expected.txt: Updated
  • platform/gtk/media/controls-styling-expected.txt: Updated
  • platform/gtk/media/controls-styling-strict-expected.txt: Updated
  • platform/gtk/media/controls-without-preload-expected.txt: Updated
  • platform/gtk/media/media-controls-clone-expected.txt: Updated
  • platform/gtk/media/video-controls-rendering-expected.txt: Updated
  • platform/gtk/media/video-display-toggle-expected.txt: Updated
  • platform/gtk/media/video-empty-source-expected.txt: Updated
  • platform/gtk/media/video-no-audio-expected.txt: Updated
  • platform/gtk/media/video-volume-slider-expected.txt: Updated
  • platform/gtk/media/video-zoom-controls-expected.txt: Updated
5:17 AM Changeset in webkit [135272] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebKit2

[Qt] Zoom logic confused by page and pinch resize
https://bugs.webkit.org/show_bug.cgi?id=102803

Reviewed by Kenneth Rohde Christiansen.

Clear the zoom-out stack after page resize, and ensure the zoom logic can still detect
zoom-out and zoom-back when the zoom-out stack is empty.

  • UIProcess/qt/PageViewportControllerClientQt.cpp:

(WebKit::PageViewportControllerClientQt::zoomToAreaGestureEnded):
(WebKit::PageViewportControllerClientQt::clearRelativeZoomState):
(WebKit::PageViewportControllerClientQt::setContentsScale):
(WebKit::PageViewportControllerClientQt::pinchGestureStarted):
(WebKit::PageViewportControllerClientQt::didChangeViewportAttributes):

  • UIProcess/qt/PageViewportControllerClientQt.h:

(PageViewportControllerClientQt):

3:36 AM Changeset in webkit [135271] by Antti Koivisto
  • 7 edits in trunk/Source/WebCore

Collect user style sheets in DocumentStyleSheetCollection
https://bugs.webkit.org/show_bug.cgi?id=102683

Reviewed by Andreas Kling.

Move the user stylesheet collection logic from StyleResolver to DocumentStyleSheetCollection.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::collectRulesFromUserStyleSheets):
(WebCore::collectCSSOMWrappers):

  • css/StyleResolver.h:

(StyleResolver):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::~DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::pageUserStyleSheet):
(WebCore::DocumentStyleSheetCollection::clearPageUserStyleSheet):
(WebCore::DocumentStyleSheetCollection::updatePageUserStyleSheet):
(WebCore::DocumentStyleSheetCollection::analyzeStyleSheetChange):
(WebCore::collectActiveStyleSheetsFromSeamlessParents):
(WebCore::DocumentStyleSheetCollection::updateStyleResolver):

Factor the StyleResolver updating code to function.

(WebCore):
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):

Collect the user style sheets. Some renaming and other minor refactoring.

(WebCore::DocumentStyleSheetCollection::reportMemoryUsage):

  • dom/DocumentStyleSheetCollection.h:

(WebCore::DocumentStyleSheetCollection::activeUserStyleSheets):

Add activeUserStyleSheets vector that contains all user stylesheets from different sources,
similar to activeAuthorStyleSheets.

(DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::documentUserStyleSheets):

3:24 AM Changeset in webkit [135270] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove unneeded optimization in Element::isInTopLayer
https://bugs.webkit.org/show_bug.cgi?id=102772

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-20
Reviewed by Andreas Kling.

There's no reason to worry about calling elementRareData() multiple
times in this non performance sensitive code path as it's only used
in HTMLDialogElement's showModal and close methods.

No new tests, just simplification.

  • dom/Element.cpp:

(WebCore::Element::setIsInTopLayer):

3:18 AM Changeset in webkit [135269] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Simplify Element::isSpellCheckingEnabled
https://bugs.webkit.org/show_bug.cgi?id=102779

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-20
Reviewed by Andreas Kling.

isSpellCheckingEnabled contains logic that duplicates parentOrHostElement
and can be simplified by just calling that.

No new tests, just simplification.

  • dom/Element.cpp:

(WebCore::Element::isSpellCheckingEnabled):

3:09 AM Changeset in webkit [135268] by kihong.kwon@samsung.com
  • 7 edits in trunk/Source/WebCore

Apply DeviceController as parent class of DeviceMotionController.
https://bugs.webkit.org/show_bug.cgi?id=102578

Reviewed by Hajime Morita.

DeviceController needs to be applied as parent class of DeviceMotionController
because DeviceController which is extracted as parent class of
DeviceMotionController and DeviceOrientationController is already added.
Therefore duplicated implementation can be removed.

Covered by existing tests.

  • dom/DeviceMotionClient.h:
  • dom/DeviceMotionController.cpp:

(WebCore::DeviceMotionController::DeviceMotionController):
(WebCore::DeviceMotionController::didChangeDeviceMotion):
(WebCore::DeviceMotionController::deviceMotionClient):
(WebCore::DeviceMotionController::hasLastData):
(WebCore::DeviceMotionController::getLastEvent):
(WebCore::DeviceMotionController::from):
(WebCore):

  • dom/DeviceMotionController.h:

(WebCore):
(WebCore::DeviceMotionController::~DeviceMotionController):
(DeviceMotionController):

  • dom/Document.cpp:

Remove all implementations which are related DeviceOrientationEvnet and DeviceMotionEvent.
Because DeviceController checks suspend and stop status of active dom object before dispatchEvent.
(WebCore::Document::suspendActiveDOMObjects):
(WebCore::Document::resumeActiveDOMObjects):

  • loader/EmptyClients.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::addEventListener):
(WebCore::DOMWindow::removeEventListener):
(WebCore::DOMWindow::removeAllEventListeners):

2:24 AM Changeset in webkit [135267] by commit-queue@webkit.org
  • 2 edits
    2 moves
    1 add in trunk/Tools

[EFL][GTK]Sharing accessibility support in WebKitTestRunner.
https://bugs.webkit.org/show_bug.cgi?id=99011

Patch by Mateusz Leszko <m.leszko@samsung.com> on 2012-11-20
Reviewed by Martin Robinson.

Accessibility files from gtk folder are moved to atk folder due to common implementation. Event Type naming changed to default, from Gtk to ATK.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp: Renamed from Tools/WebKitTestRunner/InjectedBundle/gtk/AccessibilityControllerGtk.cpp.

(WTR::AccessibilityController::logAccessibilityEvents):

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: Renamed from Tools/WebKitTestRunner/InjectedBundle/gtk/AccessibilityUIElementGtk.cpp.
1:56 AM Changeset in webkit [135266] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Remove V8ParameterBase
https://bugs.webkit.org/show_bug.cgi?id=102774

Reviewed by Adam Barth.

V8ParameterBase is a redundant indirection.
We can flatten methods of V8ParameterBase to V8Parameter.

No tests. No change in behavior.

  • bindings/v8/V8StringResource.h:

(WebCore::V8Parameter::V8Parameter):
(V8Parameter):
(WebCore::V8Parameter::toString):
(WebCore::::prepare):

1:21 AM Changeset in webkit [135265] by yurys@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Mark inspector/profiler/cpu-profiler-profiling-without-inspector.html
as crashing.

  • platform/chromium/TestExpectations:
12:20 AM Changeset in webkit [135264] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

webkitpy unit tests should run serially when checking code coverage
https://bugs.webkit.org/show_bug.cgi?id=102693

Reviewed by Dirk Pranke.

When checking code coverage, the unit tests should not be run in parallel
as this causes the tracing functions (set via sys.settrace in the coverage
module) being overriden, resulting in incorrect coverage reports.

  • Scripts/webkitpy/test/main.py:

(Tester._run_tests):

12:16 AM Changeset in webkit [135263] by commit-queue@webkit.org
  • 12 edits
    4 adds in trunk

Use localized date-time format in datetime input
https://bugs.webkit.org/show_bug.cgi?id=102769

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-11-20
Reviewed by Kent Tamura.

Source/WebCore:

Move the implementation of Locale::dateTimeFormatWithSeconds and Locale::dateTimeFormatWithoutSeconds
to its subclasses and use platform-specific methods to get date-time pattern.
Because Windows does not provide an API to get date-time pattern. We use fixed "{date} {time}"
pattern for Windows.

Test: fast/forms/datetime/datetime-appearance-l10n.html

  • platform/text/LocaleICU.cpp:

(WebCore::LocaleICU::initializeDateTimeFormat): Retrieve datetime formats too.
(WebCore::LocaleICU::dateTimeFormatWithSeconds): Added.
(WebCore):
(WebCore::LocaleICU::dateTimeFormatWithoutSeconds): Added.

  • platform/text/LocaleICU.h:

(LocaleICU): Add m_dateTimeFormatWithSeconds and m_dateTimeFormatWithoutSeconds.

  • platform/text/LocaleNone.cpp:

(LocaleNone):
(WebCore::LocaleNone::dateTimeFormatWithSeconds): Added. Always returns "dd/MM/yyyyy HH:mm:ss".
(WebCore):
(WebCore::LocaleNone::dateTimeFormatWithoutSeconds): Added. Always returns "dd/MM/yyyyy HH:mm".

  • platform/text/PlatformLocale.cpp:

(WebCore): Remove dateTimeFormatWithSeconds() and dateTimeFormatWithoutSeconds() as these are now pure virtual.

  • platform/text/PlatformLocale.h:

(Locale): Make dateTimeFormatWithSeconds() and dateTimeFormatWithoutSeconds() pure virtual.

  • platform/text/mac/LocaleMac.h:

(LocaleMac): Add m_dateTimeFormatWithSeconds and m_dateTimeFormatWithoutSeconds.

  • platform/text/mac/LocaleMac.mm:

(WebCore::LocaleMac::dateTimeFormatterWithSeconds): Added.
(WebCore):
(WebCore::LocaleMac::dateTimeFormatterWithoutSeconds): Added.
(WebCore::LocaleMac::dateTimeFormatWithSeconds): Added.
(WebCore::LocaleMac::dateTimeFormatWithoutSeconds): Added.

  • platform/text/win/LocaleWin.cpp:

(WebCore::LocaleWin::dateTimeFormatWithSeconds): Copied from original Locale::dateTimeFormatWithSeconds().
(WebCore):
(WebCore::LocaleWin::dateTimeFormatWithoutSeconds): Copied from original Locale::dateTimeFormatWithoutSeconds().

  • platform/text/win/LocaleWin.h:

(LocaleWin): Add m_dateTimeFormatWithSeconds and m_dateTimeFormatWithoutSeconds.

LayoutTests:

  • fast/forms/datetime/datetime-appearance-l10n-expected.txt: Added.
  • fast/forms/datetime/datetime-appearance-l10n.html: Added. We can confirm vi-vn have time-date ordering.
  • platform/chromium-mac/fast/forms/datetime/datetime-appearance-l10n-expected.png: Added.
  • platform/chromium/TestExpectations:
12:12 AM Changeset in webkit [135262] by vsevik@chromium.org
  • 2 edits in branches/chromium/1312/Source/WebCore/inspector/front-end

Merge 134944 - Web Inspector: Workaround to show shortcuts for panels that hasn't been loaded.
https://bugs.webkit.org/show_bug.cgi?id=102488

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-11-16
Reviewed by Vsevolod Vlasov.

Panels are lazily loaded / instantiated.
Panel constructors register keyboard shortcuts.

When user open shortcuts screen all panel should be loaded.
Otherwise some shortcuts will be missing.

  • inspector/front-end/ShortcutsScreen.js: Added callback invokation.
  • inspector/front-end/inspector.js:

Provided callback that loads all panels.

TBR=commit-queue@webkit.org
BUG=160943
Review URL: https://codereview.chromium.org/11413082

12:09 AM Changeset in webkit [135261] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r135257.
http://trac.webkit.org/changeset/135257
https://bugs.webkit.org/show_bug.cgi?id=102777

Broke Chromium Debug compilation (Requested by yurys on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-20

  • bindings/v8/DOMDataStore.h:

(WebCore::DOMDataStore::getNode):

12:06 AM Changeset in webkit [135260] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Revert r133149: breaks revision reverting
https://bugs.webkit.org/show_bug.cgi?id=102672

Reviewed by Yury Semikhatsky.

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame):
(WebInspector.JavaScriptSourceFrame.prototype._onFormattedChanged):
(WebInspector.JavaScriptSourceFrame.prototype._onWorkingCopyCommitted):
(WebInspector.JavaScriptSourceFrame.prototype._innerSetContent):

Nov 19, 2012:

11:56 PM Changeset in webkit [135259] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

[Qt][Win] Unreviewed speculative buildfix after r135217.

  • platform/win/WindowsExtras.h:
11:49 PM Changeset in webkit [135258] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix Chromium Win compilation after r135255.
https://bugs.webkit.org/show_bug.cgi?id=97803

  • WebCore.gypi: removed reference to platform/wince/DragDataWince.cpp which

was deleted in the aforementioned change.

11:39 PM Changeset in webkit [135257] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Merge getCachedWrapper(Node*) into DOMDataStore
https://bugs.webkit.org/show_bug.cgi?id=102158

Reviewed by Adam Barth.

A follow-up patch for r135230. This patch adds a correct ASSERTION.

No tests. No change in behavior.

  • bindings/v8/DOMDataStore.h:

(WebCore::DOMDataStore::getNode):

11:38 PM Changeset in webkit [135256] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[JSC] Replace $implClassName with $interfaceName in CodeGeneratorJS.pm
https://bugs.webkit.org/show_bug.cgi?id=102757

Reviewed by Adam Barth.

In CodeGeneratorJS.pm $implClassName and $interfaceName are
equivalent. We're using them interchangeably. We should replace
$implClassName with $interfaceName.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorJS.pm:

(AddClassForwardIfNeeded):
(GenerateGetOwnPropertySlotBody):
(GenerateGetOwnPropertyDescriptorBody):
(GenerateHeader):
(GenerateOverloadedFunction):
(GenerateImplementation):
(GenerateParametersCheck):
(GenerateImplementationFunctionCall):
(NativeToJSValue):

11:13 PM Changeset in webkit [135255] by Patrick Gansterer
  • 3 edits
    1 delete in trunk/Source/WebCore

Port DragDataWin.cpp to WinCE
https://bugs.webkit.org/show_bug.cgi?id=97803

Reviewed by Brent Fulgham.

Add two simple #if OS(WINCE) to DragDataWin.cpp, so it can be used by the WinCE port too.

  • PlatformWinCE.cmake:
  • platform/win/DragDataWin.cpp:

(WebCore::DragData::containsFiles):
(WebCore::DragData::numberOfFiles):
(WebCore::DragData::asFilenames):

  • platform/wince/DragDataWinCE.cpp: Removed.
10:51 PM Changeset in webkit [135254] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Web Inspector] This patch makes script line number search-able in Timeline panel.
https://bugs.webkit.org/show_bug.cgi?id=101910.

Patch by Pan Deng <pan.deng@intel.com> on 2012-11-19
Reviewed by Pavel Feldman.

Script line number is visible in Timeline panel, however, not search-able. This patch makes it search-able.

No new tests.

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordListRow.testContentMatching):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.Record.prototype._generatePopupContentWithImagePreview):
(WebInspector.TimelinePresentationModel.Record.prototype._refreshDetails):
(WebInspector.TimelinePresentationModel.Record.prototype.detailsNode):
(WebInspector.TimelinePresentationModel.Record.prototype._createSpanWithText):
(WebInspector.TimelinePresentationModel.Record.prototype._getRecordDetails):

10:33 PM Changeset in webkit [135253] by yurys@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Fix Chromium Win compilation after r135196.
https://bugs.webkit.org/show_bug.cgi?id=102021

  • tests/DeferredImageDecoderTest.cpp: changed char to unsigned char in the array

declaration to avoid 'warning C4309' on MSVS when initializing from hex literals.
(WebCore):

10:28 PM Changeset in webkit [135252] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove unneeded null check in NodeRendererFactory::createRendererIfNeeded
https://bugs.webkit.org/show_bug.cgi?id=102765

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-19
Reviewed by Ojan Vafai.

If parentRenderer() was null then we return early from
createRendererIfNeeded() because shouldCreateRenderer() will return false
so there's no reason to check for it again.

Additionally if either parentRenderer() or style() is null then
implementations of rendererIsNeeded() will crash, so add asserts to
make this assumption more clear.

No new tests, just simplification.

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRendererFactory::createRendererIfNeeded):

10:09 PM Changeset in webkit [135251] by shinyak@chromium.org
  • 7 edits in trunk/Source/WebCore

[Refactoring] Remove WebCore::isInsertionPoint(Node*)
https://bugs.webkit.org/show_bug.cgi?id=102756

Reviewed by Hajime Morita.

Now that WebCore::isInsertionPoint(Node* node) does nothing special. We can remove this.

No new tests, simple refactoring.

  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::ComposedShadowTreeWalker::traverseNodeEscapingFallbackContents):

  • dom/ContainerNode.cpp:

(WebCore::childAttachedAllowedWhenAttachingChildren):

  • html/shadow/ContentDistributor.cpp:

(WebCore::ContentDistributor::invalidate):

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::isActive):

  • html/shadow/InsertionPoint.h:

(WebCore::toInsertionPoint):
(WebCore::isActiveInsertionPoint):
(WebCore::isLowerEncapsulationBoundary):
(WebCore::parentNodeForDistribution):

  • testing/Internals.cpp:

(WebCore::Internals::isValidContentSelect):

10:08 PM Changeset in webkit [135250] by apavlov@chromium.org
  • 1 edit in branches/chromium/1312/Source/WebCore/inspector/InspectorPageAgent.cpp

Merge 134917 - Web Inspector: [Overrides] Device metrics get reset on navigation, yet remain in the Overrides view
https://bugs.webkit.org/show_bug.cgi?id=102467

Reviewed by Pavel Feldman.

Restore the device metrics overrides from the inspector cookie in InspectorPageAgent::restore().
Drive-by: move the script execution and FPS counter display state restoration from enable() into restore(),
so that they will get restored only upon page navigation, not upon any agent enablement.

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::restore): Restore device metrics overrides, script execution and FPS counter display state.
(WebCore::InspectorPageAgent::enable): Don't restore script execution and FPS counter display state on any enablement.

TBR=apavlov@chromium.org
Review URL: https://codereview.chromium.org/11416095

9:49 PM Changeset in webkit [135249] by shinyak@chromium.org
  • 6 edits in trunk

[Refactoring] Remove shadowPseudoId() and use setPseudo() in <progress> ElementShadow.
https://bugs.webkit.org/show_bug.cgi?id=101703

Reviewed by Hajime Morita.

Source/WebCore:

We're migrating shadowPseudoId() to pseudo(). We remove shadowPseudoId() from HTMLKeygenElement and use
setPseudo()/pseudo() instead.

No new tests, simple refactoring.

  • html/shadow/ProgressShadowElement.cpp:

(WebCore::ProgressInnerElement::ProgressInnerElement):

  • html/shadow/ProgressShadowElement.h:

(ProgressInnerElement):
(WebCore::ProgressBarElement::ProgressBarElement):
(ProgressBarElement):
(WebCore::ProgressValueElement::ProgressValueElement):

LayoutTests:

  • editing/style/apply-style-atomic-expected.txt:
  • fast/dom/HTMLProgressElement/progress-element-markup-expected.txt:
9:38 PM Changeset in webkit [135248] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] Unused parameters on CoordinatedGraphicsLayer.cpp
https://bugs.webkit.org/show_bug.cgi?id=102760

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-11-19
Reviewed by Laszlo Gombos.

Because the 'platformLayer' parameter is not used when !USE(GRAPHICS_SURFACE),
use UNUSED_PARAM macro to fix build warning -Wunused-parameter

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):

9:37 PM Changeset in webkit [135247] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove support for ARMv7 errata from the jump code
https://bugs.webkit.org/show_bug.cgi?id=102759

Reviewed by Oliver Hunt.

The jump replacement code was wrong to begin with since it wasn't doing
a cache flush on the inserted padding. And, to my knowledge, we don't need
this anymore, so this patch removes all errata code from the ARMv7 port.

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::computeJumpType):
(JSC::ARMv7Assembler::replaceWithJump):
(JSC::ARMv7Assembler::maxJumpReplacementSize):
(JSC::ARMv7Assembler::canBeJumpT3):
(JSC::ARMv7Assembler::canBeJumpT4):

9:34 PM Changeset in webkit [135246] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Add fallback for WebkitTestRunner if opengl is not available.
https://bugs.webkit.org/show_bug.cgi?id=102704

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-11-19
Reviewed by Laszlo Gombos.

Add fallback to non-opengl evas engine in WebkitTestRunner if opengl is not available.

  • WebKitTestRunner/efl/PlatformWebViewEfl.cpp:

(WTR::initEcoreEvas):

9:24 PM Changeset in webkit [135245] by yurys@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Reenable webaudio/biquad-getFrequencyResponse.html test as it should pass after r129418
https://bugs.webkit.org/show_bug.cgi?id=97439

  • platform/chromium/TestExpectations:
9:00 PM Changeset in webkit [135244] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix Chromium Debug compilation after r135230.
https://bugs.webkit.org/show_bug.cgi?id=102158

Removed ASSERT that used instance field in a static method.

  • bindings/v8/DOMDataStore.h:

(WebCore::DOMDataStore::getWrapperFromObject):

8:55 PM Changeset in webkit [135243] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[Blackberry] When a frame is being detached, cancel all its network jobs.
https://bugs.webkit.org/show_bug.cgi?id=102758

Patch by Chris Guan <chris.guan@torchmobile.com.cn> on 2012-11-19
Reviewed by George Staikos.

I use FrameDestructionObserver to refactor Networkjob code.
NetworkJob is inheriting from FrameDestructionObserver to be
aware of frame's destroyed. When a frame is being detached,
the willDetachPage() can be called in which we can cancel
the job. This patch reverted the fix for RIM PR134207 as well.

Manually test is on
"http://www.reuters.com/article/2012/01/27/us-greece-idUSTRE80P0DE20120127"
which triggers a ping loader.

No behavior changed, no new layout tests.

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::NetworkJob):
(WebCore::NetworkJob::initialize):
(WebCore::NetworkJob::handleNotifyHeaderReceived):
(WebCore::NetworkJob::startNewJobWithRequest):
(WebCore::NetworkJob::frameDestroyed):
(WebCore):
(WebCore::NetworkJob::willDetachPage):

  • platform/network/blackberry/NetworkJob.h:

(NetworkJob):

  • platform/network/blackberry/NetworkManager.cpp:

(WebCore::NetworkManager::startJob):

  • platform/network/blackberry/NetworkManager.h:

(NetworkManager):

  • platform/network/blackberry/ResourceHandleBlackBerry.cpp:

(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::loadResourceSynchronously):

8:45 PM Changeset in webkit [135242] by commit-queue@webkit.org
  • 15 edits
    10 adds in trunk

Implement the new stacking layer needed by the Fullscreen API and the new <dialog> element
https://bugs.webkit.org/show_bug.cgi?id=84796

Patch by Matt Falkenhagen <falken@chromium.org> on 2012-11-19
Reviewed by Julien Chaffraix.

Source/WebCore:

This adds the top layer element stack to Document. The Fullscreen
specification mandates that we track the ordering of the DOM nodes in
the top layer, not the renderers. That makes it hard to implement on
the rendering side only.

Elements in the top layer get a layer. Layers in the top layer are
added to the root layer's child list after normal layers and in the
order of the top layer stack. This way, the top layer appears above
all other stacking contexts and in the desired order.

In addition, top layer renderers are added as children of RenderView
in top layer order. This is to satisfy requirements such as the
containing block of an element in the top layer is the initial
containing block. It also allows RenderLayer to know the proper
stacking order of the layers without going directly from the top layer
elements to their layers.

So far, only modal dialog elements can be added to the top layer.
The plan is to make the Fullscreen API also use the top layer.

Tests: fast/dom/HTMLDialogElement/top-layer-containing-block.html

fast/dom/HTMLDialogElement/top-layer-display-none.html
fast/dom/HTMLDialogElement/top-layer-nesting.html
fast/dom/HTMLDialogElement/top-layer-stacking-dynamic.html
fast/dom/HTMLDialogElement/top-layer-stacking.html

  • WebCore.exp.in:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle): Elements in the top layer have a stacking context.

  • dom/Document.cpp:

(WebCore):
(WebCore::Document::addToTopLayer):
(WebCore::Document::removeFromTopLayer):

  • dom/Document.h:

(Document):
(WebCore::Document::topLayerElements): Add the top layer element stack to Document.

  • dom/Element.cpp:

(WebCore::Element::removedFrom):
(WebCore):
(WebCore::Element::isInTopLayer):
(WebCore::Element::setIsInTopLayer):

  • dom/Element.h:
  • dom/ElementRareData.h:

(ElementRareData):

  • dom/Node.cpp:

(WebCore::Node::detach): Add an exception to the assert since top layer elements and their descendants are moved from their
regular position in the render tree.

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):
(NodeRareData):
(WebCore::NodeRareData::isInTopLayer):
(WebCore::NodeRareData::setIsInTopLayer):

  • dom/NodeRenderingContext.cpp:

(WebCore):
(WebCore::adjustInsertionPointForTopLayerElement):
(WebCore::NodeRendererFactory::createRendererIfNeeded): Add renderers for top layer elements as children of RenderView, and
in top layer stacking order.

  • html/HTMLDialogElement.cpp:

(WebCore::HTMLDialogElement::close):
(WebCore::HTMLDialogElement::showModal):

  • rendering/RenderLayer.cpp:

(WebCore):
(WebCore::RenderLayer::isInTopLayer):
(WebCore::RenderLayer::isInTopLayerSubtree):
(WebCore::RenderLayer::rebuildZOrderLists): Add the top layer stack after normal layer collection.
(WebCore::RenderLayer::collectLayers): Avoid adding layers for top layer elements during normal layer collection.

  • rendering/RenderLayer.h:

(RenderLayer):

LayoutTests:

Add tests for top layer stacking and rendering.

  • fast/dom/HTMLDialogElement/top-layer-containing-block-expected.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-containing-block.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-display-none-expected.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-display-none.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-nesting-expected.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-nesting.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-stacking-dynamic-expected.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-stacking-dynamic.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-stacking-expected.html: Added.
  • fast/dom/HTMLDialogElement/top-layer-stacking.html: Added.
8:37 PM Changeset in webkit [135241] by yurys@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Fix lint errors on chromium TextExpectations after r135205.

  • platform/chromium/TestExpectations:
8:29 PM Changeset in webkit [135240] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

In CodeGeneratorObj.pm we should rename $dataNode to $interface.
https://bugs.webkit.org/show_bug.cgi?id=102749

Reviewed by Adam Barth.

$dataNode is misnamed. It should be renamed to $interface.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorObjC.pm:

(GenerateInterface):
(GetParentImplClassName):
(GetParentAndProtocols):
(GenerateHeader):
(GenerateImplementation):

8:26 PM Changeset in webkit [135239] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

In CodeGeneratorV8.pm, we should rename $dataNode to $interface
https://bugs.webkit.org/show_bug.cgi?id=102747

Reviewed by Adam Barth.

$dataNode is misnamed. It should be $interface.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateInterface):
(NeedsCustomOpaqueRootForGC):
(GetGenerateIsReachable):
(GetCustomIsReachable):
(GenerateOpaqueRootForGC):
(GenerateHeader):
(GetInternalFields):
(GenerateHeaderCustomInternalFieldIndices):
(GenerateHeaderNamedAndIndexedPropertyAccessors):
(GenerateHeaderCustomCall):
(IsConstructable):
(GenerateConstructorGetter):
(GenerateNormalAttrGetter):
(GenerateReplaceableAttrSetter):
(GenerateNormalAttrSetter):
(GenerateOverloadedFunctionCallback):
(GenerateFunctionCallback):
(GenerateArgumentsCountCheck):
(GenerateOverloadedConstructorCallback):
(GenerateSingleConstructorCallback):
(GenerateConstructorCallback):
(GenerateEventConstructorCallback):
(GenerateTypedArrayConstructorCallback):
(GenerateNamedConstructorCallback):
(GenerateBatchedAttributeData):
(IsStandardFunction):
(GenerateNonStandardFunction):
(GenerateImplementationIndexer):
(GenerateImplementationNamedPropertyGetter):
(GenerateImplementationCustomCall):
(GenerateImplementationMasqueradesAsUndefined):
(GenerateImplementation):
(GenerateHeaderContentHeader):
(GenerateImplementationContentHeader):
(GenerateCallbackHeader):
(GenerateCallbackImplementation):
(BaseInterfaceName):
(GenerateToV8Converters):
(GetNativeTypeForConversions):
(GetTypeNameOfExternalTypedArray):
(WriteData):

8:19 PM Changeset in webkit [135238] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Move in animation should be disabled until the calendar picker is loaded.
https://bugs.webkit.org/show_bug.cgi?id=102661

Reviewed by Kent Tamura.

On weeks where the first day is in the previous month (e.x. 2013-W01)
the move in animation happens when you open the calendar picker. This
patch disables the move in animation until the calendar picker is fully
loaded.

No new tests.

  • Resources/pagepopups/calendarPicker.js:

(CalendarPicker):
(CalendarPicker.prototype._handleWindowResize):
(DaysTable.prototype._startMoveInAnimation):

8:18 PM Changeset in webkit [135237] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Clean up loop in NodeRenderingContext::nextRenderer and previousRenderer
https://bugs.webkit.org/show_bug.cgi?id=102743

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-19
Reviewed by Hajime Morita.

Clean up while (true) loops in NodeRenderingContext reducing the
amount of code and the need for ASSERT_NOT_REACHED.

No new tests, just simplifcation.

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):

8:10 PM Changeset in webkit [135236] by shinyak@chromium.org
  • 5 edits in trunk

[Shadow] attribute pseudo should return empty string instead of null when nothing is specified.
https://bugs.webkit.org/show_bug.cgi?id=102753

Reviewed by Hajime Morita.

Source/WebCore:

The ShadowDOM spec is changed so that attribute 'pseudo' returns empty string instead of null when
no value is set.

Test: fast/dom/shadow/pseudo-attribute.html

  • dom/Element.idl:

LayoutTests:

  • fast/dom/shadow/pseudo-attribute-expected.txt:
  • fast/dom/shadow/pseudo-attribute.html:
7:27 PM Changeset in webkit [135235] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

In CodeGeneratorGObject.pm we should rename $dataNode to $interface
https://bugs.webkit.org/show_bug.cgi?id=102751

Reviewed by Adam Barth.

$dataNode is misnamed. It should be $interface.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorGObject.pm:

(GetParentClassName):
(GetParentGObjType):
(GenerateProperties):
(GenerateFunctions):
(GenerateCFile):
(GenerateEventTargetIface):
(Generate):
(WriteData):
(GenerateInterface):

7:15 PM Changeset in webkit [135234] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

In CodeGenerator.pm we should rename $dataNode to $interface
https://bugs.webkit.org/show_bug.cgi?id=102754

Reviewed by Adam Barth.

$dataNode is misnamed. It should be $interface.

No tests. No change in behavior.

  • bindings/scripts/CodeGenerator.pm:

(ForAllParents):
(AddMethodsConstantsAndAttributesFromParentInterfaces):
(FindSuperMethod):
(IsConstructorTemplate):
(LinkOverloadedFunctions):
(GenerateCompileTimeCheckForEnumsIfNeeded):
(GetVisibleInterfaceName):
(IsSubType):

7:00 PM Changeset in webkit [135233] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Block Zoom picks wrong block
https://bugs.webkit.org/show_bug.cgi?id=102728

Patch by Genevieve Mak <gmak@rim.com> on 2012-11-19
Reviewed by Rob Buis.

Reviewed Internally by Jakob Petsovits
Remove transform missed in previous commit for
https://bugs.webkit.org/show_bug.cgi?id=101608
PR #247198

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::nodeForZoomUnderPoint):

6:58 PM Changeset in webkit [135232] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

In CodeGeneratorCPP.pm we should rename $dataNode to $interface
https://bugs.webkit.org/show_bug.cgi?id=102752

Reviewed by Adam Barth.

$dataNode is misnamed. It should be $interface.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorCPP.pm:

(GenerateInterface):
(GetParentImplClassName):
(GetParent):
(GenerateHeader):
(GenerateImplementation):

6:45 PM Changeset in webkit [135231] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

In CodeGeneratorJS.pm we should rename $dataNode to $interface
https://bugs.webkit.org/show_bug.cgi?id=102748

Reviewed by Adam Barth.

$dataNode is misnamed. It should be $interface.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateInterface):
(GetParentClassName):
(GetGenerateIsReachable):
(GetCustomIsReachable):
(GenerateGetOwnPropertySlotBody):
(GenerateGetOwnPropertyDescriptorBody):
(GenerateHeaderContentHeader):
(GenerateImplementationContentHeader):
(ShouldGenerateToJSDeclaration):
(ShouldGenerateToJSImplementation):
(GenerateHeader):
(GenerateAttributesHashTable):
(GenerateOverloadedFunction):
(GenerateImplementation):
(GenerateArgumentsCountCheck):
(GenerateParametersCheck):
(GenerateCallbackHeader):
(GenerateCallbackImplementation):
(WriteData):
(GenerateConstructorDeclaration):
(GenerateConstructorDefinition):
(IsConstructable):

6:39 PM Changeset in webkit [135230] by abarth@webkit.org
  • 9 edits in trunk/Source/WebCore

[V8] Merge getCachedWrapper(Node*) into DOMDataStore
https://bugs.webkit.org/show_bug.cgi?id=102158

Reviewed by Eric Seidel.

This patch is an incremental step towards fully merging the Node code
path with the general code path. After this patch, at least Nodes flow
through the same class.

  • Modules/indexeddb/IDBTransactionCoordinator.h:
  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateToV8Converters):

  • bindings/v8/DOMDataStore.h:

(WebCore::DOMDataStore::getNode):
(DOMDataStore):
(WebCore::DOMDataStore::getWrapperFromObject):

  • bindings/v8/DOMWrapperWorld.cpp:

(WebCore::DOMWrapperWorld::DOMWrapperWorld):
(WebCore):

  • bindings/v8/DOMWrapperWorld.h:

(WebCore):
(DOMWrapperWorld):

  • bindings/v8/V8DOMWrapper.h:

(V8DOMWrapper):

6:18 PM Changeset in webkit [135229] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

In the IDL parser, we should rename $dataNode to $interface
https://bugs.webkit.org/show_bug.cgi?id=102746

Reviewed by Adam Barth.

$dataNode is misnamed. It should be $interface.

No tests. No change in behavior.

  • bindings/scripts/IDLParser.pm:

(parseInterface):
(parseException):
(parseAttributeOrOperationRest):
(parseOperationOrIterator):
(parseSpecialOperation):
(parseInterfaceOld):
(parseExceptionOld):
(parseAttributeOrOperationOrIteratorOld):
(parseAttributeOrOperationRestOld):
(applyMemberList):
(applyExtendedAttributeList):

  • bindings/scripts/generate-bindings.pl:
  • bindings/scripts/preprocess-idls.pl:

(checkIDLAttributes):

6:16 PM Changeset in webkit [135228] by adamk@chromium.org
  • 13 edits
    4 adds in trunk

MutationObserver wrapper should not be collected while still observing
https://bugs.webkit.org/show_bug.cgi?id=102328

Reviewed by Adam Barth.

Source/WebCore:

Use the new opaqueRootForGC helper in V8GCController to put each
MutationObserver wrapper in the same object group as the nodes it's
observing.

Only includes V8 impl for now, JSC impl coming soon.

Tests: fast/mutation/observer-wrapper-dropoff-transient.html

fast/mutation/observer-wrapper-dropoff.html

  • bindings/v8/V8GCController.cpp: Add custom code for MutationObserver

with a FIXME to move this out once we update the opaque roots API.

  • dom/MutationObserver.cpp:

(WebCore::MutationObserver::getObservedNodes): Plumbing to expose the observed nodes
to the GC controller.
(WebCore):

  • dom/MutationObserver.h:
  • dom/MutationObserverRegistration.cpp:

(WebCore::MutationObserverRegistration::addRegistrationNodesToSet): More plumbing.
(WebCore):

  • dom/MutationObserverRegistration.h:

(MutationObserverRegistration):

LayoutTests:

Tests showing that observers are kept alive, both in the simple case
and in the transient registered observer case (where the original
registration node is GCed but the transient observation node is still
alive).

  • fast/mutation/observer-wrapper-dropoff-expected.txt: Added.
  • fast/mutation/observer-wrapper-dropoff-transient-expected.txt: Added.
  • fast/mutation/observer-wrapper-dropoff-transient.html: Added.
  • fast/mutation/observer-wrapper-dropoff.html: Added.
6:11 PM Changeset in webkit [135227] by tony@chromium.org
  • 9 edits in trunk

Move more non-settings out of InternalSettings
https://bugs.webkit.org/show_bug.cgi?id=102711

Reviewed by Adam Barth.

Source/WebCore:

Remove userPreferredLanguages, setUserPreferredLanguages and allowRoundingHacks
from internal.settings since they are already exposed by window.internals (in
fact, no one calls the internal.settings version).

Move setUsesOverlayScrollbars from internals.settings to internals because it is
a global (static) setting and not tied to the lifetime of the Settings object.

No new tests, there should be no behavior change since this is a refactor.

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::reset): Remove custom reset code.
(WebCore::InternalSettings::setUsesOverlayScrollbars): Add exception code handling to make it more consistent with other settings setters.

  • testing/InternalSettings.h:
  • testing/InternalSettings.idl: Remove unnecessary methods.
  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState): Reset userPreferredLanguages, allowRoundingHacks and overlay scrollbars.
(WebCore::Internals::userPreferredLanguages): Don't go through InternalSettings.
(WebCore::Internals::setUserPreferredLanguages): Don't go through InternalSettings.
(WebCore::Internals::setUsesOverlayScrollbars): Moved from InternalsSettings.
(WebCore::Internals::allowRoundingHacks): Don't go through InternalSettings.

LayoutTests:

Move static values out of InternalSettings.

  • fast/scrolling/scrollbar-tickmarks-hittest.html: Move setUsesOverlayScrollbars to internals.
6:10 PM Changeset in webkit [135226] by dgrogan@chromium.org
  • 5 edits in trunk

IndexedDB: Complex series of opens/deleteDatabase fails an ASSERT
https://bugs.webkit.org/show_bug.cgi?id=101810

Reviewed by Tony Chang.

Source/WebCore:

Tests - storage/indexeddb/deletedatabase-delayed-by-versionchange.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
The condition tested by this assert is a valid state.

LayoutTests:

Removed use of setVersion. Surprisingly straightforward conversion
given how gnarly this test is.

  • storage/indexeddb/deletedatabase-delayed-by-versionchange-expected.txt:
  • storage/indexeddb/resources/deletedatabase-delayed-by-versionchange.js:

(h1OpenSuccess.h1.onversionchange):
(h1OpenSuccess.request.onsuccess.h2OpenSuccess.h2.onversionchange):
(h1OpenSuccess.request.onsuccess.h2OpenSuccess.request.onsuccess):
(h1OpenSuccess.request.onsuccess.h2OpenSuccess.request.onblocked.h3Blocked.request.onsuccess):
(h1OpenSuccess.request.onsuccess.h2OpenSuccess.request.onblocked):
(h1OpenSuccess.request.onsuccess.h2OpenSuccess.request.onupgradeneeded.h3OnUpgradeneeded.transaction.oncomplete):
(h1OpenSuccess.request.onsuccess.h2OpenSuccess.request.onupgradeneeded):
(h1OpenSuccess.request.onsuccess):
(h1OpenSuccess):

6:06 PM Changeset in webkit [135225] by Patrick Gansterer
  • 2 edits in trunk/Source/JavaScriptCore

[CMake] Create JavaScriptCore ForwardingHeaders
https://bugs.webkit.org/show_bug.cgi?id=92665

Reviewed by Brent Fulgham.

When using CMake to build the Windows port, we need
to generate the forwarding headers with it too.

  • CMakeLists.txt:
6:03 PM Changeset in webkit [135224] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: [JSC] worker debugger shouldn't stop for "willExecuteProgram" instruction
https://bugs.webkit.org/show_bug.cgi?id=102637

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-11-19
Reviewed by Timothy Hatcher.

Override the interface "willExecuteProgram" to let WorkerScriptDebugServer to avoid to stop for it.

No new DRT test case. Sorry, so far it seems impossible to write a case to controle the popupped
worker inspector window.

  • bindings/js/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::createCallFrame):
(WebCore::ScriptDebugServer::callEvent):
(WebCore::ScriptDebugServer::willExecuteProgram):

  • bindings/js/ScriptDebugServer.h:

(ScriptDebugServer):

  • bindings/js/WorkerScriptDebugServer.cpp:

(WebCore::WorkerScriptDebugServer::willExecuteProgram):
(WebCore):

  • bindings/js/WorkerScriptDebugServer.h:

(WorkerScriptDebugServer):

6:02 PM Changeset in webkit [135223] by dgrogan@chromium.org
  • 5 edits
    6 deletes in trunk/LayoutTests

IndexedDB: last setVersion excision batch
https://bugs.webkit.org/show_bug.cgi?id=102713

Reviewed by Tony Chang.

  • storage/indexeddb/resources/setversion-blocked-by-versionchange-close-in-blocked.js: Removed. The crucial part of this test was a connection closing itself in its blocked callback. This is no longer possible as there's now only a handle to the connection after the blocked event is dealt with.
  • storage/indexeddb/resources/setversion-blocked-by-versionchange-close.js: This test exposes a cascade of errors. h2's should receive 0 blocked errors. Instead it receives 2.
  • storage/indexeddb/resources/setversion-blocked.js: Removed. Tests the same thing as set_version_blocked.
  • storage/indexeddb/resources/setversion-not-blocked.js: Now h2 is the version change connection and h1 is the blocker.
  • storage/indexeddb/setversion-blocked-by-versionchange-close-in-blocked.html: Removed.
  • storage/indexeddb/setversion-blocked.html: Removed.
5:58 PM Changeset in webkit [135222] by dgrogan@chromium.org
  • 3 edits in trunk/LayoutTests

IndexedDB: convert delete-closed-database-object to upgradeneeded
https://bugs.webkit.org/show_bug.cgi?id=102458

Reviewed by Tony Chang.

This test relies on gc behavior and seems flaky in content_shell.

  • storage/indexeddb/delete-closed-database-object-expected.txt:
  • storage/indexeddb/resources/delete-closed-database-object.js:

(prepareDatabase):
(openSuccess.openRequest.onsuccess):
(openSuccess):
(setVersion):

5:55 PM Changeset in webkit [135221] by psolanki@apple.com
  • 3 edits in trunk/Source/WebCore

For single element arrays use the pointer into the CFDataRef instead of copying data
https://bugs.webkit.org/show_bug.cgi?id=102306

Reviewed by Brent Fulgham.

Address review comments for slightly nicer code.

  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::data):

  • platform/cf/SharedBufferCF.cpp:

(WebCore::SharedBuffer::singleDataArrayBuffer):

5:53 PM Changeset in webkit [135220] by crogers@google.com
  • 4 edits in trunk/Source/WebCore

Remove empirical bass-boost for HRTF spatialization
https://bugs.webkit.org/show_bug.cgi?id=102745

Reviewed by Kenneth Russell.

Some empirically-based post-processing is being removed so that we'll
now process with the exact HRTF impulse response measurements.
Listening tests have determined that this post-processing is not necessary.

  • platform/audio/HRTFElevation.cpp:

(WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):

  • platform/audio/HRTFKernel.cpp:

(WebCore::HRTFKernel::HRTFKernel):

  • platform/audio/HRTFKernel.h:

(WebCore::HRTFKernel::create):
(HRTFKernel):

5:52 PM Changeset in webkit [135219] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

DISALLOW_COPY_AND_ASSIGN is not a WebKit macro
https://bugs.webkit.org/show_bug.cgi?id=102755

Reviewed by Sam Weinig.

WTF_MAKE_NONCOPYABLE is the idiom we use in WebKit. I don't understand
how this compiles.

  • Modules/indexeddb/IDBBackingStore.h:

(RecordIdentifier):

5:46 PM Changeset in webkit [135218] by crogers@google.com
  • 9 edits in trunk

Implement .detune attribute for BiquadFilterNode
https://bugs.webkit.org/show_bug.cgi?id=102737

Reviewed by Kenneth Russell.

Source/WebCore:

Similar to OscillatorNode, BiquadFilterNode must have a .detune attribute

Tests changed: webaudio/biquad-lowpass.html

  • Modules/webaudio/BiquadDSPKernel.cpp:

(WebCore::BiquadDSPKernel::updateCoefficientsIfNecessary):

  • Modules/webaudio/BiquadFilterNode.h:

(WebCore::BiquadFilterNode::detune):

  • Modules/webaudio/BiquadFilterNode.idl:
  • Modules/webaudio/BiquadProcessor.cpp:

(WebCore::BiquadProcessor::BiquadProcessor):
(WebCore::BiquadProcessor::checkForDirtyCoefficients):

  • Modules/webaudio/BiquadProcessor.h:

(WebCore::BiquadProcessor::parameter4):
(BiquadProcessor):

LayoutTests:

  • webaudio/biquad-lowpass.html:
  • webaudio/resources/biquad-testing.js:

(createTestAndRun):
(generateReference):

5:35 PM Changeset in webkit [135217] by Patrick Gansterer
  • 4 edits in trunk/Source/WebCore

[WIN] Add WebCore::getRegistryValue()
https://bugs.webkit.org/show_bug.cgi?id=97828

Reviewed by Brent Fulgham.

The new function adds an abstraction to SHGetValue(), which isn't available on WinCE.
Changing the existing files allows us to share more code between WinCE and WinNT in a next step.

  • platform/win/MIMETypeRegistryWin.cpp:

(WebCore::mimeTypeForExtension):
(WebCore):
(WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):

  • platform/win/WindowsExtras.h:

(WebCore::getRegistryValue):
(WebCore):

  • plugins/win/PluginDatabaseWin.cpp:

(WebCore::addPluginPathsFromRegistry):
(WebCore::addWindowsMediaPlayerPluginDirectory):
(WebCore::addQuickTimePluginDirectory):
(WebCore::addAdobeAcrobatPluginDirectory):
(WebCore::addJavaPluginDirectory):

5:22 PM Changeset in webkit [135216] by danakj@chromium.org
  • 3 edits in trunk/Source

[chromium] Remove the WebCompositorSupport virtual methods from the base class
https://bugs.webkit.org/show_bug.cgi?id=102153

Reviewed by James Robinson.

These methods have now been removed from WebCompositorSupportImpl in
chromium and should be removed from the base class. Everything is
going through WebLayerTreeSettings now.

  • chromium/public/WebCompositorSupport.h:
5:05 PM FeatureFlags edited by tkent@chromium.org
Remove CSS_HIERARCHIES (diff)
4:49 PM Changeset in webkit [135215] by cevans@google.com
  • 1 edit
    2 copies in branches/chromium/1312

Merge 133609
BUG=158992
Review URL: https://codereview.chromium.org/11280078

4:44 PM Changeset in webkit [135214] by cevans@google.com
  • 1 edit in branches/chromium/1312/Source/WebKit/chromium/src/WebViewImpl.cpp

Merge 133009
BUG=158707
Review URL: https://codereview.chromium.org/11420084

4:39 PM Changeset in webkit [135213] by cevans@google.com
  • 10 edits
    2 copies in branches/chromium/1312

Merge 132895
BUG=157951
Review URL: https://codereview.chromium.org/11419080

4:38 PM Changeset in webkit [135212] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk

Coordinated Graphics: Remove tiles of a layer when they are off the viewport.
https://bugs.webkit.org/show_bug.cgi?id=102313

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-19
Reviewed by Noam Rosenthal.

Source/WebKit2:

Currently, we don't remove tiles of the layer with the special properties: a
transform animation and non affine transform. If a page has a lot of layers with
a transform animation, we will encounter OOM. So this patch removes the
privilege of the layer.

There are two changes.

  1. computeTransformedVisibleRect() calculates a layer transform using the

current local transform which a transform animation applied.

  1. tiledBackingStoreVisibleRect() calculates a visible

rect of all layers, even if the layer includes the property: a transform
animation or non affine transform.

Test: animations/animation-offscreen-to-onscreen.html

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::effectiveContentsScale):
(WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::CoordinatedGraphicsLayer::hasPendingVisibleChanges):
(WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
(WebCore::CoordinatedGraphicsLayer::selfOrAncestorHasActiveTransformAnimation):
(WebCore):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayer):

LayoutTests:

This test checks that a compositing layer is rendered if the layer is
originally transformed off the viewport.

  • animations/animation-offscreen-to-onscreen-expected.png: Added.
  • animations/animation-offscreen-to-onscreen-expected.txt: Added.
  • animations/animation-offscreen-to-onscreen.html: Added.
4:34 PM Changeset in webkit [135211] by cevans@google.com
  • 9 edits in branches/chromium/1312/Source/WebCore/platform/graphics

Merge 134871
BUG=157875
Review URL: https://codereview.chromium.org/11299089

4:32 PM Changeset in webkit [135210] by cevans@google.com
  • 1 edit
    3 copies in branches/chromium/1312

Merge 132844
BUG=157845

4:26 PM Changeset in webkit [135209] by hclam@chromium.org
  • 4 edits in trunk/Source/WebCore

Not reviewed. Build fix for Chromium.

Added SkTypes.h includes for Windows.

  • platform/graphics/chromium/ImageDecodingStore.h:
  • platform/graphics/chromium/ImageFrameGenerator.h:
  • platform/graphics/chromium/LazyDecodingPixelRef.h:
4:21 PM Changeset in webkit [135208] by abarth@webkit.org
  • 11 edits in trunk/Source/WebCore

[V8] Simplify V8DOMWindowShell::getEntered
https://bugs.webkit.org/show_bug.cgi?id=102156

Reviewed by Eric Seidel.

This patch is an incremental step towards merging
V8DOMWrapper::getCachedWrapper(Node*) with the general case for looking
up DOM wrappers. In order to merge with the general case, we need to
get down to calling v8::Context::GetCurrent once, which means we need
to factor the call to v8::Context::GetEntered out of V8DOMWindowShell.

As a side-benefit to this change, we can remove some redundant checks
for isolatedWorldsExist and v8::Context::InContext from callers of
V8DOMWindowShell::getEntered, including in getCachedWrapper.

  • bindings/v8/DOMDataStore.cpp:

(WebCore::DOMDataStore::current):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
(WebCore::ScriptController::currentWorldContext):

  • bindings/v8/V8DOMWindowShell.h:

(WebCore::V8DOMWindowShell::isolated):
(WebCore::V8DOMWindowShell::perContextData):
(WebCore::V8DOMWindowShell::world):
(V8DOMWindowShell):

  • bindings/v8/V8DOMWrapper.h:

(WebCore::V8DOMWrapper::getCachedWrapper):

  • bindings/v8/WorldContextHandle.cpp:

(WebCore::WorldContextHandle::WorldContextHandle):

  • bindings/v8/custom/V8DocumentCustom.cpp:

(WebCore::V8Document::dispatchWrapCustom):

  • bindings/v8/custom/V8HTMLDocumentCustom.cpp:

(WebCore::V8HTMLDocument::dispatchWrapCustom):

  • bindings/v8/custom/V8SVGDocumentCustom.cpp:

(WebCore::V8SVGDocument::dispatchWrapCustom):

  • bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:

(WebCore::V8XMLHttpRequest::constructorCallback):

4:03 PM Changeset in webkit [135207] by commit-queue@webkit.org
  • 14 edits in trunk/Source/WebKit2

Coordinated Graphics: Remove a texture if an direct composited image is off the viewport.
https://bugs.webkit.org/show_bug.cgi?id=102449

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-19
Reviewed by Noam Rosenthal.

Currently, once uploading textures for composited images, Coordinated Graphics
does not release the textures until all layers using images are destroyed.

This patch removes a texture if we don't need to render an image. This mechanism
is similar how TiledBackingStore removes invisible tiles.

When all layers are invisible, we wait 3 seconds to remove the content
of the image, because we want to prevent a transform animation from
creating and destroying a texture over and over again.

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:

(WebKit::CoordinatedBackingStore::removeAllTiles):
(WebKit):

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:

(CoordinatedBackingStore):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:

(WebKit::LayerTreeCoordinatorProxy::clearImageBackingContents):
(WebKit):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:

(LayerTreeCoordinatorProxy):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::clearImageBackingContents):
(WebKit):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(LayerTreeRenderer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::syncImageBacking):
(WebCore::CoordinatedGraphicsLayer::imageBackingVisible):
(WebCore):
(WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.cpp:

(WebKit::CoordinatedImageBacking::CoordinatedImageBacking):
(WebKit::CoordinatedImageBacking::addHost):
(WebKit::CoordinatedImageBacking::removeHost):
(WebKit::CoordinatedImageBacking::update):
(WebKit):
(WebKit::CoordinatedImageBacking::updateVisibilityIfNeeded):
(WebKit::CoordinatedImageBacking::clearContentsTimerFired):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h:

(Coordinator):
(Host):
(CoordinatedImageBacking):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::clearImageBackingContents):
(WebKit):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:

(LayerTreeCoordinator):

3:47 PM Changeset in webkit [135206] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WTF

Remove ReadWriteLock
https://bugs.webkit.org/show_bug.cgi?id=101637

Patch by Laszlo Gombos <Laszlo Gombos> on 2012-11-19
Reviewed by Darin Adler.

Remove ReadWriteLock as it does not seems to be used.

  • wtf/Platform.h: Remove the definition of HAVE_PTHREAD_RWLOCK.
  • wtf/ThreadingPrimitives.h: Remove the PlatformReadWriteLock type

and the ReadWriteLock class.

  • wtf/ThreadingPthreads.cpp: Remove the implementation of

the ReadWriteLock class using pthreads.

3:40 PM Changeset in webkit [135205] by jianli@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Mark 2 tests as failed on chromium.

  • platform/chromium/TestExpectations:
3:38 PM Changeset in webkit [135204] by rakuco@webkit.org
  • 6 edits
    1 add in trunk/Source/WebKit2

Unreviewed, rolling out r135201.
http://trac.webkit.org/changeset/135201
https://bugs.webkit.org/show_bug.cgi?id=102725

Broke all non-Mac WK2 builds. (Requested by rakuco on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-19

  • Shared/mac/PlatformCertificateInfo.h:
  • Shared/mac/PlatformCertificateInfo.mm:

(WebKit):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Authentication/AuthenticationManager.cpp:
  • WebProcess/Authentication/AuthenticationManager.h:

(AuthenticationManager):

  • WebProcess/Authentication/mac/AuthenticationManager.mac.mm: Copied from Source/WebKit2/Shared/mac/PlatformCertificateInfo.mm.

(WebKit):
(WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge):

3:08 PM Changeset in webkit [135203] by haraken@chromium.org
  • 9 edits in trunk/Source/WebCore

Rename idlDocument::classes to idlDocument::interfaces in the IDL parser
https://bugs.webkit.org/show_bug.cgi?id=102671

Reviewed by Adam Barth.

Most part of code generators use 'interface'. The spec uses 'interface'.
Thus, the IDL parser should use 'interface' instead of 'class'.

No tests. No change in behavior.

  • bindings/scripts/CodeGenerator.pm:

(ProcessDocument):
(AddMethodsConstantsAndAttributesFromParentInterfaces):
(ParseInterface):

  • bindings/scripts/CodeGeneratorCPP.pm:

(GenerateImplementation):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):

  • bindings/scripts/CodeGeneratorObjC.pm:

(GenerateImplementation):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateFunctionCallback):

  • bindings/scripts/IDLParser.pm:

(Parse):
(parseModule):

  • bindings/scripts/generate-bindings.pl:
3:06 PM Changeset in webkit [135202] by eric.carlson@apple.com
  • 12 edits in trunk

HTMLMediaElement::configureTextTracks should configure all text tracks
https://bugs.webkit.org/show_bug.cgi?id=102561

Reviewed by Philippe Normand.

Source/WebCore:

No new tests, track-mode-not-changed-by-new-track.html was updated to test the changes.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTrackModeChanged): HTMLTrackElement -> TextTrack.
(WebCore::HTMLMediaElement::willRemoveTrack): Ditto.
(WebCore::HTMLMediaElement::configureTextTrackGroup): Ditto.
(WebCore::HTMLMediaElement::configureTextTracks): Ditto.
(WebCore::HTMLMediaElement::markCaptionAndSubtitleTracksAsUnconfigured): Ditto.

  • html/HTMLMediaElement.h:
  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::HTMLTrackElement): Move hasBeenConfigured down to TextTrack.
(WebCore::HTMLTrackElement::parseAttribute): isDefault is stored on TextTrack.
(WebCore::HTMLTrackElement::ensureTrack): LoadableTextTrack constructor doesn't take

"default" argument.

  • html/HTMLTrackElement.h:
  • html/track/LoadableTextTrack.cpp:

(WebCore::LoadableTextTrack::LoadableTextTrack): Initialize m_isDefault to false.

  • html/track/LoadableTextTrack.h:

(WebCore::TextTrack::isDefault): Override base class implementation, because a track element

can be flagged as default.

(WebCore::TextTrack::setIsDefault): Ditto.

  • html/track/TextTrack.cpp:

(WebCore::TextTrack::TextTrack): Initialize m_hasBeenConfigured.

  • html/track/TextTrack.h:

(WebCore::TextTrack::hasBeenConfigured): New, moved from HTMLTrackElement so other code doesn't

need know what type of track it is calling.

(WebCore::TextTrack::setHasBeenConfigured): Ditto.
(WebCore::TextTrack::isDefault): Base, do nothing, implementation because only LoadableTextTrack

can be "default".

(WebCore::TextTrack::setIsDefault): Ditto.

LayoutTests:

Update test and results to check that dynamically added tracks are configured correctly.

  • media/track/track-mode-not-changed-by-new-track-expected.txt:
  • media/track/track-mode-not-changed-by-new-track.html:
2:57 PM Changeset in webkit [135201] by beidson@apple.com
  • 6 edits
    1 delete in trunk/Source/WebKit2

Move tryUsePlatformCertificateInfoForChallenge from AuthenticationManager to PlatformCertificateInfo.
https://bugs.webkit.org/show_bug.cgi?id=102718

Reviewed by Sam Weinig.

Add the shared PlatformCertificateInfo version of the method:

  • Shared/mac/PlatformCertificateInfo.h:
  • Shared/mac/PlatformCertificateInfo.mm:

(WebKit::tryUsePlatformCertificateInfoForChallenge):

Use the new shared version:

  • WebProcess/Authentication/AuthenticationManager.cpp:

Remove the old member version:

  • WebProcess/Authentication/AuthenticationManager.h:
  • WebProcess/Authentication/mac/AuthenticationManager.mac.mm: Removed.
  • WebKit2.xcodeproj/project.pbxproj:
2:54 PM Changeset in webkit [135200] by commit-queue@webkit.org
  • 15 edits in trunk/Source

Coordinated Graphics: refactor syncCanvas to handle the lifecycle clearly.
https://bugs.webkit.org/show_bug.cgi?id=102664

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-19
Reviewed by Noam Rosenthal.

Source/WebCore:

As refactoring Coordinated Graphics in WebKit2, code related to
TextureMapper is changed.

No new tests. Refactoring only.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::platformLayerSize):

We need to know the size of a texture mapper platform layer.

(WebCore):

  • platform/graphics/texmap/TextureMapperBackingStore.cpp: Because CoordinatedGraphicsLayer handles the canvas GraphicsSurface lifecycle, TextureMapperSurfaceBackingStore does not need to know GraphicsSurfaceToken.

(WebCore::TextureMapperSurfaceBackingStore::setGraphicsSurface):
(WebCore::TextureMapperSurfaceBackingStore::swapBuffersIfNeeded):
(WebCore::TextureMapperSurfaceBackingStore::paintToTextureMapper):

  • platform/graphics/texmap/TextureMapperBackingStore.h:

(TextureMapperSurfaceBackingStore):

  • platform/graphics/texmap/TextureMapperPlatformLayer.h:

(WebCore::TextureMapperPlatformLayer::platformLayerSize):

Source/WebKit2:

This patch makes sync canvas code handle the lifecycle of the canvas
GraphicsSurface in the similar style to a directly image compositing and
an update atlas code. This patch moves the canvas lifecycle handling
code from LayerTreeRenderer to CoordinatedGraphicsLayer, because
CoordinatedGraphicsLayer knows best when to create and remove the canvas
GraphicsSurface.

After this patch, we can remove the canvas GraphicsSurface in UI Process as soon
as the canvas platform layer is unset in Web Process.

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:

(WebKit::LayerTreeCoordinatorProxy::createCanvas):
(WebKit):
(WebKit::LayerTreeCoordinatorProxy::syncCanvas):
(WebKit::LayerTreeCoordinatorProxy::destroyCanvas):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:

(LayerTreeCoordinatorProxy):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::createCanvas):
(WebKit):
(WebKit::LayerTreeRenderer::syncCanvas):
(WebKit::LayerTreeRenderer::destroyCanvas):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(LayerTreeRenderer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
(WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
(WebCore::CoordinatedGraphicsLayer::syncCanvas):
(WebCore):
(WebCore::CoordinatedGraphicsLayer::destroyCanvasIfNeeded):
(WebCore::CoordinatedGraphicsLayer::createCanvasIfNeeded):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::createCanvas):
(WebKit):
(WebKit::LayerTreeCoordinator::syncCanvas):
(WebKit::LayerTreeCoordinator::destroyCanvas):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:

(LayerTreeCoordinator):

2:44 PM Changeset in webkit [135199] by Dimitri Glazkov
  • 8 edits in trunk/Tools

[garden-o-matic] Switch frontend to use the gardeningserver.
https://bugs.webkit.org/show_bug.cgi?id=102712

Reviewed by Dirk Pranke.

Instead of serving garden-o-matic frontend as file, we now serve it from the gardening server. This enables
using garden-o-matic in a Chrome OS device, with a separate machine as a headless server.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html: Changed CSP policy to use 'self'.
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js: Removed now-unnecessary references to kLocalServerURL.
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout_unittests.js: Tweaked the test expectation.
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js: Removed kLocalServerURL.
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js: Spuriously updated the name of the webkit-patch command.
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/results.js: Removed kLocalServerURL.
  • Scripts/webkitpy/tool/servers/gardeningserver.py: Changed to use the new launch URL.
2:23 PM Changeset in webkit [135198] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Replace an unneeded #include with a forward declaration after r135179.

Reviewed by nobody, but suggested by Alexey Proskuryakov.

  • WebProcess/Network/WebResourceLoader.h:
2:22 PM Changeset in webkit [135197] by commit-queue@webkit.org
  • 5 edits
    2 copies in trunk/Source/WebKit/chromium

[Chromium] Remove the dependency of INPUT_TYPE_COLOR on PAGE_POPUP
https://bugs.webkit.org/show_bug.cgi?id=102525

Patch by Miguel Garcia <miguelg@chromium.org> on 2012-11-19
Reviewed by Kent Tamura.

INPUT_TYPE_COLOR should not depend on PAGE_POPUP, with this change we allow platforms like android to implement the former without depending on the latter.

Tested by compiling chromium with and without ENABLE_PAGE_POPUP and made sure that forms with input type color would load in both cases.

  • WebKit.gyp:
  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::createColorChooser):

  • src/ColorChooserUIController.cpp:

(WebKit::ColorChooserUIController::ColorChooserUIController):
(WebKit::ColorChooserUIController::openUI):
(WebKit):
(WebKit::ColorChooserUIController::endChooser):

  • src/ColorChooserUIController.h:

(ColorChooserUIController):

2:20 PM Changeset in webkit [135196] by hclam@chromium.org
  • 11 edits in trunk/Source

[chromium] Lazy image decoding without cache
https://bugs.webkit.org/show_bug.cgi?id=102021

Reviewed by Stephen White.

Source/WebCore:

Goal of this change is to make image decoding in ImageFrameGenerator
completely lazy without caching. Image decoding logic is then removed
from ImageDecodingStore.

These methods are removed.

  • ImageDecodingStore::lockPixels
  • ImageDecodingStore::unlockPixels

Instead image decoding and scaling is done in
ImageFrameGenerator::decodeAndScale().

Unit tests are updated:
DeferredImageDecoderTest::drawIntoSkPicture
DeferredImageDecoderTest::drawScaledIntoSkPicture

Also covered by layout tests:
platform/chromium/virtual/deferred

  • platform/graphics/chromium/DeferredImageDecoder.cpp:

(WebCore::DeferredImageDecoder::createLazyDecodingBitmap):

  • platform/graphics/chromium/ImageDecodingStore.h:

(ImageDecodingStore):

  • platform/graphics/chromium/ImageFrameGenerator.cpp:

(WebCore::ImageFrameGenerator::ImageFrameGenerator):
(WebCore::ImageFrameGenerator::~ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setData):
(WebCore::ImageFrameGenerator::decodeAndScale):

  • platform/graphics/chromium/ImageFrameGenerator.h:

(WebCore::ImageFrameGenerator::create):
(ImageFrameGenerator):

  • platform/graphics/chromium/LazyDecodingPixelRef.cpp:

(WebCore::LazyDecodingPixelRef::onLockPixels):
(WebCore::LazyDecodingPixelRef::onUnlockPixels):

  • platform/graphics/chromium/LazyDecodingPixelRef.h:

(LazyDecodingPixelRef):

Source/WebKit/chromium:

Updated two test cases using real image data.

The tests demonstrates that original image decoder is not used and
image is decoded lazily with correct pixel results.

  • tests/DeferredImageDecoderTest.cpp:

(WebCore):
(WebCore::DeferredImageDecoderTest::SetUp):
(WebCore::DeferredImageDecoderTest::decoderBeingDestroyed):
(DeferredImageDecoderTest):
(WebCore::TEST_F):

  • tests/MockImageDecoder.h:

(MockImageDecoderClient):
(WebCore):
(WebCore::MockImageDecoder::MockImageDecoder):
(WebCore::MockImageDecoder::~MockImageDecoder):
(MockImageDecoder):

2:09 PM Changeset in webkit [135195] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] REGRESSION(r134955): Plugins are broken due to unresolved symbol in plugin process
https://bugs.webkit.org/show_bug.cgi?id=102613

Unreviewed build fix.

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-11-19

  • GNUmakefile.am: Fix the build after one of my previous patches introduced

a link dependency on libsecret.

1:47 PM Changeset in webkit [135194] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Web Inspector crashes if evas_gl is not available
https://bugs.webkit.org/show_bug.cgi?id=102531

Patch by Yael Aharon <yael.aharon@intel.com> on 2012-11-19
Reviewed by Kenneth Rohde Christiansen.

Teach Web Inspector to fallback gracefully to the software path when evas_gl engine is not available.

  • UIProcess/efl/WebInspectorProxyEfl.cpp:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

1:43 PM Changeset in webkit [135193] by inferno@chromium.org
  • 3 edits
    2 adds in trunk

Crash in ApplyStyleCommand::cleanupUnstyledAppleStyleSpans.
https://bugs.webkit.org/show_bug.cgi?id=100150

Reviewed by Ryosuke Niwa.

Source/WebCore:

RefPtr startDummySpanAncestor and endDummySpanAncestor since
they can go away inside fixRangeAndApplyInlineStyle call.

Test: editing/style/apply-style-crash.html

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::applyInlineStyle):

LayoutTests:

  • editing/style/apply-style-crash-expected.txt: Added.
  • editing/style/apply-style-crash.html: Added.
1:25 PM Changeset in webkit [135192] by commit-queue@webkit.org
  • 16 edits in trunk

Unreviewed, rolling out r135172.
http://trac.webkit.org/changeset/135172
https://bugs.webkit.org/show_bug.cgi?id=102710

Broke some WebKit2 api tests :( (Requested by japhet on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-19

Source/WebCore:

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::DocumentLoader):
(WebCore::DocumentLoader::~DocumentLoader):
(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::clearMainResourceLoader):
(WebCore::DocumentLoader::isLoadingInAPISense):
(WebCore::DocumentLoader::documentURL):
(WebCore::DocumentLoader::isLoadingMainResource):
(WebCore::DocumentLoader::startLoadingMainResource):

  • loader/DocumentLoader.h:

(DocumentLoader):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::FrameLoader):
(WebCore::FrameLoader::init):

  • loader/FrameLoaderStateMachine.cpp:

(WebCore::FrameLoaderStateMachine::FrameLoaderStateMachine):

  • loader/FrameLoaderStateMachine.h:
  • loader/MainResourceLoader.cpp:

(WebCore::shouldLoadAsEmptyDocument):
(WebCore):
(WebCore::MainResourceLoader::continueAfterContentPolicy):
(WebCore::MainResourceLoader::didReceiveResponse):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::handleEmptyLoad):
(WebCore::MainResourceLoader::loadNow):
(WebCore::MainResourceLoader::load):

  • loader/MainResourceLoader.h:

(MainResourceLoader):

Tools:

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::updateForCommittedLoad):

LayoutTests:

  • http/tests/inspector/network/network-iframe-load-and-delete.html:
  • http/tests/loading/redirect-methods-expected.txt:
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt:
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt:
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt:
1:23 PM Changeset in webkit [135191] by Dimitri Glazkov
  • 2 edits
    1 add in trunk/Tools

[garden-o-matic] Enable serving garden-o-matic with gardeningserver.
https://bugs.webkit.org/show_bug.cgi?id=102703

Reviewed by Ojan Vafai.

To enable gardening from a Chrome OS device, we need the ability to serve garden-o-matic
from the same origin as the gardening server. This change gently massages the current
logic to adapt an extension-sniffing-based approach of identifying static files,
rather than requiring an explicit list.

  • Scripts/webkitpy/tool/servers/reflectionhandler.py:

(ReflectionHandler): Replaced STATIC_FILE_NAMES with STATIC_FILE_EXTENSIONS.
(ReflectionHandler._handle_request): Changed the logic to smell for extensions, rather than specific files.

  • Scripts/webkitpy/tool/servers/reflectionhandler_unittest.py: Added.
1:21 PM Changeset in webkit [135190] by ojan@chromium.org
  • 2 edits in trunk/Tools

Add DOM and HTML watchlists and add myself to a bunch of lists
https://bugs.webkit.org/show_bug.cgi?id=102707

Reviewed by Eric Seidel.

  • Scripts/webkitpy/common/config/watchlist:
1:05 PM Changeset in webkit [135189] by tony@chromium.org
  • 10 edits in trunk/Source

Remove 'is' prefix from WebSettings::isWebSecurityEnabled and WebSettings::isSpatialNavigationEnabled
https://bugs.webkit.org/show_bug.cgi?id=102548

Reviewed by Adam Barth.

Source/WebCore:

This allows us to use Settings.in to generate the code for this.

I didn't rename any of the WebKit API methods with similar names because that would
probably break consumers. It turns out that the getter is only called from
Source/WebKit/efl (most of the time, WebPreferences just sets values on Settings).

No new tests, just a refactor.

  • WebCore.exp.in: Remove symbols that are now inlined.
  • WebCore.order: Remove symbols that are now inlined.
  • dom/Document.cpp:

(WebCore::Document::initSecurityContext): Rename.

  • page/Settings.cpp:

(WebCore::Settings::Settings): Remove code since it will be generated.

  • page/Settings.h:

(Settings): Remove code since it will be generated.

  • page/Settings.in: Add entries to be generated.
  • page/SpatialNavigation.cpp:

(WebCore::isSpatialNavigationEnabled): Fix caller.

Source/WebKit/efl:

Rename call to WebCore::Settings.

  • ewk/ewk_view.cpp:

(_ewk_view_priv_new):

12:58 PM Changeset in webkit [135188] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL][TexMap] Complie error when considering warnings as errors
https://bugs.webkit.org/show_bug.cgi?id=102705

Patch by Yael Aharon <yael.aharon@intel.com> on 2012-11-19
Reviewed by Kenneth Rohde Christiansen.

Change GaussianKernelHalfWidth to unsigned.

No new tests.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore):

12:43 PM Changeset in webkit [135187] by beidson@apple.com
  • 1 edit
    2 deletes in trunk/Source/WebKit2

Remove the source files for NetworkRequest from the repository.
They were obsoleted and removed from the project file awhile ago, but I forgot to nuke the source.

Unreviewed.

  • NetworkProcess/NetworkRequest.cpp: Removed.
  • NetworkProcess/NetworkRequest.h: Removed.
12:12 PM Changeset in webkit [135186] by beidson@apple.com
  • 6 edits in trunk/Source

Add 64-bit specializations for atomicIncrement and atomicDecrement
https://bugs.webkit.org/show_bug.cgi?id=102702

Reviewed by Eric Carlson.

Source/WebKit2:

Move away from the Darwin-specific OSAtomicIncrement64Barrier and use WTF::atomicIncrement instead.

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::generateWillSendRequestID): Adopt WTF::atomicIncrement.
(WebKit::generateCanAuthenticateAgainstProtectionSpaceID): Ditto.

  • WebProcess/mac/KeychainItemShimMethods.mm:

(WebKit::generateSecKeychainItemRequestID): Ditto.

  • WebProcess/mac/SecItemShimMethods.mm:

(WebKit::generateSecItemRequestID): Ditto.

Source/WTF:

  • wtf/Atomics.h:

(WTF::atomicIncrement): Add A 64-bit version for Darwin.
(WTF::atomicDecrement): Ditto.

12:06 PM Changeset in webkit [135185] by commit-queue@webkit.org
  • 7 edits
    2 deletes in trunk

Unreviewed, rolling out r134830.
http://trac.webkit.org/changeset/134830
https://bugs.webkit.org/show_bug.cgi?id=102701

ActiveDOMObject is not applicable to MutationObservers due to
being tied to a Document (Requested by aklein on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-19

Source/WebCore:

  • bindings/js/JSMutationObserverCustom.cpp:

(WebCore::JSMutationObserverConstructor::constructJSMutationObserver):

  • bindings/v8/custom/V8MutationObserverCustom.cpp:

(WebCore::V8MutationObserver::constructorCallback):

  • dom/MutationObserver.cpp:

(WebCore::MutationObserver::create):
(WebCore::MutationObserver::MutationObserver):
(WebCore::MutationObserver::observationStarted):
(WebCore::MutationObserver::observationEnded):

  • dom/MutationObserver.h:

(WebCore):

  • dom/MutationObserver.idl:

LayoutTests:

  • fast/mutation/observer-wrapper-dropoff-expected.txt: Removed.
  • fast/mutation/observer-wrapper-dropoff.html: Removed.
12:05 PM Changeset in webkit [135184] by jochen@chromium.org
  • 6 edits in trunk/Tools

[chromium] move methods that only use the WebKit API from DRTTestRunner to TestRunner
https://bugs.webkit.org/show_bug.cgi?id=102676

Reviewed by Tony Chang.

In addition, I've replaced parsePageNumber with the more commonly used
cppVariantToInt32, moved abortModal to the list of stubbed out methods,
and removed setAutomaticLinkDetectionEnabled which wasn't used
anywhere.

  • DumpRenderTree/chromium/DRTTestRunner.cpp:

(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::reset):
(DRTTestRunner::overridePreference):

  • DumpRenderTree/chromium/DRTTestRunner.h:

(DRTTestRunner):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::reset):
(WebTestRunner):
(WebTestRunner::TestRunner::setTabKeyCyclesThroughElements):
(WebTestRunner::TestRunner::setAsynchronousSpellCheckingEnabled):
(WebTestRunner::TestRunner::execCommand):
(WebTestRunner::TestRunner::isCommandEnabled):
(WebTestRunner::TestRunner::pauseAnimationAtTimeOnElementWithId):
(WebTestRunner::TestRunner::pauseTransitionAtTimeOnElementWithId):
(WebTestRunner::TestRunner::elementDoesAutoCompleteForElementWithId):
(WebTestRunner::TestRunner::numberOfActiveAnimations):
(WebTestRunner::TestRunner::callShouldCloseOnWebView):
(WebTestRunner::TestRunner::setDomainRelaxationForbiddenForURLScheme):
(WebTestRunner::TestRunner::evaluateScriptInIsolatedWorldAndReturnValue):
(WebTestRunner::TestRunner::evaluateScriptInIsolatedWorld):
(WebTestRunner::TestRunner::setIsolatedWorldSecurityOrigin):
(WebTestRunner::TestRunner::setIsolatedWorldContentSecurityPolicy):
(WebTestRunner::TestRunner::addOriginAccessWhitelistEntry):
(WebTestRunner::TestRunner::removeOriginAccessWhitelistEntry):
(WebTestRunner::TestRunner::hasCustomPageSizeStyle):
(WebTestRunner::TestRunner::forceRedSelectionColors):
(WebTestRunner::TestRunner::addUserScript):
(WebTestRunner::TestRunner::addUserStyleSheet):
(WebTestRunner::TestRunner::startSpeechInput):
(WebTestRunner::TestRunner::loseCompositorContext):
(WebTestRunner::TestRunner::markerTextForListItem):
(WebTestRunner::TestRunner::findString):
(WebTestRunner::TestRunner::setMinimumTimerInterval):
(WebTestRunner::TestRunner::setAutofilled):
(WebTestRunner::TestRunner::setValueForUser):
(WebTestRunner::TestRunner::enableFixedLayoutMode):
(WebTestRunner::TestRunner::setFixedLayoutSize):
(WebTestRunner::TestRunner::selectionAsMarkup):
(WebTestRunner::TestRunner::setTextSubpixelPositioning):
(WebTestRunner::TestRunner::resetPageVisibility):
(WebTestRunner::TestRunner::setPageVisibility):
(WebTestRunner::TestRunner::setTextDirection):
(WebTestRunner::TestRunner::textSurroundingNode):
(WebTestRunner::TestRunner::workerThreadCount):
(WebTestRunner::TestRunner::cppVariantToBool):
(WebTestRunner::TestRunner::cppVariantToInt32):
(WebTestRunner::TestRunner::cppVariantToWebString):
(WebTestRunner::TestRunner::cppVariantToWebStringArray):
(WebTestRunner::TestRunner::printErrorMessage): formerly logErrorToConsole
(WebTestRunner::TestRunner::fallbackMethod):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(WebKit):
(WebTestRunner::TestRunner::setWebView):
(TestRunner):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::createMainWindow):
(TestShell::~TestShell):

12:02 PM Changeset in webkit [135183] by yael@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening after r133898.
Cleanup the list of compositing tests failures.

  • platform/efl/TestExpectations:
12:01 PM Changeset in webkit [135182] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Unreviewed, rolling out r135180.
http://trac.webkit.org/changeset/135180
https://bugs.webkit.org/show_bug.cgi?id=102700

breaks ui/compositor build (Requested by danakj on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-19

Source/Platform:

  • chromium/public/WebCompositorSupport.h:

(WebCompositorSupport):
(WebKit::WebCompositorSupport::setPerTilePaintingEnabled):
(WebKit::WebCompositorSupport::setPartialSwapEnabled):
(WebKit::WebCompositorSupport::setAcceleratedAnimationEnabled):
(WebKit::WebCompositorSupport::setPageScalePinchZoomEnabled):

Source/WebKit/chromium:

  • tests/GraphicsLayerChromiumTest.cpp:

(WebKit::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):

11:30 AM Changeset in webkit [135181] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Remove RTSP handling from FrameLoaderClientBlackBerry
https://bugs.webkit.org/show_bug.cgi?id=102692

Patch by Liam Quinn <lquinn@rim.com> on 2012-11-19
Reviewed by Rob Buis.

Reviewed internally by George Staikos. Internal PR 242750.

Our RTSP handling in FrameLoaderClientBlackBerry causes HTTP redirects to "rtsp:" URIs to fail. Remove handling of RTSP from this class; it will be moved to the network layer alongside other URI schemes like "data:" and "file:".

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::createDocumentLoader):

11:22 AM Changeset in webkit [135180] by danakj@chromium.org
  • 3 edits in trunk/Source

[chromium] Remove the WebCompositorSupport virtual methods from the base class
https://bugs.webkit.org/show_bug.cgi?id=102153

Reviewed by James Robinson.

These methods have now been removed from WebCompositorSupportImpl in
chromium and should be removed from the base class. Everything is
going through WebLayerTreeSettings now.

  • chromium/public/WebCompositorSupport.h:
11:22 AM Changeset in webkit [135179] by beidson@apple.com
  • 18 edits in trunk/Source

NetworkProcess Authentication.
https://bugs.webkit.org/show_bug.cgi?id=102592

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Change an ASSERT that assumes there should be a resource handle which is not true with the NetworkProcess.

Also export some more stuff.

No new tests (Platform support, no effect in tested configs).

  • WebCore.exp.in:
  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::didReceiveAuthenticationChallenge): Only ASSERT that the handle has a challenge if

there is a handle.

Source/WebKit2:

This get's basic HTTP authentication working with the NetworkProcess by dispatching authentication
related events to the WebProcess and relying on existing client APIs to answer them.

Implement ResourceHandleClient methods related to auth challenges and message them to the WebProcess.
Also implement messaging back from the WebProcess to response to those auth challenges:

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::willSendRequestResponseMap):
(WebKit::NetworkResourceLoader::willSendRequest):
(WebKit::NetworkResourceLoader::willSendRequestHandled):
(WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
(WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
(WebKit::NetworkResourceLoader::didCancelAuthenticationChallenge):
(WebKit::NetworkResourceLoader::receivedCancellation):
(WebKit::NetworkResourceLoader::receivedAuthenticationCredential):
(WebKit::NetworkResourceLoader::receivedRequestToContinueWithoutAuthenticationCredential):
(WebKit::NetworkResourceLoader::receivedAuthenticationCancellation):
(WebKit::canAuthenticateAgainstProtectionSpaceResponseMap):
(WebKit::generateCanAuthenticateAgainstProtectionSpaceID):
(WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpace):
(WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceHandled):

  • NetworkProcess/NetworkResourceLoader.h:
  • NetworkProcess/NetworkResourceLoader.messages.in:

Implement messaging to response to auth challenges from the NetworkProcess, and implement
AuthenticationClient to response to auth responses from WebProcess clients:

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::canAuthenticateAgainstProtectionSpace):
(WebKit::WebResourceLoader::didReceiveAuthenticationChallenge):
(WebKit::WebResourceLoader::didCancelAuthenticationChallenge):
(WebKit::WebResourceLoader::receivedCredential):
(WebKit::WebResourceLoader::receivedRequestToContinueWithoutCredential):
(WebKit::WebResourceLoader::receivedCancellation):

  • WebProcess/Network/WebResourceLoader.h:

(WebKit::WebResourceLoader::refAuthenticationClient):
(WebKit::WebResourceLoader::derefAuthenticationClient):

  • WebProcess/Network/WebResourceLoader.messages.in:

Add a BlockingResponseMap for bool responses, which don't need OwnPtr trickery:

  • Shared/BlockingResponseMap.h:

(BlockingBoolResponseMap::waitForResponse):
(BlockingBoolResponseMap::didReceiveResponse):

Add "allowsStoredCredentials" to NetworkResourceLoadParameters so the NetworkProcess
already has the answer when the question is asked:

  • Shared/Network/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
(WebKit::NetworkResourceLoadParameters::encode):
(WebKit::NetworkResourceLoadParameters::decode):

  • Shared/Network/NetworkResourceLoadParameters.h:

(WebKit::NetworkResourceLoadParameters::allowStoredCredentials):

Grab the value for "allowsStoredCredentials" when scheduling the load in the NetworkProcess:

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::scheduleLoad):

Add a FIXME for client certs:

  • WebProcess/Authentication/mac/AuthenticationManager.mac.mm:

(WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge):

Add a FIXME for downloads:

  • WebProcess/Downloads/mac/DownloadMac.mm:

Remove unused messaging related methods:

  • WebProcess/Network/NetworkProcessConnection.cpp:
  • WebProcess/Network/NetworkProcessConnection.h:
11:20 AM Changeset in webkit [135178] by commit-queue@webkit.org
  • 6 edits in trunk

[Chromium] Flash cannot receive scroll events when threaded compositing is in use
https://bugs.webkit.org/show_bug.cgi?id=101423

Patch by Yusuke Sato <yusukes@chromium.org> on 2012-11-19
Reviewed by James Robinson.

Source/WebKit/chromium:

Add setWantsWheelEvents() to Chromium's WebPluginContainer interface so that a plugin can tell the
container that the plugin always wants to handle wheel events even when a scroll bar is not shown.

  • public/WebPluginContainer.h:

(WebPluginContainer):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::setWantsWheelEvents):
(WebKit):
(WebKit::WebPluginContainerImpl::wantsWheelEvents):
(WebKit::WebPluginContainerImpl::WebPluginContainerImpl):

  • src/WebPluginContainerImpl.h:

(WebPluginContainerImpl):

Tools:

Call setWantsWheelEvents(true) in initialize() so that gesture-events and transformed-events tests in
LayoutTests/platform/chromium/plugins/ will not fail even if a buildbot introduces threaded compositing
in the future.

  • DumpRenderTree/chromium/TestWebPlugin.cpp:

(TestWebPlugin::initialize):

11:15 AM Changeset in webkit [135177] by alecflett@chromium.org
  • 6 edits in trunk/Source

IndexedDB: simplify RecordIdentifier
https://bugs.webkit.org/show_bug.cgi?id=102018

Reviewed by Tony Chang.

Source/WebCore:

Make IDBBackingStore's RecordIdentifier be a simple
class, existing only as an inline or stack-based instance.
This makes much of the copy semantics more explicit, and
removes refcounting from an object that only ever had a refcount
of 1 or 2.

No new tests, just a refactor.

  • Modules/indexeddb/IDBBackingStore.cpp:

(WebCore::IDBBackingStore::putRecord):
(WebCore::IDBBackingStore::deleteRecord):
(WebCore::IDBBackingStore::maybeUpdateKeyGeneratorCurrentNumber):
(WebCore::IDBBackingStore::keyExistsInObjectStore):
(WebCore::IDBBackingStore::putIndexDataForRecord):
(WebCore::IDBBackingStore::deleteIndexDataForRecord):
(WebCore::ObjectStoreKeyCursorImpl::loadCurrentRow):
(ObjectStoreCursorImpl):
(WebCore::ObjectStoreCursorImpl::loadCurrentRow):
(WebCore::IndexKeyCursorImpl::recordIdentifier):
(WebCore::IndexCursorImpl::recordIdentifier):

  • Modules/indexeddb/IDBBackingStore.h:

(WebCore::IDBBackingStore::RecordIdentifier::RecordIdentifier):
(WebCore::IDBBackingStore::RecordIdentifier::isValid):
(WebCore::IDBBackingStore::RecordIdentifier::reset):
(RecordIdentifier):
(IDBBackingStore):
(WebCore::IDBBackingStore::Cursor::recordIdentifier):
(WebCore::IDBBackingStore::Cursor::Cursor):
(Cursor):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore):
(WebCore::IDBObjectStoreBackendImpl::setIndexKeys):
(WebCore::IDBObjectStoreBackendImpl::putInternal):
(WebCore::IDBObjectStoreBackendImpl::deleteInternal):

Source/WebKit/chromium:

Update IDBFakeBackingStore to match its parent class.

  • tests/IDBFakeBackingStore.h:
10:57 AM Changeset in webkit [135176] by commit-queue@webkit.org
  • 7 edits
    2 moves in trunk/Source/WebCore

Improve ContentTypeParser, so that it could be used to validate mime type according to RFC
https://bugs.webkit.org/show_bug.cgi?id=100927

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-11-19
Reviewed by Alexey Proskuryakov.

This patch adds ParsedContentType class that represents contents of parsed
content type string. isValidContentType function could be used to check if
format of the content type string is acorrding to RFC 2616 section 4.2.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/network/MIMEHeader.cpp:

(WebCore::MIMEHeader::parseHeader):

  • platform/network/ParsedContentType.cpp: Renamed from Source/WebCore/platform/network/ContentTypeParser.cpp.

(WebCore):
(EmptyParsedContentType):
(WebCore::EmptyParsedContentType::setContentType):
(WebCore::EmptyParsedContentType::setContentTypeParameter):
(WebCore::skipSpaces):
(WebCore::isTokenCharacter):
(WebCore::parseToken):
(WebCore::parseQuotedString):
(WebCore::substringForRange):
(WebCore::parseContentType):
(WebCore::isValidContentType):
(WebCore::ParsedContentType::ParsedContentType):
(WebCore::ParsedContentType::charset):
(WebCore::ParsedContentType::parameterValueForName):
(WebCore::ParsedContentType::parameterCount):
(WebCore::ParsedContentType::setContentType):
(WebCore::ParsedContentType::setContentTypeParameter):

  • platform/network/ParsedContentType.h: Renamed from Source/WebCore/platform/network/ContentTypeParser.h.

(WebCore):
(ParsedContentType):
(WebCore::ParsedContentType::mimeType):

10:20 AM Changeset in webkit [135175] by arv@chromium.org
  • 2 edits in trunk/Source/WebCore

Update DOMException name: InvalidNodeTypeError
https://bugs.webkit.org/show_bug.cgi?id=102519

Reviewed by Kentaro Hara.

Patch 24 of 25 to update DOMException name to match the spec and Firefox.

No code uses DOMException InvalidNodeTypeError. We do use INVALID_NODE_TYPE_ERR for RangeException. See bug 102515.

  • dom/DOMCoreException.cpp:
10:14 AM Changeset in webkit [135174] by shinyak@chromium.org
  • 9 edits
    14 adds in trunk

Changing id, className, or attribute should invalidate distribution
https://bugs.webkit.org/show_bug.cgi?id=100738

Reviewed by Dimitri Glazkov.

PerformanceTests:

Added test code to modify id/class/attribute.

  • DOM/ModifyAttribute.html: Added.
  • DOM/resources/dom-perf/modify-attribute.js: Added.

(ModifyAttribute.CreateElementToSetUp):
(ModifyAttribute.ModifyId):
(ModifyAttribute.ModifyClass):
(ModifyAttribute.ModifyTitle):

Source/WebCore:

When id, className, or attribute is changed, we might have to invalidate distribution.
However, we don't want to do useless invalidation. So we consult with the RuleFeatureSet of ElementShadow
to invalidate distribution only if necessary.

For the code that className is changed, we can share a lot of code between invalidating distribution and
invalidating style. So we made checkNeedsStyleInvalidationForClassChange a template method, and share it.

Since attributeChanged() is a hot method, we don't want to make it slow. So we made one function to determine
whether we have to invalidate distribution, and make it called only if necessary. Also, we've optimized
shadowOfParentForDistribution() by making isInsertionPoint() de-virtualed. We consuded NodeFlags (IsInsertionPointFlag)
for this purpose.

We've measured how this patch makes changing attribute slow. I've measured each code 3 times.
DOM/ModifyAttribute.html is a micro benchmark which changes attribute a lot of times. The result of this benchmark
will be the most affected by this patch. However, it's only 2% performance regression.

DOM/ModifyAttribute.html
Before this patch:

median stdev min max [ms]

1st 494.0 3.36 490.0 502.0
2nd 503.5 3.44 497.0 512.0
3rd 494.0 3.48 488.0 499.0

After this patch:

median stdev min max [ms]

1st 504.0 2.00 501.0 509.0
2nd 505.5 3.08 500.0 513.0
3rd 507.0 2.32 502.0 510.0

Tests: fast/dom/shadow/distribution-attribute-modified.html

fast/dom/shadow/distribution-className-modified.html
fast/dom/shadow/distribution-id-modified.html
fast/dom/shadow/reprojection-attribute-modified.html
fast/dom/shadow/reprojection-className-modified.html
fast/dom/shadow/reprojection-id-modified.html

  • dom/Element.cpp:

(WebCore::Element::attributeChanged):
(WebCore::HasSelectorForClassStyleFunctor::HasSelectorForClassStyleFunctor):
(HasSelectorForClassStyleFunctor):
(WebCore::HasSelectorForClassStyleFunctor::operator()): Returns true if StyleResolver::hasSelectorForClass returns true.
(WebCore):
(WebCore::HasSelectorForClassDistributionFunctor::HasSelectorForClassDistributionFunctor):
(HasSelectorForClassDistributionFunctor):
(WebCore::HasSelectorForClassDistributionFunctor::operator()): Returns true if ElementShadow::hasSelectForClass returns true.
(WebCore::checkFunctorForClassChange):
(WebCore::checkNeedsStyleInvalidationForClassChange):
(WebCore::checkNeedsDistributionInvalidationForClassChange): Extracted the implementation to checkFunctorForClassChange.
(WebCore::Element::shouldInvalidateDistributionWhenAttributeChanged):

  • dom/Element.h:

(Element):

  • dom/Node.h:

(WebCore::Node::isInsertionPoint):

  • html/HTMLElement.h:

(HTMLElement):

  • html/shadow/InsertionPoint.cpp:

(WebCore::InsertionPoint::InsertionPoint):

  • html/shadow/InsertionPoint.h:

(InsertionPoint):
(WebCore::isInsertionPoint):
(WebCore::shadowOfParentForDistribution):
(WebCore::resolveReprojection):

LayoutTests:

We have test cases that id/class/attribute is changed, and thier reprojection cases.

  • fast/dom/shadow/distribution-attribute-modified-expected.html: Added.
  • fast/dom/shadow/distribution-attribute-modified.html: Added.
  • fast/dom/shadow/distribution-className-modified-expected.html: Added.
  • fast/dom/shadow/distribution-className-modified.html: Added.
  • fast/dom/shadow/distribution-id-modified-expected.html: Added.
  • fast/dom/shadow/distribution-id-modified.html: Added.
  • fast/dom/shadow/reprojection-attribute-modified-expected.html: Added.
  • fast/dom/shadow/reprojection-attribute-modified.html: Added.
  • fast/dom/shadow/reprojection-className-modified-expected.html: Added.
  • fast/dom/shadow/reprojection-className-modified.html: Added.
  • fast/dom/shadow/reprojection-id-modified-expected.html: Added.
  • fast/dom/shadow/reprojection-id-modified.html: Added.
10:05 AM Changeset in webkit [135173] by ericu@chromium.org
  • 1 edit in branches/chromium/1312/Source/WebKit/chromium/src/ChromeClientImpl.cpp

Merge 134654 - [chromium] Don't let shift-click turn popup into tab.
https://bugs.webkit.org/show_bug.cgi?id=102254

Reviewed by Adam Barth.

Change http://trac.webkit.org/changeset/132399 broke shift-click on
compose in GMail. We didn't want to change behavior that people were
depending on, and this quick fix seems a good compromise between user
intent and developer intent.

  • src/ChromeClientImpl.cpp:

(WebKit::updatePolicyForEvent):

TBR=ericu@chromium.org
Review URL: https://codereview.chromium.org/11413067

10:00 AM Changeset in webkit [135172] by Nate Chapin
  • 16 edits in trunk

Move empty loading to DocumentLoader, simplify FrameLoader::init()
https://bugs.webkit.org/show_bug.cgi?id=101512

Reviewed by Adam Barth.

Source/WebCore:

No new tests, though several outputs changed because we no longer send resource

load callbacks for empty loads.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::DocumentLoader):
(WebCore::DocumentLoader::~DocumentLoader):
(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::clearMainResourceLoader):
(WebCore::DocumentLoader::isLoadingInAPISense):
(WebCore::DocumentLoader::isLoadingMainResource):
(WebCore::DocumentLoader::maybeLoadEmpty):
(WebCore):
(WebCore::DocumentLoader::startLoadingMainResource): Handle empty main resource

loads directly here.

  • loader/DocumentLoader.h:

(DocumentLoader):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::FrameLoader): Initialize some variables whose values

were previously being reset in init(). Given that the FrameLoader is in
an inconsistent state before init() is called anyway, there doesn't seem
to be a disadvantage to just initializing them to their post-init() values.

(WebCore::FrameLoader::init): Just call startLoadingMainResource(), instead of

doing a bunch of direct calls to functions FrameLoader shouldn't know about.

  • loader/FrameLoaderStateMachine.cpp:

(WebCore::FrameLoaderStateMachine::FrameLoaderStateMachine):

  • loader/FrameLoaderStateMachine.h:
  • loader/MainResourceLoader.cpp: Throughout, remove the concept of an empty load.

(WebCore::MainResourceLoader::loadNow): This only returned true when an empty

load got deferred, which won't happen now. Return void and always treat
as returning false.

  • loader/MainResourceLoader.h:

(MainResourceLoader):

Tools:

Chromium DRT has some code that doesn't play nicely with empty urls and incorrectly
interprets them as a non-empty load. This ensures
http/tests/navigation/new-window-redirect-history.html continues to pass
in chromium.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::updateForCommittedLoad):

LayoutTests:

Don't expect resource load callbacks for empty loads.

  • http/tests/inspector/network/network-iframe-load-and-delete.html:
  • http/tests/loading/redirect-methods-expected.txt:
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt:
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt:
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt:
9:58 AM Changeset in webkit [135171] by kbalazs@webkit.org
  • 2 edits in trunk/LayoutTests

REGRESSION(r132907): It made animations/negative-delay.html flaky https://bugs.webkit.org/show_bug.cgi?id=100769

Unreviewed gardening (Qt).

These tests are rather flaky, mark them as so.

  • platform/qt-5.0-wk2/TestExpectations:
9:51 AM Changeset in webkit [135170] by scheib@chromium.org
  • 5 edits in trunk

[Chromium] Remove WebKit::WebRuntimeFeatures::enablePointerLock.
https://bugs.webkit.org/show_bug.cgi?id=96946

Reviewed by Adam Barth.

The runtime flag functionality has already been removed.
Now that Chromium no longer has a compile dependency on this
API, it can be removed as well.

Source/WebKit/chromium:

  • public/WebRuntimeFeatures.h:

(WebRuntimeFeatures):

  • src/WebRuntimeFeatures.cpp:

Tools:

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

9:36 AM Changeset in webkit [135169] by arv@chromium.org
  • 3 edits in trunk

Update DOMException name: TimeoutError
https://bugs.webkit.org/show_bug.cgi?id=102513

Reviewed by Kentaro Hara.

Patch 23 of 25 to update DOMException name to match the spec and Firefox.

No code uses DOMException TimeoutError. We do use TIMEOUT_ERR for XMLHttpRequestException. See bug 102506.

  • dom/DOMCoreException.cpp:
9:10 AM Changeset in webkit [135168] by arv@chromium.org
  • 14 edits in trunk

Update DOMException name: DataCloneError
https://bugs.webkit.org/show_bug.cgi?id=102521

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 25 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

  • dom/DOMCoreException.cpp:

LayoutTests:

Updated tests and expectations.

  • fast/dom/Window/anonymous-slot-with-changes-expected.txt:
  • fast/dom/Window/window-postmessage-clone-expected.txt:
  • fast/dom/shadow/shadowroot-clonenode-expected.txt:
  • fast/dom/shadow/shadowroot-clonenode.html:
  • fast/events/message-port-multi-expected.txt:
  • fast/filesystem/filesystem-unserializable-expected.txt:
  • platform/chromium/fast/dom/Window/window-postmessage-clone-expected.txt:
  • platform/chromium/fast/dom/Window/window-postmessage-clone-really-deep-array-expected.txt:
  • platform/gtk/fast/dom/Window/window-postmessage-clone-expected.txt:
  • webintents/web-intents-obj-constructor-expected.txt:
  • webintents/web-intents-obj-constructor.html:
8:56 AM Changeset in webkit [135167] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Improve performance of RenderBoxModelObject::paintTranslucentBorderSides()
https://bugs.webkit.org/show_bug.cgi?id=98660

Patch by Tom Hudson <tomhudson@chromium.org> on 2012-11-19
Reviewed by Simon Fraser.

Accumulate edges[i].shouldRender() in a flag field and pass that to paintBorderSides()
and paintTranslucentBorderSides() so that we don't do unnecessary work.

If we can avoid setting up and tearing down an unnecessary transparent layer we save
30ms on some mobile platforms.

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintBorder):
(WebCore::RenderBoxModelObject::paintTranslucentBorderSides):

8:54 AM Changeset in webkit [135166] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Exclusions] remove null exclusion shape check from ExclusionShape::createExclusionShape
https://bugs.webkit.org/show_bug.cgi?id=100765

Patch by Hans Muller <hmuller@adobe.com> on 2012-11-19
Reviewed by Dirk Schulze.

ExclusionShape::createExclusionShape now ASSERTs that its basicShape argument
isn't null, since the caller is expected to ensure as much. No new tests were
needed since this is a near-trivial cleanup.

  • rendering/ExclusionShape.cpp:

(WebCore::ExclusionShape::createExclusionShape): This method no longer defends against a null basicShape argument by returning null.

8:41 AM Changeset in webkit [135165] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebCore

Use device scale factor instead of physical screen DPI for screen DPI
https://bugs.webkit.org/show_bug.cgi?id=101769

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-11-19
Reviewed by Adam Barth.

Media queries call WebCore::Screen::{horizontal,vertical}DPI() to determine
the dots per CSS inch[1] value for the "screen" media type. On Chromium these
functions currently return the physical screen DPI, which is wrong. To fix
this, we remove both of these functions entirely and make media queries use
the device scale factor multiplied by 96 on all ports.

[1] http://www.w3.org/TR/css3-mediaqueries/#resolution0

  • page/Screen.cpp:

(WebCore::Screen::horizontalDPI):
(WebCore::Screen::verticalDPI):

  • platform/PlatformScreen.h:

(WebCore):

  • platform/blackberry/PlatformScreenBlackBerry.cpp:
  • platform/chromium/PlatformScreenChromium.cpp:
  • platform/efl/PlatformScreenEfl.cpp:
  • platform/gtk/PlatformScreenGtk.cpp:
  • platform/mac/PlatformScreenMac.mm:
  • platform/qt/PlatformScreenQt.cpp:
  • platform/win/PlatformScreenWin.cpp:
  • platform/wx/ScreenWx.cpp:
8:39 AM Changeset in webkit [135164] by jchaffraix@webkit.org
  • 11 edits
    1 copy in trunk/Source/WebCore

Computed grid items' positions shouldn't be using Length
https://bugs.webkit.org/show_bug.cgi?id=102537

Reviewed by Tony Chang.

This change refactors how we store the grid items' position to use
a new type GridPosition. Length was a temporary type as it supported
'auto' | <integer> but it was starting to get more and more confusing
as we were implementing the layout routines.

No change in behavior.

  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Added the new file to the build systems.

  • rendering/style/RenderStyle.h:

Updated after the type change. Also made some getters
return a const reference instead of forcing a copy.

  • rendering/style/StyleGridItemData.h:

(StyleGridItemData):
Ditto, also removed a comment about adding a new type.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForGridPosition):

  • css/StyleResolver.cpp:

(WebCore::createGridPosition):
(WebCore::StyleResolver::applyProperty):

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::resolveGridPosition):
Updated these sites after switching to GridPosition.

  • rendering/RenderGrid.h:

Changed resolveGridPosition signature: it now takes a GridPosition.

  • rendering/style/GridPosition.h: Added.

(WebCore::GridPosition::GridPosition):
Default constructor, creates an 'auto' position.

(WebCore::GridPosition::isPositive):
(WebCore::GridPosition::type):
(WebCore::GridPosition::isAuto):
(WebCore::GridPosition::setIntegerPosition):
(WebCore::GridPosition::integerPosition):
Helper functions.

(WebCore::GridPosition::operator==):
Required comparison operator for StyleGridItemData.

8:37 AM Changeset in webkit [135163] by commit-queue@webkit.org
  • 16 edits
    53 adds in trunk

Apply the resolved viewport rules
https://bugs.webkit.org/show_bug.cgi?id=95964

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-11-19
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

This patch implements the CSS Device Adaptation specification. The
WebKit implementation relies on the already implemented Viewport Meta
infrastructure to notify the browser of viewport changes.

The implementation was tests with success on the Qt and EFL ports, but
basically every port supporting Viewport Meta should be fine.

The usage of @-webkit-viewport inside media queries (more tests coming
to map all the corner cases) is currently limited when the media query
depends on the viewport dimensions itself. Defining the width and height
based on screen size will fail on ports reporting the screen
size as the size of the browser window instead of the device screen.

Tests: css3/device-adapt/opera/cascading-001.xhtml

css3/device-adapt/opera/cascading-002.xhtml
css3/device-adapt/opera/cascading-003.xhtml
css3/device-adapt/opera/cascading-004.xhtml
css3/device-adapt/opera/constrain-001.xhtml
css3/device-adapt/opera/constrain-002.xhtml
css3/device-adapt/opera/constrain-003.xhtml
css3/device-adapt/opera/constrain-004.xhtml
css3/device-adapt/opera/constrain-005.xhtml
css3/device-adapt/opera/constrain-006.xhtml
css3/device-adapt/opera/constrain-007.xhtml
css3/device-adapt/opera/constrain-008.xhtml
css3/device-adapt/opera/constrain-009.xhtml
css3/device-adapt/opera/constrain-010.xhtml
css3/device-adapt/opera/constrain-011.xhtml
css3/device-adapt/opera/constrain-012.xhtml
css3/device-adapt/opera/constrain-013.xhtml
css3/device-adapt/opera/constrain-014.xhtml
css3/device-adapt/opera/constrain-015.xhtml
css3/device-adapt/opera/constrain-016.xhtml
css3/device-adapt/opera/constrain-017.xhtml
css3/device-adapt/opera/constrain-020.xhtml
css3/device-adapt/opera/syntax-001.xhtml
css3/device-adapt/opera/syntax-002.xhtml
css3/device-adapt/opera/syntax-003.xhtml

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSAllInOne.cpp:
  • css/RuleSet.cpp:

(WebCore::RuleSet::addRulesFromSheet):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::appendAuthorStyleSheets):
(WebCore::StyleResolver::~StyleResolver):

  • css/StyleResolver.h:

(StyleResolver):
(WebCore::StyleResolver::viewportStyleResolver):

  • css/ViewportStyleResolver.cpp: Added.

(WebCore):
(WebCore::ViewportStyleResolver::ViewportStyleResolver):
(WebCore::ViewportStyleResolver::addViewportRule):
(WebCore::ViewportStyleResolver::clearDocument):
(WebCore::ViewportStyleResolver::resolve):
(WebCore::ViewportStyleResolver::getViewportArgumentValue):

  • css/ViewportStyleResolver.h: Added.

(WebCore):
(ViewportStyleResolver):
(WebCore::ViewportStyleResolver::create):

  • dom/Document.h:

(WebCore::Document::setViewportArguments):

  • dom/ViewportArguments.cpp:

(WebCore::compareIgnoringAuto):
(WebCore):
(WebCore::ViewportArguments::resolve):

  • dom/ViewportArguments.h:

(ViewportAttributes):
(WebCore::ViewportArguments::ViewportArguments):
(ViewportArguments):
(WebCore::ViewportArguments::operator==):

LayoutTests:

Imported some of the CSS Device Adaptation tests submitted by
Opera to W3C CSS Test Suite. These tests are not yet approved but
they have a pretty good coverage of the specification.

Tests using Math.floor() where modified from the original version
using Math.round(), the reason being the round() version fails by
1px when the pixel ratio is different from 1.

Despite the fact they are all passing on the EFL MiniBrowser, I could
not enable them yet. WebKitTestRunner does not support fixed layout,
but that is the next goal.

  • css3/device-adapt/opera/cascading-001-expected.txt: Added.
  • css3/device-adapt/opera/cascading-001.xhtml: Added.
  • css3/device-adapt/opera/cascading-002-expected.txt: Added.
  • css3/device-adapt/opera/cascading-002.xhtml: Added.
  • css3/device-adapt/opera/cascading-003-expected.txt: Added.
  • css3/device-adapt/opera/cascading-003.xhtml: Added.
  • css3/device-adapt/opera/cascading-004-expected.txt: Added.
  • css3/device-adapt/opera/cascading-004.xhtml: Added.
  • css3/device-adapt/opera/constrain-001-expected.txt: Added.
  • css3/device-adapt/opera/constrain-001.xhtml: Added.
  • css3/device-adapt/opera/constrain-002-expected.txt: Added.
  • css3/device-adapt/opera/constrain-002.xhtml: Added.
  • css3/device-adapt/opera/constrain-003-expected.txt: Added.
  • css3/device-adapt/opera/constrain-003.xhtml: Added.
  • css3/device-adapt/opera/constrain-004-expected.txt: Added.
  • css3/device-adapt/opera/constrain-004.xhtml: Added.
  • css3/device-adapt/opera/constrain-005-expected.txt: Added.
  • css3/device-adapt/opera/constrain-005.xhtml: Added.
  • css3/device-adapt/opera/constrain-006-expected.txt: Added.
  • css3/device-adapt/opera/constrain-006.xhtml: Added.
  • css3/device-adapt/opera/constrain-007-expected.txt: Added.
  • css3/device-adapt/opera/constrain-007.xhtml: Added.
  • css3/device-adapt/opera/constrain-008-expected.txt: Added.
  • css3/device-adapt/opera/constrain-008.xhtml: Added.
  • css3/device-adapt/opera/constrain-009-expected.txt: Added.
  • css3/device-adapt/opera/constrain-009.xhtml: Added.
  • css3/device-adapt/opera/constrain-010-expected.txt: Added.
  • css3/device-adapt/opera/constrain-010.xhtml: Added.
  • css3/device-adapt/opera/constrain-011-expected.txt: Added.
  • css3/device-adapt/opera/constrain-011.xhtml: Added.
  • css3/device-adapt/opera/constrain-012-expected.txt: Added.
  • css3/device-adapt/opera/constrain-012.xhtml: Added.
  • css3/device-adapt/opera/constrain-013-expected.txt: Added.
  • css3/device-adapt/opera/constrain-013.xhtml: Added.
  • css3/device-adapt/opera/constrain-014-expected.txt: Added.
  • css3/device-adapt/opera/constrain-014.xhtml: Added.
  • css3/device-adapt/opera/constrain-015-expected.txt: Added.
  • css3/device-adapt/opera/constrain-015.xhtml: Added.
  • css3/device-adapt/opera/constrain-016-expected.txt: Added.
  • css3/device-adapt/opera/constrain-016.xhtml: Added.
  • css3/device-adapt/opera/constrain-017-expected.txt: Added.
  • css3/device-adapt/opera/constrain-017.xhtml: Added.
  • css3/device-adapt/opera/constrain-020-expected.txt: Added.
  • css3/device-adapt/opera/constrain-020.xhtml: Added.
  • css3/device-adapt/opera/syntax-001-expected.txt: Added.
  • css3/device-adapt/opera/syntax-001.xhtml: Added.
  • css3/device-adapt/opera/syntax-002-expected.txt: Added.
  • css3/device-adapt/opera/syntax-002.xhtml: Added.
  • css3/device-adapt/opera/syntax-003-expected.txt: Added.
  • css3/device-adapt/opera/syntax-003.xhtml: Added.
  • platform/efl/TestExpectations:
8:26 AM Changeset in webkit [135162] by arv@chromium.org
  • 42 edits in trunk

Update DOMException name: SecurityError
https://bugs.webkit.org/show_bug.cgi?id=102437

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 18 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

  • dom/DOMCoreException.cpp:

LayoutTests:

Updated tests and expectations.

  • fast/canvas/svg-taint-expected.txt:
  • fast/dom/Document/invalid-domain-change-throws-exception-expected.txt:
  • fast/dom/Document/script-tests/invalid-domain-change-throws-exception.js:
  • fast/dom/register-protocol-handler.html:
  • fast/frames/resources/sandboxed-iframe-storage-disallowed.html:
  • fast/frames/sandboxed-iframe-storage-expected.txt:
  • http/tests/loading/state-object-security-exception-expected.txt:
  • http/tests/notifications/legacy/show-expected.txt:
  • http/tests/security/canvas-remote-read-remote-image-blocked-no-crossorigin-expected.txt:
  • http/tests/security/canvas-remote-read-remote-image-expected.txt:
  • http/tests/security/canvas-remote-read-remote-image-redirect-expected.txt:
  • http/tests/security/contentSecurityPolicy/worker-script-src-expected.txt:
  • http/tests/security/cross-origin-local-storage-expected.txt:
  • http/tests/security/cross-origin-session-storage-expected.txt:
  • http/tests/security/cross-origin-websql-expected.txt:
  • http/tests/security/cross-origin-worker-websql-expected.txt:
  • http/tests/security/resources/sandboxed-iframe-document-cookie-read-denied.html:
  • http/tests/security/same-origin-storage-blocked-expected.txt:
  • http/tests/security/same-origin-websql-blocked-expected.txt:
  • http/tests/security/setDomainRelaxationForbiddenForURLScheme-expected.txt:
  • http/tests/security/storage-blocking-loosened-local-storage-expected.txt:
  • http/tests/security/storage-blocking-loosened-websql-expected.txt:
  • http/tests/security/storage-blocking-strengthened-local-storage-expected.txt:
  • http/tests/security/storage-blocking-strengthened-websql-expected.txt:
  • http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin-expected.txt:
  • http/tests/websocket/tests/hybi/url-parsing-expected.txt:
  • http/tests/workers/shared-worker-redirect-expected.txt:
  • http/tests/workers/worker-redirect-expected.txt:
  • platform/chromium-win/websocket/tests/url-parsing-expected.txt:
  • platform/chromium/fast/dom/register-protocol-handler-expected.txt:
  • platform/chromium/http/tests/websocket/tests/hixie76/url-parsing-expected.txt:
  • platform/chromium/http/tests/websocket/tests/hybi/url-parsing-expected.txt:
  • platform/chromium/permissionclient/storage-permission-expected.txt:
  • platform/win-wk2/http/tests/inspector-enabled/database-open-expected.txt:
8:00 AM Changeset in webkit [135161] by yael@webkit.org
  • 2 edits
    7 adds in trunk/LayoutTests

Unreviewed gardening after r133898.
Added expected results for animation tests that are now passing.

  • platform/efl/TestExpectations:
  • platform/efl/animations/3d: Added.
  • platform/efl/animations/3d/change-transform-in-end-event-expected.png: Added.
  • platform/efl/animations/3d/change-transform-in-end-event-expected.txt: Added.
  • platform/efl/animations/3d/matrix-transform-type-animation-expected.png: Added.
  • platform/efl/animations/3d/matrix-transform-type-animation-expected.txt: Added.
  • platform/efl/animations/3d/state-at-end-event-transform-expected.png: Added.
  • platform/efl/animations/3d/state-at-end-event-transform-expected.txt: Added.
7:53 AM Changeset in webkit [135160] by arv@chromium.org
  • 4 edits in trunk

Update DOMException name: URLMismatchError
https://bugs.webkit.org/show_bug.cgi?id=102511

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 21 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

  • dom/DOMCoreException.cpp:

(WebCore):

LayoutTests:

Updated tests and expectations.

  • fast/workers/shared-worker-shared-expected.txt:
7:42 AM Changeset in webkit [135159] by kihong.kwon@samsung.com
  • 20 edits in trunk

Add PROXIMITY_EVENTS feature
https://bugs.webkit.org/show_bug.cgi?id=102658

Reviewed by Kentaro Hara.

.:

Add PROXIMITY_EVENTS feature to cmake.

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

Add PROXIMITY_EVENTS feature to xcode project for JavaScriptCore.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Add PROXIMITY_EVENTS feature to xcode project for WebCorei and GNU make.

No new tests. Just add a new feature.

  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.features.am:

Source/WebKit/chromium:

Add PROXIMITY_EVENTS feature to chromium port.

  • features.gypi:

Source/WebKit/mac:

Add PROXIMITY_EVENTS feature to xcode project for WebKit.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Add PROXIMITY_EVENTS feature to xcode project for WebKit2.

  • Configurations/FeatureDefines.xcconfig:

Tools:

Add PROXIMITY_EVENTS feature to FeatureList and qmake.

  • Scripts/webkitperl/FeatureList.pm:
  • qmake/mkspecs/features/features.pri:

WebKitLibraries:

Add PROXIMITY_EVENTS feature to win and win-cairo prot.

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:
7:39 AM Changeset in webkit [135158] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Dim a component's subitems' color in NMI snapshot
https://bugs.webkit.org/show_bug.cgi?id=102224

Patch by Alexei Filippov <alph@chromium.org> on 2012-11-19
Reviewed by Yury Semikhatsky.

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeSnapshotNode.prototype._createSizeCell):

  • inspector/front-end/nativeMemoryProfiler.css:

(.native-snapshot-view .data-grid .dimmed div.size-bar):

7:35 AM Changeset in webkit [135157] by arv@chromium.org
  • 2 edits in trunk/Source/WebCore

Update DOMException name: NetworkError
https://bugs.webkit.org/show_bug.cgi?id=102503

Reviewed by Kentaro Hara.

Patch 19 of 25 to update DOMException name to match the spec and Firefox.

No code uses DOMException NetworkError. We do use NETWORK_ERR for XMLHttpRequestException. See bug 102506.

  • dom/DOMCoreException.cpp:
7:26 AM Changeset in webkit [135156] by loislo@chromium.org
  • 5 edits in trunk/Source/WebCore

webaudio: clean-up. Replace AudioContext::m_document member with ContextDestructionObserver::scriptExecutionContext().
https://bugs.webkit.org/show_bug.cgi?id=102649

Reviewed by Adam Barth.

AudioContext uses m_document only as a pointer to ScriptExecutionContext.
It could be safely replaced with ContextDestructionObserver::m_scriptExecutionContext.
The lifetime of m_scriptExecutionContext is slightly different but it could be adjusted by m_isStopScheduled flag.

No new tests as there is no new functionality.

  • Modules/webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::looping):
(WebCore::AudioBufferSourceNode::setLooping):

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::AudioContext):
(WebCore::AudioContext::stop):
(WebCore::AudioContext::scriptExecutionContext):
(WebCore::AudioContext::fireCompletionEvent):
(WebCore::AudioContext::reportMemoryUsage):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • Modules/webaudio/ScriptProcessorNode.cpp:

(WebCore::ScriptProcessorNode::fireProcessEvent):
(WebCore::ScriptProcessorNode::scriptExecutionContext):

7:24 AM Changeset in webkit [135155] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Unreviewed gardening, unskip a now passing test.

  • platform/qt-5.0-wk2/TestExpectations:
6:58 AM Changeset in webkit [135154] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[EFL][WK2] Fix possible crash in EwkViewImpl::displayTimerFired()
https://bugs.webkit.org/show_bug.cgi?id=102682

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-19
Reviewed by Kenneth Rohde Christiansen.

Add NULL check for DrawingAreaProxy and LayerTreeCoordinatorProxy
in displayTimerFired() to avoid crashing if those have already
been destroyed by the time to timer is fired.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::layerTreeRenderer):
(EwkViewImpl::displayTimerFired):
(EwkViewImpl::createGLSurface):
(EwkViewImpl::enterAcceleratedCompositingMode):

  • UIProcess/API/efl/EwkViewImpl.h:

(WebKit):
(EwkViewImpl):

6:55 AM Changeset in webkit [135153] by Csaba Osztrogonác
  • 3 edits
    1 delete in trunk/LayoutTests

[Qt] Unreviewed gardening, skip new failing tests.

  • platform/qt-5.0-wk2/TestExpectations:
  • platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-out-of-view-expected.txt: Removed, because it is unnecessary.
  • platform/qt/TestExpectations:
6:53 AM Changeset in webkit [135152] by loislo@chromium.org
  • 16 edits
    2 adds in trunk

webaudio: leak: AudioContext objects are leaking. They retain 36mb of shared data.
https://bugs.webkit.org/show_bug.cgi?id=102356

Reviewed by Adam Barth.

A clean-up code was moved from uninitialize to clear method.
AudioContext marks itself as hasPendingActivity in method constructCommon and unmarks itself in method clear.
m_isStopScheduled filters out second ActiveDOMObject::stop call.
markForDeletion appends AudioNode pointer to m_nodesToDelete array if there is no active audio thread.
adoptRef was added in createOfflineContext method.
A guard was added into deleteMarkedNodes.

Source/WebCore:

Test: inspector-protocol/nmi-webaudio-leak-test.html

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::createOfflineContext):
(WebCore::AudioContext::AudioContext):
(WebCore::AudioContext::constructCommon):
(WebCore::AudioContext::~AudioContext):
(WebCore::AudioContext::clear):
(WebCore::AudioContext::uninitialize):
(WebCore::AudioContext::stopDispatch):
(WebCore::AudioContext::stop):
(WebCore::AudioContext::markForDeletion):
(WebCore::AudioContext::scheduleNodeDeletion):
(WebCore::AudioContext::deleteMarkedNodes):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallback):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • platform/PlatformMemoryInstrumentation.cpp:

(WebCore::PlatformMemoryInstrumentation::reportMemoryUsage):
(WebCore):

  • platform/PlatformMemoryInstrumentation.h:

(PlatformMemoryInstrumentation):
(WebCore):

LayoutTests:

  • inspector-protocol/nmi-webaudio-leak-test-expected.txt: Added.
  • inspector-protocol/nmi-webaudio-leak-test.html: Added.
  • platform/chromium-android/TestExpectations:
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
6:50 AM Changeset in webkit [135151] by commit-queue@webkit.org
  • 5 edits in trunk

[WK2][WTR] Memory leak in TestController::initialize()
https://bugs.webkit.org/show_bug.cgi?id=102616

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-19
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Export a few additional WTF symbols for windows port.

  • win/WebKit2.def:

Tools:

Remove call to WKStringCreateWithUTF8CString() to construct
the icon database path which was leaking memory since the
returned WKStringRef was not adopted. The code now uses
WTF::String instead of std::string and converts it to a
WKStringRef using toWK().

  • WebKitTestRunner/StringFunctions.h:

(WTR::toWK): Overload toWK() to take a WTF::String in
argument.
(WTR):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):

6:43 AM Changeset in webkit [135150] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Use devicePixelRatio instead of screen DPI for computing viewport attributes
https://bugs.webkit.org/show_bug.cgi?id=101767

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-11-19
Reviewed by Adam Barth.

Use the newly introduced device scale factor to calculate viewport properties
instead of using the screen DPI. No functional changes, because Chromium
platforms that have VIEWPORT enabled now also initialize the device scale
factor accordingly.

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::dispatchViewportPropertiesDidChange):

  • tests/WebFrameTest.cpp:
6:30 AM Changeset in webkit [135149] by arv@chromium.org
  • 6 edits in trunk

Update DOMException name: QuotaExceededError
https://bugs.webkit.org/show_bug.cgi?id=102512

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 22 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

  • dom/DOMCoreException.cpp:

LayoutTests:

Updated tests and expectations.

  • security/crypto-random-values-limits-expected.txt:
  • storage/domstorage/localstorage/private-browsing-affects-storage-expected.txt:
  • storage/domstorage/sessionstorage/private-browsing-affects-storage-expected.txt:
6:25 AM Changeset in webkit [135148] by arv@chromium.org
  • 2 edits in trunk/Source/WebCore

Update DOMException name: AbortError
https://bugs.webkit.org/show_bug.cgi?id=102508

Reviewed by Kentaro Hara.

Patch 20 of 25 to update DOMException name to match the spec and Firefox.

No code uses DOMException AbortError. We do use ABORT_ERR for XMLHttpRequestException. See bug 102506.

  • dom/DOMCoreException.cpp:
5:43 AM Changeset in webkit [135147] by haraken@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed gardening.

  • platform/chromium-linux/fast/forms/month-multiple-fields/month-multiple-fields-value-set-empty-expected.txt: Added.
5:40 AM Changeset in webkit [135146] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

  • platform/chromium/TestExpectations:
5:36 AM Changeset in webkit [135145] by haraken@chromium.org
  • 16 edits
    2 deletes in trunk

Unreviewed, rolling out r135111.
http://trac.webkit.org/changeset/135111
https://bugs.webkit.org/show_bug.cgi?id=102356

The patch caused crashes in several layout tests

Source/WebCore:

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::createOfflineContext):
(WebCore::AudioContext::AudioContext):
(WebCore::AudioContext::constructCommon):
(WebCore::AudioContext::~AudioContext):
(WebCore::AudioContext::uninitialize):
(WebCore::AudioContext::uninitializeDispatch):
(WebCore::AudioContext::stop):
(WebCore::AudioContext::markForDeletion):
(WebCore::AudioContext::scheduleNodeDeletion):
(WebCore::AudioContext::deleteMarkedNodes):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallback):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • platform/PlatformMemoryInstrumentation.cpp:

(WebCore):

  • platform/PlatformMemoryInstrumentation.h:

LayoutTests:

  • inspector-protocol/nmi-webaudio-leak-test-expected.txt: Removed.
  • inspector-protocol/nmi-webaudio-leak-test.html: Removed.
  • platform/chromium-android/TestExpectations:
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
5:34 AM Changeset in webkit [135144] by haraken@chromium.org
  • 5 edits in trunk/Source/WebCore

Unreviewed, rolling out r135116.
http://trac.webkit.org/changeset/135116
https://bugs.webkit.org/show_bug.cgi?id=102649

Revert this patch to revert r135111, which caused crashes in
several layout tests

  • Modules/webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::looping):
(WebCore::AudioBufferSourceNode::setLooping):

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::AudioContext):
(WebCore::AudioContext::stop):
(WebCore::AudioContext::document):
(WebCore):
(WebCore::AudioContext::hasDocument):
(WebCore::AudioContext::scriptExecutionContext):
(WebCore::AudioContext::fireCompletionEvent):
(WebCore::AudioContext::reportMemoryUsage):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • Modules/webaudio/ScriptProcessorNode.cpp:

(WebCore::ScriptProcessorNode::fireProcessEvent):
(WebCore::ScriptProcessorNode::scriptExecutionContext):

5:24 AM Changeset in webkit [135143] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

  • platform/chromium/TestExpectations:
5:23 AM Changeset in webkit [135142] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: Refine JsDoc in DebuggerScriptMapping.js
https://bugs.webkit.org/show_bug.cgi?id=102673

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-11-19
Reviewed by Vsevolod Vlasov.

DebuggerScriptMapping calls public method "addScript" not defined
in SourceMapping interface.

To make things clear I've added ScriptSourceMapping interface that
extends SourceMapping interface by adding "addScript" method.

  • inspector/front-end/SourceMapping.js: Added "ScriptSourceMapping".
  • inspector/front-end/CompilerScriptMapping.js:

Updated "@implements" to ScriptSourceMapping.

  • inspector/front-end/ResourceScriptMapping.js: Ditto.
  • inspector/front-end/ScriptSnippetModel.js: Ditto.
  • inspector/front-end/DebuggerScriptMapping.js: Updated signatures.

Removed useless code.

5:18 AM Changeset in webkit [135141] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

  • platform/chromium/TestExpectations:
5:07 AM Changeset in webkit [135140] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

  • platform/chromium/TestExpectations:
5:02 AM Changeset in webkit [135139] by haraken@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed. Rebaselined a text dump.

  • platform/chromium-win/fast/forms/month-multiple-fields/month-multiple-fields-value-set-empty-expected.txt: Added.
3:47 AM Changeset in webkit [135138] by kkristof@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

Update test expectation and skip a new failing test.

  • platform/qt-5.0/fast/js/global-constructors-expected.txt:
  • platform/qt/TestExpectations:
3:38 AM Changeset in webkit [135137] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, untested build fix.

  • bindings/scripts/IDLParser.pm:

(parseModule):

3:29 AM Changeset in webkit [135136] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS3] Move CSSPropertyWebkitTextAlignLast into isValidKeywordPropertyAndValue function
https://bugs.webkit.org/show_bug.cgi?id=102303

Patch by Dongwoo Joshua Im <dw.im@samsung.com> on 2012-11-19
Reviewed by Alexis Menard.

Move the part which check whether CSSPropertyWebkitTextAlignLast has available value
into the isValidKeywordPropertyAndValue function, like the same kind of properties.
This will help speed wise in JS.

No new functionality, no new tests.

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

3:22 AM Changeset in webkit [135135] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] Test /webkit2/WebKitWebView/create-ready-close is failing after r134586
https://bugs.webkit.org/show_bug.cgi?id=102668

Reviewed by Philippe Normand.

Check only that window properties match when creating a new window
if the expected window properties has been set. Also remove a
FIXME and actually check that x and y are equal to the expected
one, now that the issue is fixed.

  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
3:13 AM Changeset in webkit [135134] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][WK2] Enable media tests that pass after r135063
https://bugs.webkit.org/show_bug.cgi?id=102657

Unreviewed gardening, these test no longer crash after
https://bugs.webkit.org/show_bug.cgi?id=101428.

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-11-19

  • platform/efl-wk2/TestExpectations:
3:13 AM Changeset in webkit [135133] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION (r133565): Calendar picker isn't animating when changing month by pressing 't'
https://bugs.webkit.org/show_bug.cgi?id=102660

Reviewed by Kent Tamura.

The calendar picker used to animate when you press 't'.

No new tests.

  • Resources/pagepopups/calendarPicker.js:

(DaysTable.prototype.selectRange):

3:11 AM Changeset in webkit [135132] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening, rebaselining after r135093.

  • platform/gtk/fast/js/global-constructors-expected.txt:
2:08 AM Changeset in webkit [135131] by tkent@chromium.org
  • 10 edits
    15 adds in trunk

input.value="" should clear date/time input elements with partial values
https://bugs.webkit.org/show_bug.cgi?id=102645

Reviewed by Kentaro Hara.

Source/WebCore:

Tests: fast/forms/date-multiple-fields/date-multiple-fields-value-set-empty.html

fast/forms/datetime-multiple-fields/datetime-multiple-fields-value-set-empty.html
fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-value-set-empty.html
fast/forms/month-multiple-fields/month-multiple-fields-value-set-empty.html
fast/forms/time-multiple-fields/time-multiple-fields-value-set-empty.html
fast/forms/week-multiple-fields/week-multiple-fields-value-set-empty.html

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::setValue):
If the new value is an empty string and sub-fields has values, we should
update the UI value to the empty state.

  • html/DateTimeFieldsState.h:

(WebCore::DateTimeFieldsState::hasAnyValue):
Added. It returns true if one or more sub-fields are not empty.

LayoutTests:

  • Add tests for each of date/time input types.
  • Add them to TextExpectations for platforms without ENABLE_INPUT_MULTIPLE_FIELDS_UI.
  • fast/forms/date-multiple-fields/date-multiple-fields-value-set-empty-expected.txt: Added.
  • fast/forms/date-multiple-fields/date-multiple-fields-value-set-empty.html: Added.
  • fast/forms/datetime-multiple-fields/datetime-multiple-fields-value-set-empty-expected.txt: Added.
  • fast/forms/datetime-multiple-fields/datetime-multiple-fields-value-set-empty.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-value-set-empty-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-value-set-empty.html: Added.
  • fast/forms/month-multiple-fields/month-multiple-fields-value-set-empty-expected.txt: Added.
  • fast/forms/month-multiple-fields/month-multiple-fields-value-set-empty.html: Added.
  • fast/forms/resources/multiple-fields-value-set-empty.js: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-value-set-empty-expected.txt: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-value-set-empty.html: Added.
  • fast/forms/week-multiple-fields/week-multiple-fields-value-set-empty-expected.txt: Added.
  • fast/forms/week-multiple-fields/week-multiple-fields-value-set-empty.html: Added.
  • platform/chromium-android/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
2:03 AM Changeset in webkit [135130] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Canvas] if many canvases are being instrumented show the screenshot of the first one
https://bugs.webkit.org/show_bug.cgi?id=102522

Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-11-19
Reviewed by Yury Semikhatsky.

When many canvases are being instrumented we'll want to show replay screenshots for each canvas.
Meanwhile, show the screenshot of the first one (instead of the last one), as it's likely to be the "main" canvas.
Drive-by: add more typification for the JS compiler.
Drive-by: create a new canvas for WebGL replay every time (similar to 2D replay) to avoid problems with resetting the context state.

  • inspector/InjectedScriptCanvasModuleSource.js:

(.):

2:01 AM Changeset in webkit [135129] by haraken@chromium.org
  • 14 edits
    1 delete in trunk

Remove IDLStructure.pm
https://bugs.webkit.org/show_bug.cgi?id=102642

Reviewed by Adam Barth.

Previously IDLStructure.pm was full of regular expressions to
parse IDL files. Now a new IDL parser is implemented, IDLStructure.pm
just contains several data structures for the IDL parser. We can
move them to IDLParser.pm and thus remove IDLStructure.pm.

No tests. No change in generated code.

Source/WebCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.vcproj/MigrateScripts:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/IDLParser.pm:

(Parse):
(parseInterface):
(parseException):
(parseConst):
(parseAttributeRest):
(parseOperationRest):
(parseOptionalOrRequiredArgument):
(parseExceptionField):
(parseInterfaceOld):
(parseExceptionOld):
(parseAttributeRestOld):
(applyExtendedAttributeList):

  • bindings/scripts/IDLStructure.pm: Removed.

Tools:

  • WebKitTestRunner/DerivedSources.make:
  • WebKitTestRunner/GNUmakefile.am:
  • WebKitTestRunner/InjectedBundle/DerivedSources.pri:
1:40 AM Changeset in webkit [135128] by commit-queue@webkit.org
  • 7 edits in trunk

Web Inspector: refine time and bytes output formatting
https://bugs.webkit.org/show_bug.cgi?id=102265

Patch by Alexei Filippov <alph@chromium.org> on 2012-11-19
Reviewed by Yury Semikhatsky.

Add a space between number and unit, otherwise it's hard to read things like 88B.
Reduce a number of decimal digits in KB and MB formats. 1023.45KB seems to be too detailed.

Source/WebCore:

  • English.lproj/localizedStrings.js:
  • inspector/front-end/CookiesTable.js:

(WebInspector.CookiesTable.prototype._createGridNode):

  • inspector/front-end/UIUtils.js:

(Number.secondsToString):
(Number.bytesToString):

LayoutTests:

  • inspector/audits/audits-panel-functional-expected.txt:
  • inspector/audits/audits-panel-noimages-functional-expected.txt:
1:38 AM Changeset in webkit [135127] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Timeline: DomContentLoaded event labeled incorrectly
https://bugs.webkit.org/show_bug.cgi?id=102383

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-11-19
Reviewed by Yury Semikhatsky.

Fixed string presentation of event.

  • inspector/front-end/TimelinePresentationModel.js: Fixed string.
1:32 AM Changeset in webkit [135126] by kbalazs@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed buildfix.

Fix -Wdelete-non-virtual-destructor error with gcc 4.7 after r135056.

  • Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h:

(WebCustomFilterProgramProxy): This is a polymorphic derived class
so the destructor should be virtual.

1:19 AM Changeset in webkit [135125] by dominik.rottsches@intel.com
  • 1 edit
    1 add in trunk/LayoutTests

[EFL] Update expectation for fast/js/global-constructors.html after r135093
https://bugs.webkit.org/show_bug.cgi?id=102653

Unreviewed EFL gardening.

Update EFL baseline for fast/js/global-constructors.html after r135093.

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-19

  • platform/efl/fast/js/global-constructors-expected.txt: Added.
12:48 AM Changeset in webkit [135124] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[CG][WK2] Assertion in CoordinatedGraphicsLayer::setContentsToImage(WebCore::Image*)
https://bugs.webkit.org/show_bug.cgi?id=102652

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-19
Reviewed by Kenneth Rohde Christiansen.

Handle null return of nativeImageForCurrentFrame similarly to Chromium
port in r130610. This can happen if there is an error early in the
decoding of an image.

Test: Already covered by compositing/images/truncated-direct-png-image.html

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setContentsToImage):

12:45 AM Changeset in webkit [135123] by haraken@chromium.org
  • 10 edits
    1 add in trunk/Source/WebCore

Unreviewed, rolling out r135114.
http://trac.webkit.org/changeset/135114
https://bugs.webkit.org/show_bug.cgi?id=102642

it broke Qt build

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.vcproj/MigrateScripts:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/IDLParser.pm:

(Parse):
(parseInterface):
(parseException):
(parseConst):
(parseAttributeRest):
(parseOperationRest):
(parseOptionalOrRequiredArgument):
(parseExceptionField):
(parseInterfaceOld):
(parseExceptionOld):
(parseAttributeRestOld):
(applyExtendedAttributeList):

  • bindings/scripts/IDLStructure.pm: Added.
12:44 AM Changeset in webkit [135122] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed inspector closure compilation fix.

  • inspector/front-end/ObjectPropertiesSection.js:
  • inspector/front-end/externs.js:
12:02 AM Changeset in webkit [135121] by keishi@webkit.org
  • 2 edits
    20 adds in trunk/LayoutTests

[Chromium] Add tests for week suggestion picker
https://bugs.webkit.org/show_bug.cgi?id=102039

Reviewed by Kent Tamura.

Adding tests for datalist UI for <input type=week>.

  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-key-operations-expected.txt: Added.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-rtl-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-rtl.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance-with-scroll-bar.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-appearance.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-key-operations-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-key-operations.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-min-max-attribute-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-min-max-attribute.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-mouse-operations-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-mouse-operations.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-reset-value-after-reload-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-reset-value-after-reload.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-step-attribute-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/week-suggestion-picker-step-attribute.html: Added.

Nov 18, 2012:

11:59 PM Changeset in webkit [135120] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][WK2] Skip networkinformation tests wrongly unskipped in r135096
https://bugs.webkit.org/show_bug.cgi?id=102650

Unreviewed EFL gardening.

Skip again for EFL Debug bots several networkinformation tests
that were wrongly unskipped in r135096 as they still hit an
assertion.

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-18

  • platform/efl-wk2/TestExpectations:
11:55 PM Changeset in webkit [135119] by commit-queue@webkit.org
  • 4 edits in trunk

.: Remove non-existent directories from the make system
https://bugs.webkit.org/show_bug.cgi?id=102632

Patch by Laszlo Gombos <Laszlo Gombos> on 2012-11-18
Reviewed by Kenneth Rohde Christiansen.

Remove (non-existent) symbian references from the exclude list for packaging.

  • Source/cmake/WebKitPackaging.cmake:

Source/WebKit/qt: [Qt] Remove remaining traces of symbian
https://bugs.webkit.org/show_bug.cgi?id=102634

Patch by Laszlo Gombos <Laszlo Gombos> on 2012-11-18
Reviewed by Kenneth Rohde Christiansen.

Remove symbian related part from the API documentation.

  • Api/qgraphicswebview.cpp:
  • Api/qwebview.cpp:
11:52 PM Changeset in webkit [135118] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Not to include "ewk_view_private.h" in Tools
https://bugs.webkit.org/show_bug.cgi?id=102644

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-11-18
Reviewed by Gyuyoung Kim.

Include ewk_view.h instead of ewk_view_private.h in Tools

  • DumpRenderTree/efl/PixelDumpSupportEfl.cpp:
11:45 PM Changeset in webkit [135117] by commit-queue@webkit.org
  • 66 edits in trunk/Source/WebKit2

[EFL][WK2] Remove underscore characters in Ewk class names.
https://bugs.webkit.org/show_bug.cgi?id=102641

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2012-11-18
Reviewed by Gyuyoung Kim.

WebKit EFL doesn't use '_' in C++ class names.

  • UIProcess/API/efl/EwkViewCallbacks.h:
  • UIProcess/API/efl/EwkViewImpl.h:

(EwkViewImpl::settings):
(EwkViewImpl::backForwardList):
(EwkViewImpl):

  • UIProcess/API/efl/ewk_auth_request.h:
  • UIProcess/API/efl/ewk_auth_request_private.h:
  • UIProcess/API/efl/ewk_back_forward_list.cpp:

(EwkBackForwardList::EwkBackForwardList):
(EwkBackForwardList::nextItem):
(EwkBackForwardList::previousItem):
(EwkBackForwardList::currentItem):
(EwkBackForwardList::itemAt):
(EwkBackForwardList::size):
(EwkBackForwardList::backList):
(EwkBackForwardList::forwardList):
(EwkBackForwardList::getFromCacheOrCreate):
(EwkBackForwardList::createEinaList):
(EwkBackForwardList::update):

  • UIProcess/API/efl/ewk_back_forward_list.h:
  • UIProcess/API/efl/ewk_back_forward_list_item.h:
  • UIProcess/API/efl/ewk_back_forward_list_item_private.h:
  • UIProcess/API/efl/ewk_back_forward_list_private.h:

(EwkBackForwardList::create):
(EwkBackForwardList):

  • UIProcess/API/efl/ewk_color_picker.cpp:

(EwkColorPicker::EwkColorPicker):
(EwkColorPicker::setColor):
(EwkColorPicker::color):

  • UIProcess/API/efl/ewk_color_picker.h:
  • UIProcess/API/efl/ewk_color_picker_private.h:

(EwkColorPicker::create):
(EwkColorPicker):

  • UIProcess/API/efl/ewk_context.h:
  • UIProcess/API/efl/ewk_context_private.h:
  • UIProcess/API/efl/ewk_cookie_manager.cpp:

(EwkCookieManager::EwkCookieManager):
(EwkCookieManager::~EwkCookieManager):
(EwkCookieManager::setPersistentStorage):
(EwkCookieManager::setHTTPAcceptPolicy):
(EwkCookieManager::clearHostnameCookies):
(EwkCookieManager::clearAllCookies):
(EwkCookieManager::watchChanges):
(EwkCookieManager::isWatchingForChanges):
(EwkCookieManager::getHostNamesWithCookies):
(EwkCookieManager::getHTTPAcceptPolicy):
(EwkCookieManager::cookiesDidChange):

  • UIProcess/API/efl/ewk_cookie_manager.h:
  • UIProcess/API/efl/ewk_cookie_manager_private.h:

(EwkCookieManager::create):
(EwkCookieManager):

  • UIProcess/API/efl/ewk_database_manager.cpp:

(EwkDatabaseManager::EwkDatabaseManager):
(EwkDatabaseManager::getDatabaseOrigins):
(EwkDatabaseManager::createOriginList):

  • UIProcess/API/efl/ewk_database_manager.h:
  • UIProcess/API/efl/ewk_database_manager_private.h:

(EwkDatabaseManager::create):
(EwkDatabaseManager):

  • UIProcess/API/efl/ewk_download_job.h:
  • UIProcess/API/efl/ewk_download_job_private.h:
  • UIProcess/API/efl/ewk_error.cpp:

(EwkError::EwkError):
(EwkError::url):
(EwkError::description):
(EwkError::domain):
(EwkError::errorCode):
(EwkError::isCancellation):

  • UIProcess/API/efl/ewk_error.h:
  • UIProcess/API/efl/ewk_error_private.h:

(EwkError::create):
(EwkError):

  • UIProcess/API/efl/ewk_favicon_database.cpp:

(EwkFaviconDatabase::EwkFaviconDatabase):
(EwkFaviconDatabase::~EwkFaviconDatabase):
(EwkFaviconDatabase::iconURLForPageURL):
(EwkFaviconDatabase::watchChanges):
(EwkFaviconDatabase::unwatchChanges):
(EwkFaviconDatabase::iconForPageURL):
(EwkFaviconDatabase::didChangeIconForPageURL):
(EwkFaviconDatabase::getIconSurfaceSynchronously):
(EwkFaviconDatabase::iconDataReadyForPageURL):

  • UIProcess/API/efl/ewk_favicon_database.h:
  • UIProcess/API/efl/ewk_favicon_database_private.h:

(EwkFaviconDatabase::create):
(EwkFaviconDatabase):

  • UIProcess/API/efl/ewk_file_chooser_request.h:
  • UIProcess/API/efl/ewk_file_chooser_request_private.h:
  • UIProcess/API/efl/ewk_form_submission_request.h:
  • UIProcess/API/efl/ewk_form_submission_request_private.h:
  • UIProcess/API/efl/ewk_intent.h:
  • UIProcess/API/efl/ewk_intent_private.h:
  • UIProcess/API/efl/ewk_intent_service.h:
  • UIProcess/API/efl/ewk_intent_service_private.h:
  • UIProcess/API/efl/ewk_navigation_data.h:
  • UIProcess/API/efl/ewk_navigation_data_private.h:
  • UIProcess/API/efl/ewk_navigation_policy_decision.h:
  • UIProcess/API/efl/ewk_navigation_policy_decision_private.h:
  • UIProcess/API/efl/ewk_object.h:
  • UIProcess/API/efl/ewk_object_private.h:

(EwkObject::~EwkObject):
(ewk_object_is_of_type):
(ewk_object_cast_check):
(ewk_object_cast):

  • UIProcess/API/efl/ewk_popup_menu.cpp:

(EwkPopupMenu::EwkPopupMenu):
(EwkPopupMenu::~EwkPopupMenu):
(EwkPopupMenu::close):
(EwkPopupMenu::items):
(EwkPopupMenu::selectedIndex):
(EwkPopupMenu::setSelectedIndex):

  • UIProcess/API/efl/ewk_popup_menu.h:
  • UIProcess/API/efl/ewk_popup_menu_item.cpp:

(EwkPopupMenuItem::EwkPopupMenuItem):
(EwkPopupMenuItem::type):
(EwkPopupMenuItem::textDirection):
(EwkPopupMenuItem::text):
(EwkPopupMenuItem::tooltipText):
(EwkPopupMenuItem::accessibilityText):
(EwkPopupMenuItem::hasTextDirectionOverride):
(EwkPopupMenuItem::isEnabled):
(EwkPopupMenuItem::isLabel):
(EwkPopupMenuItem::isSelected):

  • UIProcess/API/efl/ewk_popup_menu_item.h:
  • UIProcess/API/efl/ewk_popup_menu_item_private.h:

(EwkPopupMenuItem::create):
(EwkPopupMenuItem):

  • UIProcess/API/efl/ewk_popup_menu_private.h:

(EwkPopupMenu::create):
(EwkPopupMenu):

  • UIProcess/API/efl/ewk_resource.h:
  • UIProcess/API/efl/ewk_resource_private.h:
  • UIProcess/API/efl/ewk_security_origin.h:
  • UIProcess/API/efl/ewk_security_origin_private.h:
  • UIProcess/API/efl/ewk_settings.cpp:

(EwkSettings::preferences):

  • UIProcess/API/efl/ewk_settings.h:
  • UIProcess/API/efl/ewk_settings_private.h:

(EwkSettings::create):
(EwkSettings::EwkSettings):

  • UIProcess/API/efl/ewk_storage_manager.cpp:

(EwkStorageManager::EwkStorageManager):
(EwkStorageManager::getStorageOrigins):
(EwkStorageManager::createOriginList):

  • UIProcess/API/efl/ewk_storage_manager.h:
  • UIProcess/API/efl/ewk_storage_manager_private.h:

(EwkStorageManager::create):
(EwkStorageManager):

  • UIProcess/API/efl/ewk_url_request.h:
  • UIProcess/API/efl/ewk_url_request_private.h:
  • UIProcess/API/efl/ewk_url_response.h:
  • UIProcess/API/efl/ewk_url_response_private.h:
  • UIProcess/API/efl/ewk_url_scheme_request.h:
  • UIProcess/API/efl/ewk_url_scheme_request_private.h:
  • UIProcess/API/efl/tests/test_ewk2_object.cpp:

(TEST_F):

11:42 PM Changeset in webkit [135116] by loislo@chromium.org
  • 5 edits in trunk/Source/WebCore

webaudio: clean-up. Replace AudioContext::m_document member with ContextDestructionObserver::scriptExecutionContext().
https://bugs.webkit.org/show_bug.cgi?id=102649

Reviewed by Adam Barth.

AudioContext uses m_document only as a pointer to ScriptExecutionContext.
It could be safely replaced with ContextDestructionObserver::m_scriptExecutionContext.
The lifetime of m_scriptExecutionContext is slightly different but it could be adjusted by m_isStopScheduled flag.

No new tests as there is no new functionality.

  • Modules/webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::looping):
(WebCore::AudioBufferSourceNode::setLooping):

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::AudioContext):
(WebCore::AudioContext::stop):
(WebCore::AudioContext::fireCompletionEvent):
(WebCore::AudioContext::reportMemoryUsage):

  • Modules/webaudio/AudioContext.h:

(WebCore::AudioContext::scriptExecutionContext):
(AudioContext):

  • Modules/webaudio/ScriptProcessorNode.cpp:

(WebCore::ScriptProcessorNode::fireProcessEvent):
(WebCore::ScriptProcessorNode::scriptExecutionContext):

11:35 PM Changeset in webkit [135115] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Remove unused variables from CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=102648

Reviewed by Adam Barth.

No tests. No change in generated code.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateInterface):
(GenerateHeader):
(GetInternalFields):
(GenerateNormalAttrGetter):
(GenerateSingleBatchedAttribute):
(GenerateImplementationCustomCall):
(GenerateFunctionCallString):
(CreateCustomSignature):
(GetContextEnableFunction):

11:33 PM Changeset in webkit [135114] by haraken@chromium.org
  • 10 edits
    1 delete in trunk/Source/WebCore

Remove IDLStructure.pm
https://bugs.webkit.org/show_bug.cgi?id=102642

Reviewed by Adam Barth.

Previously IDLStructure.pm was full of regular expressions to
parse IDL files. Now a new IDL parser is implemented, IDLStructure.pm
just contains several data structures for the IDL parser. We can
move them to IDLParser.pm and thus remove IDLStructure.pm.

No tests. No change in generated code.

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.vcproj/MigrateScripts:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/IDLParser.pm:

(Parse):
(parseInterface):
(parseException):
(parseConst):
(parseAttributeRest):
(parseOperationRest):
(parseOptionalOrRequiredArgument):
(parseExceptionField):
(parseInterfaceOld):
(parseExceptionOld):
(parseAttributeRestOld):
(applyExtendedAttributeList):

  • bindings/scripts/IDLStructure.pm: Removed.
11:26 PM Changeset in webkit [135113] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Make more use of $v8Interface in CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=102639

Reviewed by Adam Barth.

We can replace hard-coded "V8${interfaceName}" with $v8Interface.

No tests. No change in generated code.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateFunctionCallback):
(GenerateNamedConstructorCallback):
(GenerateImplementationIndexer):
(GenerateImplementationNamedPropertyGetter):
(GenerateImplementation):

10:21 PM Changeset in webkit [135112] by loislo@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

Unreviewed: add missed test files for r135111.

  • inspector-protocol/resources/audio-context.html: Added.
  • inspector-protocol/resources/blank.html: Added.
10:10 PM Changeset in webkit [135111] by loislo@chromium.org
  • 16 edits
    2 adds in trunk

webaudio: leak: AudioContext objects are leaking. They retain 36mb of shared data.
https://bugs.webkit.org/show_bug.cgi?id=102356

Reviewed by Adam Barth.

A clean-up code was moved from uninitialize to clear method.
AudioContext marks itself as hasPendingActivity in method constructCommon and unmarks itself in method clear.
m_isStopScheduled filters out second ActiveDOMObject::stop call.
markForDeletion appends AudioNode pointer to m_nodesToDelete array if there is no active audio thread.
adoptRef was added in createOfflineContext method.

Source/WebCore:

Test: inspector-protocol/nmi-webaudio-leak-test.html

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::createOfflineContext):
(WebCore::AudioContext::AudioContext):
(WebCore::AudioContext::constructCommon):
(WebCore::AudioContext::~AudioContext):
(WebCore::AudioContext::clear):
(WebCore::AudioContext::uninitialize):
(WebCore::AudioContext::stopDispatch):
(WebCore::AudioContext::stop):
(WebCore::AudioContext::markForDeletion):
(WebCore::AudioContext::scheduleNodeDeletion):
(WebCore::AudioContext::deleteMarkedNodes):

  • Modules/webaudio/AudioContext.h:

(AudioContext):

  • bindings/v8/custom/V8AudioContextCustom.cpp:

(WebCore::V8AudioContext::constructorCallback):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • platform/PlatformMemoryInstrumentation.cpp:

(WebCore::PlatformMemoryInstrumentation::reportMemoryUsage):
(WebCore):

  • platform/PlatformMemoryInstrumentation.h:

(PlatformMemoryInstrumentation):
(WebCore):

LayoutTests:

  • inspector-protocol/nmi-webaudio-leak-test-expected.txt: Added.
  • inspector-protocol/nmi-webaudio-leak-test.html: Added.
9:50 PM Changeset in webkit [135110] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

min/max/step support for calendar picker on datetime/datetime-local
https://bugs.webkit.org/show_bug.cgi?id=102628

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-11-18
Reviewed by Kent Tamura.

Source/WebCore:

Gray out dates with no allowed values on calendar picker for datetime/datetime-local
when values are limited by min/max/step attributes.

Test: platform/chromium/fast/forms/calendar-picker/calendar-picker-datetime-with-step.html

  • Resources/pagepopups/calendarPicker.js:

(CalendarPicker.prototype._stepMismatch):
Returns true iff there are any allowed values in the given day.

LayoutTests:

Verify that calendar picker has correct available dates when
min/max/step attributes are set in datetime input.

  • platform/chromium/fast/forms/calendar-picker/calendar-picker-datetime-with-step-expected.txt: Added.
  • platform/chromium/fast/forms/calendar-picker/calendar-picker-datetime-with-step.html: Added.
9:46 PM Changeset in webkit [135109] by commit-queue@webkit.org
  • 6 edits in trunk

Remove non-existent directories from the make system
https://bugs.webkit.org/show_bug.cgi?id=102632

Patch by Laszlo Gombos <Laszlo Gombos> on 2012-11-18
Reviewed by Adam Barth.

.:

Remove (non-existent) symbian references from the exclude list for packaging.

  • Source/cmake/WebKitPackaging.cmake:

Source/WebCore:

Remove (non-existent) symbian references from the exclude list in gyp project files.

No new tests as there is no new functionality.

  • WebCore.gyp/WebCore.gyp:

Source/WTF:

Remove (non-existent) symbian references from the exclude list in gyp project files.

  • WTF.gyp/WTF.gyp:
9:45 PM Changeset in webkit [135108] by Patrick Gansterer
  • 7 edits in trunk/Source/WebCore

[WIN] Add a IMLangFontLinkType typedef
https://bugs.webkit.org/show_bug.cgi?id=102584

Reviewed by Brent Fulgham.

Add a central typedef for IMLangFontLink(2) to get rid of a bunch of ifdefs.

  • platform/graphics/FontCache.h:

(WebCore):

  • platform/graphics/win/FontCacheWin.cpp:

(WebCore::FontCache::getFontLinkInterface):
(WebCore::getCJKCodePageMasks):
(WebCore::createMLangFont):
(WebCore::FontCache::getFontDataForCharacters):

  • platform/graphics/win/SimpleFontDataWin.cpp:

(WebCore::SimpleFontData::containsCharacters):

  • platform/graphics/wince/FontCacheWinCE.cpp:

(WebCore):
(WebCore::FontCache::getFontLinkInterface):
(WebCore::getCJKCodePageMasks):
(WebCore::FontCache::getFontDataForCharacters):

  • platform/graphics/wince/FontPlatformData.cpp:

(WebCore::FontFamilyCodePageInfo::codePages):
(WebCore::FixedSizeFontData::create):

  • platform/graphics/wince/GlyphPageTreeNodeWinCE.cpp:

(WebCore::GlyphPage::fill):

9:40 PM Changeset in webkit [135107] by mkwst@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Remove unused ConsoleMessage constructor.
https://bugs.webkit.org/show_bug.cgi?id=102590

Reviewed by Brent Fulgham.

We currently have a ConsoleMessage constructor that's unused. Let's
kill it.

  • inspector/ConsoleMessage.cpp:
  • inspector/ConsoleMessage.h:

(ConsoleMessage):

Removing an unused constructor variant.

9:19 PM Changeset in webkit [135106] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r135104.
http://trac.webkit.org/changeset/135104
https://bugs.webkit.org/show_bug.cgi?id=102638

Should not use commit queue to add people to committer list.
(Requested by ap_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-18

  • Scripts/webkitpy/common/config/committers.py:
9:13 PM Changeset in webkit [135105] by haraken@chromium.org
  • 1 edit
    1 move
    11 adds in trunk/LayoutTests

Unreviewed. Rebaselined images.

  • platform/chromium-linux-x86/fast/block/float/overhanging-tall-block-expected.txt: Added.
  • platform/chromium-linux/fast/block/float/overhanging-tall-block-expected.png: Added.
  • platform/chromium-linux/fast/block/float/overhanging-tall-block-expected.txt: Added.
  • platform/chromium-mac-lion/fast/block/float/overhanging-tall-block-expected.txt: Added.
  • platform/chromium-mac-snowleopard/fast/block/float/overhanging-tall-block-expected.txt: Added.
  • platform/chromium-win-xp/fast/block/float/overhanging-tall-block-expected.png: Added.
  • platform/chromium-win-xp/fast/block/float/overhanging-tall-block-expected.txt: Added.
  • platform/efl-wk1/fast/block/float/overhanging-tall-block-expected.png: Renamed from LayoutTests/platform/efl/fast/block/float/overhanging-tall-block-expected.png.
9:11 PM Changeset in webkit [135104] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Add myself to committers.py
https://bugs.webkit.org/show_bug.cgi?id=102636

Patch by Vivek Galatage <vivek.vg@samsung.com> on 2012-11-18
Reviewed by Laszlo Gombos.

Add myself to committers.py

  • Scripts/webkitpy/common/config/committers.py:
7:38 PM Changeset in webkit [135103] by mitz@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Try to fix the DFG build after r135099.

  • dfg/DFGCommon.h:

(JSC::DFG::shouldShowDisassembly):

7:29 PM Changeset in webkit [135102] by rniwa@webkit.org
  • 1 edit
    3 adds in trunk/LayoutTests

Chromium rebaseline after r135093.

  • platform/chromium-linux/inspector: Added.
  • platform/chromium-linux/inspector/console: Added.
  • platform/chromium-linux/inspector/console/console-format-collections-expected.txt: Added.
7:16 PM Changeset in webkit [135101] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

StyledElement: Make handling the "style" attribute a litte faster.
<http://webkit.org/b/102623>

Reviewed by Ojan Vafai.

We know that "style" is never a presentation attribute, so avoid the virtual call to isPresentationAttribute()
by hoisting the parseAttribute() logic up into attributeChanged().
Did the same thing with Element::parseAttribute() for consistency.

Knocks ~0.6% of samples off of the DOM/CreateNodes performance test.

  • dom/Element.cpp:

(WebCore::Element::attributeChanged):

  • dom/Element.h:

(WebCore::Element::parseAttribute):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::attributeChanged):

  • dom/StyledElement.h:

(StyledElement):

7:02 PM Changeset in webkit [135100] by commit-queue@webkit.org
  • 7 edits in trunk/Source

[CMake] Consolidate common input files
https://bugs.webkit.org/show_bug.cgi?id=101632

Patch by Laszlo Gombos <Laszlo Gombos> on 2012-11-18
Reviewed by Rob Buis.

Source/WebCore:

Consolidate and sort the list of files, move common source files
into CMakeLists.txt from the port specific files.

No new tests as there is no new functionality.

  • CMakeLists.txt:
  • PlatformBlackBerry.cmake:
  • PlatformEfl.cmake:
  • PlatformWinCE.cmake:

Source/WebKit:

Consolidate and sort the list of files.

  • PlatformEfl.cmake:
6:58 PM Changeset in webkit [135099] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, build fix for !ENABLE(DFG_JIT).

  • dfg/DFGCommon.h:

(JSC::DFG::shouldShowDisassembly):
(DFG):

6:56 PM Changeset in webkit [135098] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Tighten small SharedBuffers by reserving the exact amount of space needed.
<http://webkit.org/b/102625>

Reviewed by Anders Carlsson.

When adding the first chunk to a small (<4096 bytes) SharedBuffer, reserve the exact
amount of space needed instead of leaving it to Vector<char>::append().

1.86MB progression on Membuster3.

  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::append):

6:55 PM Changeset in webkit [135097] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

JSC should have more logging in structure-related code
https://bugs.webkit.org/show_bug.cgi?id=102630

Reviewed by Simon Fraser.

  • JSValue::description() now tells you if something is a structure, and if so, what kind of structure it is.


  • Jettisoning logic now tells you why things are being jettisoned.


  • It's now possible to turn off GC-triggered jettisoning entirely.
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::reoptimize):
(JSC::ProgramCodeBlock::jettison):
(JSC::EvalCodeBlock::jettison):
(JSC::FunctionCodeBlock::jettison):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::shouldImmediatelyAssumeLivenessDuringScan):

  • runtime/JSValue.cpp:

(JSC::JSValue::description):

  • runtime/Options.h:

(JSC):

6:17 PM Changeset in webkit [135096] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening, unskip passing tests
https://bugs.webkit.org/show_bug.cgi?id=102460

Unreviewed EFL gardening.

The tests marked Crash by r132469 are passing now.

fast/dom/nested-script-exceptions.html, networkinformation/multiple-frames.html,
networkinformation/basic-all-types-of-events.html, networkinformation/updates.html,
networkinformation/add-listener-from-callback.html, networkinformation/basic-operation.html

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-11-18

  • platform/efl-wk2/TestExpectations:
5:56 PM Changeset in webkit [135095] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Removed a duplicated entry.

  • platform/chromium/TestExpectations:
5:49 PM Changeset in webkit [135094] by haraken@chromium.org
  • 9 edits
    4 deletes in trunk/Source/WebKit/chromium

Unreviewed, rolling out r135047.
http://trac.webkit.org/changeset/135047
https://bugs.webkit.org/show_bug.cgi?id=102339

it broke Chromium Windows/Mac build

  • WebKit.gyp:
  • WebKit.gypi:
  • public/WebNode.h:

(WebKit):

  • public/WebPluginContainer.h:

(WebKit):
(WebPluginContainer):

  • src/WebFrameImpl.cpp:

(WebKit::pluginContainerFromNode):
(WebKit):
(WebKit::WebFrameImpl::executeCommand):
(WebKit::WebFrameImpl::printBegin):
(WebKit::WebFrameImpl::isPrintScalingDisabledForPlugin):

  • src/WebNode.cpp:
  • src/WebPluginContainerImpl.cpp:
  • src/WebPluginContainerImpl.h:

(WebPluginContainerImpl):

  • tests/FakeWebPlugin.cpp: Removed.
  • tests/FakeWebPlugin.h: Removed.
  • tests/WebPluginContainerTest.cpp: Removed.
  • tests/data/plugin_container.html: Removed.
5:28 PM Changeset in webkit [135093] by rniwa@webkit.org
  • 40 edits
    2 moves
    5 adds in trunk

Make namedItem return a node list only in HTMLFormControlsCollection and HTMLOptionsCollection
https://bugs.webkit.org/show_bug.cgi?id=101311

Reviewed by Darin Adler.

Source/WebCore:

Introduce two new interfaces HTMLFormControlsCollection and HTMLOptionsCollection to be used by form.elements
and select.options. These two interfaces have the named getter and namedItem that returns a live NodeList when
there are multiple matches. Introducing these two interfaces allow us to make "regular" HTMLCollection's named
getter and namedItem return exactly one node or null as specified in HTML5:
http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#collections-0

Unfortunately, HTMLOptionsCollection still has a bug that its named getter and namedItem returns
a static NodeList instead of a live NodeList (DynamicNodeList) at the moment.

Also got rid of Document::objects since it's not exposed in IDL or called anywhere.

Test: fast/dom/html-collections-namedItem.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • UseJSC.cmake:
  • UseV8.cmake:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSHTMLAllCollectionCustom.cpp:

(WebCore::getNamedItems):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::JSHTMLCollection::nameGetter): Now returns exactly one node or null.
(WebCore::toJS):

  • bindings/js/JSHTMLFormControlsCollectionCustom.cpp: Added.

(WebCore::getNamedItems): Returns RadioNodeList when there are multiple matches.
(WebCore::JSHTMLFormControlsCollection::canGetItemsForName):
(WebCore::JSHTMLFormControlsCollection::nameGetter):
(WebCore::JSHTMLFormControlsCollection::namedItem):

  • bindings/js/JSHTMLOptionsCollectionCustom.cpp:

(WebCore::getNamedItems): Returns a static NodeList when there are multiple matches.
This is a bug. It should be a live NodeList instead.
(WebCore::JSHTMLOptionsCollection::canGetItemsForName):
(WebCore::JSHTMLOptionsCollection::nameGetter):
(WebCore::JSHTMLOptionsCollection::namedItem):

  • bindings/js/CodeGeneratorJS.pm: Include JSNode.js for all HTML*Collection interfaces for simplicity.
  • bindings/js/CodeGeneratorV8.pm: HTMLOptionsCollection now inherits from HTMLCollection. See

http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#htmloptionscollection

  • bindings/v8/custom/V8HTMLAllCollectionCustom.cpp: Pass in isolate when we can.

(WebCore::getNamedItems): Added a comment about how we should be returning
a HTMLCollection when there are multiple matches.
(WebCore::getItem):
(WebCore::V8HTMLAllCollection::namedPropertyGetter):
(WebCore::V8HTMLAllCollection::namedItemCallback):

  • bindings/v8/custom/V8HTMLCollectionCustom.cpp: Now returns exactly one node or null.

(WebCore::V8HTMLCollection::namedPropertyGetter):
(WebCore::toV8):

  • bindings/v8/custom/V8HTMLFormControlsCollectionCustom.cpp: Added.

(WebCore::getNamedItems): Returns RadioNodeList when there are multiple matches.
(WebCore::V8HTMLFormControlsCollection::namedPropertyGetter):
(WebCore::V8HTMLFormControlsCollection::namedItemCallback):

  • bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:

(WebCore::getNamedItems): Returns a static NodeList when there are multiple matches.
This is a bug. It should be a live NodeList instead.
(WebCore::V8HTMLOptionsCollection::namedPropertyGetter):
(WebCore::V8HTMLOptionsCollection::namedItemCallback):

  • dom/Document.cpp: Removed Document::objects since it was not used anywhere.
  • dom/Document.h:

(Document):

  • dom/Element.cpp:

(WebCore::ElementRareData::ensureCachedHTMLCollection): form.elements should instantiate
a HTMLFormControlsCollection instead of a HTMLCollection.

  • html/CollectionType.h:
  • html/HTMLCollection.idl: Removed [Custom] since namedItem is a regular function call now.
  • html/HTMLFieldSetElement.cpp:
  • html/HTMLFieldSetElement.h:
  • html/HTMLFormCollection.cpp: Removed.
  • html/HTMLFormCollection.h: Removed.
  • html/HTMLFormControlsCollection.cpp: Copied from Source/WebCore/html/HTMLFormCollection.cpp.

(WebCore::HTMLFormControlsCollection::HTMLFormControlsCollection):
(WebCore::HTMLFormControlsCollection::create):
(WebCore::HTMLFormControlsCollection::~HTMLFormControlsCollection):
(WebCore::HTMLFormControlsCollection::formControlElements):
(WebCore::HTMLFormControlsCollection::formImageElements):
(WebCore::HTMLFormControlsCollection::virtualItemAfter):
(WebCore::HTMLFormControlsCollection::namedItem):
(WebCore::HTMLFormControlsCollection::updateNameCache):

  • html/HTMLFormControlsCollection.h: Copied from Source/WebCore/html/HTMLFormCollection.h.

(HTMLFormControlsCollection):

  • html/HTMLFormControlsCollection.idl: Added.
  • html/HTMLFormElement.cpp:
  • html/HTMLFormElement.h:
  • html/HTMLOptionsCollection.idl:

LayoutTests:

Added a regression test to ensure form.elements and select.options use correct interfaces,
and named getter for those two properties return a NodeList when there are multiple matches.

Also added appropriate IDL options to HTMLOptionsCollection.idl.

  • fast/dom/collection-nameditem-move-between-documents-expected.txt: Rebaselined since namedItem

now correctly returns null when there is no match. This test result demonstrates a bug that
HTMLAllCollection doesn't inherit from HTMLCollection.

  • fast/dom/collection-nameditem-move-between-documents.html: Ditto.
  • fast/dom/dom-constructors-expected.txt: Rebaselined.
  • fast/dom/html-collections-named-getter-expected.txt: Added.
  • fast/dom/html-collections-named-getter.html: Added.
  • fast/dom/wrapper-classes-expected.txt: Rebaselined. Since we're exposing HTMLOptionsCollection

on the window object, the constructor property of an instance of HTMLOptionsCollection object
shows up as a function. We should update the test to support this behavior in the future.

  • inspector/console/console-format-collections-expected.txt: Rebaselined.
  • platform/chromium/fast/dom/gc-9-expected.txt: Rebaselined since a test case for

HTMLOptionsCollection now passes.

5:12 PM Changeset in webkit [135092] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Rename $className to $v8InterfaceName
https://bugs.webkit.org/show_bug.cgi?id=102487

Reviewed by Adam Barth.

In CodeGeneratorV8.pm, $className is always "V8$interfaceName".
We should rename $className to $v8InterfaceName. Also we can
remove GetCallbackClassName().

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GetHeaderClassInclude):
(GenerateDomainSafeFunctionGetter):
(GenerateDomainSafeFunctionSetter):
(GenerateParametersCheck):
(GenerateImplementation):
(GenerateHeaderContentHeader):
(GenerateImplementationContentHeader):
(GenerateCallbackHeader):
(GenerateCallbackImplementation):
(GenerateToV8Converters):
(GetPassRefPtrType):

5:05 PM Changeset in webkit [135091] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed.
r135025 marked a couple of tests as SKIP in Mac.
This patch marks the tests as SKIP in Chormium.

  • platform/chromium/TestExpectations:
4:56 PM Changeset in webkit [135090] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Marked platform/chromium/virtual/deferred/fast/images/webgl-teximage2d.html as TIMEOUT.

  • platform/chromium/TestExpectations:
4:54 PM Changeset in webkit [135089] by haraken@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Marked fast/images/webgl-teximage2d.html as TIMEOUT.

  • platform/chromium/TestExpectations:
4:41 PM Changeset in webkit [135088] by commit-queue@webkit.org
  • 6 edits in trunk

.: [BlackBerry] Enable Touch Sliders

https://bugs.webkit.org/show_bug.cgi?id=102516

Reviewed by Rob Buis.

Enabled for BlackBerry only
PR #242781
PR #176014

  • Source/cmake/OptionsBlackBerry.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Patch by Genevieve Mak <gmak@rim.com> on 2012-11-18

Tools: [BlackBerry] Enable Touch Sliders
https://bugs.webkit.org/show_bug.cgi?id=102516

Patch by Genevieve Mak <gmak@rim.com> on 2012-11-18
Reviewed by Rob Buis.

Enabled for BlackBerry only
PR #242781
PR #176014

  • Scripts/webkitperl/FeatureList.pm:
3:52 PM Changeset in webkit [135087] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Remove GetTypeFromSignature() from CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=102499

Reviewed by Adam Barth.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateParametersCheckExpression):
(GenerateParametersCheck):
(GenerateFunctionCallString):
(GetNativeTypeFromSignature):
(TranslateParameter):
(TypeCanFailConversion):
(JSValueToNative):
(NativeToJSValue):

3:49 PM Changeset in webkit [135086] by Simon Fraser
  • 4 edits in trunk/LayoutTests

Rebaselines.

  • platform/mac/fast/media/mq-js-media-except-02-expected.txt:
  • platform/mac/fast/media/mq-js-media-except-03-expected.txt:
  • platform/mac/svg/custom/baseval-animval-equality-expected.txt:
3:44 PM Changeset in webkit [135085] by haraken@chromium.org
  • 7 edits in trunk/Source/WebCore

Remove GenerateModule() from all code generators
https://bugs.webkit.org/show_bug.cgi?id=102490

Reviewed by Adam Barth.

WebKit IDL files no longer support modules. The Web IDL spec
no longer supports modules. We can remove it from code generators.

No tests. No change in behavior.

  • bindings/scripts/CodeGenerator.pm:

(ProcessDocument):

  • bindings/scripts/CodeGeneratorCPP.pm:
  • bindings/scripts/CodeGeneratorGObject.pm:
  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/CodeGeneratorObjC.pm:
  • bindings/scripts/CodeGeneratorV8.pm:
3:42 PM Changeset in webkit [135084] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Get rid of unused functions and inline redundant functions in CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=102497

Reviewed by Adam Barth.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateDomainSafeFunctionGetter):
(GenerateNormalAttrGetter):
(GenerateFunctionCallString):

3:07 PM Changeset in webkit [135083] by rakuco@webkit.org
  • 5 edits
    6 deletes in trunk/Source/WebCore

Unreviewed, rolling out r135074.
http://trac.webkit.org/changeset/135074
https://bugs.webkit.org/show_bug.cgi?id=102619

Made most layout tests crash. (Requested by rakuco on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-18

  • PlatformEfl.cmake:
  • platform/graphics/efl/GraphicsContext3DEfl.cpp:

(WebCore::GraphicsContext3D::create):
(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::~GraphicsContext3D):
(WebCore::GraphicsContext3D::makeContextCurrent):
(WebCore::GraphicsContext3D::setContextLostCallback):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::createSurface):
(WebCore::GraphicsContext3DPrivate::setCurrentGLContext):
(WebCore::GraphicsContext3DPrivate::platformGraphicsContext3D):
(WebCore::GraphicsContext3DPrivate::makeContextCurrent):
(WebCore::GraphicsContext3DPrivate::createGraphicsSurfaces):
(WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface):
(WebCore::GraphicsContext3DPrivate::graphicsSurfaceToken):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

  • platform/graphics/opengl/GLDefs.h: Removed.
  • platform/graphics/opengl/GLPlatformContext.cpp: Removed.
  • platform/graphics/opengl/GLPlatformContext.h: Removed.
  • platform/graphics/opengl/GLPlatformSurface.cpp: Removed.
  • platform/graphics/opengl/GLPlatformSurface.h: Removed.
  • platform/graphics/surfaces/glx/GLXContext.cpp: Removed.
  • platform/graphics/surfaces/glx/GLXContext.h: Removed.
  • platform/graphics/surfaces/glx/GLXSurface.cpp: Removed.
  • platform/graphics/surfaces/glx/GLXSurface.h: Removed.
2:38 PM Changeset in webkit [135082] by Antti Koivisto
  • 10 edits
    2 adds in trunk

REGRESSION(r129644): User StyleSheet not applying
https://bugs.webkit.org/show_bug.cgi?id=102110

Reviewed by Andreas Kling.

Source/WebCore:

Injected stylesheets added as UserStyleAuthorLevel fail to apply. r129644 implicitly assumed that
such things don't exists but on Chromium addUserStyleSheet() confusingly uses them.

The patch adds injected author stylesheets to DocumentStyleSheetCollection::activeStyleSheets().
It also generally cleans up the code around injected and user stylesheets.

Tests: userscripts/user-script-and-stylesheet.html

userscripts/user-stylesheet-invalidate.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::collectRulesFromUserStyleSheets):
(WebCore::collectCSSOMWrappers):

  • css/StyleResolver.h:

(StyleResolver):

  • dom/Document.cpp:

(WebCore::Document::setCompatibilityMode):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::~DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::injectedUserStyleSheets):
(WebCore):
(WebCore::DocumentStyleSheetCollection::injectedAuthorStyleSheets):
(WebCore::DocumentStyleSheetCollection::updateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::addUserSheet):
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
(WebCore::DocumentStyleSheetCollection::reportMemoryUsage):

  • dom/DocumentStyleSheetCollection.h:

(WebCore::DocumentStyleSheetCollection::documentUserStyleSheets):
(DocumentStyleSheetCollection):

  • page/PageGroup.cpp:

(WebCore::PageGroup::addUserStyleSheetToWorld):
(WebCore::PageGroup::removeUserStyleSheetFromWorld):
(WebCore::PageGroup::removeUserStyleSheetsFromWorld):
(WebCore::PageGroup::removeAllUserContent):
(WebCore::PageGroup::invalidatedInjectedStyleSheetCacheInAllFrames):

  • page/PageGroup.h:

(PageGroup):

LayoutTests:

  • inspector/timeline/timeline-script-tag-1-expected.txt:

Update the test result. The style invalidation log is slightly different.

  • userscripts/user-stylesheet-invalidate-expected.txt: Added.
  • userscripts/user-stylesheet-invalidate.html: Added.
1:55 PM Changeset in webkit [135081] by abarth@webkit.org
  • 12 edits in trunk/Source/WebCore

Unreviewed.

Update run-bindings-tests baselines after
http://trac.webkit.org/changeset/135063

  • bindings/scripts/test/JS/JSTestActiveDOMObject.h:

(JSTestActiveDOMObjectOwner):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.h:

(JSTestCustomNamedGetterOwner):

  • bindings/scripts/test/JS/JSTestEventConstructor.h:

(JSTestEventConstructorOwner):

  • bindings/scripts/test/JS/JSTestEventTarget.h:

(JSTestEventTargetOwner):

  • bindings/scripts/test/JS/JSTestException.h:

(JSTestExceptionOwner):

  • bindings/scripts/test/JS/JSTestInterface.h:

(JSTestInterfaceOwner):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.h:

(JSTestMediaQueryListListenerOwner):

  • bindings/scripts/test/JS/JSTestNamedConstructor.h:

(JSTestNamedConstructorOwner):

  • bindings/scripts/test/JS/JSTestObj.h:

(JSTestObjOwner):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.h:

(JSTestOverloadedConstructorsOwner):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:

(JSTestSerializedScriptValueInterfaceOwner):

1:37 PM Changeset in webkit [135080] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Make convertToLayerCoords iterative, rather than recursive
https://bugs.webkit.org/show_bug.cgi?id=102618

Reviewed by Antti Koivisto.

RenderLayer::convertToLayerCoords() is a hot function on profiles.
Change it to be iterative, rather than recursive, so that the
bulk of the function can be inlined.

Was tested with assertions against the old code during development.

  • rendering/RenderLayer.cpp:

(WebCore::accumulateOffsetTowardsAncestor):
(WebCore::RenderLayer::convertToLayerCoords):

1:34 PM Changeset in webkit [135079] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG constant folding phase should say 'changed = true' whenever it changes the graph
https://bugs.webkit.org/show_bug.cgi?id=102550

Rubber stamped by Mark Hahnenberg.

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):

12:25 PM Changeset in webkit [135078] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Inline the StyledElement constructor.
<http://webkit.org/b/102615>

Reviewed by Antti Koivisto.

StyledElement sits between Element and HTMLElement in the inheritance chain, and both of those are inline.
Knocks ~0.4% of samples off of the DOM/CreateNodes performance test.

  • dom/StyledElement.cpp:
  • dom/StyledElement.h:

(WebCore::StyledElement::StyledElement):

10:54 AM Changeset in webkit [135077] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

HTMLMediaElement: Skip unnecessary attribute lookup in parsing of "src" attribute.
<http://webkit.org/b/102614>

Reviewed by Anders Carlsson.

When parsing the "src" attribute, we don't need to look it up with fastHasAttribute()
to know if it's present. If it's not present, 'value' argument will be null.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

10:46 AM Changeset in webkit [135076] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] add WebCursorInfo::imageScaleFactor
https://bugs.webkit.org/show_bug.cgi?id=102612

Patch by Rick Byers <rbyers@chromium.org> on 2012-11-18
Reviewed by Adam Barth.

Add cursor image scale factor (currently always 1) to chromium API, in preparation for
high-dpi cursor support in bug 99493.

  • public/WebCursorInfo.h:

(WebKit::WebCursorInfo::WebCursorInfo):

  • src/WebCursorInfo.cpp:

(WebKit::WebCursorInfo::WebCursorInfo):

10:38 AM Changeset in webkit [135075] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Wrong transform when using software path.
https://bugs.webkit.org/show_bug.cgi?id=102549

Patch by Yael Aharon <yael.aharon@intel.com> on 2012-11-18
Reviewed by Kenneth Rohde Christiansen.

When using the software path, our transform is not correct and results
in drawing the wrong part of the page. This becomes more obvious after scrolling.

  • UIProcess/efl/WebInspectorProxyEfl.cpp:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

10:33 AM Changeset in webkit [135074] by commit-queue@webkit.org
  • 5 edits
    10 adds in trunk/Source/WebCore

[EFL] Refactor GraphicsContext3DEFL.
https://bugs.webkit.org/show_bug.cgi?id=101291.

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-11-18
Reviewed by Kenneth Rohde Christiansen.

GraphicsContext3DEfl creates GraphicsContext3DPrivate, which acts as its platform Layer.
GraphicsContext3DPrivate needs to handle the following cases:
1) To provide an off-screen buffer for accelerated composition.
2) Render to a current context.
3) To render directly to host window. (currently not supported.)

Before this patch Evas was used to provide us an off-screen context and buffer. GLX was used in
the other supported case. Evas acts as a glue layer to provide us with appropriate
GL bindings (OpenGL functions), GL context and drawable (surface/offscreenbuffer).
However, primitive rendering is handled by TextureMapper and OpenGLShims is used to load the needed GL functions.

It would be for our advantage to be able to take in to use any optimisations/extensions
provided by underlying drivers, specific to a platform (e.g. GLX_MESA_copy_sub_buffer etc.).
This patch introduces an abstraction layer to make it easy to add support for any GL backend (GLX, EGL etc.)
and do any platform specific optimizations as needed without complicating GraphicsContext3DPrivate class.
Two new classes are added with this implementation, GLPlatformContext and GLPlatformSurface.
GraphicsContext3DPrivate would create and own a GLPlatformContext and GLPlatformSurface.

GLPlatformContext encapsulates an OpenGL context hiding any platform specific management.
It uses GL extension ARB_robustness (when available) to detect driver resets.
It defines a simple interface for things that need to be handled by the context. Support
for multi-threaded usage and shared context-group would be added later.

GLPlatformSurface encapsulates an OpenGL drawable hiding any platform specific management.
It defines a simple interface for things that need to be handled by the surface.
It creates an off-screen rendering area. Any GLPlatformContext (compatible with the surface)
can be used to render into this off-screen area.

This patch also adds GLX implementation. To keep the patch to minimum EGL support would be added in another changeset.

  • PlatformEfl.cmake:
  • platform/graphics/efl/GraphicsContext3DEfl.cpp:

(WebCore::GraphicsContext3D::create):
(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::~GraphicsContext3D):
(WebCore::GraphicsContext3D::makeContextCurrent):
(WebCore::GraphicsContext3D::setContextLostCallback):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
(GraphicsContext3DPrivate::releaseResources):
(GraphicsContext3DPrivate::setContextLostCallback):
(GraphicsContext3DPrivate::platformGraphicsContext3D):
(GraphicsContext3DPrivate::makeContextCurrent):
(GraphicsContext3DPrivate::createGraphicsSurfaces):
(GraphicsContext3DPrivate::copyToGraphicsSurface):
(GraphicsContext3DPrivate::graphicsSurfaceToken):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

  • platform/graphics/opengl/GLDefs.h: Added.

(WebCore):

  • platform/graphics/opengl/GLPlatformContext.cpp: Added.

(WebCore):
(WebCore::GLPlatformContext::createContext):
(WebCore::GLPlatformContext::createOffScreenContext):
(WebCore::GLPlatformContext::createCurrentContextWrapper):
(WebCore::GLPlatformContext::GLPlatformContext):
(WebCore::GLPlatformContext::~GLPlatformContext):
(WebCore::GLPlatformContext::makeCurrent):
(WebCore::GLPlatformContext::isValid):
(WebCore::GLPlatformContext::releaseCurrent):
(WebCore::GLPlatformContext::handle):
(WebCore::GLPlatformContext::isCurrentContext):
(WebCore::GLPlatformContext::initialize):
(WebCore::GLPlatformContext::getCurrent):
(WebCore::GLPlatformContext::platformMakeCurrent):
(WebCore::GLPlatformContext::platformReleaseCurrent):
(WebCore::GLPlatformContext::destroy):

  • platform/graphics/opengl/GLPlatformContext.h: Added.

(WebCore):
(GLPlatformContext):

  • platform/graphics/opengl/GLPlatformSurface.cpp: Added.

(WebCore):
(WebCore::GLPlatformSurface::createOffscreenSurface):
(WebCore::GLPlatformSurface::createTransportSurface):
(WebCore::GLPlatformSurface::GLPlatformSurface):
(WebCore::GLPlatformSurface::~GLPlatformSurface):
(WebCore::GLPlatformSurface::handle):
(WebCore::GLPlatformSurface::geometry):
(WebCore::GLPlatformSurface::sharedDisplay):
(WebCore::GLPlatformSurface::configuration):
(WebCore::GLPlatformSurface::swapBuffers):
(WebCore::GLPlatformSurface::copyTexture):
(WebCore::GLPlatformSurface::updateContents):
(WebCore::GLPlatformSurface::setGeometry):
(WebCore::GLPlatformSurface::destroy):

  • platform/graphics/opengl/GLPlatformSurface.h: Added.

(WebCore):
(GLPlatformSurface):

GLXOffScreenContext creates an off-screen context. This is used when
renderstyle is RenderOffscreen.
It uses GL extension GLX_ARB_create_context (when available)
to create a context else falls back to use glXCreateNewContext.

  • platform/graphics/surfaces/glx/GLXContext.cpp: Added.

(WebCore):
(WebCore::initializeARBExtensions):
(WebCore::GLXOffScreenContext::GLXOffScreenContext):
(WebCore::GLXOffScreenContext::initialize):
(WebCore::GLXOffScreenContext::~GLXOffScreenContext):
(WebCore::GLXOffScreenContext::isCurrentContext):
(WebCore::GLXOffScreenContext::platformMakeCurrent):
(WebCore::GLXOffScreenContext::platformReleaseCurrent):
(WebCore::GLXOffScreenContext::freeResources):
(WebCore::GLXOffScreenContext::destroy):

GLXCurrentContextWrapper acts as a wrapper for current context.
This is used when renderstyle is RenderToCurrentGLContext.

  • platform/graphics/surfaces/glx/GLXContext.h: Added.

(WebCore):
(GLXCurrentContextWrapper):
(WebCore::GLXCurrentContextWrapper::GLXCurrentContextWrapper):
(WebCore::GLXCurrentContextWrapper::~GLXCurrentContextWrapper):
(GLXOffScreenContext):

  • platform/graphics/surfaces/glx/GLXSurface.cpp: Added.

(WebCore):
(WebCore::GLXSurface::GLXSurface):
(WebCore::GLXSurface::~GLXSurface):
(WebCore::GLXSurface::visualInfo):
(WebCore::GLXSurface::xWindow):
(WebCore::GLXSurface::pBufferConfiguration):
(WebCore::GLXSurface::transportSurfaceConfiguration):
(WebCore::GLXSurface::isXRenderExtensionSupported):

GLXTransportSurface creates Window and uses it as an off-screen surface.
Any GLContext that was created with respect to configuration can be used
to render into this.
This is used when contents of the buffer are to be provided to UI Process
for display.

(WebCore::GLXTransportSurface::GLXTransportSurface):
(WebCore::GLXTransportSurface::~GLXTransportSurface):
(WebCore::GLXTransportSurface::configuration):
(WebCore::GLXTransportSurface::swapBuffers):
(WebCore::GLXTransportSurface::setGeometry):
(WebCore::GLXTransportSurface::initialize):
(WebCore::GLXTransportSurface::destroy):
(WebCore::GLXTransportSurface::freeResources):

GLXPBuffer, Creates a GL surface (PBuffer) used for offscreen rendering.
Any GLContext that was created with respect to configuration can be used
to render into this.

(WebCore::GLXPBuffer::GLXPBuffer):
(WebCore::GLXPBuffer::~GLXPBuffer):
(WebCore::GLXPBuffer::initialize):
(WebCore::GLXPBuffer::configuration):
(WebCore::GLXPBuffer::destroy):
(WebCore::GLXPBuffer::freeResources):

  • platform/graphics/surfaces/glx/GLXSurface.h: Added.

(WebCore):

Creates X resources which are shared between surface and context.

(SharedX11Resources):
(WebCore::SharedX11Resources::create):
(WebCore::SharedX11Resources::deref):
(WebCore::SharedX11Resources::getXWindow):
(WebCore::SharedX11Resources::display):
(WebCore::SharedX11Resources::visualInfo):
(WebCore::SharedX11Resources::createConfig):
(WebCore::SharedX11Resources::pBufferContextConfig):
(WebCore::SharedX11Resources::surfaceContextConfig):
(WebCore::SharedX11Resources::isXRenderExtensionSupported):
(WebCore::SharedX11Resources::SharedX11Resources):
(WebCore::SharedX11Resources::~SharedX11Resources):
(GLXSurface):
(GLXTransportSurface):
(GLXPBuffer):

10:07 AM Changeset in webkit [135073] by Simon Fraser
  • 3 edits in branches/safari-536.28-branch/Source/WebCore

<rdar://problem/12726004> Chopin: Don't say there are dirty overlay scrollbars when they are clipped out (102609)
Merge r135064

2012-11-17 Simon Fraser <Simon Fraser>

Don't say there are dirty overlay scrollbars when they are clipped out
https://bugs.webkit.org/show_bug.cgi?id=102609

Reviewed by Brady Eidson.

Painting overlay scrollbars involves a second painting pass over the entire
RenderLayer subtree for a compositing layer, which can be very expensive.

Avoid this when possible by detecting when overflow controls are not in
the damage rect.

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::rectForHorizontalScrollbar): Compute a local rect for the horizontal scrollbar. (WebCore::RenderLayer::rectForVerticalScrollbar): Compute a local rect for the vertical scrollbar. (WebCore::RenderLayer::positionOverflowControls): Use rectForHorizontalScrollbar() and rectForVerticalScrollbar(). (WebCore::RenderLayer::overflowControlsIntersectRect): Return true if any of the present overflow controls intersect the given local rect. (WebCore::RenderLayer::paintOverflowControls): Bail if the damage rect doesn't intersect any of the overflow controls.
  • rendering/RenderLayer.h: (RenderLayer):
10:07 AM Changeset in webkit [135072] by Simon Fraser
  • 4 edits in branches/safari-536.28-branch

<rdar://problem/12725998> Simplify bounds computation for the RenderView's layer (102597)
Merge r135059

Source/WebCore:

2012-11-17 Simon Fraser <Simon Fraser>

Simplify bounds computation for the RenderView's layer
https://bugs.webkit.org/show_bug.cgi?id=102597

Reviewed by Anders Carlsson.

Computing the bounds of the main layer (that of the RenderView) used to do
a full RenderLayer walk, taking the union of the bounds of all the sublayers,
which is very expensive on large pages.

For the RenderView we can avoid that entirely and just use the RenderView's
document rect. Since page scaling happens as a transform on this layer,
we want the unscaled document rect.

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::calculateLayerBounds):

LayoutTests:

2012-11-17 Simon Fraser <Simon Fraser>

Simplify bounds computation for the RenderView's layer
https://bugs.webkit.org/show_bug.cgi?id=102597

Reviewed by Anders Carlsson.

Progressions as a result of this change:

  • compositing/layer-creation/fixed-position-out-of-view-expected.txt: The height is now the page height, since the page is scrollable.
  • compositing/tiling/tile-cache-zoomed-expected.txt: The main layer now is not affected by the page scale transform.
  • platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt: Ditto.
10:06 AM Changeset in webkit [135071] by Simon Fraser
  • 5 edits in branches/safari-536.28-branch/Source/WebCore

<rdar://problem/12725980> Fix overlay scrollbar painting in compositing layers (102442)
Merge r135029

2012-11-16 Simon Fraser <Simon Fraser>

Fix overlay scrollbar painting in compositing layers
https://bugs.webkit.org/show_bug.cgi?id=102442

Reviewed by Beth Dakin.

There were two issues with overlay scrollbar painting in
compositing layers.

First, we'd only ever call setContainsDirtyOverlayScrollbars()
on the RenderView's layer, even when encountering an overlay scrollbar
in some descendant compositing layer. This meant that we'd never
run the paintOverlayScrollbars() code for those child compositing
layers, so sometimes scrollbars were missing there.

Even after fixing that, we would fail to render scrollbars that
were not in the composited RenderLayer itself. This happened because
we called into RenderLayer::paintOverlayScrollbars(), which called
paintLayer() with flags that only said to paint the overlay scrollbars
but not any descendants, so this paint path would not walk child
RenderLayers.

Also remove the containsScrollableAreaWithOverlayScrollbars() flag on
ScrollView which is no longer used.

  • platform/ScrollView.cpp: (WebCore::ScrollView::ScrollView): Remove containsScrollableAreaWithOverlayScrollbars(). (WebCore::ScrollView::paint): Remove setting of m_containsScrollableAreaWithOverlayScrollbars.
  • platform/ScrollView.h:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::paintOverflowControls): Call setContainsDirtyOverlayScrollbars() on the compositing ancestor or the root. Remove call to setContainsScrollableAreaWithOverlayScrollbars(). (WebCore::RenderLayer::paintOverlayScrollbars): When painting overlay scrollbars, no need to say we have transparency, and no need to use temporary clip rects. (WebCore::RenderLayer::paintLayer): The PaintLayerPaintingOverlayScrollbars check here was only needed because the compositing entrypoint to painting overlay scrollbars went via paintLayer(), which isn't normally used as a composited painting entry point. Now that we no longer call that, we don't need this special check.
  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::paintIntoLayer): Jump into overlay scrollbar painting via paintLayerContents(), not paintOverlayScrollbars(), since the latter does not traverse sublayers.
10:06 AM Changeset in webkit [135070] by Simon Fraser
  • 5 edits
    2 adds in branches/safari-536.28-branch

Prerequisite for <rdar://problem/12725980> Fix overlay scrollbar painting in compositing layers (102442)
Merge r127943

.:

2012-09-07 Simon Fraser <Simon Fraser>

box-shadow causes overlay scrollbars to be in the wrong position when element is composited
https://bugs.webkit.org/show_bug.cgi?id=85647

Reviewed by James Robinson.

Test overlay scrollbars in composited layers.

  • ManualTests/scrollbars/scrollbars-in-composited-layers.html: Added.

Source/WebCore:

2012-09-07 Simon Fraser <Simon Fraser>

box-shadow causes overlay scrollbars to be in the wrong position when element is composited
https://bugs.webkit.org/show_bug.cgi?id=85647

Reviewed by James Robinson.

The code that positioned the GraphicsLayers for scrollbars failed to take
into account any offset between the origin of the compositing layer,
and the renderer. This caused scrollbar layers to be misplaced or hidden
on layers with, for example, box-shadows.

Also moved the code that positions the scrollbar layers into RendderLayerBacking,
since this is where all the rest of the GraphicsLayer-positioning code lives.

Renamed an "offsetFromLayer" param to "offsetFromRoot" which is more accurate.

Manual test, since overlay scrollbars are not enabled in DRT/WTR:

ManualTests/scrollbars/scrollbars-in-composited-layers.html

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::positionOverflowControls):
  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::positionOverflowControlsLayers):
  • rendering/RenderLayerBacking.h: (RenderLayerBacking):
8:55 AM Changeset in webkit [135069] by akling@apple.com
  • 229 edits in trunk/Source/WebCore

Element::parseAttribute() should take name & value as separate arguments.
<http://webkit.org/b/102608>

Reviewed by Antti Koivisto.

Update the signature of parseAttribute() to take a QualifiedName/AtomicString combo instead
of an Attribute. This lets us pass avoid refcount churn in Element::attributeChanged() since
creating a temporary Attribute is no longer necessary.

This was surprisingly hot (~1%) on the DOM/CreateNodes performance test.

  • bindings/js/ScriptEventListener.cpp:

(WebCore::createAttributeEventListener):

  • bindings/js/ScriptEventListener.h:

(WebCore):

  • bindings/v8/ScriptEventListener.cpp:

(WebCore::createAttributeEventListener):

  • bindings/v8/ScriptEventListener.h:

(WebCore):

  • dom/Element.cpp:

(WebCore::Element::attributeChanged):
(WebCore::Element::parseAttribute):

  • dom/Element.h:

(Element):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::parseAttribute):

  • dom/StyledElement.h:

(StyledElement):

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::parseAttribute):

  • html/HTMLAnchorElement.h:

(HTMLAnchorElement):

  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::parseAttribute):

  • html/HTMLAppletElement.h:

(HTMLAppletElement):

  • html/HTMLAreaElement.cpp:

(WebCore::HTMLAreaElement::parseAttribute):

  • html/HTMLAreaElement.h:

(HTMLAreaElement):

  • html/HTMLBaseElement.cpp:

(WebCore::HTMLBaseElement::parseAttribute):

  • html/HTMLBaseElement.h:

(HTMLBaseElement):

  • html/HTMLBodyElement.cpp:

(WebCore::HTMLBodyElement::parseAttribute):

  • html/HTMLBodyElement.h:

(HTMLBodyElement):

  • html/HTMLButtonElement.cpp:

(WebCore::HTMLButtonElement::parseAttribute):

  • html/HTMLButtonElement.h:
  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::parseAttribute):

  • html/HTMLCanvasElement.h:

(HTMLCanvasElement):

  • html/HTMLDetailsElement.cpp:

(WebCore::HTMLDetailsElement::parseAttribute):

  • html/HTMLDetailsElement.h:

(HTMLDetailsElement):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::parseAttribute):
(WebCore::HTMLElement::dirAttributeChanged):

  • html/HTMLElement.h:

(HTMLElement):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseAttribute):

  • html/HTMLEmbedElement.h:

(HTMLEmbedElement):

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::parseAttribute):

  • html/HTMLFormControlElement.h:

(HTMLFormControlElement):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::parseAttribute):

  • html/HTMLFormElement.h:

(HTMLFormElement):

  • html/HTMLFrameElement.cpp:

(WebCore::HTMLFrameElement::parseAttribute):

  • html/HTMLFrameElement.h:

(HTMLFrameElement):

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::parseAttribute):

  • html/HTMLFrameElementBase.h:

(HTMLFrameElementBase):

  • html/HTMLFrameSetElement.cpp:

(WebCore::HTMLFrameSetElement::parseAttribute):

  • html/HTMLFrameSetElement.h:

(HTMLFrameSetElement):

  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::parseAttribute):

  • html/HTMLIFrameElement.h:

(HTMLIFrameElement):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::parseAttribute):

  • html/HTMLImageElement.h:

(HTMLImageElement):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::parseAttribute):
(WebCore::HTMLInputElement::parseMaxLengthAttribute):

  • html/HTMLInputElement.h:

(HTMLInputElement):

  • html/HTMLKeygenElement.cpp:

(WebCore::HTMLKeygenElement::parseAttribute):

  • html/HTMLKeygenElement.h:

(HTMLKeygenElement):

  • html/HTMLLIElement.cpp:

(WebCore::HTMLLIElement::parseAttribute):

  • html/HTMLLIElement.h:

(HTMLLIElement):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::parseAttribute):

  • html/HTMLLinkElement.h:

(HTMLLinkElement):

  • html/HTMLMapElement.cpp:

(WebCore::HTMLMapElement::parseAttribute):

  • html/HTMLMapElement.h:

(HTMLMapElement):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • html/HTMLMediaElement.h:
  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::parseAttribute):

  • html/HTMLMetaElement.h:

(HTMLMetaElement):

  • html/HTMLMeterElement.cpp:

(WebCore::HTMLMeterElement::parseAttribute):

  • html/HTMLMeterElement.h:

(HTMLMeterElement):

  • html/HTMLOListElement.cpp:

(WebCore::HTMLOListElement::parseAttribute):

  • html/HTMLOListElement.h:

(HTMLOListElement):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseAttribute):

  • html/HTMLObjectElement.h:

(HTMLObjectElement):

  • html/HTMLOptGroupElement.cpp:

(WebCore::HTMLOptGroupElement::parseAttribute):

  • html/HTMLOptGroupElement.h:
  • html/HTMLOptionElement.cpp:

(WebCore::HTMLOptionElement::parseAttribute):

  • html/HTMLOptionElement.h:

(HTMLOptionElement):

  • html/HTMLOutputElement.cpp:

(WebCore::HTMLOutputElement::parseAttribute):

  • html/HTMLOutputElement.h:

(HTMLOutputElement):

  • html/HTMLProgressElement.cpp:

(WebCore::HTMLProgressElement::parseAttribute):

  • html/HTMLProgressElement.h:
  • html/HTMLScriptElement.cpp:

(WebCore::HTMLScriptElement::parseAttribute):

  • html/HTMLScriptElement.h:

(HTMLScriptElement):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::parseAttribute):
(WebCore::HTMLSelectElement::parseMultipleAttribute):

  • html/HTMLSelectElement.h:
  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::parseAttribute):

  • html/HTMLStyleElement.h:

(HTMLStyleElement):

  • html/HTMLTableCellElement.cpp:

(WebCore::HTMLTableCellElement::parseAttribute):

  • html/HTMLTableCellElement.h:

(HTMLTableCellElement):

  • html/HTMLTableColElement.cpp:

(WebCore::HTMLTableColElement::parseAttribute):

  • html/HTMLTableColElement.h:

(HTMLTableColElement):

  • html/HTMLTableElement.cpp:

(WebCore::HTMLTableElement::parseAttribute):

  • html/HTMLTableElement.h:

(HTMLTableElement):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::parseAttribute):

  • html/HTMLTextAreaElement.h:

(HTMLTextAreaElement):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::parseAttribute):

  • html/HTMLTextFormControlElement.h:

(HTMLTextFormControlElement):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::parseAttribute):

  • html/HTMLTrackElement.h:

(HTMLTrackElement):

  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::parseAttribute):

  • html/HTMLVideoElement.h:

(HTMLVideoElement):

  • html/shadow/HTMLContentElement.cpp:

(WebCore::HTMLContentElement::parseAttribute):

  • html/shadow/HTMLContentElement.h:

(HTMLContentElement):

  • mathml/MathMLElement.cpp:

(WebCore::MathMLElement::parseAttribute):

  • mathml/MathMLElement.h:

(MathMLElement):

  • svg/SVGAElement.cpp:

(WebCore::SVGAElement::parseAttribute):

  • svg/SVGAElement.h:

(SVGAElement):

  • svg/SVGAnimateMotionElement.cpp:

(WebCore::SVGAnimateMotionElement::parseAttribute):

  • svg/SVGAnimateMotionElement.h:

(SVGAnimateMotionElement):

  • svg/SVGAnimateTransformElement.cpp:

(WebCore::SVGAnimateTransformElement::parseAttribute):

  • svg/SVGAnimateTransformElement.h:

(SVGAnimateTransformElement):

  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::parseAttribute):

  • svg/SVGAnimationElement.h:

(SVGAnimationElement):

  • svg/SVGCircleElement.cpp:

(WebCore::SVGCircleElement::parseAttribute):

  • svg/SVGCircleElement.h:

(SVGCircleElement):

  • svg/SVGClipPathElement.cpp:

(WebCore::SVGClipPathElement::parseAttribute):

  • svg/SVGClipPathElement.h:

(SVGClipPathElement):

  • svg/SVGComponentTransferFunctionElement.cpp:

(WebCore::SVGComponentTransferFunctionElement::parseAttribute):

  • svg/SVGComponentTransferFunctionElement.h:

(SVGComponentTransferFunctionElement):

  • svg/SVGCursorElement.cpp:

(WebCore::SVGCursorElement::parseAttribute):

  • svg/SVGCursorElement.h:

(SVGCursorElement):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::reportAttributeParsingError):
(WebCore::SVGElement::parseAttribute):

  • svg/SVGElement.h:

(SVGElement):

  • svg/SVGEllipseElement.cpp:

(WebCore::SVGEllipseElement::parseAttribute):

  • svg/SVGEllipseElement.h:

(SVGEllipseElement):

  • svg/SVGExternalResourcesRequired.cpp:

(WebCore::SVGExternalResourcesRequired::parseAttribute):

  • svg/SVGExternalResourcesRequired.h:

(SVGExternalResourcesRequired):

  • svg/SVGFEBlendElement.cpp:

(WebCore::SVGFEBlendElement::parseAttribute):

  • svg/SVGFEBlendElement.h:

(SVGFEBlendElement):

  • svg/SVGFEColorMatrixElement.cpp:

(WebCore::SVGFEColorMatrixElement::parseAttribute):

  • svg/SVGFEColorMatrixElement.h:

(SVGFEColorMatrixElement):

  • svg/SVGFEComponentTransferElement.cpp:

(WebCore::SVGFEComponentTransferElement::parseAttribute):

  • svg/SVGFEComponentTransferElement.h:

(SVGFEComponentTransferElement):

  • svg/SVGFECompositeElement.cpp:

(WebCore::SVGFECompositeElement::parseAttribute):

  • svg/SVGFECompositeElement.h:

(SVGFECompositeElement):

  • svg/SVGFEConvolveMatrixElement.cpp:

(WebCore::SVGFEConvolveMatrixElement::parseAttribute):

  • svg/SVGFEConvolveMatrixElement.h:

(SVGFEConvolveMatrixElement):

  • svg/SVGFEDiffuseLightingElement.cpp:

(WebCore::SVGFEDiffuseLightingElement::parseAttribute):

  • svg/SVGFEDiffuseLightingElement.h:

(SVGFEDiffuseLightingElement):

  • svg/SVGFEDisplacementMapElement.cpp:

(WebCore::SVGFEDisplacementMapElement::parseAttribute):

  • svg/SVGFEDisplacementMapElement.h:

(SVGFEDisplacementMapElement):

  • svg/SVGFEDropShadowElement.cpp:

(WebCore::SVGFEDropShadowElement::parseAttribute):

  • svg/SVGFEDropShadowElement.h:

(SVGFEDropShadowElement):

  • svg/SVGFEGaussianBlurElement.cpp:

(WebCore::SVGFEGaussianBlurElement::parseAttribute):

  • svg/SVGFEGaussianBlurElement.h:

(SVGFEGaussianBlurElement):

  • svg/SVGFEImageElement.cpp:

(WebCore::SVGFEImageElement::parseAttribute):

  • svg/SVGFEImageElement.h:

(SVGFEImageElement):

  • svg/SVGFELightElement.cpp:

(WebCore::SVGFELightElement::parseAttribute):

  • svg/SVGFELightElement.h:

(SVGFELightElement):

  • svg/SVGFEMergeNodeElement.cpp:

(WebCore::SVGFEMergeNodeElement::parseAttribute):

  • svg/SVGFEMergeNodeElement.h:

(SVGFEMergeNodeElement):

  • svg/SVGFEMorphologyElement.cpp:

(WebCore::SVGFEMorphologyElement::parseAttribute):

  • svg/SVGFEMorphologyElement.h:

(SVGFEMorphologyElement):

  • svg/SVGFEOffsetElement.cpp:

(WebCore::SVGFEOffsetElement::parseAttribute):

  • svg/SVGFEOffsetElement.h:

(SVGFEOffsetElement):

  • svg/SVGFESpecularLightingElement.cpp:

(WebCore::SVGFESpecularLightingElement::parseAttribute):

  • svg/SVGFESpecularLightingElement.h:

(SVGFESpecularLightingElement):

  • svg/SVGFETileElement.cpp:

(WebCore::SVGFETileElement::parseAttribute):

  • svg/SVGFETileElement.h:

(SVGFETileElement):

  • svg/SVGFETurbulenceElement.cpp:

(WebCore::SVGFETurbulenceElement::parseAttribute):

  • svg/SVGFETurbulenceElement.h:

(SVGFETurbulenceElement):

  • svg/SVGFilterElement.cpp:

(WebCore::SVGFilterElement::parseAttribute):

  • svg/SVGFilterElement.h:

(SVGFilterElement):

  • svg/SVGFilterPrimitiveStandardAttributes.cpp:

(WebCore::SVGFilterPrimitiveStandardAttributes::parseAttribute):

  • svg/SVGFilterPrimitiveStandardAttributes.h:

(SVGFilterPrimitiveStandardAttributes):

  • svg/SVGFitToViewBox.h:

(WebCore::SVGFitToViewBox::parseAttribute):

  • svg/SVGFontFaceElement.cpp:

(WebCore::SVGFontFaceElement::parseAttribute):

  • svg/SVGFontFaceElement.h:

(SVGFontFaceElement):

  • svg/SVGFontFaceUriElement.cpp:

(WebCore::SVGFontFaceUriElement::parseAttribute):

  • svg/SVGFontFaceUriElement.h:

(SVGFontFaceUriElement):

  • svg/SVGForeignObjectElement.cpp:

(WebCore::SVGForeignObjectElement::parseAttribute):

  • svg/SVGForeignObjectElement.h:

(SVGForeignObjectElement):

  • svg/SVGGElement.cpp:

(WebCore::SVGGElement::parseAttribute):

  • svg/SVGGElement.h:

(SVGGElement):

  • svg/SVGGlyphElement.cpp:

(WebCore::SVGGlyphElement::parseAttribute):

  • svg/SVGGlyphElement.h:

(SVGGlyphElement):

  • svg/SVGGlyphRefElement.cpp:

(WebCore::SVGGlyphRefElement::parseAttribute):

  • svg/SVGGlyphRefElement.h:
  • svg/SVGGradientElement.cpp:

(WebCore::SVGGradientElement::parseAttribute):

  • svg/SVGGradientElement.h:
  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::parseAttribute):

  • svg/SVGImageElement.h:

(SVGImageElement):

  • svg/SVGLangSpace.cpp:

(WebCore::SVGLangSpace::parseAttribute):

  • svg/SVGLangSpace.h:

(SVGLangSpace):

  • svg/SVGLineElement.cpp:

(WebCore::SVGLineElement::parseAttribute):

  • svg/SVGLineElement.h:

(SVGLineElement):

  • svg/SVGLinearGradientElement.cpp:

(WebCore::SVGLinearGradientElement::parseAttribute):

  • svg/SVGLinearGradientElement.h:

(SVGLinearGradientElement):

  • svg/SVGMPathElement.cpp:

(WebCore::SVGMPathElement::parseAttribute):

  • svg/SVGMPathElement.h:

(SVGMPathElement):

  • svg/SVGMarkerElement.cpp:

(WebCore::SVGMarkerElement::parseAttribute):

  • svg/SVGMarkerElement.h:

(SVGMarkerElement):

  • svg/SVGMaskElement.cpp:

(WebCore::SVGMaskElement::parseAttribute):

  • svg/SVGMaskElement.h:

(SVGMaskElement):

  • svg/SVGPathElement.cpp:

(WebCore::SVGPathElement::parseAttribute):

  • svg/SVGPathElement.h:

(SVGPathElement):

  • svg/SVGPatternElement.cpp:

(WebCore::SVGPatternElement::parseAttribute):

  • svg/SVGPatternElement.h:

(SVGPatternElement):

  • svg/SVGPolyElement.cpp:

(WebCore::SVGPolyElement::parseAttribute):

  • svg/SVGPolyElement.h:

(SVGPolyElement):

  • svg/SVGRadialGradientElement.cpp:

(WebCore::SVGRadialGradientElement::parseAttribute):

  • svg/SVGRadialGradientElement.h:

(SVGRadialGradientElement):

  • svg/SVGRectElement.cpp:

(WebCore::SVGRectElement::parseAttribute):

  • svg/SVGRectElement.h:

(SVGRectElement):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::parseAttribute):

  • svg/SVGSVGElement.h:

(SVGSVGElement):

  • svg/SVGScriptElement.cpp:

(WebCore::SVGScriptElement::parseAttribute):

  • svg/SVGScriptElement.h:

(SVGScriptElement):

  • svg/SVGStopElement.cpp:

(WebCore::SVGStopElement::parseAttribute):

  • svg/SVGStopElement.h:

(SVGStopElement):

  • svg/SVGStyleElement.cpp:

(WebCore::SVGStyleElement::parseAttribute):

  • svg/SVGStyleElement.h:

(SVGStyleElement):

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::parseAttribute):

  • svg/SVGStyledElement.h:

(SVGStyledElement):

  • svg/SVGStyledTransformableElement.cpp:

(WebCore::SVGStyledTransformableElement::parseAttribute):

  • svg/SVGStyledTransformableElement.h:

(SVGStyledTransformableElement):

  • svg/SVGSymbolElement.cpp:

(WebCore::SVGSymbolElement::parseAttribute):

  • svg/SVGSymbolElement.h:

(SVGSymbolElement):

  • svg/SVGTRefElement.cpp:

(WebCore::SVGTRefElement::parseAttribute):

  • svg/SVGTRefElement.h:

(SVGTRefElement):

  • svg/SVGTests.cpp:

(WebCore::SVGTests::parseAttribute):

  • svg/SVGTests.h:

(SVGTests):

  • svg/SVGTextContentElement.cpp:

(WebCore::SVGTextContentElement::parseAttribute):

  • svg/SVGTextContentElement.h:

(SVGTextContentElement):

  • svg/SVGTextElement.cpp:

(WebCore::SVGTextElement::parseAttribute):

  • svg/SVGTextElement.h:

(SVGTextElement):

  • svg/SVGTextPathElement.cpp:

(WebCore::SVGTextPathElement::parseAttribute):

  • svg/SVGTextPathElement.h:
  • svg/SVGTextPositioningElement.cpp:

(WebCore::SVGTextPositioningElement::parseAttribute):

  • svg/SVGTextPositioningElement.h:

(SVGTextPositioningElement):

  • svg/SVGURIReference.cpp:

(WebCore::SVGURIReference::parseAttribute):

  • svg/SVGURIReference.h:

(SVGURIReference):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::parseAttribute):

  • svg/SVGUseElement.h:

(SVGUseElement):

  • svg/SVGViewElement.cpp:

(WebCore::SVGViewElement::parseAttribute):

  • svg/SVGViewElement.h:

(SVGViewElement):

  • svg/SVGZoomAndPan.h:

(WebCore::SVGZoomAndPan::parseAttribute):

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::parseAttribute):

  • svg/animation/SVGSMILElement.h:

(SVGSMILElement):

8:33 AM Changeset in webkit [135068] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

StyleResolver: No need to compare "cellpadding" attributes when evaluating style sharing candidates.
<http://webkit.org/b/102596>

Reviewed by Antti Koivisto.

Differences in the cellpadding attribute is caught by comparing additionalPresentationAttributeStyle()
later on in canShareStyleWithElement() and we shouldn't waste time on comparing them.

  • css/StyleResolver.cpp:

(WebCore::haveIdenticalStyleAffectingAttributes):

3:22 AM Changeset in webkit [135067] by Carlos Garcia Campos
  • 2 edits in trunk

Unreviewed. Fix GTK+ build after r135022.

  • Source/autotools/symbols.filter: Add exports for

SerializedScriptValue changes.

3:18 AM Changeset in webkit [135066] by Carlos Garcia Campos
  • 4 edits in trunk/Source/WebKit2

[WK2] REGRESSION: After web process crash a new web process is created for every existing page
https://bugs.webkit.org/show_bug.cgi?id=102520

Reviewed by Alexey Proskuryakov.

When process model is SharedSecondaryProcess a new shared process
should be created instead of a new process per page.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::ensureSharedWebProcess): Ensure a shared web
process and return it.
(WebKit::WebContext::createWebPage): Update to change in
ensureSharedWebProcess() that returns the shared web process now.

  • UIProcess/WebContext.h:

(WebContext): Remove relaunchProcessIfNecessary().
(WebKit::WebContext::sendToAllProcessesRelaunchingThemIfNecessary):
Use ensureSharedWebProcess() instead of relaunchProcessIfNecessary().

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::reattachToWebProcess): Ensure a shared web
process for SharedSecondaryProcess model or create a new web
process for multi-process models.

12:03 AM Changeset in webkit [135065] by jonlee@apple.com
  • 2 edits in trunk/Source/WebCore

Simulated mouse events should return an accurate offset
https://bugs.webkit.org/show_bug.cgi?id=102606
<rdar://problem/12725627>

Reviewed by Brady Eidson.

A check to see if the event is simulated prior to calculating the offset has existed for a
long time (since at least r14916). Back then the check was needed because the offset was
incrementally adjusted when the target was assigned (through
MouseRelatedEvent::receivedTarget()).

Since r82225, we started calculating the offset only when needed, and calculating the offset
from scratch rather than incrementally adjusting it. Since we recalculate from scratch,
the isSimulated check is irrelevant, and we should remove it.

Tests are not possible because all uses of simulated mouse events provide no underlying
event, so the offset is never recalculated.

  • dom/MouseRelatedEvent.cpp:

(WebCore::MouseRelatedEvent::computeRelativePosition): Remove the m_isSimulated check.

Nov 17, 2012:

11:09 PM Changeset in webkit [135064] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Don't say there are dirty overlay scrollbars when they are clipped out
https://bugs.webkit.org/show_bug.cgi?id=102609

Reviewed by Brady Eidson.

Painting overlay scrollbars involves a second painting pass over the entire
RenderLayer subtree for a compositing layer, which can be very expensive.

Avoid this when possible by detecting when overflow controls are not in
the damage rect.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::rectForHorizontalScrollbar): Compute a local rect
for the horizontal scrollbar.
(WebCore::RenderLayer::rectForVerticalScrollbar): Compute a local rect
for the vertical scrollbar.
(WebCore::RenderLayer::positionOverflowControls): Use rectForHorizontalScrollbar()
and rectForVerticalScrollbar().
(WebCore::RenderLayer::overflowControlsIntersectRect): Return true if any
of the present overflow controls intersect the given local rect.
(WebCore::RenderLayer::paintOverflowControls): Bail if the damage rect
doesn't intersect any of the overflow controls.

  • rendering/RenderLayer.h:

(RenderLayer):

9:16 PM Changeset in webkit [135063] by abarth@webkit.org
  • 4 edits in trunk
REGRESSION (r133633): ASSERTION FAILED: m_wrapper
!m_jsFunction

https://bugs.webkit.org/show_bug.cgi?id=101428

Reviewed by Geoffrey Garen.

Source/WebCore:

JSNodeOwner has some smarts that wrappers of subclasses of Node need to
call during garbage collection. This patch teaches subclasses of Node
to have their JSMumbleOwner objects inherit from JSNodeOwner.

The immediate benefit of this patch is that we correctly avoid
collecting wrappers for HTMLAudioElements when they are reachable from
the DOM.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

LayoutTests:

Add two calls to gc() to make an ASSERT trigger on every run. One call
to gc() does not appear to be sufficient for reasons I don't fully
understand.

  • media/media-continues-playing-after-replace-source.html:
9:14 PM Changeset in webkit [135062] by Dimitri Glazkov
  • 3 edits in trunk/Tools

Remove unused code I wrote a long time ago from gardeningserver.py
https://bugs.webkit.org/show_bug.cgi?id=102605

Reviewed by Adam Barth.

  • Scripts/webkitpy/tool/servers/gardeningserver.py: Removed.
  • Scripts/webkitpy/tool/servers/gardeningserver_unittest.py: Removed.
9:01 PM Changeset in webkit [135061] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk/Source

Source/JavaScriptCore: Expose JSObject removeDirect and PrivateName to WebCore
https://bugs.webkit.org/show_bug.cgi?id=102546

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-17
Reviewed by Geoffrey Garen.

Export removeDirect for use in WebCore so JSDependentRetained works.

Source/WebCore: Expose JSObject::removeDirect and PrivateName to WebCore
https://bugs.webkit.org/show_bug.cgi?id=102546

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-17
Reviewed by Geoffrey Garen.

Add forwarding header for PrivateName, so JSDependentRetained works.

No new tests, just adding headers.

  • ForwardingHeaders/runtime/PrivateName.h: Added.
8:01 PM Changeset in webkit [135060] by Simon Fraser
  • 6 edits in trunk/Source/WebCore

Reduce the crazy number of parameters to RenderLayer clip-rect functions
https://bugs.webkit.org/show_bug.cgi?id=102604

Reviewed by Dan Bernstein.

Many of the RenderLayer member functions related to clip rect computation
took a long list of similar parameters. Gather these into a struct, ClipRectsContext,
that we pass to these functions

No functional changes.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::updateClipRects):
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::parentClipRects):
(WebCore::RenderLayer::backgroundClipRect):
(WebCore::RenderLayer::calculateRects):
(WebCore::RenderLayer::childrenClipRect):
(WebCore::RenderLayer::selfClipRect):
(WebCore::RenderLayer::localClipRect):

  • rendering/RenderLayer.h:

(WebCore::RenderLayer::ClipRectsContext::ClipRectsContext):
(ClipRectsContext):
(RenderLayer):
(WebCore::RenderLayer::clipRects):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::addToOverlapMap):
(WebCore::RenderLayerCompositor::clippedByAncestor):

  • rendering/RenderTreeAsText.cpp:

(WebCore::writeLayers):

8:01 PM Changeset in webkit [135059] by Simon Fraser
  • 6 edits in trunk

Simplify bounds computation for the RenderView's layer
https://bugs.webkit.org/show_bug.cgi?id=102597

Reviewed by Anders Carlsson.

Source/WebCore:

Computing the bounds of the main layer (that of the RenderView) used to do
a full RenderLayer walk, taking the union of the bounds of all the sublayers,
which is very expensive on large pages.

For the RenderView we can avoid that entirely and just use the RenderView's
document rect. Since page scaling happens as a transform on this layer,
we want the unscaled document rect.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateLayerBounds):

LayoutTests:

Progressions as a result of this change:

  • compositing/layer-creation/fixed-position-out-of-view-expected.txt: The height

is now the page height, since the page is scrollable.

  • compositing/tiling/tile-cache-zoomed-expected.txt: The main layer now is not

affected by the page scale transform.

  • platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt: Ditto.
7:37 PM Changeset in webkit [135058] by eric@webkit.org
  • 17 edits in trunk/Source/WebCore

Add ScriptWrappable to more WebCore classes which are commonly JS-wrapped
https://bugs.webkit.org/show_bug.cgi?id=102601

Reviewed by Adam Barth.

From my investigations all of these classes exist only to be exposed
to the web (via JavaScript) and are not used internally by WebCore.
I beleive all of them always have wrappers.
These were found using this code:
https://bugs.webkit.org/show_bug.cgi?id=102539#c2

Geolocation -- navigator.geolocation
WebKitCSSMatrix -- represent matrixes in JS through various APIs
DOMStringMap, NamedNodeMap, NodeIterator, TreeWalker -- exclusively for the DOM API
Blob, FileList - used by the File, Clipboard and XHR, also exclusively as API
ValidityState -- formControl.validity
CanvasRenderingContext -- canvas.getContext()
DOMApplicationCache -- window.appcache
Screen -- window.screen
DOMMimeTypeArray -- navigator.mimetypes
DOMPlugin -- navigator.plugins[0]
DOMPluginArray -- navigator.plugins

  • Modules/geolocation/Geolocation.h:
  • css/WebKitCSSMatrix.h:
  • dom/DOMStringMap.h:
  • dom/NamedNodeMap.h:
  • dom/NodeIterator.h:
  • dom/TreeWalker.h:
  • fileapi/Blob.h:
  • fileapi/FileList.h: (had to un-indent to make check-webkit-style happy)

(FileList):
(WebCore::FileList::create):
(WebCore::FileList::length):
(WebCore::FileList::isEmpty):
(WebCore::FileList::clear):
(WebCore::FileList::append):

  • html/ValidityState.h:
  • html/canvas/CanvasRenderingContext.h:
  • loader/appcache/DOMApplicationCache.h:
  • page/Screen.h:
  • platform/graphics/wince/MediaPlayerProxy.cpp:

(WebCore::WebMediaPlayerProxy::initEngine): This code was wrong, fixed to use internal APIs.

  • plugins/DOMMimeTypeArray.h:
  • plugins/DOMPlugin.h:
  • plugins/DOMPluginArray.h:
7:37 PM Changeset in webkit [135057] by rakuco@webkit.org
  • 2 edits in trunk/Source/WebKit2

Remove 8-bit related assertion from NetscapePluginModuleX11.
https://bugs.webkit.org/show_bug.cgi?id=102588

Reviewed by Andreas Kling.

Follow-up to r135043: since String::fromUTF8() is not guaranteed
to give us a 16-bit string, the assertion in
truncateToSingleLine() will fail in that case.

This should make the EFL WK2 Debug bot stop failing all
plugin-related tests because "WebKit Test Plugin" is returned as
an 8-bit string.

  • Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:

(WebKit::truncateToSingleLine):

6:13 PM Changeset in webkit [135056] by Alexandru Chiculita
  • 17 edits
    1 add in trunk/Source

[Texmap][CSS Shaders] Reuse the precompiled shader for custom filters in TextureMapperGL
https://bugs.webkit.org/show_bug.cgi?id=101801

Reviewed by Noam Rosenthal.

Source/WebCore:

Added a HashMap in TextureMapperGL to store the precompiled versions of the shaders.
Also added a new API on TextureMapper that receives a notification when the shader
is no longer needed.

No new tests, the code is tested by existing tests.

  • platform/graphics/filters/CustomFilterOperation.h:

(WebCore::CustomFilterOperation::setProgram):
(CustomFilterOperation): Made the constructor protected, so that we can overwrite the class in WK2.

  • platform/graphics/filters/CustomFilterValidatedProgram.cpp:

(WebCore::CustomFilterValidatedProgram::validatedProgramInfo):
(WebCore):

  • platform/graphics/filters/CustomFilterValidatedProgram.h:

(CustomFilterValidatedProgram):

  • platform/graphics/texmap/TextureMapper.h:

(WebCore):
(TextureMapper):
(WebCore::TextureMapper::removeCachedCustomFilterProgram):
Function to be called by the platform code, when the shader is no longer
needed. This implementation is empty and overridden in TextureMapperGL.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::removeCachedCustomFilterProgram):
Removes the compiled shader from the cache. This is called from WK2 when the compiled shader
is no longer needed.
(WebCore):
(WebCore::TextureMapperGL::drawUsingCustomFilter): The first time it uses a new
shader it will cache the compiled version until removeCachedCustomFilterProgram is called.

  • platform/graphics/texmap/TextureMapperGL.h:

(WebCore):
(TextureMapperGL):

Source/WebKit2:

Changed the encoding code for ValidatedCustomFilterOperation to only encode the ID of the program.
LayerTreeCoordinator makes sure to send the programs in full before the encoder runs.
LayerTreeRenderer will maintain a HashMap from these IDs to the real CustomFilterProgram.
The UI process will also receive a message from the WebProcess when the shader is no longer in needed.
LayerTreeRenderer calls the TextureMapper's removeCachedCustomFilterProgram to notify
about the removed CustomFilterProgram.

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(CoreIPC::::encode):
(CoreIPC::::decode):
(CoreIPC):

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:

(WebCore):

  • Shared/CoordinatedGraphics/WebCustomFilterOperation.h: Added.

(WebCore):
(WebCustomFilterOperation):
(WebCore::WebCustomFilterOperation::create):
(WebCore::WebCustomFilterOperation::programID):
(WebCore::WebCustomFilterOperation::WebCustomFilterOperation):

  • Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h:

(WebKit::WebCustomFilterProgramProxy::create):
(WebKit::WebCustomFilterProgramProxy::WebCustomFilterProgramProxy):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:

(WebKit):
(WebKit::LayerTreeCoordinatorProxy::removeCustomFilterProgram):
(WebKit::LayerTreeCoordinatorProxy::createCustomFilterProgram):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:

(LayerTreeCoordinatorProxy):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::setLayerFilters):
(WebKit):
(WebKit::LayerTreeRenderer::injectCachedCustomFilterPrograms):
(WebKit::LayerTreeRenderer::createCustomFilterProgram):
(WebKit::LayerTreeRenderer::removeCustomFilterProgram):
(WebKit::LayerTreeRenderer::setLayerAnimations):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(WebCore):
(LayerTreeRenderer):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::checkCustomFilterProgramProxies):
(WebKit::LayerTreeCoordinator::removeCustomFilterProgramProxy):
(WebKit::LayerTreeCoordinator::setLayerAnimations):

4:45 PM Changeset in webkit [135055] by beidson@apple.com
  • 14 edits in trunk/Source

Add an integer identifier field to AuthenticationChallengeBase.
https://bugs.webkit.org/show_bug.cgi?id=102593

Reviewed by Darin Adler.

Source/WebCore:

This is to support linking two different challenges that might not compare as equal but that
represent the same logical authentication challenge.

One example is in an IPC environment where the platform challenge can only exist in one process.

No new tests (Platform support, no effect in tested configs).

  • WebCore.exp.in:
  • platform/network/AuthenticationChallengeBase.cpp:

(WebCore::AuthenticationChallengeBase::AuthenticationChallengeBase):

  • platform/network/AuthenticationChallengeBase.h:

(WebCore::AuthenticationChallengeBase::identifier):

  • platform/network/cf/AuthenticationChallenge.h:
  • platform/network/mac/AuthenticationMac.mm:

(WebCore::generateUniqueIdentifier):
(WebCore::AuthenticationChallenge::AuthenticationChallenge): Generate a new unique identifier whenever

constructing a challenge from an NSURLAuthenticationChallenge.

  • platform/network/cf/AuthenticationCF.cpp:

(WebCore::generateUniqueIdentifier):
(WebCore::AuthenticationChallenge::AuthenticationChallenge): Generate a new unique identifier whenever

constructing a challenge from a CFURLAuthChallengeRef.

Implement the new constructor form for ports relevant to WebKit2:

  • platform/network/qt/AuthenticationChallenge.h:

(WebCore::AuthenticationChallenge::AuthenticationChallenge):

  • platform/network/soup/AuthenticationChallenge.h:

(WebCore::AuthenticationChallenge::AuthenticationChallenge):

  • platform/network/win/AuthenticationChallenge.h:

(WebCore::AuthenticationChallenge::AuthenticationChallenge):

Source/WebKit/win:

  • WebURLAuthenticationChallenge.cpp:

(WebURLAuthenticationChallenge::initWithProtectionSpace): Adopt the new constructor with a dummy identifier.

Source/WebKit2:

Properly encode/decode the identifier when sending the challenge over CoreIPC.

  • Shared/WebCoreArgumentCoders.cpp:

(CoreIPC::::encode):
(CoreIPC::::decode):

4:11 PM Changeset in webkit [135054] by Simon Fraser
  • 4 edits in trunk/LayoutTests

Rebaseline three tests affected by the dumping of tile grid extent.

  • platform/mac/compositing/tiling/rotated-tiled-clamped-expected.txt:
  • platform/mac/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
  • platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt:
3:37 PM Changeset in webkit [135053] by Simon Fraser
  • 12 edits in trunk

Dump the tile cache extent in layout tests
https://bugs.webkit.org/show_bug.cgi?id=102600

Reviewed by Anders Carlsson.

Source/WebCore:

When dumping tiled layer stats in layout tests, also dump the extent
of the tile grid. This will allow us to detect issues related
to zooming, which is not possible with the existing tile coverage rect,
which is dumped in layer (not tile) coordinates.

  • platform/graphics/TiledBacking.h: Added tileGridExtent().
  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::dumpAdditionalProperties): Dump the tile grid extent.

  • platform/graphics/ca/mac/TileCache.h: tileCoverageRect() should be OVERRIDE.
  • platform/graphics/ca/mac/TileCache.mm:

(WebCore::TileCache::getTileIndexRangeForRect):
(WebCore::TileCache::tileGridExtent): Return a rect with the size of
the grid as top,left width,height.

LayoutTests:

New results which contain tile cache extents.

  • platform/mac/tiled-drawing/tile-coverage-after-scroll-expected.txt:
  • platform/mac/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt:
  • platform/mac/tiled-drawing/tile-coverage-slow-scrolling-expected.txt:
  • platform/mac/tiled-drawing/tiled-drawing-zoom-expected.txt:
  • platform/mac/tiled-drawing/tiled-drawing-zoom-scrolled-expected.txt:
  • platform/mac/tiled-drawing/use-tiled-drawing-expected.txt:
1:41 PM Changeset in webkit [135052] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening. Fixing a test that's failing due to changes
made in r134949 and wasn't updated yet.

  • http/tests/websocket/tests/hybi/workers/close-expected.txt:
  • http/tests/websocket/tests/hybi/workers/resources/close.js:
1:00 PM Changeset in webkit [135051] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Avoid full style recalc when 'style' attribute changes.
<http://webkit.org/b/78718>

Reviewed by Anders Carlsson.

Use setNeedsStyleRecalc(InlineStyleChange) when the 'style' attribute changes
to reduce the amount of work done in recalcStyle().

  • dom/StyledElement.cpp:

(WebCore::StyledElement::styleAttributeChanged):

12:06 PM Changeset in webkit [135050] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove coneGain and distanceGain attributes from PannerNode.idl
https://bugs.webkit.org/show_bug.cgi?id=102343

Patch by Li Yin <li.yin@intel.com> on 2012-11-17
Reviewed by Chris Rogers.

Removing .coneGain and .distanceGain as publicly accessible values,
since normally they only need to be calculated internally.

No changes to tests, since these attributes were not tested and are being removed.

  • Modules/webaudio/PannerNode.idl:
11:58 AM Changeset in webkit [135049] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

biquadfilternode-basic.html test should cover default value of frequency, Q and gain.
https://bugs.webkit.org/show_bug.cgi?id=102305

Patch by Li Yin <li.yin@intel.com> on 2012-11-17
Reviewed by Chris Rogers.

Spec: https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#BiquadFilterNode
The default values of frequency, Q and gain are clearly specified, we should
have related sub test to over them.

  • webaudio/biquadfilternode-basic-expected.txt:
  • webaudio/biquadfilternode-basic.html:
11:48 AM Changeset in webkit [135048] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-17

  • DEPS:
10:02 AM Changeset in webkit [135047] by commit-queue@webkit.org
  • 9 edits
    4 adds in trunk/Source/WebKit/chromium

Provide page/window coordinates to plugin's local coordinates translation in WebPluginContainer.
https://bugs.webkit.org/show_bug.cgi?id=102339

Patch by Istiaque Ahmed <lazyboy@chromium.org> on 2012-11-17
Reviewed by Adam Barth.

This change will allow converting a page's window coordinates to plugins's local coordinates,
taking CSS transformations into account. Embedder page of the plugin can use this information
for targetting elements inside the plugin (e.g. devtools can inspect a specific element at the
local coordinate position inside plugin).
Attempting to re-land after Windows build fix.

  • WebKit.gyp:
  • WebKit.gypi:
  • public/WebNode.h:

(WebKit):

  • public/WebPluginContainer.h:

(WebKit):
(WebPluginContainer):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::executeCommand):
(WebKit::WebFrameImpl::printBegin):
(WebKit::WebFrameImpl::isPrintScalingDisabledForPlugin):

  • src/WebNode.cpp:

(WebKit::WebNode::pluginContainer):
(WebKit):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::windowToLocalPoint):
(WebKit):

  • src/WebPluginContainerImpl.h:

(WebPluginContainerImpl):

  • tests/FakeWebPlugin.cpp: Added.

(WebKit):
(WebKit::FakeWebPlugin::FakeWebPlugin):
(WebKit::FakeWebPlugin::~FakeWebPlugin):
(WebKit::FakeWebPlugin::initialize):
(WebKit::FakeWebPlugin::destroy):

  • tests/FakeWebPlugin.h: Added.

(WebKit):
(FakeWebPlugin):

  • tests/WebPluginContainerTest.cpp: Added.

(WebKit):
(WebPluginContainerTest):
(WebKit::WebPluginContainerTest::WebPluginContainerTest):
(WebKit::WebPluginContainerTest::TearDown):
(WebKit::getWebPluginContainer):
(WebKit::TEST_F):

  • tests/data/plugin_container.html: Added.
7:49 AM Changeset in webkit [135046] by kbalazs@webkit.org
  • 2 edits in trunk/Source/WebCore

[Coordinated Graphics] Resumed animations leave an obsolate GraphicsLayerAnimation behind
https://bugs.webkit.org/show_bug.cgi?id=102530

Reviewed by Noam Rosenthal.

GraphicsLayer::addAnimation is called no only when a new animation is created
but also when resuming a paused animation. If this is a resumed animation we
should remove the obsolate GraphicsLayerAnimation object.

Tested by animations tests.

  • platform/graphics/GraphicsLayerAnimation.cpp:

(WebCore::GraphicsLayerAnimations::add):

5:19 AM Changeset in webkit [135045] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations:
5:09 AM Changeset in webkit [135044] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening. Fixing a test that's failing since r134859.

  • http/tests/websocket/tests/hybi/workers/close-expected.txt:
  • http/tests/websocket/tests/hybi/workers/resources/close.js:

(runInvalidStringTest):

4:58 AM Changeset in webkit [135043] by kbalazs@webkit.org
  • 2 edits in trunk/Source/WebKit2

8bit-unaware String usage in NetscapePluginModuleX11.cpp
https://bugs.webkit.org/show_bug.cgi?id=102482

Reviewed by Michael Saboff.

String::fromUTF8 is not guaranteed to give a 16 bit string.

  • Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:

(WebKit::truncateToSingleLine): Do an explicit 16 bit conversion.

2:26 AM Changeset in webkit [135042] by mkwst@chromium.org
  • 7 edits
    3 deletes in trunk/LayoutTests

Web Inspector: http/tests/inspector/stacktraces/* are flakey in JSC
https://bugs.webkit.org/show_bug.cgi?id=102380

Reviewed by Yury Semikhatsky.

The inspector stacktrace tests are quite flakey at the moment under JSC.
This patch drops detail out of the test that a) isn't relevent to what's
being tested, and b) varies under JSC for no discernable reason. A side
benifit of this change is that we can drop most platform-specific test
results, as we're now only looking at data that JSC and V8 agree upon.

  • http/tests/inspector/stacktraces/csp-injected-content-warning-contains-stacktrace-expected.txt:
  • http/tests/inspector/stacktraces/csp-inline-warning-contains-stacktrace-expected.txt:
  • http/tests/inspector/stacktraces/csp-setInterval-warning-contains-stacktrace-expected.txt:
  • http/tests/inspector/stacktraces/csp-setTimeout-warning-contains-stacktrace-expected.txt:

Reset tests based on the new level of detail.

  • http/tests/inspector/stacktraces/resources/stacktrace-test.js:

(test.addMessage):
(test):

Limit the detail of the output to the top frame of the stack, and
drop the column number (which was always 0 in JSC).

  • platform/chromium/http/tests/inspector/stacktraces/csp-injected-content-warning-contains-stacktrace-expected.txt: Removed.
  • platform/chromium/http/tests/inspector/stacktraces/csp-setInterval-warning-contains-stacktrace-expected.txt: Removed.
  • platform/chromium/http/tests/inspector/stacktraces/csp-setTimeout-warning-contains-stacktrace-expected.txt: Removed.

Dropping these platform-specific tests, as this patch limits the test
output detail to a subset that V8 and JSC agree upon.

  • platform/chromium/http/tests/inspector/stacktraces/csp-inline-warning-contains-stacktrace-expected.txt:

Can't drop this one, sadly.

12:37 AM Changeset in webkit [135041] by fpizlo@apple.com
  • 13 edits in trunk/Source/JavaScriptCore

Given a PutById or GetById with a proven structure, the DFG should be able to emit a PutByOffset or GetByOffset instead
https://bugs.webkit.org/show_bug.cgi?id=102327

Reviewed by Mark Hahnenberg.

If the profiler tells us that a GetById or PutById may be polymorphic but our
control flow analysis proves that it isn't, we should trust the control flow
analysis over the profiler. This arises in cases where GetById or PutById were
inlined: the inlined function may have been called from other places that led
to polymorphism, but in the current inlined context, there is no polymorphism.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFor):
(JSC):

  • bytecode/GetByIdStatus.h:

(JSC::GetByIdStatus::GetByIdStatus):
(GetByIdStatus):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor):
(JSC):

  • bytecode/PutByIdStatus.h:

(JSC):
(JSC::PutByIdStatus::PutByIdStatus):
(PutByIdStatus):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGAbstractValue.h:

(JSC::DFG::AbstractValue::bestProvenStructure):
(AbstractValue):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):
(ConstantFoldingPhase):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToGetByOffset):
(Node):
(JSC::DFG::Node::convertToPutByOffset):
(JSC::DFG::Node::hasStorageResult):

  • runtime/JSGlobalObject.h:

(JSC::Structure::prototypeChain):
(JSC):
(JSC::Structure::isValid):

  • runtime/Operations.h:

(JSC::isPrototypeChainNormalized):
(JSC):

  • runtime/Structure.h:

(Structure):
(JSC::Structure::transitionDidInvolveSpecificValue):

12:03 AM Changeset in webkit [135040] by Martin Robinson
  • 3 edits in trunk/Source/WebCore

[Soup] CredentialStorage should only be used for HTTP-family requests
https://bugs.webkit.org/show_bug.cgi?id=102582

Reviewed by Gustavo Noronha Silva.

Do not use CredentialStorage when handling non-HTTP family requests. CredentialStorage
only expects to handle requests in the HTTP family.

No new tests. This is covered by existing tests.

  • platform/network/ResourceHandle.h:

(ResourceHandle): Add a shouldUseCredentialStorage helper to ResourceHandle. This
helper returns false when firstRequest() is a non-HTTP family request.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::applyAuthenticationToRequest): Use the new helper.
(WebCore::createSoupRequestAndMessageForHandle): Ditto.
(WebCore::ResourceHandle::start): Ditto.
(WebCore::ResourceHandle::shouldUseCredentialStorage): Ditto.
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Ditto.
(WebCore::ResourceHandle::receivedCredential): Ditto.

Nov 16, 2012:

11:41 PM Changeset in webkit [135039] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

Build fix for !USE(ACCELERATED_COMPOSITING) after r135029.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintOverflowControls):

10:26 PM Changeset in webkit [135038] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Improve the performance of rect transform
https://bugs.webkit.org/show_bug.cgi?id=101828

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-11-16
Reviewed by Simon Fraser.

Mapping a rect and a quad by a transform is a common operation because
we use it to recompute the repaint rect, overflow rect, etc.

The way it was done, is by transforming through mapRect()->mapQuad()->4 times mapPoint().
Each of those functions tests isIdentityOrTranslation() which has to read the whole matrix
and perform many comparison.
Because of that, the simple mapping of a rect was loading and checking the matrix 5 times
too many.

This patch just cut the intermediary calls.

On ARM, putting the operation together also has the advantage of loading the matrix
only once in registers and reusing it for every point.

  • platform/graphics/transforms/TransformationMatrix.cpp:

(WebCore::TransformationMatrix::mapPoint):
(WebCore::TransformationMatrix::mapRect):

  • platform/graphics/transforms/TransformationMatrix.h:

(WebCore):
(WebCore::TransformationMatrix::mapPointImpl): New convenience function to perform the
point project without doing isIdentityOrTranslation().

10:11 PM Changeset in webkit [135037] by Lucas Forschler
  • 2 edits in tags/Safari-537.19.1/Source/WebKit2

Merge fix from <rdar://problem/12723222>.

10:09 PM Changeset in webkit [135036] by Lucas Forschler
  • 4 edits in tags/Safari-537.19.1/Source/WebKit2

Merged r135020.

10:00 PM Changeset in webkit [135035] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebKit2

[EFL][WK2] Remove unnecessary #include statemtns
https://bugs.webkit.org/show_bug.cgi?id=102577

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2012-11-16
Reviewed by Anders Carlsson.

ewk_*_private.h doesn't need to include RefCounted.h after Ewk_Object refactoring.

  • UIProcess/API/efl/ewk_auth_request_private.h:
  • UIProcess/API/efl/ewk_database_manager.cpp:
  • UIProcess/API/efl/ewk_file_chooser_request_private.h:
  • UIProcess/API/efl/ewk_form_submission_request_private.h:
  • UIProcess/API/efl/ewk_navigation_data_private.h:
  • UIProcess/API/efl/ewk_resource_private.h:
  • UIProcess/API/efl/ewk_storage_manager.cpp:
9:16 PM Changeset in webkit [135034] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Avoid calling the virtual isBlockFlow() in RenderBox::computeRectForRepaint()
https://bugs.webkit.org/show_bug.cgi?id=102581

Reviewed by Dan Bernstein.

isBlockFlow() is a virtual function call, and shows up in profiles of
Facebook pages as called from RenderBox::computeRectForRepaint().

It's faster to do the hasColumns() bit-check first. Also replace
a call to layer() with the hasLayer() bit-check.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeRectForRepaint):

8:42 PM Changeset in webkit [135033] by Simon Fraser
  • 4 edits in trunk/LayoutTests

Rebaseline.

  • platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt:
  • platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt:
  • platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt:
8:32 PM Changeset in webkit [135032] by Simon Fraser
  • 6 edits
    2 deletes in trunk/LayoutTests

Rebaseline some editing tests.

  • platform/mac-wk2/editing/selection/caret-ltr-right-expected.txt: Removed.
  • platform/mac-wk2/editing/selection/caret-rtl-right-expected.txt: Removed.
  • platform/mac/TestExpectations:
  • platform/mac/editing/pasteboard/innerText-inline-table-expected.txt:
  • platform/mac/editing/selection/iframe-expected.txt:
  • platform/mac/editing/selection/inline-table-expected.txt:
  • platform/mac/editing/selection/table-caret-3-expected.txt:
8:19 PM Changeset in webkit [135031] by danakj@chromium.org
  • 2 edits in trunk/Source/Platform

[chromium] Add conversion between WebTransformation and gfx::Transform
https://bugs.webkit.org/show_bug.cgi?id=102575

Reviewed by James Robinson.

  • chromium/public/WebTransformationMatrix.h:

(WebTransformationMatrix):
(WebKit::WebTransformationMatrix::WebTransformationMatrix):
(WebKit::WebTransformationMatrix::operator=):
(WebKit::WebTransformationMatrix::operator gfx::Transform):

6:52 PM Changeset in webkit [135030] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebCore

Unreviewed, rolling out r134817.
http://trac.webkit.org/changeset/134817
https://bugs.webkit.org/show_bug.cgi?id=102576

Broke iframes and causing tons of crashes on ClusterFuzz
(Requested by inferno-sec on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-16

  • dom/ContainerNode.cpp:

(WebCore::willRemoveChildren):

  • dom/ContainerNodeAlgorithms.cpp:

(WebCore::ChildFrameDisconnector::collectDescendant):

  • dom/ContainerNodeAlgorithms.h:

(WebCore::ChildFrameDisconnector::ChildFrameDisconnector):
(WebCore::ChildFrameDisconnector::~ChildFrameDisconnector):
(ChildFrameDisconnector):
(WebCore::ChildFrameDisconnector::collectDescendant):
(WebCore::ChildFrameDisconnector::disconnect):

  • dom/Node.cpp:
  • dom/Node.h:

(Node):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):
(NodeRareData):

  • html/HTMLFrameOwnerElement.cpp:

(WebCore::HTMLFrameOwnerElement::setContentFrame):
(WebCore::HTMLFrameOwnerElement::disconnectContentFrame):

6:34 PM CoordinatedGraphicsSystem edited by Helder Correia
(diff)
6:31 PM Changeset in webkit [135029] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Fix overlay scrollbar painting in compositing layers
https://bugs.webkit.org/show_bug.cgi?id=102442

Reviewed by Beth Dakin.

There were two issues with overlay scrollbar painting in
compositing layers.

First, we'd only ever call setContainsDirtyOverlayScrollbars()
on the RenderView's layer, even when encountering an overlay scrollbar
in some descendant compositing layer. This meant that we'd never
run the paintOverlayScrollbars() code for those child compositing
layers, so sometimes scrollbars were missing there.

Even after fixing that, we would fail to render scrollbars that
were not in the composited RenderLayer itself. This happened because
we called into RenderLayer::paintOverlayScrollbars(), which called
paintLayer() with flags that only said to paint the overlay scrollbars
but not any descendants, so this paint path would not walk child
RenderLayers.

Also remove the containsScrollableAreaWithOverlayScrollbars() flag on
ScrollView which is no longer used.

  • platform/ScrollView.cpp:

(WebCore::ScrollView::ScrollView): Remove containsScrollableAreaWithOverlayScrollbars().
(WebCore::ScrollView::paint): Remove setting of m_containsScrollableAreaWithOverlayScrollbars.

  • platform/ScrollView.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintOverflowControls): Call setContainsDirtyOverlayScrollbars()
on the compositing ancestor or the root.
Remove call to setContainsScrollableAreaWithOverlayScrollbars().
(WebCore::RenderLayer::paintOverlayScrollbars): When painting overlay
scrollbars, no need to say we have transparency, and no need to use
temporary clip rects.
(WebCore::RenderLayer::paintLayer): The PaintLayerPaintingOverlayScrollbars
check here was only needed because the compositing entrypoint to painting
overlay scrollbars went via paintLayer(), which isn't normally used as
a composited painting entry point. Now that we no longer call that, we
don't need this special check.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::paintIntoLayer): Jump into overlay scrollbar
painting via paintLayerContents(), not paintOverlayScrollbars(), since
the latter does not traverse sublayers.

6:11 PM Changeset in webkit [135028] by dgrogan@chromium.org
  • 6 edits
    18 deletes in trunk/LayoutTests

IndexedDB: setVersion excision batch 10
https://bugs.webkit.org/show_bug.cgi?id=102565

Reviewed by Tony Chang.

  • storage/indexeddb/mozilla/resources/versionchange.js: Removed. Very similar to a lot of our other tests.
  • storage/indexeddb/resources/set_version_queue.js: Removed. Tests 4 already-open connections calling setVersion, no longer applicable. Though something similar will be set up when we implement 4.1.3#Note2: if two databases with the same name and origin, but with different versions, are being opened at the same time, the one with the highest version will attempt to be opened first.
  • storage/indexeddb/resources/setversion-blocks-open.js: Removed. Tests the same thing as version-change-exclusive, even though version-change-exclusive's description had been inaccurate.
  • storage/indexeddb/resources/setversion-blocks-setversion.js: Removed. Behavior under test is no longer possible. (multiple setVersion calls from same connection.)
  • storage/indexeddb/resources/shared.js:

(indexedDBTest):
Added another optional parameter for version-change-exclusive.

  • storage/indexeddb/resources/three-setversion-calls.js: Removed. Behavior under test is no longer possible. (multiple setVersion calls from same connection.)
  • storage/indexeddb/resources/two-version-changes.js: Removed. Behavior under test is no longer possible. (multiple setVersion calls from same connection.)
  • storage/indexeddb/resources/version-change-abort.js: Straightforward conversion.
  • storage/indexeddb/resources/version-change-exclusive.js: The previous description didn't accurately describe the test.

--Corresponding .html and -expected files also removed.

6:08 PM Changeset in webkit [135027] by jsbell@chromium.org
  • 3 edits
    2 adds in trunk

IndexedDB: Assert hit when getting non-existent object store in version change transaction
https://bugs.webkit.org/show_bug.cgi?id=102547

Reviewed by Tony Chang.

Source/WebCore:

Code did not account for the not-found case in "versionchange" transactions, where all
object stores are implicitly in scope.

Test: storage/indexeddb/object-lookups-in-versionchange.html

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::objectStore):

LayoutTests:

Regression test - make sure that .objectStore() and .index() fail on unknown names
in "versionchange" transactions.

  • storage/indexeddb/object-lookups-in-versionchange-expected.txt: Added.
  • storage/indexeddb/object-lookups-in-versionchange.html: Added.
6:03 PM Changeset in webkit [135026] by timothy_horton@apple.com
  • 9 edits in trunk/Source/WebKit2

Fix the windows build.

Patch by Sam Weinig <weinig@apple.com> on 2012-11-16

  • WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp:

(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
(WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setPrivateBrowsingEnabled):
(WebKit::InjectedBundle::switchNetworkLoaderToNewTestingSession):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::defaultCookieStorage):

  • WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h:

(WebFrameNetworkingContext):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/win/WebPageWin.cpp:

(WebKit::cachedResponseForURL):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess):

  • WebProcess/win/WebProcessWin.cpp:

(WebKit::WebProcess::platformSetCacheModel):
(WebKit::WebProcess::platformClearResourceCaches):
(WebKit::WebProcess::platformInitializeWebProcess):

6:03 PM Changeset in webkit [135025] by Simon Fraser
  • 16 edits in trunk

Eliminate ancestor tree walk computing outlineBoundsForRepaint() when updating layer positions
https://bugs.webkit.org/show_bug.cgi?id=101874

Reviewed by Dave Hyatt.

Source/WebCore:

RenderLayer::updateLayerPositions() and updateLayerPositionsAfterScroll() spend a
lot of time in computeRepaintRects(), which does two ancestor tree walks, once
for clippedOverflowRectForRepaint(), and one for outlineBoundsForRepaint().

Eliminate the ancestor tree walk in outlineBoundsForRepaint() by maintaining
a RenderGeometryMap as we traverse the layer tree, and then using it to map
the outline bounds to the repaint container. Replace the hokey cached offsetFromRoot
now that the RenderGeometryMap can do a better job.

The clipped overflow rect cannot be mapped simply, so cannot yet make use of
the geometry map.

Modify the RenderGeometryMap to support mapping to some repaintContainer ancestor.
Add a RenderObject walk that is necessary to detect flipped writing mode blocks.

Pass the RenderGeometryMap as an optional parameter to outlineBoundsForRepaint.

  • page/FrameView.cpp:

(WebCore::FrameView::layout): Make a RenderGeometryMap and pass it down
to updateLayerPositions(). For partial layouts, we have to push layers
between the root and the enclosing layer of the layout subtree.
The geometry map used for repainting does not use SnapOffsetForTransforms,
so initialize it explicitly with just the UseTransforms flag.
(WebCore::FrameView::repaintFixedElementsAfterScrolling): Make a RenderGeometryMap
to pass along to updateLayerPositionsAfterScroll().

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::outlineBoundsForRepaint): Replace the optional cachedOffsetToRepaintContainer
parameter with an optional RenderGeometryMap, and it use to map the compute rect to
repaintContainer coordinates.

  • rendering/RenderBox.h:
  • rendering/RenderGeometryMap.cpp:

(WebCore::RenderGeometryMap::RenderGeometryMap): This now has to store the mapping
flags to use, so that its behavior can match that of mapLocalToContainer(). The
pertinent flag is the confusingly named SnapOffsetForTransforms.
(WebCore::RenderGeometryMap::absolutePoint): Call the new mapToContainer() with
a null container.
(WebCore::RenderGeometryMap::absoluteRect): Ditto.
(WebCore::RenderGeometryMap::mapToContainer): Map to the supplied container,
asserting that we found it. Add point- and rect-based mapping methods
akin to the old absoluteRect/absolutePoint.
(WebCore::canMapViaLayer): We need to test for isRenderFlowThread() here too.
(WebCore::RenderGeometryMap::pushMappingsToAncestor): When mapping via
layers, ensure that the RenderView is pushed as the first step.

  • rendering/RenderGeometryMap.h:

(RenderGeometryMap):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateLayerPositionsAfterLayout): New wrapper for updateLayerPositions()
that makes the geometry map.
(WebCore::RenderLayer::updateLayerPositionsAfterScroll): New wrapper for updateLayerPositionsAfterScroll
that makes the geometry map.
(WebCore::RenderLayer::updateLayerPositions): Now takes an optional RenderGeometryMap.
Remove the old offsetFromRoot code. Push and pop layers to/from the geometry map. Use
the geometry map to get the offsetFromRoot as needed by overflow controls. Pass
it to computeRepaintRects().
(WebCore::RenderLayer::computeRepaintRects): Pass the geometry map to outlineBoundsForRepaint().
(WebCore::RenderLayer::updateLayerPositionsAfterScroll): Push and pop to/from the
geometry map, and pass it to computeRepaintRects().
(WebCore::RenderLayer::removeOnlyThisLayer): Remove the offsetFromRootBeforeMove
computation; this could use a geometry map in future if it is shown to be a bottleneck.

  • rendering/RenderLayer.h:

(WebCore::RenderLayer::canUseConvertToLayerCoords): It was thought that the isComposited()
was there because the older cached offsetFromRoot logic was sensitive to compositing,
but convertToLayerCoords() is not affected by compositing so this check is not needed,
and actually harmful.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::OverlapMap::OverlapMap): The geometry map
used for overlap testing should not use SnapOffsetForTransforms, so initialize
it explicitly with just the UseTransforms flag.

  • rendering/RenderObject.h:

(WebCore::RenderObject::outlineBoundsForRepaint):

  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::RenderSVGModelObject::outlineBoundsForRepaint):

  • rendering/svg/RenderSVGModelObject.h:

(RenderSVGModelObject):

LayoutTests:

In debug, skip tests that assert because of LayoutUnit truncation.

  • platform/mac/TestExpectations:
6:01 PM Changeset in webkit [135024] by Lucas Forschler
  • 4 edits in tags/Safari-537.19.1/Source

Versioning.

5:58 PM Changeset in webkit [135023] by Lucas Forschler
  • 1 copy in tags/Safari-537.19.1

New Tag.

5:53 PM Changeset in webkit [135022] by alecflett@chromium.org
  • 11 edits
    2 adds in trunk

Add tests for explicit serialization values
https://bugs.webkit.org/show_bug.cgi?id=96818

Reviewed by Adam Barth.

Source/WebCore:

Expose direct access to the serialization/deserialization mechanisms
of SerializedScriptValue to DumpRenderTree.

  • testing/Internals.cpp:

(WebCore::Internals::serializeObject):
(WebCore):
(WebCore::Internals::deserializeBuffer):

  • testing/Internals.h:

(WebCore):

  • testing/Internals.idl:

Source/WebKit2:

Add exports for SerializedScriptValue changes.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:

LayoutTests:

Make sure SerializedScriptValues are backward compatible with future changes.

  • platform/chromium/fast/storage/serialized-script-value.html: Added.
  • platform/chromium/fast/storage/serialized-script-value.txt: Added.
5:34 PM Changeset in webkit [135021] by akling@apple.com
  • 9 edits in trunk/Source/WebCore

Exploit shared attribute data to avoid parsing identical "style" attributes.
<http://webkit.org/b/101163>

Reviewed by Antti Koivisto.

Track the "inline style dirty" state on ElementAttributeData instead of in a Node flag.
This allows us to avoid duplicate work for ElementAttributeData that are shared between multiple elements,
since the state is no longer per-Element.

  • css/StyleResolver.cpp:

(WebCore::isCacheableInMatchedPropertiesCache):

Disable the matched properties cache for styles with non-standard writing-mode.
This is necessary because some CSS properties have different meaning depending on context -
properties handled by CSSProperty::resolveDirectionAwareProperty().

Now that multiple elements may have identical inlineStyle() pointers, this is necessary to
avoid mapping StylePropertySets with direction-aware properties to RenderStyles with differing
writing-modes in the matched properties cache.

  • dom/Node.h:
  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::ElementAttributeData):

  • dom/ElementAttributeData.h:

(WebCore::ElementAttributeData::ElementAttributeData):
(ElementAttributeData):

  • dom/Element.h:

(WebCore::Element::updateInvalidAttributes):

  • dom/Element.cpp:

(WebCore::Element::getAttribute):
(WebCore::Element::removeAttribute):

  • dom/StyledElement.h:

(WebCore::StyledElement::invalidateStyleAttribute):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::updateStyleAttribute):

Move "style attribute dirty" flag to ElementAttributeData.

(WebCore::Element::cloneAttributesFromElement):

Remove ugly optimization to avoid reparsing inline style when cloning elements. This now happens
automagically since cloning nodes just refs the original attribute data.

  • dom/StyledElement.cpp:

(WebCore::StyledElement::updateStyleAttribute):
(WebCore::StyledElement::setInlineStyleFromString):
(WebCore::StyledElement::styleAttributeChanged):
(WebCore::StyledElement::inlineStyleChanged):

Avoid reparsing the inline style if the element's attribute data is immutable and already has
a parsed inlineStyle(). Split the set-inline-style-from-string code out of styleAttributeChanged()
to make the code more understandable.

5:34 PM Changeset in webkit [135020] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

Set task priority of WebKit2 processes to zero on Mac
https://bugs.webkit.org/show_bug.cgi?id=102567

Patch by Kiran Muppala <cmuppala@apple.com> on 2012-11-16
Reviewed by Mark Rowe.

Explicitly set task priority of WebKit2 processes to zero, to
override automatic priority determination by the system.

  • Shared/ChildProcess.cpp:

(WebKit::ChildProcess::ChildProcess): Add call to platformInitialize() and
move MAC specific call to disableProcessSuppression to platformInitialize.
(WebKit::ChildProcess::platformInitialize): Dummy for non MAC platforms.

  • Shared/ChildProcess.h:
  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::platformInitialize): Add call to setpriority().

5:06 PM Changeset in webkit [135019] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Don't update layer positions on scrolling if we're in the middle of layout
https://bugs.webkit.org/show_bug.cgi?id=102556

Reviewed by Dan Bernstein.

RenderLayer::scrollTo() can be called in the middle of layout. When
that happens we should not waste time updating layer positions,
compositing layers, or widget positions, because we'll do those at the
end of layout anyway.

This prevents us from having inconsistent RenderLayer state, which
hinders future optimizations in this area.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollTo):

4:52 PM Changeset in webkit [135018] by dgrogan@chromium.org
  • 10 edits in trunk/LayoutTests

IndexedDB: setVersion excision batch 9
https://bugs.webkit.org/show_bug.cgi?id=102455

Reviewed by Tony Chang.

  • storage/indexeddb/persistence-expected.txt:
  • storage/indexeddb/resources/persistence.js:

(prepareDatabase):
Little awkwardness to get the initial version number to be 0 (actually,
because of a bug it's "") so that first() will trigger a
versionchange.
(first):

  • storage/indexeddb/resources/set_version_blocked.js: Small "blocked" test. It's probably redundant due to our crazier tests, but it is nice to have a succinct test that checks one thing.
  • storage/indexeddb/resources/shared.js:

(unexpectedBlockedCallback):

  • storage/indexeddb/resources/transaction-basics.js: This test is a mess, obviously written near the dawn of IDB when no one knew how to write an effective test for it. In the interests of preventing the diff from exploding I didn't take all the clarification opportunities that were there.
  • storage/indexeddb/resources/transaction-error.js:
  • storage/indexeddb/set_version_blocked-expected.txt:
  • storage/indexeddb/transaction-basics-expected.txt:
  • storage/indexeddb/transaction-error-expected.txt:
4:40 PM Changeset in webkit [135017] by beidson@apple.com
  • 13 edits
    1 copy in trunk/Source/WebKit2

Move resource loader messaging from NetworkConnectionToWebProcess directly to NetworkResourceLoader
https://bugs.webkit.org/show_bug.cgi?id=102570

Reviewed by Alexey Proskuryakov.

This patch adds the ability for WebResourceLoader to message NetworkResourceLoader directly.

This further cements the 1-to-1 relationship between the two classes and makes it easy to add/change
loader related messaging going forward.

Build/infrastructure stuff:

  • Platform/CoreIPC/MessageID.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • DerivedSources.make:

Remove the WillSendRequestHandled message, and forward NetworkResourceLoader messages on to the correct object:

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::didReceiveMessage):

  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:

Hang on to a master map of identifiers to NetworkResourceLoaders:

  • NetworkProcess/NetworkResourceLoadScheduler.cpp:

(WebKit::NetworkResourceLoadScheduler::scheduleResourceLoad):
(WebKit::NetworkResourceLoadScheduler::removeLoadIdentifier):
(WebKit::NetworkResourceLoadScheduler::networkResourceLoaderForIdentifier):

  • NetworkProcess/NetworkResourceLoadScheduler.h:

Change the way "willSendRequestHandled" comes in to be a direct message:

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::willSendRequest):
(WebKit::NetworkResourceLoader::willSendRequestHandled):

  • NetworkProcess/NetworkResourceLoader.h:
  • NetworkProcess/NetworkResourceLoader.messages.in:

Make WebResourceLoader a MessageSender:

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::connection):
(WebKit::WebResourceLoader::destinationID):
(WebKit::WebResourceLoader::willSendRequest): Use MessageSender abilities to message the NetworkResourceLoader.

  • WebProcess/Network/WebResourceLoader.h:
4:31 PM Changeset in webkit [135016] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Add setChecked API in WebInputElement
https://bugs.webkit.org/show_bug.cgi?id=102422

Patch by Raman Kumar <ramankk@chromium.org> on 2012-11-16
Reviewed by Adam Barth.

  • public/WebInputElement.h:

(WebInputElement): Add setChecked(bool, bool) API

  • src/WebInputElement.cpp:

(WebKit::WebInputElement::setChecked): Implement setChecked by calling
underlying HTMLInputElement's setChecked.
(WebKit):

4:25 PM Changeset in webkit [135015] by Dimitri Glazkov
  • 1 edit
    1 delete in trunk/LayoutTests

[Chromium] Removed unnecessary expectation.

  • platform/chromium-win/fast/canvas/canvas-shadow-expected.txt: Removed.
3:59 PM Changeset in webkit [135014] by tony@chromium.org
  • 16 edits in trunk

Remove ENABLE_CSS_HIERARCHIES since it's no longer in use
https://bugs.webkit.org/show_bug.cgi?id=102554

Reviewed by Andreas Kling.

As mentioned in https://bugs.webkit.org/show_bug.cgi?id=79939#c41 ,
we're going to revist this feature once additional vendor support is
achieved.

.:

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

No new tests, just removing an unused define.

  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.features.am:

Source/WebKit/chromium:

  • features.gypi:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
3:52 PM Changeset in webkit [135013] by pilgrim@chromium.org
  • 10 edits
    1 move
    1 add in trunk/Source

[Chromium] Remove cookie-related functions from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=99340

Reviewed by Adam Barth.

Move cookie-related functions out of PlatformSupport and implement
new PlatformCookieJar interface via NetworkContext.

Source/WebCore:

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • loader/CookieJar.cpp:
  • loader/chromium/CookieJarChromium.cpp: Removed.
  • platform/chromium/PlatformSupport.h:

(WebCore):
(PlatformSupport):

  • platform/network/NetworkingContext.h:

(WebKit):
(NetworkingContext):

  • platform/network/chromium/CookieJarChromium.cpp: Copied from Source/WebCore/loader/chromium/CookieJarChromium.cpp.

(WebCore::setCookiesFromDOM):
(WebCore::cookiesForDOM):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
(WebCore::deleteCookie):
(WebCore::getHostnamesWithCookies):
(WebCore::deleteCookiesForHostname):
(WebCore::deleteAllCookies):

Source/WebKit/chromium:

  • WebKit.gyp:
  • src/FrameNetworkingContextImpl.cpp: Added.

(WebKit):
(WebKit::FrameNetworkingContextImpl::cookieJar):

  • src/FrameNetworkingContextImpl.h:

(FrameNetworkingContextImpl):

  • src/PlatformSupport.cpp:
3:47 PM Changeset in webkit [135012] by aestes@apple.com
  • 2 edits in branches/safari-536.28-branch/Source/WebCore

Fix the Mountain Lion build after r135007.

  • bindings/js/JSDesktopNotificationsCustom.cpp:

(WebCore::JSNotificationCenter::requestPermission):

3:39 PM Changeset in webkit [135011] by Lucas Forschler
  • 7 edits in branches/safari-536.28-branch/Source/WebCore

Merged r131779. <rdar://problem/12536363>

3:31 PM Changeset in webkit [135010] by bfulgham@webkit.org
  • 7 edits in trunk/Source

Source/WebKit/win: [WinCairo] Unreviewed build fix after r134960.

Avoid including Mac-specific headers.

  • WebCoreSupport/WebFrameNetworkingContext.cpp: Stub out

CFNetwork-based implementations.

  • WebCoreSupport/WebFrameNetworkingContext.h: Exclude

CFNetwork data types.

  • WebCoreSupport/WebPlatformStrategies.cpp: Stub out

CFNetwork-based implementations.

  • WebCoreSupport/WebPlatformStrategies.h: Exclude

CFNetwork data types.

Source/WebKit2: [WinCairo] Build correction after r134960.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Stub out

calls to CFNetwork-based implementation.

3:30 PM Changeset in webkit [135009] by commit-queue@webkit.org
  • 14 edits
    4 adds in trunk

[JSC] Don't sanitize window.onerror information on crossorigin-enabled scripts
https://bugs.webkit.org/show_bug.cgi?id=70574

Patch by Pablo Flouret <pablof@motorola.com> on 2012-11-16
Reviewed by Geoffrey Garen.

Source/WebCore:

For scripts that use CORS (via the crossorigin attribute in this case),
don't sanitize the information passed to the window's onerror handler (i.e.
message, url, and line number). Useful for scripts hosted on CDNs.

Tests: http/tests/security/script-crossorigin-onerror-information.html

http/tests/security/script-no-crossorigin-onerror-should-be-sanitized.html

  • WebCore.exp.in:
  • WebCore.order:
  • bindings/js/JSDOMBinding.cpp:

(WebCore::reportException):

  • bindings/js/JSDOMBinding.h:

(WebCore):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::evaluateInWorld):

  • bindings/js/ScriptSourceCode.h:

(WebCore::ScriptSourceCode::ScriptSourceCode):
(WebCore::ScriptSourceCode::cachedScript):
(ScriptSourceCode):

  • bindings/js/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::evaluate):

Keep a reference to the cached script in the ScriptSourceCode, so
that it can be passed around and be available when reporting the
exception.

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::sanitizeScriptError):
(WebCore::ScriptExecutionContext::reportException):
(WebCore::ScriptExecutionContext::dispatchErrorEvent):

  • dom/ScriptExecutionContext.h:

(WebCore):
(ScriptExecutionContext):

Check if the script passes the access control checks, and if so,
don't sanitize the error information.

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::PreloadTask::processAttributes):
(WebCore::PreloadTask::preload):
(PreloadTask):
(WebCore::PreloadTask::crossOriginModeAllowsCookies):

When preloading script elements, check for the crossorigin attribute
and adjust the request's allowCookies value accordingly. Otherwise
when the script is loaded from the cache later on, the cross origin mode
(anonymous/use-credentials) will be effectively ignored.

LayoutTests:

  • http/tests/security/resources/cors-script.php:
  • http/tests/security/script-crossorigin-onerror-information-expected.txt: Added.
  • http/tests/security/script-crossorigin-onerror-information.html: Added.
  • http/tests/security/script-no-crossorigin-onerror-should-be-sanitized-expected.txt: Added.
  • http/tests/security/script-no-crossorigin-onerror-should-be-sanitized.html: Added.
  • platform/chromium/TestExpectations:

This patch only deals with JSC right now, skip the new tests.

3:05 PM Changeset in webkit [135008] by jochen@chromium.org
  • 6 edits in trunk/Tools

[chromium] move stubs from DRTTestRunner to TestRunner
https://bugs.webkit.org/show_bug.cgi?id=102489

Reviewed by Adam Barth.

This is part of moving all methods from DRTTestRunner to TestRunner.
Instead of keeping one stub per method, I'm using a shared stub to
clean up the code.

  • DumpRenderTree/chromium/DRTTestRunner.cpp:

(DRTTestRunner::DRTTestRunner):

  • DumpRenderTree/chromium/DRTTestRunner.h:

(DRTTestRunner):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner):
(WebTestRunner::TestRunner::fallbackMethod):
(WebTestRunner::TestRunner::notImplemented):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(WebTestRunner):
(TestRunner):
(WebTestRunner::TestRunner::setDelegate):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::createMainWindow):
(TestShell::~TestShell):

3:02 PM Changeset in webkit [135007] by Lucas Forschler
  • 7 edits in branches/safari-536.28-branch

Merged r131280. <rdar://problem/12516340>

2:51 PM Changeset in webkit [135006] by jochen@chromium.org
  • 5 edits in trunk/Tools

[chromium] fake drag drop operations in the WebTestProxyBase instead of the WebViewHost
https://bugs.webkit.org/show_bug.cgi?id=102495

Reviewed by Adam Barth.

When a drag operation is initiated in a layout test, we need to
simulate a corresponding drop event, otherwise the WebViewImpl will sit
there waiting for it. Instead of having the embedder taking care of
this, move this into the TestRunner library.

  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebKit):
(WebTestProxyBase):
(WebTestRunner::WebTestProxy::startDragging):

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:

(WebTestRunner::WebTestProxyBase::startDragging):
(WebTestRunner):

  • DumpRenderTree/chromium/WebViewHost.cpp:
  • DumpRenderTree/chromium/WebViewHost.h:

(WebViewHost):

2:48 PM Changeset in webkit [135005] by Lucas Forschler
  • 9 edits in branches/safari-536.28-branch/Source

Merged r130565. <rdar://problem/12516362>

2:46 PM Changeset in webkit [135004] by aestes@apple.com
  • 6 edits
    3 adds in branches/safari-536.28-branch

Merge r130102.

2012-10-01 Filip Pizlo <fpizlo@apple.com>

Address a FIXME in JSArray::sort
https://bugs.webkit.org/show_bug.cgi?id=98080
<rdar://problem/12407844>

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Get rid of fast sorting of sparse maps. I don't know that it's broken but I do know that we don't
have coverage for it. Then also address the FIXME in JSArray::sort regarding side-effecting
compare functions.

  • runtime/ArrayPrototype.cpp:

(JSC::arrayProtoFuncSort):

  • runtime/JSArray.cpp:

(JSC::JSArray::sortNumeric):
(JSC::JSArray::sort):
(JSC::JSArray::compactForSorting):

  • runtime/JSArray.h:

(JSArray):

  • runtime/JSObject.h:

(JSC::JSObject::hasSparseMap):
(JSObject):

LayoutTests:

  • fast/js/jsc-test-list:
  • fast/js/script-tests/sort-with-side-effecting-comparisons.js: Added.
  • fast/js/sort-with-side-effecting-comparisons-expected.txt: Added.
  • fast/js/sort-with-side-effecting-comparisons.html: Added.
2:42 PM Changeset in webkit [135003] by jonlee@apple.com
  • 7 edits
    4 adds in trunk/Source/WebCore

Change visual look of placeholder
https://bugs.webkit.org/show_bug.cgi?id=102149
<rdar://problem/12695566>

Reviewed by Darin Adler.

Move the button to the lower-right corner. Move the theming into
RenderSnapshottedPlugin for now. Eventually we will want to migrate to using the
shadow DOM instead, and the metrics of the button are needed for click passthrough.

Maintain variables to track whether the mouse is over the button, and the rect
for the button. If the user clicks in the rect, we render a pressed button.

  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore): Add named constant for bottom and right padding of the button.
(WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn):
(WebCore::RenderSnapshottedPlugIn::paintReplaced):
(WebCore::startButtonImage): Returns button image.
(WebCore::startButtonPressedImage): Returns pressed button image.
(WebCore::RenderSnapshottedPlugIn::paintButton): Draw the button image in the
lower right hand corner, but only if we are active or hovered.
(WebCore::RenderSnapshottedPlugIn::repaintButton): Stubbed to call repaint().
(WebCore::RenderSnapshottedPlugIn::handleEvent): Repaint the button if we are
hovering over the plugin rect. With a mouse down event, calculate whether the
mouse position is within the button rect.
(WebCore::RenderSnapshottedPlugIn::layout): Cache the rect representing the button
contents.

  • rendering/RenderSnapshottedPlugIn.h:

Remove theming function for now.

  • rendering/RenderTheme.h:

(RenderTheme):

  • rendering/RenderThemeMacShared.h:
  • rendering/RenderThemeMacShared.mm:
2:31 PM Changeset in webkit [135002] by commit-queue@webkit.org
  • 7 edits in trunk

Rename applyDefaultDeviceScaleFactorInCompositor to setApplyDeviceScaleFactorInCompositor
https://bugs.webkit.org/show_bug.cgi?id=102462

Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-11-16
Reviewed by James Robinson.

As we no longer have this "default" device scale factor.

Source/WebKit/chromium:

  • public/WebSettings.h:

(WebKit::WebSettings::setApplyDefaultDeviceScaleFactorInCompositor):

  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::WebSettingsImpl):
(WebKit::WebSettingsImpl::setApplyDeviceScaleFactorInCompositor):

  • src/WebSettingsImpl.h:

(WebSettingsImpl):
(WebKit::WebSettingsImpl::applyDeviceScaleFactorInCompositor):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setDeviceScaleFactor):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

Tools:

  • DumpRenderTree/chromium/WebPreferences.cpp:

(WebPreferences::applyTo):

2:02 PM Changeset in webkit [135001] by eric@webkit.org
  • 8 edits in trunk/Source/WebCore

Deploy ScriptWrappable to more always-wrapped objects
https://bugs.webkit.org/show_bug.cgi?id=102539

Reviewed by Adam Barth.

Add the ScriptWrappable baseclass to:
CSSStyleDeclaration (anttik tells me these should only be used from JS, even though some old Editing code used to use them)
ClientRect (element.getBoundingClientRects)
Event (Not all events end up wrapped, but any which live past dispatch do)
NodeList (this covers Static and Dynamic node list types, like document.all)
HTMLCollection (separate from NodeList, for things like table.rows)
Storage (for window.storage, always wrapped)
XMLHttpRequest (always wrapped, created from JS)

This should be a small memory savings as the inline pointer is only 4-8 bytes
instead of the hashmap entry which would be 8-16. This may also show up
on benchmarks which repeatedly access these objects (like window.storage).

These were found by adding a couple lines of logging-code to
WebCore::createWrapper when we were in the main world, but took the
HashMap (instead of inline) storage path. I used sort and uniq -c
to find the most-frequently wrapped objects (while surfing
a few common sites) and came up with this list. There are still a few
more complicated objects (like CSSStyleDeclaration) which may benifit
from inline-wrapper-access and will be covered in a later patch.

  • css/CSSStyleDeclaration.h:
  • dom/ClientRect.h:
  • dom/Event.h:
  • dom/NodeList.h:
  • html/HTMLCollection.h:
  • storage/Storage.h:
  • xml/XMLHttpRequest.h:
1:53 PM Changeset in webkit [135000] by jonlee@apple.com
  • 2 edits in trunk/Source/WebKit/chromium

Fix build error on Chromium due to r134995.

  • src/WebNode.cpp:

(WebKit::WebNode::simulateClick): Pass in NULL pointer instead.

1:53 PM Changeset in webkit [134999] by Lucas Forschler
  • 2 edits in branches/safari-536.28-branch/Source/WebCore

Merged r134903. <rdar://problem/12721103>

1:52 PM Changeset in webkit [134998] by Dimitri Glazkov
  • 3 edits
    2 moves
    2 deletes in trunk/LayoutTests

[Chromium] Remaining bits of Win7 rebaselines.

1:43 PM Changeset in webkit [134997] by Dimitri Glazkov
  • 16 edits
    6 moves
    1 add
    25 deletes in trunk/LayoutTests

[Chromium] Massive rebaseline after Win7 came back up.

1:40 PM Changeset in webkit [134996] by Lucas Forschler
  • 2 edits in tags/Safari-537.19/Source/WebCore

Merged r134903. <rdar://problem/12683850>

1:39 PM Changeset in webkit [134995] by jonlee@apple.com
  • 5 edits in trunk/Source/WebCore

Simulated events instances do not all have the same underlying event
https://bugs.webkit.org/show_bug.cgi?id=102468
<rdar://problem/12716331>

Reviewed by Alexey Proskuryakov.

The PassRefPtr with the underlying event is included as an argument for the mouse
down, up, and click events. But the PassRefPtr loses its underlying pointer after
the first simulated mouse down event because it gets assigned to that event's
private m_underlyingEvent variable. We therefore send NULL to the other events.

The fix is for this and related functions to pass the raw pointer.

A layout test is not possible to put together because the call sites that use simulated
events with an underlying event do not send mouse events, and those that send mouse
events have a NULL underlying event.

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchSimulatedClick): Require passing in the raw pointer.

  • dom/EventDispatcher.h:
  • dom/Node.cpp:

(WebCore::Node::dispatchSimulatedClick): Ditto.

  • dom/Node.h:
1:33 PM Changeset in webkit [134994] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

Build fix for WinCE after r134936.

  • platform/network/win/CookieJarWin.cpp:

(WebCore::cookieRequestHeaderFieldValue):

1:31 PM Changeset in webkit [134993] by Patrick Gansterer
  • 2 edits in trunk/Source/JavaScriptCore

Build fix for WinCE after r133688.

Use numeric_limits<uint32_t>::max() instead of UINT32_MAX.

  • runtime/CodeCache.h:

(JSC::CacheMap::CacheMap):

1:31 PM Changeset in webkit [134992] by Dimitri Glazkov
  • 9 edits
    2 deletes in trunk

Unreviewed, rolling out r134986.
http://trac.webkit.org/changeset/134986
https://bugs.webkit.org/show_bug.cgi?id=102110

Triggered ASSERT in fast/frames/seamless/seamless-inherited-
origin.html.

Source/WebCore:

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::addAuthorRulesAndCollectUserRulesFromSheets):
(WebCore::collectCSSOMWrappers):

  • css/StyleResolver.h:

(StyleResolver):

  • dom/Document.cpp:

(WebCore::Document::setCompatibilityMode):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::~DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::pageGroupUserSheets):
(WebCore):
(WebCore::DocumentStyleSheetCollection::clearPageGroupUserSheets):
(WebCore::DocumentStyleSheetCollection::updatePageGroupUserSheets):
(WebCore::DocumentStyleSheetCollection::addUserSheet):
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
(WebCore::DocumentStyleSheetCollection::reportMemoryUsage):

  • dom/DocumentStyleSheetCollection.h:

(DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::documentUserSheets):

  • page/PageGroup.cpp:

(WebCore::PageGroup::addUserStyleSheetToWorld):
(WebCore::PageGroup::removeUserStyleSheetFromWorld):
(WebCore::PageGroup::removeUserStyleSheetsFromWorld):
(WebCore::PageGroup::removeAllUserContent):
(WebCore::PageGroup::resetUserStyleCacheInAllFrames):

  • page/PageGroup.h:

(PageGroup):

LayoutTests:

  • userscripts/user-stylesheet-invalidate-expected.txt: Removed.
  • userscripts/user-stylesheet-invalidate.html: Removed.
1:29 PM Changeset in webkit [134991] by Lucas Forschler
  • 10 edits
    2 copies in branches/safari-536.28-branch

Merged r128088. <rdar://problem/12516313>

1:01 PM Changeset in webkit [134990] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

https://bugs.webkit.org/show_bug.cgi?id=102540
[BlackBerry] Checkerboard flicker when pinch zooming out on google.com/nwshp

Patch by Adam Treat <atreat@rim.com> on 2012-11-16
Reviewed by George Staikos.
PR 245827

Disable updates to the backingstore tile matrix when backingstore updates
are disabled. This prevents changes to the tile matrix when we are in the
middle of a pinch zoom which can cause checkebroard flickering.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::BackingStorePrivate):
(BlackBerry::WebKit::BackingStorePrivate::resumeBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::setBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::renderVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::renderBackingStore):
(BlackBerry::WebKit::BackingStorePrivate::updateTileMatrixIfNeeded):
(BlackBerry::WebKit::BackingStorePrivate::contentsSizeChanged):
(BlackBerry::WebKit::BackingStorePrivate::orientationChanged):

  • Api/BackingStore_p.h:

(BlackBerry::WebKit::BackingStorePrivate::setTileMatrixNeedsUpdate):
(BackingStorePrivate):

12:56 PM Changeset in webkit [134989] by commit-queue@webkit.org
  • 9 edits in trunk/Source

IndexedDB: Propagate DOMRequestState to IndexedDB binding utility functions
https://bugs.webkit.org/show_bug.cgi?id=102430

Patch by Michael Pruett <michael@68k.org> on 2012-11-16
Reviewed by Adam Barth.

DOMRequestState is currently propagated to some but not all of
the IndexedDB binding utility functions. In order to implement
these functions for JSC, this state must be propagated to all
of the utility functions.

Source/WebCore:

Tests: storage/indexeddb/*

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::update):
(WebCore::IDBCursor::setValueReady):

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::generateIndexKeysForValue):
(WebCore::IDBObjectStore::put):
(WebCore):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess):
(WebCore::IDBRequest::dispatchEvent):

  • Modules/indexeddb/IDBRequest.h:

(WebCore::IDBRequest::requestState):
(IDBRequest):

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::createIDBKeyFromScriptValueAndKeyPath):
(WebCore::serializeIDBValue):
(WebCore::injectIDBKeyIntoScriptValue):

  • bindings/v8/IDBBindingUtilities.h:

(WebCore):

Source/WebKit/chromium:

  • tests/IDBBindingUtilitiesTest.cpp:

(WebKit::checkKeyFromValueAndKeyPathInternal):
(WebKit::injectKey):

12:49 PM Changeset in webkit [134988] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Rebaselined run-bindings-tests.
https://bugs.webkit.org/show_bug.cgi?id=102523

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-11-16
Reviewed by Dimitri Glazkov.

Expected results need to be updated after r134931

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::jsTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::setJSTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackCallback):

12:46 PM Changeset in webkit [134987] by psolanki@apple.com
  • 7 edits in trunk/Source/WebCore

For single element arrays use the pointer into the CFDataRef instead of copying data
https://bugs.webkit.org/show_bug.cgi?id=102306
<rdar://problem/12267471>

Reviewed by Alexey Proskuryakov.

We generally copy the data received from CFNetwork into our own buffers. But if the
CFArrayRef has exactly one CFDataRef inside it, then we can just hold on to the CFDataRef
and access its memory directly and avoid making a copy.

This also moves the creation of PurgeableBuffer from CachedResource to SharedBuffer.
SharedBuffer::createPurgeableBuffer() will avoid creating PurgeableBuffer when the
SharedBuffer is backed by a NSData/CFDataRef and when we want to optimize and directly use
the memory in the data array.

No new tests because no change in functionality.

  • loader/ResourceBuffer.cpp:

(WebCore::ResourceBuffer::createPurgeableBuffer): Added.

  • loader/ResourceBuffer.h:
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::makePurgeable):

  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::createPurgeableBuffer): Added.
(WebCore::SharedBuffer::data):

  • platform/SharedBuffer.h:
  • platform/cf/SharedBufferCF.cpp:

(WebCore::SharedBuffer::platformData): Use reinterpret_cast instead of C-style cast.
(WebCore::SharedBuffer::maybeTransferPlatformData): Use reinterpret_cast instead of C-style cast.
(WebCore::SharedBuffer::singleDataArrayBuffer): Added.

12:36 PM Changeset in webkit [134986] by Antti Koivisto
  • 9 edits
    2 adds in trunk

REGRESSION(r129644): User StyleSheet not applying
https://bugs.webkit.org/show_bug.cgi?id=102110

Reviewed by Andreas Kling.

Source/WebCore:

Injected stylesheets added as UserStyleAuthorLevel fail to apply. r129644 implicitly assumed that
such things don't exists but on Chromium addUserStyleSheet() confusingly uses them.

The patch adds injected author stylesheets to DocumentStyleSheetCollection::activeStyleSheets().
It also generally cleans up the code around injected and user stylesheets.

Tests: userscripts/user-script-and-stylesheet.html

userscripts/user-stylesheet-invalidate.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::collectRulesFromUserStyleSheets):
(WebCore::collectCSSOMWrappers):

  • css/StyleResolver.h:

(StyleResolver):

  • dom/Document.cpp:

(WebCore::Document::setCompatibilityMode):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::~DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::injectedUserStyleSheets):
(WebCore):
(WebCore::DocumentStyleSheetCollection::injectedAuthorStyleSheets):
(WebCore::DocumentStyleSheetCollection::updateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::addUserSheet):
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
(WebCore::DocumentStyleSheetCollection::reportMemoryUsage):

  • dom/DocumentStyleSheetCollection.h:

(WebCore::DocumentStyleSheetCollection::documentUserStyleSheets):
(DocumentStyleSheetCollection):

  • page/PageGroup.cpp:

(WebCore::PageGroup::addUserStyleSheetToWorld):
(WebCore::PageGroup::removeUserStyleSheetFromWorld):
(WebCore::PageGroup::removeUserStyleSheetsFromWorld):
(WebCore::PageGroup::removeAllUserContent):
(WebCore::PageGroup::invalidatedInjectedStyleSheetCacheInAllFrames):

  • page/PageGroup.h:

(PageGroup):

LayoutTests:

  • userscripts/user-stylesheet-invalidate-expected.txt: Added.
  • userscripts/user-stylesheet-invalidate.html: Added.
12:26 PM Changeset in webkit [134985] by thakis@chromium.org
  • 3 edits
    2 copies in branches/chromium/1312

Merge 134698 - [chromium/mac] Fix drawing of buttons, checkboxes, radio boxes, and steppers when the page is scaled
https://bugs.webkit.org/show_bug.cgi?id=102282

Reviewed by James Robinson.

Chromium uses skia, and skia state is synced with CG context state at
LocalCurrentGraphicsContext construction time. So delay that
construction after context transforms have happened.
(This regressed in http://trac.webkit.org/changeset/125830)

Covered by the new pixel test fast/forms/zoomed-controls.html. I
couldn't find an existing test for this.

  • platform/mac/ThemeMac.mm:

(WebCore::paintCheckbox):
(WebCore::paintRadio):
(WebCore::paintButton):

TBR=thakis@chromium.org
Review URL: https://codereview.chromium.org/11418042

12:23 PM Changeset in webkit [134984] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

StyleResolver: Only input elements need equal "readonly" attribute for style sharing.
<http://webkit.org/b/102536>

Reviewed by Antti Koivisto.

Move the comparison of the "readonly" attribute into canShareStyleWithControl() since it's only
relevant for sharing style between <input> elements.

Also skip attribute comparisons for form control elements that share the same ElementAttributeData.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::canShareStyleWithControl):
(WebCore::haveIdenticalStyleAffectingAttributes):

12:21 PM Changeset in webkit [134983] by bfulgham@webkit.org
  • 2 edits in trunk/LayoutTests

[WinCairo] Sync with Windows test expectations.

  • platform/wincairo/TestExpectations: Update to match Windows.
12:19 PM Changeset in webkit [134982] by bfulgham@webkit.org
  • 2 edits in trunk/Tools

[Win] key event's location does not work on Windows platform.
https://bugs.webkit.org/show_bug.cgi?id=89742

Patch by Takashi Sakamoto <tasak@google.com> on 2012-11-15
Reviewed by Brent Fulgham.

Modified keyDownCallback to use lparam to specify left-hand keys or
right-hand keys.

  • DumpRenderTree/win/EventSender.cpp:

(makeKeyDataForScanCode):
Given a virtual keycode, generate scancode and extended key bit of
lparam.
(keyDownCallback):
Use lparam for left-hand and right-hand keys, because Windows doesn't
directly provide a virtual keycode which distinguishes between
left-hand and right-hand. For example, when control key is pressed,
wparam has VK_CONTROL, neither VK_RCONTROL nor VK_LCONTROL.

12:18 PM Changeset in webkit [134981] by msaboff@apple.com
  • 2 edits in trunk/Source/WTF

String::fromUTF8() should take advantage of the ASCII check in convertUTF8ToUTF16()
https://bugs.webkit.org/show_bug.cgi?id=100577

Reviewed by Oliver Hunt.

Passed in ASCII flag to convertUTF8ToUTF16() and if try, create an 8 bit string from the original arguments.
Relanding after fix to https://bugs.webkit.org/show_bug.cgi?id=102482.

  • wtf/text/WTFString.cpp:

(WTF::String::fromUTF8):

12:05 PM Changeset in webkit [134980] by rwlbuis@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] FCC doesn't work in textarea
https://bugs.webkit.org/show_bug.cgi?id=102088

Reviewed by Antonio Gomes.

Remove the cancel button specializations, it was needed at some point but hitting it
works just as well without it. This unbreaks FCC in textarea's.

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::isElementClickable):

11:51 AM Changeset in webkit [134979] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r134867.
http://trac.webkit.org/changeset/134867
https://bugs.webkit.org/show_bug.cgi?id=102544

Broke security fuzzier test (heap-buffer-overflow) (Requested
by bfulgham on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-16

  • platform/audio/Biquad.cpp:

(WebCore::Biquad::process):

11:48 AM Changeset in webkit [134978] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix regression causing checkerboard flicker after app wake-up
https://bugs.webkit.org/show_bug.cgi?id=102526

Patch by Adam Treat <atreat@rim.com> on 2012-11-16
Reviewed by George Staikos.
PR 245027

The webkit patch for 219976 introduced an undesirable behavior change
resulting in a regression where there was checkerboard flickering on
resuming from an inactive application state. This patch restores the
previous behavior and fixes the regression.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStore::createBackingStoreMemory):
(BlackBerry::WebKit::BackingStore::releaseBackingStoreMemory):

11:37 AM Changeset in webkit [134977] by Dimitri Glazkov
  • 2 edits in trunk/LayoutTests

[Chromium] adjusting expectations for checkerboard.html

11:36 AM Changeset in webkit [134976] by tommyw@google.com
  • 12 edits in trunk/Source

MediaStream API: Update RTCPeerConnection states to match the latest editors draft
https://bugs.webkit.org/show_bug.cgi?id=102382

Reviewed by Adam Barth.

Source/Platform:

Adding a callback for the new RTCPeerConnection::iceGatheringState.

  • chromium/public/WebRTCPeerConnectionHandlerClient.h:

(WebKit::WebRTCPeerConnectionHandlerClient::didChangeICEGatheringState):

Source/WebCore:

Updating readyState & iceState, and adding iceGatheringState.
Also safeguarding the event timer callback.

Patch covered by existing tests.

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::RTCPeerConnection):
(WebCore::RTCPeerConnection::createOffer):
(WebCore::RTCPeerConnection::createAnswer):
(WebCore::RTCPeerConnection::setLocalDescription):
(WebCore::RTCPeerConnection::localDescription):
(WebCore::RTCPeerConnection::setRemoteDescription):
(WebCore::RTCPeerConnection::remoteDescription):
(WebCore::RTCPeerConnection::updateIce):
(WebCore::RTCPeerConnection::addIceCandidate):
(WebCore::RTCPeerConnection::readyState):
(WebCore::RTCPeerConnection::iceGatheringState):
(WebCore):
(WebCore::RTCPeerConnection::iceState):
(WebCore::RTCPeerConnection::addStream):
(WebCore::RTCPeerConnection::close):
(WebCore::RTCPeerConnection::didChangeIceGatheringState):
(WebCore::RTCPeerConnection::stop):
(WebCore::RTCPeerConnection::changeReadyState):
(WebCore::RTCPeerConnection::scheduledEventTimerFired):

  • Modules/mediastream/RTCPeerConnection.h:

(RTCPeerConnection):

  • Modules/mediastream/RTCPeerConnection.idl:
  • dom/EventNames.h:

(WebCore):

  • platform/mediastream/RTCPeerConnectionHandlerClient.h:

(RTCPeerConnectionHandlerClient):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:

(WebCore::RTCPeerConnectionHandlerChromium::didChangeICEGatheringState):
(WebCore):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:

(RTCPeerConnectionHandlerChromium):

Source/WebKit/chromium:

Updating readyState & iceState, and adding iceGatheringState.

  • src/AssertMatchingEnums.cpp:
11:27 AM Changeset in webkit [134975] by Dimitri Glazkov
  • 10 edits
    1 move
    1 delete in trunk/Source

Unreviewed, rolling out r134973.
http://trac.webkit.org/changeset/134973
https://bugs.webkit.org/show_bug.cgi?id=99340

Broke compile on at least Mac and Linux.

Source/WebCore:

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • loader/CookieJar.cpp:
  • loader/chromium/CookieJarChromium.cpp: Renamed from Source/WebKit/chromium/src/FrameNetworkingContextImpl.cpp.

(WebCore):
(WebCore::setCookies):
(WebCore::cookies):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
(WebCore::deleteCookie):
(WebCore::getHostnamesWithCookies):
(WebCore::deleteCookiesForHostname):
(WebCore::deleteAllCookies):

  • platform/chromium/PlatformSupport.h:

(WebCore):
(PlatformSupport):

  • platform/network/NetworkingContext.h:
  • platform/network/chromium/CookieJarChromium.cpp: Removed.

Source/WebKit/chromium:

  • WebKit.gyp:
  • src/FrameNetworkingContextImpl.h:
  • src/PlatformSupport.cpp:

(WebCore::getCookieJar):
(WebCore):
(WebCore::PlatformSupport::setCookies):
(WebCore::PlatformSupport::cookies):
(WebCore::PlatformSupport::cookieRequestHeaderFieldValue):
(WebCore::PlatformSupport::rawCookies):
(WebCore::PlatformSupport::deleteCookie):
(WebCore::PlatformSupport::cookiesEnabled):

11:06 AM Changeset in webkit [134974] by Martin Robinson
  • 8 edits
    2 adds
    1 delete in trunk/Source

Source/WebCore: [GTK] [WebKit2] Move GtkAuthenticationDialog to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=101843

Reviewed by Gustavo Noronha Silva.

Make GtkAuthenticationDialog more general, so that it can be subclassed in
WebKit2. We cannot use the WebCore authentication-related classes directly there.

No new tests. This patch does not change behavior.

  • platform/gtk/GtkAuthenticationDialog.cpp:

(WebCore::GtkAuthenticationDialog::GtkAuthenticationDialog): Remove an unused include and reorder
some field initializers.
(WebCore::GtkAuthenticationDialog::authenticate): Now handle both the okay and cancel case here. This
makes it simpler to subclass.
(WebCore::GtkAuthenticationDialog::authenticationDialogResponseCallback): Handle fetching the username
and password here, so that it can be shared with subclasses.

  • platform/gtk/GtkAuthenticationDialog.h: Make some methods virtual and protected so they can be

subclasses.

Source/WebKit2: Move authentication dialog to the UIProcess

[GTK] [WebKit2] Move GtkAuthenticationDialog to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=101843

Reviewed by Gustavo Noronha Silva.

Move the use of GtkAuthenticationDialog to the UIProcess along with the rest of
the GTK+ widgets. This will allow us to to embed the dialog into the WebView
in the future and to test authentication with the WebKit2 C API.

  • GNUmakefile.list.am: Add the new class to the source list and remove the

GTK+-only WebFrameLoader implementation file.

  • UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp: Added. A subclass of GtkAuthenticationDialog

which uses the WebKit2 classes to do the UIProcess-side authentication.

  • UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h: Added.
  • UIProcess/API/gtk/WebKitLoaderClient.cpp: Add a callback for didReceiveAuthenticationChallengeInFrame.

(didReceiveAuthenticationChallengeInFrame): Added.
(attachLoaderClientToView): Use the new callback.

  • UIProcess/Authentication/AuthenticationChallengeProxy.h:

(WebKit::AuthenticationChallengeProxy::core): Add this getter for the WebCore class.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): Share the implementation
again.

  • WebProcess/WebCoreSupport/gtk/WebFrameLoaderClientGtk.cpp: Removed.
11:02 AM Changeset in webkit [134973] by pilgrim@chromium.org
  • 10 edits
    1 move
    1 add in trunk/Source

[Chromium] Remove cookie-related functions from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=99340

Reviewed by Adam Barth.

Move cookie-related functions out of PlatformSupport and implement
new PlatformCookieJar interface via NetworkContext.

Source/WebCore:

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • loader/CookieJar.cpp:
  • loader/chromium/CookieJarChromium.cpp: Removed.
  • platform/chromium/PlatformSupport.h:

(WebCore):
(PlatformSupport):

  • platform/network/NetworkingContext.h:

(WebKit):
(NetworkingContext):

  • platform/network/chromium/CookieJarChromium.cpp: Copied from Source/WebCore/loader/chromium/CookieJarChromium.cpp.

(WebCore::setCookiesFromDOM):
(WebCore::cookiesForDOM):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
(WebCore::deleteCookie):
(WebCore::getHostnamesWithCookies):
(WebCore::deleteCookiesForHostname):
(WebCore::deleteAllCookies):

Source/WebKit/chromium:

  • WebKit.gyp:
  • src/FrameNetworkingContextImpl.cpp: Added.

(WebKit):
(WebKit::FrameNetworkingContextImpl::cookieJar):

  • src/FrameNetworkingContextImpl.h:

(FrameNetworkingContextImpl):

  • src/PlatformSupport.cpp:
10:57 AM Changeset in webkit [134972] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

audiopannernode-basic.html should cover default value of attribute.
https://bugs.webkit.org/show_bug.cgi?id=102332

Patch by Li Yin <li.yin@intel.com> on 2012-11-16
Reviewed by Chris Rogers.

Spec: https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#PannerNode
Currently almost all attributes of PannerNode are specified default value clearly,
the test should cover them.

  • webaudio/audiopannernode-basic-expected.txt:
  • webaudio/audiopannernode-basic.html:
10:55 AM Changeset in webkit [134971] by rakuco@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix assertion bug of build fix r134961
https://bugs.webkit.org/show_bug.cgi?id=102533

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-11-16
Reviewed by Martin Robinson.

Assertion condition should be '!d->m_currentWebChallenge.isNull()'

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::ResourceHandle::continueDidReceiveAuthenticationChallenge):

10:39 AM Changeset in webkit [134970] by tommyw@google.com
  • 11 edits in trunk

[chromium] MediaStream API: Add missing WebRTCPeerConnectionHandlerClient::didAddRemoteDataChannel
https://bugs.webkit.org/show_bug.cgi?id=102386

Reviewed by Adam Barth.

Source/Platform:

  • chromium/public/WebRTCPeerConnectionHandlerClient.h:

(WebRTCPeerConnectionHandlerClient):

Source/WebCore:

Existing tests expanded to cover patch.

  • platform/mediastream/RTCDataChannelDescriptor.cpp:

(WebCore::RTCDataChannelDescriptor::RTCDataChannelDescriptor):
(WebCore::RTCDataChannelDescriptor::readyStateChanged):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:

(WebCore::RTCPeerConnectionHandlerChromium::didAddRemoteDataChannel):
(WebCore):

  • platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:

(WebKit):
(RTCPeerConnectionHandlerChromium):

Tools:

Adding mock data channel functionality.

  • DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:

(MockWebRTCPeerConnectionHandler::openDataChannel):

LayoutTests:

  • fast/mediastream/RTCPeerConnection-datachannel.html:
  • fast/mediastream/RTCPeerConnection-datachannel-expected.txt:
10:37 AM Changeset in webkit [134969] by commit-queue@webkit.org
  • 10 edits
    10 adds in trunk/Source

[chromium] Copy linux theme related files to default
https://bugs.webkit.org/show_bug.cgi?id=102403

Patch by Scott Violet <sky@chromium.org> on 2012-11-16
Reviewed by Tony Chang

Transitional patch that copies linux WebThemeEngine to default directory.

No new tests, refactoring only.

Source/Platform:

  • Platform.gypi:
  • chromium/public/default: Added.
  • chromium/public/default/WebThemeEngine.h: Copied from Source/Platform/chromium/public/linux/WebThemeEngine.h.

Source/WebCore:

  • WebCore.gyp/WebCore.gyp: Update compile rules when use_default_render_theme is set.
  • WebCore.gypi: Adds new files.
  • platform/chromium/PlatformSupport.h:
  • platform/chromium/PlatformThemeChromiumDefault.cpp: Copied from Source/WebCore/platform/chromium/PlatformThemeChromiumLinux.cpp.
  • platform/chromium/PlatformThemeChromiumDefault.h: Copied from Source/WebCore/platform/chromium/PlatformThemeChromiumLinux.h.
  • platform/chromium/ScrollbarThemeChromiumDefault.cpp: Copied from Source/WebCore/platform/chromium/ScrollbarThemeChromiumLinux.cpp.
  • platform/chromium/ScrollbarThemeChromiumDefault.h: Copied from Source/WebCore/platform/chromium/ScrollbarThemeChromiumLinux.h.
  • rendering/RenderThemeChromiumDefault.cpp: Copied from Source/WebCore/rendering/RenderThemeChromiumLinux.cpp.
  • rendering/RenderThemeChromiumDefault.h: Copied from Source/WebCore/rendering/RenderThemeChromiumLinux.h.

Source/WebKit/chromium:

  • features.gypi:
  • public/platform/default: Added.
  • public/platform/default/WebThemeEngine.h: Copied from Source/WebKit/chromium/public/platform/linux/WebThemeEngine.h.
  • src/PlatformSupport.cpp: Includes correct theme files when DEFAULT_RENDER_THEME is set.

(WebCore):

  • src/WebViewImpl.cpp: Includes correct theme files when DEFAULT_RENDER_THEME is set.

(WebKit::WebViewImpl::setScrollbarColors): Calls to default theme as necessary.
(WebKit::WebViewImpl::setSelectionColors): Calls to default theme as necessary.

10:33 AM Changeset in webkit [134968] by alecflett@chromium.org
  • 3 edits in trunk/Source/WebCore

IndexedDB: add missing 'explicit' and fix backing store release
https://bugs.webkit.org/show_bug.cgi?id=102450

Reviewed by Tony Chang.

A inconsequential regression was introduced in http://trac.webkit.org/changeset/134129
which resulted in objects sticking around a bit longer than
expected. This makes sure the LevelDBTransaction is released
at the moment of commit/rollback rather than when IDBTransactionBackendImpl
is destroyed.

No new tests, this is just internal state that will affect
some future refactoring.

  • Modules/indexeddb/IDBBackingStore.h:

(Cursor):
(Transaction):
(WebCore::IDBBackingStore::Transaction::reset):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::commit):

10:30 AM Changeset in webkit [134967] by jochen@chromium.org
  • 4 edits in trunk/Tools

[chromium] delete unused testRunner methods
https://bugs.webkit.org/show_bug.cgi?id=102479

Reviewed by Adam Barth.

These methods aren't used by any layout test. Remove them to avoid bit rot

  • DumpRenderTree/chromium/DRTTestRunner.cpp:

(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::reset):

  • DumpRenderTree/chromium/DRTTestRunner.h:

(DRTTestRunner):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::shouldBeginEditing):
(WebViewHost::shouldEndEditing):
(WebViewHost::shouldInsertNode):
(WebViewHost::shouldInsertText):
(WebViewHost::shouldChangeSelectedRange):
(WebViewHost::shouldDeleteRange):
(WebViewHost::shouldApplyStyle):
(WebViewHost::startDragging):
(WebViewHost::enterFullScreenNow):
(WebViewHost::exitFullScreenNow):

10:19 AM Changeset in webkit [134966] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

[Chromium] One last tweak to WebCore.gypi to make Win build not sad.

  • WebCore.gypi: Removed one last mention of accessibility/gtk file.
10:17 AM Changeset in webkit [134965] by commit-queue@webkit.org
  • 13 edits
    2 adds in trunk

Handle gesture events on scrollbars.
https://bugs.webkit.org/show_bug.cgi?id=101516

Patch by Robert Flack <flackr@chromium.org> on 2012-11-16
Reviewed by Antonio Gomes.

Adds a gesture event handler to scrollbars and sends gestures beginning
over a scrollbar to this handler to allow touch scrolling scrollbars.

Source/WebCore:

Test: fast/events/touch/gesture/gesture-scrollbar.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::isScrollbarHandlingGestures):
(WebCore):

  • page/EventHandler.h:

(EventHandler):

  • platform/Scrollbar.cpp:

(WebCore::Scrollbar::Scrollbar):
(WebCore):
(WebCore::Scrollbar::gestureEvent):
(WebCore::Scrollbar::mouseMoved):
(WebCore::Scrollbar::mouseUp):
(WebCore::Scrollbar::mouseDown):

  • platform/Scrollbar.h:

(WebCore):
(Scrollbar):

  • platform/ScrollbarTheme.h:

(WebCore::ScrollbarTheme::hitTest):

  • platform/ScrollbarThemeComposite.cpp:

(WebCore::ScrollbarThemeComposite::hitTest):

  • platform/ScrollbarThemeComposite.h:

(ScrollbarThemeComposite):

  • platform/qt/ScrollbarThemeQStyle.cpp:

(WebCore::ScrollbarThemeQStyle::hitTest):

  • platform/qt/ScrollbarThemeQStyle.h:

(ScrollbarThemeQStyle):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::handleGestureEvent):

LayoutTests:

  • fast/events/touch/gesture/gesture-scrollbar-expected.txt: Added.
  • fast/events/touch/gesture/gesture-scrollbar.html: Added.
10:15 AM Changeset in webkit [134964] by Dimitri Glazkov
  • 1 edit
    1 delete in trunk/LayoutTests

[Chromium] Removed incorrect baseline.

  • platform/chromium-mac/canvas/philip/tests/2d.shadow.enable.blur-expected.txt: Removed.
10:12 AM Changeset in webkit [134963] by wangxianzhu@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium-Android] Stack overflow in MediaControlsChromiumAndroid.cpp
https://bugs.webkit.org/show_bug.cgi?id=102444

Reviewed by Adam Barth.

No new tests. Have been covered by many existing layout tests.

  • html/shadow/MediaControlsChromiumAndroid.cpp:

(WebCore::MediaControls::create): Calls createControls instead of itself.

9:54 AM Changeset in webkit [134962] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

StyleResolver: Optimize sharing candidate evaluation for elements with shared attribute data.
<http://webkit.org/b/102507>

Reviewed by Antti Koivisto.

When evaluating two elements as potential style sharing candidate, we have a whole bunch of code
comparing the various attributes that would prevent sharing.

If the two elements both share the same ElementAttributeData, we can skip all those checks
since they are guaranteed to have equal attributes.

Cuts the time spent in canShareStyleWithElement() by 25% on the HTML5 spec at <http://whatwg.org/c>.

  • css/StyleResolver.cpp:

(WebCore::haveIdenticalStyleAffectingAttributes):
(WebCore::StyleResolver::canShareStyleWithElement):

9:51 AM Changeset in webkit [134961] by Martin Robinson
  • 2 edits in trunk/Source/WebCore

[EFL][GTK] Build fix after r134955
https://bugs.webkit.org/show_bug.cgi?id=102527

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-11-16
Reviewed by Martin Robinson.

Fix the EFL,GTK debug bulid fails after r134955.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::ResourceHandle::continueDidReceiveAuthenticationChallenge):

9:46 AM Changeset in webkit [134960] by ap@apple.com
  • 46 edits
    1 add in trunk

Private Browsing is a per-page setting that sets a global value
https://bugs.webkit.org/show_bug.cgi?id=67870

Reviewed by Sam Weinig.

Make ResourceHandle{Mac,CFNet} use context to access storage session.

  • WebCore.exp.in: We track less session state in WebCore now, so we need fewer exports.
  • loader/FrameNetworkingContext.h: Added an OVERRIDE.
  • page/Settings.cpp: (WebCore::Settings::setPrivateBrowsingEnabled): WebCore no longer keeps track of a globally enabled private CFNetwork storage session.
  • platform/CookiesStrategy.h: Added defaultCookieStorage(). Some cookie jar methods don't have a NetworkingContext pointer, and have to use whatever a client expects them to do. Perhaps we should move those methods away from WebCore eventually.
  • platform/network/NetworkingContext.h: Added storageSession().
  • platform/network/ResourceHandle.h: Removed sttaic methods for dealing with global sessions.
  • platform/network/ResourceHandleInternal.h: Added m_storageSession. We need to remember it post-creation to do things in willSendRequest. Alternatively, we could keep a reference to NetworkingContext itself.
  • platform/network/cf/CookieJarCFNet.cpp: (WebCore::setCookiesFromDOM): currentCFHTTPCookieStorage now needs a context, there is no globally current one any more. Also, we don't really expect cookie stirage to be 0 when not using NSURLConnection. (WebCore::cookiesForDOM): Ditto. (WebCore::cookieRequestHeaderFieldValue): Ditto. (WebCore::cookiesEnabled): Ditto. (WebCore::getRawCookies): Ditto. (WebCore::deleteCookie): Ditto. (WebCore::getHostnamesWithCookies): Ditto. (WebCore::deleteCookiesForHostname): Ditto. (WebCore::deleteAllCookies): Ditto.
  • platform/network/cf/CookieStorageCFNet.cpp: (WebCore::currentCFHTTPCookieStorage): Use a context. (WebCore::defaultCFHTTPCookieStorage): Except for Windows-only override session, this is implemented in a strategy. (WebCore::overridenCookieStorage): Exposed the override for WebKit use on Windows.
  • platform/network/cf/CookieStorageCFNet.h: Ditto.
  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::willSendRequest): Use storage session from the context, not global one. (WebCore::makeFinalRequest): Merged this into the only remaining caller. This function didn't really make any sense on its own. (WebCore::shouldRelaxThirdPartyCookiePolicy): Factored out of createCFURLConnection to match Mac. (WebCore::ResourceHandle::createCFURLConnection): While merging makeFinalRequest() in, removed some seemingly nonsensical code that was getting and immediately re-applying cookie storage accept policy. (WebCore::ResourceHandle::start): Store context->storageSession() for use in willSendRequest. (WebCore::ResourceHandle::willSendRequest): Apply the stored session, not global one. (WebCore::ResourceHandle::storageSession): An accessor for static methods that cannot access "d". (WebCore::ResourceHandle::loadResourceSynchronously): Store context->storageSession() for use in willSendRequest. (WebCore::ResourceHandle::willLoadFromCache): Don't call makeFinalRequest here. It didn't match Mac, and nothing in makeFinalRequest should have affected the result.
  • platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdatePlatformRequest): This function used to apply current storage session to every request for no apparent reason.
  • platform/network/mac/CookieJarMac.mm: (WebCore::cookiesForDOM): Changed to pass context to currentCFHTTPCookieStorage. (WebCore::cookieRequestHeaderFieldValue): Ditto. (WebCore::setCookiesFromDOM): Ditto. (WebCore::cookiesEnabled): Ditto. (WebCore::getRawCookies): Ditto. (WebCore::deleteCookie): Ditto. (WebCore::getHostnamesWithCookies): Ditto. (WebCore::deleteCookiesForHostname): Ditto. (WebCore::deleteAllCookies): Ditto.
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::shouldRelaxThirdPartyCookiePolicy): There was no need to special case null currentCFHTTPCookieStorage, WKSI handles that internally. Added a context argument, so that the function can access current session. (WebCore::ResourceHandle::createNSURLConnection): Updated for other code changes. (WebCore::ResourceHandle::start): Store context->storageSession() for use in willSendRequest. (WebCore::ResourceHandle::willLoadFromCache): Style fix. (WebCore::ResourceHandle::loadResourceSynchronously): Store context->storageSession() for use in willSendRequest. (WebCore::ResourceHandle::willSendRequest): Use stored session, not global one.
9:34 AM Changeset in webkit [134959] by Dimitri Glazkov
  • 3 edits in trunk/Source/WebCore

[Chromium] Land a proper fix for r134939.

  • WebCore.gyp/WebCore.gyp: Added exclusion for "atk".
  • WebCore.gypi: Put the accessibility/atk directory back into WebCore.gypi.
9:19 AM Changeset in webkit [134958] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

[Chromium] Just yank the whole accessibility/atk dir out of WebCore.gypi.

8:57 AM Changeset in webkit [134957] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Use proper keycode value for space instead of hardcoded value.
https://bugs.webkit.org/show_bug.cgi?id=102518

Reviewed by Rob Buis.

Remove hard coded value for space.

Reviewed Internally by Gen Mak.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::setText):

8:56 AM Changeset in webkit [134956] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

[Chromium] Updated WebCore.gypi after r134939.

  • WebCore.gypi: Renamed acessibility/gtk to accessibility/atk.
8:40 AM Changeset in webkit [134955] by commit-queue@webkit.org
  • 11 edits in trunk/Source

[GTK] Move CredentialBackingStore usage from GtkAuthenticationDialog to ResourceHandleSoup
https://bugs.webkit.org/show_bug.cgi?id=101840

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-11-16
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Make ResourceHandleSoup aware of per-session CredentialStorage and persistent CredentialStorage.
Persistent credential storage interaction is moved from GtkAuthenticationDialog, so that it can
be used whether or not GtkAuthenticationDialog is used or not. We try to properly handle redirects
in the manner that the CFNet backend does.

No new tests. There are tests for this behavior, but they cannot be activated until we finish
plumbing this through to the API layer. Once that patch lands, the tests will be turned on.

  • platform/gtk/GtkAuthenticationDialog.cpp: No longer store credentials into the persistent

storage manually, instead rely on ResourceHandleSoup. Also, we no longer get proposed credentials
from the persistent storage here as well. They are pre-loaded by the ResourceHanndle.

  • platform/gtk/GtkAuthenticationDialog.h: Remove callbacks and members associated with saving

credentials to the persistent credential store.

  • platform/network/ResourceHandle.h:

(ResourceHandle): Add a method which is used to continue asynchronously after looking for
proposed credentials in the persistent credential store.

  • platform/network/ResourceHandleInternal.h: Add a member which tracks persistent credentials to be added once we know

an authentication succeeded.

  • platform/network/gtk/CredentialBackingStore.cpp:

(CredentialForChallengeAsyncReadyCallbackData): Added this data structure used for asynchronous access
of stored credentials.
(WebCore::credentialForChallengeAsyncReadyCallback): Ditto for this callback.
(WebCore::CredentialBackingStore::credentialForChallenge): Make this method asynchronous.

  • platform/network/gtk/CredentialBackingStore.h:

(CredentialBackingStore): Update method signatures for for making credentialForChallenge asynchronous.

  • platform/network/soup/AuthenticationChallenge.h:

(WebCore::AuthenticationChallenge::setProposedCredential): Added a setter so that ResourceHandleSoup
can set proposed credentials from the persistent credential store.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::gotHeadersCallback): For GTK+ save any pending credential in the persistent credential storage
if the authentication succeeded.
(WebCore::applyAuthenticationToRequest): Added this method which generically embeds stored credentials
in the request URI. This is the method that Soup uses to override any soup-stored session credential.
(WebCore::restartedCallback): Strip credentials for requests that span a security origin. Handle
authenticating requests from the session store.
(WebCore::createSoupRequestAndMessageForHandle): Make the local request reference mutable.
(WebCore::ResourceHandle::start): Remove some code which is now part of applyAuthenticationToRequest.
Call applyAuthenticationToRequest and clear the user and password members like the CFNet backend does.
(WebCore::getCredentialFromPersistentStoreCallback): Added this callback for getting persistently stored credentials.
(WebCore::ResourceHandle::continueDidReceiveAuthenticationChallenge): Split out didReceiveAuthenticationChallenge
into this asynchronous bit.
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge): For GTK+ continue handling this situation after
first looking in the persistent credential store.
(WebCore::ResourceHandle::receivedCredential): Store session credentials in the session storage, which is
at the moment a redundant version of the Soup session storage and also prepare any persistent credentials
for storage later (see gotHeadersCallback).

Source/WebKit/gtk:

Enable the CredentialStore by default for the WebKit1 GTK+ port. Before this value
didn't have an bearing on whether or not the persistent credential storage was used.
Now is does.

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::FrameLoaderClient::shouldUseCredentialStorage): Enable credential storage by default.

8:22 AM Changeset in webkit [134954] by arv@chromium.org
  • 22 edits in trunk

Update DOMException name: TypeMismatchError
https://bugs.webkit.org/show_bug.cgi?id=102418

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 17 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

  • dom/DOMCoreException.cpp:

(WebCore):

  • dom/ExceptionCode.h:

LayoutTests:

Updated tests and expectations.

  • editing/selection/extend-expected.txt:
  • fast/dom/Element/attr-param-typechecking-expected.txt:
  • fast/dom/Geolocation/argument-types-expected.txt:
  • fast/dom/Geolocation/not-enough-arguments-expected.txt:
  • fast/dom/Geolocation/script-tests/argument-types.js:

(test):

  • fast/dom/HTMLSelectElement/select-selectedIndex-expected.txt:
  • fast/dom/HTMLSelectElement/select-selectedIndex-multiple-expected.txt:
  • fast/js/select-options-add-expected.txt:
  • fast/mediastream/RTCIceCandidate-expected.txt:
  • fast/mediastream/RTCPeerConnection-expected.txt:
  • fast/mediastream/RTCSessionDescription-expected.txt:
  • platform/chromium/fast/dynamic/insertAdjacentElement-expected.txt:
  • platform/efl/fast/dynamic/insertAdjacentElement-expected.txt:
  • platform/gtk/fast/dynamic/insertAdjacentElement-expected.txt:
  • platform/mac/fast/dynamic/insertAdjacentElement-expected.txt:
  • platform/qt/fast/dynamic/insertAdjacentElement-expected.txt:
  • security/crypto-random-values-types-expected.txt:
  • svg/dom/SVGTransformList-expected.txt:
8:19 AM Changeset in webkit [134953] by commit-queue@webkit.org
  • 15 edits in trunk/Source/WebKit2

[EFL][WK2] White flicker when scrolling big pages with dark background on slower hardware.
https://bugs.webkit.org/show_bug.cgi?id=102000

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-11-16
Reviewed by Kenneth Rohde Christiansen.

Add matching of view background color to the page background. This helps to reduce
visibility of flicker during scrolling/scaling/repainting where page tiles are not
ready. View background color matching is disabled by default and can be enabled
with new API function ewk_view_draws_page_background_set .
View background color can interfere with semi-transparent pages and should be
disabled by default.
Upstreaming changes by Youngtaeck Song(youngtaeck.song@samsung.com).

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::EwkViewImpl):
(EwkViewImpl::displayTimerFired):

  • UIProcess/API/efl/EwkViewImpl.h:

(EwkViewImpl::setDrawsBackground):
(EwkViewImpl):

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_draws_page_background_set):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:

(WebKit::LayerTreeCoordinatorProxy::setBackgroundColor):
(WebKit):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:

(LayerTreeCoordinatorProxy):

  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::LayerTreeRenderer):
(WebKit::LayerTreeRenderer::paintToCurrentGLContext):
(WebKit::LayerTreeRenderer::paintToGraphicsContext):
(WebKit::LayerTreeRenderer::setBackgroundColor):
(WebKit):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(LayerTreeRenderer):
(WebKit::LayerTreeRenderer::setDrawsBackground):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::setBackgroundColor):
(WebKit):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:

(LayerTreeCoordinator):

  • WebProcess/WebPage/LayerTreeHost.h:

(WebKit::LayerTreeHost::setBackgroundColor):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::mainFrameDidLayout):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

8:12 AM Changeset in webkit [134952] by kbalazs@webkit.org
  • 2 edits in trunk/Source/WebCore

Coordinated Graphics: support the "freeze animations" API
https://bugs.webkit.org/show_bug.cgi?id=100703

Reviewed by Noam Rosenthal.

Typo fix after previous patch.

No new tests, it's just a typo that only takes effect in the browser.

  • platform/graphics/GraphicsLayerAnimation.cpp:

(WebCore::GraphicsLayerAnimation::GraphicsLayerAnimation):
Initialize members.

8:01 AM Changeset in webkit [134951] by commit-queue@webkit.org
  • 3 edits
    2 moves
    1 add in trunk/Source/WebKit2

[WK2][GTK][EFL] Share WebKit2-GTK's WebProcess Accessibility implementation with other WebKit ports.
https://bugs.webkit.org/show_bug.cgi?id=101748

Patch by Krzysztof Czech <k.czech@samsung.com> on 2012-11-16
Reviewed by Martin Robinson.

Remove and rename files related to Accessibility from WebPage/gtk to WebPage/atk.

  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • WebProcess/WebPage/atk/WebPageAccessibilityObject.h: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.h.

(WebKit):
(_WebPageAccessibilityObject):
(_WebPageAccessibilityObjectClass):

  • WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.cpp.

(accessibilityRootObjectWrapper):
(webPageAccessibilityObjectInitialize):
(webPageAccessibilityObjectGetIndexInParent):
(webPageAccessibilityObjectGetNChildren):
(webPageAccessibilityObjectRefChild):
(web_page_accessibility_object_init):
(web_page_accessibility_object_class_init):
(webPageAccessibilityObjectNew):
(webPageAccessibilityObjectRefresh):

7:47 AM Changeset in webkit [134950] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

add 7 bit strings capabilities to the v8 binding layer
https://bugs.webkit.org/show_bug.cgi?id=91850

Patch by Dan Carney <dcarney@google.com> on 2012-11-16
Reviewed by Adam Barth.

This change enables the v8 binding layer to make use of webkit's
8 bit string capabilities. Using 8 bit strings leads to certain
benchmark performance improvemnts as can be seen in
https://bug-91850-attachments.webkit.org/attachment.cgi?id=163334.

No new tests. Test coverage already extensive.

  • bindings/v8/V8PerIsolateData.cpp:

(WebCore::V8PerIsolateData::visitExternalStrings):

  • bindings/v8/V8StringResource.cpp:

(StringTraits):
(WebCore::false):
(WebCore):
(WebCore::true):
(WebCore::v8StringToWebCoreString):

  • bindings/v8/V8ValueCache.cpp:

(WebCore::makeExternalString):
(WebCore::WebCoreStringResourceBase::toWebCoreStringResourceBase):
(WebCore):
(WebCore::WebCoreStringResourceBase::visitStrings):

  • bindings/v8/V8ValueCache.h:

(WebCoreStringResourceBase):
(WebCore::WebCoreStringResourceBase::WebCoreStringResourceBase):
(WebCore::WebCoreStringResourceBase::~WebCoreStringResourceBase):
(WebCore::WebCoreStringResourceBase::atomicString):
(WebCore::WebCoreStringResourceBase::memoryConsumption):
(WebCoreStringResource16):
(WebCore::WebCoreStringResource16::WebCoreStringResource16):
(WebCore):
(WebCoreStringResource8):
(WebCore::WebCoreStringResource8::WebCoreStringResource8):

7:44 AM Changeset in webkit [134949] by arv@chromium.org
  • 25 edits in trunk

Update DOMException name: InvalidAccessError
https://bugs.webkit.org/show_bug.cgi?id=102400

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 15 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

  • dom/DOMCoreException.cpp:

LayoutTests:

Updated tests and expectations.

  • editing/undomanager/undomanager-reenter-expected.txt:
  • editing/undomanager/undomanager-reenter.html:
  • editing/undomanager/undoscopehost-use-after-free-expected.txt:
  • editing/undomanager/undoscopehost-use-after-free.html:
  • fast/css/CSSPrimitiveValue-exceptions-expected.txt:
  • fast/css/getFloatValueForUnit-expected.txt:
  • fast/css/getFloatValueForUnit.html:
  • fast/css/resources/CSSPrimitiveValue-exceptions.js:
  • fast/dom/XMLSerializer-doctype2-expected.txt:
  • fast/dom/XMLSerializer-doctype2.html:
  • fast/dom/setPrimitiveValue-exceptions-expected.txt:
  • fast/xmlhttprequest/xmlhttprequest-responsetype-before-open-sync-request-expected.txt:
  • fast/xmlhttprequest/xmlhttprequest-responsetype-sync-request-expected.txt:
  • fast/xmlhttprequest/xmlhttprequest-sync-disabled-expected.txt:
  • http/tests/media/media-source/video-media-source-add-and-remove-buffers-expected.txt:
  • http/tests/media/media-source/video-media-source-duration-changed-expected.txt:
  • http/tests/websocket/tests/hybi/close-expected.txt:
  • http/tests/websocket/tests/hybi/close.html:
  • platform/chromium-mac/fast/dom/setPrimitiveValue-exceptions-expected.txt:
  • platform/chromium-win/fast/dom/setPrimitiveValue-exceptions-expected.txt:
  • webintents/web-intents-api-expected.txt:
  • webintents/web-intents-api.html:
7:39 AM Changeset in webkit [134948] by Alexandru Chiculita
  • 14 edits
    5 adds in trunk/Source

[Texmap][CSS Shaders] Make the CustomFilterValidatedProgram maintain the platform compiled program
https://bugs.webkit.org/show_bug.cgi?id=102414

Reviewed by Noam Rosenthal.

Source/WebCore:

Added WebCore classes needed for the WebKit2 implementation of Texture Mapper to keep a reference to the
platform compiled custom filter. It is just used to maintain the life-time of the objects. WebKit2 injects a
client in TextureMapperPlatformCompiledProgram and receives a callback when the custom filter program is not
used to render any layer on the page.

Note that CustomFilterValidatedProgram are reused across multiple elements of the same page. Also, the instances
are reused across frames, so animations should reuse the same pre-validated program. In this case, the mechanism is
extended and reused in the platform compositor.

No new tests, existing tests for CSS Custom Filters already cover this path.

  • CMakeLists.txt:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.pri:
  • platform/graphics/filters/CustomFilterValidatedProgram.cpp:

(WebCore):

  • platform/graphics/filters/CustomFilterValidatedProgram.h:

(WebCore):
(CustomFilterValidatedProgram):

  • platform/graphics/filters/texmap/CustomFilterValidatedProgramTextureMapper.cpp: Added.

(WebCore):
(WebCore::CustomFilterValidatedProgram::platformCompiledProgram): Platform implementation for creating and deleting the reference.
(WebCore::CustomFilterValidatedProgram::platformInit):
(WebCore::CustomFilterValidatedProgram::platformDestroy):

  • platform/graphics/filters/texmap/TextureMapperPlatformCompiledProgram.h: Added.

(WebCore):
(TextureMapperPlatformCompiledProgramClient):
(WebCore::TextureMapperPlatformCompiledProgramClient::ref):
(WebCore::TextureMapperPlatformCompiledProgramClient::deref):
(TextureMapperPlatformCompiledProgram):
Stores a link to a TextureMapperPlatformCompiledProgramClient. It's main purpose is to call unref on the client when
the shader is not needed anymore. WebKit2 can use that to delete the corresponding shader from the compositor side.
(WebCore::TextureMapperPlatformCompiledProgram::create):
(WebCore::TextureMapperPlatformCompiledProgram::setClient): Used by WebKit2 to inject the platform client.
(WebCore::TextureMapperPlatformCompiledProgram::client):
(WebCore::TextureMapperPlatformCompiledProgram::TextureMapperPlatformCompiledProgram):

Source/WebKit2:

This is the first part of shader caching implementation for the Custom Filters in WK2 LayerTreeCoordinator.
In this patch it will just make the LayerTreeCoordinator knowledgeable about the life-time
of the custom filter programs. It can allocate IDs for the filters and it also gets a callback when the
filters are not needed anymore.

The UI process is still recreating the shader every time, but https://bugs.webkit.org/show_bug.cgi?id=101801
will fix that and try to reuse existing custom filters.

  • CMakeLists.txt:
  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(CoreIPC::::encode):

  • Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.cpp: Added.

(WebKit):
(WebKit::WebCustomFilterProgramProxy::~WebCustomFilterProgramProxy):

  • Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h: Added.

(WebKit):
(WebCustomFilterProgramProxyClient):
(WebCustomFilterProgramProxy):
(WebKit::WebCustomFilterProgramProxy::create):
(WebKit::WebCustomFilterProgramProxy::id):
(WebKit::WebCustomFilterProgramProxy::refFromValidatedProgram):
(WebKit::WebCustomFilterProgramProxy::derefFromValidatedProgram):
(WebKit::WebCustomFilterProgramProxy::setClient):
(WebKit::WebCustomFilterProgramProxy::client):
(WebKit::WebCustomFilterProgramProxy::WebCustomFilterProgramProxy):

  • Target.pri:
  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:

(WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::syncLayerFilters):
(WebKit):
(WebKit::LayerTreeCoordinator::checkCustomFilterProgramProxies):
(WebKit::LayerTreeCoordinator::removeCustomFilterProgramProxy):
(WebKit::LayerTreeCoordinator::disconnectCustomFilterPrograms):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:

(LayerTreeCoordinator):

7:21 AM Changeset in webkit [134947] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Short-circuit Element::hasEquivalentAttributes() if elements share attribute data.
<http://webkit.org/b/102498>

Reviewed by Antti Koivisto.

Add a fast path to hasEquivalentAttributes() that checks if both elements are using
the same ElementAttributeData.

  • dom/Element.cpp:

(WebCore::Element::hasEquivalentAttributes):

6:58 AM Changeset in webkit [134946] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt][Mac] Fix the build after r124873
https://bugs.webkit.org/show_bug.cgi?id=102475

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2012-11-16
Reviewed by Noam Rosenthal.

Change the CoordinatedImageBackingID typedef from uintptr_t to uint64_t.

  • Shared/WebLayerTreeInfo.h:
  • UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
6:55 AM Changeset in webkit [134945] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Adding a null pointer check for currentContext to GraphicsContext3DQt.
https://bugs.webkit.org/show_bug.cgi?id=102360

QOpenGLContext::currentContext() will return null, in case there is
no current context. Therefore currentContext must be null-checked
before it can be reused.
Making a context current on a null-surface on the other hand is
perfectly possible.

Reviewed by Kenneth Rohde Christiansen.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3DPrivate::blitMultisampleFramebufferAndRestoreContext):

6:38 AM Changeset in webkit [134944] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Workaround to show shortcuts for panels that hasn't been loaded.
https://bugs.webkit.org/show_bug.cgi?id=102488

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-11-16
Reviewed by Vsevolod Vlasov.

Panels are lazily loaded / instantiated.
Panel constructors register keyboard shortcuts.

When user open shortcuts screen all panel should be loaded.
Otherwise some shortcuts will be missing.

  • inspector/front-end/ShortcutsScreen.js: Added callback invokation.
  • inspector/front-end/inspector.js:

Provided callback that loads all panels.

6:36 AM Changeset in webkit [134943] by dominik.rottsches@intel.com
  • 3 edits
    4 adds
    2 deletes in trunk/LayoutTests

[EFL] Gardening failure cases on EFL build bots
https://bugs.webkit.org/show_bug.cgi?id=102496

Unreviewed EFL gardening.

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-11-16

  • platform/efl-wk1/fast/media/mq-js-media-except-02-expected.png: Removed.
  • platform/efl-wk1/fast/media/mq-js-media-except-03-expected.png: Removed.
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/efl/fast/media/mq-js-media-except-02-expected.png: Added.
  • platform/efl/fast/media/mq-js-media-except-02-expected.txt: Added.
  • platform/efl/fast/media/mq-js-media-except-03-expected.png: Added.
  • platform/efl/fast/media/mq-js-media-except-03-expected.txt: Added.
6:26 AM Changeset in webkit [134942] by zandobersek@gmail.com
  • 1 edit
    2 adds in trunk/LayoutTests

Unreviewed GTK gardening, rebaselining after r134859.

  • platform/gtk/fast/media/mq-js-media-except-02-expected.txt: Added.
  • platform/gtk/fast/media/mq-js-media-except-03-expected.txt: Added.
6:00 AM Changeset in webkit [134941] by yael@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Help bugzilla find me.

  • Scripts/webkitpy/common/config/committers.py:
5:59 AM Changeset in webkit [134940] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Remove IsSubType() from CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=102348

Reviewed by Adam Barth.

CodeGenerator.pm has IsStrictSubType(). CodeGeneratorV8.pm should use it.

No tests. No change in behavior.

  • bindings/scripts/CodeGenerator.pm:

(IsSubType):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GetInternalFields):
(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateFunctionCallback):
(GenerateImplementationIndexer):
(GenerateToV8Converters):

5:47 AM Changeset in webkit [134939] by mario@webkit.org
  • 3 edits
    30 moves
    1 add in trunk/Source/WebCore

[EFL] Share WebKit-Gtk's Accessibility implementation with others WebKit ports.
https://bugs.webkit.org/show_bug.cgi?id=99578

Reviewed by Martin Robinson.

Renamed WebCore/accessibility/gtk to WebCore/accessibility/atk.

  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • accessibility/atk/AXObjectCacheAtk.cpp: Renamed from

Source/WebCore/accessibility/gtk/AXObjectCacheAtk.cpp.

  • accessibility/atk/AccessibilityObjectAtk.cpp: Renamed from

Source/WebCore/accessibility/gtk/AccessibilityObjectAtk.cpp.

  • accessibility/atk/WebKitAccessibleHyperlink.cpp: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleHyperlink.cpp.

  • accessibility/atk/WebKitAccessibleHyperlink.h: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleHyperlink.h.

  • accessibility/atk/WebKitAccessibleInterfaceAction.cpp: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceAction.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceAction.h: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceAction.h.

  • accessibility/atk/WebKitAccessibleInterfaceComponent.cpp:

Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceComponent.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceComponent.h: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceComponent.h.

  • accessibility/atk/WebKitAccessibleInterfaceDocument.cpp: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceDocument.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceDocument.h: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceDocument.h.

  • accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp:

Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceEditableText.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceEditableText.h:

Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceEditableText.h.

  • accessibility/atk/WebKitAccessibleInterfaceHyperlinkImpl.cpp:

Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceHyperlinkImpl.h:

Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceHyperlinkImpl.h.

  • accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp:

Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceHypertext.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceHypertext.h: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceHypertext.h.

  • accessibility/atk/WebKitAccessibleInterfaceImage.cpp: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceImage.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceImage.h: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceImage.h.

  • accessibility/atk/WebKitAccessibleInterfaceSelection.cpp:

Renamed from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceSelection.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceSelection.h: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceSelection.h.

  • accessibility/atk/WebKitAccessibleInterfaceTable.cpp: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceTable.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceTable.h: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceTable.h.

  • accessibility/atk/WebKitAccessibleInterfaceText.cpp: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceText.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceText.h: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceText.h.

  • accessibility/atk/WebKitAccessibleInterfaceValue.cpp: Renamed

from Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceValue.cpp.

  • accessibility/atk/WebKitAccessibleInterfaceValue.h: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleInterfaceValue.h.

  • accessibility/atk/WebKitAccessibleUtil.cpp: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleUtil.cpp.

  • accessibility/atk/WebKitAccessibleUtil.h: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleUtil.h.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleWrapperAtk.cpp.

  • accessibility/atk/WebKitAccessibleWrapperAtk.h: Renamed from

Source/WebCore/accessibility/gtk/WebKitAccessibleWrapperAtk.h.

5:39 AM Changeset in webkit [134938] by shinyak@chromium.org
  • 4 edits
    4 adds in trunk

Changing pseudoClass (:indeterminate) should cause distribution
https://bugs.webkit.org/show_bug.cgi?id=101903

Reviewed by Dimitri Glazkov.

Source/WebCore:

<progress> and <input type="checkbox"> have 'indeterminate' state. When their state is changed, we have to
invalidate distribution if necessary. To check it, we collect a feature that :invalidate is used in select attributes.

For <input>, we also have to see 'type' is changed. According to the spec, :indeterminate should match only
progress element or <input type="checkbox">. So changing 'type' might also change :indeterminate state.

Tests: fast/dom/shadow/pseudoclass-update-indeterminate-input.html

fast/dom/shadow/pseudoclass-update-indeterminate-progress.html

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::updateType):
(WebCore::HTMLInputElement::setIndeterminate):

  • html/HTMLProgressElement.cpp:

(WebCore::HTMLProgressElement::didElementStateChange):

LayoutTests:

I've used "-webkit-appearance: none" for progress element because of Bug 102459.
It prevents from testing progress element on Windows.

  • fast/dom/shadow/pseudoclass-update-indeterminate-input-expected.html: Added.
  • fast/dom/shadow/pseudoclass-update-indeterminate-input.html: Added.
  • fast/dom/shadow/pseudoclass-update-indeterminate-progress-expected.html: Added.
  • fast/dom/shadow/pseudoclass-update-indeterminate-progress.html: Added.
5:37 AM Changeset in webkit [134937] by alexis@webkit.org
  • 2 edits in trunk/Source/WebCore

Factorize the creation of primitive values with a pair into a function.
https://bugs.webkit.org/show_bug.cgi?id=102485

Reviewed by Antti Koivisto.

The pattern is already existing in various call sites inside CSSParser
and more will be added in the future (see bug 102104).

No new tests : It's a refactoring only, the tests should cover it.

  • css/CSSParser.cpp:

(WebCore):
(WebCore::createPrimitiveValuePair):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFillSize):
(WebCore::CSSParser::parseBorderImageRepeat):
(WebCore::CSSParser::parseBorderRadius):
(WebCore::CSSParser::parseCounter):

5:35 AM Changeset in webkit [134936] by pilgrim@chromium.org
  • 9 edits in trunk/Source/WebCore

Expand PlatformCookieJar interface to allow for other ports
https://bugs.webkit.org/show_bug.cgi?id=102456

Reviewed by Adam Barth.

Add firstParty and cookieURL arguments to several functions to
prepare for integrating Chromium port into new PlatformCookieJar
interface.

  • loader/CookieJar.cpp:

(WebCore::cookiesEnabled):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::getRawCookies):

  • platform/network/PlatformCookieJar.h:

(WebCore):

  • platform/network/cf/CookieJarCFNet.cpp:

(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):

  • platform/network/curl/CookieJarCurl.cpp:

(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):

  • platform/network/mac/CookieJarMac.mm:

(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):

  • platform/network/qt/CookieJarQt.cpp:

(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):

  • platform/network/soup/CookieJarSoup.cpp:

(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):

  • platform/network/win/CookieJarWin.cpp:

(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):

5:32 AM Changeset in webkit [134935] by jchaffraix@webkit.org
  • 3 edits in trunk/Source/WebCore

RenderGrid should have a function to resolve grid position
https://bugs.webkit.org/show_bug.cgi?id=102441

Reviewed by Ojan Vafai.

The code was doing this conversion implicitly inside RenderGrid::findChildLogicalPosition.
Also note that we also provided a fallback by returning LayoutPoint() (ie the (0, 0) position
on the grid) if we couldn't handle the value. The explicit conversion is needed in order to
support render areas and add a proper grid model to RenderGrid.

No expected change in behavior.

  • rendering/RenderGrid.h:
  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::resolveGridPosition):
Added this new function to handle the conversion. We re-use Length but should never see
a lot of the <length> values so I added some ASSERTs to enforce and catch that.

(WebCore::RenderGrid::findChildLogicalPosition):
Simplified the function now that it just use resolveGridPosition.

5:19 AM Changeset in webkit [134934] by commit-queue@webkit.org
  • 4 edits in trunk

[V8] Increment the amount of externally allocated memory for the receiving V8 isolate when transferring ArrayBuffer
https://bugs.webkit.org/show_bug.cgi?id=94463

Patch by Ulan Degenbaev <ulan@chromium.org> on 2012-11-16
Reviewed by Kentaro Hara.

Call AdjustAmountOfExternalAllocatedMemory when V8ArrayBuffer is deserialized and transferred.

.:

  • ManualTests/typed-array-memory.html:

Source/WebCore:

Test: ManualTests/typed-array-memory.html

  • bindings/v8/SerializedScriptValue.cpp:
4:53 AM Changeset in webkit [134933] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Unset the tooltip when the web process has crashed
https://bugs.webkit.org/show_bug.cgi?id=102232

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-11-16
Reviewed by Gyuyoung Kim.

Emit 'tooltip,text,unset' signal to unset the tooltip
when the web process has crashed.

  • UIProcess/efl/PageClientBase.cpp:

(WebKit::PageClientBase::processDidCrash):

4:37 AM Changeset in webkit [134932] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Unreviewed, rolling out r134694.
http://trac.webkit.org/changeset/134694
https://bugs.webkit.org/show_bug.cgi?id=102481

it made API test crash on EFL port (Requested by gyuyoung on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-16

Source/WebCore:

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::fillColorsFromEdjeClass):
(WebCore::RenderThemeEfl::setColorFromThemeClass):
(WebCore::RenderThemeEfl::loadTheme):
(WebCore::RenderThemeEfl::RenderThemeEfl):

  • platform/efl/RenderThemeEfl.h:

(RenderThemeEfl):

Source/WebKit/efl:

  • DefaultTheme/default.edc:
4:32 AM Changeset in webkit [134931] by mkwst@chromium.org
  • 17 edits in trunk/Source/WebCore

Web Inspector: Move call stack generation out of bindings.
https://bugs.webkit.org/show_bug.cgi?id=101331

Reviewed by Yury Semikhatsky.

Currently, we generate stack traces for console messages at each call
site. Bug 100650 has the end goal of moving all stack trace generation
inside of the Inspector in order to ensure that we never send a console
message without a stack trace if it's possible to generate one. This
also ensures that we never generate unused call stacks.

This patch is the first step in that direction, moving stack trace
generation out of the Console bindings, and into either Console or
InspectorConsoleAgent.

No visible change in behavior should result; this refactoring should
continue to pass all existing inspector tests.

  • bindings/js/JSConsoleCustom.cpp:

(WebCore::JSConsole::profile):
(WebCore::JSConsole::profileEnd):

Adjust custom JSC Console bindings to drop call stack generation.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateCallWith):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateCallWith):

Drop call stack generation from JSC and V8 bindings.

  • bindings/scripts/CodeGeneratorGObject.pm:

Skip timeEnd explicitly in these bindings; it used to include
ScriptArguments, which autoskipped it. Now it doesn't, so it needs
to be called out on its own.

  • bindings/v8/ScriptCallStackFactory.cpp:

(WebCore::createScriptCallStackForConsole):
(WebCore::createScriptCallStack):
(WebCore):

  • bindings/v8/ScriptCallStackFactory.h:

(WebCore):

Add 'createScriptCallStack(ScriptState*, size_t)' to V8's
ScriptCallStackFactory in order to match JCS' implementation.
It simply delegates to 'createScriptCallStackForConsole', which
now also accepts a 'maxStackSize' parameter.

  • bindings/v8/custom/V8ConsoleCustom.cpp:

(WebCore::V8Console::traceCallback):
(WebCore::V8Console::assertCallback):
(WebCore::V8Console::profileCallback):
(WebCore::V8Console::profileEndCallback):

Adjust custom V8 bindings to drop call stack generation.

  • inspector/InspectorConsoleAgent.cpp:

(WebCore::InspectorConsoleAgent::addMessageToConsole):

With the eventual goal of getting rid of the call stack parameter
entirely, this patch drops it from one version of
'addMessageToConsole' (replacing it with ScriptState*), and creates
a new version that only accepts a call stack. We should be able to
migrate most (all?) external call sites over to the arguments
version in future patches.

(WebCore):
(WebCore::InspectorConsoleAgent::count):

Count takes 'ScriptState*' instead of a call stack, and generates
the stack as needed.

  • inspector/InspectorConsoleAgent.h:

(InspectorConsoleAgent):

  • inspector/InspectorConsoleInstrumentation.h:

(WebCore::InspectorInstrumentation::addMessageToConsole):
(WebCore):
(WebCore::InspectorInstrumentation::consoleCount):

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
(WebCore::InspectorInstrumentation::consoleCountImpl):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):

Changes the InspectorInstrumentation pipeline to match the
InspectorConsoleAgent changes.

  • page/Console.cpp:

(WebCore::Console::addMessage):

We now (always) generate one frame of a stack trace in order to
populate line numbers and caller URLs. If we need to print the whole
trace here, we generate a full stack.

(WebCore::Console::debug):
(WebCore::Console::error):
(WebCore::Console::info):
(WebCore::Console::log):
(WebCore::Console::warn):
(WebCore::Console::dir):
(WebCore::Console::dirxml):
(WebCore::Console::clear):
(WebCore::Console::trace):
(WebCore::Console::assertCondition):
(WebCore::Console::count):
(WebCore::Console::markTimeline):
(WebCore::Console::timeEnd):
(WebCore::Console::timeStamp):
(WebCore::Console::group):
(WebCore::Console::groupCollapsed):
(WebCore::Console::profile):
(WebCore::Console::profileEnd):

s/ScriptCallStack/ScriptState*/g. Also, printing the stack trace
has been moved out of 'trace' and into 'addMessage'.

  • page/Console.h:

(Console):

  • page/Console.idl:

Drop the call stack, add the script state.

  • workers/WorkerContext.cpp:

(WebCore::WorkerContext::addMessageToWorkerConsole):

Use the new, explicitly call stacked addMessageToConsole. We'll kill
this in a future patch.

4:21 AM Changeset in webkit [134930] by commit-queue@webkit.org
  • 32 edits
    2 copies in trunk/Source/WebCore

Add initiator to CachedResourceRequest.
https://bugs.webkit.org/show_bug.cgi?id=101935

Patch by Marja Hölttä <marja@chromium.org> on 2012-11-16
Reviewed by Adam Barth.

Motivation: Chromium needs to know which elements request a
resource (such as an image or a script) (bug 92761). In addition,
for exposing resource timing information (bug 84883) we need to
store the initiator, and this is the first step towards it.

No new tests: No visible change in behavior.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSCursorImageValue.cpp:

(WebCore::CSSCursorImageValue::cachedImage):

  • css/CSSFontFaceSrcValue.cpp:

(WebCore::CSSFontFaceSrcValue::cachedFont):

  • css/CSSImageSetValue.cpp:

(WebCore::CSSImageSetValue::cachedImageSet):

  • css/CSSImageValue.cpp:

(WebCore::CSSImageValue::cachedImage):

  • css/CSSImageValue.h:

(WebCore):
(CSSImageValue):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::loadPendingImage):

  • css/StyleRuleImport.cpp:

(WebCore::StyleRuleImport::requestStyleSheet):

  • css/WebKitCSSSVGDocumentValue.cpp:

(WebCore::WebKitCSSSVGDocumentValue::load):

  • css/WebKitCSSShaderValue.cpp:

(WebCore::WebKitCSSShaderValue::cachedShader):

  • dom/ScriptElement.cpp:

(WebCore::ScriptElement::requestScript):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::process):

  • html/parser/CSSPreloadScanner.cpp:

(WebCore::CSSPreloadScanner::emitRule):

  • html/parser/CSSPreloadScanner.h:

(CSSPreloadScanner):

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::PreloadTask::preload):

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::updateFromElement):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestImage):
(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::determineRevalidationPolicy):
(WebCore):
(WebCore::CachedResourceLoader::preload):

  • loader/cache/CachedResourceLoader.h:

(WebCore):
(CachedResourceLoader):

  • loader/cache/CachedResourceRequest.cpp:

(WebCore::CachedResourceRequest::CachedResourceRequest):
(WebCore):
(WebCore::CachedResourceRequest::~CachedResourceRequest):
(WebCore::CachedResourceRequest::setInitiator):
(WebCore::CachedResourceRequest::initiatorName):
(WebCore::CachedResourceRequest::initiatorDocument):
(WebCore::CachedResourceRequest::initiatorElement):

  • loader/cache/CachedResourceRequest.h:

(WebCore):
(WebCore::CachedResourceRequest::setOptions):
(WebCore::CachedResourceRequest::defer):
(WebCore::CachedResourceRequest::setDefer):
(CachedResourceRequest):

  • loader/cache/CachedResourceRequestInitiators.cpp: Copied from Source/WebCore/loader/cache/CachedResourceRequest.cpp.

(WebCore):
(WebCore::CachedResourceRequestInitiators::CachedResourceRequestInitiators):

  • loader/cache/CachedResourceRequestInitiators.h: Copied from Source/WebCore/loader/cache/CachedResourceRequest.cpp.

(WebCore):
(CachedResourceRequestInitiators):
(WebCore::cachedResourceRequestInitiators):

  • loader/icon/IconLoader.cpp:

(WebCore::IconLoader::startLoading):

  • platform/ThreadGlobalData.cpp:

(WebCore::ThreadGlobalData::ThreadGlobalData):

  • platform/ThreadGlobalData.h:

(WebCore):
(WebCore::ThreadGlobalData::cachedResourceRequestInitiators):
(ThreadGlobalData):

  • svg/SVGFEImageElement.cpp:

(WebCore::SVGFEImageElement::requestImageResource):

  • svg/SVGFontFaceUriElement.cpp:

(WebCore::SVGFontFaceUriElement::loadFont):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::svgAttributeChanged):

4:19 AM Changeset in webkit [134929] by mkwst@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed gardening.

http/tests/security/sandboxed-iframe-form-top.html is leaking state into
the next test, and should have been skipped for Chromium as well as mac
in r134789. This patch remedies that oversight.

  • platform/chromium/TestExpectations:
4:04 AM Changeset in webkit [134928] by yurys@chromium.org
  • 6 edits in trunk

Web Inspector: don't show an Error when evaluating a watch expression results in an exception
https://bugs.webkit.org/show_bug.cgi?id=102470

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Dim watch expression and show "<not available>" as its value in cases when it evaluates
into an exception.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/WatchExpressionsSidebarPane.js:

(WebInspector.WatchExpressionTreeElement.prototype.update):

  • inspector/front-end/inspector.css:

LayoutTests:

Check that watch expression has value "<not available>" in case of exception
during its evaluation instead of a special style class tha has been removed.

  • inspector/debugger/error-in-watch-expressions.html:
4:00 AM Changeset in webkit [134927] by vsevik@chromium.org
  • 21 edits
    1 delete in trunk/Source/WebCore

Web Inspector: Rollout 134404 134548 134552 Temporarily rolling out to ease merging.
https://bugs.webkit.org/show_bug.cgi?id=102476

Unreviewed rolling out.

  • English.lproj/localizedStrings.js:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/AdvancedSearchController.js:
  • inspector/front-end/CallStackSidebarPane.js:

(WebInspector.CallStackSidebarPane.prototype.registerShortcuts):

  • inspector/front-end/ConsoleView.js:

(WebInspector.ConsoleView.prototype._registerShortcuts):

  • inspector/front-end/ElementsPanel.js:

(WebInspector.ElementsPanel):
(WebInspector.ElementsPanel.prototype._registerShortcuts):

  • inspector/front-end/ElementsPanelDescriptor.js:
  • inspector/front-end/GoToLineDialog.js:

(WebInspector.GoToLineDialog.install):

  • inspector/front-end/KeyboardShortcut.js:

(WebInspector.KeyboardShortcut._keyName):

  • inspector/front-end/Panel.js:

(WebInspector.Panel.prototype.registerShortcut):
(WebInspector.Panel.prototype.unregisterShortcut):
(WebInspector.PanelDescriptor.prototype.panel):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel):
(WebInspector.ScriptsPanel.prototype._createDebugToolbar):
(WebInspector.ScriptsPanel.prototype._createButtonAndRegisterShortcuts):

  • inspector/front-end/ScriptsPanelDescriptor.js:
  • inspector/front-end/ShortcutsScreen.js:

(WebInspector.ShortcutsScreen):
(WebInspector.ShortcutsSection):
(WebInspector.ShortcutsSection.prototype._renderKey):

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylesSidebarPane.prototype.registerShortcuts):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._registerShortcuts):

  • inspector/front-end/TimelinePanelDescriptor.js: Removed.
  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.html:
  • inspector/front-end/inspector.js:

(WebInspector._panelDescriptors):
(WebInspector._registerShortcuts):

3:35 AM Changeset in webkit [134926] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Memory Timeline Crash
https://bugs.webkit.org/show_bug.cgi?id=102390

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-11-16
Reviewed by Vsevolod Vlasov.

Crash seems to be caused by IPC overflow.
Messages "ParsedScriptSource" are routed to
ResourceScriptMapping.prototype.addScript that process them in time
linear to number of already registered non-anonymous non-inline scripts.

Fixed this with replacing repreated filtering with "on-line" bucketing.

  • inspector/front-end/ResourceScriptMapping.js:

(WebInspector.ResourceScriptMapping):
Removed duplicating initialization code.
(WebInspector.ResourceScriptMapping.prototype.addScript):
Added script bucketing by sourceURL/isInline parameters.
(WebInspector.ResourceScriptMapping.prototype._scriptsForSourceURL):
Avoid filterfig.
(WebInspector.ResourceScriptMapping.prototype._createUISourceCode):
Added outgoing muatable array safeguard.
(WebInspector.ResourceScriptMapping.prototype._reset):
Added type information and added two new maps.

3:30 AM Changeset in webkit [134925] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

REGRESSION (r134774-r134779): fast/frames/detached-shadow-frame.html failing on Apple Win 7 Release (Tests)
https://bugs.webkit.org/show_bug.cgi?id=102433

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-11-16
Reviewed by Dimitri Glazkov.

Need to include the Shadow DOM polyfill.js since not all ports
web expose the WebkitShadowRoot constructor.

  • fast/frames/detached-shadow-frame.html:
3:23 AM Changeset in webkit [134924] by peter@chromium.org
  • 3 edits in trunk/Tools

Running TestWebKitAPI and webkit_unit_tests for Chromium Android should defer to the Chromium-sided test runner
https://bugs.webkit.org/show_bug.cgi?id=102245

Reviewed by Tony Chang.

When running TestWebKitAPI and webkit_unit_test for Chromium Android, defer
the actual running part to the test runner which lives on the Chromium side.
Re-implementing or even generalizing the device-interaction part in WebKit
is error prone and not worth the effort.

  • Scripts/run-api-tests:
  • Scripts/run-chromium-webkit-unit-tests:
3:11 AM Changeset in webkit [134923] by Csaba Osztrogonác
  • 8 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • http/tests/websocket/tests/hybi/bad-sub-protocol-control-chars-expected.txt: Updated after r134859.
  • platform/qt/TestExpectations: Skip fast/frames/detached-shadow-frame.html, because ENABLE(SHADOW_DOM) is disabled.
  • platform/qt/fast/media/mq-js-media-except-02-expected.txt: Updated after r134859.
  • platform/qt/fast/media/mq-js-media-except-03-expected.txt: Updated after r134859.
  • platform/qt/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Revert r134754, because r134649 was reverted.
  • platform/qt/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Revert r134754, because r134649 was reverted.
  • platform/qt/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Revert r134754, because r134649 was reverted.
2:57 AM Changeset in webkit [134922] by haraken@chromium.org
  • 1 edit
    1 delete in trunk/LayoutTests

Unreviewed. Rebaselined pixel results.

  • platform/chromium-mac/fast/text/international/combining-marks-position-expected.txt: Removed.
2:56 AM Changeset in webkit [134921] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK1] Gardening after r134816. Skipped a newly added failing test.
https://bugs.webkit.org/show_bug.cgi?id=102471

Patch by János Badics <János Badics> on 2012-11-16
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0-wk1/TestExpectations:
2:47 AM Changeset in webkit [134920] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
2:31 AM Changeset in webkit [134919] by commit-queue@webkit.org
  • 10 edits in trunk/Source

[CoordGfx] Follow coding style on explicit constructors
https://bugs.webkit.org/show_bug.cgi?id=102451

Patch by Helder Correia <Helder Correia> on 2012-11-16
Reviewed by Noam Rosenthal.

Use the explicit keyword on single argument constructors.

No new tests needed.

Source/WebCore:

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):

  • platform/graphics/texmap/TextureMapper.h:

(TextureMapper):

  • platform/graphics/texmap/TextureMapperBackingStore.h:

(WebCore::TextureMapperTile::TextureMapperTile):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGLData::SharedGLData::SharedGLData):
(WebCore::TextureMapperGLData::TextureMapperGLData):

  • platform/graphics/texmap/TextureMapperGL.h:

(BitmapTextureGL):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

(TextureMapperShaderManager):

Source/WebKit2:

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:

(WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:

(CoordinatedTileBackend):

2:19 AM Changeset in webkit [134918] by kihong.kwon@samsung.com
  • 15 edits
    3 adds in trunk/Source

Add DeviceController base-class to remove duplication of DeviceXXXControler
https://bugs.webkit.org/show_bug.cgi?id=96894

Reviewed by Hajime Morita.

Source/WebCore:

Add DeviceController which is extracted from DeviceOrientationController to remove duplication.
And soon-to-be-added DeviceMotionController and ProximityController.

Covered by existing tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DeviceOrientationClient.h:
  • dom/DeviceOrientationController.cpp:

Remove member functions to move to DeviceController.

  • addListener(), removeListener(), removeAllListeners(), isActive()

(WebCore::DeviceOrientationController::DeviceOrientationController):
(WebCore::DeviceOrientationController::didChangeDeviceOrientation):
(WebCore::DeviceOrientationController::client):
(WebCore::DeviceOrientationController::hasLastData):
(WebCore::DeviceOrientationController::getLastEvent):
(WebCore::DeviceOrientationController::from):
(WebCore):

  • dom/DeviceOrientationController.h:

(WebCore):
(WebCore::DeviceOrientationController::~DeviceOrientationController):
(DeviceOrientationController):

  • dom/Document.cpp:

Remove suspendEventsForAllListeners() and resumeEventsForAllListeners() function calls.
These calls can be made by checking activeDOMObjectsAreSuspended() and activeDOMObjectsAreStopped() before dispatchEvent.
(WebCore::Document::suspendActiveDOMObjects):
(WebCore::Document::resumeActiveDOMObjects):

  • loader/EmptyClients.h:

(EmptyDeviceClient):
(WebCore::EmptyDeviceClient::startUpdating):
(WebCore::EmptyDeviceClient::stopUpdating):
(WebCore):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::addEventListener):
(WebCore::DOMWindow::removeEventListener):
(WebCore::DOMWindow::removeAllEventListeners):

  • page/DeviceClient.h: Added.

(WebCore):
(DeviceClient):
(WebCore::DeviceClient::~DeviceClient):

  • page/DeviceController.cpp: Added.

DeviceController has extracted functions from DeviceOrientationController and DeviceMotionController.

  • addDeviceEventListener(), removeDeviceEventlistener(), removeAllDeviceEventListeners(), dispatchDeviceEvent()

All kind of device event controller which has DeviceClient can be inherited from DeviceController.
(WebCore):
(WebCore::DeviceController::DeviceController):
(WebCore::DeviceController::addDeviceEventListener):
(WebCore::DeviceController::removeDeviceEventListener):
(WebCore::DeviceController::removeAllDeviceEventListeners):
(WebCore::DeviceController::dispatchDeviceEvent):
(WebCore::DeviceController::fireDeviceEvent):

  • page/DeviceController.h: Added.

(WebCore):
(DeviceController):
(WebCore::DeviceController::~DeviceController):
(WebCore::DeviceController::isActive):
(WebCore::DeviceController::client):
(WebCore::DeviceController::hasLastData):
(WebCore::DeviceController::getLastEvent):

Source/WebKit/qt:

Change client() to deviceOrientationClient() to get DeviceOrientationClient*.

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::setMockDeviceOrientation):

1:22 AM Changeset in webkit [134917] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Overrides] Device metrics get reset on navigation, yet remain in the Overrides view
https://bugs.webkit.org/show_bug.cgi?id=102467

Reviewed by Pavel Feldman.

Restore the device metrics overrides from the inspector cookie in InspectorPageAgent::restore().
Drive-by: move the script execution and FPS counter display state restoration from enable() into restore(),
so that they will get restored only upon page navigation, not upon any agent enablement.

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::restore): Restore device metrics overrides, script execution and FPS counter display state.
(WebCore::InspectorPageAgent::enable): Don't restore script execution and FPS counter display state on any enablement.

1:19 AM Changeset in webkit [134916] by commit-queue@webkit.org
  • 9 edits in trunk

Unreviewed, rolling out r134908.
http://trac.webkit.org/changeset/134908
https://bugs.webkit.org/show_bug.cgi?id=102473

Broke the Apple Windows Debug build. (Requested by dydx on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-16

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

  • WebCore.exp.in:
  • dom/ViewportArguments.cpp:

(WebCore::computeViewportAttributes):

  • dom/ViewportArguments.h:

(WebCore):

Source/WebKit2:

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
1:08 AM Changeset in webkit [134915] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Unreviewed, rolling out r134913.
http://trac.webkit.org/changeset/134913
https://bugs.webkit.org/show_bug.cgi?id=102472

Incorrect fix. (Requested by dydx on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-16

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
1:06 AM Changeset in webkit [134914] by commit-queue@webkit.org
  • 5 edits
    3 adds in trunk

Web Inspector: show internal properties in inspector frontend
https://bugs.webkit.org/show_bug.cgi?id=100021

Patch by Peter Rybin <prybin@chromium.org> on 2012-11-16
Reviewed by Yury Semikhatsky.

Source/WebCore:

New field 'internalProperties' is parsed and passed via all callbacks to Object Properties section.

Test: inspector/debugger/properties-special.html

  • inspector/front-end/ObjectPropertiesSection.js:

(WebInspector.ObjectPropertiesSection.prototype.update.callback):
(WebInspector.ObjectPropertiesSection.prototype.update):
(.callback):
(WebInspector.ObjectPropertyTreeElement.populate):
(.processProperties):
(WebInspector.ArrayGroupingTreeElement._populateAsFragment):
(WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties):

  • inspector/front-end/RemoteObject.js:

(WebInspector.RemoteObject.prototype.set else):

LayoutTests:

A new test is added. InspectorTest.dumpObjectPropertySectionDeep function is added.

  • http/tests/inspector/elements-test.js:

(initialize_ElementTest.InspectorTest.dumpObjectPropertySectionDeep):
(initialize_ElementTest.InspectorTest.dumpObjectPropertySectionDeep.dumpTreeElement):

  • inspector/debugger/properties-special-expected.txt: Added.
  • inspector/debugger/properties-special.html: Added.
  • platform/chromium/inspector/debugger/properties-special-expected.txt: Added.
12:37 AM Changeset in webkit [134913] by dbates@webkit.org
  • 3 edits in trunk/Source/WebKit2

Attempt to fix the Apple Windows Debug build after http://trac.webkit.org/changeset/134908
(https://bugs.webkit.org/show_bug.cgi?id=102354).

Add symbol.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
12:23 AM Changeset in webkit [134912] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

[WK2] Bug on ASSERT code in CoordinatedBackingStore.cpp
https://bugs.webkit.org/show_bug.cgi?id=102465

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-11-16
Reviewed by Noam Rosenthal.

The ASSERT code should be fixed because the 'operator>=' is not defined for WebCore::IntSize.

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:

(WebKit::CoordinatedBackingStoreTile::swapBuffers):

12:16 AM Changeset in webkit [134911] by apavlov@chromium.org
  • 14 edits
    1 copy in trunk/Source/WebCore

Web Inspector: metrics, geolocation, orientation overrides do not belong to the settings panel
https://bugs.webkit.org/show_bug.cgi?id=93691

Reviewed by Vsevolod Vlasov.

  • The Overrides tab contents have been moved from the Settings dialog into a brand new Overrides drawer view,

both receiving a new, more light-weight design.

  • The Cog button now brings up a popup menu with the "Overrides" and "Settings" items.
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/ContextMenu.js:

(WebInspector.ContextMenu.prototype.showSoftMenu): Display the ContextMenu as a soft menu.

  • inspector/front-end/OverridesView.js: Copied from Source/WebCore/inspector/front-end/SettingsScreen.js.

(WebInspector.OverridesView.appendBlockTo):
(WebInspector.OverridesView):
(WebInspector.OverridesView.showInDrawer):
(WebInspector.OverridesView.prototype.get listener):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement.get const):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement.textDoubleClicked):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement.textChanged):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement.set checkboxClicked):
(WebInspector.OverridesView.prototype._createUserAgentSelectRowElement):
(WebInspector.OverridesView.prototype._createInput):
(WebInspector.OverridesView.prototype._onMetricsCheckboxClicked):
(WebInspector.OverridesView.prototype._applyDeviceMetricsUserInput):
(WebInspector.OverridesView.prototype.):
(WebInspector.OverridesView.prototype.set if):
(WebInspector.OverridesView.prototype._createDeviceMetricsElement.swapDimensionsClicked):
(WebInspector.OverridesView.prototype._createDeviceMetricsElement):
(WebInspector.OverridesView.prototype._onGeolocationOverrideCheckboxClicked):
(WebInspector.OverridesView.prototype._applyGeolocationUserInput):
(WebInspector.OverridesView.prototype._setGeolocationPosition):
(WebInspector.OverridesView.prototype._createGeolocationOverrideElement):
(WebInspector.OverridesView.prototype._onDeviceOrientationOverrideCheckboxClicked):
(WebInspector.OverridesView.prototype._applyDeviceOrientationUserInput):
(WebInspector.OverridesView.prototype._setDeviceOrientation):
(WebInspector.OverridesView.prototype._createDeviceOrientationOverrideElement):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel): Fix the "DOM Breakpoints" pane move upon the panel creation.

  • inspector/front-end/SettingsScreen.js:

(WebInspector.SettingsTab):
(WebInspector.SettingsTab.prototype._appendSection):
(WebInspector.GenericSettingsTab):
(WebInspector.ExperimentsSettingsTab):
(WebInspector.SettingsController): Implement the popup menu upon the button click.
(WebInspector.SettingsController.prototype.showOverrides):
(WebInspector.SettingsController.prototype.showSettings):
(WebInspector.SettingsController.prototype.appendApplicableItems):
(WebInspector.SettingsController.prototype._buttonPressed):
(WebInspector.SettingsController.prototype._onHideSettingsScreen):
(WebInspector.SettingsController.prototype.showSettingsScreen):

  • inspector/front-end/ShortcutsScreen.js: Add "Shortcuts" header.

(WebInspector.ShortcutsScreen.prototype.createShortcutsTabView):

  • inspector/front-end/SoftContextMenu.js: Enable in all cases, implement the alignToCurrentTarget mode in show().

(WebInspector.SoftContextMenu.prototype.show):

  • inspector/front-end/TabbedPane.js: Implement vertical tab layout (skipping the tab width computations).

(WebInspector.TabbedPane.prototype.set verticalTabLayout):
(WebInspector.TabbedPane.prototype._updateWidths):
(WebInspector.TabbedPaneTab.prototype.setWidth):
(WebInspector.TabbedPaneTab.prototype._createTabElement):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/helpScreen.css: Update styles for the new Settings and Overrides look-and-feel.
  • inspector/front-end/inspector.css: Drive-by fix small artifacts in the soft menu and drawer view statusbar item label.

(.soft-context-menu-item):
(.drawer-header):

  • inspector/front-end/inspector.html:
12:08 AM Changeset in webkit [134910] by commit-queue@webkit.org
  • 12 edits
    2 deletes in trunk

Unreviewed, rolling out r134865.
http://trac.webkit.org/changeset/134865
https://bugs.webkit.org/show_bug.cgi?id=102466

Broke the Apple Windows Debug build. (Requested by dydx on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-11-16

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

  • WebCore.exp.in:
  • bindings/js/SerializedScriptValue.h:
  • testing/Internals.cpp:
  • testing/Internals.h:

(WebCore):

  • testing/Internals.idl:

Source/WebKit2:

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:

LayoutTests:

  • platform/chromium/fast/storage/serialized-script-value-expected.txt: Removed.
  • platform/chromium/fast/storage/serialized-script-value.html: Removed.
12:06 AM Changeset in webkit [134909] by tasak@google.com
  • 3 edits
    4 adds in trunk

ASSERT_NOT_REACHED() when building a CSSOM wrapper for StyleRuleHost
https://bugs.webkit.org/show_bug.cgi?id=102116

Reviewed by Alexander Pavlov.

Source/WebCore:

Provide a CSSUnknownRule instance as a CSSOM wrapper for StyleRuleHost
rules. Since there is no CSSOM wrapper for @host @-rules and
ASSERT_NOT_REACHED is used when a CSSOM wrapper is requested,
this crash occurs.

Tests: fast/css/at-host-cssom-crash.html

inspector/styles/styles-include-host-rules-crash.html

  • css/StyleRule.cpp:

(WebCore::StyleRuleBase::createCSSOMWrapper):
Return a CSSUnknownRule instance for StyleRuleHost rules instead of
calling ASSERT_NOT_REACHED().

LayoutTests:

  • fast/css/at-host-cssom-crash-expected.txt: Added.
  • fast/css/at-host-cssom-crash.html: Added.
  • inspector/styles/styles-include-host-rules-crash-expected.txt: Added.
  • inspector/styles/styles-include-host-rules-crash.html: Added.
12:02 AM Changeset in webkit [134908] by commit-queue@webkit.org
  • 9 edits in trunk

Avoid copying of ViewportArguments in computeViewportAttributes function
https://bugs.webkit.org/show_bug.cgi?id=102354

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-11-16
Reviewed by Kenneth Rohde Christiansen.

.:

Updated exported symbols for GTK.

  • Source/autotools/symbols.filter:

Source/WebCore:

Since r134749 we do not need copying of ViewportArguments parameter in
computeViewportAttributes() as it is not modified any more.

Tested by existing tests fast/viewport.

  • WebCore.exp.in: Updated exported symbols for MAC.
  • dom/ViewportArguments.cpp:

(WebCore::computeViewportAttributes):

  • dom/ViewportArguments.h:

(WebCore):

Source/WebKit2:

Update exported symbols.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
Note: See TracTimeline for information about the timeline view.