Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[embedlite] Introduce explicit top level window object into EmbedLite…
… API. This change allows the embedder to manage internal gecko widget tree in more efficient manner. In current API when the embedder creates EmbedLiteView object it automatically creates new gecko widget tree. Each new view introduces a new widget tree that is not connected with other trees in any way. The problem is that the top level widget in the tree always needs to have a compositor associated with it. As a result mulit tabbed browser based on EmbedLite will end up having multiple compositors. Apart from the fact this configuration is not tested at all in upstream products it's also extremely inefficient. Each compositor ends up having it's own LayerManager which in turn has it's own set of layer caches. Also, gecko compositor assumes it has exclusive control over it's GLContext which fails miserably in configurations where the embedders wants multiple EmbedLiteViews share the same compositing surface/context (QOpenGLWebPage). This patch introduces a concept of a window into EmbedLite API. The window is supposed to be a top level widget shared by multiple views. It is responsible for creating exactly one compositor instance that can be shared between multiple EmbedLiteViews. Signed-off-by: Piotr Tworek <piotr.tworek@jollamobile.com>
- Loading branch information
Showing
47 changed files
with
1,570 additions
and
774 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.