aboutsummaryrefslogtreecommitdiff
path: root/src/FbWinFrame.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/FbWinFrame.cc')
-rw-r--r--src/FbWinFrame.cc19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/FbWinFrame.cc b/src/FbWinFrame.cc
index 30d8389..e78ed5f 100644
--- a/src/FbWinFrame.cc
+++ b/src/FbWinFrame.cc
@@ -546,8 +546,15 @@ void FbWinFrame::setAlpha(bool focused, unsigned char alpha) {
546 else 546 else
547 m_unfocused_alpha = alpha; 547 m_unfocused_alpha = alpha;
548 548
549 if (m_focused == focused) 549 if (m_focused == focused) {
550 m_window.setOpaque(alpha); 550 if (FbTk::Transparent::haveComposite())
551 m_window.setOpaque(alpha);
552 else {
553 // don't need to setAlpha, since apply updates them anyway
554 applyAll();
555 clearAll();
556 }
557 }
551} 558}
552 559
553unsigned char FbWinFrame::getAlpha(bool focused) const 560unsigned char FbWinFrame::getAlpha(bool focused) const
@@ -569,7 +576,13 @@ void FbWinFrame::setUseDefaultAlpha(bool default_alpha)
569 576
570 m_use_default_alpha = default_alpha; 577 m_use_default_alpha = default_alpha;
571 578
572 m_window.setOpaque(getAlpha(m_focused)); 579 if (FbTk::Transparent::haveComposite())
580 m_window.setOpaque(getAlpha(m_focused));
581 else {
582 // don't need to setAlpha, since apply updates them anyway
583 applyAll();
584 clearAll();
585 }
573} 586}
574 587
575void FbWinFrame::setDoubleClickTime(unsigned int time) { 588void FbWinFrame::setDoubleClickTime(unsigned int time) {