Display and Scripting
Rendering Engine
Fixed numerous stability issues
Plugged numerous memory leaks
Plethora of performance improvements throughout
Added support for the CSS3 overflow-x and overflow-y properties (demo)
Added support for the CSS3 text-shadow property (demo)
Added support for the CSS3 Selectors (demo)
Added support for the CSS3 outline-offset property (demos)
Added support for the CSS3 background-size property (only accessible via the custom -o-background-size property)
Added support for the CSS3 currentColor color keyword
Added support for the CSS2.1 white-space: pre-line value
Added support for the :-o-prefocus pseudo-class, which allows styling of form elements reached via spatial navigation
Added support for the custom -o-language-string(n) property for use in User and Internal Stylesheets to allow localized strings in stylesheets
Added support for the custom -o-table-baseline property, used to determine which row of an inline-table will be used as the baseline of the table. The property accepts either an integer or inherit value, where the integer refers to the table row to use as the table's baseline. -1 refers to the last row of the table and -n refers to the nth row from the bottom. If the integer value is 0, the bottom margin edge of the table will be treated as the table's baseline. The initial value is 1. This property only applies to inline-tables
Added support for the label attribute of option elements
Greatly improved table layout algorithm
Major improvements to the shrink-wrapping algorithm
Greatly improved support for the CSS outline property
Support the min-width and max-width properties for elements styled with display: table-cell (such as td and th elements)
Improved the handling of vertical alignment changes for form elements
No longer use font-variant: small-caps for acronym elements
Disallow use of percentage width values for the border-width property
Removed support for class selectors starting with a digit in Quirks mode
rowspan=0 is now also supported in Quirks mode
Fixed problem where the :lang() selector did not correctly match the full string
Improved support for @import, @media, @namespace, and @page at-rules
Fixed problem where the background-attachment property did not apply in ::first-line contexts
Fixed error handling of nobr tag
Fixed problem preventing elements with height: inherit from inheriting the computed value of height
Support the color attribute for hr elements
Fixed layout problems on TV.com caused by using <li">
Updated tabindex attribute handling: any element with a tabindex that is a positive number should be reachable by tabbing. Elements with a negative tabindex should never be reachable by tabbing
Fixed problem with the scrollbar at BlogLines.com
Give multi-select elements a reasonable default size
Fixed problem with large decimal em values being rounded to nearest integer (demo)
Support overflow in inline-table and inline-block elements, which fixes unclickable links and truncated content on Dell.com
Fixed problem where certain MHTML files displayed blank until resizing the page
Fixed redraw problem when reducing the width of td elements via DOM
Support for the display: table-column and table-column-group values on elements other than col and colgroup
Fix rounding error when calculating percentage font-sizes
Fixed problem where links in floated elements were not clickable, which caused problems with WordPress web sites
Fixed problem with using percentage height on blocks inside table cells
Resolved issue where linebreaks were shown in the title of XML documents
Allow changing the background of input type=image elements
Fixed incorrect use of padding on table elements when setting the border-spacing property and using the separated-border model
Fixed problems with negative margins on caption elements causing the captions to display far, far to the right, as seen at Wachovia.com
Inherit frameset encoding into frame documents, using the same restrictions as used for inline frames
Add HTML5 entity ™ as an alias to ™
Media queries are now dynamic, allowing them to update when the window size is changed not just when the page loads
Fixed problems displaying full-screen YouTube videos
Fixed problems focusing the message composition area on Gmail
Store the original strings in HTML attributes for use by CSS selectors and DOM
JavaScript/DOM
Rewritten ECMAscript engine, which is more flexible and uses less memory
Added support for JavaScript 1.5 Getters and Setters
Added support for the DOM 3 Core Node.isSameNode method
Added support for the DOM 3 Core Text.wholeText attribute and Text.replaceWholeText method
Added support for the DOM 3 Core Node.compareDocumentPosition method (used by Google Pages)
Added support for the Microsoft XML DOM Node.selectNodes and Node.selectSingleNode methods
Added support for the Gecko DOM Range.comparePoint method (used by Google Pages)
Added support for the HTML5 {Document,Element}.getElementsByClassName method
Added support for the HTML5 Navigator.onLine attribute and the Window.{online,offline} events
Added support for the HTML5 Canvas.getImageData and Canvas.putImageData methods, including support for creating an ImageData object using the ImageData interface
Added support for the HTML5 Canvas.transform, Canvas.setTransform, and Canvas.isPointInPath methods
Added support for the HTML5 Element.tabindex attribute and the Element.{blur,focus} methods
Added support for the Microsoft XMLDocument class used for all XML documents (except SVG and XHTML) for cross-browser consistency. The DOM 3 Load and Save Document.async attribute and Document.load method will no longer work in the Document class
Added support for the document.moveFocus{left,right,up,down} methods for directing spatial navigation via JavaScript
Added support for the start and stop methods of marquee elements
Insert em tag instead of i tag when using italic execCommand parameter
Fixed problems changing the font size of textarea elements via DOM
Fixed problem that caused non-breaking spaces to be inserted in textarea elements as seen at Gmail
Corrected name of LSLoadEvent.input attribute (was LSLoadEvent.filter)
Fixed various bugs where mouse events had built-in effects before script event processing was finished (cancelled mousedown should not move focus, blur/focus events caused by mousedown event should be processed after rather than before the mousedown event causing them, and so on)
Stopped showing text nodes in script and style elements when using the Document.all collection
Trigger an onload event for images set to display:none
Fixed canvas locking in the 2dgame context to allow updating when the canvas is locked and fixed the update function to actually work
Disabled Document.length, as it caused problems in the Apple.com CoverFlow demo
Remove the text attribute from the HTMLSelectElement collection
Date.getYear() now returns full year when the year is > 1999 or < 1900 for cross-browser compatibility (despite breaking the JS spec.)
Removed IE-compatibility where Document.getElementById treated name and id attributes the same, which caused problems with jQuery
No longer share events between the Window and Document objects
Fixed problem where the Date method with an out of range day parameter became the current date and other cross-browser consistency issues
No longer create multiple text nodes when there's more than 32KB of data in the text node
Fixed problem changing the type attribute of button elements
Fixed problem where setting the scrollTop attribute for textarea elements didn't scroll the textarea contents
Several fixes to Document.activeElement to make it work more consistently
Give xml tags within HTML documents a documentElement attribute
XMLHttpRequest now resolves URLs according to the HTML base element
Event.keyCode will now return keyboard codes for punctuation keys in addition to alphanumeric keys, which fixes issues with keyboard navigation at Gmail
Fixed problem displaying maps on theaa.com caused by scrollTop working on both the html and body element simultaneously
Document.body.{clientHeight,clientWidth} and Document.documentElement.{clientHeight,clientWidth} now return the correct values in Strict mode, which fixes issues with Novell GroupWise
Made event capturing more cross-browser compatible: No longer capture load events if listener is attached to the window and fire capturing events at target; attach listeners to the document object if you need to capture load events from within the document
No longer lose the value of an input element created via DOM when changing the type attribute, which caused problems when editing del.icio.us bookmarks
References to undefined variables as a single statement will now correctly throw an error
SVG
Added partial SVG Tiny 1.2 support
Added support for using SVGs in img elements and the CSS background-image and list-style-image properties
Added external reference support for SVGs
Rich Text Input
Use line/paragraph breaking in rich text editor: Enter should insert block-break (new paragraph) and Shift+Enter should insert line-break (br element)
Improved handling of inserted and removed elements
Other
Fixed numerous inconsistencies and specification violations in the SVG, DOM, WML, Web Forms 2.0, XPath, and XSLT implementations
Added support for UAX #14 Line Breaking Properties and UAX #29 Text Boundaries annexes
XSLT document() function will no longer cause an XSLT processing error if it is not called
Enabled RTL support in text inputs (including Opera Mail) and form elements
Fixed problem where the HttpURLConnection Java object did not support getHeaderField and getHeaderFieldKey
Allow installation of certificates that generate warnings
Always obey server-set Expiry header
User Interface
Bookmarks, Personal bar, and Speed Dial data can be synchronized via my.opera.com; access via the File > Synchronize with My Opera menu option; the most recent Speed Dial data will always be used when synchronizing
Redesigned Address bar drop-down displayed when entering text in the Address bar:
Includes excerpts from previously visited pages
Improved visual design
Orders entries by popularity
Local file auto-completion
Re-enabled Status bar by default and moved some UI elements from View bar to Status bar
Removed View bar
Simplified Download dialog
Closed windows are now also displayed in the Trash can and the Window > Closed menu
"Open with" functionality added to web page context menu and Transfer panel/page
Content blocking improvements:
Added site-specific toggling of content blocking
Fixed problem where opening the Details dialog for a page would cause some blocked paths to change
Double-clicking entries in the Details dialog now edits them
Only show filters that cause content to be blocked on the current page in the Details dialog
CSS and JS files matching blocked patterns are now also shown in the Details dialog
Added ability to save only the active window as a session (File > Sessions > Save This Session > Only save active window)
Redesigned certificate warning dialog
Added Undo for Speed Dial
Added Quick find to the Windows panel
Improved thumbnail rendering quality
Improved use of ellipses throughout user interface
Only display one thumbnail in the tab cycle dialog (Ctrl/Option+Tab)
Disabled dragging links/favicons to arbitrary toolbars (exceptions: Personal bar and opera: buttons); hold Shift or open the Tools > Appearances dialog to enable dragging
Fixed problem where the window resizer only worked in a small percentage of the region that it should
Close the correct tab when attempting to close an inactive tab via the Windows panel
Fixed problem with tabs being upside down when the Page bar is at the bottom
Fixed problem with over-zealous generation of toolbar files
Abort start-up when closing the Start-up dialog
Fixed problem with multi-word bookmark nicknames
Fixed problem where changing the language file closes Preferences
Switch to the locked tab when clicking its locked icon
Wand will no longer block form submits, making it possible to see if login was successful before storing your login credentials
Fixed problem where the Error Console was not cleared after being reopened
Fixed problem removing scrollbar styling once it's deactivated
Spelling check now works in single-line inputs, too
Default to saving as Web archives and remember format selection
Switch to title casing for menu text
Fixed problem dragging notes when no tab was active
Customization
Allow cascading dialog.ini files
Added new delay action for setup files: delay, X where X is milliseconds. It will delay asynchronously the rest of the actions defined in the string until the specified time has expired
Make [Cycler Button Skin] section in skins work correctly
Added .mini toolbar state (used in the Status bar) to make buttons and padding 80% of normal size
Moved several files into the "defaults" profile sub-directory for improved consistency
Accessibility
Major refactoring of keyboard shortcuts
Experimental screen reader support:
Added support for Microsoft Active Accessibility API (MSAA)
Preliminary support for Window-Eyes, JAWS, NVDA, and OS X VoiceOver
Collaborated with GW Micro on improved compatibility with future releases of Window-Eyes
Basic implementation of Accessible Rich Internet Applications (ARIA)
Spatial navigation improvements:
Restore navigated element when moving in history
All keyboard navigation methods (spatial navigation, Ctrl/Cmd+Up/Down, inline find, etc.) should now work based on the same elements, which allows you to use spatial navigation after inline find, etc.
Fixed problem with Tab key navigation finding form elements beyond the current page when navigating history
The scrollbar now touches the edge of the screen when the window is maximized to better adhere to Fitts' Law
Keyboard shortcuts using Ctrl/Cmd+Shift no longer always open in a background tab
Mail/News
Back-ends
Performance improvements, including reduced memory usage, reduced disk accesses, and reduced freezing when checking for new mail/newsfeeds
Improved IMAP reliability, especially when fetching mail with multiple clients
When using "Leave messages on server", POP3 messages are permanently removed from the server when the Trash view is emptied (disable by setting "Permanent delete=0" for the relevant account in accounts.ini)
Connections are no longer initiated before the Start-up dialog is dismissed
Experimental IMAP Keyword support: messages marked as Spam will automatically be marked with the $Spam keyword; existing keywords will generate new filters
Fixed several problems handling multipart messages and message attachments, including messages sent from Apple Mail
Fixed problems updating the list of newsgroups available on a server
Messages in the selected IMAP sent folder will be shown in the Sent view
Fixed problem where mail was never sent if it initially failed to send
User Interface
New, experimental notification system: each message will generate a notification, though one notification per account will appear if more than three messages are received
Refreshed Mail panel, which replaces the status pane with account icons
Pressing F5 will check for new messages in the current view; useful for manually checking for new newsfeeds
Replaced "Save as draft" button in the Compose window with a "Discard draft" button: drafts are auto-saved once text is entered in the message body
IMAP folders are displayed in a hierarchy, as appropriate
The Mail panel now indicates nested filters or mailboxes
Users can now decide how many messages to download when subscribing to a newsgroup
Message thread expansion/collapse is now performed only by clicking the thread triangle in front of the message subject, not when clicking the message subject text
Fixed problems overriding encoding of received messages via the View > Encoding menu
Fixed problem where a filter named "INBOX" could not be edited or deleted
Fixed multiple problems caused by using a master password
Mail passwords are now stored in the Wand password database
Improved selection tracking in message lists (for instance, when toggling threading in a view, scrolling, etc.)
Fixed a couple of issues that could hamper proper threading
Fixed problem where replying always quoted the text/html portion of multipart/alternative messages
Correctly delete subscribed newsfeeds when requested to do so
Added option to filter/search based on message bodies only
Improved spatial navigation of messages
Added Ctrl/Cmd+S shortcut to add attachments to messages
Import
Made Netscape, Eudora, and Opera 5/6 import options available cross-platform
Fixed problem importing mail from Thunderbird
Fixed multiple problems with the Outlook Express importer
Fixed problem sending mail from accounts created by importing mail
Chat
Notifications can be limited to private messages rather than all channel activity (can be enabled in Preferences > Advanced > Notifications)
Miscellaneous
New internal page, opera:historysearch, which searches the content of visited pages
Redesigned Info panel: it now includes the page display mode, download date, META tags, links to stylesheets and JavaScript files, etc.
Cache files no longer use file extensions
Added "Drag to scroll" (disabled by default) which allows scrolling by "grabbing" the page, much like on mobile phones with touch screens
Numerous improvements to mailto link handling
Automatic page refreshing can now be overridden via the "Reload every" context menu item
Fixed problem with pages/bookmarks showing the incorrect favicon
No longer attempt to follow automatic redirects when navigating in history
Improvements to handling of full hard disks
Partial Extended Validation certificate support: no user interface has been added yet
Added support for the httpOnly parameter of the Set-Cookie header
Disable "Allow raising of windows" by default
Fixed problem disabling plug-ins via plugin-ignore.ini
Added support for the BitTorrent peer exchange protocol, which is compatible with libtorrent and µTorrent
Increased network buffer size (opera:config#Performance|NetworkBufferSize) from 32KB to 128KB
Added support for JIS X 0212 in EUC-JP code set 3 and ISO-2022-JP
Added support for JIS-Roman output in ISO-2022-JP
Enabled auto-detection of ISO-2022-JP-1 support
Added zh-SG and zh-MO as known language codes and SG and MO as country codes for selecting Chinese variant
Windows-specific
Associate Opera with .xhtml, .mht, .svg, and .torrent files
Removed option to associate Opera with URL Shortcuts
Auto-scroll icon now appears where clicked instead of centered on the page
Add drop-down shadows on Windows 2000, XP, and Vista if Control Panel > Display > Appearance > Effects > Show shadows under menus is enabled
Better support for the Default program settings dialog in Windows XP and Vista
Dropped support for Winsock 1
Fixed problem where transparent GIFs used as backgrounds would turn black when the page was zoomed