summaryrefslogtreecommitdiffstats
path: root/src/gui/image/qpixmap_s60.cpp
Commit message (Collapse)AuthorAgeFilesLines
* 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-59/+38
| | | | | | | | 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
* Access to image needs to be protected in QS60PixmapDataMiikka Heikkinen2009-12-091-0/+6
| | | | | | | | The image can get corrupted if access to it is not properly surrounded with beginDataAccess and endDataAccess calls. Task-number: QTBUG-6050 Reviewed-by: Jani Hautakangas
* Fix crash when using splash screen, or QPixmap::copy()Shane Kearns2009-11-191-0/+5
| | | | | | | Missing virtual function now implemented Task-number: QTBUG-5977 Reviewed-by: axis
* Merge commit upstream/4.6 into oslo-staging-2/4.6Olivier Goffart2009-11-131-1/+1
|\
| * Fix typo in license headerAlessandro Portale2009-11-121-1/+1
| | | | | | | | | | | | The word 'module' was missing. Reviewed-By: TrustMe
* | Fix to symbian transparent window backing store format.Jani Hautakangas2009-11-111-4/+8
| | | | | | | | | | | | | | | | | | Symbian semi-transparent window surface needs backing store pixmap in argb32 format. Normally QPixmap contains only rgb32 or argb32_pre pixels. This fix locks semi-transparent window backing store pixmap to argb32 format. Reviewed-by: Shane Kearns
* | Revert "Using qreal more consistently in code (prevent misuse of double)"Aleksandar Sasha Babic2009-11-111-5/+4
| | | | | | | | | | | | | | | | This reverts commit 676780d515cedca85829ae962e4f501c5e5b6581. Conflicts: src/gui/painting/qblendfunctions.cpp
* | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Shane Kearns2009-11-101-4/+4
|\ \ | |/
| * API review: Rename functions numColors(), setNumColors() and numBytes()Marius Storm-Olsen2009-11-061-4/+4
| | | | | | | | | | | | | | | | | | | | QPaintDevice and QImage used the functions numColors(), setNumColors(), and numBytes(). However, this is not consistent with the rest of the Qt API which uses *Count() and set*Count(). Removed all usage of these functions inside Qt and test-cases. Reviewed-by: Andreas Aardal Hanssen
* | Using qreal more consistently in code (prevent misuse of double)Aleksandar Sasha Babic2009-11-061-4/+5
|/ | | | | | | | | | | | | | | | | | | | | | | | | We want to force use of qreal where possible. This can lead to better performance on platforms where qreal -> float (i.e. ARM). To achieve this we: 1. changed from 'double' to 'qreal', where justified 2. using qreal() to intialize constants, where justified 3. adding helper functions that are overloaded for qreal like qAtan2(), qAcos(), qFabs() ... 4. defining QT_USE_MATH_H_FLOATS for Symbian platform In addtion we used opportunity to improve code with some small things 5. converting divisions to multiplications (i.e. '/ 2.0' -> '* qreal(0.5)') 6. defining new constants (i.e. 'Q_PI / 180.0' -> 'Q_PI180') 7. declaring variables as 'const', where justified Reviewed-by: Andreas Aardal Hanssen Reviewed-by: Gunnar Sletta Reviewed-by: Jan-Arve Reviewed-by: Kim Motoyoshi Kalland Reviewed-by: Alessandro Portale Reviewed-by: Janne Koskinen
* Fix compiler error.Aleksandar Sasha Babic2009-11-041-1/+1
| | | | Reviewed-by: Trust Me
* Merge branch '4.6-s60' into 4.6axis2009-11-041-11/+11
|\
| * Fix crash in QApplication autotest introduced by native pixmaps (S60 3.1)Shane Kearns2009-11-031-11/+11
| | | | | | | | | | | | | | | | | | | | Problem was caused by S60 closing a handle under our feet when QApplication is destroyed. To avoid this, we open our own handle for the global lock instead of using the shared one inside CFbsBitmap. Also the global unlock/relock is not needed on S60 3.2 so this can be eliminated and save a few cycles (the function call was a no-op before) Reviewed-by: Jani Hautakangas
* | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Gunnar Sletta2009-11-031-10/+12
|\ \ | |/
| * Fixed crash/drawing artifacts on rotation change on Symbian.axis2009-10-281-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | On every beginDataAccess on the pixmap data, we checked the value of the pointer to the bits and only updated the image if the pointer had changed. However, we didn't take into account that the pointer could be the same, even though the dimensions were different, since malloc() could return the same memory area. This would lead to painting into an image that had the wrong dimensions, which again led to either crashes or image shearing. Fixed by checking the dimensions before deciding to update the image. Task: QTBUG-4815 RevBy: Jason Barron
| * Fix EColor16M conversion in QPixmap::fromSymbianCFbsBitmap()Jani Hautakangas2009-10-281-6/+9
| | | | | | | | | | | | | | EColor16M is in BGR format so after conversion to QImage RGB values needs to be swapped. Reviewed-by: jbarron
* | Lazily construct QPixmapData's for null pixmapsGunnar Sletta2009-10-301-6/+7
|/ | | | Reviewed-by: Trond
* Use premultiplied alpha pixel format in SymbianShane Kearns2009-10-201-7/+12
| | | | | | | | | Gives better performance in the raster paint engine. For Symbian 9.3 onwards, this can also be used as the native pixmap format. For 9.2, conversion is required. Reviewed-by: Sami Merila Reviewed-by: Jani Hautakangas
* Second attempt: Fixed a few compiler warnings from QtGui for Symbian.Janne Anttila2009-10-131-0/+2
| | | | | | | The previous commit 9c6e466dc09813dd4a641b2cf385f35ac99346f5 included some changes which were not meant to be pushed. Reviewed-by: TrustMe
* Revert "Fixed a few compiler warnings from QtGui for Symbian."Janne Anttila2009-10-131-2/+0
| | | | | | Accidentally used git commit -a when should have used only git commit :( This reverts commit 9c6e466dc09813dd4a641b2cf385f35ac99346f5.
* Fixed a few compiler warnings from QtGui for Symbian.Janne Anttila2009-10-131-0/+2
| | | | Reviewed-by: TrustMe
* Fix to Symbian accelerated scrolling problem.Jani Hautakangas2009-10-081-26/+19
| | | | | | | | | | The reason for scrolling bug was that CFbsBitmapDevice wasn't informed if CFbsBitmap was resized. However, it seems that scroll implementation in QRasterPixmapData is faster that CFbsBitGc->CopyRect so this is also a patch which changes QS60PixmapData's scroll function to call QRasterPixmapData::scroll(). Reviewed-by: Janne Koskinen
* Symbain crash fix for QPixmap->QImage conversion.Alessandro Portale2009-10-051-1/+6
| | | | | | | | | | | In some cases the QImage, returned by QS60PixmapData::toImage() image an invalid pointer. That led to reproducable crashes on 3.1 Device and Emulator when starting a drag in the FridgeMagnets demo. Jani Hautakangas created this fix and I tested it on 3.1 Device and Emulator confirming that the crash is gone. Rev-By: Jani Hautakangas Rev-By: Alessandro Portale
* doc: Fixed numerous qdoc errors.Martin Smith2009-10-021-2/+2
|
* Fixed QPixmap::fromImage when using Format_Mono for Symbian.Janne Anttila2009-10-011-3/+3
| | | | | | | | | | The intermediate sourceImage was stored to wrong QImage object (image instead of correct sourceImage). This made subsequent switch-case statement to fail because destFormat was set to QImage::Format_Invalid Autotest: Fixes QItemDelegate::decoration autotest Reviewed-by: Jani Hautakangas
* Fix qdoc errorsJason McDonald2009-09-281-0/+2
| | | | Reviewed-by: Trust Me
* Fix qdoc error.Jason McDonald2009-09-281-1/+1
| | | | Reviewed-by: Trust Me
* Fix qdoc errors.Jason McDonald2009-09-281-5/+6
| | | | Reviewed-by: Trust Me
* Modify functions for native pixmap data conversion on Symbian.Jason Barron2009-09-231-201/+209
| | | | | | | | | | | | | We need a way to support converion to and from multiple native pixmap types from multiple pixmap backends. Instead of adding more virtual functions to QPixmapData, make the existing one more generic but pass an opaque pointer and a type and do some internal casting. Currently this function is Symbian only, but could easily be extended to work on other platforms. Reviewed-by: Aleksandar Babic Reviewed-by: Jani Hautakangas
* Fix compilation and remove trailing whitespace.Jason Barron2009-09-181-140/+140
| | | | | | Fix compilation on systems that support the extended bitmap format. Reviewed-by: Jani Hautakangas
* Adding support for symbian graphics resources.Aleksandar Sasha Babic2009-09-181-0/+58
| | | | | | | | | | | | | | This enables us to convert from and to new Symbian type of graphics resource, namely SgImage. This only supported with the OpenVG graphics system. On other graphics systems this will return null QPixmap. Conflicts: src/corelib/global/qglobal.h src/gui/image/qpixmap.h src/gui/image/qpixmap_s60.cpp Reviewed-by: Jason Barron
* Introduce native Symbian bitmap support to QPixmapJani Hautakangas2009-09-181-118/+773
| | | | | | | | | 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
* QCursor support for Symbian OSShane Kearns2009-09-151-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reviewed-By: Jason Barron Reviewed-By: Alessandro Portale Summary: QT_NO_CURSOR is now not defined for symbian builds Existing QCursor APIs are all supported New public API, QApplication::setNavigationMode, to allow the navigation mode to be set. I.E. on an S60 3.2 phone, some applications will want a virtual mouse cursor (web browser), while others are designed for keypad navigation. Symbian HAL is used for detecting input capabilities. Fix DND, code cleanup & comment QCursor visibility now uses a refcount, and is called from DND and the setNavigationMode so they are both simpler and don't interfere with each other. QApplication::setNavigationMode New public API for configuring cursor/keypad navi style. This links in with ongoing work on the 4-way keypad navi branch, but 2-way and 4-way modes both act as 2-way mode until that is integrated Some of the demos/examples have cursor switched on (those that were not usable with keypad) Virtual mouse support for non touch, non mouse phones (tested on N78) add *.d and .metadata (carbide debug file / workspace dir) to .gitignore System pointers are unavailable when using sprite workaround, so the system cursor shapes are compiled into qtgui as resources. MAC port does this also for shapes that aren't standard on the MAC. Refactor Drag'n'Drop to use QCursor Add test case to check all system cursor shapes Simply a mainwindow containing a label widget for each cursor shape, with the cursor property set appropriately QCursor(QBitmap,QBitmap) supported Fixed problem with the image & mask being inverted when using the QCursor constructor that takes two mono bitmaps. add .make.cache files to .gitignore Correct implementation of QApplication::setOverrideCursor QApplication::restoreOverrideCursor and QApplication::setOverrideCursor are now working correctly on Symbian platform. Performance will be slower compared with other platforms, because the Symbian window server has a cursor associated with each native window. Add test case for custom cursors Create a pixmap cursor and associate it with a widget. No changes to production code, since test passed 1st time ;) Add manual test for QCursor Make cursor independent of construction order Updated to work around window server issue where contruction order affects what cursor is displayed in child windows. Also changed to effectiveWinId following review comments Also fixed a problem which would make qcursor not link if configured with QT_NO_CURSOR Moved some multiply declared extern functions from cpp to _p.h files Implemented Symbian versions of the cursor functions. Merged in work I'd done based on tower. Fill in bits of stub functions based on windows port Removed QT_NO_CURSOR from list of config options forced on symbian Recompiled configure.exe Added stub functions for the missing functions in s60 port
* 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
* doc: Fixed several qdoc errors.Martin Smith2009-08-311-6/+6
|
* Changed names and URLs to reflect name change.axis2009-08-191-1/+1
| | | | RevBy: Trust me
* Fix incorrect logic in QPixmap::fromSymbianCFbsBitmap.Jason Barron2009-08-141-1/+4
| | | | | | In some alternate universes it might make sense to use a pointer before checking if it is valid, but since this isn't one we shoudn't do it. Also extend the autotest a little to make sure we catch this case.
* 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
* Squashed commit of the topic/exceptions branch.Harald Fernengel2009-08-031-2/+2
| | | | | Contains some smaller fixes and renaming of macros. Looks big, but isn't scary at all ;)
* Make Qt exception safer.Robert Griebl2009-06-101-0/+1
| | | | | | | | Squashed commit of the branch haralds-haralds-qt-s60-topics/topic/exceptions, which also contains the full history. Rev-By: Harald Fernengel Rev-By: Ralf Engels
* Compile on newer SDKs >= S60 5.0.Jason Barron2009-06-051-1/+1
| | | | Semi-colons, colons, they all look the same to me.
* Introduce Symbian CFbsBitmap <-> QPixmap conversion functions.Jason Barron2009-06-051-6/+134
| | | | | | | | | | | | | | | | Introduce functions for converting to and from a CFbsBitmap on Symbian. Currently these functions unfortunately have to copy the data to the internal QImage stored in the raster pixmap data backend :( Hopefully we can improve this with a native Symbian pixmap backend in the future. The autotest generates both small and large CFbsBitmaps of different formats and then verifies that the color makes it into the QPixmap. Currently the indexed image formats don't seem to work, but this is most likely because we don't set a palette for them. The semi-trans bitmaps seem to work fine (verified visually), but the current QCOMPARE doesn't consider the fact that the color was alpha blended. Reviewed-by: Sami Merilä
* Fixed incorrect headers.axis2009-06-031-1/+31
|
* Make QPixmap::grabWindow() work for top level windows.Jason Barron2009-04-291-1/+1
| | | | | | Its not enough to mask with Qt::Desktop because this enum value also includes Qt::Window so masking would give us a non-zero result thus causing the 'if' case to resolve to true which is not what we want.
* Long live Qt for S60!axis2009-04-241-0/+74