| Index: ash/system/tray_accessibility.h
|
| diff --git a/ash/system/tray_accessibility.h b/ash/system/tray_accessibility.h
|
| index 1000b65e65841d09ef03547abd951e6dea2451aa..273a670853842c354878e50c2da9966cd3d967f5 100644
|
| --- a/ash/system/tray_accessibility.h
|
| +++ b/ash/system/tray_accessibility.h
|
| @@ -7,15 +7,25 @@
|
|
|
| #include "ash/shell_delegate.h"
|
| #include "ash/shell_observer.h"
|
| +#include "ash/system/tray/tray_details_view.h"
|
| #include "ash/system/tray/tray_image_item.h"
|
| +#include "ash/system/tray/tray_views.h"
|
| +#include "base/gtest_prod_util.h"
|
| +
|
| +namespace chromeos {
|
| +class TrayAccessibilityTest;
|
| +}
|
|
|
| namespace views {
|
| +class Button;
|
| class ImageView;
|
| class View;
|
| }
|
|
|
| namespace ash {
|
|
|
| +class SystemTrayItem;
|
| +
|
| class ASH_EXPORT AccessibilityObserver {
|
| public:
|
| virtual ~AccessibilityObserver() {}
|
| @@ -26,6 +36,50 @@ class ASH_EXPORT AccessibilityObserver {
|
| };
|
|
|
| namespace internal {
|
| +namespace tray {
|
| +
|
| +class AccessibilityPopupView;
|
| +
|
| +class AccessibilityDetailedView : public TrayDetailsView,
|
| + public ViewClickListener,
|
| + public views::ButtonListener,
|
| + public ShellObserver {
|
| + public:
|
| + explicit AccessibilityDetailedView(SystemTrayItem* owner,
|
| + user::LoginStatus login);
|
| + virtual ~AccessibilityDetailedView() {}
|
| +
|
| + private:
|
| + // Add the accessibility feature list.
|
| + void AppendAccessibilityList();
|
| +
|
| + // Add help entries.
|
| + void AppendHelpEntries();
|
| +
|
| + HoverHighlightView* AddScrollListItem(const string16& text,
|
| + gfx::Font::FontStyle style,
|
| + bool checked);
|
| + // Overridden from ViewClickListener.
|
| + virtual void ClickedOn(views::View* sender) OVERRIDE;
|
| + // Overridden from ButtonListener.
|
| + virtual void ButtonPressed(views::Button* sender,
|
| + const ui::Event& event) OVERRIDE;
|
| +
|
| + views::View* spoken_feedback_view_;
|
| + views::View* high_contrast_view_;
|
| + views::View* screen_magnifier_view_;;
|
| + views::View* help_view_;
|
| +
|
| + bool spoken_feedback_enabled_;
|
| + bool high_contrast_enabled_;
|
| + bool screen_magnifier_enabled_;
|
| + user::LoginStatus login_;
|
| +
|
| + friend class chromeos::TrayAccessibilityTest;
|
| + DISALLOW_COPY_AND_ASSIGN(AccessibilityDetailedView);
|
| +};
|
| +
|
| +} // namespace tray
|
|
|
| class TrayAccessibility : public TrayImageItem,
|
| public AccessibilityObserver {
|
| @@ -34,6 +88,9 @@ class TrayAccessibility : public TrayImageItem,
|
| virtual ~TrayAccessibility();
|
|
|
| private:
|
| + void SetTrayIconVisible(bool visible);
|
| + tray::AccessibilityDetailedView* CreateDetailedMenu();
|
| +
|
| // Overridden from TrayImageItem.
|
| virtual bool GetInitialVisibility() OVERRIDE;
|
| virtual views::View* CreateDefaultView(user::LoginStatus status) OVERRIDE;
|
| @@ -47,14 +104,17 @@ class TrayAccessibility : public TrayImageItem,
|
| AccessibilityNotificationVisibility notify) OVERRIDE;
|
|
|
| views::View* default_;
|
| - views::View* detailed_;
|
| + tray::AccessibilityPopupView* detailed_popup_;
|
| + tray::AccessibilityDetailedView* detailed_menu_;
|
|
|
| bool request_popup_view_;
|
| + bool tray_icon_visible_;
|
| user::LoginStatus login_;
|
|
|
| // Bitmap of values from AccessibilityState enum.
|
| uint32 previous_accessibility_state_;
|
|
|
| + friend class chromeos::TrayAccessibilityTest;
|
| DISALLOW_COPY_AND_ASSIGN(TrayAccessibility);
|
| };
|
|
|
|
|