summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit '4feb4019cfc144cef4cd9177d52e52dee9ebdf32' into 4.6Rohan McGovern2009-09-091-7/+7
|\ | | | | | | | | | | Conflicts: tests/auto/network-settings.h tests/auto/qpainter/tst_qpainter.cpp
| * Fixed bug in drawImage() when fall-back code path is used.Samuel Rødal2009-09-081-7/+7
| | | | | | | | | | | | | | | | We need to floor instead of round to prevent rectangles that are on the edge from being shifted one pixel down / right. Task-number: 258776 Reviewed-by: Kim
* | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Rhys Weatherley2009-09-093-1/+4
|\ \
| * | Fix windows implemetation of QLocalSocket to emit bytesWritten() signalabcd2009-09-093-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | Have QWindowsPipeWriter emit a bytesWritten signal and have QLocalSocket connect this to its own bytesWritten signal. This change contains an autotest to check for the signal emission. Previously there was no implementation to emit the signal.
* | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Rhys Weatherley2009-09-091-6/+30
|\ \ \ | |/ /
| * | Fix QDirectFBPixmapData::fromImageAnders Bakken2009-09-081-6/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fix should optimize pixmap loading on most platforms and also fixes a bug on a certain hardware where the alpha channel of an image was not retained upon loading it. This patch also takes care of handling dithering better in QDirectFBPixmapData::fromImage(). Reviewed-by: Donald Carr <donald.carr@nokia.com>
* | | Clean up the gradient cache in the right contextRhys Weatherley2009-09-091-0/+1
|/ / | | | | | | | | | | | | | | | | | | QGLGradientCache for the OpenGL1 paint engine has to destroy the cached gradient textures if the QGLContext changes. Problem is, it wasn't changing back to the previous context to destroy those textures. Task-number: 249919 Reviewed-by: Sarah Smith
* | Fix define in QDirectFBScreenAnders Bakken2009-09-081-1/+1
| | | | | | | | | | | | It's QT_NO_DIRECTFB.*, not QT_DIRECTFB_NO.* Reviewed-by: TrustMe
* | memset DFBWindowDescription to 0Anders Bakken2009-09-081-0/+2
| | | | | | | | | | | | This makes debugging easier. Reviewed-by: TrustMe
* | Doc: A timeline's current value is not reset when the duration changes.David Boddie2009-09-081-0/+4
| | | | | | | | | | Task-number: 219152 Reviewed-by: Trust Me
* | Cleanup of QGLPaintDevice before it goes inTom Cooksey2009-09-089-430/+38
| | | | | | | | | | | | | | | | | | This is the last patch in the QGLPaintDevice series. Although previous patches have not been reviewed individually, Samuel's reviewed QGLPaintDevice API and all the changes as the code stands with this patch. Reviewed-by: Samuel
* | Make QGLPixmapData work with the new QGLPaintDevice APITom Cooksey2009-09-087-85/+152
| | | | | | | | | | | | | | | | | | | | This patch changes the ordering of QGL2PaintEngine::begin a bit because QGLPixmapData needs to use the paint engine's drawTexture method within beginPaint(). Also, this initialises needsSync to true and removes the setState call. So now all the state initialisation is done in ensureActive rather than begin.
* | Make QGLWindowSurface use new QGLPaintDevice APITom Cooksey2009-09-085-33/+65
| |
* | Move buffer clear out of the paint engine and into the QGLPaintDevicesTom Cooksey2009-09-086-63/+58
| | | | | | | | | | | | | | | | | | | | | | | | Previously, the paint engine cleared the surface's buffers in begin. This logic really belongs in QGLPaintDevice::beginPaint as not all paint devices will want this behaviour (in fact most don't). This also makes QGLPaintDevice API much simpler as the virtual getters for the clear color, etc. can be removed. It's much cleaner this way. The only possible problem is with the GL1 engine, which also cleared the accumulation & depth buffers in begin. However, the engine will also clear the depth buffer later as part of it's clipping logic. It also doesn't use the accumulation buffer, so clearing it seems unnessisary.
* | Make QGLFramebufferObject work again using new QGLPaintDevice APITom Cooksey2009-09-0811-152/+257
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch also refactors QGL2PaintEngineEx::ensureActive() and the logic which handles multiple paint engines rendering to the same QGLContext. In a nut-shell: * QGLPaintDevice::beginPaint() stores the currently bound FBO * QGLPaintDevice::ensureActiveTarget() makes sure that GL rendering will end up in the paint device (I.e. the right context is current and the right FBO is bound). If a different context or FBO was bound, it is _not_ remembered. * QGLPaintDevice::endPaint() restores whatever FBO was bound when beginPaint() was called. This logic allows interleaved painter rendering to multiple FBOs and contexts to work as expected. It also allows a stacked begin/end to work properly when it's mixed with native GL rendering (as far as current render target is concerened. GL state clobbering is obviously a different topic). QGLPaintDevice::context() also had to be made virtual as there's no good place to call setContext. This might be possible to change in the future though. Finally, to make this work, QGLFramebufferObjectPrivate had to be moved into it's own private header.
* | Make QGLPixelBuffer work again using new QGLPaintDevice APITom Cooksey2009-09-084-1/+29
| | | | | | | | | | Add a new QGLPBufferGLPaintDevice implementation which allows the GL engines to target QGLPixelBuffers again.
* | Replace QGLDrawable with a new QGLPaintDeviceTom Cooksey2009-09-0811-84/+483
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a new abstract base class which inherits from QPaintDevice called QGLPaintDevice. This base class will contain everything the GL paint engines need to know about the surface they are drawing onto. As such, new surfaces can be targeted by the GL paint engines without having to modify QtOpenGL. This is very useful for plugins, specifically QGraphicsSystem plugins. To unify things a little, the GL paint engines will use the same QGLPaintDevice API to render into existing target surfaces (QGLWidget, QGLPixelBuffer & QGLFrameBufferObject). Ideally we'd make QGLPaintDevice a common ancestor for these surfaces, but obviously that wil break B/C. This patch only implements QGLWidget using the new interface. Rendering to other surfaces will be fixed in following patches.
* | Fix crash when instantiating multiple QApplications on QWSPaul Olav Tvete2009-09-081-0/+7
| | | | | | | | | | | | Copy variable initialization/cleanup code from X11 Reviewed-by: Tom
* | Take right bearing of glyphs into account when doing text layoutEskil Abrahamsen Blomfeldt2009-09-081-54/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To support correctly breaking text and calculating the bounding rect of text that has a right bearing (like italic text), we need to take the bearing into account when doing the layout. We add the bearing when checking whether we need to break the text, and we add it to the natural width of the text whenever we've finished a text line, so that we get the correct bounding rectangle. This patch only takes the last glyph's bearing into account. The theoretically correct approach would be to take all bearings into account and use the one which gives the longest text width. However, in practice the bearing of the glyph will not be great enough for it to span over several other glyphs. Also refactored a little to make the code simpler. Task-number: 176401 Reviewed-by: Simon Hausmann
* | exception safety fix for QList::operator+= (const QList&)mread2009-09-081-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The refactoring of current++ and src++ out of the new line makes the code easier to understand but it also seems to be significant at least in the ::isComplex case. I suspect that the ordering increment operations vs throw from new is not well defined, or not implemented as you might hope (with the ++ happening very last). The changes in the catch blocks mean that it deletes the created objects, rather than trying with the first failed object. The test code has been updated with a +=(Container) test, and to force testing of both static and moveable types. Reviewed-by: Harald Fernengel
* | Fixed usage of QMargins in QStyleSheetStyleThorbjørn Lindeijer2009-09-081-4/+4
| | | | | | | | | | | | | | The order of the parameters to the QMargins constructor changed in commit 758f4735bcae034ac25730e53bb371df3b7d6e8a. Reviewed-by: Alessandro Portale <alessandro.portale@nokia.com>
* | Added a public function to enforce usage og the old GL engine.Trond Kjernåsen2009-09-083-9/+72
| | | | | | | | | | | | | | | | | | | | | | Some applications that uses a mix of OpenGL and QPainter code may not work correctly with the new GL 2 engine (e.g. the composition demo). The same is most likely also true for user apps, therefore we need a way to enforce the usage of the old GL 1 engine for the sake of compatibility. Task-number: 260872 Reviewed-by: Samuel
* | QScriptDebuggerBackend crash fix.Jedrzej Nowacki2009-09-081-7/+1
| | | | | | | | | | | | | | | | | | | | QScriptDebuggerBackend::contextCount() method was trying to count number of context push & pop and result was not equal to elements count in QScriptDebuggerBackend::contextIds() list. Patch change QScriptDebuggerBackend::contextCount() to call count() on ids list. Task-number: 260719 Reviewed-by: Kent Hansen
* | fix major memory leak in JavaScriptCore RegisterFile on Windows CEJoerg Bornemann2009-09-081-0/+3
| | | | | | | | | | | | | | | | On Widows CE we must decommit all committed pages before we release them. See VirtualFree documentation. Desktop Windows behaves much smoother in this situation. Reviewed-by: ariya
* | Merge branch '4.6' of git@scm.dev.troll.no:qt/qt into 4.6Miikka Heikkinen2009-09-0810-10/+50
|\ \
| * | Fixed QLineEdit to correctly adjust the horizontal scrollingAdriano Rezende2009-09-082-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | The widget needs to use the naturalTextWidth to adjust the horizontal scrolling, otherwise it will not fit correctly the text in the visible area when resized. Merge-request: 1410 Reviewed-by: Alan Alpert
| * | Fixes a regression in QListView in 4.6 regarding the selectionThierry Bastian2009-09-081-0/+4
| | | | | | | | | | | | | | | | | | | | | In icon mode, if you click on the viewport (with extended selection), the selection should be cleared when you release the mouse button. Reviewed-by: ogoffart
| * | Animations of redocking widgets are brokenThierry Bastian2009-09-081-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | The problem is that when starting an animation, we delay it by starting a 0-timer. That doesn't work on windows while dragging a native window. Task-number: 260772 Reviewed-by: prasanth
| * | doc: Fixed several qdoc errors.Martin Smith2009-09-082-0/+7
| | | | | | | | | | | | That's the last of them... for now.
| * | make JavaScriptCore compile on platforms with case-insensitive file systemKent Hansen2009-09-083-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | There's a clash between "TypeInfo.h" and a standard header "typeinfo.h" that's included from a place we don't control. The fix is to rename "TypeInfo.h" to "JSTypeInfo.h". Reviewed-by: Simon Hausmann
| * | Merge commit 'origin/4.5' into 4.6Joerg Bornemann2009-09-081-2/+12
| |\ \ | | |/ | | | | | | | | | Conflicts: src/gui/kernel/qapplication.cpp
| | * Doc: keypad navigation is supported on Windows CEJoerg Bornemann2009-09-081-2/+10
| | | | | | | | | | | | Reviewed-by: thartman
* | | Fixed resolving absolute paths in Symbian.Miikka Heikkinen2009-09-081-5/+18
|/ / | | | | | | | | | | | | | | | | | | Fixed resolving absolute path using QFileInfo for paths that were relative but contained the drive letter (e.g. "c:my.dll"). Absolute paths should now be properly cleaned in Symbian, too. Task-number: 255326 Reviewed-by: Janne Anttila
* | QAudioDeviceInfo::deviceList() wasn't working correctly if no audioKurt Korbatits2009-09-081-2/+3
| | | | | | | | | | | | | | | | | | device. The default was being added even when no audio devices were available. Change so that the default device is only added if there is at least one audio device. Reviewed-by:Bill King
* | Add operator== and != to QGLFramebufferObjectFormatRhys Weatherley2009-09-083-6/+32
| | | | | | | | Reviewed-by: Sarah Smith
* | Texture format must be GL_RGB when pixel type is GL_UNSIGNED_SHORT_5_6_5Rhys Weatherley2009-09-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | QImage::Format_RGB16 textures were broken on some OpenGL/ES 1.1 systems because the "format" was set to GL_RGBA and the "texture_format" was set to GL_RGB, with a pixel type of GL_UNSIGNED_SHORT_5_6_5. OpenGL/ES 1.1, ES 2.0, and desktop GL all require the two format parameters to glTexImage2D() to be GL_RGB if the pixel type is GL_UNSIGNED_SHORT_5_6_5. Reviewed-by: Sarah Smith
* | Make the matrix and viewport logic in renderText() a bit betterRhys Weatherley2009-09-081-50/+137
| | | | | | | | | | | | | | The original renderText() was using the highly unportable (to OpenGL/ES) glGetDoublev() and glGetIntegerv() functions. Reviewed-by: Sarah Smith
* | Convert QGLFramebufferObjectFormat to use implicit sharingRhys Weatherley2009-09-082-16/+59
| | | | | | | | Reviewed-by: Sarah Smith
* | Fixed the spelling of canceled in the QGesture api brought up by David Boddie.Denis Dzyubenko2009-09-072-6/+6
| | | | | | | | Reviewed-by: trustme
* | Only depend on phonon when building webkit if phonon was configured forAndy Shaw2009-09-071-1/+2
| | | | | | | | Reviewed-by: Denis
* | Remove extra invalid semi-colonThiago Macieira2009-09-071-1/+1
| | | | | | | | Reviewed-By: Trust Me
* | Fixed compile failure on Mac OS X.Samuel Rødal2009-09-071-2/+1
| |
* | Use icons on QDialogButtonBox in KDEJens Bache-Wiig2009-09-074-15/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | Oxygen did not use icons in dialogs. This is obviously incorrect compared with other KDE apps. We changed common style to enable button icons by default on X11 and explicitly disabled them for Windows and Motif styles. We also updated the icons for YES and NO actions to use dialog-ok and process-stop to reflect the usaged in KDE itself. Reviewed-by: ogoffart
* | Fix warning when compiling with QT_NO_EXCEPTIONSOlivier Goffart2009-09-071-1/+1
| | | | | | | | | | | | src/corelib/global/qglobal.h:1368:1: warning: "QT_NO_EXCEPTIONS" redefined Reviewed-by: Alexis
* | Fix a crash in the Win32 event dispatcherBradley T. Hughes2009-09-071-0/+2
| | | | | | | | | | | | | | | | Not clearing the timerVec and timerDict containers can cause crashes during application shutdown when code tries to unregister timers (that were unregistered in closingDown()). Reviewed-by: dt
* | Fix crash on QGraphicsItem destruction related to focus handlingKai Koehne2009-09-071-1/+1
| | | | | | | | | | | | | | | | Do not call clearFocus() for child item in setParentItemHelper() if called from destructor: At this time, the ~QGraphicsItem destructor already deleted all its children. Reviewed-by: Andreas Aardal Hanssen
* | Fix QScriptEngineAgent::functionExit (JIT enabled)Jedrzej Nowacki2009-09-072-1/+4
| | | | | | | | | | | | | | Event functionExit was fixed, now returnValue is correctly passed as an argument to debugger. Few QEXCEPT_FAIL were removed from autotest. Reviewed-by: Kent Hansen
* | Fix QScriptEngineAgent::exceptionCatch (JIT enabled)Jedrzej Nowacki2009-09-072-1/+4
| | | | | | | | | | | | | | Event exceptionCatch fixed, now exceptionValue is correctly passed as an argument to debugger. Two QEXCEPT_FAIL were removed from autotest. Reviewed-by: Kent Hansen
* | Doc: Added a note that a state machine requires a running event loop.David Boddie2009-09-071-31/+11
| | | | | | | | Reviewed-by: Trust Me
* | Fixed crash in print preview dialog with graphicssystem OpenGL.Kim Motoyoshi Kalland2009-09-071-17/+18
| | | | | | | | | | | | | | | | Avoid crashing when framebuffer object created in one context is used in a shared context after the original context is destroyed. Task-number: 260874 Reviewed-by: Samuel