CN118276716A - Window management method and electronic equipment - Google Patents

Window management method and electronic equipment Download PDF

Info

Publication number
CN118276716A
CN118276716A CN202211708148.1A CN202211708148A CN118276716A CN 118276716 A CN118276716 A CN 118276716A CN 202211708148 A CN202211708148 A CN 202211708148A CN 118276716 A CN118276716 A CN 118276716A
Authority
CN
China
Prior art keywords
window
application
input event
processing module
layout
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211708148.1A
Other languages
Chinese (zh)
Inventor
杜丙坚
周军
高彬彬
陈沁心
夏海琴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202211708148.1A priority Critical patent/CN118276716A/en
Publication of CN118276716A publication Critical patent/CN118276716A/en
Pending legal-status Critical Current

Links

Landscapes

  • User Interface Of Digital Computer (AREA)

Abstract

The application provides a window management method and electronic equipment, wherein in a multi-window display mode, the electronic equipment can display a second window in a first window, and for an input event in the second window, an input event management process can directly send the input event to a second process. According to the window management method and the electronic device, the second process obtains the input event in the second window without forwarding through the first process or other processes, so that the forwarding times of forwarding the input event by utilizing inter-process communication in the input event receiving process are reduced, the resources of the electronic device are saved, the processing efficiency of the electronic device on the input event in the window is improved, and the use experience of a user is improved.

Description

Window management method and electronic equipment
Technical Field
The application relates to the field of terminal equipment software, in particular to a window management method and electronic equipment.
Background
In recent years, with the vigorous development of the electronic technology industry, the data and information processing capability of terminal devices is stronger, and roles of various terminal devices such as mobile phones and tablet computers in various scenes such as life, entertainment and office of users are also more important, so that the terminal devices can support users to process multiple tasks at the same time to improve the processing efficiency.
In a multi-task processing scene, the terminal equipment can display a plurality of windows by using the same screen, the plurality of windows can simultaneously display processing states of different tasks, and the plurality of windows can also be used as a plurality of input ports for inputting information to the terminal equipment by a user. How to optimize the layout adjustment scheme between different windows in the multi-window display mode, and improving the processing efficiency of the terminal device on the input event in the multi-window display mode is worth considering.
Disclosure of Invention
The application provides a window management method and electronic equipment, wherein a second window is positioned in a first window in a multi-window display mode, and a process corresponding to the second window can directly receive an input event in the second window from an input event management process of the electronic equipment without forwarding through other processes. According to the method and the device, the forwarding steps of the input event are reduced, and the processing efficiency of the electronic equipment on the input event in the multi-window display mode is improved.
In a first aspect, a method for managing windows is provided, where the method is applied to an electronic device, the electronic device displays a first window and a second window, the first window is a display window of a first application, the second window is a display window of a second application, and the second window is located in the first window; responding to an input event in a second window, wherein the input event management process sends the input event to a second process, and the input event management process is used for distributing the input event in the first window and the input event in the second window acquired by the electronic equipment, and the second process is a process corresponding to a second application; the electronic device outputs a processing result of the input event.
The input event in the second window refers to an input event in the display area of the second window. For electronic devices such as mobile phones, tablet computers, and the like, the display area of the second window may be a fixed area on the screen of the electronic device. For an electronic device such as an augmented reality device, the display area of the second window is not limited to a fixed area on the screen of the electronic device. The second process is a process corresponding to the second application, and it is also understood that the second process is an execution state of the second application.
In the technical scheme, in the multi-window display mode, after an input event occurs in a second window displayed in the first window, the input event management process can directly send the input event to the second process. Compared with the mode that the input event management process is sent to the intermediate process and then sent to the second process by the intermediate process, the method reduces the step of forwarding among processes in the process of distributing the input event to the second process. The implementation of the technical scheme is beneficial to reducing the times of forwarding the input event among processes in the receiving process of the input event in the multi-window display mode, saving the resources of the electronic equipment, improving the processing efficiency of the electronic equipment on the input event in the multi-window display mode and improving the use experience of users.
With reference to the first aspect, in some implementations of the first aspect, in a case that the input event is an input event that cannot be processed by the second process, the second process sends the input event to a first process, where the first process is a process corresponding to the first application; the first process generates a processing result according to the input event.
The first process is a process corresponding to the first application, and it is also understood that the first process is an execution state of the first application.
In one possible implementation, the second process sends the information of the input event to the first process by way of inter-process communication.
In the technical scheme, the input event which occurs in the second window and cannot be processed by the second process is transmitted to the first process for processing. Compared with a method for processing an input event by only one window, the implementation of the technical scheme is beneficial to improving the processing capacity and processing efficiency of the electronic equipment for the input event in the multi-window display mode, improving the energy utilization efficiency of the electronic equipment and improving the use experience of a user.
With reference to the first aspect, in certain implementations of the first aspect, the first window includes a target control, the target control is used to display the second window, and a layout of the second window is determined according to a size of the target control.
The control in the first window can be simultaneously drawn in the process of drawing the first window, and the technical scheme simplifies the method for adjusting the layout of a plurality of windows by the electronic equipment in the multi-window display mode by determining the layout of the second window according to the size of the target control, and improves the efficiency of adjusting the layout of one window by the electronic equipment after the layout of the other window is changed.
With reference to the first aspect, in certain implementations of the first aspect, in response to a first operation, the first process adjusts a layout of a first window, the layout of the first window including a size of the target control; the first process sends the adjusted size of the target control to the second process; the second process block adjusts the layout of the second window according to the adjusted size of the target control.
In the technical scheme, when the user adjusts the layout of the first window, the first process can send the adjusted size of the target control to the second process, so that the second process can correspondingly adjust the layout of the second window according to the size of the target control. The first process and the second process can directly communicate and transmit information without forwarding through other processes, and the implementation of the technical scheme is beneficial to reducing forwarding steps of information such as control size and the like in the window layout adjustment process in the multi-window display mode, reducing resource consumption of the electronic equipment and improving efficiency of the electronic equipment on window layout adjustment.
With reference to the first aspect, in certain implementations of the first aspect, in response to a second operation, the second process adjusts a layout of the second window, the layout of the second window including a size of the second window; the second process sends the adjusted size of the second window to the first process; the first process adjusts the size of the target control according to the adjusted size of the second window.
In the technical scheme, in the multi-window display mode, a user can independently adjust the layout of the second window, and the second process can send the adjusted size of the second window to the first process, so that the first process can correspondingly adjust the target control. The second process and the first process can directly communicate and transmit information without forwarding through other processes, and the implementation of the technical scheme is beneficial to reducing the forwarding steps of information such as window size and the like in the window layout adjustment process in the multi-window display mode, saves resources of electronic equipment, improves the window layout adjustment efficiency and improves the use experience of users.
With reference to the first aspect, in some implementations of the first aspect, the rendering objects of the first window form a first rendering tree, and the rendering objects of the second window form a second rendering tree, where the second rendering tree is mounted on a rendering node corresponding to the target control in the first rendering tree.
In the process of rendering the windows, the object to be rendered of the second window is mounted on the rendering tree of the first window. The first window is used as a parent node of the rendering tree, and the object to be rendered of the second window is used as a child node. The attribute or rendering process of the rendering object corresponding to the parent node may affect the rendering result of the rendering object corresponding to the child node. The implementation of the technical scheme is beneficial to simplifying the layout adjustment method of the second window and improving the adjustment efficiency of the layout of the second window.
With reference to the first aspect, in certain implementations of the first aspect, the second application is a provider of application content, and the first application is a consumer of the application content.
In one possible implementation, the first application is an application in a first set of applications and the second application is an application in a second set of applications. The first application set and the second application set have a mapping relation.
By presetting the interrelationship between the first application and the second application, the applications running on the electronic equipment can be distinguished, and only two applications meeting the relation can be displayed in parallel in the multi-window display mode by using the window management method provided by the application.
The following explanation and beneficial effects in the following technical solutions may refer to the relevant descriptions in the first aspect, and for brevity, the description is omitted herein.
In a second aspect, an electronic device is provided, the electronic device comprising a processor and a memory for storing program instructions for execution by the processor to cause the electronic device to perform the method of the first aspect and any possible implementation thereof.
In the following technical solutions, the method for managing windows provided by the present application is described in terms of functional modules, and it should be understood that the functions of the modules may be implemented by hardware, or by software, or by a combination of software and hardware. The application is not limited in this regard.
In a third aspect, a device for managing a window is provided, where the device for managing a window includes a display module, an input event management module, a second processing module, and an output module, where the display module is configured to display a first window and a second window, where the first window is a display window of a first application, and the second window is a display window of a second application, and the second window is located in the first window; responding to the input event in the second window, wherein the input event management module is used for sending the input event to the second processing module, the input event management module is used for distributing the input event in the first window and the input event in the second window acquired by the window management device, and the second processing module is a processing module corresponding to the second application; the output module is used for outputting the processing result of the input event.
With reference to the third aspect, in some implementations of the third aspect, the window management device further includes a first processing module, where the first processing module is a processing module corresponding to the first application, and if an input event is an input event that cannot be processed by a second processing module, the second processing module is configured to send the input event to the first processing module; the first processing module is used for generating the processing result according to the input event.
With reference to the third aspect, in some implementations of the third aspect, the first window includes a target control for displaying a second window, and a layout of the second window is determined according to a size of the target control.
With reference to the third aspect, in some implementations of the third aspect, in response to the first operation, the first processing module is further configured to adjust a layout of the first window, where the layout of the first window includes a size of the target control, and the first processing module is a processing module corresponding to the first application; the first processing module is further used for sending the adjusted size of the target control to the second processing module; the second processing module is further configured to adjust a layout of the second window according to the adjusted size of the target control.
With reference to the third aspect, in some implementations of the third aspect, in response to a second operation, the second processing module is further configured to adjust a layout of the second window, where the layout of the second window includes a size of the second window; the second processing module is further configured to send the adjusted size of the second window to the first processing module, where the first processing module is a processing module corresponding to the first application; the first processing module is further configured to adjust a size of the target control according to the adjusted size of the second window.
With reference to the third aspect, in some implementations of the third aspect, the rendering objects of the first window form a first rendering tree, the rendering objects of the second window form a second rendering tree, and the second rendering tree is mounted on a rendering node corresponding to the target control in the first rendering tree.
With reference to the third aspect, in some implementations of the third aspect, the second application is a provider of application content, and the first application is a consumer of application content.
In a fourth aspect, there is provided a computer program product comprising computer program code for causing the method of the first aspect or any possible implementation thereof to be performed when the computer program code is run on a computer.
In a fifth aspect, there is provided a computer readable storage medium having stored therein computer instructions which, when run on a computer, cause the method of the first aspect or any possible implementation thereof to be performed.
In a sixth aspect, there is provided a chip product comprising a processor for reading instructions stored in a memory, which when executed by the processor, cause the chip to implement the method of the first aspect or any possible implementation thereof to be performed.
Drawings
Fig. 1 is a schematic diagram of a hardware architecture of an electronic device according to an embodiment of the present application.
Fig. 2 is a schematic diagram of an electronic device software architecture suitable for use in an embodiment of the present application.
Fig. 3 is a schematic diagram of a method for window management according to an embodiment of the present application.
Fig. 4 is a schematic diagram of another method for window management according to an embodiment of the present application.
Fig. 5 is a schematic diagram of another method for window management according to an embodiment of the present application.
Fig. 6 is a schematic diagram of another method for window management according to an embodiment of the present application.
Fig. 7 to 11 are schematic diagrams of application of the method for managing windows in a mobile phone according to the embodiment of the present application.
Fig. 12 to 15 are application diagrams of a method for managing windows on a tablet computer according to an embodiment of the present application.
Fig. 16 to fig. 19 are schematic application diagrams of a method for managing windows on a folding screen device according to an embodiment of the present application.
Fig. 20 is a window management apparatus according to an embodiment of the present application.
Fig. 21 is an electronic device provided in an embodiment of the present application.
Detailed Description
The technical scheme of the application will be described below with reference to the accompanying drawings.
The terminology used in the following examples is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in the specification of the application and the appended claims, the singular forms "a," "an," "the," and "the" are intended to include, for example, "one or more" such forms of expression, unless the context clearly indicates to the contrary. It should also be understood that in the following embodiments of the present application, "at least one", "one or more" means one, two or more than two. The term "and/or" is used to describe an association relationship of associated objects, meaning that there may be three relationships; for example, a and/or B may represent: a alone, a and B together, and B alone, wherein A, B may be singular or plural. The character "/" generally indicates that the context-dependent object is an "or" relationship.
Reference in the specification to "one embodiment" or "some embodiments" or the like means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," and the like in the specification are not necessarily all referring to the same embodiment, but mean "one or more but not all embodiments" unless expressly specified otherwise. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless expressly specified otherwise.
The method provided by the embodiment of the application can be applied to electronic equipment such as mobile phones, tablet computers, wearable equipment, vehicle-mounted equipment, augmented reality (augmented reality, AR)/Virtual Reality (VR) equipment, notebook computers, ultra-mobile personal computer (UMPC), netbooks, personal digital assistants (personal DIGITAL ASSISTANT, PDA) and the like, and the embodiment of the application does not limit the specific type of the electronic equipment.
By way of example, fig. 1 shows a schematic diagram of an electronic device 100. The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (universal serial bus, USB) interface 130, a charge management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an ear-piece interface 170D, a sensor module 180, keys 190, a motor 191, an indicator 192, a camera 193, a display 194, and a user identification (subscriber identification module, SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyro sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, and the like.
It should be understood that the illustrated structure of the embodiment of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the application, electronic device 100 may include more or fewer components than shown, or certain components may be combined, or certain components may be split, or different arrangements of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
The processor 110 may include one or more processing units, such as: the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (IMAGE SIGNAL processor, ISP), a controller, a memory, a video codec, a digital signal processor (DIGITAL SIGNAL processor, DSP), a baseband processor, and/or a neural Network Processor (NPU), etc. Wherein the different processing units may be separate devices or may be integrated in one or more processors.
The controller may be a neural hub and a command center of the electronic device 100, among others. The controller can generate operation control signals according to the instruction operation codes and the time sequence signals to finish the control of instruction fetching and instruction execution.
A memory may also be provided in the processor 110 for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to reuse the instruction or data, it can be called directly from the memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby improving the efficiency of the system.
In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include an integrated circuit (inter-INTEGRATED CIRCUIT, I2C) interface, an integrated circuit built-in audio (inter-INTEGRATED CIRCUIT SOUND, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous receiver transmitter (universal asynchronous receiver/transmitter, UART) interface, a mobile industry processor interface (mobile industry processor interface, MIPI), a general-purpose input/output (GPIO) interface, a subscriber identity module (subscriber identity module, SIM) interface, and/or a universal serial bus (universal serial bus, USB) interface, among others.
The USB interface 130 is an interface conforming to the USB standard specification, and may specifically be a Mini USB interface, a Micro USB interface, a USB Type C interface, or the like. The USB interface 130 may be used to connect a charger to charge the electronic device 100, and may also be used to transfer data between the electronic device 100 and a peripheral device. And can also be used for connecting with a headset, and playing audio through the headset. The interface may also be used to connect other electronic devices, such as AR devices, etc.
It should be understood that the interfacing relationship between the modules illustrated in the embodiments of the present application is only illustrative, and is not meant to limit the structure of the electronic device 100. In other embodiments of the present application, the electronic device 100 may also employ different interfacing manners in the above embodiments, or a combination of multiple interfacing manners.
The charge management module 140 is configured to receive a charge input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charge management module 140 may receive a charging input of a wired charger through the USB interface 130. In some wireless charging embodiments, the charge management module 140 may receive wireless charging input through a wireless charging coil of the electronic device 100. The charging management module 140 may also supply power to the electronic device through the power management module 141 while charging the battery 142.
The power management module 141 is used for connecting the battery 142, and the charge management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and/or the charge management module 140 and provides power to the processor 110, the internal memory 121, the external memory, the display 194, the camera 193, the wireless communication module 160, and the like. The power management module 141 may also be configured to monitor battery capacity, battery cycle number, battery health (leakage, impedance) and other parameters. In other embodiments, the power management module 141 may also be provided in the processor 110. In other embodiments, the power management module 141 and the charge management module 140 may be disposed in the same device.
The wireless communication function of the electronic device 100 may be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, a modem processor, a baseband processor, and the like.
The antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in the electronic device 100 may be used to cover a single or multiple communication bands. Different antennas may also be multiplexed to improve the utilization of the antennas. For example: the antenna 1 may be multiplexed into a diversity antenna of a wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
The mobile communication module 150 may provide a solution for wireless communication including 2G/3G/4G/5G, etc., applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (low noise amplifier, LNA), etc.
The wireless communication module 160 may provide solutions for wireless communication including wireless local area network (wireless local area networks, WLAN) (e.g., wireless fidelity (WIRELESS FIDELITY, wi-Fi) network), bluetooth (BT), global navigation satellite system (global navigation SATELLITE SYSTEM, GNSS), frequency modulation (frequency modulation, FM), near field communication (NEAR FIELD communication, NFC), infrared (IR), etc., applied to the electronic device 100. The wireless communication module 160 may be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, modulates the electromagnetic wave signals, filters the electromagnetic wave signals, and transmits the processed signals to the processor 110. The wireless communication module 160 may also receive a signal to be transmitted from the processor 110, frequency modulate it, amplify it, and convert it to electromagnetic waves for radiation via the antenna 2.
The electronic device 100 implements display functions through a GPU, a display screen 194, an application processor, and the like. The GPU is a microprocessor for image processing, and is connected to the display 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or change display information.
The display screen 194 is used to display images, videos, and the like. The display 194 includes a display panel. The display panel may employ a Liquid Crystal Display (LCD) CRYSTAL DISPLAY, an organic light-emitting diode (OLED), an active-matrix organic LIGHT EMITTING diode (AMOLED), a flexible light-emitting diode (FLED), miniled, microLed, micro-oLed, a quantum dot LIGHT EMITTING diode (QLED), or the like. In some embodiments, the electronic device 100 may include 1 or N display screens 194, N being a positive integer greater than 1.
The electronic device 100 may implement photographing functions through an ISP, a camera 193, a video codec, a GPU, a display screen 194, an application processor, and the like.
The ISP is used to process data fed back by the camera 193. For example, when photographing, the shutter is opened, light is transmitted to the camera photosensitive element through the lens, the optical signal is converted into an electric signal, and the camera photosensitive element transmits the electric signal to the ISP for processing and is converted into an image visible to naked eyes. ISP can also optimize the noise, brightness and skin color of the image. The ISP can also optimize parameters such as exposure, color temperature and the like of a shooting scene. In some embodiments, the ISP may be provided in the camera 193.
The camera 193 is used to capture still images or video. The object generates an optical image through the lens and projects the optical image onto the photosensitive element. The photosensitive element may be a charge coupled device (charge coupled device, CCD) or a Complementary Metal Oxide Semiconductor (CMOS) phototransistor. The photosensitive element converts the optical signal into an electrical signal, which is then transferred to the ISP to be converted into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV, or the like format. In some embodiments, electronic device 100 may include 1 or N cameras 193, N being a positive integer greater than 1.
The digital signal processor is used for processing digital signals, and can process other digital signals besides digital image signals. For example, when the electronic device 100 selects a frequency bin, the digital signal processor is used to fourier transform the frequency bin energy, or the like.
Video codecs are used to compress or decompress digital video. The electronic device 100 may support one or more video codecs. In this way, the electronic device 100 may play or record video in a variety of encoding formats, such as: dynamic picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4, etc.
The NPU is a neural-network (NN) computing processor, and can rapidly process input information by referencing a biological neural network structure, for example, referencing a transmission mode between human brain neurons, and can also continuously perform self-learning. Applications such as intelligent awareness of the electronic device 100 may be implemented through the NPU, for example: image recognition, face recognition, speech recognition, text understanding, etc.
The external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to enable expansion of the memory capabilities of the electronic device 100. The external memory card communicates with the processor 110 through an external memory interface 120 to implement data storage functions. For example, files such as music, video, etc. are stored in an external memory card.
The internal memory 121 may be used to store computer executable program code including instructions. The processor 110 executes various functional applications of the electronic device 100 and data processing by executing instructions stored in the internal memory 121. The internal memory 121 may include a storage program area and a storage data area. The storage program area may store an application program (such as a sound playing function, an image playing function, etc.) required for at least one function of the operating system, etc. The storage data area may store data created during use of the electronic device 100 (e.g., audio data, phonebook, etc.), and so on. In addition, the internal memory 121 may include a high-speed random access memory, and may further include a nonvolatile memory such as at least one magnetic disk storage device, a flash memory device, a universal flash memory (universal flash storage, UFS), and the like.
The electronic device 100 may implement audio functions through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, an application processor, and the like. Such as music playing, recording, etc.
The audio module 170 is used to convert digital audio information into an analog audio signal output and also to convert an analog audio input into a digital audio signal. The audio module 170 may also be used to encode and decode audio signals. In some embodiments, the audio module 170 may be disposed in the processor 110, or a portion of the functional modules of the audio module 170 may be disposed in the processor 110.
The keys 190 include a power-on key, a volume key, etc. The keys 190 may be mechanical keys. Or may be a touch key. The electronic device 100 may receive key inputs, generating key signal inputs related to user settings and function controls of the electronic device 100.
The software system of the electronic device 100 may employ a layered architecture, an event driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture. In the embodiment of the application, taking an Android system with a layered architecture as an example, a software structure of the electronic device 100 is illustrated.
Fig. 2 is a software configuration block diagram of the electronic device 100 according to the embodiment of the present application. The layered architecture divides the software into several layers, each with distinct roles and branches. The layers communicate with each other through a software interface. In some embodiments, the Android system is divided into four layers, from top to bottom, an application layer, an application framework layer, an Zhuoyun rows (Android runtime) and system libraries, and a kernel layer, respectively. The application layer may include a series of application packages.
As shown in fig. 2, the application package may include applications for cameras, gallery, calendar, phone calls, maps, navigation, WLAN, bluetooth, music, video, short messages, etc.
The application framework layer provides an application programming interface (application programming interface, API) and programming framework for the application of the application layer. The application framework layer includes a number of predefined functions.
As shown in FIG. 2, the application framework layer may include a window manager, a content provider, a view system, a telephony manager, a resource manager, a notification manager, and the like.
The window manager is used for managing window programs. The window manager can acquire the size of the display screen, judge whether a status bar exists, lock the screen, intercept the screen and the like.
The content provider is used to store and retrieve data and make such data accessible to applications. The data may include video, images, audio, calls made and received, browsing history and bookmarks, phonebooks, etc.
The view system includes visual controls, such as controls to display text, controls to display pictures, and the like. The view system may be used to build applications. The display interface may be composed of one or more views. For example, a display interface including a text message notification icon may include a view displaying text and a view displaying a picture.
The telephony manager is used to provide the communication functions of the electronic device 100. Such as the management of call status (including on, hung-up, etc.).
The resource manager provides various resources for the application program, such as localization strings, icons, pictures, layout files, video files, and the like.
The notification manager allows the application to display notification information in a status bar, can be used to communicate notification type messages, can automatically disappear after a short dwell, and does not require user interaction. Such as notification manager is used to inform that the download is complete, message alerts, etc. The notification manager may also be a notification in the form of a chart or scroll bar text that appears on the system top status bar, such as a notification of a background running application, or a notification that appears on the screen in the form of a dialog window. For example, a text message is prompted in a status bar, a prompt tone is emitted, the electronic device vibrates, and an indicator light blinks, etc.
Android runtime include core libraries and virtual machines. Android runtime is responsible for scheduling and management of the android system.
The core library consists of two parts: one part is a function which needs to be called by java language, and the other part is a core library of android.
The application layer and the application framework layer run in a virtual machine. The virtual machine executes java files of the application program layer and the application program framework layer as binary files. The virtual machine is used for executing the functions of object life cycle management, stack management, thread management, security and exception management, garbage collection and the like.
The system library may include a plurality of functional modules. For example: surface manager (surface manager), media library (media library), three-dimensional graphics processing library (e.g., openGL ES), 2D graphics engine (e.g., SGL), etc.
The surface manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.
Media libraries support a variety of commonly used audio, video format playback and recording, still image files, and the like. The media library may support a variety of audio and video encoding formats, such as MPEG4, h.264, MP3, AAC, AMR, JPG, PNG, etc.
The three-dimensional graphic processing library is used for realizing three-dimensional graphic drawing, image rendering, synthesis, layer processing and the like.
The 2D graphics engine is a drawing engine for 2D drawing.
The kernel layer is a layer between hardware and software. The inner core layer at least comprises a display driver, a camera driver, an audio driver and a sensor driver.
It should be understood that the technical scheme in the embodiment of the application can be used in Android, IOS, hong Meng and other systems.
Before describing embodiments of the present application, some terms of art that may be used in the following embodiments will be described first.
A capability component (abilitycomponent) for independently displaying a container of a capability (ability), ability is an abstraction of the capability that an application has. In some scenarios, a capability component may also be referred to as activity, or other more names.
A rendering tree (RENDER TREE), consisting of visible elements in the element display sequence, which is a visual identification of the document, is constructed to draw the document content in the correct order. Each node on the rendering tree may also be referred to as a rendering server surface node (RENDER SERVER surface node, RSSurfaceNode), and each node may be considered a rendering object, each rendering object containing style information, such as width, height, location, background color, etc. The rendering server may determine the exact size and location of each node object on the page from these style information. In the drawing process, the rendering server can traverse the rendering tree to present the rendering objects on the rendering tree on the screen.
A process is a single execution activity of a program on a computer. When a computer runs a program, a process is started. The program is static and the process is dynamic. The processes can be divided into system processes and user processes. Any process that performs various functions of an operating system may be called a system process, which is the operating system itself in a running state.
Plug-ins (widgets), which may also be referred to as widgets, gadgets, pendants, etc., may be displayed on a main interface of an operating system of an electronic device, may be displayed in real time, and may automatically update content, such as weather forecast, user's mail or news summaries, etc. The widget may be generally associated with an application.
Currently, more and more applications are applied in the terminal equipment, so as to improve user experience, facilitate users to operate a plurality of applications at the same time, and part of system applications (SystemUI, launcher, settings) need to display the contents of other application windows, thereby being beneficial to realizing parallel processing of a plurality of application programs by the users and improving the multitasking efficiency of the terminal equipment. How to process input events in multiple window combination scenarios more efficiently and more safely is a difficulty and not an effective implementation.
The method is difficult because in the combined window scene, the layout and the size change of different application windows and the distribution of input events all involve the communication of a plurality of application processes, and the communication of the plurality of application processes needs to consume certain resources and time, so that the system cannot efficiently process window display and event input in the scene, and the system fluency and user operation experience are reduced.
The application provides a window management method, in particular to a method for packaging an application window of a second application into a control, wherein the control can be positioned in a display window of a first application. In the dragging and size changing process, the control can directly carry out inter-process communication between the process corresponding to the second application and the process corresponding to the first application, and other intermediate processes are not required to forward, so that the communication cost is reduced. Meanwhile, the application process of the second application can directly process the input event in the display window of the second application without forwarding the application process of the first application. Therefore, the method for managing the window provides an effective solution for improving the window display performance and the input event distribution efficiency in the combined window scene.
As shown in fig. 3, in the method for managing windows provided by the embodiment of the present application, an electronic device may display a first window and a second window, where the first window is a display window of a first application (or called a first application program), and the second window is a display window of a second application (or called a second application program).
The first window and the second window may constitute different layouts, for example, the second window may be located in a display area of the first window, and the first window and the second window may constitute layouts displayed side by side up and down or left and right.
For the case that the second window is located in the display area of the first window, the content displayed in the second window may have a certain association with the content displayed in the first window, for example, the content displayed in the second window may be detailed content corresponding to the display function title in the first window. In other words, the second application may be a provider of application content and the first application may be a consumer of application content provided by the second application.
The electronic device can be provided with a first application set, wherein the first application set comprises a plurality of first applications, and the plurality of first applications are application programs of application content users; the electronic device may also be provided with a second set of applications, the second set of applications comprising a plurality of second applications, the plurality of second applications being application programs of the application content provider.
By presetting the application sets, applications running on the electronic equipment can be distinguished, and only applications belonging to the first application set can display the content of the second application in the form of setting a second application window in the first application window, and similarly, only applications belonging to the second application set can display the content of the applications in the second application window set in the first application window. The window management method is beneficial to limiting the authority of different applications, is beneficial to realizing the unified management of the operating system on the applications on the electronic equipment, and improves the management efficiency of the applications.
It should be understood that the electronic device may also display multiple application windows simultaneously, and in the following embodiments, the case where the electronic device displays the first window and the second window simultaneously is described as an example, and the case where the electronic device displays more windows simultaneously may refer to execution.
In the following embodiments, the window management method provided in the embodiments of the present application is described in the case where the second window is located in the display area of the first window, and other types of layouts of the first window and the second window may be executed with reference to each other. It should be understood that the following exemplary descriptions in the embodiments should not be construed as limiting the types of window layouts to which the method of window management provided by the present application is applicable.
The method for window management provided by the present application is generally as follows, and it should be understood that, in the following method embodiments, the sequence number of each process does not mean the sequence of execution, and the execution sequence of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
S301, the second process receives an input event.
Specifically, the electronic device obtains an input event in the second window, and in response to the input event, the input event management process of the electronic device sends the input event to the second process, so that the second process receives the input event.
Here, the second window is used to display the second application, the second window is located within the first window, the first window is used to display the first application, and the second process is a process corresponding to the second application. The input event management process may be used to distribute all input events acquired by the electronic device, and may be a system process running in the kernel space of the operating system of the electronic device. The input event management process may be one process or a set of a plurality of processes.
An input event may refer to an event that can be captured by an electronic device that is triggered by means of software and/or hardware. For example, for an electronic device in which the display screen supports a touch function, the input event may be a user's click on the screen, a long press, or the like. For an electronic device that may be connected to a peripheral device such as a mouse, a keyboard, etc., the input event may be a click of a cursor of the mouse on a control or similar operation of a display interface of the electronic device, or the input event may be new input information detected in an input window, etc.
For different types of input events, the manner in which the electronic device receives the input events is different, and in this embodiment, the second process may receive the input events directly from the input event management process, without forwarding through other processes. In particular, the second process run by the electronic device may not obtain forwarding of the input event process by the first process (the process corresponding to the first application).
Illustratively, for a touch event within the second window, the second process receives the input event by approximately the following:
1. A system process (e.g., a system server process) of the electronic device receives information from the touch screen and determines that a second process needs to receive the touch event.
2. The system process of the electronic device sends the touch event to the input event socket or other communication interface of the second process.
3. The input event socket of the second process receives the touch event and stores it so that the second process can receive the touch event.
S302, determining whether the second process can process the input event.
The input event may be an event that can be processed by the second process corresponding to the second window, and is hereinafter referred to as a first input event. Or the input event may be an event that the second process cannot process, hereinafter referred to as a second input event.
Whether the second process is able to handle the input event is related to the second application itself, e.g. the second application does not set a corresponding program in response to a "long press" operation, the execution process of the second application cannot handle the "long press" operation. Whether the second process can process the input event is also related to the execution state of the second process, for example, when the second application displays the first interface or the second process is in the first state, the second process can process a "double click" operation, and when the second application displays the second interface or the second process is in the second state, the second process cannot process the "double click" operation.
The processing of the different input events is further described in the embodiments below and is not developed here.
S303, when the second process can process the input event, the second process processes the input event and outputs a processing result.
For the input event which can be processed by the second process, namely the first input event, the second process can take the input event as input content, and correspondingly process according to the input and output a processing result.
S304, in the case that the second process cannot process the input event, the second process sends the input event to the first process.
For an input event which cannot be processed by the second process, namely the second input event, the second process can forward the related information of the input event to the first process and transmit the related information to the first process for processing.
Specifically, the second process may send the second input event to the first process by way of inter-process communication.
S305, the first process processes the input event and outputs a processing result.
After receiving the second input event, the first process can process the second input event according to the data and information of the first application program and output a processing result. The first process is a process corresponding to a first application, and the first application is displayed in a first window.
The above S301 to S305 mainly describe the processing manner of the second window for different input events, where the second window can directly process the input events in the window, and only the input events that cannot be processed by the second process are forwarded to the first process. Compared with a processing mode that information of all input events is forwarded to a first process and then distributed by the first process, the technical scheme provided by the embodiment is beneficial to reducing forwarding steps of the input events and improving processing efficiency of the electronic equipment on the input events.
The layout adjustment process of the first window and the second window is further described below, and it should be understood that the window adjustment process and the processing process of the input event belong to two different types of processes, and the two types of processes may be performed continuously or discontinuously. In other words, the steps following S305 may be performed immediately after S305 and the steps before, or may be performed separately from S305 and the steps before.
S306, the electronic device detects a first operation.
Specifically, a first process corresponding to a first window detects a first operation.
The first operation herein refers to an operation of adjusting a layout of the first window, and specifically may include one or more of adjusting a size, a direction, a shape, a position, and the like of the first window.
The first window further includes a target control for displaying the second window, and the adjustment of the layout of the first window includes an adjustment of a size of the target control.
The first process detects the first operation may be implemented by detecting whether information corresponding to the first operation exists. For example, the action of dragging the first window by the user may be that the touch screen sends information related to the dragging operation to a process of the operating system, and then the operating system sends the information to a first process corresponding to the first window, so that the first process may detect the first operation.
S307, in response to the first operation, the electronic device adjusts the first window and the second window.
After detecting the first operation of adjusting the first window, the electronic device may adjust the first window and the second window. The first operation is an operation of adjusting the layout of the first window, for example, rotating the first window, enlarging the first window, reducing the first window, and the like.
Specifically, after detecting the first operation, the electronic device may send information of the first operation to an execution process (first process) of the first application, where the first process may adjust a layout of the first window according to the first operation, where the layout of the first window includes a size of the target control.
After the size of the target control is adjusted, the first process may send the adjusted size of the target control to the second process.
The second process may adjust a layout of the second window according to the received adjusted size of the target control, the layout of the second window including the size of the second window. In other words, when the size of the target control changes, the layout of the second window will also change accordingly.
In one possible implementation, the size of the second window has a correspondence to the size of the target control. For example, the dimensions of the two are equal, in which case if the second window and the target control are both rectangular, this means that the width of the second window and the width of the target control are equal, and the height of the second window and the height of the target control are equal. The layout of the display content in the second window is related to the size of the second window, and the layout of the second window can be determined according to the size of the target control by establishing the relation between the size of the second window and the size of the target control.
When the layout of the first window is changed, the first process can send the adjusted size of the target control to the second process, so that the second process can adjust the layout of the second window according to the received size of the target control. Compared with the mode that when the first window changes, the first process sends the layout information of the first window to other processes, and then the layout information is forwarded to the second process through the other processes, so that the second process block can readjust the layout of the second window.
S308, the electronic device detects the second operation.
Specifically, a second process corresponding to the second window detects a second operation.
The second operation herein refers to an operation of adjusting the layout of the second window, and specifically may include one or more of adjusting the size, direction, shape, position, and the like of the second window. The layout of the second window includes the size of the second window.
The second process detects the second operation may be implemented by detecting whether information corresponding to the second operation exists. For example, the action of dragging the second window by the user may be that the touch screen sends information related to the dragging operation to a process of the operating system, and then the operating system sends the information to a second process corresponding to the second window, so that the second process may detect the second operation.
S309, the electronic device adjusts the second window.
The electronic device may adjust the second window after detecting a second operation to adjust the second window. The second operation may be an operation of adjusting the layout of the second window, for example, rotating the second window, enlarging the second window, reducing the second window, and the like.
Specifically, after detecting the second operation, the electronic device may send information of the second operation to an execution process (second process) of the second application, and the second process may adjust the layout of the second window according to the second operation. The adjustment of the second window layout may include an adjustment of a size of the second window.
Since the second window is displayed in the first window, that is, the target control in the first window is used for displaying the second window, the size of the target control needs to be correspondingly adjusted under the condition that the layout of the second window is changed.
In one possible implementation, the size of the second window has a correspondence to the size of the target control. For example, the dimensions of the two are equal, in which case if the second window and the target control are both rectangular, this means that the width of the second window and the width of the target control are equal, and the height of the second window and the height of the target control are equal.
Specifically, the second process may send the size of the second window to the first process, and the first process may adjust the size of the target control according to the received adjusted size of the second window.
When the layout of the second window is adjusted, the second process can directly send the adjusted size of the second window to the first process, and the first process can adjust the size of the target control according to the received adjusted size of the second window. Compared with the mode that the size of the second window is sent to other processes and then the size of the second window is forwarded to the first process by the other processes, the method for managing the window is beneficial to reducing forwarding steps of size information of the second window, improving efficiency of window layout adjustment in a multi-window combined display scene, improving smoothness of user operation and facilitating user experience.
One possible implementation of the method of window management in fig. 3 is further described below in conjunction with fig. 4 and 5.
In this embodiment, the first window is a display window of the first application, the second window is a display window of the second application, the second window is located in a display area of the first window, the second application is used as a provider of application content, and the first application is used as a user of the application content. The second window is encapsulated in a target control which can be freely laid out in the first window.
As shown in fig. 4, the first window is used as a parent node, the target control in the first window is used as a child node of the first window, all the rendering objects to be rendered in the second window form a rendering tree, the rendering tree is mounted on the rendering tree of the first window, specifically, the target control is used as a space occupying node, and the root node of the second window is mounted at a position corresponding to the space occupying node corresponding to the target control.
When the user adjusts the layout of the first window, the electronic device re-renders or draws the first window and the second window in response to an operation to change the layout of the first window. In the process of rendering, the rendering tree of the first window contains information of all rendering objects in the first window, and the rendering tree of the first window also contains information of all rendering objects in the second window because the rendering tree of the second window is mounted on the rendering tree of the first window. When the first window is rendered by using the rendering tree of the first window, the content of the second window is also rendered together.
Specifically, when the size of the target control changes in the process of rendering the first window, the execution process (first process) of the first window sends the adjusted size of the target control to the execution process (second process) of the second window, and when the second process receives the size information of the adjusted target control, the second process can further communicate with the rendering server, the window management service and other system processes to complete drawing of the second window.
When the user adjusts the layout of the second window, the electronic device redraws the second window in response to an operation to change the layout of the second window. When the second window is rendered, the information of the rendering object contained in the rendering tree of the second window can be independently sent to the rendering server, and the rendering of the first window can be not relied on.
Because the second window is displayed in the target control, the target control can be correspondingly adjusted after the layout of the second window is changed. Specifically, the second process may send the adjusted size of the second window to the first process, and the first process may adjust the target control according to the received size of the second window. In some possible cases, the layout of the first window may also be adjusted accordingly according to the adjustment of the target control.
In the rendering process, the rendering server sequentially draws nodes on the rendering tree from the root node of the rendering tree. That is, the rendering server may draw the parent node first and then draw the child nodes of the parent node. Attributes (e.g., width, height, location, background color, etc.) of parent nodes on a rendering tree may have a corresponding defining effect on child nodes, e.g., the size of the rendered object corresponding to the child node may not be greater than the size of the rendered object corresponding to the parent node. The above-mentioned mounting of the rendering object of the second window on the rendering tree of the first window can realize that the rendering result of the second window changes when the attribute of the first window changes.
The creation of the first window and the second window of fig. 4 is specifically described in fig. 5.
S501, the electronic device starts a first application.
The electronic device may start the first application in response to an operation of the user, or the electronic device may start the first application according to system configuration information. The execution process of the first application may be referred to as a first process.
S502, the electronic device creates a first window.
Specifically, the first process may send information of the first window to a window management service (WindowManagerService), which creates the first window from the received information of the first window. A target control is disposed in the first window, which may be referred to as a capability component (abilitycomponent).
S503, the electronic device renders and synthesizes the first window.
Specifically, the window management service that created the first window in S502 may call a rendering server or an image rendering composition engine (e.g., surfaceflinger) to render the composite first window.
The image rendering composition engine can render and compose the first window according to the received information of the first window, specifically, the rendering composition engine can determine objects to be rendered in the first window according to the information of the first window, and construct a rendering tree of the first window according to the objects to be rendered, so that the objects to be rendered in the first window are sequentially rendered according to the corresponding node sequence on the rendering tree.
As already described in fig. 4, in order to simultaneously render the second window in the process of rendering the first window, the target control in the process of rendering the first window is provided with a space occupying node on the rendering tree of the first window, and the space occupying node can be subsequently accessed to the rendering object of the second window.
S504, the electronic device starts a second application in the target control.
After creating and rendering the composite first window, a second application may be launched with a target control within the first window in which a display window (second window) of the second application may be encapsulated. In particular, the target control may launch the second application by launching a second control, which may be referred to as a window extension capability (windowExtensionAbility). The execution process of the second application may be referred to as a second process.
S505, the electronic device creates a second window.
Specifically, the second process may send information of the second window to the window management service, and the window management service creates the second window according to the received information of the second window.
S506, the electronic device renders and synthesizes the second window.
Specifically, the window management service that created the second window in S505 may call the image rendering composition engine to render the composite second window.
The image rendering composition engine can render and compose the second window according to the received information of the second window, specifically, the rendering composition engine can determine objects to be rendered in the second window according to the information of the second window, and construct a rendering tree of the second window according to the objects to be rendered, so that the objects to be rendered in the second window are sequentially rendered according to the corresponding node sequence on the rendering tree.
Because the rendering object of the second window is mounted on the rendering tree of the first window, in the process of rendering the first window, the rendering of the second window can be completed while the first window is rendered according to the node sequence of the rendering tree of the first window.
The method for window management provided by the present application is further described below with reference to specific examples.
In fig. 6 to 12, the first application is a "launcher" application, the second application is a "weather" application, and a display window (second window) of the "weather" application is located within a display area of a display window (first window) of the "launcher" application.
Fig. 6 and 7 illustrate a second window creation process, which may be similar to the creation of a plug-in for a "launcher" application.
For example, in response to a user selecting (e.g., pressing long, clicking, etc.) the operation of the "weather" application in FIG. 6, the electronic device may display a first tab 601, the first tab 601 containing an add "desktop window", and when the user selects the tab, the electronic device may add the display window of the "weather" application in a blank position (e.g., the position of 602 in FIG. 6) of the display window of the "launcher" application.
Or in response to a user selecting (e.g., pressing, clicking, etc.) the first function entry "desktop window" in fig. 7, the electronic device may display a presentation interface (not shown) containing different "desktop windows" of a plurality of different applications, in which the user may select a desktop window corresponding to the "weather" application. In response to a user selecting an operation of a desktop window corresponding to a "weather" application, the electronic device may add the desktop window corresponding to the "weather" application to a blank position of a display window of a "launcher" application.
Fig. 6 and 7 are merely exemplary of two possible implementations of adding a "weather" application to a display window of a "launcher" application, and the display window of the "weather" application may also be added to the display window of the "launcher" application in other manners, so as to implement the presentation of the content of the first application and the content of the second application on one display interface at the same time. The second window may also be default to being within the first window without requiring manual user addition.
Fig. 8 shows a display interface of the electronic device displaying a first window 801 for displaying a user interface of a first application and a second window 802 for displaying a user interface of a second application. An icon of an application installed in the electronic device may be displayed in the first window 801, and an add-in of an application supported by the electronic device may also be displayed. The first window 801 also includes one or more target controls (not shown) for displaying a second window 802 and an application window similar to the second window 802 that may display a user interface for an application. The second window 802 may display the weather conditions for the default address at the default time, e.g., 1 month No. 1:08, weather for urban area a cloudy, and air temperature of 19 ℃.
These application windows displayed within the first window, for example, the second window 802, may receive user operations (input events) directly from the input event management process and input corresponding results in response to the user operations. As shown in fig. 9 and 10, the execution process (second process) of the second application may also directly receive the input event in the second window from the input event management process, and execute different processing flows according to the difference of the input event. The input event management process is used for sending the input event detected by the electronic device to a corresponding processing process, and the input event management process can be a system process of an operating system of the electronic device, and can be one process or a set of a plurality of processes.
For an input event that the second process can process, for example, an operation of sliding left and right within the second window 802 shown in fig. 8, the second process can perform an operation of switching the display contents of the second window 802 to weather of a different time in response to an operation of the user. For example, in response to the user's operation to slide right within the second window 802, the weather information displayed within the second window is switched from the weather of the current day to the weather of yesterday (as shown within the second window 901 in fig. 9). In response to the user's operation to slide left within the second window 902, the weather information displayed within the second window is switched from the weather of the current day to the weather of the tomorrow (not shown in the figure).
In the process of the weather application processing the input events in the second window, the weather application can directly acquire relevant information of the input events from the system process of the operating system of the electronic device, and the weather application does not need to forward the relevant information through an inter-process communication mode through an initiator application.
For an input event that cannot be handled by the second process, for example, a right-slide operation is performed in the second window 901 shown in fig. 9. Since the second window 901 currently displays the weather of the earliest date that the "weather" application supports viewing, in other words, the "weather" application cannot handle a right-slip operation on the interface displaying yesterday's weather. In this case, in response to a user's right-slide operation, after an input event of the right-slide operation is acquired, an execution process (second process) of the "weather" application may send, by way of inter-process communication, information related to the right-slide operation to an execution process (first process) of the "starter" application, and the "starter" application may perform a corresponding process after receiving the information related to the right-slide operation. As shown in fig. 10, after receiving the information of the right sliding operation forwarded by the "weather" application, the "initiator" application may perform an operation of sliding rightward on the display interface of the first window, that is, displaying an interface on the left side of the current display interface of the first window, where the left side interface of the display interface of the first window shown in fig. 10 is a "negative one-screen" interface or an "intelligent assistant" interface, etc.
Alternatively, for an input event that cannot be processed by the second process, the electronic device may display first prompt information 1001 as shown in fig. 10, where the first prompt information 1001 may be used to prompt the processing situation of the input event that cannot be processed by the second process. Taking the example of a right-slide operation that cannot be handled by the "weather" application in fig. 9, the first prompt 1001 may be that the "weather" application cannot respond to a right-slide operation that has been handled by the "initiator" application.
When the layout of the "initiator" application changes, the layout of the "weather" application may also be adjusted accordingly. In conjunction with fig. 8 and 11, in response to a user switching the state of the electronic device displayed by the vertical screen (the state shown in fig. 8) to the state of the horizontal screen (the state shown in fig. 11), the layout of the icons displayed in the first window may be rearranged, and the desktop window may be changed accordingly. Specifically, the second window 802 in fig. 8 is displayed in a form similar to a rectangle (e.g., size 4×1), and the second window 1102 in fig. 11 is displayed in a form similar to a square (e.g., size 2×2). In the process of adjusting the second window from the rectangular-like shape to the square-like shape, the first process can directly send the size information of the changed target control to the second process without forwarding through other processes.
If a user dragging the second window or stretching a boundary of the second window and other similar operations of adjusting the layout of the second window are detected, the electronic device may adjust the layout of the second window in response to the user's operation. When the electronic device adjusts the layout of the second window, the second process can also directly send the adjusted size information of the second window to the first process without forwarding through other processes, and the first process can correspondingly adjust the size of the target control after receiving the adjusted size information of the second window.
In the above example, the "weather" application may execute different processing schemes according to the input event acquired by the window, and only for the input event that cannot be processed by the "weather" application, the second process may report the input event to the first process for processing, so that forwarding steps of the input event are reduced, system resources are saved, and processing efficiency of the electronic device for the input event is improved. In addition, the display window of the weather application can adjust the layout of the window according to an adjustment rule similar to that of a plug-in of the starter application, and the execution process of the starter application and the execution process of the weather application can be directly communicated without forwarding by other processes in the adjustment process, so that the consumption of system resources of the electronic equipment is reduced, and the user experience is improved.
Fig. 12 to 15 are schematic application diagrams of the method for window management provided by the present application on a tablet computer.
As shown in fig. 12, the first application is a "setup" application, the second application is a "system" application, the display window (first window) of the first application is a window 1201 in fig. 12, and the display window (second window) of the second application is a window 1202 in fig. 12. In this example, the second window is set by default in a display area of the target control (the target control is not shown in the figure) included in the first window, and no manual addition by a user is required.
The first window 1201 may be used to display function portals of various setting functions supported by the electronic device, such as a "bluetooth" function portal, a "notification" function portal, a "system" function portal, and when a user selects one of the function portals displayed in the first window 1201, the electronic device opens a display window of an application corresponding to the function portal in the first window in response to the user's selection. For example, the second window 1202 in FIG. 12 may be used to display setup options or information related to a "System" application, such as device name, system version, and so forth. The user can view the information displayed in the second window, and the user can complete the corresponding function by selecting the function options displayed in the second window.
Taking the second window 1202 in fig. 12 as an example, as shown in fig. 13 and 14, the executing process (second process) of the "system" application may directly receive the input event of the user in the second window from the input event management process, and execute different processing flows according to the difference of the input event, where the input event management process is used to send the input event detected by the electronic device to the corresponding processing process, and the input event management process may be a system process of an operating system of the electronic device, and the input event management process may be one process or a set of multiple processes.
For an input event that the second process can process, for example, in fig. 13, the user selects a tab of "device name", in response to an operation by the user, the second process can perform an operation of displaying an input control 1301 as shown in fig. 13, and the user can input a name of a device that needs to be changed in the input control 1301. For another example, when the user selects the tab of "system version" in the second window 1202, the second process may perform an operation (not shown in the figure) of exposing detailed information of the system version in response to the user's operation.
For an input event that the second process cannot handle, for example, in fig. 14, the user performs an operation of sliding up within the second window. Since the second window has already fully exhibited the entire content of the second application, that is, the second process cannot translate this upward sliding operation into an upward scrolling (e.g., page turning) operation of the display content of the second window, and the like. After acquiring the upward sliding operation, the second process may determine that the upward sliding operation cannot be processed, and send information of the operation to an execution process (first process) of the first window, and the first process processes the operation. The first process may perform a corresponding process after receiving the upward sliding operation information. As shown in fig. 14, when the execution process of the "setting" application receives the information of the upward sliding operation transmitted by the execution process of the "system" application, the "setting" application may scroll upward on the display interface of the first window in response to the user's upward sliding operation.
Optionally, for an input event that cannot be processed by the second process, the electronic device may display a second prompt 1401, where the second prompt 1401 may be used to prompt the processing situation of the input event that cannot be processed by the second process. Taking the example of the "system" application cannot handle the slide-up operation in fig. 14, the second hint information 1401 may be that the "system" application cannot respond to your slide-up operation, which has been handled by the "setup" application.
When the layout of the first application (the "system" application) changes, a corresponding adjustment of the layout of the second application (the "system" application) may occur. In connection with fig. 12 and 15, in response to an operation by a user to switch the state of the electronic device displayed by the vertical screen (the state shown in fig. 11) to the state of the horizontal screen (the state shown in fig. 15), the size of the display of the entry of the plurality of setting functions within the display window of the "set" application can be adjusted, and the layout of the display window of the "system" application can also be changed. Specifically, the aspect ratio of each control (e.g., control 1203 in fig. 12) in the second window in fig. 12 is smaller (the direction parallel to the first direction in fig. 12 is the length direction, the direction perpendicular to the first direction is the width direction), and the aspect ratio of each identical control in the second window in fig. 15 is larger. In the process of adjusting the display mode of the control in the window, the first process can directly send the size information of the target control after the change to the second process without forwarding through other processes.
If a user dragging a boundary of a control within the second window or other similar operation to adjust the layout of the second window is detected, the electronic device may adjust the layout of the second window in response to the user operation. When the electronic device adjusts the layout of the second window, the second process can also directly send the adjusted size information of the second window to the first process without forwarding through other processes, and the first process can correspondingly adjust the size of the target control after receiving the adjusted size information of the second window.
In the above example, the "system" application may execute different processing schemes according to the input events acquired by the window, and only for the input events that cannot be processed by the "system" application, the second process may report the input events to the first process for processing, so that forwarding steps of the input events are reduced, system resources are saved, and processing efficiency of the electronic device for the input events is improved. In addition, the display window of the 'system' application can adjust the layout of the window according to an adjustment rule similar to a plug-in of the 'setting' application, and the execution process of the 'setting' application and the execution process of the 'system' application can be directly communicated without forwarding through other processes in the adjustment process, so that the consumption of system resources of the electronic equipment is reduced, and the user experience is improved.
Fig. 16 to 19 are schematic views of application of the method for window management provided by the present application to a folding screen device.
As shown in fig. 16, the first application is a "lock screen" application, the second application is a "weather" application, the display window (first window) of the first application is the window 1601 in fig. 16, and the display window (second window) of the second application is the window 1602 in fig. 16.
The operation of creating the second window may be similar to that of the plug-in of the "lock screen" application, and in particular, reference may be made to the description related to fig. 6 and fig. 7 in the foregoing embodiments, which are not repeated here for brevity.
Fig. 16 shows a display interface of the electronic device displaying a first window 1601 for displaying a user interface of a first application and a second window 1602 for displaying a user interface of a second application. The first window 1601 may display a time, date, shortcut entry, etc., and the first window 1601 further includes one or more target controls (not shown) for displaying a second window 1602 and an application window similar to the second window 1602 that may display a user interface for an application. The second window 1602 may display the weather condition of the default address at the default time, e.g., 1 month No. 08:00, weather for urban area a cloudy, and air temperature of 19 ℃.
The application windows displayed in the first window, for example, the second window 1602 may directly acquire the user's operation (input event) from the input event management process and output the corresponding result in response to the user's operation. As shown in fig. 17 and 18, the execution process (second process) of the second application may receive the input event of the user within the second window from the input event management process and execute different processing flows according to the difference of the input event. The input event management process is used for sending the input event detected by the electronic device to a corresponding processing process, and the input event management process can be a system process of an operating system of the electronic device, and can be one process or a set of a plurality of processes.
For an input event that the second process can process, for example, an operation of sliding left and right in the second window 1602 shown in fig. 16, the second process can perform an operation of switching the display content of the second window 1602 to weather of a different time in response to an operation of the user. For example, in response to an operation by the user to slide rightward in the second window 1602, the weather information displayed in the second window is switched from the weather of the current day to the weather of yesterday (as shown in the second window 1701 in fig. 17). In response to the user's operation to slide left in the second window, the weather information displayed in the second window is switched from the weather of the day to the weather of the tomorrow (not shown in the figure).
During the processing of the input events in the second window by the weather application, the weather application can directly acquire the relevant information of the input events from the system process of the operating system of the electronic device, and the weather application does not need to forward the relevant information through the starter application in an inter-process communication mode.
For an input event that cannot be handled by the second process, for example, a slide-up operation is performed in the second window 1602 shown in fig. 16. Since the "weather" application is not configured with a command in response to the slide-up operation in the second window, the execution progress of the weather application cannot cope with the slide-up operation on the weather interface. In this case, in response to the user's sliding operation, after the execution process (second process) of the "weather" application acquires the input event of the sliding operation, the relevant information of the sliding operation may be sent to the execution process (first process) of the "lock screen" application by means of inter-process communication, and the "lock screen" application may execute a corresponding process after receiving the relevant information of the sliding operation. As shown in fig. 18, when receiving the information of the up-slide operation forwarded by the "weather" application, the "lock screen" application may perform an operation of sliding up on the display interface of the first window, that is, display the unlock interface 1801.
Optionally, for an input event that cannot be processed by the second process, the electronic device may display third prompt 1802 shown in fig. 18, where the third prompt 1802 may be used to prompt the processing situation of the input event that cannot be processed by the second process. Taking the example of the "weather" application cannot handle the up-slide operation in fig. 18, the third prompt message may be that the "weather" application cannot respond to your right-slide operation, which has been handled by the "lock screen" application.
When the layout of the "lock screen" application changes, the layout of the "weather" application may also be adjusted accordingly. In connection with fig. 16 and 19, in response to a user's operation to switch the electronic device from the unfolded display state (the state shown in fig. 16) to the folded display state (the state shown in fig. 19), the size and position of the information such as the display time, date, etc. in the first window may be adjusted, and the windows of other applications displayed in the first window may be changed accordingly. For example, the aspect ratio of the second window 1602 in fig. 16 is larger (the direction parallel to the second direction in fig. 16 is the longitudinal direction, and the direction perpendicular to the second direction is the width direction), and the aspect ratio of the second window 1902 in fig. 19 is smaller. In the process of morphological adjustment of the second window, the first process can directly send the size information of the target control after the change to the second process without forwarding through other processes. .
If a user dragging the second window or stretching a boundary of the second window and other similar operations of adjusting the layout of the second window are detected, the electronic device may adjust the layout of the second window in response to the user's operation. When the electronic device adjusts the layout of the second window, the second process can also directly send the adjusted size information of the second window to the first process without forwarding through other processes, and the first process can correspondingly adjust the size of the target control after receiving the adjusted size information of the second window.
In the above example, the "weather" application may execute different processing schemes according to the input event acquired by the window, and only for the input event that cannot be processed by the "weather" application, the second process may report the input event to the first process for processing, so that forwarding steps of the input event are reduced, system resources are saved, and processing efficiency of the electronic device for the input event is improved. In addition, the display window of the weather application can adjust the layout of the window according to an adjustment rule similar to that of a plug-in unit of the screen locking application, and the execution process of the screen locking application and the execution process of the weather application can be directly communicated without forwarding other processes in the adjustment process, so that the consumption of system resources of the electronic equipment is reduced, and the user experience is improved.
Based on the same inventive concept as the above method embodiments, the present application also provides a window management device, which may have the functions of the electronic device in the above method embodiments, and may be used to perform the steps performed by the functions of the electronic device in the above method embodiments. The functions may be implemented by hardware, or may be implemented by software or hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the functions described above.
The window management apparatus 2000 shown in fig. 20 may be used as the electronic device according to the above-described method embodiment, and perform the steps performed by the electronic device in the above-described method embodiment.
As shown in fig. 20, the window management device 2000 may include a communication module 2010 and a processing module 2020, where the communication module 2010 and the processing module 2020 are coupled to each other.
The communication module 2010 may be used to support communication by the window management apparatus 2000, for example, to perform the actions of transmission and/or reception performed by the electronic device in fig. 3 and the like, such as S301, S304, and the like.
The processing module 2020 may be configured to support the window management device 2000 to perform the processing actions in the method embodiment described above, for example, to perform the processing actions performed by the electronic device in fig. 3 and the like, such as S301.
Optionally, the window management device 2000 may further include a storage module 2030 for storing program code and data of the communication device 2000.
Fig. 21 is a schematic block diagram of an electronic device 2100 provided by an embodiment of the present application. As shown, the electronic device 2100 includes: at least one processor 2110 and a transceiver 2120. The processor 2110 is coupled to the memory for executing instructions stored in the memory to control the transceiver 2120 to transmit signals and/or receive signals.
Optionally, the electronic device 2100 further includes a memory 2130 for storing instructions.
In some embodiments, the processor 2110 and the memory 2130 may be combined into one processing device, and the processor 2110 is configured to execute the program code stored in the memory 2130 to implement the functions described above. In particular implementations, the memory 2130 may also be integrated into the processor 2110 or independent of the processor 2110.
In some embodiments, transceiver 2120 may include a receiver (or receiver) and a transmitter (or transmitter).
The transceiver 2120 may further include an antenna, the number of which may be one or more. The transceiver 2120 may be a communication interface or interface circuitry.
When the electronic device 2100 is a chip, the chip includes a transceiver unit and a processing unit. The receiving and transmitting unit can be an input and output circuit or a communication interface; the processing unit may be an integrated processor or microprocessor or an integrated circuit on the chip.
In implementation, the steps of the above method may be performed by integrated logic circuits of hardware in a processor or by instructions in the form of software. The steps of a method disclosed in connection with the embodiments of the present application may be embodied directly in a hardware processor for execution, or in a combination of hardware and software modules in the processor for execution. The software modules may be located in a random access memory, flash memory, read only memory, programmable read only memory, or electrically erasable programmable memory, registers, etc. as well known in the art. The storage medium is located in a memory, and the processor reads the information in the memory and, in combination with its hardware, performs the steps of the above method. To avoid repetition, a detailed description is not provided herein.
The embodiment of the present application also provides a computer readable storage medium having stored thereon computer instructions for implementing the method performed by the communication device in the above-described method embodiment.
For example, the computer program, when executed by a computer, enables the computer to implement the method performed by the communication device in the above-described method embodiments.
The explanation and beneficial effects of the related content in any of the above-mentioned devices can refer to the corresponding method embodiments provided above, and are not repeated here.
It should be appreciated that the processor referred to in the embodiments of the present application may be a central processing unit (central processing unit, CPU), but may also be other general purpose processors, digital signal processors (DIGITAL SIGNAL processors, DSPs), application Specific Integrated Circuits (ASICs), off-the-shelf programmable gate arrays (field programmable GATE ARRAY, FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
It should also be understood that the memory referred to in embodiments of the present application may be volatile memory and/or nonvolatile memory. The nonvolatile memory may be a read-only memory (ROM), a Programmable ROM (PROM), an erasable programmable ROM (erasable PROM), an electrically erasable programmable EPROM (EEPROM), or a flash memory. The volatile memory may be random access memory (random access memory, RAM). For example, RAM may be used as an external cache. By way of example, and not limitation, RAM may include the following forms: static random access memory (STATIC RAM, SRAM), dynamic random access memory (DYNAMIC RAM, DRAM), synchronous Dynamic Random Access Memory (SDRAM), double data rate synchronous dynamic random access memory (double DATA RATE SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (ENHANCED SDRAM, ESDRAM), synchronous link dynamic random access memory (SYNCHLINK DRAM, SLDRAM) and direct memory bus random access memory (direct rambus RAM, DR RAM).
It should be noted that when the processor is a general purpose processor, DSP, ASIC, FPGA or other programmable logic device, discrete gate or transistor logic device, discrete hardware components, the memory (storage module) may be integrated into the processor.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described systems, apparatuses and units may refer to corresponding procedures in the foregoing method embodiments, and are not repeated herein.
In the several embodiments provided by the present application, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art or in a part of the technical solution, in the form of a software product stored in a storage medium, comprising several instructions for causing a computer device (which may be a personal computer, a server, a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a read-only memory (ROM), a random access memory (random access memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The foregoing is merely illustrative of the present application, and the present application is not limited thereto, and any person skilled in the art will readily recognize that variations or substitutions are within the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (18)

1. A method of window management, the method being applied to an electronic device, the method comprising:
The electronic equipment displays a first window and a second window, wherein the first window is a display window of a first application, the second window is a display window of a second application, and the second window is positioned in the first window;
Responding to an input event in the second window, and sending the input event to a second process by an input event management process, wherein the input event management process is used for distributing the input event in the first window and the input event in the second window acquired by the electronic equipment, and the second process is a process corresponding to the second application;
and the electronic equipment outputs a processing result of the input event.
2. The method of claim 1, wherein in the event that the input event is an input event that cannot be processed by the second process, the method further comprises:
The second process sends the input event to a first process, wherein the first process is a process corresponding to the first application;
the first process generates the processing result according to the input event.
3. The method of claim 1 or 2, wherein the first window comprises a target control for displaying the second window, and wherein a layout of the second window is determined according to a size of the target control.
4. A method according to claim 3, characterized in that the method further comprises:
Responding to a first operation, a first process adjusts the layout of the first window, wherein the layout of the first window comprises the size of the target control, and the first process is a process corresponding to the first application;
The first process sends the adjusted size of the target control to the second process;
And the second process adjusts the layout of the second window according to the adjusted size of the target control.
5. The method according to claim 3 or 4, characterized in that the method further comprises:
In response to a second operation, the second process adjusts a layout of the second window, the layout of the second window including a size of the second window;
The second process sends the adjusted size of the second window to a first process, wherein the first process is a process corresponding to the first application;
And the first process adjusts the size of the target control according to the adjusted size of the second window.
6. The method of any of claims 3 to 5, wherein the rendered objects of the first window form a first rendering tree and the rendered objects of the second window form a second rendering tree, the second rendering tree being mounted on a rendering node in the first rendering tree corresponding to the target control.
7. The method according to any one of claims 1 to 6, wherein the second application is a provider of application content and the first application is a consumer of the application content.
8. A window management apparatus, comprising: the display module, the input event management module, the second processing module and the output module,
The display module is used for displaying a first window and a second window, wherein the first window is a display window of a first application, the second window is a display window of a second application, and the second window is positioned in the first window;
The input event management module is used for sending the input event to the second processing module, the input event management module is used for distributing the input event in the first window and the input event in the second window acquired by the window management device, and the second processing module is a processing module corresponding to the second application;
The output module is used for outputting the processing result of the input event.
9. The window management device of claim 8, further comprising a first processing module, the first processing module being a processing module corresponding to the first application,
The second processing module is used for sending the input event to the first processing module under the condition that the input event cannot be processed by the second processing module;
the first processing module is used for generating the processing result according to the input event.
10. The window management device of claim 8 or 9, wherein the first window comprises a target control for displaying the second window, and wherein a layout of the second window is determined according to a size of the target control.
11. The window management device of claim 10, wherein,
The first processing module is further configured to adjust a layout of the first window, where the layout of the first window includes a size of the target control, and the first processing module is a processing module corresponding to the first application;
the first processing module is further configured to send the adjusted size of the target control to the second processing module;
the second processing module is further configured to adjust a layout of the second window according to the adjusted size of the target control.
12. The window management device of claim 10 or 11, wherein,
The second processing module is further configured to adjust a layout of the second window in response to a second operation, where the layout of the second window includes a size of the second window;
The second processing module is further configured to send the adjusted size of the second window to the first processing module, where the first processing module is a processing module corresponding to the first application;
The first processing module is further configured to adjust a size of the target control according to the adjusted size of the second window.
13. The window management device of any of claims 10-12, wherein the render objects of the first window comprise a first render tree and the render objects of the second window comprise a second render tree mounted on a render node in the first render tree corresponding to the target control.
14. The window management device according to any one of claims 8 to 13, wherein the second application is a provider of application content, and the first application is a user of the application content.
15. An electronic device comprising a processor and a memory, the memory for storing program instructions, the processor for invoking the program instructions to perform the method of any of claims 1-7.
16. A computer program product, characterized in that it comprises a computer program code which, when run on a computer, performs the method according to any one of claims 1 to 7.
17. A computer-readable storage medium, on which a computer program is stored which, when executed by a computer, causes the method of any one of claims 1 to 7 to be implemented.
18. A chip product, comprising: a processor for reading instructions stored in a memory, which when executed by the processor, cause the chip to implement the method of any one of claims 1 to 7.
CN202211708148.1A 2022-12-29 2022-12-29 Window management method and electronic equipment Pending CN118276716A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211708148.1A CN118276716A (en) 2022-12-29 2022-12-29 Window management method and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211708148.1A CN118276716A (en) 2022-12-29 2022-12-29 Window management method and electronic equipment

Publications (1)

Publication Number Publication Date
CN118276716A true CN118276716A (en) 2024-07-02

Family

ID=91642297

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211708148.1A Pending CN118276716A (en) 2022-12-29 2022-12-29 Window management method and electronic equipment

Country Status (1)

Country Link
CN (1) CN118276716A (en)

Similar Documents

Publication Publication Date Title
CN113553014B (en) Application interface display method under multi-window screen projection scene and electronic equipment
WO2020238774A1 (en) Notification message preview method and electronic device
CN114397979B (en) Application display method and electronic equipment
CN112269527B (en) Application interface generation method and related device
JP7473100B2 (en) User interface layout method and electronic device - Patents.com
WO2020221063A1 (en) Method of switching between parent page and subpage, and related device
CN112558825A (en) Information processing method and electronic equipment
CN112527174B (en) Information processing method and electronic equipment
CN111263002B (en) Display method and electronic equipment
CN116302227A (en) Method for combining multiple applications and simultaneously starting multiple applications and electronic equipment
CN112527222A (en) Information processing method and electronic equipment
WO2022161119A1 (en) Display method and electronic device
EP4293490A1 (en) Display method and related apparatus
CN113961157A (en) Display interaction system, display method and equipment
CN114489529A (en) Screen projection method of electronic device, medium thereof and electronic device
WO2023005900A1 (en) Screen projection method, electronic device, and system
WO2021052488A1 (en) Information processing method and electronic device
WO2023005751A1 (en) Rendering method and electronic device
CN118276716A (en) Window management method and electronic equipment
WO2022160999A1 (en) Display method and electronic device
CN116672707B (en) Method and electronic device for generating game prediction frame
US20240220184A1 (en) Screen projection method and related apparatus
WO2023217142A1 (en) Window size adjustment method, and related apparatus and communication system
WO2024109481A1 (en) Window control method and electronic device
CN116737291A (en) Desktop application processing method and electronic equipment

Legal Events

Date Code Title Description
PB01 Publication