diff options
author | Gediminas Liktaras <gliktaras@gmail.com> | 2011-10-20 07:41:25 (GMT) |
---|---|---|
committer | Mathias Gumz <mathias gumz at gmail com> | 2011-10-20 07:41:55 (GMT) |
commit | 12f44680dfefde602f3387c6d385f4c5e68990e4 (patch) | |
tree | a340aa064066988b6425009d961a3f971f3d3d4f /src/FbTk/FbWindow.hh | |
parent | b2b65dea7f766942f1a7a7e34b8815c5dbb996a8 (diff) | |
download | fluxbox_pavel-12f44680dfefde602f3387c6d385f4c5e68990e4.zip fluxbox_pavel-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.hh | 14 |
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 | |||
210 | private: | 216 | private: |
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 |