summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qwindowsurface_s60.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Improve the behavior of expose events on Symbian.Jason Barron2010-01-141-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | Previously when an expose was received from WSERV, we simply called BitBlt (for raster) or called flush on the window surface (for anything else). This behavior differs from other platforms which call syncBackingStore(). This difference means that we flush the backing store without actually updating the content first. This works for most cases because if there actually was new content, it would be updated when the widget's UpdateRequest event was handled. The problem arises when the backing store does not have the correct content. This can happen if the backing store was deleted, but only partially restored (see Task below). Another problem is with the OpenVG graphics system which assumes that beginPaint() is called before endPaint() is order to initialize the context and the surface size. The fix is to call syncBackingStore() like the other platforms, but introduce a bit field to prevent infinite recursion in the painting pipeline. Task-number: QTBUG-4921 Reviewed-by: axis Reviewed-by: Gareth Stockwell
* Update copyright year to 2010Jason McDonald2010-01-061-1/+1
| | | | Reviewed-by: Trust Me
* Fix for QTBUG-4908 SVG transparency rendering problem.Jani Hautakangas2009-12-161-3/+5
| | | | | | | | QPixmap::copy discarded alpha channel. This fix also removes usage of member variables CFbsBitGc and CFbsBitmapDevice. Now those are used only in function scope. Reviewed-by: Sami Merila
* Fix typo in license headerAlessandro Portale2009-11-121-1/+1
| | | | | | The word 'module' was missing. Reviewed-By: TrustMe
* Fixed a crash bug on S60 SDK 3.1.axis2009-10-071-1/+4
| | | | | | | | | | | | The crash was caused by the image data not being locked before being accessed. Also avoided an unnecessary detach copy by making the image variable a reference. RevBy: Jani Hautakangas Task: QTBUG-4705 AutoTest: QWidget passed
* Introduce native Symbian bitmap support to QPixmapJani Hautakangas2009-09-181-103/+55
| | | | | | | | | This is done to reduce heap consumption and to give a possibility to share bitmaps across process. QPixmap maps to Symbian CFbsBitmap which is stored in Symbian font and bitmap server. Reviewed-by: Jason Barron
* Update license headers again.Jason McDonald2009-09-091-4/+4
| | | | Reviewed-by: Trust Me
* Update tech preview license header for files that are new in 4.6.Jason McDonald2009-08-311-13/+13
| | | | Reviewed-by: Trust Me
* Changed names and URLs to reflect name change.axis2009-08-191-1/+1
| | | | RevBy: Trust me
* Changing names of Symbian leave <-> qt throw translation functionsmread2009-08-131-2/+2
| | | | due to http://qt-reviews.europe.nokia.com/r/67/
* Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qt-s60-publicmread2009-08-071-4/+4
|\ | | | | | | | | Conflicts fixed: src/corelib/io/qdiriterator.cpp
| * Update license headers according to commit 858c70f768e.axis2009-08-061-3/+3
| | | | | | | | RevBy: Trust me
| * Replaced $MODULE$ with hardcoded module names.axis2009-08-061-1/+1
| | | | | | | | RevBy: Trust me
* | replacing assert with recovery for begin/end paint lock for exception ↵mread2009-08-071-3/+5
|/ | | | compatability
* Squashed commit of the topic/exceptions branch.Harald Fernengel2009-08-031-4/+5
| | | | | Contains some smaller fixes and renaming of macros. Looks big, but isn't scary at all ;)
* Fix warnings because of unused variables.axis2009-06-291-1/+1
|
* Fixed incorrect headers.axis2009-06-031-1/+31
|
* Small optimization when hiding windows.Jason Barron2009-04-301-3/+4
| | | | | | | | | | When a window is hidden, it will call releaseBuffer() on the backing store which in turn will resize the window surface to a null rect. In this case, there is no need to update the QImage with the data pointer since it will be updated on the subsequent beginPaint() when the image is resized to a valid size again. This also avoids doing unnecessary locking on the FBSERV heap which still involves a context switch on older versions of Symbian.
* Get transparency working by clearing the window surface.Jason Barron2009-04-281-1/+22
| | | | | | | | | This is duplicated code from the raster paint engine's beginPaint() function. For translucent windows the previous contents must be cleared from the backing store before the new content is painted. This class should probably be re-written as a subclass of the raster version. The reason we cannot use that implementation directly is because we cannot use QNativeImage because it doesn't provide anywhere we can do locking.
* More work on translucent windows.Jason Barron2009-04-281-9/+8
| | | | | | | | | | | | One step closer to semi-transparent windows, but not there yet. This gets the transparent contents into the window, but the previous contents are not cleared so it keeps drawing the backing store on top of itself each time a Draw() is done. SetBackgroundColor() indicates to WSERV that our window is semi-transparent. We also make sure not to use 'EDrawModeWriteAlpha' when the widget is non-opaque since this actually changes the alpha channel on the frame buffer (not the window) so the gives undesired results. It's a faster draw mode though so we should use it where we can.
* Fixes: Add support for translucent windows in Symbian.Jason Barron2009-04-281-1/+10
| | | | | | | | | | | Warning, this is completely untested! Details: This should (in theory) get translucent windows working but this hasn't been tested yet. The emulator environment seems to return only 16ColorMU display modes which implies the window is opague so Qt ignores the translucent flag. HW seems to create 16ColorMA windows, but it hasn't been tested there yet either (no time).
* Long live Qt for S60!axis2009-04-241-0/+174