| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
PorterDuff should only be enabled if the raster engine says it is. E.g.
if we're painting on a format with alpha.
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
| |
- Move implementation of debug functions to the bottom of the file.
- Move ImageCache stuff to under QDirectFBPaintEnginePrivate
- Move SurfaceCache stuff to under QDirectFBPaintEnginePrivate
Reviewed-by: Shane McLaughlin <Shane.McLaughlin@trolltech.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Pretty much every paint operation on DirectFB surfaces starts with
a clipping operations which until now would always cause a
IDirectFBSurface->Lock(). This was to make sure QRasterBuffer::prepare
had been called so QClipData::initialize() would allocate a big enough
array for its spans. We can safely not make
QDirectFBPaintDevice::memory() return 0 until we actually fall back.
Reviewed-By: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
|
| |
Slight optimization by using the pluralized functions when possible.
Also make templatized helper functions to avoid near-duplication of code
for the float/int cases.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
| |
The drawTiledPixmap code iterated while x < right and y < bottom. This
should be x <= right and y <= bottom.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
|
|
|
| |
Preallocated surfaces can currently be copied to video memory behind our
back. This means that we can not use this mechanism for toImage()
In later versions of DirectFB this might be possible to toggle with a
flag so I'll leave the code in there #if 0'ed
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
| |
It's only used once and I want to unclutter the top of
qdirectfbpaintengine.cpp
Reviewed-by: TrustMe
|
|
|
|
|
|
|
| |
The function only sets a variable anyway. Replace with:
d->opacity = state()->opacity * 255
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
fbWidth/fbHeight were never used for anything
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
Take out the QPen member.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove unnecessary copy of QTransform
- Fold matrixRotShear and scale into transformationFlags. Note that
transformationFlags is not a proper bitset of the types of transform
but rather set to the most complex operation (from QTransform::type())
and having NegativeScale added if
qMin(transform.m11(), transform.m22()) < 0
- Fix a bug whereby setState didn't call setRenderHints
- Make everything more readable
- Don't initialize state in QDirectFBPaintEngine::begin()
QDirectFBPaintEngine::setState will be called from QPainter::begin
just before QDirectFBPaintEngine::begin
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
|
|
| |
Until this fix very few cases of drawTiledPixmap and
fillRect(r, textureBrush) have been handled by DirectFB.
This patch makes it possible to accelerate such operations.
Reviewed-By: Donald <qt-info@nokia.com>
|
|
|
|
| |
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
Add unsupportedCompositionMode to the output.
Reviewed-by: TrustMe
|
|
|
|
|
|
| |
This ifdef was simply in the wrong place.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
Also. Make sure to call QRasterPaintEngine::end()
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
| |
Move the code from QDirectFBPaintEnginePrivate::(end|begin) into
QDirectFBPaintEngine::(end|begin)
Reviewed-by: TrustMe
|
|
|
|
|
|
| |
We already do this in QDirectFBWindowSurface::scroll
Reviewed-by: TrustMe
|
|
|
|
|
|
| |
This bug made us call lock more than we needed to.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
Make sure surfaces always are locked when used as source for something.
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
|
| |
The logic regarding whether or not a pen was simple was broken.
Essentially the pen is sonly simple if it should en up as a single pixel
line.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
| |
No need to set the pen in begin. It's always done before it's used
anyway.
Reviewed-by: TrustMe
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
|
|
|
| |
Some options were added for 0.9.23. This change adds some ifdefs so DFB
0.9.22 compiles
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
|
|
| |
Not sure to what extent it actually works but atleast it compiles now.
- A couple of image formats doesn't exist in 0.9
- IDirectFBSurface::ReleaseSource doesn't exist in 0.9
- IDirectFBWindow::SetBounds doesn't exist in 0.9
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
We need to set alpha to the right value when copying pixmaps.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
The batch-blits buys us nothing and this is much more readable.
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
| |
DirectFB and Qt treats these things rather differently so the mapping
just doesn't work very well. Only use DirectFB for SourceOver stuff
(which is the default mode anyway)
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
|
|
| |
Previously we allowed RGB32 but forced fallbacks for all drawing
operations. It turns out blitting operations doesn't work right either
so we'll rather just disallow this format altogether. See also
36ae58e7a6a888d3ae7bd162d59daada550bbfb1
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
| |
Due to incompatibilities between RGB32 in DirectFB and Qt we can't use
RGB32.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
Explicitly cast to integer.
Reviewed-by: Shane McLaughlin <Shane.McLaughlin@trolltech.com>
|
|
|
|
| |
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
Since this is C there are no constructors.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
|
|
| |
QDirecttFBPixmapData => QDirectFBPixmapData
Reviewed-by: TrustMe
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
|
|
| |
Include info on the primary surface pixelformat.
Reviewed-by: TrustMe
|
|
|
|
|
|
| |
We're just printout out the integer value anyway.
Reviewed-by: TrustMe
|
|
|
|
|
| |
Needed for fallback warnings
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
|
| |
Put all variables in the same area for QDirectFBPaintEnginePrivate. Make
QDirectFBPaintEngine a friend.
Also, do away with setClipDirty and replace it with d->clipDirty = true;
Reviewed-by: TrustMe
|
|
|
|
|
|
|
| |
Move private functions to the bottom of the file to be more in line with
how most qt cpp files are structured.
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
|
|
|
| |
Make image caching a lot cleaner and more sensible.
By default we do not cache images since creating a preallocated surface
is quick and we don't really want to waste memory. In the case where the
driver does not support preallocated surfaces you can enable image
caching to speed up drawImage.
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
|
| |
Store whether qt was built with qt3support enabled in .qmake.cache. We
need this info to decide if QT3_SUPPORT should be defined when we
include qimage_p.h. Otherwise we get data corruption issues since the
size of struct in Qt is larger than the one we include in libqdirectfb.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
| |
Made SurfaceCache entirely inline for better readability.
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
|
|
|
| |
Store the memory address of our last QRasterBuffer::prepare() call to
make sure we reprepare if someone has unlocked and locked the device
behind our back.
Also optimize QDirectFBDevice::memory() since it might get called a fair
bit.
Reviewed-by: Donald <qt-info@nokia.com>
|
|
|
|
|
|
|
|
| |
Fall back to raster engine when using a transform with
m11 < 0 || m22 < 0.
Task-number: 252921
Reviewed-by: Donald <qt-info@nokia.com>
|