Added ability to load files
This commit is contained in:
parent
74a6f930a5
commit
b1fb0dcea0
4 changed files with 53 additions and 7 deletions
|
@ -15,6 +15,7 @@ import android.support.v7.app.AppCompatActivity;
|
||||||
public class FileUtils {
|
public class FileUtils {
|
||||||
|
|
||||||
public static final int WRITE_PERMISSION_REQUEST = 0;
|
public static final int WRITE_PERMISSION_REQUEST = 0;
|
||||||
|
public static final int OPEN_FILE_REQUEST = 1;
|
||||||
|
|
||||||
private Activity mContext;
|
private Activity mContext;
|
||||||
|
|
||||||
|
|
|
@ -44,8 +44,10 @@ implements ActivityCompat.OnRequestPermissionsResultCallback {
|
||||||
public static final String AUTHORITY = "com.wbrawner.simplemarkdown.fileprovider";
|
public static final String AUTHORITY = "com.wbrawner.simplemarkdown.fileprovider";
|
||||||
private static final int REQUEST_WRITE_STORAGE = 0;
|
private static final int REQUEST_WRITE_STORAGE = 0;
|
||||||
private static File mFilesDir;
|
private static File mFilesDir;
|
||||||
@BindView(R.id.pager) ViewPager pager;
|
@BindView(R.id.pager)
|
||||||
@BindView(R.id.layout_tab) TabLayout tabLayout;
|
ViewPager pager;
|
||||||
|
@BindView(R.id.layout_tab)
|
||||||
|
TabLayout tabLayout;
|
||||||
|
|
||||||
private static final String TAG = MainActivity.class.getSimpleName();
|
private static final String TAG = MainActivity.class.getSimpleName();
|
||||||
private static String fileName;
|
private static String fileName;
|
||||||
|
@ -178,6 +180,9 @@ implements ActivityCompat.OnRequestPermissionsResultCallback {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case R.id.action_load:
|
||||||
|
requestOpen();
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
return super.onOptionsItemSelected(item);
|
return super.onOptionsItemSelected(item);
|
||||||
}
|
}
|
||||||
|
@ -189,6 +194,24 @@ implements ActivityCompat.OnRequestPermissionsResultCallback {
|
||||||
.sendBroadcast(saveIntent);
|
.sendBroadcast(saveIntent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void requestOpen() {
|
||||||
|
Intent openIntent = new Intent(Intent.ACTION_GET_CONTENT);
|
||||||
|
openIntent.setType("*/*");
|
||||||
|
openIntent.addCategory(Intent.CATEGORY_OPENABLE);
|
||||||
|
try {
|
||||||
|
startActivityForResult(
|
||||||
|
Intent.createChooser(
|
||||||
|
openIntent,
|
||||||
|
getString(R.string.open_file)
|
||||||
|
),
|
||||||
|
FileUtils.OPEN_FILE_REQUEST
|
||||||
|
);
|
||||||
|
} catch (ActivityNotFoundException e) {
|
||||||
|
Toast.makeText(MainActivity.this, R.string.no_filebrowser, Toast.LENGTH_SHORT)
|
||||||
|
.show();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onRequestPermissionsResult(int requestCode,
|
public void onRequestPermissionsResult(int requestCode,
|
||||||
String permissions[], int[] grantResults) {
|
String permissions[], int[] grantResults) {
|
||||||
|
@ -256,4 +279,18 @@ implements ActivityCompat.OnRequestPermissionsResultCallback {
|
||||||
else
|
else
|
||||||
pager.setCurrentItem(EditPagerAdapter.FRAGMENT_EDIT);
|
pager.setCurrentItem(EditPagerAdapter.FRAGMENT_EDIT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||||
|
switch (requestCode) {
|
||||||
|
case FileUtils.OPEN_FILE_REQUEST:
|
||||||
|
if (resultCode == RESULT_OK) {
|
||||||
|
Uri fileUri = data.getData();
|
||||||
|
Intent loadIntent = new Intent(EditFragment.LOAD_ACTION);
|
||||||
|
loadIntent.putExtra("fileUri", fileUri.toString());
|
||||||
|
LocalBroadcastManager.getInstance(MainActivity.this).sendBroadcast(loadIntent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
super.onActivityResult(requestCode, resultCode, data);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,6 +11,11 @@
|
||||||
android:id="@+id/action_share"
|
android:id="@+id/action_share"
|
||||||
android:icon="@android:drawable/ic_menu_share"
|
android:icon="@android:drawable/ic_menu_share"
|
||||||
app:showAsAction="always" />
|
app:showAsAction="always" />
|
||||||
|
<item
|
||||||
|
android:id="@+id/action_load"
|
||||||
|
android:orderInCategory="100"
|
||||||
|
android:title="@string/action_load"
|
||||||
|
app:showAsAction="never" />
|
||||||
<!--<item-->
|
<!--<item-->
|
||||||
<!--android:id="@+id/action_help"-->
|
<!--android:id="@+id/action_help"-->
|
||||||
<!--android:orderInCategory="100"-->
|
<!--android:orderInCategory="100"-->
|
||||||
|
|
|
@ -16,4 +16,7 @@
|
||||||
<string name="share_file">Share file to...</string>
|
<string name="share_file">Share file to...</string>
|
||||||
<string name="no_permissions">Unable to save file without permissions</string>
|
<string name="no_permissions">Unable to save file without permissions</string>
|
||||||
<string name="file_saved">File saved to %1$s</string>
|
<string name="file_saved">File saved to %1$s</string>
|
||||||
|
<string name="action_load">Load</string>
|
||||||
|
<string name="open_file">Select a file to open</string>
|
||||||
|
<string name="no_filebrowser">No file browser apps found</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
Loading…
Reference in a new issue