Commit Graph

136 Commits

Author SHA1 Message Date
J-Jamet
59794557b3 fix: PackageInfo compat 2023-06-18 11:00:22 +02:00
J-Jamet
65d7fdbf7e fix: Resolve dependencies and small changes 2023-06-18 10:33:58 +02:00
J-Jamet
d5310e5c58 fix: Deprecated parcelable 2023-06-18 10:08:58 +02:00
J-Jamet
6742a8893c fix: Separate Main credential, remove ContentProvider from Database 2023-05-14 15:33:39 +02:00
J-Jamet
ee1a0a53a6 fix: Better icon builder implementation, add ContextualDatabase 2023-05-14 13:04:49 +02:00
J-Jamet
dfb418c12a fix: better static utils implementation 2023-05-08 20:30:16 +02:00
J-Jamet
ecfe767068 fix: replace error method 2022-12-18 23:46:33 +01:00
J-Jamet
259c8a4bd9 Setting to remember hardware key 2022-05-18 16:39:35 +02:00
J-Jamet
20b352cabe Better code encapsulation 2022-05-11 14:19:32 +02:00
J-Jamet
5a30d9d2b5 * Fix crash in New Android 13 #1321
* Better backstack management for selection mode
2022-05-05 12:45:07 +02:00
J-Jamet
76f9e8ec6e Generate passphrase #218 2022-04-01 19:08:50 +02:00
J-Jamet
48c2115fdf Fix small bugs 2022-03-15 13:17:23 +01:00
J-Jamet
99c2796014 Change icons and remove pro version 2022-03-03 16:50:46 +01:00
J-Jamet
10598ef5e5 Fix education hints #1192 2022-02-18 10:31:24 +01:00
J-Jamet
fec5bdcfc8 Harmonisation of main credential views 2022-02-13 14:59:39 +01:00
J-Jamet
648514d150 Refactor Password in MainCredential 2022-02-13 14:36:45 +01:00
J-Jamet
e347f57d8b Refactor FileHelper and fix key file selection 2021-11-30 10:47:31 +01:00
J-Jamet
e5bb69ea5f Fix startActivityResult for Autofill 2021-11-23 18:28:01 +01:00
Andrew Gunnerson
c0ac01a34a Add workaround to support Samsung DeX
This commit changes the Magikeyboard service behavior so that KeePassDX
is able to run in Samsung DeX mode. Currently, the app cannot run in
DeX mode because apps which have services using `BIND_INPUT_METHOD` are
blocked.

A new broadcast receiver has been added to listen for DeX's enter/leave
events [1] and disable/enable the `Magikeyboard` service appropriately.
The enabled state of a service lives in the Android framework's
`PackageManager` and survives app crashes and device reboots (though it
does get reset when app data is cleared).

Additionally, an extra check is added to `FileDatabaseSelectActivity` to
ensure the service's enabled state is correct. This is necessary if the
app crashes or is force quit within DeX mode and then the user exits DeX
mode. Otherwise, the service would stay disabled until the user entered
and exited DeX again.

With the new behavior, KeePassDX will generally just work with DeX,
though there's one caveat: after the initial installation, the user must
open the app once outside of DeX. Otherwise, Android will not trigger
the broadcast receiver. This could be fixed by making the service
intially disabled in the manifest with `android:enabled="false"`, but
Android's Settings app in SDK 15 through 25 does not correctly refresh
the keyboard list when changing the service from disabled to enabled.
I opted *not* to introduce different behavior based on the API version.

[1] https://developer.samsung.com/sdp/blog/en-us/2017/07/27/samsung-dex-how-to-detect-the-samsung-dex-mode

Fixes: #245
Signed-off-by: Andrew Gunnerson <chillermillerlong@hotmail.com>
2021-09-18 23:30:37 -04:00
J-Jamet
d6a012e85f Fix Permissions #1066 2021-08-30 11:05:08 +02:00
J-Jamet
d841c25bd3 Check URI permissions #626 2021-08-21 16:52:13 +02:00
J-Jamet
5e7a95eac0 Fix loading file database list 2021-08-21 12:50:42 +02:00
J-Jamet
77a1b7918c Check database loaded and not read only 2021-08-20 19:43:39 +02:00
J-Jamet
e1733512c4 Fix show error 2021-08-19 15:04:16 +02:00
J-Jamet
c77537ecee Fix open database when back on password activity 2021-08-19 14:39:27 +02:00
J-Jamet
7593a05953 Better readOnly implementation 2021-08-14 12:37:20 +02:00
J-Jamet
61d52731a5 Change special mode to database mode 2021-08-13 17:37:00 +02:00
J-Jamet
4a8f67093f Refactoring lock timer code 2021-08-11 14:05:00 +02:00
J-Jamet
840a2253e2 First refactoring pass 2021-07-30 18:11:15 +02:00
J-Jamet
b5ba03df4d Pass to encapsulate database instance calling 2021-04-29 12:31:52 +02:00
J-Jamet
de69a78a98 First commit to import and export app properties 2021-04-07 16:13:40 +02:00
J-Jamet
196620e1bd Remove unused methods 2021-04-05 00:04:25 +02:00
J-Jamet
43d6c76873 Refactor open document click listener 2021-04-04 23:44:25 +02:00
J-Jamet
b864c39a0d Fix add database workflow in some devices 2021-04-04 23:13:24 +02:00
J-Jamet
818b975111 Change default type verification to create document 2021-04-04 09:56:09 +02:00
J-Jamet
d5fbc8393f Change file creation methods 2021-04-03 19:40:55 +02:00
J-Jamet
51df8e7bb1 Try to fix rare bug 2021-03-29 12:52:12 +02:00
J-Jamet
a882ba07e9 Fix create database education 2021-03-25 12:42:40 +01:00
J-Jamet
7e3fc0fa59 Fix 'kotlin-android-extensions' Gradle plugin deprecated 2021-03-08 18:22:43 +01:00
J-Jamet
b064bb74cd Better main credential factorization 2021-02-07 14:26:57 +01:00
J-Jamet
843d8e8e77 Refactor Main Credential object 2021-02-07 14:06:44 +01:00
J-Jamet
18e79b99e7 Move notifications package to services 2021-01-26 12:34:12 +01:00
J-Jamet
a49e056f02 Autofill component to select entry with inline response 2021-01-09 14:02:01 +01:00
J-Jamet
6be0457947 Add fragment 2020-12-13 14:18:21 +01:00
J-Jamet
73e7f4669c Remove lifecycle observer import 2020-12-03 15:45:03 +01:00
J-Jamet
c9f7bbbd25 Remove default database parameter when the file is no longer accessible #803 2020-12-03 15:41:13 +01:00
J-Jamet
856d4867b4 Manage OTP links #556 2020-11-10 15:00:42 +01:00
J-Jamet
f0ee5fd946 Fix read only for registration 2020-10-31 14:48:33 +01:00
J-Jamet
c5e9d14199 Fix special modes and add search/save modes 2020-10-27 16:01:40 +01:00
J-Jamet
123e626df6 Fix onValidateSpecialMode() 2020-10-19 16:53:44 +02:00