aboutsummaryrefslogtreecommitdiff
path: root/src/Slit.cc
diff options
context:
space:
mode:
authorsimonb <simonb>2006-04-21 16:20:56 (GMT)
committersimonb <simonb>2006-04-21 16:20:56 (GMT)
commite99c28724bcb7cc605b2c7c3081ecfdf63e87d8a (patch)
treee52ce3b152608aba51d98bf68a07b0e8bc786c33 /src/Slit.cc
parent059aca46283d9e370810e6165fedf25beee81c87 (diff)
downloadfluxbox_pavel-e99c28724bcb7cc605b2c7c3081ecfdf63e87d8a.zip
fluxbox_pavel-e99c28724bcb7cc605b2c7c3081ecfdf63e87d8a.tar.bz2
minor fixes to slit transparency handling
Diffstat (limited to 'src/Slit.cc')
-rw-r--r--src/Slit.cc20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/Slit.cc b/src/Slit.cc
index d2fbcd5..e418a93 100644
--- a/src/Slit.cc
+++ b/src/Slit.cc
@@ -675,16 +675,10 @@ void Slit::reconfigure() {
675 else 675 else
676 frame.height += bevel_width*2; 676 frame.height += bevel_width*2;
677 677
678 reposition();
679 Display *disp = FbTk::App::instance()->display(); 678 Display *disp = FbTk::App::instance()->display();
680 679
681 frame.window.setBorderWidth(theme().borderWidth()); 680 frame.window.setBorderWidth(theme().borderWidth());
682 frame.window.setBorderColor(theme().borderColor()); 681 frame.window.setBorderColor(theme().borderColor());
683 // did we actually use slit slots
684 if (num_windows == 0)
685 frame.window.hide();
686 else
687 frame.window.show();
688 682
689 Pixmap tmp = frame.pixmap; 683 Pixmap tmp = frame.pixmap;
690 FbTk::ImageControl &image_ctrl = screen().imageControl(); 684 FbTk::ImageControl &image_ctrl = screen().imageControl();
@@ -709,7 +703,14 @@ void Slit::reconfigure() {
709 } else { 703 } else {
710 frame.window.setAlpha(*m_rc_alpha); 704 frame.window.setAlpha(*m_rc_alpha);
711 } 705 }
712 clearWindow(); 706 // reposition clears the bg
707 reposition();
708
709 // did we actually use slit slots
710 if (num_windows == 0)
711 frame.window.hide();
712 else
713 frame.window.show();
713 714
714 int x = 0, y = 0; 715 int x = 0, y = 0;
715 height_inc = false; 716 height_inc = false;
@@ -908,7 +909,9 @@ void Slit::reposition() {
908 frame.window.moveResize(frame.x, frame.y, 909 frame.window.moveResize(frame.x, frame.y,
909 frame.width, frame.height); 910 frame.width, frame.height);
910 } 911 }
911 912 updateBackground(true);
913 if (*m_rc_alpha != 255)
914 clearWindow();
912} 915}
913 916
914 917
@@ -1343,6 +1346,7 @@ void Slit::updateAlpha() {
1343 frame.window.setOpaque(*m_rc_alpha); 1346 frame.window.setOpaque(*m_rc_alpha);
1344 } else { 1347 } else {
1345 frame.window.setAlpha(*m_rc_alpha); 1348 frame.window.setAlpha(*m_rc_alpha);
1349 updateBackground(true);
1346 clearWindow(); 1350 clearWindow();
1347 } 1351 }
1348} 1352}