Fixed android.view.DisplayListCanvas.throwIfCannotDraw in ViewPostDetailActivity. Fixed app crashes when pressing the comment button in ViewPostDetailActivity while the post is not loaded. Re-enable spalsh screen.

This commit is contained in:
Alex Ning 2019-09-17 08:44:48 +08:00
parent 4e036da000
commit 3592dc29da
5 changed files with 37 additions and 21 deletions

View File

@ -193,7 +193,7 @@
<activity <activity
android:name=".MainActivity" android:name=".MainActivity"
android:label="@string/app_name" android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBarWithTransparentStatusBar"> android:theme="@style/AppTheme.Launcher">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />

View File

@ -741,7 +741,6 @@ class CommentAndPostRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerVie
private void loadImage(PostDetailViewHolder holder) { private void loadImage(PostDetailViewHolder holder) {
RequestBuilder imageRequestBuilder = mGlide.load(mPost.getPreviewUrl()) RequestBuilder imageRequestBuilder = mGlide.load(mPost.getPreviewUrl())
.apply(new RequestOptions().override(mPost.getPreviewWidth(), mPost.getPreviewHeight()))
.listener(new RequestListener<Drawable>() { .listener(new RequestListener<Drawable>() {
@Override @Override
public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) { public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {

View File

@ -163,6 +163,8 @@ public class MainActivity extends AppCompatActivity implements SortTypeBottomShe
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
setTheme(R.style.AppTheme_NoActionBarWithTransparentStatusBar);
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); setContentView(R.layout.activity_main);

View File

@ -305,6 +305,9 @@ public class ViewPostDetailActivity extends AppCompatActivity implements FlairBo
if(mMenu != null) { if(mMenu != null) {
MenuItem saveItem = mMenu.findItem(R.id.action_save_view_post_detail_activity); MenuItem saveItem = mMenu.findItem(R.id.action_save_view_post_detail_activity);
MenuItem hideItem = mMenu.findItem(R.id.action_hide_view_post_detail_activity); MenuItem hideItem = mMenu.findItem(R.id.action_hide_view_post_detail_activity);
mMenu.findItem(R.id.action_comment_view_post_detail_activity).setVisible(true);
if(mAccessToken != null) { if(mAccessToken != null) {
if(mPost.isSaved()) { if(mPost.isSaved()) {
saveItem.setVisible(true); saveItem.setVisible(true);
@ -431,6 +434,9 @@ public class ViewPostDetailActivity extends AppCompatActivity implements FlairBo
if(mMenu != null) { if(mMenu != null) {
MenuItem saveItem = mMenu.findItem(R.id.action_save_view_post_detail_activity); MenuItem saveItem = mMenu.findItem(R.id.action_save_view_post_detail_activity);
MenuItem hideItem = mMenu.findItem(R.id.action_hide_view_post_detail_activity); MenuItem hideItem = mMenu.findItem(R.id.action_hide_view_post_detail_activity);
mMenu.findItem(R.id.action_comment_view_post_detail_activity).setVisible(true);
if(mAccessToken != null) { if(mAccessToken != null) {
if(post.isSaved()) { if(post.isSaved()) {
saveItem.setVisible(true); saveItem.setVisible(true);
@ -654,6 +660,9 @@ public class ViewPostDetailActivity extends AppCompatActivity implements FlairBo
if(mMenu != null) { if(mMenu != null) {
MenuItem saveItem = mMenu.findItem(R.id.action_save_view_post_detail_activity); MenuItem saveItem = mMenu.findItem(R.id.action_save_view_post_detail_activity);
MenuItem hideItem = mMenu.findItem(R.id.action_hide_view_post_detail_activity); MenuItem hideItem = mMenu.findItem(R.id.action_hide_view_post_detail_activity);
mMenu.findItem(R.id.action_comment_view_post_detail_activity).setVisible(true);
if(mAccessToken != null) { if(mAccessToken != null) {
if(post.isSaved()) { if(post.isSaved()) {
saveItem.setVisible(true); saveItem.setVisible(true);
@ -906,6 +915,9 @@ public class ViewPostDetailActivity extends AppCompatActivity implements FlairBo
if(mPost != null) { if(mPost != null) {
MenuItem saveItem = mMenu.findItem(R.id.action_save_view_post_detail_activity); MenuItem saveItem = mMenu.findItem(R.id.action_save_view_post_detail_activity);
MenuItem hideItem = mMenu.findItem(R.id.action_hide_view_post_detail_activity); MenuItem hideItem = mMenu.findItem(R.id.action_hide_view_post_detail_activity);
mMenu.findItem(R.id.action_comment_view_post_detail_activity).setVisible(true);
if(mAccessToken != null) { if(mAccessToken != null) {
if(mPost.isSaved()) { if(mPost.isSaved()) {
saveItem.setVisible(true); saveItem.setVisible(true);
@ -964,27 +976,29 @@ public class ViewPostDetailActivity extends AppCompatActivity implements FlairBo
refresh(true, true); refresh(true, true);
return true; return true;
case R.id.action_comment_view_post_detail_activity: case R.id.action_comment_view_post_detail_activity:
if(mPost.isArchived()) { if(mPost != null) {
showMessage(R.string.archived_post_reply_unavailable); if(mPost.isArchived()) {
return true; showMessage(R.string.archived_post_reply_unavailable);
} return true;
}
if(mPost.isLocked()) { if(mPost.isLocked()) {
showMessage(R.string.locked_post_comment_unavailable); showMessage(R.string.locked_post_comment_unavailable);
return true; return true;
} }
if(mAccessToken == null) { if(mAccessToken == null) {
showMessage(R.string.login_first); showMessage(R.string.login_first);
return true; return true;
} }
Intent intent = new Intent(this, CommentActivity.class); Intent intent = new Intent(this, CommentActivity.class);
intent.putExtra(CommentActivity.EXTRA_COMMENT_PARENT_TEXT_KEY, mPost.getTitle()); intent.putExtra(CommentActivity.EXTRA_COMMENT_PARENT_TEXT_KEY, mPost.getTitle());
intent.putExtra(CommentActivity.EXTRA_PARENT_FULLNAME_KEY, mPost.getFullName()); intent.putExtra(CommentActivity.EXTRA_PARENT_FULLNAME_KEY, mPost.getFullName());
intent.putExtra(CommentActivity.EXTRA_PARENT_DEPTH_KEY, 0); intent.putExtra(CommentActivity.EXTRA_PARENT_DEPTH_KEY, 0);
intent.putExtra(CommentActivity.EXTRA_IS_REPLYING_KEY, false); intent.putExtra(CommentActivity.EXTRA_IS_REPLYING_KEY, false);
startActivityForResult(intent, WRITE_COMMENT_REQUEST_CODE); startActivityForResult(intent, WRITE_COMMENT_REQUEST_CODE);
}
return true; return true;
case R.id.action_save_view_post_detail_activity: case R.id.action_save_view_post_detail_activity:
if(mPost != null && mAccessToken != null) { if(mPost != null && mAccessToken != null) {

View File

@ -6,7 +6,8 @@
android:orderInCategory="1" android:orderInCategory="1"
android:title="@string/action_add_comment" android:title="@string/action_add_comment"
android:icon="@drawable/ic_insert_comment_white_24dp" android:icon="@drawable/ic_insert_comment_white_24dp"
app:showAsAction="ifRoom" /> app:showAsAction="ifRoom"
android:visible="false" />
<item <item
android:id="@+id/action_save_view_post_detail_activity" android:id="@+id/action_save_view_post_detail_activity"