CN115309315B - Wayland环境下X应用的截图方法、系统及介质 - Google Patents

Wayland环境下X应用的截图方法、系统及介质 Download PDF

Info

Publication number
CN115309315B
CN115309315B CN202211240560.5A CN202211240560A CN115309315B CN 115309315 B CN115309315 B CN 115309315B CN 202211240560 A CN202211240560 A CN 202211240560A CN 115309315 B CN115309315 B CN 115309315B
Authority
CN
China
Prior art keywords
wayland
application
xwayland
synthesizer
screen image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211240560.5A
Other languages
English (en)
Other versions
CN115309315A (zh
Inventor
王勇军
周磊
张铎
陈霖翔
刘意虎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kirin Software Co Ltd
Original Assignee
Kirin Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kirin Software Co Ltd filed Critical Kirin Software Co Ltd
Priority to CN202211240560.5A priority Critical patent/CN115309315B/zh
Publication of CN115309315A publication Critical patent/CN115309315A/zh
Application granted granted Critical
Publication of CN115309315B publication Critical patent/CN115309315B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Digital Computer Display Output (AREA)

Abstract

本发明公开了一种Wayland环境下X应用的截图方法、系统及介质,本发明Wayland环境下X应用的截图方法包括:通过Xwayland截获X11应用发起针对指定的截图接口的调用请求;通过Xwayland判断该调用请求是否为获取根窗口内容,若为获取根窗口内容,则通过Xwayland从Wayland合成器获取当前屏幕图像并返回给X11应用,从而在发现X11应用需要获取窗口或屏幕内容时从Wayland合成器中获取当前的显示图像然后返回给X11应用,能够解决wayland环境下通过X11协议获取窗口或屏幕内容类应用不能使用的问题。

Description

Wayland环境下X应用的截图方法、系统及介质
技术领域
本发明涉Linux操作系统的X应用开发领域,具体涉及一种Wayland环境下X应用的截图方法、系统及介质。
背景技术
Wayland是一个协议(Protocol),它定义了Wayland客户端如何与Wayland合成器通讯。鉴于Wayland协议相对X11协议的优势,特别是在高分辨率、高刷新率方面提供的更好支持,开源社区已经全面转向Wayland进行开发,各大系统发行版本也开始使用Wayland作为默认的图形显示协议。但一方面大多数用于Linux的游戏、图形密集型等专业应用程序仍是使用X11编写,只能通过Xwayland(Wayland协议的X应用兼容服务模块)进行兼容,Xwayland用于提供Wayland环境下X应用(基于X11协议开发的各种运行于X Window system的应用)兼容运行的一个环境,可以看作是XServer的一个实现。与其他XServer实现的区别在于,在Xwayland底层,通过Wayland协议与Wayland合成器通信,Xwayland可以看作是一个Wayland客户端;另一方面对于大量的基于GTK2、Qt4、X11等开发的应用需要重新基于Wayland重构,否则只能通过Xwayland进行兼容运行。在Wayland环境下,X应用(X11 应用程序)通过XWayland兼容运行的架构如图1所示。Xwayland是XServer的一个实现,X应用连接到 Xwayland,跟连接到真实的X服务器一样,Xwayland 负责处理所有 X11 请求。另一方面,Xwayland 同时也是一个连接到 Wayland 合成器的 Wayland 客户端。X11 窗口管理器(XWM) 是 Wayland 合成器的一个组成部分。 XWM 使用通常的 X11 窗口管理协议来管理Xwayland 中的所有 X11 窗口。同时XWM 充当 Xwayland 窗口状态和 Wayland 合成器的窗口管理器 (WWM) 之间的桥梁。这样 WWM 可以管理所有窗口,包括原生 Wayland 和 X11(Xwayland) 窗口。wayland合成器同时也是一个X11客户端。
但是,使用Xwayland进行X11应用兼容存在不少问题:1、Xwayland是一个wayland客户端,它接收合成器发送过来的输入事件,并转发给对应X11窗口,同时将X11窗口的内容提交给合成器进行显示。2、最终的显示图形由wayland合成器生成,Xwayland中不存在途径获取当前的屏幕显示内容。因为上述两点原因,通过X11协议获取窗口或屏幕内容的这类软件将不能正常使用,比如截图、录屏、远程桌面等。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种Wayland环境下X应用的截图方法、系统及介质,本发明能够解决wayland环境下通过X11协议获取窗口或屏幕内容类应用不能使用的问题。
为了解决上述技术问题,本发明采用的技术方案为:
一种Wayland环境下X应用的截图方法,包括:
S101,通过Xwayland截获X11应用发起针对指定的截图接口的调用请求;
S102,通过Xwayland判断该调用请求是否为获取根窗口内容,若为获取根窗口内容,则跳转步骤S103;
S103,通过Xwayland从Wayland合成器获取当前屏幕图像并返回给X11应用。
可选地,步骤S101中指定的截图接口是指GetImage函数接口;步骤S101通过Xwayland截获X11应用发起针对指定的截图接口的调用请求是指:通过Xwayland处理向量数组ProcVector中定制的第73项处理函数,来截获X11应用发起针对GetImage函数接口的调用请求。
可选地,步骤S101中指定的截图接口是指ShmGetImage函数接口;步骤S101通过Xwayland截获X11应用发起针对指定的截图接口的调用请求是指:通过Xwayland处理向量数组ProcVector中的MIT-SHM扩展处理函数中定制的分发函数,来截获X11应用发起针对ShmGetImage函数接口的调用请求。
可选地,步骤S101中指定的截图接口是指CopyArea函数接口;步骤S101通过Xwayland截获X11应用发起针对指定的截图接口的调用请求是指:通过Xwayland处理向量数组ProcVector中定制的第62项处理函数,来截获X11应用发起针对CopyArea函数接口的调用请求。
可选地,步骤S103包括:
S201,通过Xwayland向Wayland合成器发起获取当前屏幕图像的请求并开始计时;
S202,判断Xwayland在指定时间内是否从Wayland合成器获取当前屏幕图像成功,若从Wayland合成器获取当前屏幕图像成功,则直接将从Wayland合成器获取的当前屏幕图像返回给X11应用;否则将最近一次从Wayland合成器获取的当前屏幕图像返回给X11应用。
可选地,步骤S202中从Wayland合成器获取当前屏幕图像成功时,从Wayland合成器获取的当前屏幕图像被存储在指定的共享内存空间中,使得在从Wayland合成器获取当前屏幕图像失败时所述共享内存空间中仍然存储有最近一次从Wayland合成器获取的当前屏幕图像,所述将最近一次从Wayland合成器获取的当前屏幕图像返回给X11应用是指将所述共享内存空间中存储的最近一次从Wayland合成器获取的当前屏幕图像当前屏幕图像返回给X11应用。
可选地,步骤S102中还包括在该调用请求非获取根窗口内容时,通过Xwayland直接将当前窗口内容并返回给X11应用。
可选地,步骤S102通过Xwayland判断该调用请求是否为获取根窗口内容包括:获取该调用请求所需获取的窗口内容,将该调用请求所需获取的窗口内容与在全局变量中保存的根窗口进行比较以判断两者是否一致,如果两者一致则判定该调用请求为获取根窗口内容,否则判定该调用请求非获取根窗口内容;所述全局变量中保存的根窗口是指Xwayland在初始化时所创建的零大小的根窗口。
此外,本发明还提供一种Wayland环境下X应用的截图系统,包括相互连接的微处理器和存储器,所述微处理器被编程或配置以执行所述Wayland环境下X应用的截图方法。
此外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序用于被微处理器编程或配置以执行所述Wayland环境下X应用的截图方法。
和现有技术相比,本发明主要具有下述优点:获取窗口或屏幕内容的X应用,通常需要截取根(root)窗口内容并及时返回数据,而Xwayland中无法获取屏幕显示内容,为了解决上述问题,本发明Wayland环境下X应用的截图方法通过Xwayland截获X11应用发起针对指定的截图接口的调用请求;通过Xwayland判断该调用请求是否为获取根窗口内容,若为获取根窗口内容,则通过Xwayland从Wayland合成器获取当前屏幕图像并返回给X11应用,从而在发现X11应用需要获取窗口或屏幕内容时从Wayland合成器中获取当前的显示图像然后返回给X11应用,能够解决wayland环境下通过X11协议获取窗口或屏幕内容类应用包括(截图、录屏、远程桌面、会议共享等窗口)不能使用的问题。
附图说明
图1为现有技术中X11应用通过XWayland兼容运行的架构示意图。
图2为本发明实施例方法的基本流程示意图。
具体实施方式
下面参照附图对本发明的实施例进行详细的说明,在描述过程中省略了对于本发明来说不必要的细节和功能,以防止对本发明的理解造成混淆。
获取窗口或屏幕内容的X应用,通常需要截取根(root)窗口内容并及时返回数据,而Xwayland中无法获取屏幕显示内容,为了解决上述问题,如图2所示,本实施例Wayland环境下X应用的截图方法包括:
S101,通过Xwayland截获X11应用发起针对指定的截图接口的调用请求;
S102,通过Xwayland判断该调用请求是否为获取根窗口内容,若为获取根窗口内容,则跳转步骤S103;
S103,通过Xwayland从Wayland合成器获取当前屏幕图像并返回给X11应用。
作为一种可选的实施方式,步骤S101中指定的截图接口是指GetImage函数接口;步骤S101通过Xwayland截获X11应用发起针对指定的截图接口的调用请求是指:通过Xwayland处理向量数组ProcVector中定制的第73项处理函数,来截获X11应用发起针对GetImage函数接口的调用请求。Xwayland处理向量数组ProcVector的大小为256,其中0到127为核心协议处理函数,通过替换第73项处理函数,可方便实现截获X11应用发起针对GetImage函数接口的调用请求。
作为一种可选的实施方式,步骤S101中指定的截图接口是指ShmGetImage函数接口;步骤S101通过Xwayland截获X11应用发起针对指定的截图接口的调用请求是指:通过Xwayland处理向量数组ProcVector中的MIT-SHM扩展处理函数中定制的分发函数,来截获X11应用发起针对ShmGetImage函数接口的调用请求。Xwayland处理向量数组ProcVector的大小为256,从128(EXTENSION_BASE)开始为扩展(extension)处理函数,扩展处理函数实际上是扩展的分发函数,相当于是一个二级分发结构,扩展的分发(dispatch)函数在ProcVector数组中的位置是由扩展的注册顺序决定的。本实施例中,Xwayland处理向量数组ProcVector中的MIT-SHM扩展处理函数中定制分发函数包括:
步骤1,获取Xwayland处理向量数组ProcVector中的MIT-SHM扩展处理函数的入口。若获取入口失败,则判定Xwayland处理向量数组ProcVector中不存在MIT-SHM扩展处理函数,结束并退出;否则,保存原有的分发函数为SavedShmDispatch,即:
SavedShmDispatch = ProcVector[shm->index + EXTENSION_BASE]
上式中,shm为MIT-SHM扩展处理函数的入口,shm->index为入口的索引号,EXTENSION_BASE为常数128,ProcVector[shm->index + EXTENSION_BASE] MIT-SHM扩展处理函数中原有的分发函数的位置,记录有原有的分发函数,跳转下一步:
步骤2,将MIT-SHM扩展处理函数中原有的分发函数的位置ProcVector[shm->index + EXTENSION_BASE]替换为定制的分发函数,即:
ProcVector[shm->index + EXTENSION_BASE] = xwl_proc_shm_dispatch
其中,ProcVector[shm->index + EXTENSION_BASE] 为MIT-SHM扩展处理函数中原有的分发函数的位置,通过赋值修改为定制的分发函数xwl_proc_shm_dispatch,在定制的分发函数xwl_proc_shm_dispatch中,先判断是否是ShmGetImage函数接口的调用请求X_ShmGetImage,如果不是则调用原有的分发函数SavedShmDispatch处理。
作为一种可选的实施方式,步骤S101中指定的截图接口是指CopyArea函数接口;步骤S101通过Xwayland截获X11应用发起针对指定的截图接口的调用请求是指:通过Xwayland处理向量数组ProcVector中定制的第62项处理函数,来截获X11应用发起针对CopyArea函数接口的调用请求,通过替换第62项处理函数,可方便实现截获X11应用发起针对CopyArea函数接口的调用请求。
需要说明的是,在定时Xwayland处理向量数组ProcVector以通过Xwayland截获X11应用发起针对指定的截图接口的调用请求时,定制的处理函数/分发函数在截获处理中同时需要保存原有的处理方式,以便在无需特殊处理的情况下回退到默认处理方式。
本实施例中,步骤S102通过Xwayland判断该调用请求是否为获取根窗口内容包括:获取该调用请求所需获取的窗口内容,将该调用请求所需获取的窗口内容与在全局变量中保存的根窗口进行比较以判断两者是否一致,如果两者一致则判定该调用请求为获取根窗口内容,否则判定该调用请求非获取根窗口内容;所述全局变量中保存的根窗口是指Xwayland在初始化时所创建的零大小的根窗口。本实施例中,步骤S102中还包括在该调用请求非获取根窗口内容时,通过Xwayland直接将当前窗口内容并返回给X11应用。
Wayland作为异步协议,Wayland合成器只能通过事件(event)将数据发送给Xwayland,不能及时返回获取窗口或屏幕内容的X应用所需要的数据,因此Xwayland、Wayland合成器之间可能发生死锁。Xwayland和Wayland合成器之间存在死锁的可能:Xwayland发送了一个wayland请求,然后阻塞等待该请求对应的event。而此时Xwayland发送的请求还没被Wayland合成器处理,wayland合成器还在处理一个X11应用的窗口,向Xwayland发送了X11请求,然后等待X11请求的回复。Xwayland和Wayland合成器相互等待对方,造成了死锁。针对上述问题,本实施例步骤S103中采用了超时机制来解决Xwayland、Wayland合成器之间发生死锁。具体地,步骤S103包括:
S201,通过Xwayland向Wayland合成器发起获取当前屏幕图像的请求并开始计时;
S202,判断Xwayland在指定时间内是否从Wayland合成器获取当前屏幕图像成功,若从Wayland合成器获取当前屏幕图像成功,则直接将从Wayland合成器获取的当前屏幕图像返回给X11应用;否则将最近一次从Wayland合成器获取的当前屏幕图像返回给X11应用。
为了提升将最近一次从Wayland合成器获取的当前屏幕图像返回给X11应用的效率,本实施例中步骤S202中从Wayland合成器获取当前屏幕图像成功时,从Wayland合成器获取的当前屏幕图像被存储在指定的共享内存空间中,使得在从Wayland合成器获取当前屏幕图像失败时所述共享内存空间中仍然存储有最近一次从Wayland合成器获取的当前屏幕图像,所述将最近一次从Wayland合成器获取的当前屏幕图像返回给X11应用是指将所述共享内存空间中存储的最近一次从Wayland合成器获取的当前屏幕图像当前屏幕图像返回给X11应用,从而不需要额外的内存复制操作,即可快速将最近一次从Wayland合成器获取的当前屏幕图像返回给X11应用,从而达到提升将最近一次从Wayland合成器获取的当前屏幕图像返回给X11应用的效率的目的。通过使用共享内存和请求超时的机制,能够有效避免Xwayland和Wayland合成器之间的死锁。
本实施例中,步骤S103中通过Xwayland从Wayland合成器获取当前屏幕图像并返回给X11应用后,X11应用可根据需要直接使用当前屏幕图像(例如进行录屏、远程桌面、会议共享操作),或者在当前屏幕图像中截取并使用指定区域的图像(对其他窗口的截屏操作)。
此外,本实施例还提供一种Wayland环境下X应用的截图系统,包括相互连接的微处理器和存储器,该微处理器被编程或配置以执行前述Wayland环境下X应用的截图方法。此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序用于被微处理器编程或配置以执行前述Wayland环境下X应用的截图方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (9)

1.一种Wayland环境下X应用的截图方法,其特征在于,包括:
S101,通过Xwayland截获X11应用发起针对指定的截图接口的调用请求;
S102,通过Xwayland判断该调用请求是否为获取根窗口内容,若为获取根窗口内容,则跳转步骤S103;
S103,通过Xwayland从Wayland合成器获取当前屏幕图像并返回给X11应用;
步骤S102通过Xwayland判断该调用请求是否为获取根窗口内容包括:获取该调用请求所需获取的窗口内容,将该调用请求所需获取的窗口内容与在全局变量中保存的根窗口进行比较以判断两者是否一致,如果两者一致则判定该调用请求为获取根窗口内容,否则判定该调用请求非获取根窗口内容;所述全局变量中保存的根窗口是指Xwayland在初始化时所创建的零大小的根窗口。
2.根据权利要求1所述的Wayland环境下X应用的截图方法,其特征在于,步骤S101中指定的截图接口是指GetImage函数接口;步骤S101通过Xwayland截获X11应用发起针对指定的截图接口的调用请求是指:通过Xwayland处理向量数组ProcVector中定制的第73项处理函数,来截获X11应用发起针对GetImage函数接口的调用请求。
3.根据权利要求1所述的Wayland环境下X应用的截图方法,其特征在于,步骤S101中指定的截图接口是指ShmGetImage函数接口;步骤S101通过Xwayland截获X11应用发起针对指定的截图接口的调用请求是指:通过Xwayland处理向量数组ProcVector中的MIT-SHM扩展处理函数中定制的分发函数,来截获X11应用发起针对ShmGetImage函数接口的调用请求。
4.根据权利要求1所述的Wayland环境下X应用的截图方法,其特征在于,步骤S101中指定的截图接口是指CopyArea函数接口;步骤S101通过Xwayland截获X11应用发起针对指定的截图接口的调用请求是指:通过Xwayland处理向量数组ProcVector中定制的第62项处理函数,来截获X11应用发起针对CopyArea函数接口的调用请求。
5.根据权利要求1所述的Wayland环境下X应用的截图方法,其特征在于,步骤S103包括:
S201,通过Xwayland向Wayland合成器发起获取当前屏幕图像的请求并开始计时;
S202,判断Xwayland在指定时间内是否从Wayland合成器获取当前屏幕图像成功,若从Wayland合成器获取当前屏幕图像成功,则直接将从Wayland合成器获取的当前屏幕图像返回给X11应用;否则将最近一次从Wayland合成器获取的当前屏幕图像返回给X11应用。
6.根据权利要求5所述的Wayland环境下X应用的截图方法,其特征在于,步骤S202中从Wayland合成器获取当前屏幕图像成功时,从Wayland合成器获取的当前屏幕图像被存储在指定的共享内存空间中,使得在从Wayland合成器获取当前屏幕图像失败时所述共享内存空间中仍然存储有最近一次从Wayland合成器获取的当前屏幕图像,所述将最近一次从Wayland合成器获取的当前屏幕图像返回给X11应用是指将所述共享内存空间中存储的最近一次从Wayland合成器获取的当前屏幕图像当前屏幕图像返回给X11应用。
7.根据权利要求1所述的Wayland环境下X应用的截图方法,其特征在于,步骤S102中还包括在该调用请求非获取根窗口内容时,通过Xwayland直接将当前窗口内容并返回给X11应用。
8.一种Wayland环境下X应用的截图系统,包括相互连接的微处理器和存储器,其特征在于,所述微处理器被编程或配置以执行权利要求1~7中任意一项所述Wayland环境下X应用的截图方法。
9.一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其特征在于,所述计算机程序用于被微处理器编程或配置以执行权利要求1~7中任意一项所述Wayland环境下X应用的截图方法。
CN202211240560.5A 2022-10-11 2022-10-11 Wayland环境下X应用的截图方法、系统及介质 Active CN115309315B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211240560.5A CN115309315B (zh) 2022-10-11 2022-10-11 Wayland环境下X应用的截图方法、系统及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211240560.5A CN115309315B (zh) 2022-10-11 2022-10-11 Wayland环境下X应用的截图方法、系统及介质

Publications (2)

Publication Number Publication Date
CN115309315A CN115309315A (zh) 2022-11-08
CN115309315B true CN115309315B (zh) 2023-01-20

Family

ID=83867676

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211240560.5A Active CN115309315B (zh) 2022-10-11 2022-10-11 Wayland环境下X应用的截图方法、系统及介质

Country Status (1)

Country Link
CN (1) CN115309315B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115599268A (zh) * 2022-11-25 2023-01-13 统信软件技术有限公司(Cn) 一种屏幕截图方法、计算设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017167127A1 (zh) * 2016-03-31 2017-10-05 阿里巴巴集团控股有限公司 一种图形合成方法、窗口设置方法及系统
CN114090010A (zh) * 2021-10-12 2022-02-25 元心信息科技集团有限公司 X11系统的移植方法、装置、电子设备及可读存储介质
CN114896002A (zh) * 2022-04-13 2022-08-12 北京智象信息技术有限公司 一种基于Wayland协议的浏览器应用窗口层级切换方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9509709B2 (en) * 2015-03-19 2016-11-29 International Business Machines Corporation Mechanism to augment IPS/SIEM evidence information with process history snapshot and application window capture history
CN110096326B (zh) * 2019-04-30 2021-08-17 维沃移动通信有限公司 一种截屏方法、终端设备及计算机可读存储介质
CN113448662A (zh) * 2020-03-27 2021-09-28 海信电子科技(武汉)有限公司 窗口图像显示方法、设备及存储介质
CN112307528B (zh) * 2020-11-25 2024-09-24 北京明朝万达科技股份有限公司 电子文档的安全处理方法及装置
CN113473214B (zh) * 2021-03-25 2023-05-02 统信软件技术有限公司 一种屏幕录制方法、装置、计算设备及可读存储介质
CN114385304B (zh) * 2022-03-23 2022-07-08 麒麟软件有限公司 安卓应用调用Linux截图工具的方法
CN114741081B (zh) * 2022-06-13 2022-08-09 北京麟卓信息科技有限公司 一种基于异构缓存访问的跨运行环境显示输出共享方法
CN114969747B (zh) * 2022-08-02 2022-09-30 北京麟卓信息科技有限公司 一种桌面系统上安卓应用的限制截屏方法
CN115131488B (zh) * 2022-08-31 2022-11-29 麒麟软件有限公司 wayland图形显示环境下管理显示缓存的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017167127A1 (zh) * 2016-03-31 2017-10-05 阿里巴巴集团控股有限公司 一种图形合成方法、窗口设置方法及系统
CN114090010A (zh) * 2021-10-12 2022-02-25 元心信息科技集团有限公司 X11系统的移植方法、装置、电子设备及可读存储介质
CN114896002A (zh) * 2022-04-13 2022-08-12 北京智象信息技术有限公司 一种基于Wayland协议的浏览器应用窗口层级切换方法及装置

Also Published As

Publication number Publication date
CN115309315A (zh) 2022-11-08

Similar Documents

Publication Publication Date Title
US10074206B1 (en) Network-optimized graphics library for virtualized graphics processing
CN109951547B (zh) 事务请求并行处理方法、装置、设备和介质
CN106797388B (zh) 跨系统多媒体数据编解码方法、装置、电子设备和计算机程序产品
US20140143305A1 (en) Apparatus and system for providing software service using software virtualization and method thereof
CN111736850B (zh) 图像处理方法、装置、服务器及介质
CN110457038B (zh) 附属应用端的卡片显示方法、装置、设备以及存储介质
CN111488196A (zh) 渲染方法及装置、存储介质、处理器
US20050086237A1 (en) Shared queues in shared object space
CN111026493B (zh) 界面渲染的处理方法和装置
CN115309315B (zh) Wayland环境下X应用的截图方法、系统及介质
US20140059114A1 (en) Application service providing system and method and server apparatus and client apparatus for application service
US20200082495A1 (en) Interaction monitoring for virtualized graphics processing
CN112102457A (zh) 3d渲染方法及系统
US10318343B2 (en) Migration methods and apparatuses for migrating virtual machine including locally stored and shared data
CN112948025A (zh) 数据加载方法、装置及存储介质、计算设备、计算系统
CN110930325B (zh) 基于人工智能的图像处理方法、装置及存储介质
CN112015476B (zh) 显卡驱动方法、装置、电子设备以及存储介质
CN109656670B (zh) 一种页面渲染方法及装置
CN114090168A (zh) 一种qemu虚拟机图像输出窗口自适应调整方法
CN111338866B (zh) 基于影子分身虚机的云主机压力测试方法及系统
CN109672931B (zh) 用于处理视频帧的方法和装置
CN113626099B (zh) 应用程序的启动方法、装置及电子设备
CN115599268A (zh) 一种屏幕截图方法、计算设备和存储介质
US11095745B1 (en) Cloud-based scheduling of data operations to an object storage using an operation pool
CN113784075A (zh) 一种屏幕录像读取方法、系统及计算设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant