Content Module Design Intent

Source: Internet
Author: User

Content Module Overview

The "Content" module is placed inside the SRC \content and uses the multi-process browser sandbox module to render the core code required for the page. It includes all of the network platform features (such as HTML5) and GPU acceleration. It does not include features of the Chrome browser, such as extended/autofill/spelling. Its goal is that any embedded person or user should be able to use it to start building a browser and then choose Chrome Features from it.

What is the motive?

Because of the growing chrome code, features are inevitably sometimes placed in the wrong place, resulting in the irregularity of layered rules and dependencies that should not exist. It has been difficult to find the best way for developers, because these APIs and features are in the same directory. In order to avoid this happening and add the core part of the code, Chrome uses a multi-process browser and a clear division of work on the rendering page, transferring the core browser code?? Inside the src\content.

Content or Chrome?

Content should be just the core code needed to render the page. The chrome feature is provided by the content API to filter the IPC and get event notifications.

To give an example, here's a list of chrome features. They are not in content, which means that the content code should not know about them, and that the content only needs to provide generic api,chrome for those features that can be written based on these APIs:

    • Extensions
    • Nacl
    • Chromeframe
    • SpellCheck
    • Autofill
    • Sync
    • Prerendering
    • Safe Browsing
    • Translate

Architecture diagram

Shows the hierarchy of different modules. A module can directly include the lower module code. The module may not include a code that is higher than its module. This is implemented through the Deps rule enforcement. Modules can implement embedded users such as Chrome's API so that less than their own modules can call themselves. Examples of these APIs are WebKit APIs and content APIs.

Content API

The content API tells us how to invoke the browser indirectly based on content. If possible, the chrome feature attempts to set the hooks through IPC filtering and listening for events. If there is not enough context (such as WebKit callback), or if the callback is one-time, chromium has a contentclient interface, the embedded (Chrome browser) is implemented well. Contentclient are available in all processes, and some processes have their own callback APIs, such as Contentbrowserclient/contentrendererclient/contentpluginclient and so on.

Section reference: Http://www.chromium.org/developers/content-module

This article is original, reproduced please indicate the source, offenders must investigate

Follow Chromium group 480089700, or public platform: Programmer Interaction Alliance (coder_online), you can get original technical articles first, and (Java/c/c++/android/windows/linux) technology Daniel to be friends, Online communication programming experience, get programming basics, solve programming problems. Programmer Interactive Alliance, Developer's own home.

Content Module Design Intent

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.