Windows 8 browsers: the only Metro apps to get desktop power
27th Mar 2012 | 10:42
What can (and can't) Metro browsers do in Windows 8?
Windows 8 Metro browsers
Internet Explorer 10 on Windows 8 comes in both a desktop version, in which you can run all the plugins and accelerators you want, and a touch-optimised, full-screen, plugin-free Metro version.
Mozilla and Google recently announced they're working on Metro versions of Firefox and Chrome for Windows 8, which are not just Metro-style apps.
They're what Microsoft calls "Metro style enabled desktop browsers".
Metro-style applications on Windows 8 use the WinRT framework, not the familiar Win32 APIs (apart from a small number of system calls); that means they can run on both x86/64 PCs and on Windows on ARM (WOA) tablets that don't have x86 instructions, without any changes in the code.
Hands on: Windows 8 review
50 Windows 8 tips, tricks and secrets
Windows 8 on ARM: Steven Sinofsky speaks
Windows 8 tablets: what you need to know
All our Windows 8 content
They run in a security 'sandbox' called the App Container that isolates them from other Metro apps and from the operating system (so one Metro app can't call code distributed separately, like a plug-in), and they're distributed as .appx files that have to come through the Windows store.
You could write a Metro-style browsers, although you'd have to write all the code from scratch and it's not clear whether WinRT would include all the functionality you'd need. But what Microsoft, Google, Mozilla and maybe Opera are doing is to create a hybrid Metro/desktop app; something only browsers seem to be able to do. And as far as we can tell, they can only do it for x86/64 PCs – not for WOA.
Windows 8 Metro/desktop browsers: who's making them?
Mozilla and Google have announced they're working on version of Firefox and Chrome. And Opera's communications manager Zara Lauder told TechRadar "We are currently looking into Windows 8. The new OS and the Metro UI offers an interesting new platform for end users, and we know users will want to run the Opera browser on it."
Windows 8 Metro browsers: what's different?
According to Microsoft, a Metro style enabled desktop browser gets "full access to Win32 APIs for rendering HTML5, including the ability to use multiple background processes, JIT compiling, and other distinctly browser-related functionality (like background downloading of files)."
Basically, the Metro browser gets to use the same code as the desktop browser; other Metro apps don't get that. No other Metro apps can run in the background (except for a few specific things like playing music); they get a few seconds to tidy up and then stop running as soon as they're not in the foreground. A Metro browser can keep downloading and uploading files even when you switch away from it.
These hybrid Metro/desktop browsers don't have to come from the Microsoft Store like other Metro apps; you can download them from the Web and install them like any desktop app.
They can use the Play To contract to play media files on DLNA-connected devices and they can use your SkyDrive account to store favourites, the last 50 URLs you type in, the last 1,000 sites in your history and other settings that would be useful to have in your browser on your other PCs (like the passwords and open tabs Firefox already syncs to other devices).
You can only use one Metro-enabled browser at once; whichever one you set as the default browser. The Microsoft documentation talks about "preserving the Metro style user experience" which we interpret as keeping things simple and not confusing users by throwing up a 'which browser do you want' dialog when you open Web pages or giving you multiple browser icons to tap in Search.
Clicking the Start screen tile for a Metro-enabled browser that's not the default will open the desktop version of the browser.
You can't set which Metro browser a specific site will open in when you click a link. But at least on x86 PCs you can always choose to go to the desktop and open multiple browsers in the usual way.
And if you pin a site to the Start screen as a secondary tile from a Metro-enabled browser and then make something else the default browser, when you click the tile that Web site will open in the desktop version of the browser you pinned it from. So if you're happy with IE for most sites but you want a second browser for specific sites, you can now make that happen fairly easily.
Windows 8 Metro browsers: can they use plugins?
Maybe. IE10 doesn't let you use plugins like Flash in the Metro version, or accelerators and bookmarklets, although they all work in desktop IE10. That's to make tabs open faster and improve battery life security, reliability, and privacy.
A pure Metro browser couldn't support plugins because you couldn't install them in the browser and it couldn't reach out of the sandbox to call them. But Metro-enabled browsers aren't quite as constrained by the AppContainer sandbox.
The way IE works (in Metro and desktop) is to run a medium integrity process for the browser frame; the tabs that Web pages load in are each in their own sandbox (even in the desktop browser, tabs that used to be running at low integrity with fewer permissions are now at the AppContainer level). Metro browsers can call apps to handle file links (like desktop PDF viewers).
It's not clear whether other browser makers could use these possibilities to support plugins like Flash. Mozilla's Brian Bondy says "It's too early in development to know for sure. There may be some technical restrictions and we haven't decided one way or the other if we really want it."
Google has the code for Flash, which it already builds into Chrome but today this runs as a separate process that just gets installed with Chrome, which could also fall foul of the sandbox issue.
Will WOA have other browsers?
You can't run any third-party code on the WOA desktop, Windows chief Steven Sinofsky told TechRadar; just the Office apps that comes with WOA and the apps and tools that are "intrinsic to Windows" – which includes Internet Explorer.
That means no third-party desktop browsers on ARM PCs, and without a desktop browser to build on, you can't have a hybrid Metro/desktop browser. Anyone wanting to create another browser for WOA will have to write it completely in WinRT (and that definitely means no plugins).
Why is it only browsers that get this option?
Browsers (along with Adobe Reader) are the only apps that have adopted the low integrity level introduced in Vista. Low integrity apps can only save files to few folders in the user profile (like cookies, favourites and temporary files).
They can't create startup files, modify your documents, change configuration settings or registry keys or control other running apps – which makes it much harder to use them to get malware onto a PC. That makes using their code in Metro much less of a risk than other apps.
And of course, Microsoft doesn't necessarily have a choice. At least in Europe, Microsoft has to allow other browsers to run on Windows or get fined for excluding them, so it has to give browser makers the same option to have a hybrid browser that the IE team has.
Only allowing desktop browsers and not Metro browsers on Windows 8 would look pretty anti-competitive. Assuming it isn't possible to use plug-ins in any Metro browser, all browsers will need to let you switch straight to a desktop browser for pages that won't work without plugins.
There aren't any other applications built into Windows that work in both Metro and desktop, so there's no pressure for Microsoft to allow this for other apps.
So why is it so unlikely that we'll see third-party browsers on WOA? Even if Microsoft did get complaints from regulators, it would be pretty easy to say that Windows doesn't have a monopoly in the ARM tablet market – and to point out that the market leading iPad doesn't allow third-party browsers either.
The desktop IE process is the same; a medium integrity process with the tabs for Web pages running at the AppContainer sandbox level.