| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
When passing a printer that is set up to print to a PDF file into
QPrintDialog, the print dialog could invalidate the printer and
not update the validity of it in a proper manner.
Task-number: 252873
Reviewed-by: Samuel
|
|
|
|
| |
Reviewed-by: nrc
|
|
|
|
|
|
|
|
|
| |
We must tell the system that we want to intercept the back key on
Windows mobile. Each toplevel widget that needs correct back key
behaviour needs to have a menu bar. Why? Ask Microsoft...
Task-number: 248846
Reviewed-by: thartman
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The fix for 1x1 source rect image drawing in change
ffbb3c1a2aee4134dce80cd144a26bf32865b698 was incorrect for transforms
with type >= TxScale. The aliased coordinate delta needs to be applied
in device coordinates, not in logical coordinates.
Also specialize the non-antialiased TxScale case by simply calling
fillRect_normalized directly, avoiding having to scan convert the
rectangle manually.
Task-number: 251561
Reviewed-by: Trond
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updates triggered by the line edit itself, i.e. cursor blinking, are not
processed after the top-level is resized. This is yet another problem
caused by the event dispatcher on Windows (Qt posted events are not sent
during top-level resize, task 146849). We added a work-around for that
particular case by posting an event via Windows, but the widget is not
visible on the screen (hidden from Windows' POV) so it'll never be posted.
And of course then we'll never receive it and the backing store is not
synced. This work-around is therefore useless for widgets that are
not visible on the screen.
However, not receiving update requests while resizing the top-level
(in this case QGraphicsView), is not a problem for embedded widgets
because all items and hence the proxied widgets are repainted by
graphics view anyways.
Task-number: 252400
Reviewed-by: Olivier
|
|
|
|
|
|
|
|
|
| |
When building docs for the mac, qdoc comments for functions defined
in the .h file were not found in any of the .cpp files in the mac
package because they were in the x11 or windows .cpp file. So I
moved them to a .cpp file that is in all the packages.
Task-number: 252496 252492
|
|
|
|
|
|
|
|
| |
When we fixed the stuff for normal spin boxes, we neglected to tweak the
small and mini variants. We now adjust pixels for them as well.
Task-number: 252301
Reviewed-by: Jens Bache-Wiig
|
|
|
|
|
|
|
| |
Fixes 245347 again and does not trigger 252319
Task-number: 245347
Reviewed-by: Maurice
|
|
|
|
|
| |
Task: 252796
Rev-By: Tor Arne
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The crash only occurred on Windows and X11 when running with
-graphicssystem raster. The reason is that the actual paint device
in QRasterPaintEngine::begin() is changed to pixmap->data->buffer(),
which means QPaintEngine::paintDevice() returns something else than
what it was told to paint on (see cb0c899b56b84154f69ddc545991bc6ded96ab01)
The root of the problem, however, was that we used a weird condition
(painter->worldMatrixEnabled(), added in 345072b9 for Qt 4.4) to find
the target device. We did that because the shared painter was completely
different in 4.4. We refactored it in 4.5.0, and we can only trust
QPaintEngine::paintDevice to be the target device.
Auto-test included.
Task-number: 252837
Reviewed-by: Trond
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The problem was that we discarded update requests for fully
transparent items, which is correct, but we even did that
when the update was issued from QGraphicsItem::setOpacity.
We don't have to, and shouldn't, consider the opacity in
that case. Whenever we reach the fullUpdateHelper call in
setOpacity it means we have to do an update regardless of
the current opacity (oldOpacity was not 0.0 if the
currentOpacity is 0.0).
Auto-test included.
Task-number: 252913
Reviewed-by: Andreas
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In 4.4 alphaMapForGlyph() would return valid images for any font size,
but this was changed in 4.5, forcing us to use the path fallback
instead. This lead to non-antialiased fonts when not using a
multisample-enabled GL format. This patch re-introduces the
alphaMapForGlyph() fallback in QFontEngine from 4.4 which uses the
raster paint engine to draw the glyph.
Task-number: 247083
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't know why the X server crashes, but it's reproducible both by us
and customers so we should fall back to the raster paint engine to avoid
the crash.
Task-number: 244362
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| | |
This fix ensures that the current tab is visible after calling
setTabButton() on a scrolled tab bar.
Reviewed-by: bnilsen
Task-number: 252472
|
| |
| |
| |
| |
| |
| |
| | |
This is still not a perfect solution since it breaks 245347 again
Task-number: 252319
Reviewed-by: Maurice
|
|/
|
|
| |
Task-number: 252287
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We were registering the types each time drag and drop was enabled, which
caused slowdowns when for example switching between the Edit and Debug
modes in QtCreator.
Instead, register the types on first enable and also when the custom types
change. Add check to draggingEntered() that disables the drag if
WA_DropSiteRegistered is false.
Reviewed-by: nrc
|
|/
|
|
| |
Task-number: 244858
|
|
|
|
|
|
| |
QTextCursor::operator=
Task-number: 247955
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The problem is that the mouse event was redirected to the active
pop-up, while it should have been redirected to the widget under
the mouse under the active popup. This patch does the correct
redirection
Task-number: 252259
Reviewed-by: Trenton Schulz
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There was code for updating the size constrains inside
setConstraints_sys. This is now added. Factored out the code that
does this into a function, and since we never applied size constraines
on a window upon creation, I also added an extra call from that
code part
Task-number: 219695
Reviewed-by: Trenton Schulz
|
| |
| |
| |
| |
| |
| |
| | |
Due to a wrong lookup (confusing line and block number) the scroll
optimization was broken, causing the entire view to be updated.
Reviewed-by: Thorbjørn Lindeijer
|
| |
| |
| |
| |
| |
| |
| |
| | |
Don't use aliased coordinate delta for image drawing.
Related to change fde7475bcf9c10522a8170e6eb8fb9a8fadc21cd.
Task-number: 251561
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| | |
Forward setDesktopBackground to setBackground as is mentioned in the
docs.
Reviewed-by: Paul
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
selections with different foreground but no background
The main concern is to avoid double painting. With anti-aliasing turned
on by default, we can not draw a piece of text on top of the same piece
of text without artefacts.
Task-number: 252310
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
the feature has to handle text with and without background, and extra
selections with and without background, or even only with underline style.
Trouble is that you sometimes want to accumulate styles, for example spell
checking wiggly underline plus search result highlights or background markup
from the css stylesheet.
Task-number: 252310
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Instead instigate the quit by calling QApplication::quit(), using the code
that was already in place. This allows QApplication::exec() to return normally
and prevents resrouce leaks for objects created on the stack in main().
Reviewed-by: nrc
|
| |/
|/|
| |
| | |
Task-number: 252415
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Images coordinates should simply be rounded and are not to be subject
to the aliased coordinate delta. The patch also adds a tiny delta in
QSpanData::setupMatrix() to ensure coordinates for fetching from source
images are rounded the opposite direction of the target rectangle.
This removes a lot of artifacts when trying to do border-image based
drawing on non-integer coordinates. A new qps test for border-image
drawing is included.
Task-number: 251561
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The bug appears in the raster paint engine and only in release mode as
the cause of the bug is in the MMX and SSE blend functions which are
disabled in debug. To prevent it simply we return early if we detect
that we have an opacity of 0.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The width of a pixmap is NOT the same as the bytes per row. We may have
been able to do that in the past, but it doesn't work in the general
case. I also took the liberty to introduce a QCFType to automatically
handling the free in the general case.
Task-number: 252176
Reviewed-by: sroedal
|
|/
|
|
|
|
|
|
| |
To avoid increasing code size for an uncommon case, the code
is #ifdef QT_QWS_ROTATE_BGR
Task-number: 250299
Reviewed-by: Tom
|
|
|
|
|
|
|
|
|
|
| |
The patch has some issues with text eliding which are not really
possible to solve properly without providing the elidemode
to the styleoption. Under these circumstances it seems better
just to fix the problem in Oxygen itself which has already been
patched when compiled with 4.5.
This reverts commit d7072b5577e3c07e984885cf05d5f9b217c6f473.
|
|
|
|
|
| |
Task-number: 252292
Reviewed-by: ogoffart
|
|
|
|
|
|
|
|
|
|
|
| |
embedded somewhere.
If a widget is embedded to non-Qt window on Windows, then we should still clear
the focus whenever we receive WM_KILLFOCUS since we won't get WM_ACTIVATEAPP in
this case. This is an addition to 6ed196051d0f19bfe2d045eaf12f5f5ca30670d0
Task-number: 251259
Reviewed-by: Thierry
|
|
|
|
|
|
|
|
| |
Got a case somehow with a timestamp of the mouse event that is less than
the timestamp we already had, so we need to make sure time only goes
forward.
Reviewed-by: Brad
|
|
|
|
|
| |
Task-number: 252668
Reviewed-by: Samuel
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In general, Cocoa handles the the Apple Events for us. However, this is
time between creating the NSApplication and Cocoa has set everything up,
usually after the event loop is running. This means that until that
time, the events are dropped on the floor :-/. The workaround is to use
the same handler that we use for Carbon, but to only have it enabled for
until Cocoa is ready to handle things. This will result in not stepping
on the toes when used in a plugin (if it does, we can conditionalize
it).
Task-number: 252795
Reviewed-by: Richard Moe Gustavsen
|
|
|
|
|
|
|
|
|
| |
QSortFilterProxyModel::indexFomSource and *ToSource
Show a warning instead
Task-number: 252507
Reviewed-by: Marius Bugge Monsen
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For a progress bar with a style sheet applied to it, this
fix ensures that the timer event is passed to the event
handler that updates the busy indicator animation state.
Essentially, the bug was that the decision that the
event was processed by the proxy style object (baseStyle())
was based only on the return value from the event() function.
In this case it is necessary to check that the event was
accepted as well.
Reviewed-by: ogoffart
Reviewed-by: brad
Task-number: 252283
|
|
|
|
|
|
|
| |
current item on show
Task-number: 252534
Reviewed-by: ogoffart
|
|
|
|
|
|
|
|
|
|
|
| |
QApplication::setStyle() caused a crash if called before
constructing the QApplication instance for custom styles. The reason
was that polish tried to create a pixmap (which is not allowed before
qApp is running). This fix checks that qApp exists. Polish will anyway
be called again when qApp gets constructed.
Task-number: 243697
Reviewed-by: Bjørn Erik Nilsen
|
|
|
|
|
|
| |
Avoid QRegion<->QPainterPath conversion if possible.
Reviewed-by: Samuel
|
|
|
|
|
|
|
|
|
| |
We can speed up the calculation by using rect intersections
if possible, i.e. QRegion &= QRect instead of QRegion &= QRegion.
Then we'll get rid of one QRegion construction and the intersection
itself is slightly faster.
Reviewed-by: Samuel
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The problem was that we didn't take the painter's clip into account
when setting the system viewport ("hard clip"). We only used the system
clip, but we have to use system clip + painter clip, which is the
current engine clip. Unfortunately, we have to calculate it again
since there's no cross-platform way of retrieving it.
This was only a problem with Qt::(Replace|No)Clip, since we
in all other cases combine the old clip with the new one.
(Uber cool) auto test included.
Task-number: 250482
Reviewed-by: Samuel
|