Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 877d4660 authored by Jorge Ruesga's avatar Jorge Ruesga
Browse files

cmfm: secure storage and other improvements

This patch adds support for virtual filesystems and implements a SecureStorage
filesystem (a password protected area) mounted in /storage or /sdcard/storage
(in chrooted environments).
Also includes a better print support and a cleanup of the code and design of
the menu drawer.
Bump version to 2.0.0

Required: https://github.com/jruesga/android_external_libtruezip

 located
in external/libtruezip

Patchset 4: Fix selection of unmounted virtual storages.
            Fix actions on virtual mount points folders.
            Fix strings and typos. Change drop for delete secure storage.
Patchset 5: Move actionbar buttons to navigation drawer
            Remove history position
Patchset 6: Update theme preview images
            Fix filesystem status image on theme change
Patchset 7: Fix binary file detection in editor (including unicode files)
Patchset 8: Fix unsafe operations in virtual mountpoint logic
Patchset 9: Rebase

Change-Id: I65511352ca649dcbf238c8b07cf8c22465296e8e
Signed-off-by: default avatarJorge Ruesga <jorge@ruesga.com>
parent fcb4908c
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -21,6 +21,9 @@ LOCAL_SRC_FILES := $(call all-subdir-java-files)
LOCAL_SRC_FILES += $(call all-java-files-under, themes/src)
LOCAL_SRC_FILES += $(call all-java-files-under, libs/android-syntax-highlight/src)
LOCAL_SRC_FILES += $(call all-java-files-under, libs/color-picker-view/src)

LOCAL_STATIC_JAVA_LIBRARIES := libtruezip

LOCAL_RESOURCE_DIR := $(addprefix $(LOCAL_PATH)/, themes/res res)
LOCAL_AAPT_INCLUDE_ALL_RESOURCES := true
LOCAL_AAPT_FLAGS := --auto-add-overlay
+25 −21
Original line number Diff line number Diff line
@@ -16,8 +16,8 @@

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.cyanogenmod.filemanager"
  android:versionCode="102"
  android:versionName="1.0.2">
  android:versionCode="103"
  android:versionName="2.0.0">

  <original-package android:name="com.cyanogenmod.filemanager" />

@@ -29,6 +29,7 @@
  <uses-permission android:name="android.permission.SET_PREFERRED_APPLICATIONS" />
  <uses-permission android:name="android.permission.ACCESS_SUPERUSER"/>
  <uses-permission android:name="android.permission.NFC"/>
  <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
  <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
  <uses-permission android:name="com.cyanogenmod.filemanager.permissions.READ_THEME"/>

@@ -38,7 +39,8 @@
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:largeHeap="true"
    android:theme="@style/FileManager.Theme.Holo.Light" >
    android:theme="@style/FileManager.Theme.Holo.Light"
    android:supportsRtl="true">

    <meta-data
      android:name="android.app.default_searchable"
@@ -54,6 +56,12 @@
      android:authorities="com.cyanogenmod.filemanager.providers.bookmarks"
      android:exported="false" />

    <provider
      android:name=".providers.SecureResourceProvider"
      android:authorities="com.cyanogenmod.filemanager.providers.resources"
      android:grantUriPermissions="true"
      android:exported="true" />

    <activity
      android:name=".activities.NavigationActivity"
      android:label="@string/app_name"
@@ -76,24 +84,6 @@
        android:resource="@xml/searchable" />
    </activity>

    <activity
      android:name=".activities.BookmarksActivity"
      android:label="@string/bookmarks"
      android:uiOptions="none"
      android:windowSoftInputMode="adjustNothing"
      android:configChanges="orientation|keyboardHidden|screenSize"
      android:exported="false">
    </activity>

    <activity
      android:name=".activities.HistoryActivity"
      android:label="@string/history"
      android:uiOptions="none"
      android:configChanges="orientation|keyboardHidden|screenSize"
      android:windowSoftInputMode="adjustNothing"
      android:exported="false">
    </activity>

    <activity
      android:name=".activities.SearchActivity"
      android:label="@string/search"
@@ -168,6 +158,8 @@
        <action android:name="android.intent.action.VIEW" />
        <action android:name="android.intent.action.EDIT" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="com.cyanogenmod.filemanager.category.INTERNAL_VIEWER" />
        <category android:name="com.cyanogenmod.filemanager.category.EDITOR" />

        <data android:scheme="file" />
        <data android:mimeType="text/*" />
@@ -200,6 +192,18 @@
      </intent-filter>
    </activity>

    <activity
      android:name=".console.secure.SecureStorageKeyPromptDialog$SecureStorageKeyPromptActivity"
      android:label="@string/app_name"
      android:uiOptions="none"
      android:configChanges="orientation|keyboardHidden|screenSize"
      android:theme="@android:style/Theme.Holo.Light.Dialog"
      android:exported="true">
      <intent-filter>
        <action android:name="android.intent.action.VIEW" />
      </intent-filter>
    </activity>

  </application>

</manifest>
+9 −0
Original line number Diff line number Diff line
CyanogenMod File Manager
========================

Version 2.0.0
-------------
* Secure storage support
* Print support

Version 1.0.2
-------------
* Drawer navigation support (by Florian Edelmann)

Version 1.0.1
-------------
* NFC support
+1 −1
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@ This source was released under the terms of
Visit [CyanogenMod Github](https://github.com/CyanogenMod) and [CyanogenMod
Code Review](http://review.cyanogenmod.com/) to get the source and patches.

This application uses also third party libraries. Checkout the license individual
This application uses also third party libraries. Checkout the individual
license of every library in libs folder.

Copyright © 2012 The CyanogenMod Project
+7 −0
Original line number Diff line number Diff line
@@ -57,3 +57,10 @@
  public <init>(...);
}

#keep library packages
-keep public class de.schlichtherle.truezip.** {
  public protected *;
}
-keep public class libtruezip.** {
  public protected *;
}
Loading