mirror of
https://github.com/FossifyOrg/Launcher.git
synced 2025-12-24 08:08:58 -05:00
Compare commits
58 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f55145d2f2 | ||
|
|
678bd4ef8d | ||
|
|
cdc2a5288f | ||
|
|
f915cc2d33 | ||
|
|
1480856b85 | ||
|
|
c82648ec62 | ||
|
|
40c971fdcf | ||
|
|
e03a182899 | ||
|
|
f6404419c2 | ||
|
|
e74ef8bf0f | ||
|
|
cf9a5e176c | ||
|
|
af6565c826 | ||
|
|
33366fb1fc | ||
|
|
346f993086 | ||
|
|
aa1c7f8004 | ||
|
|
1d3407bf74 | ||
|
|
7afbcc3b67 | ||
|
|
01d8b940be | ||
|
|
8e138b9c2a | ||
|
|
0ee1f18424 | ||
|
|
b9c6bfd605 | ||
|
|
3cecc50527 | ||
|
|
d38f0fc5c1 | ||
|
|
42aef77f80 | ||
|
|
6f605c8794 | ||
|
|
4d168b315d | ||
|
|
9d7b06be04 | ||
|
|
a65858f055 | ||
|
|
5466c0bf3e | ||
|
|
fdfd7f0bde | ||
|
|
b00cc8eb0f | ||
|
|
0ff331f91f | ||
|
|
0967231d3a | ||
|
|
232e7140df | ||
|
|
8ccc12fb77 | ||
|
|
7adf3e7ca2 | ||
|
|
cce4df2de7 | ||
|
|
3912c96127 | ||
|
|
c37465b230 | ||
|
|
84dd3b46b7 | ||
|
|
a5cc4f3157 | ||
|
|
b30e21166c | ||
|
|
e79bbcf589 | ||
|
|
baf44b3ecf | ||
|
|
7cd94f4c65 | ||
|
|
76bfc030cb | ||
|
|
cadcde79bc | ||
|
|
b60fc160de | ||
|
|
eef787c633 | ||
|
|
6bc8240941 | ||
|
|
e4bde274cb | ||
|
|
b7f5846dd8 | ||
|
|
8b791e0e47 | ||
|
|
7c7e4b56e2 | ||
|
|
c0355fd2e2 | ||
|
|
535398a3c6 | ||
|
|
e9e7788fed | ||
|
|
f0b5e51a45 |
@@ -1,2 +1,2 @@
|
||||
# Auto-generated file. DO NOT EDIT.
|
||||
1.1.4
|
||||
1.3.0
|
||||
|
||||
3
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
3
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@@ -77,9 +77,6 @@ body:
|
||||
What did you do for the bug to show up?
|
||||
|
||||
If you can't cause the bug to show up again reliably (and hence don't have a proper set of steps to give us), please still try to give as many details as possible on how you think you encountered the bug.
|
||||
|
||||
⚠️ Please **DO NOT** add links to SimpleMobileTools issues as they can be deleted at any time. Instead, copy-paste any useful information or instructions manually.
|
||||
|
||||
placeholder: |
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/config.yml
vendored
2
.github/ISSUE_TEMPLATE/config.yml
vendored
@@ -1,5 +1,5 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Questions
|
||||
url: https://github.com/FossifyOrg/Launcher/discussions
|
||||
url: https://github.com/orgs/FossifyOrg/discussions
|
||||
about: Please ask and answer questions here.
|
||||
2
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
2
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
@@ -33,8 +33,6 @@ body:
|
||||
label: Feature description
|
||||
description: |
|
||||
Explain how you want the app's look or behavior to change to suit your needs.
|
||||
|
||||
⚠️ Please **DO NOT** add links to SimpleMobileTools issues as they can be deleted at any time. Instead, copy-paste any useful information manually.
|
||||
validations:
|
||||
required: true
|
||||
|
||||
|
||||
58
CHANGELOG.md
58
CHANGELOG.md
@@ -1,5 +1,4 @@
|
||||
# Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||
@@ -7,79 +6,66 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [1.1.4] - 2025-06-28
|
||||
## [1.3.0] - 2025-09-01
|
||||
### Changed
|
||||
- The app will now prompt to set as default launcher on startup ([#230])
|
||||
- Updated translations
|
||||
|
||||
### Fixed
|
||||
- Fixed home screen hover events not working with TalkBack ([#234])
|
||||
|
||||
## [1.2.0] - 2025-07-15
|
||||
### Added
|
||||
- Option to show keyboard automatically in app drawer ([#106])
|
||||
|
||||
### Changed
|
||||
- Updated translations
|
||||
|
||||
## [1.1.4] - 2025-06-28
|
||||
### Fixed
|
||||
- Addressed crash on startup due to widgets ([#182])
|
||||
|
||||
## [1.1.3] - 2025-06-19
|
||||
|
||||
### Changed
|
||||
|
||||
- Updated translations
|
||||
|
||||
### Fixed
|
||||
|
||||
- Addressed frequently occurring crashes ([#6])
|
||||
|
||||
## [1.1.2] - 2025-06-06
|
||||
|
||||
### Changed
|
||||
|
||||
- Updated translations
|
||||
|
||||
### Fixed
|
||||
|
||||
- Clicking home screen app labels now works as expected ([#115])
|
||||
- Clicking home screen app labels now works as expected ([#115])
|
||||
|
||||
## [1.1.1] - 2025-05-14
|
||||
|
||||
### Changed
|
||||
|
||||
- Updated translations
|
||||
|
||||
### Removed
|
||||
|
||||
- Removed redundant launcher settings icon from the app drawer ([#51])
|
||||
|
||||
## [1.1.0] - 2025-03-19
|
||||
|
||||
### Added
|
||||
|
||||
- Added double tap to lock screen feature ([#63])
|
||||
|
||||
### Changed
|
||||
|
||||
- Added more translations
|
||||
|
||||
## [1.0.1] - 2025-01-01
|
||||
|
||||
### Changed
|
||||
|
||||
- Other minor bug fixes and improvements
|
||||
- Added more translations
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed scrolling performance issues ([#65])
|
||||
- Fixed various issues related to widgets ([#5], [#44], [#74])
|
||||
|
||||
## [1.0.0] - 2024-10-16
|
||||
|
||||
### Added
|
||||
|
||||
- Initial release
|
||||
|
||||
[Unreleased]: https://github.com/FossifyOrg/Launcher/compare/1.1.4...HEAD
|
||||
[1.1.4]: https://github.com/FossifyOrg/Launcher/compare/1.1.3...1.1.4
|
||||
[1.1.3]: https://github.com/FossifyOrg/Launcher/compare/1.1.2...1.1.3
|
||||
[1.1.2]: https://github.com/FossifyOrg/Launcher/compare/1.1.1...1.1.2
|
||||
[1.1.1]: https://github.com/FossifyOrg/Launcher/compare/1.1.0...1.1.1
|
||||
[1.1.0]: https://github.com/FossifyOrg/Launcher/compare/1.0.1...1.1.0
|
||||
[1.0.1]: https://github.com/FossifyOrg/Launcher/compare/1.0.0...1.0.1
|
||||
[1.0.0]: https://github.com/FossifyOrg/Launcher/releases/tag/1.0.0
|
||||
|
||||
[#5]: https://github.com/FossifyOrg/Launcher/issues/5
|
||||
[#6]: https://github.com/FossifyOrg/Launcher/issues/6
|
||||
[#44]: https://github.com/FossifyOrg/Launcher/issues/44
|
||||
@@ -87,5 +73,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
[#63]: https://github.com/FossifyOrg/Launcher/issues/63
|
||||
[#65]: https://github.com/FossifyOrg/Launcher/issues/65
|
||||
[#74]: https://github.com/FossifyOrg/Launcher/issues/74
|
||||
[#106]: https://github.com/FossifyOrg/Launcher/issues/106
|
||||
[#115]: https://github.com/FossifyOrg/Launcher/issues/115
|
||||
[#182]: https://github.com/FossifyOrg/Launcher/issues/182
|
||||
[#230]: https://github.com/FossifyOrg/Launcher/issues/230
|
||||
[#234]: https://github.com/FossifyOrg/Launcher/issues/234
|
||||
|
||||
[Unreleased]: https://github.com/FossifyOrg/Launcher/compare/1.3.0...HEAD
|
||||
[1.3.0]: https://github.com/FossifyOrg/Launcher/compare/1.2.0...1.3.0
|
||||
[1.2.0]: https://github.com/FossifyOrg/Launcher/compare/1.1.4...1.2.0
|
||||
[1.1.4]: https://github.com/FossifyOrg/Launcher/compare/1.1.3...1.1.4
|
||||
[1.1.3]: https://github.com/FossifyOrg/Launcher/compare/1.1.2...1.1.3
|
||||
[1.1.2]: https://github.com/FossifyOrg/Launcher/compare/1.1.1...1.1.2
|
||||
[1.1.1]: https://github.com/FossifyOrg/Launcher/compare/1.1.0...1.1.1
|
||||
[1.1.0]: https://github.com/FossifyOrg/Launcher/compare/1.0.1...1.1.0
|
||||
[1.0.1]: https://github.com/FossifyOrg/Launcher/compare/1.0.0...1.0.1
|
||||
[1.0.0]: https://github.com/FossifyOrg/Launcher/releases/tag/1.0.0
|
||||
|
||||
@@ -131,6 +131,9 @@ android {
|
||||
|
||||
detekt {
|
||||
baseline = file("detekt-baseline.xml")
|
||||
config.setFrom("$rootDir/detekt.yml")
|
||||
buildUponDefaultConfig = true
|
||||
allRules = false
|
||||
}
|
||||
|
||||
dependencies {
|
||||
@@ -138,4 +141,5 @@ dependencies {
|
||||
|
||||
implementation(libs.bundles.room)
|
||||
ksp(libs.androidx.room.compiler)
|
||||
detektPlugins(libs.compose.detekt)
|
||||
}
|
||||
|
||||
@@ -24,21 +24,10 @@
|
||||
<ID>ForbiddenComment:AllAppsFragment.kt$AllAppsFragment$// TODO: Use WindowInsets API</ID>
|
||||
<ID>LargeClass:HomeScreenGrid.kt$HomeScreenGrid : RelativeLayout</ID>
|
||||
<ID>LargeClass:MainActivity.kt$MainActivity : SimpleActivityFlingListener</ID>
|
||||
<ID>LongMethod:Activity.kt$fun Activity.handleGridItemPopupMenu( anchorView: View, gridItem: HomeScreenGridItem, isOnAllAppsFragment: Boolean, listener: ItemMenuListener, ): PopupMenu</ID>
|
||||
<ID>LongMethod:HomeScreenGrid.kt$HomeScreenGrid$@SuppressLint("ClickableViewAccessibility") fun widgetLongPressed(item: HomeScreenGridItem)</ID>
|
||||
<ID>LongMethod:HomeScreenGrid.kt$HomeScreenGrid$fun draggedItemMoved(x: Int, y: Int)</ID>
|
||||
<ID>LongMethod:HomeScreenGrid.kt$HomeScreenGrid$fun drawInto(canvas: Canvas)</ID>
|
||||
<ID>LongMethod:HomeScreenGrid.kt$HomeScreenGrid$private fun addAppIconOrShortcut( draggedHomeGridItem: HomeScreenGridItem?, xIndex: Int, yIndex: Int, newParentId: Long? = null, toFolderEnd: Boolean = true, )</ID>
|
||||
<ID>LongMethod:HomeScreenGrid.kt$HomeScreenGrid$private fun addAppIconOrShortcut()</ID>
|
||||
<ID>LongMethod:HomeScreenGrid.kt$HomeScreenGrid$private fun addWidget()</ID>
|
||||
<ID>LongMethod:HomeScreenGrid.kt$HomeScreenGrid$private fun moveItem()</ID>
|
||||
<ID>LongMethod:MainActivity.kt$MainActivity$override fun onTouchEvent(event: MotionEvent?): Boolean</ID>
|
||||
<ID>LongMethod:MainActivity.kt$MainActivity$private fun getDefaultAppPackages(appLaunchers: ArrayList<AppLauncher>)</ID>
|
||||
<ID>LongMethod:MyAppWidgetResizeFrame.kt$MyAppWidgetResizeFrame$override fun onTouchEvent(event: MotionEvent?): Boolean</ID>
|
||||
<ID>LongMethod:WidgetsFragment.kt$WidgetsFragment$@SuppressLint("WrongConstant") fun getAppWidgets()</ID>
|
||||
<ID>LongParameterList:HomeScreenGrid.kt$AnimatedGridPager$( private val getMaxPage: () -> Int, private val redrawGrid: () -> Unit, private val getWidth: () -> Int, private val getHandler: () -> Handler, private val getNextPageBound: () -> Int, private val getPrevPageBound: () -> Int, private val pageChangeStarted: () -> Unit, )</ID>
|
||||
<ID>LongParameterList:HomeScreenGridItemsDao.kt$HomeScreenGridItemsDao$(left: Int, top: Int, right: Int, bottom: Int, page: Int, docked: Boolean, parentId: Long?, id: Long)</ID>
|
||||
<ID>LongParameterList:MyAppWidgetResizeFrame.kt$MyAppWidgetResizeFrame$( coords: Rect, cellWidth: Int, cellHeight: Int, sideMargins: Rect, gridItem: HomeScreenGridItem, allGridItems: ArrayList<HomeScreenGridItem> )</ID>
|
||||
<ID>LoopWithTooManyJumpStatements:MainActivity.kt$MainActivity$for</ID>
|
||||
<ID>MagicNumber:Context.kt$30</ID>
|
||||
<ID>MagicNumber:Context.kt$70.0</ID>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<issues format="6" by="lint 8.10.1" type="baseline" client="gradle" dependencies="false" name="AGP (8.10.1)" variant="all" version="8.10.1">
|
||||
<issues format="6" by="lint 8.11.1" type="baseline" client="gradle" dependencies="false" name="AGP (8.11.1)" variant="all" version="8.11.1">
|
||||
|
||||
<issue
|
||||
id="NewApi"
|
||||
@@ -47,22 +47,11 @@
|
||||
errorLine1="app-build-targetSDK = "34""
|
||||
errorLine2=" ~~~~">
|
||||
<location
|
||||
file="$HOME/Projects/Fossify/FossifyOrg/Launcher/gradle/libs.versions.toml"
|
||||
line="16"
|
||||
file="$HOME/work/Launcher/Launcher/gradle/libs.versions.toml"
|
||||
line="17"
|
||||
column="23"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="UnusedAttribute"
|
||||
message="Attribute `localeConfig` is only used in API level 33 and higher (current min is 26)"
|
||||
errorLine1=" android:localeConfig="@xml/locale_config""
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/AndroidManifest.xml"
|
||||
line="31"
|
||||
column="9"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="CustomSplashScreen"
|
||||
message="The application should not provide its own launch screen"
|
||||
@@ -76,67 +65,34 @@
|
||||
|
||||
<issue
|
||||
id="AndroidGradlePluginVersion"
|
||||
message="A newer version of Gradle than 8.11.1 is available: 8.14.2"
|
||||
errorLine1="distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip"
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
message="A newer version of Gradle than 8.13 is available: 8.14.3"
|
||||
errorLine1="distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip"
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="$HOME/Projects/Fossify/FossifyOrg/Launcher/gradle/wrapper/gradle-wrapper.properties"
|
||||
file="$HOME/work/Launcher/Launcher/gradle/wrapper/gradle-wrapper.properties"
|
||||
line="3"
|
||||
column="17"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="GradleDependency"
|
||||
message="A newer version of androidx.room:room-compiler than 2.7.1 is available: 2.7.2"
|
||||
errorLine1="room = "2.7.1""
|
||||
errorLine2=" ~~~~~~~">
|
||||
id="AndroidGradlePluginVersion"
|
||||
message="A newer version of com.android.application than 8.11.1 is available: 8.12.2"
|
||||
errorLine1="gradlePlugins-agp = "8.11.1""
|
||||
errorLine2=" ~~~~~~~~">
|
||||
<location
|
||||
file="$HOME/Projects/Fossify/FossifyOrg/Launcher/gradle/libs.versions.toml"
|
||||
line="9"
|
||||
column="8"/>
|
||||
file="$HOME/work/Launcher/Launcher/gradle/libs.versions.toml"
|
||||
line="14"
|
||||
column="21"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="GradleDependency"
|
||||
message="A newer version of androidx.room:room-ktx than 2.7.1 is available: 2.7.2"
|
||||
errorLine1="room = "2.7.1""
|
||||
errorLine2=" ~~~~~~~">
|
||||
<location
|
||||
file="$HOME/Projects/Fossify/FossifyOrg/Launcher/gradle/libs.versions.toml"
|
||||
line="9"
|
||||
column="8"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="GradleDependency"
|
||||
message="A newer version of androidx.room:room-runtime than 2.7.1 is available: 2.7.2"
|
||||
errorLine1="room = "2.7.1""
|
||||
errorLine2=" ~~~~~~~">
|
||||
<location
|
||||
file="$HOME/Projects/Fossify/FossifyOrg/Launcher/gradle/libs.versions.toml"
|
||||
line="9"
|
||||
column="8"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="GradleDependency"
|
||||
message="A newer version of org.fossify:commons than 3.0.5 is available: 3.1.0"
|
||||
errorLine1="commons = "3.0.5""
|
||||
errorLine2=" ~~~~~~~">
|
||||
<location
|
||||
file="$HOME/Projects/Fossify/FossifyOrg/Launcher/gradle/libs.versions.toml"
|
||||
line="11"
|
||||
column="11"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="GradleDependency"
|
||||
message="A newer version of `compileSdkVersion` than 34 is available: 35"
|
||||
message="A newer version of `compileSdkVersion` than 34 is available: 36"
|
||||
errorLine1="app-build-compileSDKVersion = "34""
|
||||
errorLine2=" ~~~~">
|
||||
<location
|
||||
file="$HOME/Projects/Fossify/FossifyOrg/Launcher/gradle/libs.versions.toml"
|
||||
line="15"
|
||||
file="$HOME/work/Launcher/Launcher/gradle/libs.versions.toml"
|
||||
line="16"
|
||||
column="31"/>
|
||||
</issue>
|
||||
|
||||
@@ -147,43 +103,21 @@
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/AndroidManifest.xml"
|
||||
line="48"
|
||||
line="47"
|
||||
column="13"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="DiscouragedApi"
|
||||
message="Should not restrict activity to fixed orientation. This may not be suitable for different form factors, causing the app to be letterboxed."
|
||||
message="Fixed screen orientations will be ignored in most cases, starting from Android 16. Android is moving toward a model where apps are expected to adapt to various orientations, display sizes, and aspect ratios."
|
||||
errorLine1=" android:screenOrientation="portrait""
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/AndroidManifest.xml"
|
||||
line="48"
|
||||
line="47"
|
||||
column="13"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="UseRequiresApi"
|
||||
message="Use `@RequiresApi(Build.VERSION_CODES.Q) instead of `@TargetApi` to propagate the requirement to callers of `getRoleManager`"
|
||||
errorLine1="@get:TargetApi(Build.VERSION_CODES.Q)"
|
||||
errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/kotlin/org/fossify/home/extensions/Context.kt"
|
||||
line="34"
|
||||
column="1"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="UseRequiresApi"
|
||||
message="Use `@RequiresApi(Build.VERSION_CODES.Q) instead of `@TargetApi` to propagate the requirement to callers of `isDefaultLauncher`"
|
||||
errorLine1="@TargetApi(Build.VERSION_CODES.Q)"
|
||||
errorLine2="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/kotlin/org/fossify/home/extensions/Context.kt"
|
||||
line="79"
|
||||
column="1"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="MissingTranslation"
|
||||
message=""app_launcher_name" is not translated in "fil" (Filipino; Pilipino), "lt" (Lithuanian), "lv" (Latvian), "ms" (Malay), "en" (English), "is" (Icelandic), "my" (Burmese), "ar" (Arabic), "ne" (Nepali), "az" (Azerbaijani), "fa" (Persian), "nn" (Norwegian Nynorsk), "be" (Belarusian), "bn" (Bangla), "br" (Breton), "si" (Sinhala), "ltg", "kn" (Kannada), "or" (Odia), "ko" (Korean), "kr" (Kanuri), "sat" (Santali), "ta" (Tamil), "cr" (Cree), "te" (Telugu), "th" (Thai), "cy" (Welsh), "ckb""
|
||||
@@ -327,6 +261,17 @@
|
||||
column="13"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="MissingTranslation"
|
||||
message=""auto_show_keyboard_in_app_drawer" is not translated in "hi" (Hindi), "pt" (Portuguese), "fil" (Filipino; Pilipino), "lt" (Lithuanian), "hr" (Croatian), "lv" (Latvian), "hu" (Hungarian), "uk" (Ukrainian), "ia" (Interlingua), "mk" (Macedonian), "ml" (Malayalam), "in" (Indonesian), "ms" (Malay), "el" (Greek), "en" (English), "eo" (Esperanto), "is" (Icelandic), "it" (Italian), "my" (Burmese), "es" (Spanish), "iw" (Hebrew), "zh" (Chinese), "et" (Estonian), "eu" (Basque), "ar" (Arabic), "vi" (Vietnamese), "nb" (Norwegian Bokmål), "ja" (Japanese), "ne" (Nepali), "az" (Azerbaijani), "fa" (Persian), "ro" (Romanian), "nl" (Dutch), "nn" (Norwegian Nynorsk), "be" (Belarusian), "fi" (Finnish), "ru" (Russian), "bg" (Bulgarian), "bn" (Bangla), "fr" (French), "br" (Breton), "bs" (Bosnian), "si" (Sinhala), "sk" (Slovak), "sl" (Slovenian), "ga" (Irish), "zgh" (Standard Moroccan Tamazight), "ltg", "sr" (Serbian), "kn" (Kannada), "or" (Odia), "sv" (Swedish), "ko" (Korean), "gl" (Galician), "kr" (Kanuri), "sat" (Santali), "ta" (Tamil), "cr" (Cree), "pa" (Punjabi), "te" (Telugu), "th" (Thai), "cy" (Welsh), "ckb", "da" (Danish), "tr" (Turkish)"
|
||||
errorLine1=" <string name="auto_show_keyboard_in_app_drawer">Automatically show keyboard in drawer</string>"
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/res/values/strings.xml"
|
||||
line="15"
|
||||
column="13"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="MissingTranslation"
|
||||
message=""home_screen_settings" is not translated in "fil" (Filipino; Pilipino), "lt" (Lithuanian), "lv" (Latvian), "mk" (Macedonian), "ml" (Malayalam), "ms" (Malay), "en" (English), "is" (Icelandic), "my" (Burmese), "ar" (Arabic), "nb" (Norwegian Bokmål), "ne" (Nepali), "az" (Azerbaijani), "fa" (Persian), "nn" (Norwegian Nynorsk), "be" (Belarusian), "bg" (Bulgarian), "bn" (Bangla), "br" (Breton), "bs" (Bosnian), "si" (Sinhala), "sl" (Slovenian), "zgh" (Standard Moroccan Tamazight), "ltg", "sr" (Serbian), "kn" (Kannada), "or" (Odia), "ko" (Korean), "kr" (Kanuri), "sat" (Santali), "ta" (Tamil), "cr" (Cree), "pa" (Punjabi), "te" (Telugu), "th" (Thai), "cy" (Welsh), "da" (Danish)"
|
||||
@@ -334,7 +279,7 @@
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/res/values/strings.xml"
|
||||
line="15"
|
||||
line="16"
|
||||
column="13"/>
|
||||
</issue>
|
||||
|
||||
@@ -345,7 +290,7 @@
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/res/values/strings.xml"
|
||||
line="16"
|
||||
line="17"
|
||||
column="13"/>
|
||||
</issue>
|
||||
|
||||
@@ -356,7 +301,7 @@
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/res/values/strings.xml"
|
||||
line="17"
|
||||
line="18"
|
||||
column="13"/>
|
||||
</issue>
|
||||
|
||||
@@ -367,7 +312,7 @@
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/res/values/strings.xml"
|
||||
line="18"
|
||||
line="19"
|
||||
column="13"/>
|
||||
</issue>
|
||||
|
||||
@@ -378,7 +323,7 @@
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/res/values/strings.xml"
|
||||
line="19"
|
||||
line="20"
|
||||
column="13"/>
|
||||
</issue>
|
||||
|
||||
@@ -422,28 +367,6 @@
|
||||
file="src/main/res/mipmap-anydpi-v26"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="VectorPath"
|
||||
message="Very long vector path (864 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
|
||||
errorLine1=" <path android:fillColor="#ffffff" android:pathData="M200.501 347.513q-9.168 0-15.694-6.526-6.527-6.527-6.527-15.694v-79.43l-22.22 16.938q-3.885 2.774-8.331 2.356-4.446-0.418-7.22-4.303t-2.223-8.331q0.551-4.446 4.446-7.22l99.703-76.37q3.059-2.223 6.526-3.334 3.467-1.111 7.077-1.111t7.077 1.111q3.467 1.111 6.526 3.334l30.828 23.608v-6.108q0-6.944 4.864-11.799 4.864-4.864 11.799-4.864 6.944 0 11.799 4.864 4.864 4.864 4.864 11.799v31.663l35.549 27.217q3.61 2.774 4.303 7.22 0.694 4.446-2.08 8.331t-7.22 4.303q-4.446 0.418-8.331-2.356l-22.22-16.938v79.43q0 9.168-6.526 15.694-6.517 6.517-15.675 6.517H300.49q-9.168 0-15.694-6.526-6.527-6.527-6.527-15.694v-22.22q0-9.168-6.526-15.694-6.527-6.527-15.694-6.527-9.168 0-15.694 6.526-6.527 6.526-6.527 15.694v22.22q0 9.168-6.526 15.694-6.527 6.527-15.694 6.527zm33.326-110.817h44.431q0-8.882-6.669-14.582-6.669-5.69-15.552-5.69-8.882 0-15.552 5.69-6.669 5.69-6.669 14.582z"/>"
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/res/drawable/ic_launcher_foreground.xml"
|
||||
line="2"
|
||||
column="57"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="VectorPath"
|
||||
message="Very long vector path (864 characters), which is bad for performance. Considering reducing precision, removing minor details or rasterizing vector."
|
||||
errorLine1=" <path android:pathData="M200.501 347.513q-9.168 0-15.694-6.526-6.527-6.527-6.527-15.694v-79.43l-22.22 16.938q-3.885 2.774-8.331 2.356-4.446-0.418-7.22-4.303t-2.223-8.331q0.551-4.446 4.446-7.22l99.703-76.37q3.059-2.223 6.526-3.334 3.467-1.111 7.077-1.111t7.077 1.111q3.467 1.111 6.526 3.334l30.828 23.608v-6.108q0-6.944 4.864-11.799 4.864-4.864 11.799-4.864 6.944 0 11.799 4.864 4.864 4.864 4.864 11.799v31.663l35.549 27.217q3.61 2.774 4.303 7.22 0.694 4.446-2.08 8.331t-7.22 4.303q-4.446 0.418-8.331-2.356l-22.22-16.938v79.43q0 9.168-6.526 15.694-6.517 6.517-15.675 6.517H300.49q-9.168 0-15.694-6.526-6.527-6.527-6.527-15.694v-22.22q0-9.168-6.526-15.694-6.527-6.527-15.694-6.527-9.168 0-15.694 6.526-6.527 6.526-6.527 15.694v22.22q0 9.168-6.526 15.694-6.527 6.527-15.694 6.527zm33.326-110.817h44.431q0-8.882-6.669-14.582-6.669-5.69-15.552-5.69-8.882 0-15.552 5.69-6.669 5.69-6.669 14.582z" android:fillColor="#ffffff"/>"
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/res/drawable/ic_launcher_monochrome.xml"
|
||||
line="2"
|
||||
column="29"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="Overdraw"
|
||||
message="Possible overdraw: Root element paints background `?attr/selectableItemBackground` with a theme that also paints a background (inferred theme is `@style/AppTheme`)"
|
||||
@@ -609,6 +532,17 @@
|
||||
column="31"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="UseKtx"
|
||||
message="Use the KTX extension function `SharedPreferences.edit` instead?"
|
||||
errorLine1=" set(autoShowKeyboardInAppDrawer) = prefs.edit()"
|
||||
errorLine2=" ~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/kotlin/org/fossify/home/helpers/Config.kt"
|
||||
line="38"
|
||||
column="44"/>
|
||||
</issue>
|
||||
|
||||
<issue
|
||||
id="UseKtx"
|
||||
message="Use the KTX extension function `Int.toDrawable` instead?"
|
||||
@@ -693,7 +627,7 @@
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/kotlin/org/fossify/home/activities/SettingsActivity.kt"
|
||||
line="165"
|
||||
line="162"
|
||||
column="50"/>
|
||||
</issue>
|
||||
|
||||
@@ -704,7 +638,7 @@
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/kotlin/org/fossify/home/activities/SettingsActivity.kt"
|
||||
line="200"
|
||||
line="198"
|
||||
column="51"/>
|
||||
</issue>
|
||||
|
||||
@@ -715,7 +649,7 @@
|
||||
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
|
||||
<location
|
||||
file="src/main/kotlin/org/fossify/home/activities/SettingsActivity.kt"
|
||||
line="226"
|
||||
line="224"
|
||||
column="54"/>
|
||||
</issue>
|
||||
|
||||
|
||||
@@ -21,6 +21,7 @@ import android.graphics.drawable.Drawable
|
||||
import android.os.Bundle
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.provider.Settings
|
||||
import android.provider.Telephony
|
||||
import android.telecom.TelecomManager
|
||||
import android.view.ContextThemeWrapper
|
||||
@@ -33,6 +34,7 @@ import android.view.animation.DecelerateInterpolator
|
||||
import android.widget.PopupMenu
|
||||
import androidx.core.graphics.drawable.toBitmap
|
||||
import androidx.core.graphics.drawable.toDrawable
|
||||
import androidx.core.net.toUri
|
||||
import androidx.core.view.GestureDetectorCompat
|
||||
import androidx.core.view.WindowCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
@@ -51,6 +53,7 @@ import org.fossify.commons.extensions.onGlobalLayout
|
||||
import org.fossify.commons.extensions.performHapticFeedback
|
||||
import org.fossify.commons.extensions.realScreenSize
|
||||
import org.fossify.commons.extensions.showErrorToast
|
||||
import org.fossify.commons.extensions.showKeyboard
|
||||
import org.fossify.commons.extensions.toast
|
||||
import org.fossify.commons.extensions.viewBinding
|
||||
import org.fossify.commons.helpers.DARK_GREY
|
||||
@@ -94,7 +97,6 @@ import org.fossify.home.receivers.LockDeviceAdminReceiver
|
||||
import kotlin.math.abs
|
||||
import kotlin.math.max
|
||||
import kotlin.math.min
|
||||
import androidx.core.net.toUri
|
||||
|
||||
class MainActivity : SimpleActivity(), FlingListener {
|
||||
private var mTouchDownX = -1
|
||||
@@ -163,6 +165,10 @@ class MainActivity : SimpleActivity(), FlingListener {
|
||||
clickedGridItem = it
|
||||
)
|
||||
}
|
||||
|
||||
if (!isDefaultLauncher()) {
|
||||
requestHomeRole()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onNewIntent(intent: Intent) {
|
||||
@@ -581,6 +587,16 @@ class MainActivity : SimpleActivity(), FlingListener {
|
||||
null
|
||||
)
|
||||
|
||||
if (
|
||||
fragment is AllAppsFragmentBinding
|
||||
&& config.showSearchBar
|
||||
&& config.autoShowKeyboardInAppDrawer
|
||||
) {
|
||||
fragment.root.postDelayed({
|
||||
showKeyboard(fragment.searchBar.binding.topToolbarSearch)
|
||||
}, animationDuration)
|
||||
}
|
||||
|
||||
Handler(Looper.getMainLooper()).postDelayed({
|
||||
updateStatusBarIcons()
|
||||
}, animationDuration)
|
||||
@@ -764,7 +780,7 @@ class MainActivity : SimpleActivity(), FlingListener {
|
||||
Gravity.TOP or Gravity.END
|
||||
).apply {
|
||||
inflate(R.menu.menu_home_screen)
|
||||
menu.findItem(R.id.set_as_default).isVisible = isQPlus() && !isDefaultLauncher()
|
||||
menu.findItem(R.id.set_as_default).isVisible = !isDefaultLauncher()
|
||||
setOnMenuItemClickListener { item ->
|
||||
when (item.itemId) {
|
||||
R.id.widgets -> showWidgetsFragment()
|
||||
@@ -830,6 +846,18 @@ class MainActivity : SimpleActivity(), FlingListener {
|
||||
}
|
||||
|
||||
private fun launchSetAsDefaultIntent() {
|
||||
val intents = listOf(
|
||||
Intent(Settings.ACTION_HOME_SETTINGS),
|
||||
Intent(Settings.ACTION_MANAGE_DEFAULT_APPS_SETTINGS),
|
||||
Intent(Settings.ACTION_SETTINGS)
|
||||
)
|
||||
val intent = intents.firstOrNull { it.resolveActivity(packageManager) != null }
|
||||
if (intent != null) {
|
||||
startActivity(intent)
|
||||
}
|
||||
}
|
||||
|
||||
private fun requestHomeRole() {
|
||||
if (isQPlus()) {
|
||||
startActivityForResult(
|
||||
roleManager.createRequestRoleIntent(RoleManager.ROLE_HOME),
|
||||
|
||||
@@ -6,13 +6,9 @@ import android.content.ComponentName
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import org.fossify.commons.dialogs.RadioGroupDialog
|
||||
import org.fossify.commons.extensions.beGoneIf
|
||||
import org.fossify.commons.extensions.beVisibleIf
|
||||
import org.fossify.commons.extensions.getCustomizeColorsString
|
||||
import org.fossify.commons.extensions.getProperPrimaryColor
|
||||
import org.fossify.commons.extensions.isOrWasThankYouInstalled
|
||||
import org.fossify.commons.extensions.launchMoreAppsFromUsIntent
|
||||
import org.fossify.commons.extensions.launchPurchaseThankYouIntent
|
||||
import org.fossify.commons.extensions.updateTextColors
|
||||
import org.fossify.commons.extensions.viewBinding
|
||||
import org.fossify.commons.helpers.NavigationIcon
|
||||
@@ -54,11 +50,11 @@ class SettingsActivity : SimpleActivity() {
|
||||
setupToolbar(binding.settingsToolbar, NavigationIcon.Arrow)
|
||||
refreshMenuItems()
|
||||
|
||||
setupPurchaseThankYou()
|
||||
setupCustomizeColors()
|
||||
setupUseEnglish()
|
||||
setupDoubleTapToLock()
|
||||
setupCloseAppDrawerOnOtherAppOpen()
|
||||
setupOpenKeyboardOnAppDrawer()
|
||||
setupDrawerColumnCount()
|
||||
setupDrawerSearchBar()
|
||||
setupHomeRowCount()
|
||||
@@ -95,15 +91,7 @@ class SettingsActivity : SimpleActivity() {
|
||||
}
|
||||
}
|
||||
|
||||
private fun setupPurchaseThankYou() {
|
||||
binding.settingsPurchaseThankYouHolder.beGoneIf(isOrWasThankYouInstalled())
|
||||
binding.settingsPurchaseThankYouHolder.setOnClickListener {
|
||||
launchPurchaseThankYouIntent()
|
||||
}
|
||||
}
|
||||
|
||||
private fun setupCustomizeColors() {
|
||||
binding.settingsColorCustomizationLabel.text = getCustomizeColorsString()
|
||||
binding.settingsColorCustomizationHolder.setOnClickListener {
|
||||
startCustomizationActivity()
|
||||
}
|
||||
@@ -152,6 +140,15 @@ class SettingsActivity : SimpleActivity() {
|
||||
}
|
||||
}
|
||||
|
||||
private fun setupOpenKeyboardOnAppDrawer() {
|
||||
binding.settingsOpenKeyboardOnAppDrawerHolder.beVisibleIf(config.showSearchBar)
|
||||
binding.settingsOpenKeyboardOnAppDrawer.isChecked = config.autoShowKeyboardInAppDrawer
|
||||
binding.settingsOpenKeyboardOnAppDrawerHolder.setOnClickListener {
|
||||
binding.settingsOpenKeyboardOnAppDrawer.toggle()
|
||||
config.autoShowKeyboardInAppDrawer = binding.settingsOpenKeyboardOnAppDrawer.isChecked
|
||||
}
|
||||
}
|
||||
|
||||
private fun setupCloseAppDrawerOnOtherAppOpen() {
|
||||
binding.settingsCloseAppDrawerOnOtherApp.isChecked = config.closeAppDrawer
|
||||
binding.settingsCloseAppDrawerOnOtherAppHolder.setOnClickListener {
|
||||
@@ -192,6 +189,7 @@ class SettingsActivity : SimpleActivity() {
|
||||
binding.settingsDrawerSearchHolder.setOnClickListener {
|
||||
binding.settingsShowSearchBar.toggle()
|
||||
config.showSearchBar = binding.settingsShowSearchBar.isChecked
|
||||
binding.settingsOpenKeyboardOnAppDrawerHolder.beVisibleIf(config.showSearchBar)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,14 +1,18 @@
|
||||
package org.fossify.home.extensions
|
||||
|
||||
import android.annotation.TargetApi
|
||||
import android.app.role.RoleManager
|
||||
import android.appwidget.AppWidgetProviderInfo
|
||||
import android.content.ComponentName
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.content.IntentFilter
|
||||
import android.content.pm.LauncherApps
|
||||
import android.graphics.drawable.Drawable
|
||||
import android.os.Build
|
||||
import android.os.Process
|
||||
import android.util.Size
|
||||
import androidx.annotation.RequiresApi
|
||||
import org.fossify.commons.helpers.isQPlus
|
||||
import org.fossify.commons.helpers.isSPlus
|
||||
import org.fossify.home.databases.AppsDatabase
|
||||
import org.fossify.home.helpers.Config
|
||||
@@ -31,7 +35,7 @@ val Context.homeScreenGridItemsDB: HomeScreenGridItemsDao
|
||||
val Context.hiddenIconsDB: HiddenIconsDao
|
||||
get() = AppsDatabase.getInstance(applicationContext).HiddenIconsDao()
|
||||
|
||||
@get:TargetApi(Build.VERSION_CODES.Q)
|
||||
@get:RequiresApi(Build.VERSION_CODES.Q)
|
||||
val Context.roleManager: RoleManager
|
||||
get() = getSystemService(RoleManager::class.java)
|
||||
|
||||
@@ -76,9 +80,20 @@ fun Context.getCellCount(size: Int): Int {
|
||||
return max(tiles, 1)
|
||||
}
|
||||
|
||||
@TargetApi(Build.VERSION_CODES.Q)
|
||||
fun Context.isDefaultLauncher(): Boolean {
|
||||
return with(roleManager) {
|
||||
isRoleAvailable(RoleManager.ROLE_HOME) && isRoleHeld(RoleManager.ROLE_HOME)
|
||||
return if (isQPlus()) {
|
||||
with(roleManager) {
|
||||
isRoleAvailable(RoleManager.ROLE_HOME) && isRoleHeld(RoleManager.ROLE_HOME)
|
||||
}
|
||||
} else {
|
||||
val filters = ArrayList<IntentFilter>()
|
||||
val activities = ArrayList<ComponentName>()
|
||||
@Suppress("DEPRECATION")
|
||||
packageManager.getPreferredActivities(filters, activities, null)
|
||||
return activities.indices.any { i ->
|
||||
activities[i].packageName == packageName &&
|
||||
filters[i].hasAction(Intent.ACTION_MAIN) &&
|
||||
filters[i].hasCategory(Intent.CATEGORY_HOME)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,4 +32,9 @@ class Config(context: Context) : BaseConfig(context) {
|
||||
var closeAppDrawer: Boolean
|
||||
get() = prefs.getBoolean(CLOSE_APP_DRAWER, false)
|
||||
set(closeAppDrawer) = prefs.edit().putBoolean(CLOSE_APP_DRAWER, closeAppDrawer).apply()
|
||||
|
||||
var autoShowKeyboardInAppDrawer: Boolean
|
||||
get() = prefs.getBoolean(AUTO_SHOW_KEYBOARD_IN_APP_DRAWER, false)
|
||||
set(autoShowKeyboardInAppDrawer) = prefs.edit()
|
||||
.putBoolean(AUTO_SHOW_KEYBOARD_IN_APP_DRAWER, autoShowKeyboardInAppDrawer).apply()
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ const val HOME_COLUMN_COUNT = "home_column_count"
|
||||
const val DRAWER_COLUMN_COUNT = "drawer_column_count"
|
||||
const val SHOW_SEARCH_BAR = "show_search_bar"
|
||||
const val CLOSE_APP_DRAWER = "close_app_drawer"
|
||||
const val AUTO_SHOW_KEYBOARD_IN_APP_DRAWER = "auto_show_keyboard_in_app_drawer"
|
||||
|
||||
// default home screen grid size
|
||||
const val ROW_COUNT = 6
|
||||
|
||||
@@ -201,6 +201,11 @@ class HomeScreenGrid(context: Context, attrs: AttributeSet, defStyle: Int) :
|
||||
fetchGridItems()
|
||||
}
|
||||
|
||||
override fun dispatchHoverEvent(event: MotionEvent): Boolean {
|
||||
if (accessibilityHelper.dispatchHoverEvent(event)) return true
|
||||
return super.dispatchHoverEvent(event)
|
||||
}
|
||||
|
||||
override fun onFinishInflate() {
|
||||
super.onFinishInflate()
|
||||
binding = HomeScreenGridBinding.bind(this)
|
||||
|
||||
@@ -64,21 +64,10 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/general_settings" />
|
||||
|
||||
<RelativeLayout
|
||||
<org.fossify.commons.views.PurchaseThankYouItem
|
||||
android:id="@+id/settings_purchase_thank_you_holder"
|
||||
style="@style/SettingsHolderTextViewOneLinerStyle"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/ripple_background">
|
||||
|
||||
<org.fossify.commons.views.MyTextView
|
||||
android:id="@+id/settings_purchase_thank_you"
|
||||
style="@style/SettingsTextLabelStyle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/purchase_simple_thank_you" />
|
||||
|
||||
</RelativeLayout>
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/settings_use_english_holder"
|
||||
@@ -203,6 +192,22 @@
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/settings_open_keyboard_on_app_drawer_holder"
|
||||
style="@style/SettingsHolderSwitchStyle"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/ripple_background">
|
||||
|
||||
<org.fossify.commons.views.MyMaterialSwitch
|
||||
android:id="@+id/settings_open_keyboard_on_app_drawer"
|
||||
style="@style/SettingsSwitchStyle"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/auto_show_keyboard_in_app_drawer" />
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/settings_close_app_drawer_on_other_app_holder"
|
||||
style="@style/SettingsHolderSwitchStyle"
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Toc doble per a bloquejar la pantalla</string>
|
||||
<string name="lock_device_admin_hint">Per a activar la funció de toc doble per a bloquejar la pantalla, heu de concedir permís d\'administració. Tingueu en compte que l\'aplicació no es pot desinstal·lar fins que no s\'elimini aquest permís.</string>
|
||||
<string name="lock_device_admin_warning">Desactivant el permís d\'administració es desactivarà la funció de toc doble per a bloquejar la pantalla.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Mostra automàticament el teclat al calaix</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_hint">Chcete-li povolit funkci zamykání obrazovky dvojitým klepnutím, musíte udělit oprávnění správce. Upozornění: aplikaci nelze odinstalovat, dokud toto oprávnění neodeberete.</string>
|
||||
<string name="lock_device_admin_warning">Deaktivací oprávnění správce zakážete funkci zamykání obrazovky dvojitým klepnutím.</string>
|
||||
<string name="double_tap_to_lock">Klepněte dvakrát pro zamknutí obrazovky</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Automaticky zobrazit klávesnici v seznamu aplikací</string>
|
||||
</resources>
|
||||
|
||||
@@ -2,4 +2,20 @@
|
||||
<resources>
|
||||
<string name="app_launcher_name">Launcher</string>
|
||||
<string name="launcher_settings">Launcher Indstillinger</string>
|
||||
</resources>
|
||||
<string name="app_info">App info</string>
|
||||
<string name="touch_hold_widget">Tryk længe på widgetten, og træk den hen over din startskærm</string>
|
||||
<string name="uninstall">Afinstaller</string>
|
||||
<string name="hide_icon">Skjul ikon</string>
|
||||
<string name="add_hidden_icons">Tilføj skjulte ikoner</string>
|
||||
<string name="manage_hidden_icons">Administrer skjulte ikoner</string>
|
||||
<string name="hidden_icons">Skjulte ikoner</string>
|
||||
<string name="hidden_icons_placeholder">Nogle apps kan ikke afinstalleres på grund af systembegrænsninger, men du kan i det mindste skjule deres ikoner for at undgå at se dem.</string>
|
||||
<string name="app_drawer_settings">App-skuffe</string>
|
||||
<string name="close_app_drawer_on_app_open">Luk app-skuffen, når du åbner en app</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Vis automatisk tastatur i skuffen</string>
|
||||
<string name="home_screen_settings">Startskærm</string>
|
||||
<string name="widget_too_big">Widgeten er for stor til den nuværende størrelse på startskærmen</string>
|
||||
<string name="double_tap_to_lock">Dobbelttryk for at låse skærmen</string>
|
||||
<string name="lock_device_admin_hint">For at aktivere funktionen dobbelttryk for at låse skærmen, skal du give administratortilladelse. Bemærk, at appen ikke kan afinstalleres, før denne tilladelse er fjernet.</string>
|
||||
<string name="lock_device_admin_warning">Deaktivering af administratortilladelser vil deaktivere funktionen dobbelttryk for at låse skærmen.</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_hint">Um die Funktion „Doppeltes Antippen zum Sperren des Bildschirms“ zu aktivieren, musst du die Administratorberechtigung erteilen. Beachte, dass die App nicht deinstalliert werden kann, bis diese Berechtigung entfernt wird.</string>
|
||||
<string name="double_tap_to_lock">Doppeltes Antippen zum Sperren des Bildschirms</string>
|
||||
<string name="lock_device_admin_warning">Durch Entfernen der Administratorberechtigung wird die Funktion „Doppeltes Antippen zum Sperren des Bildschirms“ deaktiviert.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Keyboard automatisch in App-Schublade anzeigen</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_hint">Por aktivigi la funkcion de ŝlosado de ekrano per duobla frapeto, endas koncedi administrajn permesojn. Notu, ke ne eblas malinstali la aplikaĵon antaŭ senvalidigi tiujn permesojn.</string>
|
||||
<string name="lock_device_admin_warning">Malŝalto de administraj permesoj malŝaltos la funkcion de ŝlosado de ekrano per duobla frapeto.</string>
|
||||
<string name="app_info">Aplikaĵaj informoj</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Aŭtomate montri klavaron en la aplikaĵa tirkesto</string>
|
||||
</resources>
|
||||
|
||||
@@ -1,2 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources></resources>
|
||||
<resources>
|
||||
<string name="app_launcher_name">Lanzador</string>
|
||||
<string name="launcher_settings">Configuración del Lanzador</string>
|
||||
<string name="app_info">Información de la aplicación</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Toca dos veces para bloquear la pantalla</string>
|
||||
<string name="lock_device_admin_warning">Al desactivar el permiso de administrador se desactivará la función de doble toque para bloquear la pantalla.</string>
|
||||
<string name="lock_device_admin_hint">Para activar la función de doble toque para bloquear la pantalla, debes conceder un permiso de administrador. Tenga en cuenta que la aplicación no se puede desinstalar hasta que se elimine este permiso.</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Mostrar automáticamente el teclado en el cajón de aplicaciones</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Topeltpuudutus lukustusvaates</string>
|
||||
<string name="lock_device_admin_warning">Peakasutaja õiguste eemaldamine lülitab välja võimaluse kasutada lukustusvaates topeltpuudutust.</string>
|
||||
<string name="lock_device_admin_hint">Kui soovid lukustusvaates kasutada topeltpuudutust, siis vajab rakendus peakasutaja õigusi. Palun arvesta, et rakenduse eemaldamiseks pead esmalt eemaldama need õigused.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Näita menüüs klahvistikku automaatselt</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Sakatu bi aldiz pantaila blokeatzeko</string>
|
||||
<string name="lock_device_admin_hint">Bi aldiz sakatuta pantaila blokeatzeko, kudeatzaile baimena eman behar duzu. Kontuan izan baimen hau kendu arte ezingo duzula aplikazioa telefonotik kendu.</string>
|
||||
<string name="lock_device_admin_warning">Kudeatzaile baimena desaktibatzean, pantaila blokeatzeko bi aldiz ikutzea desaktibatu egingo da.</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Erakutsi teklatua automatikoki tiraderan</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_hint">Näytön kaksoisnapautuslukitus vaatii pääkäyttäjäoikeuksia. Huomio, että sovellusta ei voida poistaa, ennen kuin tämä oikeus on poistettu.</string>
|
||||
<string name="double_tap_to_lock">Kaksoisnapauta lukitaksesi näytön</string>
|
||||
<string name="lock_device_admin_warning">Pääkäyttäjäoikeuden poiskytkentä, estää kaksoisnapautuslukituksen toiminnan.</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Näytä näppäimistö automaattisesti katsottaessa kaikkia sovelluksia</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_hint">Pour activer la fonction de double appui pour verrouiller l\'écran, vous devez accorder l\'autorisation d\'administrateur. Notez que l\'application ne peut pas être désinstallée tant que cette autorisation n\'est pas supprimée.</string>
|
||||
<string name="lock_device_admin_warning">La désactivation de l\'autorisation d\'administrateur désactivera la fonction de double appui pour verrouiller l\'écran.</string>
|
||||
<string name="double_tap_to_lock">Appuyez deux fois pour verrouiller l\'écran</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Afficher automatiquement le clavier du tiroir</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Tapáil faoi dhó chun an scáileán a ghlasáil</string>
|
||||
<string name="lock_device_admin_warning">Má dhéantar cead riaracháin a dhíghníomhachtú, díchumasófar an sconna dúbailte chun an ghné scáileáin a ghlasáil.</string>
|
||||
<string name="lock_device_admin_hint">Chun an sconna dúbailte a chumasú chun gné an scáileáin a ghlasáil, ní mór duit cead riaracháin a dheonú. Tabhair faoi deara nach féidir an aip a dhíshuiteáil go dtí go mbaintear an cead seo.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Taispeáin an méarchlár go huathoibríoch sa tarraiceán</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Dodirni dvaput za zaključavanje ekrana</string>
|
||||
<string name="lock_device_admin_hint">Za aktiviranje funkcije dvostrukog dodira za zaključavanje ekrana moraš odobriti administratorsku dozvolu. Imaj na umu da se aplikacija ne može deinstalirati sve dok se ova dozvola ne ukloni.</string>
|
||||
<string name="lock_device_admin_warning">Uklanjanje administratorske dozvole će deaktivirati funkciju dvostrukog dodira za zaključavanje ekrana.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Automatski prikaži tipkovnicu u ladici</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_hint">Per abilitare la funzione di doppio tocco per bloccare lo schermo è necessario garantire i permessi di amministratore. L\'app non può essere disinstallata finché non vengono rimossi i permessi.</string>
|
||||
<string name="double_tap_to_lock">Doppio tocco per bloccare lo schermo</string>
|
||||
<string name="lock_device_admin_warning">Disattivando i permessi di amministratore disabiliterai la funzionalità di doppio tocco per bloccare lo schermo.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Mostra automaticamente la tastiera nel cassetto</string>
|
||||
</resources>
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="app_launcher_name">משגר</string>
|
||||
<string name="launcher_settings">הגדרות משגר</string>
|
||||
<string name="app_info">פרטי אפליקציה</string>
|
||||
<string name="launcher_settings">הגדרות המשגר</string>
|
||||
<string name="app_info">פרטי היישומון</string>
|
||||
<string name="touch_hold_widget">לחיצה ארוכה על הווידג\'ט וגרירה שלו במסך הראשי</string>
|
||||
<string name="uninstall">הסרה</string>
|
||||
<string name="hide_icon">הסתר אייקון</string>
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_warning">ביטול הרשאת מנהל ישבית את אפשרות ההקשה הכפולה לנעילת מסך.</string>
|
||||
<string name="app_drawer_settings">מגירת אפליקציות</string>
|
||||
<string name="widget_too_big">הווידג\'ט גדול מדי לגודל מסך הבית הנוכחי</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">הצגת מקלדת אוטומטית במגירה</string>
|
||||
</resources>
|
||||
|
||||
@@ -1,2 +1,21 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources></resources>
|
||||
<resources>
|
||||
<string name="app_launcher_name">Palaidējs</string>
|
||||
<string name="launcher_settings">Palaidēja iestatījumi</string>
|
||||
<string name="app_info">Informācija par lietotni</string>
|
||||
<string name="touch_hold_widget">Ilgi jāpiespiež uz logrīka un jāievelk tas sākuma ekrānā</string>
|
||||
<string name="uninstall">Noņemt</string>
|
||||
<string name="hide_icon">Paslēpt ikonu</string>
|
||||
<string name="add_hidden_icons">Pievienot paslēptās ikonas</string>
|
||||
<string name="manage_hidden_icons">Pārvaldīt paslēptās ikonas</string>
|
||||
<string name="hidden_icons">Paslēptās ikonas</string>
|
||||
<string name="hidden_icons_placeholder">Dažas lietotnes nevar noņemt sistēmas ierobežojumu dēļ, bet ir iespējams paslēpt to ikonas, lai neredzētu tās.</string>
|
||||
<string name="app_drawer_settings">Lietotņu atvilktne</string>
|
||||
<string name="close_app_drawer_on_app_open">Aizvērt lietotņu atvilktni pēc lietotnes atvēršanas</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Atvilktnē automātiski parādīt tastatūru</string>
|
||||
<string name="home_screen_settings">Sākuma ekrāns</string>
|
||||
<string name="widget_too_big">Logrīks ir par lielu pašreizējam sākuma ekrāna izmēram</string>
|
||||
<string name="double_tap_to_lock">Aizslēgt ekrānu ar divkāršu piesitienu</string>
|
||||
<string name="lock_device_admin_hint">Lai iespējotu ekrāna aizslēgšanu ar divkāršu piesitienu, ir nepieciešams piešķirt pārvaldītāja atļauju. Jāņem vērā, ka lietotni nevar noņemt, kamēr šī atļauja nav noņemta.</string>
|
||||
<string name="lock_device_admin_warning">Pārvaldītāja atļaujas deaktivēšana atspējos ekrāna aizslēgšanu ar divkāršu piesitienu.</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_warning">Als je het recht voor apparaatbeheer niet toekent, wordt de functie \'dubbeltikken om het scherm te vergrendelen\' uitgeschakeld.</string>
|
||||
<string name="lock_device_admin_hint">Om de functie \'Dubbeltikken om het scherm te vergrendelen\' in te schakelen, moet je het recht voor apparaatbeheer toekennen. De app kan dan niet worden verwijderd totdat deze toestemming is verwijderd.</string>
|
||||
<string name="double_tap_to_lock">Dubbeltikken om het scherm te vergrendelen</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Toetsenbord automatisch tonen in app-overzicht</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Naciśnij dwukrotnie, aby zablokować ekran</string>
|
||||
<string name="lock_device_admin_hint">Aby włączyć funkcję dwukrotnego naciśnięcia w celu zablokowania ekranu, musisz udzielić uprawnienia administratora. Uwaga: aplikacja nie może zostać odinstalowana, dopóki to uprawnienie nie zostanie usunięte.</string>
|
||||
<string name="lock_device_admin_warning">Dezaktywacja uprawnienia administratora spowoduje wyłączenie funkcji dwukrotnego naciśnięcia w celu zablokowania ekranu.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Automatycznie pokazuj klawiaturę w szufladzie</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Toque duas vezes para bloquear a tela</string>
|
||||
<string name="lock_device_admin_hint">Para habilitar o recurso de toque duplo para bloquear a tela, você precisa conceder permissão de administrador. Observe que o aplicativo não pode ser desinstalado até que essa permissão seja removida.</string>
|
||||
<string name="lock_device_admin_warning">Desativar a permissão de administrador desabilitará o recurso de toque duplo para bloquear a tela.</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Mostrar teclado ao abrir Gaveta</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Dois toques para bloquear o ecrã</string>
|
||||
<string name="lock_device_admin_hint">Para ativar esta funcionalidade, tem que permitir o acesso de administração. Tenha em atenção se que não conseguirá desinstalar a aplicação sem antes revogar esta permissão.</string>
|
||||
<string name="lock_device_admin_warning">Ao desativar a permissão, também desativa a possibilidade de bloquear o ecrã com dois toques.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Mostrar o teclado automaticamente na gaveta</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">Двойное нажатие блокирует экран</string>
|
||||
<string name="lock_device_admin_hint">Для включения функции блокировки экрана двойным нажатием необходимы права администратора. Учтите, что приложение нельзя будет удалить, пока данное разрешение не будет отключено.</string>
|
||||
<string name="lock_device_admin_warning">Удаление прав администратора приведёт к отключению функции блокировки экрана двойным нажатием.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Автоматически показывать клавиатуру в боковой панели</string>
|
||||
</resources>
|
||||
|
||||
@@ -1,17 +1,21 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="app_launcher_name">Spúšťač</string>
|
||||
<string name="launcher_settings">Nastavenia Spúšťača</string>
|
||||
<string name="app_info">Informácie o apke</string>
|
||||
<string name="launcher_settings">Nastavenia spúšťača</string>
|
||||
<string name="app_info">Informácie o aplikácii</string>
|
||||
<string name="touch_hold_widget">Umiestnite widget na domovskú obrazovku dlhým podržaním a potiahnutím</string>
|
||||
<string name="uninstall">Odinštalovať</string>
|
||||
<string name="hide_icon">Skryť ikonku</string>
|
||||
<string name="add_hidden_icons">Pridať skryté ikonky</string>
|
||||
<string name="manage_hidden_icons">Spravovať skryté ikonky</string>
|
||||
<string name="hidden_icons">Skryté ikonky</string>
|
||||
<string name="hidden_icons_placeholder">Niektoré apky nemôžu byť odinštalované kvôli systémovým obmedzeniam, viete ich ale aspoň skryť, aby ste ich nevideli.</string>
|
||||
<string name="app_drawer_settings">Zoznam apiek</string>
|
||||
<string name="close_app_drawer_on_app_open">Zavrieť zoznam apiek po spustení apky</string>
|
||||
<string name="home_screen_settings">Domáca obrazovka</string>
|
||||
<string name="hide_icon">Skryť aplikáciu</string>
|
||||
<string name="add_hidden_icons">Pridať skryté aplikácie</string>
|
||||
<string name="manage_hidden_icons">Spravovať skryté aplikácie</string>
|
||||
<string name="hidden_icons">Skryté aplikácie</string>
|
||||
<string name="hidden_icons_placeholder">Niektoré aplikácie nemôžu byť odinštalované pre systémové obmedzenia, ale je možné ich skryť, aby ste ich nevideli.</string>
|
||||
<string name="app_drawer_settings">Ponuka aplikácií</string>
|
||||
<string name="close_app_drawer_on_app_open">Zavrieť ponuku aplikácií po spustení aplikácie</string>
|
||||
<string name="home_screen_settings">Domovská obrazovka</string>
|
||||
<string name="widget_too_big">Widget je príliš veľký pre súčasnú domácu obrazovku</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Automaticky zobraziť klávesnicu v ponuke aplikácií</string>
|
||||
<string name="double_tap_to_lock">Dvojitým ťuknutím uzamknúť obrazovku</string>
|
||||
<string name="lock_device_admin_hint">Pre umoženie zámku obrazovky dvojitým ťuknutím je nutné aktivovať povolenie pre aplikáciu na správu zariadenia. Pre odinštalovanie aplikácie musí byť toto povolenie zrušené.</string>
|
||||
<string name="lock_device_admin_warning">Deaktiváciou povolenia aplikácie na správu zariadenia sa funkcia dvojitého ťuknutia na uzamknutie obrazovky vypne.</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_hint">Om du vill aktivera funktionen dubbeltryck för att låsa skärmen måste du bevilja administratörsbehörighet. Observera att appen inte kan avinstalleras förrän behörigheten har tagits bort.</string>
|
||||
<string name="double_tap_to_lock">Dubbeltryck för att låsa skärmen</string>
|
||||
<string name="lock_device_admin_warning">Om du inaktiverar administratörsbehörigheten inaktiveras funktionen dubbeltryck för att låsa skärmen.</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Visa tangentbordet automatiskt i lådan</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="lock_device_admin_warning">Скасування прав адміністратора вимкне функцію подвійного дотику для блокування екрана.</string>
|
||||
<string name="double_tap_to_lock">Двічі торкніться, щоб заблокувати екран</string>
|
||||
<string name="lock_device_admin_hint">Щоб увімкнути функцію блокування екрана подвійним дотиком, вам потрібно надати права адміністратора. Зверніть увагу, що застосунок не можна буде видалити, поки цей дозвіл не буде скасовано.</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Автоматично показувати клавіатуру в шухляді</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">双击锁屏</string>
|
||||
<string name="lock_device_admin_warning">停用管理员权限将禁用双击锁屏功能。</string>
|
||||
<string name="lock_device_admin_hint">要启用双击锁屏功能,您需要授予管理员权限。请注意,在移除此权限之前无法卸载该应用。</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">在抽屉中自动显示键盘</string>
|
||||
</resources>
|
||||
|
||||
@@ -17,4 +17,5 @@
|
||||
<string name="double_tap_to_lock">輕觸兩下以鎖定螢幕</string>
|
||||
<string name="lock_device_admin_warning">停用管理權限將會停用輕觸兩下以鎖定螢幕的功能。</string>
|
||||
<string name="lock_device_admin_hint">要啟用輕觸兩下以鎖定螢幕的功能,您必須授予管理權限。請注意,在移除此權限前,無法解除安裝應用程式。</string>
|
||||
</resources>
|
||||
<string name="auto_show_keyboard_in_app_drawer">自動在抽屜中顯示鍵盤</string>
|
||||
</resources>
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
<string name="hidden_icons_placeholder">Some apps cannot be uninstalled due to system restrictions, but you can at least hide their icons to avoid seeing them.</string>
|
||||
<string name="app_drawer_settings">App drawer</string>
|
||||
<string name="close_app_drawer_on_app_open">Close app drawer on opening an app</string>
|
||||
<string name="auto_show_keyboard_in_app_drawer">Automatically show keyboard in drawer</string>
|
||||
<string name="home_screen_settings">Home screen</string>
|
||||
<string name="widget_too_big">Widget is too big for current home screen size</string>
|
||||
<string name="double_tap_to_lock">Double tap to lock screen</string>
|
||||
|
||||
58
detekt.yml
Normal file
58
detekt.yml
Normal file
@@ -0,0 +1,58 @@
|
||||
build:
|
||||
maxIssues: 0
|
||||
weights:
|
||||
complexity: 2
|
||||
LongParameterList: 2
|
||||
style: 1
|
||||
|
||||
processors:
|
||||
active: true
|
||||
exclude:
|
||||
- "FunctionCountProcessor"
|
||||
- "PropertyCountProcessor"
|
||||
|
||||
config:
|
||||
validation: true
|
||||
|
||||
complexity:
|
||||
LongParameterList:
|
||||
active: true
|
||||
functionThreshold: 10
|
||||
constructorThreshold: 8
|
||||
ignoreDefaultParameters: true
|
||||
ignoreAnnotated:
|
||||
- "Composable"
|
||||
LongMethod:
|
||||
active: true
|
||||
threshold: 120
|
||||
ignoreAnnotated:
|
||||
- "Composable"
|
||||
- "Preview"
|
||||
|
||||
style:
|
||||
MagicNumber:
|
||||
active: true
|
||||
ignoreAnnotated: ["Composable"]
|
||||
ignoreEnums: true
|
||||
ignoreNumbers: ["-1", "0", "1", "2", "42", "1000"]
|
||||
MaxLineLength:
|
||||
active: true
|
||||
maxLineLength: 120
|
||||
excludePackageStatements: true
|
||||
excludeImportStatements: true
|
||||
|
||||
naming:
|
||||
FunctionNaming:
|
||||
active: true
|
||||
ignoreAnnotated: ["Composable", "Preview"]
|
||||
functionPattern: "[a-z][A-Za-z0-9]*"
|
||||
|
||||
Compose: # io.nlopez.compose.rules
|
||||
ComposableParametersOrdering:
|
||||
active: true
|
||||
ModifierDefaultValue:
|
||||
active: true
|
||||
MissingModifierDefaultValue:
|
||||
active: true
|
||||
PublicComposablePreview:
|
||||
active: true
|
||||
8
fastlane/metadata/android/en-US/changelogs/8.txt
Normal file
8
fastlane/metadata/android/en-US/changelogs/8.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
Added:
|
||||
|
||||
• Option to show keyboard automatically in app drawer
|
||||
|
||||
Changed:
|
||||
|
||||
• Updated translations
|
||||
|
||||
9
fastlane/metadata/android/en-US/changelogs/9.txt
Normal file
9
fastlane/metadata/android/en-US/changelogs/9.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
Changed:
|
||||
|
||||
• The app will now prompt to set as default launcher on startup
|
||||
• Updated translations
|
||||
|
||||
Fixed:
|
||||
|
||||
• Fixed home screen hover events not working with TalkBack
|
||||
|
||||
@@ -1 +1 @@
|
||||
התאם אישית את מסך הבית שלך עם משגר מהיר, ללא פרסומות, ובקוד פתוח
|
||||
התאימו אישית את מסך הבית עם משגר מהיר, ללא פרסומות, ובקוד פתוח
|
||||
|
||||
@@ -5,6 +5,6 @@ android.nonTransitiveRClass=true
|
||||
org.gradle.jvmargs=-Xmx4096M
|
||||
|
||||
# Versioning
|
||||
VERSION_NAME=1.1.4
|
||||
VERSION_CODE=7
|
||||
VERSION_NAME=1.3.0
|
||||
VERSION_CODE=9
|
||||
APP_ID=org.fossify.home
|
||||
|
||||
@@ -1,16 +1,17 @@
|
||||
[versions]
|
||||
#jetbrains
|
||||
kotlin = "2.2.0"
|
||||
kotlin = "2.2.10"
|
||||
#KSP
|
||||
ksp = "2.1.21-2.0.2"
|
||||
ksp = "2.2.10-2.0.2"
|
||||
#Detekt
|
||||
detekt = "1.23.8"
|
||||
detektCompose = "0.4.27"
|
||||
#Room
|
||||
room = "2.7.2"
|
||||
#Fossify
|
||||
commons = "4.0.0"
|
||||
commons = "5.0.2"
|
||||
#Gradle
|
||||
gradlePlugins-agp = "8.10.1"
|
||||
gradlePlugins-agp = "8.11.1"
|
||||
#build
|
||||
app-build-compileSDKVersion = "34"
|
||||
app-build-targetSDK = "34"
|
||||
@@ -22,6 +23,8 @@ app-build-kotlinJVMTarget = "17"
|
||||
androidx-room-runtime = { module = "androidx.room:room-runtime", version.ref = "room" }
|
||||
androidx-room-ktx = { module = "androidx.room:room-ktx", version.ref = "room" }
|
||||
androidx-room-compiler = { module = "androidx.room:room-compiler", version.ref = "room" }
|
||||
#Compose
|
||||
compose-detekt = { module = "io.nlopez.compose.rules:detekt", version.ref = "detektCompose" }
|
||||
#Fossify
|
||||
fossify-commons = { module = "org.fossify:commons", version.ref = "commons" }
|
||||
[bundles]
|
||||
|
||||
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,6 +1,6 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
|
||||
networkTimeout=10000
|
||||
validateDistributionUrl=true
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
|
||||
5
gradlew
vendored
5
gradlew
vendored
@@ -86,8 +86,7 @@ done
|
||||
# shellcheck disable=SC2034
|
||||
APP_BASE_NAME=${0##*/}
|
||||
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
|
||||
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
|
||||
' "$PWD" ) || exit
|
||||
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD=maximum
|
||||
@@ -206,7 +205,7 @@ fi
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
|
||||
# Collect all arguments for the java command:
|
||||
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
|
||||
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
|
||||
# and any embedded shellness will be escaped.
|
||||
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
|
||||
# treated as '${Hostname}' itself on the command line.
|
||||
|
||||
Reference in New Issue
Block a user