use of com.odysee.app.dialog.ContentFromDialogFragment in project odysee-android by OdyseeTeam.
the class ChannelContentFragment method onCreateView.
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View root = inflater.inflate(R.layout.fragment_channel_content, container, false);
currentSortBy = ContentSortDialogFragment.ITEM_SORT_BY_NEW;
currentContentFrom = ContentFromDialogFragment.ITEM_FROM_PAST_WEEK;
sortLink = root.findViewById(R.id.channel_content_sort_link);
contentFromLink = root.findViewById(R.id.channel_content_time_link);
sortLinkText = root.findViewById(R.id.channel_content_sort_link_text);
contentFromLinkText = root.findViewById(R.id.channel_content_time_link_text);
bigContentLoading = root.findViewById(R.id.channel_content_main_progress);
contentLoading = root.findViewById(R.id.channel_content_load_progress);
noContentView = root.findViewById(R.id.channel_content_no_claim_search_content);
contentList = root.findViewById(R.id.channel_content_list);
LinearLayoutManager llm = new LinearLayoutManager(getContext());
contentList.setLayoutManager(llm);
contentList.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
if (contentClaimSearchLoading) {
return;
}
LinearLayoutManager lm = (LinearLayoutManager) recyclerView.getLayoutManager();
if (lm != null) {
int visibleItemCount = lm.getChildCount();
int totalItemCount = lm.getItemCount();
int pastVisibleItems = lm.findFirstVisibleItemPosition();
if (pastVisibleItems + visibleItemCount >= totalItemCount) {
if (!contentHasReachedEnd) {
// load more
currentClaimSearchPage++;
fetchClaimSearchContent();
}
}
}
}
});
sortLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ContentSortDialogFragment dialog = ContentSortDialogFragment.newInstance();
dialog.setCurrentSortByItem(currentSortBy);
dialog.setSortByListener(new ContentSortDialogFragment.SortByListener() {
@Override
public void onSortByItemSelected(int sortBy) {
onSortByChanged(sortBy);
}
});
Context context = getContext();
if (context instanceof MainActivity) {
MainActivity activity = (MainActivity) context;
dialog.show(activity.getSupportFragmentManager(), ContentSortDialogFragment.TAG);
}
}
});
contentFromLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ContentFromDialogFragment dialog = ContentFromDialogFragment.newInstance();
dialog.setCurrentFromItem(currentContentFrom);
dialog.setContentFromListener(new ContentFromDialogFragment.ContentFromListener() {
@Override
public void onContentFromItemSelected(int contentFromItem) {
onContentFromChanged(contentFromItem);
}
});
Context context = getContext();
if (context instanceof MainActivity) {
MainActivity activity = (MainActivity) context;
dialog.show(activity.getSupportFragmentManager(), ContentFromDialogFragment.TAG);
}
}
});
return root;
}
use of com.odysee.app.dialog.ContentFromDialogFragment in project odysee-android by OdyseeTeam.
the class FollowingFragment method onCreateView.
@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View root = inflater.inflate(R.layout.fragment_following, container, false);
// Following page is sorted by new by default, past week if sort is top
currentSortBy = ContentSortDialogFragment.ITEM_SORT_BY_NEW;
currentContentFrom = ContentFromDialogFragment.ITEM_FROM_PAST_WEEK;
findFollowingContainer = root.findViewById(R.id.find_following_container);
titleView = root.findViewById(R.id.find_following_page_title);
infoView = root.findViewById(R.id.following_page_info);
horizontalChannelList = root.findViewById(R.id.following_channel_list);
layoutSortContainer = root.findViewById(R.id.following_filter_container);
sortLink = root.findViewById(R.id.following_sort_link);
sortLinkText = root.findViewById(R.id.following_sort_link_text);
filterLink = root.findViewById(R.id.filter_by_channel_link);
contentFromLink = root.findViewById(R.id.following_time_link);
contentFromLinkText = root.findViewById(R.id.following_time_link_text);
suggestedChannelGrid = root.findViewById(R.id.following_suggested_grid);
suggestedDoneButton = root.findViewById(R.id.following_suggested_done_button);
contentList = root.findViewById(R.id.following_content_list);
bigContentLoading = root.findViewById(R.id.following_main_progress);
contentLoading = root.findViewById(R.id.following_content_progress);
channelListLoading = root.findViewById(R.id.following_channel_load_progress);
discoverLink = root.findViewById(R.id.following_discover_link);
noContentView = root.findViewById(R.id.following_no_claim_search_content);
Context context = getContext();
GridLayoutManager glm = new GridLayoutManager(context, 3);
suggestedChannelGrid.setLayoutManager(glm);
suggestedChannelGrid.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
if (suggestedClaimSearchLoading) {
return;
}
GridLayoutManager lm = (GridLayoutManager) recyclerView.getLayoutManager();
if (lm != null) {
int visibleItemCount = lm.getChildCount();
int totalItemCount = lm.getItemCount();
int pastVisibleItems = lm.findFirstVisibleItemPosition();
if (pastVisibleItems + visibleItemCount >= totalItemCount) {
if (!suggestedHasReachedEnd) {
// load more
currentSuggestedPage++;
fetchSuggestedChannels();
}
}
}
}
});
LinearLayoutManager cllm = new LinearLayoutManager(context, RecyclerView.HORIZONTAL, false);
horizontalChannelList.setLayoutManager(cllm);
LinearLayoutManager llm = new LinearLayoutManager(context);
contentList.setLayoutManager(llm);
contentList.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
if (contentClaimSearchLoading) {
return;
}
LinearLayoutManager lm = (LinearLayoutManager) recyclerView.getLayoutManager();
if (lm != null) {
int visibleItemCount = lm.getChildCount();
int totalItemCount = lm.getItemCount();
int pastVisibleItems = lm.findFirstVisibleItemPosition();
if (pastVisibleItems + visibleItemCount >= totalItemCount) {
if (!contentHasReachedEnd) {
// load more
currentClaimSearchPage++;
fetchClaimSearchContent();
}
}
}
}
});
suggestedDoneButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int selected = suggestedChannelAdapter == null ? 0 : suggestedChannelAdapter.getSelectedCount();
int remaining = MIN_SUGGESTED_SUBSCRIBE_COUNT - selected;
if (remaining == MIN_SUGGESTED_SUBSCRIBE_COUNT) {
Snackbar.make(getView(), R.string.select_five_subscriptions, Snackbar.LENGTH_LONG).show();
} else {
fetchSubscriptions();
showSubscribedContent();
fetchAndResolveChannelList();
}
}
});
if (context != null) {
SharedPreferences sharedpreferences = context.getSharedPreferences("lbry_shared_preferences", Context.MODE_PRIVATE);
Helper.setViewVisibility(horizontalChannelList, sharedpreferences.getBoolean("subscriptions_filter_visibility", false) ? View.VISIBLE : View.GONE);
}
filterLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Helper.setViewVisibility(horizontalChannelList, horizontalChannelList.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE);
}
});
sortLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ContentSortDialogFragment dialog = ContentSortDialogFragment.newInstance();
dialog.setCurrentSortByItem(currentSortBy);
dialog.setSortByListener(new ContentSortDialogFragment.SortByListener() {
@Override
public void onSortByItemSelected(int sortBy) {
onSortByChanged(sortBy);
}
});
Context context = getContext();
if (context instanceof MainActivity) {
MainActivity activity = (MainActivity) context;
dialog.show(activity.getSupportFragmentManager(), ContentSortDialogFragment.TAG);
}
}
});
contentFromLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ContentFromDialogFragment dialog = ContentFromDialogFragment.newInstance();
dialog.setCurrentFromItem(currentContentFrom);
dialog.setContentFromListener(new ContentFromDialogFragment.ContentFromListener() {
@Override
public void onContentFromItemSelected(int contentFromItem) {
onContentFromChanged(contentFromItem);
}
});
Context context = getContext();
if (context instanceof MainActivity) {
MainActivity activity = (MainActivity) context;
dialog.show(activity.getSupportFragmentManager(), ContentFromDialogFragment.TAG);
}
}
});
discoverLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Helper.setViewEnabled(discoverLink, false);
buildChannelIdsAndUrls();
currentSuggestedPage = 1;
discoverDialog = DiscoverDialogFragment.newInstance();
discoverDialog.setAdapter(suggestedChannelAdapter);
discoverDialog.setDialogActionsListener(new DiscoverDialogFragment.DiscoverDialogListener() {
@Override
public void onScrollEndReached() {
if (suggestedClaimSearchLoading) {
return;
}
currentSuggestedPage++;
fetchSuggestedChannels();
}
@Override
public void onCancel() {
discoverDialog = null;
excludeChannelIdsForDiscover = null;
if (suggestedChannelAdapter != null) {
suggestedChannelAdapter.clearItems();
}
Helper.setViewEnabled(discoverLink, true);
}
@Override
public void onResume() {
if (suggestedChannelAdapter == null || suggestedChannelAdapter.getItemCount() == 0) {
discoverDialog.setLoading(true);
fetchSuggestedChannels();
}
}
});
Context context = getContext();
if (context instanceof MainActivity) {
MainActivity activity = (MainActivity) context;
discoverDialog.show(activity.getSupportFragmentManager(), DiscoverDialogFragment.TAG);
}
}
});
return root;
}
use of com.odysee.app.dialog.ContentFromDialogFragment in project odysee-android by OdyseeTeam.
the class AllContentFragment method onCreateView.
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View root = inflater.inflate(R.layout.fragment_all_content, container, false);
// All content page is sorted by trending by default, past week if sort is top
currentSortBy = ContentSortDialogFragment.ITEM_SORT_BY_TRENDING;
currentContentFrom = ContentFromDialogFragment.ITEM_FROM_PAST_WEEK;
layoutFilterContainer = root.findViewById(R.id.all_content_filter_container);
sortLink = root.findViewById(R.id.all_content_sort_link);
contentFromLink = root.findViewById(R.id.all_content_time_link);
customizeLink = root.findViewById(R.id.all_content_customize_link);
fromPrefix = root.findViewById(R.id.all_content_from_prefix);
sortLinkText = root.findViewById(R.id.all_content_sort_link_text);
contentFromLinkText = root.findViewById(R.id.all_content_time_link_text);
bigContentLoading = root.findViewById(R.id.all_content_main_progress);
contentLoading = root.findViewById(R.id.all_content_load_progress);
noContentView = root.findViewById(R.id.all_content_no_claim_search_content);
categorySelection = root.findViewById(R.id.category_selection_chipgroup);
categorySelection.setOnCheckedChangeListener(new ChipGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(ChipGroup group, int checkedId) {
Chip chip = group.findViewById(checkedId);
if (chip != null && chip.isChecked()) {
// Use child index, because getTag() doesn't work properly for some reason
currentCategoryId = categorySelection.indexOfChild(chip);
currentChannelIdList = dynamicCategories.get(currentCategoryId).getChannelIds();
onCategoryChanged();
}
}
});
contentList = root.findViewById(R.id.all_content_list);
LinearLayoutManager llm = new LinearLayoutManager(getContext());
contentList.setLayoutManager(llm);
contentList.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
if (contentClaimSearchLoading) {
return;
}
LinearLayoutManager lm = (LinearLayoutManager) recyclerView.getLayoutManager();
if (lm != null) {
int visibleItemCount = lm.getChildCount();
int totalItemCount = lm.getItemCount();
int pastVisibleItems = lm.findFirstVisibleItemPosition();
if (pastVisibleItems + visibleItemCount >= totalItemCount) {
if (!contentHasReachedEnd) {
// load more
currentClaimSearchPage++;
fetchClaimSearchContent();
}
}
}
}
});
sortLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ContentSortDialogFragment dialog = ContentSortDialogFragment.newInstance();
dialog.setCurrentSortByItem(currentSortBy);
dialog.setSortByListener(new ContentSortDialogFragment.SortByListener() {
@Override
public void onSortByItemSelected(int sortBy) {
onSortByChanged(sortBy);
}
});
Context context = getContext();
if (context instanceof MainActivity) {
MainActivity activity = (MainActivity) context;
dialog.show(activity.getSupportFragmentManager(), ContentSortDialogFragment.TAG);
}
}
});
contentFromLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ContentFromDialogFragment dialog = ContentFromDialogFragment.newInstance();
dialog.setCurrentFromItem(currentContentFrom);
dialog.setContentFromListener(new ContentFromDialogFragment.ContentFromListener() {
@Override
public void onContentFromItemSelected(int contentFromItem) {
onContentFromChanged(contentFromItem);
}
});
Context context = getContext();
if (context instanceof MainActivity) {
MainActivity activity = (MainActivity) context;
dialog.show(activity.getSupportFragmentManager(), ContentFromDialogFragment.TAG);
}
}
});
customizeLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
showCustomizeTagsDialog();
}
});
checkParams(false);
return root;
}
Aggregations