A display control method and an electronic device

By detecting whether the second window is destroyed in the multi-window mode of the electronic device, and maintaining the first window in its original position when necessary, the display abnormality caused by the second window is destroyed is solved, and the user experience is improved.

CN118963880BActive Publication Date: 2025-06-13HONOR DEVICE CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202410940691.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-12
Publication Date
2025-06-13
Estimated Expiration
2044-07-12

AI Technical Summary

Technical Problem

When the electronic device starts multi-window mode, if other windows are destroyed, it will cause an abnormal display of a single window, affecting the user experience.

Method used

By detecting whether the second window is destroyed before preparing to move or display the first window, if it is destroyed, the first window is maintained in its original position to avoid display exceptions.

Benefits of technology

It effectively avoids the abnormal display problem of the first window caused by the second window being destroyed, and improves the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118963880B_ABST
    Figure CN118963880B_ABST
Patent Text Reader

Abstract

The present application discloses a display control method and an electronic device, relating to the field of terminal technologies. The method includes: a first window of a first application is displayed in a first area of the electronic device screen; the electronic device receives a first operation of a user and starts a second window of the first application; if the second window is destroyed before the electronic device starts to move the first window or display the second window, then the electronic device maintains the first window to be displayed in the first area. In this way, in the case where the second window in the dual windows is destroyed, the incorrect movement of the first window is avoided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present application relate to the technical field of terminals, and in particular, to a display control method and an electronic device. Background Art

[0002] With the continuous development of intelligent devices, in order to meet the needs of users to view or process multiple window pages simultaneously, more and more intelligent devices begin to support the split-screen function, that is, an intelligent device can simultaneously display multiple window pages of an application program on the display screen. For example, multiple windows include the application home page, application content pages, etc.

[0003] Among them, in the case where the application program is in single-window mode, the intelligent device can only display the application home page. In the case where the application program is in multi-window mode, the application home page moves to one side, and other window pages of the application program are displayed on the other side.

[0004] However, if other window pages are destroyed, the display of the application home page may be abnormally displayed, thus affecting the user experience. Summary of the Invention

[0005] Embodiments of the present application provide a display control method and an electronic device, which are used to solve the problem that when an electronic device starts the multi-window mode, the single-window display is abnormal due to the destruction of other windows.

[0006] To achieve the above object, the embodiments of the present application adopt the following technical solutions:

[0007] In a first aspect, a display control method is provided. When a first window of a first application is displayed in a first area of an electronic device screen, a first operation of a user is received; the electronic device is prepared to move the first window to a second area of the screen for display, and a second window is to be displayed in a third area of the screen. If the second window is destroyed before starting to move the first window or displaying the second window, the first window is maintained to be displayed in the first area.

[0008] In this embodiment, if the second window is destroyed before the electronic device starts to move the first window or display the second window, when the electronic device starts to move the first window, the first window is maintained to be displayed in the first area, avoiding the problem of abnormal display caused by still performing the operation of moving the first window to the second area for display in the case of displaying a single window.

[0009] In some embodiments, in response to the first operation, first window information and second window information are determined. The first window information is used to indicate that the first window is to be displayed in the second area, and the second window information is used to indicate that the second window is to be displayed in the third area.

[0010] In this embodiment, according to the first window information and the second window information, the electronic device can determine the display positions of the first window and the second window on the screen.

[0011] In some embodiments, if the second window is destroyed before starting to move the first window or displaying the second window, the third window information is determined; the third window information is used to indicate that the first window is displayed in the first area; according to the third window information, the first window is controlled to be displayed in the first area.

[0012] In this embodiment, before the electronic device moves the first window or displays the second window, the first window can be controlled to be displayed in the first area according to the third window information, so as to avoid moving the first window to the second area for display according to the first window information when the second window is destroyed.

[0013] In some embodiments, if the destruction of the second window is not detected before starting to move the first window or displaying the second window, the first window is moved to the second area according to the first window information, and the second window is displayed in the third area according to the second window information.

[0014] In this embodiment, the electronic device correctly moves the first window to the second area for display according to the first window information and the second window information, and correctly displays the second window in the third area.

[0015] In some embodiments, moving the first window to the second area according to the first window information and displaying the second window in the third area according to the second window information includes: rendering the first window according to the first window information; rendering the second window according to the second window information; after the first window and the second window are rendered, playing the first window animation effect and the second window animation effect at a preset display time.

[0016] In this embodiment, after the electronic device waits for the first window and the second window to be rendered, the first window animation effect and the second window animation effect are played uniformly to move the first window to the second area for display and display the second window in the third area.

[0017] In some embodiments, before starting to move the first window or displaying the second window, including: before playing the first window animation effect or playing the second window animation effect.

[0018] In this embodiment, before starting to play the first window animation effect or the second window animation effect, the electronic device can determine the third window information, so that the first window remains displayed in the first area and avoid abnormal display of the first window.

[0019] In some embodiments, after receiving the first operation of the user, the second application associated with the second window is obtained; if the second application is not installed, the second window is destroyed.

[0020] In some embodiments, the second application includes account information authorized for use by the first application.

[0021] In a second aspect, the present application provides an electronic device, which includes a register, a memory, and one or more processors; the register, the memory, and the processors are coupled; the register is used for temporarily storing instructions, data, and addresses, the memory is used for storing computer program code, and the computer program code includes computer instructions; when the processor executes the computer instructions, the electronic device is caused to execute the method described above.

[0022] In a third aspect, the present application provides a computer-readable storage medium, including computer instructions, which when running on an electronic device, cause the electronic device to execute the method described above.

[0023] In a fourth aspect, the present application provides a computer program product, which when running on an electronic device, causes the electronic device to execute the method described above.

[0024] Among them, for the beneficial effects that can be achieved by the electronic device described in the second aspect, the computer-readable storage medium described in the third aspect, and the computer program product described in the fourth aspect provided above, reference may be made to the beneficial effects in the first aspect and any possible design thereof, which will not be elaborated herein. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Figure 1 It is a schematic diagram of a scenario;

[0026] Figure 2 It is a schematic diagram of a scenario;

[0027] Figure 3 It is a schematic diagram of a scenario applicable to the display control method provided in the embodiment of the present application;

[0028] Figure 4 It is a schematic diagram of the hardware structure of an electronic device provided in the embodiment of the present application;

[0029] Figure 5 It is a block diagram of the software structure of an electronic device provided in the embodiment of the present application;

[0030] Figure 6 It is a schematic diagram of a scenario applicable to the display control method provided in the embodiment of the present application;

[0031] Figure 7 It is a schematic diagram of inter-process interaction applicable to the display control method provided in the embodiment of the present application;

[0032] Figure 8 A module interaction timing diagram applicable to a display control method provided by an embodiment of the present application;

[0033] Figure 9 A pseudocode schematic diagram applicable to a display control method provided by an embodiment of the present application;

[0034] Figure 10 Another module interaction timing diagram applicable to a display control method provided by an embodiment of the present application;

[0035] Figure 11 A schematic diagram of the chip system structure provided by an embodiment of the present application. Detailed implementation manners

[0036] Next, in combination with the accompanying drawings in the embodiments of the present application, the technical solutions in the embodiments of the present application will be described. Among them, in the description of the embodiments of the present application, the terms used in the following embodiments are only for the purpose of describing specific embodiments, and are not intended to limit the present application. As used in the specification and claims of the present application, the singular forms "a", "the", "above-mentioned", "this" and "this one" are also intended to include, for example, the expression form of "one or more", unless there is a clear indication to the contrary in the context. It should also be understood that in the following embodiments of the present application, "at least one" and "one or more" mean one or more than two (including two). The term "and / or" is used to describe the association relationship of associated objects, indicating that three relationships can exist; for example, A and / or B can mean: A exists alone, A and B exist simultaneously, and B exists alone, where A and B can be singular or plural. The character " / " generally means that the associated objects before and after are in an "or" relationship.

[0037] Referring to "one embodiment" or "some embodiments" described in this specification means that specific features, structures or characteristics described in combination with the embodiment are included in one or more embodiments of the present application. Thus, the statements "in one embodiment", "in some embodiments", "in other some embodiments", "in still other embodiments" and the like that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "include", "comprise", "have" and their variants all mean "including but not limited to", unless otherwise specifically emphasized in other ways. The term "connection" includes direct connection and indirect connection, unless otherwise stated. "First" and "second" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the quantity of the indicated technical features.

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

[0039] Hereinafter, an exemplary introduction to the application scenarios of the embodiments of the present application will be given.

[0040] Currently, electronic devices support the function of in-application split-screen. The function of in-application split-screen means that the screen of an electronic device can simultaneously display multiple windows belonging to one application, and different windows display different contents, which can increase the screen utilization rate of wide-screen devices such as tablet computers.

[0041] For example, taking an electronic device as a wide-screen device such as a tablet computer as an example, as Figure 1 shown in (a), in the single-window mode, the tablet computer displays the first window of the application. This first window is usually located in the central area (the first area in the figure) of the tablet computer screen, and the blank areas on the left and right sides of the first window do not display the application content. As Figure 1 shown in (b), in response to the user's operation to start in-application split-screen, the tablet computer changes from the single-window mode to the multi-window mode. The tablet computer moves the first window to the left area of the screen (the second area in the figure) for display, and displays the second window in the right area of the screen (the third area in the figure). Exemplarily, the first window displays the home page content of the application, and the second window displays the title page content of the application.

[0042] However, during the process of the tablet computer starting the function of in-application split-screen, if the second window is destroyed, it will cause the first window to still move to the left area of the screen for display, while the second window will not be displayed because it has been destroyed. As Figure 2 shown, the tablet computer displays the first window in the left area (the second area in the figure), while the second window has been destroyed, and the tablet computer loses the content of the second window displayed in the right area (the third area in the figure), and the right area becomes a blank area without displaying the application content.

[0043] The embodiments of the present application provide a display control method. Before the electronic device starts to move the first window or display the second window, if the second window is destroyed, the electronic device will keep the first window displayed in the first area (that is, the area where the first window is located before the user triggers in-application split-screen, such as the central area in the above example), thereby avoiding the above-mentioned display anomaly problem.

[0044] For ease of explanation, the following takes a tablet computer as an example of an electronic device to further illustrate the display control method provided by the embodiments of the present application.

[0045] In some examples, as Figure 3 shown in (a) of, the tablet computer runs a first application, and the first application is, for example, a short video application. The tablet computer displays a first window of the first application in a first area of the screen (such as the central area), and the display content of the first window is, for example, interface A of the first application. Interface A includes control 1, and control 1 is used to start a second window, and the display content of the second window is, for example, interface B of the first application. In response to the user's operation of clicking control 1, the electronic device obtains the window information of the first window (hereinafter referred to as the first window information) and the window information of the second window (hereinafter referred to as the second window information). Among them, the first window information is used for the electronic device to display the first window in a second area of the screen (such as the left area), and the second window information is used for the electronic device to display the second window in a third area of the screen (such as the right area). Generally, after waiting for the display content of the first window and the second window to be rendered, the electronic device plays the first window animation effect and the second window animation effect. Among them, the first window animation effect can be the animation effect of the electronic device moving the first window to the second area, and the first window animation effect can be the animation effect of the electronic device displaying the second window in the third area. However, since the electronic device destroys the second window before playing the first window animation effect and the second window animation effect, the electronic device modifies the foregoing first window information to the third window information corresponding to the first area, and renders the first window according to the third window information. Since the window display area indicated by the third window information is still the first area, the first window is maintained to be displayed in the first area of the screen. As Figure 3 shown in (b) of, in response to the user's operation of clicking control 1, the tablet computer maintains the first window to be displayed in the central area of the screen, and prompts the user for the reason why the second window is not displayed through a pop-up message.

[0046] Exemplarily, the scenario where the electronic device destroys the second window is, for example: the second window needs to obtain the account authorization of the second application. When the electronic device detects that the second application is not installed, it cannot obtain the account authorization of the second application, resulting in the electronic device being unable to obtain the display content of the second window and destroying the second window. It can be known that this example is only an illustrative description of the scenario where the electronic device destroys the second window. During the actual operation of the device, there may be other scenarios where the electronic device needs to destroy the second window, which will not be listed one by one.

[0047] The electronic device described in the embodiments of the present application may include: mobile phones, tablet computers, laptop computers, personal computers (PCs), ultra-mobile personal computers (UMPCs), handheld computers, netbooks, personal digital assistants (PDAs), wearable devices (such as smart watches, smart bracelets, etc.), vehicle-mounted devices, virtual reality devices, and other electronic devices that can implement split-screen display.

[0048] Figure 4 FIG. shows a schematic diagram of the hardware structure of the electronic device 100.

[0049] The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna, a display screen 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone interface 170D, a sensor module 180, etc.

[0050] It can be understood that the structure schematically shown in the embodiments of the present invention does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown in the figure, or combine certain components, or split certain components, or have different component arrangements. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.

[0051] The processor 110 may include one or more processing units. For example, the processor 110 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Among them, different processing units may be independent devices or integrated in one or more processors.

[0052] Among them, the controller can be the nerve center and command center of the electronic device. The controller can generate operation control signals according to the instruction operation code and timing signals to complete the control of fetching and executing instructions.

[0053] A memory can also be set in the processor 110 for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can save the instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to use the instruction or data again, it can directly call it from the said memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.

[0054] The charging management module 140 is used to receive charging input from a charger. Among them, the charger can be a wireless charger or a wired charger. In some embodiments of wired charging, the charging management module 140 can receive the charging input of the wired charger through the USB interface 130. In some embodiments of wireless charging, the charging management module 140 can receive the wireless charging input through the wireless charging coil of the electronic device. While charging the battery 142, the charging management module 140 can also supply power to the electronic device through the power management module 141.

[0055] The power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110. The power management module 141 receives the inputs of the battery 142 and / or the charging management module 140 and supplies power to the processor 110, the internal memory 121, the external memory, the display screen 150, the wireless communication module 160, etc. The power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage, impedance). In some other embodiments, the power management module 141 can also be set in the processor 110. In some other embodiments, the power management module 141 and the charging management module 140 can also be set in the same device.

[0056] The electronic device realizes the display function through the GPU, the display screen 150, and the application processor, etc. The GPU is a microprocessor for image processing, connecting the display screen 150 and the application processor. The GPU is used to execute mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs, which execute program instructions to generate or change display information.

[0057] The display screen 150 is used to display images, videos, etc. The display screen 150 includes a display panel. The display panel can adopt a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a Miniled, a MicroLed, a Micro-oLed, a quantum dot light-emitting diode (QLED), etc. In some embodiments, the electronic device may include one or N display screens 150, where N is a positive integer greater than 1. In the embodiments of the present application, the display screen 150 is also referred to as a screen.

[0058] The digital signal processor is used to process digital signals. In addition to processing digital image signals, it can also process other digital signals. For example, when the electronic device is selecting a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy, etc.

[0059] The video codec is used to compress or decompress digital videos. The electronic device can support one or more video codecs. In this way, the electronic device can play or record videos in multiple coding formats, such as: Moving Picture Experts Group (MPEG) 1, MPEG2, MPEG3, MPEG4, etc.

[0060] The NPU is a neural-network (NN) computing processor. By learning from the biological neural network structure, such as learning from the transmission mode between human brain neurons, it can quickly process the input information and can also continuously self-learn. Through the NPU, applications such as intelligent cognition of the electronic device can be realized, such as: image recognition, face recognition, speech recognition, text understanding, etc.

[0061] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device. The external memory card communicates with the processor 110 through the external memory interface 120 to implement the data storage function. For example, files such as music and videos are saved in the external memory card.

[0062] The internal memory 121 can be used to store computer-executable program codes, and the executable program codes include instructions. The processor 110 executes various functional applications and data processing of the electronic device by running the instructions stored in the internal memory 121. The internal memory 121 may include a program storage area and a data storage area. Among them, the program storage area can store the operating system, application programs required for at least one function (such as the sound playback function, the image playback function, etc.). The data storage area can store the data created during the use of the electronic device (such as audio data, phone book, etc.). In addition, the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc.

[0063] The wireless communication function of the electronic device can be implemented through an antenna, a wireless communication module 160, a modulation and demodulation processor, etc.

[0064] The antenna is used to transmit and receive electromagnetic wave signals. Each antenna in the electronic device can be used to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization rate of the antennas. For example: This antenna can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antenna can be used in combination with a tuning switch.

[0065] The wireless communication module 160 can provide solutions for wireless communications applied to the electronic device, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite systems (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna, performs frequency modulation and filtering processing on the electromagnetic wave signals, and sends the processed signals to the processor 110. The wireless communication module 160 can also receive the signals to be sent from the processor 110, perform frequency modulation and amplification on them, and convert them into electromagnetic waves through the antenna and radiate them out.

[0066] In some embodiments, the antenna of the electronic device is coupled to the wireless communication module 160, enabling the electronic device to communicate with the network and other devices through wireless communication technologies. The wireless communication technologies may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time-Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology, etc. The GNSS may include Global Positioning System (GPS), Global Navigation Satellite System (GLONASS), Beidou Navigation Satellite System (BDS), Quasi-Zenith Satellite System (QZSS), and / or Satellite Based Augmentation Systems (SBAS).

[0067] The electronic device can implement audio functions through the audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, and the application processor, etc. For example, music playback, recording, etc.

[0068] The audio module 170 is used to convert digital audio information into an analog audio signal for output, and is also used to convert analog audio input into a digital audio signal. The audio module 170 can also be used for encoding and decoding audio signals. In some embodiments, the audio module 170 may be disposed in the processor 110, or some functional modules of the audio module 170 may be disposed in the processor 110.

[0069] The speaker 170A, also known as the "loudspeaker", is used to convert an audio electrical signal into a sound signal. The electronic device can listen to music or hands-free calls through the speaker 170A.

[0070] The receiver 170B, also known as the "earpiece", is used to convert audio electrical signals into sound signals. When the electronic device answers a call or a voice message, the voice can be received by bringing the receiver 170B close to the human ear.

[0071] The microphone 170C, also known as the "microphone" or "transmitter", is used to convert sound signals into electrical signals. When making a call or sending a voice message, the user can speak close to the microphone 170C to input the sound signal into the microphone 170C. The electronic device may be provided with at least one microphone 170C. In some other embodiments, the electronic device may be provided with two microphones 170C, which can not only collect sound signals but also implement a noise reduction function. In some other embodiments, the electronic device may also be provided with three, four or more microphones 170C to collect sound signals, reduce noise, identify the sound source, and implement functions such as directional recording.

[0072] The headphone jack 170D is used to connect a wired headphone. The headphone jack 170D may be a USB interface 130, or a 3.5 mm open mobile terminal platform (OMTP) standard interface, or a cellular telecommunications industry association of the USA (CTIA) standard interface.

[0073] The sensor module 180 may include a pressure sensor, a gyroscope sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a distance sensor, a proximity light sensor, a fingerprint sensor, a temperature sensor, a touch sensor, an ambient light sensor, a bone conduction sensor, etc.

[0074] The software system of the electronic device 100 may adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservices architecture, or a cloud architecture. In the embodiments of the present invention, the Android system with a layered architecture is taken as an example to exemplarily illustrate the software structure of the electronic device 100.

[0075] Figure 5 is a software structure block diagram of the electronic device 100 in the embodiments of the present invention.

[0076] The layered architecture divides the software into several layers, and each layer has a clear role and division of labor. The layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom, namely the application layer, the application framework layer, the Android runtime and system libraries, and the kernel layer.

[0077] The application layer may include a series of application packages.

[0078] As Figure 5 shown, the application package may include applications such as a first application, a second application, a camera, a gallery, a calendar, a call, a map, a navigation, etc. Among them, the first application is, for example, an application such as a short video, a video, a shopping, etc., and the second application is, for example, a social application.

[0079] The application framework layer provides application programming interfaces (APIs) and programming frameworks for the applications in the application layer. The application framework layer includes some predefined functions.

[0080] As Figure 5 shown, the application framework layer may include a window manager service (WMS), an activity manager service (AMS), an event input system, a window policy module, a window information configuration module, a content provider, a call manager, a view system, a resource manager, a notification manager, etc.

[0081] The WMS is used to manage window programs. The WMS is responsible for the management of windows, including the startup, addition, deletion of windows, and the size management of windows, ensuring that the windows are displayed on the screen in the correct order. Monitoring the creation and destruction of application windows and adding or removing them from the window manager. The WMS is also responsible for managing the display state of windows, controlling the display and hiding of windows, and multi-window display according to conditions such as the foreground and background states of applications and focus changes. The WMS is also responsible for window animation processing.

[0082] The AMS is mainly responsible for the startup, switching, scheduling of the four major components in the system, and the management and scheduling of application processes, etc. Its responsibilities are similar to the process management and scheduling module in the operating system. When a process startup or component startup is initiated, the request will be passed to the AMS through the Binder communication mechanism, and the AMS will then make unified processing.

[0083] The main function of the event input system is to process and distribute input events from input devices, such as touches, keys, etc., in response to user operations.

[0084] The window policy module is used to determine the window display mode and the multi-window capability set. The window display mode includes, for example: single window mode, multi / double window home page navigation mode, multi / double window dynamic home page mode, etc. The multi-window capability set is used to adjust window size, rounded corner display, focus switching, multi-task snapshot, multi-application resume, etc.

[0085] The window information configuration module is used to provide the system application or third-party applications with the ability to customize and determine the display range and display position of the window. In some examples, the system application or third-party applications customize the display range and display position of the window on the screen of the electronic device 100 by writing window information.

[0086] The call manager is used to provide the communication function of the terminal device 100. For example, the management of call states (including answering, hanging up, etc.).

[0087] The content provider is used to store and obtain data, and make this data accessible to application programs. The data may include videos, images, audio, dialed and received calls, browsing history and bookmarks, phone books, etc.

[0088] The view system includes visual controls, such as controls for displaying text, controls for displaying pictures, etc. The view system can be used to build application programs. The display interface can be composed of one or more views. For example, a display interface including a text message notification icon may include a view for displaying text and a view for displaying pictures.

[0089] The resource manager provides various resources for application programs, such as localized strings, icons, pictures, layout files, video files, and so on.

[0090] The notification manager enables application programs to display notification information in the status bar. It can be used to convey informative messages, which can automatically disappear after a short stay without user interaction. For example, the notification manager is used to inform that the download is completed, message reminders, etc. The notification manager can also be a notification in the form of a chart or scroll bar text that appears in the system top status bar, such as the notification of a background-running application program, and can also be a notification in the form of a dialogue window that appears on the screen. For example, it can prompt text information in the status bar, emit a prompt sound, vibrate the terminal device, blink the indicator light, etc.

[0091] The Android runtime includes a core library and a virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.

[0092] The core library consists of two parts: one part is the functional functions that need to be called by the Java language, and the other part is the core library of Android.

[0093] The application layer and the application framework layer run in the virtual machine. The virtual machine executes the Java files of the application layer and the application framework layer as binary files. The virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, security and exception management, and garbage collection.

[0094] The system library may include multiple functional modules. For example: surface manager, Media Libraries, 3D graphics processing library (e.g., OpenGL ES), 2D graphics engine (e.g., SGL), etc.

[0095] The surface manager is used to manage the display subsystem and provides the fusion of 2D and 3D layers for multiple applications.

[0096] The media library supports the playback and recording of multiple common audio and video formats, as well as static image files, etc. The media library can support multiple audio and video coding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.

[0097] The 3D graphics processing library is used to implement 3D graphics drawing, image rendering, synthesis, and layer processing, etc.

[0098] The 2D graphics engine is a drawing engine for 2D drawing.

[0099] The kernel layer is the layer between hardware and software. The kernel layer at least includes a display driver, a camera driver, an audio driver, and a sensor driver.

[0100] Taking the electronic device as a tablet computer as an example below, the display control method provided by the embodiments of the present application will be described in detail. It should be noted that the first window and the second window in the embodiments of the present application are only examples. In some other embodiments, there may be more windows, and the embodiments of the present application do not limit the number of windows.

[0101] In some embodiments, as Figure 6 shown in (a) of, the tablet computer runs the first application, and the tablet computer obtains the initial window information configured by the first application. The initial window information is used to indicate the coordinate range (i.e., the display range) of the display area of the first window that the first application needs to display on the tablet computer screen. By way of example, the initial window information can be used to indicate the display area corresponding to a single window in single-window mode. The tablet computer renders the display content of the first window, and the display content of the first window is the display content of the interface A of the first application. After the first window is rendered, the tablet computer displays the interface A in the first area of the screen according to the display range of the first window indicated by the initial window information on the tablet computer screen.

[0102] Continuing with the example corresponding to (a) above Figure 6 as Figure 6As shown in (b), in response to the user's first operation to initiate in-application split-screen, the tablet computer obtains the first window information and the second window information of the first application configuration, and the tablet computer renders the display content of the first window and the display content of the second window. The display content of the first window is, for example, still the display content of interface A of the first application, and the display content of the second window is, for example, the display content of interface B of the first application. After waiting for the rendering of the first window and the second window to be completed, the tablet computer moves the first window from the first area to the second area according to the display range of the first window indicated by the first window information, and displays interface B in the third area according to the display range of the second window indicated by the second window information (the dotted line in the figure indicates waiting for the rendering to be completed and has not started moving the first window or displaying the second window).

[0103] As Figure 6 As shown in (c), before the tablet computer starts to move the first window or display the second window, the tablet computer destroys the second window; then, the tablet computer obtains the third window information of the first application configuration, and after waiting for the display content of the first window to be rendered, according to the third window information, the tablet computer displays the first window in the display range indicated by the third window information. Since the display range indicated by the third window information is still the first area, the first window is still displayed in the first area.

[0104] In some embodiments, the process of moving the first window from the first area to the second area in response to the user's first operation to initiate in-application split-screen can be completed in one frame. That is to say, the previous frame displayed by the tablet computer is the first window displayed in the first area, and the next frame is the first window displayed in the second area. For the second window, the previous frame displayed by the tablet computer does not display the second window, and the next frame displays the second window in the third area.

[0105] In other embodiments, the process of moving the first window from the first area to the second area in response to the user's first operation to initiate in-application split-screen can be completed through multiple frames, which can also be called window animation effects. For the window animation effect of the first window, for example, multiple frames can be played frame by frame so that the first window smoothly moves from the first area to the second area. For the window animation effect of the second window, for example, multiple frames can be played frame by frame so that the second window gradually grows from small to large, or from light to deep, or moves from the edge of the screen to the third area.

[0106] Exemplarily, the window animation effect is implemented by various processes included in the tablet computer operating system, including the interaction between the processes on the core side and the processes on the shell side. The processes on the core side are responsible for the state of the window, and the processes on the shell side are responsible for window animation effect processing, display, etc. As Figure 7As shown, the interactions between various processes during the window animation process are introduced.

[0107] In response to the user clicking on the application icon, the process of the first application sends a window addition request message (collect) to the transition control process on the core side. The transition control process adds the window object (which can be the first window, the second window, or other windows) indicated in the window addition request message to the animation synchronization process. The application process sends a start window animation request message (request start transition) to the transition control process, notifying the transition control process to prepare for handling the window animation. The transition control process sends a start window animation request message to the transition process on the shell side. The handling of the window animation is specifically implemented by the transition process on the shell side. After receiving the start window animation request message, the transition process sends a started message (start transition) to the transition control process on the core side, notifying the transition control process that it is ready to handle the window animation. After the animation synchronization process waits for the display content of all windows to be rendered, it sends a window ready message (finish now) to the transition control process, notifying the transition control process that the display content of all windows has been rendered and the window animation can start being processed. The transition control process sends an animation ready message (on transition ready) to the transition process on the shell side, notifying the transition process to start playing the window animation. After receiving the animation ready message, the transition process notifies the transition handling process to play the window animation (at this time, the animation has already started playing). After the transition handling process finishes handling the window animation (the animation has finished playing), it sends an animation handling finished message (on transition finish) to the transition process, and the transition process sends an animation handling finished message to the transition control process on the core side. In this example, the transition control process is used to uniformly manage the relevant messages of the window animation and is responsible for transmitting the message interactions between the process of the first application, the animation synchronization process, and the transition process. The animation synchronization process is used to uniformly determine the start time of the window animation. The transition process is used to determine the animation effect, animation duration, etc. of the window animation. The transition handling process is used to execute the window animation. Before the animation synchronization process sends a window ready message to the transition control process in the embodiment of the present application, if the second window is destroyed, the transition process determines the window animation according to the third window message, and the third window message indicates that the first window is displayed in the first area of the screen. Since the first window is currently already displayed in the first area, after the animation synchronization process sends a window ready message to the transition control process, the first window remains displayed in the first area of the screen. This avoids the problem of abnormal display of the first window.

[0108] In one implementation, as Figure 8Schematic diagram of module interaction timing of a display control method shown. In the following example, the transition module includes the implementation of the transition control process on the core side, the transition process on the shell side, and the function of the transition processing process. The BLASTSyncEngine module includes the implementation of the animation synchronization process on the sore side. The transition module is used to execute window animations. The animation synchronization module is used to wait for all windows to be fully ready and then notify the transition module to start executing window animations uniformly. In some examples, a window being ready means that the rendering of the display content of the window is complete.

[0109] After the application in the tablet computer starts split-screen within the application, the method in the embodiments of the present application includes:

[0110] S801. The application sends a window request message to the window policy module.

[0111] In some examples, the window request message sent by the application to the window policy module includes a first window request message and a second window request message.

[0112] In some examples, the application sends a window request message to the window policy module, requesting the window policy module to configure a dual-window display policy, dual-window display range, dual-window animation type, etc.

[0113] The dual-window display policy includes, for example: dual-window home page navigation mode or dual-window dynamic home page mode.

[0114] The dual-window display range includes, for example: the pixel coordinate positions of the four vertices of the window on the screen, etc. Exemplarily, with the pixel coordinate system as the reference coordinate system, the left vertex of the tablet computer screen is the origin of the coordinate system, the horizontal axis is represented by u, and the vertical axis is represented by v. For example, the pixel position coordinates of the first window are (0, 0 - 1495, 1920), indicating that the display area of the first window on the tablet computer screen is from column 0, row 0 to column 1495, row 1920 (the second area). The pixel position coordinates of the second window are (1505, 0 - 3000, 1920), indicating that the display area of the first window on the tablet computer screen is from column 1505, row 0 to column 3000, row 1920 (the third area).

[0115] The dual-window animation type includes, for example, the animation effect of the first window moving from the first area of the screen to the second area of the screen, and the animation effect of the second window moving from the right edge of the screen to the third area of the screen. This animation effect includes, for example, fade-in / fade-out, stretching, stacking, etc.

[0116] S802. After receiving the window request message, the window policy module sends a start window animation request message to the transition module.

[0117] After receiving the start window animation effect request message, the transition module obtains window information.

[0118] In some examples, the window information obtained by the transition module includes a first window message and a second window message. The first window message includes the pixel coordinate position of the first window, and the second window message includes the pixel coordinate position of the second window. Exemplarily, the first window message further includes the animation effect of the first window moving from the current area of the screen (for example, the first area) to the second area. The second window message includes the animation effect of the second window being displayed from nothing in the third area of the screen.

[0119] After the transition module obtains the window message, it determines the display area (the second area) of the first window on the screen after playing the window animation effect, and the display area (the third area) of the second window on the screen.

[0120] S804. The transition module adds the window to the animation effect synchronization module.

[0121] In some examples, the transition module adds the first window and the second window to the animation effect synchronization module. The animation effect synchronization module waits for the first window and the second window to be rendered. After the first window and the second window are rendered, the animation effect synchronization module sends a window ready message to the transition module at a preset display time. Exemplarily, the preset display time can correspond to the screen refresh time so that the window animation effect starts to be played at the next screen refresh.

[0122] S805. The application sends a destroy second window request message to the window policy module.

[0123] In some examples, for example, when the application starts the second window to request authorization account information from another application (the second application), and the tablet computer system detects that the other application for authorizing the account information is not installed, the application sends a destroy second window request message to the window policy module.

[0124] S806. The window policy module destroys the second window.

[0125] In some examples, the window policy module switches from the dual-window mode to the single-window mode and generates a window information modification request message, which includes the third window information.

[0126] In some examples, the windows of the application are stored in the task stack. When the window policy module detects that a window triggers a finish, it obtains the window information in the current task stack. When it determines that there is a window task in the current task stack and the window information of this window indicates that its pixel coordinate position on the screen is not displayed in the middle area of the screen, the window policy module switches from the dual-window mode to the single-window mode and generates a window information modification request message. As Figure 9As shown, it is a diagram of a pseudocode example for executing the above process. In Figure 9 In the shown pseudocode, when the window is destroyed, it triggers the modification of the window information, obtains the window information in the current task stack. If there is only one window task in the task stack and the window information indicates that the window is not centered, modify the window information to be centered (displayed in the central area).

[0127] S807. The window policy module sends a window information modification request message to the transition module.

[0128] In some examples, the window information modification request message includes the third window information.

[0129] S808. The transition module obtains the modified window information.

[0130] In some examples, the transition module uses the third window information to overwrite the first window information and the second window information.

[0131] In some examples, the first window information includes the pixel coordinate position of the first window, for example, (0, 0 - 1495, 1920). The pixel coordinate position indicates that the first window is not displayed in the central area of the screen. The third window information includes the pixel coordinate position of the first window, for example, (752, 0 – 2247, 1920). This pixel position coordinate indicates that the first window is displayed in the central area. Since the second window is destroyed, the second window information is deleted.

[0132] S809. After waiting for the window to be rendered, the animation synchronization module sends a window ready message to the transition module.

[0133] S810. The transition module receives the window ready message and executes the window animation according to the modified window message.

[0134] In some examples, the modified window message is the third window information. Since the pixel coordinate position of the first window included in the third window information is the same as that of the first window included in the zeroth window information, during the execution of the window animation, the display position of the first window on the screen remains unchanged.

[0135] In the embodiment of the present application, the electronic device responds to the first operation of the user to start in - app split - screen, obtains the first window information and the second window information. When the second window triggers finish during creation (on create), the first window information is modified to the third window information at the finish stub point, and the second window information is deleted. In this way, when starting to execute the window animation, the electronic device determines that the display position of the first window does not need to move. When the first window triggers resume, it detects that the display position of the first window is correct and does not make adjustments. After the window animation ends, the display position of the first window remains unchanged.

[0136] Compared with the method described in another embodiment, the second window triggers finish when it is created (on create), but does not modify the window information at the finish stub point. In this way, the electronic device still executes the window animation effect according to the first window information, and the first window moves from the first area of the screen to the second area. When the first window triggers resume, although the first window information of the first window is modified to the third window information, since the window animation effect has already started to execute, the first window still moves towards the second area, and after the window animation effect ends, the first window is displayed in the second area of the screen. Since the second window has been destroyed, the display content of the second window is not displayed in the third area of the screen. Exemplarily, Figure 10 Shown is the schematic diagram of the module interaction timing sequence of this embodiment, which is similar to Figure 8 the similar process (S1001 - S1005 in the figure) will not be elaborated. In Figure 10 it, after the window policy module destroys the second window, it does not send a window information modification request message to the transition module. After the animation effect synchronization module sends a window ready message to the transition module at the preset display moment, the transition module executes the window animation effect according to the unmodified window information (S1006 - S1008 in the figure), resulting in the first window moving from the first area of the screen to the second area.

[0137] It can be understood that, in order to implement the above functions, the above - mentioned electronic device includes the corresponding hardware structure and / or software module for executing each function. Those skilled in the art should easily realize that, combining the units and algorithm steps of each example described in the embodiments disclosed herein, the embodiments of the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed in the way of hardware or computer software driving hardware depends on the specific application and design constraint conditions of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the embodiments of the present application.

[0138] The embodiments of the present application can divide the above - mentioned electronic device into functional modules according to the above - mentioned method examples. For example, each functional module can be divided corresponding to each function, or two or more functions can be integrated into one processing module. The above - integrated module can be implemented in the form of hardware or in the form of a software functional module. It should be noted that the division of modules in the embodiments of the present application is illustrative, only a logical function division, and there can be other division methods in actual implementation.

[0139] An embodiment of the present application provides an electronic device, which may include: a memory and one or more processors. Among them, the memory is used to store computer program code, and the computer program code includes computer instructions. When the processor executes the computer instructions, the electronic device can execute each function or step executed by the mobile phone in the above method embodiment. The structure of the electronic device can refer to Figure 4 the structure of the electronic device 100 shown.

[0140] An embodiment of the present application also provides a chip system (for example, a system on a chip (SoC)), as Figure 11 shown. The chip system includes at least one processor 1101 and at least one interface circuit 1102. The processor 1101 and the interface circuit 1102 can be interconnected by a line. For example, the interface circuit 1102 can be used to receive signals from other devices (such as the memory of an electronic device). For another example, the interface circuit 1102 can be used to send signals to other devices (such as the processor 1101 or the touch screen of a terminal device). Exemplarily, the interface circuit 1102 can read the instructions stored in the memory and send the instructions to the processor 1101. When the instructions are executed by the processor 1101, the terminal device can execute each step in the above embodiment. Of course, the chip system can also include other discrete devices, and the embodiments of the present application do not make specific limitations on this.

[0141] An embodiment of the present application also provides a computer-readable storage medium, which includes computer instructions. When the computer instructions run on the above terminal device, the terminal device can execute each function or step in the above method embodiment.

[0142] An embodiment of the present application also provides a computer program product. When the computer program product runs on a computer, the computer can execute each function or step in the above method embodiment.

[0143] Through the description of the above embodiments, those skilled in the art can clearly understand that for the convenience and simplicity of description, only the above division of each functional module is used as an example. In actual applications, the above functions can be allocated to different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above.

[0144] In several embodiments provided by the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point is that the displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces. The indirect couplings or communication connections of the devices or units can be in electrical, mechanical or other forms.

[0145] The units described as separate components may or may not be physically separated. The components displayed as units may be one physical unit or multiple physical units, that is, they can be located in one place, or they can be distributed to multiple different places. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0146] In addition, in each embodiment of the present application, the functional units can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit. The above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.

[0147] If the above-mentioned integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of the embodiments of the present application, in essence, or the part that contributes to the prior art, or all or part of this technical solution, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions for causing a device (which can be a single-chip microcomputer, a chip, etc.) or a processor to execute all or part of the steps of the methods described in the embodiments of the present application. The aforementioned storage medium includes: USB flash drives, mobile hard disks, read only memory (ROM), random access memory (RAM), magnetic disks or optical discs and other various media that can store program codes.

[0148] The above content is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A display control method, characterized in that: Applied to electronic equipment, the method comprises: In a case where a first window of a first application is displayed in a first area of ​​a screen of an electronic device, a first operation of a user is received; the first operation is used to start a second window of the first application, and trigger the electronic device to move the first window to a second area of ​​the screen of the electronic device for display, and display the second window in a third area of ​​the screen of the electronic device; the center of the first area coincides with the center of the screen of the electronic device; the first length of the first area is consistent with the first length of the screen of the electronic device, and the second length of the first area is less than the second length of the screen of the electronic device; If the second window is destroyed before the first window starts to be moved or the second window is displayed, the first window is kept displayed in the first area.

2. The method according to claim 1, characterized in that The method further comprises: In response to the first operation, first window information and second window information are determined, the first window information being used to indicate that the first window is displayed in the second area, and the second window information being used to indicate that the second window is displayed in the third area.

3. The method according to claim 2, characterized in that If the second window is destroyed before the first window starts to be moved or the second window is displayed, maintaining the first window displayed in the first area includes: If the second window is destroyed before the first window starts to be moved or the second window is displayed, determining third window information; the third window information is used to indicate that the first window is displayed in the first area; According to the third window information, the first window is controlled to be displayed in the first area.

4. The method according to claim 2, characterized in that: The method further comprises: If the second window is not destroyed before the first window starts to be moved or the second window is displayed, the first window is moved to the second area according to the first window information, and the second window is displayed in the third area according to the second window information.

5. The method according to claim 4, characterized in that The step of moving the first window to the second area according to the first window information, and displaying the second window in the third area according to the second window information includes: Render the first window according to the first window information Rendering the second window according to the second window information; After the first window and the second window are rendered, the first window animation and the second window animation are played at a preset display time.

6. The method according to claim 5, characterized in that The if step, before starting to move the first window or display the second window, includes: Before playing the first window animation or the second window animation.

7. The method according to any one of claims 1 to 6, characterized in that: After receiving the first operation of the user, the method further includes: Acquire a second application associated with the second window; If the second application is not installed, destroy the second window.

8. The method according to claim 7, characterized in that The second application includes account information authorized for use by the first application.

9. An electronic device, characterized in that: The terminal device comprises: a processor and a memory, wherein the processor is coupled to the memory; the memory is used to store computer program code; the computer program code comprises computer instructions, and when the processor executes the above-mentioned computer instructions, the terminal device executes the method described in any one of claims 1-8.

10. A computer-readable storage medium, characterized in that: The method comprises computer instructions, which, when executed on a terminal device, cause the terminal device to execute the method according to any one of claims 1 to 8.

11. A computer program product, characterized in that When the computer program product is executed on a terminal device, the terminal device executes the method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Coordinate conversion method and device, chip and storage medium

    CN117931043A