窗口显示方法及装置与流程

文档序号:11411335阅读:220来源:国知局
窗口显示方法及装置与流程

本发明实施例涉及计算机技术领域,尤其涉及一种窗口显示方法及装置。



背景技术:

目前,在电视中可以同时运行多个应用程序,并在电视的显示屏幕中以窗口叠加的形式显示多个应用程序的窗口。

在用户在电视中启动应用程序之后,应用程序则绘制需要显示的窗口,并在屏幕上显示绘制的窗口,在应用程序运行的过程中,应用程序的窗口中的内容通常会根据用户的操作、或者预先设置(例如页面中的广告每10秒更新一次)发生变化,当应用程序的窗口中的发生变化时,应用程序则对窗口进行重新绘制,并在电视屏幕的最顶层显示重新绘制的窗口。在实际应用过程中,为了便于用户的操作和观看,电视通常需要将用户当前操作的窗口显示在最顶层,但是,在上述方式中,当用户当前没有操作的窗口中的内容发生变化时,该应用程序会对该窗口进行重新绘制,并将重新绘制的窗口显示在电视屏幕的最顶层,使得用户当前没有操作的窗口会覆盖用户当前正在操作的窗口,导致窗口显示的合理性差。

例如,假设电视当前全屏显示应用程序1的窗口1,并小屏幕显示的应用程序2的窗口2,且用户当前正在窗口2进行操作,则窗口2位于窗口1之上。当应用程序1的窗口1中的内容发生自动更新时,则应用程序1重新绘制窗口1,并将窗口1显示在屏幕的顶层,使得窗口1覆盖用户当前正在操作的窗口2,导致电视中的窗口显示的合理性差。



技术实现要素:

本发明实施例提供一种窗口显示方法及装置,提高了窗口显示的合理性。

第一方面,本发明实施例提供一种窗口显示方法,应用于电视,所述方法包括:

获取所述电视中的应用程序生成的窗口更新请求,所述窗口更新请求包括待更新的第一窗口和所述第一窗口的标识,所述第一窗口为所述电视当前运行的窗口;

获取第一显示窗口集合,所述第一显示窗口集合包括在所述电视上完全显示的窗口和部分显示的窗口;

根据所述第一窗口的标识,判断所述第一显示窗口集合中是否包括所述第一窗口;

若是,获取所述第一显示窗口集合中各窗口的属性信息,并根据所述待更新的第一窗口、所述第一显示窗口集合中除所述第一窗口之外的其它窗口、所述第一显示窗口集合中各窗口的属性信息,显示所述第一显示窗口集合中的各窗口。

在一种实施方式中,若判断所述显示窗口集合中不包括所述第一窗口,所述方法还包括:

丢弃所述窗口更新请求。

在另一种实施方式中,窗口的属性信息包括窗口的窗口次序和显示位置;相应的,获取所述第一显示窗口集合中各窗口的属性信息,包括:

确定所述第一显示窗口集合中各窗口对应的应用程序;

分别在各所述应用程序的配置文件中,获取各所述窗口的显示位置;

获取各所述窗口对应的最后操作时刻;

根据各所述窗口对应的最后操作时刻,确定各所述窗口的窗口次序。

在另一种实施方式中,根据所述待更新的第一窗口、所述第一显示窗口集合中除所述第一窗口之外的其它窗口、所述第一显示窗口集合中各窗口的属性信息,显示所述第一显示窗口集合中的各窗口,包括:

按照窗口次序从小到大的顺序,根据所述第一显示窗口集合中各窗口的显示位置,依次在预设窗口上叠加所述待更新的第一窗口和所述第一显示窗口集合中除所述第一窗口之外的其它窗口,得到合成窗口;

显示所述合成窗口。

在另一种实施方式中,所述方法还包括:

获取窗口创建请求,所述窗口创建请求中包括待显示的第二窗口;

获取所述电视当前显示的至少一个第三窗口、及各所述第三窗口的属性信息;

获取所述第二窗口的属性信息,并根据所述第二窗口的属性信息和各所述第三窗口的属性信息,判断所述第二窗口是否被所述第三窗口完全覆盖;

若判断结果为否,则根据所述第二窗口的属性信息和各所述第三窗口的属性信息,显示所述第二窗口和各所述第三窗口。

在另一种实施方式中,所述方法还包括:

获取窗口关闭请求,所述窗口关闭请求包括第四窗口的标识,所述第四窗口为所述电视当前显示的任意一个窗口;

获取所述电视当前运行的第二显示窗口集合,所述第二显示窗口集合中包括所述电视当前显示的窗口和被所述当前显示的窗口完全覆盖的窗口;

在所述第二显示窗口集合中删除所述第五窗口,得到第三显示窗口集合;

根据所述第三显示窗口集合中各窗口的属性信息,显示所述第三显示窗口集合中的部分或全部窗口。

第二方面,本发明实施例提供一种窗口显示装置,包括第一获取模块、第二获取模块、判断模块、第三获取模块和显示模块,其中,

所述第一获取模块用于,获取所述电视中的应用程序生成的窗口更新请求,所述窗口更新请求包括待更新的第一窗口和所述第一窗口的标识,所述第一窗口为所述电视当前运行的窗口;

所述第二获取模块用于,确定第一显示窗口集合,所述第一显示窗口集合包括在所述电视上完全显示的窗口和部分显示的窗口;

所述判断模块用于,根据所述第一窗口的标识,判断所述第一显示窗口集合中是否包括所述第一窗口;

在所述判断模块判断所述第一显示窗口集合中包括所述第一窗口时,所述第三获取模块用于,获取所述第一显示窗口集合中各窗口的属性信息,所述显示模块用于,根据所述待更新的第一窗口、所述第一显示窗口集合中除所述第一窗口之外的其它窗口、所述第一显示窗口集合中各窗口的属性信息,显示所述第一显示窗口集合中的各窗口。

在一种实施方式中,所述装置还包括丢弃模块,其中,

所述丢弃模块用于,在所述判断模块判断所述显示窗口集合中不包括所述第一窗口时,丢弃所述窗口更新请求。

在另一种实施方式中,窗口的属性信息包括窗口的窗口次序和显示位置;相应的,所述第三获取模块获取所述第一显示窗口集合中各窗口的属性信息,包括:

确定所述第一显示窗口集合中各窗口对应的应用程序;

分别在各所述应用程序的配置文件中,获取各所述窗口的显示位置;

获取各所述窗口对应的最后操作时刻;

根据各所述窗口对应的最后操作时刻,确定各所述窗口的窗口次序。

在另一种实施方式中,所述显示模块根据所述待更新的第一窗口、所述第一显示窗口集合中除所述第一窗口之外的其它窗口、所述第一显示窗口集合中各窗口的属性信息,显示所述第一显示窗口集合中的各窗口,包括:

按照窗口次序从小到大的顺序,根据所述第一显示窗口集合中各窗口的显示位置,依次在预设窗口上叠加所述待更新的第一窗口和所述第一显示窗口集合中除所述第一窗口之外的其它窗口,得到合成窗口;

显示所述合成窗口。

在另一种实施方式中,所述装置还包括第四获取模块和第五获取模块,其中,

所述第四获取模块用于,获取窗口创建请求,所述窗口创建请求中包括待显示的第二窗口;

所述第五获取模块用于,获取所述电视当前显示的至少一个第三窗口、各所述第三窗口的属性信息、及所述第二窗口的属性信息;

所述判断模块还用于,根据所述第二窗口的属性信息和各所述第三窗口的属性信息,判断所述第二窗口是否被所述第三窗口完全覆盖;

所述显示模块还用于,在所述判断模块判断所述第二窗口未被所述第三窗口完全覆盖时,根据所述第二窗口的属性信息和各所述第三窗口的属性信息,显示所述第二窗口和各所述第三窗口。

在另一种实施方式中,所述装置还包括第六获取模块、第七获取模块和删除模块,其中,

所述第六获取模块用于,获取窗口关闭请求,所述窗口关闭请求包括第四窗口的标识,所述第四窗口为所述电视当前显示的任意一个窗口;

所述第七获取模块用于,获取所述电视当前运行的第二显示窗口集合,所述第二显示窗口集合中包括所述电视当前显示的窗口和被所述当前显示的窗口完全覆盖的窗口;

所述删除模块用于,在所述第二显示窗口集合中删除所述第五窗口,得到第三显示窗口集合;

所述显示模块还用于,根据所述第三显示窗口集合中各窗口的属性信息,显示所述第三显示窗口集合中的部分或全部窗口。

本发明实施例提供的窗口显示方法及装置,在应用程序对已经运行在电视中的第一窗口进行重新绘制之后,应用程序生成第一窗口对应的窗口更新请求,在电视获取得到该窗口更新请求之后,判断第一窗口当前是否显示在电视的显示屏幕上,若是,则根据电视当前显示的各个窗口的属性信息,对更新的第一窗口以及电视当前显示的其它窗口进行重新显示。在上述过程中,由应用程序对各自的窗口进行绘制,由电视中的窗口显示模块对各个应用程序绘制的窗口进行统一显示,避免应用程序分别对各自的窗口进行单独显示,进而避免用户当前没有操作的窗口覆盖用户当前正在操作的窗口,进而提高窗口显示的合理性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1a为本发明实施例提供的窗口显示方法的应用场景示意图;

图1b为本发明实施例提供的窗口创建、更新及关闭方法的流程示意图;

图2为本发明实施例提供的窗口显示方法的流程示意图一;

图3为本发明实施例提供的窗口显示过程的界面示意图一;

图4为本发明实施例提供的窗口显示方法的流程示意图二;

图5为本发明实施例提供的窗口显示过程的界面示意图二;

图6为本发明实施例提供的窗口显示方法的流程示意图三;

图7为本发明实施例提供的窗口显示装置的结构示意图一;

图8为本发明实施例提供的窗口显示装置的结构示意图二。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1a为本发明实施例提供的窗口显示方法的应用场景示意图。请参见图1a,电视中安装有多个应用程序,该应用程序可以为用户下载并安装在电视的、也可以为电视系统自带的。在应用程序运行的过程中,一个应用程序对应一个或多个窗口,每一个窗口中的内容可以根据用户的操作、或者预先设置进行更新。当多个窗口同时显示在电视的显示屏幕中时,该多个窗口通常根据用户对窗口的最后操作时刻在屏幕的不同窗口层次中显示,用户对窗口的最后操作时刻越晚,窗口在屏幕中的窗口层次越靠上,其中,用户当前操作的窗口通常位于屏幕的顶层。例如,在图1中,用户对窗口n的最后操作时刻晚于对窗口2的最后操作时刻,用户对窗口2的最后操作时刻晚于对窗口1的最后操作时刻。

在本申请中,在应用程序运行的过程中,应用程序根据需要显示的内容绘制窗口,并将绘制好的窗口发送给电视的窗口显示模块,并由窗口显示模块根据各个窗口的属性信息对窗口进行处理及显示。下面,结合图1b对窗口的创建、更新、关闭过程进行说明。图1b为本发明实施例提供的窗口创建、更新及关闭方法的流程示意图。请参见图1b,包括如下步骤:

s101、应用程序启动。s102、应用程序绘制窗口。s103、应用程序请求窗口显示模块显示绘制的窗口。s104、窗口显示模块根据电视中当前显示的所有窗口、及应用程序绘制的窗口,进行窗口显示。s105、窗口显示模块在预设队列中记录该窗口的标识。其中,s101-s105为窗口创建、显示的过程。

s106、应用程序的在电视中显示的窗口发生更新。s107、应用程序重新绘制窗口。s108、应用程序请求窗口显示模块重新显示该应用程序的窗口。s109、窗口显示模块根据电视中当前显示的所有窗口(预设队列中包括的窗口标识对应的窗口)、及应用程序重新绘制的窗口,重新进行窗口显示。其中,s106-s107为窗口更新、显示的过程。

s110、应用程序关闭窗口。s111、应用程序向窗口显示装置发送关闭通知。s112、窗口显示模块根据电视中当前显示的所有窗口(预设队列中包括的窗口标识对应的窗口)、及关闭通知,重新进行窗口显示。s113、窗口显示模块在预设队列中删除关闭窗口的标识。其中,s106-s107为窗口关闭、显示的过程。

在上述过程中,由应用程序对各自的窗口进行绘制,由窗口显示模块对各个应用程序绘制的窗口进行统一显示,使得窗口显示模块可以结合各个窗口的属性信息,对各个窗口进行合理的显示,避免用户当前没有操作的窗口覆盖用户当前正在操作的窗口,进而提高窗口显示的合理性。

下面,通过具体实施例,对本申请所示的技术方案进行详细说明。需要说明的是,下面几个具体实施例可以相互结合,对于相同或相似的内容,在不同的实施例中不再进行赘述。

图2为本发明实施例提供的窗口显示方法的流程示意图一。请参见图2,该方法可以包括:

s201、获取电视中的应用程序生成的窗口更新请求,窗口更新请求包括待更新的第一窗口和第一窗口的标识。

本发明实施例的执行主体为窗口显示装置,该窗口显示装置可以设置在电视中。

可选的,当应用程序生成窗口更新请求之后,应用程序可以通过预设接口向窗口显示装置发送窗口更新请求,例如,该预设窗口可以为flip接口。

第一窗口为电视当前运行的窗口,电视当前运行的窗口可以为电视中当前正在运行的应用程序对应的窗口。其中,第一窗口可能完整的显示在电视的屏幕上,该第一窗口也可能被屏幕上当前显示的其它窗口部分覆盖或完全覆盖。可选的,当第一窗口为用户当前正在操作的窗口,则第一窗口完整在显示在电视的屏幕上,当第一窗口不是用户当前正在操作的窗口时,则第一窗口可能被屏幕上当前显示的其它窗口部分覆盖或完全覆盖。

可选的,待更新的第一窗口为第一窗口对应的应用程序重新绘制的窗口。

当第一窗口为用户当前正在操作的窗口时,则窗口更新请求通常由用户对第一窗口的操作触发的。例如,用户对第一窗口中的按钮进行点击操作使得第一窗口中显示的内容发生变化,进而使得第一窗口对应的应用程序对第一窗口进行重新绘制,并生成窗口更新请求。

当第一窗口不是用户当前正在操作的窗口时,则窗口更新请求通常由应用程序的自动更新触发的。例如,第一窗口中包括广告,且第一窗口中的广告每10秒更换一次,则当第一窗口中的广告发生变化时,第一窗口对应的应用程序对第一窗口进行重新绘制,并生成窗口更新请求。

需要说明的是,窗口更新请求中还可以包括其它内容,例如,第一窗口的大小、第一窗口的显示位置等,在实际应用过程中,可以根据实际需要确定窗口更新请求中包括的内容,本发明实施例对此不作具体限定。

s202、获取第一显示窗口集合,第一显示窗口集合包括在电视上完全显示的窗口和部分显示的窗口。

在实际应用过程中,电视中可能同时运行多个应用程序,每一个运行的应用程序可能显示多个窗口,其中,部分窗口可能被其它窗口完全覆盖,部分窗口可能被其它窗口部分覆盖,部分窗口可能完全显示。

可选的,电视可以先获取当前运行的各个应用程序对应的所有窗口,并将所有窗口中完全显示和被部分覆盖的窗口确定为第一显示窗口集合中的窗口。

例如,假设电视中当前运行三个应用程序,分别记为应用程序1-应用程序3,应用程序1显示的窗口为窗口1,应用程序2显示的窗口为窗口2,应用程序3显示的窗口为窗口3。再假设窗口1和窗口2为全屏窗口,窗口3为非全屏窗口,窗口2将窗口1完全覆盖,窗口3将窗口2部分覆盖,窗口3位于显示屏的顶层,相应的,第一显示窗口集合包括窗口2和窗口3。

s203、根据第一窗口的标识,判断第一显示窗口集合中是否包括第一窗口。

若是,则执行s204-s205。

若否,则执行s206。

可选的,可以先获取第一显示窗口集合中各窗口的标识,并判断第一显示窗口集合中各窗口的标识中是否包括第一窗口的标识。

s204、获取第一显示窗口集合中各窗口的属性信息。

可选的,当窗口的属性信息包括窗口的窗口次序和显示位置时,可选的,可以通过如下可行的实现方式获取窗口的显示位置:确定第一显示窗口集合中各窗口对应的应用程序,分别在各应用程序的配置文件中,获取各窗口的显示位置。可选的,可以通过如下可行的实现方式获取窗口的窗口次序:获取各窗口对应的最后操作时刻,根据各窗口对应的最后操作时刻,确定各窗口的窗口次序,其中,最后操作时刻越晚,窗口次序越大,窗口在显示屏幕上的层次越靠前。

可选的,窗口的属性信息中还可以包括窗口的尺寸,相应的,可以在窗口对应的应用程序的配置文件中获取窗口的尺寸。

s205、根据待更新的第一窗口、第一显示窗口集合中除第一窗口之外的其它窗口、第一显示窗口集合中各窗口的属性信息,显示第一显示窗口集合中的各窗口。

可选的,可以通过如下可行的实现方式显示第一显示窗口集合中的各个窗口:按照窗口次序从小到大的顺序,根据第一显示窗口集合中各窗口的显示位置,依次在预设窗口上叠加待更新的第一窗口和第一显示窗口集合中除第一窗口之外的其它窗口,得到合成窗口,并显示合成窗口。

可选的,预设窗口可以为电视的桌面窗口、电视的默认背景窗口、预设空白窗口等,在实际应用过程中,可以根据实际需要设置该预设窗口。

例如,假设第一显示窗口集合中包括窗口1-窗口3,该窗口1-窗口3的窗口次序依次递增,则先根据窗口1的显示位置,在预设窗口中叠加窗口1,得到合成窗口1;再根据窗口2的显示位置,在合成窗口1上叠加窗口2,得到合成窗口2;再根据窗口3的显示位置,在合成窗口2上叠加窗口3,得到合成窗口3,并显示合成窗口3。

s206、丢弃窗口更新请求。

在判断电视当前显示的第一显示窗口集合中不包括第一窗口时,则说明第一窗口当前被完全覆盖,因此,丢弃窗口更新请求即可,且无需对电视当前显示的窗口进行重新显示。

本发明实施例提供的窗口显示方法,在应用程序对已经运行在电视中的第一窗口进行重新绘制之后,应用程序生成第一窗口对应的窗口更新请求,在电视获取得到该窗口更新请求之后,判断第一窗口当前是否显示在电视的显示屏幕上,若是,则根据电视当前显示的各个窗口的属性信息,对更新的第一窗口以及电视当前显示的其它窗口进行重新显示。在上述过程中,由应用程序对各自的窗口进行绘制,由电视对各个应用程序绘制的窗口进行统一显示,避免用户当前没有操作的窗口覆盖用户当前正在操作的窗口,进而提高窗口显示的合理性。

下面,结合图3,通过具体示例,对图2实施例所示的方法进行详细说明。

图3为本发明实施例提供的窗口显示过程的界面示意图一。请参见图3,当用户在电视中打开应用程序1时,应用程序1绘制应用程序1的首页窗口,该首页窗口中包括产品介绍栏和广告1,并向窗口显示装置发送该首页窗口,由于首页窗口为全屏窗口,且电视中当前仅运行该一个窗口,则窗口显示装置直接在屏幕中显示该首页窗口,如窗口301所示。

在电视中显示窗口301的过程中,当用户需要对电视进行设置时,用户打开电视中应用程序2(电视系统自带的设置应用程序),应用程序2绘制设置项窗口,并向窗口显示装置发送设置项窗口,由于设置项窗口为用户当前正在操作的窗口,因此,设置项窗口的窗口次序大于首页窗口的窗口次序,则窗口显示装置先在预设窗口中叠加首页窗口,再在首页窗口上叠加设置项窗口,得到窗口302,并在电视中显示窗口302。

应用程序1的首页窗口中的广告栏中每10秒自动更新一次广告,当应用程序1的广告栏中的广告更新时,应用程序1重新绘制首页窗口,并向窗口显示装置发送窗口更新请求,并在窗口更新请求中携带首页窗口的标识和待更新的首页窗口(包括产品信息和广告2)。窗口显示装置判断首页窗口为电视当前正在显示的窗口,则窗口显示装置获取首页窗口和设置项窗口的属性信息,根据首页窗口和设置项窗口的属性信息,确定设置项窗口的窗口次序大于首页窗口的窗口次序,则窗口显示装置先在预设窗口中叠加待更新的首页窗口,再在待更新的首页窗口上叠加设置项窗口,得到窗口303,并在电视中显示窗口303。

在上述过程中,在用户对设置项窗口进行操作的过程中,当首页窗口中的广告发生更新时,更新后的首页窗口依然位于设置项窗口的下方,避免了更新后的首页窗口覆盖设置项窗口,进而提高窗口显示的合理性。

在上述任意一个实施例的基础上,可选的,在应用程序创建一个新的窗口之后,应用程序也可以请求窗口显示装置对新创建的窗口进行显示,下面,通过图4所示的实施例,对应用程序创建的窗口时,窗口显示装置对屏幕中的窗口进行重新显示的过程进行详细说明。

图4为本发明实施例提供的窗口显示方法的流程示意图二。请参见图4,该方法可以包括:

s401、获取窗口创建请求,窗口创建请求中包括待显示的第二窗口。

可选的,当应用程序生成窗口创建请求之后,应用程序可以通过预设接口向窗口显示装置发送窗口创建请求,例如,该预设窗口可以为flip接口。

可选的,待显示的第二窗口为第二窗口对应的应用程序绘制的窗口。

在实际应用过程中,窗口创建请求通常由用户触发的,例如,用户打开一个应用程序时应用程序创建新的窗口,或者,用户在对正在运行的窗口进行操作时,使得应用程序根据用户的操作创建新的窗口。

当然,窗口创建请求也可以为应用程序在预设条件下触发的,例如,应用程序当前正在通过窗口播放视频,在视频播放过程中,当网络出现中断时,应用程序创建新的提示窗口,以提示用户网络出现故障。

s402、获取电视当前显示的至少一个第三窗口、及各第三窗口的属性信息。

可选的,获取电视当前显示的至少一个第三窗口的执行过程可以参见图2所示实施例中的s202,获取各第三窗口的属性信息的执行过程可以参见图2所示实施例中的s204,此处不再进行赘述。

s403、获取第二窗口的属性信息,并根据第二窗口的属性信息和各第三窗口的属性信息,判断第二窗口是否被第三窗口完全覆盖。

若否,则执行s404;若是,则执行s405。

可选的,第二窗口的属性信息可以携带在窗口创建请求中,相应的,可以在窗口创建请求中获取第二窗口的属性信息。

可选的,若窗口创建请求为用户触发的,说明用户当前需要操作第二窗口,则第二窗口的窗口次序最高,第二窗口需要被显示在屏幕的顶层,此时,可以直接确定第二窗口不会被第三窗口完全覆盖。

可选的,若窗口创建请求为应用程序在预设条件下触发的,则可以根据如下方式判断第二窗口是否被第三窗口完全覆盖:在第三窗口中确定目标窗口,目标窗口的窗口次序大于第二窗口的窗口次序,根据第二窗口的显示位置和第二窗口的尺寸,确定第二窗口的显示区域,根据目标窗口的显示位置和目标窗口的尺寸,确定目标窗口的显示区域;并根据第二窗口的显示区域和目标窗口的显示区域,判断第二窗口是否被第三窗口完全覆盖。当目标窗口的显示区域包括第二窗口的所有显示区域时,说明第二窗口完全被第三窗口覆盖,否则,第二窗口未完全被第三窗口覆盖。

s404、根据第二窗口的属性信息和各第三窗口的属性信息,显示第二窗口和各第三窗口。

需要说明的是,s404的执行过程可以参见图2所示实施例中的s205的执行过程,此处不再进行赘述。

s405、丢弃窗口创建请求。

当判断第二窗口被第三窗口完全覆盖时,丢弃窗口创建请求即可,且无需对电视当前显示的窗口进行重新显示。

在图4所示的实施例中,在应用程序创建第二窗口之后,应用程序生成窗口创建请求,并请求对第二窗口进行显示,窗口显示装置先根据第二窗口的属性信息和电视当前显示的第三窗口的属性信息,判断是否有必要显示第二窗口,当判断第二窗口不会被第三窗口完全覆盖时,则根据第二窗口的属性信息、及电视当前显示的第三窗口的属性信息,显示第二窗口和第三窗口,这样,可以避免当第二窗口不是用户正在操作的窗口时,第二窗口显示在屏幕顶层的问题。

在上述任意一个实施例的基础上,可选的,在应用程序关闭一个窗口时,应用程序可以请求窗口显示装置取消显示关闭的窗口,下面,通过图4所示的实施例,对关闭窗口时,窗口显示装置对屏幕中的窗口进行重新显示的过程进行详细说明。

下面,结合图5,通过具体示例,对图4实施例所示的方法进行详细说明。

图5为本发明实施例提供的窗口显示过程的界面示意图二。请参见图5,当用户在电视中打开视频播放应用程序时,视频播放应用程序绘制视频播放窗口,并向窗口显示装置发送视频播放窗口,由于视频播放窗口为全屏窗口,且电视中当前仅运行该一个窗口,则窗口显示装置直接在屏幕中显示该视频播放窗口,如窗口501所示。

在电视中显示窗口501的过程中,当用户需要对电视进行设置时,用户打开电视中设置应用程序,设置应用程序绘制设置项窗口,并向窗口显示装置发送窗口创建请求,并在窗口创建请求中携带待显示的设置项窗口,由于设置项窗口为用户当前正在操作的窗口,因此,设置项窗口的窗口次序大于视频播放窗口的窗口次序,则窗口显示装置先在预设窗口中叠加视频播放窗口,再在视频播放窗口上叠加设置项窗口,得到窗口502,并在电视中显示窗口502。

在视频播放过程中,当网络出现中断,则视频播放程序创建网络中断提示窗口,并向窗口显示装置发送窗口创建请求,并在窗口创建请求中携带待显示的网络中断提示窗口。窗口显示装置确定视频播放窗口、网络中断提示窗口、设置项窗口的窗口次序依次递增,则窗口显示装置先在预设窗口中叠加视频播放窗口,再在视频播放窗口上叠加网络中断提示窗口,再在网络中断提示窗口上叠加设置项窗口(设置项窗口覆盖了网络终端提示窗口的一部分),得到窗口503,并在电视中显示窗口503。

在上述过程中,在用户对设置项窗口进行操作的过程中,当视频播放应用程序由于网络中断创建新的网络终端提示窗口时,该网络中断提示窗口依然位于设置项窗口的下方,避免了网络终端提示窗口覆盖设置项窗口,进而提高窗口显示的合理性。

图6为本发明实施例提供的窗口显示方法的流程示意图三。请参见图6,该方法可以包括:

s601、获取窗口关闭请求,窗口关闭请求包括第四窗口的标识,第四窗口为电视当前显示的任意一个窗口。

可选的,当应用程序生成窗口关闭请求之后,应用程序可以通过预设接口向窗口显示装置发送窗口关闭请求,例如,该预设窗口可以为flip接口。

在实际应用过程中,窗口关闭请求通常由用户触发的,例如,用户手动关闭一个窗口,或者用户手动关闭应用程序。

s602、获取电视当前运行的第二显示窗口集合,第二显示窗口集合中包括电视当前显示的窗口和被当前显示的窗口完全覆盖的窗口。

s603、在第二显示窗口集合中删除第五窗口,得到第三显示窗口集合。

s604、根据第三显示窗口集合中各窗口的属性信息,显示第三显示窗口集合中的部分或全部窗口。

图7为本发明实施例提供的窗口显示装置的结构示意图一。该窗口显示装置可以设置在电视中,请参见图7,该装置可以包括第一获取模块11、第二获取模块12、判断模块13、第三获取模块14和显示模块15,其中,

所述第一获取模块11用于,获取所述电视中的应用程序生成的窗口更新请求,所述窗口更新请求包括待更新的第一窗口和所述第一窗口的标识,所述第一窗口为所述电视当前运行的窗口;

所述第二获取模块12用于,确定第一显示窗口集合,所述第一显示窗口集合包括在所述电视上完全显示的窗口和部分显示的窗口;

所述判断模块13用于,根据所述第一窗口的标识,判断所述第一显示窗口集合中是否包括所述第一窗口;

在所述判断模块13判断所述第一显示窗口集合中包括所述第一窗口时,所述第三获取模块14用于,获取所述第一显示窗口集合中各窗口的属性信息,所述显示模块15用于,根据所述待更新的第一窗口、所述第一显示窗口集合中除所述第一窗口之外的其它窗口、所述第一显示窗口集合中各窗口的属性信息,显示所述第一显示窗口集合中的各窗口。

本发明实施例提供的窗口显示装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。

图8为本发明实施例提供的窗口显示装置的结构示意图二。在图7所示实施例的基础上,请参见图8,所述装置还包括丢弃模块16,其中,

所述丢弃模块16用于,在所述判断模块13判断所述显示窗口集合中不包括所述第一窗口时,丢弃所述窗口更新请求。

在一种实现方式中,窗口的属性信息包括窗口的窗口次序和显示位置;相应的,所述第三获取模块14获取所述第一显示窗口集合中各窗口的属性信息,包括:

确定所述第一显示窗口集合中各窗口对应的应用程序;

分别在各所述应用程序的配置文件中,获取各所述窗口的显示位置;

获取各所述窗口对应的最后操作时刻;

根据各所述窗口对应的最后操作时刻,确定各所述窗口的窗口次序。

在另一种实现方式中,所述显示模块15根据所述待更新的第一窗口、所述第一显示窗口集合中除所述第一窗口之外的其它窗口、所述第一显示窗口集合中各窗口的属性信息,显示所述第一显示窗口集合中的各窗口,包括:

按照窗口次序从小到大的顺序,根据所述第一显示窗口集合中各窗口的显示位置,依次在预设窗口上叠加所述待更新的第一窗口和所述第一显示窗口集合中除所述第一窗口之外的其它窗口,得到合成窗口;

显示所述合成窗口。

在另一种实现方式中,所述装置还包括第四获取模块17和第五获取模块18,其中,

所述第四获取模块17用于,获取窗口创建请求,所述窗口创建请求中包括待显示的第二窗口;

所述第五获取模块18用于,获取所述电视当前显示的至少一个第三窗口、各所述第三窗口的属性信息、及所述第二窗口的属性信息;

所述判断模块13还用于,根据所述第二窗口的属性信息和各所述第三窗口的属性信息,判断所述第二窗口是否被所述第三窗口完全覆盖;

所述显示模块15还用于,在所述判断模块13判断所述第二窗口未被所述第三窗口完全覆盖时,根据所述第二窗口的属性信息和各所述第三窗口的属性信息,显示所述第二窗口和各所述第三窗口。

在另一种实现方式中,所述装置还包括第六获取模块19、第七获取模块110和删除模块111,其中,

所述第六获取模块19用于,获取窗口关闭请求,所述窗口关闭请求包括第四窗口的标识,所述第四窗口为所述电视当前显示的任意一个窗口;

所述第七获取模块110用于,获取所述电视当前运行的第二显示窗口集合,所述第二显示窗口集合中包括所述电视当前显示的窗口和被所述当前显示的窗口完全覆盖的窗口;

所述删除模块111用于,在所述第二显示窗口集合中删除所述第五窗口,得到第三显示窗口集合;

所述显示模块15还用于,根据所述第三显示窗口集合中各窗口的属性信息,显示所述第三显示窗口集合中的部分或全部窗口。

本发明实施例提供的窗口显示装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1