| CPC G06T 1/20 (2013.01) [G06F 3/0485 (2013.01); G06F 3/14 (2013.01); G06T 1/60 (2013.01); G09G 2360/08 (2013.01)] | 16 Claims |

|
1. A method comprising:
determining, by a virtual display controller, a context of an electronic device;
determining, by the virtual display controller, a current state of the electronic device, wherein the current state indicates a real time consumption of hardware components of the electronic device;
determining, by the virtual display controller, at least one graphics configuration of hardware components of the electronic device and a first application of the electronic device, based on the context of the electronic device and the current state of the electronic device;
generating, by the virtual display controller, a virtual display for displaying the first application based on the at least one graphics configuration of the hardware components and the first application;
detecting, by the virtual display controller, an input for launching the first application displayed on the virtual display;
switching, by the virtual display controller, display of a second application displayed on a main display of the electronic device to the virtual display and display of the first application from the virtual display to the main display; and
determining, by the virtual display controller, a surface requirement for rendering the first application on the virtual display and a final state at run-time of the first application,
wherein the determining of the surface requirement includes:
determining one or more first parameters including at least one of a use of the electronic device, available memory, a type of the first application, or a battery level of the electronic device;
normalizing the one or more first parameters into a pre-determined range;
applying the one or more normalized first parameters to a first model; and
determining whether to render the first application on the virtual display with or without a surface based on the first model, and
wherein the determining of the final state at run-time of the first application includes:
determining one or more second parameters including at least one of network accessibility, the available memory, a size of the first application, or a continuous power draw;
normalizing the one or more second parameters into a pre-determined range;
applying the one or more normalized second parameters to a second model; and
determining whether to keep the rendered first application in a hold state in which the first application is compressed and stored in memory or a ready state in which the first application is maintained in a latest state, based on the second model.
|