Display method and device

By automatically determining the display position of the suspended form, the problem of the lower-level form information being blocked in multi-form display scenes is solved, and the floating form is automatically avoided by non-suspended forms, improving the user experience.

CN119032338BActive Publication Date: 2025-06-27HUAWEI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202480002157.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2023-05-31
Filing Date
2024-05-16
Publication Date
2025-06-27
Estimated Expiration
2044-05-16

AI Technical Summary

Technical Problem

In a multi-form display scenario, the key information of the lower-level form is easily blocked by the upper-level form, resulting in users needing to manually operate to view the information of the lower-level form, affecting the device user experience.

Method used

Provide a display method, by automatically determining the display position of the suspended form, so that there is no occlusion between the suspended form and multiple non-suspended forms, thereby increasing the number of unobstructed forms and providing more key information for the form to the user.

Benefits of technology

There is no need for users to manually operate the suspended form, so that the suspended form automatically avoids non-suspended forms, improves the user's display device experience, and provides more key information about the form.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119032338B_ABST
    Figure CN119032338B_ABST
Patent Text Reader

Abstract

An embodiment of the present application provides a display method and device, which relate to the field of display devices. In this method, multiple forms are displayed. The multiple forms include n first forms, where n is an integer greater than or equal to two, and the first form is a non-floating form. When a preset condition is satisfied, a first position of the floating form is determined. The floating form is displayed at the first position. There is no occlusion between the floating form and at least two of the n first forms. When the preset condition is satisfied, this method determines the first position of the floating form and displays the floating form at this first position, so that there is no occlusion between the floating form and at least two of the n first forms. Without the user manually operating the floating form, the floating form can automatically avoid the first form, and the number of non-occluded first forms can be increased to provide key information of more forms to the user, improving the user experience of using the display device.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application claims the priority of a Chinese patent application with an application number of 202310647147.9 and an application title of "Display Method and Device" submitted to the China National Intellectual Property Administration on May 31, 2023. The entire content thereof is incorporated herein by reference. Technical Field

[0002] Embodiments of the present application relate to the field of display devices, and in particular, to a display method and device. Background Art

[0003] As the size of the screen of display devices becomes larger and larger, there are scenarios where multiple windows (or controls) are displayed on the screen for parallel transaction processing, such as multi-window operations, multitasking, picture-in-picture, etc. However, in the above scenarios of multi-window display, there will be a situation where windows overlap and display, and the key information of the lower-layer window is blocked. When a user wants to view the key information of the lower-layer window, they need to first move the upper-layer window away, resulting in a poor user experience in using the device. How to avoid the key information of the lower-layer window from being blocked is a technical problem that urgently needs to be solved in this field. Summary of the Invention

[0004] The present application provides a display method and device, and the floating window can automatically avoid the non-floating windows in the lower layer for display.

[0005] In a first aspect, a display method is provided. This display method can be applied to a display device or a chip in the display device. Specifically, the method includes the following steps: Display multiple windows. The multiple windows include n first windows, where n is an integer greater than or equal to two, and the first windows are non-floating windows. When a preset condition is satisfied, determine the first position of the floating window. Display the floating window at the first position. There is no occlusion between the floating window and at least two of the n first windows.

[0006] It can be seen that in this solution, when the preset condition is satisfied, the first position of the floating window is determined, and the floating window is displayed at this first position so that there is no occlusion between the floating window and at least two of the n first windows. Without the user manually operating the floating window, the floating window can automatically avoid the first window, and the number of non-occluded first windows can be increased to provide more key information of the windows to the user, improving the user experience in using the display device.

[0007] In a possible implementation manner of the first aspect, the preset condition includes any one of the following: a new floating window is added; the display position of the floating window is updated; or, the display area of the floating window is updated.

[0008] When a floating window is about to newly appear on the display screen, the method of the embodiments of the present application is started to determine the display position of the floating window, that is, the first position.

[0009] When the display position of the floating window is updated, for example, when the user drags the position of the floating window from display position A to display position B, at this time, the method of the embodiment of the present application is started to re-determine the display position of the floating window, that is, the first position.

[0010] When the display area of the floating window is updated (becomes larger or smaller), the occlusion relationship between the changed floating window and the first window in the lower layer changes. At this time, the method of the embodiment of the present application is started to re-determine the display position of the floating window.

[0011] In a possible implementation manner of the first aspect, there is an avoidance priority among the n first windows. The avoidance priority of the first window can be set according to the actual situation without special limitation. For example, the avoidance priority of the first window is set according to the degree of importance to the user.

[0012] In a possible implementation manner of the first aspect, the above-mentioned determination of the first position of the floating window specifically includes the following steps: when there is one first window among the n first windows that is occluded by the floating window, determine at least one candidate position corresponding to the first window. When the floating window is displayed at at least one candidate position, it does not occlude at least the first window and the windows with an avoidance priority higher than that of the first window. Determine the candidate position with the largest avoidance quantity among the at least one candidate position as the first position. The avoidance quantity of the above-mentioned candidate position is the number of windows that the floating window can not occlude among the n first windows when it is displayed at the candidate position.

[0013] It can be seen that the present solution provides a possible method for determining the first position of the floating window, which can ensure that the first window with a higher avoidance priority is not occluded by the floating window, so that the user can smoothly obtain the key information carried by the first window with a higher avoidance priority.

[0014] In a possible implementation manner of the first aspect, the above-mentioned determination of the first position of the floating window specifically includes the following steps: when there are two or more first windows among the n first windows that are occluded by the floating window, determine at least one candidate position corresponding to each occluded first window. When the floating window is displayed at at least one candidate position, it does not occlude at least the occluded first window and the windows with an avoidance priority higher than that of the occluded first window. Determine the candidate position with the largest avoidance quantity as the first position. The avoidance quantity of the above-mentioned candidate position is the number of windows that the floating window can not occlude among the n first windows when it is displayed at the candidate position.

[0015] In a possible implementation of the first aspect, when there are two or more first forms among the n first forms that are blocked by the floating form, the above determination of the first position of the floating form specifically includes the following steps:

[0016] Determine one form from the forms among the n first forms that are blocked by the floating form as the second form. Determine at least one candidate position for the second form. The at least one candidate position does not block the second form and the floating form can be completely displayed at the candidate position. When a form with a higher avoidance priority than the second form is blocked by the floating form displayed at a candidate position, then remove that candidate position from the at least one candidate position. When the avoidance count of a candidate position is equal to n, take that candidate position as the first position and stop executing the following steps. The avoidance count of a candidate position is the number of forms among the n first forms that the floating form can avoid blocking when displayed at that candidate position. When the avoidance count of a candidate position is less than n, record the avoidance count of that candidate position. Remove the second form from the forms that are blocked by the floating form and repeat the above steps until the forms that are blocked by the floating form are empty. Take the candidate position with the largest avoidance count among the recorded avoidance counts as the first position.

[0017] It can be seen that this solution provides another possible method for determining the first position of the floating form. In this method, by polling each candidate position, when the avoidance count of a candidate position is equal to n, taking that candidate position as the first position and stopping the subsequent steps can, to a certain extent, reduce the computational complexity of determining the first position, improve the speed of determining the first position, and thus improve the user experience of the display device.

[0018] In a possible implementation of the first aspect, when there are two or more first forms among the n first forms that are blocked by the floating form, the above determination of the first position of the floating form specifically includes the following steps:

[0019] Determine a window with the highest avoidance priority from the n windows that are blocked by the floating window and the first window as the second window. Determine at least one candidate position for the second window. The at least one candidate position does not block the second window and the floating window can be fully displayed at the candidate position. When a window with an avoidance priority higher than that of the second window is blocked by the floating window displayed at a candidate position, remove the candidate position from the at least one candidate position. When the avoidance count of the candidate position is equal to n, use the candidate position as the first position and stop executing the following steps. The avoidance count of the candidate position is the number of windows that can avoid blocking the first window among the n first windows when the floating window is displayed at the candidate position. When the avoidance count of the candidate position is less than n, record the avoidance count of the candidate position. Remove the second window from the windows that are blocked by the floating window and repeat the above steps until the windows that are blocked by the floating window are empty. Use the candidate position with the largest recorded avoidance count as the first position.

[0020] It can be seen that this solution provides another possible method for determining the first position of the floating window. In this method, by polling each candidate position according to the avoidance priority, when the avoidance count of the candidate position is equal to n, using the candidate position as the first position and stopping the subsequent steps can further reduce the computational complexity of determining the first position, improve the speed of determining the first position, and thus improve the user experience of the display device.

[0021] In a possible implementation manner of the first aspect, when the avoidance count of the candidate position is less than n, if the avoidance count of the candidate position is inconsistent with the recorded avoidance count of the candidate position; or, when the avoidance count of the candidate position is consistent with the recorded avoidance count of the candidate position, and the avoidance priority of the window corresponding to the candidate position is not lower than the avoidance priority of the window corresponding to the recorded candidate position, record the avoidance count of the candidate position.

[0022] On the contrary, when the avoidance count of the candidate position is less than n and the avoidance count of the candidate position is consistent with the recorded avoidance count of the candidate position, do not record the avoidance count of the candidate position. Or, when the avoidance count of the candidate position is less than n, the avoidance count of the candidate position is consistent with the recorded avoidance count of the candidate position, and the avoidance priority of the window corresponding to the candidate position is lower than the avoidance priority of the window corresponding to the recorded candidate position, do not record the avoidance count of the candidate position. This is beneficial to reducing the data volume of the recorded avoidance count, thereby improving the computational complexity of determining the first position based on the avoidance count and improving the speed of determining the first position.

[0023] In a possible implementation manner of the first aspect, when there are multiple candidate positions with the largest avoidance count, select the candidate position corresponding to the window with the highest avoidance priority among the multiple candidate positions with the largest avoidance count as the first position.

[0024] It can be seen that when there are multiple candidate positions with the largest number of avoidances, selecting the candidate position with the highest avoidance priority as the first position can ensure that the first window with a higher avoidance priority is not blocked, so that the user can smoothly obtain the key information carried by the first window with a higher avoidance priority.

[0025] The second aspect also provides a display method, which is applied to a display device or a chip in the display device. Specifically, the method includes the following steps: displaying a plurality of windows. The plurality of windows include a floating window and n first windows, where n is an integer greater than or equal to 2, and the first windows are non-floating windows. When the n first windows are updated, determine the first position of the floating window. The update includes that at least one of the n first windows is replaced and / or the total number of windows increases. Display the floating window at the first position. There is no occlusion between the floating window and at least two of the updated plurality of first windows.

[0026] It can be seen that by using this solution, when the n first windows are updated, the first position of the floating window is determined so that there is no occlusion between the floating window and at least two of the updated plurality of first windows. Without the user manually operating the floating window, the floating window can automatically avoid the first window, and the number of first windows that are not blocked can be increased, so as to provide the key information of more windows to the user and improve the user experience of using the display device.

[0027] In a possible implementation manner of the second aspect, there is an avoidance priority between the first windows.

[0028] In a possible implementation manner of the second aspect, the above determination of the first position of the floating window specifically includes the following steps: when there is one first window among the updated plurality of first windows that is occluded by the floating window, determine at least one candidate position corresponding to the occluded first window. When the floating window is displayed at at least one candidate position, it does not occlude at least the first window and the windows with an avoidance priority higher than that of the first window. Determine the candidate position with the largest avoidance number among the at least one candidate position as the first position. The avoidance number of the candidate position is the number of windows that the floating window can not occlude the first windows in the updated plurality of first windows when it is displayed at the candidate position.

[0029] In a possible implementation manner of the second aspect, the determining of the first position of the floating window specifically includes the following steps: When there are two or more first windows among the updated multiple first windows that are blocked by the floating window, determine at least one candidate position corresponding to each blocked first window. When the floating window is displayed at at least one candidate position, it does not block at least the blocked first window and the windows with a higher avoidance priority than that of the blocked first window. Determine the candidate position with the largest number of avoided windows as the first position. The number of avoided windows of the candidate position is the number of windows that can avoid blocking the first windows among the updated multiple first windows when the floating window is displayed at this candidate position.

[0030] In a possible implementation manner of the second aspect, when there are multiple candidate positions with the largest number of avoided windows, select the candidate position corresponding to the window with the highest avoidance priority among the multiple candidate positions with the largest number of avoided windows as the first position.

[0031] The third aspect further provides a display device, which includes a module or unit for implementing or executing the steps of the display method described in the first aspect or the second aspect above.

[0032] The fourth aspect further provides a display device, including a processor and a memory. Among them, the processor is connected to the memory. The memory is used to store program code, and the processor is used to call the program code to execute the display method described in the first aspect or the second aspect above.

[0033] The fifth aspect further provides a readable storage medium, which stores a program, and the program is executed by a processor to implement the display method described in the first aspect or the second aspect above.

[0034] The sixth aspect further provides a program product containing instructions. When the program product runs on a device, the device is enabled to execute the display method described in the first aspect or the second aspect above.

[0035] The seventh aspect further provides a chip, which includes a processor and a data interface. The processor reads instructions stored on a memory through the data interface and executes the display method described in the first aspect or the second aspect above.

[0036] Optionally, as an implementation manner, the chip may further include a memory, and instructions are stored in the memory. The processor is used to execute the instructions stored on the memory. When the instructions are executed, the processor is used to execute the display method described in the first aspect or the second aspect above. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] The drawings used in the embodiments of the present application are introduced below.

[0038] Figure 1A It is a schematic diagram of a non-floating window provided by an embodiment of the present application;

[0039] Figure 1B It is a schematic diagram of a floating window provided by an embodiment of the present application;

[0040] Figure 1C It is a schematic diagram of the effect of a display method provided by an embodiment of the present application;

[0041] Figure 2 It is a schematic flowchart of a display method provided by an embodiment of the present application;

[0042] Figure 3 It is a specific schematic flowchart of a display method provided by an embodiment of the present application;

[0043] Figure 4 It is a schematic flowchart of another display method provided by an embodiment of the present application;

[0044] Figure 5A It is a schematic diagram of a first window and a floating window provided by an embodiment of the present application;

[0045] Figure 5B It is a schematic diagram of another first window and a floating window provided by an embodiment of the present application;

[0046] Figure 5C It is a schematic diagram of another first window and a floating window provided by an embodiment of the present application;

[0047] Figure 6 It is a specific schematic flowchart of another display method provided by an embodiment of the present application;

[0048] Figure 7 It is a schematic structural diagram of a display device provided by an embodiment of the present invention;

[0049] Figure 8 It is a schematic structural diagram of a display device provided by an embodiment of the present invention. Detailed implementation manners

[0050] Next, the technical solutions in the present application will be described with reference to the accompanying drawings.

[0051] Since the applications involved in the embodiments of the present application, for the sake of easy understanding, the following first introduces the relevant terms and other related concepts involved in the embodiments of the present application.

[0052] In the embodiments of the present application, words such as "exemplary" or "for example" are used to give examples, illustrations or explanations. Any embodiment or design solution described as "exemplary" or "for example" in the present application should not be construed as being more preferred or having more advantages than other embodiments or design solutions. Rather, the use of words such as "exemplary" or "for example" is intended to present relevant concepts in a specific manner.

[0053] In the embodiments of the present application, "at least one" mentioned refers to one or more, and "a plurality" refers to two or more. "At least one of the following" or its similar expressions refer to any combination of these items, including any combination of single item (s) or plural items (s). For example, at least one of a, b, or c can represent: a, b, c, (a and b), (a and c), (b and c), or (a and b and c), where a, b, c can be single or multiple. "And / or" describes the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. Here, A and B can be singular or plural. The character " / " generally represents an "or" relationship between the associated objects before and after. And the serial numbers of the steps in the embodiments of the present application (such as step S1, step S21, etc.) are only used to distinguish different steps and do not limit the order of execution between steps.

[0054] Moreover, unless otherwise stated, the ordinal numbers such as "first" and "second" used in the embodiments of the present application are used to distinguish multiple objects and do not limit the order, time sequence, priority or importance of multiple objects. For example, the first device and the second device are only for convenience of description, and do not indicate differences in the structures, importance, etc. of the first device and the second device. In some embodiments, the first device and the second device can also be the same device.

[0055] As used in the above embodiments, depending on the context, the term "when..." can be interpreted to mean "if...", "after...", "in response to determining...", or "in response to detecting...". The above are only optional embodiments of the present application and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the concept and principle of the present application should be included in the protection scope of the present application.

[0056] As the size of the screen of the display device is getting larger and larger, there are scenarios where multiple windows (or controls) are superimposed on the screen for parallel processing of transactions, such as multi-window operations, multitasking, picture-in-picture, etc. For a touch-supported display device, the user can manually drag the upper window to avoid blocking the lower window to obtain the key information of the lower window. However, the efficiency of manual operation processing is low, and the user experience of obtaining information is poor.

[0057] Therefore, an embodiment of the present application provides a display method. The floating window can automatically avoid non-floating windows for display, and the floating window can avoid at least two non-floating windows at the same time, increasing the number of windows that are not blocked, so as to provide more display information of windows to users.

[0058] The display method of the embodiment of the present application is applicable to scenarios with upper and lower layer displays, such as multi-window operations, multitasking, picture-in-picture, etc. In other words, the embodiment of the present application can be applied to scenarios where floating windows and non-floating windows exist at the same time.

[0059] A floating window is a window that floats and can be moved on a non-floating window. The floating window can be used to display information, such as application information or system prompt information, etc.

[0060] In the embodiment of the present application, each non-floating window carries key information. The key information refers to various information that the user expects to know. For example, the key information includes, but is not limited to, the QR code of the underlying window, PIN code display, picture display, underlying focus (i.e., the focused object, the object that the user is operating), system background prompt information (such as the system prompt information of a program running in the background), etc.

[0061] The above non-floating window can be the display window corresponding to the focused area, that is, the window of the area that the user is using or operating. At this time, the user does not want the display window to be blocked, and this display window is used as the object that the floating window needs to avoid. Refer to Figure 1A , Figure 1A is a schematic diagram of a non-floating window provided by an embodiment of the present application; Window A is the display window corresponding to the Changlian application and is an example of a non-floating window. Window A is the display window corresponding to the current focused area.

[0062] The above non-floating window can also be the display window corresponding to the area that has no focusing ability but is expected to be perceived by the user; such non-floating windows can be set according to the actual situation. For example, if Application E actively reports to the system that it expects to be avoided by the floating window, then the display window of the application, such as the display window where the application logo and the name of the application are located, is used as a non-floating window. Or, the user can, according to actual needs, use the display window where the application logo and the name of Application F are located as a non-floating window. Refer to 1A, Window B of "Screen Recording" is the display window corresponding to the background prompt information. Window B is another example of a non-floating window. Window B has no focusing ability but is expected to be perceived by the user and can be used as the object that the floating window avoids.

[0063] Refer to Figure 1B , Figure 1BIt is a schematic diagram of a floating window provided by an embodiment of the present application; window C is the floating window, and the displayed content can be set according to actual situations.

[0064] The display method of the embodiment of the present application can be applied to a display device or a chip in the display device. In the following description, the display device is used as the execution subject of the method for illustration.

[0065] Reference Figure 1B , where window A and window B are blocked by the floating window C. Reference Figure 1C , Figure 1C It is a schematic diagram of the effect of a display method provided by an embodiment of the present application; by applying the display method of the embodiment of the present application, the display device displays the floating window C at the first position, which can avoid window A and window B without blocking them. The user does not need to manually move the floating window C to obtain the key information carried by window A and window B.

[0066] The following specifically describes a display method provided by an embodiment of the present application. Reference Figure 2 , Figure 2 It is a flowchart of a display method provided by an embodiment of the present application. The display method 200 includes the following steps:

[0067] 201. The display device displays multiple windows, and the multiple windows include n first windows.

[0068] Among them, n is an integer greater than or equal to 2, and the first window is a non-floating window. The first window is the target avoidance object, that is, the window that the user expects not to be blocked. The specific type and quantity of the first window can be set according to actual situations.

[0069] 202. When the display device meets a preset condition, determine the first position of the floating window.

[0070] Specifically, the preset condition can be set according to actual situations and is not particularly limited herein. When the preset condition is met, the display device needs to determine the display position of the floating window, that is, the first position.

[0071] 203. The display device displays the floating window at the first position, and there is no occlusion between the floating window and at least two of the n first windows.

[0072] Specifically, the first position determined in step 202 can ensure that there is no occlusion between the floating window and at least two of the n first windows.

[0073] It can be seen that by using the display method 200 according to the embodiments of the present application, without the user manually operating the floating window, the floating window can automatically avoid the first window, and the number of the first windows that are not blocked can be increased to provide the key information of more windows to the user, thereby improving the user experience of using the display device.

[0074] In addition, the method according to the embodiments of the present application does not require obvious visual effect sacrifices for the display attributes of the first window, such as zooming, transparency change, three-dimensional rotation, etc. While ensuring the normal display of key information to the greatest extent, the screen visual effect is ensured. Moreover, in the embodiments of the present application, there is no limitation on the application scenarios of the floating window and the first window, and the user is supported to start various windows as needed.

[0075] The above preset conditions include any one of the following: a new floating window is added; the display position of the floating window is updated; or, the display area of the floating window is updated.

[0076] Specifically, when a floating window is to be displayed on the display screen of the display device, the display device starts the method according to the embodiments of the present application to determine the display position of the floating window, that is, the first position, so that the floating window does not block at least two of the n first windows.

[0077] When the display position of the already displayed floating window is updated, for example, the user drags the position of the floating window from the display position A to the display position B. At this time, the display device starts the method according to the embodiments of the present application to re-determine the display position of the floating window, that is, the first position, so that the floating window does not block at least two of the n first windows.

[0078] When the display area of the already displayed floating window is updated (becomes larger or smaller), the occlusion relationship between the changed floating window and the first window in the lower layer changes. At this time, the display device starts the method according to the embodiments of the present application to re-determine the display position of the floating window.

[0079] When the display position of the already displayed floating window is updated and the display area of the floating window is updated, the occlusion relationship between the changed floating window and the first window in the lower layer changes. At this time, the display device starts the method according to the embodiments of the present application to re-determine the display position of the floating window.

[0080] Further, the above preset conditions also need to be satisfied simultaneously: there is a first window that is occluded by the floating window, that is, when there is a first window blocked by the floating window to be displayed, the display device starts the method according to the embodiments of the present application to determine the display position of the floating window. Or, when the display position and / or the display area of the already displayed floating window change and there is a first window blocked by the floating window, the display device starts the method according to the embodiments of the present application to re-determine the display position of the floating window.

[0081] When there are two or more floating windows, for each floating window that meets the above preset conditions, the display method of the embodiment of the present application can be used to determine a first position.

[0082] In a possible implementation manner, among the multiple windows displayed on the display screen, the avoidance priority of n first windows is higher than that of the other windows except the n first windows among the multiple windows (that is, the n first windows are the objects that need to be avoided). However, when there is no avoidance priority set among the n first windows, or when the multiple windows are n first windows and there is no avoidance priority set among the n first windows, in step 202, when the display device determines the first position of the floating window, it specifically includes the following steps:

[0083] A221. The display device determines a window as the target window from the windows among the n first windows that are blocked by the floating window. When there are two or more blocked first windows, the display device determines one of the blocked first windows as the target window according to a preset rule. When there is one blocked first window, the display device uses the blocked first window as the target window.

[0084] Specifically, the preset rule can be set according to the actual situation. For example, among the first windows displayed on the display screen that are blocked by the floating window, randomly traverse the windows, or traverse the windows in the order from left to right and from bottom to top, or traverse the windows in the order from right to left and from bottom to top.

[0085] A222. The display device determines at least one candidate position corresponding to the target window. When the floating window is displayed at at least one candidate position of the target window, it at least does not block the target window.

[0086] Specifically, for each candidate position of the target window, when the floating window is displayed at a candidate position, the floating window at least does not block the target window.

[0087] There are many methods to determine the candidate positions for the floating window to avoid the blocked target window. For example, the positions above, below, to the left, and to the right of the target window can be used as the pending candidate positions. When the floating window can be completely displayed at the above pending candidate positions, the display device uses the pending candidate position as the candidate position. Another example is that after the floating window is scaled, translated, rotated, or the like by at least one operation, a position where the floating window can avoid the blocked target window and the floating window can be completely displayed is obtained, and the display device determines this position as the candidate position of the target window.

[0088] A223. When the avoidance count of the above candidate position is equal to n, the display device designates this candidate position as the first position and halts the following steps. The avoidance count of a candidate position refers to the number of first forms among n first forms that are not obscured when the floating form is displayed at this candidate position.

[0089] A224. When the avoidance count of the above candidate position is less than n, the display device records the avoidance count of the candidate position. After the display device determines the avoidance counts of all candidate positions of the target form in a preset order, it removes the target form from the first forms that are obscured by the floating form and repeats the above steps, that is, returns to step A221, until the first forms that are obscured by the floating form are empty.

[0090] Specifically, the above preset order can be set according to the actual situation and is not particularly limited. For example, determine a candidate position in sequence for avoidance count determination in the order from left to right and from bottom to top. Or, determine a candidate position in sequence for avoidance count determination in the order from right to left and from bottom to top.

[0091] A225. The display device designates the candidate position with the largest avoidance count among the recorded avoidance counts as the first position.

[0092] When there are multiple candidate positions with the largest avoidance count, the display device can determine one candidate position from the multiple candidate positions as the first position. Among them, there are many determination methods. For example, the display device randomly selects one candidate position from the multiple candidate positions as the first position. Or, the display device traverses the candidate positions in the order from left to right and from bottom to top to determine one candidate position as the first position (that is, select the candidate position at the bottom left of the display screen), or the display device traverses the candidate positions in the order from right to left and from bottom to top to determine one candidate position as the first position (that is, select the candidate position at the bottom right of the display screen).

[0093] Optionally, there is an avoidance priority among the above n first forms. The avoidance priority of the first form can be set according to the actual situation and is not particularly limited. For example, the avoidance priority of the first form can be determined according to the level of importance to the user. For a first form that is highly important to the user, the avoidance priority of this first form is high. On the contrary, the avoidance priority is low. For example, for application A and application B on the display screen, application B is a background system prompt message, and when application A is the focused object, the prompt message needs to be promptly known by the user. Then, the avoidance priority of the form corresponding to application A is lower than the avoidance priority of the form corresponding to application B above.

[0094] For another example, the user can customize the avoidance priorities of the n first forms, set the avoidance priorities as needed, so as to adapt to the avoidance requirements of different users and ensure that the key information that the user wants to know can be obtained in a timely manner.

[0095] Further optionally, among the multiple forms displayed on the display device, in addition to the n first forms with avoidance priorities, the remaining forms without avoidance priorities can also be displayed.

[0096] In a possible implementation manner, when there are avoidance priorities among the above-mentioned n first forms, in step 202, when the display device determines the first position of the floating form, it specifically includes the following steps:

[0097] B221. When there is one first form among the n first forms that is blocked by the floating form, the display device determines at least one candidate position corresponding to the first form. When the floating form is displayed at the at least one candidate position, it at least does not block the first form and the forms with avoidance priorities higher than that of the first form.

[0098] Specifically, for each candidate position of the first form, when the floating form is displayed at a candidate position, the floating form at least does not block the first form and the forms with avoidance priorities higher than that of the first form.

[0099] When the floating form is displayed at a candidate position and will block the forms with avoidance priorities higher than that of the first form, the display device removes the candidate position, which can ensure that the key information of the forms with high avoidance priorities can be obtained by the user.

[0100] Among them, for the specific description of determining the candidate position of the first form, reference can be made to the relevant description in step A222 above, and details will not be repeated.

[0101] Exemplarily, when the display device determines whether a candidate position will cause the floating form to block the form with a higher avoidance priority, it can establish a priority table based on the avoidance priorities among the first forms. In the priority table, the first forms with higher avoidance priorities are ranked in the front, and the first forms with lower avoidance priorities are ranked in the back. Referring to Table 1 below, taking the first form 1 to the first form 6 as an example, it can be seen that the first form 1 has the highest avoidance priority, while the first form 6 has the lowest avoidance priority.

[0102] Table 1

[0103]

[0104]

[0105] Based on the priority table, the display device can determine whether a certain candidate position will cause the floating window to block a window with a higher avoidance priority. For example, when determining the candidate positions of the first window 2, the display device can know from the lookup table 1 that it is necessary to determine whether the floating window will block the first window 1, the first window 5, and the first window 3 when displayed at the candidate positions.

[0106] Exemplarily, an avoidance priority number can also be assigned to each first window. The smaller the number, the higher the avoidance priority. In this way, a priority table can be obtained. Refer to Table 2 below.

[0107] Table 2

[0108] Form Priority number First form 1 1 First form 2 4 First form 3 3 First form 4 5 First form 5 2 First form 6 6

[0109] Exemplarily again, an avoidance priority number can also be assigned to each first window. The larger the number, the higher the avoidance priority. In this way, a priority table can be obtained. Refer to Table 3 below.

[0110] Table 3

[0111] Form Priority number First form 1 6 First form 2 3 First form 3 4 First form 4 2 First form 5 5 First form 6 1

[0112] B222. The display device determines the candidate position with the largest avoidance quantity among at least one candidate position as the first position. The avoidance quantity of a candidate position is the number of windows among the n first windows that the floating window can avoid blocking when displayed at this candidate position.

[0113] Specifically, the avoidance quantity of a candidate position refers to the number of windows among the n first windows that will not be blocked by the floating window when the floating window is displayed at this candidate position.

[0114] In a possible implementation manner, when there is an avoidance priority among the above n first windows, in step 202, when the display device determines the first position of the floating window, it specifically includes the following steps:

[0115] C221. When the number of first windows among the n first windows that are blocked by the floating window is greater than or equal to two, the display device determines at least one candidate position corresponding to each blocked first window.

[0116] Among them, when the floating window is displayed at at least one candidate position, it blocks at least the blocked first window and the windows with an avoidance priority higher than that of the blocked first window. In other words, for each candidate position of the first window, when the floating window is displayed at a candidate position, the floating window blocks at least this first window and the windows with an avoidance priority higher than that of this first window.

[0117] Specifically, for the specific description of how the display device determines the candidate positions for the occlusion window, reference can be made to the relevant description in step A222 above, which will not be elaborated here. Alternatively, reference can be made to the description in steps D221 to D223 below, or, reference can be made to the description in steps E221 to E223 below.

[0118] C222. The display device determines the candidate position with the largest avoidance quantity as the first position. The avoidance quantity of a candidate position is the number of forms of the n first forms that can be not occluded when the floating form is displayed at this candidate position.

[0119] Specifically, for the specific description of how the display device determines the first position from the candidate positions, reference can be made to the description in steps A223 to A225, which will not be elaborated here.

[0120] In a possible implementation, when there are at least two first forms among the n first forms that are occluded by the floating form and there is an avoidance priority among the above n first forms, in step 202, when the display device determines the first position of the floating form, it specifically includes the following steps:

[0121] D221. The display device determines one form among the forms of the n first forms that are occluded by the floating form as the second form.

[0122] Specifically, there are many ways for the display device to determine the second form. Reference can be made to the description in step A221.

[0123] D222. The display device determines at least one candidate position for the second form. The at least one candidate position does not occlude the second form and the floating form can be completely displayed at the candidate position.

[0124] Specifically, for the specific description of how the display device determines the candidate positions for the second form, reference can be made to the relevant description in step A222 above, which will not be elaborated here.

[0125] D223. When a form with an avoidance priority higher than that of the second form is occluded by the floating form displayed at a candidate position, the display device removes this candidate position from the at least one candidate position.

[0126] Specifically, for the specific method of how the display device determines whether a candidate position will cause the floating form to occlude a form with a higher avoidance priority, reference can be made to the relevant description in step B221, which will not be elaborated here.

[0127] D224. When the avoidance quantity of a candidate position is equal to n, the display device takes this candidate position as the first position and stops executing the following steps; the avoidance quantity of a candidate position is the number of first forms among the n first forms that can be not occluded when the floating form is displayed at this candidate position.

[0128] D225. When the avoidance count of a candidate position is less than n, the display device records the avoidance count of this candidate position.

[0129] The display device repeatedly executes step D224 and step D225 until the avoidance counts of all candidate positions of the second form are judged. The method for the display device to select a candidate position can refer to the relevant description in step A224 and will not be elaborated here.

[0130] D226. The display device removes the second form from the forms that have occlusion with the floating form and repeatedly executes the above steps until the forms that have occlusion with the floating form are empty.

[0131] D227. The display device takes the candidate position with the largest avoidance count among the recorded avoidance counts as the first position.

[0132] In another possible implementation, when the number of forms that have occlusion with the floating form among the n first forms is greater than or equal to two first forms and there is an avoidance priority among the above n first forms, in step 202, when the display device determines the first position of the floating form, it specifically includes the following steps:

[0133] E221. The display device determines a form with the highest avoidance priority among the forms that have occlusion with the floating form among the n first forms as the second form.

[0134] Specifically, there are many ways for the display device to determine the second form. It can be determined based on the priority table introduced in step B221, that is, the display device establishes a priority table according to the forms that have occlusion with the floating form, and then determines the form with the highest priority in the priority table as the second form. Or, the display device establishes an ordered set according to the forms that have occlusion with the floating form, and then determines the form ranked at the front in the ordered set as the second form. For specific reference, please refer to the relevant description below about Figure 3 of this.

[0135] E222. The display device determines at least one candidate position of the second form, and the at least one candidate position does not occlude the second form and the floating form can be completely displayed at the candidate position.

[0136] Specifically, for the specific description of how the display device determines the candidate position of the second form, reference can be made to the relevant description in step A222 above and will not be elaborated here.

[0137] E223. When a form with an avoidance priority higher than that of the second form is occluded by the floating form displayed at a candidate position, the display device removes this candidate position from the at least one candidate position.

[0138] Specifically, for the specific method by which the display device determines whether a candidate position will cause the floating window to block a window with a higher avoidance priority, reference can be made to the relevant description in step B221, which will not be elaborated here. Alternatively, the display device determines whether there will be occlusion based on the ordered set introduced below. Specifically, refer to the relevant description in the following text regarding Figure 3 hereof.

[0139] E224. When the avoidance count of the candidate position is equal to n, the display device takes this candidate position as the first position and stops executing the following steps; the avoidance count of the candidate position is the number of windows among the n first windows that the floating window can avoid blocking when displayed at this candidate position.

[0140] E225. When the avoidance count of the candidate position is less than n, the display device records the avoidance count of this candidate position.

[0141] The display device repeatedly executes step E224 and step E225 until the avoidance counts of all candidate positions of the second window have been judged. The method by which the display device selects a candidate position can be referred to the relevant description in step A224, which will not be elaborated here.

[0142] E226. The display device removes the second window from the windows that are occluded by the floating window and repeatedly executes the above steps until the windows that are occluded by the floating window are empty.

[0143] E227. The display device takes the candidate position with the largest avoidance count among the recorded avoidance counts as the first position.

[0144] It can be seen that for the method of determining the first position shown in steps E221 to E227, the display device performs polling processing according to the avoidance priority, which can not only determine the first position but also reduce the computational amount required to determine the first position and improve the speed of determining the first position.

[0145] In the above steps D225 and E225, when the avoidance count of the candidate position is less than n, if the avoidance count of the candidate position is inconsistent with the avoidance count of the candidate position that has been recorded, the display device records the avoidance count of the candidate position. On the contrary, when the avoidance count of the candidate position is consistent with the avoidance count of the candidate position that has been recorded, the display device does not record the avoidance count of this candidate position. This is beneficial to reducing the data volume of the avoidance counts recorded by the display device, thereby improving the computational amount for the subsequent display device to determine the first position based on the avoidance count and enhancing the speed of the display device to determine the first position.

[0146] In the above steps D225 and E225, when the avoidance quantity of a candidate position is less than n, if the avoidance quantity of the candidate position is the same as the recorded avoidance quantity of the candidate position, and the avoidance priority of the form corresponding to the candidate position is not lower than the avoidance priority of the form corresponding to the recorded candidate position, the display device records the avoidance quantity of the candidate position. On the contrary, when the avoidance quantity of the candidate position is the same as the recorded avoidance quantity of the candidate position, and the avoidance priority of the form corresponding to the candidate position is lower than the avoidance priority of the form corresponding to the recorded candidate position, the display device does not record the avoidance quantity of the candidate position. This helps to reduce the data volume of the avoidance quantities recorded by the display device, thereby improving the computational amount for the subsequent display device to determine the first position based on the avoidance quantity and enhancing the speed at which the display device determines the first position.

[0147] In the above steps C222, D227 and E227, when there are multiple candidate positions with the largest avoidance quantity, the display device selects the candidate position corresponding to the form with the highest avoidance priority among the multiple candidate positions with the largest avoidance quantity as the first position.

[0148] For example, assume that the first form includes form A and form B, and the avoidance priority of form B is higher than that of form A. The candidate positions with the largest avoidance quantity are position a and position b respectively, where position a is obtained based on form A and position b is obtained based on form B. When the avoidance quantities of position a and position b are the same, since the avoidance priority of form B is higher, the display device takes position b as the first position.

[0149] In a possible embodiment, to facilitate the management of the first form on the display screen, the display device can add the first form to an ordered set in the order of avoidance priority. The arrangement principle of the elements in the ordered set is: the first form with a higher avoidance priority is arranged in the front, and the first form with a lower avoidance priority is arranged in the back. For example, for the first forms A1, A2, the first forms B1 and B2, the ordered set is {A1, B2, B1, A2}. It can be seen that the first form A1 has the highest avoidance priority, while the first form A2 has the lowest avoidance priority. Based on the ordered set, in step E221, the display device can conveniently and quickly determine the second form, and in step E223, the display device can quickly determine the form whose avoidance priority is higher than that of the second form.

[0150] To better illustrate the ordered set, the following takes steps E221 to E227 as an example for specific illustration:

[0151] Refer to Figure 3 , Figure 3It is a schematic flowchart of a display method provided by an embodiment of the present application. In this embodiment, the display device establishes an ordered set based on the first form on the display screen, and the ordered set changes in real time as the display content changes. Specifically:

[0152] When the floating form on the display device meets the preset conditions, for example, there is a new floating form to be displayed. In this embodiment, taking a newly appeared floating form as an example, assuming that the display position of the floating form is i (the floating form is not actually displayed), the first forms currently displayed on the display device at the current moment are formed into an ordered set.

[0153] The display device determines whether the ordered set is empty. If the ordered set is empty, the display device keeps the display position of the floating form as i, that is, the display device displays the floating form at the display position i.

[0154] When the ordered set is not empty, the display device polls the forms in the ordered set according to the avoidance priority. Each time, a first form in the ordered set is taken out according to the high and low avoidance priorities as the polled form X.

[0155] The display device determines whether the polled form X is blocked by the floating form. When form X is not blocked, the display device continues to poll the next form.

[0156] When form X is blocked, the display device determines at least one candidate position corresponding to form X based on the existing display position i of the floating form. Exemplarily, when form X has no candidate positions, the display device stops calculating the candidate positions of form X and returns to poll the next form in the ordered set.

[0157] For at least one candidate position of form X, when the floating form is displayed at a candidate position and will block a form in the ordered set with a higher avoidance priority than form X, the display device removes the candidate position. The display device judges all candidate positions of form X, that is, polls the candidate positions, until all candidate positions of form X do not block the first form in the ordered set with an avoidance priority higher than form X.

[0158] Among them, when judging whether the candidate position of form X will cause the floating form to be displayed at the candidate position and block a form with a higher avoidance priority than form X, the display device can judge according to the order of the avoidance priorities in the ordered set.

[0159] For each candidate position of Form X, the display device first counts the number of avoidances at the candidate position, and then determines whether the candidate position can avoid all elements of the ordered set. If all elements in the ordered set can be avoided simultaneously, the display device terminates the calculation, designates the candidate position as the first position, and the display device displays the floating form at the first position to complete the automatic avoidance.

[0160] If the candidate position cannot avoid all elements of the ordered set, the display device records the number of avoidances at the candidate position and proceeds to the next form polling of the ordered set.

[0161] After the polling is completed, the display device selects the candidate position with the largest number of avoidances among the recorded numbers of avoidances as the first position. When there are multiple candidate positions with the largest number of avoidances, the display device selects the candidate position corresponding to the form with the highest avoidance priority from the multiple candidate positions as the first position. The display device displays the floating form at the first position to complete the automatic avoidance.

[0162] The embodiment of the present application performs a polling avoidance operation on the display range of the floating form based on the avoidance priority of the first form to find the most suitable avoidance position that can display the most key information.

[0163] In the embodiment of the present application, a display method is also provided. Refer to Figure 4 , Figure 4 which is a schematic flowchart of another display method provided by the embodiment of the present application. The display method 400 includes the following steps:

[0164] 401. The display device displays multiple forms, and the multiple forms include a floating form and n first forms.

[0165] Among them, n is an integer greater than or equal to two, and the first form is a non-floating form. In this embodiment, the description of the first form can refer to the relevant description above and will not be elaborated here.

[0166] 402. When the n first forms are updated, the display device determines the first position of the floating form.

[0167] Among them, the update of the n first forms includes that at least one form in the n first forms is replaced and / or the total number of forms increases.

[0168] Specifically, the update of the n first forms can be that at least one of the n first forms is replaced, that is, as the display content of the display screen changes, some or all of the first forms are replaced. At this time, the number of forms of the updated multiple first forms is still n.

[0169] It should be understood that the replacement of the first form means that the first form is replaced from form A to form B, where the display content of form A and form B is different, and the display positions are also different. When the display position of the first form changes, the floating form may block the new first form. Therefore, it is necessary to trigger the display device to execute the method of this embodiment of the present application to determine the first position of the floating form.

[0170] The replacement of the first form can also be understood as a change in the display area of the first form (getting larger or smaller), that is, the first form changes from form a1 to form a2. Both form a1 and form a2 are the same form A, the display content of the form remains unchanged, but only the display areas of form a1 and form a2 are different. When the display area of the first form changes, the floating form may block the new first form (i.e., form a2). Therefore, it is necessary to trigger the display device to execute the method of this embodiment of the present application to determine the first position of the floating form.

[0171] The update of n first forms can be an increase in the total number of forms of the first form, that is, a new first form is added. Taking the addition of one first form as an example, it changes from n first forms to n + 1 first forms. At this time, the number of forms of the updated multiple first forms changes from n to n + 1.

[0172] The update of n first forms can also be that at least one of the n first forms is replaced, and the total number of forms of the first form increases, that is, there are both cases of replacement of the first form and addition of a new first form.

[0173] 403. The display device displays the floating form at the first position, and there is no occlusion between the floating form and at least two forms among the updated multiple first forms.

[0174] It can be seen that by using the display method 400 of this embodiment of the present application, it is possible to automatically avoid the floating form from the first form without manual operation by the user, and at the same time increase the number of first forms that are not blocked, so as to provide key information of more forms to the user and improve the user experience of using the display device.

[0175] In addition, the method of this embodiment of the present application does not require obvious visual effect sacrifices in the display attributes of the first form, such as scaling, transparency change, three-dimensional rotation, etc. It can display key information normally to the greatest extent while ensuring the screen visual effect. Moreover, in this embodiment of the present application, there is no restriction on the application scenarios of the floating form and the first form, and it supports the user to start various forms as needed.

[0176] Exemplarily, the first position of the floating form determined in step 402 can be the new display position, or the first position of the floating form can also be the display position of the floating form before the update of the n first forms.

[0177] Reference Figure 5A, Figure 5A It is a schematic diagram of a first form and a floating form provided by an embodiment of the present application. Form D is the first form, that is, the application form being operated by the user. There is no occlusion between Form D and the floating form C, and the floating form C maintains its original display attributes and is displayed at its original display position.

[0178] Suppose a new form B appears and form B is occluded by the floating form C (not shown). Among them, form B is the "screen recording in progress" form, which belongs to system prompt information. Suppose the avoidance priority of the system prompt information is higher than the avoidance priority of the focused area, that is, the avoidance priority of form B is higher than the avoidance priority of form D. The display device re-determines the display position of the floating form C based on form B, referring to Figure 5B , Figure 5B It is another schematic diagram of a first form and a floating form provided by an embodiment of the present application; the display device moves the floating form C down to Figure 5B the display position shown.

[0179] Suppose the form being operated by the user becomes the "this machine" form, that is, the first form is replaced. At this time, form D is occluded by the floating form C (not shown). The display device re-determines the display position of the floating form C based on form D, referring to Figure 5C , Figure 5C It is another schematic diagram of a first form and a floating form provided by an embodiment of the present application; the display device moves the floating form C to Figure 5C the display position shown.

[0180] In a possible implementation manner, when the avoidance priority of the updated multiple first forms is higher than the priority of other forms in the multiple forms except the above multiple first forms (that is, the multiple first forms are the objects to be avoided), but when no avoidance priority is set among the multiple first forms, or when the multiple forms are multiple first forms and no avoidance priority is set among the multiple first forms, in step 402, the display device determines the first position of the floating form, which specifically includes the following steps:

[0181] A421. The display device determines a form as the target form from the forms in which the updated multiple first forms are occluded by the floating form.

[0182] A422. The display device determines at least one candidate position corresponding to the target form. When the floating form is displayed at at least one candidate position of the target form, it at least does not occlude the target form.

[0183] A423. When the avoidance count of the above candidate position is equal to m, the display device designates this candidate position as the first position and halts the following steps. The avoidance count of a candidate position refers to the number of first forms among m first forms that are not obscured when the floating form is displayed at this candidate position. Here, m is the total number of forms among the updated multiple first forms.

[0184] A424. When the avoidance count of the above candidate position is less than m, the display device records the avoidance count of the candidate position. After the display device determines the avoidance counts of all candidate positions of the target form in a preset order, it removes the target form from the first forms that are obscured by the floating form and repeats the above steps, i.e., returns to step A421, until the first forms that are obscured by the floating form are empty.

[0185] A425. The display device designates the candidate position with the largest avoidance count among the recorded avoidance counts as the first position.

[0186] For the specific descriptions of steps A421 to A425, reference can be made to the relevant descriptions of steps A221 to A225, which will not be elaborated here.

[0187] In a possible implementation, there is an avoidance priority among the first forms. For the relevant descriptions of the avoidance priority, reference can be made to the relevant descriptions above, which will not be elaborated here. Here, the above first forms refer to n first forms, or the updated multiple first forms.

[0188] In a possible implementation, when there is an avoidance priority among the above updated first forms, in step 402, the display device determines the first position of the floating form, which specifically includes the following steps:

[0189] B421. When there is one first form among the updated multiple first forms that is obscured by the floating form, the display device determines at least one candidate position corresponding to the obscured first form. When the floating form is displayed at at least one candidate position, it obscures at least the first form and the forms with an avoidance priority higher than that of this first form.

[0190] Specifically, when there is one form among the updated multiple first forms that is obscured by the floating form, the display device determines at least one candidate position corresponding to the obscured first form. When there are no available candidate positions for the obscured first form, the display device halts the determination of the first position.

[0191] B422. The display device designates the candidate position with the largest avoidance count among at least one candidate position as the first position. The avoidance count of a candidate position is the number of forms among the updated multiple first forms that are not obscured when the floating form is displayed at this candidate position.

[0192] For the specific description of steps B421 to B422, reference may be made to the relevant description of steps B221 to B222, which will not be elaborated herein.

[0193] In a possible implementation manner, when there is an avoidance priority among the updated first forms, in step 402, the display device determines the first position of the floating form, which specifically includes the following steps:

[0194] C421. When there are two or more first forms among the updated multiple first forms that are blocked by the floating form, the display device determines at least one candidate position corresponding to each blocked first form. When the floating form is displayed at at least one candidate position, it does not block at least the blocked first form and the forms whose avoidance priority is higher than that of the blocked first form.

[0195] C422. The display device determines the candidate position with the largest avoidance quantity as the first position. The avoidance quantity of a candidate position is the number of forms that the floating form can avoid blocking among the m first forms when the floating form is displayed at this candidate position, where m is the total number of forms of the updated multiple first forms.

[0196] For the specific description of steps C421 to C422, reference may be made to the relevant description of steps C221 to C222, which will not be elaborated herein.

[0197] In a possible implementation manner, when there are two or more first forms among the updated multiple first forms that are blocked by the floating form and there is an avoidance priority among the updated first forms, in step 402, when the display device determines the first position of the floating form, it specifically includes the following steps:

[0198] D421. The display device determines one form from the forms among the updated multiple first forms that are blocked by the floating form as the second form.

[0199] D422. The display device determines at least one candidate position of the second form, and the at least one candidate position does not block the second form and the floating form can be completely displayed at the candidate position.

[0200] D423. When the forms whose avoidance priority is higher than that of the second form are blocked by the floating form displayed at the candidate position, the display device removes this candidate position from the at least one candidate position.

[0201] D424. When the avoidance count of a candidate position is equal to m, the display device designates this candidate position as the first position and halts the execution of the following steps. Here, m is the total number of forms among the updated multiple first forms, and the avoidance count of a candidate position is the number of first forms among the m first forms that are not obscured when the floating form is displayed at this candidate position.

[0202] D425. When the avoidance count of a candidate position is less than m, the display device records the avoidance count of this candidate position.

[0203] D426. The display device removes the second form from the forms that are obstructed by the floating form and repeats the above steps until the forms that are obstructed by the floating form are empty.

[0204] D427. The display device designates as the first position the candidate position with the largest avoidance count among the recorded avoidance counts.

[0205] For the specific descriptions of steps D421 to D427, reference can be made to the relevant descriptions of steps D221 to D227, which will not be elaborated here.

[0206] In a possible implementation, when there are two or more first forms among the updated multiple first forms that are obstructed by the floating form and there is an avoidance priority among the above-mentioned updated first forms, in step 402, when the display device determines the first position of the floating form, it specifically includes the following steps:

[0207] E421. The display device determines a form with the highest avoidance priority among the forms that are obstructed by the floating form among the updated multiple first forms as the second form.

[0208] E422. The display device determines at least one candidate position for the second form, where the at least one candidate position does not obscure the second form and the floating form can be fully displayed at the candidate position.

[0209] E423. When a form with an avoidance priority higher than that of the second form is obscured by the floating form displayed at a candidate position, the display device removes this candidate position from the at least one candidate position.

[0210] E424. When the avoidance count of a candidate position is equal to m, the display device designates this candidate position as the first position and halts the execution of the following steps. Here, m is the total number of forms among the updated multiple first forms, and the avoidance count of a candidate position is the number of first forms among the m first forms that are not obscured when the floating form is displayed at this candidate position.

[0211] E425. When the avoidance count of a candidate position is less than m, the display device records the avoidance count of this candidate position.

[0212] E426. The display device removes the second window from the windows that have an occlusion with the floating window and repeats the above steps until the windows that have an occlusion with the floating window are empty.

[0213] E427. The display device uses the candidate position with the largest avoidance count among the recorded avoidance counts as the first position.

[0214] For the specific descriptions of steps E421 to E427, reference can be made to the relevant descriptions of steps E221 to E227, which will not be elaborated here.

[0215] In a possible implementation, in the above steps D425 and E425, when the avoidance count of the candidate position is less than m, if the avoidance count of the candidate position is inconsistent with the avoidance count of the recorded candidate position, the display device records the avoidance count of the candidate position.

[0216] In a possible implementation, in the above steps D425 and E425, when the avoidance count of the candidate position is less than m, if the avoidance count of the candidate position is the same as the avoidance count of the recorded candidate position, and the avoidance priority of the window corresponding to the candidate position is not lower than the avoidance priority of the window corresponding to the recorded candidate position, the display device records the avoidance count of the candidate position. On the contrary, when the avoidance count of the candidate position is the same as the avoidance count of the recorded candidate position, and the avoidance priority of the window corresponding to the candidate position is lower than the avoidance priority of the window corresponding to the recorded candidate position, the display device does not record the avoidance count of the candidate position.

[0217] In a possible implementation, in the above steps C422, D427, and E427, when there are multiple candidate positions with the largest avoidance count, the display device selects the candidate position with the highest avoidance priority among the multiple candidate positions with the largest avoidance count as the first position.

[0218] In a possible embodiment, to facilitate the management of the first window on the display screen, the display device can add the first window to an ordered set in the order of avoidance priority. The arrangement principle of the elements in the ordered set is: the first window with a higher avoidance priority is arranged in the front, and the first window with a lower avoidance priority is arranged in the back. Based on the ordered set, the display device can conveniently and quickly determine the second window in step E421, and can quickly determine the window with an avoidance priority higher than that of the second window in step E423.

[0219] To better illustrate the ordered set, the following takes steps E421 to E427 as an example for specific illustration:

[0220] Refer to Figure 6 , Figure 6It is a schematic flowchart of another display method provided by an embodiment of the present application.

[0221] In this embodiment, the display device establishes an ordered set based on the first form on the display screen, and the ordered set changes in real time as the display content changes. Specifically:

[0222] When the first form on the display device is updated, for example, a new first form appears. In this embodiment, a new first form is taken as an example. Assume that the display position of the floating form is i. Then the display device forms an ordered set of the first forms that are updated and displayed on the display device.

[0223] The display device determines whether the ordered set is empty. If the ordered set is empty, the floating form remains at the display position i.

[0224] When the ordered set is not empty, the display device polls the forms in the ordered set according to the avoidance priority.

[0225] The display device determines whether the polled form X is blocked by the floating form. When form X is not blocked, the display device continues to poll the next form.

[0226] When form X is blocked, the display device determines at least one candidate position corresponding to form X based on the existing display position i of the floating form. Exemplarily, when form X has no candidate positions, the display device stops calculating the candidate positions of form X and returns to poll the next form in the ordered set.

[0227] For at least one candidate position of form X, when the floating form is displayed at a candidate position and will block a form in the ordered set with a higher avoidance priority than form X, the display device removes that candidate position. The display device judges all candidate positions of form X, that is, polls the candidate positions, until all candidate positions of form X do not block the first form in the ordered set with an avoidance priority higher than form X.

[0228] For each candidate position of form X, the display device first counts the avoidance quantity of the candidate position, and then judges whether the candidate position can avoid all elements of the ordered set. If it can avoid all elements in the ordered set at the same time, the display device terminates the calculation, takes the candidate position as the first position, and the floating form is displayed at the first position to complete the automatic avoidance.

[0229] If the candidate position cannot avoid all elements of the ordered set, the display device records the avoidance quantity of the candidate position and conducts the next poll of the forms in the ordered set.

[0230] After the polling is completed, the display device selects the candidate position with the largest number of avoidances recorded in the device selection record as the first position. When there are multiple candidate positions with the largest number of avoidances, the display device selects the candidate position corresponding to the form with the highest avoidance priority from the multiple candidate positions as the first position. The display device displays the floating form at the first position to complete the automatic avoidance.

[0231] In the embodiment of the present application, a polling avoidance operation is performed on the display range of the floating form based on the avoidance priority of the first form to find the most suitable avoidance position that can display the most key information.

[0232] The device provided in the present application will be described below.

[0233] Figure 7 It is a schematic structural diagram of a possible display device provided in an embodiment of the present application. This display device can be used to implement the functions of any of the above method embodiments, and thus can also achieve the beneficial effects of any of the above method embodiments. In the embodiment of the present application, this display device can be an electronic device or a module (such as a chip) applied to an electronic device.

[0234] As Figure 7 shown, the display device 700 includes a display module 701 and a determination module 702. The display device 700 is used to implement the functions of the method embodiments shown above. Figure 2 Alternatively, the display device 700 may include modules or units for implementing any function or operation in the method embodiments shown above. These modules or units can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. Figure 2 or Figure 4 shown.

[0235] Exemplarily, when the display device 700 is used to implement the functions in the method embodiments shown Figure 2 the display module 701 is used to display multiple forms, where the multiple forms include n first forms, n is an integer greater than or equal to 2, and the first form is a non-floating form. The determination module 702 is used to determine the first position of the floating form when a preset condition is met. Among them, the determination module 702 is used to determine the candidate positions of the floating form (such as candidate position 1, candidate position 2, etc.). After calculating all candidate positions, the optimal avoidance position, that is, the first position, is selected from all candidate positions. The display module 701 is also used to display the floating form at the first position, and there is no occlusion between the floating form and at least two of the n first forms. Among them, the display module 701 saves the display information (relative screen position, display area size, etc.) of the floating form and operates to display the floating form at the first position.

[0236] In a possible embodiment, referring to Figure 7, the display device 700 further includes a management module 703. The management module 703 is used to manage the first forms. Exemplarily, the management module 703 manages the first forms according to the relative importance to the user, using a priority table or an ordered set to manage the first forms. The order in the table or set corresponds to the importance level of the region information. For example, the regions that are more forward in the table or set are more important.

[0237] The determination module 702 performs polling calculations based on the display position of the floating form and the first forms managed by the management module 703. Each calculated candidate position is recorded by the determination module 702. After the polling is completed, the optimal avoidance position (the first position) is selected from all the recorded candidate positions. The determination module 702 then notifies the display module 701 to refresh the corresponding display information and display the floating form at the first position.

[0238] The display device 700 can automatically avoid multiple first forms simultaneously, which can significantly improve the anti-information occlusion ability of the display device 700.

[0239] Also exemplarily, when the display device 700 is used to implement Figure 4 the functions in the method embodiment shown, the display module 701 is used to display multiple forms. The multiple forms include a floating form and n first forms, where n is an integer greater than or equal to two, and the first forms are non-floating forms. The determination module 702 is used to determine the first position of the floating form when the n first forms are updated. The update includes at least one of the n first forms being replaced and / or the total number of forms increasing. Among them, the determination module 702 is used to determine the candidate positions of the floating form (such as candidate position 1, candidate position 2, etc.). After calculating all the candidate positions, the optimal avoidance position, that is, the first position, is selected from all the candidate positions. The display module 701 is further used to display the floating form at the first position, and there is no occlusion between the floating form and at least two of the updated multiple first forms. Among them, the display module 701 saves the display information of the floating form (such as the relative screen position and the display area size, etc.) and operates to display the floating form at the first position.

[0240] In a possible embodiment, referring to Figure 7 , the display device 700 further includes a management module 703. The management module 703 is used to manage the first forms, including n first forms or the updated multiple first forms. Exemplarily, the management module 703 manages the first forms according to the relative importance to the user, using a priority table or an ordered set to manage the first forms. The order in the table or set corresponds to the importance level of the region information. For example, the regions that are more forward in the table or set are more important.

[0241] This application also provides a display device, referring to Figure 8 , Figure 8It is a schematic structural diagram of a display device provided by an embodiment of the present invention. The display device 800 includes a memory 801, a processor 802, a communication interface 804, and a bus 803. Among them, the memory 801, the processor 802, and the communication interface 804 are communicatively connected to each other through the bus 803.

[0242] The memory 801 may be a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 801 may store a program. When the program stored in the memory 801 is executed by the processor 802, the processor 802 and the communication interface 804 are used to execute the various steps of the display method of the embodiments of the present application.

[0243] The processor 802 may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), a graphics processing unit (GPU), or one or more integrated circuits, and is used to execute relevant programs to implement the functions required by the units in the display device of any embodiment of the present application, or to execute the display method of any embodiment of the present application.

[0244] The processor 802 can also be an integrated circuit chip with the ability to process signals. In the implementation process, each step of the display method according to the embodiments of the present application can be completed by the integrated logic circuit in the hardware of the processor 802 or the instructions in the form of software. The above-mentioned processor 802 can also be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. It can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of the present application. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the display method in combination with the embodiments of the present application can be directly embodied as being executed and completed by the hardware processor, or executed and completed by the combination of the hardware and software modules in the processor. The software module can be located in a mature storage medium in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. This storage medium is located in the memory 801, and the processor 802 reads the information in the memory 801 and combines its hardware to complete the functions required to be executed by the units included in the display device according to the embodiments of the present application, or executes the display method according to the embodiments of the present application.

[0245] The communication interface 804 uses a transceiver device such as, but not limited to, a transceiver to implement the communication between the display device 800 and other devices or communication networks.

[0246] The bus 803 can include a path for transmitting information between various components of the display device 800 (for example, the memory 801, the processor 802, the communication interface 804).

[0247] In several embodiments provided by the present application, it should be understood that the disclosed device and method can be implemented in other ways.

[0248] In addition, in each embodiment of the present application, the functional units can be integrated in one processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit.

[0249] As mentioned above, the above is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present application can easily think of changes or substitutions, which should all be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A display method, characterized in that: The method comprises: Displaying multiple windows, the multiple windows including n first windows, where n is an integer greater than or equal to 2, and the first windows are non-floating windows; When the preset conditions are met, the first position of the floating window is determined; Displaying the floating window at the first position, wherein there is no occlusion between the floating window and at least two of the n first windows, and the at least two windows include a display window corresponding to a focus area and a display window corresponding to an area without focus capability but expected to be perceived by a user; There is an avoidance priority between the n first windows; The determining the first position of the floating window includes: When the window that is blocked by the n first windows and the floating window is one of the first windows, at least one candidate position corresponding to the first window is determined, and when the floating window is displayed at the at least one candidate position, at least the first window and windows with a higher avoidance priority than the first window are not blocked; A candidate position with the largest avoidance number among the at least one candidate position is determined as the first position, and the avoidance number of the candidate position is the number of windows that can not block the first windows among the n first windows when the floating window is displayed at the candidate position.

2. The method according to claim 1, characterized in that The preset condition includes any one of the following: Add the floating window; The display position of the floating window is updated; or, The display area of ​​the floating window is updated.

3. The method according to claim 1, characterized in that The determining of the first position of the floating window further includes: When the number of windows that are blocked by the n first windows and the floating window is greater than or equal to two of the first windows, at least one candidate position corresponding to each blocked first window is determined; when the floating window is displayed at the at least one candidate position, at least the blocked first window and the window with a higher avoidance priority than the blocked first window are not blocked; The candidate position with the largest avoidance number is determined as the first position, and the avoidance number of the candidate position is the number of windows that can not cover the first windows among the n first windows when the floating window is displayed at the candidate position.

4. The method according to claim 1, characterized in that The determining of the first position of the floating window further includes: When the number of windows that are blocked by the n first windows and the floating window is greater than or equal to two of the first windows, one window is determined as the second window from the windows that are blocked by the n first windows and the floating window; Determine at least one candidate position of the second window, where the at least one candidate position does not block the second window and the floating window can be fully displayed at the candidate position; When a window with a higher avoidance priority than the avoidance priority of the second window is blocked by the floating window displayed at a candidate position, removing the candidate position from the at least one candidate position; When the avoidance number of the candidate position is equal to n, the candidate position is used as the first position, and the following steps are stopped; the avoidance number of the candidate position is the number of windows that can not block the first window among the n first windows when the floating window is displayed at the candidate position; When the avoidance number of the candidate position is less than n, recording the avoidance number of the candidate position; Removing the second window from the windows that are blocked by the floating window and repeating the above steps until the windows that are blocked by the floating window are empty; The candidate position having the largest avoidance number among the recorded avoidance numbers is used as the first position.

5. The method according to claim 1, characterized in that The determining of the first position of the floating window further includes: When the number of windows that are blocked by the n first windows and the floating window is greater than or equal to two of the first windows, a window with the highest avoidance priority is determined from the windows that are blocked by the n first windows and the floating window as the second window; Determine at least one candidate position of the second window, where the at least one candidate position does not block the second window and the floating window can be fully displayed at the candidate position; When a window with a higher avoidance priority than the avoidance priority of the second window is blocked by the floating window displayed at a candidate position, removing the candidate position from the at least one candidate position; When the avoidance number of the candidate position is equal to n, the candidate position is used as the first position, and the following steps are stopped; the avoidance number of the candidate position is the number of windows that can not block the first window among the n first windows when the floating window is displayed at the candidate position; When the avoidance number of the candidate position is less than n, recording the avoidance number of the candidate position; Removing the second window from the windows that are blocked by the floating window and repeating the above steps until the windows that are blocked by the floating window are empty; The candidate position having the largest avoidance number among the recorded avoidance numbers is used as the first position.

6. The method according to claim 4 or 5, characterized in that: When the avoidance number of the candidate position is less than the n, if the avoidance number of the candidate position is inconsistent with the avoidance number of the recorded candidate position; or, the avoidance number of the candidate position is consistent with the avoidance number of the recorded candidate position, and the avoidance priority of the window corresponding to the candidate position is not lower than the avoidance priority of the window corresponding to the recorded candidate position, record the avoidance number of the candidate position.

7. The method according to any one of claims 3 to 5, characterized in that: When there are multiple candidate positions with the largest avoidance number, the candidate position corresponding to the window with the highest avoidance priority among the multiple candidate positions with the largest avoidance number is selected as the first position.

8. The method according to claim 6, characterized in that When there are multiple candidate positions with the largest avoidance number, the candidate position corresponding to the window with the highest avoidance priority among the multiple candidate positions with the largest avoidance number is selected as the first position.

9. A display method, characterized in that: The method comprises: Displaying multiple windows, the multiple windows including a floating window and n first windows, wherein n is an integer greater than or equal to 2, and the first window is a non-floating window; When the n first windows are updated, determining the first position of the floating window, the updating including at least one window among the n first windows being replaced and / or the total number of windows increasing; Displaying the floating window at the first position, wherein there is no occlusion between the floating window and at least two of the updated plurality of first windows, and the at least two windows include a display window corresponding to a focus area and a display window corresponding to an area without focus capability but expected to be perceived by a user; The first windows have an avoidance priority between them; The determining the first position of the floating window includes: When the window that is blocked by the multiple updated first windows and the floating window is a first window, at least one candidate position corresponding to the blocked first window is determined, and when the floating window is displayed at the at least one candidate position, at least the first window and windows with a higher avoidance priority than the first window are not blocked; Determine a candidate position with the largest avoidance number among the at least one candidate position as the first position, and the avoidance number of the candidate position is the number of windows that can not block the first windows in the updated multiple first windows when the floating window is displayed at the candidate position.

10. The method according to claim 9, characterized in that The determining of the first position of the floating window further includes: When the number of windows that are blocked by the updated multiple first windows and the floating window is greater than or equal to two of the first windows, at least one candidate position corresponding to each blocked first window is determined; when the floating window is displayed at the at least one candidate position, at least the blocked first window and the window with a higher avoidance priority than the blocked first window are not blocked; The candidate position with the largest avoidance number is determined as the first position, and the avoidance number of the candidate position is the number of windows that can not cover the first windows in the updated multiple first windows when the floating window is displayed at the candidate position.

11. The method according to claim 10, characterized in that When there are multiple candidate positions with the largest avoidance number, the candidate position corresponding to the window with the highest avoidance priority among the multiple candidate positions with the largest avoidance number is selected as the first position.

12. A display device, characterized in that: It comprises a processor and a memory, wherein the processor and the memory are connected, wherein the memory is used to store a program, and the processor is used to call the program to execute the display method as described in any one of claims 1 to 8, or the display method as described in any one of claims 9 to 11.

Citation Information

Patent Citations

  • Suspension window displaying method and device

    CN102156615A

  • Display equipment and video chat window position self-adaptive adjustment method

    CN112399233A