2017-11-11 23:47:34 +01:00
|
|
|
package org.schabi.newpipe.info_list;
|
|
|
|
|
|
|
|
import android.app.Activity;
|
|
|
|
import android.app.AlertDialog;
|
|
|
|
import android.content.DialogInterface;
|
|
|
|
import android.view.View;
|
|
|
|
import android.widget.TextView;
|
|
|
|
|
2020-03-31 19:20:15 +02:00
|
|
|
import androidx.annotation.NonNull;
|
|
|
|
import androidx.annotation.Nullable;
|
|
|
|
|
2017-11-11 23:47:34 +01:00
|
|
|
import org.schabi.newpipe.R;
|
2017-11-14 06:13:52 +01:00
|
|
|
import org.schabi.newpipe.extractor.stream.StreamInfoItem;
|
2017-11-11 23:47:34 +01:00
|
|
|
|
|
|
|
public class InfoItemDialog {
|
|
|
|
private final AlertDialog dialog;
|
|
|
|
|
|
|
|
public InfoItemDialog(@NonNull final Activity activity,
|
2017-11-14 06:13:52 +01:00
|
|
|
@NonNull final StreamInfoItem info,
|
2017-11-11 23:47:34 +01:00
|
|
|
@NonNull final String[] commands,
|
|
|
|
@NonNull final DialogInterface.OnClickListener actions) {
|
2018-01-16 20:48:52 +01:00
|
|
|
this(activity, commands, actions, info.getName(), info.getUploaderName());
|
2017-11-14 06:13:52 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
public InfoItemDialog(@NonNull final Activity activity,
|
|
|
|
@NonNull final String[] commands,
|
|
|
|
@NonNull final DialogInterface.OnClickListener actions,
|
|
|
|
@NonNull final String title,
|
|
|
|
@Nullable final String additionalDetail) {
|
2017-11-11 23:47:34 +01:00
|
|
|
|
2018-01-16 20:48:52 +01:00
|
|
|
final View bannerView = View.inflate(activity, R.layout.dialog_title, null);
|
2017-11-11 23:47:34 +01:00
|
|
|
bannerView.setSelected(true);
|
2017-11-14 06:13:52 +01:00
|
|
|
|
2017-11-11 23:47:34 +01:00
|
|
|
TextView titleView = bannerView.findViewById(R.id.itemTitleView);
|
2017-11-14 06:13:52 +01:00
|
|
|
titleView.setText(title);
|
|
|
|
|
|
|
|
TextView detailsView = bannerView.findViewById(R.id.itemAdditionalDetails);
|
|
|
|
if (additionalDetail != null) {
|
|
|
|
detailsView.setText(additionalDetail);
|
|
|
|
detailsView.setVisibility(View.VISIBLE);
|
|
|
|
} else {
|
|
|
|
detailsView.setVisibility(View.GONE);
|
|
|
|
}
|
2017-11-11 23:47:34 +01:00
|
|
|
|
|
|
|
dialog = new AlertDialog.Builder(activity)
|
|
|
|
.setCustomTitle(bannerView)
|
|
|
|
.setItems(commands, actions)
|
|
|
|
.create();
|
|
|
|
}
|
|
|
|
|
|
|
|
public void show() {
|
|
|
|
dialog.show();
|
|
|
|
}
|
|
|
|
}
|