agnostic-apollo
c1a0d6deff
Changed: Rename ActivityUtilsErrno to ActivityErrno
2022-01-23 01:40:22 +05:00
agnostic-apollo
3f84b5345f
Changed: Make ExtraKeysView private functions public and variables protected
2022-01-23 01:40:22 +05:00
agnostic-apollo
006bfeac8d
Fixed: Fix termux background command logging at verbose level if CUSTOM_LOG_LEVEL was not passed
2022-01-23 01:40:22 +05:00
agnostic-apollo
b79ed509f1
Changed: Store app wide night mode in NightMode.APP_NIGHT_MODE so that libraries can use it directly without having to load or get it from termux properties
2022-01-23 01:40:22 +05:00
agnostic-apollo
1b794b3518
Fixed: Do not use colon character ":" in log tag since it is invalid and breaks logcat command filterspecs argument
2022-01-23 01:40:22 +05:00
agnostic-apollo
36e49707ec
Added: Add support to request Settings.ACTION* permissions to be requested via Service context
2022-01-23 01:40:22 +05:00
agnostic-apollo
f857bf2968
Added: Add ActivityUtils.startActivity() and catch uncaught exceptions in TermuxActivity
2022-01-23 01:40:22 +05:00
agnostic-apollo
b69d14119e
Changed: Return Error instead of boolean for ActivityUtils.startActivityForResult()
2022-01-23 01:40:22 +05:00
agnostic-apollo
8c43b7f0a1
Changed: Remove TermuxConstants reference from PackageUtils
2022-01-23 01:40:22 +05:00
agnostic-apollo
6ff5572999
Changed!: Remove TermuxConstants reference from Logger and set DEFAULT_LOG_TAG at application startup
...
Plugin apps must do the same
2022-01-23 01:40:22 +05:00
agnostic-apollo
8e506859a6
Changed!: Rename TermuxTask to AppShell since its not part of termux-app or com.termux.shared.termux package
2022-01-23 01:40:22 +05:00
agnostic-apollo
361bfb3961
Changed!: Move to package-by-feature hierarchy for classes not using it since termux-shared is growing too big and layers are getting out of hand
2022-01-23 01:40:22 +05:00
agnostic-apollo
549a772d45
Added: Add UriScheme and move UriUtils to com.termux.shared.net package
2022-01-23 01:40:22 +05:00
agnostic-apollo
37b9bcf5af
Changed!: Rename FileUtils readStringFromFile() to readTextFromFile() and writeStringToFile() to writeTextToFile()
2022-01-23 01:40:22 +05:00
agnostic-apollo
7bbc12c7c9
Fixed: Get file basename from Uri path when opening files in termux if failed to get it ContentResolver and EXTRA_TITLE
2022-01-23 01:40:22 +05:00
agnostic-apollo
3e518a6a75
Fixed: Fix termux-open failing to open files with "#" and remove hardcoded "content" and "file" strings
...
termux-open "/data/data/com.termux/files/home/te#st.sh"
2022-01-23 01:40:22 +05:00
agnostic-apollo
d96883c4d6
Changed|Deprecated: Deprecate use-black-ui
termux property and replace it with night-mode
...
This will not break existing `use-black-ui` settings for users and it will automatically be converted to `night-mode` when properties are loaded from disk but a deprecation message will be logged.
This `night-mode` key can be used to set the day/night theme variant for activities used by termux app and its plugin. The user can set a string value to `true` to force use dark variant of theme, `false` to force use light variant of theme or `system` to automatically set theme based on current system settings. The default value is still `system`. The app must be restarted for changes to take effect for existing activities, including main terminal `TermuxActivity`.
This is required since "theme != night mode". In future custom theme or color support may be provided that will have both dark and night modes for the same theme.
2022-01-23 01:40:22 +05:00
agnostic-apollo
28ecb64992
Changed: Automatically use default properties file and client for TermuxSharedProperties.getTermuxInternalPropertyValue()
2022-01-23 01:40:22 +05:00
agnostic-apollo
5d64f1225c
Added: Add support in SharedProperties to modify properties loaded from disk before they are mapped to internal values
2022-01-23 01:40:22 +05:00
agnostic-apollo
aed4b96a31
Added: Add FileUtils.regularOrDirectoryFileExists()
2022-01-23 01:40:22 +05:00
agnostic-apollo
5b2aca9cf7
Changed: Fix minor typos in FileUtils and FileUtilsErrno
2022-01-23 01:40:22 +05:00
agnostic-apollo
93d738ae63
Fixed: Remove all trailing slashes when normalizing path
2022-01-23 01:40:22 +05:00
agnostic-apollo
f7ebcae7b3
Added: Add functions to get dirname and basename in FileUtils
2022-01-23 01:40:22 +05:00
agnostic-apollo
63c106c746
Added: Add Error.logErrorAndShowToast() and provide non-static logging functions to be used when Error may not be null
2022-01-23 01:40:22 +05:00
agnostic-apollo
2c0e9c6c5c
Added: Add Logger.logInfoAndShowToast() and log messages even if not showing toast due to null Context
2022-01-23 01:40:22 +05:00
agnostic-apollo
9eeb2babd7
Added: Add support for MANAGE_EXTERNAL_STORAGE when targeting targetSdkVersion 30
...
Termux will now automatically request legacy `WRITE_EXTERNAL_STORAGE` or `MANAGE_EXTERNAL_STORAGE` permissions if targeting targetSdkVersion `30` (android `11`) and running on sdk `30` (android `11`) and higher when `termux-setup-storage` is run.
Functions have been added to `PermissionUtils` to automatically check and request either permission depending on app `targetSdkVersion` and android version. Functions have been added to `PackagUtils` to get `requestLegacyExternalStorage` value from app manifest if added. If legacy storage is possible, then it must be set to `true`. Check `PermissionUtils.checkAndRequestLegacyOrManageExternalStoragePermission()`, `PermissionUtils.isLegacyExternalStoragePossible()` and `PermissionUtils.checkIfHasRequestedLegacyExternalStorage()` for details.
2022-01-23 01:40:22 +05:00
agnostic-apollo
32dd7eab03
Changed|Fixed: Add java docs to PermissionUtils and fix permission checking
...
ContextCompat.checkSelfPermission() may return true for permissions not even requested so it now checked if permissions are even requested in app manifest before checking if they are granted and before asking for permission to be granted.
Also some general improvements in code quality, including using ActivityUtils to request non-standard permissions and added support for AppCompatActivity instances to request permissions in addition to Activity instances.
2022-01-23 01:40:22 +05:00
agnostic-apollo
50a97b1977
Added: Add ReflectionUtils and add dependency for org.lsposed.hiddenapibypass:hiddenapibypass
...
The call to bypassHiddenAPIReflectionRestrictions() must be made before trying to reflect hidden or non-sdk APIs.
Reflection will be used for accessing hidden (@hide) APIs by Termux and its plugins later.
https://github.com/LSPosed/AndroidHiddenApiBypass
https://developer.android.com/guide/app-compatibility/restrictions-non-sdk-interfaces
2022-01-23 01:40:22 +05:00
agnostic-apollo
f4a997b7dd
Added: Add ActivityUtils with functions to start activities for result
2022-01-23 01:40:22 +05:00
agnostic-apollo
3c202928b4
Changed: Fix typos is PackageUtils
2022-01-23 01:40:22 +05:00
agnostic-apollo
aca0000ee6
Update LICENSE.md as per 5252fbbe
2022-01-23 01:40:21 +05:00
agnostic-apollo
5252fbbe11
Changed!: Move Termux specific classes to com.termux.shared.termux package
...
This will allow segregation of Termux utils/classes from general ones and also allow easier management of GPLv3 License for Termux classes
2022-01-23 01:36:41 +05:00
agnostic-apollo
304aed3063
Added: Add UrlUtils
2022-01-23 01:36:41 +05:00
agnostic-apollo
cbac7c8fbd
Changed: Get user handle for package instead of process user handle when getting profile user serial number
2022-01-23 01:36:41 +05:00
agnostic-apollo
65252dc640
Changed: Use cached PackageInfo while getting version code and name for app
2022-01-23 01:36:41 +05:00
agnostic-apollo
2c6d009657
Added: Add uid to app info
2022-01-23 01:36:41 +05:00
agnostic-apollo
a987246bd8
Added: Add comment for why clearing of $TMPDIR may be skipped on termux exit
2022-01-23 01:36:41 +05:00
agnostic-apollo
059feaacf1
Changed: Move UrlUtils to TermuxUrlUtils
2022-01-23 01:36:41 +05:00
agnostic-apollo
fa91205bca
Changed!: Move ReportInfo parameters from constructor to functions
2022-01-23 01:36:41 +05:00
agnostic-apollo
fd4159f1ba
Added: Add generic function TermuxUtils to get app info for termux app, its installed plugin apps and external apps
2022-01-23 01:36:41 +05:00
agnostic-apollo
1327cef7b4
Added: Add support for getting external app info
...
PackageUtils were previously based on using `Context` object to get app info, which was only possible to get for Termux app and its sharedUserId plugins. Now it has been refactored to used `PackageInfo` and `ApplicationInfo` objects to get the info, which will also allow getting info of external apps. However, when targeting sdk `30`, queries entries or `QUERY_ALL_PACKAGES` permission will be required. Check `PackageUtils.isAppInstalled()` for more info.
2022-01-23 01:36:41 +05:00
agnostic-apollo
0da1984b59
Changed: Do not show toast if text null or empty
2022-01-23 01:36:41 +05:00
agnostic-apollo
09412da9d7
Fixed: Fix NullPointerException when getting spanned markdown like for notification
2022-01-23 01:36:41 +05:00
agnostic-apollo
009c128052
Changed: Move termux apps properties file list to TermuxConstants and do not follow symlinks
2022-01-23 01:36:41 +05:00
Henrik Grimler
6e6da752bd
Fixed: Fix copy&paste error in areHardwareKeyboardShortcutsDisabled
...
Fixes 829cc39868
("Allow users to disable hardware keyboard
shortcuts").
Reported-by: @amogusissofunnyhahalmaogenzhumorbelike
2022-01-23 01:36:41 +05:00
agnostic-apollo
f3ffc36bfd
Added: Add TermuxFileUtils.getExpandedTermuxPaths() and TermuxFileUtils.getUnExpandedTermuxPaths()
2021-09-23 21:40:37 +05:00
agnostic-apollo
1f0f80b0c9
Added: Add FileUtils.isPathInDirPaths()
2021-09-23 21:39:51 +05:00
agnostic-apollo
5e2bec0f4c
Added: Add constants for launcher activities of termux plugins
2021-09-23 16:51:08 +05:00
agnostic-apollo
075a080f00
Added: Add functions to PackageUtils to check/modify app Component states
...
These can be used by Termux app and its plugin to disable launcher icons/activities if they are enabled at install time
2021-09-23 16:46:59 +05:00
agnostic-apollo
4f66786b98
Changed: Store termux-widget token synchronously to the SharedPreferences file on creation
...
Attempt to solve termux/termux-widget#16
2021-09-23 04:58:14 +05:00