0.13.0 - 2021-09-23
Changelog
Added
-
Add support for launching scripts from Device Control Menu in power menu on Android
11
. Implemented in #55. (8c034da) -
Use
ShortcutManager
APIs to create pinned shortcut on android version>=8
. This is better way to create shortcuts since launcher does not get access to shortcut data of the app and android itself stores them. It may even solve problems on some launchers, mainly Samsung launcher where randomly all shortcuts get renamed to the app name, considering it will be queuering android for the shortcut names at startup. The only issue with this is that shortcuts may have an app badge on the icon as well, depending on launcher. This is likely a safety mechanism to know which app created the shortcut in case a malicious app creates shortcuts with icons of a different app. This is not controlled bytermux-widget
but the launcher itself, so contact launcher devs for an option to remove them. For android version< 8
, static shortcuts will still be used since pinned shortcuts are not supported. For more info on shortcut types, check https://github.com/agnostic-apollo/TaskerLauncherShortcut#shortcut-types. Related issue #28. (e94d777) -
Provide a way to refresh widget shortcuts list from Termux terminal/scripts with the
com.termux.widget.ACTION_REFRESH_WIDGET
intent. CheckREADME.md
for details. (15b3698) -
Add logging system based on
Logger
class. Log levels can be changed intermux-app
settings. (32f344e) -
Add crash handler so that crash notifications can be shown in
termux-app
at startup. (32f344e) -
Add launcher icon/activity that can optionally be disabled. Related issue #56. (7c7612a)
Changed
-
Remove all hardcoded
com.termux
constants and use the values defined byTermuxConstants
andTermuxPreferenceConstants
intermux-shared
library. (32f344e) -
!Move to semantic versioning for app version and add commit hash and
github
to APK file names. (af8b7c1) -
!Remove
token.xml
SharedPreferences
management and use the one intermux-shared
provided byTermuxWidgetAppSharedPreferences
. This will invalidate all previous user shortcuts and they will have to be created again. This is necessary due to various reasons including design changes added in this commit and for usage of android's internalShortcutManager
APIs to create pinned shortcut added in e94d777. (32f344e) -
!Do not show files as shortcuts that are broken symlinks or their canonical path is not under the
~/.shortcuts
or~/.termux
directory and do not allow execution for the later. (32f344e, 13954b8, bcb0ab6) -
Remove duplicated code and handle sending execution intent in the single function
TermuxWidgetProvider.sendExecutionIntentToTermuxService()
, which will also do proper validation of termux app access and shortcut file. (32f344e) -
Update naming convention of resources. (32f344e)
-
Enable
minifyEnabled
but still keepshrinkResources
and obfuscation disabled for testing reproducible builds and maintaining stacktraces of crashes. (e0c248d)
Fixed
-
Do not use files as icons that are non-regular files, are broken symlinks or their canonical path is not under the
~/.shortcuts/icons
or~/.termux
directory. (9df1ab7, bcb0ab6) -
Attempt to fix shortcuts token not being saved to SharedPreferences file with termux/termux-app@4f66786b. Related issue #16. (da4b437)
Check Installation for more info on termux-widget_<version>+github-debug.apk
files attached.