| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
(cherry picked from commit 7e8073b37a8a3e58d82b71934f085ec8143935eb)
|
|
|
|
| |
(cherry picked from commit a02eba0de0fcf9a17d489ee1f92977c95d3afd76)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem was reproduced on N97. If the FEP detects that the widget is
full while still editing text, it will try to send those events as
key events instead. Since this screws up the content in the widget,
we stop those events from reaching the widget in the input context.
AutoTest: Passed
Task: QTBUG-12949
RevBy: Miikka Heikkinen
(cherry picked from commit 5ca6264933af60b3cd376b7f08bea008fa69b515)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixed a case where using password mode would lead to Qt
believing that the cursor was one step to the left of where it really
was. This would have the effect of replacing the last character
instead of appending to it, and even crashing if the cursor was all
the way to the left.
The code is also much cleaner this way, but it meant that QTBUG-9867
had to be solved differently this time. We do this by assuming that
and empty FEP update means "erase last character", which seems to
work well in practice.
Also added a long overdue autotest for the FEP input methods. Most
tests pass, but some don't, which I will try to fix later.
Task: QTBUG-9867
Task: QTBUG-12949
RevBy: Miikka Heikkinen
AutoTest: Included
(cherry picked from commit 52cf47565e402dc682038ccaf8d725401802b603)
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 05eacd9ad40f8adb5aaa12a8b90113a73b43f642.
Conflicts:
src/gui/inputmethod/qcoefepinputcontext_p.h
src/gui/inputmethod/qcoefepinputcontext_s60.cpp
(cherry picked from commit c5901037f0d3ccd45b0c79b38ef5b04552dad0aa)
|
|
|
|
|
| |
QTBUG-13345
(cherry picked from commit b6d47ea4872e188d8da6886cb1922f1a89245825)
|
|
|
|
|
|
| |
Task-number: QTBUG-13331
Reviewed-by: Samuel
(cherry picked from commit dcb98430f6add24c9d54253bd35d35010cc75c23)
|
|
|
|
|
|
|
|
|
|
|
|
| |
FT_GlyphSlot_Embolden was introduced since FreeType 2.1.10 and we
started using it since 4.7. Some systems (including RHEL/CentOS 4) only
provide earlier versions will get a compiling error if they use
-system-freetype to build Qt. This patch fix it by providing a graceful
degradation when the function is not available.
Task-number: QTBUG-13274
Reviewed-by: Eskil
(cherry picked from commit 25622198904580c6eb93996f74c2e7b62afa77c7)
|
|
|
|
|
|
| |
Task-number: QTBUG-13204
Reviewed-by: axis
(cherry picked from commit 55b067d14d8c12bd29b03c17e0281a11a49f95ca)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the S60 screen furniture has already been constructed before
QWidgetPrivate::show_sys() is called on a top-level widget which
has Qt::WindowMaximized set (e.g. due to a showMaximized() call),
its geometry is set to the full screen extent, including the regions
covered by the status bar and CBA.
This patch ensures that calculation of the widget geometry always
takes into account the screen furniture.
Task-number: QTBUG-12605
Reviewed-by: Jason Barron
(cherry picked from commit a957ed92a61d9311ed163dba15f2b6f8d30bf03c)
|
|
|
|
|
|
| |
Task-number: QTBUG-10269
Reviewed-by: Jason Barron
(cherry picked from commit 859cca02a89ecadbb5578bb113e535374bcfcaca)
|
|
|
|
|
|
| |
Task-number: QTBUG-13204
Reviewed-by: axis
(cherry picked from commit 9d88ff485e93e9701719263ce0a46cb86b0398ca)
|
|
|
|
|
|
| |
Task-number: QTBUG-12817
Reviewed-by: Jason Barron
(cherry picked from commit ea85300f6456ef1bd9702296f3068edf0795736e)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the following sequence:
1. Widget is hidden
2. Widget partially revealed
3. Widget fully revealed
resulted in the reference count of the backing store owned by the
widget's window() being incremented twice.
This patch replaces the simple reference count with a QSet which
stores pointers to the native widgets which are descendents of
the backing store owner, and which are currently visible. The
sequence above therefore results in just a single insertion at
step (2), with step (3) having no effect on the backing store.
The QRefCountedWidgetBackingStore class has been renamed
QWidgetBackingStoreTracker to better reflect its purpose.
Task-number: QTBUG-12800
Task-number: QTBUG-12817
Reviewed-by: Jason Barron
(cherry picked from commit cb8d2dcc70846ccd9384a8b94b2a80821c0eb285)
|
|
|
|
|
| |
Reviewed-by: Miikka Heikkinen
(cherry picked from commit 5d32b723332acab5fdf880aa0d555ab8e05d79dd)
|
|
|
|
|
|
|
|
|
|
| |
Reviewer: David Boddie
Task number: QTBUG-11938
(cherry picked from commit eea84818e98af917d3cf2bf04ea17a416ef9d55e)
Conflicts:
src/script/api/qscriptcontext.cpp
|
|
|
|
|
|
|
|
|
| |
in between graphics system change. This patch ensures that all
old surfaces are destroyed before new graphics system is
activated.
Reviewed-by: Jason Barron
(cherry picked from commit d3ab1fccea2b1e011e7518269a29045a53f0a30b)
|
|
|
|
|
|
|
|
| |
raster paint engine for translucent windows.
Task-number: QTBUG-12710
Reviewed-by: Jason Barron
(cherry picked from commit 0210bbbd7bf8254be5f7f19f524068cd39fc34c2)
|
|
|
|
|
|
|
|
|
|
|
| |
Set the purpose of the window (dialog/popup/child window etc...).
Notify WServ when modal window is shown/hidden
Notify WServ when temporary surface deallocation happens.
Notify WServ when the application is going to shutdown.
Task-number: QT-2027
Reviewed-by: Jason Barron
(cherry picked from commit 339270016bd8805b081f0b4ff550906a6bcfec5b)
|
|
|
|
|
|
|
|
|
|
| |
It has been decided that this logic will not be used by anyone at the
moment so let's remove it. This removes an exported (although private)
virtual function so breaks binary compatiblity for plugins built with
previous versions.
Reviewed-by: Jani Hautakangas
(cherry picked from commit bd1aeaa50c60cffa3e195f3f6aed808f23a5c73c)
|
|
|
|
|
|
|
| |
One step further towards no static data...
RevBy: Trust me
(cherry picked from commit ddbffbe7271cfdd3935c188ccb8e804ad73627f6)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In S60, there are two pieces of screen furniture, changes in whose
visibility or size can affect the size of the Qt application window.
These are the status pane, at the top of the screen, and the CBA at
the bottom.
QSymbianControl listens for changes in status pane visibility and
size by implementing MEikStatusPaneObserver. Notifications
received via this interface trigger a call to
QSymbianControl::handleClientAreaChange() which resizes the control.
There is no corresponding interface through which to receive
notifications of changes in CBA visibility.
This patch introduces a utility function for setting the visibility
of both the status pane and CBA, which ensures that the control's
rectangle is updated when either one changes.
Task-number: QTBUG-5320
Reviewed-by: Jason Barron
(cherry picked from commit 92d6d1c974206bac7520101ad26ca93eb0b4d977)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The qt_cleanup() function will call CCoeEnv::DestroyEnvironment() on
application shutdown. This destruction will in turn tear down the
various server sessions associated with the application. One of these
sessions is the FBSERV session and if the QPixmapCache attempts to
delete a CFbsBitmap after the session has been destroyed, the app will
crash.
The solution is call QPixmapCache::cleanup() before we destroy the
environment. This is inline with what the other platforms do.
Reviewed-by: Jason Barron
(cherry picked from commit 55625badfab6bfe49c60ab5cd9a586c6bd511579)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The lifetime of the backing store depends, on Symbian, on the visibility
of the native windows which are rendering from it. Specifically, once
all such windows (i.e. the TLW window and those of any native widget
descendents) have become invisible, the backing store is deleted.
During re-parenting of a visible native child widget from parent1 to
parent2, the following events occur:
1. QWidget::hide() is called on the child
2. The child widget's native control is deleted
3. A new native control is created, with its parent set as
parent2->window()->effectiveWinId()
Because there is no yield to the event loop between (1) and (2), the
application does not receive a 'window hidden' notification as a
result of the call to hide(). This means that the child widget is
not removed from the list of visible widgets held in the backing store
of parent1->window().
This patch ensures that the child is removed from this list during
between steps (1) and (2).
Task-number: QTBUG-12406
Task-number: QTBUG-12817
Reviewed-by: Jason Barron
(cherry picked from commit bc1c472967c78579178cf7e98ab999842fee3102)
|
|
|
|
|
|
|
|
|
| |
The class has been there since 4.6 (http://labs.trolltech.com/blogs/2009/11/23/qtscript-in-46/),
but we don't see a reason to hide it any longer.
Task-number: QTBUG-13229
Reviewed-by: Olivier Goffart
(cherry picked from commit 94791e6d5be6859d87862d40233aece16d54932a)
|
|
|
|
|
|
|
|
|
|
| |
The order of global static destruction is not well defined. Ensure that
the QNetworkConfigurationManager global static is destroyed from the
QCoreApplication destructor before its dependencies are destroyed with
the rest of the global statics.
Task-number: QTBUG-13304
(cherry picked from commit 744ff7738333c35e7d621c61d72422cf3a8e7fe4)
|
|
|
|
|
|
|
|
|
|
| |
Like OpenGL2 and OpenVG, the OpenGL1 paint engine also transforms text
coordinates itself and does not require QStaticText to use device
coordinates.
Task-number: QTBUG-13228
Reviewed-by: Samuel
(cherry picked from commit d0f1f569e27f7f34f3bfc03bd759f28f7b567997)
|
|
|
|
|
|
|
|
|
| |
There are explicit tests in qdatastream for this. IMO it's wrong,
wrong, wrong, but it's currently abused in the SVG module so we can't
change it.
Reviewed-by: Gunnar
(cherry picked from commit bdcfcc607c1a6744cf1b35eca0914fa96e70071c)
|
|
|
|
|
|
|
|
|
|
|
|
| |
The OpenVG paint engine, like the OpenGL2 paint engine, supports
caching the untransformed glyphs and transforming them as they are
drawn. Since we would pretransform the positions of the glyphs, the
transformation would be applied twice, thus making the glyphs appear
in the wrong location when the painter had a transform set.
Task-number: QTBUG-13049
Reviewed-by: Gunnar
(cherry picked from commit f3771c5d91995b2beaa73bd3e3c783b76a887b50)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original code path of QStaticText does not include decoration
drawing, this patch generalized the drawTextItemDecoration()
function to draw decoration for drawText(), then use that to draw
decoration for QStaticText. A helper function called
drawDecorationForGlyphs() is made to allow easier extension for
direct glyphs drawing support.
Task-number: QTBUG-12121
Reviewed-by: Eskil
(cherry picked from commit a1641e27d2e2f5e29362e3737be6b9d75714d138)
|
|
|
|
|
|
|
|
|
|
|
| |
Reviewed-by: Trust Me
To-be-verified-by: Qt Doc Team
(cherry picked from commit f33359fb0c56fe88e0ae3c564b7847f90889eac2)
Conflicts:
doc/src/declarative/declarativeui.qdoc
doc/src/external-resources.qdoc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Calling QIconModeViewBase::initDynamicLayout() on the second and
successive segments would return QPoint(-1,-1), resulting in a
totally empty area rectangle for all the items while in
QIconModeViewBase::doDynamicLayout(). This rectangle is used to
initialize the BSP tree, and produces an arithmetic exception when
empty.
Furthermore, a rendering bug was also apparent when displaying the
first item of a segment while the last item of the previous segment
was hidden.
Auto-tests included.
Reviewed-by: Olivier
Task-number: QTBUG-12308
(cherry picked from commit 3c7e7992461b1fef37ada68244f1b5b891015bda)
Conflicts:
src/gui/itemviews/qlistview.cpp
tests/auto/qlistview/tst_qlistview.cpp
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Symbian's CFont::FontMaxAscent() returns in some cases an
incorrect value of 0. That usually happens (for some font sizes)
if a stroke based font is the main system font.
We were able to reproduce it on some S60 3.2 devices with a
chinese language pack installed.
This patch will test if CFont::FontMaxAscent() returns 0. And if
so, it alculates an ascent taht makes more sense.
Task-number: QTBUG-8013
Reviewed-by: Liang Qi
(cherry picked from commit f4f10d2a2d60790939492694abf6b9578a5f048a)
|
|
|
|
| |
(cherry picked from commit 6c7ed006b0a1f006e11fd5f78dd996d65114fc98)
|
|
|
|
|
|
|
|
| |
screens
Task-number: QTBUG-12594
Reviewed-by: Martin Jones
(cherry picked from commit 89e723153b15af5d3acbeb859d4f35bf52f8e250)
|
|
|
|
|
|
| |
Task-number: QTBUG-12627
Reviewed-by: Andrew den Exter
(cherry picked from commit 5569070c39a5778cb9e2ff1bab32993217e788c5)
|
|
|
|
|
|
|
|
| |
Any movement beyond the threshold is sufficient.
Task-number: 12747
Reviewed-by: Joona Petrell
(cherry picked from commit 44d5bcde1713a5f51b7140259e9fd4e426a868a8)
|
|
|
|
|
| |
Task-number: QTBUG-12749
(cherry picked from commit 0d060e71a5a03f21df5b2edbb4f6de1e928b9ada)
|
|
|
|
|
|
|
|
|
|
|
| |
We receive a pixmap as a const reference and then we convert it to an
X11 pixmap. This conversion could fail for many reasons, however we
were not looking at the result of this conversion.
This patch was contributed by Christoph Feck from KDE.
Task-number: QTBUG-12826
Reviewed-by: Samuel
(cherry picked from commit 8e7fb343372acd0bc5fe04db7a5c5542541d4538)
|
|
|
|
|
| |
Task-number: QTBUG-12839
(cherry picked from commit 59d36ea601aef6182cba0e0f5fc56cc102e29c59)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This turns out to be a glitch in the event dispatcher for Qt/Cocoa.
The problem is that you can, in some really slim cases it must be, end up
calling processEvents with the exec flag set, while the current modal
dialog has been told to leave modal. In that case, we recurse into
a new event dispatching loop for a session that is about to die. And
that causes problems when the session actually dies. This patch makes
sure that you cannon start spinning a session that is about to die, by
setting the sessionCache to zero.
Task-number: QTBUG-13164
Reviewed-by: Tor Arne
(cherry picked from commit a373648fa876a9684394aa9b7ecafd51e53f4742)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reviewed-by: Trust Me
(cherry picked from commit cb086eb5340c4c41efaf45373aa05c37e8aa974a)
Conflicts:
doc/src/index.qdoc
src/dbus/qdbusconnection.cpp
src/declarative/util/qdeclarativeanimation.cpp
src/gui/s60framework/qs60mainapplication.cpp
src/gui/s60framework/qs60mainappui.cpp
src/network/access/qnetworkrequest.cpp
|
|
|
|
|
|
|
|
| |
The reason is that we tried to fix the stacking order of child windows
while we fixed a crash. But the patch turned out to break an auto-test
Reviewed-by: prasanth
(cherry picked from commit 749ad26d255327c9fa3fe857a30983cc6dfef0d9)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit ebbab30af417dfbf3df47dec15c0e2f8d6a30fa6,
which broke fill / outline consistency, and when trying to fix that
by rounding the fill the same way that broke rendering in Creator.
Unfortunately the X11 paint engine is too sensitive to changes, there
have already been tons of patches to make it as consistent as possible.
It's simply not possible to get the same rounding for both fill and
outlines and at the same time have consistency between fill and outline
(no holes or fill outside the outline), while using the integer based
Xlib rendering API. Hopefully in 4.8 we'll switch to raster and the X11
paint engine will be a legacy.
Reviewed-by: Trond
(cherry picked from commit 041a68007413a20a9a9c97d0f2f04f9e03428f67)
|
|
|
|
|
|
|
| |
This reverts commit ff405f5623d7ed18c881c097368e3e9afd2e9443.
Reviewed-by: Trond
(cherry picked from commit 3014b427aa8700890f9bd8ea2a0300fc152bf3d2)
|
|
|
|
|
|
|
|
|
|
|
| |
Change ebbab30af417dfbf3df47dec15c0e2f8d6a30fa6 broke outline / fill
consistency in the X11 engine. Since the positioning of lines is more
important we'll round the fill coordinates the same way.
The bug was visible in the filltest.qps arthur test.
Reviewed-by: Gunnar Sletta
(cherry picked from commit ff405f5623d7ed18c881c097368e3e9afd2e9443)
|
|
|
|
|
|
|
|
|
|
|
| |
The crash happens in the Nvidia driver in glXReleaseTexImageEXT when
scrolling the corkboard using the mouse. To work around it we detect the
Nvidia driver versions where this is known to be a problem and skip
using the texture from pixmap extension in those cases.
Task-number: QTBUG-12914
Reviewed-by: Trond
(cherry picked from commit a76b8bf67696ae69888cc6237417e7c8f07f8da6)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The reason is the cocoa method that adds a window as a child of another,
it ends up showing both the parent and the child window regardless.
And this could in some cases also cause a crash.
So we therefore need to be careful when calling that function, and be
sure that the parent is actually visible. In addition, addChildWindow
reset the stacking level of the child window, and made e.g. normal
child windows pop in front of tool child windows. This could easily
be seen in e.g. Designer.
Task-number: QTBUG-12866
Reviewed-by: prasanth
(cherry picked from commit cc6dc0aeefde881a95f5fea2b26f2f3d7bdc6e15)
|
|
|
|
| |
(cherry picked from commit 167b63d2250e7923d7b660076a80e82af07d9cdb)
|
|
|
|
|
| |
Task-number: QTBUG-12771
(cherry picked from commit e8d3e8e0b93271bb41fcdc264fc10ec59be5aa20)
|