Run the startup animation when we don't have much going on
Starting the startup animation when we don't have that much IO makes it a lot more visible. Based on a patch by Giovanni Campagna <gcampagna@src.gnome.org> https://bugzilla.gnome.org/show_bug.cgi?id=682429
This commit is contained in:

committed by
Ray Strode

parent
65303d027a
commit
1950a67e15
@ -127,6 +127,7 @@ function startSession() {
|
||||
|
||||
// Setup the stage hierarchy early
|
||||
layoutManager = new Layout.LayoutManager();
|
||||
|
||||
// Various parts of the codebase still refers to Main.uiGroup
|
||||
// instead using the layoutManager. This keeps that code
|
||||
// working until it's updated.
|
||||
@ -154,6 +155,7 @@ function startSession() {
|
||||
BackgroundMenu.addBackgroundMenu(global.background_actor);
|
||||
|
||||
layoutManager.init();
|
||||
layoutManager.prepareStartupAnimation();
|
||||
overview.init();
|
||||
|
||||
global.screen.override_workspace_layout(Meta.ScreenCorner.TOPLEFT,
|
||||
@ -190,6 +192,14 @@ function startSession() {
|
||||
|
||||
ExtensionDownloader.init();
|
||||
ExtensionSystem.init();
|
||||
|
||||
// Run the startup animation as soon as the mainloop is idle enough.
|
||||
// This is necessary to have it smooth and without interruptions from
|
||||
// completed IO tasks
|
||||
GLib.idle_add(GLib.PRIORITY_LOW, function() {
|
||||
layoutManager.startupAnimation();
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
let _workspaces = [];
|
||||
|
Reference in New Issue
Block a user