AccessibilityMediaControls.h [plain text]
#ifndef AccessibilityMediaControls_h
#define AccessibilityMediaControls_h
#if ENABLE(VIDEO)
#include "AccessibilitySlider.h"
#include "MediaControlElements.h"
namespace WebCore {
class AccessibilityMediaControl : public AccessibilityRenderObject {
public:
static PassRefPtr<AccessibilityObject> create(RenderObject*);
virtual ~AccessibilityMediaControl() { }
virtual AccessibilityRole roleValue() const override;
virtual String title() const override;
virtual String accessibilityDescription() const override;
virtual String helpText() const override;
protected:
explicit AccessibilityMediaControl(RenderObject*);
MediaControlElementType controlType() const;
const String& controlTypeName() const;
virtual bool computeAccessibilityIsIgnored() const override;
private:
virtual void accessibilityText(Vector<AccessibilityText>&) override;
};
class AccessibilityMediaTimeline : public AccessibilitySlider {
public:
static PassRefPtr<AccessibilityObject> create(RenderObject*);
virtual ~AccessibilityMediaTimeline() { }
virtual bool isMediaTimeline() const override { return true; }
virtual String helpText() const override;
virtual String valueDescription() const override;
const AtomicString& getAttribute(const QualifiedName& attribute) const;
private:
explicit AccessibilityMediaTimeline(RenderObject*);
};
class AccessibilityMediaControlsContainer : public AccessibilityMediaControl {
public:
static PassRefPtr<AccessibilityObject> create(RenderObject*);
virtual ~AccessibilityMediaControlsContainer() { }
virtual AccessibilityRole roleValue() const override { return ToolbarRole; }
virtual String helpText() const override;
virtual String accessibilityDescription() const override;
private:
explicit AccessibilityMediaControlsContainer(RenderObject*);
bool controllingVideoElement() const;
const String& elementTypeName() const;
virtual bool computeAccessibilityIsIgnored() const override;
};
class AccessibilityMediaTimeDisplay : public AccessibilityMediaControl {
public:
static PassRefPtr<AccessibilityObject> create(RenderObject*);
virtual ~AccessibilityMediaTimeDisplay() { }
virtual AccessibilityRole roleValue() const override { return ApplicationTimerRole; }
virtual String stringValue() const override;
virtual String accessibilityDescription() const override;
private:
explicit AccessibilityMediaTimeDisplay(RenderObject*);
virtual bool isMediaControlLabel() const override { return true; }
virtual bool computeAccessibilityIsIgnored() const override;
};
}
#endif // ENABLE(VIDEO)
#endif // AccessibilityMediaControls_h