chromium历史记录实现(不完整版)

chromium整个历史记录功能比较复杂,包括前进后退,浏览历史,用插件以后还可以显示树形的浏览记录。这里只分析一下我所看到的部分代码,没有搞的特别清楚,主要跟前进后台的功能相关。


其实在webkit中已经支持前进后退,浏览历史等功能。这些类主要集中在third_party/WebKit/Source/WebCore/history/目录下。其中HistoryItem类标识一条基本的历史记录,除了URL外,它还主要包括缩放比例,滚动位置,表单数据等信息。该目录下的其他类:BackForwardList,BackForwardController,CachedFrame,CachedPage等也基本可以做到望文知义。所以说前进后退的逻辑webkit内核已经实现好了,只需要调用goBack, goForward接口就可以了。


但是,chromium并没有用webkit的历史记录功能,该目录下除了HistoryItem类外,其他都被无情的抛弃掉了。它在content端自己实现了历史记录的逻辑,包括可以自己定义前进后退功能的实现方法,而不仅局限于遵循webkit的逻辑。


content端相关类主要有:NavigationController(看名字就知道是个控制类型的类,可见该类包含了很多逻辑性的处理),NavigationEntry(该类与HistoryItem类相对应,其cont

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值