diff options
Diffstat (limited to 'src/WinClient.cc')
-rw-r--r-- | src/WinClient.cc | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/WinClient.cc b/src/WinClient.cc index 77cc31f..95e027b 100644 --- a/src/WinClient.cc +++ b/src/WinClient.cc | |||
@@ -19,7 +19,7 @@ | |||
19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
20 | // DEALINGS IN THE SOFTWARE. | 20 | // DEALINGS IN THE SOFTWARE. |
21 | 21 | ||
22 | // $Id: WinClient.cc,v 1.8 2003/05/10 22:59:32 fluxgen Exp $ | 22 | // $Id: WinClient.cc,v 1.9 2003/05/14 12:07:06 fluxgen Exp $ |
23 | 23 | ||
24 | #include "WinClient.hh" | 24 | #include "WinClient.hh" |
25 | 25 | ||
@@ -56,13 +56,18 @@ WinClient::WinClient(Window win, FluxboxWindow &fbwin):FbTk::FbWindow(win), | |||
56 | m_win(&fbwin), | 56 | m_win(&fbwin), |
57 | modal(false), | 57 | modal(false), |
58 | m_title(""), m_icon_title(""), | 58 | m_title(""), m_icon_title(""), |
59 | m_diesig(*this) { } | 59 | m_diesig(*this), m_screen(fbwin.screen()) { } |
60 | 60 | ||
61 | WinClient::~WinClient() { | 61 | WinClient::~WinClient() { |
62 | #ifdef DEBUG | 62 | #ifdef DEBUG |
63 | cerr<<__FILE__<<"(~"<<__FUNCTION__<<")[this="<<this<<"]"<<endl; | 63 | cerr<<__FILE__<<"(~"<<__FUNCTION__<<")[this="<<this<<"]"<<endl; |
64 | #endif // DEBUG | 64 | #endif // DEBUG |
65 | 65 | ||
66 | FbTk::EventManager::instance()->remove(window()); | ||
67 | |||
68 | if (m_win != 0) | ||
69 | m_win->removeClient(*this); | ||
70 | |||
66 | // this takes care of any focus issues | 71 | // this takes care of any focus issues |
67 | m_diesig.notify(); | 72 | m_diesig.notify(); |
68 | 73 | ||
@@ -93,11 +98,7 @@ WinClient::~WinClient() { | |||
93 | if (window()) | 98 | if (window()) |
94 | fluxbox->removeWindowSearch(window()); | 99 | fluxbox->removeWindowSearch(window()); |
95 | 100 | ||
96 | if (m_win != 0) | ||
97 | m_win->removeClient(*this); | ||
98 | FbTk::EventManager::instance()->remove(window()); | ||
99 | m_win = 0; | 101 | m_win = 0; |
100 | |||
101 | } | 102 | } |
102 | 103 | ||
103 | void WinClient::updateRect(int x, int y, | 104 | void WinClient::updateRect(int x, int y, |