package org.wordpress.android.ui.notifications; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.provider.Browser; import android.util.AttributeSet; import android.view.View; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.ProgressBar; import android.widget.TextView; import com.android.volley.toolbox.NetworkImageView; import com.justsystems.hpb.pad.R; class ReplyRow extends LinearLayout { private ImageView mButton, mErrorIndicator; private NetworkImageView mAvatar; private TextView mTextField; private ProgressBar mProgress; public ReplyRow(Context context) { super(context); } public ReplyRow(Context context, AttributeSet attrs) { super(context, attrs); } public ReplyRow(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } protected void onFinishInflate() { mButton = (ImageView) findViewById(R.id.button); mAvatar = (NetworkImageView) findViewById(R.id.avatar); mTextField = (TextView) findViewById(R.id.text); mProgress = (ProgressBar) findViewById(R.id.progress); mErrorIndicator = (ImageView) findViewById(R.id.error); } public void setComplete(boolean complete) { if (complete) { mProgress.setVisibility(View.GONE); mAvatar.setVisibility(View.VISIBLE); } else { mProgress.setVisibility(View.VISIBLE); mAvatar.setVisibility(View.GONE); } } public void setFailed(boolean failed) { if (failed) { mProgress.setVisibility(View.GONE); mAvatar.setVisibility(View.GONE); mErrorIndicator.setVisibility(View.VISIBLE); } else { mErrorIndicator.setVisibility(View.GONE); } } public void setUrl(final String url) { if (url == null) { mButton.setVisibility(View.GONE); setOnClickListener(null); } else { mButton.setVisibility(View.VISIBLE); setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Uri uri = Uri.parse(url); Intent intent = new Intent(Intent.ACTION_VIEW, uri); Context context = getContext(); intent.putExtra(Browser.EXTRA_APPLICATION_ID, context.getPackageName()); context.startActivity(intent); } }); } } public void setText(CharSequence text) { mTextField.setText(text); } public void setText(int stringRes) { mTextField.setText(stringRes); } public NetworkImageView getImageView() { return mAvatar; } }