Skip to content

Commit

Permalink
Make contributors clickable (#7129)
Browse files Browse the repository at this point in the history
  • Loading branch information
flofriday committed Apr 24, 2024
1 parent c56facd commit 7b048ed
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 20 deletions.
12 changes: 6 additions & 6 deletions ui/preferences/src/main/assets/special_thanks.csv
@@ -1,6 +1,6 @@
ByteHamster;Project lead;https://avatars2.githubusercontent.com/u/5811634?s=60&v=4
Keunes;Project lead;https://avatars2.githubusercontent.com/u/11229646?s=60&v=4
Femmdi;Translations coordinator;https://avatars2.githubusercontent.com/u/47671383?s=60&v=4
Ryan Gorley (Freehive);2023 brand design;https://avatars2.githubusercontent.com/u/12849958?s=60&v=4
221 Pixels;2020 brand design;https://avatars2.githubusercontent.com/u/58243143?s=60&v=4
Anxhelo Lushka;2020 website design;https://avatars2.githubusercontent.com/u/25004151?s=60&v=4
ByteHamster;Project lead;https://avatars2.githubusercontent.com/u/5811634?s=60&v=4;ByteHamster
Keunes;Project lead;https://avatars2.githubusercontent.com/u/11229646?s=60&v=4;Keunes
Femmdi;Translations coordinator;https://avatars2.githubusercontent.com/u/47671383?s=60&v=4;Femmdi
Ryan Gorley (Freehive);2023 brand design;https://avatars2.githubusercontent.com/u/12849958?s=60&v=4;Freehive
221 Pixels;2020 brand design;https://avatars2.githubusercontent.com/u/58243143?s=60&v=4;221pxls
Anxhelo Lushka;2020 website design;https://avatars2.githubusercontent.com/u/25004151?s=60&v=4;AnXh3L0
Expand Up @@ -2,10 +2,13 @@

import android.os.Bundle;
import android.view.View;
import android.widget.ListView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.ListFragment;

import de.danoeh.antennapod.ui.common.IntentUtils;
import io.reactivex.Single;
import io.reactivex.SingleOnSubscribe;
import io.reactivex.android.schedulers.AndroidSchedulers;
Expand All @@ -18,15 +21,15 @@

public class DevelopersFragment extends ListFragment {
private Disposable developersLoader;
private ArrayList<SimpleIconListAdapter.ListItem> developers = new ArrayList<>();

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
getListView().setDivider(null);
getListView().setSelector(android.R.color.transparent);

developersLoader = Single.create((SingleOnSubscribe<ArrayList<SimpleIconListAdapter.ListItem>>) emitter -> {
ArrayList<SimpleIconListAdapter.ListItem> developers = new ArrayList<>();
developers.clear();
BufferedReader reader = new BufferedReader(new InputStreamReader(
getContext().getAssets().open("developers.csv"), "UTF-8"));
String line;
Expand All @@ -43,7 +46,12 @@ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceStat
developers -> setListAdapter(new SimpleIconListAdapter<>(getContext(), developers)),
error -> Toast.makeText(getContext(), error.getMessage(), Toast.LENGTH_LONG).show()
);
}

@Override
public void onListItemClick(@NonNull ListView l, @NonNull View v, int position, long id) {
super.onListItemClick(l, v, position, id);
IntentUtils.openInBrowser(getContext(), "https://github.com/" + developers.get(position).title);
}

@Override
Expand Down
Expand Up @@ -6,9 +6,13 @@
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.load.resource.bitmap.FitCenter;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.request.RequestOptions;

import de.danoeh.antennapod.ui.preferences.R;

import java.util.List;
Expand All @@ -35,13 +39,19 @@ public View getView(int position, View view, ViewGroup parent) {
ListItem item = listItems.get(position);
((TextView) view.findViewById(R.id.title)).setText(item.title);
((TextView) view.findViewById(R.id.subtitle)).setText(item.subtitle);
Glide.with(context)
.load(item.imageUrl)
.apply(new RequestOptions()
.diskCacheStrategy(DiskCacheStrategy.NONE)
.fitCenter()
.dontAnimate())
.into(((ImageView) view.findViewById(R.id.icon)));

if (item.imageUrl == null) {
view.findViewById(R.id.icon).setVisibility(View.GONE);
} else {
Glide.with(context)
.load(item.imageUrl)
.apply(new RequestOptions()
.diskCacheStrategy(DiskCacheStrategy.NONE)
.transform(new FitCenter(), new RoundedCorners((int)
(4 * context.getResources().getDisplayMetrics().density)))
.dontAnimate())
.into(((ImageView) view.findViewById(R.id.icon)));
}
return view;
}

Expand Down
Expand Up @@ -2,10 +2,13 @@

import android.os.Bundle;
import android.view.View;
import android.widget.ListView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.ListFragment;

import de.danoeh.antennapod.ui.common.IntentUtils;
import io.reactivex.Single;
import io.reactivex.SingleOnSubscribe;
import io.reactivex.android.schedulers.AndroidSchedulers;
Expand All @@ -19,30 +22,46 @@
public class SpecialThanksFragment extends ListFragment {
private Disposable translatorsLoader;

private ArrayList<SpecialMemberItem> specialMembers = new ArrayList<>();

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
getListView().setDivider(null);
getListView().setSelector(android.R.color.transparent);

translatorsLoader = Single.create((SingleOnSubscribe<ArrayList<SimpleIconListAdapter.ListItem>>) emitter -> {
ArrayList<SimpleIconListAdapter.ListItem> translators = new ArrayList<>();
translatorsLoader = Single.create((SingleOnSubscribe<ArrayList<SpecialMemberItem>>) emitter -> {
specialMembers.clear();
BufferedReader reader = new BufferedReader(new InputStreamReader(
getContext().getAssets().open("special_thanks.csv"), "UTF-8"));
String line;
while ((line = reader.readLine()) != null) {
String[] info = line.split(";");
translators.add(new SimpleIconListAdapter.ListItem(info[0], info[1], info[2]));
specialMembers.add(new SpecialMemberItem(info[0], info[1], info[2], info[3]));
}
emitter.onSuccess(translators);
emitter.onSuccess(specialMembers);
})
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(
translators -> setListAdapter(new SimpleIconListAdapter<>(getContext(), translators)),
error -> Toast.makeText(getContext(), error.getMessage(), Toast.LENGTH_LONG).show()
);
}

private static class SpecialMemberItem extends SimpleIconListAdapter.ListItem {
final String githubUsername;

SpecialMemberItem(String title, String subtitle, String imageUrl, String gitHubUsername) {
super(title, subtitle, imageUrl);
this.githubUsername = gitHubUsername;
}
}

@Override
public void onListItemClick(@NonNull ListView l, @NonNull View v, int position, long id) {
super.onListItemClick(l, v, position, id);

IntentUtils.openInBrowser(getContext(), "https://github.com/" + specialMembers.get(position).githubUsername);
}

@Override
Expand Down

0 comments on commit 7b048ed

Please sign in to comment.