summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.8' into 5.95.9.0Liang Qi2017-04-184-3/+44
|\ | | | | | | Change-Id: Ib8d14ead6c781186d2519366552b896327d4f715
| * Suppress ICC warning about floating-point comparisons5.8Thiago Macieira2017-04-041-1/+1
| | | | | | | | | | | | | | qrect.h(670): error #1572: floating-point equality and inequality comparisons are unreliable Change-Id: I27b55fdf514247549455fffd14b1cb335fe33f63 Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
| * [QML] evaluateJavaScript should preserve null values in resultKonstantin Tokarev2017-04-032-0/+41
| | | | | | | | | | | | | | | | We should not convert null to undefined when returning JS values from JSC to QJSEngine. Change-Id: I20f5638fe9104341e1a0878fdbdbc49e5fa8d2e1 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Fix some QML testsKonstantin Tokarev2017-04-032-2/+2
| | | | | | | | | | Change-Id: If478dd4aa9fc4492c3999f03e5f66811c9e6b41f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Enable HSTS by default with Qt 5.9Konstantin Tokarev2017-04-111-1/+5
| | | | | | | | | | Change-Id: I638ac5e76f087b2af9211a1bfc1ceb3441626419 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Cleanup QRegExp includesSamuel Gaist2017-03-135-2/+3
| | | | | | | | | | | | | | | | This patch adds the missing QRegExp includes and removes them when not used in prevision of the qtbase include cleanup. Change-Id: Ibb70e9aab72619f6de13b0c0a5e929e5552d1aaa Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
* | Remove uses of QString::nullMarc Mutz2017-03-101-3/+3
| | | | | | | | | | | | | | It's going to be deprecated. Change-Id: I2cc901cd2b66330b1beca16c865b6259c3bab949 Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-1075-694/+1453
|\ \ | |/ | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Id65b546f295897cd386125d2d3d4160051cc7d22
| * switch to new way to refer to libdlOswald Buddenhagen2017-03-061-1/+2
| | | | | | | | | | Change-Id: I2ec38c9a2c1072127b25510cc4b3daa9e1847352 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * Support custom items in context menuKonstantin Tokarev2017-02-136-7/+68
| | | | | | | | | | | | | | | | This is particularly important for Inspector, which lacks a lot of useful context menu actions without this patch. Change-Id: I8170c806028ff140206f13e5e1de0409e945e905 Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
| * Use frameGeometry() to determine the outerWidth/Height of the windowAndy Shaw2017-01-302-1/+24
| | | | | | | | | | Change-Id: Ie6ca8f40a7512e37e0b2efc94706242c9f323686 Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
| * Merge remote-tracking branch 'origin/5.8.0' into 5.8Liang Qi2017-01-267-14/+3
| |\ | | | | | | | | | Change-Id: Iac71a5d02bdec7a00d17136048e6379c32c53d24
| | * Remove unused check for private_tests5.8.0Jan Kundrát2016-12-101-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that qt_developer_build is never used anyway. I did some git archeology and it looks like it was nuked when doing the 5.2 merge from upstream. The original purpose was apparently to control -Werror, which is nowadays controlled by CONFIG -= production_build. This actually fixes the build, as the QT_FOR_CONFIG += core-private which would have been required for qtConfig(private_tests) is missing. Task-number: QTBUG-55950 Change-Id: Iaaaad184b29b523ce4a4ed8afec2ac527d8f93e3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Konstantin Tokarev <annulen@yandex.ru> Reviewed-by: Jan Kundrát <jkt@kde.org>
| | * make sure the configure system loads qt_build_config.prfOswald Buddenhagen2016-12-106-10/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | otherwise it won't have access to private features like private_tests. doing it centrally also makes it unnecessary to explicitly load() it from the configure testcases themselves. Task-number: QTBUG-57431 Change-Id: I025b01f37265e90c7611e2af939ca83ac13049d2 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Enable build of QtWebPluginProcessAlexander Volkov2017-01-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | It is enabled when xlibAvailable() returns true, but this test function was forgotten to be ported to use qtConfig() and works incorrectly. Change-Id: I62793aeed4ffa78a68c1f35d07c88c6c9eea71cf Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
| * | Fix misplaced checkboxes on macOSVitaly Slobodin2017-01-121-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Checkboxes without State_Active flag are missplaced on macOS. Set this flag by default to paint checkboxes in correct positions. Task-number: QTBUG-42948 Task-number: QTBUG-43070 Change-Id: Ie86f3dec156e31c90e454d8f1b41e4d4ec68c8b0 Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
| * | Imitate Safari's UA string betterKonstantin Tokarev2017-01-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some sites doing UA sniffing don't recognize our default UA string without "Version/x.y" component, corresponding to version number of Safari. Task-number: QTBUG-38211 Change-Id: Ic5082a938f639502bb2c11c7df2538584b5f77ee Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | TEXTREL in libjavascriptcoregtk-1.0.so.0.11.0 on x86 (or i586)Magnus Granberg2017-01-042-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=70610 Patch by Magnus Granberg <zorry@gentoo.org> on 2014-08-19 Reviewed by Darin Adler. Source/JavaScriptCore: Setup %ebx so we can use the plt. * jit/ThunkGenerators.cpp: Source/WTF: Add PLT if we're building with PIC. * wtf/InlineASM.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@172759 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: I7524a662f76f75f8dee0a07bf2360420d7b23d2d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | JavaScriptCore uses PLATFORM(MAC) when it means OS(DARWIN)Alberto Garcia2017-01-042-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=99683 Reviewed by Anders Carlsson. * jit/ThunkGenerators.cpp: * tools/CodeProfile.cpp: (JSC::symbolName): (JSC::CodeProfile::sample): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162266 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: Ia5b36b80ba095dbf0de4430137dc8133d0c06a8e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | Bump versionOswald Buddenhagen2017-01-031-1/+1
| | | | | | | | | | | | Change-Id: I631efa59c63f8cc414d4ef52138ce772d489a44b
| * | Fix build with MSYS PythonThiago Macieira2016-12-131-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | MSYS's Python is compiled as a POSIX environment, which means subprocess.Popen cannot be passed just a single string (to be given to CreateProcess). Instead, pass the split args and let the underlying system re-merge them. This is harmless with a pure Windows Python. MSYS python also changes parameters starting with / to a pathname, so use the equivalent -directives (dumpbin.exe accepts them). Change-Id: Id50531a20e40adb71a40525cf714d05c22959fb0 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-11-2615-140/+162
| |\ | | | | | | | | | Change-Id: Ib843c048b13865645d397428d31eac4f5bd52270
| | * Merge remote-tracking branch 'origin/5.6' into 5.75.7Liang Qi2016-11-2514-140/+122
| | |\ | | | | | | | | | | | | Change-Id: I8ffa0181ef59a4fcec216f15413171cbc5b1daed
| | | * Fix QDataStreamCoder encoding and decoding of binary dataThiago Macieira2016-11-241-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code was all wrong. The dereferencing of the pointer was missing, so QDataStreamCoder::encodeBytes was encoding pointers (cast to something, though unclear what), while the decoder was decoding them one byte at a time This clearly has never worked. So just use writeRawData and readRawData. Change-Id: Ic46ff326a6ba46bc877cfffd1483240963ec5ee0 Reviewed-by: Konstantin Tokarev <annulen@yandex.ru> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * Fixed crash in FormDataIODeviceKonstantin Tokarev2016-11-181-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It happens that m_formElements can be null in some cases when FormDataIODevice::reset() is invoked. Change-Id: I92113588db57c9687bc20d331ba2f5ed8f9eec54 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * remove dependencies from sync.profileOswald Buddenhagen2016-11-041-17/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the CI obtains them from the qt5 super repo nowadays. Change-Id: I1a981272cff5cca5d72b22b31a8c8f13a363330d Reviewed-by: Konstantin Tokarev <annulen@yandex.ru> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
| | | * Added missing Q_DECL_OVERRIDEs to QML API headersKonstantin Tokarev2016-10-105-39/+39
| | | | | | | | | | | | | | | | | | | | Change-Id: Ic8f0fc6fe055cd432aaff8e46d62c0f8d41e61f8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * Added missing Q_DECL_OVERRIDEs to QtWebKitWidgets headersKonstantin Tokarev2016-10-106-75/+75
| | | | | | | | | | | | | | | | | | | | Change-Id: I2ab9287f17155b18f8caee3866d4125d4451a078 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | * | Add changes for 5.7.1Konstantin Tokarev2016-10-141-0/+40
| | | | | | | | | | | | | | | | | | | | Change-Id: I1f24a218c1d93306a96a1c577957530e7f5cd807 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | | simplify setup of exclusive buildsOswald Buddenhagen2016-10-211-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the simulator_and_device CONFIG flag is now gone. this also implies that we can set the debug_and_release and build_all flags based on the same condition. Change-Id: I6203c4b7f64584c06739a9aad1fb7201f2a3628a Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * | | Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-10-0440-519/+1153
| |\ \ \ | | |/ / | | | | | | | | Change-Id: I0cb01e653bf640a929c26c771eebedc9e6656b14
| | * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-10-0133-508/+1097
| | |\ \ | | | |/ | | | | | | | | Change-Id: I124ff77524133fb9b88e76c4af99efb2aa1ff6c8
| | | * Fixed checkbox and radiobutton indicatorsKonstantin Tokarev2016-09-306-3/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When layout rect is smaller than indicator its edges may not be repainted properly. Now we center indicator repsectively to layout rect and inflate repaint rect to cover edges. Also, when layout rect is larger than indicator, QStyle code paints it at the top-left corner of given rect. Now indicator is centered, like other browser engines do. Note that when layout has auto size for checkbox or radiobutton, their sizes are adjust beforehand in RenderThemeQStyle::computeSizeBasedOnStyle(). This code path is require only when layout forces checkbox or radiobutton to be smaller than optimal indicator size. Task-number: QTBUG-56302 Change-Id: Idaefffc5775055514a430216ea265af2b3a039b4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * Report JavaScript errors from Qt signals and slotsVitaly Slobodin2016-09-302-1/+34
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-37899 Change-Id: Idcd92196a44cfac26c6943832bf8971ad70aec5e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * Avoid using QString when converting headers between WTF::String and QByteArrayKonstantin Tokarev2016-09-272-7/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should not convert Latin1 to UTF16 and back for each header of each HTTP request and response. In older WebKit versions String was always 16-bit, but now 8-bit is used wherever possible, and this is usually the case for HTTP headers. Change-Id: I642f65c614702aca4ad7a673f5073a8eaed5b46d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * Unprefix the flexbox CSS propertiesDean Jackson2016-09-2714-131/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=98420 Reviewed by Benjamin Poulain. Source/WebCore: Remove the need for a "-webkit-" prefix on flexbox and related properties. This includes: - align-content - align-items - align-self - flex-basis - flex-direction - flex-wrap - flex-grow - flex-shrink - flex - flex-flow - justify - order ... as well as the display keyword values "flex" and "inline-flex". * css/CSSComputedStyleDeclaration.cpp: Change names. (WebCore::ComputedStyleExtractor::propertyValue): * css/CSSParser.cpp: Ditto. (WebCore::isValidKeywordPropertyAndValue): (WebCore::isKeywordPropertyID): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseFlex): * css/CSSPrimitiveValueMappings.h: Since we need to still handle the old keywords for display, this has added two new keywords. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator EDisplay): If the older keywords were used in content, map them to the new value names. * css/CSSPropertyNames.in: Add aliases for the prefixed properties. * css/CSSValueKeywords.in: Add "flex" and "inline-flex". * css/DeprecatedStyleBuilder.cpp: Change names. (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): * css/StyleProperties.cpp: Change names. (WebCore::StyleProperties::getPropertyValue): (WebCore::StyleProperties::asText): * css/StylePropertyShorthand.cpp: Rename shorthand methods to remove the prefix. (WebCore::flexFlowShorthand): (WebCore::flexShorthand): (WebCore::shorthandForProperty): (WebCore::matchingShorthandsForLonghand): (WebCore::webkitFlexFlowShorthand): Deleted. (WebCore::webkitFlexShorthand): Deleted. * css/StylePropertyShorthand.h: * css/StyleResolver.cpp: (WebCore::equivalentBlockDisplay): (WebCore::StyleResolver::applyProperty): * page/animation/CSSPropertyAnimation.cpp: Change names. (WebCore::PropertyWrapperFlex::PropertyWrapperFlex): * rendering/RenderElement.cpp: (WebCore::RenderElement::createFor): Handle the two new display values (the same way as the old values). * rendering/style/RenderStyleConstants.h: Add constants for the new display values. LayoutTests: Now that we return "flex" instead of "-webkit-flex" (and similar changes) update the tests that rely on this. Other than that, we're still testing the prefixed content. A followup patch will add tests for non-prefixed content. * css3/flexbox/display-flexbox-set-get-expected.txt: * css3/flexbox/display-flexbox-set-get.html: * css3/flexbox/flexitem.html: * fast/css-grid-layout/grid-item-display.html: * fast/css/getComputedStyle/computed-style-expected.txt: * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: * fast/css/getComputedStyle/resources/property-names.js: * fast/css/inherit-initial-shorthand-values-expected.txt: * fast/css/inherit-initial-shorthand-values.html: * svg/css/getComputedStyle-basic-expected.txt: * transitions/flex-transitions-expected.txt: * transitions/flex-transitions.html: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@173572 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: If273fd32d5165e8fa504cdfd5b591a17d61f4bbc Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * Crash when creating CSSCalcBinaryOperationAntti Koivisto2016-09-271-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=134886 rdar://problem/17663561 Reviewed by Chris Dumez. Source/WebCore: Test: fast/css/calc-binary-operation-crash.html * css/CSSCalculationValue.cpp: (WebCore::determineCategory): Ensure that both axis are within the addSubtractResult table. Remove unneeded CalcOther test. The call site guarantees it doesn't happen and the normal cases would handle it anyway. Also strengthen some asserts. LayoutTests: * fast/css/calc-binary-operation-crash-expected.txt: Added. * fast/css/calc-binary-operation-crash.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@177089 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: Iaf7199800b78c1397da9335bb3420ab6784f9227 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * REGRESSION (r168685): css calc() expression failsmhodovan.u-szeged@partner.samsung.com2016-09-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=134059 Source/WebCore: The expression 'calc((100% - 20px) / 3' did not work properly after r168685, because primitiveType() function in CSSCalculationValue.cpp has handled CalcPercentLength and CalcPercentNumber categories as if they were angles. The patch fixes this incorrect behavior. Reviewed by Simon Fraser. Test: fast/css/calc-percentage-pixel.html * css/CSSCalculationValue.cpp: LayoutTests: Added test demonstrates that expressions like 'calc((100% - 20px) / 3' work correctly again. Reviewed by Simon Fraser. * fast/css/calc-percentage-pixel-expected.html: Added. * fast/css/calc-percentage-pixel.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170544 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: I2cebbb43b511c8c3634c55a97598d362ae0a1ab3 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * ASSERTION FAILED: leftCategory != CalcOther && rightCategory != CalcOther in ↵Martin Hodovan2016-09-274-13/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WebCore::CSSCalcBinaryOperation::createSimplified https://bugs.webkit.org/show_bug.cgi?id=132870 Source/WebCore: According to the standard, calc() should be able to handle angle, time and frequency values as well: http://www.w3.org/TR/css3-values/#calc Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-13 Reviewed by Darin Adler. Test: fast/css/calc-with-angle-time-frequency.html * css/CSSCalculationValue.cpp: (WebCore::unitCategory): (WebCore::CSSCalcPrimitiveValue::createCalcExpression): (WebCore::CSSCalcPrimitiveValue::computeLengthPx): (WebCore::CSSCalcPrimitiveValue::addSubtractResult): (WebCore::CSSCalcPrimitiveValue::determineCategory): (WebCore::CSSCalcBinaryOperation::primitiveType) * css/CSSCalculationValue.h: extending CalculationCategory * css/CSSParser.cpp: (WebCore::CSSParser::validCalculationUnit): * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::primitiveType): LayoutTests: Added test contains calc() expressions with angle, time and frequency values, covering all the newly introduced unit types, each of which used to fail. Patch by Martin Hodovan <mhodovan.u-szeged@partner.samsung.com> on 2014-05-13 Reviewed by Darin Adler. * fast/css/calc-with-angle-time-frequency-expected.txt: Added. * fast/css/calc-with-angle-time-frequency.html: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168685 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: Id342e513bef2aa147dbfc94d2fc5a72e51fd0f57 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * Crash on shape-outside when using calc()hmuller@adobe.com2016-09-279-354/+741
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=121020 Reviewed by Dirk Schulze. Source/WebCore: This change prevents a crash caused by specifying a CSS Shape geometry Length attribute with a calc() expression. It adds support for converting Lengths to CSSPrimitive Values, in large part by migrating Blink changes made to the calc classes since the split. Doing so required a few supporting changes in some related classes, notably CSSPrimitiveValue. Tests: fast/shapes/shape-inside/shape-inside-calc-crash.html css3/calc/simplification.html * css/BasicShapeFunctions.cpp: (WebCore::convertToCSSPrimitiveValue): Effectively use the new CSSPrimtiveValue(length,style) constructor to convert Lengths to CSSValues. (WebCore::valueForBasicShape): Use the convertToCSSPrimitiveValue() function. (WebCore::convertToLength): Added the CalculatedConversion convertToLength() flag to enable support for calc() valued Length Shape attributes. * css/BasicShapeFunctions.h: * css/CSSCalculationValue.cpp: (WebCore::hasDoubleValue): (WebCore::buildCssText): (WebCore::CSSCalcValue::clampToPermittedRange): (WebCore::CSSCalcValue::doubleValue): (WebCore::CSSCalcExpressionNode::~CSSCalcExpressionNode): (WebCore::CSSCalcPrimitiveValue::create): (WebCore::CSSCalcPrimitiveValue::toCalcValue): (WebCore::CSSCalcPrimitiveValue::doubleValue): (WebCore::CSSCalcPrimitiveValue::computeLengthPx): (WebCore::CSSCalcPrimitiveValue::primitiveType): (WebCore::CSSCalcPrimitiveValue::CSSCalcPrimitiveValue): (WebCore::determineCategory): (WebCore::isIntegerResult): (WebCore::CSSCalcBinaryOperation::create): (WebCore::CSSCalcBinaryOperation::createSimplified): (WebCore::CSSCalcBinaryOperation::doubleValue): (WebCore::CSSCalcBinaryOperation::buildCssText): (WebCore::CSSCalcBinaryOperation::primitiveType): (WebCore::CSSCalcBinaryOperation::CSSCalcBinaryOperation): (WebCore::CSSCalcBinaryOperation::getNumberSide): (WebCore::CSSCalcBinaryOperation::evaluate): (WebCore::CSSCalcBinaryOperation::evaluateOperator): (WebCore::CSSCalcExpressionNodeParser::parseValue): (WebCore::CSSCalcExpressionNodeParser::parseValueTerm): (WebCore::CSSCalcExpressionNodeParser::parseValueMultiplicativeExpression): (WebCore::CSSCalcExpressionNodeParser::parseAdditiveValueExpression): (WebCore::CSSCalcValue::createExpressionNode): (WebCore::CSSCalcValue::create): * css/CSSCalculationValue.h: (WebCore::CSSCalcExpressionNode::category): (WebCore::CSSCalcValue::create): (WebCore::CSSCalcValue::isInt): (WebCore::CSSCalcValue::permittedValueRange): (WebCore::CSSCalcValue::expressionNode): (WebCore::CSSCalcValue::CSSCalcValue): (WebCore::toCSSCalcValue): * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::propertyValue): Pass the style along to the new valueForBasicShape() function. * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::unitCategory): Made this function public so that CSSCalculationValue could use it. (WebCore::CSSPrimitiveValue::conversionToCanonicalUnitsScaleFactor): Ditto. (WebCore::CSSPrimitiveValue::primitiveType): Cleared trailing whitespace. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Construct a CSSPrimitiveValue from a Length and a RenderStyle*. (WebCore::CSSPrimitiveValue::init): The common part of the two Length CSSPrimitiveValue constructors. (WebCore::CSSPrimitiveValue::computeLengthDouble): Moved the case labels to the left per check-webkit-style. (WebCore::CSSPrimitiveValue::getStringValue): Ditto. (WebCore::CSSPrimitiveValue::getDoubleValue): Removed trailing whitespace. * css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::create): Construct a CSSPrimitiveValue from a Length and a RenderStyle*. (WebCore::toCSSPrimitiveValue): Check the CSSValue*'s validity with ASSERT_WITH_SECURITY_IMPLICATION before casting to CSSPrimitiveValue*. * css/CSSValuePool.h: (WebCore::CSSValuePool::createValue): A new overload that delegates to the new CSSPrimitiveValue(length,style) constructor. * platform/CalculationValue.h: (WebCore::CalculationValue::operator==): (WebCore::CalculationValue::isNonNegative): (WebCore::CalculationValue::expression): (WebCore::CalcExpressionNumber::value): (WebCore::toCalcExpressionNumber): (WebCore::CalcExpressionLength::CalcExpressionLength): (WebCore::CalcExpressionLength::length): (WebCore::toCalcExpressionLength): (WebCore::CalcExpressionBinaryOperation::leftSide): (WebCore::CalcExpressionBinaryOperation::rightSide): (WebCore::CalcExpressionBinaryOperation::getOperator): (WebCore::toCalcExpressionBinaryOperation): (WebCore::CalcExpressionBlendLength::CalcExpressionBlendLength): (WebCore::CalcExpressionBlendLength::from): (WebCore::CalcExpressionBlendLength::to): (WebCore::CalcExpressionBlendLength::progress): (WebCore::toCalcExpressionBlendLength): LayoutTests: Specifying a CSS Shape geometry Length attribute with a calc() expression or looking up the value with getComputedStyle(), caused crashes. * fast/shapes/shape-inside/shape-inside-calc-crash-expected.txt: Added. * fast/shapes/shape-inside/shape-inside-calc-crash.html: Added. * css3/calc/simplification-expected.txt: Added * css3/calc/simplification.html: Added * LayoutTests/css3/calc/cssom-expected.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156586 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: I38216be400bd7024999444d9c1c7e5ad79cce2de Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * CSS Unit vmax and vmin in border-width not handledGurpreet Kaur2016-09-273-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=121421 Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2013-09-19 Reviewed by Darin Adler. Source/WebCore: Border properties were not applied incase its values were given in vmax/vmin units. Tests: fast/css/viewport-vmax-border.html fast/css/viewport-vmin-border.html * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::computeLengthDouble): * css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::isViewportPercentageMax): (WebCore::CSSPrimitiveValue::isViewportPercentageMin): * css/DeprecatedStyleBuilder.cpp: (WebCore::ApplyPropertyComputeLength::applyValue): Calculating the border values which has been specified in vmax/vmin units. 1vmax: 1vw or 1vh, whatever is largest. 1vmin: 1vw or 1vh, whatever is smallest. The vh/vw units are calcultated as percent of viewport height and viewport width respectively. LayoutTests: * fast/css/viewport-vmax-border-expected.txt: Added. * fast/css/viewport-vmax-border.html: Added. * fast/css/viewport-vmin-border-expected.txt: Added. * fast/css/viewport-vmin-border.html: Added. Added new tests for verifying that border properties are applied when its values are given in vmax/vmin units. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156091 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: I90501069a30cc57be3483c6048aa88568c6570f1 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * CSS Unit vw in border-width maps to 0pxGurpreet Kaur2016-09-273-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=109229 Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2013-09-12 Reviewed by Darin Adler. Source/WebCore: Border and outline properties were not applied incase its values were given in vh/vw units. Tests: fast/css/viewport-height-border.html fast/css/viewport-height-outline.html fast/css/viewport-width-border.html fast/css/viewport-width-outline.html * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::computeLengthDouble): Added case CSS_VH and CSS_VW. * css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::isViewportPercentageWidth): (WebCore::CSSPrimitiveValue::isViewportPercentageHeight): Added APIs to check the unit type(CSS_VW and CSS_VH). * css/DeprecatedStyleBuilder.cpp: (WebCore::ApplyPropertyComputeLength::applyValue): Calculating the border values which has been specified in vh/vw units.The vh/vw units are calcultated as percent of viewport height and viewport width respectively. LayoutTests: * fast/css/viewport-height-border-expected.txt: Added. * fast/css/viewport-height-border.html: Added. * fast/css/viewport-height-outline-expected.txt: Added. * fast/css/viewport-height-outline.html: Added. * fast/css/viewport-width-border-expected.txt: Added. * fast/css/viewport-width-border.html: Added. * fast/css/viewport-width-outline-expected.txt: Added. * fast/css/viewport-width-outline.html: Added. Added new tests for verifying that border and outline properties are applied when its values are given in vh/vw units. * resources/js-test-pre.js: (shouldNotBeEqualToString): Added this API so that can compare two strings.Similiar to shouldBeEqualToString. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155624 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: I77c04e5ace2d16158502295622132551a8b866fd Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | * Adjust the size of native popupsVitaliy Slobodin2016-09-191-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When WebKit renders a native control without appearance (-webkit-appearance: none;) for the menu list, it uses the width of the element for the popup size. We need to manually adjust the width of the popup to the longest name. Change-Id: I5883095ab0199c3360ed3fe45d2e2dace416cc4a Reviewed-by: Konstantin Tokarev <annulen@yandex.ru> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-09-173-4/+44
| | |\ \ | | | |/ | | | | | | | | Change-Id: I1dbddcbe3fa01638c6c9a0ed8b1c2f39d9389558
| | | * Merge remote-tracking branch 'origin/5.6.2' into 5.6Liang Qi2016-09-172-1/+41
| | | |\ | | | | | | | | | | | | | | | Change-Id: I18e4b5a903bf689636f112108e59162147708866
| | | | * Changes for 5.6.25.6.2Konstantin Tokarev2016-09-091-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: If817b994f89ede46fb1b20e5f54bc9027b2022f9 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | | | * Fixed documentation of QWebSettings::JavascriptCanOpenWindowsKonstantin Tokarev2016-09-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I1e22cba3fb1807302ad2fa868e875d762a369ac0 Reviewed-by: Florian Bruhin <qt-project.org@the-compiler.org> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| | | * | Fix generator scripts to work with python3Frederik Gladhorn2016-09-151-3/+3
| | | |/ | | | | | | | | | | | | | | | | Change-Id: Ic3f70861e3bbd69821d75527f1206a564ab69e2c Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
| | * | Merge remote-tracking branch 'origin/5.6' into 5.7Simon Hausmann2016-08-254-7/+12
| | |\ \ | | | |/ | | | | | | | | Change-Id: I012e290914d5ea3030c54c730914204e0f4a8b0b
| | | * Prospective build fix for WindowsSimon Hausmann2016-08-222-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to commit 770a0c91f3fadcdb132d9eb96d085aafbe1bacd0 in qtbase we may need a heuristic for the COPIES assignment for the qmldir file to protect against copying the same file twice to the same location on debug-and-release builds on Windows. Change-Id: I60d34d218856a70c242824b9253d229d2d33d48d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>