summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormvglasow <michael -at- vonglasow.com>2016-02-01 16:21:08 +0100
committermvglasow <michael -at- vonglasow.com>2016-02-02 09:58:31 +0100
commit05ae2e9eb5292f0089d5d09435f46efdc649ad20 (patch)
treeb59ade1ddbc2c22c674ee8561d08fe556613cf98
parent240555fb0da23a5014a2ab90ccb9bf47c49b3c5f (diff)
downloadnavit-05ae2e9eb5292f0089d5d09435f46efdc649ad20.tar.gz
Fix:gui_internal:Correctly handle fullscreen toggle on Android API 17+
Signed-off-by: mvglasow <michael -at- vonglasow.com>
-rw-r--r--navit/gui/internal/gui_internal.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/navit/gui/internal/gui_internal.c b/navit/gui/internal/gui_internal.c
index 3affd52e4..08066cbc4 100644
--- a/navit/gui/internal/gui_internal.c
+++ b/navit/gui/internal/gui_internal.c
@@ -2668,6 +2668,12 @@ static void gui_internal_resize(void *data, int w, int h)
this->root.h=h;
changed=1;
}
+ /*
+ * If we're drawing behind system bars on Android, watching for actual size changes will not catch
+ * fullscreen toggle events. As a workaround, always assume a size change if padding is supplied.
+ */
+ if (!changed && this->gra && graphics_get_data(this->gra, "padding"))
+ changed = 1;
dbg(lvl_debug,"w=%d h=%d children=%p\n", w, h, this->root.children);
navit_handle_resize(this->nav, w, h);
if (this->root.children) {