WebbIE Web Browser 4.5.2

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.

You don’t see HTML frames much nowadays in 2016, but many more web pages dynamically load and amend their content using JavaScript and talking to servers in the background but without loading a new page. Worse, much of this is either useless junk (loading advertisements) or a distraction for the user (an auto-updating chat sidebar when the user is trying to fill in a form).

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.
  • Using the DocumentComplete event fired by Internet Explorer. This isn’t trivial, because it fires for a page, saying it is done (.ReadyState is COMPLETE), but ALSO fires for any FRAME elements BEFORE the actual page (FRAMESET), and ALSO then fires for any later IFRAMEs loaded by the page – and until the page is finished you can’t know how many IFRAMEs will be loaded. I do use this as a fallback for the JavaScript onload event, though.
  • Hooking the onload JavaScript event. This is what we’re doing in WebbIE now. Essentially it’s outsourcing the problem of knowing when the page is loaded to the agent with the best chance of knowing – the web browser itself.

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.

WebbIE 4.5.0 now available

I’ve updated WebbIE 4 today, with some minor changes and bugfixes.

WebbIE 4 has supported the new HTML5 AUDIO and VIDEO elements for a couple of years, playing then in the page where they are found with a dedicated player control to make it easier for screenreader users – just play and stop, but that’s usually just what you need. I’ve now added ability to download and/or open the content of these VIDEO and AUDIO HTML5 elements directly in your default media player: the user just has to hit the Open button in the media player, and it will be opened in whatever is the default media handler is for your system. Note that this doesn’t work for embedded data URI elements! There are also new shortcut keys for the media player: Ctrl+P to play, Ctrl+O to open, and Space to stop.

Refresh in WebbIE re-parses the page, effectively, but doesn’t go and get the page anew. You can now press Shift and Control and R to perform a “proper” page refresh, reloading it from the server.

You can now open saved MHT files from File > Open, and I’ve added a TeamViewer download link to the Help menu for support purposes.

Finally, WebbIE no longer changes the case of URLs you type into the address bar, so if you are trying to access a web page on a case-sensitive server – like a Unix server – you’ll now be able to reach it.

Update to BBC iPlayer TV 7.3 restores Audio Described category

New BBC iPlayer TV version 7.3. At the beginning of November 2014 the BBC removed various data feeds from their website, including the one that gave the list of TV programmes available through BBC iPlayer with Audio Description. This meant that all the categories in the WebbIE BBC iPlayer TV programme broke overnight.

There’s no sign of the BBC restoring them, so I’ve removed all the categories in BBC iPlayer TV except for Audio Described. For Audio Described, since it’s so popular, I’ve hacked some code to pull the available programmes: it takes a little while to load, and you don’t get as much detail, but it works.

Other minor changes: I’ve added a Flash item to the Help menu that links straight to the Adobe site so it’s easier test/install Flash: Flash is the number 1 problem for users in using iPlayer TV. I’ve also added a TeamViewer menu item for easy technical support, simplified the UI for screenreader users tabbing around, and fixed turning off the voice that announces what is going on.

WebbIE 4.3 – some HTML5 fun

New WebbIE 4 – more support for HTML5 and WAI-ARIA

WebbIE 4.3 has some cool new features based on the latest HTML5 and WAI-ARIA technology.

HTML5 is the latest update to how web pages work. It has a number of things that are helpful for screenreader users:

  • A web page can have a MAIN element. This is good for the Crop function in WebbIE, which will use this to help decide what to crop and what not.
  • Forms have a bit more definition, so email input boxes, sliders and progress bars have appeared. This is good for WebbIE because when you try to set one of these inputs you can get a special custom experience that works with your screenreader. For email address inputs, WebbIE will check that you have typed a correct email address and explain what is wrong. This is useful since it can be hard to correctly type and then fix email addresses with a screenreader, letter by letter. For sliders, WebbIE puts up a pop-up window containing a standard slider with the values all correctly set so your screenreader should recognise and operate it perfectly. WebbIE also presents progress bars sensibly in the text view.
  • WebbIE 4 has always supported the AUDIO and VIDEO elements, so you can play and control music and video in web pages easily.

WAI-ARIA is a mechanism to help screenreader users use complex web pages like Facebook. Facebook uses special WAI-ARIA code to label parts of its page with information – the small flags and images that mouse users can click on.

  • WebbIE supports the aria-label and aria-labelledby attributes, so more elements on a web page will have correct names and text – fewer “link: config.php” type entries.

Of course, this all pre-supposes that web pages use these elements correctly – which as we know is often not the case. Still, where a website has taken the effort, WebbIE will support these features and produce a better experience.

There are other HTML5 elements, but I’ve decided to add support to WebbIE as and when these elements are supported in Internet Explorer. That way WebbIE will be more reliable and perform better. This will be a problem for Windows XP users, who can’t update Internet Explorer past version 8, but I’m afraid that I have to advance WebbIE to keep it relevant so they will have to stay on WebbIE 3 or find that some features do not work as advertised. I’ll always keep WebbIE 3 around, just like I still do WebbIE for Windows ’98 – I just won’t support it any more.

Finally, there are many performance improvements.

  • WebbIE loads much, much faster.
  • Lots of bugfixes: also, WebbIE will no longer report any problems but will soldier on as best it can.
  • Improved support for the HTML “LABEL” element, so more form elements (e.g. input boxes) will have meaningful labels in the text and useful prompts when you try to use them.
  • WebbIE now supports “localhost” as a URL.
  • WebbIE once again defaults to showing the Internet Explorer homepage. People generally expect web browsers to go to a home page on the Internet: loading your Favourites might well be a better mechanism – and it is still there – but it took people by surprise and caused confusion. This only applies to new WebbIE installations: people running WebbIE 4 already will have to change their settings to suit.

Do try out the latest WebbIE and let me know what you think.

Switch to WebbIE 4

I’ve had various reports of problems with users of Windows XP with ASDL modems that WebbIE 3 doesn’t start up. Also, Google search is broken. I’ve seized the opportunity to tell people who’ve mailed me to use the new WebbIE 4 instead, and that’s confirmed to me (after a bit of bugfixing) that it’s working and pretty much there.

I’ve therefore decided to push ahead with the official release of WebbIE 4, and with it the other new .Net-version programs – PDF Reader, BBC iPlayer Radio, and BBC Live Radio. I’ve removed all of these from the WebbIE MSI installer file that used to contain every program. I’ll continue to distribute this so the people can get the remaining programs, until I either convert then to .Net or build separate installers.

The front page of WebbIE therefore lists separate installers for the new .Net programs – WebbIE, PDF Reader, BBC iPlayer Radio and BBC Live Radio – and links to the updated MSI that still contains Podcatcher, Clock, Calendar, and RSS News Reader. I’ve also left the old WebbIE 3 installer still on the page.

A reminder of the advantages of the new .Net programs:

  • Per-user installation (ClickOnce or MSI) with automatic updates. Not having the latest version is the Number 1 reason for mailing me with a support query.
  • Working modern code that will keep working for another eleven years.
  • Better support for screenreaders through MSAA/UIA support.

It’s a bit of a journey, but I think it’s the right direction! Thank to everyone for feedback.

New WebbIE Development

Over the last two years I have been working to move the WebbIE programs from the old programming language they have been written in (Visual Basic 6) to the newer .Net. Users of NVDA and Thunder will find that the programs are easier to use and controls are better-labelled. The software will run more smoothly and reliably on modern machines, and be easier for me to manage.

This means that there are now new Beta versions of the new WebbIE 4 Web Browser and the BBC Live Radio program, which you download from here:

This is a significant change: for geeks think “Netscape to Firefox”. I’ve recoded pretty much all of it, which means many features have disappeared – unused ones, I hope – and some new ones have appeared, such as the start of support for accessibility features in HTML5. I’ll keep the old WebbIE installers and code around for anyone who wants them, but new .Net versions of everything will eventually be created.

I have also chosen to change how WebbIE is distributed. Instead of one single installer file, from which you can install whichever program you want, I am moving to different installers for each program. The main benefit of this is that this allows me to use a different installation system that will automatically update everyone when there is a new version: this will be a great help (especially for the BBC iPlayer programs.)

I will also be dropping some of the WebbIE programs, those which I think are least used. My plan is to drop:

  • Disk Explorer
  • Google Podcast and RSS Search
  • Gutenberg
  • I.E. Appearance Editor
  • Web Directory

This will eventually leave us with:

  • WebbIE web browser
  • The BBC programs
  • R.S.S. News Reader
  • PDF Reader
  • Clock
  • Calendar
  • Podcatcher
  • Radio Tuner

However, this depends on my doing a lot of work, so it might end up that more of the programs disappear, or are never updated. Which is fine if the old versions keep work: I’ll just split them out as separate installers for anyone who needs them.

So, please do try out the new Beta of WebbIE 4 and let me know of any problems or comments. Next time, details of what’s new in WebbIE 4.