|
@ -19,7 +19,6 @@ package eu.faircode.email; |
|
|
Copyright 2018 by Marcel Bokhorst (M66B) |
|
|
Copyright 2018 by Marcel Bokhorst (M66B) |
|
|
*/ |
|
|
*/ |
|
|
|
|
|
|
|
|
import android.content.Context; |
|
|
|
|
|
import android.content.Intent; |
|
|
import android.content.Intent; |
|
|
import android.os.Bundle; |
|
|
import android.os.Bundle; |
|
|
import android.preference.PreferenceManager; |
|
|
import android.preference.PreferenceManager; |
|
@ -37,9 +36,6 @@ import androidx.annotation.Nullable; |
|
|
import androidx.constraintlayout.widget.Group; |
|
|
import androidx.constraintlayout.widget.Group; |
|
|
import androidx.lifecycle.LiveData; |
|
|
import androidx.lifecycle.LiveData; |
|
|
import androidx.lifecycle.Observer; |
|
|
import androidx.lifecycle.Observer; |
|
|
import androidx.loader.app.LoaderManager; |
|
|
|
|
|
import androidx.loader.content.AsyncTaskLoader; |
|
|
|
|
|
import androidx.loader.content.Loader; |
|
|
|
|
|
import androidx.paging.LivePagedListBuilder; |
|
|
import androidx.paging.LivePagedListBuilder; |
|
|
import androidx.paging.PagedList; |
|
|
import androidx.paging.PagedList; |
|
|
import androidx.recyclerview.widget.LinearLayoutManager; |
|
|
import androidx.recyclerview.widget.LinearLayoutManager; |
|
@ -95,7 +91,6 @@ public class FragmentMessages extends FragmentEx { |
|
|
tvNoEmail.setVisibility(View.GONE); |
|
|
tvNoEmail.setVisibility(View.GONE); |
|
|
grpReady.setVisibility(View.GONE); |
|
|
grpReady.setVisibility(View.GONE); |
|
|
pbWait.setVisibility(View.VISIBLE); |
|
|
pbWait.setVisibility(View.VISIBLE); |
|
|
fab.setVisibility(View.GONE); |
|
|
|
|
|
|
|
|
|
|
|
return view; |
|
|
return view; |
|
|
} |
|
|
} |
|
@ -150,45 +145,5 @@ public class FragmentMessages extends FragmentEx { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
LoaderManager.getInstance(this) |
|
|
|
|
|
.restartLoader(ActivityView.LOADER_MESSAGES_INIT, new Bundle(), initLoaderCallbacks).forceLoad(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private static class InitLoader extends AsyncTaskLoader<Bundle> { |
|
|
|
|
|
InitLoader(@NonNull Context context) { |
|
|
|
|
|
super(context); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Nullable |
|
|
|
|
|
@Override |
|
|
|
|
|
public Bundle loadInBackground() { |
|
|
|
|
|
Bundle result = new Bundle(); |
|
|
|
|
|
try { |
|
|
|
|
|
EntityFolder drafts = DB.getInstance(getContext()).folder().getPrimaryFolder(EntityFolder.TYPE_DRAFTS); |
|
|
|
|
|
result.putBoolean("drafts", drafts != null); |
|
|
|
|
|
} catch (Throwable ex) { |
|
|
|
|
|
Log.e(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex)); |
|
|
|
|
|
result.putBoolean("drafts", false); |
|
|
|
|
|
} |
|
|
|
|
|
return result; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private LoaderManager.LoaderCallbacks initLoaderCallbacks = new LoaderManager.LoaderCallbacks<Bundle>() { |
|
|
|
|
|
@NonNull |
|
|
|
|
|
@Override |
|
|
|
|
|
public Loader<Bundle> onCreateLoader(int id, @Nullable Bundle args) { |
|
|
|
|
|
return new InitLoader(getContext()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void onLoadFinished(@NonNull Loader<Bundle> loader, Bundle data) { |
|
|
|
|
|
fab.setVisibility(data.getBoolean("drafts", false) ? View.VISIBLE : View.GONE); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public void onLoaderReset(@NonNull Loader<Bundle> loader) { |
|
|
|
|
|
} |
|
|
|
|
|
}; |
|
|
|
|
|
} |
|
|
} |