diff options
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/camera/ui/AbstractIndicatorButton.java | 2 | ||||
-rw-r--r-- | src/com/android/camera/ui/CameraPicker.java | 2 | ||||
-rw-r--r-- | src/com/android/camera/ui/InLineSettingItem.java | 2 | ||||
-rw-r--r-- | src/com/android/camera/ui/InLineSettingKnob.java | 23 | ||||
-rw-r--r-- | src/com/android/camera/ui/InLineSettingSwitch.java | 22 | ||||
-rw-r--r-- | src/com/android/camera/ui/IndicatorControl.java | 3 | ||||
-rw-r--r-- | src/com/android/camera/ui/SecondLevelIndicatorControlBar.java | 11 | ||||
-rw-r--r-- | src/com/android/camera/ui/SharePopup.java | 7 | ||||
-rw-r--r-- | src/com/android/camera/ui/ZoomControl.java | 7 |
9 files changed, 72 insertions, 7 deletions
diff --git a/src/com/android/camera/ui/AbstractIndicatorButton.java b/src/com/android/camera/ui/AbstractIndicatorButton.java index 037a273..a661586 100644 --- a/src/com/android/camera/ui/AbstractIndicatorButton.java +++ b/src/com/android/camera/ui/AbstractIndicatorButton.java @@ -50,6 +50,8 @@ public abstract class AbstractIndicatorButton extends RotateImageView implements HIGHLIGHT_COLOR = context.getResources().getColor(R.color.review_control_pressed_color); setScaleType(ImageView.ScaleType.CENTER); PopupManager.getInstance(context).setOnOtherPopupShowedListener(this); + // Set the click listener to help the comprehension of the accessibility. + setClickable(true); } @Override diff --git a/src/com/android/camera/ui/CameraPicker.java b/src/com/android/camera/ui/CameraPicker.java index 78e2b27..ac8b8a8 100644 --- a/src/com/android/camera/ui/CameraPicker.java +++ b/src/com/android/camera/ui/CameraPicker.java @@ -38,6 +38,8 @@ public class CameraPicker extends RotateImageView implements View.OnClickListene public CameraPicker(Context context) { super(context); setImageResource(mImageResource); + setContentDescription(getResources().getString( + R.string.accessibility_camera_picker)); } public static void setImageResourceId(int imageResource) { diff --git a/src/com/android/camera/ui/InLineSettingItem.java b/src/com/android/camera/ui/InLineSettingItem.java index 6f84e6f..bf6bdb2 100644 --- a/src/com/android/camera/ui/InLineSettingItem.java +++ b/src/com/android/camera/ui/InLineSettingItem.java @@ -21,6 +21,7 @@ import com.android.camera.R; import android.content.Context; import android.util.AttributeSet; +import android.view.accessibility.AccessibilityEvent; import android.widget.LinearLayout; import android.widget.TextView; @@ -70,6 +71,7 @@ public abstract class InLineSettingItem extends LinearLayout { mListener.onSettingChanged(); } updateView(); + sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_SELECTED); return true; } diff --git a/src/com/android/camera/ui/InLineSettingKnob.java b/src/com/android/camera/ui/InLineSettingKnob.java index 9bb771c..99a3b66 100644 --- a/src/com/android/camera/ui/InLineSettingKnob.java +++ b/src/com/android/camera/ui/InLineSettingKnob.java @@ -16,6 +16,7 @@ package com.android.camera.ui; +import com.android.camera.ListPreference; import com.android.camera.R; import android.content.Context; @@ -25,6 +26,7 @@ import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.View.OnTouchListener; +import android.view.accessibility.AccessibilityEvent; import android.widget.Button; import android.widget.TextView; @@ -100,6 +102,16 @@ public class InLineSettingKnob extends InLineSettingItem { mEntry = (TextView) findViewById(R.id.current_setting); } + @Override + public void initialize(ListPreference preference) { + super.initialize(preference); + // Add content descriptions for the increment and decrement buttons. + mNextButton.setContentDescription(getResources().getString( + R.string.accessibility_increment, mPreference.getTitle())); + mPrevButton.setContentDescription(getResources().getString( + R.string.accessibility_decrement, mPreference.getTitle())); + } + protected void updateView() { if (mOverrideValue == null) { mEntry.setText(mPreference.getEntry()); @@ -120,4 +132,15 @@ public class InLineSettingKnob extends InLineSettingItem { } } + @Override + public boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event) { + onPopulateAccessibilityEvent(event); + return true; + } + + @Override + public void onPopulateAccessibilityEvent(AccessibilityEvent event) { + super.onPopulateAccessibilityEvent(event); + event.getText().add(mPreference.getTitle() + mPreference.getEntry()); + } } diff --git a/src/com/android/camera/ui/InLineSettingSwitch.java b/src/com/android/camera/ui/InLineSettingSwitch.java index 8663a05..8fc37da 100644 --- a/src/com/android/camera/ui/InLineSettingSwitch.java +++ b/src/com/android/camera/ui/InLineSettingSwitch.java @@ -16,11 +16,13 @@ package com.android.camera.ui; +import com.android.camera.ListPreference; import com.android.camera.R; import android.content.Context; import android.util.AttributeSet; import android.view.View; +import android.view.accessibility.AccessibilityEvent; import android.widget.Button; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; @@ -47,6 +49,14 @@ public class InLineSettingSwitch extends InLineSettingItem { mSwitch.setOnCheckedChangeListener(mCheckedChangeListener); } + @Override + public void initialize(ListPreference preference) { + super.initialize(preference); + // Add content descriptions for the increment and decrement buttons. + mSwitch.setContentDescription(getContext().getResources().getString( + R.string.accessibility_switch, mPreference.getTitle())); + } + protected void updateView() { if (mOverrideValue == null) { mSwitch.setChecked(mIndex == 1); @@ -55,4 +65,16 @@ public class InLineSettingSwitch extends InLineSettingItem { mSwitch.setChecked(index == 1); } } + + @Override + public boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event) { + onPopulateAccessibilityEvent(event); + return true; + } + + @Override + public void onPopulateAccessibilityEvent(AccessibilityEvent event) { + super.onPopulateAccessibilityEvent(event); + event.getText().add(mPreference.getTitle()); + } } diff --git a/src/com/android/camera/ui/IndicatorControl.java b/src/com/android/camera/ui/IndicatorControl.java index 03003d8..86b0cc9 100644 --- a/src/com/android/camera/ui/IndicatorControl.java +++ b/src/com/android/camera/ui/IndicatorControl.java @@ -125,6 +125,7 @@ public abstract class IndicatorControl extends RelativeLayout implements public IndicatorButton addIndicator(Context context, IconListPreference pref) { IndicatorButton b = new IndicatorButton(context, pref); b.setSettingChangedListener(this); + b.setContentDescription(pref.getTitle()); addView(b); mIndicators.add(b); return b; @@ -135,6 +136,8 @@ public abstract class IndicatorControl extends RelativeLayout implements OtherSettingIndicatorButton b = new OtherSettingIndicatorButton( context, resId, mPreferenceGroup, keys); b.setSettingChangedListener(this); + b.setContentDescription(getResources().getString( + R.string.pref_camera_settings_category)); addView(b); mIndicators.add(b); return b; diff --git a/src/com/android/camera/ui/SecondLevelIndicatorControlBar.java b/src/com/android/camera/ui/SecondLevelIndicatorControlBar.java index 8fce8a7..c9037d9 100644 --- a/src/com/android/camera/ui/SecondLevelIndicatorControlBar.java +++ b/src/com/android/camera/ui/SecondLevelIndicatorControlBar.java @@ -35,7 +35,7 @@ public class SecondLevelIndicatorControlBar extends IndicatorControl implements View.OnClickListener, AbstractIndicatorButton.IndicatorChangeListener { private static final String TAG = "SecondLevelIndicatorControlBar"; private static int ICON_SPACING = Util.dpToPixel(16); - private ImageView mCloseIcon; + private View mCloseIcon; private View mDivider; // the divider line private View mIndicatorHighlight; // the side highlight bar private View mPopupedIndicator; @@ -54,16 +54,13 @@ public class SecondLevelIndicatorControlBar extends IndicatorControl implements protected void onFinishInflate() { mDivider = findViewById(R.id.divider); mIndicatorHighlight = findViewById(R.id.indicator_highlight); + mCloseIcon = findViewById(R.id.back_to_first_level); + mCloseIcon.setOnClickListener(this); } public void initialize(Context context, PreferenceGroup group, String[] keys, String[] otherSettingKeys) { - if (mCloseIcon == null) { - mCloseIcon = new ColorFilterImageView(context); - mCloseIcon.setImageResource(R.drawable.btn_close_settings); - mCloseIcon.setOnClickListener(this); - addView(mCloseIcon); - } + setPreferenceGroup(group); mNonIndicatorButtonCount = getChildCount(); addControls(keys, otherSettingKeys); diff --git a/src/com/android/camera/ui/SharePopup.java b/src/com/android/camera/ui/SharePopup.java index 42b27d1..84bada4 100644 --- a/src/com/android/camera/ui/SharePopup.java +++ b/src/com/android/camera/ui/SharePopup.java @@ -68,6 +68,7 @@ public class SharePopup extends PopupWindow implements View.OnClickListener, private ListView mShareList; // A rotated view that contains the thumbnail. private RotateLayout mThumbnailRotateLayout; + private RotateLayout mGotoGalleryRotate; private View mPreviewFrame; private ArrayList<ComponentName> mComponent = new ArrayList<ComponentName>(); @@ -120,6 +121,9 @@ public class SharePopup extends PopupWindow implements View.OnClickListener, mShareView = (ViewGroup) sharePopup.findViewById(R.id.share_view); mShareView.setOnClickListener(this); + mGotoGalleryRotate =(RotateLayout) sharePopup.findViewById(R.id.goto_gallery_button_rotate); + sharePopup.findViewById(R.id.goto_gallery_button).setOnClickListener(this); + mBitmapWidth = bitmap.getWidth(); mBitmapHeight = bitmap.getHeight(); @@ -258,6 +262,8 @@ public class SharePopup extends PopupWindow implements View.OnClickListener, r.setOrientation(orientation); } + mGotoGalleryRotate.setOrientation(orientation); + adjustThumbnailPosition(); } @@ -271,6 +277,7 @@ public class SharePopup extends PopupWindow implements View.OnClickListener, @Override public void onClick(View v) { switch (v.getId()) { + case R.id.goto_gallery_button: case R.id.share_view: Util.viewUri(mUri, mContext); break; diff --git a/src/com/android/camera/ui/ZoomControl.java b/src/com/android/camera/ui/ZoomControl.java index 60964a4..1809d18 100644 --- a/src/com/android/camera/ui/ZoomControl.java +++ b/src/com/android/camera/ui/ZoomControl.java @@ -88,6 +88,13 @@ public abstract class ZoomControl extends RelativeLayout { protected ImageView addImageView(Context context, int iconResourceId) { ImageView image = new RotateImageView(context); image.setImageResource(iconResourceId); + if (iconResourceId == R.drawable.ic_zoom_slider) { + image.setContentDescription(getResources().getString( + R.string.accessibility_zoom_control)); + } else { + image.setContentDescription(getResources().getString( + R.string.empty)); + } addView(image); return image; } |