Information about Gecko (layout Engine)

Gecko

Epiphany using Gecko to render the Wikipedia main page
Developer:Mozilla Foundation / Mozilla Corporation
Latest release:1.8.1.8 / October 8, 2007
OS:Cross-platform
Genre:Layout engine
License:Mozilla tri-license
Website:[1]


Gecko is the open source, free software web browser layout engine used in all Mozilla-branded software and its derivatives, including later Netscape releases. Written in C++ and licensed under MPL/GPL/LGPL tri-license, Gecko is designed to support open Internet standards. Originally created by Netscape Communications Corporation, its development is now overseen by the Mozilla Foundation.

Gecko offers a rich programming API that makes it suitable for a wide variety of roles in Internet-enabled applications, such as web browsers, content presentation, and client/server[2]. Primarily it is used by Mozilla browser derivatives, such as Firefox, Camino, Flock, SeaMonkey, K-Meleon, and Netscape, to render websites and, in some cases, the application user interface written in XUL. Gecko is cross-platform and works on a number of different operating systems, including Microsoft Windows, BSDs, Linux, and Mac OS X.

Gecko is the second most-popular layout engine on the Web, after Trident (used by Internet Explorer for Windows since version 4), and followed by WebCore (used by Safari) and Presto (used by Opera).

Standards support

From the outset, Gecko was designed to support open Internet standards. Some of the standards Gecko supports include:
  1. ^ The SVG font, color profile, animation, view, and cursor modules are yet to be implemented and the filter and text modules are only partially implemented. The extensibility module is also implemented but is currently disabled[3]


In order to support web pages designed for legacy versions of Netscape and Internet Explorer, Gecko supports DOCTYPE switching. Documents with a modern DOCTYPE are rendered in standards compliance mode, which follows the W3C standards strictly. Documents that have no DOCTYPE or an older DOCTYPE are rendered in quirks mode, which emulates some of the non-standard oddities of Netscape Communicator 4.x, however, some of the 4.x features (such as layers) are not supported.

Gecko also has limited support for some non-standard Internet Explorer features, such as the tag and the document.all property (though pages explicitly testing for document.all will be told it is not supported). While this increases compatibility with many documents designed only for Internet Explorer, some purists argue that it harms the cause of standards evangelism.

History

Development of the layout engine now known as Gecko began at Netscape in 1997, following the company's purchase of DigitalStyle. The existing Netscape rendering engine, originally written for Netscape Navigator 1.0 and upgraded through the years, was widely considered to be inferior to the one used in Microsoft Internet Explorer. It was slow, did not comply well with W3C standards, had limited support for dynamic HTML and lacked features such as incremental reflow (when the layout engine rearranges elements on the screen as new data is downloaded and added to the page). The new layout engine was developed in parallel with the old, with the intention being to integrate it into Netscape Communicator when it was mature and stable. At least one more major revision of Netscape was expected to be released with the old layout engine before the switch.

After the launch of the Mozilla project in early 1998, the new layout engine code was released under an open-source license. Originally unveiled as Raptor, the name had to be changed to NGLayout (next generation layout) due to trademark problems. Netscape later rebranded NGLayout as Gecko. While Mozilla Organization (the forerunner of the Mozilla Foundation) initially continued to use the NGLayout name (Gecko was a Netscape trademark)[4], eventually the Gecko branding won out. For a time, Gecko was used to refer to both the old NGLayout layout engine and XPFE (cross-platform front-end)—the new XML-based Mozilla user interface, rendered by NGLayout—but it is now used solely to refer to the layout engine.

In October 1998, Netscape announced that its next browser would use Gecko (which was still called NGLayout at the time) rather than the old layout engine, requiring large parts of the application to be rewritten. While this decision was popular with web standards advocates, it was largely unpopular with Netscape developers, who were unhappy with the six months given for the rewrite[5]. It also meant that most of the work done for Netscape Communicator 5.0 (including development on the Mariner improvements to the old layout engine) had to be abandoned. Netscape 6, the first Netscape release to incorporate Gecko, was released in November 2000 (the name Netscape 5 was never used).

As Gecko development continued, other applications and embedders began to make use of it. America Online, by this time Netscape's parent company, eventually adopted it for use in CompuServe 7.0 and AOL for Mac OS X (these products had previously embedded Internet Explorer). However, with the exception of a few betas, Gecko was never used in the main Microsoft Windows AOL client.

On July 15, 2003, AOL laid off the remaining Gecko developers and the Mozilla Foundation (formed on the same day) became the main steward of Gecko development. Today, Gecko is developed by employees of the Mozilla Corporation, employees of companies that contribute to the Mozilla project, and volunteers.

Future

This article or section contains information about scheduled or expected future events.
It may contain tentative information; the content may change as the event approaches and more information becomes available.
Some information on the work being done for the next version of Gecko is available in the Gecko 1.9 roadmap.[6]

One of the main initiatives in 1.9 is an overhaul of the graphics infrastructure.[7][8] Instead of using the platforms' API, cairo will be used for all graphics outputs. This will result in improved 2D graphics capabilities and, via Glitz, acceleration using 3D graphics hardware. It will also mean that there will be a single rendering pipeline for HTML/CSS, canvas and SVG, so that SVG effects can be applied to HTML content. Because of cairo, it will also be possible to output the graphics as formats like PNG and PDF, allowing users to export Web content in these formats.

Another major change in Gecko 1.9 is refactoring of reflow code [9], which fixed many layout bugs, in particular some of the bugs leading to incorrect rendering of the Acid2 standards-compliance test.

See also

References

External links



Maintainer: Various

OS: Cross-platform

Use: Web browser
License: GNU General Public License
Website: [1]

Epiphany is a light-weight Web browser for the GNOME graphical computing desktop.
..... Click the link for more information.
Software development is the translation of a user need or marketing goal into a software product.[1][2] Software development is sometimes understood to encompass the processes of software engineering combined with the research and goals of software marketing
..... Click the link for more information.
Mozilla Foundation

Logo of the Mozilla Foundation
(the Mozilla mascot)

Founder Mozilla Organization

Type 501(c)(3)
Founded July 15, 2003
Headquarters Mountain View, CA
Origins Mozilla Organization
Products Mozilla Firefox
..... Click the link for more information.
Mozilla Corporation

Private
Founded Mountain View, California (2005)
Headquarters Mountain View, CA, USA

Key people Mitchell Baker, President
Products Mozilla Firefox
Mozilla Thunderbird
more...
Employees 60+
Website mozilla.
..... Click the link for more information.
Code complete redirects here. For the Microsoft book, see Code Complete.

A software release is the distribution, whether public or private, of an initial or new and upgraded version of a computer software product.
..... Click the link for more information.
    San Ernesto, answering prayers for rain.
  • Also see October 8 (Eastern Orthodox liturgics)
  • French Republican Calendar - Citrouille (Pumpkin) Day, seventeenth day in the Month of Vendémiaire
  • Independence Day in Croatia
  • Navy Day in Peru

External links


    ..... Click the link for more information.
    20th century - 21st century - 22nd century
    1970s  1980s  1990s  - 2000s -  2010s  2020s  2030s
    2004 2005 2006 - 2007 - 2008 2009 2010

    2007 by topic:
    News by month
    Jan - Feb - Mar - Apr - May - Jun
    ..... Click the link for more information.
    An operating system (OS) is the software that manages the sharing of the resources of a computer. An operating system processes system data and user input, and responds by allocating and managing tasks and internal system resources as a service to users and programs of the
    ..... Click the link for more information.
    Cross-platform is a term which can refer to computer programs, operating systems, computer languages, programming languages, or other computer software and their implementations which can be made to work on multiple computer platforms.
    ..... Click the link for more information.
    Computer software can be organized into categories based on common function, type, or field of use. A list follows of common software categories.

    Categories of software

    • Applications

    ..... Click the link for more information.
    A layout engine, or rendering engine, is software that takes web content (such as HTML, XML, image files, etc.) and formatting information (such as CSS, XSL, etc.) and displays the formatted content on the screen.
    ..... Click the link for more information.
    A software license comprises the permissions, rights and restrictions imposed on software (whether a component or a free-standing program). Use of software without a license could constitute infringement of the owner's exclusive rights under copyright or, occasionally, patent law
    ..... Click the link for more information.
    Dual-licensing is the practice of distributing identical software under two different sets of terms and conditions. This may mean two different licenses, or two different sets of licenses.
    ..... Click the link for more information.
    A website (alternatively, Web site or web site) is a collection of Web pages, images, videos or other digital assets that is hosted on one or several Web server(s), usually accessible via the Internet, cell phone or a LAN.
    ..... Click the link for more information.
    Open source is a set of principles and practices that promote access to the design and production of goods and knowledge. The term is most commonly applied to the source code of software that is available to the general public with relaxed or non-existent intellectual property
    ..... Click the link for more information.
    Free software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions only to ensure that further recipients can also do these things.
    ..... Click the link for more information.
    A web browser is a software application that enables a user to display and interact with text, images, videos, music and other information typically located on a Web page at a website on the World Wide Web or a local area network.
    ..... Click the link for more information.
    A layout engine, or rendering engine, is software that takes web content (such as HTML, XML, image files, etc.) and formatting information (such as CSS, XSL, etc.) and displays the formatted content on the screen.
    ..... Click the link for more information.
    Mozilla was the official, public, original name of Mozilla Application Suite by the Mozilla Foundation, currently known as SeaMonkey suite.

    In informal use it has been used in a number of ways and in combination with other phrases, though all of them have been
    ..... Click the link for more information.


    Netscape Communications (formerly known as Netscape Communications Corporation and commonly known as Netscape
    ..... Click the link for more information.
    C++
    Paradigm: Multi-paradigm
    Appeared in: 1983
    Designed by: Bjarne Stroustrup
    Typing discipline: Static, unsafe, nominative
    Major implementations: G++, Microsoft Visual C++, Borland C++ Builder
    Dialects: ISO/IEC C++ 1998, ISO/IEC C++ 2003
    ..... Click the link for more information.
    The Mozilla Public License (MPL) is an open source and free software license. Version 1.0 was developed by Mitchell Baker when she worked as a lawyer at Netscape Communications Corporation and version 1.1 at the Mozilla Foundation.
    ..... Click the link for more information.
    GNU General Public License
    Author: Free Software Foundation
    Version: 3
    Copyright on the license: Free Software Foundation, Inc.
    Publication date: 29 June 2007
    OSI approved: Yes
    Debian approved: Yes
    Free Software:
    ..... Click the link for more information.
    Dual-licensing is the practice of distributing identical software under two different sets of terms and conditions. This may mean two different licenses, or two different sets of licenses.
    ..... Click the link for more information.
    Internet is a worldwide, publicly accessible series of interconnected computer networks that transmit data by packet switching using the standard Internet Protocol (IP). It is a "network of networks" that consists of millions of smaller domestic, academic, business, and government
    ..... Click the link for more information.


    Netscape Communications (formerly known as Netscape Communications Corporation and commonly known as Netscape
    ..... Click the link for more information.
    Mozilla Foundation

    Logo of the Mozilla Foundation
    (the Mozilla mascot)

    Founder Mozilla Organization

    Type 501(c)(3)
    Founded July 15, 2003
    Headquarters Mountain View, CA
    Origins Mozilla Organization
    Products Mozilla Firefox
    ..... Click the link for more information.
    An application programming interface (API) is a source code interface that an operating system or library provides to support requests for services to be made of it by computer programs.
    ..... Click the link for more information.
    Maintainer: Mozilla Corporation / Mozilla Foundation

    OS: Cross-platform
    Available language(s): Multilingual,[1] EULA in English only[2]
    Use: Web browser
    License: Mozilla EULA for binary redistribution

    ..... Click the link for more information.
    Maintainer: The Camino Project

    OS: Mac OS X

    Use: Web browser
    License: MPL, MPL/GPL/LGPL tri-license
    Website: www.caminobrowser.
    ..... Click the link for more information.


    This article is copied from an article on Wikipedia.org - the free encyclopedia created and edited by online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of the wikipedia encyclopedia articles provide accurate and timely information please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.
    Herod_Archelaus


    page counter