summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Apply fix from Paul Sherwood to cut memory usage needed for the qtwebkit buildbaserock/morphRichard Dale2013-07-211-0/+1
|
* Merge v5.1.0 releaseRichard Dale2013-07-0432-906/+675
|\
| * [Qt][Mac] Disable QTKit video on OS X.v5.1.0-rc2v5.1.0Michael Brüning2013-06-132-55/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=117591 Reviewed by Tor Arne Vestbø. Source/WebCore: Deployment of the same Qt binaries to different Mac OS X version makes it impossible to link against the correct WebKitSystemInterface version at build time. No new tests, no behavioural change. * WebCore.pri: Tools: Deployment of Qt binaries to different Mac OS X platform version makes it impossible to link against the correct version of the WebKitSystemInterface library, so we need to disable QTKit for media elements. * qmake/mkspecs/features/features.prf: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151546 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: I8ad054ffc1896de1cc461efed0a5786337c29261 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
| * Glyphs may fail to render when using SVG fontv5.1.0-rc1graouts@apple.com2013-06-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=115193 Reviewed by Simon Fraser. Calling SimpleFontData::applyTransforms() when the font used is an SVG font makes little sense since Core Text doesn’t know or understand SVG fonts and would be passed some other, unrelated platform font. * platform/graphics/SimpleFontData.h: (WebCore::SimpleFontData::applyTransforms): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149144 268f45cc-cd09-0410-ab3c-d52691b4dbfc Task-number: QTBUG-31663 Change-Id: Ic631da7c64e477c4f6199053584d36827bd3a5b1 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Robert Loehning <robert.loehning@digia.com>
| * [Qt] Fix a crash under ~PingLoader when the QNAM on the page has been destroyed.Jocelyn Turcotte2013-06-063-14/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=116035 Reviewed by Allan Sandfeld Jensen. Source/WebCore: The previous fix only moved the crash location from WebKit down to QNetworkReplyHttpImpl which expects its QNetworkAccessManager to still be alive. Fix it by watching the QNetworkReply's destroyed() signal and avoid the dangling pointer instead. The QNetworkReply doesn't need to be aborted in this case anyway. * platform/network/qt/QNetworkReplyHandler.cpp: (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper): (WebCore::QNetworkReplyWrapper::release): (WebCore::QNetworkReplyWrapper::stopForwarding): Rename resetConnections to stopForwarding since not all connections are related to data forwarding to the client anymore. (WebCore::QNetworkReplyWrapper::receiveMetaData): (WebCore::QNetworkReplyWrapper::replyDestroyed): (WebCore::QNetworkReplyWrapper::didReceiveFinished): * platform/network/qt/QNetworkReplyHandler.h: (QNetworkReplyWrapper): Source/WebKit/qt: * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::networkReplyParentDidntChange): Change test to match the new expectation. (tst_QWebPage::destroyQNAMBeforeAbortDoesntCrash): Change-Id: I5e82b8ccc8fccf496669af8de76888e367480f67 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150120 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
| * [Qt] Fix a crash under ~PingLoader when the QNAM on the page has been destroyed.Jocelyn Turcotte2013-06-062-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=116035 Reviewed by Simon Hausmann. Source/WebCore: Reproduced with arora which does destroy the QNetworkAccessManager in some situations. The problem is that PingLoader can still be pending meanwhile, holding a ResourceHandle with a dangling pointer to a QNetworkReply destroyed with the QNetworkAccessManager. * platform/network/qt/QNetworkReplyHandler.cpp: (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper): Set the parent to 0 like we did before the introduction of QNetworkReplyWrapper. (WebCore::QNetworkReplyWrapper::release): Source/WebKit/qt: * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::networkReplyParentChanged): Change-Id: Id53db216a6252f8471d6fa97093312843213e48d git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150057 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
| * [Qt] Re-enable plugins on Mac.Jocelyn Turcotte2013-06-068-12/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=116622 Reviewed by Tor Arne Vestbø. Source/WebCore: * platform/FileSystem.h: * platform/qt/FileSystemQt.cpp: (WebCore::unloadModule): - Q_WS_* aren't defined since Qt5, use Q_OS_MACX instead. * plugins/mac/PluginPackageMac.cpp: (WebCore::PluginPackage::fetchInfo): (WebCore::PluginPackage::load): - createCFString now does the adoption itself. * plugins/mac/PluginViewMac.mm: - Add missing include. Source/WebKit/qt: * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::windowResizerRect): - Add missing parenthese. Tools: Plugins on Mac were only enabled if !embedded but the later was set if QPA is enabled, which is the default since Qt 5.0. Remove references to 'embedded' and fix various build issues, PluginViewMac.mm and PluginPackageMac.cpp haven't been compiled since a few months. * DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro: * qmake/mkspecs/features/features.prf: * qmake/mkspecs/features/unix/default_pre.prf: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151109 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/WebCore/platform/FileSystem.h Source/WebCore/plugins/mac/PluginPackageMac.cpp Change-Id: I38dc6170ca868b54f8092aa6b271ace4911a2390 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
| * [Qt][Mac] Allow drawing plugins with QWindow by always using an intermediate ↵Jocelyn Turcotte2013-06-063-188/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bitmap. https://bugs.webkit.org/show_bug.cgi?id=116620 Reviewed by Tor Arne Vestbø. The isolation of QWidget along with QPA in Qt5 is abstracting away the native CGContext of a QWidget and we would need to create a non-public API to be able to achieve it. Instead of adding complexity to this rarely touched code, always draw into an intermediate bitmap that we then paint into our QPainter afterward. - Use CGBitmapContextCreate to allocate a buffer directly instead of creating a QPixmap and extract an CGContextRef out of it. - Get rid of the "if (platformPluginWidget())" code path since we don't paint directly into the QWidget's backing store anymore. - Always use m_contextRef to draw the plugin instead of alternating between direct and indirect drawing. * plugins/PluginView.cpp: (WebCore::PluginView::PluginView): * plugins/PluginView.h: * plugins/mac/PluginViewMac.mm: (WebCore::createBitmapContext): (WebCore::PluginView::platformStart): (WebCore::PluginView::platformDestroy): (WebCore::PluginView::setFocus): (WebCore::PluginView::setNPWindowIfNeeded): (WebCore::PluginView::updatePluginWidget): (WebCore::PluginView::paint): (WebCore::PluginView::invalidateRect): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151107 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/WebCore/plugins/PluginView.h Source/WebCore/plugins/mac/PluginViewMac.mm Change-Id: I1006dcf3c08c14ca0d144532372de33f815fbc23 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
| * [Qt][Mac] Remove Carbon and QuickDraw support for plugins.Jocelyn Turcotte2013-06-063-515/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=116619 Reviewed by Tor Arne Vestbø. They are only enabled for 32bit builds of QtWebKit and are rarely tested. Other browsers support them through a 32bit host process. PluginViewMac.mm is only used by Qt since the Wx port was removed. - Only support the Cocoa event model - Only support the CoreGraphics drawing model - Remove all NP_NO_CARBON and NP_NO_QUICKDRAW blocks in PluginViewMac.mm * plugins/PluginView.cpp: (WebCore::PluginView::setValue): (WebCore::PluginView::PluginView): * plugins/PluginView.h: * plugins/mac/PluginViewMac.mm: (WebCore::PluginView::platformStart): (WebCore::PluginView::platformDestroy): (WebCore::PluginView::platformGetValueStatic): (WebCore::PluginView::setFocus): (WebCore::PluginView::setNPWindowIfNeeded): (WebCore::PluginView::paint): (WebCore::PluginView::handleWheelEvent): (WebCore::PluginView::handleMouseEvent): (WebCore::PluginView::handleKeyboardEvent): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151106 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/WebCore/plugins/mac/PluginViewMac.mm Change-Id: Id4939dfe00a306299ab54c28b03f949ce4beb4d8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
| * Crash when loading link to audio fileAllan Sandfeld Jensen2013-06-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=115794 Reviewed by Jocelyn Turcotte. Do not access a null pointer frame. * loader/appcache/ApplicationCacheHost.cpp: (WebCore::ApplicationCacheHost::isApplicationCacheEnabled): Change-Id: I1c7c8ea84394f669e565634f71720ae504ceded4 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149733 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
| * Make PNGImageDecoder::rowAvailable auto-vectorizableAllan Sandfeld Jensen2013-06-064-28/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=116151 Reviewed by Benjamin Poulain. Changed the main loops under PNGImageDecoder::rowAvailable so that they avoid branches and non-sequential table look ups. Together with automatic vectorization by the compiler this provides around 4x speed-up with AVX or 2x speed-up on generic x64. Shaving off 12-40% on PNG decoding in general. * platform/graphics/Color.cpp: (WebCore::premultipliedARGBFromColor): * platform/graphics/Color.h: (WebCore::fastDivideBy255): * platform/graphics/filters/FEBlend.cpp: * platform/image-decoders/png/PNGImageDecoder.cpp: (WebCore::setPixelRGB): (WebCore::setPixelRGBA): (WebCore::setPixelRGBA_Premultiplied): (WebCore::PNGImageDecoder::rowAvailable): Change-Id: Ic3d6cefda505ebceb37165d0a7aeb3cd2fe3e2c9 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150252 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
| * [Qt] Fix a crash in QtPixmapRuntime.Jocelyn Turcotte2013-06-061-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=117193 Reviewed by Allan Sandfeld Jensen. The crash could only be reproduced in release builds on Windows. JSClassCreate calculates the size of JSClassDefinition.staticValues and staticFunctions by iterating until an entry with a null name is found. * bridge/qt/qt_pixmapruntime.cpp: (JSC::Bindings::QtPixmapRuntime::getClassRef): Task-number: QTBUG-30736 Change-Id: I443c69fd6772b78edbdadb6270c30229b30d992d git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151170 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
| * [Qt][Win] Input events aren't mapped properly with windowless plugins.Jocelyn Turcotte2013-06-044-24/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=116094 Reviewed by Tor Arne Vestbø. Source/WebCore: The events are first sent properly but Flash then immediately repaints and this causes flickering painting. The issue is that Flash seems to be doing some input event tracking of its own internally, using the HWND returned through NPN_GetValue(NPNVnetscapeWindow). We are currently using two coordinate systems for windowless plugins on Windows with Qt: - FrameView coordinates: Used for input events and ajusted with the WM_WINDOWPOSCHANGED message - Drawable coordinates: Used by WM_PAINT and adjusted with NPP_SetWindow This patch fixes the bug by mapping input events to the native window returned as NPNVnetscapeWindow instead of the FrameView to ensure that those coordinates will match the ones used by Flash internally. With this we shouldn't be using FrameView coordinates anywhere for windowless plugins on Windows with Qt. * platform/qt/QWebPageClient.h: (QWebPageClient): Added mapToOwnerWindow to the interface, mapping from the FrameView up to the wrapping nativeParentWidget. * plugins/win/PluginViewWin.cpp: (WebCore::contentsToNativeWindow): (WebCore::PluginView::paintIntoTransformedContext): (WebCore::PluginView::handleMouseEvent): Source/WebKit/qt: * WidgetSupport/PageClientQt.cpp: (WebCore::PageClientQWidget::mapToOwnerWindow): (WebCore::PageClientQGraphicsWidget::makeOpenGLContextCurrentIfAvailable): (WebCore::PageClientQGraphicsWidget::screenNumber): (WebCore::PageClientQGraphicsWidget::geometryRelativeToOwnerWidget): (WebCore::PageClientQGraphicsWidget::mapToOwnerWindow): (WebCore::PageClientQGraphicsWidget::graphicsItemVisibleRect): (WebCore::PageClientQGraphicsWidget::firstGraphicsView): Extracted this common logic from makeOpenGLContextCurrentIfAvailable, screenNumber, geometryRelativeToOwnerWidget and graphicsItemVisibleRect to be able to use it in mapToOwnerWindow. * WidgetSupport/PageClientQt.h: (PageClientQWidget): (PageClientQGraphicsWidget): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150749 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/WebCore/plugins/win/PluginViewWin.cpp Change-Id: I11ec6b6a9377c3e09b775d24fffb8572decbd0a5 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
| * Font’s fast code path doesn’t handle partial runs correctly when kerning ↵Allan Sandfeld Jensen2013-05-295-80/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | or ligatures are enabled https://bugs.webkit.org/show_bug.cgi?id=100050 Not reviewed for WebKit. Always let WidthIterator iterate over an entire TextRun to avoid problems with pixel rounding or shaping on partial runs. This fix is necessary for Qt because the complex font-path can not disable shaping, leading to the complex path painting slighly different from the fast path, which messes up selection painting. No change in functionality, no new tests. * platform/graphics/Font.cpp: (WebCore::Font::drawText): (WebCore::Font::drawEmphasisMarks): (WebCore::Font::selectionRectForText): (WebCore::Font::offsetForPosition): * platform/graphics/FontFastPath.cpp: (WebCore::Font::getGlyphsAndAdvancesForSimpleText): (WebCore::Font::selectionRectForSimpleText): (WebCore::Font::offsetForPositionForSimpleText): * platform/graphics/GlyphBuffer.h: (WebCore::GlyphBuffer::add): (GlyphBuffer): * platform/graphics/WidthIterator.cpp: (WebCore::WidthIterator::advanceInternal): * platform/graphics/WidthIterator.h: (WidthIterator): Removed now unused advanceOneCharacter method. Change-Id: I3647de93774bf2502ee37c7eb6d623790a691b42 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
| * Add all plugins.qmltypes files and update qmldir filesLiang Qi2013-05-292-0/+200
| | | | | | | | | | | | | | | | | | | | Note: qmlplugindump need to be patched with https://codereview.qt-project.org/55247 Task-number: QTBUG-31388 Change-Id: I6bdcffc978b7a994e624541d949e8906dad08b21 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* | Add qtwebkit.morph to build the chunkRichard Dale2013-05-301-0/+15
|/
* sync.profile: Point dependencies to an empty stringSergio Ahumada2013-05-261-4/+5
| | | | | | | | | | | This means that we are going to use the same branch name for the dependencies as the branch of the repository under test. If we are testing the 'stable' branch, all dependencies will point to the 'stable' branch as well. Change-Id: I8bef9c4860ad221a502411df669b4668c396a988 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
* LLInt conditional branch compilation fault on MIPS.Balazs Kilvady2013-05-232-14/+20
| | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=114264 Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-04-09 Reviewed by Filip Pizlo. Fix conditional branch compilation in LLInt offlineasm. * offlineasm/mips.rb: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148045 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/JavaScriptCore/ChangeLog Change-Id: I31b5c06f4424d06785ae53f2f5e34584082b4b02 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Bug in atomicIncrement implementation for MIPS GCCBalazs Kilvady2013-05-232-2/+12
| | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=110969 Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-27 Reviewed by Csaba Osztrogonác. Fix of __sync_[add|sub]_and_fetch_8 for GCC patch. * wtf/Atomics.cpp: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144174 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/WTF/ChangeLog Change-Id: Idfbf4df4de1ea38f48c0e5f51a02da514c79a7e6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix the atomicIncrement implementation for MIPS GCCBalazs Kilvady2013-05-235-0/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=106739 Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-26 Reviewed by Oliver Hunt. Implementation of missing __sync_[add|sub]_and_fetch_8 functions. Some architectures, like MIPS32, don't have GCC implementation for builtin __sync_* functions with 64 bits variable size. GCC answer for the problem: If a target doesn't support atomic operations on certain variable sizes, you are out of luck with atomicity in that case (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56296). GCC >= 4.8 will support __atomic_* builtin functions for this purpose for all the GCC targets, but for current compilers we have to include our own implementation. * GNUmakefile.list.am: * WTF.pro: * wtf/Atomics.cpp: Added. (WTF): (WTF::getSwapLock): (WTF::atomicStep): * wtf/CMakeLists.txt: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144077 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/WTF/ChangeLog Change-Id: I98ce0ccd6747253ae6fa36fe9d338e155945a043 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* offlineasm BaseIndex handling is broken on ARM due to MIPS changesBalazs Kilvady2013-05-233-4/+46
| | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=108261 Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-01 Reviewed by Filip Pizlo. offlineasm BaseIndex handling fix on MIPS. * offlineasm/mips.rb: * offlineasm/risc.rb: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141641 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/JavaScriptCore/ChangeLog Source/JavaScriptCore/offlineasm/mips.rb Change-Id: I7ec4d500e11717e1cb2b6fd7f310e4e66cfa7955 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* MIPS DFG implementation.Balazs Kilvady2013-05-2313-73/+888
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=101328 Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-18 Reviewed by Oliver Hunt. DFG implementation for MIPS. Source/JavaScriptCore: * assembler/MIPSAssembler.h: (JSC::MIPSAssembler::MIPSAssembler): (JSC::MIPSAssembler::sllv): (JSC::MIPSAssembler::movd): (MIPSAssembler): (JSC::MIPSAssembler::negd): (JSC::MIPSAssembler::labelForWatchpoint): (JSC::MIPSAssembler::label): (JSC::MIPSAssembler::vmov): (JSC::MIPSAssembler::linkDirectJump): (JSC::MIPSAssembler::maxJumpReplacementSize): (JSC::MIPSAssembler::revertJumpToMove): (JSC::MIPSAssembler::replaceWithJump): * assembler/MacroAssembler.h: (MacroAssembler): (JSC::MacroAssembler::poke): * assembler/MacroAssemblerMIPS.h: (JSC::MacroAssemblerMIPS::add32): (MacroAssemblerMIPS): (JSC::MacroAssemblerMIPS::and32): (JSC::MacroAssemblerMIPS::lshift32): (JSC::MacroAssemblerMIPS::mul32): (JSC::MacroAssemblerMIPS::or32): (JSC::MacroAssemblerMIPS::rshift32): (JSC::MacroAssemblerMIPS::urshift32): (JSC::MacroAssemblerMIPS::sub32): (JSC::MacroAssemblerMIPS::xor32): (JSC::MacroAssemblerMIPS::store32): (JSC::MacroAssemblerMIPS::jump): (JSC::MacroAssemblerMIPS::branchAdd32): (JSC::MacroAssemblerMIPS::branchMul32): (JSC::MacroAssemblerMIPS::branchSub32): (JSC::MacroAssemblerMIPS::branchNeg32): (JSC::MacroAssemblerMIPS::call): (JSC::MacroAssemblerMIPS::loadDouble): (JSC::MacroAssemblerMIPS::moveDouble): (JSC::MacroAssemblerMIPS::swapDouble): (JSC::MacroAssemblerMIPS::subDouble): (JSC::MacroAssemblerMIPS::mulDouble): (JSC::MacroAssemblerMIPS::divDouble): (JSC::MacroAssemblerMIPS::negateDouble): (JSC::MacroAssemblerMIPS::branchEqual): (JSC::MacroAssemblerMIPS::branchNotEqual): (JSC::MacroAssemblerMIPS::branchTruncateDoubleToInt32): (JSC::MacroAssemblerMIPS::branchTruncateDoubleToUint32): (JSC::MacroAssemblerMIPS::truncateDoubleToInt32): (JSC::MacroAssemblerMIPS::truncateDoubleToUint32): (JSC::MacroAssemblerMIPS::branchDoubleNonZero): (JSC::MacroAssemblerMIPS::branchDoubleZeroOrNaN): (JSC::MacroAssemblerMIPS::invert): (JSC::MacroAssemblerMIPS::replaceWithJump): (JSC::MacroAssemblerMIPS::maxJumpReplacementSize): * dfg/DFGAssemblyHelpers.h: (AssemblyHelpers): (JSC::DFG::AssemblyHelpers::preserveReturnAddressAfterCall): (JSC::DFG::AssemblyHelpers::restoreReturnAddressBeforeReturn): (JSC::DFG::AssemblyHelpers::debugCall): * dfg/DFGCCallHelpers.h: (CCallHelpers): (JSC::DFG::CCallHelpers::setupArguments): (JSC::DFG::CCallHelpers::setupArgumentsWithExecState): * dfg/DFGFPRInfo.h: (DFG): (FPRInfo): (JSC::DFG::FPRInfo::toRegister): (JSC::DFG::FPRInfo::toIndex): (JSC::DFG::FPRInfo::debugName): * dfg/DFGGPRInfo.h: (DFG): (GPRInfo): (JSC::DFG::GPRInfo::toRegister): (JSC::DFG::GPRInfo::toIndex): (JSC::DFG::GPRInfo::debugName): * dfg/DFGSpeculativeJIT.h: (SpeculativeJIT): * jit/JSInterfaceJIT.h: (JSInterfaceJIT): * runtime/JSGlobalData.h: (JSC::ScratchBuffer::allocationSize): (ScratchBuffer): Source/WTF: * wtf/Platform.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143247 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/JavaScriptCore/ChangeLog Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h Source/WTF/ChangeLog Change-Id: Ibc6c2a2b1d5c70d351ede37c6c111b66b4cf7fef Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* MIPS LLInt implementation.Balazs Kilvady2013-05-2313-19/+1059
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=99706 Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-01-07 Reviewed by Filip Pizlo. LLInt implementation for MIPS. Source/JavaScriptCore: * assembler/MacroAssemblerMIPS.h: (JSC::MacroAssemblerMIPS::jump): * dfg/DFGOperations.cpp: (JSC): * jit/JITStubs.cpp: (JSC): * jit/JITStubs.h: (JITStackFrame): * llint/LLIntOfflineAsmConfig.h: * llint/LowLevelInterpreter.asm: * llint/LowLevelInterpreter32_64.asm: * offlineasm/backends.rb: * offlineasm/instructions.rb: * offlineasm/mips.rb: Added. Source/WTF: * wtf/Platform.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@138970 268f45cc-cd09-0410-ab3c-d52691b4dbfc Conflicts: Source/JavaScriptCore/ChangeLog Source/JavaScriptCore/jit/JITStubs.h Change-Id: I1677d54c1641cf60e517772944582c8f387eeb6d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Crash when calling QWebFrame::evaluateJavaScriptAllan Sandfeld Jensen2013-05-212-15/+23
| | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=113434 Reviewed by Simon Hausmann. Ensure we hold the JSLock when converting JSValue to JSValueRef. * Api/qwebelement.cpp: (setupScriptContext): (QWebElement::evaluateJavaScript): * WebCoreSupport/QWebFrameAdapter.cpp: (QWebFrameAdapter::evaluateJavaScript): Change-Id: I1bcab3ec31d1fbbb55246982a2c69e72ae9d0948 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149671 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Crash when calling QWebFrame::evaluateJavaScriptAllan Sandfeld Jensen2013-05-211-1/+8
| | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=113434 Reviewed by Simon Hausmann. We must take the JS API lock before accessing internal JS methods. * bridge/qt/qt_runtime.cpp: (JSC::Bindings::unwrapBoxedPrimitive): (JSC::Bindings::getGregorianDateTimeUTC): (JSC::Bindings::convertQVariantToValue): Change-Id: Id06381d1a68da8e33020da7960e6b6943fd374f1 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149521 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix testing if program exists in PATHJonathan Liu2013-05-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=116216 Patch by Jonathan Liu <net147@gmail.com> on 2013-05-16 Reviewed by Jocelyn Turcotte. functions.prf incorrectly uses win_cmd_shell to test whether to add .exe to the executable name when checking if it exists in the PATH environment variable. This works correctly when building using Windows Command Prompt but not under MSYS shell. To resolve this, check the win32 platform scope instead of win_cmd_shell so that it correctly adds .exe to the executable name on Windows regardless of the shell used when testing if it exists in PATH. * qmake/mkspecs/features/functions.prf: Change-Id: Ide88521e4922da89ce49dc4bccbce790e753804e git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150223 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] RGB -> BGR is wrong on big endianAllan Sandfeld Jensen2013-05-163-46/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=107560 Reviewed by Jocelyn Turcotte. Replace the conversion to methods that make it clearer what is going on. The routines are also optimized compared to the existing by avoiding going over slow Color constructor. Tested by existing tests in canvas and fast/canvas. * platform/graphics/Color.cpp: (WebCore::colorFromPremultipliedARGB): Cleanup. (WebCore::premultipliedARGBFromColor): Cleanup and correct for alpha = 0. * platform/graphics/Color.h: (WebCore): * platform/graphics/qt/ImageBufferQt.cpp: (WebCore::copyColorToRGBA): (WebCore::copyRGBAToColor): (WebCore::getImageData): (WebCore::ImageBuffer::putByteArray): Change-Id: I8948ad3376610a42374ece6b96d4a1be9c15c198 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141886 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* QQuickWindowPrivate::setRenderWithoutShowing has been removed from Qt 5v5.1.0-beta1abecsi@webkit.org2013-05-071-1/+0
| | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=114808 Reviewed by Jocelyn Turcotte. QQuickWindow::grabWindow() has been implemented for isVisible=false for Qt 5.1. (https://codereview.qt-project.org/#change,54234) * WebKitTestRunner/qt/PlatformWebViewQt.cpp: (WTR::WrapperWindow::handleStatusChanged): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149667 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: Ia99581d147ff7444cc791e937a39fea70f18c0b2 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] REGRESSION(r146630): 8 text related test asserts on debug buildsAllan Sandfeld Jensen2013-05-061-2/+2
| | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=113179 Reviewed by Jocelyn Turcotte. Test if range.start is within the valid range before testing the value at that point. * platform/graphics/qt/FontQt.cpp: (WebCore::Font::initFormatForTextLayout): Change-Id: I4baf6b0d7fbc49f947799deec04be187bd581153 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146761 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Build failures when building with python 3.3Tor Arne Vestbø2013-05-032-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=106194 Reviewed by Dirk Pranke. Python 3.3 introduced changes to dictionaries which can result in changed iteration order. More about these changes: http://docs.python.org/3.3/whatsnew/3.3.html#pep-412-key-sharing-dictionary http://www.python.org/dev/peps/pep-0412/#cons This causes the Source/WebCore/inspector/generate-inspector-protocol-version script to fail the self-testing when using Python 3.3. These changes work around this problem by not checking for expected errors in order but rather for their presence in the error output sequence. The number of actual errors is also checked to be equal to the number of expected errors. No new tests - no new functionality. * inspector/generate-inspector-protocol-version: (self_test): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@139081 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: I13c3e499bcb662466701879d015f5a378a28cd0b Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Assert in JSC::Heap::unprotect when closing facebook.com web siteAllan Sandfeld Jensen2013-04-301-0/+1
| | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=115058 Reviewed by Darin Adler. Grab a JSLock before calling RootObject::invalidate(). * bindings/js/ScriptController.cpp: (WebCore::ScriptController::~ScriptController): Change-Id: I7bd89efc0ed069f4843d407716d821f132d424ba git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149188 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] Animated opacity does not trigger accelerated compositingAllan Sandfeld Jensen2013-04-303-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=115107 Reviewed by Simon Fraser. Source/WebCore: Add extra option to also trigger compositing on animated opacity. * page/ChromeClient.h: * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::requiresCompositingForAnimation): Source/WebKit/qt: We should trigger compositing on animated opacity as it is always faster on Qt. * WebCoreSupport/ChromeClientQt.cpp: VideoTrigger removed because we have already disabled AC for video in qwebsettings. Change-Id: I811a9175d96a57621345d2225d6930669a487aa5 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149123 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Late-loading stylesheets can cause composited layers to be blankSimon Fraser2013-04-306-23/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=103773 Reviewed by Tim Horton. Early painting can be short-circuited in RenderBlock::paintContents() if we know a stylesheet is pending, which is done to avoid a flash of unstyled content (FOUC). When the stylesheet finally loaded, Document::styleResolverChanged() would try to repaint everything by calling repaint() on the RenderView(). In a composited world, however, this repaint() doesn't repaint composited layers. This was particularly prevalent on this specific URL because it failed to load a CSS file from typekit.com, so Document::styleResolverChanged() just did the repaint and returned (rather than doing a recalc style as would happen for correctly loaded stylesheets). Fix by making a way to repaint all compositing layers, and calling it from Document::styleResolverChanged(). No tests because this is timing-dependant. * dom/Document.cpp: (WebCore::Document::styleResolverChanged): Call repaintViewAndCompositedLayers(). * rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintContents): Fix the comment. * rendering/RenderLayerCompositor.cpp: Convert repaintCompositedLayersAbsoluteRect() and associated recursiveRepaintLayerRect() to allow the rect to be null, which indicates that we should just repaint the entire layer, and improve their names. (WebCore::RenderLayerCompositor::repaintCompositedLayers): (WebCore::RenderLayerCompositor::recursiveRepaintLayer): * rendering/RenderLayerCompositor.h: * rendering/RenderView.cpp: (WebCore::RenderView::repaintRectangleInViewAndCompositedLayers): repaintCompositedLayersAbsoluteRect() was renamed to repaintCompositedLayers(). (WebCore::RenderView::repaintViewAndCompositedLayers): * rendering/RenderView.h: (RenderView): repaintViewRectangle() and repaintRectangleInViewAndCompositedLayers() should not be virtual. Add repaintViewAndCompositedLayers(). Change-Id: I86401d25d06128db33a5e5db099144d6b05850ef git-svn-id: http://svn.webkit.org/repository/webkit/trunk@136277 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix the USE(3D_GRAPHICS) build with the standard OpenGL on WindowsJocelyn Turcotte2013-04-303-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=114684 Reviewed by Simon Hausmann. Source/WebCore: Currently USE(3D_GRAPHICS) is only supported with OpenGLES through ANGLE on Windows. Allow building with the stock opengl32.lib on Windows by adding missing glCompressedTex* entries in OpenGLShims. Those are used in Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp and will be substituted by the preprocessor. * platform/graphics/OpenGLShims.cpp: (WebCore::initializeOpenGLShims): * platform/graphics/OpenGLShims.h: (_OpenGLFunctionTable): Tools: Remove the ANGLE requirement for USE(3D_GRAPHICS). This enables WebKit2 in the build when using a "-opengl desktop" configured Qt. * qmake/mkspecs/features/features.prf: Change-Id: Ia4a8f37944eb2cc168bc2428179f826167448e5c git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149355 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* [Qt] WebKit fails to compile if EGL headers are not in default INCLUDEPATHFloris Bos2013-04-222-1/+16
| | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=111859 Patch by Floris Bos <bos@je-eigen-domein.nl> on 2013-03-12 Reviewed by Jocelyn Turcotte. The 3D graphics code wants to include EGL header files. But on some platforms such as the Raspberry Pi those are not in /usr/include but in another folder. Fix adds "egl" to CONFIG when OpenGL ES2 is used, so the right include paths are added. * WebCore.pri: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145506 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: Ia7011b196ce985bd2293cc7556e3eee069c2eb50 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt][Mac] Remove obsolete workaround for debug buildsAndras Becsi2013-04-221-3/+0
| | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=114750 http://trac.webkit.org/changeset/148789 Reviewed by Jocelyn Turcotte. This workaround made default builds fail with recent Qt5 because it removed the major version number from the library name, producing QtWebKitWidgets, whereas the linking command line tried to link against Qt5WebKitWidgets. Debug builds are possible with and without framework-enabled builds of Qt, but the debug versions of the Qt libraries have to be present. Debug builds with a release version of Qt are not possible on Mac since for debug builds qmake produces a linker command line where all the Qt libraries have the "_debug" suffix, therefore if the debug libraries are missing the build fails. Task-number: QTBUG-30466 Change-Id: Ib9dd1300e8a54b5ac793ebf2732a3db37c878774 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] Only use thin archives on LinuxAndras Becsi2013-04-191-1/+2
| | | | | | | | | | | | | http://trac.webkit.org/changeset/148744 Rubber-stamped by Jocelyn Turcotte. Since "thin archive" is a feature of GNU's ar we limit the usage to Linux to avoid problems with other configurations (eg. macx-g++). Change-Id: I80fff0c518f4e504f05f88c0d269cffae906d9e6 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] Enable thin archives before parsing the project filesAndras Becsi2013-04-192-1/+2
| | | | | | | | | | | | | Rubber-stamped by Simon Hausmann. The targetSubDir() function can be called before default_post.prf has been parsed therefore the gnu_thin_archives option has to be set in default_pre.prf which is parsed before the main project file. This patch fixes the clean build. Change-Id: I3e33ed686066fd0522a2388030407f537496f8f5 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] Use GNU ar's thin archive format for intermediate static libsAndras Becsi2013-04-196-9/+22
| | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=109052 http://trac.webkit.org/changeset/142088 Reviewed by Jocelyn Turcotte. With debug builds we exceed the 4GiB limit of GNU ar when creating the WebCore intermediate static library which results in build failure even with a x86_64 toolchain (http://sourceware.org/bugzilla/show_bug.cgi?id=14625). When using a GNU toolchain we can use the thin archive format for these static libraries which also has the benefit of not copying the object files, thus drastically reducing disk usage and overall compile time. Currently qmake does not support GNU ar's thin archive format so for now we need to do the magic in the build system as a stopgap solution. Adjust project files that used activeBuildConfig() to use targetSubDir(). Change-Id: I68604d5fc6acc32d45a734271aa87bfa5a14647f Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt][Mac] QtWebKitWidgets has wrong install_name.Zeno Albisser2013-04-191-0/+28
| | | | | | | | | | | | | | http://trac.webkit.org/changeset/136384 This part got lost during the library split. It was done for QtWebKit before, but it also needs to be applied to QtWebKitWidgets. Reviewed by Tor Arne Vestbø. Change-Id: I4a9249cd97ac03b639282239927dc4867d058b0b Reviewed-by: Andras Becsi <andras.becsi@digia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Implement JIT for MinGW-w64 64-bitJonathan Liu2013-04-191-1/+70
| | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=114580 Reviewed by Jocelyn Turcotte. * jit/JITStubs.cpp: (JSC): Change-Id: Ibdda0a09ba3db010bbd7858b745834dff2d92260 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148663 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt][WK1] Reflect recursion limit and loop checks also for list conversions.Michael Brüning2013-04-182-7/+25
| | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=107950 Reviewed by Allan Sandfeld Jensen. No new tests, bugfix, no behavioral change. Make conversions from Javascript values to QLists take the maximum recursion depth into consideration and check for objects that were already visited. Otherwise, the conversion may recurse until the stack is full and then cause a segmentation fault. * bridge/qt/qt_runtime.cpp: (JSC::Bindings::convertToList): (JSC::Bindings::convertValueToQVariant): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141085 268f45cc-cd09-0410-ab3c-d52691b4dbfc Change-Id: I598fee74144c5298f81952b122e07e7eac47a8db Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Add more assertions to the property storage use in arraysOliver Hunt2013-04-162-5/+20
| | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=107728 Reviewed by Filip Pizlo. Add a bunch of assertions to array and object butterfly usage. This should make debugging somewhat easier. I also converted a couple of assertions to release asserts as they were so low cost it seemed a sensible thing to do. * runtime/JSArray.cpp: (JSC::JSArray::sortVector): (JSC::JSArray::compactForSorting): * runtime/JSObject.h: (JSC::JSObject::getHolyIndexQuickly): Change-Id: Ie6164b837e7671b87c003de3e29fd33ef05f4362 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141029 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Improve Windows cmd.exe detectionJonathan Liu2013-04-161-5/+1
| | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=114620 Reviewed by Jocelyn Turcotte. The current detection code handles Windows cmd.exe and Cygwin shell but not does not handle MSYS shell correctly. Simplify and improve the detection by checking MINGW_IN_SHELL instead as used in other places (e.g. qt_functions.prf). * qmake/mkspecs/features/default_pre.prf: Change-Id: Iece8597e344b9f5c0166bcc74e7ac4dc424bb1b4 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148435 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] HTML5 video - sound volume bar out of widgetAllan Sandfeld Jensen2013-04-151-130/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=108213 Reviewed by Jocelyn Turcotte. Since we use Safari shadow DOM for media controls, follow the overall layout of Safari media control CSS. * css/mediaControlsQt.css: (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel): (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button): (audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button): (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container): (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display): (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display): (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline): (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container): (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider): (audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button): (audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button): (audio::-webkit-media-controls-rewind-button, video::-webkit-media-controls-rewind-button): (audio::-webkit-media-controls-return-to-realtime-button, video::-webkit-media-controls-return-to-realtime-button): (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button): Change-Id: I36ce4fba8348fae46441ba04f7a9d9d189a9ea93 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145214 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] New fast/text/word-space-with-kerning-3.html fails on Qt.Allan Sandfeld Jensen2013-04-152-12/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=112668 Reviewed by Jocelyn Turcotte. Source/WebCore: Qt adds word-spacing to leading spaces, but WebCore only expects us to add for trailing spaces. We only corrected for this in width calculation but do need to also do it for drawing. Instead of subtracting the extra word-spacing we now configure the FormatRange not to apply to leading spaces. This means this behavior will be applied everywhere reliably. * platform/graphics/Font.h: (Font): * platform/graphics/qt/FontQt.cpp: (WebCore::Font::drawComplexText): (WebCore::Font::floatWidthForComplexText): (WebCore::Font::offsetForPositionForComplexText): (WebCore::Font::selectionRectForComplexText): (WebCore::Font::initFormatForTextLayout): LayoutTests: * platform/qt/TestExpectations: Change-Id: I59a4610d5568e223728f5e761461a6a3a9f3e656 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@146630 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] Enable LINK_PREFETCHAllan Sandfeld Jensen2013-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=111158 Reviewed by Simon Hausmann. Tools: * qmake/mkspecs/features/features.pri: LayoutTests: Unskip tests depending on LINK_PREFETCH. * platform/qt/TestExpectations: Change-Id: I66030a4e1b04b0471e1bca818f14d590951b370d git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144441 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Qt] Avoid "QFont::setPixelSize: Pixel size <= 0 (0)"Jocelyn Turcotte2013-04-121-1/+2
| | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=114175 Reviewed by Allan Sandfeld Jensen. QFont doesn't support a 0-size but WebCore does. Leave our QFont in its default state in this case to avoid the warning. * platform/graphics/qt/FontPlatformDataQt.cpp: (WebCore::FontPlatformData::FontPlatformData): Change-Id: I836f848f1b49287f7cbf4b2ed0daf5b10f0e1bff git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147932 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Apply our MSVC 2012 optimizer bug workaround to all minor releasesJocelyn Turcotte2013-04-121-3/+3
| | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=114436 Reviewed by Alexey Proskuryakov. The bug has only been partially fixed in Update 2 but our Update 1 workaround still avoids the crash. * platform/text/TextEncodingRegistry.cpp: (WebCore::TextEncodingNameHash::equal): Change-Id: I2c03985216c63ffbd1a1ca28a050c9bce64c2334 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148273 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* [Qt] Add API in QWebSettings for setting the CSS media typeJose Lejin PJ2013-04-124-0/+90
| | | | | | | | | | | | | | | | | | | | | | https://bugs.webkit.org/show_bug.cgi?id=113853 Reviewed by Jocelyn Turcotte. * Api/qwebsettings.cpp: (QWebSettingsPrivate): (QWebSettingsPrivate::apply): (QWebSettings::setCSSMediaType): (QWebSettings::cssMediaType): * Api/qwebsettings.h: * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::overrideMediaType): * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage): (tst_QWebPage::cssMediaTypeGlobalSetting): (tst_QWebPage::cssMediaTypePageSetting): Change-Id: I56e755998ef4c7f879f8e0629fedfbc36a92372e git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148095 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Andras Becsi <andras.becsi@digia.com>