| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This will save GPU resources for applications that are in the
background for most of the time and only show a window now and then.
Reviewed-by: Armin Berres
|
|
|
|
|
|
|
|
|
|
| |
Check if clipboard viewer is responsive before sending the
contents. This prevents Qt Creator from hanging when copying
text while a debugging session with a crashed/stopped
debuggee is in progress.
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Task-number: QTBUG-17465
|
|
|
|
|
|
|
|
|
| |
As the data may be aligned/padded by the X driver.
Fixes: NB#231246 : Incorrect stride used when QMeeGoLivePixmap width not multiple of eight
Merge-request: 1115
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
When all top-level widgets are minimized we switch to raster to reduce
GPU memory consumption. We switch back to graphicssystem meego when at
least one top-level widget is shown normally again. The switching only
applies when the runtime graphicssystem is being used. The switching
only applies when the runtime graphicssystem is being used.
Task-number: QTBUG-18013
Reviewed-by: Armin Berres
|
|
|
|
|
|
|
|
|
|
| |
Event filter was added twice due to widget initialization being
done twice caused by recursion of WidgetFactory::createWidget()
in the case of a fallback to promotion when a custom widget
plugin is missing.
Task-number: QTBUG-18121
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
|
|
|
|
|
|
|
| |
Wrong list was used when adding widgets.
Task-number: QTBUG-18120
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
|
|
|
|
|
|
|
|
|
|
| |
If we found a forced line break with line separator (e.g. '\n'),
take the right bearing of previous glyph into account, otherwise
the resulting text width will be slightly smaller than the one
without a line separator.
Task-number: QTBUG-17020
Reviewed-by: Eskil
|
|
|
|
|
|
|
|
| |
Limit the amount of recursions in qt_painterpath_isect_curve to prevent
a crash.
Task-number: QTBUG-16422
Reviewed-by: Kim
|
|
|
|
|
|
|
|
|
|
|
| |
When the scene was losing and regaining focus, it was incorrectly
setting the focus on any item that had its focus previously explicitly
cleared.
Autotest included.
Task-number: QTBUG-16401
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
|
|
| |
Commit 64852122ba7 introduced a regression in QTextBlock::previous(),
programs that do doc.end().previous() will not be able to retrieve
the last valid block. Revert this change so that we can keep the
behavior consistent with previous versions.
Task-number: QTBUG-18026
Reviewed-by: Eskil
|
|
|
|
|
|
|
|
| |
When we get an Expose, we need to repaint the window surface before we
can flush if the window surface doesn't support partial updates,
otherwise we'll end up with garbage on the screen.
Reviewed-by: Bjørn Erik Nilsen
|
|
|
|
|
|
|
|
| |
The cached texture is associated with the QRuntimePixmapData, not to the
proxied QPixmapData.
Task-number: QT-4655
Reviewed-by: Gunnar Sletta
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QMeeGoLivePixmap fails to lock the EGL surface and texture after switch
to raster graphics system. The EGL surface is invalid after eglTerminate
call in switch. But QMeeGoLivePixmapData doesn't know about the switch.
Marking EGL surfaces and texture invalid after switch makes live pixmap
automatically recreate the surface when next time requiring live
pixmap.
Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Merge-request: 2571
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
| |
This is needed in the meego graphics system to support the shared image
fallback path (when using the raster graphicssystem). The flag is
internal.
Reviewed-by: Gunnar Sletta
|
|
|
|
|
|
|
| |
Backport 43d5a0757d857c2a6694ae81d6b70c04ef876aff from 4.8.
Task-number: QTBUG-16954
Reviewed-by: Eskil
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Commit 0ba1b4d0 introduced a regression to QTextDocument: it postponed
cursor position adjustment until the move operation is done, but
contentsChanged will be triggered by finishEdit() in this move
operation, thus cursor positions in this signal handler will be in
inconsistent states (normally we should first update cursor position
then trigger contentsChanged). In this case we should also postpone
finishEdit() handling after cursor positions have been adjusted, then
the states expose to applications will be consistent.
Task-number: QTBUG-15857
Reviewed-by: Eskil
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
After ensure space, local QGlyphLayout variable should be updated to
the moved address.
stringToCMap returns true for success, so stringToCMapFailed should
be the reverse of the return value.
Out of bounds happened quite often in all situations using the
QStackedTextEngine, because the memory allocated at the first time
is usually not much, making it easier to trigger out of bounds in
shaping. But it can also happen when using normal QTextLayout.
Test it by comparing the width returned by normal QTextLayout and
the width returned by QTextLayout created from QStackedTextEngine
via QFontMetricsF.
Task-number: QTBUG-16648
Reviewed-by: Eskil
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This was broken by: d149a3faca9b97ce806249bc7ef73fe2f59589d5
The connection was removed in that commit because we did not want
the layoutChanged signal to be emitted. So instead of calling
invalidate(), we call clearMapping() directly.
In order to do that, clear_mapping has been turned into a private slot
Task-number: QTBUG-17812
Reviewed-by: Gabriel
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The runtime window system has a 'proxy' window surface which wraps the
currently active window surface. When the window geometry changes, the
new geometry is properly communicated to the wrapped window surface.
However, the new geometry is not updated into the runtime window surface
proxy itself, which means that when queried, the geometry for the window
surface will always be invalid. This patch fixes the issue.
Fixes: QT-4588
Merge-request: 1098
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-17053
Reviewed-by: Kim
|
| |
| |
| |
| |
| |
| | |
Fixed by merge request 1080.
Task-number: QTBUG-17254
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add sanity check for cpp, which would otherwise lead to a segfault later
in the code.
Task-number: QTBUG-17254
Merge-request: 1080
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Tables with nulls in a row were not being deleted properly in some
cases. Made sure the responsible function no longer has default
parameters so this doesn't happen again.
Change-Id: I479121172d5ac172ca49da78638b9353d7a67548
Task-number: QTBUG-16007, QTBUG-15979
Reviewed-by: Charles Yin
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Dithering in QMeeGoPixmapData::imageToEGLSharedImage is now done using
Ordered Dithering, not anymore Floyd-Steinberg dithering.
This provides better overall results.
Fixes: NB#208927 - X dithering looks better than meego graphicssystem one
Merge-request: 1079
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
| |
| |
| |
| |
| | |
Reviewed-by: Gabriel
Task-number: QTBUG-15910
|
| |
| |
| |
| |
| |
| | |
We need to copy the image if painting is active.
Reviewed-by: Jani Hautakangas
|
| |
| |
| |
| | |
Reviewed-by: Sergio Ahumada
|
| |
| |
| |
| |
| |
| |
| |
| | |
psql, sqlite2 drivers already do this correctly.
Change-Id: I1f02401432d5c39fa1572e2f6255941b8a67e591
Task-number: QTBUG-17076
Reviewed-by: Charles Yin
|
| |
| |
| |
| |
| |
| |
| |
| | |
Added some better unit testing around the problem areas.
Change-Id: Ie4749da298aebbae6aec9558ebe8c8f2196c705f
Task-number: QTBUG-14916
Reviewed-by: Charles Yin
|
| |
| |
| |
| |
| |
| |
| |
| | |
As suggested by Jean-Louis Mounier.
Change-Id: I2284d00453ddcb981fe3e1b710d4453323fe1e9e
Task-number: QTBUG-8875
Reviewed-by: Charles Yin
|
| |
| |
| |
| |
| |
| |
| |
| | |
Some places documented this, some didn't.
Change-Id: Id66678dbcd9af6ec9687db745ba6f5506e951d1d
Task-number: QTBUG-3240
Reviewed-by: Charles Yin
|
| |
| |
| |
| |
| |
| | |
Change-Id: I5f1afada766d40273526f2cd7537ad68d5f9d09a
Task-number: QTBUG-12094
Reviewed-by: Charles Yin
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since the change is immediately visible through data(), this is needed
so that QSortFilterProxyModel etc work correctly.
Change-Id: Ied7afce2e6a1f516b502d3501f9d214df54e52f2
Task-number: QTBUG-14831
Reviewed-by: Charles Yin
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
After inserting a column, fetching data through QSqlTableModel was
off by one or more, since it passed the indexInQuery through to
QSQM. Also, the headerData would sometimes return a blank string
for an inserted column, and sometimes the column number.
The autotests have been beefed up a little to check insertRows and
insertColumns play nicely.
Change-Id: I7399d4c4d94f958884b67ab9b39b5cf2485d8416
Task-number: QTBUG-12626
Reviewed-by: Charles Yin
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
in the unix code, if the QMutexPrivate::wait() with a timeout
expires in the same moment that the mutex is released, wakeup
would be set, but would be then ignored. (reset to false
quickly after)
If we waken up between the timeout and the re-aquisition of
the internal mutex, we consider that the mutex has been locked.
Reviewed-by: brad
Task-number: QTBUG-16115
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the context is destroyed and recreated, we end up with a new glyph
cache, but we only recreate the vertex arrays for the very first static
text item. We need to keep track of the glyph cache in each text item,
so that we can recreate the vertex arrays and re-populate the cache
accordingly. As the pointer might be the same after the glyph cache is
recreated, we need to use serial numbers instead.
We also need to re-create the cache when the context pointer has been
invalidated, so that the static text items also get invalidated, and
the texture glyph cache gets repopulated.
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If we can't access the qt_gl_share_widget() we should just create a
raster window surface. This might happen when creating the share widget
itself leads to creation of a window surface (which isn't really going
to be used anyways).
Reviewed-by: Michael Dominic K
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Change e0c2861976e06658a1d651941310407c15b0bcde fixed es1 configure by
only picking EGL/egl.h if GLES/egl.h is not found. This broke es2
configure on platforms where both EGL/egl.h and GLES/egl.h are present,
by picking GLES/egl.h instead of EGL/egl.h, which implicitly pulled in
the GLES/gl.h header as well, causing inconsistent declarations due to
both GLES2/gl2.h and GLES/gl.h getting included. Instead, we need to
prioritize depending on whether we're using es1 or es2. For es1, we
prefer GLES/egl.h, and for es2, we prefer EGL/egl.h. If only one of the
headers is found we still use it unconditionally, to preserve the
existing behaviour and minimize the risk of breaking other platforms.
Reviewed-by: Ritt Konstantin
Reviewed-by: Marius Storm-Olsen
|
| |
| |
| |
| | |
Reviewed-by: Brad
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 2e72a8b19ea6c674fb4777860dac50faa5d387e6.
The behavour in Qt 4.6 was wrong. And even if it was not documented,
it is too late to change the behaviour back at this point.
The tests for QEventLoop and QCoreApplication have not been reverted
Reviewed-by: Brad
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
Don't ignore source-text when generating qsTrId translations for QML
Fix a crash when undoing form layout
|
| | |
| | |
| | |
| | | |
Reviewed-by: ossi
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In a rare case when breaking a layout might
make widgets overlap, the internal heuristic
failed when recreating an original layout during undo.
Some widgets were removed from the grid.
The patch fixes this heuristic (makes sure
we don't remove other widgets). Creating
a form layout from overlapping widgets works
better now.
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Task-number: QTCREATORBUG-3616
|
|\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
Fix potential networking crash due to null-pointer dereference
Revert "Improve timer ID safety by using a serial counter per ID."
Invalidate QScriptPrograms when engine is destroyed
Fix alignment issue causing crash in QtScript/JavaScriptCore
Restore Qt 4.6 behaviour: exec() always enters the event loop.
Make syncqt not complain about missing header macros.
|
| |\ \
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
Fix potential networking crash due to null-pointer dereference
Revert "Improve timer ID safety by using a serial counter per ID."
Invalidate QScriptPrograms when engine is destroyed
Fix alignment issue causing crash in QtScript/JavaScriptCore
Restore Qt 4.6 behaviour: exec() always enters the event loop.
Make syncqt not complain about missing header macros.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
An internal bug report suggests that we unconditionally dereference the backend
pointer in QNetworkReplyImpl when checking for the synchronity of the
originating request. The dereferencing code was introduced in commit
ad1e82323225e996720136e8b2d669166b8d8441. Unfortunately the report does not
detail where/how the crash happened, but it appears plausible that the backend
pointer became null, and the surrounding code that has extra checks suggests
this, too. In an attempt of defensive programming this patch introduces
the missing check in the reported line 112 as well as in other places
where it seems appropriate.
Reviewed-by: Peter Hartmann
|
| | |
| | |
| | |
| | |
| | | |
This reverts commit 121e2b39043a4ffc6583f250aebb9a3a746076c1. It was
considered too dangerous for 4.7.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If the engine is destroyed before the program, the program
must be invalidated; otherwise the program destructor will
access a stale engine pointer, which can cause a crash
(it crashes on Symbian, but "only" gives a Valgrind warning
on Linux for our autotests).
We need to keep track of all associated programs, just like
we already do for values and strings. This fix follows the
exact same pattern, but uses a QSet to keep the patch minimal.
No new tests, but the evaluateProgram() test runs successfully
on Symbian now, and there are no more Valgrind warnings.
Task-number: QTBUG-16987
Reviewed-by: Olivier Goffart
|