x: Don’t pre-render the decoration for windows inside a stack which are not visible

Saves n-1 decoration renderings for n windows in a stack whenever a new window
gets added or removed.
This commit is contained in:
Michael Stapelberg 2011-07-10 21:54:34 +02:00
parent d7f9700ba4
commit 7d9ba707b3
1 changed files with 9 additions and 4 deletions

View File

@ -578,6 +578,11 @@ void x_push_node(Con *con) {
con->pixmap_recreated = true; con->pixmap_recreated = true;
/* Dont render the decoration for windows inside a stack which are
* not visible right now */
if (!con->parent ||
con->parent->layout != L_STACKED ||
TAILQ_FIRST(&(con->parent->focus_head)) == con)
/* Render the decoration now to make the correct decoration visible /* Render the decoration now to make the correct decoration visible
* from the very first moment. Later calls will be cached, so this * from the very first moment. Later calls will be cached, so this
* doesnt hurt performance. */ * doesnt hurt performance. */