WebKit-https.git
5 years agoUnreviewed. Update OptionsGTK.cmake and NEWS for 2.5.3 release.
carlosgc@webkit.org [Fri, 15 Aug 2014 12:23:07 +0000 (12:23 +0000)]
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.5.3 release.

.:

* Source/cmake/OptionsGTK.cmake: Bump version numbers.

Source/WebKit2:

* gtk/NEWS: Add release notes for 2.5.3.

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

5 years ago[GTK] Disable memory sampler on non-Linux system
carlosgc@webkit.org [Fri, 15 Aug 2014 11:30:15 +0000 (11:30 +0000)]
[GTK] Disable memory sampler on non-Linux system
https://bugs.webkit.org/show_bug.cgi?id=134483

Patch by Ting-Wei Lan <lantw44@gmail.com> on 2014-08-15
Reviewed by Philippe Normand.

Source/WebKit2/Shared/linux/WebMemorySamplerLinux.cpp only works on
Linux because it uses many Linux-specific features, so we should disable
memory sampler on other systems by default.

* Source/cmake/OptionsGTK.cmake:

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

5 years ago[GTK] HTML API documentation should also be installed versioned
carlosgc@webkit.org [Fri, 15 Aug 2014 09:16:07 +0000 (09:16 +0000)]
[GTK] HTML API documentation should also be installed versioned
https://bugs.webkit.org/show_bug.cgi?id=135970

Reviewed by Philippe Normand.

* Source/PlatformGTK.cmake: Append -${WEBKITGTK_API_VERSION} to
the directory name.

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

5 years agoRemove two unused Range functions.
akling@apple.com [Fri, 15 Aug 2014 04:24:33 +0000 (04:24 +0000)]
Remove two unused Range functions.
<https://webkit.org/b/135944>

Reviewed by Geoffrey Garen.

* dom/Range.cpp:
(WebCore::Range::maxStartOffset): Deleted.
(WebCore::Range::maxEndOffset): Deleted.
* dom/Range.h:

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

5 years agoPreserve editing style for -webkit-tap-highlight-color on all ports that enable ENABL...
dbates@webkit.org [Fri, 15 Aug 2014 04:10:26 +0000 (04:10 +0000)]
Preserve editing style for -webkit-tap-highlight-color on all ports that enable ENABLE_TOUCH_EVENTS
https://bugs.webkit.org/show_bug.cgi?id=135963

Reviewed by Andy Estes.

Currently we only preserve the CSS property -webkit-tap-highlight-color during editing operations
for iOS. Instead we should preserve it for all ports that enable ENABLE_TOUCH_EVENTS as this CSS
property isn't specific to iOS.

Also added FIXME comment with regards to the CSS property -webkit-composition-fill-color.

* editing/EditingStyle.cpp:

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

5 years agoCSS JIT: compile the :empty pseudo class
benjamin@webkit.org [Fri, 15 Aug 2014 04:06:27 +0000 (04:06 +0000)]
CSS JIT: compile the :empty pseudo class
https://bugs.webkit.org/show_bug.cgi?id=135958

Reviewed by Andreas Kling.

Source/WebCore:

Compile :empty, nothing fancy.

Tests: fast/selectors/empty-basics.html
       fast/selectors/empty-long-adjacent-backtracking.html
       fast/selectors/empty-adjacent-style-update.html
       fast/selectors/empty-style-update.html

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::jumpIfElementIsNotEmpty):
(WebCore::SelectorCompiler::setElementStyleIsAffectedByEmpty):
(WebCore::SelectorCompiler::setElementStyleFromContextIsAffectedByEmptyAndUpdateRenderStyleIfNecessary):
(WebCore::SelectorCompiler::setElementStyleIsAffectedByEmptyAndUpdateRenderStyleIfNecessary):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsEmpty):
* dom/CharacterData.h:
(WebCore::CharacterData::dataMemoryOffset):
* dom/ContainerNode.h:
(WebCore::ContainerNode::firstChildMemoryOffset):
* dom/Node.h:
(WebCore::Node::flagIsText):

Source/WTF:

* wtf/text/StringImpl.h:
(WTF::StringImpl::lengthMemoryOffset):

LayoutTests:

Add some test coverage, :empty had very little testing.

The test empty-adjacent-style-update expose some problems with style update,
I will look into them separately.

* fast/selectors/empty-adjacent-style-update-expected.txt: Added.
* fast/selectors/empty-adjacent-style-update.html: Added.
* fast/selectors/empty-basics-expected.txt: Added.
* fast/selectors/empty-basics.html: Added.
* fast/selectors/empty-long-adjacent-backtracking-expected.txt: Added.
* fast/selectors/empty-long-adjacent-backtracking.html: Added.
* fast/selectors/empty-style-update-expected.txt: Added.
* fast/selectors/empty-style-update.html: Added.

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

5 years agoAllocate the whole RegExpMatchesArray backing store up front.
akling@apple.com [Fri, 15 Aug 2014 03:22:01 +0000 (03:22 +0000)]
Allocate the whole RegExpMatchesArray backing store up front.
<https://webkit.org/b/135217>

We were using the generic array backing store allocation path for
RegExpMatchesArray which meant starting with 4 slots and then growing
it dynamically as we append. Since we always know the final number of
entries up front, allocate a perfectly-sized backing store right away.

~2% progression on Octane/regexp.

Reviewed by Geoffrey Garen.

* runtime/JSArray.h:
(JSC::createArrayButterflyWithExactLength):
* runtime/RegExpMatchesArray.cpp:
(JSC::RegExpMatchesArray::create):

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

5 years agoWeb Inspector: Dragging Undocked inspector by window title has broken behavior
commit-queue@webkit.org [Fri, 15 Aug 2014 00:30:38 +0000 (00:30 +0000)]
Web Inspector: Dragging Undocked inspector by window title has broken behavior
https://bugs.webkit.org/show_bug.cgi?id=135950

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-14
Reviewed by Timothy Hatcher.

* UserInterface/Base/Main.js:
On Mac ports where we the inspector content goes everywhere, window dragging behavior
still exists for the top 22px of the window. So don't do our JavaScript based window
dragging for this special region.

* UserInterface/Models/KeyboardShortcut.js:
(WebInspector.KeyboardShortcut.Modifier.get CommandOrControl):
(WebInspector.KeyboardShortcut.prototype.get displayName):
Instead of calling a host function, use the value already in the frontend.

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

5 years agoImplement scroll snapping animations on Mac
commit-queue@webkit.org [Fri, 15 Aug 2014 00:21:25 +0000 (00:21 +0000)]
Implement scroll snapping animations on Mac
https://bugs.webkit.org/show_bug.cgi?id=135768

Patch by Wenson Hsieh <wenson_hsieh@apple.com> on 2014-08-14
Reviewed by Beth Dakin.

Implementing the scroll snap animations required for snapping in both overflow and mainframe areas on Mac.
Since we receive a series of discrete wheel events, we need to predict the distance we need to traverse,
compute the appropriate snap point, and then compute an animation curve to that location. The snap animations
are split into two types: snapping, which handles letting go of the trackpad with zero velocity, and gliding,
which handles flick gestures. In both cases, sinusoidal curves are used to ease animation to the target
location. In the former case, the initial velocity is low, and increases to a maximum value during the middle
of the animation before decreasing to 0. In the latter case, the curve is computed such that the initial
velocity matches the user's scroll velocity, and the final velocity matches a lower final velocity that is
somewhat arbitrarily computed. (See the FIXME in AxisScrollSnapOffsets::initializeGlideParameters). How the
equations and constants were chosen is described in greater detail in the comments above
AxisScrollSnapOffsets::computeGlideDelta and AxisScrollSnapOffsets::computeSnapDelta. Note that the final
velocity should ideally be equal to 0. However, with this particular curve, this caused the animation to feel
too slow near the snap point.

No tests, since there is no observable change in behavior. Tests will be included when iOS and Mac scrolling
areas hook into this code.

* PlatformMac.cmake:
* WebCore.xcodeproj/project.pbxproj:
* page/scrolling/AxisScrollSnapOffsets.cpp:
(WebCore::closestSnapOffset): Computes the closest snap offset given velocity and prdicted destination.
* page/scrolling/AxisScrollSnapOffsets.h:
* platform/mac/AxisScrollSnapAnimator.h: Added.
(WebCore::AxisScrollSnapAnimatorClient::~AxisScrollSnapAnimatorClient):
* platform/mac/AxisScrollSnapAnimator.mm: Added.
(WebCore::toWheelEventStatus): Converts a pair of PlatformWheelEventPhases to a WheelEventStatus.
(WebCore::projectedInertialScrollDistance): Attempts to predict the distance covered by the inertial scrolling phase.
(WebCore::AxisScrollSnapAnimator::AxisScrollSnapAnimator):
(WebCore::AxisScrollSnapAnimator::handleWheelEvent): Updates the internal state of the AxisScrollSnapAnimator, given a PlatformWheelEvent
(WebCore::AxisScrollSnapAnimator::shouldOverrideWheelEvent): Determines whether or not we should override a wheel event given the animator's internal state.
(WebCore::AxisScrollSnapAnimator::scrollSnapAnimationUpdate): Updates a single loop of the scroll snapping animation.
(WebCore::AxisScrollSnapAnimator::beginScrollSnapAnimation):
(WebCore::AxisScrollSnapAnimator::endScrollSnapAnimation):
(WebCore::AxisScrollSnapAnimator::computeSnapDelta): See comments for more information.
(WebCore::AxisScrollSnapAnimator::computeGlideDelta): See comments for more information.
(WebCore::AxisScrollSnapAnimator::initializeGlideParameters):
(WebCore::AxisScrollSnapAnimator::pushInitialWheelDelta):
(WebCore::AxisScrollSnapAnimator::averageInitialWheelDelta):
(WebCore::AxisScrollSnapAnimator::clearInitialWheelDeltaWindow):

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

5 years agoWeb Inspector: Split console toggle button wrong - Images/Images/SplitToggleUp.svg...
commit-queue@webkit.org [Fri, 15 Aug 2014 00:18:25 +0000 (00:18 +0000)]
Web Inspector: Split console toggle button wrong - Images/Images/SplitToggleUp.svg does not exist
https://bugs.webkit.org/show_bug.cgi?id=135957

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-14
Reviewed by Timothy Hatcher.

* UserInterface/Views/LogContentView.js:
(WebInspector.LogContentView):
Wrong image path passed to platformImagePath.

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

5 years agoAllow high fidelity type profiling to be enabled and disabled.
commit-queue@webkit.org [Thu, 14 Aug 2014 23:59:44 +0000 (23:59 +0000)]
Allow high fidelity type profiling to be enabled and disabled.
https://bugs.webkit.org/show_bug.cgi?id=135423

Patch by Saam Barati <sbarati@apple.com> on 2014-08-14
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

- Merged op_put_to_scope_with_profile and op_get_from_scope_with_profile into
  op_profile_types_with_high_fidelity by adding extra arguments to the opcode.
- Altered SymbolTable to use less memory by adding a rare data structure for
  type profiling.
- Created an interface to turn on and off type profiling from the Web
  Inspector.
- Refactored how entries are written to HighFidelityLog to make it
  easier to inline when generating machine code.
- Implemented op_profile_types_with_high_fidelity in the baseline JIT
  by inlining the process of writing to the log and doing a small amount
  of type inference optimizations.

* bytecode/BytecodeList.json:
* bytecode/BytecodeUseDef.h:
(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::scopeDependentProfile): Deleted.
* bytecode/CodeBlock.h:
* bytecode/TypeLocation.h:
(JSC::TypeLocation::TypeLocation):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::emitMove):
(JSC::BytecodeGenerator::emitProfileTypesWithHighFidelity):
(JSC::BytecodeGenerator::emitGetFromScopeWithProfile): Deleted.
(JSC::BytecodeGenerator::emitPutToScopeWithProfile): Deleted.
* bytecompiler/BytecodeGenerator.h:
* bytecompiler/NodesCodegen.cpp:
(JSC::ThisNode::emitBytecode):
(JSC::ResolveNode::emitBytecode):
(JSC::BracketAccessorNode::emitBytecode):
(JSC::DotAccessorNode::emitBytecode):
(JSC::FunctionCallValueNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::FunctionCallBracketNode::emitBytecode):
(JSC::FunctionCallDotNode::emitBytecode):
(JSC::CallFunctionCallDotNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode):
(JSC::PostfixNode::emitResolve):
(JSC::PostfixNode::emitBracket):
(JSC::PostfixNode::emitDot):
(JSC::PrefixNode::emitResolve):
(JSC::PrefixNode::emitBracket):
(JSC::PrefixNode::emitDot):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::AssignDotNode::emitBytecode):
(JSC::ReadModifyDotNode::emitBytecode):
(JSC::AssignBracketNode::emitBytecode):
(JSC::ReadModifyBracketNode::emitBytecode):
(JSC::ReturnNode::emitBytecode):
(JSC::FunctionBodyNode::emitBytecode):
* inspector/agents/InspectorRuntimeAgent.cpp:
(Inspector::InspectorRuntimeAgent::InspectorRuntimeAgent):
(Inspector::InspectorRuntimeAgent::getRuntimeTypesForVariablesAtOffsets):
(Inspector::TypeRecompiler::operator()):
(Inspector::recompileAllJSFunctionsForTypeProfiling):
(Inspector::InspectorRuntimeAgent::willDestroyFrontendAndBackend):
(Inspector::InspectorRuntimeAgent::enableHighFidelityTypeProfiling):
(Inspector::InspectorRuntimeAgent::disableHighFidelityTypeProfiling):
(Inspector::InspectorRuntimeAgent::setHighFidelityTypeProfilingEnabledState):
* inspector/agents/InspectorRuntimeAgent.h:
* inspector/agents/JSGlobalObjectRuntimeAgent.cpp:
(Inspector::JSGlobalObjectRuntimeAgent::willDestroyFrontendAndBackend):
* inspector/protocol/Runtime.json:
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompile):
* jit/JIT.h:
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_profile_types_with_high_fidelity):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_profile_types_with_high_fidelity):
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::getFromScopeCommon): Deleted.
(JSC::LLInt::putToScopeCommon): Deleted.
* llint/LLIntSlowPaths.h:
* llint/LowLevelInterpreter.asm:
* runtime/CodeCache.cpp:
(JSC::CodeCache::getGlobalCodeBlock):
* runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL):
* runtime/CommonSlowPaths.h:
* runtime/HighFidelityLog.cpp:
(JSC::HighFidelityLog::initializeHighFidelityLog):
(JSC::HighFidelityLog::~HighFidelityLog):
(JSC::HighFidelityLog::processHighFidelityLog):
* runtime/HighFidelityLog.h:
(JSC::HighFidelityLog::LogEntry::structureIDOffset):
(JSC::HighFidelityLog::LogEntry::valueOffset):
(JSC::HighFidelityLog::LogEntry::locationOffset):
(JSC::HighFidelityLog::recordTypeInformationForLocation):
(JSC::HighFidelityLog::logEndPtr):
(JSC::HighFidelityLog::logStartOffset):
(JSC::HighFidelityLog::currentLogEntryOffset):
* runtime/HighFidelityTypeProfiler.cpp:
(JSC::HighFidelityTypeProfiler::logTypesForTypeLocation):
(JSC::descriptorMatchesTypeLocation):
* runtime/HighFidelityTypeProfiler.h:
* runtime/SymbolTable.cpp:
(JSC::SymbolTable::SymbolTable):
(JSC::SymbolTable::cloneCapturedNames):
(JSC::SymbolTable::prepareForHighFidelityTypeProfiling):
(JSC::SymbolTable::uniqueIDForVariable):
(JSC::SymbolTable::uniqueIDForRegister):
(JSC::SymbolTable::globalTypeSetForRegister):
(JSC::SymbolTable::globalTypeSetForVariable):
* runtime/SymbolTable.h:
(JSC::SymbolTable::add):
(JSC::SymbolTable::set):
* runtime/TypeLocationCache.cpp:
(JSC::TypeLocationCache::getTypeLocation):
* runtime/TypeSet.cpp:
(JSC::TypeSet::getRuntimeTypeForValue):
(JSC::TypeSet::addTypeInformation):
(JSC::TypeSet::allPrimitiveTypeNames):
(JSC::TypeSet::addTypeForValue): Deleted.
* runtime/TypeSet.h:
* runtime/VM.cpp:
(JSC::VM::VM):
(JSC::VM::nextTypeLocation):
(JSC::VM::enableHighFidelityTypeProfiling):
(JSC::VM::disableHighFidelityTypeProfiling):
(JSC::VM::dumpHighFidelityProfilingTypes):
* runtime/VM.h:
(JSC::VM::nextLocation): Deleted.

Source/WebCore:

PageRuntimeAgent and WorkerRuntimeAgent now call their super
class's (InspectorRuntimeAgent) implementation of willDestroyFrontendAndBackend
to give InspectorRuntimeAgent a chance to recompile all JavaScript
functions, if necessary, for type profiling.

* inspector/PageRuntimeAgent.cpp:
(WebCore::PageRuntimeAgent::willDestroyFrontendAndBackend):
* inspector/WorkerRuntimeAgent.cpp:
(WebCore::WorkerRuntimeAgent::willDestroyFrontendAndBackend):

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

5 years ago[Win] Correct build when DerivedSources location not supplied by build environment
bfulgham@apple.com [Thu, 14 Aug 2014 22:22:02 +0000 (22:22 +0000)]
[Win] Correct build when DerivedSources location not supplied by build environment
https://bugs.webkit.org/show_bug.cgi?id=135954
<rdar://problem/18023620>

Reviewed by Joseph Pecoraro.

The DerivedSourcesDirectory is not always defined, depending on what
solution is being used to build this project. Instead, just define
it directly, since we already know where it needs to go.

Also:
1. Stop redirecting the copy output to NUL so I can see if this fails in the future.
2. Make sure the target directory exists before copying to it.

* WebCore.vcxproj/copyForwardingHeaders.cmd: Properly specify
the directories for copying the JS file.

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

5 years agoFixed a bmalloc crash seen on the EWS bot
ggaren@apple.com [Thu, 14 Aug 2014 21:39:47 +0000 (21:39 +0000)]
Fixed a bmalloc crash seen on the EWS bot
https://bugs.webkit.org/show_bug.cgi?id=135955

Reviewed by Andreas Kling.

* bmalloc/Syscall.h: Some CG APIs vm_copy their input buffers. If the
input buffer is a malloc region, that region will get marked Copy-On-Write
by the kernel. Calls to madvise() for COW regions fail and return EINVAL
on older OS X's. In 10.10, they still fail, but they do not return
EINVAL.

So, we can only ASSERT that our syscalls succeed starting with 10.10.

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

5 years ago[CSS3-Text] Cosmetics on RenderBlockFlow::textAlignmentForLine
zoltan@webkit.org [Thu, 14 Aug 2014 21:36:40 +0000 (21:36 +0000)]
[CSS3-Text] Cosmetics on RenderBlockFlow::textAlignmentForLine
https://bugs.webkit.org/show_bug.cgi?id=135940

Reviewed by Darin Adler.

Processing the not CSS3_TEXT case first, and removing an extra whitespace after r172524.

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::textAlignmentForLine):

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

5 years agoWeb Inspector: Avoid re-binding the same function over and over
commit-queue@webkit.org [Thu, 14 Aug 2014 21:34:36 +0000 (21:34 +0000)]
Web Inspector: Avoid re-binding the same function over and over
https://bugs.webkit.org/show_bug.cgi?id=135949

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-14
Reviewed by Timothy Hatcher.

* UserInterface/Controllers/TimelineManager.js:
(WebInspector.TimelineManager.prototype._startAutoCapturing):
(WebInspector.TimelineManager.prototype._stopAutoRecordingSoon):
(WebInspector.TimelineManager.prototype._resetAutoRecordingDeadTimeTimeout):
Stash a bound copy of the function once, and reuse it.

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

5 years agoFixed the bmalloc build
ggaren@apple.com [Thu, 14 Aug 2014 21:17:36 +0000 (21:17 +0000)]
Fixed the bmalloc build
https://bugs.webkit.org/show_bug.cgi?id=135953

Reviewed by Andreas Kling.

* bmalloc.xcodeproj/project.pbxproj: Marked a few headers as private.
These headers are used, so they must be available outside the project.

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

5 years ago[Win] Extend auto-version and version-stamp for RC_ProjectBuildVersion
bfulgham@apple.com [Thu, 14 Aug 2014 21:09:15 +0000 (21:09 +0000)]
[Win] Extend auto-version and version-stamp for RC_ProjectBuildVersion
https://bugs.webkit.org/show_bug.cgi?id=135948
<rdar://problem/18022221>

Reviewed by David Kilzer.

Tools:

* Scripts/webkitperl/auto-version_unittest/autoVersionTests.pl: Add tests
for RC_ProjectBuildVersion.

WebKitLibraries:

* win/tools/scripts/auto-version.pl:
(splitVersion): Use RC_ProjectBuildVersion (or RC_PROJECTBUILDVERSION) if set
in the environment as the 'Build Version', unless the multi-tuple version
supplied by RC_ProjectSourceVersion already has a fourth component.
* win/tools/scripts/version-stamp.pl: Check for RC_ProjectBuildVersion and
use it in preference to RC_PROJECTBUILDVERSION.

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

5 years agoIndexedDB should respect SchemeRegistry's database access setting.
mhock@apple.com [Thu, 14 Aug 2014 21:04:45 +0000 (21:04 +0000)]
IndexedDB should respect SchemeRegistry's database access setting.
https://bugs.webkit.org/show_bug.cgi?id=135890
<rdar://problem/17989469>

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Test: storage/indexeddb/open-db-private-browsing.html

* Modules/indexeddb/IDBFactory.cpp:

LayoutTests:

* storage/indexeddb/open-db-private-browsing-expected.txt: Added.
* storage/indexeddb/open-db-private-browsing.html: Added. Simple test to open database in private browsing mode.
* storage/indexeddb/resources/open-db-private-browsing.js: Added.

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

5 years ago[iOS] run-webkit-tests runs webkit-build-directory on every test
dfarler@apple.com [Thu, 14 Aug 2014 20:58:18 +0000 (20:58 +0000)]
[iOS] run-webkit-tests runs webkit-build-directory on every test
https://bugs.webkit.org/show_bug.cgi?id=135409

Reviewed by Daniel Bates.

* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort.__init__): Cache Mac build directory.
(IOSSimulatorPort.relay_path): Use cached build directory.
(IOSSimulatorPort._path_to_image_diff): Use cached build directory.

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

5 years agoWeb Inspector: Timelines can get caught in requestAnimationFrame loop when not recording
commit-queue@webkit.org [Thu, 14 Aug 2014 20:40:17 +0000 (20:40 +0000)]
Web Inspector: Timelines can get caught in requestAnimationFrame loop when not recording
https://bugs.webkit.org/show_bug.cgi?id=135946

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-14
Reviewed by Timothy Hatcher.

Each TimelineContentView was listening for the TimelineManager's start/stop
capturing events. However, only the active recording could possibly update.
Likewise, if a pre-existing recording started and stopped we did not properly
stop in the case where we were waiting for an event to update the current time,
which would result in an infinite rAF loop of no updates.

* UserInterface/Models/TimelineRecording.js:
(WebInspector.TimelineRecording.prototype.unloaded):
When a timeline recording is unloaded trigger an event.

* UserInterface/Views/TimelineContentView.js:
(WebInspector.TimelineContentView.prototype._startUpdatingCurrentTime):
Assert we were not already waiting.

(WebInspector.TimelineContentView.prototype._stopUpdatingCurrentTime):
Properly handle the case of starting/stoping an already existing recording
without a new event coming in.

(WebInspector.TimelineContentView.prototype._recordingTimesUpdated):
(WebInspector.TimelineContentView.prototype._recordingReset):
Convert to a boolean instead of deleting state.

(WebInspector.TimelineContentView.prototype._recordingUnloaded):
Stop listening to timeline manager events that no longer affect unloaded recordings.

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

5 years agosrcset with w descriptor doesn't behave as expected when sizes is not supported.
yoav@yoav.ws [Thu, 14 Aug 2014 19:46:43 +0000 (19:46 +0000)]
srcset with w descriptor doesn't behave as expected when sizes is not supported.
https://bugs.webkit.org/show_bug.cgi?id=135935

Reviewed by Dean Jackson.

In current implementation, if sizes is not supported, when authors would write
markup such as `<img src=fallback.jpg srcset="100px.jpg 100w, 400px.jpg 400w">`
the first candidate in srcset would be picked, regardless of its dimensions
That is likely to be confusing for authors.
Dropping these "not yet supported" candidates is likely to be less confusing,
and will result in the "fallback.jpg" candidate being picked.

No new tests since this change only concerns builds that are built
with the PICTURE_SIZES compile flag turned off.

* html/parser/HTMLSrcsetParser.cpp:
(WebCore::parseDescriptors):
Drop candidates that include either 'w' or 'h' descriptors when the
sizes feature is not supported.

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

5 years agoMake inherited style and parent renderer references
antti@apple.com [Thu, 14 Aug 2014 19:38:37 +0000 (19:38 +0000)]
Make inherited style and parent renderer references
https://bugs.webkit.org/show_bug.cgi?id=135857

Reviewed by Andreas Kling.

We don't recurse into non-rendered subtrees anymore so they can't be null.
Also stop using Element::renderStyle() as it differs from e->renderer().style() in
some rare cases (that should be fixed).

* style/StyleResolveTree.cpp:
(WebCore::Style::RenderTreePosition::parent):
(WebCore::Style::RenderTreePosition::RenderTreePosition):
(WebCore::Style::RenderTreePosition::canInsert):
(WebCore::Style::RenderTreePosition::insert):
(WebCore::Style::RenderTreePosition::computeNextSibling):
(WebCore::Style::shouldCreateRenderer):
(WebCore::Style::styleForElement):
(WebCore::Style::createRendererIfNeeded):
(WebCore::Style::textRendererIsNeeded):
(WebCore::Style::createTextRendererIfNeeded):
(WebCore::Style::updateTextRendererAfterContentChange):
(WebCore::Style::attachChildren):
(WebCore::Style::attachDistributedChildren):
(WebCore::Style::attachShadowRoot):
(WebCore::Style::resetStyleForNonRenderedDescendants):
(WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded):
(WebCore::Style::attachRenderTree):
(WebCore::Style::resolveLocal):
(WebCore::Style::resolveShadowTree):
(WebCore::Style::updateBeforeOrAfterPseudoElement):
(WebCore::Style::resolveTree):

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

5 years agoUpdate scope resolution to assume that the parent activation is always there
oliver@apple.com [Thu, 14 Aug 2014 19:28:55 +0000 (19:28 +0000)]
Update scope resolution to assume that the parent activation is always there
https://bugs.webkit.org/show_bug.cgi?id=135947

Reviewed by Andreas Kling.

Another incremental step in removing the idea of lazily created
activations.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emitResolveClosure):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emitResolveClosure):
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

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

5 years ago[Forms] We should share RenderStyle object for optgroup and option element
antti@apple.com [Thu, 14 Aug 2014 18:54:56 +0000 (18:54 +0000)]
[Forms] We should share RenderStyle object for optgroup and option element
https://bugs.webkit.org/show_bug.cgi?id=88405

Reviewed by Andreas Kling.

We can remove this special case now.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::canShareStyleWithElement):

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

5 years ago[Services with UI] Selection services don't work inside <iframes>.
enrica@apple.com [Thu, 14 Aug 2014 18:36:10 +0000 (18:36 +0000)]
[Services with UI] Selection services don't work inside <iframes>.
https://bugs.webkit.org/show_bug.cgi?id=135941
<rdar://problem/17957690>

Reviewed by Tim Horton.

Need to map the selection rectangles using the correct FrameView.
When handling the click, we must use the selection from the focused frame.

* WebProcess/WebPage/mac/ServicesOverlayController.mm:
(WebKit::ServicesOverlayController::buildSelectionHighlight):
(WebKit::ServicesOverlayController::handleClick):

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

5 years ago<https://webkit.org/b/135909> Move helper applications out of the root of the framework.
mrowe@apple.com [Thu, 14 Aug 2014 18:17:10 +0000 (18:17 +0000)]
<https://webkit.org/b/135909> Move helper applications out of the root of the framework.

As described in <https://developer.apple.com/library/mac/technotes/tn2206/>, for bundles containing
a Versions directory there may be no other content at the top level of the bundle other than symlinks.
Upcoming changes to code signing will prevent bundles that violate this rule from being signed.

Reviewed by Sam Weinig.

Source/WebKit:

* WebKit.xcodeproj/project.pbxproj: Add the symlink to WebKitPluginHost.app in the Versions/A
directory of the framework rather than at the top level.

Source/WebKit2:

* Configurations/Base.xcconfig: Define a configuration setting that points to the content directory
of the framework. On OS X this is Versions/A. On iOS, where frameworks are shallow, this is the top level.
* Configurations/BaseLegacyProcess.xcconfig: Install the legacy processes in the content directory
of the framework.
* WebKit2.xcodeproj/project.pbxproj: Copy the legacy processes into the content directory of the
framework during engineering builds. Generate symlinks for the legacy processes to their locations
in Versions/Current. This is necessary because -[NSBundle pathForAuxiliaryExecutable:] only looks
at the top level of the framework wrapper.

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

5 years agoCreate activations eagerly
oliver@apple.com [Thu, 14 Aug 2014 18:07:00 +0000 (18:07 +0000)]
Create activations eagerly
https://bugs.webkit.org/show_bug.cgi?id=135942

Reviewed by Geoffrey Garen.

Prepare to rewrite activation objects into a more
sane implementation. Step 1 is reverting to eager
creation of the activation object. This results in
a 1.35x regression in earley, but otherwise has a
minimal performance impact.

The earley regression is being tracked by bug #135943

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitNewFunctionInternal):
(JSC::BytecodeGenerator::emitNewFunctionExpression):
(JSC::BytecodeGenerator::emitCallEval):
(JSC::BytecodeGenerator::emitPushWithScope):
(JSC::BytecodeGenerator::emitPushCatchScope):
(JSC::BytecodeGenerator::createActivationIfNecessary): Deleted.
* bytecompiler/BytecodeGenerator.h:
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_create_activation):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_create_activation):
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

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

5 years agoUnreviewed. Removing empty directories.
achristensen@apple.com [Thu, 14 Aug 2014 17:59:53 +0000 (17:59 +0000)]
Unreviewed.  Removing empty directories.

* qt: Removed.
* qt/declarative: Removed.
* qt/docs: Removed.
* qt/docs/webkitsnippets: Removed.
* qt/examples: Removed.
* qt/tests: Removed.
* qt/tests/MIMESniffing: Removed.
* qt/tests/benchmarks: Removed.
* qt/tests/qgraphicswebview: Removed.
* qt/tests/qwebelement: Removed.
* qt/tests/qwebframe: Removed.
* qt/tests/qwebhistory: Removed.
* qt/tests/qwebpage: Removed.
* qt/tests/qwebsecurityorigin: Removed.
* qt/tests/qwebview: Removed.

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

5 years agoWebKit2GTK - WebKitWebProcess assertion fails when dragging and dropping a file into...
commit-queue@webkit.org [Thu, 14 Aug 2014 17:52:35 +0000 (17:52 +0000)]
WebKit2GTK - WebKitWebProcess assertion fails when dragging and dropping a file into the view
https://bugs.webkit.org/show_bug.cgi?id=127576

Patch by Michael Catanzaro <mcatanzaro@igalia.com> on 2014-08-14
Reviewed by Carlos Garcia Campos.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::performDragControllerAction): Assume read access
to any file that has been dragged into the web view when compiling for
GTK, since we don't support sandbox extensions.

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

5 years agoRemove nonRendererStyle
antti@apple.com [Thu, 14 Aug 2014 17:49:55 +0000 (17:49 +0000)]
Remove nonRendererStyle
https://bugs.webkit.org/show_bug.cgi?id=135938

Reviewed by Andreas Kling.

It is used to support styling of non-renderer option elements. We have a better
mechanism for this, Element::computedStyle().

* dom/Element.cpp:
(WebCore::Element::resetComputedStyle):
(WebCore::Element::willResetComputedStyle):

    Add a virtual callback for computed style reset.

* dom/Element.h:
* dom/Node.h:
(WebCore::Node::nonRendererStyle): Deleted.
* dom/NodeRenderStyle.h:
(WebCore::Node::renderStyle):

    renderStyle() now always matches renderer()->style()

* html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::HTMLOptGroupElement):
(WebCore::HTMLOptGroupElement::isFocusable):
(WebCore::HTMLOptGroupElement::didAttachRenderers): Deleted.
(WebCore::HTMLOptGroupElement::willDetachRenderers): Deleted.
(WebCore::HTMLOptGroupElement::updateNonRenderStyle): Deleted.
(WebCore::HTMLOptGroupElement::nonRendererStyle): Deleted.
(WebCore::HTMLOptGroupElement::customStyleForRenderer): Deleted.
* html/HTMLOptGroupElement.h:
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::isFocusable):

    Use computedStyle.

(WebCore::HTMLOptionElement::willResetComputedStyle):
(WebCore::HTMLOptionElement::didAttachRenderers): Deleted.
(WebCore::HTMLOptionElement::willDetachRenderers): Deleted.
(WebCore::HTMLOptionElement::updateNonRenderStyle): Deleted.
(WebCore::HTMLOptionElement::nonRendererStyle): Deleted.
(WebCore::HTMLOptionElement::customStyleForRenderer): Deleted.
(WebCore::HTMLOptionElement::didRecalcStyle): Deleted.
* html/HTMLOptionElement.h:
* rendering/RenderMenuList.cpp:
(RenderMenuList::updateOptionsWidth):
(RenderMenuList::setTextFromOption):

    Use computedStyle.

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

5 years agoAdd support for ppc, ppc64, ppc64le, s390, s390x into the CMake build
commit-queue@webkit.org [Thu, 14 Aug 2014 16:21:06 +0000 (16:21 +0000)]
Add support for ppc, ppc64, ppc64le, s390, s390x into the CMake build
https://bugs.webkit.org/show_bug.cgi?id=135937

Patch by Tomas Popela <tpopela@redhat.com> on 2014-08-14
Reviewed by Carlos Garcia Campos.

* CMakeLists.txt:

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

5 years agoInitialize a separate variable (TestWTF_SOURCES) with the list of files
zandobersek@gmail.com [Thu, 14 Aug 2014 16:08:24 +0000 (16:08 +0000)]
Initialize a separate variable (TestWTF_SOURCES) with the list of files
that are built into the TestWTF executable and move it above the platform-specific
config file inclusion. This makes it possible to add platform-specific files to that
list (e.g. GUniquePtr.cpp for the GTK port).

Rubber-stamped by Carlos Garcia Campos.

* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformGTK.cmake:

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

5 years ago[GTK] Unreviewed GTK gardening.
clopez@igalia.com [Thu, 14 Aug 2014 15:58:28 +0000 (15:58 +0000)]
[GTK] Unreviewed GTK gardening.

* platform/gtk/TestExpectations: Update expectations with new identified failures and flakiness.
* platform/gtk/fast/ruby/ruby-base-merge-block-children-crash-2-expected.txt: Rebaseline after r172517.
* platform/gtk/fast/ruby/ruby/ruby-base-merge-block-children-crash-2-expected.png: Removed. File was in wrong path.
* platform/gtk/fast/ruby/ruby/ruby-base-merge-block-children-crash-2-expected.txt: Removed. File was in wrong path.
* platform/gtk/inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt: Rebaseline after r172136.
* platform/gtk/scrollbars/scrollbar-selectors-expected.txt: Added. Rebaseline after r172220.

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

5 years ago[MSE] Altering the quality of a YouTube video will cause the video to distort and...
jer.noble@apple.com [Thu, 14 Aug 2014 15:13:03 +0000 (15:13 +0000)]
[MSE] Altering the quality of a YouTube video will cause the video to distort and display an error message
https://bugs.webkit.org/show_bug.cgi?id=135931

Reviewed by Eric Carlson.

When removing samples from the TrackBuffer's sample map, also remove those samples from the
TrackBuffer's decode queue. Otherwise, removed samples may persist in the decode queue and
either break sync-sample dependencies or cause decoding artifacts.

Pull the code which removes samples from a track buffer into its own utility function, and
use this function both from removeCodedFrames(), and also when samples are removed due to
overlapping appends in sourceBufferPrivateDidReceiveSample(). In order to reference
TrackBuffers outside of SourceBuffer (and in the static removeSamplesFromTrackBuffer()
function), make TrackBuffer a public forward declaration.

* Modules/mediasource/SourceBuffer.cpp:
(WebCore::removeSamplesFromTrackBuffer):
(WebCore::SourceBuffer::removeCodedFrames):
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):
* Modules/mediasource/SourceBuffer.h:

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

5 years ago[GTK] REGRESSION(r171598, CMake): Introspection files are installed at the wrong...
carlosgc@webkit.org [Thu, 14 Aug 2014 13:10:37 +0000 (13:10 +0000)]
[GTK] REGRESSION(r171598, CMake): Introspection files are installed at the wrong path
https://bugs.webkit.org/show_bug.cgi?id=135934

Reviewed by Gustavo Noronha Silva.

Since r171598 gir files are installed under $datadir/webkitgtk-4.0/gir-1.0/.
The gir files should installed in $datadir/gir-1.0/ together with all other
gir files. We don't need to install introspection files in a versioned
directory because their filenames already contain the binary version. But before
r171598, the files were only installed to the right directory if the
gobject-instrospection pkg-config file was in the same prefix than the one we
wanted to install, because the gir and typelibs directories were extracted from
the pkg-config file. We should define INTROSPECTION_INSTALL_GIRDIR and
INTROSPECTION_INSTALL_TYPELIBDIR in OptionsGTK.cmake based on $datadir and $libdir
like we do in the autotools build.

* Source/cmake/FindGObjectIntrospection.cmake: Do not define
INTROSPECTION_INSTALL_GIRDIR and INTROSPECTION_INSTALL_TYPELIBDIR.
* Source/cmake/OptionsGTK.cmake: Define
INTROSPECTION_INSTALL_GIRDIR and INTROSPECTION_INSTALL_TYPELIBDIR.

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

5 years ago[CSSRegions] Move svg tests into fast/regions/svg
mihnea@adobe.com [Thu, 14 Aug 2014 11:13:02 +0000 (11:13 +0000)]
[CSSRegions] Move svg tests into fast/regions/svg
https://bugs.webkit.org/show_bug.cgi?id=135883

Reviewed by Andrei Bucur.

Move tests and adjust paths accordingly.

* fast/regions/svg/svg-doc-fragment-not-collected-expected.html: Renamed from LayoutTests/fast/regions/svg-doc-fragment-not-collected-expected.html.
* fast/regions/svg/svg-doc-fragment-not-collected.html: Renamed from LayoutTests/fast/regions/svg-doc-fragment-not-collected.html.
* fast/regions/svg/svg-element-not-collected-expected.html: Renamed from LayoutTests/fast/regions/svg-element-not-collected-expected.html.
* fast/regions/svg/svg-element-not-collected.html: Renamed from LayoutTests/fast/regions/svg-element-not-collected.html.
* fast/regions/svg/svg-root-element-collected-expected.txt: Renamed from LayoutTests/fast/regions/svg-root-element-collected-expected.txt.
* fast/regions/svg/svg-root-element-collected.html: Renamed from LayoutTests/fast/regions/svg-root-element-collected.html.
* fast/regions/svg/symbol-in-named-flow-crash-expected.txt: Renamed from LayoutTests/fast/regions/symbol-in-named-flow-crash-expected.txt.
* fast/regions/svg/symbol-in-named-flow-crash.svg: Renamed from LayoutTests/fast/regions/symbol-in-named-flow-crash.svg.

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

5 years ago[GTK] WebKit DOM documentation (webkitdomgtk) not installed after make install
carlosgc@webkit.org [Thu, 14 Aug 2014 10:31:39 +0000 (10:31 +0000)]
[GTK] WebKit DOM documentation (webkitdomgtk) not installed after make install
https://bugs.webkit.org/show_bug.cgi?id=135836

Reviewed by Philippe Normand.

* Source/PlatformGTK.cmake: Add install command to also install
the GObject DOM bindings API docs.

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

5 years agoImageBufferDataCairo.h is missing header guards
zandobersek@gmail.com [Thu, 14 Aug 2014 09:35:00 +0000 (09:35 +0000)]
ImageBufferDataCairo.h is missing header guards
https://bugs.webkit.org/show_bug.cgi?id=135933

Reviewed by Philippe Normand.

* platform/graphics/cairo/ImageBufferDataCairo.h:
Add the missing head guards to avoid problems when re-inclusion occurs.

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

5 years agoUnreviewed. In r165709 I mistakenly appended the -fno-exceptions
zandobersek@gmail.com [Thu, 14 Aug 2014 09:33:58 +0000 (09:33 +0000)]
Unreviewed. In r165709 I mistakenly appended the -fno-exceptions
and -fno-strict-aliasing compiler flags to CMAKE_CXX_FLAGS and then
re-set CMAKE_C_FLAGS with the new string. The two flags should really
be appended to CMAKE_C_FLAGS and the same variable re-set with the
new string.

* Source/cmake/OptionsCommon.cmake:

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

5 years agoFix JSC::ARM64Assembler::LinkRecord::RealTypes
commit-queue@webkit.org [Thu, 14 Aug 2014 08:49:48 +0000 (08:49 +0000)]
Fix JSC::ARM64Assembler::LinkRecord::RealTypes
https://bugs.webkit.org/show_bug.cgi?id=135906

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-08-14
Reviewed by Michael Saboff.

JSC::ARM64Assembler::LinkRecord::RealTypes::m_compareRegister is defined
to occupy 5 bits but JSC::ARM64Assembler::RegisterID needs 6 bits. So,
increase the size of the bit field and also reorganize the struct to
better align with word boundaries.

* assembler/ARM64Assembler.h:

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

5 years agoAttempt to fix the build following <http://trac.webkit.org/changeset/172576>
dbates@webkit.org [Thu, 14 Aug 2014 05:09:32 +0000 (05:09 +0000)]
Attempt to fix the build following <trac.webkit.org/changeset/172576>
(https://bugs.webkit.org/show_bug.cgi?id=135895)

Substitute PerThreadStorage<T>::initSharedKeyIfNeeded() for initSharedKeyIfNeeded() in
implementation of PerThread<T>::getFastCase().

* bmalloc/PerThread.h:
(bmalloc::PerThread<T>::getFastCase):

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

5 years agoMake bmalloc::PerThread work without C++ thread local storage
dbates@webkit.org [Thu, 14 Aug 2014 05:00:22 +0000 (05:00 +0000)]
Make bmalloc::PerThread work without C++ thread local storage
https://bugs.webkit.org/show_bug.cgi?id=135895

Reviewed by Geoffrey Garen.

Implement support for building bmalloc without C++ thread local storage.

* bmalloc/BPlatform.h: Remove macro define BPLATFORM_IOS_SIMULATOR. Added macro function
BCOMPILER_SUPPORTS() and macro define BCOMPILER_SUPPORTS_CXX_THREAD_LOCAL that can be used
to determine whether the compiler supports C++ thread local storage.
* bmalloc/PerThread.h:
(bmalloc::PerThreadStorage::get): Modified to call pthread_getspecific() when building
without C++ thread local storage.
(bmalloc::PerThreadStorage::initSharedKeyIfNeeded): Added.
(bmalloc::PerThreadStorage::init): Moved logic to initialize shared Pthread key from here to
PerThreadStorage::initSharedKeyIfNeeded().
(bmalloc::PerThread<T>::getFastCase): Modified to call PerThreadStorage::initSharedKeyIfNeeded()
before querying PerThreadStorage::get() when building without C++ thread local storage so as to
ensure that the shared key has been initialized.
(_pthread_setspecific_direct): Deleted.
(_pthread_getspecific_direct): Deleted.

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

5 years agoAdd ARM64 support to CMake-based builds
commit-queue@webkit.org [Thu, 14 Aug 2014 02:53:35 +0000 (02:53 +0000)]
Add ARM64 support to CMake-based builds
https://bugs.webkit.org/show_bug.cgi?id=135912

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-08-13
Reviewed by Gyuyoung Kim.

This patch ensures that CMake does not fail with Unknown CPU error when
building for ARM64.

* CMakeLists.txt:

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

5 years ago[EFL] Bump up and patch dependencies to allow building for aarch64
commit-queue@webkit.org [Thu, 14 Aug 2014 02:52:22 +0000 (02:52 +0000)]
[EFL] Bump up and patch dependencies to allow building for aarch64
https://bugs.webkit.org/show_bug.cgi?id=135885

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-08-13
Reviewed by Gyuyoung Kim.

The currently used versions of pixman, libffi, glib, glib-networking,
and fontconfig fail to configure for aarch64, so they are bumped up to
the latest stable version.

Gstreamer-plugins-base configures for aarch64 but incorrectly recogizes
ARM NEON assembly support, so it is patched with a change that has been
accepted by upstream.

* efl/jhbuild.modules:
* efl/patches/gst-prevent-neon-check-in-configure-from-passing-under-aarch64.patch: Added.

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

5 years agoEnable CSS_SCROLL_SNAP for iOS
commit-queue@webkit.org [Thu, 14 Aug 2014 01:22:58 +0000 (01:22 +0000)]
Enable CSS_SCROLL_SNAP for iOS
https://bugs.webkit.org/show_bug.cgi?id=135915

Turn on CSS_SCROLL_SNAP for iOS and the iOS simulator.

Patch by Wenson Hsieh <wenson_hsieh@apple.com> on 2014-08-13
Reviewed by Tim Horton.

* Configurations/FeatureDefines.xcconfig:

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

5 years agoWeb Inspector: eslint configuration should be stored as .eslintrc
jonowells@apple.com [Thu, 14 Aug 2014 01:13:15 +0000 (01:13 +0000)]
Web Inspector: eslint configuration should be stored as .eslintrc
https://bugs.webkit.org/show_bug.cgi?id=135916

.eslintrc file added to allow for ESLint solutions, within editors and otherwise,
to be automatically configured based on the WebKit JavaScript coding style. The
initial file is incomplete.

Reviewed by Joseph Pecoraro.

* .eslintrc: Added.
* External/.eslintrc: Added.

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

5 years ago[Services with UI] Use a longer delay duration for editable content.
enrica@apple.com [Thu, 14 Aug 2014 00:39:28 +0000 (00:39 +0000)]
[Services with UI] Use a longer delay duration for editable content.
https://bugs.webkit.org/show_bug.cgi?id=135918
<rdar://problem/17998929>

Reviewed by Tim Horton.

Use a 1 second delay for selections in editable content.

* WebProcess/WebPage/mac/ServicesOverlayController.mm:
(WebKit::ServicesOverlayController::remainingTimeUntilHighlightShouldBeShown):

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

5 years agoLand correct results for compositing/fixed-image-loading.html on WK1 and WK2.
simon.fraser@apple.com [Thu, 14 Aug 2014 00:23:58 +0000 (00:23 +0000)]
Land correct results for compositing/fixed-image-loading.html on WK1 and WK2.

* compositing/fixed-image-loading-expected.txt:
* platform/mac-wk2/compositing/fixed-image-loading-expected.txt: Added.

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

5 years agoWeb Inspector: Missing semicolon after console.assert in TimelineSidebarPanel.js
timothy@apple.com [Thu, 14 Aug 2014 00:23:11 +0000 (00:23 +0000)]
Web Inspector: Missing semicolon after console.assert in TimelineSidebarPanel.js
https://bugs.webkit.org/show_bug.cgi?id=135917

Reviewed by Joseph Pecoraro.

* UserInterface/Views/TimelineSidebarPanel.js:

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

5 years agoCompute and store snap point positions
commit-queue@webkit.org [Thu, 14 Aug 2014 00:16:03 +0000 (00:16 +0000)]
Compute and store snap point positions
https://bugs.webkit.org/show_bug.cgi?id=135268

Patch by Wenson Hsieh <wenson_hsieh@apple.com> on 2014-08-13
Reviewed by Simon Fraser.

Working towards implementing a way to extract snap positions (i.e. LayoutUnits) from the parsed snap point properties from CSS,
as well as a way of storing the information. Supports both mainframe and overflow scrolling.

No changes in behavior. I will write tests when I implement snapping for iOS and Mac.

* WebCore.xcodeproj/project.pbxproj:
* page/FrameView.cpp:
(WebCore::FrameView::updateSnapOffsets): Invokes the static routine in AxisScrollSnapOffsets to update snap offsets for mainframe.
* page/FrameView.h:
* page/scrolling/AxisScrollSnapOffsets.cpp: Added.
(WebCore::appendAndSortChildSnapOffsets):
(WebCore::updateFromStyle):
(WebCore::updateSnapOffsetsForScrollableArea): Update the ScrollableArea's snap axes.
* page/scrolling/AxisScrollSnapOffsets.h: Added.
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::setHorizontalSnapOffsets):
(WebCore::ScrollableArea::setVerticalSnapOffsets):
(WebCore::ScrollableArea::clearHorizontalSnapOffsets): Resets the unique_ptr for horizontal snap points.
(WebCore::ScrollableArea::clearVerticalSnapOffsets): Resets the unique_ptr for vertical snap points.
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::horizontalSnapOffsets): Returns a pointer to the ScrollableArea's horizontal snap points.
(WebCore::ScrollableArea::verticalSnapOffsets): Returns a pointer to the ScrollableArea's vertical snap points.
(WebCore::ScrollableArea::updateSnapOffsets):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateSnapOffsets): Invokes the static routine in AxisScrollSnapOffsets to update snap offsets for an overflow area.
* rendering/RenderLayer.h:

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

5 years ago<https://webkit.org/b/135911> WebKit should build on Yosemite with the public SDK.
mrowe@apple.com [Wed, 13 Aug 2014 23:55:10 +0000 (23:55 +0000)]
<https://webkit.org/b/135911> WebKit should build on Yosemite with the public SDK.

Reviewed by Darin Adler.

Source/WebCore:

* rendering/RenderThemeMac.mm: Fix the forward-declaration of NSServicesRolloverButtonCell.

Source/WebKit/mac:

* Misc/WebSharingServicePickerController.mm: Forward-declare some details related to NSSharingServicePicker.

Source/WebKit2:

* Platform/IPC/mac/ImportanceAssertion.h: Forward-declare the new assertion functions we use.
* UIProcess/mac/WebContextMenuProxyMac.mm: Forward-declare some details related to NSSharingServicePicker.

Tools:

* DumpRenderTree/mac/TextInputController.m: Don't use extern "C" in a non-C++ file.

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

5 years agoiOS build fix.
ap@apple.com [Wed, 13 Aug 2014 23:35:40 +0000 (23:35 +0000)]
iOS build fix.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::ensureNetworkProcess):
(WebKit::WebContext::createNewWebProcess):

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

5 years agoProgress towards CMake on Mac.
achristensen@apple.com [Wed, 13 Aug 2014 22:53:12 +0000 (22:53 +0000)]
Progress towards CMake on Mac.
https://bugs.webkit.org/show_bug.cgi?id=135819

Reviewed by Laszlo Gombos.

.:

* Source/cmake/OptionsMac.cmake:
Disable some more features temporarily to get CMake working.
* Source/cmake/WebKitMacros.cmake:
Added an extension parameter to GENERATE_BINDINGS to allow ObjC bindings to generate .mm files.

Source/JavaScriptCore:

* CMakeLists.txt:
Add the remote inspector headers to the forwarding headers list.

Source/WebCore:

* CMakeLists.txt:
Include derived sources directory, which is needed by Apple ports.
Separated svg and non-svg idls for ObjC bindings.
Don't build the new gamepad API right now.  It's causing naming conflicts and it's not done.
Process CSSUnknownRule.idl.
* PlatformGTK.cmake:
Added cpp as the extension of the generated bindings.
* PlatformMac.cmake:
Include more directories and sources.
Add forwarding headers.
Generate ObjC bindings.
* bindings/objc/DOMUIKitExtensions.mm:
Moved config.h to recognize the PLATFORM macro.
* bindings/scripts/CodeGeneratorObjC.pm:
(ReadPublicInterfaces):
(GenerateInterface):
Added some workarounds for CMake.
* bindings/scripts/IDLAttributes.txt:
Added missing attribute names.
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
Added PLATFORM(IOS) to protect IOS_AIRPLAY code.
* platform/mac/PasteboardMac.mm:
Added necessary DRAG_SUPPORT protection.
* platform/text/mac/TextCodecMac.cpp:
Moved config.h to recognize the PLATFORM macro.

Tools:

* WebKitTestRunner/CMakeLists.txt:
Added new cpp parameter for the extension of the generated files.

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

6 years agoOpening Web Inspector causes a large amount of sandbox violations
commit-queue@webkit.org [Wed, 13 Aug 2014 22:30:47 +0000 (22:30 +0000)]
Opening Web Inspector causes a large amount of sandbox violations
https://bugs.webkit.org/show_bug.cgi?id=135908

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-13
Reviewed by Timothy Hatcher.

* WebProcess/com.apple.WebProcess.sb.in:
Permit the WebContent process to create file read extensions for the
system WebInspectorUI.framework which the Network process can already
read anyways.

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

6 years ago[MSE] Replacing existing samples with overlapping new samples will cause playback...
jer.noble@apple.com [Wed, 13 Aug 2014 22:15:30 +0000 (22:15 +0000)]
[MSE] Replacing existing samples with overlapping new samples will cause playback to stutter.
https://bugs.webkit.org/show_bug.cgi?id=135902

Reviewed by Eric Carlson.

Only mark the TrackBuffer as needing re-enqueueing if the samples removed by overlapping samples
themselves overlap with potentially enqueued but not yet displayed frames.

* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):

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

6 years agoFix the test result for MountainLion and Mavericks, which don't composite fixed position.
simon.fraser@apple.com [Wed, 13 Aug 2014 21:39:46 +0000 (21:39 +0000)]
Fix the test result for MountainLion and Mavericks, which don't composite fixed position.

* compositing/fixed-image-loading-expected.txt:

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

6 years agoCSSValueList should never contain null values.
akling@apple.com [Wed, 13 Aug 2014 21:06:23 +0000 (21:06 +0000)]
CSSValueList should never contain null values.
<https://webkit.org/b/135887>

It's not legal for a CSSValueList to contain null CSSValues, so make
it store a Vector of Ref<CSSValue> internally instead.

This allows the compiler to avoid emitting a number of null checks.
It will also allow a future patch to make CSSValueList vend CSSValue&
instead of CSSValue*.

Most of the patch is fixing up things on their way into a CSSValueList
to not be null at the call site, now that append() and prepend() are
taking PassRef instead of PassRefPtr.

Reviewed by Sam Weinig.

* css/BasicShapeFunctions.cpp:
(WebCore::valueForBasicShape):
* css/BasicShapeFunctions.h:
* css/CSSBorderImage.cpp:
(WebCore::createBorderImageValue):
* css/CSSBorderImage.h:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForImageSliceSide):
(WebCore::valueForNinePieceImageSlice):
(WebCore::valueForNinePieceImageQuad):
(WebCore::valueForNinePieceImage):
(WebCore::getBorderRadiusShorthandValue):
(WebCore::ComputedStyleExtractor::valueForShadow):
(WebCore::ComputedStyleExtractor::valueForFilter):
(WebCore::specifiedValueForGridTrackSize):
(WebCore::addValuesForNamedGridLinesAtIndex):
(WebCore::scrollSnapCoordinates):
(WebCore::createTimingFunctionValue):
(WebCore::fillSourceTypeToCSSValue):
(WebCore::contentToCSSValue):
(WebCore::shapePropertyValue):
(WebCore::ComputedStyleExtractor::propertyValue):
(WebCore::ComputedStyleExtractor::getCSSPropertyValuesForShorthandProperties):
(WebCore::ComputedStyleExtractor::getCSSPropertyValuesForSidesShorthand):
(WebCore::ComputedStyleExtractor::getCSSPropertyValuesForGridShorthand):
(WebCore::ComputedStyleExtractor::getBackgroundShorthandValue):
* css/CSSComputedStyleDeclaration.h:
* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::addFontFaceRule):
* css/CSSParser.cpp:
(WebCore::createPrimitiveValuePair):
(WebCore::parseTranslateTransformValue):
(WebCore::CSSParser::createPrimitiveNumericValue):
(WebCore::CSSParser::createPrimitiveStringValue):
(WebCore::CSSParser::addFillValue):
(WebCore::CSSParser::parseNonElementSnapPoints):
(WebCore::CSSParser::parseScrollSnapDestination):
(WebCore::CSSParser::parseFillShorthand):
(WebCore::CSSParser::addAnimationValue):
(WebCore::CSSParser::parseAnimationShorthand):
(WebCore::CSSParser::parseTransitionShorthand):
(WebCore::CSSParser::parseQuotes):
(WebCore::CSSParser::parseContent):
(WebCore::CSSParser::parseFillProperty):
(WebCore::CSSParser::parseAnimationProperty):
(WebCore::CSSParser::parseGridPosition):
(WebCore::CSSParser::parseGridTemplateRowsAndAreas):
(WebCore::CSSParser::parseGridLineNames):
(WebCore::CSSParser::parseGridTrackList):
(WebCore::CSSParser::parseGridTrackRepeatFunction):
(WebCore::CSSParser::parseGridTrackSize):
(WebCore::CSSParser::parseBasicShapeAndOrBox):
(WebCore::CSSParser::parseFontVariant):
(WebCore::CSSParser::parseTransform):
(WebCore::CSSParser::parseBuiltinFilterArguments):
(WebCore::CSSParser::parseFilter):
(WebCore::CSSParser::parseTextEmphasisStyle):
* css/CSSParser.h:
* css/CSSProperty.cpp:
(WebCore::CSSProperty::wrapValueInCommaSeparatedList):
* css/CSSValueList.cpp:
(WebCore::CSSValueList::CSSValueList):
(WebCore::CSSValueList::removeAll):
(WebCore::CSSValueList::hasValue):
(WebCore::CSSValueList::copy):
(WebCore::CSSValueList::customCSSText):
(WebCore::CSSValueList::equals):
(WebCore::CSSValueList::addSubresourceStyleURLs):
(WebCore::CSSValueList::hasFailedOrCanceledSubresources):
* css/CSSValueList.h:
(WebCore::CSSValueList::item):
(WebCore::CSSValueList::itemWithoutBoundsCheck):
(WebCore::CSSValueList::append):
(WebCore::CSSValueList::prepend):
* css/SVGCSSComputedStyleDeclaration.cpp:
(WebCore::paintOrder):
* css/SVGCSSParser.cpp:
(WebCore::CSSParser::parsePaintOrder):
* editing/EditingStyle.cpp:
(WebCore::mergeTextDecorationValues):
* editing/EditorCommand.cpp:
(WebCore::executeToggleStyleInList):
* svg/SVGFontFaceSrcElement.cpp:
(WebCore::SVGFontFaceSrcElement::srcValue):
* svg/SVGLength.cpp:
(WebCore::SVGLength::toCSSPrimitiveValue):
* svg/SVGLength.h:

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

6 years agoRemoved dead plugins code.
achristensen@apple.com [Wed, 13 Aug 2014 20:31:34 +0000 (20:31 +0000)]
Removed dead plugins code.
https://bugs.webkit.org/show_bug.cgi?id=135862

Reviewed by Alexey Proskuryakov.

* plugins/PluginDataNone.cpp: Removed.
* plugins/mac: Removed.
* plugins/mac/PluginPackageMac.cpp: Removed.
* plugins/mac/PluginViewMac.mm: Removed.

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

6 years ago[WK1] A fixed-position <img> may not show on page load
simon.fraser@apple.com [Wed, 13 Aug 2014 20:21:31 +0000 (20:21 +0000)]
[WK1] A fixed-position <img> may not show on page load
https://bugs.webkit.org/show_bug.cgi?id=135893

Reviewed by Tim Horton.

Source/WebCore:

A position:fixed image could fail to display because we didn't make a
compositing layer for it under some circumstances. This can happen if
RenderLayerCompositor::requiresCompositingForPosition() runs before the
image is loaded, in which cause the layer is zero-sized, so does not get
composited.

When the image loads, there was no code path that ensured that compositing
would be re-evaluated (unlike size changes due to style updates). Fix by
having RenderLayer::contentChanged() also check for ImageChanged.

Test: compositing/fixed-image-loading.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::contentChanged):

LayoutTests:

Test with a position:fixed image. Note that the test has to force layout
early on to test the bug.

* compositing/fixed-image-loading-expected.txt: Added.
* compositing/fixed-image-loading.html: Added.

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

6 years agoWeb Inspector: Inline DataGrid inside details sidebar has double thick top border...
commit-queue@webkit.org [Wed, 13 Aug 2014 20:14:47 +0000 (20:14 +0000)]
Web Inspector: Inline DataGrid inside details sidebar has double thick top border with legacy styles
https://bugs.webkit.org/show_bug.cgi?id=135894

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-13
Reviewed by Timothy Hatcher.

* UserInterface/Views/DetailsSection.css:
(body.mac-platform.legacy .details-section:not(.collapsed) .data-grid.inline):
In legacy styles the details-section header always has a 1px bottom border.
In all styles, an inline data grid had a 1px border everywhere. So, handle
this specific case by removing the top border of an inline data grid
that is inside an expanded details section.

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

6 years ago[iOS] Make JavaScriptCore and bmalloc build with the public SDK
dbates@webkit.org [Wed, 13 Aug 2014 19:43:25 +0000 (19:43 +0000)]
[iOS] Make JavaScriptCore and bmalloc build with the public SDK
https://bugs.webkit.org/show_bug.cgi?id=135848

Reviewed by Geoffrey Garen.

Source/bmalloc:

* bmalloc/BPlatform.h: Added macro BPLATFORM_IOS_SIMULATOR, which evaluates to true
when building for the iOS Simulator.
* bmalloc/PerThread.h: Use pthread_machdep.h code path when building for iOS Simulator
using the public SDK.
(_pthread_setspecific_direct): Added; only defined when building for the iOS Simulator
using the public SDK.
(_pthread_getspecific_direct): Added; only defined when building for the iOS Simulator
using the public SDK.

Source/JavaScriptCore:

* API/JSBase.h: Declare NSMap functions with external linkage when building for iOS without the
header <Foundation/NSMapTablePriv.h>.
* inspector/remote/RemoteInspector.mm: Define XPC functions with external linkage when building
without the system header <xpc/xpc.h>.
* inspector/remote/RemoteInspectorXPCConnection.h: Define xpc_connection_t and xpc_object_t when building
without the system header <xpc/xpc.h>.
* inspector/remote/RemoteInspectorXPCConnection.mm: Declare XPC functions with external linkage when
building without without the system header <xpc/xpc.h>.
(Inspector::RemoteInspectorXPCConnection::closeOnQueue): Fix code style; use nullptr instead of NULL.
(Inspector::RemoteInspectorXPCConnection::sendMessage): Ditto.

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

6 years agoWeb Inspector: "No Filter Results" view only shows once, does not show again
commit-queue@webkit.org [Wed, 13 Aug 2014 19:25:28 +0000 (19:25 +0000)]
Web Inspector: "No Filter Results" view only shows once, does not show again
https://bugs.webkit.org/show_bug.cgi?id=135892

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-13
Reviewed by Timothy Hatcher.

* UserInterface/Views/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel.prototype.showEmptyContentPlaceholder):
We were checking at the wrong level for a parent. Check if the root
placeholder element has a parent or not.

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

6 years agoWeb Inspector: Incorrect border colors in event listeners sections in details sidebar
commit-queue@webkit.org [Wed, 13 Aug 2014 19:12:07 +0000 (19:12 +0000)]
Web Inspector: Incorrect border colors in event listeners sections in details sidebar
https://bugs.webkit.org/show_bug.cgi?id=135891

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-13
Reviewed by Timothy Hatcher.

* UserInterface/Views/DetailsSection.css:
(.details-section .details-section > .header):
(.details-section .details-section:not(.collapsed) > .header):
Remove box-shadow and replace with a bottom border.

(body.mac-platform.legacy .details-section .details-section.collapsed > .header):
(.details-section .details-section.collaspsed > .header): Deleted.
Collapsed was spelled incorrectly so this was not applying properly before.
But correct this for legacy because legacy still uses a box-shadow.

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

6 years agoRefactor ShapeOutsideInfo so it isn't mutated for each line
bjonesbe@adobe.com [Wed, 13 Aug 2014 19:05:21 +0000 (19:05 +0000)]
Refactor ShapeOutsideInfo so it isn't mutated for each line
https://bugs.webkit.org/show_bug.cgi?id=135781

Reviewed by Zoltan Horvath.

Encapsulate the per line state into a ShapeOutsideDeltas object.
updateDeltasForContainingBlockLine has been renamed to
computeDeltasForContainingBlockLine, and it returns an instance of the
ShapeOutsideDeltas object for that line. This object is cached, but
none of the functionality of ShapeOutsideInfo is dependant on any line
specific data anymore.

No new tests, no behavior change.

* rendering/FloatingObjects.cpp:
(WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded):
    Update to take a FloatingObject reference because the FloatingObject cannot be null.
(WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded):
    Ditto.
(WebCore::ComputeFloatOffsetAdapter<FloatTypeValue>::collectIfNeeded): Pass FloatingObject to
    updateOffsetIfNeeded as a reference, since it cannot be null.
(WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded):
    Use ShapeOutsideDeltas object to calculate the offset and take the FloatingObject as a
    reference.
(WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded):
    Ditto.
(WebCore::shapeInfoForFloat): Deleted.
* rendering/line/LineWidth.cpp:
(WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Update to use ShapeOutsideDeltas object.
* rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::computeDeltasForContainingBlockLine): Return a ShaoeOutsideDeltas object
    instead of storing line specific data in instance variables.
(WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): Deleted.
* rendering/shapes/ShapeOutsideInfo.h:

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

6 years agoAvoid making new active service overlay highlights while the mouse is down
timothy_horton@apple.com [Wed, 13 Aug 2014 19:03:56 +0000 (19:03 +0000)]
Avoid making new active service overlay highlights while the mouse is down
https://bugs.webkit.org/show_bug.cgi?id=135872
<rdar://problem/17982341>

Reviewed by Enrica Casucci.

* WebProcess/WebPage/ServicesOverlayController.h:
* WebProcess/WebPage/mac/ServicesOverlayController.mm:
(WebKit::ServicesOverlayController::remainingTimeUntilHighlightShouldBeShown):
(WebKit::ServicesOverlayController::mouseEvent):
If the mouse is pressed or it's been less than 200ms since the mouse went up,
don't allow the highlight to change. We apply the mouse-is-pressed rule to telephone
number highlights as well, unlike the rest of the hysteresis logic.

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

6 years agoWeb Inspector: Timeline Close buttons can use polish for new and legacy styles
commit-queue@webkit.org [Wed, 13 Aug 2014 19:00:53 +0000 (19:00 +0000)]
Web Inspector: Timeline Close buttons can use polish for new and legacy styles
https://bugs.webkit.org/show_bug.cgi?id=135870

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-13
Reviewed by Timothy Hatcher.

* UserInterface/Images/Legacy/Close.svg:
Ensure this has fill colors in tree selections.

* UserInterface/Views/TimelineSidebarPanel.css:
(.sidebar > .panel.navigation.timeline > .timelines-content .close-button):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .timelines-content .close-button):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .content .item > .status > .status-button):
Size the close-button for the top overviews differently in new styles (14x14) and legacy (12x12).

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

6 years agoWeb Inspector: Workaround a NSWindow change to the title bar.
timothy@apple.com [Wed, 13 Aug 2014 18:58:23 +0000 (18:58 +0000)]
Web Inspector: Workaround a NSWindow change to the title bar.
https://bugs.webkit.org/show_bug.cgi?id=135880

Reviewed by Joseph Pecoraro.

Source/WebInspectorUI:

* UserInterface/Base/Main.js:
(WebInspector._updateToolbarHeight): Don't call in legacy mode.

* UserInterface/Views/DashboardContainerView.css:
(.toolbar .dashboard-container):
(.toolbar .dashboard):
Drive-by fix some errant drop-shadows. The transparent border was pushing the inset top
drop shadow down when it shouldn't. Remove duplicate background and shadow.

* UserInterface/Views/Main.css:
(body): Set the background white, never needs to be transparent now.
(body.mac-platform.legacy:not(.docked)): Set background to transparent when not docked in legacy.
(body.docked.bottom): Update border color.
(body.docked.right): Ditto.
(body.docked.bottom.mac-platform.legacy): Keep old border color.
(body.docked.right.mac-platform.legacy): Ditto.

* UserInterface/Views/Toolbar.css:
(.toolbar): Set a default border and background gradient.
(body.window-inactive .toolbar): No gradient but use a solid color when inactive.
(body.mac-platform:not(.legacy):not(.docked) .toolbar): Padding on the top for the title bar.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical): Account for title bar height.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical.small-size): Ditto.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-only): Ditto.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.label-only): Ditto.
(body.mac-platform.legacy .toolbar): No inset shadow in legacy when not docked.
(body.mac-platform.legacy.docked .toolbar): Restore legacy border color.
(body.mac-platform.legacy:not(.docked) .toolbar .item.button > .label): Only disable sub-pixel antialiasing on legacy!
(body.mac-platform.legacy.window-inactive .toolbar): Restore legacy border color.

Source/WebKit/mac:

* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::setToolbarHeight): Only call setContentBorderThickness: on 10.9 and earlier.
(-[WebInspectorWindowController init]): Only call setDrawsBackground: on 10.9 and earlier.
(-[WebInspectorWindowController window]): Set titlebarAppearsTransparent on 10.10.
Only call border thickness APIs on 10.9 and earlier.

Source/WebKit2:

* UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::createInspectorWindow): Set titlebarAppearsTransparent on 10.10.
Only call border thickness APIs on 10.9 and earlier.
(WebKit::WebInspectorProxy::platformCreateInspectorPage): Only call setDrawsBackground: on 10.9 and earlier.
(WebKit::WebInspectorProxy::platformSetToolbarHeight): Only call setContentBorderThickness: on 10.9 and earlier.

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

6 years agoWeb Inspector: Restore Helvetica as the dashboard font in legacy mode
timothy@apple.com [Wed, 13 Aug 2014 18:51:54 +0000 (18:51 +0000)]
Web Inspector: Restore Helvetica as the dashboard font in legacy mode
https://bugs.webkit.org/show_bug.cgi?id=135886

Reviewed by Joseph Pecoraro.

* UserInterface/Views/DefaultDashboardView.css:
(body.mac-platform.legacy .toolbar .dashboard.default > .item):

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

6 years ago[CSS3-Text] Add rendering support for the none value of text-justify property
zoltan@webkit.org [Wed, 13 Aug 2014 18:00:27 +0000 (18:00 +0000)]
[CSS3-Text] Add rendering support for the none value of text-justify property
https://bugs.webkit.org/show_bug.cgi?id=135349

Reviewed by David Hyatt.

Source/WebCore:

Spec: http://dev.w3.org/csswg/css-text-3/#valdef-text-justify.none

Test: fast/css3-text/css3-text-justify/text-justify-none.html

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment):

LayoutTests:

* fast/css3-text/css3-text-justify/text-justify-none-expected.html: Added.
* fast/css3-text/css3-text-justify/text-justify-none.html: Added.
* platform/mac/TestExpectations:

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

6 years agoMedia document sends incorrect referer header
eric.carlson@apple.com [Wed, 13 Aug 2014 17:24:34 +0000 (17:24 +0000)]
Media document sends incorrect referer header
https://bugs.webkit.org/show_bug.cgi?id=135839

Reviewed by Jer Noble.

Source/WebCore:

Test: http/tests/media/media-document-referer.html

* html/MediaDocument.cpp:
(WebCore::MediaDocumentParser::MediaDocumentParser): Stash referrer.
(WebCore::MediaDocumentParser::createDocumentStructure): Set outgoing referrer.
(WebCore::MediaDocument::MediaDocument): Stash referrer.
* html/MediaDocument.h:

LayoutTests:

* http/tests/media/media-document-referer-expected.txt: Added.
* http/tests/media/media-document-referer.html: Added.
* http/tests/media/resources/video-referer-check-referer.php: Take expected referer as a
    parameter instead of hard coding it.
* http/tests/media/video-referer.html: Pass referer to loader script.

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

6 years ago[CSSRegions] Move scrolling tests under fast/regions/scrolling
mihnea@adobe.com [Wed, 13 Aug 2014 15:45:03 +0000 (15:45 +0000)]
[CSSRegions] Move scrolling tests under fast/regions/scrolling
https://bugs.webkit.org/show_bug.cgi?id=135881

Reviewed by Andrei Bucur.

* fast/regions/scrolling/scroll-into-view-expected.html: Renamed from LayoutTests/fast/regions/scroll-into-view-expected.html.
* fast/regions/scrolling/scroll-into-view-relative-expected.html: Renamed from LayoutTests/fast/regions/scroll-into-view-relative-expected.html.
* fast/regions/scrolling/scroll-into-view-relative.html: Renamed from LayoutTests/fast/regions/scroll-into-view-relative.html.
* fast/regions/scrolling/scroll-into-view.html: Renamed from LayoutTests/fast/regions/scroll-into-view.html.
* fast/regions/scrolling/scrollable-first-region-expected.html: Renamed from LayoutTests/fast/regions/scrollable-first-region-expected.html.
* fast/regions/scrolling/scrollable-first-region.html: Renamed from LayoutTests/fast/regions/scrollable-first-region.html.
* fast/regions/scrolling/scrollable-last-region-expected.html: Renamed from LayoutTests/fast/regions/scrollable-last-region-expected.html.
* fast/regions/scrolling/scrollable-last-region.html: Renamed from LayoutTests/fast/regions/scrollable-last-region.html.
* fast/regions/scrolling/scrollable-paragraph-unsplittable-expected.html: Renamed from LayoutTests/fast/regions/scrollable-paragraph-unsplittable-expected.html.
* fast/regions/scrolling/scrollable-paragraph-unsplittable.html: Renamed from LayoutTests/fast/regions/scrollable-paragraph-unsplittable.html.
* fast/regions/scrolling/scrollable-region-content-size-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-expected.html.
* fast/regions/scrolling/scrollable-region-content-size-horiz-bt-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-horiz-bt-expected.html.
* fast/regions/scrolling/scrollable-region-content-size-horiz-bt.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-horiz-bt.html.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-no-overflow-expected.html.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-horiz-bt-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-no-overflow-horiz-bt-expected.html.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-horiz-bt.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-no-overflow-horiz-bt.html.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-vert-rl-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-no-overflow-vert-rl-expected.html.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-vert-rl.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-no-overflow-vert-rl.html.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-no-overflow.html.
* fast/regions/scrolling/scrollable-region-content-size-relative-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-relative-expected.html.
* fast/regions/scrolling/scrollable-region-content-size-relative.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-relative.html.
* fast/regions/scrolling/scrollable-region-content-size-vert-rl-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-vert-rl-expected.html.
* fast/regions/scrolling/scrollable-region-content-size-vert-rl.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-vert-rl.html.
* fast/regions/scrolling/scrollable-region-content-size-vertical-lr-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-vertical-lr-expected.html.
* fast/regions/scrolling/scrollable-region-content-size-vertical-lr.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size-vertical-lr.html.
* fast/regions/scrolling/scrollable-region-content-size.html: Renamed from LayoutTests/fast/regions/scrollable-region-content-size.html.
* fast/regions/scrolling/scrollable-region-scrollable-absolute-content-background-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-scrollable-absolute-content-background-expected.html.
* fast/regions/scrolling/scrollable-region-scrollable-absolute-content-background.html: Renamed from LayoutTests/fast/regions/scrollable-region-scrollable-absolute-content-background.html.
* fast/regions/scrolling/scrollable-region-scrollable-content-background-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-scrollable-content-background-expected.html.
* fast/regions/scrolling/scrollable-region-scrollable-content-background.html: Renamed from LayoutTests/fast/regions/scrollable-region-scrollable-content-background.html.
* fast/regions/scrolling/scrollable-region-scrollable-content-expected.html: Renamed from LayoutTests/fast/regions/scrollable-region-scrollable-content-expected.html.
* fast/regions/scrolling/scrollable-region-scrollable-content.html: Renamed from LayoutTests/fast/regions/scrollable-region-scrollable-content.html.
* fast/regions/scrolling/scrollable-regions-hit-testing-inside-expected.html: Renamed from LayoutTests/fast/regions/scrollable-regions-hit-testing-inside-expected.html.
* fast/regions/scrolling/scrollable-regions-hit-testing-inside.html: Renamed from LayoutTests/fast/regions/scrollable-regions-hit-testing-inside.html.
* fast/regions/scrolling/scrollable-single-region-bt-expected.html: Renamed from LayoutTests/fast/regions/scrollable-single-region-bt-expected.html.
* fast/regions/scrolling/scrollable-single-region-bt.html: Renamed from LayoutTests/fast/regions/scrollable-single-region-bt.html.
* fast/regions/scrolling/scrollable-single-region-expected.html: Renamed from LayoutTests/fast/regions/scrollable-single-region-expected.html.
* fast/regions/scrolling/scrollable-single-region-lr-expected.html: Renamed from LayoutTests/fast/regions/scrollable-single-region-lr-expected.html.
* fast/regions/scrolling/scrollable-single-region-lr.html: Renamed from LayoutTests/fast/regions/scrollable-single-region-lr.html.
* fast/regions/scrolling/scrollable-single-region-relative-element-expected.html: Renamed from LayoutTests/fast/regions/scrollable-single-region-relative-element-expected.html.
* fast/regions/scrolling/scrollable-single-region-relative-element.html: Renamed from LayoutTests/fast/regions/scrollable-single-region-relative-element.html.
* fast/regions/scrolling/scrollable-single-region-rl-expected.html: Renamed from LayoutTests/fast/regions/scrollable-single-region-rl-expected.html.
* fast/regions/scrolling/scrollable-single-region-rl.html: Renamed from LayoutTests/fast/regions/scrollable-single-region-rl.html.
* fast/regions/scrolling/scrollable-single-region.html: Renamed from LayoutTests/fast/regions/scrollable-single-region.html.
* fast/regions/scrolling/wheel-scroll-abspos-expected.html: Renamed from LayoutTests/fast/regions/wheel-scroll-abspos-expected.html.
* fast/regions/scrolling/wheel-scroll-abspos.html: Renamed from LayoutTests/fast/regions/wheel-scroll-abspos.html.
* fast/regions/scrolling/wheel-scroll-expected.html: Renamed from LayoutTests/fast/regions/wheel-scroll-expected.html.
* fast/regions/scrolling/wheel-scroll.html: Renamed from LayoutTests/fast/regions/wheel-scroll.html.
* fast/regions/scrolling/wheel-scrollable-single-region-expected.html: Renamed from LayoutTests/fast/regions/wheel-scrollable-single-region-expected.html.
* fast/regions/scrolling/wheel-scrollable-single-region.html: Renamed from LayoutTests/fast/regions/wheel-scrollable-single-region.html.
* platform/gtk/TestExpectations: Fix path for previously moved tests.

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

6 years agoMake check-webkit-style run sort-export-file
commit-queue@webkit.org [Wed, 13 Aug 2014 14:31:27 +0000 (14:31 +0000)]
Make check-webkit-style run sort-export-file
https://bugs.webkit.org/show_bug.cgi?id=135877

Patch by Renato Nagy <nagy.renato@stud.u-szeged.hu> on 2014-08-13
Reviewed by Csaba Osztrogon√°c.

* Scripts/webkitpy/style/checker.py:
(_all_categories):
(FileType):
(CheckerDispatcher._file_type):
(CheckerDispatcher._create_checker):
* Scripts/webkitpy/style/checkers/exportfile.py: Added.
(ExportFileChecker):
(ExportFileChecker.__init__):
(ExportFileChecker.check):
* Scripts/webkitpy/style/checkers/exportfile_unittest.py: Added.
(handle_style_error):
(MockErrorHandler):
(MockErrorHandler.__init__):
(MockErrorHandler.turn_off_line_filtering):
(MockErrorHandler.__call__):
(ExportFileTest):
(ExportFileTest.setUp):
(ExportFileTest.tearDown):
(ExportFileTest.test_sorted):
(ExportFileTest.test_non_sorted):
(ExportFileTest.test_parse_error):

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

6 years ago[EFL] Add API to set application name for the user agent
ryuan.choi@samsung.com [Wed, 13 Aug 2014 13:12:57 +0000 (13:12 +0000)]
[EFL] Add API to set application name for the user agent
https://bugs.webkit.org/show_bug.cgi?id=135640

Reviewed by Gyuyoung Kim.

Add ewk_application_name_for_user_agent_set to make default user agent string
with application name which application passes.
It's useful for application to set only application information without knowledge
of legacy user agent components.

* UIProcess/API/efl/EwkView.cpp:
(EwkView::EwkView):
(EwkView::setApplicationNameForUserAgent):
* UIProcess/API/efl/EwkView.h:
(EwkView::applicationNameForUserAgent):
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_application_name_for_user_agent_set):
(ewk_view_application_name_for_user_agent_get):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):
* UIProcess/efl/WebPageProxyEfl.cpp:
(WebKit::WebPageProxy::standardUserAgent):

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

6 years ago[EFL] Sets the persistent storage for cookies in MiniBrowser
jinwoo7.song@samsung.com [Wed, 13 Aug 2014 12:10:46 +0000 (12:10 +0000)]
[EFL] Sets the persistent storage for cookies in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=135875

Reviewed by Gyuyoung Kim.

In case of EWK_COOKIE_ACCEPT_POLICY_ALWAYS, sets the persistent storage
for non-session cookies can be stored persistently.

* MiniBrowser/efl/main.c:
(elm_main):

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

6 years agoDon't recurse into non-rendered subtrees when computing style
antti@apple.com [Wed, 13 Aug 2014 11:20:44 +0000 (11:20 +0000)]
Don't recurse into non-rendered subtrees when computing style
https://bugs.webkit.org/show_bug.cgi?id=135844

Reviewed by Andreas Kling.

Rebase.

* http/tests/security/video-poster-cross-origin-crash-expected.txt:
* platform/mac/fast/ruby/ruby-base-merge-block-children-crash-2-expected.txt:

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

6 years agoDon't recurse into non-rendered subtrees when computing style
antti@apple.com [Wed, 13 Aug 2014 10:13:43 +0000 (10:13 +0000)]
Don't recurse into non-rendered subtrees when computing style
https://bugs.webkit.org/show_bug.cgi?id=135844

Reviewed by Andreas Kling.

* style/StyleResolveTree.cpp:
(WebCore::Style::resetStyleForNonRenderedDescendants):

Do a simple reset of the style dirty bits and any computed style in non-renderer subtrees.

(WebCore::Style::attachRenderTree):
(WebCore::Style::resolveTree):

Don't recurse into descendants if the element does not create a renderer.
We didn't compute style anyway in such subtrees.

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

6 years ago[CMAKE] WebProcess shouldn't need to explicitly link to JavaScriptCore and WebCore
carlosgc@webkit.org [Wed, 13 Aug 2014 06:44:35 +0000 (06:44 +0000)]
[CMAKE] WebProcess shouldn't need to explicitly link to JavaScriptCore and WebCore
https://bugs.webkit.org/show_bug.cgi?id=135832

Reviewed by Gyuyoung Kim.

Linking to WebKit2 should be enough, like Network and Plugin processes.

* CMakeLists.txt:

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

6 years agoWeb Inspector: Timeline record content view close button does not work after scrollin...
commit-queue@webkit.org [Wed, 13 Aug 2014 04:15:08 +0000 (04:15 +0000)]
Web Inspector: Timeline record content view close button does not work after scrolling, invisible scrollbar
https://bugs.webkit.org/show_bug.cgi?id=135863

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-12
Reviewed by Timothy Hatcher.

A workaround is to not have position:relative content inside of
scrollable region. Turns out this was only done in two places,
and I do not see any absolutely positioned content in navigation
sidebar content tree outlines. This also fixes clicking on the
reload button if you've scrolled the Resources sidebar.

* UserInterface/Views/NavigationSidebarPanel.css:
(.navigation-sidebar-panel-content-tree-outline .children): Deleted.
(.navigation-sidebar-panel-content-tree-outline .item): Deleted.

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

6 years agoWeb Inspector: Remove unused variable in Platform.js
commit-queue@webkit.org [Wed, 13 Aug 2014 04:07:15 +0000 (04:07 +0000)]
Web Inspector: Remove unused variable in Platform.js
https://bugs.webkit.org/show_bug.cgi?id=135869

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-08-12
Reviewed by Timothy Hatcher.

* UserInterface/Base/Platform.js:

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

6 years agoElements whose contents start with an astral Unicode symbol disappear when CSS `...
mmaxfield@apple.com [Wed, 13 Aug 2014 03:53:47 +0000 (03:53 +0000)]
Elements whose contents start with an astral Unicode symbol disappear when CSS `::first-letter` is applied to them
https://bugs.webkit.org/show_bug.cgi?id=135756

Reviewed by Darin Adler.

Source/WebCore:

The previous code assumed that all "characters" are exactly 1 16-bit code unit wide. Instead, use numCharactersInGraphemeClusters().

This patch also modifies the signature of numCharactersInGraphemeClusters() to take a StringView instead
of a string, which will avoid a copy.

Test: css1/pseudo/firstletter-surrogate.html

* platform/text/TextBreakIterator.cpp:
(WebCore::numCharactersInGraphemeClusters): Update numCharactersInGraphemeClusters() to take a StringView.
* platform/text/TextBreakIterator.h: Ditto.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::createFirstLetterRenderer): Use numCharactersInGraphemeClusters() to determine the length
of the first letter, rather than assuming it has length of 1 code unit
(WebCore::RenderBlock::updateFirstLetter): Add a FIXME comment.

Source/WTF:

Add a method to StringView which passes through contains() to find().

* wtf/text/StringView.h:
(WTF::StringView::contains):

LayoutTests:

Make sure the pseudoclass matches manually wrapping a <span> around the character.

* css1/pseudo/firstletter-surrogate-expected.html: Added.
* css1/pseudo/firstletter-surrogate.html: Added.

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

6 years agoDocument-relative page overlays drop some mouse events with non-zero top content...
timothy_horton@apple.com [Wed, 13 Aug 2014 03:02:35 +0000 (03:02 +0000)]
Document-relative page overlays drop some mouse events with non-zero top content inset
https://bugs.webkit.org/show_bug.cgi?id=135871
<rdar://problem/17982275>

Reviewed by Beth Dakin.

* WebProcess/WebPage/PageOverlay.cpp:
(WebKit::PageOverlay::mouseEvent):
Convert the mouse position into document-relative coordinates; the bounds()
already are! This way, we can actually compare them without being wrong sometimes.

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

6 years ago[iOS] build-webkit should not build WebKitSystemInterface and WebKitAdditions
dbates@webkit.org [Wed, 13 Aug 2014 02:35:29 +0000 (02:35 +0000)]
[iOS] build-webkit should not build WebKitSystemInterface and WebKitAdditions
https://bugs.webkit.org/show_bug.cgi?id=135845

Reviewed by Andy Estes.

Towards building the iOS WebKit port using the public SDK, remove the logic
added to build-webkit to build projects WebKitSystemInterface and
WebKitAdditions when building the iOS WebKit port.

* Scripts/build-webkit:

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

6 years agoBPLATFORM(IOS) always evaluates to false
dbates@webkit.org [Wed, 13 Aug 2014 02:33:03 +0000 (02:33 +0000)]
BPLATFORM(IOS) always evaluates to false
https://bugs.webkit.org/show_bug.cgi?id=135843

Reviewed by Geoffrey Garen.

Fix typo in definition of BPLATFORM() and include system header TargetConditionals.h
(when building on an Apple platform) so that BPLATFORM(X) evaluates to true when
building for platform X. In particular, so that BPLATFORM(IOS) evaluates to true when
building for iOS.

As a side effect of this change, the change made in <http://trac.webkit.org/changeset/167289>
will be honored and iOS will assume a VM page size of 16kB (again) instead of 4kB.

* bmalloc/BPlatform.h:

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

6 years ago[Win] Unreviewed build fix after r172504
bfulgham@apple.com [Wed, 13 Aug 2014 00:13:38 +0000 (00:13 +0000)]
[Win] Unreviewed build fix after r172504

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Add missing
symbol exports.

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

6 years agoEnable didReceiveDataArray callback on Mac
psolanki@apple.com [Tue, 12 Aug 2014 23:45:48 +0000 (23:45 +0000)]
Enable didReceiveDataArray callback on Mac
https://bugs.webkit.org/show_bug.cgi?id=135554
<rdar://problem/9170731>

Reviewed by Andreas Kling.

Enable WTF_USE_NETWORK_CFDATA_ARRAY_CALLBACK for all Cocoa platforms so that we use the same
code path for Mac and iOS.

* wtf/Platform.h:

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

6 years ago[MSE][Mac] Seeking to the very beginning of a buffered range stalls video playback
jer.noble@apple.com [Tue, 12 Aug 2014 23:40:27 +0000 (23:40 +0000)]
[MSE][Mac] Seeking to the very beginning of a buffered range stalls video playback
https://bugs.webkit.org/show_bug.cgi?id=135865

Reviewed by Eric Carlson.

AVSampleBufferRenderSynchronizer will report a current time of about 100ms or so before
the destination seek time when seeking. It does this in order to pre-roll the synchronized
audio renderer, but this can lead to playback stalling when MediaSource::monitorSourceBuffers()
looks at the media element's current time and determines that the current time is 100ms before
any buffered samples.

Clamp the value of currentMediaTime() to, at a minimum, the last requested seek time. This was
the suggested course of action from <rdar://problem/17789374>.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationDouble):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentMediaTime):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):

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

6 years ago[MSE] YouTube will lose audio, video after seeking backwards to an unbuffered range.
jer.noble@apple.com [Tue, 12 Aug 2014 23:37:34 +0000 (23:37 +0000)]
[MSE] YouTube will lose audio, video after seeking backwards to an unbuffered range.
https://bugs.webkit.org/show_bug.cgi?id=135855

Reviewed by Eric Carlson.

When seeking into an unbuffered or partially buffered range, we will unconditionally pass samples to the
decode queue even if there exist large gaps between those samples. Subsequently, the decoder will not
notify us that it has become ready for new samples until playback reaches those later samples and the samples
are discarded.

When sending samples to be decoded in provideMediaData(), stop if there exists a large gap in the sample timeline.
Do this by tracking the last enqueued decode end time, and look to see if the next sample's decode time indicates
a gap of greater than 1 second.

* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::TrackBuffer::TrackBuffer): Initialize lastEnqueuedDecodeEndTime.
(WebCore::SourceBuffer::seekToTime): Set needsReenqueueing, in case samples do not yet exist in the trackBuffer
    sufficient to re-enqueue for the destination time, so that re-enqueueing will occur after the next append.
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample): Check against lastEnqueuedDecodeEndTime, rather than
    lastEnqueuedPresentationTime before adding samples to the decodeQueue.
(WebCore::SourceBuffer::provideMediaData): Stop when we reach a large gap between samples.
(WebCore::SourceBuffer::reenqueueMediaForTime): Set or clear lastEnqueuedDecodeEndTime based on whether we
    have appended any non-displaying samples after flushing.

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

6 years agoUnreviewed, rolling out r172494.
commit-queue@webkit.org [Tue, 12 Aug 2014 23:15:00 +0000 (23:15 +0000)]
Unreviewed, rolling out r172494.
https://bugs.webkit.org/show_bug.cgi?id=135864

asserting on bots (Requested by kling on #webkit).

Reverted changeset:

"Don't recurse into non-rendered subtrees when computing
style"
https://bugs.webkit.org/show_bug.cgi?id=135844
http://trac.webkit.org/changeset/172494

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

6 years agoFonts forced to use non synthetic italics might be laid out with the incorrect baseline
mmaxfield@apple.com [Tue, 12 Aug 2014 23:13:18 +0000 (23:13 +0000)]
Fonts forced to use non synthetic italics might be laid out with the incorrect baseline
https://bugs.webkit.org/show_bug.cgi?id=135403

Reviewed by Darin Adler.

Source/WebCore:

When italics is specified on a font, and the font isn't coming from the cache, we ask
the SimpleFontData to provide a non-synthetic-italic version of itself. Our current
implementation doesn't preserve whether or not the SimpleFontData includes vertical
glyphs (glyphs that are not rotated when drawn in the vertical writing mode), which
determines which baseline we use to lay out the text. By passing "false" to
the isTextOrientationFallback argument to SimpleFontData::create(), we preserve this
hasVerticalGlyphs flag.

Test: fast/text/international/synthesized-italic-vertical-latin-double.html

* platform/graphics/SimpleFontData.cpp:
(WebCore::SimpleFontData::nonSyntheticItalicFontData):
* testing/Internals.cpp:
(WebCore::Internals::invalidateFontCache): Add "invalidateFontCache" to window.internals.
* testing/Internals.h: Ditto.
* testing/Internals.idl: Ditto.

LayoutTests:

Laying out the same string twice (where there is a cache collision) should be rendered
the same as laying out similar strings (where there is no cache collision).

* fast/text/international/synthesized-italic-vertical-latin-double-expected.html: Added.
* fast/text/international/synthesized-italic-vertical-latin-double.html: Added.

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

6 years agoSource/JavaScriptCore:
commit-queue@webkit.org [Tue, 12 Aug 2014 23:11:19 +0000 (23:11 +0000)]
Source/JavaScriptCore:
Runtime switch for long mouse press gesture. Part of 135257 - Add long mouse press gesture.
https://bugs.webkit.org/show_bug.cgi?id=135682

Patch by Peyton Randolph <prandolph@apple.com> on 2014-08-12
Reviewed by Tim Horton.

* Configurations/FeatureDefines.xcconfig:
Remove ENABLE_LONG_MOUSE_PRESS feature flag.

Source/WebCore:
Runtime switch for long mouse press gesture. Part of 135257 - Add long mouse press gesture.
https://bugs.webkit.org/show_bug.cgi?id=135682

Patch by Peyton Randolph <prandolph@apple.com> on 2014-08-12
Reviewed by Tim Horton.

This patch adds a runtime switch for the Long Mouse Press Gesture and initially sets the feature flag
to false. It also removes the ENABLE_LONG_MOUSE_PRESS feature flag as the runtime switch now guards
its functionality.

* Configurations/FeatureDefines.xcconfig: Remove LONG_MOUSE_PRESS feature flag.
* page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clear): Remove feature flag.
(WebCore::EventHandler::handleMousePressEvent): Ditto.
(WebCore::EventHandler::eventMayStartDrag): Ditto.
(WebCore::EventHandler::handleMouseReleaseEvent):
Perform event iff long mouse presses are enabled.
(WebCore::EventHandler::beginTrackingPotentialLongMousePress): Ditto.
(WebCore::EventHandler::recognizeLongMousePress): Ditto.
(WebCore::EventHandler::cancelTrackingPotentialLongMousePress): Ditto.
(WebCore::EventHandler::handleMouseMoveEvent): Remove feature flag.
(WebCore::EventHandler::handleDrag): Ditto.
(WebCore::EventHandler::mouseMovementExceedsThreshold): Ditto.
* page/EventHandler.h:
* page/Settings.in: Add longMousePressEnabled setting, initially false.

Source/WebKit/mac:
Runtime switch for long mouse press gesture. Part of 135257 - Add long mouse press gesture.
https://bugs.webkit.org/show_bug.cgi?id=135682

Patch by Peyton Randolph <prandolph@apple.com> on 2014-08-12
Reviewed by Tim Horton.

* Configurations/FeatureDefines.xcconfig:
Remove LONG_MOUSE_PRESS feature flag.

Source/WebKit2:
Runtime switch for long mouse press gesture. Part of 135257 - Add long mouse press gesture
https://bugs.webkit.org/show_bug.cgi?id=135682

Patch by Peyton Randolph <prandolph@apple.com> on 2014-08-12
Reviewed by Tim Horton.

* Configurations/FeatureDefines.xcconfig: Remove LONG_MOUSE_PRESS feature flag.
* Shared/WebPreferencesDefinitions.h:
Add LongMousePressEnabled preference, initially false.
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetLongMousePressEnabled): Added.
(WKPreferencesGetLongMousePressEnabled): Added.
* UIProcess/API/C/WKPreferencesRefPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
Reflect the WebKit long mouse press setting in WebCore.

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

6 years agoCached file backed resources don't make it to the Web Process when NETWORK_CFDATA_ARR...
psolanki@apple.com [Tue, 12 Aug 2014 22:50:40 +0000 (22:50 +0000)]
Cached file backed resources don't make it to the Web Process when NETWORK_CFDATA_ARRAY_CALLBACK is enabled
https://bugs.webkit.org/show_bug.cgi?id=135727
<rdar://problem/17947880>

Reviewed by Darin Adler.

Source/WebCore:

Add SharedBuffer::existingCFData() which returns CFDataRef if it has one. Refactor
this code out of createCFData().

* WebCore.exp.in:
* platform/SharedBuffer.h:
* platform/mac/SharedBufferMac.mm:
(WebCore::SharedBuffer::existingCFData): Added.
(WebCore::SharedBuffer::createCFData):

Source/WebKit2:

tryGetShareableHandleFromSharedBuffer() assumed that we have a file backed resource only if
we had a CFDataRef (platformData()) in SharedBuffer. This is wrong when we use the data
array callbacks since the file backed buffer could be in the data array. Instead of relying
on hasPlatformData(), explicitly ask the SharedBuffer to give us a CFDataRef if it has one
so that SharedBuffer can take care of the data array case.

* NetworkProcess/mac/NetworkResourceLoaderMac.mm:
(WebKit::NetworkResourceLoader::tryGetShareableHandleFromSharedBuffer):

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

6 years agoSmall region (~1px tall) where you get the selection button instead of the phone...
timothy_horton@apple.com [Tue, 12 Aug 2014 22:48:36 +0000 (22:48 +0000)]
Small region (~1px tall) where you get the selection button instead of the phone number overlay
https://bugs.webkit.org/show_bug.cgi?id=135852
<rdar://problem/17992795>

Reviewed by Enrica Casucci.

* WebProcess/WebPage/ServicesOverlayController.h:
* WebProcess/WebPage/mac/ServicesOverlayController.mm:
(WebKit::ServicesOverlayController::findTelephoneNumberHighlightContainingSelectionHighlight):
(WebKit::ServicesOverlayController::determineActiveHighlight):
If our new active highlight is a selection highlight that is completely contained
by one of the phone number highlights, we'll make the phone number highlight active
even if it's not hovered. This fixes the case where the selection highlight
(a subset of a telephone number) is slightly taller than the telephone number
highlight, and can be hovered without hovering the phone number highlight

* WebCore.exp.in:

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

6 years agoREGRESSION: WebContent process has a sandbox extension for the entirety of user's...
ap@apple.com [Tue, 12 Aug 2014 22:43:27 +0000 (22:43 +0000)]
REGRESSION: WebContent process has a sandbox extension for the entirety of user's temp directory
https://bugs.webkit.org/show_bug.cgi?id=135853
<rdar://problem/17986556>

Reviewed by Oliver hunt.

Move extensions recently added for iOS benefit under PLATFORM(IOS). Removed some
dead code while at it (child processes don't need actual paths, they only need
sandbox extensions in most cases).

* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
* Shared/Network/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):
* Shared/Network/NetworkProcessCreationParameters.h:
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::ensureNetworkProcess):
(WebKit::WebContext::createNewWebProcess):
(WebKit::WebContext::openGLCacheDirectory): Deleted.
(WebKit::WebContext::networkingHSTSDatabasePath): Deleted.
* UIProcess/WebContext.h:
* UIProcess/efl/WebContextEfl.cpp:
(WebKit::WebContext::containerTemporaryDirectory): Deleted.
(WebKit::WebContext::platformDefaultNetworkingHSTSDatabasePath): Deleted.
* UIProcess/gtk/WebContextGtk.cpp:
(WebKit::WebContext::containerTemporaryDirectory): Deleted.
(WebKit::WebContext::platformDefaultNetworkingHSTSDatabasePath): Deleted.
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::openGLCacheDirectory):
(WebKit::WebContext::parentBundleDirectory):
(WebKit::WebContext::networkingHSTSDatabasePath):
(WebKit::WebContext::platformDefaultOpenGLCacheDirectory): Deleted.
(WebKit::WebContext::platformDefaultNetworkingHSTSDatabasePath): Deleted.
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):

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

6 years agoGenerate header detection headers for CMake on Windows.
achristensen@apple.com [Tue, 12 Aug 2014 22:43:19 +0000 (22:43 +0000)]
Generate header detection headers for CMake on Windows.
https://bugs.webkit.org/show_bug.cgi?id=135807

Reviewed by Brent Fulgham.

Source/JavaScriptCore:

* CMakeLists.txt:
Include the derived sources directory to find WTF/WTFHeaderDetection.h.

Source/WebCore:

* CMakeLists.txt:
* PlatformWin.cmake:
Generate and include a stub WebCoreHeaderDetection.h.

Source/WTF:

* wtf/CMakeLists.txt:
* wtf/PlatformWin.cmake:
Generate and include a stub WTFHeaderDetection.h.

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

6 years agoREGRESSION (r172424): Extra menu header in combined telephone number menu when no...
timothy_horton@apple.com [Tue, 12 Aug 2014 22:42:41 +0000 (22:42 +0000)]
REGRESSION (r172424): Extra menu header in combined telephone number menu when no phone paired
https://bugs.webkit.org/show_bug.cgi?id=135854
<rdar://problem/17996339>

Reviewed by Enrica Casucci.

* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::setupServicesMenu):
Get all the menu items ahead of time, and only add the shared header
if there are any telephone number menu items.

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

6 years agoCrash at com.apple.WebKit.WebContent at com.apple.WebKit: WebKit::expandForGap
enrica@apple.com [Tue, 12 Aug 2014 22:32:43 +0000 (22:32 +0000)]
Crash at com.apple.WebKit.WebContent at com.apple.WebKit: WebKit::expandForGap
https://bugs.webkit.org/show_bug.cgi?id=135859
<rdar://problem/17994679>

Reviewed by Tim Horton.

expandForGap made the assumption that the selection rects were always three.
This was not true even before http://trac.webkit.org/changeset/172395 but
was more likely to happen after that change.

* WebProcess/WebPage/mac/ServicesOverlayController.mm:
(WebKit::expandForGap):

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

6 years agoMake sure that begin time cannot be greater than SMILTime::indefiniteValue unintentio...
commit-queue@webkit.org [Tue, 12 Aug 2014 22:30:32 +0000 (22:30 +0000)]
Make sure that begin time cannot be greater than SMILTime::indefiniteValue unintentionally.
https://bugs.webkit.org/show_bug.cgi?id=135838

Patch by Renata Hodovan <rhodovan.u-szeged@partner.samsung.com> on 2014-08-12
Reviewed by Darin Adler.

Source/WebCore:

When WebCore::SVGSMILElement::resolveInterval creates a SMILTime begin
node for a SMILInterval, then it only checks if the value of begin is
indefinite or unresolved but misses the case if it is between these two
reference values.

Blink: https://codereview.chromium.org/406263002/.
Test: svg/animations/animateMotion-crash-with-large-begin-time.html

* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::parseOffsetValue):
(WebCore::SVGSMILElement::parseClockValue):

LayoutTests:

* svg/animations/animateMotion-crash-with-large-begin-time-expected.txt: Added.
* svg/animations/animateMotion-crash-with-large-begin-time.html: Added.

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

6 years agoRevert a change that wasn't meant to be a part of r172482.
aestes@apple.com [Tue, 12 Aug 2014 21:59:26 +0000 (21:59 +0000)]
Revert a change that wasn't meant to be a part of r172482.

* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::init):

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

6 years agoDon't recurse into non-rendered subtrees when computing style
antti@apple.com [Tue, 12 Aug 2014 21:31:23 +0000 (21:31 +0000)]
Don't recurse into non-rendered subtrees when computing style
https://bugs.webkit.org/show_bug.cgi?id=135844

Reviewed by Andreas Kling.
Source/WebCore:

* style/StyleResolveTree.cpp:
(WebCore::Style::resetStyleForNonRenderedDescendants):

Do a simple reset of the style dirty bits and any computed style in non-rendered subtrees.

(WebCore::Style::attachRenderTree):
(WebCore::Style::resolveTree):

Don't recurse into descendants if the element does not create a renderer.
We didn't compute style anyway in such subtrees.

LayoutTests:

Rebase.

* http/tests/security/video-poster-cross-origin-crash-expected.txt:
* platform/mac/fast/ruby/ruby-base-merge-block-children-crash-2-expected.txt:

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

6 years ago[GTK] Adds dependency for GnuTLS 3.0+ explicitly in gtk/install-dependencies
utatane.tea@gmail.com [Tue, 12 Aug 2014 20:53:38 +0000 (20:53 +0000)]
[GTK] Adds dependency for GnuTLS 3.0+ explicitly in gtk/install-dependencies
https://bugs.webkit.org/show_bug.cgi?id=135850

Reviewed by Philippe Normand.

After r172433, GTK port requires GnuTLS 3.0+. In this time, libgnutls-dev is 2.x in
Ubuntu(trusty) and Debian(sid). So added libgnutls28-dev explicitly.

* gtk/install-dependencies:

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