View: call onLayout() only on size change or on request

GTK always wants us to call gtk_widget_allocate() on all children, so we
need to do it manually when not calling onLayout().
This commit is contained in:
Julian Winkler
2025-03-01 15:14:25 +01:00
parent f0fcd47c80
commit b33a470c7b
3 changed files with 26 additions and 7 deletions

View File

@@ -134,7 +134,7 @@ void set_up_handle_cache(JNIEnv *env)
handle_cache.view.onTouchEvent = _METHOD(handle_cache.view.class, "onTouchEvent", "(Landroid/view/MotionEvent;)Z");
handle_cache.view.dispatchTouchEvent = _METHOD(handle_cache.view.class, "dispatchTouchEvent", "(Landroid/view/MotionEvent;)Z");
handle_cache.view.onInterceptTouchEvent = _METHOD(handle_cache.view.class, "onInterceptTouchEvent", "(Landroid/view/MotionEvent;)Z");
handle_cache.view.layoutInternal = _METHOD(handle_cache.view.class, "layoutInternal", "(II)V");
handle_cache.view.layoutInternal = _METHOD(handle_cache.view.class, "layoutInternal", "(II)Z");
handle_cache.view.measure = _METHOD(handle_cache.view.class, "measure", "(II)V");
handle_cache.view.performLongClick = _METHOD(handle_cache.view.class, "performLongClick", "(FF)Z");
handle_cache.view.getId = _METHOD(handle_cache.view.class, "getId", "()I");