1
0
mirror of https://github.com/gryf/wmaker.git synced 2026-01-07 14:24:14 +01:00

fixed redraw problem when frame title changes

This commit is contained in:
kojima
2000-06-09 02:15:38 +00:00
parent 983e154118
commit ebf002b8d5

View File

@@ -24,6 +24,7 @@ typedef struct W_Frame {
static void destroyFrame(Frame *fPtr);
static void paintFrame(Frame *fPtr);
static void repaintFrame(Frame *fPtr);
@@ -31,9 +32,9 @@ void
WMSetFrameTitlePosition(WMFrame *fPtr, WMTitlePosition position)
{
fPtr->flags.titlePosition = position;
if (fPtr->view->flags.realized) {
paintFrame(fPtr);
if (fPtr->view->flags.realized) {
repaintFrame(fPtr);
}
}
@@ -44,7 +45,7 @@ WMSetFrameRelief(WMFrame *fPtr, WMReliefType relief)
fPtr->flags.relief = relief;
if (fPtr->view->flags.realized) {
paintFrame(fPtr);
repaintFrame(fPtr);
}
}
@@ -60,11 +61,22 @@ WMSetFrameTitle(WMFrame *fPtr, char *title)
fPtr->caption = NULL;
if (fPtr->view->flags.realized) {
paintFrame(fPtr);
repaintFrame(fPtr);
}
}
static void
repaintFrame(Frame *fPtr)
{
W_View *view = fPtr->view;
W_Screen *scrPtr = view->screen;
XClearWindow(scrPtr->display, view->window);
paintFrame(fPtr);
}
static void
paintFrame(Frame *fPtr)
{
@@ -137,9 +149,6 @@ paintFrame(Frame *fPtr)
drawTitle = False;
}
/* XClearArea(scrPtr->display, view->window, x, y, width, height, False);
*/
{
XRectangle rect;
Region region, tmp;