diff options
Diffstat (limited to 'src/gwin')
-rw-r--r-- | src/gwin/gwin_widget.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gwin/gwin_widget.c b/src/gwin/gwin_widget.c index 38c98903..2c186316 100644 --- a/src/gwin/gwin_widget.c +++ b/src/gwin/gwin_widget.c @@ -311,7 +311,7 @@ static void gwidgetEvent(void *param, GEvent *pe) { } void _gwidgetDrawFocusRect(GWidgetObject *gx, coord_t x, coord_t y, coord_t cx, coord_t cy) { - uint16_t i = 0; + uint16_t i; // Don't do anything if we don't have the focus if (&gx->g != _widgetInFocus) @@ -381,6 +381,11 @@ GHandle _gwidgetCreate(GDisplay *g, GWidgetObject *pgw, const GWidgetInit *pInit if (!(pgw = (GWidgetObject *)_gwindowCreate(g, &pgw->g, &pInit->g, &vmt->g, GWIN_FLG_WIDGET|GWIN_FLG_ENABLED|GWIN_FLG_SYSENABLED))) return 0; + #if GWIN_NEED_CONTAINERS + // This window can't be system enabled if the parent is not enabled + if (pgw->g.parent && !(pgw->g.parent->flags & GWIN_FLG_SYSENABLED)) + pgw->g.flags &= ~GWIN_FLG_SYSENABLED; + #endif pgw->text = pInit->text ? pInit->text : ""; pgw->fnDraw = pInit->customDraw ? pInit->customDraw : vmt->DefaultDraw; pgw->fnParam = pInit->customParam; |