From dde2da6989fa2143de20b76dccf90eeb1a2dcf95 Mon Sep 17 00:00:00 2001 From: lunaticbum <> Date: Mon, 12 Aug 2024 17:02:52 +0900 Subject: [PATCH] .. --- .gitignore | 78 ++ LICENSE | 674 +++++++++++++++ app/.gitignore | 1 + app/build.gradle.kts | 73 ++ app/proguard-rules.pro | 21 + app/src/main/AndroidManifest.xml | 108 +++ .../rasel/lunar/launcher/LauncherActivity.kt | 224 +++++ .../rasel/lunar/launcher/LunarLauncher.kt | 33 + .../lunar/launcher/apps/AlphabetScrollbar.kt | 118 +++ .../rasel/lunar/launcher/apps/AppDrawer.kt | 335 ++++++++ .../rasel/lunar/launcher/apps/AppMenu.kt | 431 ++++++++++ .../rasel/lunar/launcher/apps/AppsAdapter.kt | 159 ++++ .../lunar/launcher/apps/IconPackManager.kt | 181 ++++ .../lunar/launcher/apps/SimpleGesture.kt | 705 ++++++++++++++++ .../rasel/lunar/launcher/feeds/Feeds.kt | 356 ++++++++ .../rasel/lunar/launcher/feeds/SystemStats.kt | 297 +++++++ .../rasel/lunar/launcher/feeds/WidgetHost.kt | 35 + .../lunar/launcher/feeds/WidgetHostView.kt | 92 +++ .../rasel/lunar/launcher/feeds/rss/RSS.kt | 25 + .../lunar/launcher/feeds/rss/RssAdapter.kt | 85 ++ .../lunar/launcher/feeds/rss/RssParser.kt | 98 +++ .../lunar/launcher/feeds/rss/RssService.kt | 72 ++ .../lunar/launcher/helpers/AdminReceiver.kt | 43 + .../lunar/launcher/helpers/ColorPicker.kt | 100 +++ .../rasel/lunar/launcher/helpers/Constants.kt | 110 +++ .../lunar/launcher/helpers/LockService.kt | 56 ++ .../launcher/helpers/SwipeTouchListener.kt | 101 +++ .../rasel/lunar/launcher/helpers/UniUtils.kt | 270 ++++++ .../launcher/helpers/ViewPagerAdapter.kt | 34 + .../lunar/launcher/home/BatteryReceiver.kt | 67 ++ .../rasel/lunar/launcher/home/LauncherHome.kt | 406 +++++++++ .../lunar/launcher/home/weather/JsonParser.kt | 52 ++ .../lunar/launcher/home/weather/Weather.kt | 28 + .../launcher/home/weather/WeatherClient.kt | 63 ++ .../launcher/home/weather/WeatherExecutor.kt | 83 ++ .../lunar/launcher/qaccess/QuickAccess.kt | 384 +++++++++ .../launcher/settings/SettingsActivity.kt | 148 ++++ .../lunar/launcher/settings/childs/Advance.kt | 72 ++ .../launcher/settings/childs/Appearances.kt | 204 +++++ .../lunar/launcher/settings/childs/Apps.kt | 319 +++++++ .../lunar/launcher/settings/childs/Misc.kt | 120 +++ .../launcher/settings/childs/TimeDate.kt | 79 ++ .../launcher/settings/childs/TodoSettings.kt | 70 ++ .../settings/childs/WeatherSettings.kt | 91 ++ .../lunar/launcher/todos/DatabaseHandler.kt | 107 +++ .../kotlin/rasel/lunar/launcher/todos/Todo.kt | 25 + .../rasel/lunar/launcher/todos/TodoAdapter.kt | 127 +++ .../rasel/lunar/launcher/todos/TodoManager.kt | 129 +++ .../kotlin/rasel/lunar/launcher/utils/BLog.kt | 56 ++ .../lunar/launcher/utils/SimpleGesture.kt | 781 ++++++++++++++++++ app/src/main/res/anim/rotate_clockwise.xml | 11 + app/src/main/res/drawable/apps_bg.xml | 26 + app/src/main/res/drawable/ic_activity.xml | 8 + app/src/main/res/drawable/ic_add.xml | 8 + app/src/main/res/drawable/ic_alarm.xml | 10 + app/src/main/res/drawable/ic_brightness.xml | 8 + app/src/main/res/drawable/ic_close.xml | 8 + app/src/main/res/drawable/ic_contact.xml | 10 + app/src/main/res/drawable/ic_delete.xml | 8 + app/src/main/res/drawable/ic_down.xml | 8 + app/src/main/res/drawable/ic_info.xml | 10 + app/src/main/res/drawable/ic_info2.xml | 10 + .../res/drawable/ic_launcher_background.xml | 13 + .../res/drawable/ic_launcher_foreground.xml | 19 + app/src/main/res/drawable/ic_link.xml | 8 + app/src/main/res/drawable/ic_media.xml | 8 + app/src/main/res/drawable/ic_notification.xml | 8 + app/src/main/res/drawable/ic_pip.xml | 8 + app/src/main/res/drawable/ic_refresh.xml | 8 + app/src/main/res/drawable/ic_ring.xml | 10 + app/src/main/res/drawable/ic_search.xml | 8 + app/src/main/res/drawable/ic_share.xml | 10 + app/src/main/res/drawable/ic_store.xml | 8 + app/src/main/res/drawable/ic_up.xml | 8 + app/src/main/res/drawable/ic_voice.xml | 10 + app/src/main/res/drawable/rounded_bg.xml | 22 + app/src/main/res/drawable/rounded_bg_top.xml | 6 + app/src/main/res/drawable/splash_icon.xml | 51 ++ app/src/main/res/layout/about.xml | 83 ++ .../res/layout/activity_browser_dialog.xml | 26 + app/src/main/res/layout/app_drawer.xml | 96 +++ app/src/main/res/layout/app_info_dialog.xml | 37 + app/src/main/res/layout/app_menu.xml | 152 ++++ app/src/main/res/layout/apps_child.xml | 30 + app/src/main/res/layout/child_sys_info.xml | 30 + app/src/main/res/layout/color_picker.xml | 75 ++ app/src/main/res/layout/feeds.xml | 60 ++ app/src/main/res/layout/feeds_rss.xml | 53 ++ app/src/main/res/layout/feeds_sys_infos.xml | 99 +++ app/src/main/res/layout/launcher_activity.xml | 16 + app/src/main/res/layout/launcher_home.xml | 88 ++ app/src/main/res/layout/list_item.xml | 17 + app/src/main/res/layout/quick_access.xml | 186 +++++ app/src/main/res/layout/settings_activity.xml | 134 +++ app/src/main/res/layout/settings_advance.xml | 35 + .../main/res/layout/settings_appearances.xml | 111 +++ app/src/main/res/layout/settings_apps.xml | 261 ++++++ app/src/main/res/layout/settings_misc.xml | 154 ++++ .../main/res/layout/settings_time_date.xml | 67 ++ app/src/main/res/layout/settings_todo.xml | 64 ++ app/src/main/res/layout/settings_weather.xml | 118 +++ app/src/main/res/layout/shortcut_maker.xml | 92 +++ app/src/main/res/layout/todo_dialog.xml | 59 ++ app/src/main/res/layout/todo_manager.xml | 53 ++ app/src/main/res/menu/add_widget.xml | 6 + app/src/main/res/menu/widget_menu.xml | 18 + .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + app/src/main/res/values-bn-rBD/strings.xml | 2 + app/src/main/res/values-de/strings.xml | 148 ++++ app/src/main/res/values-es/strings.xml | 142 ++++ app/src/main/res/values-fr/strings.xml | 148 ++++ app/src/main/res/values-ia/strings.xml | 118 +++ app/src/main/res/values-it/strings.xml | 147 ++++ app/src/main/res/values-ja/strings.xml | 58 ++ app/src/main/res/values-ml/strings.xml | 5 + app/src/main/res/values-nb-rNO/strings.xml | 44 + app/src/main/res/values-night/colors.xml | 7 + app/src/main/res/values-night/themes.xml | 15 + app/src/main/res/values-pt-rBR/strings.xml | 5 + app/src/main/res/values-pt/strings.xml | 135 +++ app/src/main/res/values-tr/strings.xml | 137 +++ app/src/main/res/values/colors.xml | 10 + app/src/main/res/values/dimens.xml | 23 + app/src/main/res/values/strings.xml | 169 ++++ app/src/main/res/values/styles.xml | 24 + app/src/main/res/values/themes.xml | 17 + app/src/main/res/xml/device_admin.xml | 6 + app/src/main/res/xml/file_paths.xml | 3 + app/src/main/res/xml/lock_service.xml | 7 + build.gradle.kts | 18 + .../metadata/android/en-US/changelogs/36.txt | 3 + .../metadata/android/en-US/changelogs/37.txt | 1 + .../metadata/android/en-US/changelogs/38.txt | 3 + .../android/en-US/full_description.txt | 19 + .../android/en-US/images/featureGraphic.png | Bin 0 -> 20755 bytes .../metadata/android/en-US/images/icon.png | Bin 0 -> 11930 bytes .../en-US/images/phoneScreenshots/1.png | Bin 0 -> 75422 bytes .../en-US/images/phoneScreenshots/2.png | Bin 0 -> 132219 bytes .../en-US/images/phoneScreenshots/3.png | Bin 0 -> 98965 bytes .../en-US/images/phoneScreenshots/4.png | Bin 0 -> 151956 bytes .../en-US/images/phoneScreenshots/5.png | Bin 0 -> 55152 bytes .../en-US/images/phoneScreenshots/6.png | Bin 0 -> 150091 bytes .../en-US/images/phoneScreenshots/7.png | Bin 0 -> 99259 bytes .../en-US/images/phoneScreenshots/8.png | Bin 0 -> 158411 bytes .../android/en-US/short_description.txt | 1 + fastlane/metadata/android/en-US/title.txt | 1 + gradle.properties | 26 + ic_launcher_512.png | Bin 0 -> 9136 bytes settings.gradle.kts | 20 + 149 files changed, 12343 insertions(+) create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 app/.gitignore create mode 100644 app/build.gradle.kts create mode 100644 app/proguard-rules.pro create mode 100644 app/src/main/AndroidManifest.xml create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/LauncherActivity.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/LunarLauncher.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/apps/AlphabetScrollbar.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/apps/AppDrawer.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/apps/AppMenu.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/apps/AppsAdapter.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/apps/IconPackManager.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/apps/SimpleGesture.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/feeds/Feeds.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/feeds/SystemStats.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/feeds/WidgetHost.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/feeds/WidgetHostView.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RSS.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssAdapter.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssParser.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssService.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/helpers/AdminReceiver.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/helpers/ColorPicker.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/helpers/Constants.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/helpers/LockService.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/helpers/SwipeTouchListener.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/helpers/UniUtils.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/helpers/ViewPagerAdapter.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/home/BatteryReceiver.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/home/LauncherHome.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/home/weather/JsonParser.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/home/weather/Weather.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/home/weather/WeatherClient.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/home/weather/WeatherExecutor.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/qaccess/QuickAccess.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/settings/SettingsActivity.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Advance.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Appearances.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Apps.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Misc.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/settings/childs/TimeDate.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/settings/childs/TodoSettings.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/settings/childs/WeatherSettings.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/todos/DatabaseHandler.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/todos/Todo.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/todos/TodoAdapter.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/todos/TodoManager.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/utils/BLog.kt create mode 100644 app/src/main/kotlin/rasel/lunar/launcher/utils/SimpleGesture.kt create mode 100644 app/src/main/res/anim/rotate_clockwise.xml create mode 100644 app/src/main/res/drawable/apps_bg.xml create mode 100644 app/src/main/res/drawable/ic_activity.xml create mode 100644 app/src/main/res/drawable/ic_add.xml create mode 100644 app/src/main/res/drawable/ic_alarm.xml create mode 100644 app/src/main/res/drawable/ic_brightness.xml create mode 100644 app/src/main/res/drawable/ic_close.xml create mode 100644 app/src/main/res/drawable/ic_contact.xml create mode 100644 app/src/main/res/drawable/ic_delete.xml create mode 100644 app/src/main/res/drawable/ic_down.xml create mode 100644 app/src/main/res/drawable/ic_info.xml create mode 100644 app/src/main/res/drawable/ic_info2.xml create mode 100644 app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100644 app/src/main/res/drawable/ic_link.xml create mode 100644 app/src/main/res/drawable/ic_media.xml create mode 100644 app/src/main/res/drawable/ic_notification.xml create mode 100644 app/src/main/res/drawable/ic_pip.xml create mode 100644 app/src/main/res/drawable/ic_refresh.xml create mode 100644 app/src/main/res/drawable/ic_ring.xml create mode 100644 app/src/main/res/drawable/ic_search.xml create mode 100644 app/src/main/res/drawable/ic_share.xml create mode 100644 app/src/main/res/drawable/ic_store.xml create mode 100644 app/src/main/res/drawable/ic_up.xml create mode 100644 app/src/main/res/drawable/ic_voice.xml create mode 100644 app/src/main/res/drawable/rounded_bg.xml create mode 100644 app/src/main/res/drawable/rounded_bg_top.xml create mode 100644 app/src/main/res/drawable/splash_icon.xml create mode 100644 app/src/main/res/layout/about.xml create mode 100644 app/src/main/res/layout/activity_browser_dialog.xml create mode 100644 app/src/main/res/layout/app_drawer.xml create mode 100644 app/src/main/res/layout/app_info_dialog.xml create mode 100644 app/src/main/res/layout/app_menu.xml create mode 100644 app/src/main/res/layout/apps_child.xml create mode 100644 app/src/main/res/layout/child_sys_info.xml create mode 100644 app/src/main/res/layout/color_picker.xml create mode 100644 app/src/main/res/layout/feeds.xml create mode 100644 app/src/main/res/layout/feeds_rss.xml create mode 100644 app/src/main/res/layout/feeds_sys_infos.xml create mode 100644 app/src/main/res/layout/launcher_activity.xml create mode 100644 app/src/main/res/layout/launcher_home.xml create mode 100644 app/src/main/res/layout/list_item.xml create mode 100644 app/src/main/res/layout/quick_access.xml create mode 100644 app/src/main/res/layout/settings_activity.xml create mode 100644 app/src/main/res/layout/settings_advance.xml create mode 100644 app/src/main/res/layout/settings_appearances.xml create mode 100644 app/src/main/res/layout/settings_apps.xml create mode 100644 app/src/main/res/layout/settings_misc.xml create mode 100644 app/src/main/res/layout/settings_time_date.xml create mode 100644 app/src/main/res/layout/settings_todo.xml create mode 100644 app/src/main/res/layout/settings_weather.xml create mode 100644 app/src/main/res/layout/shortcut_maker.xml create mode 100644 app/src/main/res/layout/todo_dialog.xml create mode 100644 app/src/main/res/layout/todo_manager.xml create mode 100644 app/src/main/res/menu/add_widget.xml create mode 100644 app/src/main/res/menu/widget_menu.xml create mode 100644 app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 app/src/main/res/values-bn-rBD/strings.xml create mode 100644 app/src/main/res/values-de/strings.xml create mode 100644 app/src/main/res/values-es/strings.xml create mode 100644 app/src/main/res/values-fr/strings.xml create mode 100644 app/src/main/res/values-ia/strings.xml create mode 100644 app/src/main/res/values-it/strings.xml create mode 100644 app/src/main/res/values-ja/strings.xml create mode 100644 app/src/main/res/values-ml/strings.xml create mode 100644 app/src/main/res/values-nb-rNO/strings.xml create mode 100644 app/src/main/res/values-night/colors.xml create mode 100644 app/src/main/res/values-night/themes.xml create mode 100644 app/src/main/res/values-pt-rBR/strings.xml create mode 100644 app/src/main/res/values-pt/strings.xml create mode 100644 app/src/main/res/values-tr/strings.xml create mode 100644 app/src/main/res/values/colors.xml create mode 100644 app/src/main/res/values/dimens.xml create mode 100644 app/src/main/res/values/strings.xml create mode 100644 app/src/main/res/values/styles.xml create mode 100644 app/src/main/res/values/themes.xml create mode 100644 app/src/main/res/xml/device_admin.xml create mode 100644 app/src/main/res/xml/file_paths.xml create mode 100644 app/src/main/res/xml/lock_service.xml create mode 100644 build.gradle.kts create mode 100644 fastlane/metadata/android/en-US/changelogs/36.txt create mode 100644 fastlane/metadata/android/en-US/changelogs/37.txt create mode 100644 fastlane/metadata/android/en-US/changelogs/38.txt create mode 100644 fastlane/metadata/android/en-US/full_description.txt create mode 100644 fastlane/metadata/android/en-US/images/featureGraphic.png create mode 100644 fastlane/metadata/android/en-US/images/icon.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/1.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/2.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/3.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/4.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/5.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/6.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/7.png create mode 100644 fastlane/metadata/android/en-US/images/phoneScreenshots/8.png create mode 100644 fastlane/metadata/android/en-US/short_description.txt create mode 100644 fastlane/metadata/android/en-US/title.txt create mode 100644 gradle.properties create mode 100644 ic_launcher_512.png create mode 100644 settings.gradle.kts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a434871 --- /dev/null +++ b/.gitignore @@ -0,0 +1,78 @@ +# Built application files +*.apk +*.aar +*.ap_ +*.aab + +# Files for the ART/Dalvik VM +*.dex + +# Java class files +*.class + +# Generated files +bin/ +gen/ +out/ +# Uncomment the following line in case you need and you don't have the release build type files in your app +# release/ + +# Gradle files +.gradle/ +build/ + +# Local configuration file (sdk path, etc) +local.properties + +# Proguard folder generated by Eclipse +proguard/ + +# Log Files +*.log + +# Android Studio Navigation editor temp files +.navigation/ + +# Android Studio captures folder +captures/ + +# IntelliJ +*.iml +.idea/ + +# Keystore files +# Uncomment the following lines if you do not want to check your keystore files in. +*.jks +*.keystore + +# External native build folder generated in Android Studio 2.2 and later +.externalNativeBuild +.cxx/ + +# Google Services (e.g. APIs or Firebase) +# google-services.json + +# Freeline +freeline.py +freeline/ +freeline_project_description.json + +# fastlane +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots +fastlane/test_output +fastlane/readme.md + +# Version control +vcs.xml + +# lint +lint/intermediates/ +lint/generated/ +lint/outputs/ +lint/tmp/ +# lint/reports/ + +app/release/ +app/debug/ \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f288702 --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/app/.gitignore b/app/.gitignore new file mode 100644 index 0000000..d163863 --- /dev/null +++ b/app/.gitignore @@ -0,0 +1 @@ +build/ \ No newline at end of file diff --git a/app/build.gradle.kts b/app/build.gradle.kts new file mode 100644 index 0000000..ff34894 --- /dev/null +++ b/app/build.gradle.kts @@ -0,0 +1,73 @@ +plugins { + id ("com.android.application") + id ("kotlin-android") +} + +android { + namespace = "rasel.lunar.launcher" + compileSdk = 34 + + defaultConfig { + applicationId = "rasel.lunar.launcher" + minSdk = 26 + targetSdk = 34 + versionCode = 38 + versionName = "2.8.2" + } + + buildTypes { + getByName("debug") { + isMinifyEnabled = false + isShrinkResources = false + isDebuggable = true + applicationIdSuffix = ".debug" + versionNameSuffix = "-debug" + resValue ("string", "app_name", "Lunar Launcher Debug") + } + + getByName("release") { + isMinifyEnabled = true + isShrinkResources = true + proguardFiles (getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro") + resValue ("string", "app_name", "Lunar Launcher") + } + } + + applicationVariants.all { + if (buildType.name == "release") { + outputs.all { + val output = this as? com.android.build.gradle.internal.api.BaseVariantOutputImpl + if (output?.outputFileName?.endsWith(".apk") == true) { + output.outputFileName = "${defaultConfig.applicationId}_v${defaultConfig.versionName}.apk" + } + } + } + } + + buildFeatures { + viewBinding = true + } + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 + } + + kotlinOptions { + jvmTarget = "1.8" + } +} + +dependencies { + val kotlinVersion: String? by extra + + implementation ("androidx.appcompat:appcompat:1.6.1") + implementation ("androidx.biometric:biometric-ktx:1.2.0-alpha05") + implementation ("androidx.browser:browser:1.8.0") + implementation ("androidx.core:core-ktx:1.12.0") + implementation ("androidx.core:core-splashscreen:1.0.1") + implementation ("androidx.lifecycle:lifecycle-runtime-ktx:2.7.0") + implementation ("com.google.android.material:material:1.10.0") + implementation (kotlin("stdlib", version = kotlinVersion)) + implementation ("com.github.cachapa:ExpandableLayout:2.9.2") +} diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro new file mode 100644 index 0000000..ff59496 --- /dev/null +++ b/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle.kts. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..099a121 --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/kotlin/rasel/lunar/launcher/LauncherActivity.kt b/app/src/main/kotlin/rasel/lunar/launcher/LauncherActivity.kt new file mode 100644 index 0000000..6b6b8ae --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/LauncherActivity.kt @@ -0,0 +1,224 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher + +import android.Manifest +import android.appwidget.AppWidgetManager +import android.content.Intent +import android.content.SharedPreferences +import android.content.pm.PackageManager +import android.graphics.Color +import android.net.Uri +import android.os.Build +import android.os.Bundle +import android.provider.Settings +import android.view.WindowInsets +import android.view.WindowManager +import androidx.activity.OnBackPressedCallback +import androidx.appcompat.app.AppCompatActivity +import androidx.appcompat.app.AppCompatDelegate +import androidx.appcompat.app.AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM +import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen +import androidx.core.view.ViewCompat +import androidx.core.view.WindowCompat +import androidx.core.view.WindowInsetsCompat +import androidx.core.view.updatePadding +import androidx.recyclerview.widget.RecyclerView +import androidx.viewpager2.widget.ViewPager2 +import com.google.android.material.color.DynamicColors +import com.google.android.material.dialog.MaterialAlertDialogBuilder +import rasel.lunar.launcher.apps.AppDrawer +import rasel.lunar.launcher.databinding.LauncherActivityBinding +import rasel.lunar.launcher.feeds.Feeds +import rasel.lunar.launcher.feeds.WidgetHost +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_APPLICATION_THEME +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_BACK_HOME +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_FIRST_LAUNCH +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_STATUS_BAR +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_WINDOW_BACKGROUND +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_FIRST_LAUNCH +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import rasel.lunar.launcher.helpers.Constants.Companion.widgetHostId +import rasel.lunar.launcher.helpers.UniUtils.Companion.getColorResId +import rasel.lunar.launcher.helpers.ViewPagerAdapter +import rasel.lunar.launcher.home.LauncherHome + + +internal class LauncherActivity : AppCompatActivity() { + + private lateinit var binding: LauncherActivityBinding + private lateinit var settingsPrefs: SharedPreferences + lateinit var viewPager: ViewPager2 + + companion object { + @JvmStatic var lActivity: LauncherActivity? = null + @JvmStatic var appWidgetManager: AppWidgetManager? = null + @JvmStatic var appWidgetHost: WidgetHost? = null + } + + override fun onCreate(savedInstanceState: Bundle?) { + installSplashScreen() + DynamicColors.applyToActivityIfAvailable(this) + + settingsPrefs = getSharedPreferences(PREFS_SETTINGS, 0) + AppCompatDelegate.setDefaultNightMode(settingsPrefs.getInt(KEY_APPLICATION_THEME, MODE_NIGHT_FOLLOW_SYSTEM)) + + super.onCreate(savedInstanceState) + WindowCompat.setDecorFitsSystemWindows(window, false) + binding = LauncherActivityBinding.inflate(layoutInflater) + setContentView(binding.root) + + lActivity = this + appWidgetManager = AppWidgetManager.getInstance(applicationContext) + appWidgetHost = WidgetHost(applicationContext, widgetHostId) + appWidgetHost?.startListening() + + /* if this is the first launch, + then remember the event and show the welcome dialog */ + welcomeDialog() + setupView() + + /* handle navigation back events */ + handleBackPress() + } + + override fun onDestroy() { + super.onDestroy() + appWidgetHost?.stopListening() + } + + override fun onResume() { + super.onResume() + if (settingsPrefs.getBoolean(KEY_BACK_HOME, false)) viewPager.currentItem = 1 + statusBarView() + setBgColor() + } + + private fun welcomeDialog() { + getSharedPreferences(PREFS_FIRST_LAUNCH, 0).let { + if (it.getBoolean(KEY_FIRST_LAUNCH, true)) { + it.edit().putBoolean(KEY_FIRST_LAUNCH, false).apply() + + MaterialAlertDialogBuilder(this) + .setTitle(R.string.welcome) + .setMessage(R.string.welcome_description) + .setPositiveButton(R.string.got_it) { dialog, _ -> + dialog.dismiss() + askPermissions() + }.show() + } + } + } + + /* ask for the permissions */ + private fun askPermissions() { + /* phone permission */ + if (this.checkSelfPermission(Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) { + this.requestPermissions(arrayOf(Manifest.permission.CALL_PHONE), 1) + } + /* modify system settings */ + if (!Settings.System.canWrite(this)) { + this.startActivity( + Intent(Settings.ACTION_MANAGE_WRITE_SETTINGS) + .setData(Uri.parse("package:" + this.packageName)) + .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + ) + } + } + + /* set up viewpager2 */ + private fun setupView() { + viewPager = binding.viewPager.apply { + adapter = ViewPagerAdapter( + supportFragmentManager, mutableListOf(Feeds(), LauncherHome(), AppDrawer()), lifecycle) + offscreenPageLimit = 1 + setCurrentItem(1, false) + reduceDragSensitivity() + } + } + + private fun setBgColor() { + binding.root.setBackgroundColor(Color.parseColor("#${ + settingsPrefs.getString(KEY_WINDOW_BACKGROUND, getString(getColorResId(this, android.R.attr.colorBackground)) + .replace("#", ""))}")) + } + + private fun statusBarView() { + if (settingsPrefs.getBoolean(KEY_STATUS_BAR, false)) { + /* hide status bar */ + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + window.insetsController?.hide(WindowInsets.Type.statusBars()) + } else { + @Suppress("DEPRECATION") + window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN) + } + topPadding(false) + } else { + /* show status bar */ + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + window.insetsController?.show(WindowInsets.Type.statusBars()) + } else { + @Suppress("DEPRECATION") + window.clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN) + } + topPadding(true) + } + } + + /* alternative of deprecated onBackPressed method */ + private fun handleBackPress() { + onBackPressedDispatcher.addCallback(this, object : OnBackPressedCallback(true) { + override fun handleOnBackPressed() { + /* while in to-do manager, go back to home screen */ + if (supportFragmentManager.backStackEntryCount != 0) supportFragmentManager.popBackStack() + + /* while in feeds or app drawer, go back to home screen */ + if (viewPager.currentItem != 1) viewPager.currentItem = 1 + } + }) + } + + private fun topPadding(topPadding: Boolean) { + ViewCompat.setOnApplyWindowInsetsListener(binding.root) { view, windowInsets -> + windowInsets.getInsets(WindowInsetsCompat.Type.systemGestures()).let { + val topInset = if (topPadding) { + if (it.top == 0) windowInsets.getInsets(WindowInsetsCompat.Type.systemBars()).top + else it.top + } else 0 + + view.updatePadding(0, topInset, 0, it.bottom) + } + WindowInsetsCompat.CONSUMED + } + } + + private fun ViewPager2.reduceDragSensitivity() { + ViewPager2::class.java.getDeclaredField("mRecyclerView").apply { + isAccessible = true + }.let { recyclerViewField -> + (recyclerViewField.get(this) as RecyclerView).let { recyclerView -> + RecyclerView::class.java.getDeclaredField("mTouchSlop").apply { + isAccessible = true + set(recyclerView, this.get(recyclerView) as Int * 8) + } + } + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/LunarLauncher.kt b/app/src/main/kotlin/rasel/lunar/launcher/LunarLauncher.kt new file mode 100644 index 0000000..6b43d49 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/LunarLauncher.kt @@ -0,0 +1,33 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher + +import android.app.Application +import android.content.ComponentCallbacks2 +import android.database.sqlite.SQLiteDatabase + + +internal class LunarLauncher : Application() { + + override fun onTrimMemory(level: Int) { + super.onTrimMemory(level) + if (level >= ComponentCallbacks2.TRIM_MEMORY_UI_HIDDEN) SQLiteDatabase.releaseMemory() + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/apps/AlphabetScrollbar.kt b/app/src/main/kotlin/rasel/lunar/launcher/apps/AlphabetScrollbar.kt new file mode 100644 index 0000000..043aab8 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/apps/AlphabetScrollbar.kt @@ -0,0 +1,118 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.apps + +import android.annotation.SuppressLint +import android.content.Context +import android.graphics.Canvas +import android.graphics.Paint +import android.util.AttributeSet +import android.util.TypedValue +import android.view.MotionEvent +import android.view.View +import androidx.core.content.ContextCompat +import rasel.lunar.launcher.apps.AppDrawer.Companion.alphabetList +import rasel.lunar.launcher.apps.AppDrawer.Companion.letterPreview +import rasel.lunar.launcher.apps.AppDrawer.Companion.listenScroll +import rasel.lunar.launcher.apps.AppDrawer.Companion.settingsPrefs +import rasel.lunar.launcher.apps.AppsAdapter.Companion.appsSize +import rasel.lunar.launcher.helpers.Constants + + +internal class AlphabetScrollbar : View { + + private var paint: Paint? = null + private var selectedIndex = -1 + private val alphabet get() = alphabetList.distinct() + + constructor(context: Context?) : super(context) { + init() + } + + constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) { + init() + } + + constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) { + init() + } + + @SuppressLint("ResourceType") + private fun init() { + paint = Paint(Paint.ANTI_ALIAS_FLAG).apply { + color = defaultTextColor + textSize = 16f + } + } + + override fun onDraw(canvas: Canvas) { + super.onDraw(canvas) + val width = width + val height = height + val letterHeight: Int = height / alphabet.count() + alphabet.indices.forEach { i: Int -> + val x = width / 2f - paint!!.measureText(alphabet[i]) / 2f + val y = i * letterHeight + letterHeight / 2f + when (i) { + selectedIndex -> paint!!.textSize = 20f + else -> paint!!.textSize = 16f + } + canvas.drawText(alphabet[i], x, y, paint!!) + } + } + + @SuppressLint("ClickableViewAccessibility") + override fun onTouchEvent(event: MotionEvent): Boolean { + when (event.action) { + MotionEvent.ACTION_DOWN, MotionEvent.ACTION_MOVE -> { + val y = event.y + val index = (y / height * alphabet.count()).toInt() + if (index != selectedIndex) { + selectedIndex = index + invalidate() + } + + if (!settingsPrefs!!.getBoolean(Constants.KEY_APPS_COUNT, true)) letterPreview?.visibility = VISIBLE + try { letterPreview?.text = alphabet[selectedIndex] } + catch (exception: Exception) { exception.printStackTrace() } + } + + MotionEvent.ACTION_UP, MotionEvent.ACTION_CANCEL -> { + when { + selectedIndex < 0 -> listenScroll(alphabet[0]) + selectedIndex > alphabet.count() - 1 -> listenScroll(alphabet[alphabet.count() - 1]) + else -> listenScroll(alphabet[selectedIndex]) + } + + selectedIndex = -1 + invalidate() + if (settingsPrefs!!.getBoolean(Constants.KEY_APPS_COUNT, true)) letterPreview?.text = appsSize.toString() + else letterPreview?.visibility = GONE + } + } + return true + } + + private val defaultTextColor: Int get() { + val resolvedAttr = TypedValue() + context.theme.resolveAttribute(android.R.attr.textColorPrimary, resolvedAttr, true) + val colorRes = resolvedAttr.run { if (resourceId != 0) resourceId else data } + return ContextCompat.getColor(context, colorRes) + } +} \ No newline at end of file diff --git a/app/src/main/kotlin/rasel/lunar/launcher/apps/AppDrawer.kt b/app/src/main/kotlin/rasel/lunar/launcher/apps/AppDrawer.kt new file mode 100644 index 0000000..b6cd8fc --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/apps/AppDrawer.kt @@ -0,0 +1,335 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.apps + +import android.annotation.SuppressLint +import android.content.Context +import android.content.Intent +import android.content.SharedPreferences +import android.content.pm.PackageManager +import android.content.pm.ResolveInfo +import android.graphics.Rect +import android.os.Build +import android.os.Bundle +import android.view.Gravity +import android.view.LayoutInflater +import android.view.View +import android.view.View.GONE +import android.view.View.VISIBLE +import android.view.ViewGroup +import android.view.inputmethod.InputMethodManager +import androidx.appcompat.app.AlertDialog +import androidx.core.view.updateLayoutParams +import androidx.core.widget.doOnTextChanged +import androidx.fragment.app.Fragment +import androidx.recyclerview.widget.GridLayoutManager +import androidx.recyclerview.widget.LinearLayoutManager +import com.google.android.material.textview.MaterialTextView +import rasel.lunar.launcher.BuildConfig +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.AppDrawerBinding +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_GRID_COLUMNS +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_SCROLLBAR_HEIGHT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_APPS_COUNT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_APPS_LAYOUT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_DRAW_ALIGN +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_GRID_COLUMNS +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_KEYBOARD_SEARCH +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_QUICK_LAUNCH +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_SCROLLBAR_HEIGHT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_STATUS_BAR +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_APP_NAMES +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import java.text.Normalizer +import java.util.* +import java.util.regex.Pattern + + +internal class AppDrawer : Fragment() { + + private lateinit var binding: AppDrawerBinding + private var layoutType: Int = 0 + private var isSearchShown: Boolean = false + private var isKeyboardShowing: Boolean = false + + companion object { + private var packageManager: PackageManager? = null + private var appsAdapter: AppsAdapter? = null + private var packageInfoList: MutableList = mutableListOf() + private var packageList = mutableListOf() + private val numberPattern = Pattern.compile("[0-9]") + private val alphabetPattern = Pattern.compile("[A-Z]") + @JvmStatic var settingsPrefs: SharedPreferences? = null + @JvmStatic var appNamesPrefs: SharedPreferences? = null + @JvmStatic var alphabetList = mutableListOf() + @JvmStatic var letterPreview: MaterialTextView? = null + + private fun appName(resolver: ResolveInfo): String { + return appNamesPrefs?.getString(resolver.activityInfo.packageName, resolver.loadLabel(packageManager).toString())!! + } + + fun listenScroll(letter: String) { + packageList.clear() + for (resolver in packageInfoList) { + when { + letter == "#" -> { + if (numberPattern.matcher(appName(resolver).first().uppercase()).matches()) { + packageList.add(Packages(resolver.activityInfo.packageName, appName(resolver))) + } + } + alphabetPattern.matcher(letter).matches() -> { + if (appName(resolver).first().uppercase() == letter) { + packageList.add(Packages(resolver.activityInfo.packageName, appName(resolver))) + } + } + letter == "⠶" -> { + if (!numberPattern.matcher(appName(resolver).first().uppercase()).matches() && + !alphabetPattern.matcher(appName(resolver).first().uppercase()).matches()) { + packageList.add(Packages(resolver.activityInfo.packageName, appName(resolver))) + } + } + } + } + appsAdapter?.updateData(packageList.sortedBy { it.appName.lowercase() }) + } + } + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = AppDrawerBinding.inflate(inflater, container, false) + + settingsPrefs = requireContext().getSharedPreferences(PREFS_SETTINGS, 0) + appNamesPrefs = requireContext().getSharedPreferences(PREFS_APP_NAMES, 0) + layoutType = settingsPrefs!!.getInt(KEY_APPS_LAYOUT, 0) + packageManager = lActivity?.packageManager + appsAdapter = AppsAdapter(layoutType, packageManager!!, childFragmentManager, binding.appsCount) + letterPreview = binding.appsCount + + binding.appsCount.visibility = if (settingsPrefs!!.getBoolean(KEY_APPS_COUNT, true)) VISIBLE else GONE + + setLayout() + fetchApps() + getAlphabetItems() + setKeyboardPadding() + + return binding.root + } + + @SuppressLint("ClickableViewAccessibility") + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + + binding.reset.setOnClickListener { onResume() } + + binding.moveDown.setOnClickListener { + binding.appsList.smoothScrollToPosition(packageList.size - 1) + } + + binding.moveUp.setOnClickListener { + binding.appsList.smoothScrollToPosition(0) + } + + binding.search.setOnClickListener { + when (isSearchShown) { + true -> closeSearch() + false -> openSearch() + } + } + + binding.searchInput.doOnTextChanged { inputText, _, _, _ -> + binding.searchInput.text?.let { binding.searchInput.setSelection(it.length) } + filterAppsList(inputText.toString()) + } + } + + override fun onResume() { + super.onResume() + fetchApps() + getAlphabetItems() + + binding.appsCount.visibility = if (settingsPrefs!!.getBoolean(KEY_APPS_COUNT, true)) VISIBLE else GONE + + if (settingsPrefs!!.getInt(KEY_APPS_LAYOUT, 0) in 0..1) { + appsAdapter?.updateGravity(settingsPrefs!!.getInt(KEY_DRAW_ALIGN, Gravity.CENTER)) + } + + /* pop up the keyboard */ + if (settingsPrefs!!.getBoolean(KEY_KEYBOARD_SEARCH, false)) openSearch() + } + + override fun onPause() { + super.onPause() + closeSearch() + } + + private fun setLayout() { + when (layoutType) { + 0, 1 -> { + binding.appsList.layoutManager = LinearLayoutManager(requireContext()) + appsAdapter!!.updateGravity(settingsPrefs!!.getInt(KEY_DRAW_ALIGN, Gravity.CENTER)) + } + 2 -> binding.appsList.layoutManager = GridLayoutManager(requireContext(), settingsPrefs!!.getInt(KEY_GRID_COLUMNS, DEFAULT_GRID_COLUMNS)) + } + + /* initialize apps list adapter */ + binding.appsList.adapter = appsAdapter + } + + /* update app list with app and package name */ + fun fetchApps() { + packageInfoList = (if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + packageManager?.queryIntentActivities( + Intent(Intent.ACTION_MAIN, null).addCategory(Intent.CATEGORY_LAUNCHER), + PackageManager.ResolveInfoFlags.of(0) + ) + } else { + (packageManager?.queryIntentActivities( + Intent(Intent.ACTION_MAIN, null).addCategory(Intent.CATEGORY_LAUNCHER), 0)) + })?.apply { + removeIf { it.activityInfo.packageName.equals(BuildConfig.APPLICATION_ID) } + sortWith(ResolveInfo.DisplayNameComparator(packageManager)) + }!! + + /* add package and app names to the list */ + packageList.clear() + for (resolver in packageInfoList) { + packageList.add(Packages(resolver.activityInfo.packageName, appName(resolver))) + } + + when { + packageList.size < 1 -> return + else -> appsAdapter?.updateData(packageList.sortedBy { it.appName.lowercase() }) + } + } + + private fun getAlphabetItems() { +// settingsPrefs!!.getInt(KEY_SCROLLBAR_HEIGHT, DEFAULT_SCROLLBAR_HEIGHT).let { height: Int -> +// if (height == 0) { binding.alphabets.visibility = GONE } +// else { +// binding.alphabets.apply { +// if (visibility == GONE) visibility = VISIBLE +// updateLayoutParams { this.height = height } +// } +// alphabetList.clear() +// for (mPackage in packageList) { +// mPackage.appName.first().uppercase().let { firstLetter: String -> +// when { +// numberPattern.matcher(firstLetter).matches() -> alphabetList.add(0, "#") +// alphabetPattern.matcher(firstLetter).matches() -> alphabetList.add(firstLetter) +// !numberPattern.matcher(firstLetter).matches() && +// !alphabetPattern.matcher(firstLetter).matches() -> alphabetList.add(alphabetList.size,"⠶") +// else -> {} +// } +// } +// } +// binding.alphabets.invalidate() +// } +// } + } + + private fun filterAppsList(searchString: String) { + /* check each app name and add if it matches the search string */ + packageList.clear() + for (resolver in packageInfoList) { + appName(resolver).let { + if (normalize(it).contains(searchString)) { + packageList.add(Packages(resolver.activityInfo.packageName, it)) + } + } + } + + if (packageList.size == 1 && settingsPrefs!!.getBoolean(KEY_QUICK_LAUNCH, true)) { + var dialog = AlertDialog.Builder(requireContext()) + dialog.setTitle("앱 실행 확인") + dialog.setMessage("${searchString} 검색 결과 '${packageList[0].appName}' 준비됨") + dialog.setCancelable(false) + dialog.setOnCancelListener { + binding.searchInput.setText("") + it.dismiss() + } + dialog.setPositiveButton("실행") { s,d -> + startActivity(packageManager?.getLaunchIntentForPackage(packageList[0].packageName)) + s.dismiss() + binding.searchInput.setText("") + } + dialog.show() + } + else appsAdapter?.updateData(packageList.sortedBy { it.appName.lowercase() }) + } + + private fun normalize(str: String): String { + val normalizedString = + Normalizer.normalize(str.replace("\\W".toRegex(), ""), Normalizer.Form.NFD) + val pattern = Pattern.compile("\\p{InCombiningDiacriticalMarks}+") + return pattern.matcher(normalizedString).replaceAll("").lowercase() + } + + private fun openSearch() { + isSearchShown = true + binding.search.setImageResource(R.drawable.ic_close) + binding.searchInput.apply { + visibility = VISIBLE + requestFocus() + let { + (lActivity!!.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager) + .showSoftInput(it, InputMethodManager.SHOW_IMPLICIT) + } + } + } + + /* clear search string, hide keyboard and search box */ + private fun closeSearch() { + isSearchShown = false + binding.search.setImageResource(R.drawable.ic_search) + binding.searchInput.apply { + text?.clear() + visibility = GONE + let { + (lActivity!!.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager) + .hideSoftInputFromWindow(it.windowToken, 0) + } + } + } + + private fun setKeyboardPadding() { + binding.root.viewTreeObserver.addOnGlobalLayoutListener { + val rect = Rect() + binding.root.getWindowVisibleDisplayFrame(rect) + val screenHeight = binding.root.height + val keyboardHeight = screenHeight - (rect.bottom - rect.top) + + when { + keyboardHeight > screenHeight * 0.15 -> { + if (!isKeyboardShowing && + !settingsPrefs!!.getBoolean(KEY_STATUS_BAR, false)) { + isKeyboardShowing = true + binding.root.setPadding(0, 0, 0, keyboardHeight) + } + } + else -> { + if (isKeyboardShowing) { + isKeyboardShowing = false + binding.root.setPadding(0, 0, 0, 0) + } + } + } + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/apps/AppMenu.kt b/app/src/main/kotlin/rasel/lunar/launcher/apps/AppMenu.kt new file mode 100644 index 0000000..7d758e2 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/apps/AppMenu.kt @@ -0,0 +1,431 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.apps + +import android.annotation.SuppressLint +import android.app.ActivityOptions +import android.content.ActivityNotFoundException +import android.content.ComponentName +import android.content.Context +import android.content.Intent +import android.content.pm.ApplicationInfo +import android.content.pm.PackageManager +import android.content.res.ColorStateList +import android.graphics.Rect +import android.icu.text.SimpleDateFormat +import android.net.Uri +import android.os.Build +import android.os.Bundle +import android.provider.Settings +import android.view.KeyEvent +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.view.inputmethod.InputMethodManager +import android.widget.AdapterView +import android.widget.ArrayAdapter +import android.widget.Toast +import androidx.appcompat.widget.LinearLayoutCompat +import androidx.core.content.FileProvider +import androidx.core.content.pm.PackageInfoCompat +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import com.google.android.material.button.MaterialButton +import com.google.android.material.button.MaterialButtonToggleGroup +import com.google.android.material.dialog.MaterialAlertDialogBuilder +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.apps.AppDrawer.Companion.appNamesPrefs +import rasel.lunar.launcher.databinding.ActivityBrowserDialogBinding +import rasel.lunar.launcher.databinding.AppInfoDialogBinding +import rasel.lunar.launcher.databinding.AppMenuBinding +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_APP_NO_ +import rasel.lunar.launcher.helpers.Constants.Companion.MAX_FAVORITE_APPS +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_FAVORITE_APPS +import rasel.lunar.launcher.helpers.UniUtils.Companion.copyToClipboard +import rasel.lunar.launcher.helpers.UniUtils.Companion.screenHeight +import rasel.lunar.launcher.helpers.UniUtils.Companion.screenWidth +import java.io.File +import java.io.FileInputStream +import java.io.FileOutputStream +import java.io.IOException +import java.util.* + + +internal class AppMenu : BottomSheetDialogFragment() { + + private lateinit var binding: AppMenuBinding + private lateinit var packageName: String + private lateinit var packageManager: PackageManager + private lateinit var appInfo: ApplicationInfo + private lateinit var defAppName: String + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = AppMenuBinding.inflate(inflater, container, false) + + /* get package name from fragment's tag */ + packageName = tag.toString() + packageManager = requireContext().packageManager + + /* get application info */ + appInfo = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + packageManager.getApplicationInfo(packageName, + PackageManager.ApplicationInfoFlags.of(PackageManager.GET_META_DATA.toLong())) + } else { + packageManager.getApplicationInfo(packageName, PackageManager.GET_META_DATA) + } + + /* get default app name */ + defAppName = packageManager.resolveActivity(Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_LAUNCHER) + .setPackage(packageName), 0)?.loadLabel(packageManager).toString() + + /* set application name and package name */ + binding.appName.apply { + setText(appNamesPrefs?.getString(packageName, defAppName)) + hint = defAppName + + } + binding.appPackage.text = packageName + /* favorite apps */ + favoriteApps() + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + (requireDialog() as BottomSheetDialog).dismissWithAnimation = true + + /* copy package name */ + binding.appPackage.setOnClickListener { + copyToClipboard(requireContext(), packageName) + } + + appName() + binding.detailedInfo.setOnClickListener { detailedInfo() } + binding.activityBrowser.setOnClickListener { activityBrowser() } + binding.appStore.setOnClickListener { appStore() } + binding.appFreeform.setOnClickListener { freeform() } + binding.appInfo.setOnClickListener { appInfo() } + binding.appShare.setOnClickListener { share() } + binding.appUninstall.setOnClickListener { uninstall() } + } + + /* manage initial preview and clicks for favorite apps */ + @SuppressLint("PrivateResource") + private fun favoriteApps() { + val sharedPreferences = requireContext().getSharedPreferences(PREFS_FAVORITE_APPS, 0) + val enabledStroke = + ColorStateList.valueOf(requireContext().getColor(com.google.android.material.R.color.material_on_surface_stroke)) + val disabledStroke = + ColorStateList.valueOf(requireContext().getColor(com.google.android.material.R.color.m3_chip_stroke_color)) + + for (position in 1..MAX_FAVORITE_APPS) { + val button = outlinedButton + val savedPackageName = sharedPreferences.getString(KEY_APP_NO_ + position, "") + + /* set previews */ + if (packageName == savedPackageName) button.isChecked = true + if (savedPackageName?.isNotEmpty() == true) button.strokeColor = enabledStroke + + try { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) + packageManager.getPackageInfo(savedPackageName!!, PackageManager.PackageInfoFlags.of(0)) + else + packageManager.getPackageInfo(savedPackageName!!, 0) + } catch (e: PackageManager.NameNotFoundException) { + requireContext().getSharedPreferences(PREFS_FAVORITE_APPS, 0) + .edit().remove(KEY_APP_NO_ + position).apply() + button.strokeColor = disabledStroke + e.printStackTrace() + } + + /* listen on clicks */ + binding.favGroup.addOnButtonCheckedListener { _: MaterialButtonToggleGroup?, + checkedId: Int, isChecked: Boolean -> + try { + if (checkedId == button.id) { + if (isChecked) { + requireContext().getSharedPreferences(PREFS_FAVORITE_APPS, 0) + .edit().putString(KEY_APP_NO_ + position, packageName).apply() + button.strokeColor = enabledStroke + } else { + requireContext().getSharedPreferences(PREFS_FAVORITE_APPS, 0) + .edit().remove(KEY_APP_NO_ + position).apply() + button.strokeColor = disabledStroke + } + } + } catch (e: Exception) { + e.printStackTrace() + } + } + } + } + + private fun appName() { + binding.appName.setOnFocusChangeListener { _, hasFocus -> + if (hasFocus) binding.appName.minWidth = resources.getDimensionPixelOffset(R.dimen.twoSeventySix) + else { + (requireContext().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager) + .hideSoftInputFromWindow(binding.appName.windowToken, 0) + + binding.appName.apply { + minWidth = resources.getDimensionPixelOffset(R.dimen.zero) + + if (text!!.isBlank()) setText(defAppName) + else setText(text!!.trim()) + + if (text.toString() == defAppName) appNamesPrefs?.edit()!!.remove(packageName).apply() + else appNamesPrefs?.edit()!!.putString(packageName, text.toString()).apply() + + (requireParentFragment() as AppDrawer).fetchApps() + } + } + } + + binding.appName.setOnKeyListener { _, keyCode, event -> + if (event.action == KeyEvent.ACTION_DOWN) { + if (keyCode == KeyEvent.KEYCODE_ENTER || keyCode == KeyEvent.KEYCODE_BACK) { + binding.appName.clearFocus() + return@setOnKeyListener true + } + } + false + } + } + + /* detailed info dialog */ + @SuppressLint("SetTextI18n") + private fun detailedInfo() { + val dialogBinding = AppInfoDialogBinding.inflate(lActivity!!.layoutInflater) + MaterialAlertDialogBuilder(lActivity!!) + .setView(dialogBinding.root) + .setPositiveButton(android.R.string.cancel, null) + .show() + + /* show app name */ + dialogBinding.appName.text = packageManager.getApplicationLabel(appInfo) + + /* get package info */ + val packageInfo = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + packageManager.getPackageInfo(packageName, PackageManager.PackageInfoFlags.of(0)) + } else { + packageManager.getPackageInfo(packageName, 0) + } + + /* show infos */ + dialogBinding.mixed.text = + "${resources.getString(R.string.version)}: ${packageInfo.versionName} (${PackageInfoCompat.getLongVersionCode(packageInfo).toInt()})\n" + + "${resources.getString(R.string.sdk)}: ${appInfo.minSdkVersion} ~ ${appInfo.targetSdkVersion}\n" + + "${resources.getString(R.string.uid)}: ${appInfo.uid}\n" + + "${resources.getString(R.string.first_install)}: ${dateTimeFormat(packageInfo.firstInstallTime)}\n" + + "${resources.getString(R.string.last_update)}: ${dateTimeFormat(packageInfo.lastUpdateTime)}" + + /* show permissions */ + dialogBinding.permissions.text = permissionsList + } + + /* activity browser dialog */ + private fun activityBrowser() { + val dialogBinding = ActivityBrowserDialogBinding.inflate(lActivity!!.layoutInflater) + val dialogBuilder = MaterialAlertDialogBuilder(lActivity!!) + .setView(dialogBinding.root) + .setPositiveButton(android.R.string.cancel, null) + .show() + + /* show app name */ + dialogBinding.appName.text = packageManager.getApplicationLabel(appInfo) + + /* get activity info */ + val activityInfo = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + packageManager.getPackageInfo( + packageName, PackageManager.PackageInfoFlags.of(PackageManager.GET_ACTIVITIES.toLong()) + ) + } else { + packageManager.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES) + } + + /* show activity list */ + val activityAdapter: ArrayAdapter = + ArrayAdapter(requireContext(), R.layout.list_item, R.id.itemText, ArrayList()) + if (activityInfo.activities.isNotEmpty()) { + for (activity in activityInfo.activities) { + activityAdapter.add( + activity.toString().split(" ").toTypedArray()[1].replace("}", "") + ) + } + dialogBinding.activityList.adapter = activityAdapter + } + + /* listen item clicks */ + dialogBinding.activityList.onItemClickListener = + AdapterView.OnItemClickListener { _: AdapterView<*>?, _: View?, i: Int, _: Long -> + try { + /* open activity */ + val intent = Intent() + intent.component = ComponentName(packageName, activityAdapter.getItem(i).toString()) + intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK + requireContext().startActivity(intent) + } catch (exception: Exception) { + /* couldn't open activity */ + exception.printStackTrace() + val exceptionShort = (exception.toString().split(": ").toTypedArray())[0] + Toast.makeText(requireContext(), + "${resources.getString(R.string.unable_to_launch)} -\n$exceptionShort", Toast.LENGTH_LONG).show() + } + dialogBuilder.dismiss() + } + } + + /* open app's page in app store/market */ + private fun appStore() { + try { + val storeIntent = Intent(Intent.ACTION_VIEW) + storeIntent.data = Uri.parse("market://details?id=$packageName") + storeIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + requireContext().startActivity(storeIntent) + } catch (activityNotFoundException: ActivityNotFoundException) { + /* no app store found exception */ + Toast.makeText(requireContext(), requireContext().getString(R.string.null_app_store_message), + Toast.LENGTH_SHORT).show() + activityNotFoundException.printStackTrace() + } + this.dismiss() + } + + /* launch app as a freeform window */ + private fun freeform() { + val freeformIntent = requireContext().packageManager.getLaunchIntentForPackage(packageName) + freeformIntent!!.addFlags(Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT or + Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_MULTIPLE_TASK) + val rect = Rect(0, screenHeight / 2, screenWidth, screenHeight) + var activityOptions = activityOptions + activityOptions = activityOptions.setLaunchBounds(rect) + requireContext().startActivity(freeformIntent, activityOptions.toBundle()) + this.dismiss() + } + + /* open android's app info screen */ + private fun appInfo() { + val infoIntent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS) + infoIntent.data = Uri.parse("package:$packageName") + infoIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + requireContext().startActivity(infoIntent) + this.dismiss() + } + + private fun share() { + try { + // Create a temporary file to copy the APK + val apkLabel = packageManager.getApplicationLabel(appInfo).toString().lowercase().replace(" ", "_") + val tempApkFile = File(requireContext().externalCacheDir, "$apkLabel.apk") + + // Copy the APK file + FileInputStream(File(appInfo.sourceDir)).use { `in` -> + FileOutputStream(tempApkFile).use { out -> + val buffer = ByteArray(1024) + var length: Int + while (`in`.read(buffer).also { length = it } > 0) { + out.write(buffer, 0, length) + } + } + } + + // Generate a content URI using FileProvider + val contentUri = + FileProvider.getUriForFile(requireContext(), "${requireContext().packageName}.fileprovider", tempApkFile) + + //requireContext().grantUriPermission(receivers.package.name, contentUri, Intent.FLAG_GRANT_READ_URI_PERMISSION) + + // Create a Share Intent + Intent(Intent.ACTION_SEND).apply { + type = "application/vnd.android.package-archive" + putExtra(Intent.EXTRA_STREAM, contentUri) + addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION) + }.let { + // Start the chooser activity + startActivity(Intent.createChooser(it, getString(R.string.share_apk_message))) + } + } + catch (e: PackageManager.NameNotFoundException) { e.printStackTrace() } + catch (e: IOException) { e.printStackTrace() } + this.dismiss() + } + + /* uninstall the app */ + private fun uninstall() { + val uninstallIntent = Intent(Intent.ACTION_DELETE) + uninstallIntent.data = Uri.parse("package:$packageName") + uninstallIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_NEW_TASK) + requireContext().startActivity(uninstallIntent) + this.dismiss() + } + + /* create and add an outlined button to the toggle group */ + private val outlinedButton: MaterialButton get() { + val style = com.google.android.material.R.attr.materialButtonOutlinedStyle + val button = MaterialButton(requireContext(), null, style) + button.layoutParams = LinearLayoutCompat.LayoutParams( + LinearLayoutCompat.LayoutParams.WRAP_CONTENT, + LinearLayoutCompat.LayoutParams.WRAP_CONTENT, 1F + ) + binding.favGroup.addView(button) + return button + } + + /* long value to local date-time format */ + private fun dateTimeFormat(long: Long) : String = SimpleDateFormat.getDateTimeInstance().format(Date(long)) + + /* get and arrange all the permissions for an application */ + private val permissionsList : String get() { + val packageInfo = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + packageManager.getPackageInfo(packageName, PackageManager.PackageInfoFlags.of(PackageManager.GET_PERMISSIONS.toLong())) + } else { + packageManager.getPackageInfo(packageName, PackageManager.GET_PERMISSIONS) + } + + return if (packageInfo.requestedPermissions.isNotEmpty()) { + val stringBuilder = StringBuilder() + packageInfo.requestedPermissions.indices.forEach { i: Int -> + if (i != packageInfo.requestedPermissions.size - 1) + stringBuilder.append("${packageInfo.requestedPermissions[i]}\n\n") + /* don't add any new line after the last entry */ + else + stringBuilder.append(packageInfo.requestedPermissions[i]) + } + stringBuilder.toString() + } else { + "" + } + } + + /* get activity options for launching app in freeform mode */ + private val activityOptions: ActivityOptions get() { + val activityOptions = ActivityOptions.makeBasic() + try { + val method = + ActivityOptions::class.java.getMethod("setLaunchWindowingMode", Int::class.javaPrimitiveType) + method.invoke(activityOptions, 5) + } catch (exception: Exception) { + exception.printStackTrace() + } + return activityOptions + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/apps/AppsAdapter.kt b/app/src/main/kotlin/rasel/lunar/launcher/apps/AppsAdapter.kt new file mode 100644 index 0000000..cf14fb7 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/apps/AppsAdapter.kt @@ -0,0 +1,159 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.apps + +import android.annotation.SuppressLint +import android.content.pm.PackageManager +import android.util.TypedValue +import android.view.Gravity +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.core.view.updatePadding +import androidx.fragment.app.FragmentManager +import androidx.recyclerview.widget.DiffUtil +import androidx.recyclerview.widget.RecyclerView +import com.google.android.material.textview.MaterialTextView +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.apps.IconPackManager.Companion.getDrawableIconForPackage +import rasel.lunar.launcher.databinding.AppsChildBinding +import rasel.lunar.launcher.helpers.UniUtils.Companion.dpToPx + + +internal class AppsAdapter( + private val layoutType: Int, + private val packageManager: PackageManager, + private val fragmentManager: FragmentManager, + private val appsCount: MaterialTextView) : RecyclerView.Adapter() { + + private var oldList = mutableListOf() + private var appGravity: Int = Gravity.CENTER + + companion object { + @JvmStatic var appsSize: Int? = null + } + + override fun onCreateViewHolder(viewGroup: ViewGroup, i: Int): AppsViewHolder = + AppsViewHolder(AppsChildBinding.inflate(LayoutInflater.from(viewGroup.context), viewGroup, false)) + + override fun onBindViewHolder(holder: AppsViewHolder, i: Int) { + val item = oldList[i] + val fourDp = dpToPx(lActivity!!, R.dimen.four) + val eightDp = dpToPx(lActivity!!, R.dimen.eight) + val twelveDp = dpToPx(lActivity!!, R.dimen.twelve) + val sixteenDp = dpToPx(lActivity!!, R.dimen.sixteen) + + holder.view.apply { + childTextview.text = item.appName + + when (layoutType) { + 0 -> { + appIcon.visibility = View.GONE + appIconTwo.visibility = View.GONE + childTextview.apply { + gravity = appGravity + setTextSize(TypedValue.COMPLEX_UNIT_PX, lActivity!!.resources.getDimension(R.dimen.twentyTwo)) + } + root.setPadding(sixteenDp, fourDp, sixteenDp, fourDp) + } + 1 -> { + appIcon.visibility = View.GONE + appIconTwo.setImageDrawable(getDrawableIconForPackage(item.packageName, packageManager.getApplicationIcon(item.packageName))) + childTextview.apply { + gravity = appGravity or Gravity.CENTER_VERTICAL + setTextSize(TypedValue.COMPLEX_UNIT_PX, lActivity!!.resources.getDimension(R.dimen.twenty)) + updatePadding(left = twelveDp) + } + root.setPadding(sixteenDp, eightDp, sixteenDp, eightDp) + } + 2 -> { + appIconTwo.visibility = View.GONE + appIcon.setImageDrawable(getDrawableIconForPackage(item.packageName, packageManager.getApplicationIcon(item.packageName))) + childTextview.apply { + gravity = Gravity.CENTER + setTextSize(TypedValue.COMPLEX_UNIT_PX, lActivity!!.resources.getDimension(R.dimen.twelve)) + } + root.setPadding(eightDp, eightDp, eightDp, eightDp) + } + } + } + + holder.view.root.apply { + /* on click - open app */ + setOnClickListener { + context.startActivity(packageManager.getLaunchIntentForPackage(item.packageName)) + } + + /* on long click - open app menu */ + setOnLongClickListener { + AppMenu().show(fragmentManager, item.packageName) + true + } + } + } + + override fun getItemCount(): Int = oldList.size + + inner class AppsViewHolder(var view: AppsChildBinding) : RecyclerView.ViewHolder(view.root) + + /* update app list */ + fun updateData(newList: List) { + val diffUtilResult = DiffUtil.calculateDiff(AppsDiffUtil(oldList, newList)) + + oldList.clear() + oldList.addAll(newList) + diffUtilResult.dispatchUpdatesTo(this) + + newList.size.let { + appsCount.text = it.toString() + appsSize = it + } + } + + /* update text gravity (alignment) */ + @SuppressLint("RtlHardcoded", "NotifyDataSetChanged") + fun updateGravity(gravity: Int){ + /* the first check is to avoid calling notifyDataSetChanged() everytime */ + if (gravity != appGravity && + (gravity == Gravity.LEFT || gravity == Gravity.CENTER || gravity == Gravity.RIGHT)) { + appGravity = gravity + notifyDataSetChanged() + } + } +} + +internal data class Packages ( + val packageName: String, + val appName: String +) + +internal class AppsDiffUtil( + private val oldList: List, private val newList: List +) : DiffUtil.Callback() { + + override fun getOldListSize(): Int = oldList.size + override fun getNewListSize(): Int = newList.size + + override fun areItemsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean = + oldList[oldItemPosition].packageName == newList[newItemPosition].packageName + + override fun areContentsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean = + oldList[oldItemPosition] == newList[newItemPosition] +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/apps/IconPackManager.kt b/app/src/main/kotlin/rasel/lunar/launcher/apps/IconPackManager.kt new file mode 100644 index 0000000..d967b4a --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/apps/IconPackManager.kt @@ -0,0 +1,181 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.apps + +import android.annotation.SuppressLint +import android.content.pm.PackageManager +import android.content.res.Resources +import android.graphics.Bitmap +import android.graphics.drawable.BitmapDrawable +import android.graphics.drawable.Drawable +import android.util.Log +import androidx.core.content.res.ResourcesCompat +import org.xmlpull.v1.XmlPullParser +import org.xmlpull.v1.XmlPullParserException +import org.xmlpull.v1.XmlPullParserFactory +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_ICON_PACK +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_ICON_PACK +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import rasel.lunar.launcher.utils.BLog +import java.io.IOException +import java.util.Locale + + +internal class IconPackManager { + + @SuppressLint("DiscouragedApi") + companion object { + + private val settingsPrefs = lActivity!!.getSharedPreferences(PREFS_SETTINGS, 0) + private val packageName = settingsPrefs.getString(KEY_ICON_PACK, DEFAULT_ICON_PACK) + private var loaded = false + private val packagesDrawables = HashMap() + private val backImages: MutableList = ArrayList() + private var maskImage: Bitmap? = null + private var frontImage: Bitmap? = null + private var factor = 1.0f + private var totalIcons = 0 + private var iconPackRes: Resources? = null + + private fun load() { + /* load appfilter.xml from the icon pack package */ + try { + var xpp: XmlPullParser? = null + iconPackRes = lActivity!!.packageManager.getResourcesForApplication(packageName!!) + val appFilterId = iconPackRes!!.getIdentifier("appfilter", "xml", packageName) + if (appFilterId > 0) { + xpp = iconPackRes!!.getXml(appFilterId) + } else { + /* no resource found, try to open it from assets folder */ + try { + xpp = XmlPullParserFactory.newInstance().apply { isNamespaceAware = true } + .newPullParser().apply { setInput(iconPackRes!!.assets.open("appfilter.xml"), "utf-8") } + } catch (e: IOException) { + e.printStackTrace() + BLog.w("", "Couldn't find the appfilter.xml file") + } + } + if (xpp != null) { + var eventType = xpp.eventType + while (eventType != XmlPullParser.END_DOCUMENT) { + if (eventType == XmlPullParser.START_TAG) { + when (xpp.name) { + "iconback" -> { + for (i in 0 until xpp.attributeCount) { + if (xpp.getAttributeName(i).startsWith("img")) { + loadBitmap(xpp.getAttributeValue(i))?.let { backImages.add(it) } + } + } + } + "iconmask" -> { + if (xpp.attributeCount > 0 && xpp.getAttributeName(0) == "img1") { + maskImage = loadBitmap(xpp.getAttributeValue(0)) + } + } + "iconupon" -> { + if (xpp.attributeCount > 0 && xpp.getAttributeName(0) == "img1") { + frontImage = loadBitmap(xpp.getAttributeValue(0)) + } + } + "scale" -> { + if (xpp.attributeCount > 0 && xpp.getAttributeName(0) == "factor") { + factor = java.lang.Float.valueOf(xpp.getAttributeValue(0)) + } + } + "item" -> { + var componentName: String? = null + var drawableName: String? = null + for (i in 0 until xpp.attributeCount) { + when (xpp.getAttributeName(i)) { + "component" -> componentName = xpp.getAttributeValue(i) + "drawable" -> drawableName = xpp.getAttributeValue(i) + } + } + if (!packagesDrawables.containsKey(componentName)) { + packagesDrawables[componentName] = drawableName + totalIcons += 1 + } + } + } + } + eventType = xpp.next() + } + } + loaded = true + } catch (e: PackageManager.NameNotFoundException) { + BLog.w("", "Failed to load the icon pack") + } catch (e: XmlPullParserException) { + BLog.w("", "Failed to parse the appfilter.xml file") + } catch (e: IOException) { + e.printStackTrace() + } + } + + private fun loadBitmap(drawableName: String): Bitmap? { + iconPackRes!!.getIdentifier(drawableName, "drawable", packageName).let { id -> + if (id > 0) { + ResourcesCompat.getDrawable(iconPackRes!!, id, null).let { + if (it is BitmapDrawable) return it.bitmap + } + } + } + return null + } + + private fun loadDrawable(drawableName: String): Drawable? { + iconPackRes!!.getIdentifier(drawableName, "drawable", packageName).let { + return if (it > 0) ResourcesCompat.getDrawable(iconPackRes!!, it, null) + else null + } + } + + fun getDrawableIconForPackage(appPackageName: String?, defaultDrawable: Drawable?): Drawable? { + when (packageName) { + DEFAULT_ICON_PACK -> return defaultDrawable + else -> { + if (!loaded) load() + var componentName: String? = null + if (lActivity!!.packageManager.getLaunchIntentForPackage(appPackageName!!) != null) { + componentName = lActivity!!.packageManager.getLaunchIntentForPackage(appPackageName)!!.component.toString() + } + var drawable = packagesDrawables[componentName] + if (!drawable.isNullOrEmpty()) return loadDrawable(drawable) + else { + /* try to get a resource with the component filename */ + if (!componentName.isNullOrEmpty()) { + val start = componentName.indexOf("{") + 1 + val end = componentName.indexOf("}", start) + if (end > start) { + drawable = componentName.substring(start, end).lowercase(Locale.getDefault()).replace(".", "_").replace("/", "_") + try { + if (iconPackRes!!.getIdentifier(drawable, "drawable", packageName) > 0) return loadDrawable(drawable) + } catch (e: NullPointerException) { + settingsPrefs.edit().putString(KEY_ICON_PACK, DEFAULT_ICON_PACK).apply() + } + } + } + } + return defaultDrawable + } + } + } + + } +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/apps/SimpleGesture.kt b/app/src/main/kotlin/rasel/lunar/launcher/apps/SimpleGesture.kt new file mode 100644 index 0000000..f5b8a66 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/apps/SimpleGesture.kt @@ -0,0 +1,705 @@ +package rasel.lunar.launcher.apps + +import android.os.SystemClock +import android.util.Log +import android.view.MotionEvent +import android.view.View +import android.view.View.OnTouchListener +import kotlin.math.abs +import kotlin.math.pow +import kotlin.math.sqrt + +class GestureAnalyser @JvmOverloads constructor( + swipeSlopeIntolerance: Int = 3, + doubleTapMaxDelayMillis: Int = 500, + doubleTapMaxDownMillis: Int = 100 +) { + private val initialX = DoubleArray(5) + private val initialY = DoubleArray(5) + private val finalX = DoubleArray(5) + private val finalY = DoubleArray(5) + private val currentX = DoubleArray(5) + private val currentY = DoubleArray(5) + private val delX = DoubleArray(5) + private val delY = DoubleArray(5) + + private var numFingers = 0 + private var initialT: Long = 0 + private var finalT: Long = 0 + private var currentT: Long = 0 + + private var prevInitialT: Long = 0 + private var prevFinalT: Long = 0 + + private var swipeSlopeIntolerance = 3 + + private val doubleTapMaxDelayMillis: Long + private val doubleTapMaxDownMillis: Long + + init { + this.swipeSlopeIntolerance = swipeSlopeIntolerance + this.doubleTapMaxDownMillis = doubleTapMaxDownMillis.toLong() + this.doubleTapMaxDelayMillis = doubleTapMaxDelayMillis.toLong() + } + + fun trackGesture(ev: MotionEvent) { + val n = ev.pointerCount + for (i in 0 until n) { + initialX[i] = ev.getX(i).toDouble() + initialY[i] = ev.getY(i).toDouble() + } + numFingers = n + initialT = SystemClock.uptimeMillis() + } + + fun untrackGesture() { + numFingers = 0 + prevFinalT = SystemClock.uptimeMillis() + prevInitialT = initialT + } + + fun getGesture(ev: MotionEvent): GestureType { + var averageDistance = 0.0 + for (i in 0 until numFingers) { + finalX[i] = ev.getX(i).toDouble() + finalY[i] = ev.getY(i).toDouble() + delX[i] = finalX[i] - initialX[i] + delY[i] = finalY[i] - initialY[i] + + averageDistance += sqrt( + (finalX[i] - initialX[i]).pow(2.0) + (finalY[i] - initialY[i]).pow( + 2.0 + ) + ) + } + averageDistance /= numFingers.toDouble() + + finalT = SystemClock.uptimeMillis() + val gt = GestureType() + gt.gestureFlag = calcGesture() + gt.gestureDuration = finalT - initialT + gt.gestureDistance = averageDistance + return gt + } + + fun getOngoingGesture(ev: MotionEvent): Int { + for (i in 0 until numFingers) { + currentX[i] = ev.getX(i).toDouble() + currentY[i] = ev.getY(i).toDouble() + delX[i] = finalX[i] - initialX[i] + delY[i] = finalY[i] - initialY[i] + } + currentT = SystemClock.uptimeMillis() + return calcGesture() + } + + private fun calcGesture(): Int { + if (isDoubleTap) { + return DOUBLE_TAP_1 + } + + if (numFingers == 1) { + if ((-(delY[0])) > (swipeSlopeIntolerance * (abs( + delX[0] + ))) + ) { + return SWIPE_1_UP + } + + if (((delY[0])) > (swipeSlopeIntolerance * (abs( + delX[0] + ))) + ) { + return SWIPE_1_DOWN + } + + if ((-(delX[0])) > (swipeSlopeIntolerance * (abs( + delY[0] + ))) + ) { + return SWIPE_1_LEFT + } + + if (((delX[0])) > (swipeSlopeIntolerance * (abs( + delY[0] + ))) + ) { + return SWIPE_1_RIGHT + } + } + if (numFingers == 2) { + if (((-delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) && ((-delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + ) { + return SWIPE_2_UP + } + if (((delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) && ((delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + ) { + return SWIPE_2_DOWN + } + if (((-delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) && ((-delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + ) { + return SWIPE_2_LEFT + } + if (((delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) && ((delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + ) { + return SWIPE_2_RIGHT + } + if (finalFingDist(0, 1) > 2 * (initialFingDist(0, 1))) { + return UNPINCH_2 + } + if (finalFingDist(0, 1) < 0.5 * (initialFingDist(0, 1))) { + return PINCH_2 + } + } + if (numFingers == 3) { + if (((-delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) + && ((-delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + && ((-delY[2]) > (swipeSlopeIntolerance * abs( + delX[2] + ))) + ) { + return SWIPE_3_UP + } + if (((delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) + && ((delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + && ((delY[2]) > (swipeSlopeIntolerance * abs( + delX[2] + ))) + ) { + return SWIPE_3_DOWN + } + if (((-delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) + && ((-delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + && ((-delX[2]) > (swipeSlopeIntolerance * abs( + delY[2] + ))) + ) { + return SWIPE_3_LEFT + } + if (((delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) + && ((delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + && ((delX[2]) > (swipeSlopeIntolerance * abs( + delY[2] + ))) + ) { + return SWIPE_3_RIGHT + } + + if ((finalFingDist(0, 1) > 1.75 * (initialFingDist(0, 1))) + && (finalFingDist(1, 2) > 1.75 * (initialFingDist(1, 2))) + && (finalFingDist(2, 0) > 1.75 * (initialFingDist(2, 0))) + ) { + return UNPINCH_3 + } + if ((finalFingDist(0, 1) < 0.66 * (initialFingDist(0, 1))) + && (finalFingDist(1, 2) < 0.66 * (initialFingDist(1, 2))) + && (finalFingDist(2, 0) < 0.66 * (initialFingDist(2, 0))) + ) { + return PINCH_3 + } + } + if (numFingers == 4) { + if (((-delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) + && ((-delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + && ((-delY[2]) > (swipeSlopeIntolerance * abs( + delX[2] + ))) + && ((-delY[3]) > (swipeSlopeIntolerance * abs( + delX[3] + ))) + ) { + return SWIPE_4_UP + } + if (((delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) + && ((delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + && ((delY[2]) > (swipeSlopeIntolerance * abs( + delX[2] + ))) + && ((delY[3]) > (swipeSlopeIntolerance * abs( + delX[3] + ))) + ) { + return SWIPE_4_DOWN + } + if (((-delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) + && ((-delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + && ((-delX[2]) > (swipeSlopeIntolerance * abs( + delY[2] + ))) + && ((-delX[3]) > (swipeSlopeIntolerance * abs( + delY[3] + ))) + ) { + return SWIPE_4_LEFT + } + if (((delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) + && ((delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + && ((delX[2]) > (swipeSlopeIntolerance * abs( + delY[2] + ))) + && ((delX[3]) > (swipeSlopeIntolerance * abs( + delY[3] + ))) + ) { + return SWIPE_4_RIGHT + } + if ((finalFingDist(0, 1) > 1.5 * (initialFingDist(0, 1))) + && (finalFingDist(1, 2) > 1.5 * (initialFingDist(1, 2))) + && (finalFingDist(2, 3) > 1.5 * (initialFingDist(2, 3))) + && (finalFingDist(3, 0) > 1.5 * (initialFingDist(3, 0))) + ) { + return UNPINCH_4 + } + if ((finalFingDist(0, 1) < 0.8 * (initialFingDist(0, 1))) + && (finalFingDist(1, 2) < 0.8 * (initialFingDist(1, 2))) + && (finalFingDist(2, 3) < 0.8 * (initialFingDist(2, 3))) + && (finalFingDist(3, 0) < 0.8 * (initialFingDist(3, 0))) + ) { + return PINCH_4 + } + } + return 0 + } + + private fun initialFingDist(fingNum1: Int, fingNum2: Int): Double { + return sqrt( + (initialX[fingNum1] - initialX[fingNum2]).pow(2.0) + (initialY[fingNum1] - initialY[fingNum2]).pow( + 2.0 + ) + ) + } + + private fun finalFingDist(fingNum1: Int, fingNum2: Int): Double { + return sqrt( + (finalX[fingNum1] - finalX[fingNum2]).pow(2.0) + (finalY[fingNum1] - finalY[fingNum2]).pow( + 2.0 + ) + ) + } + + val isDoubleTap: Boolean + get() = if (initialT - prevFinalT < doubleTapMaxDelayMillis && finalT - initialT < doubleTapMaxDownMillis && prevFinalT - prevInitialT < doubleTapMaxDownMillis) { + true + } else { + false + } + + inner class GestureType { + var gestureFlag: Int = 0 + var gestureDuration: Long = 0 + + var gestureDistance: Double = 0.0 + } + + + companion object { + const val DEBUG: Boolean = true + + // Finished gestures flags + const val SWIPE_1_UP: Int = 11 + const val SWIPE_1_DOWN: Int = 12 + const val SWIPE_1_LEFT: Int = 13 + const val SWIPE_1_RIGHT: Int = 14 + const val SWIPE_2_UP: Int = 21 + const val SWIPE_2_DOWN: Int = 22 + const val SWIPE_2_LEFT: Int = 23 + const val SWIPE_2_RIGHT: Int = 24 + const val SWIPE_3_UP: Int = 31 + const val SWIPE_3_DOWN: Int = 32 + const val SWIPE_3_LEFT: Int = 33 + const val SWIPE_3_RIGHT: Int = 34 + const val SWIPE_4_UP: Int = 41 + const val SWIPE_4_DOWN: Int = 42 + const val SWIPE_4_LEFT: Int = 43 + const val SWIPE_4_RIGHT: Int = 44 + const val PINCH_2: Int = 25 + const val UNPINCH_2: Int = 26 + const val PINCH_3: Int = 35 + const val UNPINCH_3: Int = 36 + const val PINCH_4: Int = 45 + const val UNPINCH_4: Int = 46 + + const val DOUBLE_TAP_1: Int = 107 + + //Ongoing gesture flags + const val SWIPING_1_UP: Int = 101 + const val SWIPING_1_DOWN: Int = 102 + const val SWIPING_1_LEFT: Int = 103 + const val SWIPING_1_RIGHT: Int = 104 + const val SWIPING_2_UP: Int = 201 + const val SWIPING_2_DOWN: Int = 202 + const val SWIPING_2_LEFT: Int = 203 + const val SWIPING_2_RIGHT: Int = 204 + const val PINCHING: Int = 205 + const val UNPINCHING: Int = 206 + private const val TAG = "GestureAnalyser" + } +} + +class SimpleFingerGestures : OnTouchListener { + private var debug = true + var consumeTouchEvents: Boolean = false + + protected var tracking: BooleanArray = booleanArrayOf(false, false, false, false, false) + private var ga: GestureAnalyser + private var onFingerGestureListener: OnFingerGestureListener? = null + + + /** + * Constructor that creates an internal [in.championswimmer.sfg.lib.GestureAnalyser] object as well + */ + constructor() { + ga = GestureAnalyser() + } + + constructor( + swipeSlopeIntolerance: Int, + doubleTapMaxDelayMillis: Int, + doubleTapMaxDownMillis: Int + ) { + ga = GestureAnalyser(swipeSlopeIntolerance, doubleTapMaxDelayMillis, doubleTapMaxDownMillis) + } + + fun setDebug(debug: Boolean) { + this.debug = debug + } + + constructor(omfgl: OnFingerGestureListener?) { + ga = GestureAnalyser() + setOnFingerGestureListener(omfgl) + } + + /** + * Register a callback to be invoked when multi-finger gestures take place + * + * + *

+ * + * + * For the callbacks implemented via this, check the interface [in.championswimmer.sfg.lib.SimpleFingerGestures.OnFingerGestureListener] + * + * + * @param omfgl The callback that will run + */ + fun setOnFingerGestureListener(omfgl: OnFingerGestureListener?) { + onFingerGestureListener = omfgl + } + + + override fun onTouch(view: View, ev: MotionEvent): Boolean { + if (debug) Log.d(TAG, "onTouch") + when (ev.action and MotionEvent.ACTION_MASK) { + MotionEvent.ACTION_DOWN -> { + if (debug) Log.d(TAG, "ACTION_DOWN") + startTracking(0) + ga.trackGesture(ev) + return consumeTouchEvents + } + + MotionEvent.ACTION_UP -> { + if (debug) Log.d(TAG, "ACTION_UP") + if (tracking[0]) { + doCallBack(ga.getGesture(ev)) + } + stopTracking(0) + ga.untrackGesture() + return consumeTouchEvents + } + + MotionEvent.ACTION_POINTER_DOWN -> { + if (debug) Log.d(TAG, "ACTION_POINTER_DOWN" + " " + "num" + ev.pointerCount) + startTracking(ev.pointerCount - 1) + ga.trackGesture(ev) + return consumeTouchEvents + } + + MotionEvent.ACTION_POINTER_UP -> { + if (debug) Log.d(TAG, "ACTION_POINTER_UP" + " " + "num" + ev.pointerCount) + if (tracking[1]) { + doCallBack(ga.getGesture(ev)) + } + stopTracking(ev.pointerCount - 1) + ga.untrackGesture() + return consumeTouchEvents + } + + MotionEvent.ACTION_CANCEL -> { + if (debug) Log.d(TAG, "ACTION_CANCEL") + return true + } + + MotionEvent.ACTION_MOVE -> { + if (debug) Log.d(TAG, "ACTION_MOVE") + return consumeTouchEvents + } + } + return consumeTouchEvents + } + + private fun doCallBack(mGt: GestureAnalyser.GestureType) { + when (mGt.gestureFlag) { + GestureAnalyser.SWIPE_1_UP -> onFingerGestureListener!!.onSwipeUp( + 1, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_1_DOWN -> onFingerGestureListener!!.onSwipeDown( + 1, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_1_LEFT -> onFingerGestureListener!!.onSwipeLeft( + 1, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_1_RIGHT -> onFingerGestureListener!!.onSwipeRight( + 1, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_2_UP -> onFingerGestureListener!!.onSwipeUp( + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_2_DOWN -> onFingerGestureListener!!.onSwipeDown( + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_2_LEFT -> onFingerGestureListener!!.onSwipeLeft( + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_2_RIGHT -> onFingerGestureListener!!.onSwipeRight( + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.PINCH_2 -> onFingerGestureListener!!.onPinch( + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.UNPINCH_2 -> onFingerGestureListener!!.onUnpinch( + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_3_UP -> onFingerGestureListener!!.onSwipeUp( + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_3_DOWN -> onFingerGestureListener!!.onSwipeDown( + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_3_LEFT -> onFingerGestureListener!!.onSwipeLeft( + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_3_RIGHT -> onFingerGestureListener!!.onSwipeRight( + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.PINCH_3 -> onFingerGestureListener!!.onPinch( + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.UNPINCH_3 -> onFingerGestureListener!!.onUnpinch( + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_4_UP -> onFingerGestureListener!!.onSwipeUp( + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_4_DOWN -> onFingerGestureListener!!.onSwipeDown( + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_4_LEFT -> onFingerGestureListener!!.onSwipeLeft( + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_4_RIGHT -> onFingerGestureListener!!.onSwipeRight( + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.PINCH_4 -> onFingerGestureListener!!.onPinch( + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.UNPINCH_4 -> { + onFingerGestureListener!!.onUnpinch(4, mGt.gestureDuration, mGt.gestureDistance) + onFingerGestureListener!!.onDoubleTap(1) + } + + GestureAnalyser.DOUBLE_TAP_1 -> onFingerGestureListener!!.onDoubleTap(1) + } + } + + private fun startTracking(nthPointer: Int) { + for (i in 0..nthPointer) { + tracking[i] = true + } + } + + private fun stopTracking(nthPointer: Int) { + for (i in nthPointer until tracking.size) { + tracking[i] = false + } + } + + + /** + * Interface definition for the callback to be invoked when 2-finger gestures are performed + */ + interface OnFingerGestureListener { + /** + * Called when user swipes **up** with two fingers + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onSwipeUp(fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user swipes **down** with two fingers + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onSwipeDown(fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user swipes **left** with two fingers + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onSwipeLeft(fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user swipes **right** with two fingers + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onSwipeRight(fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user **pinches** with two fingers (bring together) + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onPinch(fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user **un-pinches** with two fingers (take apart) + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onUnpinch(fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + fun onDoubleTap(fingers: Int): Boolean + } + + companion object { + // Will see if these need to be used. For now just returning duration in milliS + const val GESTURE_SPEED_SLOW: Long = 1500 + const val GESTURE_SPEED_MEDIUM: Long = 1000 + const val GESTURE_SPEED_FAST: Long = 500 + private const val TAG = "SimpleFingerGestures" + } +} \ No newline at end of file diff --git a/app/src/main/kotlin/rasel/lunar/launcher/feeds/Feeds.kt b/app/src/main/kotlin/rasel/lunar/launcher/feeds/Feeds.kt new file mode 100644 index 0000000..d6119a2 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/feeds/Feeds.kt @@ -0,0 +1,356 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.feeds + +import android.R.attr.* +import android.app.Activity.RESULT_CANCELED +import android.app.Activity.RESULT_OK +import android.appwidget.AppWidgetManager +import android.content.Intent +import android.content.SharedPreferences +import android.os.* +import android.view.* +import androidx.activity.result.contract.ActivityResultContracts +import androidx.appcompat.widget.LinearLayoutCompat.LayoutParams +import androidx.appcompat.widget.PopupMenu +import androidx.core.app.JobIntentService.enqueueWork +import androidx.fragment.app.Fragment +import androidx.lifecycle.Lifecycle +import androidx.lifecycle.lifecycleScope +import androidx.lifecycle.repeatOnLifecycle +import com.google.android.material.button.MaterialButtonToggleGroup +import kotlinx.coroutines.* +import rasel.lunar.launcher.LauncherActivity.Companion.appWidgetHost +import rasel.lunar.launcher.LauncherActivity.Companion.appWidgetManager +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.FeedsBinding +import rasel.lunar.launcher.feeds.rss.Rss +import rasel.lunar.launcher.feeds.rss.RssAdapter +import rasel.lunar.launcher.feeds.rss.RssService +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_RSS_URL +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_WIDGET_HEIGHTS +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_WIDGET_IDS +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_WIDGETS +import rasel.lunar.launcher.helpers.Constants.Companion.RSS_ITEMS +import rasel.lunar.launcher.helpers.Constants.Companion.RSS_RECEIVER +import rasel.lunar.launcher.helpers.Constants.Companion.SEPARATOR +import rasel.lunar.launcher.helpers.Constants.Companion.requestCreateWidget +import rasel.lunar.launcher.helpers.Constants.Companion.requestPickWidget +import rasel.lunar.launcher.helpers.Constants.Companion.rssJobId +import rasel.lunar.launcher.helpers.UniUtils.Companion.isNetworkAvailable +import java.util.* + + +internal class Feeds : Fragment() { + + private lateinit var binding: FeedsBinding + private val requestCodeString = "requestCode" + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = FeedsBinding.inflate(inflater, container, false) + + updateWidgets() + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + expandCollapse() + systemInfo() + } + + override fun onResume() { + super.onResume() + registerForContextMenu(binding.widgetContainer) + } + + override fun onPause() { + super.onPause() + unregisterForContextMenu(binding.widgetContainer) + } + + override fun onCreateContextMenu(menu: ContextMenu, v: View, menuInfo: ContextMenu.ContextMenuInfo?) { + super.onCreateContextMenu(menu, v, menuInfo) + menu.clearHeader() + lActivity!!.menuInflater.inflate(R.menu.add_widget, menu) + } + + override fun onContextItemSelected(item: MenuItem): Boolean { + if (item.itemId == R.id.add_widget) selectWidget() + return super.onContextItemSelected(item) + } + + /* control view's expand-collapse actions */ + private fun expandCollapse() { + binding.expandableButtons.addOnButtonCheckedListener { _: MaterialButtonToggleGroup?, checkedId: Int, isChecked: Boolean -> + if (isChecked) { + when (checkedId) { + binding.expandRss.id -> { + binding.feedsSysInfos.expandableSystemInfo.collapse() + binding.feedsRss.expandableRss.expand() + startService() + } + binding.expandSystemInfo.id -> { + binding.feedsRss.expandableRss.collapse() + binding.feedsSysInfos.expandableSystemInfo.expand() + } + } + } else { + when (checkedId) { + binding.expandRss.id -> binding.feedsRss.expandableRss.collapse() + binding.expandSystemInfo.id -> binding.feedsSysInfos.expandableSystemInfo.collapse() + } + } + } + } + + /* start rss service if network is active and rss url is not empty */ + private fun startService() { + val rssUrl = lActivity!!.getSharedPreferences(PREFS_SETTINGS, 0) + .getString(KEY_RSS_URL, "") + when { + isNetworkAvailable && !rssUrl.isNullOrEmpty() -> { + Intent(lActivity!!, RssService::class.java) + .putExtra(RSS_RECEIVER, resultReceiver).let { + enqueueWork(lActivity!!, RssService::class.java, rssJobId, it) + } + } + else -> resumeService() + } + } + + /* retry to start rss service */ + private fun resumeService() { + binding.feedsRss.apply { + rss.visibility = View.GONE + loading.visibility = View.GONE + refresh.visibility = View.VISIBLE + refresh.setOnClickListener { startService() } + } + } + + /* rss service's result receiver */ + @Suppress("UNCHECKED_CAST") + private val resultReceiver: ResultReceiver = object : ResultReceiver(Handler(Looper.getMainLooper())) { + override fun onReceiveResult(resultCode: Int, resultData: Bundle) { + when (val items = resultData.getSerializable(RSS_ITEMS) as List?) { + null -> resumeService() + else -> { + binding.feedsRss.apply { + rss.adapter = RssAdapter(items, requireContext()) + refresh.visibility = View.GONE + loading.visibility = View.GONE + rss.visibility = View.VISIBLE + } + } + } + } + } + + private fun systemInfo() { + viewLifecycleOwner.lifecycleScope.launch { + repeatOnLifecycle(Lifecycle.State.RESUMED) { + SystemStats().apply { + intStorage(binding.feedsSysInfos.intParent) + extStorage(binding.feedsSysInfos.extParent) + while (isActive) { + ram(binding.feedsSysInfos.ramParent) + cpu(binding.feedsSysInfos.cpuParent) + misc(binding.feedsSysInfos.misc) + delay(1000) + } + } + } + } + } + + private fun selectWidget() { + Intent(AppWidgetManager.ACTION_APPWIDGET_PICK).apply { + putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetHost?.allocateAppWidgetId()) + putParcelableArrayListExtra(AppWidgetManager.EXTRA_CUSTOM_INFO, ArrayList()) + putParcelableArrayListExtra(AppWidgetManager.EXTRA_CUSTOM_EXTRAS, ArrayList()) + putExtra(requestCodeString, requestPickWidget) + }.let { widgetPicker.launch(it) } + } + + private val widgetPicker = + registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> + val data = result.data + val appWidgetId = data?.getIntExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, -1) + if (result.resultCode == RESULT_OK) { + when (data?.getIntExtra(requestCodeString, requestPickWidget)) { + requestPickWidget -> configureWidget(appWidgetId!!) + requestCreateWidget -> createWidget(appWidgetId!!, null) + } + } else if (result.resultCode == RESULT_CANCELED && data != null) { + if (appWidgetId != -1) appWidgetHost?.deleteAppWidgetId(appWidgetId!!) + } + } + + private fun configureWidget(appWidgetId: Int) { + when (val appWidgetConfig = appWidgetManager!!.getAppWidgetInfo(appWidgetId).configure) { + null -> createWidget(appWidgetId, null) + else -> { + Intent(AppWidgetManager.ACTION_APPWIDGET_CONFIGURE).apply { + component = appWidgetConfig + putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId) + putExtra(requestCodeString, requestCreateWidget) + }.let { + try { widgetPicker.launch(it) } + catch (e: Exception) { e.printStackTrace() } + } + } + } + } + + private fun createWidget(appWidgetId: Int, height: Int?) { + if (appWidgetId == -1) return + + val appWidgetInfo = appWidgetManager!!.getAppWidgetInfo(appWidgetId) + val params: LayoutParams? + + when (height) { + null -> { + params = LayoutParams(LayoutParams.MATCH_PARENT, appWidgetInfo.minHeight) + val updatedIds = splitWidgetIds.plus("$appWidgetId") + val updatedHeights = splitWidgetHeights.plus("${appWidgetInfo.minHeight}") + saveWidgetData(updatedIds, updatedHeights) + } + else -> params = LayoutParams(LayoutParams.MATCH_PARENT, height) + } + + (appWidgetHost?.createView(lActivity!!.applicationContext, appWidgetId, appWidgetInfo) as WidgetHostView) + .apply { + setAppWidget(appWidgetId, appWidgetInfo) + }.let { + binding.widgetContainer.addView(it, params) + widgetMenu(it) + } + } + + private fun updateWidgets() { + if (splitWidgetIds.size > 0) { + viewLifecycleOwner.lifecycleScope.launch { + binding.widgetContainer.removeAllViews() + splitWidgetIds.indices.forEach { i: Int -> + createWidget(splitWidgetIds[i]!!.int(), splitWidgetHeights[i]!!.int()) + } + } + } + } + + private fun widgetMenu(hostView: WidgetHostView) { + val appWidgetId = hostView.appWidgetId + hostView.setOnLongClickListener { + PopupMenu(requireContext(), it, Gravity.END).apply { + menuInflater.inflate(R.menu.widget_menu, this.menu) + show() + setOnMenuItemClickListener { menuItem -> + when (menuItem.itemId) { + R.id.move_up -> moveWidget(appWidgetId, true) + R.id.move_down -> moveWidget(appWidgetId, false) + R.id.increase_height -> resizeWidget(appWidgetId, true) + R.id.decrease_height -> resizeWidget(appWidgetId, false) + R.id.delete_widget -> removeWidget(it as WidgetHostView) + } + false + } + } + true + } + } + + private fun moveWidget(widgetId: Int, moveUp: Boolean) { + val tempIds = splitWidgetIds + val tempHeights = splitWidgetHeights + + splitWidgetIds.indexOf(widgetId.toString()).let { i -> + when { + moveUp && i > 0 -> { + tempIds.swap(i-1, i) + tempHeights.swap(i-1, i) + } + !moveUp && i < splitWidgetIds.size - 1 -> { + tempIds.swap(i, i+1) + tempHeights.swap(i, i+1) + } + else -> return + } + } + + saveWidgetData(tempIds, tempHeights) + updateWidgets() + } + + private fun resizeWidget(widgetId: Int, shouldAdd: Boolean) { + val tempList = splitWidgetHeights + + splitWidgetIds.indexOf(widgetId.toString()).let { i -> + tempList[i] = when (shouldAdd) { + true -> (splitWidgetHeights[i]!!.int().plus(50)).toString() + false -> (splitWidgetHeights[i]!!.int().minus(50)).toString() + } + } + + widgetPref.edit().putString(KEY_WIDGET_HEIGHTS, tempList.joinToString(separator = SEPARATOR)).apply() + updateWidgets() + } + + private fun removeWidget(hostView: WidgetHostView) { + hostView.let { v -> + appWidgetHost?.deleteAppWidgetId(v.appWidgetId) + binding.widgetContainer.removeView(v) + + splitWidgetIds.indexOf(v.appWidgetId.toString()).let { i -> + saveWidgetData(splitWidgetIds.minus(splitWidgetIds[i]), splitWidgetHeights.minus(splitWidgetHeights[i])) + } + } + } + + private fun saveWidgetData(idList: List, heightList: List) { + widgetPref.edit() + .putString(KEY_WIDGET_IDS, idList.joinToString(separator = SEPARATOR)) + .putString(KEY_WIDGET_HEIGHTS, heightList.joinToString(separator = SEPARATOR)) + .apply() + } + + private val widgetPref: SharedPreferences get() = lActivity!!.getSharedPreferences(PREFS_WIDGETS, 0) + private val widgetIds: String? get() = widgetPref.getString(KEY_WIDGET_IDS, "") + private val widgetHeights: String? get() = widgetPref.getString(KEY_WIDGET_HEIGHTS, "") + private val splitWidgetIds: MutableList get() = widgetIds!!.split(SEPARATOR).toMutableList() + private val splitWidgetHeights: MutableList get() = widgetHeights!!.split(SEPARATOR).toMutableList() + + private fun MutableList.swap(index1: Int, index2: Int){ + val temp = this[index1] + this[index1] = this[index2] + this[index2] = temp + } + + private fun String.int() : Int { + return try { + this.toInt() + } catch (e: Exception) { + -1 + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/feeds/SystemStats.kt b/app/src/main/kotlin/rasel/lunar/launcher/feeds/SystemStats.kt new file mode 100644 index 0000000..de4de5b --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/feeds/SystemStats.kt @@ -0,0 +1,297 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.feeds + +import android.annotation.SuppressLint +import android.app.ActivityManager +import android.content.Context +import android.content.Intent +import android.content.IntentFilter +import android.os.* +import android.text.Html +import android.view.LayoutInflater +import android.view.View +import androidx.appcompat.widget.LinearLayoutCompat +import androidx.core.content.ContextCompat +import com.google.android.material.progressindicator.LinearProgressIndicator +import com.google.android.material.textview.MaterialTextView +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.ChildSysInfoBinding +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_TEMP_UNIT +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import rasel.lunar.launcher.helpers.UniUtils.Companion.isNetworkAvailable +import java.io.BufferedReader +import java.io.File +import java.io.InputStreamReader +import java.io.RandomAccessFile +import java.net.NetworkInterface +import java.util.* +import java.util.concurrent.TimeUnit +import kotlin.math.roundToInt + + +internal class SystemStats { + + private val toGb = 1.07374182E9f + private fun string(id: Int) : String { return lActivity!!.getString(id) } + private val inflater : LayoutInflater get() { return lActivity!!.layoutInflater } + + /* ram info */ + fun ram(ramParent: LinearLayoutCompat) { + val parent = ramParent.findViewById(R.id.childSysInfo) + val indicator = parent.findViewById(R.id.indicator) + val textView = parent.findViewById(R.id.textView) + + val totalMem = memoryInfo.totalMem / toGb + val availMem = memoryInfo.availMem / toGb + val usedMem = totalMem - availMem + + indicator.progress = (usedMem * 100 / totalMem).toInt() + textView.text = Html.fromHtml( + "${string(R.string.ram)}
" + + "${string(R.string.total)}: ${String.format("%.03f", totalMem)} GB | " + + "${string(R.string.used)}: ${String.format("%.03f", usedMem)} GB | " + + "${string(R.string.free)}: ${String.format("%.03f", availMem)} GB", + Html.FROM_HTML_MODE_COMPACT) + } + + + /* cpu and battery info */ + fun cpu(cpuParent: LinearLayoutCompat) { + val parent = cpuParent.findViewById(R.id.childSysInfo) + val indicator = parent.findViewById(R.id.indicator) + val textView = parent.findViewById(R.id.textView) + + var cpuTemp = 0.0f + try { + val cpuTempProcess = Runtime.getRuntime().exec("cat sys/class/thermal/thermal_zone0/temp") + cpuTempProcess.waitFor() + val cpuTempReader = BufferedReader(InputStreamReader(cpuTempProcess.inputStream)) + cpuTemp = cpuTempReader.readLine().toFloat() / 1000.0f + } catch (exception: Exception) { + exception.printStackTrace() + } + + val finalCpuTemp = when (tempUnit) { + 0 -> "$cpuTemp ºC" + 1 -> "${String.format("%.01f", cpuTemp * 1.8 + 32)} ºF" + else -> "$cpuTemp ºC" + } + + val cpuFreq = "${String.format("%.02f", minCpuFrequency.toFloat() / 1000)} - " + + "${String.format("%.02f", maxCpuFrequency.toFloat() / 1000)} GHz" + + indicator.progress = when (maxCpuFrequency) { + 0 -> 30 + else -> frequencyOfCore * 100 / maxCpuFrequency + } + textView.text = Html.fromHtml( + "${string(R.string.cpu)}
" + + "${string(R.string.temperature)}: $finalCpuTemp | " + + "${string(R.string.frequency)}: $cpuFreq", + Html.FROM_HTML_MODE_COMPACT) + } + + + /* internal storage */ + fun intStorage(intParent: LinearLayoutCompat) { + val parent = intParent.findViewById(R.id.childSysInfo) + val indicator = parent.findViewById(R.id.indicator) + val textView = parent.findViewById(R.id.textView) + + val intPath = Environment.getExternalStorageDirectory().absolutePath + val statFs = StatFs(intPath) + val totalStorage = statFs.blockCountLong * statFs.blockSizeLong / toGb + val availStorage = statFs.availableBlocksLong * statFs.blockSizeLong / toGb + val usedStorage = totalStorage - availStorage + + indicator.progress = (usedStorage * 100 / totalStorage).toInt() + textView.text = Html.fromHtml( + "${intPath + File.separator}
" + + "${string(R.string.total)}: ${String.format("%.03f", totalStorage)} GB | " + + "${string(R.string.used)}: ${String.format("%.03f", usedStorage)} GB | " + + "${string(R.string.free)}: ${String.format("%.03f", availStorage)} GB", + Html.FROM_HTML_MODE_COMPACT) + } + + + /* external storage */ + fun extStorage(extParent: LinearLayoutCompat) { + val extStorages = ContextCompat.getExternalFilesDirs(lActivity!!, null) + /* sd card is available */ + if (extStorages.size > 1) { + extParent.removeAllViews() + for (extStorage in extStorages) { + if (extStorage != null) { + val binding = ChildSysInfoBinding.inflate(inflater) + extParent.addView(binding.root) + + val statFs = StatFs(extStorage.path) + val blockSize = statFs.blockSizeLong + val totalStorage = statFs.blockCountLong * blockSize / toGb + val availStorage = statFs.availableBlocksLong * blockSize / toGb + val usedStorage = totalStorage - availStorage + + val sdcardPaths = extStorage.path.split(File.separator).toTypedArray() + val sdPath = File.separator + sdcardPaths[1] + File.separator + sdcardPaths[2] + File.separator + + binding.indicator.progress = (usedStorage * 100 / totalStorage).toInt() + binding.textView.text = Html.fromHtml( + "$sdPath
" + + "${string(R.string.total)}: ${String.format("%.03f", totalStorage)} GB | " + + "${string(R.string.used)}: ${String.format("%.03f", usedStorage)} GB | " + + "${string(R.string.free)}: ${String.format("%.03f", availStorage)} GB", + Html.FROM_HTML_MODE_COMPACT) + } + } + } else { + extParent.visibility = View.GONE + } + } + + + @SuppressLint("SetTextI18n") + fun misc(misc: MaterialTextView) { + val totalRootStorage = StatFs(Environment.getRootDirectory().path).blockCountLong * + StatFs(Environment.getRootDirectory().path).blockSizeLong / toGb + + val batteryIntent = lActivity!!.registerReceiver(null, IntentFilter(Intent.ACTION_BATTERY_CHANGED)) + val batteryTemp = batteryIntent!!.getIntExtra(BatteryManager.EXTRA_TEMPERATURE, 0).toFloat() / 10 + val voltage = batteryIntent.getIntExtra(BatteryManager.EXTRA_VOLTAGE, 0).toFloat() / 1000 + + val finalBatteryTemp = when (tempUnit) { + 0 -> "$batteryTemp ºC" + 1 -> "${String.format("%.01f", batteryTemp * 1.8 + 32)} ºF" + else -> "$batteryTemp ºC" + } + + misc.text = + "${longToString(SystemClock.elapsedRealtime())}\n" + + "${longToString(SystemClock.uptimeMillis())}\n" + + "${String.format("%.02f", memoryInfo.threshold / 1048576f)} MB\n" + + "$finalBatteryTemp\n" + + "$voltage V\n" + + "${String.format("%.03f", totalRootStorage)} GB\n" + + "${getIpAddress(true)}\n" + + getIpAddress(false) + } + + + private val memoryInfo: ActivityManager.MemoryInfo get() { + val memoryInfo = ActivityManager.MemoryInfo() + val activityManager = lActivity!!.getSystemService(Context.ACTIVITY_SERVICE) as ActivityManager + activityManager.getMemoryInfo(memoryInfo) + return memoryInfo + } + + private val tempUnit: Int get() = + lActivity!!.getSharedPreferences(PREFS_SETTINGS, 0).getInt(KEY_TEMP_UNIT, 0) + + private fun longToString(long: Long) : String { + var seconds = (long.toDouble() / 1000).roundToInt() + val hours = TimeUnit.SECONDS.toHours(seconds.toLong()) + if (hours > 0) seconds -= TimeUnit.HOURS.toSeconds(hours).toInt() + val minutes = if (seconds > 0) TimeUnit.SECONDS.toMinutes(seconds.toLong()) else 0 + if (minutes > 0) seconds -= TimeUnit.MINUTES.toSeconds(minutes).toInt() + return if (hours > 0) String.format("%02d:%02d:%02d", hours, minutes, seconds) + else String.format("%02d:%02d", minutes, seconds) + } + + /* frequency of core */ + private val frequencyOfCore: Int get() { + var currentFReq = 0 + try { + val currentFreq: Double + val readerCurFreq = + RandomAccessFile("/sys/devices/system/cpu/cpu" + 0 + "/cpufreq/scaling_cur_freq", "r") + val curFreq = readerCurFreq.readLine() + currentFreq = curFreq.toDouble() / 1000 + readerCurFreq.close() + currentFReq = currentFreq.toInt() + println("$currentFReq----------------------------------------------------") + } catch (ex: java.lang.Exception) { + ex.printStackTrace() + } + return currentFReq + } + + /* minimum cpu frequency */ + private val minCpuFrequency: Int get() { + var minFreq = -1 + try { + val randomAccessFile = + RandomAccessFile("/sys/devices/system/cpu/cpu" + 0 + "/cpufreq/cpuinfo_min_freq", "r") + while (true) { + val line = randomAccessFile.readLine() ?: break + val timeInState = line.toInt() + if (timeInState > 0) { + val freq = timeInState / 1000 + if (freq > minFreq) { + minFreq = freq + } + } + } + } catch (exception: java.lang.Exception) { + exception.printStackTrace() + } + return minFreq + } + + /* maximum cpu frequency */ + private val maxCpuFrequency: Int get() { + var currentFReq = 0 + try { + val currentFreq: Double + val readerCurFreq = + RandomAccessFile("/sys/devices/system/cpu/cpu" + 0 + "/cpufreq/cpuinfo_max_freq", "r") + val curFreq = readerCurFreq.readLine() + currentFreq = curFreq.toDouble() / 1000 + readerCurFreq.close() + currentFReq = currentFreq.toInt() + } catch (exception: java.lang.Exception) { + exception.printStackTrace() + } + return currentFReq + } + + private fun getIpAddress(getIPv4: Boolean): String { + try { + for (interFace in Collections.list(NetworkInterface.getNetworkInterfaces())) { + for (address in Collections.list(interFace.inetAddresses)) { + if (!address.isLoopbackAddress) { + val addressStr = address.hostAddress + val isIPv4 = addressStr!!.indexOf(':') < 0 + if (getIPv4) { + if (isIPv4) return addressStr + } else { + if (!isIPv4 && isNetworkAvailable) { + val endIndex = addressStr.indexOf('%') + return if (endIndex < 0) addressStr + else addressStr.substring(0, endIndex) + } + } + } + } + } + } catch (e: java.lang.Exception) { e.printStackTrace() } + return string(R.string.na) + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/feeds/WidgetHost.kt b/app/src/main/kotlin/rasel/lunar/launcher/feeds/WidgetHost.kt new file mode 100644 index 0000000..cf9fe9d --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/feeds/WidgetHost.kt @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2009 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package rasel.lunar.launcher.feeds + +import android.appwidget.AppWidgetHost +import android.appwidget.AppWidgetHostView +import android.appwidget.AppWidgetProviderInfo +import android.content.Context + + +internal class WidgetHost(context: Context, hostId: Int) : AppWidgetHost(context, hostId) { + + override fun onCreateView(context: Context?, appWidgetId: Int, appWidget: AppWidgetProviderInfo? + ): AppWidgetHostView = WidgetHostView(context!!) + + override fun stopListening() { + super.stopListening() + clearViews() + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/feeds/WidgetHostView.kt b/app/src/main/kotlin/rasel/lunar/launcher/feeds/WidgetHostView.kt new file mode 100644 index 0000000..847f2d6 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/feeds/WidgetHostView.kt @@ -0,0 +1,92 @@ +/* + * Copyright (C) 2009 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package rasel.lunar.launcher.feeds + +import android.appwidget.AppWidgetHostView +import android.content.Context +import android.view.MotionEvent +import android.view.ViewConfiguration +import kotlin.math.abs + + +internal class WidgetHostView(context: Context) : AppWidgetHostView(context) { + + private var hasPerformedLongPress = false + private var pendingCheckForLongPress: CheckForLongPress? = null + private var xPos = 0f + private var yPos = 0f + + override fun onInterceptTouchEvent(ev: MotionEvent): Boolean { + // Consume any touch events for ourselves after longpress is triggered + if (hasPerformedLongPress) { + hasPerformedLongPress = false + return true + } + + // Watch for long press events at this level to make sure + // users can always pick up this widget + when (ev.action) { + MotionEvent.ACTION_DOWN -> { + postCheckForLongClick() + xPos = ev.x + yPos = ev.y + } + MotionEvent.ACTION_MOVE -> { + if (abs(ev.x - xPos) > 5 || abs(ev.y - yPos) > 5) { + hasPerformedLongPress = false + if (pendingCheckForLongPress != null) removeCallbacks(pendingCheckForLongPress) + } + } + MotionEvent.ACTION_UP, MotionEvent.ACTION_CANCEL -> { + hasPerformedLongPress = false + if (pendingCheckForLongPress != null) removeCallbacks(pendingCheckForLongPress) + } + } + + // Otherwise continue letting touch events fall through to children + return false + } + + internal inner class CheckForLongPress : Runnable { + private var originalWindowAttachCount = 0 + override fun run() { + if (parent != null && hasWindowFocus() + && originalWindowAttachCount == windowAttachCount && !hasPerformedLongPress + ) { + if (performLongClick()) hasPerformedLongPress = true + } + } + + fun rememberWindowAttachCount() { originalWindowAttachCount = windowAttachCount } + } + + private fun postCheckForLongClick() { + hasPerformedLongPress = false + if (pendingCheckForLongPress == null) pendingCheckForLongPress = CheckForLongPress() + pendingCheckForLongPress!!.rememberWindowAttachCount() + postDelayed(pendingCheckForLongPress, ViewConfiguration.getLongPressTimeout().toLong()) + } + + override fun cancelLongPress() { + super.cancelLongPress() + hasPerformedLongPress = false + if (pendingCheckForLongPress != null) removeCallbacks(pendingCheckForLongPress) + } + + override fun getDescendantFocusability(): Int = FOCUS_BLOCK_DESCENDANTS + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RSS.kt b/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RSS.kt new file mode 100644 index 0000000..d665515 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RSS.kt @@ -0,0 +1,25 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.feeds.rss + + +internal class Rss( + val title: String, + val link: String +) diff --git a/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssAdapter.kt b/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssAdapter.kt new file mode 100644 index 0000000..d76a0a0 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssAdapter.kt @@ -0,0 +1,85 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.feeds.rss + +import androidx.recyclerview.widget.RecyclerView +import android.view.ViewGroup +import android.view.LayoutInflater +import android.annotation.SuppressLint +import android.content.Context +import android.view.Gravity +import androidx.core.content.ContextCompat +import android.graphics.Typeface +import android.util.TypedValue +import android.content.res.ColorStateList +import android.net.Uri +import androidx.browser.customtabs.CustomTabsIntent +import rasel.lunar.launcher.databinding.ListItemBinding +import rasel.lunar.launcher.helpers.UniUtils.Companion.getColorResId + + +internal class RssAdapter(private val items: List, private val context: Context) : + RecyclerView.Adapter() { + + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RssViewHolder { + val binding = ListItemBinding.inflate(LayoutInflater.from(parent.context), parent, false) + return RssViewHolder(binding) + } + + override fun getItemCount(): Int = items.size + + @SuppressLint("SetTextI18n") + override fun onBindViewHolder(holder: RssViewHolder, position: Int) { + /* customize the first item */ + if (position == 0) { + holder.view.itemText.apply { + text = "\u22B6 " + items[position].title + " \u22B7" + gravity = Gravity.CENTER + setTextColor(ContextCompat.getColor(context, + getColorResId(context, com.google.android.material.R.attr.colorPrimary))) + setTypeface(null, Typeface.BOLD) + textSize = 18f + } + /* reset customization for rest */ + } else { + holder.view.itemText.apply { + text = items[position].title + gravity = holder.gravity + setTextColor(holder.color) + typeface = holder.typeface + setTextSize(TypedValue.COMPLEX_UNIT_PX, holder.size) + } + } + + /* on click - open in browser */ + holder.view.itemText.setOnClickListener { + val customTabsIntent = CustomTabsIntent.Builder().setUrlBarHidingEnabled(true).build() + customTabsIntent.launchUrl(context, Uri.parse(items[position].link)) + } + } + + inner class RssViewHolder(var view: ListItemBinding) : RecyclerView.ViewHolder(view.root) { + /* store previous styles for resetting */ + var gravity: Int = view.itemText.gravity + var color: ColorStateList = view.itemText.textColors + var typeface: Typeface = view.itemText.typeface + var size: Float = view.itemText.textSize + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssParser.kt b/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssParser.kt new file mode 100644 index 0000000..da1e656 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssParser.kt @@ -0,0 +1,98 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.feeds.rss + +import kotlin.Throws +import org.xmlpull.v1.XmlPullParserException +import org.xmlpull.v1.XmlPullParser +import android.util.Xml +import java.io.IOException +import java.io.InputStream +import java.util.ArrayList + + +internal class RssParser { + + @Throws(XmlPullParserException::class, IOException::class) + fun parse(inputStream: InputStream): List { + return inputStream.use { stream -> + val parser = Xml.newPullParser() + parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, false) + parser.setInput(stream, null) + parser.nextTag() + readFeed(parser) + } + } + + @Throws(XmlPullParserException::class, IOException::class) + private fun readFeed(parser: XmlPullParser): List { + parser.require(XmlPullParser.START_TAG, null, "rss") + var title: String? = null + var link: String? = null + val items: MutableList = ArrayList() + + while (parser.next() != XmlPullParser.END_DOCUMENT) { + if (parser.eventType != XmlPullParser.START_TAG) { + continue + } + + val name = parser.name + if (name == "title") { + title = readTitle(parser) + } else if (name == "link") { + link = readLink(parser) + } + + if (title != null && link != null) { + val item = Rss(title, link) + items.add(item) + title = null + link = null + } + } + return items + } + + @Throws(XmlPullParserException::class, IOException::class) + private fun readLink(parser: XmlPullParser): String { + parser.require(XmlPullParser.START_TAG, null, "link") + val link = readText(parser) + parser.require(XmlPullParser.END_TAG, null, "link") + return link + } + + @Throws(XmlPullParserException::class, IOException::class) + private fun readTitle(parser: XmlPullParser): String { + parser.require(XmlPullParser.START_TAG, null, "title") + val title = readText(parser) + parser.require(XmlPullParser.END_TAG, null, "title") + return title + } + + @Throws(IOException::class, XmlPullParserException::class) + private fun readText(parser: XmlPullParser): String { + var result = "" + if (parser.next() == XmlPullParser.TEXT) { + result = parser.text + parser.nextTag() + } + return result + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssService.kt b/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssService.kt new file mode 100644 index 0000000..d7e90b5 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/feeds/rss/RssService.kt @@ -0,0 +1,72 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.feeds.rss + +import android.content.Intent +import android.os.Build +import android.os.Bundle +import android.os.ResultReceiver +import androidx.core.app.JobIntentService +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_RSS_URL +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import rasel.lunar.launcher.helpers.Constants.Companion.RSS_ITEMS +import rasel.lunar.launcher.helpers.Constants.Companion.RSS_RECEIVER +import java.io.IOException +import java.io.InputStream +import java.io.Serializable +import java.net.URL + + +internal class RssService : JobIntentService() { + + override fun onHandleWork(intent: Intent) { + val settingsPrefs = getSharedPreferences(PREFS_SETTINGS, 0) + val rssUrl = settingsPrefs.getString(KEY_RSS_URL, "") + var rssItems: List? = null + + try { + val parser = RssParser() + rssItems = getInputStream(rssUrl)?.let { parser.parse(it) } + } catch (exception: Exception) { + exception.printStackTrace() + } + + val bundle = Bundle() + bundle.putSerializable(RSS_ITEMS, rssItems as? Serializable) + + val receiver = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + intent.getParcelableExtra(RSS_RECEIVER, ResultReceiver::class.java) + } else { + @Suppress("DEPRECATION") intent.getParcelableExtra(RSS_RECEIVER) + } + + receiver?.send(0, bundle) + } + + private fun getInputStream(link: String?): InputStream? { + return try { + val url = URL(link) + url.openConnection().getInputStream() + } catch (ioException: IOException) { + ioException.printStackTrace() + null + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/helpers/AdminReceiver.kt b/app/src/main/kotlin/rasel/lunar/launcher/helpers/AdminReceiver.kt new file mode 100644 index 0000000..0679c17 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/helpers/AdminReceiver.kt @@ -0,0 +1,43 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.helpers + +import android.app.admin.DeviceAdminReceiver +import android.content.Context +import android.content.Intent +import androidx.localbroadcastmanager.content.LocalBroadcastManager + + +internal class AdminReceiver : DeviceAdminReceiver() { + + override fun onDisabled(context: Context, intent: Intent) { + super.onDisabled(context, intent) + LocalBroadcastManager.getInstance(context).sendBroadcast( + Intent("device_admin_action_disabled") + ) + } + + override fun onEnabled(context: Context, intent: Intent) { + super.onEnabled(context, intent) + LocalBroadcastManager.getInstance(context).sendBroadcast( + Intent("device_admin_action_enabled") + ) + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/helpers/ColorPicker.kt b/app/src/main/kotlin/rasel/lunar/launcher/helpers/ColorPicker.kt new file mode 100644 index 0000000..2ceeef1 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/helpers/ColorPicker.kt @@ -0,0 +1,100 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.helpers + +import android.annotation.SuppressLint +import android.graphics.Color +import android.text.Editable +import android.text.TextWatcher +import androidx.constraintlayout.widget.ConstraintLayout +import com.google.android.material.slider.Slider +import com.google.android.material.textfield.TextInputEditText + + +internal class ColorPicker(private val initialColor: String, + private val editText: TextInputEditText, private val sliderA: Slider, private val sliderR: Slider, + private val sliderG: Slider, private val sliderB: Slider, private val colorPreview: ConstraintLayout) { + + @SuppressLint("SetTextI18n") + fun pickColor() { + editText.setText(initialColor) + stringToSlider(initialColor) + colorPreview.setBackgroundColor(Color.parseColor("#$initialColor")) + + editText.addTextChangedListener(object : TextWatcher { + override fun afterTextChanged(s: Editable) { + if (s.length == 6){ + sliderA.value = 255F + sliderR.value = Integer.parseInt(s.substring(0..1), 16).toFloat() + sliderG.value = Integer.parseInt(s.substring(2..3), 16).toFloat() + sliderB.value = Integer.parseInt(s.substring(4..5), 16).toFloat() + } else if (s.length == 8){ + stringToSlider(s.toString()) + } else if (s.isEmpty()) { + sliderA.value = 0F + sliderR.value = 0F + sliderG.value = 0F + sliderB.value = 0F + } + } + override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) {} + override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) {} + }) + + sliderA.addOnChangeListener(Slider.OnChangeListener { _: Slider?, _: Float, _: Boolean -> + editText.setText(colorString.uppercase()) + colorPreview.setBackgroundColor(Color.parseColor("#$colorString")) + }) + + sliderR.addOnChangeListener(Slider.OnChangeListener { _: Slider?, _: Float, _: Boolean -> + editText.setText(colorString.uppercase()) + colorPreview.setBackgroundColor(Color.parseColor("#$colorString")) + }) + + sliderG.addOnChangeListener(Slider.OnChangeListener { _: Slider?, _: Float, _: Boolean -> + editText.setText(colorString.uppercase()) + colorPreview.setBackgroundColor(Color.parseColor("#$colorString")) + }) + + sliderB.addOnChangeListener(Slider.OnChangeListener { _: Slider?, _: Float, _: Boolean -> + editText.setText(colorString.uppercase()) + colorPreview.setBackgroundColor(Color.parseColor("#$colorString")) + }) + } + + private fun stringToSlider(s: String) { + sliderA.value = Integer.parseInt(s.substring(0..1), 16).toFloat() + sliderR.value = Integer.parseInt(s.substring(2..3), 16).toFloat() + sliderG.value = Integer.parseInt(s.substring(4..5), 16).toFloat() + sliderB.value = Integer.parseInt(s.substring(6..7), 16).toFloat() + } + + private val colorString: String get() { + var a = Integer.toHexString((((255*sliderA.value)/sliderA.valueTo).toInt())) + if(a.length==1) a = "0$a" + var r = Integer.toHexString((((255*sliderR.value)/sliderR.valueTo).toInt())) + if(r.length==1) r = "0$r" + var g = Integer.toHexString((((255*sliderG.value)/sliderG.valueTo).toInt())) + if(g.length==1) g = "0$g" + var b = Integer.toHexString((((255*sliderB.value)/sliderB.valueTo).toInt())) + if(b.length==1) b = "0$b" + return "$a$r$g$b" + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/helpers/Constants.kt b/app/src/main/kotlin/rasel/lunar/launcher/helpers/Constants.kt new file mode 100644 index 0000000..a63cc3a --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/helpers/Constants.kt @@ -0,0 +1,110 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.helpers + +import androidx.biometric.BiometricManager.Authenticators.BIOMETRIC_WEAK +import androidx.biometric.BiometricManager.Authenticators.DEVICE_CREDENTIAL + + +internal class Constants { + + companion object { + + /* first launch */ + const val PREFS_FIRST_LAUNCH = "rasel.lunar.launcher.FIRST_LAUNCH" + const val KEY_FIRST_LAUNCH = "first_launch" + + /* widgets */ + const val PREFS_WIDGETS = "rasel.lunar.launcher.WIDGETS" + const val KEY_WIDGET_IDS = "widget_ids" + const val KEY_WIDGET_HEIGHTS = "widget_heights" + + /* settings */ + const val PREFS_SETTINGS = "rasel.lunar.launcher.SETTINGS" + const val KEY_TIME_FORMAT = "time_format" + const val KEY_DATE_FORMAT = "date_format" + const val KEY_CITY_NAME = "city_name" + const val KEY_OWM_API = "owm_api" + const val KEY_TEMP_UNIT = "temp_unit" + const val KEY_SHOW_CITY = "show_city" + const val KEY_TODO_COUNTS = "todo_count" + const val KEY_TODO_LOCK = "todo_lock" + const val KEY_KEYBOARD_SEARCH = "keyboard_search" + const val KEY_QUICK_LAUNCH = "quick_launch" + const val KEY_APPS_LAYOUT = "apps_layout" + const val KEY_APPS_COUNT = "apps_count" + const val KEY_DRAW_ALIGN = "drawer_alignment" + const val KEY_ICON_PACK = "icon_pack" + const val KEY_GRID_COLUMNS = "grid_columns" + const val KEY_SCROLLBAR_HEIGHT = "scrollbar_height" + const val KEY_WINDOW_BACKGROUND = "window_background" + const val KEY_APPLICATION_THEME = "application_theme" + const val KEY_STATUS_BAR = "status_bar" + const val KEY_BACK_HOME = "back_home" + const val KEY_SHORTCUT_COUNT = "shortcut_count" + const val KEY_ICON_SIZE = "icon_size" + const val KEY_RSS_URL = "rss_url" + const val KEY_LOCK_METHOD = "lock_method" + + /* --- */ + const val DEFAULT_DATE_FORMAT = "EEE dx MMM, yyyy" + const val DEFAULT_ICON_SIZE = 44 + const val DEFAULT_ICON_PACK = "default_icon_pack" + const val DEFAULT_GRID_COLUMNS = 4 + const val DEFAULT_SCROLLBAR_HEIGHT = 400 + const val MAX_SHORTCUTS = 6 + const val MAX_FAVORITE_APPS = 6 + + const val BOTTOM_SHEET_TAG = "rasel.lunar.launcher.TAG" + const val SEPARATOR = "||" + const val ACCESSIBILITY_SERVICE_LOCK_SCREEN = "rasel.lunar.launcher.LOCK_SCREEN_SERVICE" + const val AUTHENTICATOR_TYPE = BIOMETRIC_WEAK or DEVICE_CREDENTIAL + + const val rssJobId = 101 + const val widgetHostId = 102 + const val requestPickWidget = 103 + const val requestCreateWidget = 104 + + /* app names */ + const val PREFS_APP_NAMES = "rasel.lunar.launcher.APP_NAMES" + + /* favorite apps */ + const val PREFS_FAVORITE_APPS = "rasel.lunar.launcher.FAVORITE_APPS" + const val KEY_APP_NO_ = "app_no_" + + /* phone and url shortcuts */ + const val PREFS_SHORTCUTS = "rasel.lunar.launcher.SHORTCUTS" + const val KEY_SHORTCUT_NO_ = "shortcut_no_" + const val SHORTCUT_TYPE_URL = "shortcut_type_url" + const val SHORTCUT_TYPE_PHONE = "shortcut_type_phone" + + /* to-do database */ + const val TODO_DATABASE_NAME = "rasel.lunar.launcher.TODOS" + const val TODO_DATABASE_VERSION = 1 + const val TODO_TABLE_NAME = "todo_table" + const val TODO_COLUMN_ID = "todo_column_id" + const val TODO_COLUMN_NAME = "todo_column_name" + const val TODO_COLUMN_CREATED = "todo_column_created" + + /* rss feed */ + const val RSS_ITEMS = "rss_items" + const val RSS_RECEIVER = "rss_receiver" + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/helpers/LockService.kt b/app/src/main/kotlin/rasel/lunar/launcher/helpers/LockService.kt new file mode 100644 index 0000000..9033955 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/helpers/LockService.kt @@ -0,0 +1,56 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.helpers + +import android.accessibilityservice.AccessibilityService +import android.accessibilityservice.AccessibilityServiceInfo +import android.content.Context +import android.content.Intent +import android.os.Build +import android.view.accessibility.AccessibilityEvent +import android.view.accessibility.AccessibilityManager + + +internal class LockService : AccessibilityService() { + + override fun onAccessibilityEvent(event: AccessibilityEvent?) {} + override fun onInterrupt() {} + + override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { + performGlobalAction(GLOBAL_ACTION_LOCK_SCREEN) + } + return super.onStartCommand(intent, flags, startId) + } + + /* check whether accessibility service is enabled */ + fun isAccessibilityServiceEnabled(context: Context): Boolean { + val accessibilityManager = + context.getSystemService(ACCESSIBILITY_SERVICE) as AccessibilityManager + val accessibilityServiceInfoList: List = + accessibilityManager.getEnabledAccessibilityServiceList(AccessibilityServiceInfo.FEEDBACK_ALL_MASK) + + for (enabledService in accessibilityServiceInfoList) { + val enabledServiceInfo = enabledService.resolveInfo.serviceInfo + if (enabledServiceInfo.packageName == context.packageName && enabledServiceInfo.name == LockService::class.java.name) return true + } + return false + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/helpers/SwipeTouchListener.kt b/app/src/main/kotlin/rasel/lunar/launcher/helpers/SwipeTouchListener.kt new file mode 100644 index 0000000..8375e1b --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/helpers/SwipeTouchListener.kt @@ -0,0 +1,101 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.helpers + +import android.annotation.SuppressLint +import android.content.Context +import android.view.GestureDetector +import android.view.GestureDetector.SimpleOnGestureListener +import android.view.MotionEvent +import android.view.View +import android.view.View.OnTouchListener +import android.view.ViewParent +import kotlin.math.abs + + +internal open class SwipeTouchListener(c: Context?) : OnTouchListener { + + private val gestureDetector: GestureDetector = GestureDetector(c, GestureListener()) + private lateinit var viewParent: ViewParent + + @SuppressLint("ClickableViewAccessibility") + override fun onTouch(view: View, motionEvent: MotionEvent): Boolean { + viewParent = view.parent + return gestureDetector.onTouchEvent(motionEvent) + } + + private inner class GestureListener : SimpleOnGestureListener() { + + override fun onDown(e: MotionEvent): Boolean { + return true + } + + override fun onSingleTapUp(e: MotionEvent): Boolean { + onClick() + return super.onSingleTapUp(e) + } + + override fun onDoubleTap(e: MotionEvent): Boolean { + onDoubleClick() + return super.onDoubleTap(e) + } + + override fun onLongPress(e: MotionEvent) { + onLongClick() + viewParent.requestDisallowInterceptTouchEvent(true) + super.onLongPress(e) + } + + override fun onFling(e1: MotionEvent?, e2: MotionEvent, velocityX: Float, velocityY: Float): Boolean { + try { + val diffY = e2.y - e1!!.y + val diffX = e2.x - e1.x + val swipeThreshold = 15 + val swipeVelocityThreshold = 90 + if (abs(diffX) > abs(diffY)) { + if (abs(diffX) > swipeThreshold && abs(velocityX) > swipeVelocityThreshold) { + when { + diffX > 0 -> onSwipeRight() + else -> onSwipeLeft() + } + } + } else { + if (abs(diffY) > swipeThreshold && abs(velocityY) > swipeVelocityThreshold) { + when { + diffY > 0 -> onSwipeDown() + else -> onSwipeUp() + } + } + } + } catch (exception: Exception) { + exception.printStackTrace() + } + return false + } + } + + fun onSwipeRight() {} + fun onSwipeLeft() {} + open fun onSwipeUp() {} + open fun onSwipeDown() {} + open fun onClick() {} + open fun onDoubleClick() {} + open fun onLongClick() {} + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/helpers/UniUtils.kt b/app/src/main/kotlin/rasel/lunar/launcher/helpers/UniUtils.kt new file mode 100644 index 0000000..e6d785a --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/helpers/UniUtils.kt @@ -0,0 +1,270 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.helpers + +import android.annotation.SuppressLint +import android.app.admin.DevicePolicyManager +import android.content.* +import android.content.pm.PackageManager +import android.net.ConnectivityManager +import android.os.Build +import android.os.PowerManager +import android.provider.Settings +import android.util.DisplayMetrics +import android.util.TypedValue +import android.view.View +import android.view.WindowInsets +import android.widget.Toast +import androidx.appcompat.widget.LinearLayoutCompat +import androidx.biometric.BiometricManager +import androidx.biometric.BiometricManager.BIOMETRIC_SUCCESS +import androidx.biometric.BiometricPrompt +import androidx.core.view.isVisible +import com.google.android.material.imageview.ShapeableImageView +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.apps.IconPackManager.Companion.getDrawableIconForPackage +import rasel.lunar.launcher.helpers.Constants.Companion.ACCESSIBILITY_SERVICE_LOCK_SCREEN +import rasel.lunar.launcher.helpers.Constants.Companion.AUTHENTICATOR_TYPE +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_ICON_SIZE +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_APPS_LAYOUT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_APP_NO_ +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_ICON_SIZE +import rasel.lunar.launcher.helpers.Constants.Companion.MAX_FAVORITE_APPS +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_FAVORITE_APPS +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import java.io.DataOutputStream + + +internal class UniUtils { + + companion object { + + /* get display width */ + val screenWidth: Int get() { + return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + val windowMetrics = lActivity!!.windowManager.currentWindowMetrics + val insets = windowMetrics.windowInsets + .getInsetsIgnoringVisibility(WindowInsets.Type.systemBars()) + windowMetrics.bounds.width() - insets.left - insets.right + } else { + val displayMetrics = DisplayMetrics() + @Suppress("DEPRECATION") lActivity!!.windowManager.defaultDisplay.getMetrics(displayMetrics) + displayMetrics.widthPixels + } + } + + /* get display height */ + val screenHeight: Int get() { + return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + val windowMetrics = lActivity!!.windowManager.currentWindowMetrics + val insets = windowMetrics.windowInsets + .getInsetsIgnoringVisibility(WindowInsets.Type.systemBars()) + windowMetrics.bounds.height() - insets.top - insets.bottom + } else { + val displayMetrics = DisplayMetrics() + @Suppress("DEPRECATION") lActivity!!.windowManager.defaultDisplay.getMetrics(displayMetrics) + displayMetrics.heightPixels + } + } + + /* copy texts to clipboard */ + fun copyToClipboard(context: Context, copiedString: String?) { + val clipBoard = + lActivity!!.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager + clipBoard.setPrimaryClip(ClipData.newPlainText("", copiedString)) + Toast.makeText(context, context.getString(R.string.copied_message), Toast.LENGTH_SHORT).show() + } + + /* expand notification panel */ + @SuppressLint("WrongConstant") + fun expandNotificationPanel(context: Context) { + try { + Class.forName("android.app.StatusBarManager") + .getMethod("expandNotificationsPanel") + .invoke(context.getSystemService("statusbar")) + } catch (exception: Exception) { + exception.printStackTrace() + } + } + + /* lock using preferred method */ + fun lockMethod(lockMethodValue: Int, context: Context, linearLayoutCompat: LinearLayoutCompat) { + when (lockMethodValue) { + 0 -> populateFavApps(context, linearLayoutCompat) + 1 -> lockAccessibility() + 2 -> lockDeviceAdmin(context) + 3 -> lockRoot() + } + } + + /* check if the device is rooted */ + val isRooted: Boolean get() { + var process: Process? = null + return try { + process = Runtime.getRuntime().exec("su") + true + } catch (exception: Exception) { + exception.printStackTrace() + false + } finally { + if (process != null) { + try { + process.destroy() + } catch (exception: Exception) { + exception.printStackTrace() + } + } + } + } + + /* check if the device is connected to the internet */ + val isNetworkAvailable: Boolean get() { + val connectivityManager = + lActivity!!.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager + @Suppress("DEPRECATION") val activeNetworkInfo = connectivityManager.activeNetworkInfo + @Suppress("DEPRECATION") return activeNetworkInfo != null && activeNetworkInfo.isConnectedOrConnecting + } + + /* check if authenticator available */ + fun canAuthenticate(context: Context): Boolean { + val biometricManager = BiometricManager.from(context) + return biometricManager.canAuthenticate(AUTHENTICATOR_TYPE) == BIOMETRIC_SUCCESS + } + + /* show device authenticator */ + fun biometricPromptInfo(title: String): BiometricPrompt.PromptInfo { + return BiometricPrompt.PromptInfo.Builder() + .setTitle(title) + .setSubtitle(lActivity!!.getString(R.string.authentication_subtitle)) + .setConfirmationRequired(true) + .setAllowedAuthenticators(AUTHENTICATOR_TYPE) + .build() + } + + /* get color red id from attribute */ + fun getColorResId(context: Context, colorAttr: Int) : Int { + val typedValue = TypedValue() + context.theme.resolveAttribute(colorAttr, typedValue, true) + return typedValue.resourceId + } + + /* convert dp value to px */ + fun dpToPx(context: Context, id: Int) : Int = (context.resources.getDimension(id) * context.resources.displayMetrics.density).toInt() + + /* lock screen using device admin */ + private fun lockDeviceAdmin(context: Context) { + val powerManager = context.getSystemService(Context.POWER_SERVICE) as PowerManager + if (powerManager.isInteractive) { + val policy = + context.getSystemService(Context.DEVICE_POLICY_SERVICE) as DevicePolicyManager + try { + policy.lockNow() + } catch (exception: SecurityException) { + /* open device admin manager screen */ + lActivity!!.startActivity( + Intent().setComponent( + ComponentName( + "com.android.settings", + "com.android.settings.DeviceAdminSettings" + ) + ) + ) + exception.printStackTrace() + } + } + } + + /* favorite apps */ + private fun populateFavApps(context: Context, linearLayoutCompat: LinearLayoutCompat) { + val prefsFavApps = context.getSharedPreferences(PREFS_FAVORITE_APPS, 0) + if (linearLayoutCompat.isVisible || prefsFavApps.all.toString().length < 3) { + linearLayoutCompat.visibility = View.GONE + } else { + linearLayoutCompat.removeAllViews() + linearLayoutCompat.visibility = View.VISIBLE + val iconSize = context.getSharedPreferences(PREFS_SETTINGS, 0).getInt(KEY_ICON_SIZE, DEFAULT_ICON_SIZE) + + for (position in 1..MAX_FAVORITE_APPS) { + val packageName = prefsFavApps.getString(KEY_APP_NO_ + position.toString(), "").toString() + /* package name is not empty for a specific position */ + if (packageName.isNotEmpty()) { + try { + ShapeableImageView(context).apply { + layoutParams = LinearLayoutCompat.LayoutParams( + (iconSize * resources.displayMetrics.density).toInt(), + (iconSize * resources.displayMetrics.density).toInt(), 1F) + }.let { sImageView -> + context.packageManager.getApplicationIcon(packageName).let { defaultIcon -> + sImageView.setImageDrawable( + if (context.getSharedPreferences(PREFS_SETTINGS, 0).getInt(KEY_APPS_LAYOUT, 0) != 0) + getDrawableIconForPackage(packageName, defaultIcon) + else defaultIcon + ) + } + sImageView.setOnClickListener { + context.startActivity(context.packageManager.getLaunchIntentForPackage(packageName)) + } + linearLayoutCompat.addView(sImageView) + } + } catch (nameNotFoundException: PackageManager.NameNotFoundException) { + context.getSharedPreferences(PREFS_FAVORITE_APPS, 0) + .edit().remove(KEY_APP_NO_ + position).apply() + } + } + } + } + } + + /* lock screen using accessibility service */ + private fun lockAccessibility() { + if (LockService().isAccessibilityServiceEnabled(lActivity!!.applicationContext)) { + try { + lActivity!!.startService( + Intent(lActivity!!.applicationContext, LockService::class.java) + .setAction(ACCESSIBILITY_SERVICE_LOCK_SCREEN) + ) + } catch (exception: Exception) { + exception.printStackTrace() + } + } else { + /* open accessibility service screen */ + lActivity!!.startActivity(Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS)) + } + } + + /* lock screen using root */ + private fun lockRoot() { + try { + val process = Runtime.getRuntime().exec("su") + val dataOutputStream = DataOutputStream(process.outputStream) + dataOutputStream.writeBytes("input keyevent \${KeyEvent.KEYCODE_POWER}\n") + dataOutputStream.writeBytes("exit\n") + dataOutputStream.flush() + dataOutputStream.close() + process.waitFor() + process.destroy() + } catch (exception: Exception) { + exception.printStackTrace() + } + } + + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/helpers/ViewPagerAdapter.kt b/app/src/main/kotlin/rasel/lunar/launcher/helpers/ViewPagerAdapter.kt new file mode 100644 index 0000000..2184b3f --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/helpers/ViewPagerAdapter.kt @@ -0,0 +1,34 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.helpers + +import androidx.fragment.app.Fragment +import androidx.fragment.app.FragmentManager +import androidx.lifecycle.Lifecycle +import androidx.viewpager2.adapter.FragmentStateAdapter + + +internal class ViewPagerAdapter( + fragmentManager: FragmentManager, private val fragments: MutableList, lifecycle: Lifecycle) : + FragmentStateAdapter(fragmentManager, lifecycle) { + + override fun getItemCount(): Int = fragments.size + override fun createFragment(position: Int): Fragment = fragments[position] + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/home/BatteryReceiver.kt b/app/src/main/kotlin/rasel/lunar/launcher/home/BatteryReceiver.kt new file mode 100644 index 0000000..0ff32f5 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/home/BatteryReceiver.kt @@ -0,0 +1,67 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.home + +import android.content.BroadcastReceiver +import android.content.Context +import android.content.Intent +import android.os.BatteryManager +import android.provider.Settings +import android.view.animation.AnimationUtils +import com.google.android.material.progressindicator.CircularProgressIndicator +import rasel.lunar.launcher.R + + +internal class BatteryReceiver(private val progressBar: CircularProgressIndicator) : BroadcastReceiver() { + + /* get current battery percentage */ + private fun batteryPercentage(intent: Intent): Int { + val percentage = (intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1)) / + (intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1)).toFloat() + return (percentage * 100).toInt() + } + + /* get current charging status */ + private fun chargingStatus(intent: Intent): Int = intent.getIntExtra(BatteryManager.EXTRA_STATUS, -1) + + override fun onReceive(context: Context?, intent: Intent?) { + val animationDuration = try { + Settings.Global.getFloat(context?.contentResolver, Settings.Global.ANIMATOR_DURATION_SCALE) + } catch (e: Settings.SettingNotFoundException) { + e.printStackTrace() + } + + /* set battery percentage value to the circular progress bar */ + progressBar.progress = batteryPercentage(intent!!) + + /* progress bar animation */ + if (chargingStatus(intent) == BatteryManager.BATTERY_STATUS_CHARGING || + chargingStatus(intent) == BatteryManager.BATTERY_STATUS_FULL) { + if (progressBar.animation == null && animationDuration != 0f) { + progressBar.startAnimation( + AnimationUtils.loadAnimation(context, R.anim.rotate_clockwise) + ) + } + } else if (chargingStatus(intent) == BatteryManager.BATTERY_STATUS_DISCHARGING || + chargingStatus(intent) == BatteryManager.BATTERY_STATUS_NOT_CHARGING) { + progressBar.clearAnimation() + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/home/LauncherHome.kt b/app/src/main/kotlin/rasel/lunar/launcher/home/LauncherHome.kt new file mode 100644 index 0000000..5dc2b28 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/home/LauncherHome.kt @@ -0,0 +1,406 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.home + +import android.annotation.SuppressLint +import android.content.Intent +import android.content.IntentFilter +import android.content.SharedPreferences +import android.os.Bundle +import android.provider.AlarmClock +import android.text.format.DateFormat +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.Toast +import androidx.biometric.BiometricPrompt +import androidx.fragment.app.Fragment +import androidx.fragment.app.FragmentManager +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.LauncherHomeBinding +import rasel.lunar.launcher.helpers.Constants.Companion.BOTTOM_SHEET_TAG +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_DATE_FORMAT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_DATE_FORMAT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_LOCK_METHOD +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_TIME_FORMAT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_TODO_LOCK +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import rasel.lunar.launcher.helpers.SwipeTouchListener +import rasel.lunar.launcher.helpers.UniUtils.Companion.biometricPromptInfo +import rasel.lunar.launcher.helpers.UniUtils.Companion.canAuthenticate +import rasel.lunar.launcher.helpers.UniUtils.Companion.expandNotificationPanel +import rasel.lunar.launcher.helpers.UniUtils.Companion.lockMethod +import rasel.lunar.launcher.home.weather.WeatherExecutor +import rasel.lunar.launcher.qaccess.QuickAccess +import rasel.lunar.launcher.settings.SettingsActivity +import rasel.lunar.launcher.todos.TodoAdapter +import rasel.lunar.launcher.todos.TodoManager +import rasel.lunar.launcher.utils.SimpleFingerGestures +import java.util.* + + +internal class LauncherHome : Fragment() { + + private lateinit var binding: LauncherHomeBinding + private lateinit var fragManager: FragmentManager + private lateinit var settingsPrefs: SharedPreferences + private lateinit var batteryReceiver: BatteryReceiver + private var shouldResume = true + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + + binding = LauncherHomeBinding.inflate(inflater, container, false) + fragManager = lActivity!!.supportFragmentManager + settingsPrefs = requireContext().getSharedPreferences(PREFS_SETTINGS, 0) + batteryReceiver = BatteryReceiver(binding.batteryProgress) + + binding.favAppsGroup.visibility = View.GONE + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + /* handle gesture events */ + rootViewGestures() + batteryProgressGestures() + todosGestures() + + /* refresh the to-do list after getting back from TodoManager */ + fragManager.addOnBackStackChangedListener { + shouldResume = if (fragManager.backStackEntryCount == 0) { + binding.root.visibility = View.VISIBLE + showTodoList() + true + } else { + binding.root.visibility = View.GONE + false + } + } + } + + override fun onResume() { + super.onResume() + if (shouldResume) { + /* register battery changes */ + requireContext().registerReceiver(batteryReceiver, IntentFilter(Intent.ACTION_BATTERY_CHANGED)) + + /* time and date */ + if (DateFormat.is24HourFormat(requireContext())) { + binding.time.format24Hour = timeFormat + binding.date.format24Hour = dateFormat + } else { + binding.time.format12Hour = timeFormat + binding.date.format12Hour = dateFormat + } + + /* show weather */ + WeatherExecutor(settingsPrefs).generateWeatherString(binding.weather) + /* show to-do list */ + showTodoList() + } + } + + override fun onPause() { + super.onPause() + /* unregister battery changes */ + if (shouldResume) requireContext().unregisterReceiver(batteryReceiver) + } + + + var mFingerGestureListener = object : SimpleFingerGestures.OnFingerGestureListener { + override fun onSwipeUp( + targetView: View, + fingers: Int, + gestureDuration: Long, + gestureDistance: Double + ): Boolean { + when(fingers) { + 1 -> + if (targetView?.equals(binding.batteryProgress) ?: false) { + QuickAccess().show(fragManager, BOTTOM_SHEET_TAG) + } else { + QuickAccess().show(fragManager, BOTTOM_SHEET_TAG) + } + else -> {} + } + return false + } + + override fun onSwipeDown( + targetView: View, + fingers: Int, + gestureDuration: Long, + gestureDistance: Double + ): Boolean { + when(fingers) { + 1 -> + if (targetView?.equals(binding.batteryProgress) ?: false) { + expandNotificationPanel(requireContext()) + } else { + expandNotificationPanel(requireContext()) + } + else -> {} + } + return false + } + + override fun onSwipeLeft( + targetView: View, + fingers: Int, + gestureDuration: Long, + gestureDistance: Double + ): Boolean { + return false + } + + override fun onSwipeRight( + targetView: View, + fingers: Int, + gestureDuration: Long, + gestureDistance: Double + ): Boolean { + return false + } + + override fun onPinch( + targetView: View, + fingers: Int, + gestureDuration: Long, + gestureDistance: Double + ): Boolean { + return false + } + + override fun onUnpinch( + targetView: View, + fingers: Int, + gestureDuration: Long, + gestureDistance: Double + ): Boolean { + return false + } + + override fun onDoubleTap(targetView: View,fingers: Int): Boolean { + + when(fingers) { + 1 -> if (targetView?.equals(binding.batteryProgress) ?: false) { + lockMethod(settingsPrefs.getInt(KEY_LOCK_METHOD, 0), requireContext(), binding.favAppsGroup) + } else { + lockMethod(settingsPrefs.getInt(KEY_LOCK_METHOD, 0), requireContext(), binding.favAppsGroup) + } + else -> {} + } + return false + } + + override fun onLongPress(targetView: View): Boolean { + if (view?.equals(binding.batteryProgress) ?: false) { + lActivity!!.startActivity(Intent(requireContext(), SettingsActivity::class.java)) + } else if (view?.equals(binding.notes) ?: false) { + when (settingsPrefs.getBoolean(KEY_TODO_LOCK, false)) { + false -> launchTodoManager() + /* show authentication screen if lock is on */ + true -> { + if (canAuthenticate(requireContext())) { + val biometricPrompt = BiometricPrompt(lActivity!!, authenticationCallback) + try { + biometricPrompt.authenticate(biometricPromptInfo(lActivity!!.getString(R.string.todo_manager))) + } catch (exception: Exception) { + exception.printStackTrace() + } + } + } + } + } + return false + } + + override fun onClick(targetView: View): Boolean { + if (view?.equals(binding.batteryProgress) ?: false) { + requireContext().startActivity( + Intent(AlarmClock.ACTION_SHOW_ALARMS).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + ) + } else if (view?.equals(binding.batteryProgress) ?: false) { + + } + return false + } + + } + + /* gestures on root view */ + @SuppressLint("ClickableViewAccessibility") + private fun rootViewGestures() { + + binding.root.setOnTouchListener(SimpleFingerGestures(context = requireContext(), binding.root , mFingerGestureListener)) +// { + + /* open quick access panel on swipe up */ +// override fun onSwipeUp() { +// super.onSwipeUp() +// QuickAccess().show(fragManager, BOTTOM_SHEET_TAG) +// } +// /* expand notification panel on swipe down */ +// override fun onSwipeDown() { +// super.onSwipeDown() +// expandNotificationPanel(requireContext()) +// } +// /* lock the screen on double tap (optional) */ +// override fun onDoubleClick() { +// super.onDoubleClick() +// lockMethod(settingsPrefs.getInt(KEY_LOCK_METHOD, 0), requireContext(), binding.favAppsGroup) +// } +// }) + } + + + + /* gestures on battery progress indicator area */ + @SuppressLint("ClickableViewAccessibility") + private fun batteryProgressGestures() { + binding.batteryProgress.setOnTouchListener(SimpleFingerGestures(context = requireContext(), binding.batteryProgress , mFingerGestureListener)) +// binding.batteryProgress.setOnTouchListener(object : SwipeTouchListener(requireContext()) { +// /* open alarms list with default clock app */ +// override fun onClick() { +// super.onClick() +// requireContext().startActivity( +// Intent(AlarmClock.ACTION_SHOW_ALARMS).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK) +// ) +// } +// /* open settings activity on long click */ +// override fun onLongClick() { +// super.onLongClick() +// lActivity!!.startActivity(Intent(requireContext(), SettingsActivity::class.java)) +// } +// /* expand notification panel on swipe down */ +// override fun onSwipeDown() { +// super.onSwipeDown() +// expandNotificationPanel(requireContext()) +// } +// /* lock the screen on double tap (optional) */ +// override fun onDoubleClick() { +// super.onDoubleClick() +// lockMethod(settingsPrefs.getInt(KEY_LOCK_METHOD, 0), requireContext(), binding.favAppsGroup) +// } +// }) + } + + /* gestures on to-do area */ + @SuppressLint("ClickableViewAccessibility") + private fun todosGestures() { + binding.notes.setOnTouchListener(SimpleFingerGestures(context = requireContext(), binding.notes , mFingerGestureListener)) +// binding.notes.setOnTouchListener(object : SwipeTouchListener(requireContext()) { +// /* open TodoManager on long click */ +// override fun onLongClick() { +// super.onLongClick() +// when (settingsPrefs.getBoolean(KEY_TODO_LOCK, false)) { +// false -> launchTodoManager() +// /* show authentication screen if lock is on */ +// true -> { +// if (canAuthenticate(requireContext())) { +// val biometricPrompt = BiometricPrompt(lActivity!!, authenticationCallback) +// try { +// biometricPrompt.authenticate(biometricPromptInfo(lActivity!!.getString(R.string.todo_manager))) +// } catch (exception: Exception) { +// exception.printStackTrace() +// } +// } +// } +// } +// } +// /* open quick access panel on swipe up */ +// override fun onSwipeUp() { +// super.onSwipeUp() +// QuickAccess().show(fragManager, BOTTOM_SHEET_TAG) +// } +// /* expand notification panel on swipe down */ +// override fun onSwipeDown() { +// super.onSwipeDown() +// expandNotificationPanel(requireContext()) +// } +// /* lock the screen on double tap (optional) */ +// override fun onDoubleClick() { +// super.onDoubleClick() +// lockMethod(settingsPrefs.getInt(KEY_LOCK_METHOD, 0), requireContext(), binding.favAppsGroup) +// } +// }) + } + + /* authentication callback for TodoManager lock */ + private val authenticationCallback = object : BiometricPrompt.AuthenticationCallback() { + override fun onAuthenticationSucceeded(result: BiometricPrompt.AuthenticationResult) { + launchTodoManager() + } + override fun onAuthenticationError(errorCode: Int, errString: CharSequence) { + Toast.makeText(requireContext(), lActivity!!.getString(R.string.authentication_error), Toast.LENGTH_SHORT).show() + } + override fun onAuthenticationFailed() { + Toast.makeText(requireContext(), lActivity!!.getString(R.string.authentication_failed), Toast.LENGTH_SHORT).show() + } + } + + /* launch TodoManager fragment */ + private fun launchTodoManager() { + fragManager.beginTransaction().replace(R.id.mainFragmentsContainer, TodoManager()) + .addToBackStack("").commit() + } + + /* to-do list */ + private fun showTodoList() { + binding.notes.adapter = TodoAdapter(null, requireContext()) + } + + /* get time format string */ + private val timeFormat: String? get() { + when (settingsPrefs.getInt(KEY_TIME_FORMAT, 0)) { + 0 -> return if (DateFormat.is24HourFormat(requireContext())) { + "kk:mm" + } else { + "h:mm a" + } + 1 -> return "h:mm a" + 2 -> return "kk:mm" + } + return null + } + + /* get date number suffix */ + private val dateNumberSuffix: String get() { + return when (Calendar.getInstance()[Calendar.DAY_OF_MONTH]) { + 1, 21, 31 -> "ˢᵗ" + 2, 22 -> "ⁿᵈ" + 3, 23 -> "ʳᵈ" + else -> "ᵗʰ" + } + } + + /* get date format string */ + private val dateFormat: String get() { + settingsPrefs.getString(KEY_DATE_FORMAT, DEFAULT_DATE_FORMAT).let { + return if (it!!.contains("x")) { + it.replace("x", dateNumberSuffix) + } else { + it + } + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/home/weather/JsonParser.kt b/app/src/main/kotlin/rasel/lunar/launcher/home/weather/JsonParser.kt new file mode 100644 index 0000000..745eaaa --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/home/weather/JsonParser.kt @@ -0,0 +1,52 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.home.weather + +import org.json.JSONException +import org.json.JSONObject + + +internal class JsonParser { + + fun getMyWeather(jsonStr: String): Weather { + val weather = Weather() + + try { + val jsonObject = JSONObject(jsonStr) + + /* Get weather condition */ + val weatherArray = jsonObject.getJSONArray("weather") + val weatherObject = weatherArray.getJSONObject(0) + weather.weatherCondition = weatherObject.getString("main") + weather.weatherDescription = weatherObject.getString("description") + weather.weatherIconId = weatherObject.getString("icon") + + /* Get temperature */ + val mainObject = jsonObject.getJSONObject("main") + weather.temperature = mainObject.getDouble("temp").toFloat() + + weather.cityName = jsonObject.getString("name") + } catch (jsonException: JSONException) { + jsonException.printStackTrace() + } + + return weather + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/home/weather/Weather.kt b/app/src/main/kotlin/rasel/lunar/launcher/home/weather/Weather.kt new file mode 100644 index 0000000..e146213 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/home/weather/Weather.kt @@ -0,0 +1,28 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.home.weather + + +internal class Weather { + var weatherCondition: String? = null + var weatherDescription: String? = null + var weatherIconId: String? = null + var temperature = 0f + var cityName: String? = null +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/home/weather/WeatherClient.kt b/app/src/main/kotlin/rasel/lunar/launcher/home/weather/WeatherClient.kt new file mode 100644 index 0000000..5869de1 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/home/weather/WeatherClient.kt @@ -0,0 +1,63 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.home.weather + +import java.io.BufferedReader +import java.io.InputStreamReader +import java.lang.Exception +import java.lang.StringBuilder +import java.net.HttpURLConnection +import java.net.URL + + +internal class WeatherClient { + + fun fetchWeather(wUrl: String?): String? { + var httpURLConnection: HttpURLConnection? = null + var bufferedReader: BufferedReader? = null + + try { + httpURLConnection = URL(wUrl).openConnection() as HttpURLConnection + httpURLConnection.connect() + bufferedReader = BufferedReader(InputStreamReader(httpURLConnection.inputStream)) + + val stringBuilder = StringBuilder() + var line: String? + while (bufferedReader.readLine().also { line = it } != null) { + stringBuilder.append("$line\n") + } + + if (stringBuilder.isNotEmpty()) return stringBuilder.toString() + } catch (exception: Exception) { + exception.printStackTrace() + } finally { + httpURLConnection?.disconnect() + if (bufferedReader != null) { + try { + bufferedReader.close() + } catch (exception: Exception) { + exception.printStackTrace() + } + } + } + + return null + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/home/weather/WeatherExecutor.kt b/app/src/main/kotlin/rasel/lunar/launcher/home/weather/WeatherExecutor.kt new file mode 100644 index 0000000..657fbed --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/home/weather/WeatherExecutor.kt @@ -0,0 +1,83 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.home.weather + +import android.annotation.SuppressLint +import android.content.SharedPreferences +import android.os.Handler +import android.os.Looper +import android.view.View +import com.google.android.material.textview.MaterialTextView +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_CITY_NAME +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_OWM_API +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_SHOW_CITY +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_TEMP_UNIT +import rasel.lunar.launcher.helpers.UniUtils.Companion.isNetworkAvailable +import java.net.URLEncoder +import java.util.concurrent.Executors + + +internal class WeatherExecutor(sharedPreferences: SharedPreferences) { + + private val cityName: String + private val owmApi: String + private val weatherUrl: String + private val tempUnit: Int + private val showCity: Boolean + + @SuppressLint("SetTextI18n") + fun generateWeatherString(materialTextView: MaterialTextView) { + materialTextView.visibility = View.GONE + + /* run the executor if network is available, + and city name and owm api values are not empty */ + if (isNetworkAvailable && cityName.isNotEmpty() && owmApi.isNotEmpty()) { + try { + Executors.newSingleThreadExecutor().execute { + var weather: Weather? = null + WeatherClient().fetchWeather(weatherUrl).let { + if (!it.isNullOrEmpty()) weather = JsonParser().getMyWeather(it) + } + + Handler(Looper.getMainLooper()).post { + if (weather != null) { + materialTextView.apply { + visibility = View.VISIBLE + text = weather!!.temperature.toString().substringBefore(".") + + (if (tempUnit == 0) "ºC" else "ºF") + + (if (showCity) " at ${weather!!.cityName}" else "") + } + } + } + } + } catch (exception: Exception) { + exception.printStackTrace() + } + } + } + + init { + cityName = sharedPreferences.getString(KEY_CITY_NAME, "").toString() + owmApi = sharedPreferences.getString(KEY_OWM_API, "").toString() + tempUnit = sharedPreferences.getInt(KEY_TEMP_UNIT, 0) + showCity = sharedPreferences.getBoolean(KEY_SHOW_CITY, false) + weatherUrl = URLEncoder.encode("https://api.openweathermap.org/data/2.5/weather?q=$cityName&APPID=$owmApi&units=" + if (tempUnit == 0) "metric" else "imperial","utf-8") + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/qaccess/QuickAccess.kt b/app/src/main/kotlin/rasel/lunar/launcher/qaccess/QuickAccess.kt new file mode 100644 index 0000000..c5b1463 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/qaccess/QuickAccess.kt @@ -0,0 +1,384 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.qaccess + +import android.Manifest +import android.app.AlertDialog +import android.content.Context +import android.content.Intent +import android.content.SharedPreferences +import android.content.pm.PackageManager +import android.graphics.* +import android.media.AudioManager +import android.net.Uri +import android.os.Build +import android.os.Bundle +import android.os.PowerManager +import android.provider.Settings +import android.text.InputType +import android.view.Gravity +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.RelativeLayout +import androidx.appcompat.widget.LinearLayoutCompat +import androidx.core.content.ContextCompat +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import com.google.android.material.button.MaterialButtonToggleGroup +import com.google.android.material.dialog.MaterialAlertDialogBuilder +import com.google.android.material.slider.Slider +import com.google.android.material.textview.MaterialTextView +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.QuickAccessBinding +import rasel.lunar.launcher.databinding.ShortcutMakerBinding +import rasel.lunar.launcher.helpers.ColorPicker +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_ICON_SIZE +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_ICON_SIZE +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_SHORTCUT_COUNT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_SHORTCUT_NO_ +import rasel.lunar.launcher.helpers.Constants.Companion.MAX_SHORTCUTS +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SHORTCUTS +import rasel.lunar.launcher.helpers.Constants.Companion.SEPARATOR +import rasel.lunar.launcher.helpers.Constants.Companion.SHORTCUT_TYPE_PHONE +import rasel.lunar.launcher.helpers.Constants.Companion.SHORTCUT_TYPE_URL +import java.util.* +import kotlin.properties.Delegates + + +internal class QuickAccess : BottomSheetDialogFragment() { + + private lateinit var binding: QuickAccessBinding + private lateinit var sharedPreferences: SharedPreferences + private var iconSize by Delegates.notNull() + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = QuickAccessBinding.inflate(inflater, container, false) + + sharedPreferences = requireContext().getSharedPreferences(PREFS_SHORTCUTS, 0) + iconSize = requireContext().getSharedPreferences(PREFS_SETTINGS, 0).getInt(KEY_ICON_SIZE, DEFAULT_ICON_SIZE) + + /* set up volume sliders, brightness slider and favorite apps */ + volumeControllers() + controlBrightness() + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + /* enable dismiss animation */ + (requireDialog() as BottomSheetDialog).dismissWithAnimation = true + } + + override fun onResume() { + super.onResume() + /* repopulate shortcuts and apps */ + shortcuts() + } + + /* control the volumes */ + private fun volumeControllers() { + val audioManager = lActivity!!.getSystemService(Context.AUDIO_SERVICE) as AudioManager + /* max value */ + binding.notification.valueTo = audioManager.getStreamMaxVolume(AudioManager.STREAM_NOTIFICATION).toFloat() + binding.alarm.valueTo = audioManager.getStreamMaxVolume(AudioManager.STREAM_ALARM).toFloat() + binding.media.valueTo = audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC).toFloat() + binding.voice.valueTo = audioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL).toFloat() + binding.ring.valueTo = audioManager.getStreamMaxVolume(AudioManager.STREAM_RING).toFloat() + /* current value */ + binding.notification.value = audioManager.getStreamVolume(AudioManager.STREAM_NOTIFICATION).toFloat() + binding.alarm.value = audioManager.getStreamVolume(AudioManager.STREAM_ALARM).toFloat() + binding.media.value = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC).toFloat() + binding.voice.value = audioManager.getStreamVolume(AudioManager.STREAM_VOICE_CALL).toFloat() + binding.ring.value = audioManager.getStreamVolume(AudioManager.STREAM_RING).toFloat() + + /* slider change listener for alarm volume */ + binding.alarm.addOnChangeListener(Slider.OnChangeListener { _: Slider?, value: Float, _: Boolean -> + audioManager.setStreamVolume(AudioManager.STREAM_ALARM, value.toInt(), 0) + }) + + /* slider change listener for media volume */ + binding.media.addOnChangeListener(Slider.OnChangeListener { _: Slider?, value: Float, _: Boolean -> + audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, value.toInt(), 0) + }) + + /* slider change listener for voice call volume */ + binding.voice.addOnChangeListener(Slider.OnChangeListener { _: Slider?, value: Float, _: Boolean -> + audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL, value.toInt(), 0) + }) + + /* notify and ring volume sliders will work only if + the device isn't in dnd or silent mode */ + if (Settings.Global.getInt(lActivity!!.contentResolver, "zen_mode") == 0 && + audioManager.ringerMode != AudioManager.RINGER_MODE_SILENT) { + /* slider change listener for notify volume */ + binding.notification.addOnChangeListener(Slider.OnChangeListener { _: Slider?, value: Float, _: Boolean -> + audioManager.setStreamVolume(AudioManager.STREAM_NOTIFICATION, value.toInt(), 0) + }) + /* slider change listener for ring volume */ + binding.ring.addOnChangeListener(Slider.OnChangeListener { _: Slider?, value: Float, _: Boolean -> + audioManager.setStreamVolume(AudioManager.STREAM_RING, value.toInt(), 0) + }) + } else { + binding.notification.isEnabled = false + binding.ring.isEnabled = false + } + } + + /* set up contact and url shortcuts */ + private fun shortcuts() { + binding.shortcutsGroup.removeAllViews() + val shortcutCount = + requireContext().getSharedPreferences(PREFS_SETTINGS, 0).getInt(KEY_SHORTCUT_COUNT, MAX_SHORTCUTS) + if (shortcutCount == 0) binding.shortcutsGroup.visibility = View.GONE + + for (position in 1..shortcutCount) { + val shortcutValue = sharedPreferences.getString(KEY_SHORTCUT_NO_ + position.toString(), "").toString() + val splitShortcutValue = shortcutValue.split(SEPARATOR).toTypedArray() + + var shortcutType = "" + var intentString = "" + var thumbLetter = "" + var color = "" + + try { + if (splitShortcutValue.size >= 4) { + shortcutType = splitShortcutValue[0] + intentString = splitShortcutValue[1] + thumbLetter = splitShortcutValue[2] + color = splitShortcutValue[3] + } + } catch (exception : Exception) { + exception.printStackTrace() + } + + shortcutsUtil(textView, shortcutType, intentString, thumbLetter, color, position) + } + } + + /* control the brightness */ + private fun controlBrightness() { + val resolver = lActivity!!.contentResolver + /* set max value */ + binding.brightness.valueTo = maxBrightness + + /* set slider value to current brightness value */ + try { + binding.brightness.value = Settings.System.getInt(resolver, Settings.System.SCREEN_BRIGHTNESS).toFloat() + } catch (settingNotFoundException: Settings.SettingNotFoundException) { + settingNotFoundException.printStackTrace() + } + + /* listen slider value changes */ + binding.brightness.addOnChangeListener(Slider.OnChangeListener { _: Slider?, value: Float, _: Boolean -> + /* if write settings permission is not allowed already, + again ask for it to be granted */ + if (!Settings.System.canWrite(lActivity!!)) { + lActivity!!.startActivity( + Intent(Settings.ACTION_MANAGE_WRITE_SETTINGS) + .setData(Uri.parse("package:" + lActivity!!.packageName)) + .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + ) + /* set the brightness according to the slider value */ + } else { + Settings.System.putInt( + resolver, + Settings.System.SCREEN_BRIGHTNESS_MODE, + Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL + ) + Settings.System.putInt(resolver, Settings.System.SCREEN_BRIGHTNESS, value.toInt()) + } + }) + } + + /* contact/url shortcuts */ + private fun shortcutsUtil(textView: MaterialTextView, shortcutType: String, intentString: String, + thumbLetter: String, color: String, position: Int) { + /* show plus sign for empty positions and set click listener */ + if (intentString.isEmpty()) { + textView.text = "+" + textView.setOnClickListener { + shortcutsSaverDialog(position, "00000000", "", "", "") + } + } else { + /* show thumbnail letter */ + textView.text = thumbLetter + /* set background color */ + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + textView.background.colorFilter = + BlendModeColorFilter(Color.parseColor("#$color"), BlendMode.MULTIPLY) + } else { + @Suppress("DEPRECATION") + textView.background.setColorFilter(Color.parseColor("#$color"), PorterDuff.Mode.MULTIPLY) + } + + /* on normal click */ + textView.setOnClickListener { + /* type is url */ + if (shortcutType == SHORTCUT_TYPE_URL) { + var url = intentString + /* add http before the url if it doesn't have http/https prefix */ + if (!url.startsWith("http://") && !url.startsWith("https://")) { + url = "http://$intentString" + } + /* open the url */ + lActivity!!.startActivity( + Intent(Intent.ACTION_VIEW, Uri.parse(url)).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + ) + /* type is contact */ + } else if (shortcutType == SHORTCUT_TYPE_PHONE) { + /* if the necessary permission is not granted already, + ask for it again */ + if (lActivity!!.checkSelfPermission(Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) { + lActivity!!.requestPermissions(arrayOf(Manifest.permission.CALL_PHONE), 1) + } else { + /* make phone call */ + lActivity!!.startActivity( + Intent(Intent.ACTION_CALL, Uri.parse("tel:$intentString")) + ) + } + } + this.dismiss() + } + + /* reset the shortcut on long click */ + textView.setOnLongClickListener { + shortcutsSaverDialog(position, color, thumbLetter, shortcutType, intentString) + true + } + } + } + + /* dialog for creating shortcuts */ + private fun shortcutsSaverDialog( + position: Int, color: String, thumbLetter: String, shortcutType: String, intentString: String) { + val dialogBinding = ShortcutMakerBinding.inflate(lActivity!!.layoutInflater) + val dialogBuilder = MaterialAlertDialogBuilder(lActivity!!) + .setView(dialogBinding.root) + .setNeutralButton(R.string.delete, null) + .setNegativeButton(android.R.string.cancel, null) + .setPositiveButton(android.R.string.ok, null) + .show() + + dialogBinding.thumbField.setText(thumbLetter) + dialogBinding.inputField.setText(intentString) + when (shortcutType) { + SHORTCUT_TYPE_PHONE -> dialogBinding.shortcutType.check(dialogBinding.contact.id) + SHORTCUT_TYPE_URL -> dialogBinding.shortcutType.check(dialogBinding.url.id) + } + + /* set up color picker section */ + ColorPicker(color, dialogBinding.colorPicker.colorInput, dialogBinding.colorPicker.colorA, + dialogBinding.colorPicker.colorR, dialogBinding.colorPicker.colorG, + dialogBinding.colorPicker.colorB, dialogBinding.root).pickColor() + + /* shortcut type chooser - contact/url */ + var updatedShortcutType = shortcutType + dialogBinding.shortcutType.addOnButtonCheckedListener { + _: MaterialButtonToggleGroup?, checkedId: Int, isChecked: Boolean -> + if (isChecked) { + when (checkedId) { + dialogBinding.contact.id -> { + updatedShortcutType = SHORTCUT_TYPE_PHONE + dialogBinding.inputField.inputType = InputType.TYPE_CLASS_PHONE + } + dialogBinding.url.id -> { + updatedShortcutType = SHORTCUT_TYPE_URL + dialogBinding.inputField.inputType = InputType.TYPE_TEXT_VARIATION_URI + } + } + } + } + + dialogBuilder.getButton(AlertDialog.BUTTON_NEUTRAL).setOnClickListener { + sharedPreferences.edit().remove(KEY_SHORTCUT_NO_ + position).apply() + dialogBuilder.dismiss() + this.onResume() + } + + /* save the shortcut values */ + dialogBuilder.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener { + /* get shortcut value */ + val updatedIntentString = + Objects.requireNonNull(dialogBinding.inputField.text).toString().trim { it <= ' ' } + /* get thumbnail letter */ + val updatedThumbLetter = + Objects.requireNonNull(dialogBinding.thumbField.text).toString().trim { it <= ' ' }.uppercase() + /* get color value */ + val updatedColor = + Objects.requireNonNull(dialogBinding.colorPicker.colorInput.text).toString().trim { it <= ' ' } + + /* save the values if every field is filled */ + if (updatedShortcutType.isNotEmpty() && updatedIntentString.isNotEmpty() && + updatedThumbLetter.isNotEmpty() && updatedColor.isNotEmpty()) { + sharedPreferences.edit().putString(KEY_SHORTCUT_NO_ + position, + "$updatedShortcutType$SEPARATOR$updatedIntentString$SEPARATOR" + + "$updatedThumbLetter$SEPARATOR$updatedColor").apply() + dialogBuilder.dismiss() + this.onResume() + } + } + } + + /* create text view for shortcut thumbnails */ + private val textView: MaterialTextView get() { + val relativeLayout = RelativeLayout(lActivity!!) + relativeLayout.apply { + layoutParams = LinearLayoutCompat.LayoutParams( + LinearLayoutCompat.LayoutParams.WRAP_CONTENT, + LinearLayoutCompat.LayoutParams.WRAP_CONTENT, 1F) + gravity = Gravity.CENTER + } + binding.shortcutsGroup.addView(relativeLayout) + + MaterialTextView(requireContext()).apply { + layoutParams = LinearLayoutCompat.LayoutParams( + (iconSize * resources.displayMetrics.density).toInt(), + (iconSize * resources.displayMetrics.density).toInt()) + gravity = Gravity.CENTER + textSize = (iconSize / 4) * resources.displayMetrics.density + setTypeface(null, Typeface.BOLD) + background = ContextCompat.getDrawable(requireContext(), R.drawable.rounded_bg) + }.let { + relativeLayout.addView(it) + return it + } + } + + /* returns maximum brightness value of the device */ + private val maxBrightness: Float get() { + val powerManager = requireContext().getSystemService(Context.POWER_SERVICE) as PowerManager + var value = 255f + for (f in powerManager.javaClass.declaredFields) { + if (f.name.equals("BRIGHTNESS_ON")) { + f.isAccessible = true + value = try { + f.getInt(powerManager).toFloat() + } catch (e: IllegalAccessException) { + 255f + } + } + } + return value + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/settings/SettingsActivity.kt b/app/src/main/kotlin/rasel/lunar/launcher/settings/SettingsActivity.kt new file mode 100644 index 0000000..ac73576 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/settings/SettingsActivity.kt @@ -0,0 +1,148 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.settings + +import android.annotation.SuppressLint +import android.content.Intent +import android.content.SharedPreferences +import android.content.res.Resources +import android.net.Uri +import android.os.Bundle +import androidx.appcompat.app.AppCompatActivity +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.color.DynamicColors +import com.google.android.material.dialog.MaterialAlertDialogBuilder +import rasel.lunar.launcher.BuildConfig +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.AboutBinding +import rasel.lunar.launcher.databinding.SettingsActivityBinding +import rasel.lunar.launcher.helpers.Constants.Companion.BOTTOM_SHEET_TAG +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import rasel.lunar.launcher.settings.childs.* + + +internal class SettingsActivity : AppCompatActivity() { + + private lateinit var binding: SettingsActivityBinding + private val sourceCode = "https://github.com/iamrasel/lunar-launcher" + + companion object { + @JvmStatic var settingsPrefs: SharedPreferences? = null + } + + @SuppressLint("SetTextI18n") + override fun onCreate(savedInstanceState: Bundle?) { + DynamicColors.applyToActivityIfAvailable(this) + super.onCreate(savedInstanceState) + + /* set up view */ + binding = SettingsActivityBinding.inflate(layoutInflater) + setContentView(binding.root) + + settingsPrefs = this.getSharedPreferences(PREFS_SETTINGS, 0) + + /* launch child settings dialogs on button clicks */ + binding.timeDate.setOnClickListener { + TimeDate().show(supportFragmentManager, BOTTOM_SHEET_TAG) + } + + binding.weather.setOnClickListener { + WeatherSettings().show(supportFragmentManager, BOTTOM_SHEET_TAG) + } + + binding.todo.setOnClickListener { + TodoSettings().show(supportFragmentManager, BOTTOM_SHEET_TAG) + } + + binding.apps.setOnClickListener { + Apps().show(supportFragmentManager, BOTTOM_SHEET_TAG) + } + + binding.appearances.setOnClickListener { + Appearances().show(supportFragmentManager, BOTTOM_SHEET_TAG) + } + + binding.misc.setOnClickListener { + Misc().show(supportFragmentManager, BOTTOM_SHEET_TAG) + } + + binding.advance.setOnClickListener { + Advance().show(supportFragmentManager, BOTTOM_SHEET_TAG) + } + + /* about and support dialogs */ + binding.about.setOnClickListener { aboutDialog() } + binding.support.setOnClickListener { supportDialog() } + + /* show app version name */ + binding.version.text = "${BuildConfig.VERSION_NAME} (${BuildConfig.VERSION_CODE})" + } + + override fun getTheme(): Resources.Theme { + val theme = super.getTheme() + theme.applyStyle(R.style.SettingsNavBar, true) + return theme + } + + /* about dialog */ + private fun aboutDialog() { + val bottomSheetDialog = BottomSheetDialog(this) + val aboutBinding = AboutBinding.inflate(this.layoutInflater) + bottomSheetDialog.setContentView(aboutBinding.root) + bottomSheetDialog.show() + bottomSheetDialog.dismissWithAnimation = true + + /* source code at github */ + aboutBinding.sourceCode.setOnClickListener { + bottomSheetDialog.dismiss() + startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(sourceCode))) + } + /* wiki at github */ + aboutBinding.wiki.setOnClickListener { + bottomSheetDialog.dismiss() + startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("$sourceCode/wiki"))) + } + /* telegram community */ + aboutBinding.telegramGroup.setOnClickListener { + bottomSheetDialog.dismiss() + startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("https://t.me/LunarLauncher_chats"))) + } + } + + /* support dialog */ + private fun supportDialog() { + MaterialAlertDialogBuilder(this) + .setTitle(R.string.support) + .setMessage(R.string.support_message) + /* star button */ + .setNeutralButton(R.string.star) { _, _ -> + startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(sourceCode))) + } + /* affiliate button */ + .setNegativeButton(R.string.amazon) { _, _ -> + startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("https://amzn.to/44krAw9"))) + } + /* donate button */ + .setPositiveButton(R.string.donate) { _, _ -> + startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("https://iamrasel.github.io/donate"))) + } + .show() + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Advance.kt b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Advance.kt new file mode 100644 index 0000000..df74de4 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Advance.kt @@ -0,0 +1,72 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.settings.childs + +import android.content.Intent +import android.os.Bundle +import android.provider.Settings +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import com.google.android.material.dialog.MaterialAlertDialogBuilder +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.SettingsAdvanceBinding +import kotlin.system.exitProcess + + +internal class Advance : BottomSheetDialogFragment() { + + private lateinit var binding : SettingsAdvanceBinding + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = SettingsAdvanceBinding.inflate(inflater, container, false) + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + (requireDialog() as BottomSheetDialog).dismissWithAnimation = true + + /* open Default Home App screen from device settings */ + binding.chooseLauncher.setOnClickListener { + requireContext().startActivity(Intent(Settings.ACTION_HOME_SETTINGS)) + this.dismiss() + } + + /* reset and restart button click listeners */ + binding.reset.setOnClickListener { reset() } + binding.restart.setOnClickListener { exitProcess(0) } + } + + /* reset app data */ + private fun reset() { + MaterialAlertDialogBuilder(requireActivity()) + .setTitle(R.string.reset) + .setMessage(R.string.reset_message) + .setPositiveButton(R.string.proceed) { dialog, _ -> + dialog.dismiss() + Runtime.getRuntime().exec("pm clear " + requireContext().packageName) + } + .setNeutralButton(android.R.string.cancel) { dialog, _ -> dialog.dismiss() } + .show() + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Appearances.kt b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Appearances.kt new file mode 100644 index 0000000..74f185c --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Appearances.kt @@ -0,0 +1,204 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.settings.childs + +import android.Manifest.permission.READ_EXTERNAL_STORAGE +import android.Manifest.permission.READ_MEDIA_IMAGES +import android.app.Activity.RESULT_OK +import android.app.AlertDialog +import android.app.WallpaperManager +import android.content.Intent +import android.content.pm.PackageManager +import android.content.res.ColorStateList +import android.graphics.BitmapFactory +import android.graphics.Color +import android.graphics.Matrix +import android.os.Build +import android.os.Bundle +import android.provider.MediaStore +import android.text.SpannableStringBuilder +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.Toast +import androidx.activity.result.contract.ActivityResultContracts +import androidx.appcompat.app.AppCompatDelegate +import androidx.appcompat.app.AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM +import androidx.appcompat.app.AppCompatDelegate.MODE_NIGHT_NO +import androidx.appcompat.app.AppCompatDelegate.MODE_NIGHT_YES +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import com.google.android.material.dialog.MaterialAlertDialogBuilder +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.ColorPickerBinding +import rasel.lunar.launcher.databinding.SettingsAppearancesBinding +import rasel.lunar.launcher.helpers.ColorPicker +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_APPLICATION_THEME +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_STATUS_BAR +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_WINDOW_BACKGROUND +import rasel.lunar.launcher.helpers.UniUtils.Companion.getColorResId +import rasel.lunar.launcher.settings.SettingsActivity.Companion.settingsPrefs +import java.io.IOException +import java.util.* + + +internal class Appearances : BottomSheetDialogFragment() { + + private lateinit var binding : SettingsAppearancesBinding + private lateinit var windowBackground : String + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = SettingsAppearancesBinding.inflate(inflater, container, false) + + /* initialize views according to the saved values */ + when (settingsPrefs!!.getInt(KEY_APPLICATION_THEME, MODE_NIGHT_FOLLOW_SYSTEM)) { + MODE_NIGHT_FOLLOW_SYSTEM -> binding.followSystemTheme.isChecked = true + MODE_NIGHT_YES -> binding.selectDarkTheme.isChecked = true + MODE_NIGHT_NO -> binding.selectLightTheme.isChecked = true + } + + when (settingsPrefs!!.getBoolean(KEY_STATUS_BAR, false)) { + false -> binding.hideStatusNegative.isChecked = true + true -> binding.hideStatusPositive.isChecked = true + } + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + (requireDialog() as BottomSheetDialog).dismissWithAnimation = true + + /* change theme */ + binding.themeGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.followSystemTheme.id -> { + settingsPrefs!!.edit().putInt(KEY_APPLICATION_THEME, MODE_NIGHT_FOLLOW_SYSTEM).apply() + AppCompatDelegate.setDefaultNightMode(MODE_NIGHT_FOLLOW_SYSTEM) + } + binding.selectDarkTheme.id -> { + settingsPrefs!!.edit().putInt(KEY_APPLICATION_THEME, MODE_NIGHT_YES).apply() + AppCompatDelegate.setDefaultNightMode(MODE_NIGHT_YES) + } + binding.selectLightTheme.id -> { + settingsPrefs!!.edit().putInt(KEY_APPLICATION_THEME, MODE_NIGHT_NO).apply() + AppCompatDelegate.setDefaultNightMode(MODE_NIGHT_NO) + } + } + } + + binding.background.setOnClickListener { selectBackground() } + binding.changeWallpaper.setOnClickListener { selectWallpaper() } + + binding.hideStatusGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.hideStatusNegative.id -> settingsPrefs!!.edit().putBoolean(KEY_STATUS_BAR, false).apply() + binding.hideStatusPositive.id -> settingsPrefs!!.edit().putBoolean(KEY_STATUS_BAR, true).apply() + } + } + } + + override fun onResume() { + super.onResume() + windowBackground = settingsPrefs!!.getString(KEY_WINDOW_BACKGROUND, defaultColorString).toString() + binding.background.iconTint = ColorStateList.valueOf(Color.parseColor("#$windowBackground")) + } + + private fun selectBackground() { + val colorPickerBinding = ColorPickerBinding.inflate(requireActivity().layoutInflater) + val dialogBuilder = MaterialAlertDialogBuilder(requireActivity()) + .setView(colorPickerBinding.root) + .setNeutralButton(R.string.default_, null) + .setNegativeButton(android.R.string.cancel, null) + .setPositiveButton(android.R.string.ok) { _, _ -> + settingsPrefs!!.edit().putString(KEY_WINDOW_BACKGROUND, + Objects.requireNonNull(colorPickerBinding.colorInput.text).toString().trim { it <= ' ' }).apply() + this.onResume() + } + .show() + + /* set up color picker section */ + ColorPicker(windowBackground, colorPickerBinding.colorInput, + colorPickerBinding.colorA, colorPickerBinding.colorR, colorPickerBinding.colorG, + colorPickerBinding.colorB, colorPickerBinding.root).pickColor() + + dialogBuilder.getButton(AlertDialog.BUTTON_NEUTRAL).setOnClickListener { + colorPickerBinding.colorInput.text = + SpannableStringBuilder(defaultColorString) + } + } + + private fun selectWallpaper() { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + // only for TIRAMISU and newer versions + if (requireActivity().checkSelfPermission(READ_MEDIA_IMAGES) != PackageManager.PERMISSION_GRANTED) { + requireActivity().requestPermissions(arrayOf(READ_MEDIA_IMAGES), 1) + } else { + wallpaperChangeLauncher.launch(Intent(Intent.ACTION_PICK).setType("image/*")) + } + } else { + if (requireActivity().checkSelfPermission(READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { + requireActivity().requestPermissions(arrayOf(READ_EXTERNAL_STORAGE), 1) + } else { + wallpaperChangeLauncher.launch(Intent(Intent.ACTION_PICK).setType("image/*")) + } + } + } + + private val defaultColorString: String get() = + requireActivity().getString(getColorResId(requireContext(), android.R.attr.colorBackground)) + .replace("#", "") + + private var wallpaperChangeLauncher = + registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> + if (result.resultCode == RESULT_OK) { + try { + val uri = result.data?.data + val projection = arrayOf(MediaStore.Images.Media.DATA) + val cursor = requireContext().contentResolver.query( + uri!!, projection, null, null, null + ) + cursor?.moveToFirst() + val index = cursor!!.getColumnIndex(projection[0]) + val filePath = cursor.getString(index) + cursor.close() + val bitmap = BitmapFactory.decodeFile(filePath) + val matrix = Matrix() + matrix.postRotate(0F) + try { + if (bitmap != null) { + WallpaperManager.getInstance(requireContext()).setBitmap(bitmap) + Toast.makeText(requireContext(), + requireActivity().getString(R.string.wallpaper_change_success), Toast.LENGTH_SHORT).show() + } else { + Toast.makeText(requireContext(), + requireActivity().getString(R.string.image_pick_failed), Toast.LENGTH_SHORT).show() + } + } catch (e: IOException) { + e.printStackTrace() + Toast.makeText(requireContext(), + requireActivity().getString(R.string.something_went_wrong), Toast.LENGTH_SHORT).show() + } + } catch (e: Exception) { + e.printStackTrace() + } + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Apps.kt b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Apps.kt new file mode 100644 index 0000000..6ffad63 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Apps.kt @@ -0,0 +1,319 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.settings.childs + +import android.annotation.SuppressLint +import android.app.Dialog +import android.content.Intent +import android.content.pm.ApplicationInfo +import android.content.pm.PackageManager +import android.os.Build +import android.os.Bundle +import android.view.Gravity +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.view.ViewGroup.LayoutParams.MATCH_PARENT +import android.view.ViewGroup.LayoutParams.WRAP_CONTENT +import android.widget.Toast +import androidx.appcompat.widget.LinearLayoutCompat +import androidx.core.view.children +import com.google.android.material.bottomsheet.BottomSheetBehavior +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import com.google.android.material.chip.Chip +import com.google.android.material.chip.ChipDrawable +import com.google.android.material.chip.ChipGroup +import com.google.android.material.dialog.MaterialAlertDialogBuilder +import com.google.android.material.slider.Slider +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.SettingsAppsBinding +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_GRID_COLUMNS +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_ICON_PACK +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_SCROLLBAR_HEIGHT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_APPS_COUNT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_APPS_LAYOUT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_DRAW_ALIGN +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_GRID_COLUMNS +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_ICON_PACK +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_KEYBOARD_SEARCH +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_QUICK_LAUNCH +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_SCROLLBAR_HEIGHT +import rasel.lunar.launcher.helpers.UniUtils.Companion.dpToPx +import rasel.lunar.launcher.settings.SettingsActivity.Companion.settingsPrefs +import kotlin.system.exitProcess + + +internal class Apps : BottomSheetDialogFragment() { + + private lateinit var binding: SettingsAppsBinding + private var settingsChanged: Boolean = false + private var packageManager: PackageManager? = null + + override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { + val bottomSheetView = View.inflate(context, R.layout.settings_apps, null) + val dialog = super.onCreateDialog(savedInstanceState).apply { + setContentView(bottomSheetView) + } + + // Set the height to wrap_content + BottomSheetBehavior.from(bottomSheetView.parent as View) + .peekHeight = resources.displayMetrics.heightPixels // Adjust this if needed + + return dialog + } + + @SuppressLint("RtlHardcoded") + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = SettingsAppsBinding.inflate(inflater, container, false) + packageManager = requireActivity().packageManager + + /* initialize views according to the saved values */ + when (settingsPrefs!!.getBoolean(KEY_KEYBOARD_SEARCH, false)) { + false -> binding.keyboardAutoNegative.isChecked = true + true -> binding.keyboardAutoPositive.isChecked = true + } + + when (settingsPrefs!!.getBoolean(KEY_QUICK_LAUNCH, true)) { + true -> binding.quickLaunchPositive.isChecked = true + false -> binding.quickLaunchNegative.isChecked = true + } + + when (settingsPrefs!!.getBoolean(KEY_APPS_COUNT, true)) { + true -> binding.appsCountPositive.isChecked = true + false -> binding.appsCountNegative.isChecked = true + } + + when (settingsPrefs!!.getInt(KEY_APPS_LAYOUT, 0)) { + 0 -> { + binding.drawerLayoutList.isChecked = true + binding.appAlignmentGroup.children.forEach { it.isEnabled = true } + binding.iconPackChooser.isEnabled = false + binding.columnsCount.isEnabled = false + } + 1 -> { + binding.drawerLayoutListIcon.isChecked = true + binding.appAlignmentGroup.children.forEach { it.isEnabled = true } + binding.iconPackChooser.isEnabled = true + binding.columnsCount.isEnabled = false + } + 2 -> { + binding.drawerLayoutGrid.isChecked = true + binding.appAlignmentGroup.children.forEach { it.isEnabled = false } + binding.iconPackChooser.isEnabled = true + binding.columnsCount.isEnabled = true + } + } + + when (settingsPrefs!!.getInt(KEY_DRAW_ALIGN, Gravity.CENTER)) { + Gravity.CENTER -> binding.appAlignmentCenter.isChecked = true + Gravity.LEFT -> binding.appAlignmentLeft.isChecked = true + Gravity.RIGHT -> binding.appAlignmentRight.isChecked = true + } + + binding.columnsCount.value = settingsPrefs!!.getInt(KEY_GRID_COLUMNS, DEFAULT_GRID_COLUMNS).toFloat() + binding.scrollbarHeight.value = settingsPrefs!!.getInt(KEY_SCROLLBAR_HEIGHT, DEFAULT_SCROLLBAR_HEIGHT).toFloat() + + return binding.root + } + + @SuppressLint("RtlHardcoded") + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + (requireDialog() as BottomSheetDialog).dismissWithAnimation = true + + /* change search with keyboard value */ + binding.keyboardAutoGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.keyboardAutoPositive.id -> settingsPrefs!!.edit().putBoolean(KEY_KEYBOARD_SEARCH, true).apply() + binding.keyboardAutoNegative.id -> settingsPrefs!!.edit().putBoolean(KEY_KEYBOARD_SEARCH, false).apply() + } + } + + /* change settings for quick launch */ + binding.quickLaunchGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.quickLaunchPositive.id -> settingsPrefs!!.edit().putBoolean(KEY_QUICK_LAUNCH, true).apply() + binding.quickLaunchNegative.id -> settingsPrefs!!.edit().putBoolean(KEY_QUICK_LAUNCH, false).apply() + } + } + + binding.appsCountGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.appsCountPositive.id -> settingsPrefs!!.edit().putBoolean(KEY_APPS_COUNT, true).apply() + binding.appsCountNegative.id -> settingsPrefs!!.edit().putBoolean(KEY_APPS_COUNT, false).apply() + } + } + + binding.drawerLayoutGroup.setOnCheckedStateChangeListener { group, _ -> + settingsChanged = true + when (group.checkedChipId) { + binding.drawerLayoutList.id -> { + settingsPrefs!!.edit().putInt(KEY_APPS_LAYOUT, 0).apply() + binding.appAlignmentGroup.children.forEach { if (!it.isEnabled) it.isEnabled = true } + binding.iconPackChooser.let { if (it.isEnabled) it.isEnabled = false } + binding.columnsCount.let { if (it.isEnabled) it.isEnabled = false } + } + binding.drawerLayoutListIcon.id -> { + settingsPrefs!!.edit().putInt(KEY_APPS_LAYOUT, 1).apply() + binding.appAlignmentGroup.children.forEach { if (!it.isEnabled) it.isEnabled = true } + binding.iconPackChooser.let { if (!it.isEnabled) it.isEnabled = true } + binding.columnsCount.let { if (it.isEnabled) it.isEnabled = false } + } + binding.drawerLayoutGrid.id -> { + settingsPrefs!!.edit().putInt(KEY_APPS_LAYOUT, 2).apply() + binding.appAlignmentGroup.children.forEach { if (it.isEnabled) it.isEnabled = false } + binding.iconPackChooser.let { if (!it.isEnabled) it.isEnabled = true } + binding.columnsCount.let { if (!it.isEnabled) it.isEnabled = true } + } + } + } + + binding.appAlignmentGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.appAlignmentLeft.id -> settingsPrefs!!.edit().putInt(KEY_DRAW_ALIGN, Gravity.LEFT).apply() + binding.appAlignmentCenter.id -> settingsPrefs!!.edit().putInt(KEY_DRAW_ALIGN, Gravity.CENTER).apply() + binding.appAlignmentRight.id -> settingsPrefs!!.edit().putInt(KEY_DRAW_ALIGN, Gravity.RIGHT).apply() + } + } + + binding.iconPackChooser.setOnClickListener { iconPackChooser() } + + binding.columnsCount.addOnChangeListener(Slider.OnChangeListener { _, value, _ -> + settingsChanged = true + settingsPrefs!!.edit().putInt(KEY_GRID_COLUMNS, value.toInt()).apply() + }) + + binding.scrollbarHeight.addOnChangeListener(Slider.OnChangeListener { _, value, _ -> + settingsPrefs!!.edit().putInt(KEY_SCROLLBAR_HEIGHT, value.toInt()).apply() + }) + } + + override fun onDestroyView() { + super.onDestroyView() + if (settingsChanged) { + MaterialAlertDialogBuilder(requireActivity()) + .setTitle(R.string.restart_now) + .setMessage(R.string.restart_message) + .setPositiveButton(R.string.restart) { _, _ -> + exitProcess(0) + } + .setNeutralButton(R.string.later, null) + .show() + } + } + + private fun iconPackChooser() { + if (installedIconPacks.isNotEmpty()) { + var selectedIconPack: String? = null + + val chipGroup = ChipGroup(requireContext()).apply { + layoutParams = LinearLayoutCompat.LayoutParams(WRAP_CONTENT, WRAP_CONTENT) + isSingleSelection = true + isSelectionRequired = true + setOnCheckedStateChangeListener { group, _ -> + selectedIconPack = group.findViewById(group.checkedChipId).tag as String + } + } + + installedIconPacks.indices.forEach { i -> + Chip(requireContext()).apply { + layoutParams = LinearLayoutCompat.LayoutParams(WRAP_CONTENT, WRAP_CONTENT) + setChipDrawable(ChipDrawable.createFromAttributes(requireContext(), null, 0, + com.google.android.material.R.style.Widget_Material3_Chip_Filter_Elevated)) + + text = packageManager?.getApplicationLabel(appInfo(installedIconPacks[i])!!) + tag = installedIconPacks[i] + + if (settingsPrefs!!.getString(KEY_ICON_PACK, DEFAULT_ICON_PACK).equals(tag as String)) { + isChecked = true + } + }.let { chipGroup.addView(it) } + } + + val eightDp = dpToPx(requireContext(), R.dimen.eight) + val linearLayoutCompat = LinearLayoutCompat(requireContext()).apply { + layoutParams = LinearLayoutCompat.LayoutParams(MATCH_PARENT, WRAP_CONTENT) + gravity = Gravity.CENTER + setPadding(eightDp, eightDp, eightDp, eightDp) + addView(chipGroup) + } + + MaterialAlertDialogBuilder(requireActivity()).apply { + setTitle(R.string.choose_icon_pack) + setView(linearLayoutCompat) + setPositiveButton(android.R.string.ok) { dialog, _ -> + when (selectedIconPack) { + null -> dialog.dismiss() + else -> { + if (!selectedIconPack.equals(settingsPrefs!!.getString(KEY_ICON_PACK, DEFAULT_ICON_PACK))) { + settingsChanged = true + settingsPrefs!!.edit().putString(KEY_ICON_PACK, selectedIconPack).apply() + } else { dialog.dismiss() } + + } + } + } + setNeutralButton(R.string.default_) { dialog, _ -> + if (DEFAULT_ICON_PACK != settingsPrefs!!.getString(KEY_ICON_PACK, DEFAULT_ICON_PACK)) { + settingsChanged = true + settingsPrefs!!.edit().putString(KEY_ICON_PACK, DEFAULT_ICON_PACK).apply() + } else { dialog.dismiss() } + } + show() + } + } else { + Toast.makeText(requireContext(), R.string.icon_pack_not_found, Toast.LENGTH_SHORT).show() + } + } + + private val installedIconPacks: ArrayList get() { + val iconPacks = ArrayList() + + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + packageManager?.queryIntentActivities( + Intent("org.adw.launcher.THEMES"), + PackageManager.ResolveInfoFlags.of(PackageManager.GET_META_DATA.toLong()) + ) + } else { + @Suppress("DEPRECATION") + (packageManager?.queryIntentActivities( + Intent("org.adw.launcher.THEMES"), PackageManager.GET_META_DATA)) + }.let { + it?.indices?.forEach { i -> + it[i].activityInfo.packageName.let { packageName: String? -> + iconPacks.add(packageName!!) + } + } + } + + return iconPacks + } + + private fun appInfo(packageName: String) : ApplicationInfo? { + return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + packageManager?.getApplicationInfo(packageName, + PackageManager.ApplicationInfoFlags.of(PackageManager.GET_META_DATA.toLong())) + } else { + @Suppress("DEPRECATION") + packageManager?.getApplicationInfo(packageName, PackageManager.GET_META_DATA) + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Misc.kt b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Misc.kt new file mode 100644 index 0000000..910cadc --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/Misc.kt @@ -0,0 +1,120 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.settings.childs + +import android.content.DialogInterface +import android.os.Build +import android.os.Bundle +import android.text.SpannableStringBuilder +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import com.google.android.material.slider.Slider +import rasel.lunar.launcher.databinding.SettingsMiscBinding +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_ICON_SIZE +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_BACK_HOME +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_ICON_SIZE +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_LOCK_METHOD +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_RSS_URL +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_SHORTCUT_COUNT +import rasel.lunar.launcher.helpers.Constants.Companion.MAX_SHORTCUTS +import rasel.lunar.launcher.helpers.UniUtils.Companion.isRooted +import rasel.lunar.launcher.settings.SettingsActivity.Companion.settingsPrefs +import java.util.* + + +internal class Misc : BottomSheetDialogFragment() { + + private lateinit var binding : SettingsMiscBinding + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = SettingsMiscBinding.inflate(inflater, container, false) + + /* initialize views according to the saved values */ + when (settingsPrefs!!.getBoolean(KEY_BACK_HOME, false)) { + true -> binding.backHomePositive.isChecked = true + false -> binding.backHomeNegative.isChecked = true + } + + binding.shortcutCount.valueTo = MAX_SHORTCUTS.toFloat() + binding.shortcutCount.value = settingsPrefs!!.getInt(KEY_SHORTCUT_COUNT, MAX_SHORTCUTS).toFloat() + binding.iconSize.value = settingsPrefs!!.getInt(KEY_ICON_SIZE, DEFAULT_ICON_SIZE).toFloat() + binding.inputFeedUrl.text = SpannableStringBuilder(settingsPrefs!!.getString(KEY_RSS_URL, "")) + + when (settingsPrefs!!.getInt(KEY_LOCK_METHOD, 0)) { + 0 -> binding.selectLockNegative.isChecked = true + 1 -> binding.selectLockAccessibility.isChecked = true + 2 -> binding.selectLockAdmin.isChecked = true + 3 -> binding.selectLockRoot.isChecked = true + } + + /* disable accessibility button for devices below android 9 */ + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P) { + binding.selectLockAccessibility.isEnabled = false + } + + /* disable root button for non-rooted devices */ + if (!isRooted) { + binding.selectLockRoot.isEnabled = false + } + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + (requireDialog() as BottomSheetDialog).dismissWithAnimation = true + + binding.backHomeGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.backHomePositive.id -> settingsPrefs!!.edit().putBoolean(KEY_BACK_HOME, true).apply() + binding.backHomeNegative.id -> settingsPrefs!!.edit().putBoolean(KEY_BACK_HOME, false).apply() + } + } + + /* change shortcut count value */ + binding.shortcutCount.addOnChangeListener(Slider.OnChangeListener { _: Slider?, value: Float, _: Boolean -> + settingsPrefs!!.edit().putInt(KEY_SHORTCUT_COUNT, value.toInt()).apply() + }) + + binding.iconSize.addOnChangeListener(Slider.OnChangeListener { _: Slider?, value: Float, _: Boolean -> + settingsPrefs!!.edit().putInt(KEY_ICON_SIZE, value.toInt()).apply() + }) + + /* change lock method value */ + binding.lockGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.selectLockNegative.id -> settingsPrefs!!.edit().putInt(KEY_LOCK_METHOD, 0).apply() + binding.selectLockAccessibility.id -> settingsPrefs!!.edit().putInt(KEY_LOCK_METHOD, 1).apply() + binding.selectLockAdmin.id -> settingsPrefs!!.edit().putInt(KEY_LOCK_METHOD, 2).apply() + binding.selectLockRoot.id -> settingsPrefs!!.edit().putInt(KEY_LOCK_METHOD, 3).apply() + } + } + } + + /* save input field value while closing the dialog */ + override fun onDismiss(dialog: DialogInterface) { + super.onDismiss(dialog) + settingsPrefs!!.edit().putString(KEY_RSS_URL, + Objects.requireNonNull(binding.inputFeedUrl.text).toString().trim { it <= ' ' }).apply() + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/TimeDate.kt b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/TimeDate.kt new file mode 100644 index 0000000..1d35c56 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/TimeDate.kt @@ -0,0 +1,79 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.settings.childs + +import android.content.DialogInterface +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import rasel.lunar.launcher.databinding.SettingsTimeDateBinding +import rasel.lunar.launcher.helpers.Constants.Companion.DEFAULT_DATE_FORMAT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_DATE_FORMAT +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_TIME_FORMAT +import rasel.lunar.launcher.settings.SettingsActivity.Companion.settingsPrefs +import java.util.* + + +internal class TimeDate : BottomSheetDialogFragment() { + + private lateinit var binding : SettingsTimeDateBinding + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = SettingsTimeDateBinding.inflate(inflater, container, false) + + /* initialize views according to the saved values */ + when (settingsPrefs!!.getInt(KEY_TIME_FORMAT, 0)) { + 0 -> binding.followSystemTime.isChecked = true + 1 -> binding.selectTwelve.isChecked = true + 2 -> binding.selectTwentyFour.isChecked = true + } + + binding.dateFormat + .setText(settingsPrefs!!.getString(KEY_DATE_FORMAT, DEFAULT_DATE_FORMAT).toString()) + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + (requireDialog() as BottomSheetDialog).dismissWithAnimation = true + + /* change time format value */ + binding.timeGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.followSystemTime.id -> settingsPrefs!!.edit().putInt(KEY_TIME_FORMAT, 0).apply() + binding.selectTwelve.id -> settingsPrefs!!.edit().putInt(KEY_TIME_FORMAT, 1).apply() + binding.selectTwentyFour.id -> settingsPrefs!!.edit().putInt(KEY_TIME_FORMAT, 2).apply() + } + } + } + + /* if the input field is empty, then save the default value. + else save the value from input field while closing the dialog */ + override fun onDismiss(dialog: DialogInterface) { + super.onDismiss(dialog) + val dateFormat = Objects.requireNonNull(binding.dateFormat.text).toString().trim { it <= ' ' } + if (dateFormat.isEmpty()) settingsPrefs!!.edit().putString(KEY_DATE_FORMAT, DEFAULT_DATE_FORMAT).apply() + else settingsPrefs!!.edit().putString(KEY_DATE_FORMAT, dateFormat).apply() + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/TodoSettings.kt b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/TodoSettings.kt new file mode 100644 index 0000000..f3db893 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/TodoSettings.kt @@ -0,0 +1,70 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.settings.childs + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import com.google.android.material.slider.Slider +import rasel.lunar.launcher.databinding.SettingsTodoBinding +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_TODO_COUNTS +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_TODO_LOCK +import rasel.lunar.launcher.settings.SettingsActivity.Companion.settingsPrefs + + +internal class TodoSettings : BottomSheetDialogFragment() { + + private lateinit var binding : SettingsTodoBinding + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = SettingsTodoBinding.inflate(inflater, container, false) + + /* initialize views according to the saved values */ + binding.showTodos.value = settingsPrefs!!.getInt(KEY_TODO_COUNTS, 3).toFloat() + + when (settingsPrefs!!.getBoolean(KEY_TODO_LOCK, false)) { + false -> binding.todoLockNegative.isChecked = true + true -> binding.todoLockPositive.isChecked = true + } + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + (requireDialog() as BottomSheetDialog).dismissWithAnimation = true + + /* change to-do count value */ + binding.showTodos.addOnChangeListener(Slider.OnChangeListener { _: Slider?, value: Float, _: Boolean -> + settingsPrefs!!.edit().putInt(KEY_TODO_COUNTS, value.toInt()).apply() + }) + + /* change to-do lock state value */ + binding.todoLockGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.todoLockPositive.id -> settingsPrefs!!.edit().putBoolean(KEY_TODO_LOCK, true).apply() + binding.todoLockNegative.id -> settingsPrefs!!.edit().putBoolean(KEY_TODO_LOCK, false).apply() + } + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/WeatherSettings.kt b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/WeatherSettings.kt new file mode 100644 index 0000000..576a381 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/settings/childs/WeatherSettings.kt @@ -0,0 +1,91 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.settings.childs + +import android.content.DialogInterface +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import com.google.android.material.bottomsheet.BottomSheetDialog +import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import rasel.lunar.launcher.databinding.SettingsWeatherBinding +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_CITY_NAME +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_OWM_API +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_SHOW_CITY +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_TEMP_UNIT +import rasel.lunar.launcher.settings.SettingsActivity.Companion.settingsPrefs +import java.util.* + + +internal class WeatherSettings : BottomSheetDialogFragment() { + + private lateinit var binding : SettingsWeatherBinding + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + binding = SettingsWeatherBinding.inflate(inflater, container, false) + + /* initialize views according to the saved values */ + binding.inputCity.setText(settingsPrefs!!.getString(KEY_CITY_NAME, "").toString()) + binding.inputOwm.setText(settingsPrefs!!.getString(KEY_OWM_API, "").toString()) + + when (settingsPrefs!!.getInt(KEY_TEMP_UNIT, 0)) { + 0 -> binding.selectCelsius.isChecked = true + 1 -> binding.selectFahrenheit.isChecked = true + } + + when (settingsPrefs!!.getBoolean(KEY_SHOW_CITY, false)) { + false -> binding.showCityNegative.isChecked = true + true -> binding.showCityPositive.isChecked = true + } + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + (requireDialog() as BottomSheetDialog).dismissWithAnimation = true + + /* change temperature unit value */ + binding.tempGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.selectCelsius.id -> settingsPrefs!!.edit().putInt(KEY_TEMP_UNIT, 0).apply() + binding.selectFahrenheit.id -> settingsPrefs!!.edit().putInt(KEY_TEMP_UNIT, 1).apply() + } + } + + /* change show city value */ + binding.cityGroup.setOnCheckedStateChangeListener { group, _ -> + when (group.checkedChipId) { + binding.showCityNegative.id -> settingsPrefs!!.edit().putBoolean(KEY_SHOW_CITY, false).apply() + binding.showCityPositive.id -> settingsPrefs!!.edit().putBoolean(KEY_SHOW_CITY, true).apply() + } + } + } + + /* save input field values while closing the dialog */ + override fun onDismiss(dialog: DialogInterface) { + super.onDismiss(dialog) + settingsPrefs!!.edit().putString(KEY_CITY_NAME, + Objects.requireNonNull(binding.inputCity.text).toString().trim { it <= ' ' }).apply() + settingsPrefs!!.edit().putString(KEY_OWM_API, + Objects.requireNonNull(binding.inputOwm.text).toString().trim { it <= ' ' }).apply() + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/todos/DatabaseHandler.kt b/app/src/main/kotlin/rasel/lunar/launcher/todos/DatabaseHandler.kt new file mode 100644 index 0000000..4b08daf --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/todos/DatabaseHandler.kt @@ -0,0 +1,107 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.todos + +import android.database.sqlite.SQLiteOpenHelper +import android.database.sqlite.SQLiteDatabase +import android.content.ContentValues +import android.annotation.SuppressLint +import android.content.Context +import android.database.DatabaseUtils +import rasel.lunar.launcher.helpers.Constants.Companion.TODO_COLUMN_CREATED +import rasel.lunar.launcher.helpers.Constants.Companion.TODO_COLUMN_ID +import rasel.lunar.launcher.helpers.Constants.Companion.TODO_COLUMN_NAME +import rasel.lunar.launcher.helpers.Constants.Companion.TODO_DATABASE_NAME +import rasel.lunar.launcher.helpers.Constants.Companion.TODO_DATABASE_VERSION +import rasel.lunar.launcher.helpers.Constants.Companion.TODO_TABLE_NAME +import java.util.ArrayList + + +internal class DatabaseHandler(context: Context?) : + SQLiteOpenHelper(context, TODO_DATABASE_NAME, null, TODO_DATABASE_VERSION) { + + /* create database */ + override fun onCreate(database: SQLiteDatabase) { + val createTodoTable = "CREATE TABLE " + TODO_TABLE_NAME + " (" + + TODO_COLUMN_ID + " integer PRIMARY KEY AUTOINCREMENT," + + TODO_COLUMN_CREATED + " datetime DEFAULT CURRENT_TIMESTAMP," + + TODO_COLUMN_NAME + " varchar)" + database.execSQL(createTodoTable) + } + + override fun onUpgrade(sqLiteDatabase: SQLiteDatabase, i: Int, i1: Int) {} + + /* add new to-do entry */ + fun addTodo(todo: Todo) { + val database = writableDatabase + val contentValues = ContentValues() + contentValues.put(TODO_COLUMN_NAME, todo.name) + database.insert(TODO_TABLE_NAME, null, contentValues) + } + + /* update or edit existing to-do */ + fun updateTodo(todo: Todo) { + val database = writableDatabase + val contentValues = ContentValues() + contentValues.put(TODO_COLUMN_NAME, todo.name) + database.update( + TODO_TABLE_NAME, + contentValues, + "$TODO_COLUMN_ID=?", + arrayOf(todo.id.toString()) + ) + } + + /* delete a single to-do */ + fun deleteTodo(todoId: Long) { + writableDatabase.delete(TODO_TABLE_NAME, + "$TODO_COLUMN_ID=?", arrayOf(todoId.toString())) + } + + /* delete all existing todos at once */ + fun deleteAll() { + writableDatabase.delete(TODO_TABLE_NAME, null, null) + } + + @get:SuppressLint("Range") + val todos: ArrayList + get() { + val todoList = ArrayList() + val queryResult = + readableDatabase.rawQuery("SELECT * from $TODO_TABLE_NAME", null) + + if (queryResult.moveToFirst()) { + do { + val todo = Todo() + todo.id = queryResult.getLong(queryResult.getColumnIndex(TODO_COLUMN_ID)) + todo.name = queryResult.getString(queryResult.getColumnIndex(TODO_COLUMN_NAME)) + todoList.add(todo) + } while (queryResult.moveToNext()) + } + + queryResult.close() + return todoList + } + + /* check if any item exists in the database */ + val isTodoExists: Boolean get() { + return DatabaseUtils.queryNumEntries(readableDatabase, TODO_TABLE_NAME, 1.toString()) > 0 + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/todos/Todo.kt b/app/src/main/kotlin/rasel/lunar/launcher/todos/Todo.kt new file mode 100644 index 0000000..84d2a4e --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/todos/Todo.kt @@ -0,0 +1,25 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.todos + + +internal class Todo { + var id: Long = -1 + var name = "" +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/todos/TodoAdapter.kt b/app/src/main/kotlin/rasel/lunar/launcher/todos/TodoAdapter.kt new file mode 100644 index 0000000..8ef5387 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/todos/TodoAdapter.kt @@ -0,0 +1,127 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.todos + +import android.annotation.SuppressLint +import android.content.Context +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.core.content.ContextCompat +import androidx.recyclerview.widget.RecyclerView +import com.google.android.material.bottomsheet.BottomSheetDialog +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.ListItemBinding +import rasel.lunar.launcher.databinding.TodoDialogBinding +import rasel.lunar.launcher.helpers.Constants.Companion.KEY_TODO_COUNTS +import rasel.lunar.launcher.helpers.Constants.Companion.PREFS_SETTINGS +import rasel.lunar.launcher.helpers.UniUtils.Companion.copyToClipboard +import java.util.* + + +internal class TodoAdapter( + private val todoManager: TodoManager?, + private val context: Context) : RecyclerView.Adapter() { + + private val currentFragment = lActivity!!.supportFragmentManager.findFragmentById(R.id.mainFragmentsContainer) + private val todoList = DatabaseHandler(context).todos + + override fun onCreateViewHolder(viewGroup: ViewGroup, i: Int): TodoViewHolder { + val binding = ListItemBinding.inflate(LayoutInflater.from(viewGroup.context), viewGroup, false) + return TodoViewHolder(binding) + } + + override fun getItemCount(): Int { + /* if current fragment is LauncherHome, + then return size following the settings value */ + val sharedPreferences = context.getSharedPreferences(PREFS_SETTINGS, 0) + val numberOfTodos = sharedPreferences.getInt(KEY_TODO_COUNTS, 3) + return if (currentFragment !is TodoManager) { + todoList.size.coerceAtMost(numberOfTodos) + } else { + todoList.size + } + } + + @SuppressLint("SetTextI18n") + override fun onBindViewHolder(holder: TodoViewHolder, position: Int) { + val todo = todoList[position] + + holder.view.itemText.text = "\u25CF ${todo.name}" + + if (currentFragment is TodoManager) { + /* multiline texts are enabled for TodoManager */ + holder.view.itemText.isSingleLine = false + /* launch edit or update dialog on item click */ + holder.view.itemText.setOnClickListener { updateDialog(position) } + /* copy texts on long click */ + holder.view.itemText.setOnLongClickListener { + copyToClipboard(context, todo.name) + true + } + } else { + /* single line text for home screen */ + holder.view.itemText.isSingleLine = true + } + } + + inner class TodoViewHolder(var view: ListItemBinding) : RecyclerView.ViewHolder(view.root) + + /* update dialog */ + private fun updateDialog(position: Int) { + val bottomSheetDialog = BottomSheetDialog(lActivity!!, R.style.BottomSheetDialog) + val dialogBinding = TodoDialogBinding.inflate(LayoutInflater.from(context)) + bottomSheetDialog.setContentView(dialogBinding.root) + bottomSheetDialog.show() + bottomSheetDialog.dismissWithAnimation = true + + val databaseHandler = DatabaseHandler(context) + val todo = databaseHandler.todos[position] + + dialogBinding.apply { + deleteAllConfirmation.visibility = View.GONE + todoInput.setText(todo.name) + todoCancel.text = context.getString(R.string.delete) + todoCancel.setTextColor(ContextCompat.getColor(context, android.R.color.holo_red_light)) + todoOk.text = context.getString(R.string.update) + } + + /* delete the item */ + dialogBinding.todoCancel.setOnClickListener { + databaseHandler.deleteTodo(todo.id) + bottomSheetDialog.dismiss() + todoManager?.refreshList() + } + + /* update the item */ + dialogBinding.todoOk.setOnClickListener { + val updatedTodoString = Objects.requireNonNull(dialogBinding.todoInput.text).toString().trim { it <= ' ' } + if (updatedTodoString.isNotEmpty()) { + todo.name = updatedTodoString + databaseHandler.updateTodo(todo) + bottomSheetDialog.dismiss() + todoManager?.refreshList() + } else { + dialogBinding.todoInput.error = context.getString(R.string.empty_text_field) + } + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/todos/TodoManager.kt b/app/src/main/kotlin/rasel/lunar/launcher/todos/TodoManager.kt new file mode 100644 index 0000000..9153e42 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/todos/TodoManager.kt @@ -0,0 +1,129 @@ +/* + * Lunar Launcher + * Copyright (C) 2022 Md Rasel Hossain + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package rasel.lunar.launcher.todos + +import android.content.Context +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.view.inputmethod.InputMethodManager +import androidx.core.content.ContextCompat +import androidx.fragment.app.Fragment +import com.google.android.material.bottomsheet.BottomSheetDialog +import rasel.lunar.launcher.LauncherActivity.Companion.lActivity +import rasel.lunar.launcher.R +import rasel.lunar.launcher.databinding.TodoDialogBinding +import rasel.lunar.launcher.databinding.TodoManagerBinding +import java.util.* + + +internal class TodoManager : Fragment() { + + private lateinit var binding: TodoManagerBinding + private lateinit var databaseHandler: DatabaseHandler + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + + binding = TodoManagerBinding.inflate(inflater, container, false) + databaseHandler = DatabaseHandler(requireContext()) + + return binding.root + } + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + /* click listeners for add new and delete all buttons */ + binding.addNew.setOnClickListener { addNewDialog() } + binding.deleteAll.setOnClickListener { deleteAllDialog() } + } + + override fun onResume() { + super.onResume() + refreshList() + lActivity!!.viewPager.isUserInputEnabled = false + } + + override fun onPause() { + super.onPause() + lActivity!!.viewPager.isUserInputEnabled = true + } + + fun refreshList() { + binding.todos.adapter = TodoAdapter(this, requireContext()) + } + + /* add new dialog */ + private fun addNewDialog() { + val bottomSheetDialog = BottomSheetDialog(lActivity!!, R.style.BottomSheetDialog) + val dialogBinding = TodoDialogBinding.inflate(LayoutInflater.from(requireContext())) + bottomSheetDialog.setContentView(dialogBinding.root) + bottomSheetDialog.show() + bottomSheetDialog.dismissWithAnimation = true + + dialogBinding.deleteAllConfirmation.visibility = View.GONE + /* automatic keyboard popup */ + dialogBinding.todoInput.requestFocus() + val inputMethodManager = lActivity!!.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager + inputMethodManager.showSoftInput(dialogBinding.todoInput, InputMethodManager.SHOW_IMPLICIT) + + /* dismiss the dialog on cancel button click */ + dialogBinding.todoCancel.setOnClickListener { bottomSheetDialog.dismiss() } + /* add new item to the database */ + dialogBinding.todoOk.setOnClickListener { + val todo = Todo() + val todoString = Objects.requireNonNull(dialogBinding.todoInput.text).toString().trim { it <= ' ' } + if (todoString.isNotEmpty()) { + todo.name = todoString + databaseHandler.addTodo(todo) + bottomSheetDialog.dismiss() + refreshList() + } else { + dialogBinding.todoInput.error = getString(R.string.empty_text_field) + } + } + } + + /* delete all dialog */ + private fun deleteAllDialog() { + val bottomSheetDialog = BottomSheetDialog(lActivity!!) + val dialogBinding = TodoDialogBinding.inflate(LayoutInflater.from(requireContext())) + bottomSheetDialog.setContentView(dialogBinding.root) + bottomSheetDialog.show() + bottomSheetDialog.dismissWithAnimation = true + + /* if any item does not exist, then disable the ok button */ + if (!databaseHandler.isTodoExists) { + dialogBinding.todoOk.isEnabled = false + } + + dialogBinding.todoInput.visibility = View.GONE + dialogBinding.todoOk.setTextColor(ContextCompat.getColor(requireContext(), android.R.color.holo_red_light)) + + /* dismiss the dialog on cancel button click */ + dialogBinding.todoCancel.setOnClickListener { bottomSheetDialog.dismiss() } + /* delete all the existing items from the database */ + dialogBinding.todoOk.setOnClickListener { + databaseHandler.deleteAll() + bottomSheetDialog.dismiss() + refreshList() + } + } + +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/utils/BLog.kt b/app/src/main/kotlin/rasel/lunar/launcher/utils/BLog.kt new file mode 100644 index 0000000..d46efba --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/utils/BLog.kt @@ -0,0 +1,56 @@ +package rasel.lunar.launcher.utils + +import android.util.Log +import rasel.lunar.launcher.BuildConfig +import java.lang.Exception + +object BLog { + val DEFAULT_TAG = "MyEBook_TAG" + enum class BLogType { + D,I,E + } + fun w(tag : String = DEFAULT_TAG, log: String){ + LOG(BLogType.D,tag,log) + } + + fun LOGD(tag : String = DEFAULT_TAG, log: String){ + LOG(BLogType.D,tag,log) + } + + fun LOGI(tag : String = DEFAULT_TAG, log: String){ + LOG(BLogType.I,tag,log) + } + + fun LOGE(tag : String = DEFAULT_TAG, log: Throwable){ + LOG(BLogType.E,tag,log.toString()) + } + + fun LOGE(tag : String = DEFAULT_TAG, log: Exception){ + LOG(BLogType.E,tag,log.toString()) + } + + fun LOGE(tag : String = DEFAULT_TAG, log: String){ + LOG(BLogType.E,tag,log) + } + + fun LOGE(log: String){ + LOG(BLogType.E,DEFAULT_TAG,log) + } + + private fun LOG(type : BLogType, tag : String, log : String) { + if (BuildConfig.DEBUG || BuildConfig.BUILD_TYPE.contains("debug")) { + when(type) { + BLogType.D -> { + Log.d(tag,log) + } + BLogType.I -> { + Log.i(tag,log) + } + BLogType.E -> { + Log.e(tag,log) + } + else -> {} + } + } + } +} \ No newline at end of file diff --git a/app/src/main/kotlin/rasel/lunar/launcher/utils/SimpleGesture.kt b/app/src/main/kotlin/rasel/lunar/launcher/utils/SimpleGesture.kt new file mode 100644 index 0000000..7604a6b --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/utils/SimpleGesture.kt @@ -0,0 +1,781 @@ +package rasel.lunar.launcher.utils + +import android.content.Context +import android.os.SystemClock +import android.util.DisplayMetrics +import android.util.Log +import android.view.MotionEvent +import android.view.View +import android.view.View.OnTouchListener +import kotlin.math.abs +import kotlin.math.pow +import kotlin.math.sqrt + + +class GestureAnalyser @JvmOverloads constructor( + swipeSlopeIntolerance: Int = 2, + doubleTapMaxDelayMillis: Int = 500, + doubleTapMaxDownMillis: Int = 100 +) { + var minValue = 100 + private val initialX = DoubleArray(5) + private val initialY = DoubleArray(5) + private val finalX = DoubleArray(5) + private val finalY = DoubleArray(5) + private val currentX = DoubleArray(5) + private val currentY = DoubleArray(5) + private val delX = DoubleArray(5) + private val delY = DoubleArray(5) + + private var numFingers = 0 + private var initialT: Long = 0 + private var finalT: Long = 0 + private var currentT: Long = 0 + + private var prevInitialT: Long = 0 + private var prevFinalT: Long = 0 + + private var swipeSlopeIntolerance = 2 + + private val doubleTapMaxDelayMillis: Long + private val doubleTapMaxDownMillis: Long + + init { + this.swipeSlopeIntolerance = swipeSlopeIntolerance + this.doubleTapMaxDownMillis = doubleTapMaxDownMillis.toLong() + this.doubleTapMaxDelayMillis = doubleTapMaxDelayMillis.toLong() + } + + fun trackGesture(ev: MotionEvent) { + val n = ev.pointerCount + for (i in 0 until n) { + initialX[i] = ev.getX(i).toDouble() + initialY[i] = ev.getY(i).toDouble() + } + numFingers = n + initialT = SystemClock.uptimeMillis() + } + + fun untrackGesture() { + numFingers = 0 + prevFinalT = SystemClock.uptimeMillis() + prevInitialT = initialT + } + + fun getGesture(ev: MotionEvent): GestureType { + var averageDistance = 0.0 + for (i in 0 until numFingers) { + finalX[i] = ev.getX(i).toDouble() + finalY[i] = ev.getY(i).toDouble() + delX[i] = finalX[i] - initialX[i] + delY[i] = finalY[i] - initialY[i] + + averageDistance += sqrt( + (finalX[i] - initialX[i]).pow(2.0) + (finalY[i] - initialY[i]).pow( + 2.0 + ) + ) + } + averageDistance /= numFingers.toDouble() + + finalT = SystemClock.uptimeMillis() + val gt = GestureType() + gt.gestureFlag = calcGesture() + gt.gestureDuration = finalT - initialT + gt.gestureDistance = averageDistance + return gt + } + + fun getOngoingGesture(ev: MotionEvent): Int { + for (i in 0 until numFingers) { + currentX[i] = ev.getX(i).toDouble() + currentY[i] = ev.getY(i).toDouble() + delX[i] = finalX[i] - initialX[i] + delY[i] = finalY[i] - initialY[i] + } + currentT = SystemClock.uptimeMillis() + return calcGesture() + } + + private fun calcGesture(): Int { + if (isDoubleTap) { + return DOUBLE_TAP_1 + } + + if (numFingers == 1) { + if ((-(delY[0])) > (swipeSlopeIntolerance * (abs( + delX[0] + ))) && abs(delY[0]) > minValue + ) { + return SWIPE_1_UP + } + + if (((delY[0])) > (swipeSlopeIntolerance * (abs( + delX[0] + ))) && abs(delY[0]) > minValue + ) { + return SWIPE_1_DOWN + } + + if ((-(delX[0])) > (swipeSlopeIntolerance * (abs( + delY[0] + ))) && abs(delX[0]) > minValue + ) { + return SWIPE_1_LEFT + } + + if (((delX[0])) > (swipeSlopeIntolerance * (abs( + delY[0] + ))) && abs(delX[0]) > minValue + ) { + return SWIPE_1_RIGHT + } + BLog.LOGE("initialT = ${initialT} , finalT = ${finalT} , result = ${finalT - initialT}") + if (finalT - initialT < 300) { + return CLICK_1 + } else if(finalT - initialT > 600) { + return LONG_CLICK_1 + } + } + if (numFingers == 2) { + if (((-delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) && ((-delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) && (abs(delY[0]) > minValue || abs(delY[1]) > minValue) + ) { + return SWIPE_2_UP + } + if (((delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) && ((delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) && (abs(delY[0]) > minValue || abs(delY[1]) > minValue) + ) { + return SWIPE_2_DOWN + } + if (((-delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) && ((-delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) && (abs(delX[0]) > minValue || abs(delX[1]) > minValue) + ) { + return SWIPE_2_LEFT + } + if (((delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) && ((delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) && (abs(delX[0]) > minValue || abs(delX[1]) > minValue) + ) { + return SWIPE_2_RIGHT + } + if (finalFingDist(0, 1) > 2 * (initialFingDist(0, 1))) { + return UNPINCH_2 + } + if (finalFingDist(0, 1) < 0.5 * (initialFingDist(0, 1))) { + return PINCH_2 + } + } + if (numFingers == 3) { + if (((-delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) + && ((-delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + && ((-delY[2]) > (swipeSlopeIntolerance * abs( + delX[2] + ))) + ) { + return SWIPE_3_UP + } + if (((delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) + && ((delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + && ((delY[2]) > (swipeSlopeIntolerance * abs( + delX[2] + ))) + ) { + return SWIPE_3_DOWN + } + if (((-delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) + && ((-delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + && ((-delX[2]) > (swipeSlopeIntolerance * abs( + delY[2] + ))) + ) { + return SWIPE_3_LEFT + } + if (((delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) + && ((delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + && ((delX[2]) > (swipeSlopeIntolerance * abs( + delY[2] + ))) + ) { + return SWIPE_3_RIGHT + } + + if ((finalFingDist(0, 1) > 1.75 * (initialFingDist(0, 1))) + && (finalFingDist(1, 2) > 1.75 * (initialFingDist(1, 2))) + && (finalFingDist(2, 0) > 1.75 * (initialFingDist(2, 0))) + ) { + return UNPINCH_3 + } + if ((finalFingDist(0, 1) < 0.66 * (initialFingDist(0, 1))) + && (finalFingDist(1, 2) < 0.66 * (initialFingDist(1, 2))) + && (finalFingDist(2, 0) < 0.66 * (initialFingDist(2, 0))) + ) { + return PINCH_3 + } + } + if (numFingers == 4) { + if (((-delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) + && ((-delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + && ((-delY[2]) > (swipeSlopeIntolerance * abs( + delX[2] + ))) + && ((-delY[3]) > (swipeSlopeIntolerance * abs( + delX[3] + ))) + ) { + return SWIPE_4_UP + } + if (((delY[0]) > (swipeSlopeIntolerance * abs( + delX[0] + ))) + && ((delY[1]) > (swipeSlopeIntolerance * abs( + delX[1] + ))) + && ((delY[2]) > (swipeSlopeIntolerance * abs( + delX[2] + ))) + && ((delY[3]) > (swipeSlopeIntolerance * abs( + delX[3] + ))) + ) { + return SWIPE_4_DOWN + } + if (((-delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) + && ((-delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + && ((-delX[2]) > (swipeSlopeIntolerance * abs( + delY[2] + ))) + && ((-delX[3]) > (swipeSlopeIntolerance * abs( + delY[3] + ))) + ) { + return SWIPE_4_LEFT + } + if (((delX[0]) > (swipeSlopeIntolerance * abs( + delY[0] + ))) + && ((delX[1]) > (swipeSlopeIntolerance * abs( + delY[1] + ))) + && ((delX[2]) > (swipeSlopeIntolerance * abs( + delY[2] + ))) + && ((delX[3]) > (swipeSlopeIntolerance * abs( + delY[3] + ))) + ) { + return SWIPE_4_RIGHT + } + if ((finalFingDist(0, 1) > 1.5 * (initialFingDist(0, 1))) + && (finalFingDist(1, 2) > 1.5 * (initialFingDist(1, 2))) + && (finalFingDist(2, 3) > 1.5 * (initialFingDist(2, 3))) + && (finalFingDist(3, 0) > 1.5 * (initialFingDist(3, 0))) + ) { + return UNPINCH_4 + } + if ((finalFingDist(0, 1) < 0.8 * (initialFingDist(0, 1))) + && (finalFingDist(1, 2) < 0.8 * (initialFingDist(1, 2))) + && (finalFingDist(2, 3) < 0.8 * (initialFingDist(2, 3))) + && (finalFingDist(3, 0) < 0.8 * (initialFingDist(3, 0))) + ) { + return PINCH_4 + } + } + return 0 + } + + private fun initialFingDist(fingNum1: Int, fingNum2: Int): Double { + return sqrt( + (initialX[fingNum1] - initialX[fingNum2]).pow(2.0) + (initialY[fingNum1] - initialY[fingNum2]).pow( + 2.0 + ) + ) + } + + private fun finalFingDist(fingNum1: Int, fingNum2: Int): Double { + return sqrt( + (finalX[fingNum1] - finalX[fingNum2]).pow(2.0) + (finalY[fingNum1] - finalY[fingNum2]).pow( + 2.0 + ) + ) + } + + val isDoubleTap: Boolean + get() = if (initialT - prevFinalT < doubleTapMaxDelayMillis && finalT - initialT < doubleTapMaxDownMillis && prevFinalT - prevInitialT < doubleTapMaxDownMillis) { + true + } else { + false + } + + inner class GestureType { + var gestureFlag: Int = 0 + var gestureDuration: Long = 0 + + var gestureDistance: Double = 0.0 + } + + + companion object { + const val DEBUG: Boolean = true + + // Finished gestures flags + const val SWIPE_1_UP: Int = 11 + const val SWIPE_1_DOWN: Int = 12 + const val SWIPE_1_LEFT: Int = 13 + const val SWIPE_1_RIGHT: Int = 14 + const val SWIPE_2_UP: Int = 21 + const val SWIPE_2_DOWN: Int = 22 + const val SWIPE_2_LEFT: Int = 23 + const val SWIPE_2_RIGHT: Int = 24 + const val SWIPE_3_UP: Int = 31 + const val SWIPE_3_DOWN: Int = 32 + const val SWIPE_3_LEFT: Int = 33 + const val SWIPE_3_RIGHT: Int = 34 + const val SWIPE_4_UP: Int = 41 + const val SWIPE_4_DOWN: Int = 42 + const val SWIPE_4_LEFT: Int = 43 + const val SWIPE_4_RIGHT: Int = 44 + const val PINCH_2: Int = 25 + const val UNPINCH_2: Int = 26 + const val PINCH_3: Int = 35 + const val UNPINCH_3: Int = 36 + const val PINCH_4: Int = 45 + const val UNPINCH_4: Int = 46 + + const val DOUBLE_TAP_1: Int = 107 + + const val CLICK_1 = 19001 + const val CLICK_2 = 19002 + const val CLICK_3 = 19003 + + + + const val LONG_CLICK_1 = 29001 + const val LONG_CLICK_2 = 29002 + const val LONG_CLICK_3 = 29003 + + //Ongoing gesture flags + const val SWIPING_1_UP: Int = 101 + const val SWIPING_1_DOWN: Int = 102 + const val SWIPING_1_LEFT: Int = 103 + const val SWIPING_1_RIGHT: Int = 104 + const val SWIPING_2_UP: Int = 201 + const val SWIPING_2_DOWN: Int = 202 + const val SWIPING_2_LEFT: Int = 203 + const val SWIPING_2_RIGHT: Int = 204 + const val PINCHING: Int = 205 + const val UNPINCHING: Int = 206 + private const val TAG = "GestureAnalyser" + } +} + +class SimpleFingerGestures : OnTouchListener { + private var debug = true + var consumeTouchEvents: Boolean = false + var screenHeight : Int = 100 + protected var tracking: BooleanArray = booleanArrayOf(false, false, false, false, false) + private var ga: GestureAnalyser + private var onFingerGestureListener: OnFingerGestureListener? = null + var targetView : View? = null + var mContext : Context? = null + constructor(context : Context,targetView : View, onFingerGestureListener: OnFingerGestureListener) { + this.mContext = context + + + this.targetView = targetView + ga = GestureAnalyser() + this.mContext?.resources?.displayMetrics?.let { + screenHeight = (it.heightPixels * 0.18).toInt() + ga.minValue = Math.max(screenHeight, 100) + } + this.onFingerGestureListener = onFingerGestureListener + this.targetView?.setOnClickListener { onFingerGestureListener.onClick(it) } + this.targetView?.setOnLongClickListener { onFingerGestureListener.onLongPress(it) } + } + /** + * Constructor that creates an internal [in.championswimmer.sfg.lib.GestureAnalyser] object as well + */ + constructor() { + ga = GestureAnalyser() + } + + constructor( + swipeSlopeIntolerance: Int, + doubleTapMaxDelayMillis: Int, + doubleTapMaxDownMillis: Int + ) { + ga = GestureAnalyser(swipeSlopeIntolerance, doubleTapMaxDelayMillis, doubleTapMaxDownMillis) + } + + fun setDebug(debug: Boolean) { + this.debug = debug + } + + constructor(omfgl: OnFingerGestureListener?) { + ga = GestureAnalyser() + setOnFingerGestureListener(omfgl) + } + + /** + * Register a callback to be invoked when multi-finger gestures take place + * + * + *

+ * + * + * For the callbacks implemented via this, check the interface [in.championswimmer.sfg.lib.SimpleFingerGestures.OnFingerGestureListener] + * + * + * @param omfgl The callback that will run + */ + fun setOnFingerGestureListener(omfgl: OnFingerGestureListener?) { + onFingerGestureListener = omfgl + } + + + override fun onTouch(view: View, ev: MotionEvent): Boolean { + if (debug) Log.d(TAG, "onTouch") + when (ev.action and MotionEvent.ACTION_MASK) { + MotionEvent.ACTION_DOWN -> { + if (debug) Log.d(TAG, "ACTION_DOWN") + startTracking(0) + ga.trackGesture(ev) + return consumeTouchEvents + } + + MotionEvent.ACTION_UP -> { + if (debug) Log.d(TAG, "ACTION_UP") + if (tracking[0]) { + doCallBack(view,ga.getGesture(ev)) + } + stopTracking(0) + ga.untrackGesture() + return consumeTouchEvents + } + + MotionEvent.ACTION_POINTER_DOWN -> { + if (debug) Log.d(TAG, "ACTION_POINTER_DOWN" + " " + "num" + ev.pointerCount) + startTracking(ev.pointerCount - 1) + ga.trackGesture(ev) + return consumeTouchEvents + } + + MotionEvent.ACTION_POINTER_UP -> { + if (debug) Log.d(TAG, "ACTION_POINTER_UP" + " " + "num" + ev.pointerCount) + if (tracking[1]) { + doCallBack(view,ga.getGesture(ev)) + } + stopTracking(ev.pointerCount - 1) + ga.untrackGesture() + return consumeTouchEvents + } + + MotionEvent.ACTION_CANCEL -> { + if (debug) Log.d(TAG, "ACTION_CANCEL") + return true + } + + MotionEvent.ACTION_MOVE -> { + if (debug) Log.d(TAG, "ACTION_MOVE") + return consumeTouchEvents + } + } + return consumeTouchEvents + } + + private fun doCallBack(targetView : View, mGt: GestureAnalyser.GestureType) { + when (mGt.gestureFlag) { + GestureAnalyser.SWIPE_1_UP -> onFingerGestureListener!!.onSwipeUp( + targetView, + 1, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_1_DOWN -> onFingerGestureListener!!.onSwipeDown( + targetView, + 1, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_1_LEFT -> onFingerGestureListener!!.onSwipeLeft( + targetView, + 1, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_1_RIGHT -> onFingerGestureListener!!.onSwipeRight( + targetView, + 1, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_2_UP -> onFingerGestureListener!!.onSwipeUp( + targetView, + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_2_DOWN -> onFingerGestureListener!!.onSwipeDown( + targetView, + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_2_LEFT -> onFingerGestureListener!!.onSwipeLeft( + targetView, + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_2_RIGHT -> onFingerGestureListener!!.onSwipeRight( + targetView, + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.PINCH_2 -> onFingerGestureListener!!.onPinch( + targetView, + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.UNPINCH_2 -> onFingerGestureListener!!.onUnpinch( + targetView, + 2, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_3_UP -> onFingerGestureListener!!.onSwipeUp( + targetView, + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_3_DOWN -> onFingerGestureListener!!.onSwipeDown( + targetView, + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_3_LEFT -> onFingerGestureListener!!.onSwipeLeft( + targetView, + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_3_RIGHT -> onFingerGestureListener!!.onSwipeRight( + targetView, + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.PINCH_3 -> onFingerGestureListener!!.onPinch( + targetView, + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.UNPINCH_3 -> onFingerGestureListener!!.onUnpinch( + targetView, + 3, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_4_UP -> onFingerGestureListener!!.onSwipeUp( + targetView, + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_4_DOWN -> onFingerGestureListener!!.onSwipeDown( + targetView, + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_4_LEFT -> onFingerGestureListener!!.onSwipeLeft( + targetView, + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.SWIPE_4_RIGHT -> onFingerGestureListener!!.onSwipeRight( + targetView, + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.PINCH_4 -> onFingerGestureListener!!.onPinch( + targetView, + 4, + mGt.gestureDuration, + mGt.gestureDistance + ) + + GestureAnalyser.UNPINCH_4 -> { + onFingerGestureListener!!.onUnpinch(targetView,4, mGt.gestureDuration, mGt.gestureDistance) +// onFingerGestureListener!!.onDoubleTap(1) + } + GestureAnalyser.CLICK_1 -> { + BLog.LOGE("GestureAnalyser.CLICK_1") + onFingerGestureListener!!.onClick(targetView) +// onFingerGestureListener!!.onDoubleTap(1) + } +// GestureAnalyser.CLICK_2 -> { +// onFingerGestureListener!!.onUnpinch(targetView,4, mGt.gestureDuration, mGt.gestureDistance) +//// onFingerGestureListener!!.onDoubleTap(1) +// } +// GestureAnalyser.CLICK_3 -> { +// onFingerGestureListener!!.onUnpinch(targetView,4, mGt.gestureDuration, mGt.gestureDistance) +//// onFingerGestureListener!!.onDoubleTap(1) +// } + + GestureAnalyser.LONG_CLICK_1 -> { + BLog.LOGE("GestureAnalyser.LONG_CLICK_1") + onFingerGestureListener!!.onLongPress(targetView) + } + + + GestureAnalyser.DOUBLE_TAP_1 -> onFingerGestureListener!!.onDoubleTap(targetView,1) + } + } + + private fun startTracking(nthPointer: Int) { + for (i in 0..nthPointer) { + tracking[i] = true + } + } + + private fun stopTracking(nthPointer: Int) { + for (i in nthPointer until tracking.size) { + tracking[i] = false + } + } + + + /** + * Interface definition for the callback to be invoked when 2-finger gestures are performed + */ + interface OnFingerGestureListener { + /** + * Called when user swipes **up** with two fingers + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onSwipeUp(targetView : View, fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user swipes **down** with two fingers + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onSwipeDown(targetView : View,fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user swipes **left** with two fingers + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onSwipeLeft(targetView : View,fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user swipes **right** with two fingers + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onSwipeRight(targetView : View,fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user **pinches** with two fingers (bring together) + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onPinch(targetView : View,fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + /** + * Called when user **un-pinches** with two fingers (take apart) + * + * @param fingers number of fingers involved in this gesture + * @param gestureDuration duration in milliSeconds + * @return + */ + fun onUnpinch(targetView : View,fingers: Int, gestureDuration: Long, gestureDistance: Double): Boolean + + fun onDoubleTap(targetView : View,fingers: Int): Boolean + fun onLongPress(targetView : View): Boolean + fun onClick(targetView : View): Boolean + } + + companion object { + // Will see if these need to be used. For now just returning duration in milliS + const val GESTURE_SPEED_SLOW: Long = 1500 + const val GESTURE_SPEED_MEDIUM: Long = 1000 + const val GESTURE_SPEED_FAST: Long = 500 + private const val TAG = "SimpleFingerGestures" + } +} \ No newline at end of file diff --git a/app/src/main/res/anim/rotate_clockwise.xml b/app/src/main/res/anim/rotate_clockwise.xml new file mode 100644 index 0000000..afd45f6 --- /dev/null +++ b/app/src/main/res/anim/rotate_clockwise.xml @@ -0,0 +1,11 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/apps_bg.xml b/app/src/main/res/drawable/apps_bg.xml new file mode 100644 index 0000000..67a71d5 --- /dev/null +++ b/app/src/main/res/drawable/apps_bg.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/ic_activity.xml b/app/src/main/res/drawable/ic_activity.xml new file mode 100644 index 0000000..82bd496 --- /dev/null +++ b/app/src/main/res/drawable/ic_activity.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_add.xml b/app/src/main/res/drawable/ic_add.xml new file mode 100644 index 0000000..e3ca1f4 --- /dev/null +++ b/app/src/main/res/drawable/ic_add.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_alarm.xml b/app/src/main/res/drawable/ic_alarm.xml new file mode 100644 index 0000000..b321714 --- /dev/null +++ b/app/src/main/res/drawable/ic_alarm.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_brightness.xml b/app/src/main/res/drawable/ic_brightness.xml new file mode 100644 index 0000000..c597dc2 --- /dev/null +++ b/app/src/main/res/drawable/ic_brightness.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_close.xml b/app/src/main/res/drawable/ic_close.xml new file mode 100644 index 0000000..7dccce9 --- /dev/null +++ b/app/src/main/res/drawable/ic_close.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_contact.xml b/app/src/main/res/drawable/ic_contact.xml new file mode 100644 index 0000000..59904c6 --- /dev/null +++ b/app/src/main/res/drawable/ic_contact.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_delete.xml b/app/src/main/res/drawable/ic_delete.xml new file mode 100644 index 0000000..8b5f27e --- /dev/null +++ b/app/src/main/res/drawable/ic_delete.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_down.xml b/app/src/main/res/drawable/ic_down.xml new file mode 100644 index 0000000..bb60629 --- /dev/null +++ b/app/src/main/res/drawable/ic_down.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_info.xml b/app/src/main/res/drawable/ic_info.xml new file mode 100644 index 0000000..cfc78d1 --- /dev/null +++ b/app/src/main/res/drawable/ic_info.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_info2.xml b/app/src/main/res/drawable/ic_info2.xml new file mode 100644 index 0000000..bebaf27 --- /dev/null +++ b/app/src/main/res/drawable/ic_info2.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 0000000..acb5509 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,13 @@ + + + + + diff --git a/app/src/main/res/drawable/ic_launcher_foreground.xml b/app/src/main/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 0000000..44ca518 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,19 @@ + + + + + + + + diff --git a/app/src/main/res/drawable/ic_link.xml b/app/src/main/res/drawable/ic_link.xml new file mode 100644 index 0000000..21036fc --- /dev/null +++ b/app/src/main/res/drawable/ic_link.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_media.xml b/app/src/main/res/drawable/ic_media.xml new file mode 100644 index 0000000..5d88d57 --- /dev/null +++ b/app/src/main/res/drawable/ic_media.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_notification.xml b/app/src/main/res/drawable/ic_notification.xml new file mode 100644 index 0000000..3509f1f --- /dev/null +++ b/app/src/main/res/drawable/ic_notification.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_pip.xml b/app/src/main/res/drawable/ic_pip.xml new file mode 100644 index 0000000..c4802d2 --- /dev/null +++ b/app/src/main/res/drawable/ic_pip.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_refresh.xml b/app/src/main/res/drawable/ic_refresh.xml new file mode 100644 index 0000000..6067f64 --- /dev/null +++ b/app/src/main/res/drawable/ic_refresh.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_ring.xml b/app/src/main/res/drawable/ic_ring.xml new file mode 100644 index 0000000..df04c14 --- /dev/null +++ b/app/src/main/res/drawable/ic_ring.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_search.xml b/app/src/main/res/drawable/ic_search.xml new file mode 100644 index 0000000..16f6d75 --- /dev/null +++ b/app/src/main/res/drawable/ic_search.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_share.xml b/app/src/main/res/drawable/ic_share.xml new file mode 100644 index 0000000..44d9c13 --- /dev/null +++ b/app/src/main/res/drawable/ic_share.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_store.xml b/app/src/main/res/drawable/ic_store.xml new file mode 100644 index 0000000..026df8c --- /dev/null +++ b/app/src/main/res/drawable/ic_store.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_up.xml b/app/src/main/res/drawable/ic_up.xml new file mode 100644 index 0000000..fa6743c --- /dev/null +++ b/app/src/main/res/drawable/ic_up.xml @@ -0,0 +1,8 @@ + + + diff --git a/app/src/main/res/drawable/ic_voice.xml b/app/src/main/res/drawable/ic_voice.xml new file mode 100644 index 0000000..c7b37c8 --- /dev/null +++ b/app/src/main/res/drawable/ic_voice.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/rounded_bg.xml b/app/src/main/res/drawable/rounded_bg.xml new file mode 100644 index 0000000..cf65c69 --- /dev/null +++ b/app/src/main/res/drawable/rounded_bg.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/rounded_bg_top.xml b/app/src/main/res/drawable/rounded_bg_top.xml new file mode 100644 index 0000000..15492e6 --- /dev/null +++ b/app/src/main/res/drawable/rounded_bg_top.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/splash_icon.xml b/app/src/main/res/drawable/splash_icon.xml new file mode 100644 index 0000000..ee24a46 --- /dev/null +++ b/app/src/main/res/drawable/splash_icon.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/about.xml b/app/src/main/res/layout/about.xml new file mode 100644 index 0000000..667d12d --- /dev/null +++ b/app/src/main/res/layout/about.xml @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_browser_dialog.xml b/app/src/main/res/layout/activity_browser_dialog.xml new file mode 100644 index 0000000..bc3aae1 --- /dev/null +++ b/app/src/main/res/layout/activity_browser_dialog.xml @@ -0,0 +1,26 @@ + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/app_drawer.xml b/app/src/main/res/layout/app_drawer.xml new file mode 100644 index 0000000..947afea --- /dev/null +++ b/app/src/main/res/layout/app_drawer.xml @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/app_info_dialog.xml b/app/src/main/res/layout/app_info_dialog.xml new file mode 100644 index 0000000..b2c5849 --- /dev/null +++ b/app/src/main/res/layout/app_info_dialog.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/app_menu.xml b/app/src/main/res/layout/app_menu.xml new file mode 100644 index 0000000..cfa9d22 --- /dev/null +++ b/app/src/main/res/layout/app_menu.xml @@ -0,0 +1,152 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/apps_child.xml b/app/src/main/res/layout/apps_child.xml new file mode 100644 index 0000000..dca3e35 --- /dev/null +++ b/app/src/main/res/layout/apps_child.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/child_sys_info.xml b/app/src/main/res/layout/child_sys_info.xml new file mode 100644 index 0000000..0126031 --- /dev/null +++ b/app/src/main/res/layout/child_sys_info.xml @@ -0,0 +1,30 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/color_picker.xml b/app/src/main/res/layout/color_picker.xml new file mode 100644 index 0000000..d146295 --- /dev/null +++ b/app/src/main/res/layout/color_picker.xml @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/feeds.xml b/app/src/main/res/layout/feeds.xml new file mode 100644 index 0000000..d083b91 --- /dev/null +++ b/app/src/main/res/layout/feeds.xml @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/feeds_rss.xml b/app/src/main/res/layout/feeds_rss.xml new file mode 100644 index 0000000..3ac6a49 --- /dev/null +++ b/app/src/main/res/layout/feeds_rss.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/feeds_sys_infos.xml b/app/src/main/res/layout/feeds_sys_infos.xml new file mode 100644 index 0000000..649b8a4 --- /dev/null +++ b/app/src/main/res/layout/feeds_sys_infos.xml @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/launcher_activity.xml b/app/src/main/res/layout/launcher_activity.xml new file mode 100644 index 0000000..2349793 --- /dev/null +++ b/app/src/main/res/layout/launcher_activity.xml @@ -0,0 +1,16 @@ + + + + + + diff --git a/app/src/main/res/layout/launcher_home.xml b/app/src/main/res/layout/launcher_home.xml new file mode 100644 index 0000000..f656e74 --- /dev/null +++ b/app/src/main/res/layout/launcher_home.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/list_item.xml b/app/src/main/res/layout/list_item.xml new file mode 100644 index 0000000..563c4b4 --- /dev/null +++ b/app/src/main/res/layout/list_item.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/quick_access.xml b/app/src/main/res/layout/quick_access.xml new file mode 100644 index 0000000..1aca443 --- /dev/null +++ b/app/src/main/res/layout/quick_access.xml @@ -0,0 +1,186 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/settings_activity.xml b/app/src/main/res/layout/settings_activity.xml new file mode 100644 index 0000000..399a8dc --- /dev/null +++ b/app/src/main/res/layout/settings_activity.xml @@ -0,0 +1,134 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/settings_advance.xml b/app/src/main/res/layout/settings_advance.xml new file mode 100644 index 0000000..c803579 --- /dev/null +++ b/app/src/main/res/layout/settings_advance.xml @@ -0,0 +1,35 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/settings_appearances.xml b/app/src/main/res/layout/settings_appearances.xml new file mode 100644 index 0000000..56a2dcf --- /dev/null +++ b/app/src/main/res/layout/settings_appearances.xml @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/settings_apps.xml b/app/src/main/res/layout/settings_apps.xml new file mode 100644 index 0000000..bd40b19 --- /dev/null +++ b/app/src/main/res/layout/settings_apps.xml @@ -0,0 +1,261 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/settings_misc.xml b/app/src/main/res/layout/settings_misc.xml new file mode 100644 index 0000000..92cf84d --- /dev/null +++ b/app/src/main/res/layout/settings_misc.xml @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/settings_time_date.xml b/app/src/main/res/layout/settings_time_date.xml new file mode 100644 index 0000000..f006235 --- /dev/null +++ b/app/src/main/res/layout/settings_time_date.xml @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/settings_todo.xml b/app/src/main/res/layout/settings_todo.xml new file mode 100644 index 0000000..a301aaf --- /dev/null +++ b/app/src/main/res/layout/settings_todo.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/settings_weather.xml b/app/src/main/res/layout/settings_weather.xml new file mode 100644 index 0000000..cb0de7f --- /dev/null +++ b/app/src/main/res/layout/settings_weather.xml @@ -0,0 +1,118 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/shortcut_maker.xml b/app/src/main/res/layout/shortcut_maker.xml new file mode 100644 index 0000000..10c7c7a --- /dev/null +++ b/app/src/main/res/layout/shortcut_maker.xml @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/todo_dialog.xml b/app/src/main/res/layout/todo_dialog.xml new file mode 100644 index 0000000..f521ad3 --- /dev/null +++ b/app/src/main/res/layout/todo_dialog.xml @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/todo_manager.xml b/app/src/main/res/layout/todo_manager.xml new file mode 100644 index 0000000..c342ef0 --- /dev/null +++ b/app/src/main/res/layout/todo_manager.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/add_widget.xml b/app/src/main/res/menu/add_widget.xml new file mode 100644 index 0000000..4aab182 --- /dev/null +++ b/app/src/main/res/menu/add_widget.xml @@ -0,0 +1,6 @@ + + + + diff --git a/app/src/main/res/menu/widget_menu.xml b/app/src/main/res/menu/widget_menu.xml new file mode 100644 index 0000000..989b092 --- /dev/null +++ b/app/src/main/res/menu/widget_menu.xml @@ -0,0 +1,18 @@ + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..bbd3e02 --- /dev/null +++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/values-bn-rBD/strings.xml b/app/src/main/res/values-bn-rBD/strings.xml new file mode 100644 index 0000000..a6b3dae --- /dev/null +++ b/app/src/main/res/values-bn-rBD/strings.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml new file mode 100644 index 0000000..fd6a044 --- /dev/null +++ b/app/src/main/res/values-de/strings.xml @@ -0,0 +1,148 @@ + + + OWM API-Schlüssel + Center + Warnung! Diese Operation löscht alle Daten von dieser App! Dies kann nicht rückgängig gemacht werden. + Zeit — Datum + Sie haben leider kein Icon-Pack installiert. + Standart + Zurücksetzen + Temperatur + Erlauben, bei Doppeltippen in den Ruhezustand zu wechseln + Neu Hinzufügen + In Zwischenablage kopiert + Willkommen + Zahl der To-Do einträge auf dem Startbildschirm + APK-Datei teilen über + Widget hinzufügen + App-Thema wählen + App-Ausrichtung + Letzte Aktualisierung + Erleichterte Bedienung + Kein AppStore auf diesem Gerät. + Danksagungen +\n https://github.com/cachapa/ExpandableLayout + Hintergrund geändert + Negativ + Nicht ausführbar + Anzeigezeitpunkt + Weiteres + Die Änderungen werden erst nach Neustart der App übernommen. Jetzt neu starten\? + Willkommen bei Lunar Launcher. +\n +\n Nachdem Sie dieses Dialogfeld geschlossen haben, werden Sie aufgefordert, die erforderlichen Berechtigungen zu erteilen, damit die App wie erwartet funktioniert. +\n +\n
  • Systemeinstellungen ändern – Um die Helligkeit mit einem Schieberegler zu steuern
  • +\n
  • Telefon – Zum Tätigen von Anrufen über Verknüpfungen
  • +\n +\n Es handelt sich um eine mit Copyleft versehene Libre-Software. \u0020Überprüfen, ändern und mit allen teilen. +\n +\n Gesten: +\n
  • Nach oben wischen – Schnellzugriffsdialog
  • +\n
  • Nach unten wischen – Benachrichtigungsfeld
  • +\n
  • Nach rechts wischen – Feeds
  • +\n
  • Nach links wischen – App-Schublade
  • +\n
  • Tippen und halten Sie die Batterieanzeige – Launcher-Einstellungen
  • +\n
  • Tippen und halten Sie den unteren Teil des Bildschirms – To-Do-Manager
  • +\n
  • Doppeltippen – Gerätesperre/Ruhezustand (in den Einstellungen aktivieren)
  • +\n
  • Tippen Sie auf den Favoriten und halten Sie es gedrückt – Favorit entfernen
  • +\n +\n Weitere Informationen auf der Wiki-Seite auf GitHub.
    + Total + Liste mit Symbolen + Statusleiste verstecken + 12-Stunden + Das Eingabefeld ist leer + Standart-Launcher wählen + RSS-Feed + Jetzt neu starten\? + Rechts + Sperrservice + Bild konnte nicht geladen werden + Aktualisieren + Verknüpfung & App-Icon Größe + Erweitert + Icon-Pack wählen + Aussehen des App-Drawers + Fortfahren + App-Info-Fenster öffnen + Stadtname mit Wetter zeigen + RSS-Feed-URL + Quellcode + Geräteadministratoren + To-Do Manager Sperren + In pip Modus öffnen + Löschen + Höhe der A bis Z Scroll-Leiste + Authentifizierungsfehler + Support + Version + URL + Wiederholungszahl + Alle To-Do Eingaben löschen\? + Wetter + Leider ist etwas schief gelaufen + Kontakte + Favorit + App deinstallieren + Auf App-Market anzeigen + Entwickelt von Md. Rasel Hossian + Hochgefahren seit +\nSystem Aktiv +\nVerwendeter Arbeitsspeicher +\nAkkutemperatur +\nAkku-Voltzahl +\nSpeicherplatz +\nIPv4 +\nIPv6 + Verwendet + Über + Neustart + App-Drawer + Telegramgruppe + Erste Installation + Detailinfos anzeigen + Authentifizierungsfehler + Links + Lunar-Einstellungen + Root + Kostenlos + 24-Stunden + Hintergrund + Hochbewegen + Dunkelmodus + To-Do + Runterbewegen + Lunar Launcher erlauben, das Gerät in den Ruhezustand zu versetzen (API 28+). + Fortfahren + System folgen + Mit Tastatur starten + Hilf dem Entwickler die App Kostenlos und am leben zu halten +\n +\n
  • Spenden: Wenn möglich, direkt Spenden.
  • +\n
  • Amazon: Nutze den Link um den Entwickler beim Shoppen zu unterstützen.
  • +\n
  • Star: Star auf GitHub um deine Unterstützung zu zeigen.
  • + Liste + Tabelle + Spenden + Alle löschen + Datumsformat + Höhe erhöhen + Keine Tabellenspalten + Positiv + Schnellstart + Hintergrund ändern + Stadtname + APK-Datei teilen + Höhe verkleinern + Zeitformat + Immer zum Home-Bildschirm zurückkehren + To-Do Manager + Zahl der Verknüpfungen (URL/Kontakte) + Licht + Temperatureinheit + Später + Mit ihrem Gerätanmeldedaten anmelden, um fortzufahren. + Aktivitäten durchsuchen + Systemstatus +
    \ No newline at end of file diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml new file mode 100644 index 0000000..b7e0618 --- /dev/null +++ b/app/src/main/res/values-es/strings.xml @@ -0,0 +1,142 @@ + + + Acerca de + Accesibilidad + Deja que Lunar Launcher ponga el dispositivo en reposo (API 28+). + Bloquear servicio + + Agradecimientos\n + https://github.com/cachapa/ExpandableLayout + + Añadir nuevo + Añadir widget + Avanzado + Apariencia + Elegir el tema de la aplicación + Alineamiento de la app + Cajón de aplicaciones + Abrir la ventana con la información de la aplicación + Visitar en la Tienda de aplicaciones + Error de autenticación + Autenticación fallida + Identifícate con las credenciales del dispositivo para proceder. + Fondo + Siempre volver a la pantalla de inicio + Centro + Cambiar fondo de pantalla + Escoger launcher predeterminado + Ciudad + Contactar + Copiado al portapapeles + Oscuro + Formato de fecha + Reducir altura + Predeterminado + Borrar + Borrar todo + ¿Borrar todas las tareas existentes\? + Desarrollado por Md. Rasel Hossain + Administrador del dispositivo + Permite poner el dispositivo en reposo con un doble toque + Donar + Método de bloqueo de doble toque + El campo de texto está vacío + URL de la fuente RSS + Primera instalación + Seguir al sistema + Libre + Abrir en modo pip + Frecuencias + Entendido + Ocultar barra de estado + Tamaño de los accesos directos e iconos de las aplicaciones + Error al buscar imagen + Aumentar altura + Última actualización + Izquierda + Claro + Ajustes de Lunar + Miscelánea + + Tiempo encendido\nSistema activo\nUmbral de memoria\nTemperatura de la batería\nVoltaje de la bateria\nRaíz de almacenamiento\nIPv4\nIPv6 + + Mover hacia arriba + Mover hacia abajo + Negativo + No se pude encontrar ninguna tienda de aplicaciones en este dispositivo. + Clave de la API de OWM + Positivo + Proceder + Lanzado rápido + Resetear + Esta operación borrará todos los datos almacenados para esta aplicación, y no se puede deshacer. + Reiniciar + Derecha + Raíz + Feed RSS + Altura de la barra alfabética + Comienza con el teclado + Número de accesos directos (URL/Contacto) + Mostrar nombre de la ciudad en los datos meteorológicos + Algo ha ido mal + Código fuente + Estrella + Soporte + Apoya al desarrollador para mantener esta aplicación gratis y viva. + \n
  • Donar: si es posible, haga donaciones directas para ayudar y alentar al desarrollador.
  • + \n
  • Amazon: use el enlace de afiliado mientras compra en Amazon para recompensar al desarrollador.
  • + \n
  • Estrella: Destaca en GitHub para mostrar tu apoyo.
  • +
    + Información del sistema + Grupo de Telegram + Temperatura + Unidad de temperatura + Hora — Fecha + Formato de hora + Tareas pendientes + Número de entradas de tareas pendientes en la pantalla de inicio + Administrador de tareas pendientes + Bloquear el gestor de tareas pendientes + Total + 12 Horas + 24 Horas + Fallo al abrir + Desinstalar la aplicación + Actualizar + URL + Usado + Versión + Fondo de pantalla cambiado + Tiempo + Bienvenide + Bienvenide a Lunar Launcher. Esta es la primera vez que abres la aplicación; si es la primera vez que la usas, lee estos textos antes de proceder. + \n\nPrimero, tras cerrar este mensaje, se te pedirá conceder los siguientes permisos. Si decides no hacerlo, esta aplicación no funcionará como se espera. + \n\n
  • Modificar ajustes del sistema - Para controlar el brillo usando una barra deslizable
  • + \n
  • Teléfono - Para poder hacer llamadas desde los accesos directos a contactos
  • + \n\n Si sigues teniendo cualquier duda, puedes comprobar el código fuente de la aplicación, este es una aplicación completamente de código abierto. + \n\nGestos: + \n
  • Deslizar hacia arriba - acceso rápido
  • + \n
  • Deslizar hacia abajo - panel de notificaciones
  • + \n
  • Deslizar a la derecha - Feed
  • + \n
  • Deslizar a la izquierda - Cajón de aplicaciones
  • + \n
  • Mantener pulsado en el reloj circular - Ajustes de Lunar launcher
  • + \n
  • Mantener pulsado en la parte inferior de la pantalla - Administrador de tareas
  • + \n
  • Doble toque - Bloquear dispositivo (activar en ajustes)
  • + \n
  • Mantener pulsado un elemento favorito - Eliminar favorito
  • + \n\nPara más información, visite la página de Wiki en Github. +
    + Lo sentimos, no tienes ningún paquete de iconos instalado. + Comparte el APK a través de + Los cambios que acabas de realizar requieren reiniciar la aplicación para que surtan efecto. ¿Quieres reiniciarla ahora\? + ¿Reiniciar ahora\? + Elige un paquete de iconos + Diseño del cajón de las aplicaciones + Ver la información detallada + Lista + Cuadrícula + Número de columnas de la cuadrícula + Compartir el archivo apk + Más tarde + Navegar por las actividades + Lista con iconos +
    \ No newline at end of file diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml new file mode 100644 index 0000000..493de38 --- /dev/null +++ b/app/src/main/res/values-fr/strings.xml @@ -0,0 +1,148 @@ + + + Centrer + Ajouter nouveau + Copié dans le presse-papier + Ajouter widget + Sélection du thème de l’application + Alignement des applications + Accessibilité + Remerciements +\nhttps://github.com/cachapa/ExpandableLayout + Apparence + Sélectionner le lanceur par défaut + Service de verrouillage + Avancé + Sélectionner le pack d’icônes + Contact + À propos + Arrière-plan + Sombre + Laissez Lunar Launcher mettre l’appareil en sommeil (API 28+). + Modifier le fond d’écran + Nom de la ville + Parcourir les activités + agencement du tiroir d\'applications + Fenêtre des informations sur l\'application + Visiter sur l\'app market + tiroir d\'applications + Erreur d\'authentification + Par défaut + Permettre de mettre l\'appareil en mode veille en tapant deux fois + Administrateur de l\'appareil + Supprimer + Échec d\'authentification + Supprimer toutes les tâches\? + Développé par Md. Rasel Hossain + Voir l\'information en détail + Faire un don + Tout supprimer + Format de la date + Diminuer la hauteur + Toujours revenir à l\'écran d\'accueil + Connectez-vous à l\'aide de votre code + Clé d\'API chez OWM + Cette opération supprimera toutes les données stockées pour cette application, sans retour possible. + Heure — Date + Désolé, vous n\'avez aucun pack d\'icônes installé. + Réinitialiser + Température + Bienvenue + Nombre de tâches sur la page d\'accueil + Partager le fichier .apk via + Dernière mise à jour + Aucun magasin d\'applications trouvé sur cet appareil. + Fond d\'écran changé + Négatif + Incapable de lancer + Autres + Les changements que vous venez de faire requièrent un redémarrage de l\'application pour être appliqués. Voulez-vous redémarrer maintenant ? + Bienvenue sur Lunar Launcher. +\n +\nAprès avoir fermé cette boîte de dialogue, il vous sera demandé d\'accorder les permissions nécessaires au bon fonctionnement de cette application. +\n +\n
  • Modifier les paramètres système — Pour contrôler la luminosité de l\'écran en utilisant un curseur
  • +\n
  • Téléphone — Pour faire des appels à partir de raccourcis contact
  • +\n +\nCeci est un logiciel libre ; inspectez son code source, modifiez-le et partagez-le avec le plus grand nombre. +\n +\nGestes : +\n
  • Glisser vers le haut — Fenêtre d\'accès rapide
  • +\n
  • Glisser vers le bas — Panneau de notifications
  • +\n
  • Glisser vers la droite — Fils RSS
  • +\n
  • Glisser vers la gauche — Liste des applications
  • +\n
  • Rester appuyé sur l\'indicateur de batterie — Paramètres du lanceur
  • +\n
  • Rester appuyé dans la zone inférieure de l\'écran — Gestionnaire de tâches
  • +\n
  • Double-clic — Verrouiller l\'appareil (à activer dans les paramètres du lanceur)
  • +\n
  • Rester appuyé sur un favori — Supprimer cet item
  • +\n +\nPlus d\'infos sur la page wiki (en anglais) sur GitHub.
    + Total + Liste avec icône + Cacher la barre d\'état + 12 heures + La zone de texte est vide + Flux RSS + Redémarrer maintenant ? + Droite + Impossible de récupérer l\'image + Mettre à jour + Raccourci et taille des icônes + Compris + Montrer la ville avec la météo + URL du flux RSS + Code source + Vérouiller le gestionnaire de tâches + Ouvrir en mode pip + Hauteur de la barre de défilement A-Z + Soutenir + Version + URL + Fréquence + Météo + Quelque chose s\'est mal déroulé + Noter + Désinstaller l\'application + Temps d\'éveil de l\'appareil +\nSystème actif +\nSeuil mémoire +\nTempérature de la batterie +\nTension de la batterie +\nDossier de stockage racine +\nIPv4 +\nIPv6 + Utilisé + Redémarrer + Groupe Telegram + Première installation + Gauche + Paramètres de Lunar + Racine + Gratuit + 24 heures + Déplacer vers le haut + Tâches + Déplacer vers le bas + Continuer + Suivre le système + Démarrer avec le clavier + Apportez votre soutien au développeur pour garder cette application gratuite et en vie. +\n +\n
  • Faire un don : Si possible, faites un don directement au développeur pour l\'aider et l\'encourager.
  • +\n
  • Amazon : Utilisez le lien d\'affiliation lors de vos achats chez Amazon pour récompenser le développeur.
  • +\n
  • GitHub : Ajoutez cette application à vos favoris sur GitHub pour montrer votre soutien.
  • + Liste + Grille + Augmenter la hauteur + Nombre de colonnes dans la grille + Positif + Lancement rapide + Partager le fichier .apk + Format d\'heure + Gestionnaire de tâches + Nombre de raccourcis (URL/Contact) + Clair + Unité de température + Plus tard + Statistiques système +
    \ No newline at end of file diff --git a/app/src/main/res/values-ia/strings.xml b/app/src/main/res/values-ia/strings.xml new file mode 100644 index 0000000..44ff705 --- /dev/null +++ b/app/src/main/res/values-ia/strings.xml @@ -0,0 +1,118 @@ + + + Clave del API de OWM + Hora — Data + Predeterminate + Reinitialisar + Temperatura + Adder nove + Copiate al area de transferentia + Benvenite + Compartir le APK via + Adder widget + Seliger le thema del application + Alineamento del applicationes + Ultime actualisation + Accessibilitate + Non poteva trovar necun magazin de applicationes in iste apparato. + Fundo de schermo cambiate + Negative + Non pote lancear + Apparentia + Miscellanea + Total + Lista con icones + Celar le barra de stato + 12 horas + Seliger lanceator predefinite + Fluxo RSS + Reinitiar ora? + Dextra + Non poteva obtener le imagine + Actualisar + Dimension de icones de application e accessos directe + Avantiate + Seliger le pacchetto de icones + Designo de tiratorio de applicationes + Comprendite + Aperir le fenestra de information del application + Monstrar nomine del citate con le tempore + URL de fluxo RSS + Codice fonte + Administrator de apparato + Aperir in modo pip + Deler + Altitude del barra alphabetic A-Z + Falleva le authentication + Supporto + Version + URL + Frequentia + Tempore + Contacto + Disinstallar le application + Visitar sur le magazin de applicationes + Disvellopate per Md. Rasel Hossain + Usate + A proposito de + Reinitiar + Tiratorio de applicationes + Gruppo de Telegram + Prime installation + Vider le information in detalio + Error de authentication + Sinistra + Parametros de Lunar + Radice + Libere + 24 horas + Fundo + Obscur + Continuar + Sequer le systema + Comenciar con le claviero + Lista + Grillia + Facer un donation + Deler toto + Formato del data + Augmentar le altitude + Numero de columnas del grillia + Positive + Cambiar le fundo del schermo + Nomine del citate + Compartir le file apk + Diminuer le altitude + Formato de hora + Sempre retornar al schermo de initio + Numero de accessos directe (URL/Contacto) + Clar + Unitate de temperatura + Depost + Navigar per le activitates + Information del systema + Centro + Iste operation delera tote le datos immagazinate pro iste application e non pote esser disfacite. + Nos regretta, tu non ha necun pacchetto de icones installate. + Numero de entratas de cargas in le schermo de initio + \u0020Recognoscentias +\n \u0020https://github.com/cachapa/ExpandableLayout \u0020 + Le campo de texto es vacue + Blocar servicio + Blocar le gestor de cargas + Deler tote le entratas de cargas? + Habeva qualcosa improprie + Tempore de activitate del apparato +\nSystema active +\nLimine de memoria +\nTemperatura de batteria +\nVoltage de batteria +\nImmagazinage radice +\nIPv4 +\nIPv6 + Mover in alto + Cargas pendente + Mover in basso + Lanceamento rapide + Gestor de cargas + \ No newline at end of file diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml new file mode 100644 index 0000000..1f2889c --- /dev/null +++ b/app/src/main/res/values-it/strings.xml @@ -0,0 +1,147 @@ + + + Maggiori informazioni + Accessibilità + Permette a Lunar Launcher di bloccare il dispositivo,(API 28 e successivi). + Servizio di blocco + + Ringraziamenti\n + https://github.com/cachapa/ExpandableLayout + + Aggiungi + Aggiungi widget + Avanzate + Stile + Scegli il tema dell\'applicazione + Allineamento applicazioni + Pannello applicazioni + Apri finestra informazioni app + Visualizza nel negozio app + Errore di autenticazione + Autenticazione fallita + Autenticati con le credenziali del dispositivo per procedere. + Colore di fondo + Torna sempre alla schermata principale + Centro + Cambia sfondo + Scegli il launcher predefinito + Nome della città + Contatti + Copiato negli appunti + Scuro + Formato Data + Predefinito + Cancella + Cancella tutto + Elimino tutte le note\? + Sviluppato da Md. Rasel Hossain + Amministratore del dispositivo + Permetti il blocco dello schermo con due tocchi + Donazioni + Blocco schermo con due tocchi + Il campo è vuoto + URL del flusso RSS + Prima installazione + Come da sistema + Libero + Apri in modalità PiP + Frequenza + Capito + Immagine non ottenuta + Ultimo aggiornamento + Sinistra + Chiaro + Impostazioni di Lunar + Varie + + Tempo di uptime\nSistema attivo da\nSoglia della Memoria\nTemperatura della Batteria\nTensione della Batteria + \nArchiviazione di Root\nIPv4\nIPv6 + + Negativo + Non riesco a trovare Negozi installati in questo dispositivo. + Chiave API OWM + Affermativo + Procedere + Avvio Rapido + Reset + Questa operazione cancellerà tutti i dati salvati per questa applicazione. I dati non saranno ripristinabili. + Riavvia + Destra + Root + Flusso RSS + Inizia con tastiera + Numero di scorciatoie (URL/Contatti) + Mostra il nome della città con il meteo + Qualcosa è andato storto + Codice sorgente + Stella + Supporto + Supporti lo sviluppatore per mantenere l\'applicazione viva e gratuita: +\n +\n
  • Donazioni: se possibile, può fare una donazione diretta ed incoraggiare lo sviluppatore.
  • +\n
  • Amazon: può usare il link di affiliazione mentre fa acquisti su Amazon per ricompensare lo sviluppatore.
  • +\n
  • Metta una stella: può mostrare il suo supporto su Github mettendo una stella.
  • + Statistiche di sistema + Grruppo Telegram + Temperatura + Unità della temperatura + Data e ora + Formato ora + Note + Numero di note nella schermata principale + Gestore delle note + Blocco del gestore note + Totale + 12 ore + 24 ore + Impossibile avviare + Disinstalla la applicazione + Aggiorna + URL + Usata + Versione + Sfondo cambiato + Meteo + Benvenuti + Benvenuti su Lunar Launcher. +\n +\nAppena chiuso questo dialogo, le verrà chiesto di fornire le seguenti autorizzazioni. Se si rifiuta di fornirle, questa applicazione non funzionerà come previsto. +\n +\n
  • Modifica dei parametri di sistema - Per controllare la luminosità utilizzando il cursore
  • +\n
  • Telefono - Per effettuare chiamate dalle scorciatoie
  • +\n +\nSe ha ancora qualche dubbio, può verificare il codice sorgente in qualsiasi momento. Questa applicazione è completamente open-source. +\n +\nGesti: +\n
  • Scorrere verso l\'alto - comparsa accesso rapido
  • +\n
  • Scorrere verso il basso - pannello delle notifiche
  • +\n
  • Scorrere a destra - pannello delle informazioni
  • +\n
  • Scorrere a sinistra - pannello delle applicazioni
  • +\n
  • Premere e mantenere sull\'indicatore della batteria - impostazioni del launcher
  • +\n
  • Premere e mantenere sulla parte inferiore dello schermo - gestore delle note
  • +\n
  • Doppio tocco - blocco del dispositivo (attivare dalle impostazioni)
  • +\n
  • Premere e mantenere l\'elemento dei preferiti - rimuove l\'elemento
  • +\n +\nPer maggiori informazioni, visitare la wiki su Github.
    + Scusa, non hai pacchetti di icone installati. + Condividi APK via + I cambiamenti che hai fatto richiedono il riavvio della app per essere applicati. Vuoi riavviare la app adesso\? + Lista con icone + Nascondi barra di stato + Riavviare adesso\? + Dimensioni scorciatoie e icone app + Scegli pacchetto icone + Layout cassetto delle app + Altezza della barra A-Z + Visualizza dettagli + Muovi sù + Muovi giù + Lista + Griglia + Aumenta altezza + Numero colonne + Condividi il file apk + Abbassa altezza + Dopo + Scorri attività +
    \ No newline at end of file diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml new file mode 100644 index 0000000..a88a1af --- /dev/null +++ b/app/src/main/res/values-ja/strings.xml @@ -0,0 +1,58 @@ + + + 新しく追加 + ウィジェットを追加 + アプリケーションのテーマを選択 + アプリの調整 + アクセシビリティ + 感謝 +\n https://github.com/cachapa/ExpandableLayout + 外観 + ロックサービス + 高度 + アプリドロワーのレイアウト + アプリ情報ウィンドウを開く + アプリマーケットにアクセス + 詳細 + アプリドロワー + Lunar Launcherでデバイスをスリープ状態にします。(API 28+) + アクティビティを参照 + センター + デフォルトのランチャーを選択 + アイコンパックを選択 + 認証に失敗しました + 連絡先 + 認証エラー + バックグラウンド + 壁紙を変更 + 都市名 + 常にホーム画面に戻る + 続行するには、デバイスの情報で認証してください。 + 申し訳ありませんが、アイコンパックがインストールされていません。 + デフォルト + ダブルタップのジェスチャーでデバイスをスリープ状態にします + クリップボードにコピーしました + ステータスバーを非表示にする + テキストフィールドが空です + 画像を取得出来ませんでした + ショートカット&アプリアイコンのサイズ + 分かった + RSSフィードURL + デバイス管理者 + PIPモードで開く + 削除 + 頻度 + 全てのToDoエントリーを削除しますか? + 開発者:Md. Rasel Hossain + 最初のインストール + 詳細情報を見る + 自由 + ダーク + フォローシステム + グリッド + 寄付 + 全て削除 + 日付 + グリッド列の数 + 高さを減らす + \ No newline at end of file diff --git a/app/src/main/res/values-ml/strings.xml b/app/src/main/res/values-ml/strings.xml new file mode 100644 index 0000000..ed86e22 --- /dev/null +++ b/app/src/main/res/values-ml/strings.xml @@ -0,0 +1,5 @@ + + + അക്‌സസിബിളിറ്റി + വിശദാംശം + \ No newline at end of file diff --git a/app/src/main/res/values-nb-rNO/strings.xml b/app/src/main/res/values-nb-rNO/strings.xml new file mode 100644 index 0000000..8909e04 --- /dev/null +++ b/app/src/main/res/values-nb-rNO/strings.xml @@ -0,0 +1,44 @@ + + + Tilgjengelighet + Bakgrunn + Legg til ny + Enhetsadministrator + Programdrakt + Kopiert til utklippstavlen + Alltid gå tilbake til hjemmeskjermen + Forvalg + Endre bakgrunnsbilde + Datoformat + Slett + Slett alle + Doner + Tekstfeltet er tomt + Programjustering + Om + Legg til miniprogram + Utseeender + Programskuff + Programinfo + Programbutikk + Bynavn + Kontakt + Mørk + Tilbakestill + Temperatur + Del APK via + Ymse + Velg forvalgt oppstarter + RSS-informasjonskanal + Høyre + Låsetjeneste + Kildekode + Støtte + Slett alle gjøremålsoppføringer\? + Noe gikk galt + Omstart + Telegram-gruppe + Vis detaljer info + Tidsformat + Temperaturenhet + \ No newline at end of file diff --git a/app/src/main/res/values-night/colors.xml b/app/src/main/res/values-night/colors.xml new file mode 100644 index 0000000..74e5118 --- /dev/null +++ b/app/src/main/res/values-night/colors.xml @@ -0,0 +1,7 @@ + + + #FF1C1B1F + #FFFFFBFE + #11FFFFFF + #01000000 + \ No newline at end of file diff --git a/app/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml new file mode 100644 index 0000000..978bc96 --- /dev/null +++ b/app/src/main/res/values-night/themes.xml @@ -0,0 +1,15 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml new file mode 100644 index 0000000..cc3f491 --- /dev/null +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -0,0 +1,5 @@ + + + Sobre + Acessibilidade + \ No newline at end of file diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml new file mode 100644 index 0000000..a2e002b --- /dev/null +++ b/app/src/main/res/values-pt/strings.xml @@ -0,0 +1,135 @@ + + + Alterar papel de parede + Agradecimentos +\n https://github.com/cachapa/ExpandableLayout + Adicionar Widget + Avançar + Aparências + Tema do aplicativo + Alinhamento do aplicativo + Autentifique-se com a credencial do seu dispositivo para prosseguir. + Escolher Launcher padrão + Nome da cidade + Copiado para a área de transferência + Formato de data + Diminuir altura + Padrão + Excluir + Desenvolvido por Md. Rasel Hossain + Administrador do dispositivo + Doar + Método de bloqueio de toque-duplo + O campo de texto está vazio + URL do Feed RSS + Primeira instalação + Gratuito + Forma livre + Frequência + Entendi + Ocultar a barra de status + Tamanho do atalho e do ícone do aplicativo + Não foi possível buscar a imagem + Aumentar a altura + Última atualização + Esquerda + Claro + Miscelâneos + Código-fonte + Estrela + Apoie + Grupo no Telegram + Temperatura + Unidade de temperatura + Tempo — Data + Formato de hora + Gerenciador de tarefas + Bloqueio do gerenciador de tarefas + Total + Bem-vindo(a) + 12 horas + 24 horas + Não é possível iniciar + Desinstalar + Atualizar + URL + Usado + Versão + Papel de parede alterado + Centro + Fundo + Sempre voltar para a tela inicial + Sobre + Acessibilidade + Deixar o Lunar Launcher colocar o dispositivo para dormir (no Android Pie (API 28+)). + Informações do aplicativo + Adicionar novo + Serviço de bloqueio + Gaveta de aplicativos + Loja de aplicativos + Erro de autenticação + Falha na autentificação + Contato + Seguir o sistema + Toque duplo para bloquear + Escuro + Excluir tudo + Excluir todas as tarefas\? + Clima + Negativo + Positivo + Bem-vindo(a) ao Luna Launcher. +\n +\nApós fechar este diálogo, você será pedido para dar as permissões necessárias para o aplicativo funcionar como esperado. +\n +\n
  • Modificar configurações do sistema — Para controlar o brilho com um deslizador
  • +\n
  • Telefone — Para realizar chamadas a partir dos atalhos
  • +\n +\nÉ um software livre com distribuição gratuita (Copyleft); verifique, mude e compartilhe com todos(as). +\n +\nGestos: +\n
  • Deslizar para cima — Acesso rápido
  • +\n
  • Deslizar para baixo — Painel de notificações
  • +\n
  • Deslizar para direita— Feeds
  • +\n
  • Deslizar para esquerda — Gaveta de aplicativos
  • +\n
  • Toque e segure dentro do indicador de bateria — Configurações do Launcher
  • +\n
  • Toque e segure na parte inferior da tela — Gerenciador de tarefas
  • +\n
  • Toque-duplo — Bloquear dispositivo/Colocar para dormir (ativar em configurações)
  • +\n
  • Toque e segure no item favorito — Remover favorito
  • +\n +\nMais informações na página wiki no GitHub.
    + Configurações do aplicativo + Direita + Número de entradas de tarefas na tela inicial + Tempo de atividade do dispositivo +\nSistema ativo +\nLimite de memória +\nTemperatura da bateria +\nTensão da bateria +\nArmazenamento raiz +\nIPv4 +\nIPv6 + Mover para baixo + Nenhuma loja de aplicativos instalada neste dispositivo. + Mover para cima + Chave da API OWM + Prosseguir + Início rápido + Resetar + Raiz + Reiniciar + Essa ação limpa todos os dados armazenados para este aplicativo e não pode ser desfeita. + Altura da barra de deslocamento A-Z + Feed RSS + Tarefas + Procurar com o teclado + Algo deu errado + Número de atalhos (URL/Contato) + Mostrar nome da cidade com previsão do tempo + Status do sistema + Apoie o desenvolvedor para manter este aplicativo gratuito e vivo. +\n +\n
  • Doe: Se possível, faça doações diretas para ajudar e encorajar o desenvolvedor.
  • +\n
  • Amazon: Use o link afiliado enquanto compra na Amazon para recompensar o desenvolvedor.
  • +\n
  • Estrela: Dê uma estrela no GitHub para mostrar o seu apoio.
  • +
    diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml new file mode 100644 index 0000000..47cce92 --- /dev/null +++ b/app/src/main/res/values-tr/strings.xml @@ -0,0 +1,137 @@ + + + Hakkında + Erişilebilirlik + + Lunar Launcher\'ın cihazı uyku moduna almasına izin veren erişilebilirlik servisi, + Android Pie (API 28) ve üstü için. + + Kilit Servisi + + Teşekkürler\n + https://github.com/cachapa/ExpandableLayout + + Yeni Ekle + Widget Ekle + Gelişmiş + Görünüm + Uygulama Teması + Uygulama Çekmecesi + Uygulama Bilgisi + Uygulama Mağazası + Kimlik doğrulama hatası + Kimlik doğrulama başarısız oldu + + Devam etmek için cihaz kimlik bilgilerinizle doğrulama yapın + + Arka Plan + Her zaman Ana Ekrana Geri Dön + Duvar Kağıdı Değiştir + Varsayılan Başlatıcıyı Seçin + Şehir Adı + İletişim + Panoya kopyalandı + Karanlık + Tarih Formatı + Yüksekliği Azalt + Varsayılan + Sil + Tümünü Sil + + Mevcut tüm görevleri silmek istediğinizden emin misiniz? + + Geliştirici Md Rasel Hossain + Cihaz Yöneticisi + + Çift dokunarak kilitleme özelliğini kullanmaya izin ver + + Bağış Yap + Çift Dokunma Kilitleme Yöntemi + Metin alanı boş + RSS Besleme URL\'si + İlk Yükleme + Sistemi Takip Et + Ücretsiz + Serbest form + Frekans + Anladım + Durum Çubuğunu Gizle + Resim alınamadı + Yüksekliği Arttır + Son Güncelleme + Aydınlık + Ay Ayarları + Çeşitli + + Cihaz Çalışma Süresi\nSistem Aktif\nBellek Eşiği\nBatarya Sıcaklığı\nBatarya Gerilimi + \nKök Depolama\nIPv4\nIPv6 + + Yukarı Taşı + Aşağı Taşı + Negatif + Bu cihazda yüklü hiçbir uygulama mağazası yok. + OWM API Anahtarı + Pozitif + Devam et + Hızlı Başlat + Sıfırla + + Bu işlem, bu uygulama için depolanan tüm verileri temizleyecek ve geri alınamaz. + + Yeniden Başlat + Kök + RSS Beslemesi + Klavyeyle Ara + Kısayol Sayısı (URL/Kişi) + Hava Durumu ile Şehir Adını Göster + Bir şeyler yanlış gitti + Kaynak Kodu + Yıldız + Destek + Geliştiricinin uygulamayı ücretsiz ve canlı tutmak için desteğini destekleyin.\n + \n
  • Bağış: Mümkünse, geliştiriciyi desteklemek ve teşvik etmek için doğrudan bağış yapın.
  • + \n
  • Amazon: Amazon\'da alışveriş yaparken ortaklık bağlantısını kullanarak geliştiriciyi ödüllendirebilirsiniz.
  • + \n
  • Yıldız: Destek göstermek için Github\'da yıldız verin.
  • +
    + Sistem İstatistikleri + Telegram Grubu + Sıcaklık + Sıcaklık Birimi + Zaman - Tarih + Zaman Biçimi + Yapılacaklar + Ana Ekran\'daki Yapılacak Sayısı + Yapılacaklar Yöneticisi + Yapılacaklar Yöneticisi Kilidi + Toplam + 12 Saat + 24 Saat + Başlatılamadı + Kaldır + Güncelle + URL + Kullanılmış + Versiyon + Arkaplan başarıyla değiştirildi + Hava Durumu + Hoş Geldiniz + Lunar Launcher\'a hoş geldiniz. İlk açılışınız; eğer yeni bir kullanıcısınız, + devam etmeden önce bu metinleri okuyun. + \n\nİlk olarak, bu iletişim kutusunu kapattıktan sonra aşağıdaki izinleri vermeniz istenecektir. Eğer izinleri vermezseniz, + uygulama beklenildiği gibi çalışmaz. + \n\n
  • Sistem ayarlarını değiştirin - Bir kaydırıcı kullanarak parlaklığı kontrol etmek için
  • + \n
  • Telefon - Kısayollardan arama yapmak için
  • + \n\nHala herhangi bir şüpheniz varsa, kaynak kodunu her zaman kontrol edebilirsiniz, tamamen açık kaynaklıdır. + \n\nJestler: + \n
  • Yukarı kaydır - hızlı erişim
  • + \n
  • Aşağı kaydır - bildirim paneli
  • + \n
  • Sağa kaydır - beslemeler
  • + \n
  • Sola kaydır - uygulama çekmecesi
  • + \n
  • Pil göstergesi içinde basılı tutun - launcher ayarları
  • + \n
  • Ekrandaki alt kısımda basılı tutun - yapılacaklar yöneticisi
  • + \n
  • Çift tıklayın - cihaz kilidi/uyku (Ayarlar\'dan etkinleştirin)
  • + \n
  • Favori öğeyi basılı tutun - favoriyi kaldırın
  • + \n\nDaha fazla bilgi için Github\'daki wiki sayfasını ziyaret edin. +
    + +
    diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml new file mode 100644 index 0000000..7796124 --- /dev/null +++ b/app/src/main/res/values/colors.xml @@ -0,0 +1,10 @@ + + + #FFFFFBFE + #FF1C1B1F + #11000000 + #01ffffff + #FFFF0000 + #FF00FF00 + #FF0000FF + \ No newline at end of file diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml new file mode 100644 index 0000000..f814810 --- /dev/null +++ b/app/src/main/res/values/dimens.xml @@ -0,0 +1,23 @@ + + + 0dp + 2dp + 4dp + 8dp + 12dp + 16dp + 20dp + 22dp + 36dp + 40dp + 48dp + 136dp + 196dp + 276dp + 324dp + + 6sp + 16sp + 48sp + 216sp + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml new file mode 100644 index 0000000..0387eab --- /dev/null +++ b/app/src/main/res/values/strings.xml @@ -0,0 +1,169 @@ + + + About + Accessibility + + Let Lunar Launcher put the device to sleep (API 28+). + + Lock Service + + Acknowledgements\n + https://github.com/cachapa/ExpandableLayout + + Browse activities + Add New + Add Widget + Advance + Amazon + Appearances + Choose Application Theme + App Alignment + App Drawer + App Drawer Layout + Open App Info window + Visit on app market + Apps Count + AARRGGBB + Authentication error + Authentication failed + + Authenticate with your device credential to proceed. + + Background + Always Go Back to Home Screen + Celsius + Center + Change Wallpaper + Choose Icon Pack + Choose Default Launcher + City Name + Contact + Copied to clipboard + CPU + Dark + Date Format + Decrease Height + Default + Delete + Delete All + + Delete all to-do entries? + + See detail information + Developed by Md. Rasel Hossain + Device Admin + + Allow to put the device to sleep on double tap gesture + + Donate + Double Tap Action + The text field is empty + Fahrenheit + RSS Feed URL + First Install + Follow System + Free + Open in pip mode + Frequency + Got it + Grid + No of Grid Columns + Hide Status Bar + Sorry, you don\'t have any icon pack installed. + Shortcut & App Icon Size + Could not fetch image + Increase Height + Last Update + Later + Left + Light + List + List with Icon + Lunar Settings + Misc + + Device Uptime\nSystem Active\nMemory Threshold\nBattery Temperature\nBattery Voltage + \nRoot Storage\nIPv4\nIPv6 + + Move Up + Move Down + N/A + Negative + + Couldn\'t find any app store on this device. + + OWM API Key + Positive + Proceed + Quick Launch + RAM + Reset + + This operation will clear all data stored for this app, and can\'t be undone. + + Restart + + The changes you have just made require app restart to take effect. Do you want to restart now? + + Restart now? + Right + Root + RSS Feed + Height of A-Z Scrollbar + SDK + Start with Keyboard + Share the apk file + Share APK via + Number Of Shortcuts (URL/Contact) + Show City Name With Weather + Something went wrong + Source Code + Star + Support + Support the developer to keep this app gratis and alive.\n + \n
  • Donate: If possible, make direct donations to help and encourage the developer.
  • + \n
  • Amazon: Use the affiliate link while shopping on Amazon to reward the developer.
  • + \n
  • Star: Star on GitHub to show your support.
  • +
    + System Stats + Telegram Group + Temperature + Temperature Unit + Time — Date + Time Format + To-do + Number Of To-Do Entries On Home Screen + To-Do Manager + Lock To-Do Manager + Total + 12 Hour + 24 Hour + UID + Unable to launch + Uninstall the application + Update + URL + Used + Version + Wallpaper changed + Weather + Welcome + Welcome to Lunar Launcher. + \n\nAfter closing this dialog, you will be asked to grant permissions needed for the app to work as expected. + \n\n
  • Modify system settings — To control brightness using a slider
  • + \n
  • Phone — To make call from shortcuts
  • + \n\nIt\'s a copylefted libre software; check, change and share with all. + \n\nGestures: + \n
  • Swipe up — Quick access dialog
  • + \n
  • Swipe down — Notification panel
  • + \n
  • Swipe right — Feeds
  • + \n
  • Swipe left — App drawer
  • + \n
  • Tap and hold inside battery indicator — Launcher settings
  • + \n
  • Tap and hold in the lower part of the screen — To-Do manager
  • + \n
  • Double tap — Device lock/sleep (enable from settings)
  • + \n
  • Tap and hold the favourite item — Remove favourite
  • + \n\nMore info on the wiki page at GitHub. +
    + Wiki + +
    diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..ed2bb2c --- /dev/null +++ b/app/src/main/res/values/styles.xml @@ -0,0 +1,24 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml new file mode 100644 index 0000000..4a6b39a --- /dev/null +++ b/app/src/main/res/values/themes.xml @@ -0,0 +1,17 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/xml/device_admin.xml b/app/src/main/res/xml/device_admin.xml new file mode 100644 index 0000000..43d5826 --- /dev/null +++ b/app/src/main/res/xml/device_admin.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/xml/file_paths.xml b/app/src/main/res/xml/file_paths.xml new file mode 100644 index 0000000..a8df289 --- /dev/null +++ b/app/src/main/res/xml/file_paths.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/app/src/main/res/xml/lock_service.xml b/app/src/main/res/xml/lock_service.xml new file mode 100644 index 0000000..b5bd58a --- /dev/null +++ b/app/src/main/res/xml/lock_service.xml @@ -0,0 +1,7 @@ + + \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..e96e5e9 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,18 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +buildscript { + val kotlinVersion = "1.9.0" + extra ["kotlinVersion"] = kotlinVersion + + dependencies { + classpath (kotlin("gradle-plugin", version = kotlinVersion)) + } +} + +plugins { + id ("com.android.application") version "8.2.1" apply false + id ("com.android.library") version "8.2.1" apply false +} + +tasks.register("clean") { + delete(rootProject.buildDir) +} diff --git a/fastlane/metadata/android/en-US/changelogs/36.txt b/fastlane/metadata/android/en-US/changelogs/36.txt new file mode 100644 index 0000000..3beff84 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/36.txt @@ -0,0 +1,3 @@ +- requests consideration +- new translations +- improvements \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/changelogs/37.txt b/fastlane/metadata/android/en-US/changelogs/37.txt new file mode 100644 index 0000000..d29838a --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/37.txt @@ -0,0 +1 @@ +- fixes a bug \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/changelogs/38.txt b/fastlane/metadata/android/en-US/changelogs/38.txt new file mode 100644 index 0000000..d019f1b --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/38.txt @@ -0,0 +1,3 @@ +- startup crash fix by @ottop +- icon pack support for favorite apps by @fs-sifat +- app rename support by @fs-sifat diff --git a/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt new file mode 100644 index 0000000..3af7bd0 --- /dev/null +++ b/fastlane/metadata/android/en-US/full_description.txt @@ -0,0 +1,19 @@ +Lunar Launcher is yet another addition to the world of android launchers. Low memory footprint and clean interface, but large number of features are awaiting. It is fully open-source and contains no ads or trackers. + +Features: + +* Material design 3 +* Day/night theme mode +* Double tap: Lock/sleep +* Swipe down: Expand notification panel +* Quick app search and launch +* Launch apps in freeform mode +* Animated battery percentage indicator +* 12/24 time format and date +* Weather: celsius and fahrenheit +* Todo manager +* Quick actions +* RSS feeds +* Device stats + +More exciting features will be added soon. Please donate to support the development. diff --git a/fastlane/metadata/android/en-US/images/featureGraphic.png b/fastlane/metadata/android/en-US/images/featureGraphic.png new file mode 100644 index 0000000000000000000000000000000000000000..256ac39a5d4aa4ca356066b12487eb6c952e6eea GIT binary patch literal 20755 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 literal 0 HcmV?d00001 diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png new file mode 100644 index 0000000000000000000000000000000000000000..8fde580c475f9d7798d8753c810866dd26529cca GIT binary patch literal 75422 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 anz{bxU(n}$)r>EYDafgw$&kJ5^FIL3q*TKI literal 0 HcmV?d00001 diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png new file mode 100644 index 0000000000000000000000000000000000000000..7be2faf31eb0b7e3618a5c97c31533e39e4f1adb GIT binary patch literal 132219 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

    mjC?RjUl6UDMGO%VFnEd-1VH^ZX44O4rLcn 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

    qk;F}R zQXPnxNPAy0IcXdZ5KhA?Yq$Nc`5b*665Y5keGBK=O9XUlTk%3CZyRHZVs0BX9M7Kp z9F<~FL|w!Qo6?fYUXxRePFj*2Vb;_r@W3RVao-2m*Q08IaU5WQ+Q{TkZmD5uK%=~D z9^);Zt8Pp9sEs%moO=S`L__x!1`6aqk!=Vq$|ORhI;g!mg?b_@_?4q+ba22sJe3S_ zzgv2iLX|;zV$^+xPrG!Ie;S?<^4{fx(*#EN4vx{+-vqtGXm6pmXR11EX-q>L<9Kl5 znuwkntL%gLK{bz!Sd^bS14_`N{1PXXdkUDtTgoyy`Pc2Ceu>$OFV~CUyKV7|I@v)y z(*OzTW!{glUF>-rp38+IadpFNrBaVQY`buaDeFo_>{&l`T2%TFr?4lcN_D$x;UT^9 zofZ2H5tg}(D zvM`n*jiENHpiA`*!}FhRS>#K8l%A{9Ev&}~R15$4D9cp-S$rm7VoPZqH zPU0260PlONE+>rQs1+@-H{U;jEQM8@z0b947tU6EY$p~`DVichrsW&w&j$MR73rAD zFB7M4uj=?abBV#n@Nxwpp$rp6z*-Q=U8HymN6eeVBAXUbaDfosu7QE%LRq(Cw&-7j zXjo9@zocT7F%2jMbv`VRbYcj{hj2=H7cJ|Urhc7Txjy_yiUf_zr6zSJ9+dM6U6MTd zkvy9Dyf%jeqMC5vWZm5~ZqB~|t4@sBm+_8-D}n2_>M#O%)XgqCE=e)b$jcq;6qZhI zyd97f%b^HX2-KPpBh-=1QW$(|TafX`?694d7zG`iDl#f7r<=7)mcxJu87IgFTN}cQ zk|8I&DF2H6V!FASOYd|eO3)#lBs~1~uV)V7jVFC&pDj4y;>wgR5m*S_; z5=pRtvGhUmatW&dbMFr=PTs%2C44N@sE#n5xeG)sz)8Ra@2XRs6VGGG%EOPfYev;z=| z&XAA13-7~A?m5H5+}=GHu`ycQ141^;X?fu3Vg48xh2|Mx?f-J{F6$Vu@Q^=$8FDn- z`7lxQI~5xGtS%VAb`%QKeyx9e8Zh}A$P1R4lE6BA9ls8Jjx)2C_19b_Zd)=dCUGk@ zq8HNcy`axrv4Map+sHLO9cj&4Ej}&pOQh{nRbbj)ITCHXf~qvi8?;sQKddFV+s10N zJI>@$BOx>eGd36w5JtYGRATXS_zL!c7QDCGlDGB!V<)BZUJ>up9!WKY(dWRj21rXVU_0yT?nA?4 zWPAiA{qV@yswckQ^UouMj$qXV^Vf263xHWLdCkJ0Gpi?pq#xj(ut0^jC9~>@^$Z~L zKq2Vh>mi;LX}|)^QFG4pPP9oU>e2%n7Fv65#|Nr2;wB6_)M7g zd)t=jJ^3;7Y<~Dop-PaaB)c5PM$SVv;Oj%ES7XmTA7;bkgj%@5xsaO1DX!_e?1^jB zM?XgD@}APXN@F!gjd2=ZuKOvfti154#t51k=f6jQg#;`ne)jW>;iFh)OcAFUtiAFm zkc+EyBkf`1(e!c&hxkT7cl0)fe}5@OfwW4ILY5IBkHR%YR3axuo6QOR1(s;B!5ZeI zAd+imgoM;)gp4KEz{)W&Tilz&bOCei#VxqX6g;OzpDAN-mlT$Uk4&=DF5rq3+Jk?O z4BrvDkm!)zf~9D|08gsFGNErb0t8YQIA#^{^zW)JYt6|M#>l%yKIy<#H`G=QZ z7&r$mK=<%~vhNN_%yi-9FY^p=TL=`VNMH`9cWg=^}=`Zb?!N@Rh*n!86zcEdWrU0WKC;-|IdB z8DMJiBHH-z82b0-X-FQONyr1I`m{=l8YTUw-M3RTt`aXp{?6DgU^6D6D3@qh&x7&j z*LP=@^_^np&>Q1lcO|%A`VfGu&8}bWw^)A?4JA#?>7CRjieV*2SXY+%d#qC2oWq;+ z^wO7_NcyhQ2KCm2Ysw9T2@DlTJuV+Uu>M|^s^;;9(A1U5!zWmctE z9w19+1jiRJ2IEzU(E|C}n#Ds|hpBLOKh$~)wydL$7@_xP46>m~BIndqphPGYd;Y(amd8D)9Px>8KO+gSy!FzW)K$$ZBuI0IAG)>%TV0dTKR zB572ie}FW`dNonZn?=lfE_yFPBfenpP{d$^bruGV zndFGlv0W(5&?>(PG?mrTM9%X-s5u6N?LID|#Ah3k|Kt=cM*op)3s{+;ol;PzxE2E~ z3;&gr=9c&%=b!#5g1g`Et4h`vaL&?-qSr|<`nf0}z`A^S{}Gz>#wz#!ii6ifC3rfP z_1ZGVx&>yDTulx(EvF6gO`%=L#JN!3|5c;f8K7)5$JFz$9wo_Rs$kVN(Fhl&S0m~@ z_Z0!3TH)5pU;e3EW6^Kh!)R6#@ifV|zD*_GNCK0>E{vNs)-WEkO+C<)u6?WwY!#>( z7(<^-2PtPJ$8>RaAG zE?WsJeQ=KD9s~S$)34fovCTwKk$o_ElGpPaYJ2l9TR9!p=!uef>)N}@xBna8?!nNx ze+y1lQ$1Uy+faZcJY4_#=-?MP+rXy>mok`HBT2sSYDCS@S`IwgynVzPT8hQx7FzJ1 zB6KzAorg!WP=o=IEp;<%#fV_;A6rk}-L7^eF4#;5Ni8 zb?%p!ZN3LDVC@Y#{c^D{t`3?(F7QYKRxpq|7FWNrp2ct*7TnQUq=&m0$bRsIg(l2h zrHglOKq?s)31BYE9&>U+qH;N8Ma!z#`+Bmf#(^=;!U`ht(?G6q`Ah|Wv_?K3HYQ_~ z;sf6mmTvRo-`^xMbfG%~o$FOSzG9si@Mo$3?6sN8S29+v{2dvZe|FEPRxXXGFSfhZ zj$8jGeZ(B*cxtKLt}kwBW%B%Gi3jP+#801m8vb+L)Y@JgAd;IaZ}P8F8-9l($G?YZ z*K_SG@~<4M^u<60ED*BZPy#hR`gK}n3_EPTW(BA z6VHf;nn28bmPd+^24EZSN~Jt*(OlL^MVWQ`a6zaoO)$#wr}(6JW`#d^-nf*Utr8}D zDf&)(-uf|jQUAj#7@M5+Omc=-K*a*yBuCNdG{Z_xWe@eWBH3_WNbvltzgh%OvQP*T z0NSuz&B#ziFMKSIciINPK>BV7g`Fhbmi0RU6!A?;;8eIn zM8TtM`EF`+2!*szf1px1(R%Q!8=yLD(6;*89mt)^aN~eN3qpml$pSXhvfiedFH>9x z(jj0Ppluma6{kZQc+OS)lJi!3UIm?&L7$@=rDod=#s>H#W2_U!9Afm_9n@lHFZDR8 zAqYRGuM?auTrSqS@e{?}KEXfZTK>bLK`AP*z8a_gLUh6Z-JVqy|C-UopxsapD`U_N zG-uyEq^5K7Pg8DmoQ*ykq}El)bksV{w@Aa4qIidghK2{}%+UE`vx<@N17Rx)2h+T) z`DVpH@QjerBiS1Oz@2Sf&sMqZV7-R7I$Do(np>TyJ{cJw?nsPU{`*F7vZK7bBQ?4j zz|-a-o@Nh>YrN#eF!tJROp%Jq(|lsA&d0)9{1w;?j+^ac~G)y~Sr;T<%>0 zR}9H?m?IrZ(ygs5Td{YVPjpB8$@2&4A1Blss4QuSv@We1Tb7*$By*g>&mZ$DhiRMy zBPv0e)+ejSbl>2&HKc>7^a%ilbehKBv}4>3%3CZpIlCz?5zg}LQ-hjc-OI;5>p1?G z{XoZbG~kP2)V6+0>M1+e&S*Hi56-VH_XtM@l)5D%{naPF6 zSb|I>ATu9Z0&<{K%SMzL8A)zTRQvjZy7wg}2I0&wFm@X2>3O|=W49F-FKDrkzSD?2?cJQ_g^FH z>%3G4d8!J;@iG+fDSepvC*cuZhOSowd1t76?o2yz*Rvu^Dx|Mjj3Z<1im)D-$Uw@O zTJkSLld?AFynhLv53o#z$&o=#>ZbPwx-*yg-@&+i+UTzSOGMt;Jwcf1B?XoeUi5mA zB?9SKLs_v%?I@>bK>hEab~XYSMK;NWD!T(ubXTuZ-&j)hr1@vEhBsxv+aLZX*oq{q zhEiAzYrVj5Y)=erKmUG;Rb?UwKru#~a0wI5YNDw7yUAAQ2h6O=|kqvnx%IZWM=kYEtgq_mUl4^ zc?)&U07Lbf!QKN;GAilMi$va7XnOn9GlNs*nGuF7*#p2!6&M~mZ!SZ&2If<5;| z{wh{P1_~bmK%S9Pn3lizqcvp8J3z)3b{E>mNw&$&y<8V>HI)p&y3m|?Hs1F&K>c7X z^ZtE4K*=ET^)csfDeN_hUbRE17Z5ZHD^}5Y3WPDvbfbVEA9QY5%VEgI@@&%?kd4FK zpjlmjrG`T0G#A<9AoI& z3HOZ4Cw>iN@`F0Vz|9a^x*@_(-kDn`#Yuxa7gGtDnjwrAaG=lEy@3F{)z7tIQE)TzPFYDk4`YYr}3M%x5KG9%vv=-5>r>Z z(laXot0R$zl{#KHpJ3Qe!dFn_4!VOdVcYkPKs;XKa;NE7bDYwH_tpsqrI!rgbVOMK~hM zb9N7Rnj5Ap-&!}s`-yp7e_`WPM~X+wv?gx8c_8ms!_0~TASUAbdDELUA($`K%M=d> z4~>9}{mc#o4u8S~NP zAMad@Jn3|iX0wylau{iWcpL}PmW)-G;HDkke%FMPf|hMa_9wP{A4!aXfKjfT(_TRy zJtVk1+PM!;pf}>Q2NPGkGrEbj3=hCU1J&(%G_`0vIn>)#j9@-++Fra{n4b;=w37s$ zCQMWHwrj$7A2^q}!fXnbpnwv9tIB0K8%!ZJ!oIavTkgY9Nk?apF+{Pu`o^5cIdNmX zuYYTd0J8!P_!C#S=R>}`w72a2?u}I6BTU_Yt{1!+lZ4E~6cw;M0H?7$Lgv4-_aKoP z6N@I*pfe=vLOj3#I|g~?&|Yix%~&`Nz*CQugQ1J?V|x%A-JAJF&#ZTIV2r0g3mp2E z6e#(-A90wS#V~)dq&4I^T<&@U2{jLx~WaU9VQ+Tw_nQGmq|pk0Az z5_`V9;E&slb+rM5jwYufAPxbme7J?Y;J0XRKTuF)C7eDm%m)r)@8`{SNGLc<@3=hM zg1^-na#WC=B718UBdd1T^xEZL=Tix~Db9mtC883e~Nn_Z?P8ATRE4 z$O^YSF8jUoqJBN(`0CT@55K>F-=!}wqi{aN_2&55>_1OoOBJ-LUPFqAlovcrCm2ec zr7kTTC55HNGq{N9XE@Oz|uO{Lxo&_J}g6HFRuVM=akAfEo zH4-im0N#DH)2NDCg5E|rWB!pWA(;W2{oQJrTpm=n#2&f#y1Ybb7X+^=fskrj-!D1& zkWxY{4hgZw`Z=@?qh+E!46(;8qo+sl0RTGK;tf=Pir_#1bgsQUkFoY3ByTDum+m$CvHUh!uGT|9s zojAe3?M;W6e8t>WR+t~Zs~kBi(Ui4(MQ0rR_0}!?j)K$!ANI>W=rS^Lr)l*Wm zT;?3RfKDW2!MYVSOJ{A~P@K^X1*_a6C=&X-2|xbuzp_@S8*cyU_`Ga<_2-+XAbi5_ zpLtSP$&v_GF_?4pb$&<&2=djG>z3(e_W^eay+e=;T>l9UgWX* zFa?tOJGmUk(53zG(|u|QT)L_cLDq_-L8i?tx~I!SL1Qv_)Zf9V#9wKq$gLpx0&2zH zfXj3R%@hJzs!`d3qtg&=4Otv;!*=zSkjH~E4l`FnSb?$7WHbvw-enpd9zfTHs2)I= z;aa%NN2f^mh$>{~UzUk5jBbd&mX_ipgn|8o=+xA>AVt!>`6?*7Y<3ZnXC8-PueoR=;b(*ScHl z&V#g8jL^DSmbgh1+^1bmsffweulP|I(p+HH>itRNqX;D;oHxL0zQ_C-q`F-V^LeC# z1yva+A{nZIlT(t#v~>d76M zB$W@N-~9hW_CkM{s<(QyYW){HwA=laq=XDeZzIzZ;e7`p&f}V+hA}8hs(fYnYv*QC z3l{QCEd+x>9IPQ>Yt^gmT!KVJzU&60%3|o~*KMyxGS&PGL9a{}fE+fhAb%dt_Q02V zqnE$>;@dEL)Oka|u%{Ht!`K#JwjaU{fp(!}!=O|v$w%?Rp6{8w@;=@A_bT`HA$2Ta z*T$Xd>c)-7U!<*qO2%1+F^U&_rD_ip_qkYSoSmpq=>;MjiIx$g6b8-FbR9`wXd}kZ zk{ooWouQ$TCtzR$iYcpm2gX)?u_z2$_Jf?*`%f?b?ho(m0uS@(spl16-`8-AGxkEp zHAG2-HH>Rbx~81-=BUh>kwRr3?hON26#M>MOauU^*1JxA|A=?d*E;Sv@z|X_F$s4t zL*&K3`$zE#63U>#fB!xl^XE1X$GLMOZQk#@YS_GKFU199Cse>~tmDr1-q)TiV5?Jw zoFf=KDyOgL-8da#Z7iCxwq6|%Qxus~2CIf!zry=KU(3GW=6;hTN%NhYEYe-LJSxp` zg_pTUNZ^~rSB5#7GjS{$`66dMjb$~yp}B5CfohMlY_7g$^PTJjO|tX1f(j6gei*4T zj_^@@zLSs@P~2|CmkYo4kT%oqFfqPqvQOUW7$?vFC&otW+mK8A7`7nv$|O zQ?Y7;n37HH0iiCkbK7iR_v8|;nDxMHf0eGQ9cWv0K@m_Lddk4%;mnY4w9vT`CN|dx zTG909t;}M&?3ou8$pk2$3Ws0O__Xf}9+1msKju1m2JaDlh;8jom_u*53&U0mY^_2U zf5rpu+2i51jmN`gKXeQ6W7|Fo4DS&$@@J)Rj>4VU=su6ehAKuj9-b^5J>oogV=pVw z29?^nLPe{cpw_z%f-M9>3JYxeYtxNR@v<&ARq9PpLUx3q#i2nE>_i#K5jx}u72JZ@ zvq6hbW&4g-v~vthIU9yt$a+wh$q*UrDC3Ygo}K7q`9%$=&Td1A_)!s;X$!{4s$~Al zQ}F9>E+7kL{?Y~&X#Kgd2Khr2xe0!fxWyfBEc#4@93g!fR~)AZZKHI2dzGuV_;;e= z-EPLFGVo-jFciYCSlYts9>*k^yt7b_indQgn$}aBlF@?x;P6j0@h!2Rjcp}JK_fJT z9kLY)lJva9$b2=8Wg~}Dg|jPdC_Usi9S1%EDP<`sJ`pKCDQI|Be$)f)pN#c!h@XVq zN6Bq3#Jkomc_qpZv3qZr4aIjLV${tMZmohLW9w0+NLWD2onr|kM<7sbM2OzPZcXpa z5vVFm#f?)aSdlFxBH^IBs(?+Ni!6~uh+wKfQ(2gm?`|BYDULOM)^rNYu z6<9r+VaX%=n3@&|1Dm135-Q{gVGI?NYN}+CB6NvS9OB2|E1}*VMc!95DN0;1L9Ngc zq>~;TUwx12@4R`wOGh{#o_gC^X&T#*BHY+1-|LZk&T3M4RW6n$W}o%szC{Z#zl2Uba!1sq zVlVrJbU%jL-AkOqrILQJ&;7qaY{NK@1flcP>e?!6&6c92pxg*tl~beb;sa+{N`>|M z>_*Wg46+<&5FB#*;hJt#9ON4L@{m>~#g4@>8`j99-AM_6=RNtNNfdJqY3e1;NKKbH z2&OIwmtfFd z@|S3vGZkz3s)mUvPuIWVb48qcq;_H2o42uKtPaP>im_L<;P^}vav<&W%oMq`*ll;M z(WJAQdeJDX+pegpir_NII=KOw)2L=M;d?H$+uF|&wHV+TvXB-o2*h~?Mvh{kj)@%p z$au{U?O}3i5-d7jT2bX|D?UD*tX|4H6xNXuB|4_UhT+j;mnB$?A5MZL49>XA?+&JZ zrorlH3~~(vd?YP8c$~AGmc|g!ER!!dSA~sg-Wuk#Qh(mJNbP{+ucu~Hij((V`u()8 zzrU{(MtO(Qt90AarK9b1%tuo!E@AbcLc%EjqzC74#irBU;^_-jKv5&{t@626HMG!! zP)G4#`C2{q(E>{6?Xz(UGK-r(HG?Y$fK0ndFRmJGKf>s-AFUA|0P^Mx@L90CL zd1-5#l{g6#caL!6Be|>U$$<*)4U>$?bwx-8?i-W3ny979mpIH(L4dVgH29&?)PU;O z(MOFQl9aQRa~`c$R@?S<94>?^;uDEq50o3>s-L%nGR7kNUv+TCHuZo0M;Mqtu9p{g z2p2!3owK&(R#x<>QVT0%UH=l`)Ya(+={GGJ>Y#{~DElmc_cMdCZ|r2PKFQDUtG!ESur;U7Mcj8NiH9EiYPp;hb+RJYhQid;FKCo}m|Tos{I*$1-Qi zGq_Se*lp_RI}m~6;00N)UQ*8stJX(?*#$F}{xMtofhvH61&4}bx!g~<#?o?{R3tWp z^(3eEuw8hJL)KQS$}ox;(}qy{2wU_{ z->p}m04mge>OEI&Tlwua8jcF`)Avo%IL%1xMZO&{_iK!w*KyUB^sikS>~p6u9snxqBjR z3epltd@2u@+VV5Y=%{ElL@MmJHg7B$<5e)FHY5b{eU`tak*T}Q< zl?wn!!HG1%1wSerV+77YtOjO1u+CI(>S_k2>wrjBkCQ|_IJ3#{De)Cw^RE0*+Mt7s zJ)~vWqur>6i~nlf^zeWA@(Vzo+pFuXv#)A^4KMt*a#afv<;|##kI(!-fF@iNmRaR$ z>f9RNtyHts1l*I~I8svbFw>ku63$ucvTFTRt{X7(iAHb-91c|X|0-0uySuhHBL*!! zVMYQ(TKdHOf8H0y`-*{z0%Tnw93vasv4FrEOWQx+Klg)jK!gOl0KT&n9Ox!Blif;2 z`I65B>(gMAJlh1ivaR{m2UeXq~j5*c9eLyRG8r zs;B}9H&kR=jW_}c_Bm0o!qiTAy@Ik#1@A*P?!ra`VrqSTz=!gcu?^=PEm!tmuLbr544L!O(^4OOb!mTk$f-dhJY?zV zxt~Bq4F$Z7aBesl&OkkFHdIbCrAea!Cj@S1oW z*JAPKd%`51`|kCR)qE>@K`Y>r>1-dh1YXnp%NM4U?+;gt)){JR!+wwj$9DsP+^S>f zL_CAYPfD?gq=$NijTa3GWztgekBjwEIEp+^?*BBOFwB-^i$86D1X8|TIu(|y!bpmIo@L;`TV&M7K4Mg#wW_H~N2!0=j zsgN^Yg0NLJc)ixgZZ5nAc?zUnC=`jC0JFC&Cx*8RiSAJJWgr(dhJh;#8VSKhQcB2RZkrNin@tn2*l`>RsR3#G%6AQIaJYQu|e$a455u(z1K-au@yOBD%TO;>@4*G~!{E^LhpXY;zhGI}Y^21;GUD5A@0k3s?U2$3Ad8*JI;@tz866x5y=aO& zB?B^FKW z>?@h^UF}b@w1pS+ntnpsOnGXDpd}(a-CK)Wg(A)njNvyD8N2UTXubnHXg) zjuAd@nI3s^v5oH9xcE~!l747q7mMS95F_}GHn+Td@S(b;#Gy+I1(gKC3HT}re<7Z0 zCWrjqpWS=G#~M(&+uwSfJ$eCkA04uUQ%yDh{p~G$`s-t25nY(|O%WJFy%l9~%r5bq zTOBW_X`fZ?8t{-lK6-S;#FfW8MU z+rk6qYDDWEsodrZZg-+YDTOn50tjsQ4$s`Z*WY*9D}HaT!~xGtAI(3Gt1kInPo_966UI`s9Yt+R;;kPH}KL1om^pr z0L4@Te=YKVy+A37z&vP@l#*K>V_$a?h2_|Ir&T|_m;iKxwkPkuLLXdCem)7${)+kk zSWT3IQ*aXlR1n0I1a-Eq?7`Lln5kmQ@-}1uGjzEGF=c|41e%LWyB2+cy~Jbl$2a1$ zZ1ifNCrWkdh+q{gRK9olZaM6@Xa+@!PUoM9LDWM}G0Swe?yrn^1^z#HBIGa;QWT(H zQS6A2a~bmFP(+uAl!~kNg+qf_aG4;zakV+vJdeN|n773}eV0smvxxQmBd$N>^i-6+ zK^>*tLbt9sNWiHB%`#A5&tum#*5B`Q*tetrlKatVwK;88GWVb1as?jWi7T3p{i9q43lJ{Qv7ZRN#88ZGDW_3P5{S5Zk;rtr=gk%*VW^? z5c0hn+Tw~nKLZ}xm$%nZw>FJ;JuiS51kS*uQ*xOd;IM|~K}BeN*?TDMHM9?ZZkQu$ zP{aI1#o=Qw;j2foEUZXovl5XYs4RjtnpY`~QT=XE29BqW8fCsczT%E0iD_TUs$b5+ z;)IhLN?cV z(pW&J)RC{{Ov+r9$;UtZB*?g8PNXM#bi|V*@QZxpg+s|0QCdRcg#gn1Lxebi-d{-2 z929UL0`~f5jzSr>>%jQV1g}ncu?1RR!fTFIb65Dk?+^W>v2>im26%0f7%Oe-Ds&B9 zPYr`79xAAz^uClr2T}-p5gpwR0XBlq23k7yl~?0`Xk9b~{*s%TczoG1NA5yoid0-_ zhx%d0$As{^Lf7#2U%u9C^=Urf$MO|X5cnscXq(6yjLG)h+Yq2HtcGQMQ|JG>VxWF3NkUHF&0!g%afC^rVVZ)vsvo^V)#P5b@g_cABw3 zH#q@T;UBV<4ONEatJhQ&u83tyyG9o%(LC_SvYQm){3u_ByqK=gAwr9eYZ!4+`j%4C z1+w)NnV64_5RxIFZTAq!@pQT{c`A|xTDSXXCy^4ynvPSdcm^$Rsu5;+U30xO>oh=h z$lVI+xU)LFP^h^78`;eyJ3K&Gs>3&co)>Czk+wuDCe5#U2$s+8=oae}0eGhRaHXcC zjL|UCy4^kvZ-{-6f3QD6FgXJxJd7s@G%}f0#&u&yg!749^gq};e0;MYkTQTl0{=+gkOa*yo<^`(R22roOD5@U7@rcsr`sBMOdUBu$w+= zzbr@4stCok8^kef&lS!k74IIL(oWkIiZNx@7+Y7-E)jO!*p#B=6NzGx63~jp@fC`O z39Jx!EO8a++)}!^G6zspfyyDsO<>dKDxp@2;Ja(5rEw@u7|8$Mw;v{s(S@CV8Qr-A zQ*A`K+Y!w<6Xszi4N=T%!~x^X$sQ8KfqCBwT|v^+iB=e!ftWq!ycjdK>VzPDi&XBX z_FlfUl1#$(zw?j_qy5cOw9hy$O&-lbH*8yKe&x-KA{ ziiF%~Z{g)e9G|@RCf0$l6O~c9vyR_D21VGuJ*9~58d&JB`M;Bb5;;z7Wx7MbF^MaU zenem4d{Sed{-8mC; zVLiSlIt%qwmTyR6WcezgyrtD@znBcEDSIV~xf=!Q8R0F(EhxA}c-yYbhX1VcjF8ZS zDiLc+pntHk4UUfE7>TpuLTI!gM|Vqv>3__0=sT2SQWF_rn$&YsGbetNg?wzBa#@Tr zN%HoqRp)9zg4-{LYYsz4m|#MW;O*+w@LSdYJ9j&XVqU+DQB4zCt9kCmFxe%&&C;8WnCc|MwbMlc9mYt2g{XR^BN7^rh#qLEg;P1L!o30N!OGBYAaCjN^ zz2gik^>hq%40Vg$xc*QW>gpQma9?_dJ#?wlgm%pQ{PdDi|FA-Hb{O+(mg*es%{BSV z0v8t6Os69BDov{w7Z>|Z>geceZ!6qns4^g>oHD#Fx^3B*m@codJ;e7|)?Gesh?BS` zuf|3QgGU{0es8w6xenx8@Cm@C2iUz}D7x|ib|wIc1rR5&l{arEM~`|O-*$yRf#y;0 z5=%upC>0#Rjt|1Y2p-hwKqFWrknbGd-&yQ|I5Ct%aPI3wZNZqhlHRUB(dYh3!pthE zZO0vOn9#3ZM8Ye5_f;bQ8Gp_I&^=&@6oft=12bs%3z~_}P=SFW6D}s%*Iz2Buny@$ zkA=NnnBvi?MJD=|fn{4Op52iUXw>X&?JCK<{MHJ)cJ*7W>~qW!Buw)PEu_)LqQT6w zmH%}t!y51VXRVN5R%d-)c7AzwO2X_bU@>X#`uu#|qF?^vab(W)5AHoLwjZsAD2hnM_UxOr$$R*O^eS|_^`5%vKVrj>o;)NYNM z&ihT~qgX4qjrwfu_>8Omy)9blAKv-pC>}lU(?!u3P_h0ov%Vpb0j+E>P6zb_9T%PK zc$We)OJ=stg|a?zix(kT;`-E-83oY==vD?VIZW1RDIzw%o)5;i{j08g@A!b`u6&@&PNJvEVxD}y4TaOLhm7T zDZ0yY>Q= z!F7pBNqz0fgBIo&5QJ7$F0!m?v0BU>r$my)0hGNJtGMwL`;1uJGs)Ran*??F{1+{9 z)N*4}zC+ArOTR^~{1q1q*=bE_Y?V=MZ9MJV1W>_f>S|B_xIOqQ zq4w)Lmu||YdnElJiNHb_P{&(7<0lVlPc_3=e!qX&+4%_)=8`KRtC|1o%km!g$yd!B0;8SjbSg zx!2ckH@}@JepQ6s{0J-{yfx`RL&3;1lC4bhHx&pX%AJ3eV5J8hnMr6*yni?;NQeeO zhaUU@i2uv}4iyn01^F6Ulv>^cuvqJw-^nJGet@8>z6Cc)+ zxi4%%5sV^c^=C9(>|mn+Lh$$B-f*Qs@nfE(m!qW7V=8FON}wmGK1Tq$1@{<0F2Q%! z9<-q;ubFW^oAt^(Q~fR&nD|9J-fP_tAc+szPM`KWr|=>|sj=&%02cU;e1f#}!4 z)%}&g-!Teyk9D(~F3%nY(nRqzUO@q;7`B9j%9!cJS6SAu9d}@x zra>_q)_zOiyhFwS2F}bY>BEl{*?jS{dC;UQ{M2#ulAStNwU7kRO0zaJf+Yc5Cua3xjd8YxQ$4BVWL6%|IK3j1q-uVdRQrk%O zBv>flw0sgDAAkH)JgfRvsZSDoSp(wF_sKKJ{+IWDS5tvS=J%_N^B(T6-cw{e~2kKf+Oa85%h+b+FQ(n&j&qgx+19h-ks!OS_fr*qM5z8}edhSV4D zTF0TB6+WF)f_%jgK%_+$s+Qe4)EGW;O|N8H6*ez4=6wiOIjg$}CD*`F-G{uuXk<3S zHM;e%hK~XYy4ww?^}E;xI+e~}AKkq7?{+!XS?1-WLhU=s5P3d0jy#F;%6GDpeS^ww zAU(b}Qkj9OV~c;C%%X8fC>vs0dm!?P5I&9EkAxyNu(|{ct@^BAd@nKY@<|wkpL$V; zIN#T1X_Wt3sqNkFTR0e=`lIFdd7FT`g+@{E6@m^K%LR!e0I6)idurEqZd3JYvADQD zMiK}3`Ow0Fdbq)@e{Lb9I_e$M*_Y|7-hTy34alTonNZEV{bBMO+;`{dVm6OJTJ*#% zNR)NGbt_cajHjr^jIjM^U!%%Zfcu z;lCE?zh1O8WrKb3+ZC^7FnMp&f(nwY;L(DVi#z@ZG~4+}>?9B|ZS=J83( zS`*93M#jo-N)o^q%r|k3J1;M?M~`8@gS`!M#vd%cNznrT8oH2YcHdgk_Rt1F!OU5f z+!F8WFTMa0=ibr1!vVL-4!$3^b=Hcyx-NW$e&^Ab($;mBUR<3sk*)jGcxQLHQO3i?^1fwtFi5QuWO%FRcNC== zO>4$pH^;Mt_IL~q4S<{;SgZLT-|fp&f`@$_TJ%C z|8M-bN;w(FjyTyXijb9&O_H6Jk&x^Y8OaF8$d;86A)AcsnWK!XWR-m)d+$}gw|AfK z@49~fe);EI&N(ly@f`PK-1kjN_r}lw3mfv~8xJ4iP3hOz3BeA`S=D(!m zzsC!mhW5eMrBH&iZ3BWe=)0l5+H`~Ip3jdeenOOaTUc@Fkk_AWXK*=!7gVb0gx78n z_6dlUprII#tMA261ZQ5#G2EoQ;PO9SLTAr(jXnG-!DL)aiFFO3SzhUlMW z|8SfZhXXR!%=PEsT@i>B!+G3(gwTb2;(yk@o-wv*_+Wh3$E{2c>J5QU_p}7~y|?5~ zp#}9J7>6Lb(j=D5iFg}_2Q~E$_jf}xvCo%AjG+qrat9Iq+V~qWbKzvy&g{NQCiIhv z5$7B}*wZ1~{*FVV6RsAxy0I7d6KN|dKw293QhUWjv2`?F1`k+!lw9Kq;g9s_)UCcu zDc)UfrnzI~L=jN8SZ2vMdJ}KCa}xD*hcNB?5^c?N(Mh#HovHNh%P=yNPeZMaX)EZC z4t>u|OzJ{N+oR4A$dDECO}8WyryIR7ENXQA(+ENE;fCJJJ)0+=Wd1ZYY!Nz)KA=4E z>azVgdzpgD`|Uro5pQ%w?nTMVy2E!dIQ5ZN3Wj)%Vu^ZTPvsVu$y8Ix`dKP zha_*Z-}|MKmmy78-@&HrPwKzS1E%b0z0`~EI1Q@PUj$k?22qdV;qahgwwCtyXDg4- zx((}z6x^p%!%c0SUmCKzv9nEAX9rgM?33o|AN#e79B183MPG=0^IB}f`1j5gcRX-h zEuFsb3$E^9)Gh6{bIottoYGOnsnt1klTHiTolwK@%HOs$Vi@_B6e*Y1^2C{EW)M5* z$5eS+uWmZ$@VZvg8q(M1)~qQiioVxc7*8f$ne{zPnl%>Ry=G9q{p~O7+v^v`q)+=! zC_FSt+4wRsPGHyCxT-r14WWmM$K7`a0(LpxcK@Ks!pgWIKM?yz?L_tdDOX?eS%~)k z#&B>OGrctPQTB>OW@3;jCB7Dkl%u}6kBsQcU}|KZ{NcO_vu|A_!z~$mi;F>uMR{CD z%jLDJW1j7Xm*knqmVYEU4vM>6iC5?fun4+}nrRaSd$oF9qM_mLLH}@0L>fEVZLp1x ze?)&I{J!kp)tyce10QWJDkvDT|0g-pbqlZNbHVu7$?pB15+ehDSy@pM4Ceb#+42^078IA?BU%o{FX+6;2cI7Sp1w9MuSwN%W5`&MJMNKyDw}Nk zLw{9{trLZOCC(fk4pWKGBEP-aRT?R>PM&7T);y6}UA%AG-_HTX!6`y+5XY!kZWqX1 zyEIwr9r-f&@d}&?)>kXt(_laQ(0m-EDglmrf#=TRMRTCWNDr2418zvI`=ei?@uayvTx(?d zuflqq6ej^5UNk3)93Me|fR}i9*fXcU@Zu$W7CwFYbNb%@!@K{!&4fDr{r?|E{sVe_ zp)+q?(fneZGFe3Q4=XYxeBz-IVbG+Xeb;ZZ1J(~$Sg)bRY=;6If8P4{X39l^6Y-&J zMwt~_ejM${-yn}(xH)j58>}cJwEKmf~1+=?=>~1igfLu zV30^j)^FI461JrJqw&bq!h~HHV;8oC*{y6mM(|(BV?BO<{r&ttW1~?GT5?lWIsR>2 z%Lq}vrPXiz1LJVTqrCFjpVJ8g@!RDW?_T2Dn)JfM!_lg^`)AR~`bM2g^F;5~YjUB^ z*mdR@>QLg3Y?-x*NsGQjSe>NG={ERJT=NJruyS<#{#Me(*ZbT^rDaZw!2Y7ao%btP z$O9jtd!heArlPWSm8prIh9;8!Rp5xO&0S*`K?k;>nIeDZb9lJ@=!y6bbPS_pPld8w z!-AbL>Y{HFsgmr`2$~>!Uo_sdU&~P>dG&)~v*#zX<{brPuk|b)O%r^$ix%woMT`7l zDsXaUVdOxavmXo^0h~;HqTZb-q(1DhDzu{)I~Y|b?btktH5G+e@b8XuC(OsZ>v5K8 zcTM7CN6sU};ALp&M9}mAodNFQV+vYdl4uPsis;clFX4IP-I15kc`8)vTJmC|gk2ZQ zhVtaaJqmDpB90QCgMA`HR@9`)ohN}OH=MBM(FT^?^mf%q_c=X2>UUgpPPpL6yCum4 zjXFYsD$r=VyZIxh92GK4OUU}sg+D#Eg1asibXu>qadu~9L%V+r_Z1SgS zj1HDpe)Q{iEO078@#kgXIyw>}PzepCUheRw*YWpdNk4 zcy@I?;s)BC(=dRQoqcC^r|wdN|EF=?hL5==?#=Z9Xg&I6U;DfBdnNp>ad@-=0fygF$>3H(sUEvvZqNT6_s|i))zmKI;bCtud5?t|9V! z)AlWZRZJ{vYVk_w#41Erm-sr3%>;M*0;UJIs@`4?47(FkG4dvGq_XFdfB&MB{)HDK zUDr+PAdN-7QI(5IE%{dFyme__PQs^gWam^uek;@f01mmf)aB;VDVYj_ws{qa2pQn~ zKyBo^G(*=;yrqE7R3W`PAcB^33q-J`Wbk zYZvqB9F1yRroXP#E@rO^XDX~c$+r#aWPn=*7lyyOYO^6R7K82UcW|(u=jQfwKEUoI z^iE7&;B-Jk&7b63=9)U5kZ+P4y>Hm>wDYJLQbi{ldEN9c*z(XrF$H&tiEV4aV&lex zsUFH8ON~jhtJNMyT^(E8aY@AIP*Uiw4CiN6iK`Qy?u$Qug1-o2s6%9D{Jl|(EDnuf zRixK8-0ZM+@nYr+DyVAG5!oqEM8(V0qIKejDXPWAd6ak)OmDeWOfA|6S$@lRlc?2m zhqG8tbZ$TD^m`sULRV|w+NjriS1nD{ZF+Gf{!lHsbnR<^tyUgqtTF??anP3^mIXz2 z?ptNgewRsz{>D4Zv+Vo1kfW z0;hHD)Fi{UXUZMd;Jp#?X`Bi5NhDwzx`W}bez;c5J~zQsr(Q5o<9y^mrEvZ%vmcWl z?*!V=m@h3(Lnb0KNbOe9hp(g+cV2bOXcL8Ga7L!N7#ja}B z>6UQKB->VmzRn(6j!<1x@RTxTqbM@1f*VsY;Ksqhah@FMl_TW%JE<$|n#bL{_i}Fj z9{HWDRkJOwKg$d8dthsix|qpF_FL`B#^q@AbX?P0^YqjY1vzMx7ys z1I6{R?-y#KN5n9||27-$-Q{?`cA5K;f!Pkvr~>4QhEBuZFfZs`lH;g;N3G)W5sSR2 zJPWy^97mi?#d0n}>0mSjcv`ijH~iL*6k9)c{4~(sU6FdYjD=^%N)SneFPndKyx*AQ zt(OEXz>HONxOWor700BP$0|d?UKdw8t1anUm)FPmR|v%t9jr5>v`1*bxH?sKp| zm8cCv>&0WC3dG8*_YnvPqdL7Y_-(xTXD z6pk$7q1>~^>nK?yZb~T~J!7H1V#hx(ehvHy*^ZH+;Z=)oAtD5&#ohDd^56&4#ym~i zDdC%&r}uc2uI>SSEyUU|XkUzUBRk)v_j~LPD1zR=1qO!45e=!jGNZOD2VG=&~BP$Pswm4 zi&xwnq(omVo^4p^nGEW#i_WfE~j(!F9aF;yz1(hhde+Hs{l_*BSQhAqcR%)4{yBsTA*);wP>MEc3%|yi1l? zen<*74$AtdkQN(7Rf;Y3>Qp=2dh)_t-APMeEKt!zw02b0(WKF5r+#K|>vaZJ1Wa8c z4bH{7^m6KF&_r!Bb{BX=vCSx! zoGFn^7KbQxmd3DpV)-MfB0eK7AA%xht6P#Vje(AhbmOIH1&4{J2^fX}qn@6))i$7(vF zt^8_#ogqoB>lQS@4B|rpy~l>$YaAyqSbNQHE#O<%G=%OoI*VtnCfb-8*wXZb>N34T z<_(pAITDT0F#Li6-m6!|oI(_R;RG!51RT%~qxJqzg}Lv;lz@MSJO1K}kz=DUZu0E6 zb^-Vsyff6BR?mXon=mHu);|q;83-HBr3^4LP?awju;QT4oWlvycTEAQA3`(!D5 zj^|ZV8}5VwWrZ^_{foDrO>v3&Bm9`QX1g367fa_+^uvxwr_V3R<+#WmKep&jk-B^B zlF}^aO;=o?TFQTmqUW3h%J;=YZkn}@^gU}SlgD&}Hsx!Rp3h)clp36@cbyyBsY~N& zq^m^-S(0JSA!5)E1(u-<4+Iq>Uju<=G?sAt-QD@!MBB&9#aV5aYLRB}za=lovLv@; z|9ee=VR(Gobb9VSl$D1sMLhlkN@LI4#{K=jf^swtis6{+kv$Qtz2drJa0K6GMZ^Jg;1 zFyr;!RU3Dc$0g7^zeu{o*)Jm6<}-9{7YmY~o-2h`@a@N#zd1wtWXLm1KN&8H_H$L# zA~Ihyhrm{VsnEfgyI+q3Vgh#doutE#p9#0?3%(kccy?dHaW6qU&`u>g|5%6-MZ#qL2XKN zU0+p2jtthGAb-1oa}Gv!$C)nz27YVoRz7O3S6I0x*&M)X{%ZzUk(@zG!QGYdl{-sO z+Q|t`1?9;E?U5sWg`<_vgXFJW^gex_c{=ywheyJ^3QNC5%fT*0Qc+Z>&2xzHZ*#9F zEsrOx3%Fi-gATi~GWbYLFPA2)WAG7Jo*^m!ZAvV5ZcC8ko~!~QVLPJ z=+xf1w$|3}6#f@ZiX1iBykwfnSpqdi3_sH}zCO26h(zN*xUNf;>macI)&7|4L24@b z%)6q?JliOuGY^EYrNV!5iGuX6{j4x2wbec6)RS>qyRaJp5K~ov8!NMB6CgvQYB_YH z#GX|Z7hXb0FsHfRkBqk|aeeWl;qN?Q+v?jR^tp|{-9galEm%GSEbvf@{+D7#&Ugy{ zRmu-{09}$rm=P+yj6K^Tc1+hVjFp%iRz?u;^e{iPC7?-vv&@sh0#-iBypjm)) z?UKhsRvoeTn#DM2`Suh8=e?P=I#1l;7iT>;yYAkORPHIFDL;HT77h`OUOyYlkHD9z zdMFeTdp3<`A~E}f>@REYp4_J!q_+nVI0q%=KCZN0&N)NhB{KL9h7}T`cic}_V$XI8 zXPAh(cMo|Tv& zI;QiPu{W0wXfeMsgPY=a9jvQLpEUait;Y~bWGl3a87kd8y`%@0oI+kqk@PP+qN zNNh!}QV|aEsdXpDL+Qqe{0b*khMDQC?Cjq~Ms-dHHa_Ghvk&n40+iX3#I3yHeZzai z|8Xx$?g5#{##!A1Rc?D{s(0{Mr6C_Wyr9Zn5o>m({PNNA?3tXw`+rIuhQh=Ow+`0- zn&Yo}|M^v9)H6R26Qjlb)dqGC8g)}1Y85AQJJsbC`aQINzr$+P{IYICzuD!R&kWt> z*5ow#cj`zTZZo4rfNQ)Wb$OmrCF?sZTIALA0In)$wMT>YFG)X3*WiK$40crP`A`{A z#RsAip`X8B$`1Oy0FQSn2+H&EKEFR(LhSuv-{bIe&GAYd$U-{Xo(V7M@%A2N zqq$~6fED=BeU9;N0jJs0@n`u86!&}E?cp3L>C?vG za~f=D6%3>>3P{?^swclBqTuJ#6`a*JsmGhi{!7Otkg}! ziaxk~VT2yJ_-D`5T!}G*h_3YV5fC9|0w4Vm1ZllKhf_7<66-t81-eT_FM%!&qEETf zU3-U8FgH~86o3jCPg)D@{fLQqy@17)5F0+*g}VA^?;hA1#EW=?ETee;JC&~(xexB9 z$I+k0oga6f!_nTsA?z-lbtHPkz=YD|MLE@Y%7RShOw*MrBqAoJa4nFFpG@VkTH4_F zV*ytjSnr$Qz0{v!_`mz#qw9J8P5~)QB_XXDyTkK_xW6LVWo0(L_-!oObNF;z8GUfyt4;Yd zE@;&ip~|SDo_xb`^%$ZBPAdzW3Vvo(il`yB*{U;8`V$Slf9Gv1%?d0m#pvy%LkHug zJ;1JBIdT7y1VyED-+VJEO7T~fq;r2X3QamN?Ca>V&gQ#|dcM5U`;Lgfj|n=ml+B|c z1}kId$(=_;wo$I1C)mB>3eawio1Nm~(pT`n_w?A;JyuOqpou6-c6;-}BYE)_1to<6 zBP%@aoWY&rj)KKV7b)C+Y876Fs_2d99i3Wd-PDtBv3{2t#cbb+T%}&Tbxo}xv}+@- zp-4ZeP9iCQwb}+zWB70j5$XIAjnNZL(WP-E?*C)e=DzfZcWD>BYZTP@Z)^_Dt9=npQj#8W&b}qPZ^Q`V)Qb zDd3TKvJ$2MbFeg25iy8f^M4?+_Arp=J@xOjr~b}IL&v0R1@l+q(wokcxnMPowgD7t zm$5Fn2AOR_ln*3E+ur@>Jj2&aYd4{EgzMJJbfVs#udmc_5A!c{3u4Zi-O!(H4s*pw z4DfGan{yI6H?c;%^cS(3JL&PYeOvAl-^C&r#m=8zfHM1c0D2e48u+9aWeWNzs_Po^ zg17^j0;an=_a2DYuLOQs++}>{n2gsU|vaO=YO#|ACGrU4w1YR#x3SnLu)YeB{IP&zKf*CMydf zOQqXck5+Fx&EtDbXOld*IOerB#9GaGhFOLqM$+dP2&z%*bN3dMKLdVntD?)x<5R{x zaa`Ya@?DeoUl*{}E|=@<*FtYEPdeWaV(&H;t+X2pG}|2R zorEX}Rt7d7Hi}np%T`K=O`1F*D)j!4Yef=z<<|o|O%9YmVQ$HrPvexF7V-lGchyuD zgm$WgpA`(!*-XEGb$PUEc8=HNk}+0h>ArP7Ziko-@so_)4|dKYW=jU0a#o2RegSOr z2~sxy3c09?<>2NZ%+Jj!v9ZXP-w;7MyW2RTvu*@*GTd!5KqlD@0XO%(3~%|o&)V>Xy_sDbt6F5V7C%(%i!=$#u1;JLPFb&j_)!4 z_Vg3EfxUuo`b-GFcNTIDC(>lG$7f_af<#7Sh+H&!$gf~=jDzn2e{0<5HY5cqy84_pm*)Xb~w`~1cn zQx7O!SwIm*p|r&-@y*$_t~Ew#G!cJZAUECXf$;;N535t2cJ_vQJ$p?jYDh+_jGwrm zz~L8FgkvMjo6;()NK=aHWP$N^W@o3NWW6k)EKRhV`WJ2X$2`y{efUi(a|oJOtzD?4xPN&z zfBju>aqQ2ASA}9`77;;(0<)e({n05BXed%vRn9P#D&;S|xN$LsVymXim(W@R`xL0r zO;%_ymoYrxv;FO&uk`xgZY7|$9!|&#jLFhOta%VI)kdjUsxwFcn2TLdq=I_@?Ca4k zs@`qM%}pK94Ra zvuP@}$~9&e+uRz?lNqlcc*bc#4g9IwhgUPCHE;3?{{=A}KVJeBYYyOFC6!Sf$4c+XOLPtpbr`t*1)G zhP0<7?0Fm13srCeGr? zVk_>7>|7b@rmyM~`2b>@2-%KMcONsVd_J&ESe|&4EHlyLXZaj$1_{m4q^ zC}Zbb3LY~GWY4EoH)6!&({sj~qAz^#u{qxj_8Tw~eeFrg82rq}nNopOrDR838#OrWkAknKGjD9aM%KUt$zDMgrwoqLs6>@^rXk?pO+3g^rm? zR58yhSfiW~l07n{PVy;GNpKe+&?o z`0aj(WkK%b4h=F~@xgTD`4RV(A2$iWm_zUMfX&0(HV#5=IKkKC1gR%(Q+dZ71P158e!(N zIcc)BZcUKje1npwrBe)JBD(KOu;{MiPdP%&hU(eK6c?+-KCPSbRxs#36rx|CheRZe zKc%Z+&&+($aWCmjG!R2p$)aYUxiqf`&;iZp?Y?L2bk{k0+pU1z4A+L!|*fNk)$o~M2O(vuHs5Vm@_ z?=3u=^&A8#zTmHZ)zd$ZZ9K` z^6O&`?~rGH~>W2xxS#bhx7r zbWw{(WA;ZhDIvF-z$)5f|8;|z+O`Cg$HXhJ!%+Tf#Mj24islr9eT~>*6%@8_&+U_pTT35;e9N>Bxi#LI1pvN9P0qs75WgD6Fps92r18-15|As|?I15qIA z`eUb*3FZ5v^10RD-SHHANCbX$@fErlMc>YUus}Hnncyts$R085O> z=SQ#fWkc=Tf4>=m26^Hc!dH*GlkIL!Zv*Yub@K+fNs69#wZxb(FNs+=C5DmD zAnbM7w@;tRHx3ul8^z*Z`7_0xW3T;pj2k@x{%f45u>&fBdKpVCu2Bu!n-kf(wgcSZ zDp|T$@2do;q{B&BgyFc;JM%GjMStK((rmsxcH0wHO!2=w^MB#Ad*Nl#H|J4>o*{mq ztEyye{|Hnp>dUPtpLId9FQ7m^?aY@CM}HeGq!b)}ZFVatC-vM#(c=GmA^i9_4er>9 z^$V9rzm?I6w=?T`lyRqi*NjI8v#5xkEoN`Ij+!{X^g{;8hM}zaM@5*+iXLYl|GI>% zL2bo`Iw68uM?Gbb>g)stw?fRe1(1PgL{I`6k%cbF79?duq3-?$Ld(43R`a@U`}zM^ zfYutc`{q?BH<&qih>=^OM6&0gm8&t+Z8;}|acKNRUw>^;HqeQ8?NFZoxD6CxkZIpM z>3f~C3ZjjAqWhVgDDR~lgd97H?0>w1yNptvr%&ILmvj+NW3+tf{_z*A`s$rRq-`QW zU$o30`G;vShbnd)C}xox-~4*AnxWaG$;}m}b;^iHiw3fxWFyf`MwC8RB`AIR{7`4+ zaEP1NE`_g}m7-$M`*Yf7FA{XMoPIdW88_80{u9p|S4v{8DhCO`L-(y}4< zq<%d~mae9Zm~QA!fCzpI?GDjDdglrbQ6ekJ+AgDB=>7{8>&kVfcm0B}XC2Z%IIvd5>gSHQ`!& zWlM^tb;aDxtIU^>3=c$U<4_E9WCtnd($5Q5+nHA%Q2l#ab{7fUqFO|x;xElHIrH3H ziR$DJsOs>_Z!RM#eN#B`4olyXw#kFSl5@4=oRMj+!DK2zFfa8QHdOU}N;|5z*k z13UHeV)d`6@tNEFUiUCZf3Ik}AeqUGA z$N0N4iN2NNVk1bukrdS_oNL$ztLKugBUiNtCpdpHJ`m>V2sjI zSgV~H{V|xA%IQme4bcaa`iD? zUdE20wj~)0?*k+^7 zaFed)Z%F2G!S>e5a9n^0%xb#Ea==1D&zD%{UMmNydwQN26z5I;usk}f$*SxAVY}#a zRO<;u@EC7q07w_{aXP?BT)*|gR?f{Tv~hUAu}{olvN}h%plM0{4%=%NTj6UR#;qfb z?q;jtweIidRNOxxmPaPWe3Ys$04fC{8*O7au+?JaTM1WPE-F7XMom=z6}6)nfso3% zi?tz%!-Ai;6C26pKbMf`3b3;T_%EOuMZx8>ofxDpkjwFqI%G4b;RU#`YC_{vC0sd# zIe2A15JV%yo^O|rkC~c|OT3s(`HcAtNCzwmizUQx((M)k)z*qql;1hM^K5{8Prdy- zE=H1F>?%7uy9+1|5SoIHL9gfFHEbFh8ZP3Bqqa;l7@ef{`R1nYYBx&VF(*hS*8Uzi zpESVq3IShY1OZyq|)&AV@7>>u~LeD^Dzx#*5*%x5} zE@wEY?Al#gdt$E_5DC19=`p+9m6G!1xh6Vw0*Dg$CJ50(yXsj&!se5!Z(lSm)lwqx zo7Y~S^+j{}SRG4HMqcJndt)&up1dTkfuAJ|kvN3X!rs<;+_B{Qi5(2$bOHVafxh|1 z50OYqb!D8$IbE_*gl5ow(7JbM;TWNu_>=WS>sYe{2l;pCLc>xH;D;&(Ph%HGmADNtHHd3oua;SELq7h+Qk^x7?P0R(lh1vjP|qm4p7K<7au4?>@q+u<+hb|m~^5-Y&W5E;}_64$u}RSdmw%W=?{3i6%= zh1l&!4uQje4*3t-NLKvRP?(FhvCET0VGE3%iyPH9vH(^};{$uTwV|JxvZNuZ8*( zJ#$1;Lzg?&4~_w50b>lFL&5;R9oBHg|5gUT}B3ZYOxl(_8Pj`G@@rh=ddJIg(4k zx2aapnc)nWJJuxd8u?w`)H<8_&mFxFMfQMwY4G?v1fM=wCfO;2IX`r2pTO){o&&ib zN^E>eV4xnWeG11YJYR@Bcm8uUK~-srw^;Ia zG0#4vO>kiF(2r?hu0gUJ9y1y)ZJ@Ulo@>4lS(2~#{-ToQ^XtBKA3r*=%sd)xwB+=y zD>mVNXn)(~80A~%NHeBH=Ke11+2h`n{=r9JB4e1~QN5!Ur~KZxXY{I=_Rd>fIZp5G zZ?9faazLWh+|E`NvhyJ>lSL}6c|3_ zKwv@hkuLVo1nMStB|?>_eJ?hJR01~5tt-IwH*bOi=Mm7{y(#s8s$kL3@jM@F0nb`( zY84FsC6%{*Hb($7JFUB8JbO0X;((wM+VRP=6ZM(>4sv#eFcx>>zLs-k**8OWc1nX; z5=Sd(iEws~vv_0)I> zzZ9vbYLnL2t6d2ix7)4$B$1r*7F!gDiUCF&8(wjs;zDLiJ2?^y{?&!q0~7vt7Imm1O@20leo#@3qvax1aDDl>lAi zm1h?gYS}eWYTu~_0s;k;*}@;20wqTKwbzDyjZtcRQqQ3RlfbLcaL#V0@g$O&OH?xI z4B|ksnmC`N2j`Kps*hZGu+_5BrlfxAw%$ItT5Zd9aBXlZsF5#16^HnPsLHrzf^-+gE&9gSIgXM5kOuuQR%N8KwmlViE;unYO0snz^z@v_T>jMn! z!{k|fi$!hDI?DDz#;JX)6xhuUVupc!ElRUfHWA=2hW?xiY-COGqcxZn)E59)Z^fTny0c$x1D?7zWtt0yxXA+^ekYnlSG2X@!Q1>qttLnY6V_+n%H)m_tX_zHam34~ywSvr(th^zvI#_v*#j*W)&$T{8TJL22 zQ+fv`Fx%3Lr4eFS$EfL9ucQ9Ppl>|JBRXl#dZ^Z%EjOjX>t{ zp9LtMZl{=0S$3vzkE@)d`Io|7AkG)X3k9=#&w|p6h#5G%CwLgnZ6MPwcn5d}aR0&n z3M)LF%>x=fBNi&cey#qr+s`dUNMqwYUk9fv@)4%eIn(fh9#QBqx0O@uOmn@@rkpnL zx?$9V&9cJbfyt3?MLPNIG>(%=jv}PbDrg}}h&OlgmA>IKf!+JU7-n1v(p$&y=hn|) zfhm{}bL{af;s~tWYw+A{HM?>e0~^^%P~ST^b2^6Ww)P-Go;~aVp(c*d(qj>0n?Trg zOWcbgBBk(Zt3&dKmNLgZnId6DE-L6RH`h|f4I}gSFPHs^%m57LJxJT2@Oo+L7cQ0P z??iyQsx-if+QRaOP-=zc0>JggGvgz*CCB`DQ~g>mtJ;?-$Bu>IK9Eg7 z>Hslj*#4j<`?oFU0Xs1Bb`b6j_g;r$_&Jk*A-U9Uu`=2@5ST;Q*MHcHyB)IZ&=JQp zJvV^x7j&td?%1SXVkDLJKdlGFJDN_)*1ORdpwA>B07zK~O$i_P79iqnotdK}&(i1X z71Z%l`AWPDI9jb;a2GPlXJT{+Z3z`gg7z3$)rEmkHJXIYBl{b#?pZ8<*r&jU<-btr zG{{*8eydyN-EOUx49EPnhRYD@@q!(YhQ@&MB8)}|kztu?0s~QB16J-Rl8u86+aORI z92ySsT+`IzTM!)@-473kc3yy2Q(gV8Rf8%^^lXul^Y33f@ZKen=FSU`k+V#QoTar6mR1V|if12NN!r=b8*K@b~RvI*{_kvzBkly_LWMn3+ z3tAmIzUvllo!%%Af3{0_kYyKTNDuo0-V_04Wu}XZQ zgrRE_o>5I+RbT0g&Sdz(o|7u>wE)&9TRlhR;Kmn+h zI)dqL`+l}F>CNaDqPn?3gO7sF`Z3W4%FwarlfRM|NFq^qLD~UG$@xZe=WM>h7`y|NFgE{}&VQ(6sJd@1GX7jw5X!y(l)OxH|N85tKBUjwe&1UH9Nx=zv%Ma# z?9_?c{8s3L0M<>nh2x6KK!-7DqZ+)ycX$Y;CkZ)wrXRy?H-xjFW2~cpkP#8^RN{#2 zg5_BPE#4vgGRgzp=`0y6%Ka}b(x!qy45#>#X?`<{M=EYGD(fBos)OV5PjFxo=gXWS zi(sTcO7Wrl-utkhlPs3zvnIo2y=T6Lm07t_WzQ6>B%nd1@P&)}Qa@eI`JH~`CRa(y zGy#SP3??jOaVkRgi(%WriO(qTGBkmWb|$*n@Ggr+eyrxaX4LDzs9SC80sa+D+r~R1 z7eYKF1Vt%g4KoC9=$px``>$q$C5gJ@^2Aqe|r*rR_h=4v3!vr$3B=gj(GCx^>-#) z594m4MU~_cK|TTjWh9OdKheWI!bV<%$mJiV0Op^3q0;$)k%!lt9 zLB^r$Z6sR%T7k&%+v}^3V#`P(Z5|2`x6IITB%D5@OlyL1v3i+Q#>xMs{t#bOdRcpC zH?vV*Wv59iY^R(r#!TRvjABG);7WVs#GcqSX>{>yXv^oAVS^qs_GoUI_tcek8xOLE2h4Jw8|bt{pb zglk39l+8k2jUSvAWA=_afsSdC;@4Vk5VP9LG3#;7s08@^Jbo+35~nQjirpj1-=yPT zHdYu9Zi@C2cZSEr%U9RN0O(?5oac#8qp!? zOA?@!uEA{`-Y@3)irO&BKg;mn>FrY>BWmw7efHB)*{x?7jB=J->^vvAcvn*B{WhJ7 zN0fOi#{Yi#uL6B$_RvccQJue?z6-~mlIL37_qiRlxq%1{aY9C-`S()t47dMd$no%Q z^kDp1>t#j)KkKzhTT(xfEdD+^$4$-6zEd7~HCM^&Dr>3VF}hbAbn*#%7`S6rkyg3Z z;VojhOhJ4FekEnx|4y!&0{Ow0&Np?-t1_K%Y>S(kFpIN?*?g~letq#WmJ7vFiFS8; z5ZJ-bU5^{LiZfiX=Z-VX(&^umD6x5kktP4fWFrGw1U3BY9A5uPDSjw1SFj+-_j9Ez z#Xnk~dFk?T8FwZJs_^NjZOH_X;bWvT0z`CB*z^nnvE0ItSnezTV}z^F`@glH_-pH1 z5?fR)EjSNyR~Tk#7FgfQ((F&$O?*ZD>a&PZKqy+Y7ndrwxJkOjbX3@Z z95sPm|sIQXw&ZDN5uDAp^$ zyIv%CAzk8FCMaery{<8bqZMp1kZOhTuXBlO>5T_1rB{6VSRAUN}AuD3&cSuV)z z^(*z*tCykaSVvdez~pH0c?a+++4mCFZfA8)-XA%|HjK1Iqy`2icc)gD3sL)xt=tBQ zKSAE*=Jhb$!QD0J$hkXL+?~WvaO#d{CgDa+hM?tLNeCQ+wUayNwUY&B#WQcsvhDr@ z*;$R*2Y2shruRdL1bo;7Fd88UZakX9L52fBw8s9!yz<)Lwh1i)KZbsM>~KL@mJZt^)b9Kf-;HiY_diSprr=WA$;i z8aK7dxV2twgXtRVMnE0(i9rexS;P~9mJ+>Ql@wjQgVC>$5ayIAn_jOCK8MT4hc)c{ z%oo9#Ekf~X28`MGtABM2W8OryPj6`Gcpe-J0Vh^eYLzn6r`YsFN9Mk&QQ? z0@XpGpX;C1_Kd-TAt~?mLijV}`GD((@LH*ac`)JF4o4z%2BzEM-$)c0g<+@svG z-}P`Z@wOxGkGT4#+p^ikAbA!^kNp`S>*jhNDEoLhX?=y)(1iShuJu%MI4>Yb06)&^ zd|s>}89?RgHaPQaeWn%S`Tiu5QEcbKeoN5aeV7O%C9eI2i67UfB!19jluWkYI}Sjr z9A;$jfy3~N-#*G5%2Y}HElA>l)P2ecSd5j_y;4+QzVN}ov?dh9%4^FIfZyui` z2gtm+FQRRxOr=n4Tzh9~)mVJ540BE?3=O7(@MuU3fF1? zseL~je>Ea<&r%&+O38~O;p3G6gOvVIa#MfJz&^?u44}WLtzHbLwfGi120$rfV1Knk z0%l(Kxh_TWXVIYe2ahFV2jVwSn3KGheJ5EEm~=qD^d zcx`^;YuNMvuXf zp<-j811G);4RlsIOn{9Furkb5I9*E0*TRlJMl?ok1b2%bH28XU#}M=a8amw1R<{(w zUv{CpbJc^(Av!;l;G|v4y*E2g~YRtyjwc{*@1G16wpg{{k^~ zg&j*?= zmQrEYS`*bzveyvrx>=Y`+Ia?$Hm#{l#OE2X{*qOXK3=x{u;#9<OhX*(|q?_JVI(D~_^g!ZMkz(ic29*3zm|EqT zm{d_u1DR;eM#yld2iELpdP+))dy)-Vj#64aLAk^uDjexWGoeaR4}T#=sU z0pzJK<9V{45E}*W==x`8?`!p^dG`EL21#}G8Ot9P)_`jO>b$1S8w@0`@9A**uzV`zC^5k}qq@ zt2(Fnawi=lx88R;gIjr@=2_($Dw`P!no|cnbpl%S+GYBAlbqe1d317Hk}WobO7(<3 zKZ#j~BIq!U5^Iw6`_@B!k%y ztEABC@BngId@<%w+5^rUveb<1P<~7_y~aQYf>YUVjh~J@^ot&^5!hv6`F_?@SOdzI zn1MEk5|8@Czp8NOmj2BA(kIsjq7vj6dARebVEhxc$ON*--m7ojQ}g@s4XG+)+qHP7 z(%xOEC9vG+rVf_8ORU`kY3lKXa)m5ZG7z^x?8K=_r9htV&_X}@kX^g6|J-T%L93Wb zfPh<{mbP0lSo|%gE7OVE0#5VXjL|z0-}t)L^U7NvFOSAFMb>{tE=$go5JLfJE?qmvl0)+=4s4Hm-el?Ib9dTaza`F7 zc2=GU%E=43{sa!}JCQg4<=qd}V~-a{tB$7Tz3ah<3S2Lk{R#RAQt=B&7s~l9Ch<2}M%CpczF>oL zr9`A-1ZioJo_&q_+wb?id%u5fJq~>ynYd%!Ypv_N&am?#`h5LmE3)+GoQ zO(!jbhNKP|z6V>sxE`n9{}w!XR-nuvY~S@kxR<}O*;xo*u7(qtSl)!&1}^WgmBMu- zX9Yp4ccJ^4XO7eA%HHg&tgP9$H4!P!TQdi}e9x3&{CzlT9T<@+nvZYd~VbZvQdL{fP zwSxL`U|neEThM6HB3mo|@_VO!n;6tJ7Kn+3>Qz8yVJiU)@9m$QA@!bmz>5dq>Z~zR zi>9b(7uF5Csq)xoWWFpwX{$&gfW~?j8#A6y8bpqp(YKKG0MqYlC`fO=*(`}Uk3Ic4 z$0a`CO9ES&58el5152QHz|n`Ps4yhq+CrBfjf8pHg->kftH0F#RaS{>Nj=`)ULbcm z7uw24W(+{%{=1}w$F-8D&$4;N5f_v^&`@bY6ktf4b_X?Lc6I$M^m7GBt0)aH)6V2R zvI~Rc#L*ofpHIDCs_SP`z0rJ`^Upmy**wdiTE}|lvxMX3VH^~&cIvAcmtYZvyQW-m zMVilZ0XPgB54)2sR?DER&`zEj78)8E8QOrFD+j_r|42o}+dglX-#vA(2pbr06Dhr8 zu)Cpf-ltaPj#oCvWioc?usa-$hKpLH4lDufFV8=r{ba_HR7*(8Imx2pn*6t?x6XC` z2!S4dVt<`{&;tQ$f4{rUEcYeb zDV8{_vSaJ7hLqS_=x4`X&$|(DDGgi^{JqJBj;5 z;~IdLnj9BD0nk#nMCLk%BKSI}(12XgYDUlQ&|WupoOtus@m>UY$AMB3ByP~{B{5Ke zKA!yaDi9FMO?tTy^syY(Vms5gN!NH?Pe}xN9UomcNBaWcr2eq7%ONGjf#)2*0TmJR zO}1Cb(r$87W}qc4l_;YBv9F$ zWV<19#^V}KsbFEi`;0k2`VDsbP0}Q=W{l%qD z`UH4YMhKq@DB{7=^m5kC`<<57Y6h#{vk7*XASj{_gi5fX!uRmO9%!aYT)b>UT)-qC z$ZGX1Y{Y=<;A2;Evb0T`?d?Gmb9rqYW92&qf_zSR9+Caf9!ic8c7n(P+&9)at^xbA z(u=w;{H>!3JLvNvYSL+;u^(FfU$h5YevUI<5E3l<2p)XKcdIW|oq zKX^Ja3{{$Z@r7HT0t4PRep0N$^#~Mn1=J~d5hnzecn!y-HF)$#VN=t@TTWE4C-ngdgpEgohY72(XV_8~14B=06RhM^>4^fdNAF zT7D9#onZ3|96Jd_F;8Rj6ODHe^<|umX?W ztvp?n?DJb@TWxlMR}MFh9`%F1I+fw$Gda2}du;)>e8CX3;FGW#)C>O%m@Vc$Cl>e) zpE-f@G22WSc%;#pz;P}VV|gO;bVvqwwgJaW#Z1($cu5hq5QxD!eBCFt!3fl2mv}PZ;h!l{<1lqZx_EoX=o#Ev1#cDD z@o&z&pu6?J(2`N^KkCB>EeV3uC;z2Eya+_5M@mSghX%y|bcy%CMJTnGaZNEZEKd9V zDapTR7Lq!GHMdQl`P@M`QBQOFg}?vmN)_>Z3q?p*@t9D_L{iC;@8w!~5yh(T-|yG- zZ}zUgCCA<^CV>ar%r0U3K?aM0R@`Z^ATTuKxA_@8#AzE8_1ap#+Zk1fT<;}rCI3f* zG(-+VZ5@AO5IdY$)(^Bg6lTB5nbfrW50d;GC}dB^()RBr-hbgQAN|6bZK@$4MJa*c zQSL8Jt%c7XGJhbdGHJq)h3R< zgb2%QBwoWO{z>?L=hfMN&=I~{X^vAl>7Xn{IV(s^J_mx(L~BmYN*Vd)A}_khim{L| z($r!;R=&LY@8yVxb5dR=vDM1=ftP07SGYw(>z?!|vt8=rC}tkPs#%ER#BHf=%bwwj zW#9Y}>(L{p=p-MlPw#|bX}ELk?DlE8i@0}kA_z{<8Dr9zRuYa1hk)TBiv#C%G*%9( zm9No_$~m`t^-yM9;oU}KOl#y?Md?zS)Gn4ONT8$GZz~xiO{Bo-uqpKY@cS2a0-)h{ zzTNYgz5=SO@cuSg%SY;y2in@&4I^5!V+^dXdBCh?{p~`XEX(s#B&e9Uc$(R(H(uO? zz99>Om4ZCcF6s^MNOO!28Fv<|Qmc8{b>3Gh@fs^uS#DANu%TMtK~r8q6vo9w>DBr6 zC3^n~@iza_?u*F0f;fi*K2$YSLpyHBm%Go`msiumLOGiBEOA*vZOUV`UW7T>B1{mx zq<}f@P*vDDGIglK5MK4680>y9cOMYbk$mKO#yoo!*Ophxgn9HW%C(tsW%vx+=4nxt z!F9U8>s^B%=j6^h^*!MUyNuPs7ni?+@bYu?Hxl9HUFau|0KhS#?;=%51e27#*jfGU zh>-F`a5?tkE`WY3NCEZ+UN?%jQGtx`o0ER-!xi-3Hr?=pOovoaCwP(sJi64biF~cv zt6sgGIk3d-xpgaB+YjfMwd;i;yKM``ZSHmea;s%&=Y?eoR{A|5_g@6&YCGy6pp=L} znT+I$Alm;9c$>S5&D^_CQ@(@EB8G1bfNLA3sOc5Q3TggLBAu3Kr zuH=DY-!tgJ-1gn6gIXvoB3WsOp=V|(ymMjL-Bn7e7iQ1hFt1l?EPb}8XmxIpec^*< zg?dQm{Yj2i_^+_y3+m8vr=YypL7Au)5lunfFnp$Kkir>Hl@Lv-1bPjqH9ws%9uRA5 zYZ39Xs#to16LTBRx}GC1(??KKFPkD5z<|u7UOv4=U?qw9gknFC=6qS!jl-D1zoJUS z+2!goG?Fha`K1%)_ggBM+@>*ZEf|`x>FdzuE%l8;Su>KSs>O$ zue&YfCry3i)wq#_%9*ZLoM%B*E3P43_G4hDeFj5FGr9iC{>3G#GJiY9_~gto=x?06 zp;hDPFVR714$1{W%k}=o!ZPmuD_|99KUGdGhJ9c3D%(dg;=JncJ z(Qxzx?i9A|r6G(s4-F$DDSP(BWl8G-2FB%4(+1Z&w>LZctS+H`XFJ|8Yy1?iT=Y%X zyHNP)cZghq^Fy67TR=-D{?c%|(5kpLRd?m`@(p5U+Rpp>DwAv;FrQpeBXQV`;o=>O zvUno?HtJIynNG)1vfms1jqTRY8186x#EO*)@VPlJAuLgtT_59cu*o6B2UZZM%fpSU zpdn8bK=~SPe(N-hDHvI>C6#v?Jb8;90RU%q{Xo7;vC*rXLCb6^E43#}Z+r>Jm+#%e zB*~&5&&|5kerR~VFfkjZ9$*CGY|v8a0e=j((9ag|jX?lA1kM-0Y18F)GBP>@9Dq+k z***4(hzMDITv_+qUxq7l$2PAWlse{{$nbq?Ly4#EKX_Q6w?t?6Ipg$)aHpS8G3RF3 z1Fy#UTI(I2B_fAXyXFE0VsT^1c$|*Nm0SE!P5GiS67TbG5hKjK9+w?YcSdovpk3F~ z&1n0BR~Mq)bYAqgi4Hk|;9E;j;#z=0LHGx^qg9Mw`vN2MxUE*pszsiD$`bO%^jTho zopb#_A~0r-4S8PwxchXc=b@*$JliG2K6$})wse!&SBaDR?>-F&@SB{#R0?W-8oC0K zL!e>;rAy(mW(fyoYY)%_P*c@^t7OTb&^;esh(hT)bYuyYTl!U!1>|tmb=xq-IlB5G zw$;cD7A^6K3HYUeM6lSvCWqX<@Cs;E;62oK#SqwQ(Qe8rs+vc-22c>J^-K}`Zr|WS z)N2JPC5emMfTac4Sd3I3qg&3i>(#}|Q95r7 z(s2{dr*@5I{1KTrC9(e?bHlWf@70wPXv#7Dv4=~G#vi24!oUg9&dcX40Qd;3VZ)Pe zwsIkW*ZdBc!xBY~^PeN{!8mASr3vw`#Dig@7;&o#qeqtQTYRA&*YK0qIIYApLpW%Q zxCpj8i6&276*F&1ss->)481c1hle-8+{yQt9XVHQw0JDvMofy*{ zN{`~Xh_jI$FsOH?uUS96bzZR$wSJ0_z~v-?^hfBICWK!?&{c%_DInzqwI1A`$H>O_ z_z2kfSujPE3Gh~d?(=v%8@ybAOA8MckTQW~=5ORGlm|{aH{M6P0vM&1=X)^YdM*M8 zA5eZ3$athj`WXv&N2d=ks31Xxt}?v}M3SzLr?hkDM*+zU?I|;x;Gl?j916v;`xf+q zMybt$4Ky+FF~aXETGMRAZgwUBCr2H*8_kE%y{*_H*vMx2qT->kv@$ga3*2xtMfEYiHj%w-TwFrF6IJAh(ET578rrA1X^}HB4y2Q zG{84WuM%Os7LB19w6lB%IymCx)XTXpOD|8XQcLiBjXs{I03x&jmI0Hv)kA^)L^XA zC+mS>2la1LH>JOY%kecl7w>1L8g?LUj$D&*1cqLB&2YRv(@^Q~W(+Z&3$x^tFD?a& z(yBF3j?A8;h}h_a`44{;Dmzq`rvR)>g?^INduqFa>c{)7hIlShAHDe59Vl-pW)i=3 z>|0VgbuK*Q6m9tCMXT@pDO1*E@+XJB+iffA#gnu>xsoOH5Z6io@gztnFP}|~Ts1l` zKB7}&2+ad8oo!s|OCiL5a&?r3iD5vTV4J@T-gO`~2Xovda8EMLXW*5nosjCAc$j=u z5M)9i=iJpE#EBL>up{3z#;WZnO|~oF4}Hb86t%VCy1u_;q0M2B0t;kdA1RJLY9{js z%ym$bY22;cZRQ)yK2x->C3*c!^BHI4w>gnr&F0xB16#kCGx`L!K2y%Sepssi7FBwt z{mUB#_RWB+bT$J72HZPAwOGRBQ7JCLy_o~WYHb(QG;u4F@Y`}rqq}>}#b)aK9t1K{oFP^|yM5+qIJh_W`gKz?JPwqt?VfT?3+QJVX>x0#@ z4L+heVfA5E^*JT0AK+JrJ0{R?;BtRrK8Pu)BBgYaGBJsxMl@wQNfmyGdINHwz9d7+ zkcCm!`}m>@W#O35zfb?EN$}4{tk<=2@=tOQy?0HzoR4`&_Ss=W^f3+Jv5D zVw{I7mhaw}lBM(6zf>6ov|LiS--X#USQC>KxMQOO=<>0S|u;vwrs{Z2rCH^ z=tz2OVq!`8Jq&CucI&SF`BvGS1*;7J2hApsV& z=XUs|aJG#DWF6r0vV;Z}szH>ohj1K6CPa_=T>lyLJe^@%ynfG21=^T@kM$NW;$wPuWvBEzv3V(d443PFK!glKq{{O8%-EJ4 zFb8Gjj+5)@XvA?*0=TFk+=Tia0K?nf{Fk66d<8%Ab0CMs8Z|w)!qvMNfq}&gzZSm zh_$;ZDd)c%jC4>&%x2B1QUfh5;07ffy}5!EQfTpTjLei&p>vmCqu=P_)LVVy97Zg}=+?;^&EIidS zQWrBFnRknOYLk@JM#*I~YxQ`mCP-FN7U^qrcIXN%Y(q_L42q5G-9W67G_+bJ`V@8< zGeI|r@bTUoM@VhW^LgyApB~J=<^f(OHP85C#~&Ytb?4^fh2*F2*1Lez0?)J_}-__#ek>lT7#>>$3N?PG%b1Yq8QSePDxYl zn4-&b#_@{&yc3CNWx!)Ao*^RnnkN?sm08}-s*5=NhPC0oW)Fu8Xw&Q`O9#IWj7<*5 zrih+gjnC`>J5p#utvY>B%iH%cWo|~ZQV@byuI*~svSbm+(X_ND6hk|jN02R8)Bqzec%qaSWZL+KPk`6_e zRA99~?r=a81r7I#%lv&}Z`pIIzPcpVxWkT}NUYnEl3YEo)zadqcbEkYAP4xj%I)KX z5>ZjP2;T)2_AkS9ZM9IU&t}nNYwv|$Bci>0Ij3)iI_oMddwF_Gz#LU!=XSfRHoXe| z(P{xP?K2vwqM5aWuxt4_=1HNM(*FRwGxjwLz?Kuplq$!`9@k_cx*$-;tf!EfK{kV!NyXyFT24=Ndqb^ z*Y(Hd$MS#GbGP&kx?K_Q-vw_`QI4I@og{!fCVtUfI5>` zg21O1B=vG2x}5BlwN{`H8)1lcc*}ul%K%_URs?*VLNovr(vjad z$0za>13emO6@m2bK1P;e7WM|W>oS*`U&kuwNBWQCKNtbvfafy}oyxcN zhVB-H3{5<|>hv4z zH{d$Ve(IXi1IZ1zRerVO@iyF8FfjvLGmyvuAq6B@TcZ=85i|PW3Q$_v(uHjy=xg*^ zqZlMMs!O_h-_*GN)Rw#9nFGj_yWy?d+Wn(_dZ?d0BeCZvX}!UYVtKS19wVLZW)#qu&goc%gS*&{UV_B+Dv9qvrFf>@!EJkwM(azMYXJh4BtsG3JL{+N_V zz^j((V0g$*+rL6lys!OGd{LxT%;arBD=7E);;Ubb3PDanQr^ueGjPelnXX7G*!Aa% z04mwhATz<}b)Gl?YD}0wVe%y?F@1%zzo}>dOhjAqA#k)ky69ZH^HwUyM8?{ z@D6_qRhd3pdg68NXq7x{jLfgZAh9{huj0t&Yb=N<5>L*zd9}a$KmpnwhQff;1P~hx zenmjV(Fdu} zWe6eoobqCTn1SnB8*||K+yi4TpnCOFb6UT9TmLqpaYAsivmIoP`%{<=SE@4HxQC(v z^_%EOL??WLP!y9& zf#2|UoSoLUN18oM6Om$%(JkP8YN#M)V-f{DLwbp#3A?vp!LgYtNRYN$4#xT{aU`Ti zs8Esvr{uJ#Wj;ojG%u$!OWPo}qvL0m_ls64pMYXQCUv8E~4*+y#If)wY$ip+=61uh%dt8c%# zjpLFL7EG#&;9$~Xz$gez@MLz0eT>lAXqD?FNry^8X8r+wWwBW|ACCs=0wkXu_vk;Id3VM=Q+1AZsZF^+ zxVhwA;!!7hnk3G#Ae!a4qi??&`u>N3^WH(J5XEZ{WdkHXiFU9FDmMMlY7OK*u>Em+b zYoyC6P7*j(|M+GL;@lMqLZH3;MZs^eB0Nk^jHQJS$|i`!eTK%@_o5`4$1=lP%6iC; z2a98>&Kv>6wki*V@<0|7A9j@#3~Qo3(GnY6tad$A;K-?Lo)XVR5+qoES1*M8k7z{_ zM^K8ZYCbHnUthW#48sw~TYoOc=VU>UJAIvan3x<*KRdLD2Ha`#yf=*JsC;Slz-VE^ zLhNx|*Q{y+4C%n$qF9byCAQo+ZlU{B92lIo7c|rZ4-jg<@9(?NGT>RP8U{S=xOL(RXamoYZ%UY*IalU-Q=}$UMqoSsgpVT zjQ^K5Yn6_W)1&%iH(S}4<`H28?#G-&LHuFOns1}3SUH5bgd%a)LCJ3!xL?NDS{vx( z#WC$^b-cV^*?fL!9T`NY*!uN7ZCAq~4_uBw28@1`O}`}Iim-`26>A3Z1bJHa;Jn=z z>>|3HGpFu%@UR7#lI@btvsoa`&dz_ly5eSD7T-R@MbkCjdIP-7dE*;8OmTkSV88*< zBy%Z~7si~qW{H_1FQ2>dq&%md{}{D7Okdt>Qtp~i+-$yr9x9%E-YF2R6&D}%bZg%j zYgWdKiBA+R0{!8@LxZaOpaF^dL<=?%Yg1m=zoE3EZN?TRn)83S zy>GHwDd#gP#a&b1-g$@7QkbzszgG3ci|Vk`uo9Nvo6Laps=Qhks2?(qiAahkAM2k1 zen?DAvYOHv=xx=5THlPGbWr=mMJ_~2gg!EklCfSXoQhVMhokOIVF!PQ;4^d+sRIks zgly|%4Os%ndnOytXo!5ZrX9Ij`Sx~!)Lgo5E)B8JSJrlc59&&xjwtrqALYnl=2d2k zHmdcgfK%!(^giAl1ov9gYdniq!iK*hfC&tWHF)OAah9^6>jm{8->)}-Bl5g|Hva&V zl;Z5@XiOl|edY$T<)2fymuFCR?s|7PPc;P0e%pLEkm0y8<`{)bVtMxCI~nXd2hClN zX9xYpB4z4JR_%oW#r4B&8$ABV&6g~{)IBrN*3}<}M@$6i^z$4z+;ug{H{|Fj|q}lP>Uki?{cmB9eL~~1U9A}&zO^e}r@w=1x*T|U%blM3n<7Y&! z#fc-Yu5*$dSMQIYz>nzH8McheI=Sk^-J%}(>HWE#Z?i?h4SouqeW_if`z2X{Uu@mcSMj+0h<__m{MeksIy#5mchl%$D zIenaL=R)~S-`js1=@izOvXU<*0B^BE97}UrC@|5U_v#F@Q z0pga(kr9WwS#rp(v$t9Pn~-d1@6>-WvOhYq5*1eqnsGk$NF+rd;2Wk zfgFZf!Nwq5so<7P=X0=4QcHCNA=fpm`JFFH^{DH-K>CMWer29;Of1kMO(N+j@H^wL zieGjowz-?kLKuMlI$H^BYW7PUr(7n&nH&`l1<3aF| zo&7de=QZ98B0yeTbO&pP8oNHFVDtFTVypo!qQsS6l6b|jwStPs?$6akRSJG@}K$9 zPHJ)K@s2?^>6wALt-3nzFVh;wT&bQW%2_b@!k40$ouA)u1(-_U`nfCmxbD5J;H<+` zxEUz>eonb}^jQUnOr5-k@2|i@f!anlJSHX(?v*W=T-VdqE+ZQqzZ0ffy3m8sC`|MD zbm`Qu3Wa$?^oAh|Cap^sxy3~sF#cNIY(&Xc-PTqeQM4yckf47nm*z<}LI=MypAcUj zBvXX6Y|)nB-vFDZ+kW73&3-4u!EQmq^Dr6g31&{6pyWb)ULp&2Nz0A1XPo3Jk)k%` z;+((N>)9HuNAHH&rRIxi=0Y6r(PXRrAaRHir%AMKX=`oUuY^Dz#?0`3YxCR|;=9t^ zuLml)?>7eNAa|vhB7a|A^VuZ>FxV>!oM9j=$sN2V06wvuDt82yvz9XH2}*WE<;k*o z^qFVZ0$!89sIEYN1I;E{8uX56y5${>SzkuCBH zWx4PYN)nb&NKOm|Q60Jor;3e|H8}CfofE`^jyLq@&FN5cf%JUW|Kb(VD_5SQEG^M;FCPmmD~+HjRcimj zrwixE8+4ni1N=l@k*kUXxYNQ)=dtBGrZLE-xpy{{_AjD6BaieV5jE0nF}mkp<&_VYS$W;8jOr%2 zkK>4tSD%+?GP((K+vgF(gB}~r?yC$6Hj|x7Tw{G&Jo#FCG}=hyBZeRU_*Hk2UKSBy z4|;B5#0EIszw_U13~unCPIjEvxn3VI;&zc8Q7A-ytTlIxuJ`7nt+7J|iTP@xo9O2O z_=R6!vR`l9)};TTyH{KwEb(iydt$!>n0)M1d}Qv)A=N|bKWpvC@4IpT$PY1I&}yx^ zwf-znStNJRT)Ik*=lp|tokQvyCnNCwTo#I-XgP5Lo&q)m`U&^(a&@OAb=b3WVYD|6 zU)|3M5R13+pYn=hC24o?k|XzVxuaSwPtTL@n(W7`yHWUkZh%~98e{x&GLwNjJLCc5 z$`aX4*HasjTlmDA|4?fsr0;3*_vgZ1s(tK{Gfhva*W~rg)5lk&XmQ9JzGvmXMjc`5 zw>eg#K>Va{liU0Wn+sQvV^lhMq+4HNR}MppI&tPxzp@O{pR&7m91fMJ$v3zDUd4Vk z#MDB7_m=eT))BWjGTHBQk!$9KFr_o1$n$R>`HLM65UzMRFC1bF`KQ$iL3H!%62ZkX z`AN40F$^dHm+_(|K87 zihXlb`S?btLX~rHy-n2e4R4WJ%w+Fza6u|rI!eI#m5J1nn31AC3wV3QSNW6XU7)kO zPwp-&AaaW6rP2m7br=iCs%g|~k^i~sgXoRrlBO<3IPNgV-AV;sjtSrX7N)^_qi1*$ z&;~LOkX3@$G1Dk=re4#Mg&t4^`G0|HqJ?Ysw6T3C47uADf6vFe-?lXKZ}7qO4=8~e zv!10}-t+7J5)?F-4(>ZE)J+sr2mQK4(J>tOT!iKoljYv8pxx#u(>=ai!>n%ml=a_96zq|7lJXDNTsUmc_%UVKw%%5e$5YNHM< zczr%?kybv`SwL9zT3yN0+p1%rAD1|a4CZougQg3EFiqWca-jjT7%JE~UvFC4#FYFR# zy=0z{Vrktv=;k#`LjM$eV#ooZ8e1o9=T|WA2yFdL_L{cums$(yO5aAS^I@~(_DQaB zWgk1nhC?;%xcB}*Dh2*Y4BZ!6-;g`Jy@n0WvA8yVYdkBTi04FNILRE}CYF+;8R+=$ zK)40+DCUEiMJsA@W~B4cW)UD?c9W%g+1eE*X@hOa5?=N{mwv4)hKbGf8omdIBP?V; zG7y5RQ5t90{8rE;8Fq)~_ZR!hdG8W8*V*Q?UBbipO zbI`|2HH;Q&B3*M8(;oft_{vG)kHY>}yZ9SQBk>5^DS+t$%w*_ChIK;S~?l<^Ugo}4oqVlKu<(Nh|hwMVL>z;Zhk6hAeH`#se5-Y>qpWh zypT_MwG=be8>omxw)$E4RLhj@=rlfBco{`GyP@dhf85h*k*Ac_s5E^<0Gw_}5E645 z>yU&=j8GXxMI8%F!4bYwkb5+@He6xdx&$tOnyJXCk;3Yw3+|i0Z{%-<=4=9@qMVMBL&8Q+y^kNYePj?fP?;W>r4-uv@G_QwY z;4=OG_DEkU(2U4Kj_F$VdEZ9#ubgQ#?RXWGZN3nud#pcSN}A}tg5v~FdANFl3<;?F zTjjb1;pq-jm1ZRNDCcU1oLTkks?h5%v{?N4&5fcHW1w`XsO^pu7Z1JA%FJB-4Mjq5 zr_xWHnX6mM;|$u8)QdzSV1YlqG@SW-#PsL}qs1LJuawq#Ybk85=DKQK;1i(#BClF^ z1A`Gzc;XMB7JjrC^W)R2;*QQlw%4CJD^Os94Pk60CLbQoh26z*D7^NF0?^X6J2Oh( z!7Ui-Wl#?l;eZkVRA4xQ9W+FaKVzCy5K-dL4wCowj*p|~b* z=xeoiuiTSR`SgySu7u?1&Y2Ae#RZ53C_Kagq*$#25uiW-ucYy{$U``oFC&GJCz^NE z^^DDDr7*cOR)`W`^~Fu7cX}X|_k52jC8-or76hVW99EfmVb4|qIupF#|PaV@ZT zGz)GF+1Kl!WF&>>fo1_o1b;$w9-q3kKWB0KVb6kzdn|{heerT`UT$jCwX*GQWuVaT z;G}+#fhNX(1Je2qvh(}xnc(qw-*net(`qzs@vDQKel;{p3QDYAbqZh`+?IAnKr{ve zE!J%x)S;4wr0-sa1JsN558fxYd9e4WrU~}>%>)sk-MlehjD`ym4;4;vv$p8~@3gY{ z2c<`$m>YUCz=i~I++8wFaHHZo1zS!K?}b6kt?NgJZM2NHvRhE92Wq1r^}ffJ+hj@V z1qtunGE+vi#+f1058sAW}uFsWBsWslC+ z`e=W-FK~*~ZC?2X(xAavBUvDL)D6QqmL|$Gf07@I^t` zhgiu}cH1XT+Abi05sue!I2c!g>jE2d!!b;bCu!ML+GgjYRFy0PX2v8B>(IYG@w09f z_ESX+^-g^e>q(FX*Fp$ZB_gVC@*)249rCwf_Lg>hDzOW~Meyl@p?){EqO%t`4(R@G z!y3K!FLSVq3_8Wv*a6P9tw-&ID9)Gu;q3+E1AhzyN**o4T2JD2ll@sYfTaY-4oz+F1t0N?fyXb%h2+icJN*OZq_L4TC}61R=zPiL zBlI=8<{jQR0Z?ytmvfh4|fL>lk^64=Jx`B4*0`^#%05g3( z^BZtp;c9GF)52mEQv?p8E(IX6aWHvxt>zBWAef1z(sryIYExeCJ3p|QP%%O(5jcaj zhQ1;N(;$yyU^xRVEpn|uyaWd~|6aXTdheL+i@;&PMUhKIKWsp>c8yQuXmig-G}D2U zPoS#bvhw~zaY3`VoHrN1V7#9ado|a?JmwgH9wMzR@vV0)GNtLt+6@4;Y045 z(;o(>r7E!t5aa;)o6xxR(6Ar^1u+QgAavn~&6=8M+}Lyi!F>KKn(`Xv#r0nZ0`T>cW_3%v4i_5qiNvIXe} zBa_YiFo=hm`Z1;0G_Y$us)K*$LY~+0LZ_<$#5YS!UuunAw*PeJ_1HBek>|# zPrBghgJUg35R6s3D!qU^0?=$ob^##PKn|F$zX+{p&X9cFCAc#H!aG6YhLo!&nddAG zIgKJ14*ZGoBOc_u&hi9=A>cLw3Ra+$BtU#?NCq2axou|%Ot9~LhU*-sa&MN9q6Mwd z8||o#0cI?6{H*eEG{)nFsrQi{JCzTPO!Md}g9a$TA;k~!5yTc@esp?A2RUB(E+7Yv z578zyM#4CS(8ss-;L2BHKnfEH#Qz0e88@Q`Z$Wj|J6a`hXiSkVf7JDWN>ftenf47s zIPFJw(LbfwUzFth@!3Yz+l=EIdKQX%^X}EmkVg`^deZu3&HII;3B$9C4Y}I+s}s+* z!77fof$cl&J;qL-g@z71dY}M5f4*+2)}}$XOP|&mlF#7L#(BwJLOd?pfQB@PKIrNb z%ZSlWkhr{ zbKA~p_(wp@TG*(9zt2!Zc9?Fuq4tfUZ;<%`OKQcE_=)H3Gr_GfSuL|IE$n&MC3>78 zF8)8+bU2>ZpOXJ?x*V?f|NkV{{kNa~$L8z*LBt)MIA-@Z_IL`rzg*IQJBY^L7pa0< z%mrch-Ci9qGj&w!{d?f1%n>E-hxN?YQX?~PLfOAsxIa;Re~5NCGS^>R;Kcv<)4xB* z?Vw|L-3JNBZ}8{^xJ}ujBpqH57xe-Rxxu=U~MJOf~iY zixiCDgu9qGXw4K!5X6SwTg-tfFhS6wtv^%Qw86{R&~U7;PwVbox8JK18cCvH(|xov z=75U(cQY?isouCz>v>SsYCh87ErVDhJZsg`-fmj+wDX?8VJ~)120Mj4@NU2!AFRP2 zLk-8jQjZr?k9QofRT&xPzm^8^d`?8@wfLG1_q>rLAttu>3XQ#d^KDjEBju?-gM^Oc z5WetHPx9VD1ANlnYwx{fQ>=lZAxV%#OmJ{87e7C?-TSZ|KDng9af2Vb$?tto?Op5q z(}3`{BCnXk8SJ4j;wo;WQA8}%>&0VaNf(*;|0?5^OusUF^y{#)C7 z?~`eML4nzOT-3#%?-P6il`OyG+~>V@Ofz=h6w9Ns&kTpW_p^FRGet^#d;Ls;{^IiT z4NYj#073KbhzjcylyP1eo;sSCigsFSaw&9Wf zdyOfV3Pwjq>+?Ww8V#99V4rD z8laXx_y5IHul>c#+1elA3$Pn9#{^)4YsLTWVRs_-7>1S$ZTPpZUuFB@k^Og8#4T-Y zUWdCI%*PmJJZT<3XktuB^6oHWH<-=z|Lf!>TxuHjk{b4An6dG%Uk~;5t$QE$Vqq`I z1}j{#aqYr#4!-K!!?A`VLl+k@^+P~e{#}5%qt!_7!%TIKu`-Jw?-xw|7h@WbMYj)T zJ7d$;?T$^c%ii6eK2Z|~%np(L=P8A?>tQ8u>@VMhDrpKUJ?H}_Pe_LFxrtgA?D|>k zx&wB{A^FV!_NW2-Tjnqb8}<6N*xcI7e)q+@ysuaz7!HnpPhsJ~0W+$+$jNkdTl+Z-b#^qNjHn9*aG=pwv`U@I>VdEb4z6z;4N4x4idnV)M$&pTL+XwKZfn zeJbg)iZDM~OT`|}6P#sgyhQYOR4Cbddmqj)Q{scJr@K9p`8>Y~X*)Z*p(NF7UzMGz zJ6>>RcVh-7f?vOWX=rFbtMDw7)bK|)M{Vsd4h=_V2)JWl(C6jl=>*CuDV+()K(+i` z0@`%N&U7B<9@MMsfy4`qQNs4iA@xlTcIpqPY!fP?^&2luA{pA(Jk|L+ZU4)?7dy8X{@Fybui RgEyQ|Rn)v*EPv1Ue*wh4*=_&; literal 0 HcmV?d00001 diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png new file mode 100644 index 0000000000000000000000000000000000000000..ee5e85c92f0bcd16f084e3befcff51aca0ed3670 GIT binary patch literal 98965 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 z%0D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�)Lkq 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 z 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%0Aoe%)ZX9H+I6xP~qQ`D2&*%?Xn-72s<*SL~ z683%&08G*eDzqUT2lsH|3T^0=3MkzuD73NoSYn}ZR5ccbC6M;V#4NJwatjO6R??&7 zO4xa{u@LX+BH-wH00)b7-o#j#{Nm^ki;5I&e9j#+lXG4pCXSdoB&Uo+yk^29z_eRJ zQ?Fd0jm2FowSWUmk{H!q2TX%?z2l*@;Rp-w&|V4)1V zEv_i6ytQF#tCxz2Dwfqup}ZZ4fH^MWgyfBa36YVAnAq|yXp2$H%{M5asJh1%8_#6@ zg^0}rAV!y}RzEz%GA)$^Llhx}PParAdEBo7n> zIuxOfMHsm=(%^tORC63GK3Ut%UOBu-H3`h1jH#6<(AOy<%erlP+7uy^cB0e$FS|?{ z^#YE#GzoC1ZVl5ZGP588bG$UeN+unHkaQe1TPVJ-TbMb8126)wyU!#C8U%@UHIe0^ zHaBIJ3R)Oh6mnu=1%`FqN?3QuIFLqQ;pLB^4Jr{Sz(Fyuku@BEfzya;evbZKVL4N0 zo9{LetfzoQIzcArL;|*;sB7ew1A6fWb(M-t--%EEgt4$sw9BxSRpwozm6erV(z%O8 z5Q;9u##sv?;Xl`zM`nRql=Tf!3c<&9>GD@o&G5F+E zb$Pm{!m`kDg{nhkb5SQ&P|b|CQa|k-%N8LPa40Gq>Ru`=z{p7G^C@-_N-_f$VIdak zBxJt3m{>_xA2}ry9nGmo<(hMI36l(#slK%4r$rK4Xrsa&Dn(L(3Dt(CRU+C~7F)PC z13+lwQ zl4)QD%@URD^9dk`sw;=2B!>WWI2W=;SVM0AeSp4C4~R!OFg_ejk|RJ0s5PWW)(VWG zyF`Q<`Gk$Pxt$8?Diw*nR5;sdcpebh{~+%iMYsz-q?jx>97j2-NXVxsVxypHN>5db zHWpQ`g6$$X%w1m6#wRsA%oB9R9HD>@yCTt>{2fU#9Nj_}X%C`N*LBg>Q2`Ff2GJqf~G29NQX0)*3M+B>!|(WeQg2fOB^{#71nf>P@eC4oItr1s^(Hg>frM zdH16vx|B2=(MqkLi(`RYl*NSJ5$r2gIl~d3M2R&NLM-HjI-yRm6Uvath}{CWL0Nl? zWil?faimST%xq9swNy2B?Rr*6<8-cf>Qzlp(t+0HC)VJ*a@y7OM$!Ev_29`qIBmeu zz&b7TQ&qs)luB`K6?kLTLKRe?MMbkoa}X&_3}LOkMa;}cI%!SAHsgt@7f2{vv*M~B zt5i^uivxOt{cy?>0wHxM-aOQ?Az(j6BCaL2iY*KOK-I=q)Fzd; zRfIEpL|tlV+(AbF8Eqss9kYM~P=r}fLK_ZIm1y9->O9XOOx_EIi7`4QvVw_-5bbvC zL|QO9`r=-30SBx`FBP=KN1)J^Mjp1WTauAR@PW~#LzQ`kJFV0#ktNa89Mh+U(e)ny z5SRmj9dWuhBu5bIJ&%w6o|mRt?gm7MsPTnCG) z=|GO3?gY3L2}d6U0iAx&vrpl6tZ9!dFEB-$*=ssET4ld@(|^~bR789cmH#p?u*<>? z5n>Ljg;OaW%}8gG!~e0o#YyW{uApkgaZYDC%m15=MzIR_0`V!CK$s+*WhKfJJWv^=S+09zfI1 zQ=F)j(fAWI+CbIKPHTFIjMHl+F%Eg?XceDJR8pB)=#t^9v{?WFSO9=fn1dQnM95o( zvX^3EL>r#f;9OiI7IWkchTaEY)hoL~SEJz(@Wv`e)TL!e5s zpvtpA)|F+n5ikb=gmhx45sw!|n$sDGM9KnvU;q*(L6V4geBmn!k;fcBh*;o^g3_qn zN1C7AqMLwVIS1M4y+j@vb6_R@H&#JmD?aMF=+i;56v(3xz3WIspNRMd>0wp~DU`0` zplGD7qmIdG?08%L$vP)msJZEd%U%C%-Opu>{JMte{%Ihp4mn_f{SOh~<> z)2(SpRaL0kC`3UPZFd`f)Cmdsmgp%J#aLv%HQI>&+G?+Zamqv0&>>DbxYW4@%PFAb ztrdCzEq>6YR;i>^H8e+T^uNG@^MmZcQC7x!8D80p8!$CKN6mLxM3fgID9!}+3X80Y z?&dPTA`k0X1k?-6#8jc&D$GZFTISDNg!&tLSHT9r@?E@hyHY7k*4?8qB(_;ONo44XQnjd8AZk!fZ!xy0yvKI|j%*Cu(4m1cvOCLv} z$}<*vcGM-dQ)T&r$|*7bsYQwi6OAZze)Nejr3*ywd=4K#aflm90%9yCEpy>`hQPwO1h`VP@}cnTtYo zfoPt9Fsc7i_CG8kkWff|*Mdvm-(W5004Ny_)n5rzl$8z|p|rQe$xJ{cE~wIxWkb56 zO&zM&u06cff>**Pn`|&fQdanYmbIP*Ye35q6O@JnH3aKpj8f4qsm^&?a%&ic*dbOs zaFZ!IDltdE_vr14!VDXk4l3^Yu189uXnrfuN7^+l~`W8sM&tGWG1qh-$5hF!kHOypiP5?>i zETXcgdhKXzFjjo5Mtk~(I1ddOP-;6GE*-j(7BvJRwXg7;L|kx#V>5{FP!-WeXmSPM zyT^u#I3Qo(Ow1CDNCP7!kj=FbNVkFneQXPW3m_$>Fmc9-yzwxsnG>}kiqoKVC8)PS zgs4bORLBFhEXE@b91(Sh*@{E`VXtz^Xig~fa-*cvz>3DTi*>PIG!_mZh90j8N=!WB4qzkf)+h)$BV98%$4TrpE zcFY2(#AwlKj`Lbg*w)?xfa&|I#8o+uCOuT=V)cgRqOfflG>?@uq)FRR7hIvqnv&te zl7J%-3Zk3S5C9_+5Zhh2r zw`c=V8uvrtV3^M3)Sf+^AfE0cgL%ozf&s`YM`PMc07-Ngbo51u$m$+RJ42J?)ryUh z>TR9a{p4Q{!oZ$WqSyiI!bF?xgA_wgSih14 zG$5PYhmCiF8v0_B%o#~Ko`OM|OReonX>}V~-Pm)o7S{Z;i({0#i4wWk%3Q>`WUyHG zV$GElX#Hu->q-KS_#i3u*HSg^!&#&-1+k$meR@>%GZ*|cPxbm9R5V*z*bT*Z{qG~G z0(6N@stZe^G|CD8$Ppm`B!lHvNANNS2{98LUV6E3X3Pw-T4cuBU^uYU$g1^GEbkMP zf+glCL5Vd@Fsp15!$gvUK>*M*9GMM7f~01%*!lw%c7}r3mQiEUTKN)3q6P;o;ZWEUxv;XY$Z0gRZ25qPKX>8F(q0 zmb+*tCZ@zFFZiGt4vPgA zx##VbiCctg6#(}2fKeeLnx=(VnEID(gH1LgSPOu}Iy6d{BcpOL&O?#Lz-ls=RHBfJ zcucxa5N6;rnp5g>3OYv1cQN!J$Q~HklOGUNn-nx{C?!T->e5p*%__CPT@2TU1Rw&0 zzFs!;*Z0vOsb`R^ea*^Yx^Py~3oq*^VAP%;br!Xh~FT&6B+qRM$MH%v3h= zKuJh-h3C(LX@qLBQy*Kl`NkH>Is2w&rtYQ_gIRRtE%#To{~8wC z_`;`2PyVVFlZ;z)IRDw7n~H)h*921nYR#>R;^9VNXxk-cX_V14SY7J?%6)V15M_53 zYlh?IS^$j>Lp9Y2w?R~x84=acCuYvmQzuwbUz5^SS4^QH5qsynrM5b?og-|fL6_VV z;G=OmV&Q9|E!0I>s<$p2(J{e{>N39!X)P@Nh-G6+Us{AhEnJ$8;j#m{)^dyuM;Xw0 z^b&Tc3L-Qcr5dpowWttTBGdA-@>!q=0cuApv9|N+iRZXfmn7fXqzng6e@jyBWwJ~b zP$%jI74up44blQL)a7*X3=L209gG8f^j+J6HqTcJil8Ssl7v416t+^Ouqt45x~tU% zxSYElTBIdzs>)I|05ugl-SBTzQBJ7^lHAbciYjL z6=j*uSiL7h?Z>0+$DpWA#sVW_Q8k(1gT!Z%ezapwTyv&{Su#4=nyp4zzLNn)-v(Uu zuUkewX)?zNIGN6}Iar*cXu@(s9?GTCzAgCPht|7s5|FGb2qh-wo^pqjb-XtFH5ay6 zw6)150UYf!1}9JC)v=Q2$D~u@{ zNRc%WE7gDu5kfPR*k3ckj!6HDsgO38sEDRH5}=UehzqJ(KvLEvf)AK+{$AESW8pgOM$ZW)w+BN33)1MJ@hM6TSmNvzoixg*{SeZ+a^3|xjy^`ay2NhxV zXYM;o=XtbV(R6YzItZAD>GRgKISF|Z#qLM6p_)5OD;}~6?{ZBr98>6w^36%*J}hb> zldSd>>jR%{6s=4g+v$2^pPgx&^T9Pkf_JYB#JvlvyZ{p zAg~-HAihi`m&Sre9^nCi45>L`Rz{)z!xQ#9z1ttr%fIBy*6;&LAO~7<-?u=DrHLfB zkdMCE@qY!}R4$t#^>zgg2YLI)l56cDxlx5SV!~h_FL~NdnR6x9le~{Lo7;k0pK?Nq zY3{B;PrYRd#b^?mg#+T$-Hv@pdd&h$@#qCB2PRKDxf&vz%_w;j9{&-|@`IY$vZNq} zG-1N>%BV1XRz_Cf!-QL!^Ng7No9zaIx!-%(UbS=_dNCILlGMkX|4RHWPvufv^O2@tkMSLScpA=L`{!S-A34Z#j8<`LwS?L{n9o7~EfxIT=2j{ay%p#Tt zN(qV*hc6n&>B&n2M5{T_$f1~ejJ1cI<(GLXnYdw*`gFJaB#5Fhz)sy7Y6Q6``2Jx2 zcR6=N3Y&zuun20>MNDO^jj@e%TqiX8%eWY%pkJZIA<5Dshf|Y?Vst6RVpCl|Vc)E0 zEHpSk>c3vC(qaKkk=c=ACykcjw5uT4#kLU4)QR3+LSspjfk?^7sgneyuBNU|mv|;& zycJ;)5)oh)Kp+7KT~Ja`rIw0W@NW3(c( z4EAG=OiE}>it%GimxJAftIrhD5=Y*gJbl)Az7msZM02?%k^^!=C4PC3L9zQ`^(DG` z4k8Lk*fC^Zn$!8b1eMHwwP=AoKsXW8ofC%#3LMb^v#>BTJLZnau@HtnDJTpKLV*PW z6xB;TJc$!=%*@OIeyHOLeIzyn%oo(mf!=4!N?jV&eG|gXvf)rk=rX&;r z79?QCYy+dOjs)7mC*lE|^nthX&ufxJi=XthVcuOIv|5(1>iwW52t-A?*w29`qx-;W zaDiq50svN$0m&O}wQtu{qM( z(YJP1qB0G|Rrfp}Ml9%h$+rPYvY_9HlW%n;z(Jiu(x1B-oIMntVY{+tlw#-3DD`8@|j6^~B17=|-?3f*kW9gV3voh@BSRjW2zEN8~ zbv@wlXd^v?ieSpMWj@Uv5snCW>C~>ir zvG0N6-#AKa3(3SNs+v_ahD&EY7tB+QJXp#(sH(YudW#9A3+EEo$TrIlM%isjTrxXgeSaZ7Q<8nCO;%qKX#r zRBC!#;+vrcs52HcrznOIN!mupi5Se9hJ0-l1_4>XfuLYSgVI+?N1GEjpQ-32SPO;$ zbQX60ynny&zom^)JQf;}TXEgxOBDS@n$U(YFot9niZ?0(Bn0EWuhB+xKPbY$T;L4R z{6~R8fWZ4(s*Fd2WL5+;b_gf{#$IOjO99h?tXH1N=i zs-Zf>un15snN5+06tnznV!Wo0Uh$lgVTYbKeXm?-gE?XL^oECANW#Ij)=xt$K%qSX zW}$Od(g;M17M>wdM(Lw7q!H&mP$H1({d%?gX|9IzC0y(&E3vp&ijB8Xzi5U-j4wtt zp_6^(99wI0r1L4&r{r4VtlmJsoyS7CTJon_t(5dgVID8Z4@-dOC$meJtz0kyqb2Rx zYE5^Y{;5?dX8DP44cP37(Sif-nWiL^SdcD~QYr@4B={obUo6lD`&QFXZHmAME=6Y@ zteeV=ITa~O;@S!sv$cSnPcgZ?Vl`r66lNA+MrI%e=D2iZiv>jR7UvLlZdla`R!Ziy zE#ow6XQiBlAjMaZ+vVUFT9DG`PF6Fovf>PfDboR?Rxgq)9MJ|xw84UT!cEjY1N%=I zky$v{k2CsyumC_nfoRRZ9JPep@S!1B!VtlSKL!Z$1xW|uIh90m1mpo&s2)ZA34jKt zwS+W^ZdH}Z3^aeh%r#&Z!Wc^~hjZ-6IU;iG$dSV_x-4an^KIfhQb-g3?+KEzJRJi5yzbMlYbZ*++MAn+b5J}D#Rv|I&6~Oq z)B;^*ETD&^maNmFoKf|aDPF)F6wCp;Me9*ay+cu|ZLCx|TP~=n-mD4~EQ{HlL-8Xu z+cne&GQCbMh;So*Ysp~J^$1aKcW+m2gA~IHIoo^eHr;At8X_h5 z^9xn4KdniO3>t8R^uDi0h^`B!t71!~nyv~?!u=$Kb0V%p9szc^@Tb$4y8NLDF%4T* z*PzMDY4S%agf=Q9T>48z-p8}jz><;x5odVJ!5FuC5J02=GdgBsU@QQKCpf^io3QPh zH0b95I9xnXl!j(F@=slQZBZ#4@CU?uKvfAqnOj*(hP+%}#b#ksx=|4vnCH!~HKr&D z)tJM#jUN*c;n=AbrXT@q4GoMSg;H+Jj-c zl?2cd8wC%a5tBY_G4l}t01~Dw6#@w5+Mn#ifn@=5p4U0@1ZtD5R=)bL*IRRSPoa(i zv7Ylfs8uQL%qOoQZ?qYM6y0`EW|c89002;XNkl92^3b!B_BRMuJr|mus^D(5MWf4uHpI#` zMbBes=DKviDQ_)?Mc}yaWoE||)QC<9xnpn+V}CU+Og}^jiBlUkjc3#6>S?C{Wdxl6 zVsPw_G2at^8qi7lQKDo5U<$8UsY=TNY$^Q^u!q^lzAa;ntQe00ZM_vxn_a@w@@3K} z9%^(%5p#s5%IVKXv_Zr~j<{p;PVd_2!_R9$bLx1kF-O21Zp<;i;!`XxZP1-U@p*=a zx`0KObxFN`EGn0hrgMoUN0sDFsW&1~$!ZSG#Uw6FLyn0YGa(Z)Ip+`&&?P%!5%9?Z zR_Q6U1#&D93XPc^3kQlQ+(wv@c04Xge$z{W5_Tx&0IZzQf`Azr|90{;+2dh$Cs3HN zDUK^vbPf=MnFCMBjEIba$in1%K8FrhkQ$(eG)ln1*)6_wvKH+GVw5-BT=}wKS4pj9 zQVKw9>AY>oGR=dv;bf95e^gzEF@|XBvskKHv3Qntd6$e{z{bE1C`d9e*zBOH@W&oE zweVUn%0U#swX}acS0jpZ>LuyaKug=DTwser&)Imm)&eCF{3i=ONrs+r6QV>s5VyPu zm{Q82c$|R_908K=m>s;Uqm=@pZ`9QQ9CjyMrTId{ocOf252JJGl23sJcHj@x9>W~h zQerL1Zwtvc=PDJ6DS|@fkW(8BOcHb(jPcVH4+8u->9^4xqjQ4D=ybylOjjflkRVd( zYn99#^VTMQpy`X5|# z5j%DrcU~Lnfrg{dMV@kVCABGKqAq?pWYP_zRZ1n296pm0(8f4Gj!M05@66+e5v;+rW z?4WEpuq+PAq2c+Oo|%!H2mw1l1aZKCl%zM5ItfZ>CTRPRNS5b` zTAm^2O>*g5&I?42Qz}8Z&ao=E!L~FBl%7GrkvK z2TZ^npc6-=T5Sci;Q>d0l5N0IP#j=t3Dw+^Fh>ro`tmq0K@eNUlI1(4MTaKOiVJ1= zwH>47dOFj+pq4gbQ3o49hS&w$D>fXVlZXJ~*O;YaCI-h|WB}*@lUy`r6}zw_5GEo4 z)w@WP?{L7ZdPR2ZZ6w4onW%6?;vB-!hFdVr(y?LOijCIaghGRS)k3HUqm?H~1IM&gc z`8`iGw$u|!FfP)7Z?ji+<&Y+2zM5_z6RIXZWkeg9V_6XSJe2@5F$aaH#~g^k6bCWrIs(~`z=7dNnH0g)A{vV%0G6|R%I9R1Q%huWnnfr6 zSS8u3gp2LWA~iyuah(h;9`sdj^dcqH5OuM~gD9Ko(n{}`^C`-X09@!)Y3K}J*h#4k zcWR)iFE-3Fl#F6Q94PQ@88~L=6zp(f^Mjg|X_l8)mK>`4?<}iR)^RmW8cY!lDh-53 z8yI*Fmx>pBh8i3Jj{QCtR9_4cLFoeEU}>gQ3cz7MR)&-+b@A%X7yG!TIv}N5#6jdc zl_ZYAh?@H-jm@@sTe-zgDHZfdza+X$XagL1Rs$VDSlYwFFJlIZDHU>n2qy;|(NqxkBiOILdxR;sZ;Y+y=Gn`Ek=#K*!NyKzKi zRH?%xpbZixB4#9l)Vp2@RyD&BR}iNl$2iDv-I(2&*&~m!gfACvCGL1qp5CNaLXt=d zL$ju2sDGoAt<4Pv^(&MrK!K|Igv~OUR(OhQJd!W$;nda?7`;M^ljc8&Zc)H99GIJs z*)F=+GUBia9wmaQ(kr!6SF|4+i_%3((Ev&nT1ma1?GLG8GfmbDDu>IIMUkAQ%z(ZN zD?N7sp%VGofP4hmCrKq#r9{ia(P`us~EY#!F)y*f@6V#+I4W3`f)? zslxKYY8S-1wunuU%>(8dIxsXB0%nz8EOuoU@|lZ{*^#F=oFgPg0!IksV@EmZ-JuAw zpI`}DHScZI{uH)JDGo87Ii)fd=h4QPs|*WBS0`I~Y3;J2LnfGx+03ff#uQx4uLrS*-DOi791DEUP$TWRT)1ieNBDmT{!iqo2f` zW9pC`DyWfqolgf>dGiH0i*3pQqw--$TLXk(17V{}MkWMX#c#`&y^ zT?nOcM~vM0L*RW;OlmV#L$tXm5fJ=(Hd=AA0%z8{NCcRWI%E!;I#rd1rB!^>MKIRHic=)V zn4Jrl!|9zyzT`d61mYl0r?z5+jkZXd>QUJ|7>;_Wl)`c&O6LN}VZOvMI7G)1ZW+f2 z9mCiOA&eap5(1-blbQjC01=SS`cmGI>&nA4{bgec7UzORW(FBfqm96Mj2Xrf4l?Fo zFqO1cH(FJ3PT7Ocl(+)51A+=?P%e>DDiz1%^C!{ev(1Q8$!IQoQsw&LW+Vuu#Vsb67}mO*EoWC26o`DKWGOa7g4igvV;@ zV+n1E`yOM5z^WO0<)vgTvS-Vsq*lr?r-IVxf)tt&80tTbz;Iyj(?{nJkaIA7Ns%B> z+)IR1peWwW9P|{ES0=oAwGJm_sNr_5AvF*&7Ir7wx=B{PXuD^4vcNeoBQI`|!VI7?$bH3MaT4p+#d zH0!CF3ITwWiRncwP(?bmtnUp~X(5vmc@AOcwHm+xzJj?5#gD1ChxIYPiUJ*sDHkxj5Iblx`e_1K3JesmQFFut}q@525a) zo;~;ds*EMt2x!hm)~`8hm)Pk&0YuhQoW8RYEd-cB_17Gwuev>Db1G zb|p3^@tG8oT=T|05k=x0dm2A#F&tVG2y6HpmH=X>07u-CTh*wPfFqSu#9T@wImTl* z9I{{~)UeU+m zNRSu_J-M2VSivMoh{dA~Vh=ZfC>Q}*h6A#UBSDTFS61^lyD__s`Iy6(ntGf_Azzn9 zb-rScq?w{>QLM_~-ey(Omb~E_VR}zwm5M?h=)6@LBRUT{ASXs3_H|C%36bQe1gOeV zs``|wCLpILl9(jPW!jQPSLz#ez9nT?KnXakBub?#>(0YDq#>&kACt|$pz!m{2_W+# z6QAK6cg{IS|#3%CL~5CNNMX_$Ivp42=6AAP$t-+X-gNc@wngcBu6Y%u{=kSQqe9) zm8iMgW~@MBWwiXPMpih*>?0OchSqc|I$;okLvRcZ!J&*1iGdJ^rORjo5IC@a!4-%l zq74=x5+b62HYlD2DW!taayy6~5;GO?kHX4{yfE>W?b zBqCF@D%H1|6_i55!5|cI1}VV-v2%a~0dP=7mc}bJr-Zp9>Kt{kXf|xgQC%)^Ue#HZ z0&oP1BTh6iv7$2qKAYutMI7tP1zN_40u>Wjw^*N@TP?~{Fw)mnau32FPNV~I!X1#; zNsu^?FbJ8%OYrO_CY)$~OHVAqOzgoMM<^WEX$?5Ms5$ErMFS3YiQ8~)qqwoSjS>z# z)JR*OF$6sagG6Fhf|X1rkb(h&G`y-7JKF@fhE+|4?{URU#LUFOyd?UKp!0V68Ej;< z5#ge5tw^Yyl+>=#!i}P^0t##FvOq?ep4gptGLb0^Q6y9TT;*1vbm?9M35QxJQ~G>` z{F9F;OHuLOIdYEN*w>+vBc=I9SGa_VATbdmbs!v4DuID(O%z6NSlEe18MPM~c);Pt z&TVw5YE6A5?jMYzHj^cWIv!(T2M4BkUMMR>gUCv&^Mdt#)8$ z7JkJ6$K3uLqJ&yCZ^Z(HZQVmy#W7$G$2dkIhXkU$4AQjB(g6dFgagBo&;|)1#SCvB z!vV_cJ7SJNX|N|bHagkpz~7GjR|Fpg)xlhH8!2a0H!_+N%2}1D$*N>AM>ua-0Zk$Pu zSZz`I_^KYw6U$;NQDe*Dq~$rOA}OhVm53mt5acpr?;+?ANys6SCpj1$@i@Vbn7Pvy zULlj>0S7Y^xxi@`J06oCEDVlS4PltXUEnj^M#=QX#<153x0RSfT(VXy-s+g^= z>a13XS-GgybesV*XU{rU)^O&oM7F3xH8EHH>dH9IUa=DLRIT1U8Rs+k#st)L?3^P< zV@KqW#x(Y4T{_>aNSTB>7T+j>2#^xyfHX}M0o7EzFhDGelU%nY!GC8XyHu`Ld^t6k zRVj^X{%F;sAd~f>{UOzLu!-eVifQybhv$j2PF$D~onTC+APEw>F+z4NLM4Jh66``M z)*H$AlnU4ss-g&WQX}_(jjnVK%B)IIjOJ}dN~}1QSP_>r9IE|Fyz0w~U6$J4d^rGz z%(F5Iwiu7(u%fdn9&?Do86-dq9fCs`3nXp>5ebD5(Fx{f^*IAz;E@1#*a>t59U)O5 zIS?l^9LZ`dlN`)4_Lw7PQZ|kw>|og#m82U}dPTrV6mvv9N5)T3_Fk^LuiFn5W%?Rf zW>pHuD%Jar(fj#06hvVJMqy$XHUDVsbxqS1X2)Ge-m8N&zoAkpxlj*s#X*|1V+m&v zIVJ@uyNo$FX%3uHI65x{PXd&J>d;o0Ep3dZ&6q zcFv8xlb<7^F=4ah>#eN z5E%&pTcS|}WA|Ax9KJJVG&o3;WC9#%cQG#1qba@O1-w=_njHsvR4kjVXcSC_+>~ti zB^i_D7lviqLya*+(MBxHvVQjvw2|`vw|8ZWjpR5IVAl52%>4hqwh8P5FI;4%4!b0o z++L6DlIg?p|pjvH&{{9ndwAV;6J<^Z(UBy* zky6d4ba?LkYDQW+E6g$SwKb2MTTVAS*wG}eGMz!jsV2&&T*Biz+b8}PSi~tRy?Xnb zWS~?@4orYwoD;woBN9~cT>>Oj6?a{?fm{Ix;z2z()sUaS*w!wg+i(z2DxPFoK0$&|L& z6?J$SOhp_@z){z1PG2b{OkYEuEbbT`{-jciR`N25Fl9_f3r?wk#yIH%`Z~^%r2L|8 z%2SKf{w;GWS{)My^c^2pJ{Akr0vT3v#I# z{?ft_#+FIM#5I{x07uG5N$6&TkI`89s)=!JK_D!Hd!h<@-FvxISiq4>R;8q1KotGy zUb5_49H^7!d+3etDvJf@ifOGW3cZ1lpwb(e01>{*VOY2->Q`|VrES7XkD=OgZI)4mw(o6|4>%sq-5u0cn!TtPAr< zY}VyPSBy5cgL`o-QKLEv?BGDj0jwDgoyWW0O`W?lEnw|tE*#Y`$mRlOpn^6^!>}(v z-9wl?4 zN(IchD6O}BQ_khgN-K`q;k44#*p(dWgk))0PKZR5k+5_sD9IEh+&G%A1a}(s_bhS)PsoWPa>jpU^-Gt1#o}?#N%&*R(8<(p%heZ9_yfe*;ce-5CUOett1r9=ra zB{q_Seq9<40j=q49x@In($TM6U`I`({HtI`1s}a`rD`~Myr4-Tr|i;qxjIg3H%4?z z^d+oYv0x75+IphYYGpu#TqmJwZbu?i_FKt`j+7{oNTy)>zhQPz7!I~KavG3>wR?p4 z?~5wz$Xw9ISJ#bZX&eI7(Y-0A0Bay|CmwHp+}Mmv3dw=YObFeQxRkSFVK|^3a9?HL zDGhrlR~d7yD=KJ%i3{CbxAKEiLOc*thr?3#0gmAiy-ah{3XEF(3OHzB4k;HM|8d70 zwJu-T9s}79nUAz|lC8$7<>>IED*=L3Y!|Tsj!aa`Uu#iHHY(3*36qL=gHv%*Vxl1$ zmGp)&`~p>@z@|z?d7f$whtNDLs)Ho$pKaG;omP<-@mm!e?pv^Enl=4Zth=iC1*`a_ zIZf5->#u%Okfqm0OCudbNCgc`z#&AuAMT6ji+X*m%B@&u4h=Q3Ossg=F>#LIn?Rg(SQ9J?m1R@7jn-hI zfI38ITRCxQKHYlR_e2IAoQaRj`Jkk;DYX+G+S_B00+3RUOvM7EHd!w?qrwgz_BEoE zYlb$A<)~jIx5{ycya+{yEZLi;27L(qxlY} zo>h_UsOD0bs^O3+m1eBo0Y|RVjjw;d{;h0B&j03CHZP#YNU98aqbfN-bRfG;czYAc z0qwp~E7YjQSaV>l*1)arTV3_Qe}IYUz;tjr5HqC2LV-KDA{(JBD`R2wcP+e8)nSNS zNoLBBJG@ZH1B^(Vq=v(*H-3)ZfP1^ep1)t5kL*bfY7MLh!_kxlHKjr|G9N{M7H zr2!5l%M*PoAp#uDf3yM)9>yCLX9&x@46QDCC`P5-r*^D_-rZqBZ}8MD#@FI=>%J|l z=?Yg=&43ZPqYY%LmG}L!Qqji22vzxk2bGixrlZ_-u+SUL#!(A65UlaF@}y#EZ@>d^ z7|byM2i1?DQ!1h^UzGbB7{`1&9%k9nOWNL-O5=J~Fe6h>r63|wEq=wE^B|d(V;U6Y zM%8a5DkNq~NT{o(WLYduoo!(B9A$7QndNbpb#1qL(aC?dPF3VwzXGWN+>%d`j%ppo zaG%Kv-O41^=2CfB`hhL<0pVjyl#b(|obn$$QpFs-gv#k0XBrM}dCwA`!(Kf%8Ao;e z>m*10sCbUnQhKDTxciN^i3K)|+;4{+A<2QRfojaVa^HuB*=r_fP~cheWXFRvN(Muso15ROjHspC8biE zw|!-SJcbEa!5mG%!EtvL(%$Wl(i@7emN#-Vf}<+q=%S|*+SQOIt2u3@5QX7DB0f?g z;*>cjOa~<_m;?1t=$y@+Ty|CNcBPqfBS?prc{BT}P$NSg3`bX1gYe|gmfH{08@j1V z6(0zNPw~RQme6I!mRLb)Fx7uGF(W`?hNEf~FcGKRE{+E@v?2Lw5G`z2#ysnNTw#tZ zit@jtf{a^bEL6<#HTtS_y}E51>l;Sk*`l5KdJUa{xANGh~(bK#2EG@K znDbYVQ5iQD-81%noDq>6%A2wqabv}1H9kX(bX|Y+| zKf9QNYLIHJU)X2r1ocLxutUNiu_;M(ggMa}E390h*jp-?VRJm<~2ON;9)F2h{ zMj|09A|;3HaVZ?XBHsulI}%ANGCnd{7023Im2nHtBN4;eqzWXxp$^Fhl^pttU(g%L z@}8W98!&=yBPB}T4?6y2%74;vq}zQ1P9`gxIm4BfW^0?E)&*`08n*xDM|}s*~z6P zR%++i+Aub=EK9Kl=bhUimrwDX)wP)h-?C0vm5)154zTtQ4eB9^Y|OCjPc{FG$5H%u zF%j3YlqziGR$=VG2I|sY=@Q*9I>UXrW_GjuSiwj4-l*V%B)6eax#{255;_Qc%k3sW z#ZC8BX}J1XQMmvj0jH{sVR>t8zqV%5YZX2r7r=3}BEthyf{{-_U7~`ZoLj{{4yKLM zsE+F-M@yP~4gbM1cI1&w z!fN=cX{d3r>Fx~&ne-hP7elIBOR1%7P((cjg*KSEy7d4ZkW%fsGK$(%S1-1aKLs3; zm28bsYQ>7sY6$NQ?y@a`HpnMabVrpFi-s3Ysl?m4fR!*3E7+cDsh!|l1bDSgiYQ0W zePs{CgCP%YgAc-lT)2%ie656TvbC?3-bSPx){DzjX$H$A8`Cp?mCp4HIl~um_4^VU z4vIR*GS52HE6g!L9_&$9P$Fwy5ksOndr3@VD+1-#g$3ZKdw)90M^2^FazaFIJ?ptC z)jQzOD}_yMY%h5M)n?kljv-*oy?;u1JzT%y#vk5+yZ)o#e$2rD(y^*lPge)9R(--$ zT83pN0|Vt6E}Uwa&!)obfMcMIB-+Vhvgjg>ZGN4)(;y4%>IPuY-28|+Zr7QCJ6bx!qe5`6( zZpcQ9jf@m8<^ei7*kYqcTOJjjyPGZ2M8JY2DpfDn)XD zV2e@0?(WE0=eNo1n{*6CJAh6_U`9R|3+5>%e1M`i3KBR9w~-Gzj+Bmc9L;WL zC`O%zBLZ+*dJD2vM|PYSn4_^BU$Wj5j_N)pT91uwr#w+nXvnFge1RD#0RbFEw1Ipu9tep! zAsz$?IVD8mhBk(Iw^BQeS}yF~U%HK4wE}BR=Lg!*FH~=OpHCqO+P0at>en)6QO`Co zeL&35DyA`MP#vJ^J+WFNB<2Ks05i1qGnMmC$T;j;rJFfU#p;bbqV}-^j#k}jJT@xq zU{u#S8!k4M9e420LV-9%rZqPTu@Spbf8?zqv|9w*OYgYE82cDVdQ> zPRX8X$H=7gBwv#-Cog0UQz{r#fU%+*jB_U$<2rTt^+MP@WTmR7N}w6lN8prJ;|s@PgTnhLh~&6>Bl%XHtv5!g^!47wNv0H8?pAhlwP z!i4}(Z}x^j3>o2INC+Kj$i^#(*pn%OTV>rMi?tO82&eM`Ah_9iF==&ORahKNu*KaS z7I$aS#ogTkBsc_j_pmr5EEe1)SRk+)9D-YLcMq_E00Dw)F8S}%eYh_(FVj6$HPvUT zy81iSC?~0I9b%_0@(Xv4GgCq0LT#2gQoAQb2@A?IcGxi+*UN3mIArmWL$5vNGF(o5 z>8sjHjVaI{al*7n>oGVW>Br^E4lxvhgPhq?t9RgY3!FwMw~kN+q!0HnLI7)#Jh(Qm z)a;(pkHRfDKhIoG6 z*c^CXZjI*5pS`r~Bz~>Z)B5c^UD1oIelFJS+#x~h!rc6FXeRcN=woIfjH#s$VcZaR z92N-ny;)VS%M4=^q!X>3j#)8&*+7`_1ValKahd&+4>!G7UH0VAoWDP*{x-u&?LT)5 zxoOKr{$+<8la#KmqF>72QqiQ~=X}x!NyjjdAdHJtV11B8X0z;|N<~;=XNj{H_q7Dk z4y`HFTj47A=0Y~jQ`&0I-kGNTS-bj04cDn^76_@j4~XDXj-pcr=#WFaRU7{?|c8V zN|?LNPE))&B|X-ou=LGfyOP&Z!$LOlYF`iB^c7WPqbalQXFN8{h;|1T!a+|THy++i z!^Z#yLW9#t_SNNd7nim9pf?bq-w-VS@9)?Pep1AWgyIRCEPW8Htr_C8#iKnmvnMPl zO%)^Z%#qVOR!IDwPjR^YZj1xSO!IvpJH@+tu>K~`+GBl{KOTUOmSaE`8O0xg6Q;8> zly&{AiDsI@tI9B=BNqsW(oOu+32XZy#!TG|y71B#SnfLdZkVJ7_g7qW#d_VtFw)ZN z6+I%vGJ?7`Y9tDV(TgKp_BJ5Jmpl%3Jx1 z2g+Q0R?Sqvku-`czhX_c-x(tpIC5b7H7;DXvG=C8h2G%zo;Fy1R}QnvrRFW!DFO<^HmwC4zW$kDMI6 zPqq_zm@H+zW(Y3p#PF?BJEx{$1R5!P#1c*UaOkEU-(;KzC0Mk0sEfvOFf2(IZ%^VB zTHVK0dnsqKm!NYIkGGZ_DmXH6|Fv#LsMEA#EKO=P^!UB13Z#*I{~^zesXXy3z;`EE z_Fy1PUI|c*TUw>(1=*pHBy{1agEBUqoL+v@pJ%u}cQy$SU$};({Y=R&`)Q;uh_|D= zLf!$UV&^oFUGs3v#GtwO?I~Mt@F6Acz~+=7HrU}|s2d`(&F^xdahFBlgR$8D++C|x z{cN@09V;>)t{a%t>-H&C&FO^?RCFj=Sy#kt{EfHu05uNcJV7;af|z2Y@|co?W7KI| zrj9ok{UNSQRbP^T#4DCJS(L_u*uqxYKg>wl0~QcoHm6K%eC$)6@O*3Bz2KBoQD|c* zFI}5KtVSl3O|}!681FM$b>y6`W6dh@5H;*M{U9a}$*^WUguQfUJ~W5!-t#Tr{15GH zY!XwvoPG_Z3hH;kWDk1Psuoah6BStA+?Izja zCzoOS61!c_771njD9v)u`8^c1L-G7&k04Lm5avxngTX5gm@1gXggb^fIk^|}4nj!O z%shh0g5s4mkUWbs-4*o#*+_U}KJztR1J)GdB@&f^E;Dp0fHUyi!G!ADDy5nuucPuv za3W@#26*kITU^t@y7E*Z0<*glNy-r5mn~DB{4aG1ut4+EvOIc!kfHM0p5;Km>&6-J zck43+Kl*&t3*MRn5kn?=s$aJ^n`)TznEXtI!Kj2L2VraTC>i%97X3qL{^?qgD8;sg zgcNVamvcLNaNM>pqC~tA=Kien>XS~m!-P?-w#jbJdD)EYvCm<%q`@?xr1PuvrUNuJwyrsQMdc`Pb5zGTP6siBJ0 z*QOM*dGsrh(9+bT;9gRHk{*8MQeEqp^3=u?n(l*KWK8BbSD`{gLYiqR&z7%3Cgm!@ zjaT%?%*$uJ?UIZ@y7nJ2}zzIgipMp%q8t$8CNuCq{?(OI*Mx^sE^I}NEgRTQu} zu<#KqR%7i}EsqdHThN-MJD;sUkB#urn!`~n!@laIRG|kmHP&5$)r%03C_vCdwx6Om z^u}5YGt$xy)&^}|RIG=D?O=q~aQsjqt~L6cu;A`7zO^j|i^3g}=MEXqStsh-s*(pKD8PMZa@ShPLyO;4PeAz-!;n@A zE9jHaB%tmMs6mcuty&e^p?*^gxx=U4K8*z47*k(4P3=q9XPQZz{ zr>t$_hRTRAg}u4;-D`K5KitPfe3$4a#`=sXt~^#buy#36Pj8bLrTk%>_#VJ>@Xy$x zGCFYj9@(0b_k2*Z%1h1qtQD+K*RvdA`1Z8{5}GP$py5j+ig#S^;klps^mF8;wHBgF zE9fj5{ly1&#@_XS8&a#%(kS(PwBKs#+avsjy%xr{G>t%g!|P7URefDg7x2ySmQ~iZ z<{fvCp(C=Ew@kYg*u2nLkQsp^t&EiVyr~`@dCoLpz&-u2_4oNk%d!6(CGNL@RI+|$ zr9>^MQeNghRo*xxgg1I$O1ROCZH%B%ki7jKvQ^`#Zxd*mfcHvzArrjm4@&&HB^3N|lh8|Z%${ECD-oz4aqJMm(H>rpSB&s%0HGMe zY^D_$lR+-)RsF^VI%gYJC#3S3ltS9PZ6PU4<)Y>-LwtksZZx;Ez8;J%w3q8d7$4WTFlL_?>eFyll@9mB3=Xf*RZCGmc?>viRAU3cf@mxseZg;|HzafXik^)fiO%}hTUA~2Q+?^V zxIb=!-Rx>7+JLlQp80XEBBn$ii98K$6!vw2LV^irv9ZQ|W)p9fDbmY%T}V7|Jda)f z7*2WfnGBu9@z=;0b=7@0vn6O#n;yefK2Srbl9J4mEug0tA+Qfn*+<`F)e0tzykT{4 zF`?b`z76_Xifw#x-@ZW`SNSHVRGV7NXsa+5&jICy*iX`85vt%#-S9qRrPoPHJ^b1% z5qHtv8K1v3pm9%`%zAD>l#rJ_U`EX;SG!z5k+x0)L4}-t9fV~ASH~lW`C5A;jwa`m z^!HwQl*qI7iWV_xT5p|awk=y|TRssu)*8|~g{@SNjQ5;`4lt~C9?oqps8MH;a{%Sf zn3>x2@DEd8o1lbUM|^SIH^@NKaT^QD%^wai9^5P4EMT^Z6iG)TLcN{#V}GMHaj%#^ zyRbT@2ZG`ykE;@lf@C2YIhAWw3+#-P9h`={>9avC?x1Cduf-6!SwyG&)00w^qKHKwvl# zBY`wwjOvScd+jr$T^&jonQXH;Gdd|`juI<{R82%f{2s$ISN{+MT47%@8XqDU(6Yza z?g~*qIo!jmpzw#9Y^>`lb-oiaiegDkFuq|<%H?>2B-*Yq-bl3--rK6k@^sVv_i6Gc zc>yF?M>fyFdhVLQw@~TbXF-A0OLUz=o+;okPH3Qdzjaa|d6Bcyc~{v?MTLAUK|eW? zW4+8!zRV;g-p>aoLGH2WF`ioG6hH^4Qvg?8r!lEuY0LcWy_!fgb-r`Da_>PXg)GD&z!gi%DaMW^w-&64760i28s)vHAxZuYs16Aa74*nLV|M4N>Qp;5 zSV^5Jiuho!{&ZZOkTF@SP=`1xt0gf|gQAeH&rcKKw(B78}0P?mw3TNAcNDcQ!U`)kwsq=qKND zA=yRiBC~}Hu5BqYCWt*FWJ&Fe;D5UYo3n5}F;2ewx{+BisLK=~nWVB=}owZsdjski2-FNe-QUZ^0NE zW#IOnb9-Rsh*w1~^cn4~?OeIN*Cl%LNFo%%p-ugnI@C6PCh8YZY$fAI-kjyKSDyvj zT))7*BNp3UjUz9A*CAQOt`&<0;*91!#$KU>|H7Jg(27tHx1y1nfnV-muU9D&+yme>}} zwEbv&7M{ znyot<5u3}_H=5Jp_(otuI*?O3`MO}~`*vX;-Uy(rR^#k2Un+;2-_(qz$j4avsY7?y zo*DFn(kW@U3n6Y29rO1BY8VfC{w|+h6JF-u;aCa}o=dw4si+itn)K}2`}^l}H=bzM zm4_Hd?gIYz<%XCdG>3z`Q)O^#=>QUTW&gHnPVds+UYTIu&1gwUc=^YCcFc(0Vq#lQj!QVT>x^R-MNT#|df}A{Qgt9i? zqQD2hn=AS_zneTL*D6X94*w>Zky@xz5bnhqpW|8rCHmeX)C64Yd-jB$ zs7v7077Wj^Fzj4AIzpyPvvi6TF@E!hyOEA>3HPE7u1b&f=ke{VRrkfXeMyP0qj}p@ zZ~IwH2(D1ucN9Zo06{=}!2|xhH@=*$Yj2YX&7x%a8wwxEnZ(YHfAD|Io$PvAP2}aJ zWgELw%6im6!s~ik8N&A}X>U{52t*CKRhdeD#4hqRl2*_RMlF-V^fdbc+&)cEpnHgE z-G<9gVmjdejGY8>F;G~#^Ic#`5d7d-y1WBzjCe*5uN|3p6k)^N3pTK?&UU^{Sg&&_ zw4g7(yF84_n{V5@C|G=GLBe}?y<6adLn|76tNeKW?Pr1vC=Ucq#5M@!3hgN9zr9|0 z9NJ1?Q=GY671|imv5DyBk+)2}ZS8U1o-g}_wMJN&gbn?JNF2P+MXs&fwaZnHE8xE2 zT37oNmproozxyQ^^ms8PBNH|&MH8Cc&AWLEyo(JNl#vOw*mE5OgabFPb#|7_ac&_p zwrH!j&w)F17_(U{(sh#jNtifrQ>WwrX~KFPr^o#n_?wby%X$4i|Nm$uQ~92Dqtw$wj4;B@Ve@qu!TDUz}V zAh+f^x8h$zed3d3VB(tqi*>-KKp#<=#@(}F#e*y4GfI_x$QjZmu>8+Q**!cf2EaoY zMomOO*pk+Vtke5CT+za0dDg8c{32gEg})nuD_bQyx40MnYaOg4=%*N+bf)9E)zaiK zkE@3pbGOroG0EIp0R^)lWa_P8pU3^5d*%&Y4ld}2Y}9FV%pA8fBhPk$KjH$w`1#8+ zr_cD?Yjjr@bPqitC-fV052Df(!+WMbCc?`q*Y|7*ow}?jFZS$CMyLq{rR6~bXiLQfsG1cY{I}5wm9<#amdVgfP zLL>4kAa0Qs;CcKq1DzkUDlwan{NqN0b&*;<^_xm-`%=g2!KZZ4_VO+t-*G4Qsh7+0 zy03^C3Y~{Ld)x3u$&k|c4wqTq^y*C0i@<#70`?lgQ#(mTE0mse+Zf4l&%tr)XiW_i z*jsG}yhm~;NiW8}z7?zT+BZCV|N%L5y2vAva@}-m-&X{l}c6w3% zypfB;Otoc9rqg>P`pfY{n5bX#!&rU3K8=*2_%=J;!#T7o@we$ApB%v0BAULR=?$?J zd6`S{i!QBydrS;cttahZ*OJG}*jHKk=x7e((it9jyTe830-4NzVLCBel;$6Rrk44< zHY+sd|K9h=#j#%KShPW})ojN%Z%Jy7ow76R7u%lMN=w~S7!VzpO zX4|kuPLguB81k&|n%Y9RSCV_z&OgkDSt2n+alMq-%Y-&71kUs}K{H$Q zQ?ce%e*mQ#LsQ&Ci}BYald&^RgePd!A?perwH%|A$0oI=1l79u5+d+h+yUiyk$aVk zYDqwkn#xnf7E@e27Mwj?U6G^w9cOmrNf^~0~=0-7jACyc-^TeL-akkk)b3uj^>XI7U7{e4VGKZCE-80x!6n<-PT{)nE zU!zvFhXFq-QVeIFy)2v%9-Ahyya`&iPb+?{8-v)4KwThn@k!Kv5H9}%#0#@ z99TX)bCU2e5SU>J;G{Et(&_j9{BND_M(+edb9+=l!JP9Nb@pLx*ZbSHyu}Qr_S4G4 z)WcpB(vmo7M0#NzQ(_ubJ4*6TI*>$LnTn}0P#?laK27+ffn`|Kuf5mkwG5>hVp*NZ z|MV?C>WeIr%n0rOnqGYL<`1tdHjzw846@GDw0RG%JZ zKbt^2%TJv;F#$NxIl}@>DCGwcWNN#pG*1!k+27sml~#)n%e$%m-utE#Xn?TDw ztdEfr#IBTUe8o@PpUjF?g1be)GOUws z?!_?&;s%`Lg)X&CDh=NPhU1^fAfpaL1MFaNjwAHnW*8X1Val+ zjRC!61f+9!xyuCe!Tc(J#g3xQF&wZnPY}t{s6$+PU~%T-#@|4FNDXuPNZr?=uOrAW zPe>nnVU42rd%Xlmcm(hD!YOXmk0;A1mtplKbPBHA-u|p^4!}4>>TM!_Yt}&pTuSpU zy?H$7KTz@IDp*J}C$xwF4&~&W7g&hj+-4vA5nUkv9N1%xRC{_gYo&m;;6*)DKe8nU zDmq6byrM4^mdHk=)_-fi?TQJ+6qSr=o{0YEN7T->Zpu=f{KOU!M@Q=CgCmNE{~5bc>yqn=wm6Y;qn9WaJSO;`eFf!w7-#ncT zo_lik*Lt&_WItm^aFQ!?Bx*}&E7AB*vSuHff~amxPv2e0b0@9yaY&C!A$p}vlJFD* z@d?AWNipOd?RaslN{hs=O^m)i)SF_c*&xZ6XmG#ipjs6yzQzE{?H>kb6VbX52AWg} zXjET*O;1?>cKg=PPD%6B-Mq@-r>1{n4E9{j#>{!@^pQ!$S7zJ9&b$UVW#(w>nj6MjZBtBYy^-c@zd=)`tw$ zl?+vY-m#tVf2jM=y2E%T^|TOj6Ml0tcB<{U^2#w2@3-@`t{a)VorJ^952h22z^$W0 z*9ac6$Bd#Nbjj6SEuHwYkytF7zqHwFXAd{Ef007IU7;Rc>P%0BU^}_wZ?>+ir8+AZ>`3keV@!jvesU(Fa!@gc#pFM6@4MW$c*a^_Np^JmS)=o zjoX_x;Ad1O&neib%y*m`FY!szT4&Q^hRDQN;Y)NsDkWQ6qO# z(cKkh-c53X@FEL7F!l#6h&%H)4QMIl&V)W&YLhC`43l{Up}7p=O&hIU*6DZ40mo6Ap({ff-i+TIkKjbL4v~&#* z0F}(S4;3gc8RwZa^}eb1BniaSfJXvJ2CRpDZWmASsb2YJE#;hbW=N|aw|Pgw46Y@d?N#hor4M$fl}l(KC$7^(cFLFCK^X$k9b3^u2YtMbAw&g z7Td?n&|V>aUHX*Bv~zjAg4ytnD4OP{R^Q|!!HC;<$}p*8N6~8DZ)5no*|I^^$d_p) zx+0 zO8Ia-?MNs?>&}#3? zKigI~oLcWT$)QaaA|(-w)h))CkIqcYpSyhd^PVR#M*RtW#}T>G3|EzZ@nbL%=(GVX%Wo-;O0JM zCTY6x8-EYFZE7bRiYqbk)NG2QY3Qey#3xgUWNw#&FFSYXtk#cv@$#$aJO_&_+Pp4; zUPN$~m!bKa5qcgU{0od~zL(XL9U@`o!qRbuj~@>-6F9WRt`OI@cR#8oC7CTD45kZP zGzPZWOq1m5pRWDv@G!FPNO4p^%QIw*LnO2KXwSWxAy4`@U=9D@w??YkIVG5t==B7Y zU@=R||Gq$6bGbrR#iPT21_E2A3N_nI5C+G^eop@h1^fyR_04&#k83_cxX5B@keHA^ z5*oj@{V!bm;tNyN#7FXZ$S*gvdZ`<}=)Zrj#vI2lc0k#_GBIlkp9-n{|>xxemFZ-aO4^@C!L&L=zG`V zs?|zUMjuYNYvXzE4C$u+x9{f4#`rSCRt+w*piw^A>~_(c!cPUyt7L(8mLHaD zASXii?Y3|{F;k@vztYZz2xtNLypty#H={7$8$qm{L2<8ldd!#oalJ`Xbj#I}!6qGq zeL00;=F$4!+uSWB*0%f=-C}K%FSx38YR7rW!VqgE>SA>J`6k2IZmoj*HPXBU_U>SH zt+C~t2c*+Ov|F79Bdvehw&xI{uzxfhnOg_^mnJ{`91yn^=%*uCpmR?-&$B%g%Kw&} zFN1GY_^G1`clG>wCE(Llh<$ZCWof7U`<~3=&c|hr3=l2+Z3 zD>=S+5&zKVWgJV)FGrX*twyFd#wLw4dH~Ny-f^${N#X18-=pher&|2O)yZQV1Y)H0 z-STh3hJRYdHGno!$@cyD(!Q(_zU1e8F*G2a?ZFs7zV0o5&hg(BE+hgju|)bbe69Z1 zw}@#>(G5#QeT=ZL%U}IVu3r9jkEow_8?&zuk9_#LK~fZCj3tBp1$O%u%^{0PQ{AL* z0(2ccZTbINCcyp^M|>RdCT$05z$x)QQ>E_7xg#ZX-(= z*Eg3<4qI2vZh3ne8xCg>^iQU91gC0JJh)P1h_6c_l%%*WxSPqMxIK(oJp@(12RqHz z;d{zs`(_EPOI?beo(k%`;ld9l$$v_E_UV^ZvQj;YA9dT@-2BFI8RbwZ0clb-wdl|D zgo_4WSCz>qBU&d{-D>pev!E6r{qJ&4kji|9|jFCzYk&&4+!w zL%;d{T3N2$Bg8BJ(V^?c!Z)lR^$w~VN5AhlM)ENm5ucpQoiU2^^^Gd+u5rajMMYtK zi5R1zPqf`W0OzvuTipo!0%d+NUU*22vBh<9DY5getPL zZ?|}g(1-UbNqH~y_#Twa$5uRzyu}`zidd+$pVar+ znSNqfK5Uhh?6J@gaNg0;adEvmTyl4=udk1%e)~onA4-Ctiyx~Cpje;j^c?p)6aT~CL=5D@q((a$C>6e~FiOPn>r6s@jD?Rpwwgink zar#2#Tx!Va3s=8*S5s3{AFec#TyTG#I$uz|fOva`yep313|(%Wc`>woI$p$aMutYO z)MIl&^bA=-r=b0xrp1C9n;(Cj%Jh4v*6(w$>%2Vb{__Jf+>BB>DmGRrS={~CCsw$D z0 z0>L2W($Up5R$+@BDYH}{`ky9e97U+*f+|FFXw1ycTB@~eY;1gBjpfw3v?h=t8^Nfh zrM25192{)Y9;2qJs+m79R_8f8HRV<}7DgvzGh7^?WcY>Eu1dEzQz3!Rq%B#(bIg4< zDM`$A#Hw5|N%Z2?yDxu#c>u@q2ex3N@?}(fyaxf}iu%mkIAQll+dW0n+Z2_2FzN_r zHtM*0^EhLK+0NQDjjr7T3yTHV>1Q?ae0+Qbm4AZQyTo`TB=pq!tLyFsHu9SHq$k)^ z=Qz%GArH0^=K1F5=SxgGi?#EqsHk!^3aO=U-n=Qk@%tg{Rf4d6YQ3hBkrC48V9CYv zCuSCvQh2KP@Ls{zQn!l$q3gfUB-yn*%aUUotXrT4Z(R(&vn$kHK2B-q)XIt zxY(qHuCRW0;f11z46@p|HGCZe+Ul$J)%sap(RyT01WgvZoqSV~$8>I@d>@l=lgCAM7IIJ?fJ`R)4t+l`&s6seid z##Vwl8-Y*cGl)qZZcoO= z#WAN8dGBpStBl#VGMJ@!yLfqdU8fkT^CX-g7hi!}-(+JWuBQ+|G!>sb**>}xlIRoB z8u{VFb4^V*w>COvYxVThzYvItNJD>BmQ?=}y$%5g#7OuR$sKh!G5reTC;7_P*5+iZ z-x1QUvYq7Dr~Y`x?$HR3!g`cBYu1AvBMCkC>F5fK3p&O35Vqa+aDN@O>q$*RGwV|0 zEs1TWG4LADGV>-L5O``=8k*i;MoAI(0edzxV)Z>H!-VP&wsa0U>z9h#RbISUUtcey zV99W*!AJ*@F^Gav4C;F-Zu)*xUqq7lqTNzJs9gF+?*$wMW!1(OpkcYdu zF@$6HG?GM}Mb|s{k$cNEgfUMZ9v&qmW_CRvV548dpl)+OM@bAp#vRMS&8?X5 zw4}6DRXGampeMf06`*7yVfXoSHG!LUp9Lp8*i*Y|p8vf0(j%yQfPSoLk(SkK<8>6@ zv-}f*cg2pg#&js>a!2o4RnAq=zdP3on~1aO1#%idm4`eB&baZqS=+%^4^jmB$^urs7xh`{Za(Yb! z(0q!F)X3Ks@ZR0X%gdv)tySg_WLmgQ>zSa2%H(SMe4%$aWM!3pB8N4zuA)ol=GI@b zZXX{u3973%-EDlj)ayoHeJ-$Z;;N9%XjhV0Z*Q+`=v8G^)r}F$!UNc=w8vp>?d>4C zf(Z(8ITx3HbNh!5T@$t&529olD9{tL9TR76`tkM*N__p9HI34fCo4N%tE;QVEulqd zTq}dCZXg+hP1SVFr%#{mU$>iyGdrB-@%{Dl=X15qaIs}gq>n_(&-?2IcEa@G4Gq#r zEEWI=SQ%#9uoxsWU#FrPV^cUtXRi6$-F*jFfgLL{ZcU4j6!l7cbe&>*qgTnmYgHx% zMRO3Bo{^E{*d?N&YcB(~cTxON-@H>eozOCHBHUnMieSnRvjf-?r^Nx>FSeAv`t1Wi zd{Ff*kZ7das!Dztp@}PF`NfYG|bbd4L1{C3Yc+ojJ@q>J>#s zT!=%ETokJ@IlTa5kqW_GI2GBj@|SE_5lhQC*^QlUi)el_R8V(Q)1wOX0jQ`1;4UDE z&uTNx5hppq?epErm!elW+KXBl6M&om51BJ=ke8DyJrBIC8pM8bauNwP0}j`IS<0Jbp@ITMqjVS zg_h2<0$m3N{lVMQRk{VY9UY>gqxC#-Wx!gli8{UhSy;cn){eGCO6<~j$S5C~WH3p3 zfF8rc!_J4F6`np7S#7#}^xB{cj6J0v6BETj*!K7L3z3J~x#xhEZ7lRJe)l_p_1Uuq zr2~nUup9rL;~ zIQSd5RWKDtXsgM41pk0VBSNNsdm%XZ+@t|!>erECYz~{H1Qa4GD>VzP!BF}DtO4Uw zGBQeaX-@^4!leyv$Hr8oQZoEVYJa8i43pRQK)&C)K+wP$coxT(VL4a;*nWXYXWXG` zcVqrC>B&^olOjMIfI9-9kw8~V(d+Ki8hpLj?vi0}s?*ZY>OyXzB(Ai#r?+=;|5!qD zvd@oGN9^SkTqTii{*csuqg$4+jM;;YKVs}I?EqB~5?e!T$!>pgvXUKy=>bk8fmTUw zkDu^PJ7T@#-~Eon6}003pk-qj<2hPs&u`Wx-a$pC+&i!MEK-)!pi3d*s{q4|YdH;+ zYj)j%X%>B=rHeP#F3@+c1KgVBWzRn<=B2(9{$zwg+G@DC*|cPOYU*~dQ3V<(p1iz# zSzvfXM1^*~N*l<|Fm7vU$%^@ruC6YSF(6hO0*MZ7>=GUuZu1$jp@DHCNs9S5JUVz= zy#Nq_vgDLAXqQ<`ukYNsb4O8pwW-Q+Hk?sH`#kFzGWu`Y`QXob-8j*Sh68hObUY#k zfNAgU^^dp(oxOaEQ>%Dt{Ks2m^&1)cpy_ZP=5?Qoe2Ir_DPDXY1V03#&STSK<;NKm z&`tGx?fxn@R^TA8)Ah^Miz5}bwq@Gn^JmK1r$wiuz>3TQSIt$@{E(PvRWc0E!`Qe! zefkU7cjTu}8-};p+1ZH%Um^kQYlSs>U~yC5731tU(?Kg}_1RuB{h=N@=rBVx=4|#e zvDX&PA}zDDo@UaxOu-0;FIEQ?${WbA$9t{B9rt+iXj8G!hlntVeZ*k})OsmU1w;B5<= zb|g5qV2ETH-5)7O)z*qzkM@ErFah_{0R#1(E&2Hs6I8MUc!??ccTfJ-eaa42UKWY< z1<=NVbE#8qHC*kSi?P8E-2BIdnXGn2iyhCv#wG1Z$Owc+(sADAD4RMdlL zw>U_bJu$Os|Mja1NZ8{DMjT8h0T zH<_6&gL>8kUrB?D6`~r(+d^+`aq%E)^{-WnpQx*{p^ry2l?9DLoueSuQC!R?F|VPj z3gr&OwU{`kbiyrf#|!~Gqgt_s#@ z8Sjy{xsW8UwO_Qfv_hRsIk-%X@w0KW~%5K+Byq$NjtzikVe3V8TFEnM`@ z)Yg#`02>>A5TL^u1G@`o{#XPT(rg5*tru*Qg}`ujix=+x5Qh4)08{2RusEJffpLYUC6X<}CXT8)>SK z6wZ8o#AEwN=_<43!0|xFNOHY#k~b_jczJmxCH3XBKy9zH9_uqmIw5OeVX<*8(0ncE zlJFyiR{wW}RqAnR>V7N(+|f_WkOJXO7v0lWx=REG!fynG&RGT>bkvgk?zjSe7V36z z=54Q$wGTE|dT+>van;T97BEjoUX$5bV-mAuC=cQ_oV%PBpWG(c@~gSg;2Fe{q{-6q z?H9;MNUk}K+&xX!`;3C!(Z3>@nJRn*ZTyU`W$yAJ#l-t`!{f4UpGd1-dNGc8Elu!S zKk}WvQGR%(H`~zTq}>wTagsMJFD9~iDVi<`H)Ktdn!id5oeGK)H?nG4yd*4*;GHrzJTD zHWF_!ACo>$>(TeylI|m!vU&D*N*@uggWWgR;5yxLilVThAW7}sQtv$8-;d-NZ!En0 zD0({lNl9hkApb^gOPY4*31N#1^a5MyeOz|GGmewIR-_6SO%GeS#aA10Q_fc*JutVQ zBs|EE<)%g7kWQM+MPswz0ZKLW2_qJ&0E;|I8BxBN@5e}9Us|9Re$;1dWC=Xto3Wvh z$c;>!G@3kt7@^cYkw+_E!aj6GT|FTi#&DZ5i{icEo$V(jm}4ZrhwjibuL}(f$dY_Lpq6rzNjhwHdXkLmhmV>QDTsK#5E7m9NhbPx|?=aZJF(0%U_IVKO6}vnhr}g zzY%ureOv1~#b}oV!+gF~GFB2Pl zm#*JXG@WIi(?%fEe?(p28I7RCI9p6f>oF3$CfIKC>vG1}H=rGqSrZW|XHoP;JO;*n z*-G0%lIPT##Jx_Eym|ad#3J!ds(P<_^P06(jBJisTMovsNV%*1nn{uNsh|1% z7oAl$MkLj}Qy=RcmyNpi_~-m9%LI{YE>3LBCrExz@yTu!1fPC?ttd1|_)3IM>vu|4 ziy%@q?c7F=JaRHs*!ZgNhN3pAea0g}597tjUW}7QFx*(9og(**RQgFmaxcG>(&VZv z=c$N?BTj-pjkV|&*js!UBQ+oU+`A&G4%>U%h5qAhJGTKViAN|-IeDd>VLP`&Lj+1}}_s9S91Ih6-kR^e$C!v5NCGk7)pC68X^Z(+Kzy0R_-6em&`QJYL z{SpclId+rl6dzOsCu7a0lTMS2ldgHxfx)+_&{0#X!Pt}xA3gPpUvzXdgmF(EKZeBe zWLOpWz2&ANAql?;ejDk@(smytva0^s(L036@H4hN_@68J=ZF3ClK#GuzkT=@@Ar?z zAML`wxa1%Eb@T@R;*x*0#s7TCzu4lVV|vT--;0!iDJIv}I3l@bJW{oMRSe zjEMRKn);ox&r0lCX(^=-?SIkCe@iA`zYI?OtZ!qQSKA9l;{k+Mq)8)M(-4TpiKDZA z^UkaSO(nCsI6vp8%2m{lxE$*4PQHG24DZ#P#kyWulmUbJ@cND@X^Y4jysI*K;6 zP~*qm;t$&2>WMm2O6xjKZ<-~#WTxKU)S8I;)w^7~$(YdJ;(3xJsH^SP>wU!p;a~W5 zj3Y70lQ3N*06rciRd`F6X_?8ZSJYHgkeM7@++3)rFi+|icn>GHTqJ~&|tqllnrd8bnvW6+#0ralx9=~a>sITj^uZP@`Ugu z+6GfGkD;F>x0K|cKGiANLJ5ueSQD1@GUcHvNYAnP;)&ghs%q2Cv-*3B2d*~QqI}~( zMGZY4YZvwK=S^eYp2WkUx1IzXkRi4dx3;OLFSroR79~ErJFR%%jRGtlkF_1&)WE!Q z6&7c7wb3uIpRV)V^#0SGb$Rl#wIF&FCFO&EOFVttZ+qMSJgR1U?kfv;br{o>z4<^U z?_EFC>|%cjN4&OY z=?hOnM_jx2s*Sdn`mp%Rx9pd@TKs}GV=Ke6j$G93r)KrM8U-pw9kC1}9x5s-JfC?> z9A~*9;dj#f1j+sJ*H;qBT7Oa+U%Gs0QwK6JcQ>-r6ix(2`PJ6BPft&~BzU(EbV>(B zspr&rY}Df?JOyn=uKRyRuC%g8qAZezXQs|(Sz(KC?S+!ST+Wa&3cD<=N>pz`5eS2* zlh@8BO=*Ddp~(a6nD=IMp;pNPLCR-y??6T-fQ{a_r?RM($Dqh*LP?5yce0|kuIlXB z_m+c&%3KJHjnY#&h?}&1RnaNZ0Q_D z8Dx_!lrR683=0g*MzFr>leq$^SxD#95qQXVPWUkU%c!-tx0Q^%%1BQ)O*gB(w|J4+ z|Av3Rg@U|7`_I?YtCdHo&AnYO{YiwEBvhwSNKesB#YV-Hw!LQc2cOC;(P!rS;oJNp zjtp5E>7b5|0mg_dC@iR%ToCXr&|lAT5n*TFnTk}@D>3a)9>u80jTwMflcsD}gP{{F zU=o~q9g^WN85IWWOV&?jtX{gqu7wtIK7u$hO zSahf=9i{M2aybfBFxhF4GIyo$u4g}ZnC!ERMY~$bKYLb-PYw*A$S}!J50Np5fNgvB zlq9`t$M*TIq@9HXo+^yZm=VdFUj%ExABHo8J!BlAe?cI3gRgOq38huM z5pfk?kN;l3w&tK##;H~A_N%x#q1>ueJ8y3bkFNHX&sC4Ba<7t);nFWRGB;E<^mzc{ zT|YPr!S_HHta@C2SgxEB%1%^II!KX0EGs=dPpd+kwEL@f>)V|(v7CFxL_cp>#k9j& z84quJm!f{2|if`Y>Lx|p@>-+MaPK!mv?}y4PElXG=0oCu@b%8w(5VL=Kx@#ZqJL zL|k!kPwJmk6OI@;W`2HjR7{N5Zu6+~;^6kdAtd;ysc6b9qP0|2_op>da3gh={qa)r z?Q$6(kOznIkUCLc6x1oVcDL+GI77||Io8qALr7{WW|h>Y{(&8>wrPw9McgA_!j@ah z8yY?^HKn5^^%BG9Dj`4Th7pI#EL-E9b2FkA1@kCXu256Krbi$-NVs-$YmYn_NuRDL z1OkrQv}8W)uPBv0UF&i#2W@R_ejj%zO|udVX-?J4hx%4__Ek6WZv3=E71YzPFdfgq z{cg$mUitfHn$$Irj~=peVSXehXCWttpg5Os4M6a<2Vaj4 z6r4)1^X4Qk&iCh{^ePVeZAyg39Tx}9zTTErg3{2}{x+d^6Hvgda4G)L^|d^RqO*5-2)k#4O7TOYXB2kAkHN+%Q zdlfI;(acUdZ2bBRpkkxJ&!3cOO7y)zA%^=(8s+B%`a%4ZQ-h{qs>+RmX% ze~J3;$}o($ahh&a9$QQKYUrn>WR7lrT zK8i||p=-UX>YHZ;BU6_*K5%EfRF>SZWVkC%)Oh1(QHsyuss`3e#ATx>wyRc!^dm-a z7L0U_)52~q&pLqb@Y!Rqm;7cW!{H2`x{n`o9K;-Yp9yE=-AZsbh~t*}M*NaKHRWkr zV}`G<-H|#Ns(KN7?BGnN!FHnXp67bkG>FUXCC782?Gs?YA<~Ypt7# zBlawFdQ{rua0PjJDYJ#Dy{(zL?H)&&W|_r-Lid$1r0aZ-b7#DobP$bx+$I_?b)H#V zA9ZnXRQwz9dw>+rhhy#wzanF}_gI8@g!uVO7T(|P&3uNf5yCfXm_i9ffp!_62)oHh z)Vwd}p&sei+ik|g-MyIngaC@SXUKk8^bQ!hR!S^?7`#;95w0he>^+e)%@G3#mExmy zcV~k=n%uO!p(#Bb)+4dgG3m>xm2Um(ylKY;_aHdCkBzbtdkww5oI84?-I>k_P-Nsu zIH(AqI2CY8Nqloozoh5m@vTL z*&*zGtS&OOGJR;m?yAAdC=;JUlOH*3O7VR2dH(+XeNp$UPrgnM;P2r}zpyl-=kEFR zsr~lDSLqdUO192hTD@#Zf?A~AchaKU=i550So~M^ymod#Cyxj@rI#f3$NmWwIq$ht z6rSVuU0YHr8T%mySl6OZUayT7(ok<~OgCbXCF24F^>Y=9G;1YOC>o5)+V0;!m%}yh zQd6gI>*ZC8(B8tKdI!Im;t&Fh>Ve`P1{bNMvp>qdxD$*(AW(M)Zc>omp3!sQd)N8A zsslVCY>ft11dludFlCmZ#IJtOogwliptuk zk`(71Zj~#nTmt#omA9ECACOWqF%?Su{*d&PW>&_mnws~KM^62!v$~&L%7bX%8m^@9^uVz{ z*ns9BK80zOW4ld_L!6P2FEq9T6mswQVWg6{N&iAL-dlJ!vBXqUwVf@+w{#zsF{tO< z+mJ$SHCDZfQsXeyx0{!B#8znL1B9|5$6uP8|AG})FP0eH)#UY~}05*IP#x_2j2 zK^ceg-ruOQWBhM?)sJD?z9#UiDV_olp62W^6g4D=BAcT zy29#x?O1+pAzKtngp{VH>UICyoOd+Kz2;Bxo8Dq&<eQ&blJDY zX(k$6PZb&W9ate@@dyw1B@N8Y-;Z@qxYPhgWMKLjvojkRG3L{&H>mG!Y^Xc|3s`zc zkEz}YDz%f5X-4B~-FuxY#@sOZz?jx)_V0T1UBv|%Rn$l?TH9+>8hEZ}aB$bnfYqmz z9xnG@ysRWKv+6c#<7%#z6Pi6!qva4W_Lw%s~i?%3Y> zsA5V1#o*NRn^|sk`qrH4;d^pzk4t$WP*|Y{f zmS=Kt1{8~w)Th*1ldrnhjUDU};>LW&$NfIgdHZ00kk*Oo7rLeldn|O|34v06a|uSi z7nHtaX9rM-1%Pe9=M|6$7M z|D~WKZ`&^$*VR+8Ca+2_Nz;pMRj#Azo~Rjn_bLe=re6-1`ejj8OnVIA!xZ9bq4d0& zt|&?88c*=6*%X9X1w_ z{nuan(Y^&k)z*&JDM+=xHd``o63Wk8rz!rf+IgY zk9`)3e5=!&jgAI)84{uJ}(v;Y=^ z5I|s;2KRm?bJ4~;ws-92+|64GqTa#nRD-#)c)G&6eD4}EY0}ts=Xn_oU8h6VUr&F% zJbtqzKj>CiZas2~_13U;`BJ%vVpfPN#gPqOx*{WC+F@_}I1Jne`zl>6>ycy$ zlihD=;evXVrKPX7(1p`9Q-#>d<+l-7E)I^mr9T{mspZ4L-U#H@OnZsGN4b0!_Y0J` zEGe(|NGRMoLTYCY%-sHVq%YQY{CkyI3R8W)|8n5SPnph1j_BFOQCL9OUt^I!EwLRIGl%*vjYxjI(V}4 zILW;$Eq3%a$7t50v= z(-5Zbno~;4%j=uBLm;j(rGWqUb0TeX4jB@x}PR8>_u^^0F`1o67mJgmv6 zOy7=RMYcL%Pn;otLiv~a%Ic8v?&;wV zmJ5c=`O~M$=34U*cTI6ULt+>7JHz25=f3$NoJ6rlX9`%X-JQWxzMdP0`RMXT+Cz)$ zkXYX+-N+NP&WJMbB_Kb_MlAQ{+AekoUT#TAjQhAVOp|i*xL+Z158+vn3{lv6XVZkk zgVW)3p8FbDAKLozZGZpEO2X_l)?E-Sd`Hf}>pMYEX@lrYOKY>iU1QTd7X}B15d~3P z2NWjrhZ{$$RAZ>#zkiQ&7-{Y9KTh(cq5CG#=?F=8-wD(@16eCrTWF_Irrz4|Lh|fx zhW4Urm;U4?`y3kJy;r(qXmmXe1cabiKsc$3e72srUU)u$0^7BBhf4qllp{(bswS}j z6w_-5iF(F3f|ImZ`4*`t&dMxlzgXTW)j`xJEpj;+876vrw@sDE(o4w6X(=nOjwJBV zl7~dA*o@T9hxTTTIZQH?5chVOLVRaI;QE3;#l#GR8YCkSf(e~QIrLxQ8f6GCPrf+| zUE@xoES+KYkJ7VDz$vfW+d9V_Kmpz&?L4iR%kpg=9)50U;fuuxvf0||D=QmDS@&>f zC81`qWu9g$xR}Jm#Nf3xxGa7QN?F+@xV$0a=l3QBNly~gG+~#Gs5Vn7We>?yx0IHa z*3~uX9KsX8G^L}}569TS5fD7@mlpTvVo0;8GME1alGpSGL{5Z7cZ2Nx(?aVIlO2~$!y4lR0}Q4F!z%pJS`#{CJrJqvL_${NBC8=+2+5Npt*Bs~cNSKAvGlMD{1 zIO8qkLomf?w5iGF+*lnn&8*tnQzs~#-iMqTcq7)MmFA1()XuPZSi)u>}WPICLzhUbXS8V!iI4pT*hK zDX9*{R7a1aToh2h$IENDG{+117-&crOi-hgGtIrg?El>V#v@bH+{p;3g4Bi*@4fOA z-yIX8-w7+bd*uJoH?cgD0nyr-SsE)?4tncoIqJFj*6Qj6MobCX)EPg<#mc(bdP)i! z-lI#ySoEg8ZF`*z-xY}Ej?Ep$v+ib-rl4k5-S&NaH#~=}1ak!jZkv|$TV8OiNlct* z3}m}?OPiBg?QF&!ghi1s{T9rf7#*#H(6em;9)if$CB;2GJu1*YcznY^L^qWGyy>FaQ0ck094#>(h07dRS|+L z*6%OiByLbj7hu0lv@*>WYS)cel$p*>-ImVNuQ6SW;R5Q-Dk8$gCBVzfE5uU>U2Vg* zF-uEJ&>_3Fw)SM+V&A?sOlrCE&!5*`j(S07q3tNN0=k<;CAjkQYIS)i zS#RBfP8#<*{dYh6>IIY!4mE}1U49!uHfn=h;wY1&#^}P45v3xCH)5m;-#s1g!I=1G zeWzAG;>I6;ijlxjeeRFN4wzsH{X*32y5J;_JJ<(TthxMifa!LPSE$riM#QY%fd*yZ^_R z*lR0=>+4NaY^`PTS@EcQk@XB3M;6Uee7jQaW2T^84%gdiT2`Q6VhWkLX__m5;=ty} z=mcNk>kq(jWaqrI>)p*{Vlr*~IHIkqYk4pW|5pmNAYPCU`khiDB#&kUVBeC@%*@1d z^Sg9>Hf{;W)Emn_8N!X`^zQJRdaZQJN*(N%tZrEr)E2uI>Vs{;M$C5Q>o(4H$95#{ zY$Fdh*LjfNm2$XIE(k)KWeWxt!3px#P?^0!CVPwiT-5LK2l-nic{0j<8#bpBrbkY zd)(rzVc@-~rqREkFH!A^#}*pQDkeP+qn~#Y9sWgkSXZv;vAG#E%*T4jxQ=_Y4j%xD= zjFJwj6pqE1ZkE2e^xDvHqNK$1EVI5%|AIk;ln*>51zLdKh0!s%ctS(V=?#2g_CmaX zKJ&#HgvqqI&Iw4XdYu~#=Rnbvr-(|piep{mLI~j@QO!mwD4Xa zzqF1zc>TKF%|#7e-Ng7$m&`k%sY8T)z8t!q2#0%(H5m}*htB7oTr(8Ffm*JHExNwW zTT#(Pv8yGFjxaR?l?4}};}`mlcTSzkVP}UfJW-f30B@wdrt$31=PbQKWdpOnohUuP znqaP4@c242M?X=Nfm=;Yr%UqygrshFcQFE{VgyYzR#;&?M$EH7I!v!qKwwTW*0Kw_ zrS=zcTc)8)&~33(C@U+2ikceIktl<2<8iYoDSYk@($arL{b^W7VT+wDK~I_6M~S~5 zGDjqUE}Cx40lkzEvmBTtZnu6&3%_A^ZzClXawhalO!!qdm^9E0?cdx{(aTt)viZ4_oMrTSKde#6$eBR>_## zdMET$V?9w4w)LCpAs6X`Q?rBr%-U8m-lkx1w~5erl4HU7j%ayB?cBtAMWwl!dZ9jU z(?iT@4!Rw^#;Rr+hmgcXM^xRPcuO)yabf4SC>y<+Yc%z%yNl50X1(Klyg+=;eFA8B36B6j^JAP8KNHgAJ6N4^${q=gH&%wKkz%Ru&qh1V2 z(IsMRDl|FuQ?Qe(PWS=qrj-d6XdIXHa?4U=;6%iKiWhbI`QanWy9jz-ua`t0M5?-~ z>TQIPt8hFn>l=cMUidmY`+NyX%3yUig|X0eE&XY9+;#T(jb24`t^0ak395c~#4^lS zy0G@oxfGP^X4#;=!?1~?)XvSGwmN-0sOYKVe*7q578aJq?cA>q-_b+I7?MZZX)J(7 z-*qyKb{^UXT}J+7$OlA0`ol$-o-I^LU#-8$xCPQ_kx4i^;raxj2!^XC!*6vgZoZy= z(Y!>ICS}hUT(mUzdswFFpQ@=^<~djZR#H7*3sa^u2mWx_~-8u~xB>y(O{{ zP{#oiV4%&Bor?iS`Q;3)vseBndiOfEL3rno%19OdQxf z8kJ$D*UV8Q{SKNnqLIS8W>4!!rR0U{h*!;?gv=7!T+fgTCj4mXg6il)hD z@SY?ql%mLg&X)1oFEY#pKhSAfwmec-1Me7|3V|7;l`lV}NoAB>aAP=rdUWD2B0BXp z1KPC`M6*l>79{?Tjm%>&T5 zZ)pCW9t|jaahz4mj~PT70KM9qou%1dncOcfR$({Ma(4%>$w>MyES~4i9jk)48p~L2 z5C`r%cd7}=p8gc?p+E5K*~SRT-M0~vJ*UlWH>mtqieJn9E(S2r$ zziSR!6Y(L`MJL{Vx4$VRkrB1I|7UvB%+En8N`9f)lgai?V4Iwq7QS^f`BEX+qR)MeKu;=GBz@ehsm6Fk|o)z=P4`z za9+Z5hnE_rD=1<_?%oK?Z?~GN#cfo>6_i*ymLvq!(+8MKzkUMj^j=%JhG%6*~&n_ z38S8P_Q+f2MB?%u9>#S9UZibE9(&W))+S^%I&SYdGCj3{m-?>1sV>K!aiw^nP)@BM z{As9>$fkz2)6o;18x+wn%8EDbF_%G=QOhZs*PfWBUL|a;i9A?gzMfuo84&#FvM&(5BU z)-d2IyzRT~cjoW_<*V;B5dikTd^}<>3uY;GjtC6uJ8mKwePNV?&1Grf#4b<-9)o&u zR@P}hPdv0km(BC-Uh~*o8s=s*gHZ<@>IHqaM{^$-T=taTp5eEB&^S_Q-doNfX61q& z2gTi*U$hfWkAkw9(K1h{Jxp$$R8|uZ6Y~UI%gJE}9IzZH2rI&W`6c4~=TU5X*{feY ze>F%SwD8pL9}(m1wD3DHSpuIZVxE(uB)QszaUG?+yHO{(KI$kF5I`99CP*D_Re($k z2y?_k4?Gx^aw`l1Tl{LihakEA1@I9zV*3|cvhaL*MO~>_seKTTmVA_Gm`Ti1?T3P#uk|o)Cp|sAWtDmFA-W%%O^)ivd+%`HwN@b-m5^Df+0g_JM-?L6^hon{;hp^`>OquPVO@sg0dGnlUlj%hv z8{H}g6Q2k5%|>UpPml$s!E}m)-A#zkZh3e^&nfb@;x?1THgCqqh z#M%&uOOt5Ce-tHg8kcDU+1;p8gK;2Oylugrh+mrFap=A&K`#g}nHWhoK)3ury^cSzxr)`v3Iwz_28k8v@f8fn$G)vMSR$ zf9_mNp=OcMbX$zw4XS$%j1lNrLX)sj#COBPPs3pgzh>7*^1^pR>9{y}44@{g(GXT$ zq@9mQC6)Q8a*n-D61KfNIGW=;BGdPDd^=OPEp)gC1ju;9fR@o5VVDThQ;pQJBIGrvf(9X{kK^BV0e~oQe51pL?hQB zD3!$G32x#bB2`sYP#T(!r|49=-!@tcKK>TB!N>Td$jJCle;h=;;YI9MlOY#LSh5+z zZvBp0E5dS^lq8*f_r3ex>%El0*>Y{`&0(4oe&79000|fVf>3kJkk9eHAvDR~bbO=> zNj&-ixrLaoyzo<@_|Xcv!ojqpjlg_}FP*GOLm8KhEF#6$ME(b7-yKf%AO5Y4tRrL` zWQCBuw__!HWy{EltjLOpW3P~raE^WK6&Wc)q#RpH5gA9KPzXKu`98nvdamcc=X$=^ z_n($?KA-pdzTfwKzh5Jf;jh-xAO8Y!iT8@*0;SxZ6YQ~lQ`rn+VM^4cq$F

    Aj1) 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

    aNQGQbSJjA4D1Wj$MgNO!JL= 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 Hc=rDRdkj+3 literal 0 HcmV?d00001 diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/7.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/7.png new file mode 100644 index 0000000000000000000000000000000000000000..df24a6a4f51b3fa83e741f9c9b912b4e1c1a694a GIT binary patch literal 99259 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

    B+$=0ev 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 E0>vyM1poj5 literal 0 HcmV?d00001 diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/8.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/8.png new file mode 100644 index 0000000000000000000000000000000000000000..94a79668b2d3b8ddcd8ad661611d03f8a45470ba GIT binary patch literal 158411 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 literal 0 HcmV?d00001 diff --git a/fastlane/metadata/android/en-US/short_description.txt b/fastlane/metadata/android/en-US/short_description.txt new file mode 100644 index 0000000..09ac761 --- /dev/null +++ b/fastlane/metadata/android/en-US/short_description.txt @@ -0,0 +1 @@ +Feature rich android home with minimal look. diff --git a/fastlane/metadata/android/en-US/title.txt b/fastlane/metadata/android/en-US/title.txt new file mode 100644 index 0000000..dc15035 --- /dev/null +++ b/fastlane/metadata/android/en-US/title.txt @@ -0,0 +1 @@ +Lunar Launcher diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..6b08247 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,26 @@ +# Project-wide Gradle settings. +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +# When set to true the Gradle daemon is used to run the build. For local developer builds, +# this is a favorite property. The developer environment is optimized for speed and feedback. +# org.gradle.daemon=true +# AndroidX package structure to make it clearer which packages are bundled with the +# Android operating system, and which are packaged with your app"s APK +# https://developer.android.com/topic/libraries/support-library/androidx-rn +android.useAndroidX=true +# Enables namespacing of each library's R class so that its R class includes only the +# resources declared in the library itself and none from the library's dependencies, +# thereby reducing the size of the R class for that library +android.nonTransitiveRClass=true +android.defaults.buildfeatures.buildconfig=true +android.nonFinalResIds=true \ No newline at end of file diff --git a/ic_launcher_512.png b/ic_launcher_512.png new file mode 100644 index 0000000000000000000000000000000000000000..dc84526d4d6466b9e84125a1ce54b199c3882922 GIT binary patch literal 9136 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