summaryrefslogtreecommitdiffstats
path: root/src/android/jar/src
Commit message (Collapse)AuthorAgeFilesLines
* Android: Reset m_usePrimaryClip when clearing the clip dataAndy Shaw2021-05-281-1/+2
| | | | | | | | | | | The variable needs to be set to false when we clear the clip data as there is no primary clip anymore so we should not try to access it when setting new data. Fixes: QTBUG-93831 Change-Id: I309270dc075fcb0457607561ee23e12f7eb6397f Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 96982bab0c5ff855100c1dcde23d090348be53db)
* Android: fix wrong position of cursor hander in split screenBartlomiej Moskal2021-05-211-4/+8
| | | | | | | | | | | | Use activity window position to fix position of cursor hander. In case without splti sceen, position of activity window is equal (0, 0), so it does not have any effect. Fixes: QTBUG-91362 Change-Id: Icae9f19308112a78bdddf168abe81ffe7b6e4fae Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> (cherry picked from commit 547228bf86281733c09a0638c57a4384c664f66e)
* Android: handle ImEnterKeyType flagBartlomiej Moskal2021-05-212-1/+28
| | | | | | | | | | | | | | | | | Replace KEYCODE_ENTER to KEYCODE_TAB if IME_ACTION_NEXT or IME_ACTION_PREVIOUS flag is set. Before this change any of imKeyEntryType [1] was handled as default return key. After the fix, event is changed to Tab or Backtab (if any of mentioned flag is set) [1] https://doc.qt.io/qt-5/qt.html#EnterKeyType-enum Fixes: QTBUG-61652 Change-Id: Ia27aa308fdae75bc17d1e892d17048c5afa3e2cb Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> (cherry picked from commit e5686b35f07ea54f59e81d04a054bd832bee69b9)
* Android: Fix screen flicker issuesPekka Gehör2021-05-063-9/+35
| | | | | | | | When changing focus between TextInput fields there is a flicker of the QQuickWidget Fixes: QTBUG-66727 Change-Id: I9f31f43dee1bbbf213422978a35e752a8ceff56c Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
* Android: Fix Touch event position depending on SurfaceBartlomiej Moskal2021-04-291-0/+5
| | | | | | | | | | | | | | | | Touch event position is counted from begin of Surface. Later method QAndroidPlatformScreen::topLevelAt(..) is trying to return the top level window at the touch event position. In case when Surface is moved, we should also add this move to event position. If it is not happening, touch event will not be assigned to correct window. Fixes: QTBUG-65927 Change-Id: I549b9ec964cb09607153c60b9d9f6e0068a04cc2 Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> (cherry picked from commit 06b0b2be160e6122d1a80e7c37916512429cd145)
* Android: fix for isSoftwareKeyboard methodBartlomiej Moskal2021-04-222-3/+23
| | | | | | | | | | | | | | | | | | | | | isSoftwareKeyboard() method will rely on visibility flag from activityDelegate. In such case it also need to consider that keyboard is during the hiding. Fix the regression related with commit: e6ca200a3a0aecc2313becf959c1be4fe18bdfa1 Before this change Software Keyboard is not showing after changing the focus. It is happening when Keyboard is already visible and focus is changed to widget that also need the keyboard. In such case keyboard is hiding (and NOT showing again). Fixes: QTBUG-92051 Change-Id: I6a5d07b25442429fda6e715d09ea104432c5ef50 Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> (cherry picked from commit e402e1103b874c0bf91a1bc754752ee73ffadf33) Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Android: Place cursor correctly on screen when editingPiotr Mikolajczyk2021-03-122-5/+27
| | | | | | | | | | | | When editing text the cursor is not placed correctly. So this has been achieved by tricking Android into thinking that the input area is only the line where the cursor is, so it is forced to keep it on screen. Fixes: QTBUG-91073 Change-Id: Icc2e8315deb76ca1a84819d3fdceaa7b027b1174 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> (cherry picked from commit 5c6b10c3cee5737dbc041d0463220898c8120807)
* Android: Fix the input type for date/timeChristian Strømme2021-02-091-1/+1
| | | | | | | | | | The default variation of the DATETIME class is to show the layout for date and time. If either date or time is requested, then only set one of them. Change-Id: I5178f5f80490b7b0d7e7011d11da402a316d164a Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 86e10e1acd34ae4463bb2b0c24b8bdab71c6ade4)
* Android: Fix input method hints for ImhHiddenTextChristian Strømme2021-02-041-15/+9
| | | | | | | | | | | | | | | | | | | | If ImhHiddenText is set then that should take precedence over the other input method hints. Also, certain combinations aren't really possible. E.g., ImhEmailCharactersOnly and ImhHiddenText doesn't have its own specific variation on Android. ImhSensitiveData and ImhNoPredictiveText are also likely to not work as TYPE_TEXT_FLAG_NO_SUGGESTIONS is normally ignored by Android keyboards. A common workaround is to use the visible password variation but since this will force the layout to use latin characters it's not something we can use as an universal workaround, so users will need to manually enable it through the environment variable QT_ANDROID_ENABLE_WORKAROUND_TO_DISABLE_PREDICTIVE_TEXT Fixes: QTBUG-85787 Change-Id: I0ff591ec9acf8dd556c7987e6d997cff3ddfe38e Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 5e95fab53ffa138c1039c71097e77626483c88a8) Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Android: Finish composing text before Key handlingBartlomiej Moskal2021-01-271-0/+11
| | | | | | | | | | | | If the sendKeyEvent was invoked, it means that the button not related with composing text was used. In such case composing text (if it exists) should be immediately finished. Fixes: QTBUG-85715 Change-Id: Ifbca067805b8d20f6a90f95b27210595abed964a Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 0d5b43bed4d75ce4d1f1c5a7b953288f5570350d)
* Android: Fix for accessibility potential crashPiotr Mikolajczyk2021-01-261-0/+2
| | | | | | | | | | When accessibility was not active it was possible to force its update, causing a null pointer exception in java. Change-Id: I60f65612d6e9f712ba3c591ffcc6803f06f09efb Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit fe51137f859948472571ce4c879955eb74c77716) Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* Android: Qml accessibility fixesPiotr Mikolajczyk2020-12-093-5/+78
| | | | | | | | | | | | | | | | | | - Accessibility focus can follow the position of the widget (for example when swiping on a scrollview) - controls are clickable directly after appearing on the screen after scroll (previously you had to click somewhere else on the screen, and after that you could focus the newly appeared control) - checkbox and switch react correctly on click action - fixed combobox behavior with accessibility enabled Task-number: QTBUG-79611 Change-Id: If36914ab0165f33593e68fd7ecf168693f8538a7 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit fd20bc2277f98b86bddbd3f8a0ca92457a8c7c70)
* Android: avoid reflection with ClipData addItemAssam Boudjelthia2020-12-021-22/+5
| | | | | | | | Task-number: QTBUG-81687 Change-Id: If07fff6f371d2c05cb61a1a7695c96219d0260d2 Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io> (cherry picked from commit 27dbb3ee5477dbfed5fa96a688683744e13cc9cb)
* Android: Treat ACTION_CANCEL as TouchPointReleasedBartlomiej Moskal2020-11-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If TouchPointPressed was previously send and there is no TouchPointReleased, we are exposed to uncorrectly handled touches by application. Some Android devices can recognize hand gestures. In some case the gesture may be handled by Android System. In this situation ACTION_CANCEL MotionEvent is delivered ACTION_CANCEL - from Android specification: -"Occurs when the parent takes possession of the motion, for example when the user has dragged enough across a list view that it will start scrolling instead of letting you press the buttons inside of it" -"The current gesture has been aborted. You will not receive any more points in it. You should treat this as an up event, but not perform any action that you normally would" If ACTION_CANCEL appears it means that ACTION_UP will not be delivered to application. That is why ACTION_CANCEL need to be treat as TouchPointReleased event. Fixes: QTBUG-72110 Change-Id: I8f32930cdb424b7530adc87b8334ac48a3bb9d57 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 64d62c53c1e92a1cc07449a0ea3c71501592c1e7) Reviewed-by: Bartlomiej Moskal <bartlomiej.moskal@siili.com>
* Android: Don't use putIfAbsent as that is not available in older APIsAndy Shaw2020-11-111-2/+2
| | | | | | | Fixes: QTBUG-88076 Change-Id: I1ab12c574be036babfd0e4aacb44d1f75c66f4ad Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 2b4a581f34854d9c0bb8d53626d929abd0661bd8)
* Android: replace stacktrace with debug message in search for setActivityAssam Boudjelthia2020-11-021-2/+4
| | | | | | | | | | | | | | Don't print stacktrace when setActivity is not found but only print a debug message, QtActivityDelegate will continue to look for setContext which might actually be a problem if not implemented. Fixes: QTBUG-86733 Change-Id: Iaf7f347ae04605a1f616f24d25cac4938c1640a4 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> (cherry picked from commit 950e628fd842f22ac741b18440fcc99213820587) Reviewed-by: Andy Shaw <andy.shaw@qt.io> (cherry picked from commit 46a12ef0c33893d1864f9a6c8b25b37a5976803b)
* Fix QSaveFile always failing on content: URLsVolker Krause2020-10-261-0/+5
| | | | | | | | | QSaveFile needs QFileInfo::isWritable() to work, which 7e5f38aec667 caused to always return false for content: URLs. (cherry picked from commit d53bbecf4c2565f2e5fd834b20ff90b073a25189) Change-Id: I2c5749a852e8233f80aba99ce2a9b6dddd132d2a Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Android: Pass the parsed URI if it fails to get permission on 23 or lessAndy Shaw2020-09-111-0/+4
| | | | | | | | | | | | In Android API level 23 or lower it will still be able to open the file even if the permissions are not provided. If the system is not going to allow it then it will prevent it later on. So we trust the system to block access if need be. Change-Id: If663e3cf0a10818931577988abdc0fb8ec2650db Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 37f4c6fbc28617fdd3343033c6f926ec2263fce2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use ApplicationInfo to get metaDataMike Achtelik2020-08-281-5/+5
| | | | | | | | | | Since the load*Libraries functions might also be invoked when using an android service, where no activity is present, we can't rely on the activity to get the metaData. Change-Id: I493c68591dbcfbe3063971cfd9ab384df71d03d7 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 6e7b750791eca9f7502d50ca320a48ad6bcca0d9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: Add support for travesing directories and accessing filesAndy Shaw2020-08-071-6/+103
| | | | | | | | | | | | | | | | | | | | This enables QDir and QFileInfo/QFile to work with entries found from a entryList() as it will obtain the permission for these files correctly when it is encountered. Due to what seems to be a quirk in the Android API, we cache whenever we come across a known directory to save time later on for checking if it is a directory. All uris accessed where we get permissions for are cached so we get the right URI for that given content url as some are granted via the Intent. Fixes: QTBUG-85538 Fixes: QTBUG-83041 Fixes: QTBUG-76886 Change-Id: I685b3c60804812a0e4b85fbdbb4ec5efaa09420c Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit ac17e62f6512eed6e5c63263fab0bf3c896761aa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: add missing printStackTrace() in catch statementsAssam Boudjelthia2020-07-143-3/+20
| | | | | | | Change-Id: Id50743113fcdd450932111cfe1a563276f152bb1 Reviewed-by: Andy Shaw <andy.shaw@qt.io> (cherry picked from commit 80f7494e8a9f9a70e3b53833a098d74d8c2331d9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: check for debug mode before fetching extraappparamsAssam Boudjelthia2020-07-081-6/+6
| | | | | | | | | | | | | | | | In pre Qt 5.14, the assets folder used to have the file "--Added-by-androiddeployqt--/debugger.command", that indicate debug mode, however, in Qt 5.14+ the assets are compressed into one file, so this current check is obsolete. Qt Creator uses extraappparams to pass QML debugger args, without it the debugger won't start. Task-number: QTCREATORBUG-24155 Change-Id: Ib3037f4dc8c55af6932d598c6491a046efe13033 Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> (cherry picked from commit eacf83594a5bf063665fdecc6c438673dc9f2cf6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: fix QDesktopServices::openUrl() error for file scheme pathAssam Boudjelthia2020-06-261-3/+5
| | | | | | | | | | | | If the url is a "file:" scheme url don't check for permissions which the file won't have, and then disable StrictMode for API >= 24 to be able to pass the "file:" path to the openUrl intent. Fixes: QTBUG-67877 Change-Id: Ia3fecc24a67069dc76f866455277bf8b929e7697 Reviewed-by: Andy Shaw <andy.shaw@qt.io> (cherry picked from commit 6f837d6f071e646282090c405ecfeb1e30454f42) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: Don't pause when in multi window modeAndy Shaw2020-06-251-1/+2
| | | | | | | | | | | When the application is in multi window mode then when pausing it should not suspend the application as it can still be visible in the background. Change-Id: I03a561459b2aa04c808b7d4220cd3e558671dd17 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit 33c24b9b9d0c6ae1899cec2e01bad9df01ca05f6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: Clear the clipboard when getting a null mimedataAndy Shaw2020-05-301-0/+2
| | | | | | | | | | | From API 28 it is possible to clear the clipboard so we should ensure that this is done if API 28 or later is being used. Otherwise it is not removed, but that is due to limitations on the Android side. Change-Id: I1fe504d0e566c6923b39b2adf4540619c6b1daf7 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> (cherry picked from commit f71a400bf613d725b3bce959757b184593efc920) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Android: fix mimeTypes handling for file dialogAssam Boudjelthia2020-05-051-0/+5
| | | | | | | | | | | | | Since Android native file manager supports mimeTypes, I use QMimeDatabase to get the correct mime type for the nameFilter used with the file dialog. [ChangeLog][Android] Support setting mimetypes and and namefilters for Android native file dialog. Task-number: QTBUG-83089 Change-Id: I46545576dc9b51aa872bb37dbf4fe12b2533bdd9 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* Android: Only check for uri permissions when it is a file or contentAndy Shaw2020-04-141-1/+6
| | | | | | | | | | This amends f36b042e2b66a3ad32980b21e9fafc1bd9b0c7c1 to only check permissions for uris that are going to be local to the device itself. Other uris, such as http, https etc, should go through fine without a check. Change-Id: If05caadb6e0712d9db8f57185ef017d724d9e172 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Android: Add support for getting information about content urisAndy Shaw2020-02-281-0/+57
| | | | | | | | | | | This enables things like size(), exists() to work with Android content uris with the provided uri given from a filedialog. It is expected that it is always a full path due to the nature of content uris, so relative paths will not work. Change-Id: I9c9ea42833677eb9d937b33e9dd42ee2a7d9c7c5 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Android: handle check permissions before any file operationsAssam Boudjelthia2020-02-171-12/+59
| | | | | | | | | This is required because opening a Uri with no permissions can cause crashes. Some exceptions were not handled at all. Change-Id: I2e8f9505879b9fc4c1c47bdfa1bf173b39ada3ea Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Handle exceptions when accessing android clipboardMike Achtelik2020-01-311-50/+78
| | | | | | | | | In some circumstances android throws an exception or returns null, when trying to access the clipboard. Fixes: QTBUG-80689 Change-Id: I92c134e2a002fc648ff966e15a19eb3307c428a1 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Android: rework assets supportBogDan Vatra2019-10-021-0/+19
| | | | | | | The new version fix QDirIterators and it lists all the files and dirs. Change-Id: I5a30eedb61ab2397a84365d00f308cda0c194de2 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* [androidcontentfileengine] Catch SecurityException during file openingNicolas Fella2019-07-051-0/+3
| | | | | | | | | resolver.openFileDescriptor throws a SecurityException when the caller doesn't have sufficient permissions to access the URL. This will make an application crash. We should handle this case gracefully and report it to the user. I'm unsure if there is a better way to do this than simply logging the exception. Change-Id: I36bfbd3e398c8176e57042a27740aa15bce63a7c Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-05-121-1/+4
|\ | | | | | | Change-Id: I0c00ffe0eabebc919f22d6faa4bf958b288e8fd9
| * Android: Fix wrong height of text editor context menu in some localesVova Mshanetskiy2019-05-101-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Combined width of all four buttons (cut, copy, paste, select all) is greater than width of the screen in some locales and/or on some devices. This was causing width of the last button to be set to zero and height of the whole popup to grow too much due to word wrapping in the last button. The context menu used to look something like this then: Cut Copy Paste S e l e c t a l l This commit disables word wrapping and enables text ellipsizing for button labels. This fixes height of the popup. In the long term though Qt will probably have to implement an overflow button like in Android's built context menu. The linked bug report contains before and after screenshots. Fixes: QTBUG-72933 Change-Id: I8e270dbf8ca66f99748cdc531a77e11a5ab11c2b Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Liang Qi2019-05-023-21/+35
|\| | | | | | | | | | | | | Conflicts: src/corelib/kernel/qobject.cpp Change-Id: I8ca1163a1fa8072dcd16ea4426c58219149599fd
| * Android: Fix positioning of text editor context menuVova Mshanetskiy2019-05-012-18/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The old code in QtActivityDelegate.updateHandles() and EditPopupMenu.setPosition() could use size of EditPopupMenu.m_view to calculate position of context menu before that size was calculated during an asynchronous layout pass. In particular m_view reports size 0x0 when context menu is opened for the first time after start of the application. In this case the context menu was displayed on top of the text editor instead of being displayed above it. This patch fixes that problem by moving all positioning code from QtActivityDelegate.updateHandles() to EditPopupMenu.setPosition() and adding an OnLayoutChangeListener which calls setPosition() again each time the size of m_view changes, including when it changes for the first time from 0x0 to a real value. Change-Id: I670fef811a4dcba5524f7520ea41a47978dd10f1 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * Android: Fix positioning of selection handles in text editorsVova Mshanetskiy2019-05-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The old code used size of m_cursorView to calculate position of the cursor handle popup. But since on Android layout process is asynchronous, both width and height of m_cursorView was 0 upon first call to setPosition(). This resulted in selection handles being initially displayed at a wrong position for a fraction of second and then quickly moving to the correct position. In some cases handles stayed at the wrong position until touched by user. This patch replaces use of m_cursorView's size with use of m_popup's size. Width and height of m_popup may be used immediately because they are explicitly assigned in initOverlay(). The size of m_popup should be always equal to the would-be size of m_cursorView because of how it is calculated. Change-Id: I9868c9a5ce0103d8328b2478cf82feaceba7f404 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-03-211-3/+10
|\| | | | | | | Change-Id: Ie7f68dcd5650e0037b6c3313cc9ffdcd7c494fbe
| * Android: Support for separate landscape/portrait splash screensEskil Abrahamsen Blomfeldt2019-03-201-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To get appropriate aspect ratios for the splash screen, you usually need separate drawables for the portrait and landscape versions. We support this by adding two new meta data entries that can be used. If they are not available, we will fall back to the generic one, so we are still compatible with existing AndroidManifest.xmls. [ChangeLog][Android] Added entries in the AndroidManifest.xml for specific portrait and landscape splash screens. If one is present for the current orientation, it will be preferred over the generic one. Task-number: QTBUG-74029 Change-Id: I5ffea56320aef85f62f21a59df4d077b4163a65a Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | Android: Use DisplayListener to detect rotationVal Doroshchuk2019-03-061-7/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | Since Activity's onConfigurationChanged is not called when rotating from landscape to landscape (through 180 degrees), added display listener to detect the rotation. DisplayManager.DisplayListener.onDisplayChanged() is called exactly when Display.getRotation() value is changed. Task-number: QTBUG-56919 Change-Id: Iabf376adf0a0756dddacaece62e5a2ac604ea947 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-03-021-1/+3
|\| | | | | | | Change-Id: I83f6ed9480bf21020ce7a9431010d87a88df84a1
| * Android: Show correct keyboard when using Gboard and Japanese layoutAndy Shaw2019-02-281-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 71a63836ed5d21feacbfcdbfdbd4b405f635282f a workaround for Samsung devices using ImhNoPredictiveText was included as there is a bug on those devices. However this causes a problem with other keyboards such as Gboard when using languages such as Japanese, as it would not show the right keyboard at all and only showed a qwerty one in those cases. Therefore we default to not working around the issue as it is more of a problem to not allow certain keyboard layouts as opposed to having predictive text even if it is turned off. For those who want to disable predictive text and as such have the consequences of not showing some keyboard layouts, they can set the QT_ANDROID_ENABLE_WORKAROUND_TO_DISABLE_PREDICTIVE_TEXT environment variable. [ChangeLog][Platform Specific Changes][Android] Text fields with ImhNoPredictiveText set are no longer working around keyboards that disregard this setting. To enforce the workaround then the environment variable - QT_ANDROID_ENABLE_WORKAROUND_TO_DISABLE_PREDICTIVE_TEXT should be set. Change-Id: I9ace7ba96ebad68987b53783e25067b66c002f25 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-02-213-45/+51
|\| | | | | | | Change-Id: I830beea26863323ab78a5d4b093f7763d77ad3da
| * Load main library as soon as possibleBogDan Vatra2019-02-193-45/+51
| | | | | | | | | | | | | | | | | | Delaying the main library load cause serious problems for people who want to access it's functions from java before the main method is called. Change-Id: I87f3a8282003395e003b06978048762eeabe6548 Fixes: QTBUG-68813 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | Add file engine for Android content URLsVolker Krause2019-02-131-0/+13
| | | | | | | | | | | | | | | | | | | | | | The "file dialog" on Android returns such URLs, which so far required special-casing this in application code. With this change QFile can consume those URLs directly. Change-Id: I489c0db112cf1dc7497e7a90f0e9a79ea8fa5237 Reviewed-by: Nicolas Fella <nicolas.fella@kdab.com> Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
* | Android: Set minimum supported version to android-21Eskil Abrahamsen Blomfeldt2019-01-232-41/+17
|/ | | | | | | | | | | | | | | | | | With the current distribution, this is 90% of active devices, and it was released in 2014. Qt 5.12 is LTS and will continue to support older Android versions for a long time to come. This is to reduce the testing needed on outdated platforms and allow ourselves to use some newer APIs unconditionally in Qt. Android 21 was chosen because it is the minimum version that supports 64 bit builds. [ChangeLog][Android] Increased the minimum supported Android version to Android 5.0 (API level 21). Fixes: QTBUG-70508 Change-Id: Ia7b4345e42ca05a25a292f11ccbb8cbd692cf8f0 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Android: fix NPE on m_editPopupMenuVyacheslav Koscheev2019-01-171-2/+4
| | | | | Change-Id: Id6d4aea91d621194cf85f604b1b9acdc916bede1 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Android: Add support for setting/getting html and uris from clipboardAndy Shaw2018-12-211-10/+121
| | | | | | | | | | | | | This also updates the used API to use ClipData and not the deprecated ClipboardManager API. [ChangeLog][Platform Specific Changes][Android] QClipboard now supports HTML and URI data. Fixes: QTBUG-47835 Fixes: QTBUG-71503 Change-Id: I43f82bfc63b3d159087c0fb6c840c186a370e20c Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Merge remote-tracking branch 'origin/5.12.0' into 5.12Qt Forward Merge Bot2018-12-051-0/+7
|\ | | | | | | Change-Id: I54b4c14bed5150d3034ac87907a09254fd78face
| * [Android] Fix the ability to override environment and argumentsv5.12.0BogDan Vatra2018-12-031-0/+7
| | | | | | | | | | | | | | | | | | | | This mechanism should only be enabled only for debug deployments, but the check was removed by accident in ca139228abdd522a76b2750aed607440568eb7f3. Fixes: QTBUG-72230 Fixes: QTBUG-72132 Change-Id: I3378436e93314fdf254919aed066f1284a4581b3 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>