slit client mapping on restart, surplus menu redraw

This commit is contained in:
rathnor 2003-11-01 00:12:53 +00:00
parent 08089dd064
commit b6d5b558fe
4 changed files with 10 additions and 5 deletions

View file

@ -1,6 +1,8 @@
(Format: Year/Month/Day)
Changes for 0.9.6:
*03/10/31:
* Fix slit client map on restart and surplus menu redraw (Simon)
SlitClient.hh Slit.cc Menu.cc
* Fix textbutton text alignment (out by one) (Simon)
TextButton.cc
* Tweak some positioning for winbutton drawn icons (Simon)

View file

@ -22,7 +22,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
// $Id: Menu.cc,v 1.39 2003/10/06 09:55:36 rathnor Exp $
// $Id: Menu.cc,v 1.40 2003/11/01 00:12:53 rathnor Exp $
//use GNU extensions
#ifndef _GNU_SOURCE
@ -723,7 +723,6 @@ void Menu::drawSubmenu(unsigned int index) {
if (! item->submenu()->isVisible()) {
item->submenu()->show();
item->submenu()->raise();
item->submenu()->renderTransFrame();
}
item->submenu()->moving = moving;

View file

@ -22,7 +22,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
// $Id: Slit.cc,v 1.80 2003/08/30 01:01:47 fluxgen Exp $
// $Id: Slit.cc,v 1.81 2003/11/01 00:12:53 rathnor Exp $
#include "Slit.hh"
@ -968,7 +968,10 @@ void Slit::handleEvent(XEvent &event) {
configureRequestEvent(event.xconfigurerequest);
} else if (event.type == DestroyNotify) {
removeClient(event.xdestroywindow.window, false);
} else if (event.type == UnmapNotify) {
} else if (event.type == UnmapNotify && event.xany.send_event) {
// we ignore server-generated events, which can occur
// on restart. The ICCCM says that a client must send
// a synthetic event for the withdrawn state
removeClient(event.xunmap.window);
}
}

View file

@ -19,7 +19,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
// DEALINGS IN THE SOFTWARE.
// $Id: SlitClient.hh,v 1.1 2003/06/20 01:25:26 fluxgen Exp $
// $Id: SlitClient.hh,v 1.2 2003/11/01 00:12:53 rathnor Exp $
#ifndef SLITCLIENT_HH
#define SLITCLIENT_HH
@ -55,6 +55,7 @@ public:
void setWindow(Window win) { m_window = win; }
void move(int x, int y) { m_x = x; m_y = y; }
void resize(unsigned int width, unsigned int height) { m_width = width; m_height = height; }
void moveResize(int x, int y, unsigned int width, unsigned int height) { m_x = x; m_y = y; m_width = width; m_height = height; }
void hide();
void show();
void setVisible(bool value) { m_visible = value; }