Files
OrcaSlicer/src/slic3r/GUI/Widgets
bdunks 9561b9e8c0 Fix Gtk-CRITICAL assertions creating noise and occasional lag in Linux/GTK (#11897)
* Fix Gtk-Critical assertion in PresetComboBoxes

Resolve the `gtk_cell_layout_get_cells: assertion GTK_IS_CELL_LAYOUT
failed` error by switching from `gtk_cell_layout_get_cells()` to
`gtk_container_get_children()` with direct PangoLayout ellipsization
on GtkEntry widgets.

Picked from PrusaSlicer:
https://github.com/prusa3d/PrusaSlicer/commit/e855ab5d

* Add defensive guards for GTK widget sizing

Fix Gtk-CRITICAL assertions in TextInput and DropDown widgets that
occur when the widget attempt relative sizing against window size
before GTK completes the window layout.

Changes include:
- TextInput.cpp: Clamp textSize.x >= -1 to prevent
  `gtk_widget_set_size_request` failures.
  - Picked from Prusa Slicer:
    https://github.com/prusa3d/PrusaSlicer/commit/e855ab5d
- DropDown.cpp: Guard against zero/negative dimensions during early
  initialization:
  - Prevent szContent.x = 0 when parent size is unavailable.
    - Unique to OrcaSlicer
    - Triggers during initializing DesignerPanel --> BasicInfo -->
      License DropDown before a parent size is available.
    - Latent bug exists in Bambu Studio, but Bambu does not have
      License field enabled on this panel.
    - Created global guard for future resilience.
  - Clamp szContent.y >= 1 for dropdowns before content initialized.
    - Bug exists in BambuStudio
    - Prusa did not implement the "ENH: ComboBox Second DropDown"
2026-01-13 21:13:51 +08:00
..
2025-10-02 09:30:48 +08:00
2025-12-18 12:17:29 +00:00
2025-10-28 15:29:47 +08:00
2025-10-28 15:30:05 +08:00
2025-10-28 15:30:05 +08:00
2025-10-28 15:29:53 +08:00
2025-09-28 17:10:55 +08:00
2025-10-03 22:18:33 +08:00
2026-01-03 23:06:57 +08:00
2026-01-03 23:06:57 +08:00
2025-10-05 21:45:49 +08:00
2025-10-28 15:30:02 +08:00
2025-10-28 15:30:02 +08:00
2025-09-18 16:43:58 +08:00
2026-01-03 23:06:57 +08:00
2026-01-03 23:06:57 +08:00
2025-10-28 15:29:56 +08:00
2025-10-05 21:45:49 +08:00
2025-10-05 14:26:19 +08:00
2025-09-28 11:35:44 +08:00