Closed
Bug 379747
Opened 18 years ago
Closed 17 years ago
Accessible Hyperlink getURI() failing to return useful information
Categories
(Core :: Disability Access APIs, defect)
Tracking
()
VERIFIED
INVALID
People
(Reporter: scott, Assigned: ginnchen+exoracle)
References
Details
(Keywords: access)
Attachments
(1 file)
1.06 KB,
text/html
|
Details |
IHyperlink.getURI() is failing to return the URI string for a link.
Assume the target for a link is http://mozilla.org. I would expect getURI() to return 'http://mozilla.org', however, it is returning a null string. What does work is first adapting the parent of the link to the hypertext interface and then use getLink(n) to return the hyperlink interface of the link in question. This returned hyperlink interface can then be used to retrieve 'http://mozilla.org' using getURI().
Comment 1•18 years ago
|
||
This must have something to do with the HyperLinkImpl solution.
Assignee: aaronleventhal → ginn.chen
Reporter | ||
Updated•18 years ago
|
Comment 2•18 years ago
|
||
We might consider using an object attribute called "uri"
To be honest I don't understand how HyperlinkImpl works. We still have open bugs for it: bug 366000 and bug 197189. Not sure if they're still issues or not.
Summary: getURI() failing to return useful information → Accessible Hyperlink getURI() failing to return useful information
Comment 3•18 years ago
|
||
Ginn, any idea what the problem is on this one?
I'm working on bug 366000, I'll look at this one and bug 197189 after.
Scott, do we a test script to for it?
Also please specify the meaning of "null string" ? You mean null pointer or empty string?
Did you get any CORBA exception when calling getURI?
Thanks!
Reporter | ||
Comment 6•18 years ago
|
||
Ginn, I use Accerciser for all accessibility related testing http://live.gnome.org/Accerciser . I am currently receiving an empty string when using the hyperlink interface directly on the link. No CORBA exceptions are received.
Scott, I dropped down the "Hyperlink" interface in "Interface Viewer" of Accerciser.
and I see nothing there.
It could be a bug of at-spi or Accerciser.
I need to look at their code.
I hacked at-poke and it works for me.
I queried "IDL:Acessibility/Hyperlink:1.0" and called AccessibileHyperlink_getURI(hyperlink, 0)
I got the "uri" with no problem.
I checked accerciser, I didn't find anywhere it is using this interface.
In accerciser/plugins/interface_view.py, class _SectionHyperlink is empty.
Close this bug for now.
Let me know if you still have problems with this interface and API.
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → WORKSFORME
Reporter | ||
Comment 9•18 years ago
|
||
You can see the problem using accerciser's IPython console even if accerciser has not implemented IHyperlink in the Interface view (I believe it is implemented but provides no data because of this bug). The following is the output from a session with accerciser IPython console.
In [1]: print acc
[ | Home]
In [2]: h = acc.queryHyperlink()
In [3]: print h.getURI(0)
In [4]: ht = acc.parent.queryHypertext()
In [5]: h = ht.getLink(0)
In [6]: print h.getURI(0)
file:///home/shaeger/ibm/439476lsr/lsr/test/minefield/
As you can see from the above output, getURI() works when you get the hyperlink interface using IHypertext on the parent (In 4-6). However, getURI() does not work when you use it directly on the link (In 3).
Reporter | ||
Updated•18 years ago
|
Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Comment 10•18 years ago
|
||
Scott, can you check in at-poke? Maybe this is a problem in pyspi?
Comment 11•18 years ago
|
||
Ginn, ignore my last comment -- comment 9.
Reporter | ||
Comment 12•18 years ago
|
||
at-poke must be using Hypertext.getLink(N) which returns an accessible with the hyperlink interface. What we're reporting is if you do getChildAtIndex(N) you get the same accessible except this one says it doesn't implement hyperlink.
Assignee | ||
Comment 13•18 years ago
|
||
Scott, I followed your steps in c#9, I got uri with no problem in step [3].
I'm using Ubuntu 7.04.
I think I didn't build my own atk or at-spi.
What's your platform?
And I said I hacked at-poke, I meant I changed the source code to use Hyperlink.getURI(0).
It also works for me.
Status: REOPENED → RESOLVED
Closed: 18 years ago → 18 years ago
Resolution: --- → WORKSFORME
Reporter | ||
Comment 14•17 years ago
|
||
This is still a problem, now seen in Orca, LSR and Accerciser. Just to repeat the problem, assuming 'link' is an accessible object, link.getURI(0) returns the an empty string, while the following returns the URI.
ihyperlink = link.parent.getLink(0)
ihyperlink.getURI(0)
Comment 15•17 years ago
|
||
Sounds like it needs to reopened then.
Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Assignee | ||
Comment 16•17 years ago
|
||
Scott,
I met this problem once, but I couldn't reproduce it with trunk build now.
Did you reproduce it with all webpages or just some pages?
Can you attach your testcase?
And what's your platform?
Thanks!
Reporter | ||
Comment 17•17 years ago
|
||
Ginn,
I see this on every link I have tested. I will attach a test page that I am absolutely sure has the problem. I am running Linux on Fedora Core 6.
Reporter | ||
Comment 18•17 years ago
|
||
Assignee | ||
Comment 19•17 years ago
|
||
Scott,
I reproduced your problem with FC6. But I couldn't reproduce it on Ubuntu 7.04.
I'll give a try on F-7 tomorrow, before I look into it.
Thanks!
Assignee | ||
Comment 20•17 years ago
|
||
I believe it's a bug of atk 1.12.2.
It got fixed in atk 1.12.4.
http://svn.gnome.org/viewcvs/atk/tags/ATK_1_12_4/atk/atkhyperlinkimpl.c?r1=1074&r2=1092
Upgrade your atk lib or upgrade your whole system.
Status: REOPENED → RESOLVED
Closed: 18 years ago → 17 years ago
Resolution: --- → INVALID
Comment 21•17 years ago
|
||
I'm getting problems on fully patched Ubuntu 7.04 in accerciser and pyatspi direct
Synaptik shows libatk 1.18.0-oubuntu1
All form controls have an invalid Hyperlink interface with nLinks = 1 and URI(0) = ''
a valid link has isValid() = false
Reporter | ||
Comment 22•17 years ago
|
||
This is now working for me with Accerciser. I have recently installed Ubuntu7.10 and am fully up to date with Accerciser, pyatspi and the at-spi-registry.
You need to log in
before you can comment on or make changes to this bug.
Description
•