Commit Graph

12118 Commits

Author SHA1 Message Date
Ian Bassi
27f2f2be62 Update help link for symmetric_infill_y_axis option (#12034)
Changed the help link for the 'symmetric_infill_y_axis' option from 'strength_settings_patterns#zig-zag' to 'strength_settings_infill#symmetric-infill-y-axis' to provide more accurate documentation.
2026-01-21 17:24:44 -03:00
Sabriel-Koh
5ce5e8df37 Refactor: move Printer dependencies data validation from Preset to Tab (#12026)
# Description
When creating a new filament preset and setting the Printer Dependencies to "All", the preset does not save this setting. This issue only occurs on creation due to code that is meant to validate the data to prevent a case where the filament is compatible with none of the printers.

EDIT: While I considered redoing the data validation for this tab overall, I have now preserved the original purpose of the code, which is to add the current printer as a compatible printer only if:
- the base preset is a System preset
- the user has not specified any compatible printers

Notably, this seems to be the cause of #11959 

Moving the data validation from `Preset::save_current_preset` to `Tab::save_preset` allows the Preset function to be simplified through removal of the current printer parameter.

# Screenshots/Recordings/Graphs
There is no visible change on the UI.

## Tests
Tested the following combinations of filament presets:
- System->new User
- User->new User
- User->same User

Tried to set them to All, where the System->new User should be the only case where this is replaced by a default.
In any case where there are printers already set, those settings should be kept.
2026-01-21 21:32:18 +08:00
Valerii Bokhan
9ed8848c9d Fix: The correct build plate is being selected in the UI on project loading (#11985)
# Description

Fixes: #11966

Fixed the build plate type setting during project load.

Implemented the code solution suggested by @kisslorand
2026-01-21 12:19:56 +08:00
Sabriel-Koh
c906075148 Fix: GCodeViewer displaying inconsistent data in title and body (#12014)
* Fix: GCodeViewer displaying inconsistent data in title and body

* Fix: remove actual flow info from GCodeViewer title

* Refactor: reduce repetition of N/A and headers
2026-01-21 00:32:52 +08:00
Ian Bassi
97c8da4d03 Fix \n not displayed (#11978) 2026-01-16 19:06:07 -03:00
Rodrigo Faselli
eac352f95d Non manifold edges calibration bug-fix (#11861)
* fix non manifold edges calib

Update Plater.cpp

* remove unused model

* Model Fix

Co-Authored-By: yw4z <yw4z@outlook.com>

---------

Co-authored-by: yw4z <yw4z@outlook.com>
2026-01-16 18:27:22 -03:00
tome9111991
d69620a716 Fix: Change filament for a specific object instance (#11963)
Fix: Crash when setting filament for object instance
2026-01-16 16:09:47 -03:00
tome9111991
cf54ad58ed Fix/blackcolor gcode preview (#11912)
* Fix dark color rendering in G-code preview by using additive specular lighting

* Revert "Fix dark color rendering in G-code preview by using additive specular lighting"

This reverts commit 2a65bc9060.

* Fix dark color rendering in G-code preview (Standard & ES shaders) by using additive specular lighting

* Fix dark color preview: Increase minimum brightness to 48/255 (~19%)

* Refactor: Revert to combined lighting calculation in shaders
2026-01-16 16:05:48 -03:00
Kiss Lorand
95c6cd05fa Fix incorrect layer and time shown in Preview legend for pause/custom G-code entries (#11968)
Fix layer/time display in Preview legend for pause/custom G-code

The Preview legend showed incorrect layer numbers and elapsed time for pause/custom G-code entries. The issue was caused by:

• get_layer_id_at() performing a strict upper_bound search on float Z values,  while custom G-code stores Z positions as doubles. Minor precision differences  often pushed the lookup to return layer 0 or the last layer.

• The legend displayed the raw zero-based layer index.

Fixes included:

• Fetch layer Z values as doubles and use an epsilon-based closest-layer search.
• Display layers as 1-based values for user-facing UI.
• Accumulate time up to the beginning of the identified layer.

This aligns the legend with the vertical slider marker and provides consistent pause/custom G-code reporting.
2026-01-16 14:20:17 -03:00
Kiss Lorand
304ea7867e QoL: Enable Enter key to confirm Clone dialog and run cloning action (#11422)
Enter key confirms Clone dialog

Co-authored-by: yw4z <ywsyildiz@gmail.com>
2026-01-16 01:25:29 +03:00
discip
b37f68d778 make Fuzzy skin options only available when Fuzzy skin is not disabled (#10312)
Mimicking the behavior of Ironing.

![demo](https://github.com/user-attachments/assets/443aa8c3-8b7c-4ab1-8445-4796185273d4)
2026-01-15 19:40:15 +08:00
Kiss Lorand
5c05e036c4 Fix: Apply bed–filament compatibility checks to all printers (#11432)
### What was the issue?

The check that validates whether a filament is compatible with the selected build plate type was only executed for Bambu Lab printers.
Other printers skipped this entirely, even though they can also use multiple plate types with different temperature requirements.

This caused cases where:
- incompatible filament/plate combinations went unnoticed,
- users received no warning even when the bed type clearly couldn’t support the selected filament.

### What’s changed?
- The validation block extends beyond BambuLab printers.
- Now all printers get the same compatibility check:
  - if a filament requires a bed temperature not supported by the chosen plate,
  - Orca shows the same clear error message as it does for BBL printers.
- Show the selected filament preset name (alias if present) in bed/filament mismatch warnings instead of substituting the parent preset.

### Why this helps
- Consistent behavior across all printer brands.
- Prevents invalid filament/plate setups that could cause print failures.
- Makes plate presets more robust and predictable for custom and community printers.

### Notes
- No behavior changes for BBL printers — they keep the existing checks.
- Other printers now benefit from them too.
2026-01-15 19:02:58 +08:00
SoftFever
9b8f3e2662 Fix multi-tool printer filament UI issue (#11957) 2026-01-15 11:09:28 +08:00
Ian Bassi
f18854fb14 Update Wiki Guide hyperlink in StepMeshDialog (#11945)
Changed the URL for the Wiki Guide hyperlink to point to the updated 'prepare_stl_transformation' page instead of 'stl-transformation'.
2026-01-13 23:55:26 +08:00
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
Kiss Lorand
b74335e15e Fix UTF-8 corruption in Custom G-code editor (°C and other Unicode characters) (#11521)
This PR fixes an issue where certain characters (for example the degree symbol ° used in °C) became corrupted after opening and saving the Custom G-code editor multiple times.

#### What was the problem?

When users added symbols like ° inside Start/End G-code, the editor would show them correctly the first time, but after reopening the dialog a few times the text would slowly change into strange characters.

#### How to reproduce

- Open any Custom G-code field
- Add a line containing °C
- Save the dialog
- Reopen it several times
- The text begins to change into unreadable characters

#### What this PR changes

The Custom G-code editor now properly loads and saves text that contains symbols such as °, so these characters stay exactly as the user typed them. This keeps Custom G-code stable across editing sessions and prevents slow corruption of Unicode characters.

#### Result

- °C and similar symbols remain correct
- No more “weird characters” appearing after multiple reopen/save cycles
- Custom G-code is preserved accurately

Fixes #11502
2026-01-09 21:25:48 +08:00
Kiss Lorand
0a9cab3991 Fix: remove extra padding from GCode window (#11871) 2026-01-09 09:02:09 +00:00
SoftFever
779f4a890d QoL: improve gcode marker (#11881)
QoL: Improve gcode marker
2026-01-09 11:52:30 +08:00
SoftFever
2486bdfbce Remove range checks for bed_exclude_area and never used printable_area checks 2026-01-08 20:35:42 +08:00
SoftFever
3b4600d65b fix some minor issues 2026-01-06 18:19:50 +08:00
SoftFever
39df09be8b fix build errors 2026-01-06 16:31:54 +08:00
SoftFever
1b355be432 Merge branch 'main' into libvgcode 2026-01-06 11:09:09 +08:00
SoftFever
b908c33eea Improve hot reload plugin 2026-01-05 23:29:28 +08:00
SoftFever
01f5c4caaa Fix an error that AppConfig::save is called from non main thread 2026-01-05 23:29:28 +08:00
SoftFever
541f3bb93b Merge branch 'main' into feat/configurable-bambu-network-lib 2026-01-05 08:39:21 +08:00
Maciej Wilczyński
1b782d82bc Fix fresh install issues 2026-01-04 15:25:44 +01:00
Rodrigo Faselli
0c5f6c9865 🧹Fix some compile warnings (#10158)
Fix  some compile warnings
<img width="1489" height="1161" alt="image" src="https://github.com/user-attachments/assets/da2d592f-b6d5-4706-9c97-ec6a0da4292f" />
2026-01-04 14:16:30 +08:00
yw4z
0bee82cee5 Hyperlink class (#9947)
### FIXES
• 3mf file version check dialog opens bambu releases page instead Orca

### CODE COMPARISON

<img width="112" height="36" alt="Screenshot-20251128125737" src="https://github.com/user-attachments/assets/73718a18-8159-43d5-bb80-0eb90d59a8f6" />

**wxHyperlinkCtrl**
• System decides what colors to use. so blue color is visible even with colors set
• No need to use SetCursor()
```
auto wiki_url = "https://github.com/OrcaSlicer/OrcaSlicer/wiki/Built-in-placeholders-variables";
wxHyperlinkCtrl* wiki = new wxHyperlinkCtrl(this, wxID_ANY, _L("Wiki Guide"), wiki_url);
wiki->SetToolTip(wiki_url); // required to showing navigation point to user
wiki->SetFont(Label::Body_14); // not works properly
wiki->SetVisitedColour(wxColour("#009687")); // not works properly
wiki->SetHoverColour(  wxColour("#26A69A")); // not works properly
wiki->SetNormalColour( wxColour("#009687")); // not works properly
```

<img width="132" height="39" alt="Screenshot-20251128125847" src="https://github.com/user-attachments/assets/f6818dc0-5078-498a-bf09-1fd36e81ebe5" />

**wxStaticText**
• Works reliably on colors and fonts
• All event has to defined manually
```
wxStaticText* wiki = new wxStaticText(this, wxID_ANY, _L("Wiki Guide"));
auto wiki_url = "https://github.com/OrcaSlicer/OrcaSlicer/wiki/Built-in-placeholders-variables";
wiki->SetToolTip(wiki_url); // required to showing navigation point to user
wiki->SetForegroundColour(wxColour("#009687"));
wiki->SetCursor(wxCURSOR_HAND);
wxFont font = Label::Body_14;
font.SetUnderlined(true);
wiki->SetFont(font);
wiki->Bind(wxEVT_LEFT_DOWN   ,[this, wiki_url](wxMouseEvent e) {wxLaunchDefaultBrowser(wiki_url);});
wiki->Bind(wxEVT_ENTER_WINDOW,[this, wiki    ](wxMouseEvent e) {SetForegroundColour(wxColour("#26A69A"));});
wiki->Bind(wxEVT_LEAVE_WINDOW,[this, wiki    ](wxMouseEvent e) {SetForegroundColour(wxColour("#009687"));});
```

<img width="132" height="39" alt="Screenshot-20251128125847" src="https://github.com/user-attachments/assets/f6818dc0-5078-498a-bf09-1fd36e81ebe5" />

**HyperLink**
• Fully automated and single line solution
• Colors can be controllable from one place
• Works reliably on colors and fonts
• Reduces duplicate code
```
HyperLink* wiki = new HyperLink(this, _L("Wiki Guide"), "https://github.com/OrcaSlicer/OrcaSlicer/wiki/Built-in-placeholders-variables");
wiki->SetFont(Label::Body_14) // OPTIONAL default is Label::Body_14;
```


### CHANGES
• Unifies all hyperlinks with same style and makes them controllable from one place
• Replaces all wxHyperlink with simple custom class. Problem with wxHyperlink it mostly rendered as blue even color set
• Reduces duplicate code
• Adds wiki links for calibration dialogs
• Probably will add "Wiki Guide" to more dialogs overtime

<img width="349" height="238" alt="Screenshot-20251127212007" src="https://github.com/user-attachments/assets/69da2732-ea35-44de-8ebc-97a01f86328f" />

<img width="355" height="459" alt="Screenshot-20251127212021" src="https://github.com/user-attachments/assets/c0df40f8-c15d-47fa-b31a-cf8d8b337472" />

<img width="442" height="382" alt="Screenshot-20251127212046" src="https://github.com/user-attachments/assets/5d94242b-6364-4b0a-8b2f-a1f482199bd1" />

<img width="225" height="241" alt="Screenshot-20250824171339" src="https://github.com/user-attachments/assets/39ca6af3-6f8a-42ee-bf1d-c13d0f54bb63" />

<img width="442" height="639" alt="Screenshot-20251127212403" src="https://github.com/user-attachments/assets/c1c580f8-3e1b-42f0-aa8e-bac41c2ff76b" />

<img width="476" height="286" alt="Screenshot-20251127212515" src="https://github.com/user-attachments/assets/28b130ce-c7c0-4ada-9842-ff7154c00c21" />

<img width="1460" height="245" alt="Screenshot-20251127212541" src="https://github.com/user-attachments/assets/3fca2649-9cd3-4aea-9153-b2f508fdfefe" />

<img width="401" height="291" alt="Screenshot-20251127213243" src="https://github.com/user-attachments/assets/82b4ec1f-6074-4018-9efa-a1b6b819ae28" />
2026-01-03 23:06:57 +08:00
Dipl.-Ing. Raoul Rubien, BSc
bed3cf154a Fixes 11 Compiler Warnings (#10753)
* fixes: wxTimerEvent not supposed to be created by user code [-Wdeprecated-declarations]

* use wxTimerEvent instead of wxCommandEvent.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-01-03 16:30:14 +08:00
SoftFever
d1f4e8abe1 New OrcaSlicer wiki URL (#11800) 2026-01-02 10:04:56 +08:00
Ioannis Giannakas
263b592885 Revert "Fix float number not working properly for option min/max" (#11794)
Revert "Fix float number not working properly for option min/max (#11211)"

This reverts commit 69861b57f9.
2025-12-31 22:37:58 +00:00
Noisyfox
69861b57f9 Fix float number not working properly for option min/max (#11211)
* ConfigOptionDef: min/max values type are changed from INT to FLOAT.

(cherry picked from commit f277bc80c22e0c9a067481a4301922e2c96aed47)

* Fix infinite loop and crash when `fuzzy_skin_point_distance` = 0 (SoftFever/OrcaSlicer#11069)

* Fix Linux build issue

* Fix float comparison due to precision loss
2025-12-31 21:23:46 +00:00
yw4z
0330e86007 Introduce canvas menu (#11618)
* init

* update

* Update GLCanvas3D.cpp

* Update GLCanvas3D.cpp

* cleanup

* fix icon size

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-12-31 00:02:48 +08:00
yw4z
e8af78d032 Custom grouping options for user filament presets (All, None, By Vendor, By Type) (#11681)
* Update PresetComboBoxes.cpp

* add option on preferences

* simplify changes

* update

* Update PresetComboBoxes.cpp

* Update PresetComboBoxes.cpp

* support lowercase on sorting non submenu list

* minor changes

---------

Co-authored-by: Ioannis Giannakas <59056762+igiannakas@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-12-29 23:37:36 +08:00
Kiss Lorand
3dc80593bd Brim: optionally generate brim from Elephant Foot Compensation outline (#11760)
* Brim can follow EFC outline

* Optimization

* Update Spanish EFC brim description

Adopt reviewer-proposed wording from RF47.

Co-authored-by: RF47 <RF47@users.noreply.github.com>

* Tag Orca specific changes

Tag Orca specific changes vs. Bambu using the comment //ORCA: . This helps when reviewing merge commits from upstream Bambu so we don't end up causing regressions when pulling in commits from upstream

* Tooltip update

---------

Co-authored-by: RF47 <RF47@users.noreply.github.com>
Co-authored-by: Ioannis Giannakas <59056762+igiannakas@users.noreply.github.com>
2025-12-29 09:35:44 +08:00
SoftFever
0e5a816318 Migrate legacy networking configuration to new network plugin versioning system. Remove legacy networking setting and update related GUI components to reflect the changes. Implement auto-migration for legacy libraries to ensure compatibility with the new versioning scheme. 2025-12-28 19:57:08 +08:00
SoftFever
5f18efa9e2 Merge branch 'main' into feat/configurable-bambu-network-lib 2025-12-27 23:40:35 +08:00
Ioannis Giannakas
2026a0cf0c Fix defaulting to filament preview when multiple tools are available but only 1 is used (#11734) 2025-12-24 14:50:48 +02:00
Ioannis Giannakas
2a0cfdb356 Fill Adaptive disconnecting from walls at low density. Disable rotation as infill type does not support it (#11728)
Fix adaptive fill issues
- Disconnecting from walls at low density
- Not supporting rotation

Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
2025-12-24 12:26:50 +02:00
Rodrigo Faselli
506fde8f86 Clipper 2 multiline Infill (#11435)
* Grid non-crossing for multiline

cleaning

Replaced negative offset logic with surface contraction to reduce overlap with perimeters.

center the infill

filltriangles

update triangles

preallocate memory

Update FillRectilinear.cpp

Update FillRectilinear.cpp

overlapp adjustment

Fix Crash

Update FillRectilinear.cpp

density tunning

density tunning

fine tunning

reserve polilines

Grid non-crossing for multiline

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
Co-Authored-By: discip <53649486+discip@users.noreply.github.com>

* Improve multiline fill offset and polyline closure

Changed offset type from jtRound to jtMiter in multiline_fill for better geometry. Updated polyline conversion to require at least 3 points and ensured polylines are closed if not already. Updated FillGyroid, FillTpmsD, and FillTpmsFK to pass the 'close' argument to multiline_fill.

cleaning

FillAdaptive Noncross

Only use clipper if worth it

safeguard

fix overlap

Update FillRectilinear.cpp

FilllRectilineal multiline clipper

Update FillRectilinear.cpp

FilllRectilineal multiline clipper

Update FillRectilinear.cpp

Update FillRectilinear.cpp

fix 3d honeycomb

Simplify polylines

Update FillBase.cpp

Update FillBase.cpp

cleaning

Improved Multiline Function

This ensures `multiline_fill()` will correctly generate multiline infill with
closed loop polylines if the input infill line is a closedloop polyline. This
ensures that the multiline infill doesn't have little gaps or overlaps at the
"closed point" of the original infill line.

This changes how the tangent is calculated for the first and last points in a
polyline if the first and last points are the same, making it a closed loop.
Instead of just using the first or last line segment, it uses the line segment
between the points before the last point and after the first point, the same
way that all the other poly-line mid points are handled.

It also uses eigen vector operations to calculate the points instead of
explicitly calculating the x and y values. This is probably faster, and if not
then it is at least more concise.

Hibrid Multiline Function

Update FillRectilinear.cpp

Update FillRectilinear.cpp

Update FillRectilinear.cpp

Update FillRectilinear.cpp

clipperutils multiline hibrido

Update FillBase.cpp

Update FillBase.cpp

Update FillBase.cpp

multiline hibrido

arc tolerance

multiline con union

Update FillBase.cpp

Update FillBase.cpp

Update FillBase.cpp

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
Co-Authored-By: Donovan Baarda <dbaarda@gmail.com>

* Switch multiline offset logic to Clipper2

Replaces Clipper-based multiline offset logic in FillBase.cpp with Clipper2, using InflatePaths and Union for offsetting and merging. Adds new conversion utilities in Clipper2Utils for handling Paths64 to Polygons/Polylines and updates headers accordingly.

* Refactor multiline_fill to always use Clipper2 logic

Removed the 'use_clipper' parameter from multiline_fill and updated all callers to use the new signature. The function now consistently applies Clipper2-based offset logic for multiline infill, simplifying the code and ensuring uniform behavior across fill patterns.

* Change offset join type to Round in multiline_fill

Replaces the Miter join type with Round in the InflatePaths call within multiline_fill. For smotther print travels.

* Increase max infill multiline to 10

Raised the maximum allowed value for the 'Fill Multiline' infill parameter from 5 to 10 to support more lines in infill patterns.

* Refactor multiline_fill to optimize offset logic

Replaces manual conversion of polylines to Clipper2 paths with Slic3rPolylines_to_Paths64 and filters short paths using std::remove_if. Uses ClipperOffset for path inflation and streamlines merging and conversion to polylines, improving performance and code clarity.

* half iteration because is bucle

* Funciona 1

Refactored the multiline_fill function to streamline the insertion of center lines by directly checking for odd line counts and removing redundant logic. This improves code clarity and reduces unnecessary checks.

* Refactor multiline_fill for improved offset logic

Reworked the multiline_fill function to simplify and clarify the logic for generating multiple offset lines. The new implementation computes offsets more explicitly for odd and even cases, creates a fresh ClipperOffset for each band, and improves conversion between Clipper2 paths and polylines. This enhances maintainability and correctness of the multiline fill generation.

* Quartercubic multiline

* fillplanePath

fix bounding box

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

* fillconcentric multiline

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

* Update FillBase.hpp

* cleaning

* Refactor multiline_fill to clean polylines and reuse offsetter

Invalid polylines with less than two points are now removed before processing. The ClipperOffset object is created once and reused for each offset, improving efficiency and code clarity.

trigger build

* Optimize Filltrapezoidal

Refactored the trapezoidal fill pattern generation to precompute base row templates and reuse them with vertical translation, reducing redundant computations and improving code clarity. This change enhances performance and maintainability by avoiding repeated construction of row patterns within loops.

* Replace push_back with emplace_back for Polyline points

Updated Polyline point insertion from push_back to emplace_back for efficiency and clarity. Also refactored row copying logic to avoid in-place modification, improving code readability and safety.

* Update FillRectilinear.cpp

* Reserve space for poliline points

* Union not needed

* Update FillRectilinear.cpp

* unused functions

* compactado

Update FillRectilinear.cpp

* Adjust minimum rows for better performance

* Update FillRectilinear.cpp

---------

Co-authored-by: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
Co-authored-by: discip <53649486+discip@users.noreply.github.com>
Co-authored-by: Donovan Baarda <dbaarda@gmail.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2025-12-23 22:53:09 +02:00
discip
a240478c30 make support speed visible independent of support state (#10916) 2025-12-23 22:43:14 +02:00
Kiss Lorand
b1d659bad5 FIX: Refresh filament setting overrides on preset change (#11712)
Refresh filament setting overrides on preset change

The filament “Setting Overrides” page derives its UI state from multiple configs
(filament, printer, process), but this derived state was not recomputed during
preset reloads.

As a result, override widgets could reflect stale values until the page was
revisited or a user interaction triggered an update.

Recompute the filament setting overrides as part of TabFilament::reload_config(),
keeping the derived UI in sync with the active preset immediately after reload.
2025-12-23 19:06:29 +02:00
yw4z
7fa6175b4f Compact Printer Selection UI - part 3 (#11676)
* init

* Update ImageDPIFrame.cpp

* Update Plater.cpp

* update

* update

* Update PresetBundle.cpp

* ensure 0.25 returned as 0.25 instead 0.2

* Merge branch 'main' into compact-printer-selection-UI-part-3

* Merge branch 'main' into compact-printer-selection-UI-part-3

* Merge branch 'main' into compact-printer-selection-UI-part-3
2025-12-23 01:30:03 +08:00
Ocraftyone
9092389ef9 Show printer bed based on BBL vendor, not network (#11610)
* Show printer bed based on BBL vendor not network

* add comment

---------

Co-authored-by: Ioannis Giannakas <59056762+igiannakas@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-12-23 00:54:54 +08:00
Kiss Lorand
ace2bd1349 FIX: Embossed text edit not reflected in Objects list (#11692)
Fix object list name refresh after emboss edits

Refresh the object list immediately after embossed text name changes so the displayed name stays in sync.
2025-12-22 18:23:41 +02:00
Kiss Lorand
b2a2b71b92 Fix filament preset undo tracking (#11693)
Fix filament preset undo/dirty tracking to match Bambu behavior

Use deep compare for filament presets so vector options report #idx keys.
Align undo/dirty mapping with indexed fields and Bambu’s filter_diff_option.
Pass explicit indices for filament override fields.
Add missing filament variant keys (retract lift bounds, ironing overrides) to filament_options_with_variant so per‑filament undo works.
2025-12-22 18:18:41 +02:00
Noisyfox
e69daea3c3 Fix filament override checkbox not update after click (#11517)
* Fix filament override checkbox not update after click

* Event args should be references otherwise `e.skip()` won't work

* Fix bool option override
2025-12-22 18:17:32 +02:00
Kiss Lorand
8e9daad2e8 Fix: Misaligned undo icons across all field types (#11431)
Align undo icons
2025-12-22 17:47:15 +02:00
SoftFever
11c9794faa Merge branch 'main' into feat/configurable-bambu-network-lib 2025-12-19 22:18:19 +08:00
yw4z
380ea7e2e8 Fix fill bed and disable arranging after adding / removing instances (#11619) 2025-12-19 08:32:14 +00:00