A display device and a method for browsing categories
By listening to and intercepting unconsumed system events, and combining this with the serial numbering of the focus cursor, one-click continuous movement of the focus cursor in the user interface was achieved, solving the problem of inconvenient operation of the focus cursor in the user interface and improving the user interaction experience.
Patent Information
- Application Number
- CN202410005983.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-03
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2044-01-03
AI Technical Summary
The user experience is not convenient when moving the focus cursor between multiple options, especially between options at the end of a line and the beginning of the next line. Multiple keystrokes are required to move the focus cursor, which reduces the user experience.
By listening to system events triggered by key presses, intercepting unconsumed system event distribution processes, and querying the serial numbers of adjacent selectable column controls based on the current position and movement direction of the focus cursor, one-click continuous movement of the focus cursor is achieved, and the system event distribution logic is adjusted for convenient browsing.
It enables one-click continuous movement of the focus cursor among multiple options, improving the convenience of user interface interaction and user experience.
Smart Images

Figure CN119420977B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of display device technology, and in particular to a display device and a method for browsing columns. Background Technology
[0002] Display devices are intelligent devices capable of presenting a user interface and supporting user interaction. Taking smart TVs as an example, smart TVs are television products based on Internet application technology, possessing an open operating system and chip, an open application platform, and enabling two-way human-computer interaction. They integrate multiple functions such as audio-visual entertainment and data to meet diverse and personalized user needs. To facilitate user interaction, display devices can be equipped with a remote control, or a terminal device can simulate a remote control.
[0003] The remote control or terminal device simulating a remote control can have multiple buttons, each with different key values and corresponding control functions. Users can press different buttons according to their interaction needs, in conjunction with the user interface provided by the display device, to execute the corresponding control functions. For example, the media asset list interface displayed on the display device includes a focus cursor and multiple media asset options. Users can press the directional keys on the remote control to move the focus cursor between the multiple media asset options. Once the focus cursor moves to the media asset option to be played, the user can press the confirmation button to control the display device to play the media asset data corresponding to that option.
[0004] Some user interfaces contain a large number of options, and these options can be arranged according to a certain pattern. For example, a movie list interface may contain multiple movie media asset options, which can be arranged according to information such as ratings and release dates. In such user interfaces, because the options at the end of a line and the options at the beginning of the next line also follow the same layout pattern, when the cursor is at the end of a line and the user wants to select an option at the beginning of the next line, the user needs to press multiple arrow keys and perform multiple steps to move the focus cursor to the beginning of the next line. Therefore, the interaction is not convenient and the user experience is reduced. Summary of the Invention
[0005] Some embodiments of this application provide a display device and a method for browsing columns to solve the problem of inconvenience when moving the focus cursor between multiple options.
[0006] On one hand, this application provides a display device, including: a display, a user interface, and a controller. The display is configured to display a user interface, which includes a focus cursor and multiple selectable column controls; the user interface is configured to acquire key input commands from the user.
[0007] The controller is configured to perform the following steps:
[0008] In response to the key press command, listen for system events that execute the key press command;
[0009] If the system event is not consumed, the system event distribution process is intercepted, and the serial number of the first optional column control currently selected by the focus cursor is obtained. The serial number is a number set according to the layout position information of multiple optional column controls in the user interface when the user interface is displayed. The layout position information includes the row and column values and the order value within the row and column of the optional column control.
[0010] Based on the direction of the focus cursor movement and the serial number of the first optional column control, the second optional column control is queried, wherein the direction of the focus cursor movement is the direction indicated by the key command; the second optional column control is the optional column control that is adjacent to the serial number of the first optional column control, determined according to the direction of the focus cursor movement.
[0011] Move the focus cursor to the second selectable column control.
[0012] On the other hand, this application also provides a method for browsing columns, characterized in that it is applied to the display device described in the first aspect; the method includes:
[0013] In response to user-inputted keystroke commands, listen for system events that execute the keystroke commands;
[0014] If the system event is not consumed, the system event distribution process is intercepted, and the serial number of the first selectable column control currently selected by the focus cursor is obtained. The serial number is a number set according to the layout position information of multiple selectable column controls in the user interface when the user interface is displayed. The layout position information includes the row and column values and the order value within the row and column of the selectable column control.
[0015] Based on the direction of the focus cursor movement and the serial number of the first optional column control, the second optional column control is queried. The direction of the focus cursor movement is the direction indicated by the key command. The second optional column control is an optional column control whose serial number is adjacent to the serial number of the first optional column control, determined according to the direction of the focus cursor movement.
[0016] Move the focus cursor to the second selectable column control.
[0017] As can be seen from the above technical solutions, some embodiments of this application provide a display device and a method for browsing categories. The method can respond to key commands and listen for system events that execute key commands. If the system event is not consumed, the method intercepts the system event distribution process and obtains the serial number of the first selectable category control currently selected by the focus cursor. Then, based on the focus cursor's movement direction and the serial number of the first selectable category control, it queries the second selectable category control adjacent to the serial number, thereby moving the focus cursor to the second selectable category control. The serial number is a number set according to the row and column values and the order value within the row and column of the selectable category controls in the user interface. This method, by adjusting the system event distribution logic, serializes the selectable category controls and intercepts system event distribution, allowing users to browse categories without changing keys, achieving one-click continuous browsing and solving the problem of inconvenience when moving the focus cursor between multiple options. Attached Figure Description
[0018] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 This is a schematic diagram illustrating an operational scenario between a display device and a control device provided in some embodiments of this application;
[0020] Figure 2 This is a schematic diagram of the hardware configuration of a display device provided in some embodiments of this application;
[0021] Figure 3 This is a schematic diagram of the hardware configuration of the control device provided in some embodiments of this application;
[0022] Figure 4 This is a schematic diagram of the software configuration of a display device provided in some embodiments of this application;
[0023] Figure 5 User interface diagrams provided for some embodiments of this application;
[0024] Figure 6 This is a schematic diagram of a media asset recommendation interface provided for some embodiments of this application;
[0025] Figure 7 This is a schematic diagram illustrating the focus cursor movement process provided in some embodiments of this application;
[0026] Figure 8 This application provides schematic flowcharts of a column browsing method for some embodiments.
[0027] Figure 9 This application provides schematic diagrams of the event flow of a monitoring system in some embodiments.
[0028] Figure 10 This application provides schematic diagrams illustrating the process of setting serial numbering in some embodiments;
[0029] Figure 11 This is a schematic diagram of the serial number layout of the user interface provided in some embodiments of this application;
[0030] Figure 12 This application provides schematic diagrams illustrating the effect of line-wrap browsing based on serial numbering in some embodiments.
[0031] Figure 13 A schematic diagram of a common parent control provided for some embodiments of this application;
[0032] Figure 14 This is a schematic diagram of the tab page corresponding to adjacent parent controls provided in some embodiments of this application;
[0033] Figure 15 This application provides a schematic diagram of the process for determining the extreme values of serial numbers in some embodiments.
[0034] Figure 16 This application provides a timing diagram of the backtracking process of adjacent parent controls in some embodiments;
[0035] Figure 17 The following are illustrations showing the effect of a sliding list display provided in some embodiments of this application;
[0036] Figure 18 This is a schematic diagram of the preloading process provided for some embodiments of this application. Detailed Implementation
[0037] The embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described below do not represent all embodiments consistent with this application. They are merely examples of systems and methods consistent with some aspects of this application as detailed in the claims.
[0038] It should be noted that the brief descriptions of terms in this application are only for the convenience of understanding the embodiments described below, and are not intended to limit the embodiments of this application. Unless otherwise stated, these terms should be understood in their ordinary and common meaning.
[0039] The terms "first," "second," "third," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar or related objects or entities, and do not necessarily imply a specific order or sequence, unless otherwise specified. It should be understood that such terms are interchangeable where appropriate.
[0040] The terms “comprising” and “having”, and any variations thereof, are intended to cover but not exclude inclusion, for example, a product or device that includes a range of components is not necessarily limited to all of the components that are clearly listed, but may include other components that are not clearly listed or that are inherent to such product or device.
[0041] The term "module" refers to any known or subsequently developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware and / or software code that is capable of performing the functions associated with that element.
[0042] Figure 1 This is a schematic diagram illustrating an operational scenario between a display device and a control device provided in some embodiments of this application. For example... Figure 1 As shown, users can operate the display device 200 via touch operation, mobile terminal 300, and control device 100. The control device 100 can be a remote control, stylus, etc.
[0043] In some embodiments, the mobile terminal 300 may install software applications with the display device 200 to establish a connection and communication via a network communication protocol, thereby achieving one-to-one control operation and data communication. Alternatively, audio and video content displayed on the mobile terminal 300 can be transmitted to the display device 200 to achieve synchronous display.
[0044] like Figure 1 The diagram also shows that the display device 200 communicates with the server 400 via various communication methods. This allows the display device 200 to communicate via a local area network (LAN), a wireless local area network (WLAN), and other networks.
[0045] In addition to providing broadcast television reception functions, the display device 200 can also be equipped with intelligent network television functions that provide computer support, including but not limited to network television, smart television, Internet Protocol television (IPTV), etc.
[0046] Figure 2 Provided for some embodiments of this application Figure 1 Hardware configuration block diagram of display device 200.
[0047] In some embodiments, the display device 200 includes at least one of a tuner 210, a communicator 220, a detector 230, a device interface 240, a controller 250, a display 260, an audio output interface 270, a memory, a power supply, and a user interface.
[0048] In some embodiments, detector 230 is used to acquire signals from the external environment or to interact with the outside world. For example, detector 230 includes a light receiver, a sensor for acquiring ambient light intensity; or, detector 230 includes an image acquisition device, such as a camera, which can be used to acquire external environmental scenes, user attributes, or user interaction gestures; or, detector 230 includes a sound acquisition device, such as a microphone, for receiving external sounds.
[0049] In some embodiments, the display 260 includes a display screen component for presenting an image, a driving component for driving image display, a component for receiving image signals output from a controller, and a user control UI interface, etc.
[0050] In some embodiments, the communicator 220 is a component used to communicate with external devices or the server 400 according to various communication protocol types. The display device 200 may have multiple communicators 220 depending on the supported communication methods. For example, when the display device 200 supports wireless network communication, it may have a communicator 220 with WiFi functionality. When the display device 200 supports Bluetooth connectivity, it needs to have a communicator 220 with Bluetooth functionality.
[0051] The communicator 220 enables the display device 200 to communicate with external devices or the server 400 via wireless or wired connections. Wired connections utilize data cables, interfaces, or other components to connect the display device 200 to external devices. Wireless connections utilize wireless signals or wireless networks. The display device 200 can directly establish a connection with external devices or indirectly through gateways, routers, or other connection devices.
[0052] In some embodiments, the controller 250 includes a processor, a video processor, an audio processor, a graphics processor, a ROM, and a first to an nth interface for input / output. The controller 250 controls the operation of the display device and responds to user operations through various software control programs stored in the memory. The controller 250 controls the overall operation of the display device 200.
[0053] In some embodiments, the controller 250 and the tuner 210 may be located in different separate devices, that is, the tuner 210 may also be located in an external device of the main device where the controller 250 is located, such as an external set-top box.
[0054] In some embodiments, a user can input user commands through a graphical user interface (GUI) displayed on a display 260, and the user input interface receives user input commands through the graphical user interface (GUI).
[0055] In some embodiments, user interface 280 is an interface that can be used to receive control input.
[0056] Figure 3 Provided for some embodiments of this application Figure 1 Hardware configuration block diagram of the central control device. (Example) Figure 3 As shown, the control device 100 includes a controller 110, a communication interface 130, a user input / output interface, a memory, and a power supply.
[0057] The control device 100 is configured to control the display device 200, and to receive user input operation commands and convert the operation commands into commands that the display device 200 can recognize and respond to, thus acting as an intermediary for interaction between the user and the display device 200.
[0058] In some embodiments, the control device 100 may be an intelligent device. For example, the control device 100 may be equipped with various applications for controlling the display device 200 according to user needs.
[0059] In some embodiments, as Figure 1 As shown, the mobile terminal 300 or other smart electronic devices can perform similar functions to the control device 100 after installing the application of the control display device 200.
[0060] The controller 110 includes a processor 112, RAM 113, ROM 114, a communication interface 130, and a communication bus. The controller 110 is used to control the operation of the control device 100, as well as the communication and cooperation between internal components and the external and internal data processing functions.
[0061] Under the control of the controller 110, the communication interface 130 enables communication of control signals and data signals with the display device 200. The communication interface 130 may include at least one of other near-field communication modules such as WiFi chip 131, Bluetooth module 132, and NFC module 133.
[0062] User input / output interface 140, wherein the input interface includes at least one of other input interfaces such as microphone 141, touchpad 142, sensor 143, and button 144.
[0063] In some embodiments, the control device 100 includes at least one of a communication interface 130 and an input / output interface 140. The control device 100 is configured with the communication interface 130, such as a WiFi, Bluetooth, or NFC module, which can encode user input commands via WiFi, Bluetooth, or NFC protocols and send them to the display device 200.
[0064] The memory 190 is used to store various operating programs, data, and applications for driving and controlling the control device 100 under the control of the controller. The memory 190 can also store various control signal instructions input by the user.
[0065] The power supply 180 is used to provide operating power support for the various components of the control device 100 under the control of the controller.
[0066] like Figure 4 In some embodiments, the system is divided into four layers, from top to bottom: the Applications layer (referred to as the "Application Layer"), the Application Framework layer (referred to as the "Framework Layer"), the Android runtime and system library layer (referred to as the "System Runtime Layer"), and the kernel layer.
[0067] In some embodiments, at least one application runs in the application layer. These applications may be Windows programs, system settings programs, or clock programs that come with the operating system; they may also be applications developed by third-party developers. In specific implementations, the application packages in the application layer are not limited to the examples above.
[0068] The framework layer provides application programming interfaces (APIs) and a programming framework for applications. The application framework layer includes predefined functions. It acts as a central processing unit, determining the actions taken by applications within the application layer. Through the API, applications can access system resources and obtain system services during execution.
[0069] like Figure 4As shown, the application framework layer in this embodiment includes a view system, managers, and content providers. The view system designs and implements the application's interface and interactions, and includes lists, grids, text boxes, and buttons. The managers include at least one of the following modules: an activity manager for interacting with all running activities in the system; a location manager for providing system services or applications with access to system location services; a package manager for retrieving various information related to application packages currently installed on the device; a notification manager for controlling the display and clearing of notification messages; and a window manager for managing icons, windows, toolbars, wallpapers, and desktop widgets on the user interface.
[0070] In some embodiments, the Activity Manager manages the lifecycle of individual applications and common navigation and back functions, such as controlling application exit, opening, and back actions. The Window Manager manages all window programs, such as obtaining the screen size, determining if a status bar is present, locking the screen, capturing the screen, and controlling changes to the display window, such as shrinking the display window, shaking the display, or distorting the display.
[0071] In some embodiments, the system runtime library layer provides support for the upper layer, namely the framework layer. When the framework layer is used, the Android operating system runs the C / C++ libraries contained in the system runtime library layer to implement the functions that the framework layer needs to perform.
[0072] In some embodiments, the kernel layer is a layer between hardware and software. For example... Figure 4 As shown, the kernel layer includes at least one of the following drivers: audio driver, display driver, Bluetooth driver, camera driver, WIFI driver, USB driver, HDMI driver, sensor driver (such as fingerprint sensor, temperature sensor, pressure sensor, etc.), and power driver.
[0073] Based on the aforementioned display device 200, users can interact with the display device 200 by inputting control commands through the accompanying control device 100, such as a remote control or a remote control simulated by a mobile terminal 300. Taking the control device 100 as an example, during the user's input of control commands, the user first presses a button on the control device 100. The control device 100 then generates a button command containing the button value for the pressed button and sends the button command to the display device 200 via wireless transmission methods such as Bluetooth or infrared. The display device 200 responds to the received button command by parsing the button value from the button command, querying the corresponding control command according to the control system's button configuration table, and then executing the queried control command to perform the command response, thereby realizing the corresponding control function.
[0074] like Figure 5 As shown, in some embodiments, the user can control the display device 200 to display a user interface. Part of the user interface may include column controls such as buttons, cards, icons, images, and links. These column controls can present specific content or information to the user and can also respond to the user's selection, performing operations such as media playback, interface navigation, and function settings. The user interface may also include a focus cursor, which is used to mark column controls through graphics, color changes, special effects, etc., so that the user can perform interactive actions based on the position of the focus cursor and control the column control selected by the focus cursor to respond to the user's interactive commands.
[0075] It's important to note that, based on the different types of controls included in the user interface, column controls can be divided into two types: optional column controls and non-optional column controls. Optional column controls are those that can be selected by the focus cursor, i.e., they receive focus. Non-optional column controls are those that cannot be selected by the focus cursor, i.e., they cannot receive focus. Different types of column controls can be used to display different information and carry different interactive functions. For example, optional column controls can be media asset project icons, settings buttons, message windows, etc. After being selected by the user, optional column controls can perform interactive functions such as interface navigation, parameter settings, and message display.
[0076] Unselectable column controls are used to display specific prompts or are set to an unselectable state due to permissions, scenarios, or other restrictions. Unselectable column controls can be background images, information display bars, multi-level settings menus, etc. For example, when the user interface is a settings interface, the user needs to first set the eye protection mode to "on" before they can set the display color intensity in eye protection mode. When the user sets the eye protection mode option to "off," the display color intensity item control in eye protection mode is an unselectable column control.
[0077] To facilitate user interaction, the focus cursor can be controlled by the user, moving among multiple selectable column controls to select different ones. For example, the display device 200 can display a media asset recommendation interface. As a user interface, the media asset recommendation interface can include multiple media asset items, each displayed through an selectable column control. The focus cursor is a rectangle that can be used to select media asset items. The user can control the movement of the focus cursor to select different media asset items. Then, by entering a confirmation command, the display device 200 can jump to the media asset details page of the selected media asset item, or jump to the playback interface of the media asset item.
[0078] In some embodiments, a user can control specific controls in the user interface displayed by the display device 200 to perform corresponding actions via key commands. For example, when the user interface includes a focus cursor and multiple selectable column controls, the user can input key commands containing movement key values into the display device 200. Upon receiving a key command containing movement key values, the display device 200 can respond to the key command by moving the focus cursor so that the focus cursor selects different selectable column controls.
[0079] Because the multiple selectable item controls in the user interface can be arranged according to a specific pattern, the user can select any selectable item control in the user interface using a combination of directional keys on the remote control that comes with the display device 200. For example, Figure 6 As shown, in the media asset recommendation interface, the display device 200 can display eight recommended movies (movies A through H) based on the user's voice commands. These eight recommended movie item controls can be arranged in a 4x2 configuration on the media asset recommendation interface. By default, the focus cursor can select the media asset control corresponding to movie A. To select the media asset control for movie F, the user can press the down and right buttons (or right and down buttons) on the remote control to move the focus cursor to the media asset control for movie F.
[0080] In the above embodiments, the display device 200 can respond to user-inputted key commands and generate system events in the operating system. These system events can be consumed or discarded according to the interaction methods set in the operating system. For example, when a user presses the right button on a remote control, the remote control sends a key command carrying a right-click key value to the display device 200. After receiving the key command, the display device 200 can parse the right-click key value from the key command and, combined with the control actions corresponding to the right-click key value set in the operating system, create a system event indicating that the focus cursor is moved to the right. This system event can drive a change in the user interface of the display device 200, that is, based on the position of each selectable column control in the user interface, move the focus cursor to the right control of the currently selected selectable column control. After the focus cursor is moved, the system event indicating that the focus cursor is moved to the right is consumed, so that the display device 200 can continue to respond to other key commands input by the user.
[0081] When the user interface presented by the display device 200 contains many selectable controls, the user needs to press the arrow keys multiple times and combine multiple different arrow keys to select a specific selectable control. For example, when the focus cursor is on the control corresponding to movie D, and the user wants to select the control corresponding to movie E, the user needs to press the down key once, then press the left key three times to move the focus cursor to the control corresponding to movie E. Figure 7 As shown.
[0082] In some embodiments, the arrangement of multiple optional column controls in the user interface follows a specific pattern. For example, the movie interface may include options for setting the sorting order, such as time, popularity, rating, etc. When the user selects to sort by time, the display device 200 can sort multiple movie media assets according to the release time of multiple movies, thereby making it convenient for the user to select the latest movie to watch.
[0083] Because adjacent selectable item controls are related when arranged in a specific order, users expect that operations between adjacent selectable item controls should also be continuous. For example, Movie D and Movie E are two media asset items arranged in chronological order. However, due to interface layout limitations, Movie D and Movie E are located on different rows; Movie D is at the end of the first row, and Movie E is at the beginning of the second row. When the focus cursor is on the control corresponding to Movie D, and the user wants to select the control corresponding to Movie E, according to the continuity of the media asset item arrangement, the user expects to move the focus cursor to the item control of Movie E simply by pressing the right mouse button. Obviously, pressing the down button once and then the left mouse button three times does not meet the user's expectations, resulting in inconvenient interaction and a reduced user experience.
[0084] To facilitate user interaction and improve the user experience, some embodiments of this application provide a column browsing method. By executing this method, the display device 200 can achieve one-click continuous line-by-line browsing, eliminating the need for users to switch buttons while browsing columns. To implement this column browsing method, the display device 200 should include at least a display 260, a user interface, and a controller 250. The display 260 is configured to display a user interface, which includes a focus cursor and multiple selectable column controls. The user interface is configured to receive key input commands from the user. Figure 8 As shown, the controller 250 is configured to execute the program steps corresponding to the column browsing method, including the following:
[0085] Before implementing the category browsing method, the display device 200 needs to display a user interface with category controls. In some embodiments, the display device 200 may, in response to a display instruction for displaying the user interface, obtain a configuration file of the user interface to be displayed, render the user interface according to the configuration file, and display the rendered user interface through the display 260.
[0086] For example, when a user clicks the "Movies" option on the control homepage, the display device 200 receives a display instruction to display the movie interface. At this time, the display device 200 can retrieve video list data from video resources or a database. Then, a video list interface layout is created based on the movie interface configuration file, which is an XML file used to define the interface layout. The configuration file can contain a text view for displaying video names and an image view for displaying video preview images. Next, the video list data is loaded, using data binding, list views, and other display methods to load the retrieved video list data into the interface. Video file paths or video information from the database are bound to interface elements to display the video list on the interface. Finally, the display 260 is controlled to display the video preview images. Image loading libraries (such as Glide, Picasso, etc.) are used to load the corresponding preview images of the optional column controls (video item controls) in the movie interface and display them on the interface.
[0087] During the rendering of the user interface, the display device 200 can also register system event listener services to listen for system events generated by user interactions. For example, when displaying the user interface, the display device 200 can create event listeners; that is, based on the type of event to be listened to (system event), a corresponding system event listener (SystemEvent Listener) can be created. Then, by registering the listener, the created event listener is registered to the corresponding view or component of the user interface to listen for system events generated by user interactions on the corresponding view or control.
[0088] S100: In response to a key press command, listen for system events that execute the key press command.
[0089] During operation, the display device 200 can receive various control commands input by the user. If the control command is input by the remote control (control device 100) associated with the display device 200 or by the remote control button simulated by the mobile terminal 300, the control command is called a button command.
[0090] In some embodiments, the display device 200 may include three stages for handling key commands: receiving, reading, and executing. In the receiving stage, when a user presses a button on a remote control, the encoding chip on the remote control generates an encoded signal containing key information. This encoded signal is transmitted to the display device 200 via infrared or radio signals, enabling the display device 200 to receive it. In the reading stage, after receiving the encoded signal, the display device 200 decodes it using its built-in decoder and stores the decoded key command in memory. In the execution stage, after the decoder has completed decoding the encoded signal, the display device 200 can execute the corresponding operation based on the decoded key command. For example, if the right arrow key is pressed, the display device 200 will move the focus cursor to the right.
[0091] Upon receiving a key press command, the display device 200 can create a system event based on the command. This system event can then be consumed according to the specific command execution. For example, the system event created by the display device 200 based on a key press command could be a KeyEvent. A KeyEvent represents a keyboard event, triggered by a keyboard key or an emulator key. When a user presses or releases a key, the operating system of the display device 200 creates a KeyEvent object. This object contains information related to the key event, including the key code, the key modifier, and the type of key event (pressed or released). This KeyEvent object is passed to the application so that the application can perform corresponding operations based on the key event. When the user presses the "right" arrow key, the system creates a KeyEvent object containing the right arrow key. This object represents a KEY_DOWN event with the keycode KeyEvent.KEYCODE_RIGHT, and also contains the event modifier, timestamp, and other relevant information. The application of the display device 200 can respond to the user's key press operations by processing the KeyEvent object.
[0092] In the process of responding to key operations by handling system events, if the key operation is successfully executed, the created key system event will be consumed, allowing the display device 200 to continue receiving other key commands and creating corresponding system events. However, if the key operation is not successfully executed, the created key system event will not be consumed. Instead, it will be distributed to other processes for execution according to the event dispatch strategy set by the operating system, until the key system event is consumed.
[0093] That is, Figure 9 As shown, in some embodiments, the display device 200 can parse the direction key values from the key commands to determine the direction of the focus cursor movement (S901). Then, based on the layout position information of the first selectable column control currently selected by the focus cursor, it queries adjacent selectable column controls in the cursor movement direction (S902). If an adjacent selectable column control is detected in the cursor movement direction, the focus cursor is moved to select the adjacent selectable column control (S903), and the system event is consumed (S904), and the system event is marked as consumed (S905).
[0094] For example, when display device 200 displays a media asset recommendation interface containing media asset item controls arranged in a 4×2 pattern, in response to a user's key input command by pressing the right arrow key, display device 200 can parse the arrow key value, i.e., KEYCODE_RIGHT, from the key input command. Simultaneously, it creates a system event, KeyEvent.KEYCODE_RIGHT. It then retrieves the media asset item control at the location of the focus cursor, determining that the first selectable column control is the control corresponding to movie A. It also queries the adjacent selectable column control located to the right of movie A, i.e., movie B. Since there is a selectable column control, movie B, to the right of movie A, it can execute a key input command by processing the KeyEvent.KEYCODE_RIGHT system event to move the focus cursor to the media asset item control corresponding to movie B. Furthermore, after executing the key input command to move the focus cursor, display device 200 can consume the created KeyEvent.KEYCODE_RIGHT system event.
[0095] If no adjacent selectable column control is detected in the cursor movement direction, the system event is marked as not consumed (S906). For example, when the focus cursor is at the end of the first line, at the position of Movie D, and the user presses the right arrow key on the remote control, the display device 200 also responds to the key instruction by creating a KeyEvent.KEYCODE_RIGHT system event. However, since the current focus cursor is at the end of the line, there are no other selectable column controls to the right of the media asset item control of Movie D. Therefore, the system event created by pressing the right arrow key will not be consumed. Therefore, based on the rightward movement direction of the right arrow key, if no media asset item control to the right of Movie D is detected, the system event can be marked as not consumed.
[0096] Therefore, after receiving a key command, the display device 200 can execute the key command and, at the same time, determine whether the system event corresponding to the key command has been consumed through registered listening events. If the system event has been consumed, the focus cursor is moved according to the interaction method set by the control system.
[0097] As can be seen, if the display device 200 does not interact according to the column browsing method provided in this embodiment, when the system event created by pressing the right arrow key will not be consumed, the display device 200 will distribute the system event to other interactive control processes according to the original interaction strategy of the control system. For example, the system event may be distributed to the tab switching process for tab switching; or the system event may be distributed to the prompt information display process to prompt the user that the current focus cursor has reached the end control through pop-up windows or other prompt information. In order to facilitate user browsing and interaction, the display device 200 can intercept the system event distribution process in the original interaction strategy when it is determined that the system event has not been consumed, and no longer distribute the system event according to the original interaction strategy, that is:
[0098] S200: If the system event is not consumed, intercept the distribution process of the system event and obtain the serial number of the first selectable column control currently selected by the focus cursor.
[0099] By listening to system events that execute the key commands, the display device 200 can intercept the system event distribution process when it detects that the system event has not been consumed. That is, the display device 200 does not consume the system events created through other control interaction processes, but moves the focus cursor through the set serial number.
[0100] When intercepting the distribution process of system events, the display device 200 can also perform conditional judgments to perform more granular process interception based on different interception conditions. In some embodiments, the display device 200 can read the key values in key commands and obtain a preset key value set. The key values in the key commands are determined when the user inputs the key command; for example, when the right arrow key is pressed, the key value "KEYCODE_RIGHT" can be read from the key command. The preset key value set is a set of key values generated by the display device 200 according to the layout of the user interface. For example, when the layout of the selectable column controls in the user interface is horizontal, the display device 200 can generate a key value set of "[KEYCODE_LEFT,KEYCODE_RIGHT]".
[0101] The read key value is then compared with the key value set. If the read key value is within the key value set, the dispatch process of the corresponding system event is intercepted if it is determined that the system event has not been consumed. For example, if the key value read from the key input is "KEYCODE_RIGHT" and the key value set is "[KEYCODE_LEFT,KEYCODE_RIGHT]", then the dispatch process of the "KeyEvent.KEYCODE_RIGHT" event is intercepted if the system event "KeyEvent.KEYCODE_RIGHT" for the right arrow key has not been consumed.
[0102] In some embodiments, the display device 200 can also determine whether to intercept the distribution process based on whether a serial number is set in the current user interface. That is, when the display device 200 determines that a system event has not been consumed, it can read the serial numbers of each optional column control in the current user interface. If the optional column controls in the current user interface have a serial number set, the distribution process of the system event is intercepted. If the optional column controls in the current user interface do not have a serial number set, the system event can be distributed to other interactive control processes according to the original interaction strategy.
[0103] The serial number is a number set according to the layout position information of multiple optional column controls in the user interface when the user interface is displayed. The layout position information includes the row and column values and the order value within the row and column of the optional column controls.
[0104] Each selectable column control in the user interface can be assigned a serial number, which is a unique numerical code representing the selectable column control. The serial number can be set during the display of the user interface based on the layout position of the selectable column control within the user interface. For example... Figure 10 As shown, in some embodiments, in order to set the serial number, the display device 200 can obtain a configuration file of the user interface to be displayed in response to a display command for the user interface. The configuration file includes a list of column controls and a column display template. The list of column controls records information such as the name, ID, and type of all selectable column controls in the user interface; some of this information can serve as identification information for the selectable column controls. The column display template is used to represent the layout state of the selectable column controls in the user interface, including display position and display size.
[0105] After obtaining the configuration file, the display device 200 can traverse the list of column controls to obtain the identification information of the optional column controls and read the layout position information from the column display template. Then, based on the layout position information and the identification information of the optional column controls, a serial number is assigned to the optional column controls. Finally, the optional column controls are loaded into the user interface according to the display template and the serial number. For example, as... Figure 11 As shown, the recommended tab page of the control homepage of the display device 200 includes 10 media asset recommendation cards. When displaying the recommended tab page, the display device 200 can set serial numbers for the 10 media asset recommendation cards respectively, that is, each row from left to right and multiple rows from top to bottom set a serial number of 1 to 10 for each media asset recommendation card.
[0106] In some embodiments, the serial number is a weighted sum of the row and column values and the sequential values within the row and column. That is, the display device 200 can set row and column weights for the rows or columns of the user interface containing the selectable column controls, and set sequential weights for the selectable column controls in each row or column. The serial number can then be calculated using the following formula:
[0107] N = N1*α + N2*β
[0108] Where N represents the serial number; N1 represents the row number (or column number) of the optional column control; α represents the row and column weights; N2 represents the sequence number of the optional column control in its row (or column); and β represents the sequence weight.
[0109] In some embodiments, the row and column weights and the sequence weights can be set based on the total number of optional column controls in the user interface. That is, when the display device 200 sets a serial number for the optional column controls based on the layout position information and the identification information of the optional column controls, it can obtain the total number of the optional column controls in the user interface, set the row and column weights according to the total number, calculate the product of the row and column weights and the row and column values to generate the row and column components, and calculate the sum of the row and column components and the sequence values within the row and column to generate the serial number.
[0110] In this embodiment, the display device 200 can set serial numbers for the optional column controls in the user interface when displaying the user interface. The serial numbers are calculated using the following formula:
[0111] N = N1 * α + N2
[0112] Where N represents the serial number; N1 represents the row number (or column number) of the optional column control; N2 represents the sequence number of the optional column control in its row (or column); α represents the row and column weights, which can be determined based on the total number of optional column controls in the current user interface.
[0113] For some user interfaces, there may be multiple tabs, and the number of optional column controls contained in each tab can be loaded in real time according to user operations. Therefore, for this type of user interface, the total number of optional column controls may refer to the number of optional column controls in the first page of the user interface configuration. It should be noted that, in order to give each optional column control in the user interface a unique serial number, the row and column weight settings can be greater than or equal to the total number of optional column controls in the user interface.
[0114] For example, if the row and column weights can be set to 1000, then for the movie A control in the media asset recommendation interface, its serial number is set to 1*1000+1=1001, the serial number of the movie B control is set to 1*1000+2=1002, ..., the serial number of the movie E control is set to 2*1000+1=2001, ..., and the serial number of the movie H control is set to 2*1000+4=2004.
[0115] It should be noted that the serial number setting method provided in the above embodiments is merely an example. When setting serial numbers, the display device 200 can also set serial numbers based on other methods. For example, serial numbers can be set for optional column controls in the user interface based on hash codes. That is, the display device 200 can use hash codes to first determine the rules for card numbering, i.e., determine the numbering rules for each card, including whether a specific prefix, suffix, or number length is required. Then, the card features in the interface are obtained, and a hash code is generated based on the card's feature information. The card feature information includes the card's title, content, timestamp, or other attributes. For each card, these attributes are combined and converted into a unique hash code using a hash function. The hash function maps the input to a unique binary value. The generated hash code is then appended to the card's number. It can be appended to the card number as a prefix, suffix, or in other ways as needed.
[0116] As can be seen, by setting serial numbers based on the method provided in the above embodiments, all optional column controls in the user interface can be assigned unique serial numbers, thereby sorting all optional column controls in the user interface through serial numbers so that users can perform interactive operations.
[0117] After setting the serial number, the display device 200 can respond to key commands, detect the position of the current focus cursor, and thus determine the selectable column control currently selected by the focus cursor, i.e., as shown below. Figure 6 As shown, the first optional column control is selected, and its serial number is obtained. For example, when the focus cursor selects movie D in the media asset recommendation interface, the display device 200 can determine that the control corresponding to movie D is the first optional column control, and then obtain the serial number of the control corresponding to movie D, which is 1004.
[0118] S300: Query the second optional column control based on the direction of the focus cursor movement and the serial number of the first optional column control.
[0119] After obtaining the serial number, the display device 200 can query the second optional column control based on the focus cursor movement direction and the serial number of the first optional column control. The focus cursor movement direction is the direction indicated by the key command; that is, when the user presses the left arrow key, the focus cursor movement direction indicated by the key command is to the left; when the user presses the right arrow key, the focus cursor movement direction indicated by the key command is to the right.
[0120] The second optional column control is an optional column control whose serial number is adjacent to the serial number of the first optional column control, determined according to the direction of the focus cursor movement. The direction of the focus cursor movement can be used to determine adjacent serial numbers by increasing or decreasing the serial number. The second optional column control can be queried in the configuration file or control list of the current user interface by comparing serial numbers. That is, when the display device 200 displays the user interface, a control list can be created synchronously. The control list can include parameters such as control ID, control name, control size, control display position, and control serial number. Figure 12 As shown, when the display device 200 determines that the focus cursor is moving to the right (or down), it determines the adjacent serial numbers according to the rule of increasing serial numbers; when the display device 200 determines that the focus cursor is moving to the left (or up), it determines the adjacent serial numbers according to the rule of decreasing serial numbers. For example, if the first selectable column control is the movie D control in the media asset recommendation interface, and the cursor is moving to the right, the display device 200 can, based on the serial number 1004 corresponding to the movie D control, determine the adjacent selectable column control in the control list corresponding to the current user interface as movie E with serial number 2001, that is, the movie E control is the second selectable column control.
[0121] It should be noted that, in determining the optional column controls whose serial numbers are adjacent to the serial number of the first optional column control according to the direction of the focus cursor movement, "adjacent serial numbers" means that, following the pattern of increasing or decreasing serial numbers, the display device 200 can determine the next serial number based on the serial number of the first optional column control. The serial numbers of the second optional column control and the first optional column control can be consecutive or discontinuous numerically. For example, if the first optional column control is at the end of the first row, and the second optional column control is at the beginning of the second row, the serial number of the first optional column control is 1004, and the serial number of the second optional column control is 2001, meaning they are discontinuous numerically. Therefore, when querying the second optional column control, the display device 200 can query the first optional column control with a serial number greater than the first optional column control's serial number, following the increasing (or decreasing) trend of the serial numbers indicated by the key command.
[0122] According to the arrangement pattern of serial numbers, in the user interface, the serial number of the optional column control at the end of the target row is adjacent to the serial number of the optional column control at the beginning of the next row. For example, in the media asset recommendation page, the movie D control is located at the end of the first row, and its serial number is 1004. The movie E control is located at the beginning of the second row, and its serial number is 2001. There are no other serial numbers between serial numbers 1004 and 2001, meaning that the serial number of the control at the end of the row is adjacent to the serial number of the control at the beginning of the next row.
[0123] Similarly, when the optional column controls are arranged vertically, the optional column controls in different columns also follow the above rule, that is, the serial number of the optional column control at the end of the target column in the user interface is adjacent to the serial number of the optional column control at the beginning of the next column after the target column.
[0124] S400: Move the focus cursor to the second selectable column control.
[0125] After finding the second optional column control, the display device 200 can move the focus cursor according to the focus cursor movement direction indicated in the key command, thereby moving the focus cursor to the position where the second optional column control is selected.
[0126] For example, to move the focus cursor, the display device 200 can call the system's `offsetLeftAndRight()` and `offsetTopAndBottom()` methods to move the View in the horizontal or vertical direction. `offsetLeftAndRight(int offset)` is used to move the View with the focus cursor horizontally; a regular `offset` moves it along the positive x-axis, and `getLeft()` and `getRight()` will change accordingly. Similarly, calling `offsetTopAndBottom(int offset)` is used to move the View with the focus cursor vertically; a regular `offset` moves it along the positive y-axis, and `getTop()` and `getBottom()` will change accordingly.
[0127] In addition, the display device 200 can call `scrollBy()` and `scrollTo()` to move the content of the View. `scrollBy()` moves the content horizontally and vertically according to the specified offset. `scrollTo()` causes the View's content to jump directly to the specified position. Furthermore, the `translationX` and `translationY` properties are used to represent the horizontal and vertical distances of the View's translation.
[0128] Since the serial numbers are set so that the serial numbers of the optional column control at the end of a row and the optional column control at the beginning of the next row are adjacent, line-by-line browsing can be achieved when the key command received by the display device 200 is multiple consecutive inputs of the same direction key.
[0129] As can be seen, in the above embodiments, the display device 200 listens to system events that execute key commands and intercepts the system event distribution process when the system event has not been consumed. By obtaining the serial number of the first optional column control currently selected by the focus cursor and combining it with the direction of the focus cursor movement, the display device 200 queries the second optional column control and moves the focus cursor to the second optional column control. By adjusting the system event distribution logic, the display device 200 serializes the optional column controls and intercepts the system event distribution, so that users do not need to change keys when browsing columns, realizing one-click continuous browsing and simplifying the user's operation complexity.
[0130] In some embodiments, when the display device 200 searches for the second optional column control based on the focus cursor movement direction and the serial number of the first optional column control, it may not be able to find the second optional control. For example, when the first optional column control is the last media asset item control in the current user interface, and the user presses the right or down arrow key, the second optional control cannot be found because there are no controls with adjacent serial numbers in the current user interface. In this case, the display device 200 can cancel the interception of the system event distribution process, allowing the display device 200 to respond to key commands according to the original interaction strategy.
[0131] For example, if the selectable column controls in the current user interface are Movie A to Movie H, then when the focus cursor is on Movie H, since the serial number corresponding to Movie H is 2004, and there is no control in the current user interface with a serial number greater than 2004, the display device 200 can cancel the interception of the system event distribution process and distribute the system event to the tab switching process, so as to switch the user interface to the "TV Series" tab through the tab switching process.
[0132] In some embodiments, the display device 200 may also listen to movement events during the movement of the focus cursor to the second selectable column control. Since movement events are also a type of system event, they can be consumed after the movement is completed, following the system event maintenance method described in the above embodiments.
[0133] If the movement event is not consumed, the common parent control of the first selectable category control can be traced back, where the common parent control is the parent control of the selectable category control; the common parent control is used to switch tabs in the user interface. For example, such as Figure 13As shown, when the focus cursor selects the Media Asset J control in the Media Asset Recommendation interface, and the user presses the right arrow key on the remote control, since there are no more selectable column controls to the right and next to the Media Asset J control, the movement event created to move the focus cursor is not consumed. At this time, the display device 200 can listen to the fact that the movement event has not been consumed and trace back to the common parent control of the first selectable column control, the "Recommended" control.
[0134] It should be noted that, in this embodiment, the common parent control can also be assigned a serial number when rendering the user interface. Since there can be a hierarchical relationship between various controls in the user interface—for example, optional column controls are the next level below the common parent control—as serial numbers can be associated between the common parent control and its next-level optional column controls when setting serial numbers. That is, when setting serial numbers, the display device 200 can first assign a serial number to common parent controls such as "Recommended," "Movies," and "TV Series" according to the order of the tab names in the user interface. For example, the serial number of the "Recommended" control is 00, the serial number of the "Movies" control is 01, and the serial number of the "TV Series" control is 02. Then, based on the common parent control, serial numbers are set for the optional column controls in the corresponding tabs. For example, in the "Recommended" page, the Media Asset A project control is assigned the number 001001; in the Movies page, the Movie A project control is assigned the number 011001, and so on.
[0135] Based on the above example, when setting the serial number, the display device 200 can set specific encoding rules according to the hierarchical relationship between controls. For example, the first two digits of the serial number of the optional column control are the serial number of the common parent control, the third digit is the row number of the row, and the last three digits are the sequence number.
[0136] Therefore, in some embodiments, the serial number can also be set according to the type of control, and when setting the serial number, the display device 200 can set the serial number according to the entire interface or according to the partition number of the displayed content. For example, when the user interface includes multiple tabs such as "Recommended", "Movies", and "TV Series", and the "Recommended" tab is currently displayed in the user interface, the display device 200 sets serial numbers for the common parent controls such as the title controls of each tab, "Recommended", "Movies", and "TV Series", and sets serial numbers for the media asset items in the "Recommended" tab.
[0137] After tracing back to the common parent control of the first selectable category control, the display device 200 can query the adjacent parent control of the common parent control based on the direction of the focus cursor movement. For example, since the user presses the right arrow key on the remote control, the focus cursor moves to the right. At this time, based on the direction of the focus cursor movement, the common parent control to the right of the "Recommended" control can be found to be the "Movie" control.
[0138] The display device 200 then moves the focus cursor to a third selectable column control, wherein the third selectable column control is the selectable column control with the smallest or largest serial number in the tab corresponding to the adjacent parent control. For example, Figure 14 As shown, when the adjacent parent control is found to be the "Movie" control, the display device 200 can switch to the "Movie" tab in the user interface and move the focus cursor to the first selectable column control in the Movie tab, namely Movie A control.
[0139] like Figure 15 As shown, in some embodiments, after obtaining the serial number of the first selectable column control currently selected by the focus cursor (S1501), the display device 200 can further determine the extreme value of the serial number of the user interface according to the movement direction of the focus cursor (S1502), wherein the extreme value of the serial number is the minimum or maximum serial number of the selectable column control in the user interface. For example, the media asset recommendation interface includes 10 media asset items, and the serial numbers are set as follows: Media Asset A, 1001; Media Asset B, 1002; Media Asset C, 2001; Media Asset D, 2002; Media Asset E, 2003; Media Asset F, 2004; Media Asset G, 3001; Media Asset H, 3002; Media Asset I, 3003; Media Asset J, 3004. Then, in the current user interface, the extreme values of the serial number are 1001 and 3004, respectively. That is, the minimum serial number is 1001 and the maximum serial number is 3004.
[0140] After determining the extreme values of the serial numbers in the user interface, the display device 200 can compare the serial number of the first selectable column control with the extreme values to determine whether the first selectable column control is the last or first control in the current user interface. Obviously, the extreme values of the serial numbers used for judgment differ depending on the key press. That is, when the user presses the right arrow key, the display device 200 uses the maximum serial number for judgment, while when the user presses the left arrow key, the display device 200 uses the minimum serial number for judgment.
[0141] By comparison, if the serial number of the first optional column control is equal to the extreme value of the serial number, it indicates that the current optional column control is the last control (or the first control). Therefore, the display device 200 can generate a list request (S1503) and, in response to the list request, set a serial number for the optional column controls in the adjacent user interface (S1504). If the serial number of the first optional column control is not equal to the extreme value of the serial number, the step of querying the second optional column control according to the focus cursor movement direction and the serial number of the first optional column control is executed (S1505).
[0142] For example, if the current card control is the last in its sequence, pressing the right arrow key will trigger the loading of the next page in the homepage list. Then, the sequence number of the card controls on the next page will be calculated, and the card control on the next page will receive focus. If the current card control is not the last in its category, when the user presses the right arrow key, the event dispatch process can find the control to the right of the current control. The move event will then be consumed, the transmission will end, and the focus cursor will move to the card control to the right of the current row.
[0143] If the current control is the last control in this section, and the move event is not consumed when the user presses the right arrow key, the display device 200 needs to follow the event dispatch process back to the common parent control. The display device 200 obtains the top control of the tab corresponding to the next common parent control through the event dispatch process based on the serial number set by the common parent control, and makes the top control of the tab get the focus cursor through the focus management process, so that the focus cursor can move to the top control of the next tab.
[0144] For example, such as Figure 16 As shown, during the browsing process according to the above embodiment, the display device 200 can obtain the key command of the right arrow key based on the InputManager, and create a system event KeyEvent.KEYCODE_RIGHT based on the key command. Simultaneously, it uses the System Event Listener service to monitor whether the system event has been consumed. When the system event has not been consumed, the display device 200 can move the focus cursor to the second selectable column control through the focus management process, as provided in the above embodiment.
[0145] During the movement of the focus cursor, a cursor movement event `moveEvent.Cursor` is generated simultaneously. Meanwhile, the display device 200 also listens for the consumption of the cursor movement event via the System Event Listener service. When it detects that the cursor movement event has not been consumed, it can call the event dispatch process `dispatchTouchEvent()` to dispatch the cursor movement event to the System UI service (SystemUI). The System UI service then traces back to the common parent control "Recommended," and based on the serial number 00 of the common parent control "Recommended," it finds the next common parent control located to the right of the "Recommended" control, the "Movie" control (serial number 01). After finding the next common parent control "Movie," the display device 200 can switch the displayed tabs to the Movies tab through the Window Manager, retrieve the "Movie A" control (011001) located at the beginning of the first row in the Movies tab, and move the focus cursor to the "Movie A" control through the focus management process.
[0146] In some embodiments, if the serial number of the first optional column control is equal to the extreme value of the serial number, i.e., the first optional column control is the last (or first) control of the current user interface, then the display device 200 can obtain the list type of the user interface. The list type includes a static list and a scrollable list. A static list is a list with a fixed number of displayed optional column controls, while a scrollable list is a list with a variable number of displayed optional column controls. For example, the user interface may have a scrollable list that can be slid left and right, containing 10 media asset item controls. When displaying the user interface, the display device 200 can first display 3 media asset item controls from the scrollable list, following the arrangement of other media asset item controls in the user interface. After the user moves the focus cursor to the third media asset item control and then presses the right arrow key, the scrollable list can adjust the sliding window to display the fourth media asset item control. When the user presses the right arrow key again, the scrollable list can adjust the sliding window to display the fifth media asset item control, and so on.
[0147] Therefore, when the user interface includes a scrollable list (i.e., the list type is a scrollable list), the scrolling window can be moved according to the direction of the focus cursor movement, and a serial number can be set for the optional column controls in the scrolling window after the movement, based on the extreme value of the serial number. This moves the focus cursor to the fourth optional column control, which is the optional column control in the scrolling window after the movement whose serial number is adjacent to that of the first optional column control.
[0148] For example, such as Figure 17As shown, when the focus cursor selects the media asset D control, if the user presses the right arrow key, the display device 200 can respond to the right arrow key command and control the sliding list to adjust the sliding window to the right to display the media asset E control. At this time, the display device 200 needs to load the media asset E control and subsequent controls, and set the serial number 1005 of the media asset E control according to the serial number 1004 of the media asset D control. Then, according to the set serial number, the focus cursor is moved to the media asset E control.
[0149] As can be seen, when the display device 200 provided in the above embodiment includes a scrollable list in the user interface, it can enable continuous right swiping according to the serial number until all invisible optional column controls in the current row are viewed, which facilitates the user to perform cursor movement operations and improves the user experience.
[0150] like Figure 18 As shown, in some embodiments, the display device 200 can also obtain the number of consecutive key presses of the same direction key in the key command within a unit detection cycle (S1801). For example, if the unit detection cycle is 1 minute, the display device 200 can count the number of times the user presses the right key consecutively within 1 minute.
[0151] After obtaining the number of consecutive key presses, the display device 200 can compare the number of consecutive key presses with a preset key press threshold. If the number of consecutive key presses is greater than or equal to the key press threshold, a preloading interval is calculated based on the total number of serial numbers of the selectable column controls in the user interface (S1802). The preloading interval is the interval composed of the serial numbers of the first or second target number of selectable column controls in the user interface. For example, if the user interface includes 10 media asset controls, the preloading interval would be serial numbers 1001-1002 and 3003-3004.
[0152] When the focus cursor selects an optional column control with the serial number in the preload interval, the configuration file of the adjacent user interface is obtained (S1804), and the serial number is set for the optional column control in the adjacent user interface according to the configuration file (S1805). For example, the display device 200 can determine the preload interval, i.e., the interval with serial numbers 3003 to 3004, when the user presses the right arrow key more than 5 times consecutively. When the focus cursor selects the media asset control with serial number 3003, the configuration file of the "Movies" tab is preloaded, and the serial number of the movie control in the movie tab is set according to the configuration file.
[0153] As can be seen, in the above embodiments, the display device 200 can determine whether the focus cursor has reached the bottom during the user's continuous serial browsing process, and trigger the preloading of controls on the adjacent interface or the next page of the user interface, thereby improving the switching and display speed of the user interface.
[0154] Based on the aforementioned display device 200, some embodiments of this application also provide a method for browsing columns, including the following steps:
[0155] In response to user-inputted keystroke commands, listen for system events that execute the keystroke commands;
[0156] If the system event is not consumed, the system event distribution process is intercepted, and the serial number of the first selectable column control currently selected by the focus cursor is obtained. The serial number is a number set according to the layout position information of multiple selectable column controls in the user interface when the user interface is displayed. The layout position information includes the row and column values and the order value within the row and column of the selectable column control.
[0157] Based on the direction of the focus cursor movement and the serial number of the first optional column control, the second optional column control is queried. The direction of the focus cursor movement is the direction indicated by the key command. The second optional column control is an optional column control whose serial number is adjacent to the serial number of the first optional column control, determined according to the direction of the focus cursor movement.
[0158] Move the focus cursor to the second selectable column control.
[0159] As can be seen from the above technical solutions, some embodiments of this application provide a display device and a method for browsing categories. The method can respond to key commands and listen for system events that execute key commands. If the system event is not consumed, the method intercepts the system event distribution process and obtains the serial number of the first selectable category control currently selected by the focus cursor. Then, based on the focus cursor's movement direction and the serial number of the first selectable category control, it queries the second selectable category control adjacent to the serial number, thereby moving the focus cursor to the second selectable category control. The serial number is a number set according to the row and column values and the order value within the row and column of the selectable category controls in the user interface. This method, by adjusting the system event distribution logic, serializes the selectable category controls and intercepts system event distribution, allowing users to browse categories without changing keys, achieving one-click continuous browsing and solving the problem of inconvenience when moving the focus cursor between multiple options.
[0160] The same or similar parts among the various embodiments in this specification can be referred to mutually, and will not be repeated here.
[0161] Those skilled in the art will clearly understand that the techniques in the embodiments of the present invention can be implemented using software plus necessary general-purpose hardware platforms. Based on this understanding, the technical solutions in the embodiments of the present invention, or the parts that contribute to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods of various embodiments or certain parts of the embodiments of the present invention.
[0162] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features therein. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
[0163] For ease of explanation, the above description has been provided in conjunction with specific embodiments. However, the above exemplary discussion is not intended to be exhaustive or to limit the embodiments to the specific forms disclosed above. Various modifications and variations can be obtained based on the above teachings. The selection and description of the above embodiments are for the purpose of better explaining the principles and practical applications, thereby enabling those skilled in the art to better utilize the described embodiments and various different variations of embodiments suitable for specific use considerations.
Claims
1. A display device, characterized in that, include: The display is configured to show a user interface, which includes a focus cursor and multiple optional column controls; The user interface is configured to receive key input commands from the user. The controller is configured as follows: In response to the key press command, listen for system events that execute the key press command; If the system event is not consumed, the system event distribution process is intercepted, and the serial number of the first optional column control currently selected by the focus cursor is obtained. The serial number is a number set according to the layout position information of multiple optional column controls in the user interface when the user interface is displayed. The layout position information includes the row and column values and the order value within the row and column of the optional column control. Based on the direction of the focus cursor movement and the serial number of the first optional column control, the second optional column control is queried, wherein the direction of the focus cursor movement is the direction indicated by the key command; the second optional column control is the optional column control that is adjacent to the serial number of the first optional column control, determined according to the direction of the focus cursor movement. Move the focus cursor to the second selectable column control.
2. The display device according to claim 1, characterized in that, In the user interface, the serial number of the optional column control at the end of the target row is adjacent to the serial number of the optional column control at the beginning of the next row after the target row. And / or, the serial number of the optional column control at the end of the target column in the user interface is adjacent to the serial number of the optional column control at the beginning of the next column after the target column.
3. The display device according to claim 1, characterized in that, The controller is also configured to: In response to a display command for displaying a user interface, a configuration file for the user interface to be displayed is obtained, the configuration file including a list of column controls and a column display template; Iterate through the list of column controls to obtain the identification information of the selectable column controls; Read the layout position information from the column display template; Based on the layout position information and the identification information of the optional column control, a serial number is set for the optional column control. The serial number is the weighted sum of the row and column values and the sequential values within the row and column. According to the display template and the serial number, the optional column control is loaded in the user interface.
4. The display device according to claim 3, characterized in that, The controller executes the following steps: based on the layout position information and the identification information of the optional column controls, it sets a serial number for the optional column controls, and is also configured to: Get the total number of the selectable column controls in the user interface; Set row and column weights based on the total quantity; Calculate the product of the row and column weights and the row and column values to generate row and column components; The sum of the row and column components and the sequential values within the row and column is calculated to generate the serial number.
5. The display device according to claim 1, characterized in that, The controller is configured to move the focus cursor to the second selectable column control and is also configured to: Listen for movement events during the movement of the focused cursor; If the movement event is not consumed, trace back to the common parent control of the first selectable column control, which is the parent control of the selectable column control; the common parent control is used to switch tabs in the user interface; Based on the direction of the focus cursor movement, query the adjacent parent controls of the common parent control; Move the focus cursor to the third optional column control, which is the optional column control with the smallest or largest serial number in the tab corresponding to the adjacent parent control.
6. The display device according to claim 1, characterized in that, After the controller performs the step of obtaining the serial number of the first selectable column control currently selected by the focus cursor, it is also configured to: The extreme value of the serial number of the user interface is determined according to the direction of movement of the focus cursor. The extreme value of the serial number is the minimum or maximum serial number of the selectable column control in the user interface. If the serial number of the first optional column control is equal to the extreme value of the serial number, a list request is generated, and in response to the list request, a serial number is set for the optional column controls in the adjacent user interface. If the serial number of the first optional column control is not equal to the extreme value of the serial number, the step of querying the second optional column control based on the focus cursor movement direction and the serial number of the first optional column control is executed.
7. The display device according to claim 6, characterized in that, If the serial number of the first optional column control is equal to the extreme value of the serial number, the controller is further configured to: Obtain the list type of the user interface; If the list type is a scrollable list, move the scroll window in the direction of the focus cursor movement; Based on the extreme value of the serial number, set the serial number for the selectable column control in the sliding window after it has been moved; Move the focus cursor to the fourth optional column control, which is the optional column control in the sliding window that is adjacent to the serial number of the first optional column control after the cursor is moved.
8. The display device according to claim 1, characterized in that, The controller is also configured to: The number of consecutive key presses of the same direction key in the key commands within a unit detection period is obtained; If the number of consecutive key presses is greater than or equal to the key press threshold, a preloading interval is calculated based on the total number of serial numbers of the selectable column controls in the user interface. The preloading interval is the interval composed of the serial numbers of the first target number of selectable column controls or the last target number of selectable column controls in the user interface. When the focus cursor selects the optional column control with the serial number in the preload interval, the configuration file of the adjacent user interface is obtained; Based on the configuration file of the adjacent user interface, set the serial number for the optional column controls in the adjacent user interface.
9. The display device according to claim 1, characterized in that, The controller is also configured to: The direction key values are parsed from the key commands to determine the direction of cursor movement; Based on the layout position information of the first selectable column control currently selected by the focus cursor, query the adjacent selectable column controls in the cursor movement direction; If an adjacent selectable column control is detected in the cursor movement direction, move the focus cursor to select the adjacent selectable column control, consume the system event, and mark the system event as consumed; If no adjacent selectable column control is detected in the cursor movement direction, the system event is marked as not consumed.
10. A method for browsing categories, characterized in that, Applied to the display device according to any one of claims 1-9; the method includes: In response to user-inputted keystroke commands, listen for system events that execute the keystroke commands; If the system event is not consumed, the system event distribution process is intercepted, and the serial number of the first selectable column control currently selected by the focus cursor is obtained. The serial number is a number set according to the layout position information of multiple selectable column controls in the user interface when the user interface is displayed. The layout position information includes the row and column values and the order value within the row and column of the selectable column control. Based on the direction of the focus cursor movement and the serial number of the first optional column control, the second optional column control is queried. The direction of the focus cursor movement is the direction indicated by the key command. The second optional column control is an optional column control whose serial number is adjacent to the serial number of the first optional column control, determined according to the direction of the focus cursor movement. Move the focus cursor to the second selectable column control.
Citation Information
Patent Citations
Control method for focus movements on EPG user interface, and display terminal
CN108810647A
User interface for a remote control application
US20030103088A1