一种焦点管理的方法及显示设备与流程

文档序号:25346610发布日期:2021-06-08 12:07阅读:71来源:国知局
一种焦点管理的方法及显示设备与流程

1.本申请涉及计算机技术领域,特别地,涉及一种焦点管理的方法及显示设备。


背景技术:

2.焦点管理是在智能显示设备,例如智能电视或机顶盒等设备中通过不同的控制和交互手段,例如使用遥控器控制管理智能电视中的页面的焦点移动以及焦点显示。
3.在一些实现方式中,通过操作遥控器,显示设备在文档对象模型数种从第一层至最下层依次通过主干节点和枝叶节点寻找定位计划显示焦点的id值,当找到极化显示的焦点id值时,将焦点的id值发送到ui界面进行焦点设置显示,并且记录状态。
4.但是,当显示设备的页面复杂度上升的时候,页面中的对象数量变多,这种情况下按照主干枝叶依次遍历文档对象模型树节点的焦点定位方式会占用较多的时间,造成响应时间延长;并且由于显示对象会在多个组件上具有相同的id,因此会造成焦点重复;当显示设备的页面跟新控件等没有及时更新页面数据时,会造成焦点还没有挂载在文档对象模型树上,从而造成焦点的丢失。


技术实现要素:

5.本申请提供了一种焦点管理的方法及显示设备,通过使用组件对象的方式来记录焦点,将组件对象设置为上焦点的对象,一定程度上可以解决文档对象模型树中焦点遍历的实效慢,焦点丢失和焦点重复的问题。
6.本申请的实施例是这样实现的:
7.本申请实施例的第一方面提供一种显示设备,包括:
8.显示器,该显示器被配置为显示用户界面,其中,所述用户界面包括多个视图显示区,其中,各个视图显示区中包括布局一个或多个不同项目,以及,该用户界面中还包括指示所述项目被选择的选择器,可通过用户输入而移动所述选择器在所述用户界面中的位置,以使选择不同的所述项目;
9.通信接口,用于获取遥控器发送的键值,所述键值用于控制焦点的移动方向;
10.控制器,与显示器及通信接口藕接,被配置为:将所述键值指向的对象解析为组件对象,具体解析为所述组件对象的引用编号并发送至当前页面;
11.根据当前页面所述焦点的第一位置的当前焦点值和所述组件对象的引用编号,确定所述焦点更新后的第二位置,并将焦点切换至所述第二位置。
12.本申请实施例的第二方面提供一种焦点管理的方法,包括:
13.显示设备通信接口获取遥控器发送的键值,所述键值用于控制焦点的移动方向;
14.将所述键值指向的对象解析为组件对象,具体解析为所述组件对象的引用编号;
15.所述显示设备将所述引用编号发送至当前页面;
16.所述显示设备根据当前页面所述焦点的第一位置的当前焦点值和所述组件对象的引用编号确定所述焦点更新后的第二位置;
17.所述显示设备获取所述第二位置,并将焦点切换至所述第二位置。
18.本申请的有益效过:通过组件对象的方式记录焦点,一定程度上解决了在文档对象模型树中寻找定位焦点时效慢的问题;进一步通过组件对象的唯一性,一定程度上可以解决文档对象模型树中寻找定位焦点过程中焦点重复和焦点未挂载造成的焦点丢失问题;通过单向事件流的方法使用组件对象的引用编号进行进行焦点切换,简化了焦点跟新的步骤。
附图说明
19.为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
20.图1中示例性示出了根据实施例中显示设备与控制装置之间操作场景的示意图;
21.图2中示例性示出了根据实施例中显示设备200的硬件配置框图;
22.图3中示例性示出了根据实施例中控制设备100的硬件配置框图;
23.图4中示例性示出了根据实施例中显示设备200的功能配置示意图;
24.图5a中示例性示出了根据实施例中显示设备200中软件配置示意图;
25.图5b中示例性示出了根据实施例中显示设备200中应用程序的配置示意图;
26.图6示出了本申请实施例文档对象模型树中焦点对象重复场景的组件对象结构示意图;
27.图7示出了本申请实施例焦点定位遍历文档对象模型树示意图;
28.图8示出了本申请实施例文档对象模型树中焦点对象尚未挂载场景的结构示意图;
29.图9示出了本申请实施例焦点切换单向数据流方法的示意图;
30.图10示出了本申请实施例显示设备当前页面焦点切换的结构示意图;
31.图11示出了本申请实施例显示设备焦点在兄弟组件对象之间的切换示意图;
32.图12示出了本申请实施例示出了显示设备焦点在父组件对象之间的切换示意图;
33.图13示出了本申请实施例提供的焦点移动的流程示意图;
34.图14示出了本申请实施例一种显示设备;
35.图15示出了本申请实施例提供的一种显示设备的页面结构示意图;
36.图16示出了本申请实施例提供的一种焦点管理的方法的流程示意图;
37.图17示出了本申请实施例提供的一种焦点管理的方法的焦点赋值流程图。
具体实施方式
38.为使本申请示例性实施例的目的、技术方案和优点更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施例中的技术方案进行清楚、完整地描述,显然,所描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
39.基于本申请中示出的示例性实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,虽然本申请中公开内容
按照示范性一个或几个实例来介绍,但应理解,可以就这些公开内容的各个方面也可以单独构成一个完整技术方案。
40.应当理解,本申请中说明书和权利要求书及上述附图中的术语

第一



第二



第三

等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,例如能够根据本申请实施例图示或描述中给出那些以外的顺序实施。
41.此外,术语

包括



具有

以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的那些组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
42.本申请中使用的术语

模块

,是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。。
43.本说明书通篇提及的

多个实施例



一些实施例



一个实施例



实施例

等,意味着结合该实施例描述的具体特征、结构或特性包括在至少一个实施例中。因此,本说明书通篇出现的短语

在多个实施例中



在一些实施例中



在至少另一个实施例中



在实施例中

等并不一定都指相同的实施例。此外,在一个或多个实施例中,具体特征、结构或特性可以任何合适的方式进行组合。因此,在无限制的情形下,结合一个实施例示出或描述的具体特征、结构或特性可全部或部分地与一个或多个其他实施例的特征、结构或特性进行组合。这种修改和变型旨在包括在本申请的范围之内。
44.本申请中使用的术语

遥控器

,是指电子设备(如本申请中公开的显示设备)的一个组件,通常可在较短的距离范围内无线控制电子设备。一般使用红外线和/或射频(rf)信号和/或蓝牙与电子设备连接,也可以包括wifi、无线usb、蓝牙、动作传感器等功能模块。例如:手持式触摸遥控器,是以触摸屏中用户界面取代一般遥控装置中的大部分物理内置硬键。
45.本申请中使用的术语

手势

,是指用户通过一种手型的变化或手部运动等动作,用于表达预期想法、动作、目的/或结果的用户行为。
46.图1中示例性示出了根据实施例中显示设备与控制装置之间操作场景的示意图。如图1中示出,用户可通过移动终端300和控制装置100操作显示设备200。
47.其中,控制装置100可以遥控器,包括红外协议通信或蓝牙协议通信,及其他短距离通信方式等,通过无线或其他有线方式来控制显示设备200。用户可以通过遥控器上按键,语音输入、控制面板输入等输入用户指令,来控制显示设备200。如:用户可以通过遥控器上音量加减键、频道控制键、上/下/左/右的移动按键、语音输入按键、菜单键、开关机按键等输入相应控制指令,来实现控制显示设备200的功能。
48.在一些实施例中,也可以使用移动终端、平板电脑、计算机、笔记本电脑、和其他智能设备以控制显示设备200。例如,使用在智能设备上运行的应用程序控制显示设备200。该应用程序通过配置可以在与智能设备关联的屏幕上,在直观的用户界面(ui)中为用户提供各种控制。
49.示例的,移动终端300可与显示设备200安装软件应用,通过网络通信协议实现连接通信,实现一对一控制操作的和数据通信的目的。如:可以实现用移动终端300与显示设备200建立控制指令协议,将遥控控制键盘同步到移动终端300上,通过控制移动终端300上
用户界面,实现控制显示设备200的功能。也可以将移动终端300上显示音视频内容传输到显示设备200上,实现同步显示功能。
50.如图1中还示出,显示设备200还与服务器400通过多种通信方式进行数据通信。可允许显示设备200通过局域网(lan)、无线局域网(wlan)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。示例的,显示设备200通过发送和接收信息,以及电子节目指南(epg)互动,接收软件程序更新,或访问远程储存的数字媒体库。服务器400可以一组,也可以多组,可以一类或多类服务器。通过服务器400提供视频点播和广告服务等其他网络服务内容。
51.显示设备200,可以液晶显示器、oled显示器、投影显示设备。具体显示设备类型,尺寸大小和分辨率等不作限定,本领技术人员可以理解的是,显示设备200可以根据需要做性能和配置上一些改变。
52.显示设备200除了提供广播接收电视功能之外,还可以附加提供计算机支持功能的智能网络电视功能。示例的包括,网络电视、智能电视、互联网协议电视(iptv)等。
53.图2中示例性示出了根据示例性实施例中显示设备200的硬件配置框图。如图2中示出,显示设备200中包括控制器210、调谐解调器220、通信接口230、检测器240、输入\输出接口250、视频处理器260-1,音频处理器60-2,显示器280,音频输出270、存储器290,供电电源、红外接收器。
54.显示器280,用于接收源自视频处理器260-1输入的图像信号,进行显示视频内容和图像以及菜单操控界面的组件。显示器280包括用于呈现画面的显示屏组件,以及驱动图像显示的驱动组件。显示视频内容,可以来自广播电视内容,也可以是说,可通过有线或无线通信协议接收的各种广播信号。或者,可显示来自网络通信协议接收来自网络服务器端发送的各种图像内容。
55.同时,显示器280,同时显示显示设备200中产生且用于控制显示设备200的用户操控ui界面。
56.以及,根据显示器280类型不同,还包括用于驱动显示的驱动组件。或者,倘若显示器280为一种投影显示器,还可以包括一种投影装置和投影屏幕。
57.通信接口230是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信接口230可以是wifi芯片231,蓝牙通信协议芯片232,有线以太网通信协议芯片233等其他网络通信协议芯片或近场通信协议芯片,以及红外接收器(图中未示出)等可用于接收遥控信号。
58.显示设备200可以通过通信接口230与外部控制设备或内容提供设备之间建立控制信号和数据信号发送和接收。以及,红外接收器,可用于接收控制装置100(如:红外遥控器等)红外控制信号的接口器。
59.检测器240,是显示设备200用于采集外部环境或与外部交互的信号。检测器240包括光接收器242,用于采集环境光线强度的传感器,可以通过采集环境光可以自适应性显示参数变化等。
60.以及包括图像采集器241,如相机、摄像头等,可以用于采集外部环境场景,以及用于采集用户的属性或与用户交互手势,可以自适应变化显示参数,也可以识别用户手势,以实现与用户之间互动的功能。
61.在其他一些示例性实施例中,检测器240,还可温度传感器等,如通过感测环境温度,显示设备200可自适应调整图像的显示色温。如当温度偏高的环境时,可调整显示设备200显示图像色温偏冷色调,或当温度偏低的环境时,可以调整显示设备200显示图像偏暖色调。
62.在其他一些示例性实施例中,检测器240,还可声音采集器等,如麦克风,可以用于接收用户的声音,包括用户控制显示设备200的控制指令的语音信号,或采集环境声音,用于识别环境场景类型,显示设备200可以自适应适应环境噪声。
63.输入/输出接口250,在控制器210的控制显示设备200与外部其他设备间数据传输。如接收外部设备的视频信号和音频信号、或命令指令等数据。
64.其中,输入/输出接口250可以包括,但不限于如下:可以高清多媒体接口hdmi接口251、模拟或数据高清分量输入接口253、复合视频输入接口252、usb输入接口254、rgb端口(图中未示出)等任一个或多个接口。
65.在其他一些示例性实施例中,输入/输出接口250也可以上述多个接口形成复合性的输入/输出接口。
66.调谐解调器220,通过有线或无线接收方式接收广播电视信号,可以进行放大、混频和谐振等调制解调处理,从多多个无线或有线广播电视信号中解调出用户所选择电视频道频率中所携带的电视音视频信号,以及epg数据信号。
67.调谐解调器220,可根据用户选择,以及由控制器210控制,响应用户选择的电视信号频率以及该频率所携带的电视信号。
68.调谐解调器220,可以接收信号的途径,根据电视信号广播制式不同,有很多种,诸如:地面广播、有线广播、卫星广播或互联网广播信号等;以及根据调制类型不同,可以数字调制,也可以模拟调制方式。根据接收电视信号种类不同,可以模拟信号和数字信号。
69.在其他一些示例性实施例中,调谐解调器220也可在外置设备中,如外置机顶盒等。这样,机顶盒通过调制解调后输出电视音视频信号,经过输入/输出接口250输入显示设备200中。
70.视频处理器260-1,用于将接收外部视频信号,根据输入信号的标准编解码协议,进行解压缩、解码、缩放、降噪、帧率转换、分辨率转换、图像合成等等视频处理,可得到直接可显示设备200上显示或播放的信号。
71.示例的,视频处理器260-1,包括解复用模块、视频解码模块、图像合成模块、帧率转换模块、显示格式化模块等。
72.其中,解复用模块,用于对输入音视频数据流进行解复用处理,如输入mpeg-2,则解复用模块进行解复用成视频信号和音频信号等。
73.视频解码模块,则用于对解复用后的视频信号进行处理,包括解码和缩放处理等。
74.图像合成模块,如图像合成器,其用于将图形生成器根据用户输入或自身生成的gui信号,与缩放处理后视频图像进行叠加混合处理,以生成可供显示的图像信号。
75.帧率转换模块,用于对转换输入视频帧率,如将60hz帧率转换为120hz帧率或240hz帧率,通常的格式采用如插帧方式实现。
76.显示格式化模块,则用于将接收帧率转换后视频输出信号,改变信号以符合显示格式的信号,如输出rgb数据信号。
77.音频处理器260-2,用于接收外部的音频信号,根据输入信号的标准编解码协议,进行解压缩和解码,以及降噪、数模转换、和放大处理等处理,得到可以在扬声器中播放的声音信号。
78.在其他一些示例性实施例中,视频处理器260-1可以包括一颗或多颗芯片组成。音频处理器260-2,也可以包括一颗或多颗芯片组成。
79.以及,在其他一些示例性实施例中,视频处理器260-1和音频处理器260-2,可以单独的芯片,也可以于控制器210一起集成在一颗或多颗芯片中。
80.音频输出272,在控制器210的控制下接收音频处理器260-2输出的声音信号,如:扬声器272,以及除了显示设备200自身携带的扬声器272之外,可以输出至外接设备的发生装置的外接音响输出端子274,如:外接音响接口或耳机接口等。
81.供电电源,在控制器210控制下,将外部电源输入的电力为显示设备200提供电源供电支持。供电电源可以包括安装显示设备200内部的内置电源电路,也可以是安装在显示设备200外部电源,在显示设备200中提供外接电源的电源接口。
82.用户输入接口,用于接收用户的输入信号,然后,将接收用户输入信号发送给控制器210。用户输入信号可以是通过红外接收器接收的遥控器信号,可以通过网络通信模块接收各种用户控制信号。
83.示例的,用户通过遥控器100或移动终端300输入用户命令,用户输入接口则根据用户的输入,显示设备200则通过控制器210响应用户的输入。
84.在一些实施例中,用户可在显示器280上显示的图形用户界面(gui)输入用户命令,则用户输入接口通过图形用户界面(gui)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
85.控制器210,通过存储在存储器290上中各种软件控制程序,来控制显示设备200的工作和响应用户的操作。
86.如图2所示,控制器210包括ram213和rom214以及图形处理器216、cpu处理器212、通信接口218,如:第一接口218-1到第n接口218-n,以及通信总线。其中,ram213和rom214以及图形处理器216、cpu处理器212、通信接口218通过总线相连接。
87.rom213,用于存储各种系统启动的指令。如在收到开机信号时,显示设备200电源开始启动,cpu处理器212运行rom中系统启动指令,将存储在存储器290的操作系统拷贝至ram213中,以使开始运行启动操作系统。当操作系统启动完成后,cpu处理器212再将存储器290中各种应用程序拷贝至ram213中,然后,开始运行启动各种应用程序。
88.图形处理器216,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象。以及包括渲染器,产生基于运算器得到的各种对象,进行渲染的结果显示在显示器280上。
89.cpu处理器212,用于执行存储在存储器290中操作系统和应用程序指令。以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。
90.在一些示例性实施例中,cpu处理器212,可以包括多个处理器。多个处理器可包括
一个主处理器以及多个或一个子处理器。主处理器,用于在预加电模式中执行显示设备200一些操作,和/或在正常模式下显示画面的操作。多个或一个子处理器,用于在待机模式等状态下一种操作。
91.控制器210可以控制显示设备100的整体操作。例如:响应于接收到用于选择在显示器280上显示ui对象的用户命令,控制器210便可以执行与由用户命令选择的对象有关的操作。
92.其中,所述对象可以是可选对象中的任何一个,例如超链接或图标。与所选择的对象有关操作,例如:显示连接到超链接页面、文档、图像等操作,或者执行与所述图标相对应程序的操作。用于选择ui对象用户命令,可以是通过连接到显示设备200的各种输入装置(例如,鼠标、键盘、触摸板等)输入命令或者与由用户说出语音相对应的语音命令。
93.存储器290,包括存储用于驱动显示设备200的各种软件模块。如:存储器290中存储的各种软件模块,包括:基础模块、检测模块、通信模块、显示控制模块、浏览器模块、和各种服务模块等。
94.其中,基础模块用于产后护理显示设备200中各个硬件之间信号通信、并向上层模块发送处理和控制信号的底层软件模块。检测模块用于从各种传感器或用户输入接口中收集各种信息,并进行数模转换以及分析管理的管理模块。
95.例如:语音识别模块中包括语音解析模块和语音指令数据库模块。显示控制模块用于控制显示器280进行显示图像内容的模块,可以用于播放多媒体图像内容和ui界面等信息。通信模块,用于与外部设备之间进行控制和数据通信的模块。浏览器模块,用于执行浏览服务器之间数据通信的模块。服务模块,用于提供各种服务以及各类应用程序在内的模块。
96.同时,存储器290还用存储接收外部数据和用户数据、各种用户界面中各个项目的图像以及焦点对象的视觉效果图等。
97.图3中示例性示出了根据示例性实施例中控制设备100的配置框图。如图3所示,控制设备100包括控制器110、通信接口130、用户输入/输出接口140、存储器190、供电电源180。
98.控制设备100被配置为控制显示设备200,以及可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起用用户与显示设备200之间交互中介作用。如:用户通过操作控制设备100上频道加减键,显示设备200响应频道加减的操作。
99.在一些实施例中,控制设备100可是一种智能设备。如:控制设备100可根据用户需求安装控制显示设备200的各种应用。
100.在一些实施例中,如图1所示,移动终端300或其他智能电子设备,可在安装操控显示设备200的应用之后,可以起到控制设备100类似功能。如:用户可以通过安装应用,在移动终端300或其他智能电子设备上可提供的图形用户界面的各种功能键或虚拟按钮,以实现控制设备100实体按键的功能。
101.控制器110包括处理器112和ram113和rom114、通信接口218以及通信总线。控制器110用于控制控制设备100的运行和操作,以及内部各部件之间通信协作以及外部和内部的数据处理功能。
102.通信接口130在控制器110的控制下,实现与显示设备200之间控制信号和数据信
号的通信。如:将接收到的用户输入信号发送至显示设备200上。通信接口130可包括wifi芯片、蓝牙模块、nfc模块等其他近场通信模块中至少之一种。
103.用户输入/输出接口140,其中,输入接口包括麦克风141、触摸板142、传感器143、按键144等其他输入接口中至少一者。如:用户可以通过语音、触摸、手势、按压等动作实现用户指令输入功能,输入接口通过将接收的模拟信号转换为数字信号,以及数字信号转换为相应指令信号,发送至显示设备200。
104.输出接口包括将接收的用户指令发送至显示设备200的接口。在一些实施例中,可以红外接口,也可以是射频接口。如:红外信号接口时,需要将用户输入指令按照红外控制协议转化为红外控制信号,经红外发送模块进行发送至显示设备200。再如:射频信号接口时,需将用户输入指令转化为数字信号,然后按照射频控制信号调制协议进行调制后,由射频发送端子发送至显示设备200。
105.在一些实施例中,控制设备100包括通信接口130和输出接口中至少一者。控制设备100中配置通信接口130,如:wifi、蓝牙、nfc等模块,可将用户输入指令通过wifi协议、或蓝牙协议、或nfc协议编码,发送至显示设备200.
106.存储器190,用于在控制器110的控制下存储驱动和控制控制设备200的各种运行程序、数据和应用。存储器190,可以存储用户输入的各类控制信号指令。
107.供电电源180,用于在控制器110的控制下为控制设备100各元件提供运行电力支持。可以电池及相关控制电路。
108.图4中示例性示出了根据示例性实施例中显示设备200功能配置示意图。如图4所示,存储器290用于存储操作系统、应用程序、内容和用户数据等,在控制器210控制下执行驱动显示设备200的系统运行以及响应用户的各种操作。存储器290可以包括易失性和/或非易失性存储器。
109.存储器290,具体用于存储驱动显示设备200中控制器210的运行程序,以及存储显示设备200内置各种应用程序,以及用户从外部设备下载的各种应用程序、以及与应用相关各种图形用户界面,以及与图形用户界面相关的各种对象,用户数据信息,以及各种支持应用的内部数据。存储器290用于存储os内核、中间件和应用等系统软件,以及存储输入的视频数据和音频数据、及其他用户数据。
110.存储器290,具体用于存储音视频处理器260-1和260-2、显示器280、通信接口230、调谐解调器220、检测器240输入/输出接口等驱动程序和相关数据。
111.在一些实施例中,存储器290可以存储软件和/或程序,用于表示操作系统(os)的软件程序包括,例如:内核、中间件、应用编程接口(api)和/或应用程序。示例性的,内核可控制或管理系统资源,或其它程序所实施的功能(如所述中间件、api或应用程序),以及内核可以提供接口,以允许中间件和api,或应用访问控制器,以实现控制或管理系统资源。
112.示例的,存储器290,包括广播接收模块2901、频道控制模块2902、音量控制模块2903、图像控制模块2904、显示控制模块2905、音频控制模块2906、外部指令识别模块2907、通信控制模块2908、光接收模块2909、电力控制模块2910、操作系统2911、以及其他应用程序2912、浏览器模块等等。控制器210通过运行存储器290中各种软件程序,来执行诸如:广播电视信号接收解调功能、电视频道选择控制功能、音量选择控制功能、图像控制功能、显示控制功能、音频控制功能、外部指令识别功能、通信控制功能、光信号接收功能、电力控制
功能、支持各种功能的软件操控平台、以及浏览器功能等其他应用。
113.图5a中示例性示出了根据示例性实施例中显示设备200中软件系统的配置框图。
114.如图5a中所示,操作系统2911,包括用于处理各种基础系统服务和用于实施硬件相关任务的执行操作软件,充当应用程序和硬件组件之间完成的数据处理的媒介。一些实施例中,部分操作系统内核可以包含一系列软件,用以管理显示设备硬件资源,并为其他程序或软件代码提供服务。
115.其他一些实施例中,部分操作系统内核可包含一个或多个设备驱动器,设备驱动器可以是操作系统中的一组软件代码,帮助操作或控制显示设备关联的设备或硬件。驱动器可以包含操作视频、音频和/或其他多媒体组件的代码。示例的,包括显示屏、摄像头、flash、wifi和音频驱动器。
116.其中,可访问性模块2911-1,用于修改或访问应用程序,以实现应用程序的可访问性和对其显示内容的可操作性。
117.通信模块2911-2,用于经由相关通信接口和通信网络与其他外设的连接。
118.用户界面模块2911-3,用于提供显示用户界面的对象,以供各应用程序可访问,可实现用户可操作性。
119.控制应用程序2911-4,用于可控制进程管理,包括运行时间应用程序等。
120.事件传输系统2914,可在操作系统2911内或应用程序2912中实现,以一些实施例中,一方面在在操作系统2911内实现,同时在应用程序2912中实现,用于监听各种用户输入事件,将根据各种事件指代响应各类事件或子事件的识别结果,而实施一组或多组预定义的操作的处理程序。
121.其中,事件监听模块2914-1,用于监听用户输入接口输入事件或子事件。
122.事件识别模块2914-1,用于对各种用户输入接口输入各类事件的定义,识别出各种事件或子事件,且将其传输给处理用以执行其相应一组或多组的处理程序。
123.其中,事件或子事件,是指显示设备200中一个或多个传感器检测的输入,以及外界控制设备(如控制设备100等)的输入。如:语音输入各种子事件,手势识别的手势输入,以及控制设备的遥控按键指令输入的子事件等。示例的,遥控器中一个或多个子事件包括多种形式,包括但不限于按键按上/下/左右/、确定键、按键按住等中一个或组合。以及非实体按键的操作,如移动、按住、释放等操作。
124.界面布局管理器2913,直接或间接接收来自于事件传输系统2914监听到各用户输入事件或子事件,用于更新用户界面的布局,包括但不限于界面中各控件或子控件的位置,以及容器的大小或位置、层级等与界面布局相关各种执行操作。
125.如图5b中所示,应用程序层2912包含也可在显示设备200执行的各种应用程序。应用程序可包含但不限于一个或多个应用程序,如:直播电视应用程序、视频点播应用程序、媒体中心应用程序、应用程序中心、游戏应用等。
126.直播电视应用程序,可以通过不同的信号源提供直播电视。例如,直播电视应用程可以使用来自有线电视、无线广播、卫星服务或其他类型的直播电视服务的输入提供电视信号。以及,直播电视应用程序可在显示设备200上显示直播电视信号的视频。
127.视频点播应用程序,可以提供来自不同存储源的视频。不同于直播电视应用程序,视频点播提供来自某些存储源的视频显示。例如,视频点播可以来自云存储的服务器端、来
自包含已存视频节目的本地硬盘储存器。
128.媒体中心应用程序,可以提供各种多媒体内容播放的应用程序。例如,媒体中心,可以为不同于直播电视或视频点播,用户可通过媒体中心应用程序访问各种图像或音频所提供服务。
129.应用程序中心,可以提供储存各种应用程序。应用程序可以是一种游戏、应用程序,或某些和计算机系统或其他设备相关但可以在智能电视中运行的其他应用程序。应用程序中心可从不同来源获得这些应用程序,将它们储存在本地储存器中,然后在显示设备200上可运行。
130.本申请实施例可以应用于各种类型的显示设备(包括但不限于:智能电视、机顶盒等设备),可选的,上述设备可以利用各种不同的控制器访问显示设备的各种页面。
131.本申请实施例中,显示设备接收到遥控器的键值之后,显示设备将键值发送给ui界面设计,ui界面是页面管理系统。需要说明的是,本实施例所述的显示设备的通信接口具体接收了所述遥控器发送的键值。通信接口将所述键值传送至显示设备的控制器,进一步的处理下文将阐述的焦点切换过程。
132.如图14所示,为本申请实施例提供的一种ui界面的结构示意图。ui界面包括页面管理模块、焦点记录模块和焦点设置模块,当然,ui界面还包括其它模块,在此不再逐一举例。其中,页面管理模块,负责页面的创建、更新、切换和销毁;焦点设置模块,负责根据从页面获取到的焦点的位置,在页面中设置焦点的聚焦显示。
133.当ui界面获取到遥控器的键值之后,ui界面使用页面管理模块确认当前需要键值的页面,将键值发给该页面。
134.本申请实施例中,页面负责页面控件的定义和展示。图15示出了本申请实施例提供的一种页面的结构示意图,参见图15,在本申请实施例中,页面中包括焦点计算模块,该模块可以计算焦点在页面中的位置,并将计算出的焦点的位置发给ui界面。
135.页面还负责页面控件是否可以获得焦点的定义(即页面控件的属性为聚焦页面控件或者非聚焦页面控件),并且描述了该控件在上下左右四个方向的下一个可获得焦点的页面控件标识(即在页面控件属性nextfocusup、nextfocusdown、nextfocusleft、nextfocusright中指定下一个页面控件的标识值)。
136.页面还负责焦点变化事件(焦点变化事件指页面控件获得焦点onfocus、失去焦点onblur)的处理。其中,获得焦点的页面控件即为被聚焦的页面控件。
137.继续参见图15,焦点计算模块负责将接收并转化键值为焦点的移动方向(direction),并根据当前焦点位置currentfocusnode和移动方向传入焦点位置计算焦点更新后的位置。
138.需要说明的是,上述焦点计算模块可以是一段js(javascrip)脚本程序。页面中需要嵌入这段程序才能进行焦点控制。
139.图16示出了本申请实施例提供的一种焦点管理的方法的流程示意图,如图3所示,该方法包括:
140.步骤1601:显示设备获取遥控器发送的键值,所述键值用于控制焦点的移动方向。
141.步骤1602:将所述键值指向的对象解析为组件对象,具体解析为所述组件对象的引用编号;
142.步骤1603:所述显示设备将所述引用编号发送至当前页面;
143.步骤1604:所述显示设备根据当前页面所述焦点的第一位置的当前焦点值和所述组件对象的引用编号使用单向数据流的方式确定所述焦点更新后的第二位置;
144.步骤1605:所述显示设备获取所述第二位置,并将焦点切换至所述第二位置;
145.步骤1601中,遥控器的键值与焦点的一个移动方向对应,上述对应关系是预先约定的,所述显示终端通过接收到的键值就可以确定该键值对应的移动方向。
146.用户利用遥控器向终端发送携带有键值的操作指令,遥控器作为操作设备把键值传递给终端,终端再将所述键值传递给显示页面;其中,页面本身有个属性可以获取到键值,详见协议规定,这里不再赘述。
147.在步骤1602中,将所述键值指向的对象解析为组件对象,具体解析为所述组件对象的引用编号;
148.在本申请中,所述显示设备记录焦点所在组件对象的信息,具体可以为所述组件对象的引用编号,从而使得所述显示设备不再记录需要上焦点的对象的id编号。
149.在本实施例中,也可以认为所述显示设备设定能上焦点的一定是组件对象。
150.焦点所在的组件对象在创建时就会存在该组件的引用,具体的可以是引用编号。并且组件对象的引用编号有也是唯一的。
151.相比较于传统的获取焦点需要遍历文档对象模型树的方式,本申请提供的焦点记录方式在寻找焦点所在组件对象的时候不需要遍历所有的文档对象模型树,根据所述组件对象在创建时的引用编号快速定位组件对象,一定程度上节省了遍历文档对象模型树查找焦点id的时间。
152.所述组件对象是唯一存在的,既其在创建和存储时,存在一个唯一的编号。
153.因此使用焦点所在的组件对象的引用编号寻找定位所述焦点的方式能提高焦点定位的效率。
154.使用组件对象记录焦点的方式一定程度上可以解决文档对象模型树节点的id重复问题。
155.图6示出了文档对象模型树中焦点对象重复场景的组件对象结构示意图。
156.当需要设置第三层结构中的【div:2-2】对象为新的焦点时,所述显示设备可以直接从第二次结构中的【div:2】对象所在的组件对象获取到【div:2-2】对象所在组件对象的的节点引用。
157.需要说明的是,所述对象【div:2-2】不为组件对象时,可以终止焦点赋值流程;当所述对象【div:2-2】为组件对象时,所述显示设备所述组件对象设置到系统全局。
158.可以发现,焦点以组件对象的方式进行记录和寻找,在文档对象模型树可以不需要如图7所示的遍历【body】、【div:1】、【div:1-1】、【div:1-2】、【div:2】、【div:2-1】、【div:2-2】这样的路径寻址方式寻找定位【div:2-2】,而是直接提供过创建时定义存储的组件引用编号进行寻找定位,既:【body】、【ref:2】、【ref:2-2】、【div:2-2】,简化了复杂的遍历流程。
159.显示设备操作的是对象,且都是限定在上级组件对象内操作,因此不可能有重复焦点的出现。在寻找焦点的对象所在的组件对象【div:2-2】时,显示设备不需要去关注【div:3】这个组件对象。
160.当需要将将【div:3】组件对象下的【div:2-2】组件对象设为焦点在显示设备上聚
焦显示的时候,只需在【div:3】组件对象下做操作即可,也不会涉及到【div:2】组件对象下的【div:2-2】组件对象,具体操作流程为:【body】、【ref:2】、【ref:2-2】、【div:2-2】。因此不会出现焦点重复的问题,最终显示设备需要显示的是组件对象【div:2-2】。
161.需要说明的是,一个系统内不可能存在两个相等的对象但表示不同的元素,即可以认为如果有2个对象相等,其表示的一定是相同的元素。所以,用组件对象记录焦点的方式从根本上杜绝了焦点查找错误的问题。
162.使用组件对象记录焦点的方式一定程度上可以解决文档对象模型树节点在焦点切换过程中还未挂载的问题。
163.图8示出了文档对象模型树中焦点对象尚未挂载场景的组件对象结构示意图。
164.虽然存在未挂载的节点,但对象已经创建,我们的上层节点可以获取到新节点的对象引用。
165.当焦点对象需要显示时,所述对象是完全可操作的。因为其在创建的时候已经建立了唯一的引用编号,虽然在文档对象模型树中还未挂载到相应的枝干。
166.显示设备可以更改所述对象的状态,使其挂载时以显示设备期望的形式表现出来,从而解决了焦点对象未及时挂载而导致焦点丢失的问题。
167.步骤1603中,所述显示设备将所述引用编号发送至当前页面。页面的属性中,包括层叠顺序,拥有更高层叠顺序的页面总是会处于层叠顺序较低的页面的前面显示。本申请实施例中,用户通过遥控器需要操作的页面为显示在最前面的页面,因此可以将终端显示的页面中层叠顺序最大的页面,即当前页面,确定为焦点当前所处的页面。
168.步骤1604中,所述显示设备根据当前页面所述焦点的第一位置的当前焦点值和所述组件对象的引用编号使用单向数据流的方式确定所述焦点更新后的第二位置。
169.基于组件间对象的方式记录焦点,下面将对焦点的切换进行详细的阐述。为了方便切换焦点,显示设备使用单向事件流来解决这个问题。
170.图9示出了单向数据流的示意图。
171.单向数据流指只能从一个方向来修改状态。当显示设备需要修改组件对象的状态时,可以认为是完全重新开始走一个修改的流程。这种修改方式限制了状态修改,让状态变得可预测。
172.组件对象间传递数据是单向的,即数据总是由父组件对象传递到子组件对象,子组件对象在其内部可以有自己维护的数据,但它无权修改父组件传递给它的数据,这样做是为了组件对象间更好的解耦。
173.在页面的显示中可能有多个子组件对象依赖于父组件对象的某个数据,假如子组件对象可以修改父组件对象的数据,则一个子组件对象的变化可能会引发所有依赖这个数据的子组件对象发生变化,所以本申请所述的显示设备使用单向数据流的方法解决焦点的切换。
174.在文档对象被模型树中,父组件对象(也可以认为是父节点)记录了焦点的子组件对象,所述子组件对象又记录了焦点的子组件对象的子组件对象......,如前文所述的多层结构。
175.由此可见,本申请所述的显示设备可以依据上述多层结构的记录信息来切换页面显示的焦点,并且可以为每个父组件对象节点预设初始焦点,进一步防止焦点丢失。
176.需要说明的是,上述预设初始焦点数据的限定,也原生的支持了焦点的记忆功能,显示设备不需要花费时间去存储、读取之前的焦点位置。
177.图10示出了显示设备当前页面焦点切换的结构示意图。
178.在页面内切换焦点包括两种场景,焦点在兄弟组件对象之内的切换、焦点在组件对象之间的切换。
179.图11示出了显示设备焦点在兄弟组件对象之间的切换示意图,即焦点所切换的组件对象均在同一父组件对象下挂载。
180.这种场景是最常见的一种情况,如图11所示,焦点在当前页面中的第一位置,即当前焦点值为a1的子组件对象,所述子组件对象a1在父组件对象a下面挂载,a2为焦点需要切换的第二位置,a2子组件对象也在父组件对象a下面挂载。
181.在这种情况下,显示设备只需要将当前页面的focus焦点的值赋值为a2即可,得到所述焦点的第二位置。
182.图12示出了显示设备焦点在父组件对象之间的切换示意图,即焦点所切换的组件对象在不同的父组件对象下挂载。
183.这种场景也非常的普遍,主要存在于显示设备的当前页面中多个列表直接的切换。焦点在当前页面中的第一位置,即当前焦点值为a2的子组件对象,所述子组件对象a2在父组件对象a下面挂载,b1为焦点需要切换的第二位置,b1子组件对象在父组件对象b下面挂载。
184.继续参考图12,显示设备使用【currentfocus】来记录当前组件对象下的焦点,既当前页面焦点的第一位置,当所述第一焦点移出时可做焦点记录使用。
185.显示设备直接将当前页面的focus焦点值赋值为所述焦点的第二位置的父组件对象b,然后focus焦点的递归查找机制会找到父组件对象b的当前焦点值currentfocus,最终focus焦点的值将被赋值为b1,得到所述焦点的第二位置。
186.需要说明的是,上述焦点的赋值都是以组件对象的引用编号进行赋值的。
187.在一些实施例中,当前页面,具体可以为当前页面的焦点计算模块,可以确定所述第一位置对应的页面控件,在所述键值控制的移动方向上,存在页面控件时,则将属性为聚焦页面控件的页面控件确定为被聚焦页面控件。其中,属性为聚焦页面控件,表示焦点可以位于该页面控件中,用户可以通过焦点对该页面控件执行相应的动作,例如点击操作等。
188.当前页面确定了被聚焦页面控件,则可以将所述被聚焦页面控件的位置确定为所述焦点更新后的第二位置。
189.需要说明的是,在本申请实施例中,页面控件是指当前页面中的一些可见的标签,比如一个按钮,一个文本输入框等等。
190.还需要说明的是,本申请实施例仅以智能电视的ui界面为例进行了详细描述,通过其他显示设备访问相应显示设备的ui界面,与所述显示设备互联的服务器界面、网页界面的方案均在本申请的保护范围内,这里不再赘述。
191.在一些实施例中,当前页面,具体可以为当前页面的焦点计算模块,若确定所述第一位置对应的页面控件,在所述键值控制的移动方向上,存在页面控件,且不存在属性为聚焦页面控件的页面控件,则在所述当前页面的dom(document object model:文档对象模型树)中,查找属性为聚焦页面控件的页面控件,并将查找到的页面控件的位置确定为所述焦
点更新后的第二位置。
192.需要说明的是,一个页面是页面中包括的一系列的页面控件的集合,这些页面控件组成该树形结构,一般称为dom树。
193.在一些实施例中,当前页面,具体可以为当前页面的焦点计算模块,若确定所述第一位置对应的页面控件,在所述键值控制的移动方向上,不存在页面控件,则将所述第一页面中的预设页面控件的位置确定为所述焦点更新后的第二位置。预设页面控件可以为第一页面中的任一页面控件,具体根据实际情况确定,在此不再赘述。
194.步骤1605中,所述显示设备获取所述第二位置,并将焦点切换至所述第二位置;
195.下面通过一个详细的实施例描述上面的过程。
196.如图13所示,为本申请实施例提供的焦点移动的流程示意图,包括:
197.步骤1301:用户操作遥控器的按键,触发遥控器将对应的键值发送至显示设备。
198.步骤1302:显示设备调用标准接口,将所述键值发送给ui界面。
199.步骤1303:ui界面中的焦点记录模块将键值对应的组件对象的引用编号发送给当前页面的焦点计算模块。
200.步骤1304:当前页面的焦点计算模块根据所述引用编号以及焦点在当前页面中的第一位置计算出焦点的第二位置,当前页面存储第二位置,并将第二位置发送给ui界面中的焦点设置模块。
201.图17示出了本申请实施例提供的一种焦点管理的方法的焦点赋值流程图。
202.用于获取遥控器发送的键值,将所述键值指向的对象解析为组件对象,判断解析后的对象是否为组件对象,若不是组件对象,则结束赋值流程;以及
203.若解析后的对象为组件对象,则解析所述组件对象的当前焦点值,若当前焦点值为组件对象,则将当前焦点值赋值给当前组件对象;
204.若解析后的当前焦点值不是组件对象,若不是组件对象,则结束流程;以及
205.若当前组件是组件对象,如果上个焦点存在,则重置上个焦点的状态,设置当前焦点状态。
206.由上述赋值逻辑可以发现,焦点逻辑简化了很多,但与此同时更加的遍历,更加的安全,更加的效率。焦点的状态由显示设备统一控制,可以防止多焦点问题的产生。显示设备添加组件对象的焦点状态,各组件对象实现各个状态下的样式。即实现了状态集中管理,又满足了个性化需求。
207.下面将对本申请实施例实施上述焦点管理的相关硬件进行阐述。
208.显示器280,该显示器被配置为显示用户界面,其中,所述用户界面包括多个视图显示区,其中,各个视图显示区中包括布局一个或多个不同项目,以及,该用户界面中还包括指示所述项目被选择的选择器,可通过用户输入而移动所述选择器在所述用户界面中的位置,以使选择不同的所述项目;
209.通信接口230,用于获取遥控器发送的键值,所述键值用于控制焦点的移动方向。
210.控制器210,将所述键值指向的对象解析为组件对象,具体解析为所述组件对象的引用编号并发送至当前页面。
211.根据当前页面所述焦点的第一位置的当前焦点值和所述组件对象的引用编号,使用单向数据流的方式确定所述焦点更新后的第二位置。所述控制器获取所述第二位置,并
将焦点切换至所述第二位置。
212.可选的,所述控制器210还用于:
213.显示的当前页面从所述第一焦点切换到所述第二焦点时,获取所述焦点的第一位置的组件对象;
214.可选的,所述控制器210具体用于:
215.所述终端显示的所述第一页面,确定所述第一位置对应的页面控件,在所述键值控制的移动方向上,存在页面控件,则将属性为聚焦页面控件的页面控件确定为被聚焦页面控件;
216.将所述被聚焦页面控件的位置确定为所述焦点更新后的第二位置。
217.可选的,若确定所述第一位置对应的页面控件,在所述键值控制的移动方向上,存在页面控件,且不存在属性为聚焦页面控件的页面控件,则在所述第一页面的文档对象模型dom中,查找属性为聚焦页面控件的页面控件;
218.将查找到的页面控件的位置确定为所述焦点更新后的第二位置。
219.可选的,若确定所述第一位置对应的页面控件,在所述键值控制的移动方向上,不存在页面控件,则将所述第一页面中的预设页面控件的位置确定为所述焦点更新后的第二位置。
220.本申请的有益效过:通过组件对象的方式记录焦点,一定程度上解决了在文档对象模型树中寻找定位焦点时效慢的问题;进一步通过组件对象的唯一性,一定程度上可以解决文档对象模型树中寻找定位焦点过程中焦点重复和焦点未挂载造成的焦点丢失问题;通过单向事件流的方法使用组件对象的引用编号进行进行焦点切换,简化了焦点跟新的步骤。
221.此外,本领域技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为

数据块



模块



引擎



单元



组件



系统

。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
222.计算机存储介质可能包含一个内合有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、rf、或类似介质,或任何上述介质的组合。
223.本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如java、scala、smalltalk、eiffel、jade、emerald、c++、c#、vb.net、python等,常规程序化编程语言如c语言、visual basic、fortran 2003、perl、cobol 2002、php、abap,动态编程语言如python、ruby和groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机
上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(lan)或广域网(wan)、或连接至外部计算机(例如通过因特网)、或在云计算环境中、或作为服务使用如软件即服务(saas)。
224.此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
225.同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本申请对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
226.针对本申请引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本申请作为参考。与本申请内容不一致或产生冲突的申请历史文件除外,对本申请权利要求最广范围有限制的文件(当前或之后附加于本申请中的)也除外。需要说明的是,如果本申请附属材料中的描述、定义、和/或术语的使用与本申请所述内容有不一致或冲突的地方,以本申请的描述、定义和/或术语的使用为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1