Open
Bug 675137
Opened 13 years ago
Updated 2 years ago
remove nsIAccessible::getNativeInterface
Categories
(Core :: Disability Access APIs, defect)
Core
Disability Access APIs
Tracking
()
NEW
People
(Reporter: surkov, Unassigned)
References
(Blocks 2 open bugs)
Details
(Keywords: access)
1) get rid nsIAccessible::getNativeInterface
2) introduce NativeObject() per each nsAccessNodeWrap to get a pointer to native object, like
AtkObject* NativeObject();
IAccessible* NativeObject();
mozAccessible* NativeObject();
3) get rid nsAccessibleWrap::GetAtkObject() helper
Reporter | ||
Comment 1•13 years ago
|
||
would the following do a trick?
// nsAccessible.h
class OSAccessible;
class nsAccessible
{
public:
virtual OSAccessible* OSObject() = 0;
}
// atk/nsAccessibleWrap.h
typedef AtkObject OSAccessible;
class nsAccessibleWrap
{
public:
virtual OSAccessible* OSObject() { return mAtkObject; }
}
// atk/nsAccessibleWrap.cpp
void
foo(nsAccessible* aAccessible)
{
AtkObject* atkAccessible = aAccessible->OSObject();
}
Comment 2•13 years ago
|
||
(In reply to alexander :surkov from comment #0)
> 2) introduce NativeObject() per each nsAccessNodeWrap to get a pointer to
> native object, like
> AtkObject* NativeObject();
> IAccessible* NativeObject();
> mozAccessible* NativeObject();
On Mac it would have to be objc_object* OSObject() as mozAccessible is an Objective-C class. But that's a detail. Works for me.
objc_object* it typedef to id which is the generic Objective-C object.
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•