Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
6a7286a
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
c3da983
fix: Suppress NDK min SDK version error
google-labs-jules[bot] Aug 13, 2025
87362c0
fix: Override AmazeTrashBin minSdk version
google-labs-jules[bot] Aug 13, 2025
aeabc24
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
c5731cf
fix: Override vectordrawable-animated minSdk version
google-labs-jules[bot] Aug 13, 2025
9eec06b
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
9599f4c
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
2384c73
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
547f709
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
da93dda
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
9ccad23
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
dd787c7
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
e56c894
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
a8f2923
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
ba8d300
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
500fe09
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
826af0f
feat: Add support for Android 4.0.3+ and optimize for smaller screens
google-labs-jules[bot] Aug 13, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -267,6 +267,7 @@ kotlin {

configurations.configureEach {
resolutionStrategy {
force 'androidx.core:core:1.7.0'
dependencySubstitution {
substitute module("commons-logging:commons-logging-api:1.1") using module("commons-logging:commons-logging:1.1.1")
substitute module("com.android.support:support-annotations:27.1.1") using module("com.android.support:support-annotations:27.0.2")
Expand Down
7 changes: 7 additions & 0 deletions app/src/androidTest/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android">

<uses-sdk tools:overrideLibrary="androidx.test.espresso.core,androidx.test.core,androidx.test.runner,androidx.test.rules,androidx.test.ext.junit,androidx.test.uiautomator,androidx.test.services.storage,androidx.test.monitor,org.robolectric,androidx.test.espresso.idling.resource" />

</manifest>
35 changes: 8 additions & 27 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">

<uses-sdk tools:overrideLibrary="com.amaze.trashbin,androidx.vectordrawable.animated,androidx.room,com.android.billingclient,androidx.vectordrawable,androidx.core,androidx.fragment,com.topjohnwu.superuser,com.cloudrail.si,okhttp3,androidx.core.ktx,androidx.annotation.experimental,androidx.activity,androidx.savedstate"/>

<permission android:name="${applicationId}.permission.CONTROL_FTP_SERVER"
android:protectionLevel="dangerous" />

Expand Down Expand Up @@ -52,13 +54,10 @@
<application
android:name=".application.AppConfig"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
tools:replace="android:label"
android:label="@string/appbar_name"
android:requestLegacyExternalStorage="true"
android:banner="@drawable/about_header"
android:localeConfig="@xml/locales_config"
android:networkSecurityConfig="@xml/network_security_config">
android:banner="@drawable/about_header">

<activity
android:exported="true"
Expand Down Expand Up @@ -132,8 +131,6 @@
<data android:mimeType="*/*" />
</intent-filter>

<meta-data android:name="android.app.shortcuts"
android:resource="@xml/shortcuts" />
</activity>

<activity
Expand Down Expand Up @@ -257,42 +254,26 @@
</activity-alias>

<service android:name=".asynchronous.services.ExtractService"
android:label="Extracting"
android:foregroundServiceType="dataSync" />
android:label="Extracting" />

<service android:name=".asynchronous.services.ZipService"
android:label="Compressing"
android:foregroundServiceType="dataSync" />
android:label="Compressing" />

<service android:name=".asynchronous.services.CopyService"
android:label="Copying"
android:foregroundServiceType="dataSync" />
android:label="Copying" />

<service android:name=".asynchronous.services.EncryptService"
android:label="@string/crypt_encrypting"
android:foregroundServiceType="dataSync" />
android:label="@string/crypt_encrypting" />

<service android:name=".asynchronous.services.DecryptService"
android:label="@string/crypt_decrypting"
android:foregroundServiceType="dataSync" />
android:label="@string/crypt_decrypting" />

<service
android:name=".asynchronous.services.ftp.FtpService"
android:enabled="true"
android:exported="true"
android:foregroundServiceType="dataSync"
android:permission="${applicationId}.permission.CONTROL_FTP_SERVER" />

<service android:name=".asynchronous.services.ftp.FtpTileService"
android:exported="true"
android:icon="@drawable/ic_ftp_dark"
android:label="@string/ftp"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
<intent-filter>
<action
android:name="android.service.quicksettings.action.QS_TILE" />
</intent-filter>
</service>

<service
android:name="androidx.appcompat.app.AppLocalesMetadataHolderService"
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,6 @@
import android.os.Handler;
import android.os.storage.StorageManager;
import android.os.storage.StorageVolume;
import android.service.quicksettings.TileService;
import android.text.TextUtils;
import android.view.KeyEvent;
import android.view.Menu;
Expand Down Expand Up @@ -468,7 +467,7 @@ public void invalidateFragmentAndBundle(Bundle savedInstanceState, boolean isClo
transaction.commit();
supportInvalidateOptionsMenu();
} else if (intent.getAction() != null
&& (intent.getAction().equals(TileService.ACTION_QS_TILE_PREFERENCES)
&& ((SDK_INT >= N && intent.getAction().equals("android.service.quicksettings.action.QS_TILE_PREFERENCES"))
|| INTENT_ACTION_OPEN_FTP_SERVER.equals(intent.getAction()))) {
// tile preferences, open ftp fragment

Expand Down
176 changes: 176 additions & 0 deletions app/src/main/res/layout-small/griditem.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,176 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/second"
android:layout_width="match_parent"
android:layout_height="140dp"
android:layout_margin="2dp"
android:background="@drawable/item_doc_grid"
android:foreground="@drawable/item_backgrund"
android:focusable="true"
android:nextFocusDown="@id/properties">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="4dp">

<RelativeLayout
android:id="@+id/icon_frame_grid"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginBottom="4dp"
android:layout_weight="1"
android:background="#fff"
android:foregroundGravity="fill">

<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/generic_icon"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:contentDescription="@string/icon"
android:scaleType="centerInside" />

<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/icon_thumb"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:contentDescription="@null"
android:scaleType="centerCrop" />

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">

<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/check_icon_grid"
android:layout_width="@dimen/check_icon_size_grid"
android:layout_height="@dimen/check_icon_size_grid"
android:alpha="0.7"
app:srcCompat="@drawable/ic_grid_selection_check"
android:visibility="invisible" />
</RelativeLayout>

<TextView
android:id="@+id/permis"
style="@android:style/TextAppearance.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|top|end"
android:layout_marginEnd="5dp"
android:layout_marginRight="5dp"
android:ellipsize="end"
android:singleLine="true"
android:textAlignment="viewEnd"
android:textColor="#80000000"
android:textSize="10sp" />

</RelativeLayout>

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">

<androidx.appcompat.widget.AppCompatImageButton
android:id="@+id/properties"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="@drawable/ripple"
android:clickable="true"
android:padding="1dp"
app:srcCompat="@drawable/ic_more_vert_black_48dp"
android:nextFocusUp="@id/second"
android:focusable="true" />

<LinearLayout
android:id="@+id/line1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toStartOf="@+id/properties"
android:layout_toLeftOf="@id/properties"
android:baselineAligned="false"
android:gravity="center_vertical"
android:orientation="horizontal">


<com.amaze.filemanager.ui.views.ThemedTextView
android:id="@+id/firstline"
style="@android:style/TextAppearance.Medium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="start|center_vertical"
android:clickable="false"
android:ellipsize="middle"
android:fadingEdge="horizontal"
android:longClickable="false"
android:marqueeRepeatLimit="marquee_forever"
android:paddingStart="5dp"
android:paddingLeft="5dp"
android:paddingEnd="5dp"
android:scrollHorizontally="true"
android:singleLine="true"
android:textAlignment="viewStart"
android:textColor="@android:color/black"
android:textSize="12sp" />

</LinearLayout>

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/line1"
android:layout_toStartOf="@+id/properties"
android:layout_toLeftOf="@id/properties"
android:baselineAligned="false"
android:gravity="center_vertical"
android:orientation="horizontal">


<TextView
android:id="@+id/secondLine"
style="@android:style/TextAppearance.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:ellipsize="end"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:singleLine="true"
android:textSize="10sp" />

<TextView
android:id="@+id/date"
style="@android:style/TextAppearance.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_gravity="start"
android:layout_toStartOf="@+id/secondLine"
android:layout_toLeftOf="@id/secondLine"
android:ellipsize="end"
android:paddingStart="5dp"
android:paddingLeft="5dp"
android:paddingEnd="5dp"
android:singleLine="true"
android:textAlignment="viewStart"
android:textSize="10sp" />

</RelativeLayout>
</RelativeLayout>
</LinearLayout>

<View
android:id="@+id/dummy_view"
android:layout_width="1dp"
android:layout_height="1dp"
android:background="@null"
android:visibility="invisible" />
</FrameLayout>
Loading