| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| | |
Reviewed-by: paul
|
|\ \ |
|
| |\ \ |
|
| |\ \ \ |
|
| | |\ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Switched to use S60 API instead of Symbian one, the rationale is given
below as an copy/paste from S60 docs:
"Cross-application fading support
Symbian OS provides some support for fading, but this only covers
fading within an application. The S60 UI can have more than one
application on the screen at once (in fact, since the system parts
of the Status pane are inside EikServer, it always has more than one
application on the screen). The S60 UI introduced the fading and
drawing system to manage the fading state for the whole system.
Application and UI control code for S60 should not attempt to set fade
for a popup window directly. Instead, the popup window should implement
the MAknFadedComponent interface, and should use the TAknPopupFader
support class to set the fade.
The application UI base classes interact with the fading and drawing
system by informing it when the foreground status of the application
changes. They also use it to implement system wide fading."
There is also task QTBUG-5393 to implement fading support in future
without S60 dependency.
Task-number: QTBUG-5181
Reviewed-by: Sami Merila
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This is necessitated by the fact that CCoeControl::SetExtent calls
SizeChanged, but does not call PositionChanged. This causes a bug
in the handling of orientation changes. When the screen orientation
changes, QSymbianControl::HandleResourceChange(KInternalStatusPaneChange)
is called on the top-level widget. This results in a call to
SetExtent. Because PositionChanged was not being called, the outcome
was that the size of the widget's data.crect variable was updated, but
not its position. This meant that mouse events sent to this widget
or any of its children were incorrectly handled:
1. QSymbianControl::HandlePointerEventL works out which widget should
receive the event. This uses CCoeControl::PositionRelativeToScreen,
and therefore calculates the correct widget.
2. In constructing the QMouseEvent object, QWidget::mapFromGlobal is
used to translate the event position into the receiving widget's
co-ordinate system. This uses data.crect.topLeft(), therefore giving
the wrong value, resulting in the widget's event handler discarding
the event.
Task-number: QTBUG-4697
Reviewed-by: axis
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This reverts commit f3854db64bcaa0f26faf5ff1414d3b9ccfc00e35.
It is replaced by 6a89291d.
Reviewed-by: Janne Anttila
|
| |\ \ \ \ \ |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This change causes some applications to crash due to a null
pointer dereference in QSoftKeyManagerPrivate::updateSoftKeys_sys.
f3854db6 fixes the crash, but introduces incorrect behaviour: the
softkey labels are not updated. To see this:
1. Launch qmediaplayer
2. Open a video clip
3. Video clip starts playing but softkeys still have labels "Open"
and "Cancel"
Reviewed-by: Janne Anttila
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
video playback
During the switch to full-screen video playback, the following happens:
1. Double-tapping to enable full-screen results in a call to
QSymbianControl::HandleLongTapL
2. This modifies the global variable QApplication::mouse_buttons,
OR'ing in Qt::RightButton
3. QWidgetPrivate::create_sys, called as a result of the call to
setWindowFlags made by Phonon::VideoWIdget::setFullScreen, schedules a
delayed deletion of the same control as in step (1) above
4. The control gets deleted before it receives a HandlePointerEventL
for the long tap release, which would have removed Qt::RightButton
from the mouse_button bitmask
5. In subsequent calls to QSlider::mousePressEvent, the test
(ev->buttons() ^ ev->button()) is false, which results in the event
being ignored.
Ideally, we would fix this by propagating the m_previousEventLongPress
flag from the deleted QSymbianControl to the newly created one.
However, this does not work because the new control does not receive
the HandlePointerEventL callback for the long press release.
We therefore fix the bug by checking for m_previousEventLondPress
in the QSymbianControl destructor; if it is set, we clear the
Qt::RightButton bit from the QApplication::mouse_buttons mask.
Note that QTBUG-5309 (Cannot interact with sliders after orientation
switch during audio playback) is still seen after applying this patch.
Task-number: QTBUG-5242, QTBUG-5308
Reviewed-by: axis
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
visible after activating the window.
This change was required in order to be able to run the test case
for the below task; however, it is more generally required. Without
it, the contents of the descendents of this widget will not be
visible, until they are explicitly hidden and then re-shown.
Task-number: QTBUG-4787
Reviewed-by: axis
|
|\ \ \ \ \ \ \ |
|
| | |_|_|_|_|/
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
We need to use isOpaque to check whether the widget has an opaque
background, it's not enough to just check the palette (it doesn't check
Qt::NoSystemBackground for example).
Task-number: QTBUG-5012
Reviewed-by: Gunnar Sletta
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
request.
Reviewed-by: Prasanth
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Was ignoring top OSX menu bar.
Example c++: http://pastebin.ca/1585763 http://fred.uwcs.co.uk/testAvailableGeometry.cpp
Example output: http://pastebin.ca/1585766 http://fred.uwcs.co.uk/testAvailableGeometry.output
Introduced by commit 13254da6c3192937812983f44ce95fe8e1bc602c
Merge-request: 1652
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
|
|\ \ \ \ \ \ \ |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
GetURL events are delivered by Launch Services to the application if the
application is registered as the default handler for the given protocol,
and the user for example issues 'open http://foo.com/' in the console or
clicks a link in another application.
The GetURL event is converted to a QFileOpenEvent, which now has both a
QUrl constructor and a url() method. These two new methods work in sync
with the file() method, so a QFileOpenEvent constructed from a QUrl will
return a valid file name from file() if the URL was a local file.
The boolean argument to AEInstallEventHandler decides whether the handler
is to be added to the system event dispatch table or the application's
event dispatch table. Previously we added it to the system table, but
this did not work for the GetURL event. We now use the application event
table, which works for all three of the events we register on Carbon.
Reviewed-by: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
|
|\ \ \ \ \ \ \ \
| |/ / / / / / /
|/| / / / / / /
| |/ / / / / / |
|
| | |_|_|_|/
| |/| | | |
| | | | | |
| | | | | | |
Reviewed-by: Trust Me
|
| |\ \ \ \ \ |
|
| | | |_|_|/
| | |/| | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
It depends on QT_NO_GRAPHICSVIEW for now, but it is possible to remove
this dependency.
Reviewed-by: paul
|
| |\ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Conflicts:
tests/auto/qsqlquery/tst_qsqlquery.cpp
tests/auto/qtextlayout/tst_qtextlayout.cpp
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The current implementation fails when moving the
widget onto an area that has just been exposed
as a part of a window resize operation.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
When the gesture finishes it might not necessery set the ScaleFactorChanged
flag.
Also fixed the touch-event based pinch gesture.
Reviewed-by: trustme
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Added QGesture objects and gesture recognizers based on touch events.
Reviewed-by: Bradley T. Hughes
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Made sure we emit the same values for the pinch gesture as on Mac.
Reviewed-by: trustme
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Reviewed-by: Bradley T. Hughes
|
|\ \ \ \ \ \ \
| |/ / / / / / |
|
| |\ \ \ \ \ \
| | |_|/ / / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Conflicts:
src/gui/kernel/qevent.cpp
src/gui/kernel/qgesture.cpp
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Reviewed-by: Trust Me
|
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Conflicts:
dist/changes-4.6.0
src/gui/kernel/qevent.h
|
| |\ \ \ \ \ \ \
| | | |_|_|_|_|/
| | |/| | | | | |
|
| | | |_|_|_|/
| | |/| | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Destroying the control environment also pops items from the original
cleanup stack which is not owned by the control environment.
This is a platform issue (and does not occur in 9.3 & 9.4).
To avoid this causing a panic, the s60main is changed to not push items
on the cleanup stack (instead, it TRAPs the call to main(), and deletes
its allocations manually).
A further 9.2 cleanup stack crash was caused when application construction
fails (because of missing resource files). The resulting exception would
bypass deleting the control environment, and return from main with the
wrong cleanup stack active.
This is resolved by doing the TRAP / cleanup / throw manually instead of
using qt_trap_throwing (The control environment cannot be pushed to the
cleanup stack, because it owns the cleanup stack at that time).
This isn't a 9.2 specific bug, but rather is revealed by 9.2 because the
missing resource file is non fatal in 9.3 and 9.4.
Fixes many autotests which have crashed on S60 3.1 since the cleanup
stack swapping patch.
Reviewed-by: axis
|
| | |\ \ \ \ \ |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Static QSound::play(const QString& filename) API did work for Symbian,
since local stack variable was deleted before asynchronous play
completed. This happened with the following seqeunce:
- void QAuServer::play() is called and creates a QSound on the stack
- QAuBucketS60::play() is called
- m_prepared is false, so the actual play will happen a bit later
- The QSound created on the stack is deleted
-> Silence
This scenario is now fixed by making copy of QSound object to internal
list, and temp object is being deleted when play is completed either
successfully or unsuccessfully.
Added also manual test case for static play.
Task-number: QTBUG-5217
Reviewed-by: Miikka Heikkinen
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
- Comparing TBool == bool did not work correctly since TBool is
effectively int. For example statusPane->IsVisible() in this particular
case returns 2, which compared to true as an int fails. Casting to bool
seems to solve the problem. Another possibility would be to use Symbian
COMPARE_BOOLS macro.
- Changing statuspane visibility now affects to widget size also
- Some tab/space fixes
Task-number: QTBUG-4876
Reviewed-by: Sami Merila
|
| | |_|_|/ / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The QGtk class has been refactored into a private d class for QGtkStyle.
This allows us to re-use a lot of code for the Maemo5 style without changing
a single line in QGtkStyle itself plus we can easily add virtual functions
where the two styles need to behave different.
There shouldn't be any new functionality added (or old functionality lost) by
this commit.
Reviewed-By: jbache
Reviewed-By: Ralf Engels
|
| |\ \ \ \ \ \
| | |_|/ / / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Conflicts:
src/gui/kernel/qevent.cpp
src/network/ssl/qsslerror.cpp
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Reviewed-by: Trust Me
|
| |\ \ \ \ \ \ |
|
| | |\ \ \ \ \ \ |
|
| | |\ \ \ \ \ \ \
| | | | |_|/ / / /
| | | |/| | | | | |
|
| | | |\ \ \ \ \ \ |
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Softkeys should be always the topmost window in order to be visible.
For example when QMessageBox is launched from fullscreen window,
we need to make sure that softkey is located on top of window tree.
Task-number: QTBUG-4953
Reviewed-by: Jason Barron
|
| | | | |\ \ \ \ \ \ |
|
| | | | |\ \ \ \ \ \ \
| | | | | | |_|/ / / /
| | | | | |/| | | | | |
|
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
Reviewed-by: TrustMe
|
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
There were TODOs in code to remove the temporary solution for creating
native CFbsBitmap out of QPixmap. Now when QPixmpa has native backed
and it provides toSymbianCFbsBitmap, it it preferred to use
toSymbianCFbsBitmap since in best case it can only duplicate the bitmap
handle instead of copying the data.
Task-number: QTBUG-4948
Reviewed-by: Jani Hautakangas
|