Commit Graph

4179 Commits (2a1ea8f13be95f664b112663986102300a17bdfe)

Author SHA1 Message Date
Andy Nichols 2a1ea8f13b DirectFB: Use correct pixel format for Texture Glyph Cache
QImage::Format_Indexed8 -> QImage::Format_Alpha8

Change-Id: I7faa7c9d2cb20306f63a2522e7fa78736b9ee583
Task-number: QTBUG-47490
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-10-12 09:33:07 +00:00
Alexander Volkov c55a36cb90 xcb: Fix DnD for separate X screens
Recreate QShapedPixmapWindow when the cursor goes to
another X screen.

Change-Id: Ifd4c4281971b23abc45a9f6c0509832a45c31521
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-10-09 15:45:35 +00:00
Alexander Volkov 04e8d72a64 xcb: Add support for Qt::WA_ShowWithoutActivating
Also re-enable and update the tst_showWithoutActivating test.

Change-Id: Ic7fa9b1bf7637e4661c593aaeabb3220cd4204ff
Task-number: QTBUG-46098
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-10-08 07:11:06 +00:00
Tor Arne Vestbø c7e5e1d9e0 Move shortcut handling back into QPA and simplify delivery
Commit 7f5b94b47 moved shortcut handling into QGuiApplication (for all
platforms except OS X), due to crashes on Android where the events are
delivered from another thread.

Now that we have synchronous event delivery (also across threads) from
QPA, this is no longer needed, and we can move the code back to QPA,
where the platform has more control over when and how shortcut events
are delivered in relation to normal key events.

Handling shortcuts is as before a two step process. We first send a
QKeyEvent::ShortcutOverride event to the active window, which allows
clients (widgets e.g.) to signal that they want to handle the shortcut
themselves. If the override event is accepted, we treat it as the
shortcut not being handled as a regular shortcut, and send the event
as a key press instead, allowing the widget to handle the shortcut.

If nothing accepted the shortcut override event we pass it along to
the global shortcut map, which will treat the event as handled if
an exact or partial match is found.

The QShortcutMap::tryShortcutEvent() and nextState() implementation
has been simplified to not use the events accepted state for its
internal operation, which removes the need for saving the state
of the incoming event.

The QKeyEvent::ShortcutOverride event was also always sent with
the accepted state set to false, by calling ignore() on it before
sending it. This is now explicit by having shortcut override
events being ignored by default in their constructor, and the
documentation has been updated accordingly.

Change-Id: I9afa29dbc00bef09fd22ee6bf09661b06340d715
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
2015-10-07 13:24:45 +00:00
Liang Qi d0eaa737e1 Merge remote-tracking branch 'origin/5.5' into 5.6
Conflicts:
	qmake/doc/src/qmake-manual.qdoc
	src/corelib/tools/qstring.h
	src/gui/image/qimagereader.cpp
	src/network/access/qnetworkaccessmanager.cpp
	src/tools/qdoc/doc/examples/examples.qdoc
	src/widgets/accessible/qaccessiblewidgetfactory_p.h
	src/widgets/doc/qtwidgets.qdocconf

Change-Id: I8fae62283aebefe24e5ca4b4abd97386560c0fcb
2015-10-02 16:59:55 +02:00
Laszlo Agocs f191ba9d71 Revamp signal handling in eglfs/linuxfb
Go back to the pipe-based signal handling. signalfd() introduces more harm than good
and is a regression for applications that install their own signal handlers.

Simplify the somewhat overcomplicated suspend (Ctrl+Z) logic too. There is no need for
requiring a callback. Just enable/disable the keyboard and cursor on suspend and resume
and emit the signals. Backends (like kms) may then perform additional steps, if they
choose to do so.

Task-number: QTBUG-48384
Change-Id: Ifd52de89c59915a2e0be6bf5ebc6f2ff1728eb50
Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
2015-10-02 06:32:03 +00:00
Vyacheslav Koscheev 0cd7b64a61 qwindowsmime compilation fix
Change-Id: I6ca030ed1333f62da6270c1295a4f489f088334d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-09-30 04:55:54 +00:00
Samuel Nevala f8b317dd59 winrt: Default show to showMaximized on Windows Phone.
Status bar visibility can be controlled and window geometry can be
adjusted accordingly. Default show to showMaximized instead of
showFullScreen. This means that by default application starts status
bar visible.

[ChangeLog][winphone][Important Behavioral Changes] By default
application starts status bar visible.

Task-Id: QTBUG-48282
Change-Id: Ia60edd53ec2a7181aa97d21a825600b7c8cf87a7
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-09-28 17:27:15 +00:00
Pier Luigi Fiorini dceb424fe8 eglfs_kms: Skip disconnected outputs
For some reason VMware reports 8 outputs, 7 of them are disconnected
and so they cause several errors.

Skip disconnected outputs to avoid those errors.

Change-Id: I5f9fa2ef38b916af9f9ae8b50fce9fc40c18bff3
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-28 16:08:34 +00:00
Pier Luigi Fiorini 0ea56cc075 eglfs_kms: Subpixel antialiasing type
[ChangeLog][QPA][eglfs][kms] Provide subpixel antialiasing type.

Change-Id: I1eed487cea675d988a128f63a9d5c2c0ddeae21f
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-28 16:07:58 +00:00
Tor Arne Vestbø 126c2cb8fb Clean up cancel operation handling on OS X
The logic for handling cancel operations was spread out through
the code base and sometimes hard-coded to only include the Escape
key shortcut, missing the Command+. shortcut.

We now intercept both attempts at cancel operations from the system
through cancelOperation, which we forward as normal key events.

A new QKeySequence::StandardKey has been added for the Cancel sequence,
which maps to Escape on all platforms, and Command+. in addition for
OS X. The hard-coded logic in QWidget and subclasses for dealing
with closing the dialogs has been replaced with this key sequence,
which allows clients to override the behavior. Note that the widget
code is not wrapped in checks for QT_NO_SHORTCUT, as we don't care
about keeping widgets building and working under that define.

The logic in QCocoaWindow to bypass windowShouldClose when delivering
IM events has been removed as we now handle that specific case by
also forwarding Escape as a cancel operation.

Task-number: QTBUG-47557
Task-number: QTBUG-45771
Task-number: QTBUG-44076
Change-Id: Ibe0b3a4819f8659d246a2142dd7d9cd3a826ef78
Reviewed-by: Tim Blechmann <tim@klingt.org>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-09-27 20:44:17 +00:00
Alexander Volkov 98c10a02c5 xcb: Show buttons on the title bar for QWindow
QWindow by default doesn't have the window flags to display
buttons on the title bar and it's up to the window manager
whether they will be shown. For example, fluxbox doesn't show
the maximize button.

The cocoa plugin and the windows plugin adjust the window
flags in this special case of QWindow to show some buttons,
so do the same in the xcb plugin.

Change-Id: Idc2575cfeaced524dd67eb5ba99126663626e2b0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-25 10:44:12 +00:00
Daniel Nyström 58bed4cda9 eglfs: Support for alternative Mali driver packages
In addition to the proprietary Mali Linux driver bundle from ARM, there
are a couple of semi open source alternative bundles out in the wild,
which are mostly derivatives from the sunxi-mali bundle.

The non-ARM bundles lacks the proprietary header file fbdev_window.h
which defines the fbdev_window struct. Instead, it has an equivalent
mali_native_window struct in the EGL/eglplatform.h (which in turn is
included by EGL/egl.h).

This change adds an alternative configure test which detects the non-ARM
bundles are used. It also removes the dependency on fbdev_window.h by
defining the structure ourselves, which actually makes the plugin
potentially compilable with *any* EGL SDK.

Change-Id: I78ab4b618e8e9c774c889fe9896105cf2cf4228e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-25 10:15:04 +00:00
Wolfgang Bremer 462f355e4f xcb: fix touchscreen input with certain capabilities only
Touch screens without the "Abs MT Position X" but "Abs X" capability
weren't detected correctly so far. This patch fixes the detection and
enables these tochscreens.

Change-Id: I32fdb4d56c106717c90904a6632c2838bd55a255
Task-number: QTBUG-48279
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
2015-09-25 08:06:33 +00:00
Morten Johan Sørvig 2d6f9b6148 Cocoa: Don't send duplicate close events.
Use the presence of a platform window to detect
if the QWindow has already been closed.

Change-Id: Ieedf231cc5b805ed6383e55a82ca137087805a4f
Task-number: QTBUG-43344
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-09-25 07:56:31 +00:00
Shawn Rutledge d72da0b4b2 xcb: fix yet another crash when screens are disconnected
Can't assume that m_screens is not an empty list.

Task-number: QTBUG-42985
Change-Id: I6f9422638c219123dc898813910d03c7afbd1450
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-24 20:16:08 +00:00
Shawn Rutledge d0ca16eae1 xcb: get Genius/Waltop tablets working again
It was working at some point, but not in 5.5.0.

Task-number: QTBUG-48370
Change-Id: I8a0e09d4dfa9ace3d69c10c5f88129958d226a9a
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-24 20:15:18 +00:00
Morten Johan Sørvig 3ea04c7d38 Cocoa: Support Qt::WindowTransparentForInput
Map this to ignoresMouseEvents on NSWindow.

Task-number: QTBUG-45498
Change-Id: I86e518bbf805647d9f12b1af1747355ef55cc167
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
2015-09-24 07:11:47 +00:00
Laszlo Agocs 867fc30c7c windows: Improve error handling with EGL
When disabling the graphics adapter, things start failing
with context lost and then bad_alloc and bad_access failures
when creating contexts/window surfaces.

Swap buffers now handles context loss. This makes it possible
for Qt Quick to act when the graphics adapter goes away.

Similarly, the window surface creation failure EGL_BAD_ACCESS
is treated the same way as context loss.

Note that this will not really help the main issue, because
rendering is not possible without a GPU (reinit attempts will
fail either at context creation or window surface creation),
but proper logging and context loss reporting improves the
situation somewhat.

Also unify and prettyify the warning and debug prints.
This makes it easier to understand what is going on.

Change-Id: Iec3a9b54f1134e78e87eefcf938525283ec9412a
Task-number: QTBUG-48095
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-09-23 15:50:52 +00:00
Gatis Paeglis 24d0f9ef5a Silence the _COMPIZ_TOOLKIT_ACTION warning.
It is still unclear how to act on those
messages. We are already doing this for
other Compiz messages -_COMPIZ_DECOR_*.

Change-Id: I45f76b5f56ee1b07eb4c7398cc85b5d7bed86c4c
Task-number: QTBUG-46954
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-22 19:37:12 +00:00
Friedemann Kleint 78b2719b04 Windows: Add checks to usages of QWindow::screen().
Default to primary screen and handle situations where the screen
is null consistently. Remove unused QWindowsScreen::screenOf() method.

Task-number: QTBUG-48288
Change-Id: I91b3c2331521d9d3be8ac77606ee820cd35ebb0f
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-09-22 14:26:43 +00:00
Friedemann Kleint 47ff3dcd08 Windows: Disable Windows input context when another context is used.
Remove QWindowsContext::instance() method and use
QPlatformIntegration::inputContext() with proper check instead.
Extract static method to disable Windows IME on a window
by associating a null context from QWindowsInputContext
and use that to disable the IME if another context is
in use.

Amends change b46fe39d94.

Change-Id: Icaad99d390cea5559167602ffbf994660d4717a5
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-09-22 14:26:33 +00:00
Gatis Paeglis 7edd10e6cc xcb: Compress mouse motion and touch update events
The current version of the mouse motion event compression
algorithm does not work with certain configurations -
situations where we get one XCB_GE_GENERIC event between
every XCB_MOTION_NOTIFY event.

The new implementation tries to be less fragile. The
previous approach checked "is *the next* event the same
type as the current event", the new check asks "have
we buffered more events of the same type as the current
event". We buffer events of the same type only when the
main thread is unresponsive.

This patch adds event compression for XI_TouchUpdate in
addition to the fix for motion even compression.

Change-Id: Ie215eb5969e2060e463ebe48e3d3007390a30deb
Task-number: QTBUG-40889
Task-number: QTBUG-47069
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-22 14:21:00 +00:00
Alexander Volkov b9c5a938c0 xcb: Always send dnd events to the proxy window if it exists
The standard http://www.newplanetsoftware.com/xdnd/ says:
"The only place where the proxy window should be used is when
checking XdndAware and in the calls to XSendEvent()".

Change-Id: I62e504ba52ec7ec2a941c53a84889bb3eb4b4cc1
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-09-22 14:20:46 +00:00
Laszlo Agocs 863dfb1541 eglfs: Create input handlers only when screens are available
Some code may rely on the primary screen geometry for example.

Task-number: QTBUG-47002
Change-Id: I42fc1ccf0c1d91beb5d8e9691ac6ec4e7400e567
Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
2015-09-22 14:15:40 +00:00
Friedemann Kleint 28f251993a Windows: Return accepted state of XBUTTON mouse events to the OS.
Qt needs to return false in case it does not handle the "extra"
buttons (like WM_XBUTTONDOWN) which causes Windows to send the
corresponding WM_APPCOMMAND message (like APPCOMMAND_BROWSER_FORWARD).

Task-number: QTBUG-48117
Change-Id: Id2c8005ee992b0abd8af2aacbcb97c4eedcfa32f
Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
2015-09-22 06:19:31 +00:00
Jake Petroules dc1bf3008e Clean up some Apple-related includes and declarations.
Change-Id: I92db9691c2243ae72ecd4e11dd4640afaf4bf822
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-09-22 01:58:41 +00:00
Alexander Volkov 30c8e845be xcb: Use the correct property type when requesting virtual roots
Virtual roots are windows, so we should request XCB_ATOM_WINDOW
instead of XCB_ATOM_ATOM.

Change-Id: I59558b1a3c37cb9bcad42bc0695d420f59088eb9
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-09-21 20:11:43 +00:00
Friedemann Kleint 42c6ea4f6c QPlatformWindow: Extract static method for closestAcceptableGeometry().
On Windows, some messages occur before a QPlatformWindow is actually
created, for example WM_WINDOWPOSCHANGING, which is handled in
QWindowsWindow::handleGeometryChangingMessage().

Extract a static function QPlatformWindow::closestAcceptableGeometry()
from QPlatformWindow::windowClosestAcceptableGeometry() and use
that in QWindowsWindow::handleGeometryChangingMessage().

This fixes a regression crash occurring in Qt 5.6 when running
the example from QTBUG-48201.

Task-number: QTBUG-36220
Task-number: QTBUG-48201
Task-number: QTBUG-46615
Change-Id: I86b8f923447c8e447382427cf5795628ef1c9717
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-09-21 16:41:24 +00:00
Timur Pocheptsov d37643c433 Cocoa integration - make tool window resizable again
Tool window always had NSResizableWindowMask before dd02c1eb38,
and this is broken, the new logic depends on WindowMaximizeButtonHint which is not
set on, for example, un-docked widget. Bring the old behavior back, while not
cancelling dd02c1e - make it resizable unconditionally, as it always was.

Task-number: QTBUG-46882
Change-Id: Ib739a701d85aaadab83230deee808757de6b5e21
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
2015-09-21 13:46:28 +00:00
Kai Koehne 9b9f86985f Fix compilation with QT_NO_[DEBUG|WARNING]_OUTPUT
Change-Id: I4b92ac6b917c9979449b4834764497003d6de087
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-09-21 07:18:42 +00:00
Samuel Nevala f3fd7b3d96 winrt: Move EGL surface to window.
Fixes GPU memory leak when window is created/deleted dynamically and
repeatedly. EGL context used to own EGL surface, but the context
outlives the surface if window is created/deleted dynamically. The
EGL surface is now owned by the window and destroyed with it.

Change-Id: Ib949261ef6e77217018e60aad3e36e4a6d2eaba0
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-09-14 19:20:02 +00:00
Samuel Nevala 6272e88296 winrt: Remove unnecessary assert from window.
Change-Id: I38593c63121e75e5d4a18e715d41c6ce5519e596
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-09-13 22:03:17 +00:00
Samuel Nevala b3b1722d1f winrt: Fix capabilities query.
Windows Runtime port supports non-fullscreen and multiple windows.

Change-Id: I6f4791a7c329ece88e5f6f9910f3635a7bfef3f8
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-09-13 22:03:14 +00:00
Gabriel de Dietrich c12b5e0727 QCocoaMenu: Manually reposition popups
If the popup will show too close to the screen bottom,
we need to help Cocoa a bit. The horizontal positioning
hasn't shown any problems.

Change-Id: I5f298529fbf4a902e39f686f368046a8d1c11760
Task-number: QTBUG-45063
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-09-11 10:39:12 +00:00
Liang Qi a5fb312cd6 Fix QT_NO_ACCESSIBILITY build on OS X
Change-Id: Id8b41787fb9f50296ee9e0ad1f108418565d9325
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-09-11 07:37:06 +00:00
Richard Moe Gustavsen d75505facc iOS: silence compiler warning about unimplemented 'selectionRectsForRange'
Implement a dummy method to silence the compiler.
After testing, this method seems to never be called. Which is
good, since the current IM API in Qt have little to offer to resolve
what is being asked. Until a need arise, we just return
an empty array.

Change-Id: I573eb8205a7e635a46d487ae175fb46e3a602001
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-09-10 12:21:20 +00:00
Tor Arne Vestbø b253f404e8 iOS: Restore mirror mode using [UIScreen mainScreen] instead of nil
The latter had the same effect, but is an invalid assignment for a value
that is documented to be non-nil.

Change-Id: Ice00482138481556ad839bc3721e577dafcb26fe
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-09-09 17:18:32 +00:00
Aleix Pol 8cbaea441a Notify when the primary screen changes
Makes it possible to notify that the QGuiApplication::primaryScreen has
changed.
XCB backend adopts the new API, as it was accessing QGuiApplication private
API directly.

Change-Id: Icde05c44138265f865fa42d2cd6974c552fdc5e2
Task-number: QTBUG-38404
Task-number: QTBUG-40659
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
2015-09-08 08:16:51 +00:00
Samuel Nevala 6313ff8a62 winrt: Fix top level window geometry.
Set screen geometry only for top level window.
For other window types (dialog, popup and etc.) use
their own geometry.

Change-Id: I47e45a9fc6f08587ea284d89d56e419907471572
Task-Id: QTBUG-48089
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-09-07 11:09:07 +00:00
Liang Qi 1a5cc2a868 Cocoa: correct QDesktopWidget::availableGeometry()
Since 10.9, System Preferences->Mission Control->Displays have separate
Spaces settings needs to be followed.

Task-number: QTBUG-47030
Change-Id: I1c1cf326246bd5609090ce5ac3212d963d562593
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2015-09-07 06:14:02 +00:00
Samuel Nevala 296422fc63 winrt: Add support for native pickers for Windows Phone.
Support picking file(s), folder and save file via native component on
Windows Phone.

Task-Id: QTBUG-44833
Change-Id: Ibffc1cf3c133c9fbf9c92e0a4f874c4e197c50ee
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-09-07 06:05:05 +00:00
Kari Pihkala 6413ceeccf Fix default hotspot of a hidpi QCursor
The hotspot is defined in device independent coordinates, so
the default coordinates need to be divided by device pixel ratio.

Also, modify the scaling of cursor's pixmap to use SmoothTransformation to
generate cleaner looking lodpi cursors from hidpi cursors.

Change-Id: Ia938fd1e476e19e796f30712e23b06a5efed9964
Task-number: QTBUG-34116
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2015-09-06 23:19:03 +00:00
Richard Moe Gustavsen feff56827b iOS: filter responder actions from menu sync
Follow up from b494d85. We need to filter the responder
actions after a sync as well, otherwise they will be
added back if a menu item e.g changes text.

Change-Id: I2ecbcc292400ada97a8e29d4b97f087349d8a061
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-09-04 11:35:29 +00:00
Richard Moe Gustavsen d4799d0238 iOS: compose key events from QKeySequences
Instead of hard-coding the key and modifier that should trigger a
shortcut, we read it out from the QKeySequence that corresponds to
a StandardKey instead.

Change-Id: I6325534d3ff91c788d7e660d9009954e437b8534
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-09-04 11:35:20 +00:00
Alexander Soplyakov 6f9e845d9b Make tooltips transparent for mouse events.
This behavior is important because controls (widgets) 
under tooltips don't receive mouse events and don't 
update their state if it is really needed.

[ChangeLog][QtWidgets][Important behavior changes] 
Tooltips on OS X are now transparent for mouse events.

Change-Id: I06403db7b66c87fe53debb033f8a74aa1c93e26a
Task-number: QTBUG-46379
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-09-02 07:20:34 +00:00
Morten Johan Sørvig ba94e26b8b Cocoa: Clean up context creation.
Make the fallback to creating an unshared context
actually work by using correct [initWithFormat: ]
code.

Warn and return early on context creation failure
instead of continuing and crashing.

Change-Id: Ic88f419eaa717436aefc9c1da36c47e0ccb3e956
Task-number: QTBUG-47825
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-02 07:20:04 +00:00
Friedemann Kleint 29af8741b6 Windows: Improve debug output of mime conversion handling.
Introduce convenience function for obtaining the format
name and use that.
Add debug operator for struct FORMATETC including format name.
Replace all code enclosed in #ifdef QMIME_DEBUG by qCDebug().

Task-number: QTBUG-47656
Change-Id: Ibb3c860c57edee4a31e8f5f37e3245feebed52a1
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-09-01 12:06:52 +00:00
Richard Moe Gustavsen 21e1354d42 iOS: handle all directions when calculating positionFromPosition
The method is currently a bit buggy, since it does not take
UITextLayoutDirectionUp and UITextLayoutDirectionDown into account.

This patch is mostly for fixing something "just in case", since
we so far have not seen UIKit calling this method for those
directions unless a hardware keyboard is connected. And in
that case, we anyway override IM navigation by dealing
with the arrow keys explicit.

Since IM in Qt does not support getting the position above
or below the current position, we just return the current
position, making it a no-op.

Change-Id: I4bcb9e2a00ab4e3d785058d7ff7f4855142dabbc
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-09-01 08:58:41 +00:00
Richard Moe Gustavsen b494d859a7 iOS: filter first responder actions from edit menu
UIResponderStandardEditActions found in first responder will be prepended to
the edit menu automatically (or e.g made available as buttons on the virtual
keyboard). So we filter them out to avoid duplicates, and let first responder
handle the actions instead. In case of QIOSTextResponder, edit actions will be
converted to key events that ends up triggering the shortcuts of the filtered
menu items.

Change-Id: I046c6cc5b358d8a6f7623e10579e2dcd92f75139
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-09-01 08:49:41 +00:00