Skip navigation.

exploreopera

| Help

Sign up | Help

Posts tagged with "browsers"

Congrats to Safari on Acid 3

, , , ...

Many congratulations to the WebKit team on the first public release of Safari that passes Acid3 - the first browser to do so! :hat:

This is on the same day that Opera announce reaching 100/100 on the Javascript part of Acid3. Congratulations all round!

The Acid tests are great for bragging rights, but it's important to remember that they test only a tiny fraction of the web technology browsers and developers use. Jeff Schiller points out that while Acid3 has some SMIL tests, the Acid3-passing Safari only passes 5 out 116 SVG animation tests. In other words, SVG animation is still probably unusable in Safari.

Opera doesn't pass Acid1, but that hasn't stopped it from passing Acid2, almost passing Acid3, and being a great all-round browser. The current release of Firefox doesn't even pass Acid2, but that doesn't seem to be causing them any problems.

Ian Hickson has expressed surprise that Acid3 was conquered so soon. It make me feel that perhaps Acid3 spent too much time testing little-used corner cases, that while important, aren't the sort of things web developers are really looking for.

The Acid tests provide a nice, high-profile publicity point for browser developers. They're a quick "media bite" for journalists and those not too familiar with web technology. However, I'm not so sure they progress web standards support that much.

I think I'd much rather see more effort put into developing comprehensive test suites for the various standards. Microsoft recently submitted a CSS2 test suite to the W3C. That type of thing seems to me to be a more productive use of developer's time.

I'm hoping the next Acid test (they'll just keep on coming!) will include features that web developers are wanting to use now. That's not saying the existing Acid tests don't already do that, but I'm thinking of things like rounded corners and multi-column support. I know that the specs for those aren't even done yet - that's why they need to be accelerated and tested. A high-profile test that encourages implementation of useful things, but is still capable of being changed in response to developer experience is what's needed IMHO. I don't think we should be waiting for specs to finalize in their own time. Judicious implementation and testing should be able to force things along faster.

Acid3 is still so new it squeaks, but I'm already looking forward to Acid4! :devil:

Microsofts Compatibility Problem

, , ,

So, the Microsoft team are busy working away on version 8, and they're finding all sorts of web sites are breaking.

Welcome to the world of web development, Microsoft! It's what everybody else has to deal with!

Make no mistake, this is a real problem for Microsoft. They have to support legacy web sites. Often such sites are unmaintained intranet sites that would need to be totally rebuilt to support a new standards-compliant browser.

In their quest for a solution, Microsoft decided to get some outside advice, and the best they could find was a browser-specific meta tag.

:yuck:

I've already left my take on the problem, but I'll repeat it here:

The problem is fundamentally a Microsoft problem. It's a problem where sites have not developed a "web site", but have instead developed an "Internet Explorer site". This is not a problem to be solved by standardizing a new tag for all browsers. It's a problem to be solved by Microsoft and Internet Explorer.

The best solution to handling "Internet Explorer sites" is to have a dedicated "Internet Explorer browser". In practice, that would have to be a standalone copy of Internet Explorer 6. Maybe version 7, but there's already plenty of grumblings from places who have blocked updates to IE7 because it breaks their IE6 sites.

It's already possible to have a "nearly standalone" copy of IE6. Some details such as conditional comments don't work properly, and maybe some other things too, but it's hard to see it being a massive task for Microsoft to sort those out and end up with a truely standalone version of IE6 to be used for those legacy sites.

That would 100% solve Microsoft's compatibility problems and free up their IE development team to concentrate on bug fixes and new standards-based features.

Note that Microsoft's existing VM-based browsers don't solve the problem, as their customers will certainly want to set up icons to launch their legacy sites in the old browser, and I don't see how that could be done with a VM.

Faking server-sent events in IE?

, , ,

IE ActiveX(”htmlfile”) Transport, Part II describes a way to stream data to IE. My first thought was: "would that make it possible to fake the server-sent events API in IE?"

I don't have the time right now to investigate further, so this post is part reminder to me for later, and part invitation to the lazyweb. :D

WebKit for Windows

, , , ...

WebKit, the browser rendering engine derived from KHTML by Apple and until now only available to Mac OS X users in Safari, is now available as an alpha download from [url]http://www.getwebkit.org/.

This new browser is called Swift. It's extremely new, crashes regularly, and still has quite a bit of missing functionality

You must have Windows Installer 3.1 or later (which you will have if you've been keeping your Windows up-to-date via Microsoft Updates), and you'll probably need vcredist_x86.exe too. If you get registration or DLL related errors installing, that means you!

Until now, the only way most web developers could test their sites with WebKit was via screen-capture web sites, or web sites that sold VNC time on an actual Mac computer (VNC allowing remote access to that computer). Illegal options included installing OS X on PearPC, or 'finding' yourself a copy of the x86 OS X.

Hopefully, in a few months Swift will become a very usable extra test tool for web developers. The last big hole in Windows web developers test suite is now filled! :hat:

Opera 10 Wish List

, ,

Daniel Goldman blogged for us to all say What would you like to see in the next Opera desktop browser?. This really isn't something to shove into a little blog comment - it deserves an entry all of its own!

CSS
  • border-radius : Rounded corners are something people want now, and they're using ugly hacks with images to do it. The sooner more browsers support this property, the better.
  • text-shadow : So cool! Just do it! Seriously, a little shadow goes a long way to making things look special. (Added in 9.50)
  • rgba/hsl/hsla : RGB is for computers, HSL is for people! HSL would make it so much easier to create colour-coordinated designs. Alpha support is needed for the same reason opacity support was needed. IMO, opacity is being pressed into use where alpha colours would make more sense. (hsl added in 9.50)
  • overflow-x/y : Mostly because IE and Firefox already support it. (Added in 9.50)


M2 (Opera Mail)
  • HTML composition - No, not something I particularly want, but it is an expected feature. This was waiting for Opera to support contentEditable/designMode type of functionality, which didn't exist until version 9. Now that that support has been added, putting in HTML emails shouldn't be a drama.
  • Delete attachments.
  • Read newsfeeds in a panel.
  • PGP/GPG encryption.
  • Better newsgroup support, eg multipart binary decoding.
  • Threading needs a lot of improvement. Threads in my various emails and newsgroups always seem to be fragmenting all over the place!


Other
  • Roaming profile - I'm sure Opera will eventually make this a my.opera service.
  • Download manager - The ability to open more than one pipe to the same download, plus the ability to limit the bandwidth used by all the downloads.
  • Able to download only some files in a torrent.
  • DOM Inspector and JS debugger - there's already hints of a forthcoming JS debugger in opera:config, so that's good. They should each be available as panels too. (Dragonfly - Added in 9.50)
  • SVG-as-image support - the ability to use SVGs where ever GIFs, PNGs and JPGs can currently be used, i.e. in img elements, CSS, etc. (Added in 9.50)
  • MathML - I know there's some userJS to emulate support, but nothing beats native support! (Added in 9.50)
  • XBEL bookmark support
  • Form filling could stand some improvement. Opera needs to keep track of field name -> field values, and keep all entered field values in a special entered values history.
  • Default to native skin. I'm not a big fan of skins. Skinned apps never "fit in" with any other app and after a while just start looking untidy.
  • Default to having a "Go" button. It would be one of the first things I'd remove, but it's an expected part of browser UI for new people. It should also be prettied up with a green triangle icon or similar.
  • Chrome buttons with drop-down menus MUST have those little triangles that indicate the presence of those menus. On the current default web page navigation toolbar, the rewind, back, forward, and fast forward buttons are all missing those little triangles. Have little-trangle-less buttons available as a customization, but the default UI MUST HAVE THOSE TRIANGLES! :mad: (Added 11 July 2006)


Not Wanted
  • Extensions
  • Update manager - I'm not convinced. Even on dialup, Opera's 4MB installer should take about 15min to download. Grab a coffee or something! :coffee: (Retracted)


I'll come back and update this entry as I think of things...

Opera 9! Woot!

,

Two posts in one day :eyes: - and what a good reason!!! :hat:

With the release of version 9 of their browser, Opera Software have made as comparable a web technology leap from version 8, as they did from version 6 to 7.

Version 9 adds support for XSLT, XPath, Canvas (and started some Opera-specific 2d game canvas support), Audio, Web Forms 2, a lot of SVG Basic, full DOM2 support (to go with their full DOM1 and partial DOM3 support), NTLM, some CSS3 selectors, opacity, the new Netscape Plugin API, OCSP, contentEditable and designMode.

They've also fixed some long-standing bugs related to iframe z-index support, allowed fullscreen mode to fallback to screen media styles when no projection media styles are available, and fixed a printing bug where the screen media background colour would be printed.

Then there's the new opera:config, content blocking, site-specific preferences, widgets, BitTorrent, tab preview tooltips, custom searches, and SSL/TLS engine (security).

Oh yes, and Opera 9 is the first browser to get the Acid2 test completely correct! Correction: Homer: Doh! As mentioned by Kelson, Opera is the fourth browser to get it right, after Safari 2.0.2 (31-October-2005), iCab 3 (December-2005), and Konqueror 3.5.2 (28-March-2006). I'll rephrase it: Opera is the first Windows browser to get it right. ( :left: Did I get that right? :right: )


There's so many new features and bug fixes I've no doubt missed some!

It's pretty safe to say that Opera now has the best DOM implementation of any browser. It can also be argued that Opera has the best CSS support of any browser.

It's not perfect. There are a few regressions (one breaks the menus on my web site) and I'm sure the new features will have bugs, as all new features do. However, the benefits of the new features and the bugs that have been fixed far outweigh the drawbacks of having to put up with some new glitches.

The next web technology features I'd like to see supported are: overflow-x/overflow-y (mostly because IE and Firefox already support them), rgba/hsl/hsla colours, and complete CSS3 selectors. The new custom search function needs to be enhanced to support OpenSearch the same way Microsoft is making IE7 work.

It's very obvious from this release that Opera have devoted a huge amount of resources at building up the browser side of things. To those people who have whinged about Opera's integrated mail/news, IRC, BitTorrent, etc detracting from browser development - you have been proven wrong.

In fact, I believe it's time for Opera to give some love to the non-browser parts of Opera, their mail/news client in particular. Since the release of version 7 in Janurary 2003, it feels like only IMAP and newsfeed support has been added. I know that underneath Opera have made regular changes to the mail/news storage system in order to improve the reliability. Personally, I've had emails not turn up in searches, and contacts who have their emails mixed up with other contacts, etc.

These reliability issues really need to get sorted. Maybe the version 9 storage changes will have done that. I haven't been brave enough to trust my valuable emails to beta software, but now that version 9 has gone final, I'll be upgrading.

Probably the most requested addition to the mail client is rich text editing. I know there are people who hate the idea, and I'm not a big fan myself, but I strongly believe that it is inevitable. Sooner, rather than later. PGP/GPG support would be high on my list too.

Roll on version 10! :devil:

Head-smacking sniffing stupidity

, , ,

I'm feeling a bit like Hallvord right now :rolleyes:

While doing some web site troubleshooting, I bumped into the following code at Olive Software:
var Mac  =  (navigator.userAgent.indexOf("mac")!=-1)  || (navigator.userAgent.indexOf("Mac")!=-1);
var opnew = (navigator.userAgent.indexOf('Opera 7')!=-1);
var opold = (navigator.userAgent.indexOf('Opera')!=-1);
var msie  =  (navigator.userAgent.indexOf('MSIE')!=-1);
var moz  =  (navigator.userAgent.indexOf('Gecko')!=-1);
var NS6  =  (navigator.userAgent.indexOf('Netscape')!=-1 && navigator.userAgent.indexOf('Gecko')!=-1);
var Nav4  = (document.layers);
var konq = (navigator.userAgent.indexOf('Konqueror')!=-1);
if (opold && msie || opold){var opold=1; msie=0;}
if (msie && !opold){msie=1;}
if(opnew && opold){opold=0;}
if(msie || moz || opnew){var dom = 1;}

Whoever coded that was obviously having a really bad day. Maybe their cat had died, but it must have been something seriously distracting.

I mean, translate their "opnew" into English: "It's a new version of the Opera browser if it's version 7 and identifying itself as IE or Mozilla". That's right, any later versions (like 8 or 9) are old versions, and even version 7 identifying as itself is old!

And people wonder why Opera appears to have a hard time handling web sites?

CSS Hacking

, , ,

With Opera 9 expected to be released soon, probably at the 20-June Seattle do Opera are putting on, I've been forced to make a decision regarding the way it's totally broken my website's CSS drop-down menus.

It's obviously a rendering bug - the menus are way out of position, and it leaves bits behind. I tried poking at the CSS with extra padding, margin, and borders, but nothing worked.

As it's a regression, and the current code works in every other browser I've been able to test with (IE 5-6, Opera 7-8, Mozilla/Firefox, Safari/Konqueror), I've made the decision to sniff out Opera 9 and block the drop-downs. I'm certain Opera Software will figure things out eventually. Sadly this is a recent regression, the early v9 previews had no such problems. In any case, my site is quite navigable without the menus.

This is the first time I've been forced to sniff out a browser for CSS (not counting Dean Edward's IE7 script I'm using). It took less time to implement it than it has to write this blog entry because I'd already written the tool for the job - my User Agent CSS script. The complete contents of my new hacks.css file:
ul.menu li.submenu ul {
  -uacss-opera_eq_9_00-display: none;
}
My script processes that so that only Opera 9.00 gets "display:none", all other browsers get nothing, so it's "business as usual" for them.

Sometime I might look at the "IE hacks" CSS file I have and see what can be put into this new general hacks file. Hopefully everything. Then I'll have all my hacks in one spot.

Firefox and Win 9x

, ,

As lots of people have no doubt heard, the Mozilla folks are dropping pre-Win NT5 support from Firefox 3. That's still at least a year (or two) away, so not an immediate problem. Actually, it's not Firefox exactly, but their underlying Cairo graphics library.

I do find it quite interesting from a cross-platform point of view. After all, Firefox and therefore Cario are cross-platform, and cross-platform software must have as few platform dependent functions as possible. Yet the dropping of pre-Win NT5 platforms would indicate they do have some platform-dependent code in there - specifically, that they are relying on functionality found in every platform except pre-Win NT5.

Cario can't be relying on functionality found only in NT5, otherwise the other platforms they support (MacOS X, X-Windows) wouldn't work. Given the wide variety of backends Cario supports, I would have thought they'd have software fallbacks for everything and not be reliant on functionality in a specific platform. Cario supports drawing to a bitmap. Win 9x has no problems drawing bitmaps. Where's the problem?

However, I'm writing this from a position of ignorance - I know nothing about the internals of Firefox or Cario, so obviously things are more complicated than I'm making them out to be!

Browser Extensions

, ,

Lots of people would like to see Opera get an extensions facility similar to that available for Firefox. This would almost certainly be a bad move. Software extensions are very difficult to get right.

Windows is often derided for being unstable. Actually, Windows is extremely stable, most of the time it's all the third-party device drivers and DLLs (aka, operating system extensions) causing the problems.

Firefox is the same. If there are any stability issues, the finger is usually pointed in the direction of extensions. Extensions have been known to leak memory, lock up the browser, cause UI glitches, and in rare cases, loss of data.

Firefox and Windows both share the same problem of allowing third-party software deep access into their internals. That provides a lot of power, but also requires a lot of responsibility on all sides. While I'm sure the QA systems in place for Firefox and Windows are very good, the same cannot be said for third-party software.

The problem for Firefox, is that there is no QA in place for their extensions. Instead, they are reliant on the exension developers to provide QA, and while those developers will at least test their extension in isolation, they almost certainly are not going to be making much effort testing their extension in combination with many others.

The other things Firefox and Windows share is that they effectively require extensions for decent operation. Yes, either can be used without their extensions, but the experience is very ordinary to say the least.

So, to summarize all this, Firefox effectively requires an extension system that is inherently bad for overall stability. I do not want that for Opera.

What about Opera's new widgets? They aren't anything like extensions, more like floating chrome-less web pages. In terms of system stability, they're no worse than plain web surfing.

What I would like to see is some way that widget-like items could be incorporated into the Opera browser UI. Something similar to the way custom buttons can be dragged off a web page and onto the browser chrome. They would, of course, need to be button-sized, but to be useful they'd also need to have access to the browser UI facilities. Something simple like being able to be notified when the user opens/closes tabs, or when a page URL changes (to allow things like a PageRank display to update), and to have access to the DOM of those pages.

Like all extension-type things, security would be the major concern, but nothing that can't be worked out. It doesn't need to be fancy or as powerful as a full-blown extension system, nor should it, in my opinion. Just something simple, and just a little more powerful than what is currently available.
July 2008
SMTWTFS
June 2008August 2008
12345
6789101112
13141516171819
20212223242526
2728293031