Skip to content

Commit

Permalink
Remove EXTRA_PATH_IS_FOLDER intent parameter everywhere, by @harshad1
Browse files Browse the repository at this point in the history
…(PR #1582)
  • Loading branch information
harshad1 committed Feb 9, 2022
1 parent 53f8740 commit f404ed1
Show file tree
Hide file tree
Showing 12 changed files with 22 additions and 44 deletions.
3 changes: 2 additions & 1 deletion app/src/main/AndroidManifest.xml
Expand Up @@ -60,6 +60,7 @@
android:exported="true"
android:label="@string/app_name"
android:launchMode="singleTop"
android:windowSoftInputMode="stateUnchanged|adjustResize"
android:taskAffinity=".activity.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
Expand Down Expand Up @@ -170,7 +171,7 @@
android:parentActivityName=".activity.MainActivity"
android:taskAffinity=".activity.DocumentActivity"
android:theme="@style/AppTheme.Unified"
android:windowSoftInputMode="adjustResize"
android:windowSoftInputMode="stateUnchanged|adjustResize"
tools:targetApi="lollipop">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
Expand Down
Expand Up @@ -61,7 +61,7 @@ public class DocumentActivity extends MarkorBaseActivity {
private static boolean nextLaunchTransparentBg = false;


public static void launch(Activity activity, File path, Boolean isFolder, Boolean doPreview, Intent intent, final Integer lineNumber) {
public static void launch(Activity activity, File path, Boolean doPreview, Intent intent, final Integer lineNumber) {
if (intent == null) {
intent = new Intent(activity, DocumentActivity.class);
}
Expand All @@ -71,9 +71,6 @@ public static void launch(Activity activity, File path, Boolean isFolder, Boolea
if (lineNumber != null && lineNumber >= 0) {
intent.putExtra(Document.EXTRA_FILE_LINE_NUMBER, lineNumber);
}
if (isFolder != null) {
intent.putExtra(Document.EXTRA_PATH_IS_FOLDER, isFolder);
}
if (doPreview != null) {
intent.putExtra(DocumentActivity.EXTRA_DO_PREVIEW, doPreview);
}
Expand Down Expand Up @@ -108,7 +105,7 @@ public static void askUserIfWantsToOpenFileInThisApp(final Activity activity, fi

Callback.a1<Boolean> openFile = (openInThisApp) -> {
if (openInThisApp) {
DocumentActivity.launch(activity, file, false, null, null, null);
DocumentActivity.launch(activity, file, null, null, null);
} else {
new net.gsantner.markor.util.ShareUtil(activity).viewFileInOtherApp(file, null);
}
Expand Down
Expand Up @@ -60,7 +60,7 @@ public static DocumentShareIntoFragment newInstance(Intent intent) {
final String sharedText = formatLink(intent.getStringExtra(Intent.EXTRA_SUBJECT), intent.getStringExtra(Intent.EXTRA_TEXT));

Object intentFile = intent.getSerializableExtra(Document.EXTRA_PATH);
if (intentFile != null && intent.getBooleanExtra(Document.EXTRA_PATH_IS_FOLDER, false)) {
if (intentFile instanceof File && ((File) intentFile).isDirectory()) {
f.workingDir = (File) intentFile;
}

Expand Down Expand Up @@ -197,7 +197,6 @@ public void setText(String text) {
private void appendToExistingDocument(final File file, final String separator, final boolean showEditor) {
final Bundle args = new Bundle();
args.putSerializable(Document.EXTRA_PATH, file);
args.putBoolean(Document.EXTRA_PATH_IS_FOLDER, false);
final Context context = getContext();
final Document document = Document.fromArguments(context, args);
final String shareIntoFormat = ShareUtil.formatDateTime(context, _appSettings.getShareIntoPrefix(), System.currentTimeMillis());
Expand Down
Expand Up @@ -116,7 +116,7 @@ protected void onCreate(Bundle savedInstanceState) {

// noinspection PointlessBooleanExpression - Send Test intent
if (BuildConfig.IS_TEST_BUILD && false) {
DocumentActivity.launch(this, new File("/sdcard/Documents/mordor/aa-beamer.md"), false, true, null, null);
DocumentActivity.launch(this, new File("/sdcard/Documents/mordor/aa-beamer.md"), true, null, null);
}

(new ActivityUtils(this)).applySpecialLaunchersVisibility(_appSettings.isSpecialFileLaunchersEnabled());
Expand Down Expand Up @@ -144,7 +144,8 @@ private static File getIntentDir(final Intent intent, final File fallback) {
}

// By extra path
if (intent.hasExtra(Document.EXTRA_PATH) && intent.getBooleanExtra(Document.EXTRA_PATH_IS_FOLDER, false)) {
final File file = (File) intent.getSerializableExtra(Document.EXTRA_PATH);
if (file != null && file.isDirectory()) {
return (File) intent.getSerializableExtra(Document.EXTRA_PATH);
}

Expand Down Expand Up @@ -295,7 +296,7 @@ public void onClickFab(View view) {
NewFileDialog dialog = NewFileDialog.newInstance(fsFrag.getCurrentFolder(), true, (ok, f) -> {
if (ok) {
if (f.isFile()) {
DocumentActivity.launch(MainActivity.this, f, false, false, null, null);
DocumentActivity.launch(MainActivity.this, f, false, null, null);
} else if (f.isDirectory()) {
FilesystemViewerFragment wrFragment = (FilesystemViewerFragment) _viewPagerAdapter.getFragmentByTag(FilesystemViewerFragment.FRAGMENT_TAG);
if (wrFragment != null) {
Expand Down Expand Up @@ -432,7 +433,7 @@ public void onFsViewerDoUiUpdate(FilesystemViewerAdapter adapter) {
@Override
public void onFsViewerSelected(String request, File file, final Integer lineNumber) {
if (TextFormat.isTextFile(file)) {
DocumentActivity.launch(MainActivity.this, file, false, null, null, lineNumber);
DocumentActivity.launch(MainActivity.this, file, null, null, lineNumber);
} else if (file.getName().toLowerCase().endsWith(".apk")) {
_shareUtil.requestApkInstallation(file);
} else {
Expand Down
Expand Up @@ -26,8 +26,7 @@ public class OpenEditorActivity extends MarkorBaseActivity {
protected void openEditorForFile(File file) {
Intent openIntent = new Intent(getApplicationContext(), DocumentActivity.class)
.setAction(Intent.ACTION_CALL_BUTTON)
.putExtra(Document.EXTRA_PATH, file)
.putExtra(Document.EXTRA_PATH_IS_FOLDER, false);
.putExtra(Document.EXTRA_PATH, file);
openActivityAndClose(openIntent, file);
}

Expand All @@ -44,7 +43,6 @@ protected void openActivityAndClose(final Intent openIntent, File file) {
FileUtils.writeFile(file, "");
}
openIntent.putExtra(Document.EXTRA_PATH, openIntent.hasExtra(Document.EXTRA_PATH) ? openIntent.getSerializableExtra(Document.EXTRA_PATH) : file);
openIntent.putExtra(Document.EXTRA_PATH_IS_FOLDER, openIntent.hasExtra(Document.EXTRA_PATH_IS_FOLDER) ? openIntent.getSerializableExtra(Document.EXTRA_PATH_IS_FOLDER) : file.isDirectory());
new ActivityUtils(this).animateToActivity(openIntent, true, 1).freeContextRef();
}
} catch (Exception ignored) {
Expand Down
Expand Up @@ -27,7 +27,7 @@ protected void onNewIntent(Intent intent) {
private void launchDocumentActivityAndFinish(Intent intent) {
Intent newIntent = new Intent(intent);
newIntent.setClass(this, DocumentActivity.class);
DocumentActivity.launch(this, null, null, null, newIntent, null);
DocumentActivity.launch(this, null, null, newIntent, null);
finish();
}
}
Expand Up @@ -23,7 +23,6 @@ protected void onCreate(@Nullable Bundle savedInstanceState) {

Intent openShare = new Intent(this, OpenEditorFromShortcutOrWidgetActivity.class)
.setAction(Intent.ACTION_SEND)
.putExtra(Document.EXTRA_PATH_IS_FOLDER, true)
.putExtra(Intent.EXTRA_TEXT, "");
openActivityAndClose(openShare, null);
}
Expand Down
Expand Up @@ -213,7 +213,7 @@ private void openLink() {
if (resolver.isWebLink()) {
new ContextUtils(_activity).openWebpageInExternalBrowser(resolvedLink);
} else {
DocumentActivity.launch(_activity, new File(resolvedLink), false, false, null, null);
DocumentActivity.launch(_activity, new File(resolvedLink), false, null, null);
}
}

Expand Down
8 changes: 1 addition & 7 deletions app/src/main/java/net/gsantner/markor/model/Document.java
Expand Up @@ -46,8 +46,6 @@ public class Document implements Serializable {

public static final String EXTRA_DOCUMENT = "EXTRA_DOCUMENT"; // Document
public static final String EXTRA_PATH = "EXTRA_PATH"; // java.io.File
public static final String EXTRA_PATH_IS_FOLDER = "EXTRA_PATH_IS_FOLDER"; // boolean

public static final String EXTRA_FILE_LINE_NUMBER = "EXTRA_FILE_LINE_NUMBER"; // int

private final File _file;
Expand Down Expand Up @@ -164,12 +162,8 @@ private static File getValidFile(Context context, Bundle arguments) {
// Default to notebook if null
file = (file == null) ? notebook : file;

// Default to notebook if IS_FOLDER conflicts
final boolean isFolder = arguments.getBoolean(EXTRA_PATH_IS_FOLDER, false);
file = (isFolder && file.exists() && !file.isDirectory()) ? notebook : file;

// Default to notebook if could not create directory
file = ((isFolder || file.isDirectory()) && !file.exists() && !file.mkdirs()) ? notebook : file;
file = (file.isDirectory() && !file.exists() && !file.mkdirs()) ? notebook : file;

// Try to
if (file.isDirectory()) {
Expand Down
Expand Up @@ -54,14 +54,10 @@ public boolean shouldOverrideUrlLoading(WebView view, String url) {
}
if (file.isDirectory()) {
_activity.startActivity(new Intent(_activity, MainActivity.class)
.putExtra(Document.EXTRA_PATH, file)
.putExtra(Document.EXTRA_PATH_IS_FOLDER, true)
);
.putExtra(Document.EXTRA_PATH, file));
} else if (TextFormat.isTextFile(file)) {
_activity.startActivity(new Intent(_activity, DocumentActivity.class)
.putExtra(Document.EXTRA_PATH, file)
.putExtra(DocumentActivity.EXTRA_DO_PREVIEW, true)
);
.putExtra(Document.EXTRA_PATH, file));
} else if (file.getName().toLowerCase().endsWith(".apk")) {
su.requestApkInstallation(file);
} else if ((mimetype = ContextUtils.getMimeType(url)) != null) {
Expand Down
Expand Up @@ -85,8 +85,7 @@ public RemoteViews getViewAt(final int position) {
rowView.setTextViewText(R.id.widget_note_title, "???");
if (position < _widgetFilesList.length) {
final File file = _widgetFilesList[position];
final Intent fillInIntent = new Intent().putExtra(Document.EXTRA_PATH, file)
.putExtra(Document.EXTRA_PATH_IS_FOLDER, file.isDirectory());
final Intent fillInIntent = new Intent().putExtra(Document.EXTRA_PATH, file);
rowView.setTextViewText(R.id.widget_note_title, file.getName());
rowView.setOnClickFillInIntent(R.id.widget_note_title, fillInIntent);
}
Expand Down
Expand Up @@ -71,43 +71,37 @@ public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] a
final Intent openShare = new Intent(context, OpenEditorFromShortcutOrWidgetActivity.class)
.setAction(Intent.ACTION_SEND)
.putExtra(Document.EXTRA_PATH, directoryF)
.putExtra(Document.EXTRA_PATH_IS_FOLDER, true)
.putExtra(Intent.EXTRA_TEXT, "");
views.setOnClickPendingIntent(R.id.widget_new_note, PendingIntent.getActivity(context, requestCode++, openShare, PendingIntent.FLAG_UPDATE_CURRENT));

// Open Folder
final Intent goToFolder = new Intent(context, MainActivity.class)
.setAction(Intent.ACTION_VIEW)
.putExtra(Document.EXTRA_PATH, directoryF)
.putExtra(Document.EXTRA_PATH_IS_FOLDER, true);
.putExtra(Document.EXTRA_PATH, directoryF);
views.setOnClickPendingIntent(R.id.widget_header, PendingIntent.getActivity(context, requestCode++, goToFolder, PendingIntent.FLAG_UPDATE_CURRENT));

// Open To-do
final Intent openTodo = new Intent(context, OpenEditorFromShortcutOrWidgetActivity.class)
.setAction(Intent.ACTION_EDIT)
.putExtra(Document.EXTRA_PATH, appSettings.getTodoFile())
.putExtra(Document.EXTRA_PATH_IS_FOLDER, false);
.putExtra(Document.EXTRA_PATH, appSettings.getTodoFile());
views.setOnClickPendingIntent(R.id.widget_todo, PendingIntent.getActivity(context, requestCode++, openTodo, PendingIntent.FLAG_UPDATE_CURRENT));

// Open QuickNote
final Intent openQuickNote = new Intent(context, OpenEditorFromShortcutOrWidgetActivity.class)
.setAction(Intent.ACTION_EDIT)
.putExtra(Document.EXTRA_PATH, appSettings.getQuickNoteFile())
.putExtra(Document.EXTRA_PATH_IS_FOLDER, false);
.putExtra(Document.EXTRA_PATH, appSettings.getQuickNoteFile());
views.setOnClickPendingIntent(R.id.widget_quicknote, PendingIntent.getActivity(context, requestCode++, openQuickNote, PendingIntent.FLAG_UPDATE_CURRENT));

// Open Notebook
final Intent goHome = new Intent(context, MainActivity.class)
.setAction(Intent.ACTION_VIEW)
.putExtra(Document.EXTRA_PATH, appSettings.getNotebookDirectory())
.putExtra(Document.EXTRA_PATH_IS_FOLDER, true);
.putExtra(Document.EXTRA_PATH, appSettings.getNotebookDirectory());
views.setOnClickPendingIntent(R.id.widget_main, PendingIntent.getActivity(context, requestCode++, goHome, PendingIntent.FLAG_UPDATE_CURRENT));

// ListView
final Intent notesListIntent = new Intent(context, WrFilesWidgetService.class)
.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId)
.putExtra(Document.EXTRA_PATH, directoryF)
.putExtra(Document.EXTRA_PATH_IS_FOLDER, true);
.putExtra(Document.EXTRA_PATH, directoryF);
notesListIntent.setData(Uri.parse(notesListIntent.toUri(Intent.URI_INTENT_SCHEME)));

views.setEmptyView(R.id.widget_list_container, R.id.widget_empty_hint);
Expand Down

0 comments on commit f404ed1

Please sign in to comment.