...
X窗口除了图像buffer,本身的元属性和扩展属性也非常多,最基本的比如尺寸、坐标、层级、支持的操作等等。就是要Android的窗口特性要匹配X窗口的特性,在Linux上可以怎么操作窗口,在FDE上就可以怎么操作窗口。并且两端窗口的属性状态都是实时匹配的,比如在Android中手动调整了窗口大小,窗口管理器就执行ConfigureWindow同步更新X窗口大小,如果Linux程序调整了窗口大小,Android中就通过ActivitiyTaskManagerService来resizeTask。
Android和Linux剪贴板同步
在上一个使用VNC原理的融合方案中,需要将Android输入法产生的字符传到VNCServer再发送到Linux输入法,而这个方案中Xservr本身就有这样的接口,可以直接发送字符到Xserver。剪贴板的支持则是将Android的ClipBoardManager和Xserver和Selection相关协议对接起来就可以实现。在FDE在上一个使用VNC原理的融合方案中,需要将Android输入法产生的字符传到VNCServer再发送到Linux输入法,而这个方案中Xservr本身就有这样的接口,可以直接发送字符到Xserver。剪贴板的支持则是将Android的ClipBoardManager和Xserver的Selection相关协议对接起来就可以实现。在FDE-X11中,采用的方法是新建一个Window做为剪贴板管理者,实时接收和发送剪贴板内容,并且将这个内容与Android端同步,即实现了两端使用的是同一个剪贴板的效果。
...