mirror of
https://github.com/KokaKiwi/BarInsta
synced 2024-11-22 06:37:30 +00:00
convert some to kotlin
This commit is contained in:
parent
37b4817bd7
commit
972f71c480
@ -11,20 +11,19 @@ import androidx.recyclerview.widget.ListAdapter;
|
||||
import awais.instagrabber.adapters.viewholder.TopicClusterViewHolder;
|
||||
import awais.instagrabber.databinding.ItemDiscoverTopicBinding;
|
||||
import awais.instagrabber.repositories.responses.saved.SavedCollection;
|
||||
import awais.instagrabber.utils.ResponseBodyUtils;
|
||||
|
||||
public class SavedCollectionsAdapter extends ListAdapter<SavedCollection, TopicClusterViewHolder> {
|
||||
private static final DiffUtil.ItemCallback<SavedCollection> DIFF_CALLBACK = new DiffUtil.ItemCallback<SavedCollection>() {
|
||||
@Override
|
||||
public boolean areItemsTheSame(@NonNull final SavedCollection oldItem, @NonNull final SavedCollection newItem) {
|
||||
return oldItem.getId().equals(newItem.getId());
|
||||
return oldItem.getCollectionId().equals(newItem.getCollectionId());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean areContentsTheSame(@NonNull final SavedCollection oldItem, @NonNull final SavedCollection newItem) {
|
||||
if (oldItem.getCoverMedias() != null && newItem.getCoverMedias() != null
|
||||
&& oldItem.getCoverMedias().size() == newItem.getCoverMedias().size()) {
|
||||
return oldItem.getCoverMedias().get(0).getId().equals(newItem.getCoverMedias().get(0).getId());
|
||||
if (oldItem.getCoverMediaList() != null && newItem.getCoverMediaList() != null
|
||||
&& oldItem.getCoverMediaList().size() == newItem.getCoverMediaList().size()) {
|
||||
return oldItem.getCoverMediaList().get(0).getId().equals(newItem.getCoverMediaList().get(0).getId());
|
||||
}
|
||||
else if (oldItem.getCoverMedia() != null && newItem.getCoverMedia() != null) {
|
||||
return oldItem.getCoverMedia().getId().equals(newItem.getCoverMedia().getId());
|
||||
|
@ -128,11 +128,11 @@ public class TopicClusterViewHolder extends RecyclerView.ViewHolder {
|
||||
backgroundColor.get()
|
||||
));
|
||||
}
|
||||
// binding.title.setTransitionName("title-" + topicCluster.getId());
|
||||
binding.cover.setTransitionName("cover-" + topicCluster.getId());
|
||||
final String thumbUrl = ResponseBodyUtils.getThumbUrl(topicCluster.getCoverMedias() == null
|
||||
// binding.title.setTransitionName("title-" + topicCluster.getCollectionId());
|
||||
binding.cover.setTransitionName("cover-" + topicCluster.getCollectionId());
|
||||
final String thumbUrl = ResponseBodyUtils.getThumbUrl(topicCluster.getCoverMediaList() == null
|
||||
? topicCluster.getCoverMedia()
|
||||
: topicCluster.getCoverMedias().get(0));
|
||||
: topicCluster.getCoverMediaList().get(0));
|
||||
if (thumbUrl == null) {
|
||||
binding.cover.setImageURI((String) null);
|
||||
} else {
|
||||
@ -174,6 +174,6 @@ public class TopicClusterViewHolder extends RecyclerView.ViewHolder {
|
||||
}, CallerThreadExecutor.getInstance());
|
||||
binding.cover.setImageRequest(imageRequest);
|
||||
}
|
||||
binding.title.setText(topicCluster.getTitle());
|
||||
binding.title.setText(topicCluster.getCollectionName());
|
||||
}
|
||||
}
|
||||
|
@ -297,7 +297,7 @@ public class CollectionPostsFragment extends Fragment implements SwipeRefreshLay
|
||||
.setTitle(R.string.delete_collection)
|
||||
.setMessage(R.string.delete_collection_note)
|
||||
.setPositiveButton(R.string.confirm, (d, w) -> collectionService.deleteCollection(
|
||||
savedCollection.getId(),
|
||||
savedCollection.getCollectionId(),
|
||||
new ServiceCallback<String>() {
|
||||
@Override
|
||||
public void onSuccess(final String result) {
|
||||
@ -325,7 +325,7 @@ public class CollectionPostsFragment extends Fragment implements SwipeRefreshLay
|
||||
.setTitle(R.string.edit_collection)
|
||||
.setView(input)
|
||||
.setPositiveButton(R.string.confirm, (d, w) -> collectionService.editCollectionName(
|
||||
savedCollection.getId(),
|
||||
savedCollection.getCollectionId(),
|
||||
input.getText().toString(),
|
||||
new ServiceCallback<String>() {
|
||||
@Override
|
||||
@ -408,9 +408,9 @@ public class CollectionPostsFragment extends Fragment implements SwipeRefreshLay
|
||||
if (savedCollection == null) {
|
||||
return;
|
||||
}
|
||||
binding.cover.setTransitionName("collection-" + savedCollection.getId());
|
||||
binding.cover.setTransitionName("collection-" + savedCollection.getCollectionId());
|
||||
fragmentActivity.setToolbar(binding.toolbar);
|
||||
binding.collapsingToolbarLayout.setTitle(savedCollection.getTitle());
|
||||
binding.collapsingToolbarLayout.setTitle(savedCollection.getCollectionName());
|
||||
final int collapsedTitleTextColor = ColorUtils.setAlphaComponent(titleColor, 0xFF);
|
||||
final int expandedTitleTextColor = ColorUtils.setAlphaComponent(titleColor, 0x99);
|
||||
binding.collapsingToolbarLayout.setExpandedTitleColor(expandedTitleTextColor);
|
||||
@ -442,9 +442,9 @@ public class CollectionPostsFragment extends Fragment implements SwipeRefreshLay
|
||||
}
|
||||
|
||||
private void setupCover() {
|
||||
final String coverUrl = ResponseBodyUtils.getImageUrl(savedCollection.getCoverMedias() == null
|
||||
final String coverUrl = ResponseBodyUtils.getImageUrl(savedCollection.getCoverMediaList() == null
|
||||
? savedCollection.getCoverMedia()
|
||||
: savedCollection.getCoverMedias().get(0));
|
||||
: savedCollection.getCoverMediaList().get(0));
|
||||
final DraweeController controller = Fresco
|
||||
.newDraweeControllerBuilder()
|
||||
.setOldController(binding.cover.getController())
|
||||
@ -471,7 +471,7 @@ public class CollectionPostsFragment extends Fragment implements SwipeRefreshLay
|
||||
private void setupPosts() {
|
||||
binding.posts.setViewModelStoreOwner(this)
|
||||
.setLifeCycleOwner(this)
|
||||
.setPostFetchService(new SavedPostFetchService(0, PostItemType.COLLECTION, true, savedCollection.getId()))
|
||||
.setPostFetchService(new SavedPostFetchService(0, PostItemType.COLLECTION, true, savedCollection.getCollectionId()))
|
||||
.setLayoutPreferences(layoutPreferences)
|
||||
.addFetchStatusChangeListener(fetching -> updateSwipeRefreshState())
|
||||
.setFeedItemCallback(feedItemCallback)
|
||||
|
@ -145,12 +145,12 @@ public class SavedCollectionsFragment extends Fragment implements SwipeRefreshLa
|
||||
final SavedCollectionsAdapter adapter = new SavedCollectionsAdapter((topicCluster, root, cover, title, titleColor, backgroundColor) -> {
|
||||
final NavController navController = NavHostFragment.findNavController(this);
|
||||
if (isSaving) {
|
||||
setNavControllerResult(navController, topicCluster.getId());
|
||||
setNavControllerResult(navController, topicCluster.getCollectionId());
|
||||
navController.navigateUp();
|
||||
} else {
|
||||
try {
|
||||
final FragmentNavigator.Extras.Builder builder = new FragmentNavigator.Extras.Builder()
|
||||
.addSharedElement(cover, "collection-" + topicCluster.getId());
|
||||
.addSharedElement(cover, "collection-" + topicCluster.getCollectionId());
|
||||
final SavedCollectionsFragmentDirections.ActionSavedCollectionsFragmentToCollectionPostsFragment action = SavedCollectionsFragmentDirections
|
||||
.actionSavedCollectionsFragmentToCollectionPostsFragment(topicCluster, titleColor, backgroundColor);
|
||||
navController.navigate(action, builder.build());
|
||||
|
@ -1,29 +1,11 @@
|
||||
package awais.instagrabber.repositories.responses.notification;
|
||||
package awais.instagrabber.repositories.responses.notification
|
||||
|
||||
import awais.instagrabber.models.enums.NotificationType;
|
||||
import awais.instagrabber.models.enums.NotificationType
|
||||
import awais.instagrabber.models.enums.NotificationType.Companion.valueOfType
|
||||
|
||||
public class Notification {
|
||||
private final NotificationArgs args;
|
||||
private final int storyType;
|
||||
private final String pk;
|
||||
|
||||
public Notification(final NotificationArgs args,
|
||||
final int storyType,
|
||||
final String pk) {
|
||||
this.args = args;
|
||||
this.storyType = storyType;
|
||||
this.pk = pk;
|
||||
}
|
||||
|
||||
public NotificationArgs getArgs() {
|
||||
return args;
|
||||
}
|
||||
|
||||
public NotificationType getType() {
|
||||
return NotificationType.valueOfType(storyType);
|
||||
}
|
||||
|
||||
public String getPk() {
|
||||
return pk;
|
||||
}
|
||||
class Notification(val args: NotificationArgs,
|
||||
private val storyType: Int,
|
||||
val pk: String) {
|
||||
val type: NotificationType?
|
||||
get() = valueOfType(storyType)
|
||||
}
|
@ -1,55 +1,9 @@
|
||||
package awais.instagrabber.repositories.responses.notification;
|
||||
package awais.instagrabber.repositories.responses.notification
|
||||
|
||||
public class NotificationCounts {
|
||||
private final int commentLikes;
|
||||
private final int usertags;
|
||||
private final int likes;
|
||||
private final int comments;
|
||||
private final int relationships;
|
||||
private final int photosOfYou;
|
||||
private final int requests;
|
||||
|
||||
public NotificationCounts(final int commentLikes,
|
||||
final int usertags,
|
||||
final int likes,
|
||||
final int comments,
|
||||
final int relationships,
|
||||
final int photosOfYou,
|
||||
final int requests) {
|
||||
this.commentLikes = commentLikes;
|
||||
this.usertags = usertags;
|
||||
this.likes = likes;
|
||||
this.comments = comments;
|
||||
this.relationships = relationships;
|
||||
this.photosOfYou = photosOfYou;
|
||||
this.requests = requests;
|
||||
}
|
||||
|
||||
public int getRelationshipsCount() {
|
||||
return relationships;
|
||||
}
|
||||
|
||||
public int getUserTagsCount() {
|
||||
return usertags;
|
||||
}
|
||||
|
||||
public int getCommentsCount() {
|
||||
return comments;
|
||||
}
|
||||
|
||||
public int getCommentLikesCount() {
|
||||
return commentLikes;
|
||||
}
|
||||
|
||||
public int getLikesCount() {
|
||||
return likes;
|
||||
}
|
||||
|
||||
public int getPOYCount() {
|
||||
return photosOfYou;
|
||||
}
|
||||
|
||||
public int getRequestsCount() {
|
||||
return requests;
|
||||
}
|
||||
}
|
||||
class NotificationCounts(val commentLikesCount: Int,
|
||||
val userTagsCount: Int,
|
||||
val likesCount: Int,
|
||||
val commentsCount: Int,
|
||||
val relationshipsCount: Int,
|
||||
val pOYCount: Int,
|
||||
val requestsCount: Int)
|
@ -1,19 +1,3 @@
|
||||
package awais.instagrabber.repositories.responses.notification;
|
||||
package awais.instagrabber.repositories.responses.notification
|
||||
|
||||
public class NotificationImage {
|
||||
private final String id;
|
||||
private final String image;
|
||||
|
||||
public NotificationImage(final String id, final String image) {
|
||||
this.id = id;
|
||||
this.image = image;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public String getImage() {
|
||||
return image;
|
||||
}
|
||||
}
|
||||
class NotificationImage(val id: String, val image: String)
|
@ -1,50 +1,12 @@
|
||||
package awais.instagrabber.repositories.responses.saved;
|
||||
package awais.instagrabber.repositories.responses.saved
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class CollectionsListResponse {
|
||||
private final boolean moreAvailable;
|
||||
private final String nextMaxId;
|
||||
private final String maxId;
|
||||
private final String status;
|
||||
// private final int numResults;
|
||||
private final List<SavedCollection> items;
|
||||
|
||||
public CollectionsListResponse(final boolean moreAvailable,
|
||||
final String nextMaxId,
|
||||
final String maxId,
|
||||
final String status,
|
||||
// final int numResults,
|
||||
final List<SavedCollection> items) {
|
||||
this.moreAvailable = moreAvailable;
|
||||
this.nextMaxId = nextMaxId;
|
||||
this.maxId = maxId;
|
||||
this.status = status;
|
||||
// this.numResults = numResults;
|
||||
this.items = items;
|
||||
}
|
||||
|
||||
public boolean isMoreAvailable() {
|
||||
return moreAvailable;
|
||||
}
|
||||
|
||||
public String getNextMaxId() {
|
||||
return nextMaxId;
|
||||
}
|
||||
|
||||
public String getMaxId() {
|
||||
return maxId;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
|
||||
// public int getNumResults() {
|
||||
// return numResults;
|
||||
// }
|
||||
|
||||
public List<SavedCollection> getItems() {
|
||||
return items;
|
||||
}
|
||||
}
|
||||
class CollectionsListResponse // this.numResults = numResults;
|
||||
(val isMoreAvailable: Boolean,
|
||||
val nextMaxId: String,
|
||||
val maxId: String,
|
||||
val status: String, // final int numResults,
|
||||
// public int getNumResults() {
|
||||
// return numResults;
|
||||
// }
|
||||
// private final int numResults;
|
||||
val items: List<SavedCollection>)
|
@ -1,54 +1,12 @@
|
||||
package awais.instagrabber.repositories.responses.saved;
|
||||
package awais.instagrabber.repositories.responses.saved
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
import awais.instagrabber.repositories.responses.Media
|
||||
import java.io.Serializable
|
||||
|
||||
import awais.instagrabber.repositories.responses.Media;
|
||||
|
||||
public class SavedCollection implements Serializable {
|
||||
private final String collectionId;
|
||||
private final String collectionName;
|
||||
private final String collectionType;
|
||||
private final int collectionMediacount;
|
||||
private final Media coverMedia;
|
||||
private final List<Media> coverMediaList;
|
||||
|
||||
public SavedCollection(final String collectionId,
|
||||
final String collectionName,
|
||||
final String collectionType,
|
||||
final int collectionMediacount,
|
||||
final Media coverMedia,
|
||||
final List<Media> coverMediaList) {
|
||||
this.collectionId = collectionId;
|
||||
this.collectionName = collectionName;
|
||||
this.collectionType = collectionType;
|
||||
this.collectionMediacount = collectionMediacount;
|
||||
this.coverMedia = coverMedia;
|
||||
this.coverMediaList = coverMediaList;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return collectionId;
|
||||
}
|
||||
|
||||
public String getTitle() {
|
||||
return collectionName;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return collectionType;
|
||||
}
|
||||
|
||||
public int getMediaCount() {
|
||||
return collectionMediacount;
|
||||
}
|
||||
|
||||
// check the list first, then the single
|
||||
// i have no idea what condition is required
|
||||
|
||||
public Media getCoverMedia() { return coverMedia; }
|
||||
|
||||
public List<Media> getCoverMedias() {
|
||||
return coverMediaList;
|
||||
}
|
||||
}
|
||||
class SavedCollection(val collectionId: String,
|
||||
val collectionName: String,
|
||||
val collectionType: String,
|
||||
val collectionMediaCount: Int,
|
||||
// coverMedia or coverMediaList: only one is defined
|
||||
val coverMedia: Media,
|
||||
val coverMediaList: List<Media>) : Serializable
|
@ -1,46 +1,10 @@
|
||||
package awais.instagrabber.repositories.responses.search;
|
||||
package awais.instagrabber.repositories.responses.search
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class SearchResponse {
|
||||
// app
|
||||
private final List<SearchItem> list;
|
||||
// browser
|
||||
private final List<SearchItem> users;
|
||||
private final List<SearchItem> places;
|
||||
private final List<SearchItem> hashtags;
|
||||
// universal
|
||||
private final String status;
|
||||
|
||||
public SearchResponse(final List<SearchItem> list,
|
||||
final List<SearchItem> users,
|
||||
final List<SearchItem> places,
|
||||
final List<SearchItem> hashtags,
|
||||
final String status) {
|
||||
this.list = list;
|
||||
this.users = users;
|
||||
this.places = places;
|
||||
this.hashtags = hashtags;
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
public List<SearchItem> getList() {
|
||||
return list;
|
||||
}
|
||||
|
||||
public List<SearchItem> getUsers() {
|
||||
return users;
|
||||
}
|
||||
|
||||
public List<SearchItem> getPlaces() {
|
||||
return places;
|
||||
}
|
||||
|
||||
public List<SearchItem> getHashtags() {
|
||||
return hashtags;
|
||||
}
|
||||
|
||||
public String getStatus() {
|
||||
return status;
|
||||
}
|
||||
}
|
||||
class SearchResponse(// app
|
||||
val list: List<SearchItem>,
|
||||
// browser
|
||||
val users: List<SearchItem>,
|
||||
val places: List<SearchItem>,
|
||||
val hashtags: List<SearchItem>,
|
||||
// universal
|
||||
val status: String)
|
Loading…
Reference in New Issue
Block a user