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