Preserve status states on updates. UI layer refactoring.

Some things were pulled out of adapters to fragments. New classes were introduced - StatusViewData and NotificationViewData. They not only have view state in them but also help decoupling.
Because introducing parallel model list requires a lot of synchronisation PairedList was added.
Also synchronisation between fragments and adapters is quiet tedious and error-prone and should be replaces with better solution.
Oh, I also couldn’t resist and fixed bug with buttons animation in the same commit.
This commit is contained in:
Ivan Kupalov 2017-07-12 22:54:52 +03:00
commit 90c1a83ba4
15 changed files with 1194 additions and 358 deletions

View file

@ -17,6 +17,7 @@ package com.keylesspalace.tusky.interfaces;
import android.view.View;
import com.keylesspalace.tusky.adapter.StatusViewHolder;
import com.keylesspalace.tusky.entity.Status;
public interface StatusActionListener extends LinkListener {
@ -27,4 +28,6 @@ public interface StatusActionListener extends LinkListener {
void onViewMedia(String[] urls, int index, Status.MediaAttachment.Type type);
void onViewThread(int position);
void onOpenReblog(int position);
void onExpandedChange(boolean expanded, int position);
void onContentHiddenChange(boolean isShowing, int position);
}