
chromium
文章平均质量分 73
dzhjsofo
低调是最牛叉的炫耀
展开
-
chromium源码学习笔记(5) -- 多进程
http://blog.sina.com.cn/s/blog_48f93b530101k661.html chromium的多进程架构是一个非常大胆的创新,也非常值得研究,本文主要是学习官方设计文档Multi-process Architecture及其他资料的笔记,未专门研读相关源码。目的是对chromium及主流浏览器的多进程架构有一个基本了解,方面后面进一步学习。转载 2013-08-20 10:05:41 · 1073 阅读 · 0 评论 -
[Chrome源码阅读] 理解Browser进程
http://blog.youkuaiyun.com/zero_lee/article/details/7903911首先贴出一张来自于Chrome官网上design document上的图。这张图描述了Browser进程中主要几个类之间的相互关系。这张图仅仅列出了Browser进程里的2个线程:UI线程和IPC线程。UI线程是主线程,主要负责整个UI的渲染和消息的响应,包括自身的转载 2013-09-03 18:07:36 · 1110 阅读 · 0 评论 -
[Chrome源码阅读] Browser相关的类
1. TabStripModel在正式解释Brower类之前,来简要概述下TabStripModel与Browser的关系:Browser类相当于一个controller,而TabStripModel相当于一个model。Browser聚合model(在类初始化时就实例化一个model)。Browser反过来又是TabStripModel的delegate,帮忙做一些Tab转载 2013-09-03 20:12:55 · 645 阅读 · 0 评论 -
Chromium本地化的方法
http://blog.youkuaiyun.com/only_youch/article/details/5892706Chromium的本地化方法 一、软件环境 chromium版本:6.0.482.0 os:windows xp sp2 二、chromium的本地化 chromium转载 2013-09-04 15:08:01 · 1120 阅读 · 0 评论 -
chrome UI 学习笔记3--国际化 (转)
不可否认,Chrome的国际化做的非常优秀,在Chrome中添加一种新的语言支持非常方便。http://www.chromium.org/developers/design-documents/ui-localizationLocale 项目如果使用virtual studio 2008打开chrome for windows的工程,可以看到如下的项目:转载 2013-09-04 15:08:45 · 2132 阅读 · 0 评论 -
Chromium资源文件.pak解包方法(python)
[python] view plaincopyprint?import collections import struct import sys def ReadFile(filename, encoding): mode = 'rb' if encoding == 0 else 'rU' with open(filename,转载 2013-09-05 10:04:16 · 3892 阅读 · 0 评论 -
(译)Chrome如何显示网页
http://blog.youkuaiyun.com/zengwh/article/details/4285792Chromium如何显示网页概念上的应用层WebKitWebKit PortWebkit胶粘层浏览器进程底层浏览器进程对象高层浏览器进程对象演示示例“设置光标”消息的处理过程鼠标单击消息处理过程译:whzeng@126.com转载 2013-10-08 18:02:02 · 1102 阅读 · 1 评论 -
Google 多源码管理工具 gclient
本文根据gclient帮助整理。google的chromium项目是用gclient来管理源码的checkout, update等。 gclient是google专门为这种多源项目编写的脚本,它可以将多个源码管理系统中的代码放在一起管理。甚至包括将git和svn代码放在一起。gclient的sync,update等命令很容易学习和使用,不再多说,重点说明下和转载 2013-09-25 10:30:47 · 1486 阅读 · 0 评论 -
chromium手势事件处理流程
http://blog.youkuaiyun.com/qq295445028/article/details/9356729 chromium手势事件的处理,简而言之就是browser进程调用系统接口捕获并判断事件,传给render进程处理事件的过程。 捕获事件的接口:ContentViewGestureHandler::onTouchEvent。在这个函数中有一些判断这里不再赘述,只转载 2013-10-31 10:07:03 · 1052 阅读 · 0 评论 -
chromium设置字体大小功能
其实对于手机浏览器来说,设置字体大小实在是一个非常鸡肋又蛋疼无比的功能,因为本身可以缩放,还有缩放重排等功能。谁会有那么无聊想设置字体大小。改变字体大小强制改变了原网页的意图,排版完全改变,很可能造成较差的用户体验,真是一个吃力不讨好的功能。 在browser端设置字体大小之后,不出意外会最终设置到WebCore::Settings::setTextAutosizingFontScal转载 2013-10-30 22:37:12 · 1326 阅读 · 0 评论 -
ContentShell启动过程全分析(一)
http://blog.youkuaiyun.com/qq295445028/article/details/14450693一、概述ContentShell的启动过程比较复杂,涉及的类比较多,总是看了这忘了那,于是萌生了将看过的初始化过程记录一下的想法。本文从UI初始化,Browser进程初始化和Render进程初始化三个方面来浅析一下ContentShell的初始化过程。主要关注一些关转载 2013-11-07 18:09:50 · 972 阅读 · 0 评论 -
chromium video相关
规范: - HTMLAudioElement - HTMLMediaElement - HTMLVideoElement概况: chromium的video的实现依赖于以下三部分: pipeline:chromium自己实现的播放引擎,处理音频/视频的同步和资源获取 FFMpeg: 开源库。转载 2013-11-22 15:26:49 · 1327 阅读 · 0 评论 -
chromium android 的事件响应机制
http://blog.youkuaiyun.com/echoes19761976/article/details/12751881最近研究了一下Chromium在android平台下的事件响应,总结一下。事件分为:MouseEvent, MouseWheelEvent,KeyboardEvent,GestureEvent,TouchEvent。从app层传到WebCore,经历以转载 2013-12-25 14:31:56 · 811 阅读 · 0 评论 -
Chrome消息系统(2)
http://blog.sina.com.cn/s/blog_5e83fce60100q583.html前面写了Chrome消息系统(1)前比较抽象,这章来点具体的,当然要结合代码来看了!现在我要关注的问题是:一个RenderProcess的消息怎么发送到BrowserProcess进程中的,这个消息走了那些路?注意,所说的IO线程是Browser进转载 2013-07-17 10:13:05 · 650 阅读 · 0 评论 -
chrome源码学习之启动流程简介
http://blog.youkuaiyun.com/ciml/article/details/5730209先说明一下,我这里采用的chrome源代码版本是4.1.249.1064。如果你采用的不是此版本,则可能和我描述的源代码文件名、代码位置不一致,后续关于chrome的文章均采用此版本,不再另作说明。采用此版本没有任何特殊理由,仅仅是当我开始学习chrome的那个时间点的最新版本而已。转载 2013-08-22 13:42:45 · 738 阅读 · 0 评论 -
Chrome MessageLoop类分析
http://blog.youkuaiyun.com/optman/article/details/5005660Windows程序是基于消息的,不管其封装形式如何,最后都要包含如下代码MSG msg;while(GetMesssage(&msg)){TranslateMessage(&msg);DispatchMessage(&msg); }大部分的工转载 2013-08-02 15:40:49 · 778 阅读 · 0 评论 -
renderviewhost与webcontents关系
1. RenderViewHost为中心的相关类2. TabContents/NavigationController/TabStripModel/Browser之间的相互关系转载 2013-09-03 17:03:29 · 1094 阅读 · 0 评论 -
浅谈chromium中的指针管理
转载自:http://www.starwd.com/?p=164前言在大型C++系统中对指针的管理通常至关重要,这跟对象的生命周期相关,存在如下方面的考虑:如何确保指针所指向的对象是在适当范围内是始终存在的?如何构建一种机制,确保能正确检测指针所指向对象是否有效?在chromium中对这类问题分别采用智能指针Scoped_refptr和弱指针WeakPtr来转载 2013-08-29 18:44:08 · 741 阅读 · 0 评论 -
Chromium源码分析:ContentShell启动流程
http://mogoweb.net/archives/417ContentShell是基于Content API的一个简单的浏览器外壳,下面我将分析chromium for android中的ContentShell程序的启动流程。由于android程序的特殊性(一部分Java代码,一部分c++代码),所以看似简单的启动流程,在android版本的ContentShell却七转载 2013-08-06 13:42:20 · 2533 阅读 · 0 评论 -
chromium之content_shell源代码分析(二)
http://blog.youkuaiyun.com/chromium_webkit/article/details/8666005上一篇介绍到了Shell_browser_main.cc的中调用的BrowserMainRunnerImpl的Initialize和Run函数,现在来介绍具体的过程和特点;在BrowserMainRunnerImpl的Initialize中会看到如下代码:转载 2013-08-05 14:16:48 · 1732 阅读 · 0 评论 -
Chrome学习之LazyInstance
http://blog.youkuaiyun.com/leehark/article/details/6897858 LazyInstance顾名思义,就是延迟创造类实例。 那chrome是怎么做到的呢? 为了性能,或者资源,程序中无法立即用到的对象,我们无需立即创造,比如一个界面的菜单对象,当你还没有点击菜单之前就创造了,那他一定会影响软件的启动性能。再比如转载 2013-08-01 17:05:23 · 964 阅读 · 0 评论 -
[Chrome源码阅读]Chrome增加一个New Tab时都干了些什么
http://blog.youkuaiyun.com/zero_lee/article/details/7896856?reload当我们通过TAB栏上的"+"标签增加一个新的空TAB时,Chrome内部的代码是怎么样的呢?这篇文章将会介绍它内部的流程。首先用一个callstack截图来看下它的前一段处理流程:TAB旁边的那个“+”(注意不是"New Tab (Ctrl转载 2013-07-22 21:03:54 · 1331 阅读 · 0 评论 -
[Chrome源码阅读]Chrome启动代码流程3
http://zeroli.github.io/chrome/2013/03/25/chrome-code-launch-procedure3/从URL bar中进行URL的导航过程接着上一篇,不管是接受用户输入的一个有效的URL地址,还是启动Chrome时自动load一个URL地址,the navigation controller都会进入到NavigationContr转载 2013-07-22 21:02:28 · 857 阅读 · 0 评论 -
Chrome源代码分析之Renderer进程初始化(十五)
http://blog.youkuaiyun.com/namelcx/article/details/8939824前面已经分析过,一个RenderProcess与一个主进程中的RenerProcessHost对应。RenderProcess到底在什么时候创建,答案是在RenerProcessHos初始化的时候创建,对应的过程在BrowserRenderProcessHost::Init函数中实现。我转载 2013-07-16 19:47:59 · 1185 阅读 · 0 评论 -
WebContents类
首先介绍浏览所需的数据结构:BrowserContext类:保存浏览过程中所需要的上下文。其运行在UI线程中,所有方法均只能在UI线程中调用。主要方法简介:l net::URLRequestContextGetter* GetRequestContext()获取URL请求所需要的URLRequestContext结构l ResourceContext* GetResourc转载 2013-07-11 16:04:48 · 1203 阅读 · 0 评论 -
[Windows平台The Chromium Projects开发日记]——获取Chromium源代码
The Chromium Projects是使用gclient工具来维护代码。在Windows上想要运行gclient,用cygwin会更好点,虽然gclient有win32版本的可执行文件。获取源代码之前的准备工作:安装cygwin执行环境,安装depot_tools工具。参考文档:http://dev.chromium.org/developers/how-tos/get-th转载 2013-09-03 15:08:08 · 998 阅读 · 0 评论 -
Chromium 怎样显示网页
http://www.chromium.org/developers/design-documents/displaying-a-web-page-in-chrome这篇文档描述了Chromium 怎样自上而下显示网页。确保你已经读了multi-process architecture design document.你会特别想了解主要部件的框图。你也许对多进程加载网页资源感兴转载 2013-09-10 13:55:34 · 1002 阅读 · 0 评论 -
android chromium点击链接打开新标签页过程分析
当点击网页上一个链接时,首先将动作识别成手势原创 2013-12-26 09:45:43 · 1379 阅读 · 0 评论