[client] overlay: let the overlay know if it's in interactive mode

This also removes the need for the flags member as the overlay can just
opt to not render if it's not in interactive mode.
This commit is contained in:
Geoffrey McRae 2021-07-31 19:11:40 +10:00
parent c8dc037e94
commit 41c5688fca
2 changed files with 2 additions and 10 deletions

View File

@ -26,12 +26,6 @@
#include "common/types.h" #include "common/types.h"
enum LG_OverlayFlags
{
/* requires mouse interaction */
LG_OVERLAY_INTERACTIVE = (1U << 1U),
};
struct LG_OverlayOps struct LG_OverlayOps
{ {
/* internal name of the overlay for debugging */ /* internal name of the overlay for debugging */
@ -43,9 +37,6 @@ struct LG_OverlayOps
/* final free */ /* final free */
void (*free)(void * udata); void (*free)(void * udata);
/* general state flags, may be changed at any time */
enum LG_OverlayFlags flags;
/* perform the actual drawing/rendering /* perform the actual drawing/rendering
* *
* `interactive` is true if the application is currently in overlay interaction * `interactive` is true if the application is currently in overlay interaction

View File

@ -752,7 +752,8 @@ int app_renderOverlay(struct Rect * rects, int maxRects)
ll_walk(g_state.overlays, (void **)&overlay); ) ll_walk(g_state.overlays, (void **)&overlay); )
{ {
const int written = const int written =
overlay->ops->render(overlay->udata, false, buffer, MAX_OVERLAY_RECTS); overlay->ops->render(overlay->udata, g_state.overlayInput,
buffer, MAX_OVERLAY_RECTS);
for (int i = 0; i < written; ++i) for (int i = 0; i < written; ++i)
{ {