diff --git a/mozilla/accessible/macbuild/accessible.xml b/mozilla/accessible/macbuild/accessible.xml
index 9e32cb7ba5f..48f3679db49 100644
--- a/mozilla/accessible/macbuild/accessible.xml
+++ b/mozilla/accessible/macbuild/accessible.xml
@@ -1161,6 +1161,13 @@
Text
+
+ Name
+ nsTextAccessible.cpp
+ MacOS
+ Text
+
+
Name
nsAccessibilityFactory.cpp
@@ -1299,6 +1306,11 @@
nsSelectAccessible.cpp
MacOS
+
+ Name
+ nsTextAccessible.cpp
+ MacOS
+
Name
nsAccessibilityFactory.cpp
@@ -2424,6 +2436,13 @@
Text
+
+ Name
+ nsTextAccessible.cpp
+ MacOS
+ Text
+
+
Name
nsAccessibilityFactory.cpp
@@ -2562,6 +2581,11 @@
nsSelectAccessible.cpp
MacOS
+
+ Name
+ nsTextAccessible.cpp
+ MacOS
+
Name
nsAccessibilityFactory.cpp
@@ -2683,6 +2707,12 @@
nsSelectAccessible.cpp
MacOS
+
+ accessible.shlb
+ Name
+ nsTextAccessible.cpp
+ MacOS
+
accessible.shlb
Name
diff --git a/mozilla/accessible/public/nsIAccessibleText.idl b/mozilla/accessible/public/nsIAccessibleText.idl
index 7b38c5ce0e1..099f0496bce 100644
--- a/mozilla/accessible/public/nsIAccessibleText.idl
+++ b/mozilla/accessible/public/nsIAccessibleText.idl
@@ -44,17 +44,13 @@ interface nsIAccessibleText : nsISupports
const nsAccessibleCoordType COORD_TYPE_SCREEN = 0;
const nsAccessibleCoordType COORD_TYPE_WINDOW = 1;
- readonly attribute long caretOffset;
- /**
- * This needs a return value for success/failure
- * Not all text fields may support this
- */
- boolean setCaretOffset (in long offset);
+ attribute long caretOffset;
readonly attribute long characterCount;
+ readonly attribute long selectionCount;
/**
- * String methods may need to return multibyte-encoded strings,
+ * String methods may need to return multibyte-encoded strings,
* since some locales can't be encoded using 16-bit chars.
* So the methods below might return UTF-16 strings, or they could
* return "string" values which are UTF-8.
@@ -100,27 +96,13 @@ interface nsIAccessibleText : nsISupports
out long startOffset,
out long endOffset);
- /**
- * This needs a return value for success/failure
- * Not all text fields may support this
- */
- boolean setSelectionBounds (in long selectionNum,
+ void setSelectionBounds (in long selectionNum,
in long startOffset,
in long endOffset);
- /**
- * This needs a return value for success/failure
- * Not all text fields may support this
- */
- boolean addSelection (in long selectionNum,
- in long startOffset,
- in long endOffset);
+ void addSelection (in long startOffset, in long endOffset);
- /**
- * This needs a return value for success/failure
- * Not all text fields may support this
- */
- boolean removeSelection (in long selectionNum);
+ void removeSelection (in long selectionNum);
};
/*
diff --git a/mozilla/accessible/src/base/Makefile.in b/mozilla/accessible/src/base/Makefile.in
index 88264aba174..35466a7176e 100644
--- a/mozilla/accessible/src/base/Makefile.in
+++ b/mozilla/accessible/src/base/Makefile.in
@@ -56,6 +56,7 @@ CPPSRCS = \
nsGenericAccessible.cpp \
nsRootAccessible.cpp \
nsSelectAccessible.cpp \
+ nsTextAccessible.cpp \
$(NULL)
EXPORTS = \
diff --git a/mozilla/accessible/src/base/makefile.win b/mozilla/accessible/src/base/makefile.win
index c4cbe911139..b9a11931a5d 100755
--- a/mozilla/accessible/src/base/makefile.win
+++ b/mozilla/accessible/src/base/makefile.win
@@ -51,6 +51,7 @@ CPP_OBJS = \
.\$(OBJDIR)\nsGenericAccessible.obj \
.\$(OBJDIR)\nsRootAccessible.obj \
.\$(OBJDIR)\nsSelectAccessible.obj \
+ .\$(OBJDIR)\nsTextAccessible.obj \
$(NULL)
EXPORTS = \
diff --git a/mozilla/accessible/src/base/nsFormControlAccessible.cpp b/mozilla/accessible/src/base/nsFormControlAccessible.cpp
index d647900c43d..7203b6958ff 100644
--- a/mozilla/accessible/src/base/nsFormControlAccessible.cpp
+++ b/mozilla/accessible/src/base/nsFormControlAccessible.cpp
@@ -178,49 +178,3 @@ NS_IMETHODIMP nsRadioButtonAccessible::GetAccRole(PRUint32 *_retval)
return NS_OK;
}
-// ------------
-// Text Accessibles
-// ------------
-
-nsTextAccessible::nsTextAccessible(nsIDOMNode* aDomNode, nsIWeakReference* aShell):
-nsLinkableAccessible(aDomNode, aShell)
-{
-}
-
-/**
- * We are text
- */
-NS_IMETHODIMP nsTextAccessible::GetAccRole(PRUint32 *_retval)
-{
- *_retval = ROLE_TEXT;
-
- return NS_OK;
-}
-
-/**
- * No Children
- */
-NS_IMETHODIMP nsTextAccessible::GetAccFirstChild(nsIAccessible **_retval)
-{
- *_retval = nsnull;
- return NS_OK;
-}
-
-/**
- * No Children
- */
-NS_IMETHODIMP nsTextAccessible::GetAccLastChild(nsIAccessible **_retval)
-{
- *_retval = nsnull;
- return NS_OK;
-}
-
-/**
- * No Children
- */
-NS_IMETHODIMP nsTextAccessible::GetAccChildCount(PRInt32 *_retval)
-{
- *_retval = 0;
- return NS_OK;
-}
-
diff --git a/mozilla/accessible/src/base/nsFormControlAccessible.h b/mozilla/accessible/src/base/nsFormControlAccessible.h
index 756c5e5e5ce..0b5d227854e 100644
--- a/mozilla/accessible/src/base/nsFormControlAccessible.h
+++ b/mozilla/accessible/src/base/nsFormControlAccessible.h
@@ -72,22 +72,6 @@ public:
NS_IMETHOD GetAccActionName(PRUint8 index, nsAString& _retval);
};
-/**
- * Text nodes have no children, but since double inheritance
- * no-worky we have to re-impl the LeafAccessiblity blocks
- * this way.
- */
-class nsTextAccessible : public nsLinkableAccessible
-{
-
-public:
- nsTextAccessible(nsIDOMNode* aDomNode, nsIWeakReference* aShell);
- NS_IMETHOD GetAccRole(PRUint32 *_retval);
- NS_IMETHOD GetAccFirstChild(nsIAccessible **_retval);
- NS_IMETHOD GetAccLastChild(nsIAccessible **_retval);
- NS_IMETHOD GetAccChildCount(PRInt32 *_retval);
-};
-
#endif
diff --git a/mozilla/accessible/src/html/nsHTMLTextAccessible.h b/mozilla/accessible/src/html/nsHTMLTextAccessible.h
index f9ba1474cf2..a7604125dc8 100644
--- a/mozilla/accessible/src/html/nsHTMLTextAccessible.h
+++ b/mozilla/accessible/src/html/nsHTMLTextAccessible.h
@@ -39,7 +39,7 @@
#ifndef _nsHTMLTextAccessible_H_
#define _nsHTMLTextAccessible_H_
-#include "nsFormControlAccessible.h"
+#include "nsTextAccessible.h"
class nsIWeakReference;
diff --git a/mozilla/accessible/src/xul/nsXULTextAccessible.h b/mozilla/accessible/src/xul/nsXULTextAccessible.h
index 5c6fe6c8994..fdf9faf9948 100644
--- a/mozilla/accessible/src/xul/nsXULTextAccessible.h
+++ b/mozilla/accessible/src/xul/nsXULTextAccessible.h
@@ -40,7 +40,7 @@
#ifndef _nsXULTextAccessible_H_
#define _nsXULTextAccessible_H_
-#include "nsFormControlAccessible.h"
+#include "nsTextAccessible.h"
class nsIWeakReference;