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:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user