Nokia

Home > Projects > S60 OSS Browser

S60 OSS Browser

About

The new Web browser for S60 is based on the WebCore and JavaScriptCore components of Appleā€™s Safari Web Kit that Apple uses in its Safari browser. Based on KHTML and KJS from KDE's Konqueror open source project, this software has enabled Nokia to achieve improvements in Web site usability on smartphones through the re-use of a proven desktop rendering engine that has been developed and optimized by a large open source community over many years.

This browser enables smartphone users to browse full Web pages on a smartphone screen with features such as:

  • Preservation of the original page layout, presented just as the Web site designer intended;
  • Easy navigation of Web pages through page miniatures, reducing the amount of scrolling;
  • Pop-up blocking, enhanced start page, and simplified menus;
  • Visual History, an easy-to-use back function, showing miniature views of previous pages;
  • Text Search, which works as you type, taking you directly to the interesting part of the page;
  • Dynamic HTML, supporting dynamic menus, rollovers, and scripted behavior such as AJAX applications;
  • Extensive support of industry standards including W3C's HTML, XHTML 1.0, DOM, CSS and SVG-Tiny; other Web standards such as SSL and ECMAScript; and Netscape style plug-ins such as Flash Lite and audio.

Figure 1 explains the architecture for the new open source based Web Browser for S60. WebCore, JavaScript Core, and the Netscape Plugin API are all from open source. Blue items have been developed by S60 as part of the browser that is delivered to S60 licensees. Code in the blue items is not currently contributed to open source.

Figure 1: S60 Browser Architecture:

S60 Browser Architecture Diagram

The WebCore and JavaScriptCore elements are from Apple Computer, which uses them in its popular Safari browser, and are covered by the LGPL open source license. These components in turn are based on KHTML and KJS from KDE's Konqueror open source project. See http://developer.apple.com/darwin/projects/webcore/ for details.

The Netscape Plug-in API is a ported version of the open source plug-in interface from Netscape Communications Corporation, covered by the Netscape Public License v1.1. See http://www.forum.nokia.com/browserapi/ for details. Nokia has added some extensions, also covered by that license.

The Browser Control API exists in current versions of the browser (starting with S60 2nd edition feature pack 2). It enables other S60 applications to use the browser as a control, for displaying HTML content within a defined region provided by the app. In the future this API will remain consistent with current versions of the browser.

The OS Abstraction Layer is partly defined by the existing open source browser components, and partly is the KWQ abstraction layer that was created by Apple. The KWQ layer that Nokia has ported to S60 will be published when it is complete, as part of the open source contribution.

For additional information, see our FAQ Sheet.

License

The WebCore and JavaScriptCore elements are from Apple Computer, which uses them in its popular Safari browser. These components in turn are based on KHTML and KJS from KDE's Konqueror open source project. They are covered by the LGPL open source license.

Related Links

For information about the S60 Platform and applications, and how the Web Browser for S60 is available to S60 licensees, see http://www.s60.com/browser/.

For end user information about the Web Browser for S60 in Nokia devices, information will be posted soon.

Web site developers and S60 application developers will find browser documentation and tools in the near future. .

Documentation and source for the WebKit project are available at http://developer.apple.com/darwin/projects/webcore/.

The site for the Konqueror project at KDE is http://konqueror.kde.org/.