I’ve updated the WebbIE Web Browser. No new features, but significant plumbing improvements I hope. Non-technical readers can stop here!
One of the big problems that WebbIE has is when to update the text view it generates for each web page. Back when WebbIE started off in 2001 this was pretty easy, though HTML frames were a bit tricky: you waited until a page loaded, parsed it, and the user was good to go until the next web page transition.
WebbIE therefore tries to update only when (1) it knows there is a new page transition or (2) the user does something that plausibly would result in a page transition, like clicking a button. In the second case WebbIE simply waits a bit, then triggers a refresh if there has not been a page transition. So really the problem is “have we had a new page transition?”
WebbIE uses Internet Explorer through COM, so how do we detect Internet Explorer doing a page transition? Here are some things I’ve used:
- Watching the status bar text to see if it says “Done”. This was surprisingly effective! Would need to internationalise the phrase to check for non-English users.
And here are some to try out in the future!
- WAI-ARIA events – good for later versions of Internet Explorer, so a plausible approach in the future as more Windows machines get updated.
- UIA events – the accessibility interface is getting some more tender loving care from Microsoft in the last few years, probably trying to catch up with the perception that Apple is better on accessibility.