dix: add callback for post root window init
Allow extensions to catch in right after a screen's root window has been finally initialized Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
parent
029f965dd9
commit
154ed75e5c
|
@ -38,6 +38,19 @@ extern HWEventQueuePtr checkForInput[2];
|
||||||
/* -retro mode */
|
/* -retro mode */
|
||||||
extern Bool party_like_its_1989;
|
extern Bool party_like_its_1989;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @brief callback right after one screen's root window has been initialized
|
||||||
|
*
|
||||||
|
* For extensions that need additional setup after root window is completely
|
||||||
|
* initialized (eg. possible to create new windows), but before any client
|
||||||
|
* can connect. Called once per screen (supplied as arg) - the screen's
|
||||||
|
* CreateWindow proc already had been called on the root window.
|
||||||
|
*
|
||||||
|
* Not for DDXs / drivers: those already informed by screen's CreateWindow
|
||||||
|
* proc being called on the root window.
|
||||||
|
*/
|
||||||
|
extern CallbackListPtr PostInitRootWindowCallback;
|
||||||
|
|
||||||
static inline _X_NOTSAN Bool
|
static inline _X_NOTSAN Bool
|
||||||
InputCheckPending(void)
|
InputCheckPending(void)
|
||||||
{
|
{
|
||||||
|
|
|
@ -130,6 +130,7 @@ Equipment Corporation.
|
||||||
extern void Dispatch(void);
|
extern void Dispatch(void);
|
||||||
|
|
||||||
CallbackListPtr RootWindowFinalizeCallback = NULL;
|
CallbackListPtr RootWindowFinalizeCallback = NULL;
|
||||||
|
CallbackListPtr PostInitRootWindowCallback = NULL;
|
||||||
|
|
||||||
int
|
int
|
||||||
dix_main(int argc, char *argv[], char *envp[])
|
dix_main(int argc, char *argv[], char *envp[])
|
||||||
|
@ -251,8 +252,10 @@ dix_main(int argc, char *argv[], char *envp[])
|
||||||
PanoramiXConsolidate();
|
PanoramiXConsolidate();
|
||||||
#endif /* XINERAMA */
|
#endif /* XINERAMA */
|
||||||
|
|
||||||
for (i = 0; i < screenInfo.numScreens; i++)
|
for (i = 0; i < screenInfo.numScreens; i++) {
|
||||||
InitRootWindow(screenInfo.screens[i]->root);
|
InitRootWindow(screenInfo.screens[i]->root);
|
||||||
|
CallCallbacks(&PostInitRootWindowCallback, screenInfo.screens[i]);
|
||||||
|
}
|
||||||
|
|
||||||
InitCoreDevices();
|
InitCoreDevices();
|
||||||
InitInput(argc, argv);
|
InitInput(argc, argv);
|
||||||
|
|
Loading…
Reference in New Issue