Commit graph

443 commits

Author SHA1 Message Date
Matthew Duggan
a1d2d421a4 ANDROID: Fix softkeyboard button for Chromebooks
On a Chromebook, the keyboard may be present but hidden (not available for
use) because the device is flipped around in Tablet mode.  In this case we want
the soft keyboard to be available.  This change also hides the soft keyboard
button if the hardware keyboard is available, since it doesn't do anything.

Fixes #13138.
2021-12-19 13:49:46 +01:00
antoniou79
4c163d99ad ANDROID: Set gui-scale to Large by default 2021-08-14 19:18:54 +03:00
antoniou
2782b1265d ANDROID: Remove set default gui_scale code
This causes a crash, so it needs another approach
2021-08-14 11:22:08 +03:00
antoniou
6ab16e6ea9 ANDROID: Fix build after PR #3264
And set default scale to 0 (very large) for now
2021-08-14 10:39:04 +03:00
Thierry Crozat
abf782c670 COMMON: Remove kFeatureHiDPI from OSystem and use getHiDPIScreenFactor instead 2021-08-13 21:41:33 +01:00
Thierry Crozat
fe377775d6 ANDROID: Implement getHiDPIScreenFactor
This is a placeholder implementation that preserves the current
behaviour (asusmes a scaling of 2). But since the Android API
provides a way to get an accurare device-dependent scaling, this
should probably be used.
2021-08-13 21:41:33 +01:00
antoniou
f900cbecdd ANDROID: Fix reset browser_lastpath via button
Also replace literal "scummvm" with Common::ConfigManager::kApplicationDomain in android options
2021-08-12 15:17:32 +03:00
djsrv
ed41e12fd2 ANDROID: Pass Path to hasFile instead of String
hasFile was changed to take a Path, so converting it to a String and
converting it back didn't make much sense.
2021-08-07 10:44:37 +02:00
djsrv
7eb4841065 ALL: Use Path type in Archive functions 2021-08-07 10:44:37 +02:00
antoniou
dad5179e9d ANDROID: Fix warning unchecked conversion
In CustomKeyboardView for mKeysDownCodesSet ArraySet

Also enable the option -Xlint:unchecked (within build.gradle) to show the unchecked conversion warnings on compile
2021-08-05 13:26:31 +03:00
antoniou
bdb1cc2012 ANDROID: Only show SAF revokation in Options from launcher
But not in per Game domain settings (via Edit Game...)
2021-08-02 23:43:44 +03:00
antoniou
84323fc78e ANDROID: Remove checkbox for Android SAF from global options
Themes rebuilt, and version bumped to SCUMMVM_STX0.8.50
2021-08-02 22:57:37 +03:00
Cameron Cawley
5ecae89722 ANDROID3D: Fix JNI code 2021-08-02 17:28:35 +01:00
antoniou
250206bd00 ANDROID: Add a checkbox for a revoke SAF permissions button
Themes were updated to version SCUMMVM_THEME_VERSION_STR "SCUMMVM_STX0.8.48"
2021-08-01 16:10:54 +03:00
antoniou
4ac31d5481 ANDROID: Use SAF if a directory is not writeable 2021-08-01 16:10:54 +03:00
antoniou
acc14ba30e ANDROID: Release pressed keys upon closing overlay keyboard 2021-07-16 19:49:00 +03:00
Martin Gerhardy
a0c237f7b9 EVENTRECORDER: added new event for OSystem::getTimeAndDate 2021-07-09 19:23:21 +02:00
antoniou79
cffdc106a8 ANDROID: Use 64bit version of AAsset_getLength and AAsset_seek
Complementary to commit 8e55f03b6d
2021-07-09 10:13:50 +03:00
Paul Gilbert
8e55f03b6d ANDROID: Compilation fix for 64-bit stream change 2021-07-08 20:37:51 -07:00
Paul Gilbert
005561d305 COMMON: Increase Stream pos, seek, size from int32 to int64 2021-07-08 18:24:28 -07:00
Matthew Duggan
fc6ab2b3e0 ANDROID: Revert Compilation fix due to Point field changes
This reverts commit e3151e69aa.

The Rect change that needed this change has now been reverted, so revert this
too.
2021-07-07 20:45:52 +09:00
Paul Gilbert
e3151e69aa ANDROID: Compilation fix due to Point field changes 2021-07-04 20:45:15 -07:00
Cameron Cawley
c1702a0953 ANDROID: Add an on-screen menu button 2021-06-19 14:37:35 +02:00
antoniou79
6afae47470 ANDROID: Add support for feature OSystem::kFeatureHiDPI
For testing purposes and feedback mostly

Also set the level for debug to 3, to get messages related to native resolution and scaling from the new hidpi gui scale code
2021-04-12 15:05:34 +03:00
Cameron Cawley
24b59ecb4c Revert "OPENGL: Implement high DPI support on Android (#1895)"
This reverts commit 177d709909.
2021-04-12 00:54:12 +01:00
antoniou
e69e149bd0 ANDROID: Support multiple right click with one finger down
If the user keeps one finger down they can still generate new right click events

Previously in multitouch events, we supported only one right click event starting from one finger down.
The user subsequently had to restart the multitouch mode for another right click; hence lift all fingers
from the surface and start again.
New behavior allows user to generate a new right click while holding one finger down and putting down and lifting a second finger.
I think this is more intuitive and user friendly, although it might require some getting used to, if one was accustomed to the old behavior
2021-03-28 20:59:39 +03:00
Cameron Cawley
cc328d9cfa ANDROID: Remove README.Android 2021-03-15 18:39:39 +02:00
Cameron Cawley
76b25ec1c3 GUI: Add a checkbox to allow overriding the global backend settings 2021-03-15 16:52:52 +02:00
antoniou
987becc529 ANDROID: Fix physical mouse behavior and allow multitouch hold and drag
Also added various comments to document behavior.

Minor JE_MULTI event (Fix concerned bad brackets code in the events.cpp for JE_MULTI (multiple fingers held down)
) fix and comments for mouse behavior
Allow onHover to catch the mouse events instead of OnTrackBallEvent()
Also the "system back" button is ignored for the Trackball too because we treat it as mouse in isMouse(e) check
Add multitouch handler class. Handling and early filtering of multitouch events is moved in the new class.
2021-01-10 22:10:29 +02:00
antoniou
23c066d00e ANDROID: Attempt to fix IllegalArgumentException for chooseEglConfig()
Crash reports mentioning this exception came from Play Store

stacktrace looked like the following:
java.lang.RuntimeException:
		  at org.scummvm.scummvm.ScummVM.run (ScummVM.java:144)
		  at java.lang.Thread.run (Thread.java:919)
		Caused by: java.lang.IllegalArgumentException:
		  at com.google.android.gles_jni.EGLImpl.eglGetConfigAttrib (Native Method)
		  at org.scummvm.scummvm.ScummVM$EglAttribs.<init> (ScummVM.java:339)
		  at org.scummvm.scummvm.ScummVM.chooseEglConfig (ScummVM.java:440)
		  at org.scummvm.scummvm.ScummVM.initEGL (ScummVM.java:180)
		  at org.scummvm.scummvm.ScummVM.run (ScummVM.java:133)
2020-12-01 19:42:01 +02:00
antoniou
60e7ea79d2 ANDROID: Menu key on virtual keyboard is system menu now
Before it was a Media Top Menu key and did nothing
2020-11-26 14:43:50 +02:00
antoniou
8863b5d92f ANDROID: Get current version info from the global gScummVMVersion
...instead of the versionName in build.gradle

Also check for "dirty" version name and in that case do not skip re-copying the asset files
2020-11-25 16:41:47 +02:00
antoniou
411407abf8 ANDROID: Restore check for Alt modifier in key events
And add checks for Meta, Caps, NumLock, Scroll lock modifiers too
2020-11-25 16:41:47 +02:00
Cameron Cawley
01b4432825 BACKENDS: Use Common::U32String for OSystem::setWindowCaption 2020-11-22 17:20:19 +00:00
Cameron Cawley
b246dbdfb6 ANDROID: Add a backend-specific options widget 2020-11-22 16:35:03 +00:00
Vladimir Serbinenko
68a9136e4d
COMMON: Rewrite Encoder and drop dependency on iconv (#2586)
Different platforms have different levels of support of encodings and
often have slight variations. We already have tables for most encoding
with only CJK missing. Full transcoding inclusion allows us to get reliable
encoding results independently of platform. The biggest con is the need for
external tables encoding.dat.

It removes a duplicate table for korean in graphics/korfont.cpp
2020-11-15 16:20:35 +01:00
antoniou
73c2c578ee ANDROID: Added a note comment about scummvm.ini location
Location is directly inside the app's internal storage folder

I am not sure if I did this by mistake, because I think it would be better for it
to be under the subpath ".config/scummvm" which we do create earlier.
However, this *mistake* makes the file easier accessible via the "LAN" feature,
since otherwise the user has to also enable the "show hidden files" option
and navigate specifically to the ".config/scummvm" subpath
to set it as root for the LAN server, in order to see the scummvm.ini.
In the current way, the user simply has to set the internal app folder
as root for the LAN server.
2020-11-13 10:46:41 +02:00
Eugene Sandulenko
5936026209 ALL: Clarify POTFILES, remove redundant common/translations.h includes 2020-11-10 03:03:49 +01:00
antoniou
0de952a59c ANDROID: Raise targetsdk to 29 but make use of requestLegacyExternalStorage
Also some fixes for deprecated warnings
2020-11-07 23:38:03 +02:00
Vladimir Serbinenko
e07fc52767
ANDROID: Merge few files between android and android3d (#2595)
While unfortunately it doesn't help with existing differences it help
to prevent their increase
2020-11-03 14:50:54 +01:00
antoniou
4bda9bf112 ANDROID: Use TextUtils.isEmpty() instead of String's isEmpty() 2020-11-01 19:38:07 +02:00
antoniou
7aa38e197a ANDROID: Callback for onDestroy at ScummVM thread end 2020-11-01 19:38:07 +02:00
antoniou
8fe6aae59e ANDROID: Use SAF for folder and file creation when normal way fails
Should affect only external "secondary" storage (eg. physical SD card)
2020-11-01 19:38:07 +02:00
antoniou
64eb1c0afe ANDROID: A tentative handling of handling joystick control
Basically as a virtual mouse
2020-10-25 02:30:32 +03:00
antoniou
cff369a14b ANDROID: Handle repeating keys for virtual keyboard 2020-10-24 16:04:11 +03:00
Matthew Duggan
e1bff1cbb3 ANDROID: Avoid crash if version no is not int
This can happen during development - shouldn't happen for any official release,
but even if it does let's just assume versions are different and default to
upgrading the config.
2020-10-20 20:41:38 +09:00
antoniou
79acea3a18 ANDROID: use gradle's auto-align and set debuggable to false for release build
There were issues with manually aligning apks possibly due to upgrading gradle

The manual zipalign even though running with no fail message, would NOT align the apk properly anymore.
Command to manual verify alignment of an apk is:
Android/Sdk/tools/bin/zipalign -c -v 4 release/ScummVM-release-unsigned.apk
2020-10-18 13:42:44 +03:00
antoniou
80e32dbbc8 ANDROID: Do not use or show virtual keyboard when physical is connected
The toggle button will still be shown, but it won't show the in-app keyboard when pressed, unless the physical keyboard is disconnected
2020-10-17 22:00:41 +03:00
antoniou
7551d119e2 ANDROID: Fix crash when connecting or disconnecting physical keyboard
And also add some code to load and use the keyCharacterMap of the source device for the event

It is unclear if getUnicodeChar() already does this (loads the keyCharacterMap of the source device.
If it does, then the extra code is redundant.
2020-10-17 21:40:08 +03:00
antoniou
87a76f4a56 ANDROID: Fix shifted keys and key combos 2020-10-17 19:20:58 +03:00