Commit graph

28141 commits

Author SHA1 Message Date
π²
bc80b3d64e
Update OptionsGroup.cpp 2025-12-19 03:21:46 +03:00
Ioannis Giannakas
0e1c11a9c8
Merge branch 'main' into Sort-infill-parameters-by-it's-dominant 2025-12-18 12:39:29 +00:00
John Brady
2be0f0e05e
Correct Typo (#11472)
* Correct Typo

* Fix the OrcaSlicer_en.po file

* Update OrcaSlicer.pot to revert the change in this auto generated file
2025-12-18 12:38:59 +00:00
Noisyfox
7f36a02f37
Fix cut memory leak (#11476) 2025-12-18 12:37:13 +00:00
Ian Bassi
c126aae902
PA Calib Values check (#11493)
* Add input validation for acceleration and speed values

Added a check to ensure that acceleration values are greater than speed values in the PA calibration dialog. Displays a warning message and prevents calibration if the inputs are invalid to guard against swapped or incorrect user entries.

* Add input validation for calibration parameters
2025-12-18 12:36:10 +00:00
Kiss Lorand
f9d5519294
Scale emulated spiral Z-hop segments based on slicing resolution (#11556)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
Spiral Z-Hop resolution

Use slicing resolution to determine segment count for emulated spiral Z-hop

What’s changed

The number of linear segments used to approximate a spiral Z-hop is now derived from the PrintConfig resolution value.

The segment count is clamped to a safe range (4–24) to avoid excessive G-code generation or MCU queue overflow.

Why

Previously a fixed 24 segments were always used, regardless of model resolution.

For small-radius spiral lifts this was excessive and could overwhelm some printers.

Adapting segment count to resolution ensures smooth motion where needed, but lighter G-code where possible.

Details

m_resolution is now stored via apply_print_config().

_spiral_travel_to_z() uses this value to compute segment count dynamically.

Only the linear-segment fallback path is affected; G2/G3 arc-fitting remains unchanged.
2025-12-18 12:30:41 +00:00
Ian Bassi
0e6fc7a92b
Add Cali Cat handy model (#11663)
Added the Cali Cat STL file to handy models and updated the GUI to include 'Cali Cat' as a selectable option in the handy model submenu.

Co-authored-by: davidzhen <3886830+davidzhen@users.noreply.github.com>
2025-12-18 12:25:59 +00:00
yw4z
22d2fe9b37
UI fixes / improvements (#11617)
* fix margins on titlebar fold

* update

* Update Plater.cpp

* update

* Update toolbar_double_directional_arrow.svg

* Update toolbar_double_directional_arrow.svg

* object list variable height icon

* Update tab_multi_active.svg

* update ams icons

* match popup border color

* Update param_advanced.svg

* Update custom-gcode_advanced.svg

* match label & parameter box width on object table

* revert changes for orange colors

* match sizes of radio buttons on widgets

* Update GLGizmoSVG.cpp
2025-12-18 12:17:29 +00:00
yw4z
00ff06a5d3
Match button styles on whole UI and fixes for button class (#11233)
* init

* web buttons

* Bind Dialog & Fix states

* update

* update

* Update common.css

* objcolordialog

* privacy update dialog

* Update CaliHistoryDialog.cpp

* Update MultiMachineManagerPage.cpp

* Update AMSControl.cpp

* TipsDialog

* Update AMSMaterialsSetting.cpp

* extrusion calibration

* Update UpdateDialogs.cpp

* recenterdialog

* update

* Update Calibration.cpp

* update

* update

* update

* fix

* update

* ReleaseNote

* update

* update

* fix remember checkbox position

* add comments
2025-12-18 12:14:56 +00:00
Ian Bassi
59ad126b48
Fix: Replace with STL to Replace with 3D file: Support STEP (#11637)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
* Replace with STL to Replace with 3D file: Support STEP

Enhanced the replace logic to support STEP (.stp, .step) files, including user-configurable mesh settings and dialog, while maintaining backward compatibility with STL and other formats.
Updated the menu label and tooltips to 'Replace 3D file' for clarity.

* Update 'STL' references to '3D file' in UI and logs

Replaces user-facing text and log messages referring to 'STL' with '3D file' for broader file type support and improved clarity in the menu, status messages, and logging.

* Merge branch 'main' into remplace-with-stl
2025-12-14 13:20:14 +08:00
Andreas Rammhold
b2822b6861
Enable IPv6 usage in curls resolve code (#11639)
* Enable IPv6 usage in curls resolve code

Before this change OrcaSlicer would fail to resolve the IPv6 addresses
of printers when trying to interact with them via HTTP.

For context: I'm running my Klipper based printers with only IPv6
addresses being assigned to them. That works fine for
everything (including other slicers such as prusa-slic3r).

A few years ago I did debug this and figured that it came down to the
single line in the code base that this commit removes. I've since
patched every single OrcaSlicer version with this change and never
noticed a downside. It should be fine to remove the restriction.
2025-12-14 11:43:04 +08:00
Matthew
7ec3d85a02
Allow 'Change Type' to be used with Multiple Parts Selected (#11544)
* Initial changes allowing you to change the type of multiple parts at once by selecting them all.

* Removed second occurance of Change type in right click menu

* Ready to go feature change

* Remove accidental file creation

* Removing excessive std::cerr

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-12-13 22:36:47 +08:00
Ian Bassi
54c876222e
Minor Tab.cpp redirection fixes + PowerLoss recovery link (#11608)
* Update Tab.cpp

* Readme Fix

* Update Tab.cpp
2025-12-12 23:32:28 +08:00
Alexandre Folle de Menezes
c9ea433cd5
Complement the pt-BR translation (#11620) 2025-12-12 21:50:37 +08:00
Rodrigo Faselli
83a64559a2
Update default Windows SDK include path version (Fix netfab mesh repair service for local compilation) (#11450)
Update default Windows SDK include path version

Changed the default Windows SDK include path from version 10.0.22000.0 to 10.0.26100.0 in CMakeLists.txt to use a newer SDK version when environment variables are not set.
2025-12-12 21:48:46 +08:00
Michael Rook
5c547ea4a1
Add ability to disable Power Loss Recovery on BBL machines (#11582)
Some checks failed
Build all / Build Linux (push) Has been cancelled
Build all / Build Non-Linux (push) Has been cancelled
Build all / Flatpak (push) Has been cancelled
Shellcheck / Shellcheck (push) Has been cancelled
Build all / Unit Tests (push) Has been cancelled
* Add ability to disable Power Loss Recovery

* Fix typo in PrintConfig.hpp for power loss recovery

* Attempt to resolve Unknown option exception: disable_power_less_recovery

Add disable_power_loss_recovery property to any json which had scan_first_layer

* Revert "Attempt to resolve Unknown option exception: disable_power_less_recovery"

This reverts commit ddaf34b317.

* Fix typo

* Change attribution from BBS to Orca in PrintConfig.cpp

* Mini refactor power loss recovery handling in GCode export

- Moved power loss recovery G-code generation to a new method in GCodeWriter.
- Support Marlin 2

* Update comments and power loss recovery handling

* Implement power loss recovery G-code commands

Added functions to start and end power loss recovery with appropriate G-code commands and comments.

* Add power loss recovery methods to GCodeWriter

* refactor and fix build errors

---------

Co-authored-by: Michael Rook <michael@rook.id.au>
Co-authored-by: Ioannis Giannakas <59056762+igiannakas@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-12-10 23:19:57 +08:00
dependabot[bot]
d8de54dfca
Bump actions/checkout from 4 to 6 (#11547)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-09 23:58:02 +08:00
Ian Bassi
25bc45c8f5
Tab.cpp Machine + Material: Linking Wiki update (#11548)
* Fix tooltip + URL

* Full Material wiki redirection maping

* Machine wiki + append_option_line wiki linking

* Machine wiki 2

* Update README with improved wiki links and clarity

* Bring back Print statistics options

* Move num_extruders config to OtherSlicingStatesConfigDef

The num_extruders configuration option was relocated from OtherPresetsConfigDef to OtherSlicingStatesConfigDef for better organization and relevance. This change ensures that the number of extruders is defined in the context of slicing states rather than presets.

* Unifi adaptative bed mesh
2025-12-09 23:57:03 +08:00
Nanashi
bb537f97f2
Update release details from metainfo.xml (#11539)
* Remove release details from metainfo.xml

this fixes the error pointed out on the discord https://discord.com/channels/1137181739773603922/1443808926523981975

* Add release details to OrcaSlicer metainfo

Added release information and description to metainfo.

* fix typo from sticky shift key (oops)

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-09 23:49:15 +08:00
SoftFever
d453de3912 exclude resources 2025-12-09 23:41:34 +08:00
tntchn
0b83a0c8ad
Update zh_TW translations (#11514)
* Replace Simplified Chinese in `OrcaSlicer_zh_TW.po` with Traditional
  ones, fix '制', and add missing translatinos
* Fix settings -> system language selector (`Perefences.cpp`): 繁体 -> 繁體
* Two missing translation in `text.js`
2025-12-09 23:38:12 +08:00
yw4z
7760000aaf
Fix RolohaunDesign Delta Flyer Refit process visible for every printer (#11594)
init
2025-12-09 01:06:57 +08:00
yw4z
db64def4c2
Compact Printer Selection UI - part 2 (#11401)
* update

* match bbl covers with profile folder

* Update printer_placeholder.png

* match vertical margins

* improve logic for showing bed type preview

* fix focus

* fix conflict

* fix conflict

* Update printer_placeholder.png

* Update Plater.cpp

* Update printer_placeholder.png

* revert changes for margins

* Update Plater.cpp

* Update Plater.cpp

* Revert "Update Plater.cpp"

This reverts commit f73e482081.

* Update Plater.cpp

* fix badges not visible

* fix badge

* Update Plater.cpp

* update sync icon

* improve cover auto hide logic

* Update Plater.cpp

* delete bed type images

* simplify events

* hide nozzle selector for ToolChangers

* fix bed type not remembers value after printer change
2025-12-09 01:05:03 +08:00
coryrc
52c2a85d28
Fix tests (#10906)
* Get libslic3r tests closer to passing

I can't get geometry tests to do anything useful. I've added extra
output, but it hasn't helped me figure out why they don't work
yet. That's also probably the last broken 3mf test doesn't work.

The config tests were mostly broken because of config name changes.

The placeholder_parser tests have some things that may-or-may-not
still apply to Orca.

* Vendor a 3.x version of Catch2

Everything is surely broken at this point.

* Allow building tests separately from Orca with build_linux.sh

* Remove unnecessary log message screwing up ctest

Same solution as Prusaslicer

* Make 2 TriangleMesh methods const

Since they can be.

* Move method comment to the header where it belongsc

* Add indirectly-included header directly

Transform3d IIRC

* libslic3r tests converted to Catch2 v3

Still has 3 failing tests, but builds and runs.

* Disable 2D convex hull test and comment what I've learned

Not sure the best way to solve this yet.

* Add diff compare method for DynamicConfig

Help the unit test report errors better.

* Perl no longer used, remove comment line

* Clang-format Config.?pp

So difficult to work with ATM

* Remove cpp17 unit tests

Who gives a shit

* Don't need explicit "example" test

We have lots of tests to serve as examples.

* Leave breadcrumb to enable sla_print tests

* Fix serialization of DynamicConfig

Add comments to test, because these code paths might not be even used
anymore.

* Update run_unit_tests to run all the tests

By the time I'm done with the PR all tests will either excluded by
default or passing, so just do all.

* Update how-to-test now that build_linux.sh builds tests separately

* Update cmake regenerate instructions

Read this online; hopefully works.

* Enable slic3rutils test with Catch2 v3

* Port libnest2d and fff_print to Catch2 v3

They build. Many failing.

* Add slightly more info to Objects not fit on bed exception

* Disable failing fff_print tests from running

They're mostly failing for "objects don't fit on bed" for an
infinite-sized bed. Given infinite bed is probably only used in tests,
it probably was incidentally broken long ago.

* Must checkout tests directory in GH Actions

So we get the test data

* Missed a failing fff_print test

* Disable (most/all) broken libnest2d tests

Trying all, not checking yet though

* Fix Polygon convex/concave detection tests

Document the implementation too. Reorganize the tests to be cleaner.

* Update the test script to run tests in parallel

* Get sla_print tests to build

Probably not passing

* Don't cause full project rebuild when updating test CMakeLists.txts

* Revert "Clang-format Config.?pp"

This reverts commit 771e4c0ad2.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-12-08 22:42:11 +08:00
pi-squared-studio
5486a8e56c fix window height during update 2025-12-06 21:19:44 +03:00
pi-squared-studio
a6fdb95a41 fix visibility 2025-12-06 19:37:03 +03:00
pi-squared-studio
8d238871ed fix separator width 2025-12-06 19:19:16 +03:00
pi-squared-studio
21c3b2801f separator placement tips in code 2025-12-06 18:14:33 +03:00
pi-squared-studio
7e99c09102 Thin separators 2025-12-06 17:57:12 +03:00
pi-squared-studio
704587fa01 Final 2025-12-05 15:20:59 +03:00
Ian Bassi
02c8bba8b4
Fix typo in extruder clearance resource name (#11569)
Some checks failed
Build all / Build Linux (push) Has been cancelled
Build all / Build Non-Linux (push) Has been cancelled
Build all / Flatpak (push) Has been cancelled
Build all / Unit Tests (push) Has been cancelled
Renamed 'param_extruder_clearence.svg' to 'param_extruder_clearance.svg' and updated the corresponding resource reference in Tab.cpp to correct the spelling error.

Co-authored-by: Nanashi <53353250+NanashiTheNameless@users.noreply.github.com>
2025-12-05 12:03:12 +00:00
pi-squared-studio
eb18f924ce Update Tab.cpp 2025-12-01 00:30:24 +03:00
Mark Richins
bd6cfd6cec
Fixed a spelling mistake (#11523)
Some checks failed
Build all / Build Linux (push) Has been cancelled
Build all / Build Non-Linux (push) Has been cancelled
Build all / Flatpak (push) Has been cancelled
Build all / Unit Tests (push) Has been cancelled
Corrected a spelling error

Changed "Raparando" to "Reparando"
2025-11-30 12:28:03 +08:00
Ian Bassi
f71e09a8c6
Fix Flatpak build: Add fallback URL for MPFR source download (#11512)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
Add fallback URL for MPFR source download

Updated MPFR.cmake to include both the GNU FTP and mpfr.org URLs for downloading the MPFR source. This improves reliability in case one of the sources is unavailable.
2025-11-29 15:53:40 +08:00
Ian Bassi
7ec32fc484
Delete validate-documentation.yml (#11477) 2025-11-26 09:08:13 +08:00
artillerylab
f3e486c1a9
Update printer profiles for Artillery (#11284)
Some checks failed
Build all / Build Linux (push) Has been cancelled
Build all / Build Non-Linux (push) Has been cancelled
Build all / Flatpak (push) Has been cancelled
Build all / Unit Tests (push) Has been cancelled
* Update printer profiles for Artillery

* Revert "Update printer profiles for Artillery"

This reverts commit 5dc7083089.

* Update printer profiles for Artillery

* Update printer profiles for Artillery

* resolve workflow failures in profile validation

* resolve workflow failures in profile validation
2025-11-25 13:27:35 +00:00
Kiss Lorand
855870e256
Fix emulated spiral Z-hop XY offset on multi-plate slicing (#11468)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
2025-11-25 11:23:37 +08:00
SoftFever
f0d79b99eb Move WIKI to new repo
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
2025-11-24 23:50:54 +08:00
Noisyfox
4c1b6445d3
Validate invalid fields for hidden system profiles (#11455)
* Fix issue that for invisible system profiles, invalid fields are not removed

* Fix wrong note field
2025-11-24 20:11:42 +08:00
SoftFever
f57d0d1442 ci: Increase timeout for dedupe-issues workflow from 10 to 30 minutes 2025-11-23 21:22:07 +08:00
SoftFever
b78381e4f5 Fix CICD AI dedupe 2025-11-23 20:47:07 +08:00
SoftFever
b8cb62fb10
Change runner from self-hosted to ubuntu-latest 2025-11-23 18:06:54 +08:00
SoftFever
b843b36d8f
Check duplicated issues. ported from Claude code repo (#11454) 2025-11-23 18:03:28 +08:00
yw4z
9304cc35db
UI fixes / improvements (#11413)
Some checks failed
Build all / Build Linux (push) Has been cancelled
Build all / Build Non-Linux (push) Has been cancelled
Build all / Flatpak (push) Has been cancelled
Publish docs to Wiki / Publish docs to Wiki (push) Has been cancelled
Shellcheck / Shellcheck (push) Has been cancelled
Build all / Unit Tests (push) Has been cancelled
* init

* flushing volumes

* vertical margins

* fix titlebar scaling

* fix filament section

* flushing volumes

---------

Co-authored-by: Ioannis Giannakas <59056762+igiannakas@users.noreply.github.com>
2025-11-22 22:54:36 +08:00
Kiss Lorand
f48a438b27
Fix Spiral Z-Hop arc handling (#11430) 2025-11-22 22:09:29 +08:00
Kiss Lorand
589eb2cfeb
FIX: Open provided file at startup (#11419) 2025-11-22 21:49:51 +08:00
Ian Bassi
3367648ec0
Re-include BBS's Clipperutils2 (#11415)
* Clipper2 from BBS

* Fix

* Clipper2 Update: 1.5.2 -> 2.1.5.4

* Replace Clipper2Lib::Area calls with Clipper2LibArea

Updated area calculation calls to use Clipper2LibArea<T> instead of Clipper2Lib::Area<T> in multiple locations. This change likely reflects a refactor or renaming of the area calculation function.

* Revert "Replace Clipper2Lib::Area calls with Clipper2LibArea"

This reverts commit c92a9a1522e8d7b0f1f8557d4c752a8b8c8fc279.

* Revert "Clipper2 Update: 1.5.2 -> 2.1.5.4"

This reverts commit a745894bdc9cda4ce4d19e0705d214b78091acad.

* Update project version
2025-11-22 15:39:12 +08:00
Noisyfox
61931d23a4
Fix filament profile import if inherit from vendor generic (#11398)
* Why log user id when importing profile?

* Use `find_preset2` when importing profiles
to properly handle renamed system profiles
2025-11-22 15:38:12 +08:00
Noisyfox
7b0cdd3ec6
Fix crash after syncing printer (#11428)
Fix crash after syncing printer (OrcaSlicer/OrcaSlicer#11427)
2025-11-22 15:37:28 +08:00
Ian Bassi
4c00966ca3
Wiki 16 (MiniUpdate): Updated by Stable cmake 4.2 release + VS2026 First (#11423)
* Update Visual Studio and CMake instructions in build guide

Reorders Visual Studio version recommendations and simplifies installation instructions. Clarifies CMake path setup guidance and removes outdated notes specific to Visual Studio 2026 and CMake 4.2.

* Update CMake mac version 3.31.10
2025-11-21 15:18:22 +00:00