NetSurf 3.0 available
Michael Drake (88) 336 posts |
NetSurf 3.0 has been released. It contains many changes over the 2.x release series. NetSurf is available to download from http://www.netsurf-browser.org/ The biggest difference is the use of our new Document Object Model library, LibDOM. This new library is a foundation that paves the way for us to implement a fully dynamic layout engine in the future. Other improvements in NetSurf 3.0 include completely new textarea support, ability to fetch and parse CSS in parallel with HTML documents, extensive behind-the-scenes refactoring, and a host of smaller changes and fixes. A more complete list of changes is given below. Core / All platforms -------------------- * Internal restructuring to separate different components. * Improved drag handling. * Added support for User CSS file. * Fixed compressed Messages loading. * Updated translations. * Improved internal options handling. * Improved build documentation. * Moved to using LibDOM for our document object model. * Removed LibXML dependency. * Merged messages files into single resource. * Improved about:imagecache debug feature. * Use system colours for treeview. * Use system colours for scrollbar widget. * Improved content cache. * Added support for DoNotTrack header. * Added early and primitive JavaScript support. (Disabled by default.) * Textarea widget now supports double/triple click selections. * Moved welcome page to local about: URL scheme. * Improved text selection handling. * Simplified interface for dealing with clipboard cut/copy/paste. * Optimised file: fetcher where mmap is available. * Allowed contents to request scrolls. * Improved frames resizing. * Internal restructuring of content communication with window. * New system for obtaining debug dump from core browser window. * Build system uses ccache where available. * Improved handling of CSS white-space property. * Avoid conversion of spaces to hard spaces. * Reduced usage of talloc to box tree. * Improved URL utility functions. * Brought internal URL database into line with other URl handling. * Improved title bar display for standalone image viewing. * Try to downgrade TLS version support if server can't cope. * Fix for layout issue involving floats with negative margins. * Reduced overhead of debug logging. * Don't abort HTML redraw when bad image fails to convert. * Added support for CSS clip property. * Improved error reporting. * Added support for httponly cookies. * Overhauled core textarea widget. * Use textarea widget for HTML form text, password and textarea input. * Improved caret and focus handling. * Removed CPU architecture from user agent string. * Changed text selection highlight colouring. * Remove limitation of HTML line breaking handling that required space. * Allowed CSS to be fetched/parsed in parallel with HTML document. * Added support for readonly attribute on textareas and text inputs. * Fixed text clipping issue. * Hubbub library (HTML parser): + Added script support. + Fixed handling of encoding change. + Updated to use new core buildsystem. * LibCSS library (CSS parser and selection engine): + Updated example code. + Added support for CSS widows and orphans properties. + Minor selection optimisations. + Several minor fixes. + Updated to use new core buildsystem. * LibDOM library (Document Object Model): + First release. * LibNSBMP library (NetSurf BMP decoder): + Removed suspend/invalidate stuff from API. + Updated to use new core buildsystem. * LibNSGIF library (NetSurf GIF decoder): + Updated to use new core buildsystem. * LibParserUtils library (parser building utility functions): + Fixed input insertion. + Updated to use new core buildsystem. * LibSVGTiny library (SVG support): + Ported from LibXML to LibDOM. + Minor fixes. + Updated to use new core buildsystem. * LibWapcaplet library (String internment): + Optimised to reduce function call overheads. + Updated to use new core buildsystem. RISC OS-specific ---------------- * Documentation menu options now launch online documentation. * Added option to enable/disable JavaScript. * Added distribution Zip file build target. * Updated buildsystem to squeeze !RunImage. * Now require v0.13 or higher of the CryptRand module. * Added logging switch to !NetSurf.!Run. * Consult internal mimemap table before consulting MimeMap module. * Improve line wrap handling. * Made clipboard use UTF-8 internally. * Now require v0.12 or higher of the Iconv module. * Pass double and triple clicks to the core. * Fixed ctrl+{left|right|up|down} keys. Also included are many smaller bug fixes, improvements and documentation enhancements. |
Garry (87) 184 posts |
This looks outstanding, just tried it now, and rendering is pretty much as good as Chrome on Windows 8, probably about as fast too, which is amazing considering the speed gap between my Raspberry Pi and PC. Fantastic work. |
Rebecca (1663) 107 posts |
Installed it this afternoon. Brilliant work developers and no doubt appreciated accross the community by other users as much as I do. I was an early user and a big fan. I still have my 1.0 version on CD that I bought at one of the Wakefields shows. Great work. Thanks guys. Cheers, |
Rick Murray (539) 13850 posts |
Of all of the (many!) improvements, this one catches my eye:
Might be “early and primitive”, but as it is one of the things that RISC OS doesn’t do so well (our JavaScript implementations date from sometime in the middle of the Pleistocene!), it is good to see a contemporary (and more importantly, currently developed) browser with the beginnings of script support. |
Peter Duncan (1657) 23 posts |
Seems to work O.K. on RPCEmu although I am getting a “BadType” error message “Warning From NetSurf” window when trying to log in to my Yahoo web mail. It still works with NetSurf 2.9. Thanks for all the work. |
Trevor Johnson (329) 1645 posts |
Have you tried searching the Netsurf user mailing list to see if anyone else has had similar problems? |
Peter Duncan (1657) 23 posts |
I did have a quick look but am a bit busy at the moment so it wasn’t a very thorough examination. I also tried !NetSurf 3 on my 256 MB Pi and it gave the same message. |