亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

谷歌瀏覽器的源碼分析(15)

系統 2008 0
上一次說到發送命令給瀏覽器對象打開網頁顯示,但還沒有分析它是怎么實現的,現在就來分析這方面的內容,如下:

#001 ? void Browser::ExecuteCommand(int id) {

#002 ??? if (!IsCommandEnabled(id)) {

#003 ????? NOTREACHED() << id;

#004 ????? return;

#005 ??? }

#006 ??? // This might happen during QMU testing.

#007 ??? if (!GetSelectedTabContents())

#008 ????? return;

#009 ?

#010 ??? switch (id) {

#011 ????? case IDC_BACK:

#012 ??????? UserMetrics::RecordAction(L"Back", profile_);

#013 ??????? GoBack();

#014 ??????? break;

#015 ???????

#016 ? ?????? ...

#017 ???????

#018 ???????

#019 ???????? case IDC_OPENURL:

#020 ??????? UserMetrics::RecordAction(L"LoadURL", profile_);

#021 ??????? {

#022 ????????? LocationBarView* lbv = GetLocationBarView();

#023 ????????? if (lbv) {

#024 ??????????? OpenURL(GURL(lbv->location_input()), lbv->disposition(),

#025 ??????????????????? lbv->transition());

#026 ????????? } else {

#027 ??????????? OpenURL(GURL(), CURRENT_TAB, PageTransition::TYPED);

#028 ????????? }

#029 ??????? }

#030 ??????? break;

#031 ?

?

可以看到這段代碼,第 19 行就是處理打開網頁的命令處理,當然在這個函數里不僅僅處理打開網頁的連接命令,還有很多其它的命令,目前先分析這個命令的代碼。

20 行里先記錄當前執行的動作。

22 行里查找到當前顯示 BAR 窗口。

如果找到 LocationBarView 窗口,就把當前的輸入連接生成 GURL 對象,從窗口獲取顯示位置,傳送的類型。否則,就是使用空的連接,并打開當前頁面。

?

下面再來分析函數 OpenURL 的實現,它是調用 TabContentsDelegate 類里的 OpenURL 函數:

#001 ??? virtual void OpenURL(const GURL& url,

#002 ???????????????????????? WindowOpenDisposition disposition,

#003 ???????????????????????? PageTransition::Type transition) {

#004 ????? OpenURLFromTab(NULL, url, disposition, transition, std::string());

#005 ??? }

?

在這個函數繼續調用 OpenURLFromTab 函數來實現打開網頁的功能,這個函數比較復雜,下一次再來分析它。

谷歌瀏覽器的源碼分析(15)


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 午夜香蕉成视频人网站高清版 | 不卡的在线视频免费观看 | 国产日韩一区二区三区在线播放 | 久久影院中文字幕 | 亚洲欧美日韩精品香蕉 | 国产萝控精品福利视频免费 | 亚洲精品麻豆 | 日本一级一片免在线观看 | 久久激情视频 | 欧美日韩亚洲国产无线码 | 在线观看免费亚洲 | 一级片影院| 国产三级久久久精品麻豆三级 | 久久久国产乱子伦精品 | 欧美国产日韩久久久 | 在线日本中文字幕 | 香蕉视频黄色片 | 精品一成人岛国片在线观看 | 日韩 欧美 亚洲 中文字幕 | 一级日本高清视频免费观看 | 久久婷婷色综合老司机 | 国产欧美日韩精品a在线观看 | 亚洲欧美日韩国产色另类 | 老司机永久免费网站在线观看 | 女人十八一级毛片 | 久久精品在线观看 | 全部在线播放免费毛片 | 国产精品嫩草研究所永久网址 | 一区二区在线免费观看 | 亚洲欧美婷婷 | 动漫精品一区二区3d | 免费观看成人羞羞视频网站观看 | 日韩特级毛片 | 日韩一区二区三区免费视频 | 国产欧美精品区一区二区三区 | 亚洲丶国产丶欧美一区二区三区 | 成年女人a毛片免费视频 | 国产一级免费视频 | 久国产精品视频 | 日韩在线一区二区三区视频 | 亚洲va在线va天堂va手机 |