1 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
5 #include "appwidget.hh"
6 #include "application.hh"
8 #include "renderstyle.hh"
16 AppWidget::AppWidget(Application *app, Direction direction, int bevel)
17 : Widget(app->screen(), app, direction, bevel),
22 // set WM Protocols on the window
24 protocols[0] = Property::atoms.wm_protocols;
25 protocols[1] = Property::atoms.wm_delete_window;
26 XSetWMProtocols(**display, window(), protocols, 2);
29 AppWidget::~AppWidget()
33 void AppWidget::show()
36 _application->_appwidget_count++;
40 void AppWidget::hide()
43 _application->_appwidget_count--;
47 void AppWidget::clientMessageHandler(const XClientMessageEvent &e)
49 EventHandler::clientMessageHandler(e);
50 if (e.message_type == Property::atoms.wm_protocols &&
51 static_cast<Atom>(e.data.l[0]) == Property::atoms.wm_delete_window)