A taskbar dynamic management method and system in a multi-screen environment
Patent Information
- Application Number
- CN202511427176.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-30
- Publication Date
- 2026-09-08
- Estimated Expiration
- 2045-09-30
AI Technical Summary
在现有技术中,操作系统对多显示器任务栏的管理存在以下问题:在克隆模式下,多个显示器上往往显示相同的任务栏,造成资源浪费且缺乏统一管理;当显示器配置发生变化时(如热插拔),任务栏不能智能地重新分配和布局;无法有效区分主屏任务栏和副屏任务栏的功能差异;缺乏统一的状态管理机制来处理各种屏幕组合情况
[0014] Compared with existing technologies, the present invention mainly achieves the following beneficial effects: The present invention can realize intelligent management of the taskbar in a multi-monitor environment, including intelligently identifying changes in monitor configuration and dynamically adjusting the layout and attributes of the taskbar, providing a unified multi-monitor taskbar management solution, supporting various screen combinations, and intelligently handling monitor hot-swapping and configuration changes; the taskbar is only created when a new screen is connected, and the maximum number of taskbars does not exceed the preset maximum number, realizing intelligent management of the taskbar in a multi-monitor environment, maintaining the stability of the taskbar object, ensuring the high reusability of the taskbar, avoiding frequent creation and destruction of the taskbar, thereby improving the user experience and preventing the flickering phenomenon of destroying and rebuilding the taskbar when switching displays.
Smart Images

Figure CN121300894B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of computer graphical user interface technology, and specifically to a method and system for dynamic management of the taskbar in a multi-screen environment. Background Technology
[0002] With the development of computer technology, multi-monitor configurations have become a common means of improving work efficiency. Users may connect multiple monitors (usually 2-4) and set them to extended mode, clone mode, or even a hybrid mode (such as partial clone and partial extension). In existing technologies, the management of taskbars for multiple monitors by the operating system has the following problems: In clone mode, the same taskbar is often displayed on multiple monitors, resulting in wasted resources and a lack of unified management; when the monitor configuration changes (such as hot-swapping), the taskbar cannot be intelligently reassigned and rearranged; the functional differences between the main screen taskbar and the secondary screen taskbar cannot be effectively distinguished; and there is a lack of a unified state management mechanism to handle various screen combination situations. Summary of the Invention
[0003] The technical problem to be solved by this invention is to provide a dynamic management method and system for taskbar in a multi-screen environment, addressing the aforementioned problems of the prior art. This invention aims to achieve intelligent management of the taskbar in a multi-monitor environment, maintain the stability of taskbar objects, ensure the high reusability of the taskbar, avoid frequent creation and destruction of the taskbar, improve user experience, and prevent the flickering phenomenon of taskbar destruction and reconstruction during display switching.
[0004] To solve the above-mentioned technical problems, the technical solution adopted by the present invention is as follows: A method for dynamic taskbar management in a multi-screen environment includes the following steps: S101, The taskbar manager initializes the corresponding number of taskbars based on the maximum number of external displays maxPanelNumber, and initializes the display position of each taskbar. S102, the taskbar grouping engine monitors display change signals. If a display change signal is detected, it obtains the current display configuration information of each screen, matches the index value of the display mode in the engine table according to the current display configuration information of each screen, and sends the index value of the display mode to the taskbar manager. S103, the taskbar manager updates the display position of the taskbar according to the display mode in the engine table.
[0005] Optionally, when obtaining the current display configuration information of each screen in step S102, the fields in the current display configuration information of each screen include clone group identifier cloneGroupID, screen unique identifier ScreenID, whether it is the system main screen flag isPrimaryScreen, and screen position information Pos. The clone group identifier cloneGroupID is the clone group to which the screen belongs. In clone mode, one clone group corresponds to multiple cloned screens, and in extended mode, one clone group corresponds to only one screen.
[0006] Optionally, in step S103, matching the index value of the display mode in the engine table based on the current display configuration information of each screen includes: S201, group the screens into screen groups according to the current display configuration information of each screen; S202, based on the screen group information, look up the index value of the display mode in the matching engine table.
[0007] Optionally, after grouping screens into screen groups in step S201, the fields in the obtained screen group include a screen list (ScreenList), a group mode (Mode), and a primary group flag (isPrimaryGroup). The screen list (ScreenList) is a list of unique screen identifiers (ScreenIDs) for all screens in a clone group. The group mode (Mode) is either CLONE or EXTEND. The primary group flag (isPrimaryGroup) indicates whether the screen is the system's primary screen. Step S201, grouping screens into screen groups, includes: first, grouping screens with the same clone group identifier (cloneGroupID) in the current display configuration information into the same screen group, and then grouping the screens into multiple screen groups... The ScreenID is added to the ScreenList of the screen group. Then, information is extracted for each screen group: if the ScreenList has only one element, the group mode Mode of the screen group is EXTEND; if the ScreenList has more than one element, the group mode Mode of the screen group is CLONE. The screens in the ScreenList are traversed. If there is a screen whose isPrimaryScreen flag is true, the primary group flag isPrimaryGroup of the screen group is set to true; otherwise, the attribute is set to TRUE.
[0008] Optionally, in step S202, when searching for the index value of the display mode in the matching engine table based on the screen group information, the fields in each display mode in the engine table include the index value of the display mode, the number of screens, the number of screen groups, and the display mode.
[0009] Optionally, when the taskbar manager updates the display position of the taskbar according to the display mode in the engine table in step S103, it includes: S301, Get the number of screen groups obtained by screen grouping: groupNumber; S302, subtract the number of screen groups (groupNumber) from the maximum number of external displays that can be connected (maxPanelNumber) to obtain the difference Δ; S303, set the coordinates of the taskbars with a difference of Δ (except for the main taskbar property isPrimaryPanel being true) to an invisible area outside the screen to achieve taskbar hiding; S304: Iterate through the remaining visible taskbars in the number of screen groups (groupNumber). For the currently visible taskbar, determine whether the primary taskbar attribute (isPrimaryPanel) is true. If the primary taskbar attribute (isPrimaryPanel) is true, update the display position of the currently visible taskbar with the screen position information (Pos) of the first screen in the screen list (ScreenList) of the screen group whose primary screen flag (isPrimaryScreen) is true, so that it appears at the specified position in the first screen in the screen list (ScreenList) of the screen group whose primary screen flag (isPrimaryScreen) is true. Otherwise, update the display position of the currently visible taskbar according to the screen position information (Pos) of the screens in the screen list (ScreenList) of each screen group that have not yet been assigned a taskbar.
[0010] Optionally, in step S102, sending the index value of the display mode to the taskbar manager means that the taskbar grouping engine sends the index value of the display mode to the taskbar manager through a given message bus.
[0011] The present invention also provides a taskbar dynamic management system in a multi-screen environment, including a microprocessor and a memory interconnected, wherein the microprocessor is programmed or configured to execute the taskbar dynamic management method in the multi-screen environment.
[0012] The present invention also provides a computer-readable storage medium storing a computer program or instructions that are programmed or configured to execute the taskbar dynamic management method in a multi-screen environment via a processor.
[0013] The present invention also provides a computer program product, including a computer program or instructions, which are programmed or configured to execute the taskbar dynamic management method in the multi-screen environment via a processor.
[0014] Compared with existing technologies, the present invention mainly achieves the following beneficial effects: The present invention can realize intelligent management of the taskbar in a multi-monitor environment, including intelligently identifying changes in monitor configuration and dynamically adjusting the layout and attributes of the taskbar, providing a unified multi-monitor taskbar management solution, supporting various screen combinations, and intelligently handling monitor hot-swapping and configuration changes; the taskbar is only created when a new screen is connected, and the maximum number of taskbars does not exceed the preset maximum number, realizing intelligent management of the taskbar in a multi-monitor environment, maintaining the stability of the taskbar object, ensuring the high reusability of the taskbar, avoiding frequent creation and destruction of the taskbar, thereby improving the user experience and preventing the flickering phenomenon of destroying and rebuilding the taskbar when switching displays. Attached Figure Description
[0015] Figure 1 This is a schematic diagram of the basic process of the method in an embodiment of the present invention.
[0016] Figure 2 This is a schematic diagram illustrating the interaction principle of the service layer, taskbar manager, and taskbar grouping engine in an embodiment of the present invention.
[0017] Figure 3 This is an example of nine display modes for four screens in an embodiment of the present invention.
[0018] Figure 4 This is an example of engine table data for the nine display modes of four screens in an embodiment of the present invention. Detailed Implementation
[0019] To enable those skilled in the art to better understand the technical solution of the present invention, the technical solution of the present invention will be further described in detail below with reference to the accompanying drawings in the embodiments of the present invention.
[0020] like Figure 1 and Figure 2 As shown, the taskbar dynamic management method in a multi-screen environment of this embodiment includes the following steps: S101, The taskbar manager initializes the corresponding number of taskbars based on the maximum number of external displays maxPanelNumber, and initializes the display position of each taskbar. S102, the taskbar grouping engine monitors display change signals. If a display change signal is detected, it obtains the current display configuration information of each screen, matches the index value of the display mode in the engine table according to the current display configuration information of each screen, and sends the index value of the display mode to the taskbar manager. Display change signals include single-screen, all-clone, pair-clone, and all-extended modes, as well as changes caused by the user switching the main screen and adjusting the resolution. Therefore, the taskbar grouping engine needs to listen to the geometryChanged and handlePrimaryScreenChanged signals for each screen. Whenever these change signals are received, the screen group information is updated, and the taskbar manager is triggered to update the coordinate position of the taskbar accordingly.
[0021] S103, the taskbar manager updates the display position of the taskbar according to the display mode in the engine table.
[0022] In step S101, the maximum number of external displays that can be connected, `maxPanelNumber`, can be configured as needed. For example, as an optional implementation, this embodiment uses a Jingjia Micro 9-series graphics card, which can connect to a maximum of four external displays. The maximum number of external displays, `maxPanelNumber`, is defined in the configuration file `panel.conf`. When the taskbar manager starts, it reads this configuration file and creates the corresponding number of taskbars, one of which is the main taskbar, and the rest are secondary taskbars. The main difference between the main and secondary taskbars lies in the management of loaded content. The main taskbar's `isPrimaryPanel` attribute is `TRUE`, and it will include all small programs such as menus, window lists, and the system tray when created. The secondary taskbar's `isPrimaryPanel` attribute is `FALSE`, and it will only contain the start menu and window list.
[0023] In step S102, the display change signals monitored by the taskbar grouping engine include not only signals for switching display modes such as single screen, all clones, pair clones, and all extended displays, but also user-detected primary screen changes (handlePrimaryScreenChanged signal) and resolution adjustments (geometryChanged signal). Therefore, the taskbar grouping engine needs to listen to the geometryChanged and handlePrimaryScreenChanged signals for each screen. Whenever these change signals are received, the corresponding actions are triggered.
[0024] like Figure 2As shown, the taskbar manager is responsible for creating, destroying, and updating the taskbar. When the system shuts down, the taskbar manager needs to destroy all taskbars. The current display configuration information for each screen is provided by the system's service layer and is information obtainable from system services. In step S102 of this embodiment, when obtaining the current display configuration information for each screen, the fields in the obtained current display configuration information for each screen include: cloneGroupID; Screen ID is a unique identifier for each screen. Is it the system home screen icon (isPrimaryScreen)? And screen position information Pos.
[0025] In this configuration, the cloneGroupID identifies the clone group to which the screen belongs. In clone mode, one clone group corresponds to multiple cloned screens, while in extended mode, one clone group corresponds to only one screen. In this embodiment, the unique screen identifier ScreenID is specifically represented by a QScreen object, and the screen position information Pos is obtained from the QScreen object. The following are examples of display information configuration for the clone mode and extended mode of two screens: Display configuration information in extended mode: cloneGroupID1, screen1, isPrimaryScreen=TRUE, (0,0 1920×1080) cloneGroupID2, screen2, isPrimaryScreen=FALSE, (1920,0 1920×1080) Display configuration information in clone mode: cloneGroupID1, screen1, isPrimaryScreen=TRUE, (0,0 1920×1080) cloneGroupID1, screen2, isPrimaryScreen=FALSE, (0,0 1920×1080) Here, cloneGroupID1 and cloneGroupID2 are clone group identifiers (cloneGroupID). The taskbar grouping engine uses this clone group identifier (cloneGroupID) to determine whether the display mode is extended or cloned. screen1 and screen2 are QScreen type screen objects. isPrimaryScreen=TRUE and isPrimaryScreen=FALSE respectively indicate whether the system primary screen flag isPrimaryScreen is true (TRUE) and false (FALSE). The screen position information Pos consists of coordinates and screen size. For example, (0,0 1920×1080) represents the screen position determined by coordinates (0,0) and size 1920×1080, with the horizontal coordinate ranging from 1 to 1920 pixels and the vertical coordinate from 1 to 1080 pixels. (1920,0 1920×1080) represents the screen position determined by coordinates (1920,0) and size 1920×1080. Its horizontal coordinate ranges from 1921 to 3840 pixels, and its vertical coordinate ranges from 1 to 1080 pixels.
[0026] As the core of the system, the taskbar grouping engine obtains display configuration information from the service layer and maintains a set of screen groups (ScreenGroup objects) and state machine logic, mapping the relationship between screen groups and state machines in the engine table. The taskbar grouping engine records the number of groups using the screen group number `groupNumber`, which is actually equal to the number of clone group identifiers. The number of clone groups equals the number of screen group numbers `groupNumber`, and the number of screen group numbers `groupNumber` indicates the number of visible taskbars. The visibility of the taskbar is described in the "Taskbar Manager". In step S103 of this embodiment, matching the index value of the display mode in the engine table based on the current display configuration information of each screen includes: S201, group the screens into screen groups according to the current display configuration information of each screen; S202, based on the screen group information, look up the index value of the display mode in the matching engine table.
[0027] In step S201 of this embodiment, after grouping the screens into screen groups, the fields obtained in the screen groups include: ScreenList; Group mode; And whether it is the primary group flag isPrimaryGroup; The ScreenList is a list of unique ScreenIDs for all screens within a clone group. The Group Mode is either CLONE (cloning mode) or EXTEND (extended mode). The Primary Group flag (isPrimaryGroup) indicates whether the screen is the system's primary screen. If the ScreenList count is greater than 1, the Group Mode is CLONE; if it is 1, it is EXTEND. The Primary Group flag (isPrimaryGroup) is primarily set based on the PrimaryScreen flag (is whether it is the system's primary screen) obtained from the service layer.
[0028] Step S201, grouping screens into screen groups, includes: first, grouping screens with the same cloneGroupID in the current display configuration information into the same screen group, and adding the unique screen ID (ScreenID) of the multiple screens to the screen list (ScreenList) of the screen group; then, extracting information for each screen group: if the screen list (ScreenList) has only one element, the group mode (Mode) of the screen group is EXTEND; if the screen list (ScreenList) has more than one element, the group mode (Mode) of the screen group is CLONE; traversing the screens in the screen list (ScreenList), if there is a screen whose primary screen flag (isPrimaryScreen) is true, then setting the primary screen group flag (isPrimaryGroup) of the screen group to true; otherwise, setting the attribute to TRUE; otherwise, setting the primary screen group flag (isPrimaryGroup) of the screen group to false.
[0029] The taskbar grouping engine maintains the state of all display modes in the system through an engine table, such as... Figure 3As shown, taking four screens as an example, the state machine of the taskbar grouping engine has 9 display mode states: In the "initial state", if a screen is connected, it will enter "single screen (first screen only)"; In the "single screen (first screen only)" state, it can enter "all expansion (2)" by expanding the screen; In the "all expansion (2)" state, it can enter "all expansion (3)" or return to "single screen (first screen only)" by adding or removing screens; In the "all expansion (3)" state, it can enter "all expansion (4)" or return to "all expansion (2)" by adding or removing screens, and enter "all clone (3)" by changing the mode; In the "all expansion (4)" state, it can enter "all clone (4)" or "two clones (4)" by changing the mode; "two clones (4)" can enter "two screen clone plus expansion" by removing screens; In the "two screen clone plus expansion" state, it can enter "all clone (2)" or return to "all clone (4)" by adding or removing screens. Under “All Clones (2)”, you can enter “Single Screen (First Screen Only)” by removing the screen, or return to “Two Screen Clones with Extension” by adding a screen. Figure 4 This example illustrates the engine table data for the nine display modes across four screens in this embodiment. In step S202, when searching for the index value of the matching display mode in the engine table based on the screen group information, each display mode entry in the engine table includes the display mode index value, the number of screens, the number of screen groups, and the display mode. For instance, in one implementation, the grouping engine detects a display mode change signal from the service layer and, based on the information provided by the service layer, groups the screens into two groups, where the number of screen groups (groupNumber) equals 2: {screen1, screen2}, CLONE, isPrimaryGroup=TRUE; {screen3 identifier, screen4 identifier}, CLONE, isPrimaryGroup=FALSE; After recognizing these two screen states, the taskbar grouping engine compares the recognized pattern information with the state machine engine table. For example, four screens, two clones, correspond to the item with index value 8 in the table. Then, the taskbar grouping engine sends a signal. After receiving the engine signal, the taskbar manager recognizes the current state of the state machine based on index value 8 and updates the properties of all taskbars according to the screen group.
[0030] When the display mode changes, the taskbar grouping engine looks up the corresponding index value from the state machine engine table and updates the taskbar position information according to the current state of the state machine. In this embodiment, step S103, where the taskbar manager updates the taskbar display position according to the display mode in the engine table, includes: S301, Get the number of screen groups obtained by screen grouping: groupNumber; S302, subtract the number of screen groups groupNumber from the maximum number of external displays maxPanelNumber to obtain the difference Δ, that is: Δ=maxPanelNumber-groupNumber; S303, set the coordinates of the taskbars with a difference of Δ (except for the main taskbar property isPrimaryPanel being true) to an invisible area outside the screen to achieve taskbar hiding; S304 iterates through the remaining visible taskbars in the number of screen groups (groupNumber). For each currently visible taskbar, it checks if the primary taskbar attribute (isPrimaryPanel) is true. If isPrimaryPanel is true, it updates the display position of the currently visible taskbar with the screen position information (Pos) of the first screen in the screen list (ScreenList) of the screen group where the system primary screen flag (isPrimaryScreen) is true, making it appear at the specified position within the first screen in the screen list (ScreenList) of the screen group where the system primary screen flag (isPrimaryScreen) is true. Otherwise, it updates the display position of the currently visible taskbar with the screen position information (Pos) of the screens in the screen list (ScreenList) of each screen group that have not yet been assigned a taskbar. In a four-screen setup, the taskbar manager creates four taskbars by default: one primary taskbar and three secondary taskbars. When the display mode is switched to 8, the taskbar manager iterates through the four taskbars. If the taskbar's system home screen flag isPrimaryScreen is true (TRUE), it finds the group with isPrimaryGroup set to true, obtains the screen coordinates, and sets the taskbar position. For non-home screen taskbars, i.e., those with the system home screen flag isPrimaryScreen set to false (FALSE), it selects one of the taskbars in the group with isPrimaryGroup set to false and sets its coordinates to the coordinates of the first screen in screenList. The remaining two taskbars are set to an invisible area outside the screen; anything outside the screen area is considered invisible.
[0031] like Figure 2 As shown, in step S102 of this embodiment, sending the index value of the display mode to the taskbar manager means that the taskbar grouping engine sends the index value of the display mode to the taskbar manager through a given message bus. The message bus is responsible for transmitting state change messages between modules. The service layer and the taskbar grouping engine communicate through the DBus bus, and the taskbar grouping engine and the taskbar manager communicate through the QT signal-slot mechanism.
[0032] In summary, the taskbar dynamic management method in this embodiment for multi-screen environments enables intelligent management of the taskbar in multi-monitor environments. This includes intelligently recognizing changes in monitor configuration and dynamically adjusting the taskbar layout and attributes. It provides a unified multi-monitor taskbar management solution, supports various screen combinations, and can intelligently handle monitor hot-swapping and configuration changes. The taskbar is created only when a new screen is connected, with a maximum number of taskbars not exceeding the preset maximum. This achieves intelligent management of the taskbar in multi-monitor environments, maintains the stability of taskbar objects, ensures high reusability of the taskbar, avoids frequent creation and destruction of the taskbar, improves user experience, and prevents flickering during taskbar destruction and reconstruction when switching displays.
[0033] Furthermore, this embodiment also provides a taskbar dynamic management system for a multi-screen environment, including a microprocessor and a memory interconnected, wherein the microprocessor is programmed or configured to execute the taskbar dynamic management method for a multi-screen environment. This embodiment also provides a computer-readable storage medium storing a computer program or instructions programmed or configured to execute the taskbar dynamic management method for a multi-screen environment via a processor. This embodiment also provides a computer program product, including a computer program or instructions programmed or configured to execute the taskbar dynamic management method for a multi-screen environment via a processor.
[0034] Those skilled in the art will understand that the technical solutions provided by this invention may take the form of a method, system, or computer program product. Therefore, this invention may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this invention may take the form of a computer program product embodied on one or more computer-readable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code. This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, produce an implementation of the flowchart... Figure 1 One or more processes and / or boxes Figure 1The computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The functions specified in one or more boxes. These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable apparatus for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0035] The above description is merely a preferred embodiment of the present invention. The scope of protection of the present invention is not limited to the above embodiments. All technical solutions falling within the scope of the present invention's concept are within the scope of protection of the present invention. It should be noted that for those skilled in the art, any improvements and modifications made without departing from the principles of the present invention should also be considered within the scope of protection of the present invention.
Claims
1. A method for dynamic management of the taskbar in a multi-screen environment, characterized in that, Includes the following steps: S101, The taskbar manager initializes the corresponding number of taskbars based on the maximum number of external displays maxPanelNumber, and initializes the display position of each taskbar. S102, the taskbar grouping engine monitors display change signals. If a display change signal is detected, it obtains the current display configuration information of each screen, matches the index value of the display mode in the engine table according to the current display configuration information of each screen, and sends the index value of the display mode to the taskbar manager. S103, the taskbar manager updates the taskbar's display position according to the display mode in the engine table, including: S301, obtaining the number of screen groups (groupNumber) obtained from screen grouping; S302, subtracting the number of screen groups (groupNumber) from the maximum number of external displays (maxPanelNumber) to obtain the difference Δ; S303, setting the coordinates of the Δ taskbars (excluding the primary taskbar's isPrimaryPanel property being true) to an invisible area outside the screen to hide the taskbars; S304, iterating through the remaining visible taskbars (groupNumber), and for each currently visible taskbar, determining the primary taskbar. The system checks whether the primary taskbar property isPrimaryPanel is true. If the primary taskbar property isPrimaryPanel is true, the screen position information Pos of the first screen in the ScreenList of the screen group whose primary screen flag isPrimaryScreen is true is used to update the display position of the currently visible taskbar, so that it appears in the specified position of the first screen in the ScreenList of the screen group whose primary screen flag isPrimaryScreen is true; otherwise, the display position of the currently visible taskbar is updated according to the screen position information Pos of the screens in the ScreenList of each screen group that have not yet been assigned a taskbar.
2. The method for dynamic management of the taskbar in a multi-screen environment according to claim 1, characterized in that, When obtaining the current display configuration information of each screen in step S102, the fields in the current display configuration information of each screen include clone group identifier cloneGroupID, screen unique identifier ScreenID, whether it is the system main screen flag isPrimaryScreen, and screen position information Pos. The clone group identifier cloneGroupID is the clone group to which the screen belongs. In clone mode, one clone group corresponds to multiple cloned screens, and in extended mode, one clone group corresponds to only one screen.
3. The method for dynamic management of the taskbar in a multi-screen environment according to claim 2, characterized in that, In step S102, matching the index value of the display mode in the engine table based on the current display configuration information of each screen includes: S201, group the screens into screen groups based on the current display configuration information of each screen; S202, based on the screen group information, look up the index value of the display mode in the matching engine table.
4. The method for dynamic management of the taskbar in a multi-screen environment according to claim 3, characterized in that, After grouping screens into screen groups in step S201, the fields in the obtained screen groups include a screen list (ScreenList), a group mode (Mode), and a primary group flag (isPrimaryGroup). The screen list (ScreenList) is a list of unique screen identifiers (ScreenIDs) for all screens in a clone group. The group mode (Mode) is either CLONE or EXTEND. The primary group flag (isPrimaryGroup) indicates whether the screen is the system's primary screen. Step S201, grouping screens into screen groups, includes: first, grouping screens with the same clone group ID (cloneGroupID) in the current display configuration information into the same screen group; and then grouping the multiple screens in the same screen group into the same screen group... A ScreenID is added to the ScreenList of the screen group. Then, information is extracted for each screen group: if the ScreenList has only one element, the group mode Mode is EXTEND; if the ScreenList has more than one element, the group mode Mode is CLONE. Iterate through the screens in the ScreenList. If there is a screen whose isPrimaryScreen flag is true, set the PrimaryScreen flag of the screen group to true; otherwise, set the isPrimaryGroup flag to false.
5. The method for dynamic management of the taskbar in a multi-screen environment according to claim 4, characterized in that, In step S202, when searching for the index value of the display mode in the matching engine table based on the screen group information, each display mode in the engine table includes the index value of the display mode, the number of screens, the number of screen groups, and the display mode.
6. The method for dynamic management of the taskbar in a multi-screen environment according to claim 1, characterized in that, In step S102, sending the index value of the display mode to the taskbar manager means that the taskbar grouping engine sends the index value of the display mode to the taskbar manager through a given message bus.
7. A dynamic taskbar management system for a multi-screen environment, comprising a microprocessor and a memory interconnected, characterized in that, The microprocessor is programmed or configured to execute the taskbar dynamic management method in a multi-screen environment as described in any one of claims 1 to 6.
8. A computer-readable storage medium storing a computer program or instructions, characterized in that, The computer program or instructions are programmed or configured to execute the taskbar dynamic management method in a multi-screen environment as described in any one of claims 1 to 6 via a processor.
9. A computer program product, comprising a computer program or instructions, characterized in that, The computer program or instructions are programmed or configured to execute the taskbar dynamic management method in a multi-screen environment as described in any one of claims 1 to 6 via a processor.
Citation Information
Patent Citations
Task execution state updating method and device, computer equipment and storage medium
CN114693205A
Multi-display system and taskbar display method
JP2007183781A