aboutsummaryrefslogtreecommitdiff
path: root/src/FbTk/FbWindow.hh
diff options
context:
space:
mode:
authorGediminas Liktaras <gliktaras@gmail.com>2011-10-20 07:41:25 (GMT)
committerMathias Gumz <mathias gumz at gmail com>2011-10-20 07:41:55 (GMT)
commit12f44680dfefde602f3387c6d385f4c5e68990e4 (patch)
treea340aa064066988b6425009d961a3f971f3d3d4f /src/FbTk/FbWindow.hh
parentb2b65dea7f766942f1a7a7e34b8815c5dbb996a8 (diff)
downloadfluxbox-12f44680dfefde602f3387c6d385f4c5e68990e4.zip
fluxbox-12f44680dfefde602f3387c6d385f4c5e68990e4.tar.bz2
Added support for ARGB visual, patch #3284774
fluxbox now properly displays windows that require ARGB visuals when an external compositor is running. This was done by creating the container window with the correct visual and colormap when needed. Closes #2874629
Diffstat (limited to 'src/FbTk/FbWindow.hh')
-rw-r--r--src/FbTk/FbWindow.hh14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/FbTk/FbWindow.hh b/src/FbTk/FbWindow.hh
index 6f6a558..e03083c 100644
--- a/src/FbTk/FbWindow.hh
+++ b/src/FbTk/FbWindow.hh
@@ -57,7 +57,9 @@ public:
57 bool overrride_redirect = false, 57 bool overrride_redirect = false,
58 bool save_unders = false, 58 bool save_unders = false,
59 unsigned int depth = CopyFromParent, 59 unsigned int depth = CopyFromParent,
60 int class_type = InputOutput); 60 int class_type = InputOutput,
61 Visual *visual = CopyFromParent,
62 Colormap cmap = CopyFromParent);
61 63
62 FbWindow(const FbWindow &parent, 64 FbWindow(const FbWindow &parent,
63 int x, int y, 65 int x, int y,
@@ -66,7 +68,9 @@ public:
66 bool overrride_redirect = false, 68 bool overrride_redirect = false,
67 bool save_unders = false, 69 bool save_unders = false,
68 unsigned int depth = CopyFromParent, 70 unsigned int depth = CopyFromParent,
69 int class_type = InputOutput); 71 int class_type = InputOutput,
72 Visual *visual = CopyFromParent,
73 Colormap cmap = CopyFromParent);
70 74
71 virtual ~FbWindow(); 75 virtual ~FbWindow();
72 virtual void setBackgroundColor(const FbTk::Color &bg_color); 76 virtual void setBackgroundColor(const FbTk::Color &bg_color);
@@ -207,6 +211,8 @@ protected:
207 /// creates a window with x window client (m_window = client) 211 /// creates a window with x window client (m_window = client)
208 explicit FbWindow(Window client); 212 explicit FbWindow(Window client);
209 213
214 void setDepth(unsigned int depth) { m_depth = depth; }
215
210private: 216private:
211 /// sets new X window and destroys old 217 /// sets new X window and destroys old
212 void setNew(Window win); 218 void setNew(Window win);
@@ -216,7 +222,9 @@ private:
216 bool override_redirect, 222 bool override_redirect,
217 bool save_unders, 223 bool save_unders,
218 unsigned int depth, 224 unsigned int depth,
219 int class_type); 225 int class_type,
226 Visual *visual,
227 Colormap cmap);
220 228
221 const FbWindow *m_parent; ///< parent FbWindow 229 const FbWindow *m_parent; ///< parent FbWindow
222 int m_screen_num; ///< screen num on which this window exist 230 int m_screen_num; ///< screen num on which this window exist