summaryrefslogtreecommitdiff
path: root/src/de
diff options
context:
space:
mode:
authordaniel oeh <daniel.oeh@gmail.com>2014-02-14 14:26:55 +0100
committerdaniel oeh <daniel.oeh@gmail.com>2014-02-14 14:26:55 +0100
commitf4da9674cc4b16ad84cfccd7b72a670476c6e5b7 (patch)
treee938cff5ab4a0f6bbb418b7e5b0ea7e8c5e4605b /src/de
parent65c11309801fc9ff50f8da90b9b0604b56020802 (diff)
downloadAntennaPod-f4da9674cc4b16ad84cfccd7b72a670476c6e5b7.zip
Added content descriptions to imagebuttons and imageviews
Diffstat (limited to 'src/de')
-rw-r--r--src/de/danoeh/antennapod/activity/AudioplayerActivity.java16
-rw-r--r--src/de/danoeh/antennapod/adapter/DefaultFeedItemlistAdapter.java4
-rw-r--r--src/de/danoeh/antennapod/adapter/ExternalEpisodesListAdapter.java3
-rw-r--r--src/de/danoeh/antennapod/adapter/InternalFeedItemlistAdapter.java4
-rw-r--r--src/de/danoeh/antennapod/service/playback/PlayerWidgetService.java7
-rw-r--r--src/de/danoeh/antennapod/util/playback/PlaybackController.java18
6 files changed, 43 insertions, 9 deletions
diff --git a/src/de/danoeh/antennapod/activity/AudioplayerActivity.java b/src/de/danoeh/antennapod/activity/AudioplayerActivity.java
index dc79bd3da..a55f8120e 100644
--- a/src/de/danoeh/antennapod/activity/AudioplayerActivity.java
+++ b/src/de/danoeh/antennapod/activity/AudioplayerActivity.java
@@ -322,7 +322,11 @@ public class AudioplayerActivity extends MediaplayerActivity {
}
private void updateNavButtonDrawable() {
- TypedArray drawables = obtainStyledAttributes(new int[]{
+
+ final int[] buttonTexts = new int[] {R.string.show_shownotes_label,
+ R.string.show_chapters_label, R.string.show_cover_label};
+
+ final TypedArray drawables = obtainStyledAttributes(new int[]{
R.attr.navigation_shownotes, R.attr.navigation_chapters});
final Playable media = controller.getMedia();
if (butNavLeft != null && butNavRight != null && media != null) {
@@ -330,7 +334,11 @@ public class AudioplayerActivity extends MediaplayerActivity {
case POS_COVER:
butNavLeft.setScaleType(ScaleType.CENTER);
butNavLeft.setImageDrawable(drawables.getDrawable(0));
+ butNavLeft.setContentDescription(getString(buttonTexts[0]));
+
butNavRight.setImageDrawable(drawables.getDrawable(1));
+ butNavRight.setContentDescription(getString(buttonTexts[1]));
+
break;
case POS_DESCR:
butNavLeft.setScaleType(ScaleType.CENTER_CROP);
@@ -342,7 +350,10 @@ public class AudioplayerActivity extends MediaplayerActivity {
butNavLeft);
}
});
+ butNavLeft.setContentDescription(getString(buttonTexts[2]));
+
butNavRight.setImageDrawable(drawables.getDrawable(1));
+ butNavRight.setContentDescription(getString(buttonTexts[1]));
break;
case POS_CHAPTERS:
butNavLeft.setScaleType(ScaleType.CENTER_CROP);
@@ -354,7 +365,10 @@ public class AudioplayerActivity extends MediaplayerActivity {
butNavLeft);
}
});
+ butNavLeft.setContentDescription(getString(buttonTexts[2]));
+
butNavRight.setImageDrawable(drawables.getDrawable(0));
+ butNavRight.setContentDescription(getString(buttonTexts[0]));
break;
}
}
diff --git a/src/de/danoeh/antennapod/adapter/DefaultFeedItemlistAdapter.java b/src/de/danoeh/antennapod/adapter/DefaultFeedItemlistAdapter.java
index 2b49795c3..e384ecffc 100644
--- a/src/de/danoeh/antennapod/adapter/DefaultFeedItemlistAdapter.java
+++ b/src/de/danoeh/antennapod/adapter/DefaultFeedItemlistAdapter.java
@@ -91,10 +91,12 @@ public class DefaultFeedItemlistAdapter extends BaseAdapter {
MediaType mediaType = item.getMedia().getMediaType();
if (mediaType == MediaType.AUDIO) {
holder.type.setImageDrawable(typeDrawables.getDrawable(0));
+ holder.type.setContentDescription(context.getString(R.string.media_type_audio_label));
holder.type.setVisibility(View.VISIBLE);
} else if (mediaType == MediaType.VIDEO) {
holder.type.setImageDrawable(typeDrawables.getDrawable(1));
- holder.type.setVisibility(View.VISIBLE);
+ holder.type.setContentDescription(context.getString(R.string.media_type_video_label));
+ holder.type.setVisibility(View.VISIBLE);
} else {
holder.type.setImageBitmap(null);
holder.type.setVisibility(View.GONE);
diff --git a/src/de/danoeh/antennapod/adapter/ExternalEpisodesListAdapter.java b/src/de/danoeh/antennapod/adapter/ExternalEpisodesListAdapter.java
index b00066eca..aed988b59 100644
--- a/src/de/danoeh/antennapod/adapter/ExternalEpisodesListAdapter.java
+++ b/src/de/danoeh/antennapod/adapter/ExternalEpisodesListAdapter.java
@@ -148,12 +148,14 @@ public class ExternalEpisodesListAdapter extends BaseExpandableListAdapter {
TypedArray drawables = context.obtainStyledAttributes(new int[] {
R.attr.av_download, R.attr.navigation_refresh });
+ final int[] labels = new int[] {R.string.status_downloaded_label, R.string.downloading_label};
holder.lenSize.setVisibility(View.VISIBLE);
if (!media.isDownloaded()) {
if (DownloadRequester.getInstance().isDownloadingFile(media)) {
holder.downloadStatus.setVisibility(View.VISIBLE);
holder.downloadStatus.setImageDrawable(drawables
.getDrawable(1));
+ holder.downloadStatus.setContentDescription(context.getString(labels[1]));
} else {
holder.downloadStatus.setVisibility(View.INVISIBLE);
}
@@ -161,6 +163,7 @@ public class ExternalEpisodesListAdapter extends BaseExpandableListAdapter {
holder.downloadStatus.setVisibility(View.VISIBLE);
holder.downloadStatus
.setImageDrawable(drawables.getDrawable(0));
+ holder.downloadStatus.setContentDescription(context.getString(labels[0]));
}
} else {
holder.downloadStatus.setVisibility(View.INVISIBLE);
diff --git a/src/de/danoeh/antennapod/adapter/InternalFeedItemlistAdapter.java b/src/de/danoeh/antennapod/adapter/InternalFeedItemlistAdapter.java
index b8bec44c8..238ae29c6 100644
--- a/src/de/danoeh/antennapod/adapter/InternalFeedItemlistAdapter.java
+++ b/src/de/danoeh/antennapod/adapter/InternalFeedItemlistAdapter.java
@@ -176,12 +176,16 @@ public class InternalFeedItemlistAdapter extends DefaultFeedItemlistAdapter {
TypedArray typeDrawables = getContext().obtainStyledAttributes(
new int[] { R.attr.type_audio, R.attr.type_video });
+ final int[] labels = new int[] {R.string.media_type_audio_label, R.string.media_type_video_label};
+
MediaType mediaType = item.getMedia().getMediaType();
if (mediaType == MediaType.AUDIO) {
holder.type.setImageDrawable(typeDrawables.getDrawable(0));
+ holder.type.setContentDescription(getContext().getString(labels[0]));
holder.type.setVisibility(View.VISIBLE);
} else if (mediaType == MediaType.VIDEO) {
holder.type.setImageDrawable(typeDrawables.getDrawable(1));
+ holder.type.setContentDescription(getContext().getString(labels[1]));
holder.type.setVisibility(View.VISIBLE);
} else {
holder.type.setImageBitmap(null);
diff --git a/src/de/danoeh/antennapod/service/playback/PlayerWidgetService.java b/src/de/danoeh/antennapod/service/playback/PlayerWidgetService.java
index f4674d395..90ad7a9fa 100644
--- a/src/de/danoeh/antennapod/service/playback/PlayerWidgetService.java
+++ b/src/de/danoeh/antennapod/service/playback/PlayerWidgetService.java
@@ -6,6 +6,7 @@ import android.appwidget.AppWidgetManager;
import android.content.ComponentName;
import android.content.Intent;
import android.content.ServiceConnection;
+import android.os.Build;
import android.os.IBinder;
import android.util.Log;
import android.view.KeyEvent;
@@ -97,8 +98,14 @@ public class PlayerWidgetService extends Service {
views.setTextViewText(R.id.txtvProgress, progressString);
}
views.setImageViewResource(R.id.butPlay, R.drawable.av_pause_dark);
+ if (Build.VERSION.SDK_INT >= 15) {
+ views.setContentDescription(R.id.butPlay, getString(R.string.pause_label));
+ }
} else {
views.setImageViewResource(R.id.butPlay, R.drawable.av_play_dark);
+ if (Build.VERSION.SDK_INT >= 15) {
+ views.setContentDescription(R.id.butPlay, getString(R.string.play_label));
+ }
}
views.setOnClickPendingIntent(R.id.butPlay,
createMediaButtonIntent());
diff --git a/src/de/danoeh/antennapod/util/playback/PlaybackController.java b/src/de/danoeh/antennapod/util/playback/PlaybackController.java
index 55ba4baca..0781800aa 100644
--- a/src/de/danoeh/antennapod/util/playback/PlaybackController.java
+++ b/src/de/danoeh/antennapod/util/playback/PlaybackController.java
@@ -397,6 +397,9 @@ public abstract class PlaybackController {
private void handleStatus() {
final int playResource;
final int pauseResource;
+ final CharSequence playText = activity.getString(R.string.play_label);
+ final CharSequence pauseText = activity.getString(R.string.pause_label);
+
if (PlaybackService.getCurrentMediaType() == MediaType.AUDIO) {
TypedArray res = activity.obtainStyledAttributes(new int[]{
R.attr.av_play, R.attr.av_pause});
@@ -418,7 +421,7 @@ public abstract class PlaybackController {
clearStatusMsg();
checkMediaInfoLoaded();
cancelPositionObserver();
- updatePlayButtonAppearance(playResource);
+ updatePlayButtonAppearance(playResource, playText);
break;
case PLAYING:
clearStatusMsg();
@@ -427,16 +430,16 @@ public abstract class PlaybackController {
onAwaitingVideoSurface();
}
setupPositionObserver();
- updatePlayButtonAppearance(pauseResource);
+ updatePlayButtonAppearance(pauseResource, pauseText);
break;
case PREPARING:
postStatusMsg(R.string.player_preparing_msg);
checkMediaInfoLoaded();
if (playbackService != null) {
if (playbackService.isStartWhenPrepared()) {
- updatePlayButtonAppearance(pauseResource);
+ updatePlayButtonAppearance(pauseResource, pauseText);
} else {
- updatePlayButtonAppearance(playResource);
+ updatePlayButtonAppearance(playResource, playText);
}
}
break;
@@ -446,7 +449,7 @@ public abstract class PlaybackController {
case PREPARED:
checkMediaInfoLoaded();
postStatusMsg(R.string.player_ready_msg);
- updatePlayButtonAppearance(playResource);
+ updatePlayButtonAppearance(playResource, playText);
break;
case SEEKING:
postStatusMsg(R.string.player_seeking_msg);
@@ -454,7 +457,7 @@ public abstract class PlaybackController {
case INITIALIZED:
checkMediaInfoLoaded();
clearStatusMsg();
- updatePlayButtonAppearance(playResource);
+ updatePlayButtonAppearance(playResource, playText);
break;
}
}
@@ -463,9 +466,10 @@ public abstract class PlaybackController {
mediaInfoLoaded = (mediaInfoLoaded || loadMediaInfo());
}
- private void updatePlayButtonAppearance(int resource) {
+ private void updatePlayButtonAppearance(int resource, CharSequence contentDescription) {
ImageButton butPlay = getPlayButton();
butPlay.setImageResource(resource);
+ butPlay.setContentDescription(contentDescription);
}
public abstract ImageButton getPlayButton();