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开发优化之——对界面UI的优化(1)

    在Android应用开发过程中,屏幕上控件的布局代码和程序的逻辑代码通常是分开 的.界面的布局代码是放在一个独立的xml文件中的,这个文件里面是树型组织的,控制着页面的布局.通常,在这个页面中会用到很 ...

  2. Linux下connect超时处理

    1.前言 最近在写一个测试工具,要求快速的高效率的扫描出各个服务器开放了哪些端口.当时想了一下,ping只能检测ip,判断服务器的网络是连通的,而不能判断是否开放了端口.我们知道端口属于网络的传输层, ...

  3. numpy 文件存取 npy、npz

    转处:http://blog.csdn.net/pipisorry/article/details/39088003 NumPy提供了多种文件操作函数方便我们存取数组内容. 文件存取的格式:二进制和文 ...

  4. Mysql 比较运算符详解

    熟悉了最简单的算术运算符,再来看一下比较运算符.当使用SELECT 语句进行查询时,MySQL允许用户对表达式的左边操作数和右边操作数进行比较,比较结果为真,则返回1,为假则返回0,比较结果不确定则返 ...

  5. 常用音频软件:Wavesufer

    作者:桂. 时间:2017-06-02  10:23:39 链接:http://www.cnblogs.com/xingshansi/p/6932408.html 前言 只列举两个自己用过的(wave ...

  6. HttpOperater

    using System; using System.IO; using System.Linq; using System.Net; using System.Text; using System. ...

  7. Go语言核心之美 4.3-多返回值

    在Go语言中.函数能够有多个返回值,这个特性我们已经在之前的样例见过非常多,非常多标准库函数都会返回两个值,一个是期望得到的函数执行结果,另外一个是函数出错时的错误值. 以下的程序是findlinks ...

  8. Hadoop-2.2.0中文文档—— Shell命令

    FS Shell 调用文件系统(FS)Shell命令应使用 bin/hadoop fs <args>的形式. 全部的的FS shell命令使用URI路径作为參数.URI格式是scheme: ...

  9. CXSprite.h文件

    #ifndef __XSprite_H__ #define __XSprite_H__ #include "CocoHead.h" #define BTN_FRAME_AMOUNT ...

  10. apue编程之参考du代码利用递归写的一个简单的du命令的源代码

    #include <stdio.h> #include <stdlib.h> #include <glob.h> #include <string.h> ...