WebKit内核源代码分析(三)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
WebCore ጱ ፻ॢ Qt 3፻ॢጱ ళ/ጱÑ ?3 ᢚ č
Page::settings '
č
Ý QwebSetting
ళ/౵ Page
#
2.3 Chrome
Ć/ ੰาੰ ਜ਼ ᒬ ǜ ॼ ጱ ”WebKit ጱ Chrome ď
ChromeClient”
2.4 ॥
ľ
Ð
E
ɲčɴ 63ᡌ੺Cȶ
"Ù>ᡰöĪ'dzÑ Qt
ล, üɬྏ č Frame ፻ॢ Page
ᣩি&č Page ፻ॢጱ ȑ čళ/᫣ጱॢ
blog.csdn.net/dlmu2001
2
QWebPagePrivate ጱ
QWebPage >ᡰ QWebPagePrivate ᐿ෍ Page >ø% / Ý Page
4

Ð Ó WebKit ጱɹࢉ browser '&
᡼ʯ
઱ ᡰÐ RIM ጱč ᐰ"ࡃÐÝ
PageGroup
᡼᫣ጱ setting ྞ಑
3 ੳ ࡵ'ɥ Ó webkit '& ÐÔɹࢉ ċȚÑÐ ࡵÙ Ü/Ñčጱ
ķÐ༈EࡵċȚ / Ó webkit ጱ
ď User StyleSheet ጱᬫઉÐ63
RenderTheme: ᡼
EditorClient:č3ᡌüȚ፻ॢ
RenderThemeQt & RenderTheme าੰጱ० Ǐ
ď ᐯ าੰ Qt

ข ী D ŷ
blog.csdn.net/dlmu2001
PageGroup ྞ᡼ Group ఉȃ
డÜ/ጱ User Script
Script ď User StyleSheet ํ Document Ùጱ Path࠳D >ᡰ GroupSettings
č᡼Ô User 3
PageGroup ᡻ᐿ෍ࡃ Local Storage ď Index DB ፻ॢጱ ౵Ðſጱ Page Ǐ
üȚPage

blog.csdn.net/dlmu2001
3
2.

2.1 PageGroup
PageGroup డÑ&/' ቗ DZ᡼ ጱ Page ɲ ቗ጱȑ& /'
ÐÔ०ྞॠčጱ ɲ
"ᒮ 3ጱ Page 3ŝᐡጱ ࡾ༈à ᡼Ô ਢť localStorage ጱ
User ScriptUser StyleSheet &ᐿ෍ఉ WebKit ८ ࠳ ʯʦา
ᡎ Client
BackForwardController:ɲčɴŷิ HistoryItem:਷੹ Plugin ጱࣞ
Ðďᗆఝ॥
ŝ ઉడ &
PluginData:ํࢉ፻ॢ''ċȚč PluginDatabase PluginHalter:/'ิ Plugin ጱ ďʅſľ ŭÞࡃ ิ ࢉጱ (
ɲ
InspectorController:Inspector ิ ᡼ ፻ॢ
ContextMenuController:੺CÑ෦ȶิ
ጱ಑
ľ੤ం०ɾč
GeolocationController: Əৢิ DeviceMotionController: DeviceOrientationController: SpeechInputClient: ProgressTracker:ɲిɞ< Frame:Ð Page /ᕪ ৩ิ ༈ิ
& WebKit Eʅ
ጱÐ
ॢC
:WebKit ८ ƛࡼ
,WebCore,Page,FrameWebKit
1.
ɳ
ጱ Ð6&ࡾ E /">ᡰ3 ᡎ ȑÐ / E ƛ Page ċȚਢྞ
Ð url Ð
&/' ళ᡼ ጱ E 3Inspector
E ࡾ੣Ī, CSS ďํࢉ ᡼Ô/"ਜ਼Ñጱ৩
shouldTrackVisitedLinks &ÐE೚ጱ ੫ʅ
/ PageGroup::setShouldTrackVisitedLinks ਜ਼
ɞ<ఉ ʯጱาੰ
᡼& lazy าੰ
ᐿ෍ࡃ PageGroup ጱฌᨽడŭÞࡃ group าੰ ' m_group Ñ / InitGroup ' GroupName ጱ PageGroup / ྞ 3 GroupName
SharedGraphicsContext3D ŭ Þ ࡃ createDrawingBuffer ' ౵ DragController:෭Ŧิ Chrome ጱ᝾ᐐ෭ŦüȚč᡼ྞॢ

ȑü
blog.csdn.net/dlmu2001
6
ǜࡾč
FocusController:+ჼิ ᒬ:+ჼઅ frame ᫣ী# "ࡾ/ Page ᐿ෍+ჼิƎઉᢓÑᡰ
addPage าੰü᡼ PageGroup ጱ m_pages üఉ ʯʦา % true & ጱ༭ಶ ྞ 6
PageGroup ౵ࡾč
>ᡰ
੤/ጱ༭ / addVisitedLink '
url
ಀē॥ Page
"ྞళ/ᐿ෍Ð ጱ Ðళ/ ॥ 3 false č Ó ጱళ/
SelectionController : ቗ Page ጱᢚ੩ŷȄ ᣩিᢚ੩ŷ ጱ SelectionController ጱ༭ +ჼ(
& Ó Frame ጱ੷ Frame ጱ Selection ጱᐯం"Ü/ Page
SharedGraphicsContext3D:ॠÕ 3D Ī࠳Ñ໨ ࡃ 2D & ü > ጱ 2D canvas ጱ DrawingBuffer ጱ DrawingBuffer
Ǝ ጱč PageGroup ፻ॢጱŷ ళ/ าੰ #ǜጱ቗ &Ðళ/ tab
IndexDB
addVisitedLink
ྞॢ tab
ᡄċȚጱ&Ðళ/lj Ð PageGroup ᡼ʅč
ÓčÐ PageGroup ǜƎ mailing group
blog.csdn.net/dlmu2001
č ጱ createMainFrame QwebFrameData ጱ
Frame::create ౵হ Frame
> ø % ࡾ Page ฌ ᨽ ਜ਼ %
Ý QwebFrame ȑ
QWebPage
ጱฌᨽడ
>ᡰ
/ࡃ
Page డ ྞ

>ᡰᐡઉ॥
ጱ༈Ŀ Ǐࡃ಑
1
WebKit ८ ƛࡼ ি ࠲
ᐋ಴ǜ(tomorrow.cyz@gmail.com)
$
Ð url ྞÐ

&/' ళ᡼ ጱ ë८
Leabharlann BaiduE ࡾ੣Ī, CSS ďํࢉ ጱÐ4ઉ E Page
ľ
Ð6&ࡾ
Ð
E
E
/">ᡰ3 ᡎ ȑÐ / E ƛ Page ċȚਢ
౵Ð Ó Page
ጱ༭/ŝÐ
blog.csdn.net/dlmu2001
5
m_singlePageGroup ᐿ෍డ඿ฌᨽ ᐰ m_group č PageGroup / m_group 'ᐿ෍
/ࡃ setGroupNameʅſ౵ PageGroup ༭᡼
ࡾE

2.2 Setting
相关文档
最新文档