allocate transparent {WrapperWidget / JavaWidget} 0x0 and draw children in overflow area

This prevents overlay widgets from blocking touch events.

Androids ViewGroup.dispatchTouchEvent() loops over all children and only breaks if an eventhandler returns true. Gtk on the other hand stops at the first sensitive child. Even if the eventhandler returned false.
This commit is contained in:
Julian Winkler
2024-05-06 06:35:47 +02:00
parent 9fcec8b64c
commit f82af6ecb7
5 changed files with 70 additions and 4 deletions

View File

@@ -19,9 +19,14 @@ struct _AndroidLayout {
jobject view;
int width;
int height;
int real_width;
int real_height;
gboolean needs_allocation;
};
GtkLayoutManager *android_layout_new(jobject view);
void android_layout_set_params(AndroidLayout *layout, int width, int height);
void widget_set_needs_allocation(GtkWidget *widget);
#endif // ANDROID_LAYOUT_H