Bug 795610 - Part b: Prepare HTMLElement.tabIndex for WebIDL bindings; r=mounir

This commit is contained in:
Ms2ger 2012-10-06 09:19:51 +02:00
parent a2ebc92b5a
commit 556952563a
21 changed files with 106 additions and 174 deletions

View File

@ -254,7 +254,6 @@ NS_INTERFACE_TABLE_HEAD(nsGenericHTMLElementTearoff)
NS_INTERFACE_TABLE_TO_MAP_SEGUE_CYCLE_COLLECTION(nsGenericHTMLElementTearoff)
NS_INTERFACE_MAP_END_AGGREGATED(mElement)
NS_IMPL_INT_ATTR_DEFAULT_VALUE(nsGenericHTMLElement, TabIndex, tabindex, -1)
NS_IMPL_BOOL_ATTR(nsGenericHTMLElement, Hidden, hidden)
nsresult

View File

@ -12,6 +12,7 @@
#include "nsIFormControl.h"
#include "nsGkAtoms.h"
#include "nsContentCreatorFunctions.h"
#include "mozilla/ErrorResult.h"
class nsIDOMAttr;
class nsIDOMEventListener;
@ -35,9 +36,6 @@ class nsIDOMHTMLMenuElement;
class nsIDOMHTMLCollection;
class nsDOMSettableTokenList;
class nsIDOMHTMLPropertiesCollection;
namespace mozilla {
class ErrorResult;
}
typedef nsMappedAttributeElement nsGenericHTMLElementBase;
@ -82,6 +80,20 @@ public:
NS_METHOD SetAttribute(const nsAString& aName,
const nsAString& aValue);
// WebIDL HTMLElement
virtual int32_t TabIndexDefault()
{
return -1;
}
int32_t TabIndex()
{
return GetIntAttr(nsGkAtoms::tabindex, TabIndexDefault());
}
void SetTabIndex(int32_t aTabIndex, mozilla::ErrorResult& aError)
{
aError = SetIntAttr(nsGkAtoms::tabindex, aTabIndex);
}
// nsIDOMHTMLElement methods. Note that these are non-virtual
// methods, implementations are expected to forward calls to these
// methods.
@ -95,6 +107,19 @@ public:
NS_IMETHOD SetDir(const nsAString& aDir);
nsresult GetClassName(nsAString& aClassName);
nsresult SetClassName(const nsAString& aClassName);
nsresult GetTabIndex(int32_t* aTabIndex)
{
*aTabIndex = TabIndex();
return NS_OK;
}
nsresult SetTabIndex(int32_t aTabIndex)
{
mozilla::ErrorResult rv;
SetTabIndex(aTabIndex, rv);
return rv.ErrorCode();
}
nsresult GetOffsetTop(int32_t* aOffsetTop);
nsresult GetOffsetLeft(int32_t* aOffsetLeft);
nsresult GetOffsetWidth(int32_t* aOffsetWidth);
@ -107,14 +132,12 @@ public:
NS_IMETHOD InsertAdjacentHTML(const nsAString& aPosition,
const nsAString& aText);
nsresult ScrollIntoView(bool aTop, uint8_t optional_argc);
// Declare Focus(), Blur(), GetTabIndex(), SetTabIndex(), GetHidden(),
// SetHidden(), GetSpellcheck(), SetSpellcheck(), and GetDraggable() such that
// classes that inherit interfaces with those methods properly override them.
// Declare Focus(), Blur(), GetHidden(), SetHidden(), GetSpellcheck(),
// SetSpellcheck(), and GetDraggable() such that classes that inherit
// interfaces with those methods properly override them.
NS_IMETHOD Focus();
NS_IMETHOD Blur();
NS_IMETHOD Click();
NS_IMETHOD GetTabIndex(int32_t *aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
NS_IMETHOD GetHidden(bool* aHidden);
NS_IMETHOD SetHidden(bool aHidden);
NS_IMETHOD GetSpellcheck(bool* aSpellcheck);
@ -1354,8 +1377,6 @@ protected:
* interface to another object.
* This macro doesn't forward
* - Click
* - GetTabIndex
* - SetTabIndex
* - Focus
* - GetDraggable
* - GetInnerHTML
@ -1402,6 +1423,12 @@ protected:
NS_IMETHOD SetHidden(bool aHidden) { \
return _to SetHidden(aHidden); \
} \
NS_IMETHOD GetTabIndex(int32_t* aTabIndex) { \
return _to GetTabIndex(aTabIndex); \
} \
NS_IMETHOD SetTabIndex(int32_t aTabIndex) { \
return _to SetTabIndex(aTabIndex); \
} \
NS_IMETHOD Blur() { \
return _to Blur(); \
} \

View File

@ -31,9 +31,14 @@ NS_INTERFACE_TABLE_HEAD(nsGenericHTMLFrameElement)
NS_INTERFACE_TABLE_TO_MAP_SEGUE_CYCLE_COLLECTION(nsGenericHTMLFrameElement)
NS_INTERFACE_MAP_END_INHERITING(nsGenericHTMLElement)
NS_IMPL_INT_ATTR(nsGenericHTMLFrameElement, TabIndex, tabindex)
NS_IMPL_BOOL_ATTR(nsGenericHTMLFrameElement, Mozbrowser, mozbrowser)
int32_t
nsGenericHTMLFrameElement::TabIndexDefault()
{
return 0;
}
nsGenericHTMLFrameElement::~nsGenericHTMLFrameElement()
{
if (mFrameLoader) {

View File

@ -55,9 +55,7 @@ public:
nsresult CopyInnerTo(nsGenericElement* aDest);
// nsIDOMHTMLElement
NS_IMETHOD GetTabIndex(int32_t *aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
virtual int32_t TabIndexDefault() MOZ_OVERRIDE;
NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED_NO_UNLINK(nsGenericHTMLFrameElement,
nsGenericHTMLElement)

View File

@ -45,8 +45,6 @@ public:
NS_IMETHOD Click() {
return nsGenericHTMLElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
NS_IMETHOD Focus() {
return nsGenericHTMLElement::Focus();
}
@ -57,6 +55,7 @@ public:
NS_IMETHOD SetInnerHTML(const nsAString& aInnerHTML) {
return nsGenericHTMLElement::SetInnerHTML(aInnerHTML);
}
virtual int32_t TabIndexDefault() MOZ_OVERRIDE;
// nsIDOMHTMLAnchorElement
NS_DECL_NSIDOMHTMLANCHORELEMENT
@ -171,9 +170,14 @@ NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Name, name)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Rel, rel)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Rev, rev)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Shape, shape)
NS_IMPL_INT_ATTR(nsHTMLAnchorElement, TabIndex, tabindex)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Type, type)
int32_t
nsHTMLAnchorElement::TabIndexDefault()
{
return 0;
}
void
nsHTMLAnchorElement::GetItemValueText(nsAString& aValue)
{

View File

@ -35,24 +35,8 @@ public:
NS_FORWARD_NSIDOMELEMENT(nsGenericHTMLElement::)
// nsIDOMHTMLElement
NS_FORWARD_NSIDOMHTMLELEMENT_BASIC(nsGenericHTMLElement::)
NS_IMETHOD Click() {
return nsGenericHTMLElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
NS_IMETHOD Focus() {
return nsGenericHTMLElement::Focus();
}
NS_IMETHOD GetDraggable(bool* aDraggable) {
return nsGenericHTMLElement::GetDraggable(aDraggable);
}
NS_IMETHOD GetInnerHTML(nsAString& aInnerHTML) {
return nsGenericHTMLElement::GetInnerHTML(aInnerHTML);
}
NS_IMETHOD SetInnerHTML(const nsAString& aInnerHTML) {
return nsGenericHTMLElement::SetInnerHTML(aInnerHTML);
}
NS_FORWARD_NSIDOMHTMLELEMENT(nsGenericHTMLElement::)
virtual int32_t TabIndexDefault() MOZ_OVERRIDE;
// nsIDOMHTMLAreaElement
NS_DECL_NSIDOMHTMLAREAELEMENT
@ -135,7 +119,12 @@ NS_IMPL_STRING_ATTR(nsHTMLAreaElement, Coords, coords)
NS_IMPL_URI_ATTR(nsHTMLAreaElement, Href, href)
NS_IMPL_BOOL_ATTR(nsHTMLAreaElement, NoHref, nohref)
NS_IMPL_STRING_ATTR(nsHTMLAreaElement, Shape, shape)
NS_IMPL_INT_ATTR(nsHTMLAreaElement, TabIndex, tabindex)
int32_t
nsHTMLAreaElement::TabIndexDefault()
{
return 0;
}
void
nsHTMLAreaElement::GetItemValueText(nsAString& aValue)

View File

@ -69,24 +69,8 @@ public:
NS_FORWARD_NSIDOMELEMENT(nsGenericHTMLFormElement::)
// nsIDOMHTMLElement
NS_FORWARD_NSIDOMHTMLELEMENT_BASIC(nsGenericHTMLFormElement::)
NS_IMETHOD Click() {
return nsGenericHTMLFormElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
NS_IMETHOD Focus() {
return nsGenericHTMLFormElement::Focus();
}
NS_IMETHOD GetDraggable(bool* aDraggable) {
return nsGenericHTMLFormElement::GetDraggable(aDraggable);
}
NS_IMETHOD GetInnerHTML(nsAString& aInnerHTML) {
return nsGenericHTMLFormElement::GetInnerHTML(aInnerHTML);
}
NS_IMETHOD SetInnerHTML(const nsAString& aInnerHTML) {
return nsGenericHTMLFormElement::SetInnerHTML(aInnerHTML);
}
NS_FORWARD_NSIDOMHTMLELEMENT(nsGenericHTMLFormElement::)
virtual int32_t TabIndexDefault() MOZ_OVERRIDE;
// nsIDOMHTMLButtonElement
NS_DECL_NSIDOMHTMLBUTTONELEMENT
@ -208,11 +192,16 @@ NS_IMPL_ENUM_ATTR_DEFAULT_VALUE(nsHTMLButtonElement, FormMethod, formmethod,
NS_IMPL_BOOL_ATTR(nsHTMLButtonElement, FormNoValidate, formnovalidate)
NS_IMPL_STRING_ATTR(nsHTMLButtonElement, FormTarget, formtarget)
NS_IMPL_STRING_ATTR(nsHTMLButtonElement, Name, name)
NS_IMPL_INT_ATTR(nsHTMLButtonElement, TabIndex, tabindex)
NS_IMPL_STRING_ATTR(nsHTMLButtonElement, Value, value)
NS_IMPL_ENUM_ATTR_DEFAULT_VALUE(nsHTMLButtonElement, Type, type,
kButtonDefaultType->tag)
int32_t
nsHTMLButtonElement::TabIndexDefault()
{
return 0;
}
bool
nsHTMLButtonElement::IsHTMLFocusable(bool aWithMouse, bool *aIsFocusable, int32_t *aTabIndex)
{

View File

@ -31,12 +31,6 @@ public:
NS_IMETHOD Click() {
return nsGenericHTMLElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex) {
return nsGenericHTMLElement::GetTabIndex(aTabIndex);
}
NS_IMETHOD SetTabIndex(int32_t aTabIndex) {
return nsGenericHTMLElement::SetTabIndex(aTabIndex);
}
NS_IMETHOD Focus() {
return nsGenericHTMLElement::Focus();
}

View File

@ -316,8 +316,7 @@ bool
nsHTMLImageElement::IsHTMLFocusable(bool aWithMouse,
bool *aIsFocusable, int32_t *aTabIndex)
{
int32_t tabIndex;
GetTabIndex(&tabIndex);
int32_t tabIndex = TabIndex();
if (IsInDoc()) {
nsAutoString usemap;

View File

@ -34,12 +34,6 @@ public:
NS_IMETHOD Click() {
return nsGenericHTMLElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex) {
return nsGenericHTMLElement::GetTabIndex(aTabIndex);
}
NS_IMETHOD SetTabIndex(int32_t aTabIndex) {
return nsGenericHTMLElement::SetTabIndex(aTabIndex);
}
NS_IMETHOD Focus() {
return nsGenericHTMLElement::Focus();
}

View File

@ -898,7 +898,6 @@ NS_IMPL_BOOL_ATTR(nsHTMLInputElement, ReadOnly, readonly)
NS_IMPL_BOOL_ATTR(nsHTMLInputElement, Required, required)
NS_IMPL_URI_ATTR(nsHTMLInputElement, Src, src)
NS_IMPL_STRING_ATTR(nsHTMLInputElement, Step, step)
NS_IMPL_INT_ATTR(nsHTMLInputElement, TabIndex, tabindex)
NS_IMPL_STRING_ATTR(nsHTMLInputElement, UseMap, usemap)
//NS_IMPL_STRING_ATTR(nsHTMLInputElement, Value, value)
NS_IMPL_UINT_ATTR_NON_ZERO_DEFAULT_VALUE(nsHTMLInputElement, Size, size, DEFAULT_COLS)
@ -907,6 +906,12 @@ NS_IMPL_STRING_ATTR(nsHTMLInputElement, Placeholder, placeholder)
NS_IMPL_ENUM_ATTR_DEFAULT_VALUE(nsHTMLInputElement, Type, type,
kInputDefaultType->tag)
int32_t
nsHTMLInputElement::TabIndexDefault()
{
return 0;
}
NS_IMETHODIMP
nsHTMLInputElement::GetHeight(uint32_t *aHeight)
{

View File

@ -77,8 +77,6 @@ public:
// nsIDOMHTMLElement
NS_FORWARD_NSIDOMHTMLELEMENT_BASIC(nsGenericHTMLFormElement::)
NS_IMETHOD Click();
NS_IMETHOD GetTabIndex(int32_t* aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
NS_IMETHOD Focus();
NS_IMETHOD GetDraggable(bool* aDraggable) {
return nsGenericHTMLFormElement::GetDraggable(aDraggable);
@ -89,6 +87,7 @@ public:
NS_IMETHOD SetInnerHTML(const nsAString& aInnerHTML) {
return nsGenericHTMLFormElement::SetInnerHTML(aInnerHTML);
}
virtual int32_t TabIndexDefault() MOZ_OVERRIDE;
// nsIDOMHTMLInputElement
NS_DECL_NSIDOMHTMLINPUTELEMENT

View File

@ -45,12 +45,6 @@ public:
NS_IMETHOD Click() {
return nsGenericHTMLFormElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex) {
return nsGenericHTMLFormElement::GetTabIndex(aTabIndex);
}
NS_IMETHOD SetTabIndex(int32_t aTabIndex) {
return nsGenericHTMLFormElement::SetTabIndex(aTabIndex);
}
NS_IMETHOD Focus();
NS_IMETHOD GetDraggable(bool* aDraggable) {
return nsGenericHTMLFormElement::GetDraggable(aDraggable);

View File

@ -40,12 +40,6 @@ public:
NS_IMETHOD Click() {
return nsGenericHTMLElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex) {
return nsGenericHTMLElement::GetTabIndex(aTabIndex);
}
NS_IMETHOD SetTabIndex(int32_t aTabIndex) {
return nsGenericHTMLElement::SetTabIndex(aTabIndex);
}
NS_IMETHOD Focus();
NS_IMETHOD GetDraggable(bool* aDraggable) {
return nsGenericHTMLElement::GetDraggable(aDraggable);

View File

@ -49,24 +49,8 @@ public:
NS_FORWARD_NSIDOMELEMENT(nsGenericHTMLFormElement::)
// nsIDOMHTMLElement
NS_FORWARD_NSIDOMHTMLELEMENT_BASIC(nsGenericHTMLFormElement::)
NS_IMETHOD Click() {
return nsGenericHTMLFormElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
NS_IMETHOD Focus() {
return nsGenericHTMLFormElement::Focus();
}
NS_IMETHOD GetDraggable(bool* aDraggable) {
return nsGenericHTMLFormElement::GetDraggable(aDraggable);
}
NS_IMETHOD GetInnerHTML(nsAString& aInnerHTML) {
return nsGenericHTMLFormElement::GetInnerHTML(aInnerHTML);
}
NS_IMETHOD SetInnerHTML(const nsAString& aInnerHTML) {
return nsGenericHTMLFormElement::SetInnerHTML(aInnerHTML);
}
NS_FORWARD_NSIDOMHTMLELEMENT(nsGenericHTMLFormElement::)
virtual int32_t TabIndexDefault() MOZ_OVERRIDE;
// nsIDOMHTMLObjectElement
NS_DECL_NSIDOMHTMLOBJECTELEMENT
@ -433,13 +417,17 @@ NS_IMPL_STRING_ATTR(nsHTMLObjectElement, Height, height)
NS_IMPL_INT_ATTR(nsHTMLObjectElement, Hspace, hspace)
NS_IMPL_STRING_ATTR(nsHTMLObjectElement, Name, name)
NS_IMPL_STRING_ATTR(nsHTMLObjectElement, Standby, standby)
NS_IMPL_INT_ATTR_DEFAULT_VALUE(nsHTMLObjectElement, TabIndex, tabindex,
IsFocusableForTabIndex() ? 0 : -1)
NS_IMPL_STRING_ATTR(nsHTMLObjectElement, Type, type)
NS_IMPL_STRING_ATTR(nsHTMLObjectElement, UseMap, usemap)
NS_IMPL_INT_ATTR(nsHTMLObjectElement, Vspace, vspace)
NS_IMPL_STRING_ATTR(nsHTMLObjectElement, Width, width)
int32_t
nsHTMLObjectElement::TabIndexDefault()
{
return IsFocusableForTabIndex() ? 0 : -1;
}
NS_IMETHODIMP
nsHTMLObjectElement::GetContentDocument(nsIDOMDocument **aContentDocument)
{

View File

@ -53,12 +53,6 @@ public:
NS_IMETHOD Click() {
return nsGenericHTMLElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex) {
return nsGenericHTMLElement::GetTabIndex(aTabIndex);
}
NS_IMETHOD SetTabIndex(int32_t aTabIndex) {
return nsGenericHTMLElement::SetTabIndex(aTabIndex);
}
NS_IMETHOD Focus() {
return nsGenericHTMLElement::Focus();
}

View File

@ -1219,7 +1219,12 @@ NS_IMPL_BOOL_ATTR(nsHTMLSelectElement, Multiple, multiple)
NS_IMPL_STRING_ATTR(nsHTMLSelectElement, Name, name)
NS_IMPL_BOOL_ATTR(nsHTMLSelectElement, Required, required)
NS_IMPL_UINT_ATTR(nsHTMLSelectElement, Size, size)
NS_IMPL_INT_ATTR(nsHTMLSelectElement, TabIndex, tabindex)
int32_t
nsHTMLSelectElement::TabIndexDefault()
{
return 0;
}
bool
nsHTMLSelectElement::IsHTMLFocusable(bool aWithMouse,

View File

@ -254,24 +254,8 @@ public:
NS_FORWARD_NSIDOMELEMENT(nsGenericHTMLFormElement::)
// nsIDOMHTMLElement
NS_FORWARD_NSIDOMHTMLELEMENT_BASIC(nsGenericHTMLFormElement::)
NS_IMETHOD Click() {
return nsGenericHTMLFormElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
NS_IMETHOD Focus() {
return nsGenericHTMLFormElement::Focus();
}
NS_IMETHOD GetDraggable(bool* aDraggable) {
return nsGenericHTMLFormElement::GetDraggable(aDraggable);
}
NS_IMETHOD GetInnerHTML(nsAString& aInnerHTML) {
return nsGenericHTMLFormElement::GetInnerHTML(aInnerHTML);
}
NS_IMETHOD SetInnerHTML(const nsAString& aInnerHTML) {
return nsGenericHTMLFormElement::SetInnerHTML(aInnerHTML);
}
NS_FORWARD_NSIDOMHTMLELEMENT(nsGenericHTMLFormElement::)
virtual int32_t TabIndexDefault() MOZ_OVERRIDE;
// nsIDOMHTMLSelectElement
NS_DECL_NSIDOMHTMLSELECTELEMENT

View File

@ -44,24 +44,8 @@ public:
NS_FORWARD_NSIDOMELEMENT(nsGenericHTMLElement::)
// nsIDOMHTMLElement
NS_FORWARD_NSIDOMHTMLELEMENT_BASIC(nsGenericHTMLElement::)
NS_IMETHOD Click() {
return nsGenericHTMLElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
NS_IMETHOD Focus() {
return nsGenericHTMLElement::Focus();
}
NS_IMETHOD GetDraggable(bool* aDraggable) {
return nsGenericHTMLElement::GetDraggable(aDraggable);
}
NS_IMETHOD GetInnerHTML(nsAString& aInnerHTML) {
return nsGenericHTMLElement::GetInnerHTML(aInnerHTML);
}
NS_IMETHOD SetInnerHTML(const nsAString& aInnerHTML) {
return nsGenericHTMLElement::SetInnerHTML(aInnerHTML);
}
NS_FORWARD_NSIDOMHTMLELEMENT(nsGenericHTMLElement::)
virtual int32_t TabIndexDefault() MOZ_OVERRIDE;
// nsIDOMHTMLAppletElement
NS_DECL_NSIDOMHTMLAPPLETELEMENT
@ -369,11 +353,16 @@ NS_IMPL_INT_ATTR(nsHTMLSharedObjectElement, Hspace, hspace)
NS_IMPL_STRING_ATTR(nsHTMLSharedObjectElement, Name, name)
NS_IMPL_URI_ATTR_WITH_BASE(nsHTMLSharedObjectElement, Object, object, codebase)
NS_IMPL_URI_ATTR(nsHTMLSharedObjectElement, Src, src)
NS_IMPL_INT_ATTR_DEFAULT_VALUE(nsHTMLSharedObjectElement, TabIndex, tabindex, -1)
NS_IMPL_STRING_ATTR(nsHTMLSharedObjectElement, Type, type)
NS_IMPL_INT_ATTR(nsHTMLSharedObjectElement, Vspace, vspace)
NS_IMPL_STRING_ATTR(nsHTMLSharedObjectElement, Width, width)
int32_t
nsHTMLSharedObjectElement::TabIndexDefault()
{
return -1;
}
NS_IMETHODIMP
nsHTMLSharedObjectElement::GetSVGDocument(nsIDOMDocument **aResult)
{

View File

@ -41,12 +41,6 @@ public:
NS_IMETHOD Click() {
return nsGenericHTMLElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex) {
return nsGenericHTMLElement::GetTabIndex(aTabIndex);
}
NS_IMETHOD SetTabIndex(int32_t aTabIndex) {
return nsGenericHTMLElement::SetTabIndex(aTabIndex);
}
NS_IMETHOD Focus() {
return nsGenericHTMLElement::Focus();
}

View File

@ -77,24 +77,8 @@ public:
NS_FORWARD_NSIDOMELEMENT(nsGenericHTMLFormElement::)
// nsIDOMHTMLElement
NS_FORWARD_NSIDOMHTMLELEMENT_BASIC(nsGenericHTMLFormElement::)
NS_IMETHOD Click() {
return nsGenericHTMLFormElement::Click();
}
NS_IMETHOD GetTabIndex(int32_t* aTabIndex);
NS_IMETHOD SetTabIndex(int32_t aTabIndex);
NS_IMETHOD Focus() {
return nsGenericHTMLFormElement::Focus();
}
NS_IMETHOD GetDraggable(bool* aDraggable) {
return nsGenericHTMLFormElement::GetDraggable(aDraggable);
}
NS_IMETHOD GetInnerHTML(nsAString& aInnerHTML) {
return nsGenericHTMLFormElement::GetInnerHTML(aInnerHTML);
}
NS_IMETHOD SetInnerHTML(const nsAString& aInnerHTML) {
return nsGenericHTMLFormElement::SetInnerHTML(aInnerHTML);
}
NS_FORWARD_NSIDOMHTMLELEMENT(nsGenericHTMLFormElement::)
virtual int32_t TabIndexDefault() MOZ_OVERRIDE;
// nsIDOMHTMLTextAreaElement
NS_DECL_NSIDOMHTMLTEXTAREAELEMENT
@ -441,10 +425,14 @@ NS_IMPL_STRING_ATTR(nsHTMLTextAreaElement, Name, name)
NS_IMPL_BOOL_ATTR(nsHTMLTextAreaElement, ReadOnly, readonly)
NS_IMPL_BOOL_ATTR(nsHTMLTextAreaElement, Required, required)
NS_IMPL_UINT_ATTR_NON_ZERO_DEFAULT_VALUE(nsHTMLTextAreaElement, Rows, rows, DEFAULT_ROWS_TEXTAREA)
NS_IMPL_INT_ATTR(nsHTMLTextAreaElement, TabIndex, tabindex)
NS_IMPL_STRING_ATTR(nsHTMLTextAreaElement, Wrap, wrap)
NS_IMPL_STRING_ATTR(nsHTMLTextAreaElement, Placeholder, placeholder)
int32_t
nsHTMLTextAreaElement::TabIndexDefault()
{
return 0;
}
NS_IMETHODIMP
nsHTMLTextAreaElement::GetType(nsAString& aType)