Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1648)

Unified Diff: remoting/android/java/src/org/chromium/chromoting/HostListAdapter.java

Issue 1003893003: Basic Android UI for host-offline-reason. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed placeholder format. Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: remoting/android/java/src/org/chromium/chromoting/HostListAdapter.java
diff --git a/remoting/android/java/src/org/chromium/chromoting/HostListAdapter.java b/remoting/android/java/src/org/chromium/chromoting/HostListAdapter.java
index c7d826e3d2aadd705a910a00a29391f1b5d1da22..437d2e00ec5f4a88c7dd6d762d7da3750ae7a1bb 100644
--- a/remoting/android/java/src/org/chromium/chromoting/HostListAdapter.java
+++ b/remoting/android/java/src/org/chromium/chromoting/HostListAdapter.java
@@ -4,12 +4,16 @@
package org.chromium.chromoting;
+import android.content.res.Resources;
+import android.text.TextUtils;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import android.widget.Toast;
+import java.util.Locale;
+
/** Describes the appearance and behavior of each host list entry. */
class HostListAdapter extends ArrayAdapter<HostInfo> {
private Chromoting mChromoting;
@@ -20,6 +24,20 @@ class HostListAdapter extends ArrayAdapter<HostInfo> {
mChromoting = chromoting;
}
+ private String getHostOfflineTooltip(String hostOfflineReason) {
+ if (TextUtils.isEmpty(hostOfflineReason)) {
+ return mChromoting.getString(R.string.host_offline_tooltip);
+ }
+ try {
+ String resourceName = "offline_reason_" + hostOfflineReason.toLowerCase(Locale.ENGLISH);
+ int resourceId = mChromoting.getResources().getIdentifier(
+ resourceName, "string", mChromoting.getPackageName());
+ return mChromoting.getString(resourceId);
+ } catch (Resources.NotFoundException ignored) {
+ return mChromoting.getString(R.string.offline_reason_unknown, hostOfflineReason);
+ }
+ }
+
/** Generates a View corresponding to this particular host. */
@Override
public View getView(int position, View convertView, ViewGroup parent) {
@@ -41,12 +59,12 @@ class HostListAdapter extends ArrayAdapter<HostInfo> {
} else {
target.setTextColor(mChromoting.getResources().getColor(R.color.host_offline_text));
target.setBackgroundResource(R.drawable.list_item_disabled_selector);
+
+ final String tooltip = getHostOfflineTooltip(host.hostOfflineReason);
target.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- Toast.makeText(mChromoting,
- mChromoting.getString(R.string.host_offline_tooltip),
- Toast.LENGTH_SHORT).show();
+ Toast.makeText(mChromoting, tooltip, Toast.LENGTH_SHORT).show();
}
});
}
« no previous file with comments | « remoting/android/java/src/org/chromium/chromoting/HostInfo.java ('k') | remoting/resources/remoting_strings.grd » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698