Skip to content

Commit

Permalink
expanded getNormalOrGutenbergEditPostActivityIntent parameters to bet…
Browse files Browse the repository at this point in the history
…ter decide which editor to offer depending on a) settings and b) Post content.
  • Loading branch information
mzorz committed Dec 27, 2018
1 parent ae235ce commit 2ccd179
Show file tree
Hide file tree
Showing 5 changed files with 11 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@
import org.wordpress.android.ui.plugins.PluginUtils;
import org.wordpress.android.ui.posts.EditPostActivity;
import org.wordpress.android.ui.posts.EditPostBaseActivity;
import org.wordpress.android.ui.posts.GutenbergEditPostActivity;
import org.wordpress.android.ui.posts.PostPreviewActivity;
import org.wordpress.android.ui.posts.PostsListActivity;
import org.wordpress.android.ui.prefs.AccountSettingsActivity;
Expand Down Expand Up @@ -589,7 +590,7 @@ public static void addNewPostForResult(Activity activity, SiteModel site, boolea
return;
}

Intent intent = EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(activity);
Intent intent = EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(activity, true, null);
intent.putExtra(WordPress.SITE, site);
intent.putExtra(EditPostBaseActivity.EXTRA_IS_PAGE, false);
intent.putExtra(EditPostBaseActivity.EXTRA_IS_PROMO, isPromo);
Expand All @@ -601,7 +602,7 @@ public static void editPostOrPageForResult(Activity activity, SiteModel site, Po
return;
}

Intent intent = EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(activity);
Intent intent = EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(activity, false, post);
intent.putExtra(WordPress.SITE, site);
// PostModel objects can be quite large, since content field is not size restricted,
// in order to avoid issues like TransactionTooLargeException it's better to pass the id of the post.
Expand All @@ -611,14 +612,14 @@ public static void editPostOrPageForResult(Activity activity, SiteModel site, Po
}

public static void editPageForResult(@NonNull Fragment fragment, @NonNull PageModel page) {
Intent intent = EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(fragment.getContext());
Intent intent = new Intent(fragment.getContext(), EditPostActivity.class);
intent.putExtra(WordPress.SITE, page.getSite());
intent.putExtra(EditPostBaseActivity.EXTRA_POST_LOCAL_ID, page.getPageId());
fragment.startActivityForResult(intent, RequestCodes.EDIT_POST);
}

public static void addNewPageForResult(@NonNull Fragment fragment, @NonNull SiteModel site) {
Intent intent = EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(fragment.getContext());
Intent intent = EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(fragment.getContext(), true, null);
intent.putExtra(WordPress.SITE, site);
intent.putExtra(EditPostBaseActivity.EXTRA_IS_PAGE, true);
intent.putExtra(EditPostBaseActivity.EXTRA_IS_PROMO, false);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ public void onClick(DialogInterface dialog, int which) {
ToastUtils.Duration.LONG);
} else {
Intent shortcutIntent =
EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(getApplicationContext());
EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(getApplicationContext(), true, null);
shortcutIntent.setAction(Intent.ACTION_MAIN);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;

import org.wordpress.android.ui.prefs.AppPrefs;
import org.wordpress.android.fluxc.model.PostModel;
import org.wordpress.android.util.LocaleManager;

public abstract class EditPostBaseActivity extends AppCompatActivity {
Expand Down Expand Up @@ -52,9 +52,9 @@ protected enum AddExistingMediaSource {
STOCK_PHOTO_LIBRARY
}

public static Intent getNormalOrGutenbergEditPostActivityIntent(Context context) {
public static Intent getNormalOrGutenbergEditPostActivityIntent(Context context, boolean isNewPost, PostModel post) {
Intent intent;
if (AppPrefs.isGutenbergEditorEnabled()) {
if (PostUtils.shouldShowGutenbergEditor(isNewPost, post)) {
intent = new Intent(context, GutenbergEditPostActivity.class);
} else {
intent = new Intent(context, EditPostActivity.class);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -408,7 +408,7 @@ void updateNotificationSuccessForMedia(@NonNull List<MediaModel> mediaList, @Non
if (mediaList != null && !mediaList.isEmpty()) {
ArrayList<MediaModel> mediaToIncludeInPost = new ArrayList<>(mediaList);

Intent writePostIntent = EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(mContext);
Intent writePostIntent = EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(mContext, true, null);
writePostIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
writePostIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
writePostIntent.putExtra(WordPress.SITE, site);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -393,7 +393,7 @@ public void onClick(View view) {
mediaListToInsertInPost.addAll(mediaList);

Intent writePostIntent =
EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(activity);
EditPostBaseActivity.getNormalOrGutenbergEditPostActivityIntent(activity, true, null);
writePostIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
writePostIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
writePostIntent.putExtra(WordPress.SITE, site);
Expand Down

0 comments on commit 2ccd179

Please sign in to comment.