summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qbackingstore.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Added WindowSurfaceFeature enum to QWindowSurface.Samuel Rødal2011-03-291-3/+3
| | | | | | | | Now that we've added hasPreservedContents() it's cleaner to convert the various features to feature flags, which is also more extensible in case more flags are needed in the future. Reviewed-by: Bjørn Erik Nilsen
* Added preserved contents property to QWindowSurface.Samuel Rødal2011-03-291-2/+2
| | | | | | | | | | | | | | | | Previously we used hasPartialUpdateSupport() to deduce whether the window surface's contents are preserved when flush is called or not, but that limits us from fully supporting platforms which might allow partial updates even though the surface contents aren't preserved on flush. If hasPreservedContents() returns false, that means a flush of a region is never allowed without first painting to that region. If hasPartialUpdateSupport() returns false, the whole window surface must always be painted whenever an update is requested. Note that hasPreservedContents() will typically imply hasPartialUpdateSupport(), but not vice versa. Reviewed-by: Bjørn Erik Nilsen
* Merge remote-tracking branch 'origin/4.7' into qt-master-from-4.7Thiago Macieira2011-03-111-0/+5
|\ | | | | | | | | | | | | Conflicts: mkspecs/common/symbian/symbian.conf src/s60installs/bwins/QtGuiu.def src/s60installs/eabi/QtGuiu.def
| * Partial update window surfaces always need a repaint before flush.Samuel Rødal2011-03-091-0/+5
| | | | | | | | | | | | | | | | When we get an Expose, we need to repaint the window surface before we can flush if the window surface doesn't support partial updates, otherwise we'll end up with garbage on the screen. Reviewed-by: Bjørn Erik Nilsen
* | Merge remote branch 'origin/4.7' into qt-master-from-4.7Olivier Goffart2011-01-171-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/webkit/imageanalyzer/imageanalyzer.h examples/webkit/imageanalyzer/mainwindow.h mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h src/corelib/io/qfsfileengine_iterator_unix.cpp src/corelib/io/qfsfileengine_iterator_win.cpp src/corelib/kernel/qcoreapplication.cpp src/network/access/qnetworkaccessdatabackend.cpp src/plugins/bearer/connman/qconnmanservice_linux.cpp src/plugins/platforms/openvglite/qwindowsurface_vglite.h src/s60installs/bwins/QtCoreu.def src/s60installs/eabi/QtCoreu.def src/s60installs/s60installs.pro tools/assistant/tools/assistant/helpviewer_qwv.h tools/qdoc3/test/qt-html-templates.qdocconf
| * Update copyright year to 2011.Jason McDonald2011-01-101-1/+1
| | | | | | | | Reviewed-by: Trust Me
* | Remove QWidget::paintEngine() codepath for LighthouseJørgen Lind2010-11-221-0/+4
| | | | | | | | Reviewed-by: paul
* | Merge branch 4.7 into qt-master-from-4.7Qt Continuous Integration System2010-11-021-1/+1
|\ \ | |/
| * Fix a few typos in comments and docs.Jason McDonald2010-11-011-1/+1
| | | | | | | | | | Task-number: QTBUG-13714 Reviewed-by: Trust Me
* | Merge remote branch 'qt/4.7' into lighthouse-4.7Paul Olav Tvete2010-08-191-2/+7
|\ \ | |/ | | | | | | Conflicts: src/opengl/qgl_p.h
| * Adjusted define stylingDonald Carr2010-08-171-3/+1
| | | | | | | | | | Adjusted multi-line define to single conjugated define in order to conform to the rest of the modified file.
| * Fixes QWS window decoration offset issuesUwe Rathmann2010-08-171-1/+8
| | | | | | | | | | | | | | | | | | | | When using OpenGL ES in conjunction with Qt/Embedded, Q_BACKINGSTORE_SUBSURFACES is defined and the subsequent code path shared between this define and QWS defines results in window decoration offset errors. Merge-request: 714 Reviewed-by: Donald Carr <donald.carr@nokia.com>
* | Say hello to Q_WS_QPA!Jørgen Lind2010-06-241-5/+5
| | | | | | | | Rename Q_WS_LITE -> Q_WS_QPA
* | Merge remote branch 'qt/4.7' into lighthousePaul Olav Tvete2010-06-181-3/+3
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/common/qws.conf src/corelib/io/qresource.cpp src/gui/image/qpixmapdata_p.h src/gui/kernel/qapplication.cpp src/gui/kernel/qapplication_p.h src/gui/painting/qpaintengine_raster.cpp src/gui/text/qfontdatabase.cpp src/opengl/qgl_p.h src/plugins/mediaservices/gstreamer/gstreamer.pro
| * Merge remote branch 'origin/4.6' into qt-4.7-from-4.6Olivier Goffart2010-06-081-3/+3
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty/webkit/VERSION src/3rdparty/webkit/WebCore/ChangeLog src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp src/3rdparty/webkit/WebKit/qt/ChangeLog src/gui/painting/qpainter.cpp src/gui/painting/qtextureglyphcache.cpp src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h src/s60installs/bwins/QtGuiu.def src/s60installs/eabi/QtCoreu.def src/s60installs/eabi/QtGuiu.def src/s60installs/eabi/QtNetworku.def src/s60installs/eabi/QtOpenVGu.def tests/auto/qfontmetrics/tst_qfontmetrics.cpp tools/linguist/lupdate/main.cpp
| | * Fix QWS build failureGareth Stockwell2010-06-031-1/+1
| | | | | | | | | | | | Task-number: QTBUG-8697
| | * Added reference counting to QWidgetBackingStoreGareth Stockwell2010-06-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Symbian, the top-level widget's backing store must be destroyed when it is no longer required, in order to conserve memory. The criteria for destroying the backing store is when neither the TLW nor any of its native descendents (which share the backing store) are visible. In order to implement this requirement, a count must be kept of the number of native widgets which are using the TLW's backing store. This patch provides the mechanism for maintaining this count, and for destroying the backing store when the count is decremented to zero. No calls to either the increment nor decrement functions are made, however, by this code included in this patch; this code will be added to only the Symbian backend by a subsequent patch. Task-number: QTBUG-8697 Reviewed-by: Bjørn Erik Nilsen Reviewed-by: Jason Barron
* | | Add support for native children in QtGui againJørgen Lind2010-06-111-5/+1
| | | | | | | | | | | | no pluginsupport though
* | | Merge remote branch 'origin/4.7' into lighthouseJørgen Lind2010-04-211-22/+50
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure src/gui/kernel/qapplication.cpp src/gui/painting/qbackingstore.cpp src/opengl/qgl.cpp src/opengl/qgl_p.h src/plugins/plugins.pro tests/auto/declarative/qdeclarativedom/data/importlib/sublib/qmldir tools/tools.pro
| * | Some QWindowSurface implementations might implement flush as a bufferBjørn Erik Nilsen2010-04-161-21/+49
| |/ | | | | | | | | | | | | | | | | | | | | flip. Such window surfaces therefore destroy the contents during flush. In order to render correctly on these surfaces, any update, no matter how small, needs to trigger the entire window to be redrawn. Auto test included. Task-number: Relates to QTBUG-9978 Reviewed-by: tom
* | This seems to fix the resize issuesPaul Olav Tvete2010-04-091-5/+14
| |
* | Added QPlatformWindowJørgen Lind2010-04-071-2/+14
| |
* | Merge remote branch 'origin/4.7' into 4.7-lighthouseJørgen Lind2010-03-111-1/+10
|\ \ | |/ | | | | | | | | | | Conflicts: src/gui/kernel/qapplication.cpp src/gui/kernel/qapplication_p.h src/gui/kernel/qwidget.cpp
| * Make translucent windows work, and support WA_TranslucentBackgroundPaul Olav Tvete2010-03-041-1/+10
| | | | | | | | | | | | | | | | | | | | QWS will make a window translucent if the background brush is not opaque. Now we also support the cross-platform way of doing it. This also includes fixes for bugs caused by behavioural changes in the internal windowsurface/backingstore implementation. Task-number: QTBUG-5739 Reviewed-by: Tom
* | Added basic fps calculation in qbackingstoreJørgen Lind2010-02-101-0/+15
| |
* | Merge remote branch 'origin/4.6' into lighthousePaul Olav Tvete2010-01-141-1/+3
|\ \ | |/ | | | | | | | | | | Conflicts: configure src/corelib/global/qglobal.cpp src/gui/dialogs/dialogs.pri
| * Update copyright year to 2010Jason McDonald2010-01-061-1/+1
| | | | | | | | Reviewed-by: Trust Me
| * Fixed crash when scrolling with deleted backingstoreJanne Koskinen2009-11-251-0/+2
| | | | | | | | | | | | | | | | | | | | In Symbian we save memory by deleting widget backingstore from non-visible windows. 12-key FEP is fullscreen and causes the backing store to be deleted but still continues to scroll the view to show current caret position in focused lineedit control. Task-number: QTBUG-5922 Reviewed-by: Jason Barron
* | Merge remote branch 'origin/4.6' into lighthousePaul Olav Tvete2009-11-191-14/+15
|\ \ | |/ | | | | | | | | Conflicts: configure src/plugins/graphicssystems/graphicssystems.pro
| * Add QT_NO_GRAPHICSEFFECTJørgen Lind2009-11-041-0/+8
| | | | | | | | | | | | | | It depends on QT_NO_GRAPHICSVIEW for now, but it is possible to remove this dependency. Reviewed-by: paul
| * Merge commit 'origin/4.6' into featureJørgen Lind2009-11-021-12/+0
| |\
| | * Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt into 4.6-WM_NULL-drivenBradley T. Hughes2009-10-281-0/+5
| | |\
| | * | Remove workarounds for Win32 event dispatcher bugsBradley T. Hughes2009-10-201-12/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This includes the startstop timer delay in QAbstractAnimation, and the inSizeMove workaround for paint events. Reviewed-by: Prasanth Ullattil
| * | | Fix GRAPHICSVIEWJørgen Lind2009-10-291-2/+2
| | |/ | |/| | | | | | | Reviewed-by: tom
| * | Added caching of graphics effect source pixmaps to speed up effects.Samuel Rødal2009-10-221-0/+5
| |/ | | | | | | | | | | | | If an effect is applied repeatedly on the same source, just with varying parameters, we can save a lot by caching the source pixmaps. Reviewed-by: Bjørn Erik Nilsen
* | Merge branch '4.6' into lighthousePaul Olav Tvete2009-09-301-4/+4
|\ \ | |/ | | | | | | | | | | | | Conflicts: configure src/gui/image/qpixmapdatafactory.cpp src/gui/kernel/qapplication_p.h src/gui/painting/qgraphicssystem.cpp
| * Update license headers again.Jason McDonald2009-09-091-4/+4
| | | | | | | | Reviewed-by: Trust Me
* | Please welcome the Lighthouse Research Project!Paul Olav Tvete2009-09-071-3/+6
|/ | | | | | | | | | | Lighthouse is a lighter, nimbler version of Qt/Embedded, which does not contain a window system. Instead, it uses graphics system plugins to provide the necessary functionality or interface with existing window systems. The first version was written by Rhys. Squashed commit.
* Merge branch '4.5' into 4.6Thiago Macieira2009-08-311-13/+13
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: demos/boxes/glshaders.cpp demos/boxes/vector.h demos/embedded/fluidlauncher/pictureflow.cpp demos/embedded/fluidlauncher/pictureflow.h doc/src/desktop-integration.qdoc doc/src/distributingqt.qdoc doc/src/examples-overview.qdoc doc/src/examples.qdoc doc/src/frameworks-technologies/dbus-adaptors.qdoc doc/src/geometry.qdoc doc/src/groups.qdoc doc/src/objecttrees.qdoc doc/src/platform-notes.qdoc doc/src/plugins-howto.qdoc doc/src/qt3support.qdoc doc/src/qtdbus.qdoc doc/src/qtdesigner.qdoc doc/src/qtgui.qdoc doc/src/qtmain.qdoc doc/src/qtopengl.qdoc doc/src/qtsvg.qdoc doc/src/qtuiloader.qdoc doc/src/qundo.qdoc doc/src/richtext.qdoc doc/src/topics.qdoc src/corelib/tools/qdumper.cpp src/gui/embedded/qkbdpc101_qws.cpp src/gui/embedded/qkbdsl5000_qws.cpp src/gui/embedded/qkbdusb_qws.cpp src/gui/embedded/qkbdvr41xx_qws.cpp src/gui/embedded/qkbdyopy_qws.cpp src/gui/embedded/qmousebus_qws.cpp src/gui/embedded/qmousevr41xx_qws.cpp src/gui/embedded/qmouseyopy_qws.cpp src/gui/painting/qpaintengine_d3d.cpp src/gui/painting/qwindowsurface_d3d.cpp src/opengl/gl2paintengineex/glgc_shader_source.h src/opengl/gl2paintengineex/qglpexshadermanager.cpp src/opengl/gl2paintengineex/qglpexshadermanager_p.h src/opengl/gl2paintengineex/qglshader.cpp src/opengl/gl2paintengineex/qglshader_p.h src/opengl/util/fragmentprograms_p.h src/plugins/kbddrivers/linuxis/linuxiskbdhandler.cpp src/plugins/mousedrivers/linuxis/linuxismousehandler.cpp src/script/parser/qscript.g src/script/qscriptarray_p.h src/script/qscriptasm_p.h src/script/qscriptbuffer_p.h src/script/qscriptclass.cpp src/script/qscriptclassdata_p.h src/script/qscriptcompiler.cpp src/script/qscriptcompiler_p.h src/script/qscriptcontext.cpp src/script/qscriptcontext_p.cpp src/script/qscriptcontext_p.h src/script/qscriptcontextfwd_p.h src/script/qscriptecmaarray.cpp src/script/qscriptecmaarray_p.h src/script/qscriptecmaboolean.cpp src/script/qscriptecmacore.cpp src/script/qscriptecmadate.cpp src/script/qscriptecmadate_p.h src/script/qscriptecmaerror.cpp src/script/qscriptecmaerror_p.h src/script/qscriptecmafunction.cpp src/script/qscriptecmafunction_p.h src/script/qscriptecmaglobal.cpp src/script/qscriptecmaglobal_p.h src/script/qscriptecmamath.cpp src/script/qscriptecmamath_p.h src/script/qscriptecmanumber.cpp src/script/qscriptecmanumber_p.h src/script/qscriptecmaobject.cpp src/script/qscriptecmaobject_p.h src/script/qscriptecmaregexp.cpp src/script/qscriptecmaregexp_p.h src/script/qscriptecmastring.cpp src/script/qscriptecmastring_p.h src/script/qscriptengine.cpp src/script/qscriptengine_p.cpp src/script/qscriptengine_p.h src/script/qscriptenginefwd_p.h src/script/qscriptextenumeration.cpp src/script/qscriptextenumeration_p.h src/script/qscriptextqobject.cpp src/script/qscriptextqobject_p.h src/script/qscriptextvariant.cpp src/script/qscriptfunction.cpp src/script/qscriptfunction_p.h src/script/qscriptgc_p.h src/script/qscriptmember_p.h src/script/qscriptobject_p.h src/script/qscriptprettypretty.cpp src/script/qscriptprettypretty_p.h src/script/qscriptvalue.cpp src/script/qscriptvalueimpl.cpp src/script/qscriptvalueimpl_p.h src/script/qscriptvalueimplfwd_p.h src/script/qscriptvalueiteratorimpl.cpp src/script/qscriptxmlgenerator.cpp src/script/qscriptxmlgenerator_p.h tests/auto/linguist/lupdate/testdata/recursivescan/project.ui tests/auto/linguist/lupdate/testdata/recursivescan/sub/finddialog.cpp tests/auto/qkeyevent/tst_qkeyevent.cpp tools/linguist/shared/cpp.cpp
| * Update tech preview license header.Jason McDonald2009-08-311-13/+13
| | | | | | | | Reviewed-by: Trust Me
| * Update license headers.Jason McDonald2009-08-111-1/+1
| | | | | | | | Reviewed-by: Trust Me
* | Fix crash in backingstore when QWidget::paintEngine() returns 0Prasanth Ullattil2009-08-281-2/+2
| | | | | | | | Reviewed-by: Samuel
* | Fixed clipping bugs in QGLWidgets (very noticeable in sub-attaq).Samuel Rødal2009-08-271-1/+2
| | | | | | | | | | | | | | | | When the paint engine used by QGLWidgets was the GL 2 paint engine the backing store assumed partial update support, which is not the case. We need to check for both QPaintEngine::OpenGL and QPaintEngine::OpenGL2. Reviewed-by: Trond
* | Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qt into master-s60axis2009-08-211-14/+23
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: src/gui/graphicsview/qgraphicsitem.cpp src/gui/kernel/qwidget.cpp src/gui/kernel/qwidget_p.h
| * | Fix the most obvious rendering bugs when applying an effect to QWidget.Bjørn Erik Nilsen2009-08-201-14/+23
| | |
* | | Merge commit 'qt/master'Jason Barron2009-08-131-1/+1
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/opengl/samplebuffers/glwidget.cpp src/corelib/io/qfsfileengine_unix.cpp src/corelib/kernel/qobject.cpp src/corelib/tools/qsharedpointer.cpp src/gui/gui.pro tests/auto/qhttp/tst_qhttp.cpp tests/auto/qkeyevent/tst_qkeyevent.cpp
| * | Update contact URL in license headers.Jason McDonald2009-08-121-1/+1
| | | | | | | | | | | | Reviewed-by: Trust Me
* | | Prevent unnecessary repaints when moving with zero distance in moveRect().Frans Englich2009-08-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | This path is triggered from the layout system on S60. Reported by Nokia/Dallas' multimedia team. We haven't yet figured out a way to trigger this through auto test. Reviewed-by: Paul
* | | Merge commit 'qt/master-stable'Jason Barron2009-08-041-0/+3
|\ \ \ | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: config.tests/unix/openssl/openssl.pri demos/embedded/embedded.pro examples/itemviews/chart/chart.pro examples/network/network.pro examples/painting/painterpaths/painterpaths.pro examples/threads/mandelbrot/mandelbrot.pro qmake/project.cpp src/3rdparty/libtiff/libtiff/tif_config.h src/corelib/arch/arch.pri src/corelib/global/qglobal.cpp src/corelib/kernel/kernel.pri src/corelib/kernel/qcore_unix_p.h src/corelib/kernel/qobject.cpp src/corelib/thread/qthread_unix.cpp src/corelib/tools/qsharedpointer_impl.h src/corelib/tools/tools.pri src/gui/kernel/qaction.h src/gui/kernel/qapplication.cpp src/gui/painting/qregion.h src/gui/widgets/qlineedit.cpp src/gui/widgets/qlineedit_p.h src/network/socket/qnativesocketengine_unix.cpp tests/auto/qdir/tst_qdir.cpp tests/auto/qdiriterator/tst_qdiriterator.cpp tests/auto/qhttp/qhttp.pro tests/auto/qline/qline.pro tests/auto/qnetworkreply/tst_qnetworkreply.cpp tests/auto/qresourceengine/qresourceengine.pro tests/auto/qsharedpointer/qsharedpointer.pro tests/auto/qstring/qstring.pro tests/auto/qtcpsocket/qtcpsocket.pro tests/auto/qtcpsocket/tst_qtcpsocket.cpp
| * | Port of Qt to VxWorksRobert Griebl2009-07-291-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes Qt work on VxWorks 6.6+ in native (kernel) mode. * compiles with the WindRiver GNU toolchain (Linux only) * works with QWS (tested with the VNC driver only) * tested on PPC hardware and the x86 VxWorks simulator * no q3support, no phonon, no webkit * no QSharedMemory, no QSystemSemaphore, no QProcess * only one QApplication instance (flat address space) * filesystem support depends heavily on the quality of the native driver * QLibrary is just a dummy to make plugins work at all * qmake transparently creates VxWorks munching rules for static ctors * made auto-test cope with missing OS features A special note regarding the Q_FOREACH patch for dcc: when calling foreach(a,c) with c being a function returning a container, the compiler would generate 5 references to some labels (.LXXXX), which are not there (so the linker complains in the end). Seems like dcc doesn't really like the 'true ? 0 : <function call to get type>' statement Reviewed-By: Harald Fernengel