Closed Bug 131465 Opened 22 years ago Closed 15 years ago

Immersion Desktop doesn't vibrate on links (iFeel support)

Categories

(Tech Evangelism Graveyard :: English US, defect)

x86
Windows 2000
defect
Not set
minor

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: gebism, Unassigned)

References

Details

(Whiteboard: [plugin])

From Bugzilla Helper:
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.9) Gecko/20020311
BuildID:    2002031104

Windows 2k SP2, if that matters.

I'm using "Immersion(R) TouchWare(R) Desktop 2.5 Version 2.5.0.13" (hey man,
that's what the "About" box says.) which, coupled with my iFeel mouse, gives me
all sorts of neat vibration feedback when I mouse over various
widgets and whatnot.

On IE and Netscape 4.79, I get a lot of these vibrations, the
most important being when I mouse over a link.  This feature has
never worked for me in Mozilla.

(I do get *some* feedback, for example, the menus in Mozilla give feeback.  The
URLbar pulldown gives feedback.  Scroll bars don't. (But they don't in IE, either))

Doing some research in bugzilla, I only found two other bugs
mentioning "immersion" (Bugs 116796 and 88070) so I filed this to the
same "Browser/XP Widgets" product and component.  However, further
research indicates that this might be related to Accessiblity, in
which case it should probably be refiled.  It may also be related
to Immersion desktop software not fully supporting Mozilla, in
which case this should probably be refiled as an evangalism bug.
Maybe I'm doing something wrong, in which case, you should smack me.

This feature didn't work with older versions of Immersion Desktop, either.

You can download Immersion Desktop here:
 http://www.immersion.com/products/ce/twBus/download.php
Not sure that helps you without an iFeel mouse, though.

Reproducible: Always
Steps to Reproduce:
1. Buy an iFeel mouse, install, and enable Immersion Desktop
2. Install Mozilla
3. Mouse over a link

Actual Results:  Nothing

Expected Results:  My mouse should vibrate.
That must be a bug with the Immersion desktop, because they use MSAA
information. We expose MSAA information on links just the same way Internet
Explorer does.
Alright, I finally found Immersion's own web page describing this issue:

http://www.immersion.com/developer/community/faq/faqGeneral.php#G_P_2

Advocacy/evangalism issue?  They say Mozilla doesn't support Active
Accessibility anymore.

What the heck, to thwart the ethereal nature of links, I'll just cutnpaste their
answer here:

Q: Why can't I feel hyperlinks or authored touch sensations with Netscape 6?

A: If you are using Netscape 6 or above, you will not feel any hyperlinks or
form elements on the web pages you visit because Netscape 6 no longer supports a
feature known as Active Accessibility, which is used by the Immersion Touchware
Desktop software. In addition, it is not possible to feel authored sensations in
web pages or online Flash or Shockwave animations in Netscape 6. Netscape's
plugin architecture changed drastically in this latest version of the browser,
and the Immersion Web Netscape Plugin, which allows touch sensations to be felt
in the 4.x family of Netscape browsers, does not work with Netscape 6. To feel
hyperlinks, form elements, and authored sensations on the web, please use
another browser like Microsoft Internet Explorer 4 or above, or a version of
Netscape 4.x. 
I agree this is an evangelism issue. We do support Active Accessibility. That is
how we expose links. I know Immersion Desktop uses Active Accessibility to know
what widgets there are on the screen.
-> aaronl
Assignee: jaggernaut → aaronl
Status: UNCONFIRMED → NEW
Ever confirmed: true
QA Contact: jrgm → shrir
.
Assignee: aaronl → aruner
Component: XP Toolkit/Widgets → Plugins
Product: Browser → Tech Evangelism
QA Contact: shrir → mgalli
Version: other → unspecified
*puzzled*

I guess if we do support MSAA, their FAQ needs to be updated to reflect this. It
looks like there's still the issue of plugin support though.

Also, the first comment says explicitely that there is no feedback when hovering
over links, how does that fall under evangelism?
I know they utilize MSAA info because when I load the Immersion Desktop on my
system, it calls into our MSAA code.

We need to get in touch with one of the developers there and find out what's
happening on their end with the information, and why they're getting it if
they're not using it.
I have contacted the Immersion Corporation at developer@immersion.com. Hopefully
they'll get back to us.

They have an excellent developer page at http://www.immersion.com/developer/
Here's the email I got from developer@immersion.com

Hello, Aaron.

I bounced your question off some heads. I summarized my findings as follows,

Condensed "facts"
-----------------

1) Hyperlinks are detected by a mouse hook.
2) This mouse hook looks at the "class" of the object.
3) Netscape (>6.2) uses only one "class" for all its windows causing
problems with current hyperlink detection algorithm.
4) Presently, the mouse tracker ignores Netscape windows to avoid problems.
This explains why you are not feeling hyperlinks.

It is explained in more detail below. Immersion needs to develop a hyperlink
detection algorithm that works with later versions of Netscape.

"Technical" prose
-----------------

Support for Netscape 4.x:
Implementation was done on top of mouse move. Detection algorithms are based
on specific Afx window classes that were still being used in Netscape. This
is how toolbar buttons were detected. This type of detection is only valid
for Netscape 4.x because newer versions of Netscape do not use these Afx
window classes - and limit all window declared in Netscape to one Netscape
specific class.

Support for Netscape 6.0,6.1,6.2:
There is no implementation specific to these versions of Netscape. An
investigation was performed on the complexity in adding detection. That
investigation focused on using API hooking to intercept certain windows
operations. Hyperlink and text selection was implemented for this
investigation.

Note: Menus are detected using straight AA hooks. Netscape 6.x uses MS
Windows menus for its browser GUI - and thus menus are detected in this
version. But it should be remembered that this is not Netscape specific -
this is how all menus are detected.

Support for Mozilla 0.9.9/Netscape (>6.2)
From the e mail below, AA has been activated for [hyperlink] objects on HTML
pages. The reason this was not working with the current version of Desktop
is because hyperlink detection is done inside a mouse hook. Inside the mouse
hook Desktop (Tracker specifically) retrieves the class name of the window
the mouse is over. This class name is used to determine what type of
detection will follow. Since tracker does not monitor any Netscape windows,
it does not do any type of detection when the mouse is over them. I have
implemented a quick test that activated detection of the one and only
Mozilla/Netscape window. Hyperlinks were detected properly. But since
Mozilla/Netscape uses only one class for all its windows the type of
detection is very global - and causes multiple forces to play (on some
objects). So we will need some more time to clean up detection specific to
these newer versions of Mozilla/Netscape that incorporate AA.
I wrote back (to developer@immersion.com):

Hello,

We don't actually support regular Microsoft Windows menus, so I don't 
know where that impression came from. Starting in Netscape 6.2, 
everything in our user interface, including menus, uses non-native 
widgets. If it's working, it's because you're using MSAA. I do know that 
Immersion Desktop uses some MSAA.

We are now fully supporting MSAA in our nightly builds. Your developers 
can work with our current MSAA implementation by downloading a nightly 
Mozilla at  
http://ftp.mozilla.org/pub/mozilla/nightly/latest/mozilla-win32-installer.exe

The MSAA should be used to find where links are within 
Mozilla/Gecko/Netscape products (using MozillaWindowClass), rather than 
window class names.

- Aaron
They wrote back:

Thanks for the info. I will forward this on to the desktop group.
Unfortunately, you will not be able to feel hyperlinks until we revisit our
hyperlink detection algorithm.
Now that they've written to tell us this is something to change in their code,
how do we mark up this bug?
Since this is a tech evang. bug I would keep it open, and mark it fixed once
they've fixed (or have committed to fixing) their software.
Blocks: 82207
No longer blocks: 82207
Aaron, since you have dealt with them on this issue, I am giving this bug to
you. Have they released a new version of this product since the last contact?
Did they give you any idea on when the update to support us would be made? If so
set the target milestone to that month and follow up with them then. If they
aren't going to fix this, then mark it wontfix and move on.
Assignee: aruner → aaronl
Actually, Doron Rosenberg has been dealing with them now. I guess they're
writing a plugin now.
Note, two users report immediate Phoenix crashes with iFeel enabled:
http://www.mozillazine.org/forums/viewtopic.php?p=67955#67955
I'm just passing this along, I don't know much about it.

My research also found two crash bugs involving iDesktop, both closed:
Bug 88070 and Bug 116796

And a duplicate for this bug: Bug 73550

A lot of code was changed in an accessibility rearchitecure recently, so I'm not
surprised.

Can I get a talkback number/report?
I have no more info.  We Phoenix users are not good talkbackers (yet).
tech evang june 2003 reorg
Assignee: aaronl → english-us
Component: Plugins → English US
QA Contact: mgalli → english-us
Whiteboard: [plugin]
*** Bug 73550 has been marked as a duplicate of this bug. ***
Is this still an issue ?
As far as I can tell, Immersion doesn't update their software anymore, and there aren't any devices which use their technology anymore either.

There's nothing for Mozilla to do here, (either in the form of code fixes, or in the form of evangelism) so I say wontfix.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → WONTFIX
Product: Tech Evangelism → Tech Evangelism Graveyard
You need to log in before you can comment on or make changes to this bug.