Added: Allow users to disable termux file view and share receivers

The user can add `disable-file-share-receiver=true` entry to `termux.properties` file to disable termux from showing in Android file `Share With` apps list.
The user can add `disable-file-view-receiver=true` entry to `termux.properties` file to disable termux from showing in Android file `Open With` apps list.

The default value is `false`. Restarting termux app or running `termux-reload-settings` command will update the behaviour instantaneously if changed.

Closes #2549
This commit is contained in:
agnostic-apollo
2022-06-14 03:56:00 +05:00
parent 79d799a99d
commit af6ac30bb1
7 changed files with 109 additions and 17 deletions

View File

@@ -109,14 +109,19 @@
android:documentLaunchMode="intoExisting" />
<activity
android:name=".filepicker.TermuxFileReceiverActivity"
android:name=".app.api.file.FileReceiverActivity"
android:excludeFromRecents="true"
android:exported="true"
android:label="@string/application_name"
android:exported="false"
android:noHistory="true"
android:resizeableActivity="true"
android:taskAffinity="${TERMUX_PACKAGE_NAME}.filereceiver"
tools:targetApi="n">
</activity>
<activity-alias
android:name=".app.api.file.FileShareReceiverActivity"
android:exported="true"
android:targetActivity=".app.api.file.FileReceiverActivity">
<!-- Accept multiple file types when sending. -->
<intent-filter>
@@ -132,6 +137,13 @@
<data android:mimeType="text/*" />
<data android:mimeType="video/*" />
</intent-filter>
</activity-alias>
<activity-alias
android:name=".app.api.file.FileViewReceiverActivity"
android:exported="true"
android:targetActivity=".app.api.file.FileReceiverActivity">
<!-- Accept multiple file types to let Termux be usable as generic file viewer. -->
<intent-filter tools:ignore="AppLinkUrlError">
<action android:name="android.intent.action.VIEW" />
@@ -144,8 +156,7 @@
<data android:mimeType="text/*" />
<data android:mimeType="video/*" />
</intent-filter>
</activity>
</activity-alias>
<provider
android:name=".filepicker.TermuxDocumentsProvider"