Hi, I've ported Chromium M39 to 4.4 using WebView.

The main modifications are:

  1. I changed AwContents::RequestDrawGL to call AwContents::DrawGL directly using Process-Sync mode when canvas input is NULL
  2. Android 4.4 seems to have only Draw mode DrawGL call, so I added Process-Sync mode call in DrawGLFunctor::operator()
  3. I changed 5 ".Wait()" calls in InProcessCommandBuffer class implementations to let it pass through when on 4.4 and in UI thread
  4. I also fixed the InProcessCommandBuffer::PerformIdleWork() deadlock problem


     in some situcations AwContents::RequestDrawGL is not called from inside of OnDraw, and IPCB::PerformIdleWork() recursively calls itself, whose AutoLock causes deadlock.

It now runs fluently on Nexus 4, but has a problem on a special Mobile Phone, which is using Android 4.4.2 and 1920x1080p screen.

The problem is, when browsing http://tieba.baidu.com/ ,

  1. It initially loads page and displays OK
  2. when i `slowly` scrolls the page up-down, some of the page content which should slide in at once, but just delays 2~3s to display
  3. when i `fastly` flips the page up-down, the upper side and bottom side of content becomes blank-white, no displaying back

I also test it on 2 other 1080p-screen mobile phones, there is no such problems.

Can any one help with this problem, I can imagine some causes, but I'm not familiar with android-chromium graphics stack:

  1. Does this relate to the problematic `1080p` phone, or is there any roots in tiling or OpenGL ES graphics driver?

  2. Maybe WebKit/Bink core does not paint the part, or cc compositor does not do the duty of compositing work?

Thanks very much!

PS: Hi baoliu, you have said the work porting Chromium M38+ to Android 4.4 is not supported by Google officially, But hope to hear your wise judgement.

The problematic URL is: http://tieba.baidu.com/?page=discovery

On Desktop Chrome, F12 to open developer console, then choose Nexus 5 as simulator.



I find the top TAB div element switches between



<div class="tab_head tab_index_head j_tab_index_head blue_kit light_tab_head tab_index_head_clone" style="display: -webkit-box;
opacity: 1;">  ...



and



<div class="tab_head tab_index_head j_tab_index_head blue_kit light_tab_head tab_index_head_clone" style="display: -webkit-box;
opacity: 0;">

A mail sent to Google chromium.org Groups for Help的更多相关文章

  1. CEF中文教程(google chrome浏览器控件) -- Windows下编译Chromium

    CEF中文教程(google chrome浏览器控件) -- CEF简介 2013-04-10 16:48 42928人阅读 评论(4) 收藏 举报  分类: CEF(2)    目录(?)[+]   ...

  2. Chromium Embedded Framework 中文文档(简介)

    转自:http://www.cnblogs.com/think/archive/2011/10/06/CEF-Introduce.html 简介 Chromium Embedded Framework ...

  3. 【转载】google搜索从入门到精通

    原文地址:http://www.cnblogs.com/helloIT/articles/5095668.html /***************************************** ...

  4. Delphi中Chrome Chromium、Cef3学习笔记(一)

    原文   http://blog.csdn.net/xtfnpgy/article/details/46635225   官方下载地址:https://cefbuilds.com/ CEF简介: 嵌入 ...

  5. [开源]Google code Android开源项目(一)

    [Android分享] [开源]Google code Android开源项目(一) [复制链接]     449122717 2 主题 2 好友 816 积分 No.4 中级开发者 升级  19.3 ...

  6. GOOGLE CODE ANDROID 开源项目 集合

    转:http://blog.csdn.net/dellheng/article/details/7163333 1.        ZXing  http://code.google.com/p/zx ...

  7. 【转载】showModalDialog returnValue is undefined in Google Chrome

    showModalDialog returnValue is undefined in Google Chrome Posted on August 22, 2012by briancaos For ...

  8. Chromium Embedded Framework

    关于CEF 近期由于工作需要开始研究了Google的Chromium Embedded Framework(CEF),这是一个基于Google Chromium开源代码的项目,使用CEF可以很方便的在 ...

  9. 通过ipv6访问 g o o g l e

    Google.Youtube.Facebook等均支持IPv6访问,IPv4网络的用户大部分都无法访问,比如Gmail,Google Docs等等各种相关服务.而该类网站大部分均已接入IPv6网络,因 ...

随机推荐

  1. android下载

    1. 源码下载链接: http://source.android.com/source/downloading.html 参考链接: Android源码下载方法详解 2. SDK下载 http://d ...

  2. mysql max和count、limit优化

    1.max 的优化记得要对max里面的字段使用索引,可以大大加快速度 2.count的优化,count(*)和count(id) 的结果可能是不一样的,因为可能存在null的情况 3.distinct ...

  3. Linux命令-目录处理命令:ls

    ls 查看当前目文件 ls -a  查看当前目录的所有文件(--all所有文件) 以"."开头的文件是隐藏文件. ls / 查看根目录的文件 ls -l 查看当前目录文件(--lo ...

  4. 利用docker-maven-plugin快速交测

    目的 由开发环境交测的时候,通过docker镜像简化环境搭建及项目部署的过程. 环境描述 项目开发环境: windowns7 在windowns7中通过VMware Workstation安装Cent ...

  5. Java运行Python脚本的几种方式

    由于在项目需要执行Python,找寻相关资料,总结出以下几种方式: 直接执行Python脚本代码 引用 org.python包 PythonInterpreter interpreter = new ...

  6. Linux安装Scala步骤

    1.到官方下载tgz的安装包. http://www.scala-lang.org/download/ 注意:在最下面的Other Resources中 2.下载后将压缩包放在/usr/local目录 ...

  7. Out of Hay(poj2395)(并查集)

    Out of Hay Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11580   Accepted: 4515 Descr ...

  8. 每日英语:When Social Skills Are A Warning

    An uncle starts believing all your sarcastic comments. Or a kindhearted friend never understands any ...

  9. pycharm编写spark程序,导入pyspark包

    一种方法: File --> Default Setting --> 选中Project Interpreter中的一个python版本-->点击右边锯齿形图标(设置)-->选 ...

  10. std::string与output-operator"<<"的兼容问题

    经查阅资料得知,“在某些编译器下std::string,需要使用c_str()才能作为output-operator "<<" 的参数” std::string tit ...