This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch reproducible-widget-previews
in repository efl.
View the commit online.
commit 139cf90bf070b947328cdbe34cf16fe763081c91
Author: Cedric BAIL <[email protected]>
AuthorDate: Mon Mar 30 16:34:44 2026 -0600
fix(panes): save split ratio before theme reload to prevent reset
The split ratio in elm_panes is stored only as an Edje drag value on
the "elm.bar" part. When _efl_ui_panes_efl_ui_widget_theme_apply()
calls efl_ui_widget_theme_apply(efl_super(...)), the Edje object is
reloaded and all drag values reset to their theme defaults (0.0).
The code was reading the ratio back AFTER this reset, capturing 0.0
instead of the actual proportion, then writing 0.0 back — destroying
the user's split position on every theme recalculation.
Move the elm_panes_content_left_size_get() call to before the super
theme_apply, matching the correct pattern already used in
_efl_ui_panes_efl_ui_layout_orientable_orientation_set().
---
src/lib/elementary/efl_ui_panes.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/lib/elementary/efl_ui_panes.c b/src/lib/elementary/efl_ui_panes.c
index 1b2c765ee1..27a869c155 100644
--- a/src/lib/elementary/efl_ui_panes.c
+++ b/src/lib/elementary/efl_ui_panes.c
@@ -131,11 +131,14 @@ _efl_ui_panes_efl_ui_widget_theme_apply(Eo *obj, Efl_Ui_Panes_Data *sd)
elm_coords_finger_size_adjust(1, &minw, 1, &minh);
efl_gfx_hint_size_min_set(sd->event, EINA_SIZE2D(minw, minh));
+ /* Save the current split ratio BEFORE calling the super theme_apply,
+ * which reloads the Edje object and resets all drag values to their
+ * theme defaults (typically 0.0). */
+ size = elm_panes_content_left_size_get(obj);
+
int_ret = efl_ui_widget_theme_apply(efl_super(obj, MY_CLASS));
if (int_ret == EFL_UI_THEME_APPLY_ERROR_GENERIC) return int_ret;
- size = elm_panes_content_left_size_get(obj);
-
if (sd->fixed)
{
if (elm_widget_is_legacy(obj))
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.