Skip to content

v0.13.0

Latest
Compare
Choose a tag to compare
@agnostic-apollo agnostic-apollo released this 23 Sep 18:55
· 30 commits to master since this release

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 by termux-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. Check README.md for details. (15b3698)

  • Add logging system based on Logger class. Log levels can be changed in termux-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 by TermuxConstants and TermuxPreferenceConstants in termux-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 in termux-shared provided by TermuxWidgetAppSharedPreferences. 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 internal ShortcutManager 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 keep shrinkResources 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.