summaryrefslogtreecommitdiffstats
path: root/src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp
Commit message (Collapse)AuthorAgeFilesLines
* QtDFB: Make transparent windows behave betterAnders Bakken2010-10-221-16/+20
| | | | | | | | Windows with Qt::WA_NoSystemBackground should clear to transparent in beginPaint. Merge-request: 882 Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Export qt_directfb_.* functions in plugin as wellAnders Bakken2010-09-171-2/+0
| | | | | | | | | | | | | | These functions can be a big help in debugging rendering errors in an application and can even be handy to use for real functionality. While it requires the app to explicitly link to the plugin (when compiling with -plugin-gfx-directfb this is still much better than not exporting them). Since this was the only use-case for QT_DIRECTFB_PLUGIN it's probably better to take that define out. Merge-request: 2470 Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Initialize mem to 0Anders Bakken2010-02-241-1/+1
| | | | | | If DirectFB fails to lock a surface it won't necessarily set mem to 0. Reviewed-by: Jervey Kong <jervey.kong@nokia.com>
* Force DSFLIP_BLIT unless it's a full flip in DFBAnders Bakken2010-02-241-1/+12
| | | | | | | | If you're only updating parts of a widget we have to make sure DSFLIP_BLIT is included. Otherwise Qt's assumptions about the backing store breaks. Reviewed-by: Jervey Kong <jervey.kong@nokia.com>
* Support for disabling partial flips in dfbAnders Bakken2010-02-241-1/+3
| | | | | | | | | | Certain boards do not properly support IDirectFBSurface->Flip() with a partial DFBRegion passed in. This problem can be worked around by exporting: QWS_DISPLAY=directfb:nopartialflip Reviewed-by: Jervey Kong <jervey.kong@nokia.com>
* Allow forcing premultiplied format in DFBAnders Bakken2010-02-241-1/+5
| | | | | | | This was already possible in non-WM mode. I now enable using the same connect argument to make it work for WM. Reviewed-by: Jervey Kong <jervey.kong@nokia.com>
* Make DSFLIP_ONSYNC part of the default flip flags.Anders Bakken2010-02-021-1/+1
| | | | Reviewed-by: Jervey Kong <jervey.kong@nokia.com>
* Update copyright year to 2010Jason McDonald2010-01-061-1/+1
| | | | Reviewed-by: Trust Me
* Read QWS_SIZE from layer rather than screenAnders Bakken2009-12-231-1/+8
| | | | | | | | | | | When running the X11 emulator of DirectFB IDirectFBScreen->GetSize returns the size of the entire X11 Display, not the actual DirectFB window. We can read this from the primary layer instead and this value is correct both on devices and on the desktop. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Get rid of no_cast_from_ascii warningAnders Bakken2009-12-231-1/+1
|
* Clean up debug message with DirectFBAnders Bakken2009-12-091-29/+29
| | | | | | Remove some superfluous spaces. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Enable customizing of DirectFB layer to useAnders Bakken2009-12-091-2/+5
| | | | | | | | | | | This patch enables you to use a different layer for Qt apps by specifying: E.g. QWS_DISPLAY=directfb:layerid=2 Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Ran the script utils/normalizeOlivier Goffart2009-11-181-2/+2
| | | | Over src/ tools/ examples/ and demos/
* API review: Rename numRects() -> rectCount()Marius Storm-Olsen2009-11-091-3/+3
| | | | | | | QRegion::numRects() is marked obsolete. Removed all usage of the old function inside Qt and test-cases. Reviewed-by: Andreas Aardal Hanssen
* API review: Rename functions numColors(), setNumColors() and numBytes()Marius Storm-Olsen2009-11-061-3/+3
| | | | | | | | | | 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
* API review: QRegExp::numCaptures() -> QRegExp::captureCount()Marius Storm-Olsen2009-11-061-1/+1
| | | | | | | QRegExp::numCaptures() is marked as obsolete. Replaced all usage in Qt and test-cases. Reviewed-by: Andreas Aardal Hanssen
* Allow setting DFBDisplayLayer background colorAnders Bakken2009-10-151-7/+59
| | | | | | | | | | We already have an option for setting the background color of the primary surface when running with NO_WM. Reuse the same option for allowing users to set the background color of the primary layer. Also fix the regexp. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Fix a problem with QDirectFBScreen::instanceAnders Bakken2009-10-151-0/+11
| | | | | | | | If using a proxy screen QScreen::instance() will not return a QDirectFBScreen but rather a QProxyScreen. This patch lets QDirectFBScreen::instance hold its own pointer. Reviewed-by: Jervey Kong <jervey.kong@nokia.com>
* Export a function for getting a IDirectFBWindowAnders Bakken2009-09-151-0/+20
| | | | | | This function is only exported when DirectFB is built into QtGui. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Export two functions for getting a surface in dfbAnders Bakken2009-09-151-0/+13
| | | | | | | When building DirectFB as part of QtGui and not as a plugin this patch will export two global functions for getting a surface given a widget. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* DWDESC_OPTIONS was added for DirectFB 1.1Anders Bakken2009-09-101-1/+4
| | | | Reviewed-by: TrustMe
* Use fromLatin1() in QDirectFBScreen::connect()Anders Bakken2009-09-091-1/+1
| | | | | | Avoid warning when building DirectFB as part of Qt. Reviewed-by: TrustMe
* Update license headers again.Jason McDonald2009-09-091-4/+4
| | | | Reviewed-by: Trust Me
* Remove unnecessary call to exposeRegion in DFBAnders Bakken2009-09-041-0/+4
| | | | | | | | | If we make sure to erase the background to background color in connect() we don't have to do it in setGeometry. Also clean up the code in QDBWindowSurface::flush Reviewed-by: Donald Carr <donald.carr@nokia.com>
* QDFBScreen bgcolor is only use in non_wm modeAnders Bakken2009-09-041-4/+4
| | | | | | | No need to carry those extra bytes around when QT_DIRECTFB_WM is defined. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Remove unused function in QDFBScreenAnders Bakken2009-09-041-5/+0
| | | | Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Make exposeRegion work better in DFB_NO_WM modeAnders Bakken2009-09-041-61/+112
| | | | | | | | Previously we didn't properly compose windows so QT_NO_DIRECTFB_WM mode would generally only work for single windows (with no popups). This also simplifies the code a lot. Previously we would among other things paint the mouse cursor twice in this mode.
* Cache the DFBSurface for the cursor imageAnders Bakken2009-09-041-7/+16
| | | | | | | | This surface is painted every time we move the mouse cursor (in NO_DIRECTFB_WM) and doesn't change all that often so caching it is relatively easy and beneficial. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Fix reversed logic in QDFBScreen::exposeRegionAnders Bakken2009-09-031-1/+1
| | | | | | | We should fill the bounding rect only when the region has one rectangle. Not the other way around. Reviewed-by: TrustMe
* Support Windowed mode for DFB < 1.0Anders Bakken2009-09-021-13/+20
| | | | | | | | DirectFB doesn't let you query the size of the Display in versions prior to 1.0. In this version require people to specify the size using QWS_SIZE, QWS_DISPLAY or print a warning and exit. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Make size specification more robust in dfbAnders Bakken2009-09-021-8/+31
| | | | | | Support exporting QWS_SIZE=100x100 to set size Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Fix DirectFB driver when comipled with NO_WMJørgen Lind2009-09-021-0/+4
| | | | Reviewed-by: Tom
* Rewrite of DirectFB locking mechanismAnders Bakken2009-09-011-4/+35
| | | | | | | | | | | | | | | | | DirectFB allows you to have a locked subSurface that remains valid while you paint on the unlocked "parent" surface. The only limitation is that when accessing the locked memory you might have to call DirectFB->WaitIdle() in case pending GPU operations aren't finished. After this we keep the locked surface around at all times (from the first time it's requested) until the surface dies. Previous calls to lock() will just call WaitIdle if necessary and previous calls to unlock now just mark the surface as dirty and in need of a WaitIdle if someone needs to access its pixel data. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Make DirectFB compile with Qt in a namespaceAnders Bakken2009-09-011-8/+8
| | | | Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Make cursor work in non-windowed modeAnders Bakken2009-08-311-19/+15
| | | | Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Clean up directfb ifdefsAnders Bakken2009-08-311-1/+3
| | | | | | Make sure all files are wrapped in QT_NO_QWS_DIRECTFB Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Fix QT_BEGIN/END_NAMESPACE in DirectFBAnders Bakken2009-08-311-2/+7
| | | | Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Don't use QString(const char *) in QDirectFBScreenAnders Bakken2009-08-311-2/+2
| | | | Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Remove duplicated code in qdirectfbScreen.cppAnders Bakken2009-08-311-31/+1
| | | | Reviewed-by: Donald Carr <donald.carr@nokia.com>
* Allow setting screen size with connect optionsAnders Bakken2009-08-311-0/+2
| | | | Reviewed-by: Donald Carr <donald.carr@nokia.com>
* 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
* | Remove unnecessary static_cast in QDirectFBScreenAnders Bakken2009-08-281-1/+1
| | | | | | | | Reviewed-by: TrustMe
* | Make lockSurface take a real enumAnders Bakken2009-08-281-2/+2
| | | | | | | | Reviewed-by: TrustMe
* | Implement QDirectFBScreen::surfaceForWidgetAnders Bakken2009-08-261-0/+31
| | | | | | | | | | | | | | | | | | | | Allow applications to get a pointer to the surface of the window surface for a given widget or a subsurface of the widget. This function ignores whether or not the widget is fully or partially obscured. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* | Render cursor with a window in dfb if desiredAnders Bakken2009-08-251-4/+162
| | | | | | | | | | | | | | | | Some DFB implementations do not support rendering the cursor using the intended interfaces. In these cases one can define QT_DIRECTFB_WINDOW_AS_CURSOR and use a window to render the cursor. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* | Implement support for keeping image provider aliveAnders Bakken2009-08-251-0/+25
| | | | | | | | | | | | | | | | | | | | | | If you define QT_DIRECTFB_IMAGEPROVIDER_KEEPALIVE we make sure atleast one IDirectFBImageProvider is alive at all times. Apparently this is refcounted by DirectFB on atleast one implementation and there's considerable overhead involved when releasing the last/creating the first image provider. Reviewed-by: TrustMe
* | Refactor QDirectFBPaintDevice/QDirectFBPixmapDataAnders Bakken2009-08-251-0/+36
| | | | | | | | | | | | Move format into QDirectFBPaintDevice. Reviewed-by: Donald Carr <donald.carr@nokia.com>
* | Optimize createDFBSurfaceAnders Bakken2009-08-241-10/+11
| | | | | | | | | | | | When possible do a single memcpy instead of one per scan-line. Reviewed-by: Donald Carr <donald.carr@nokia.com>