Rodrigo Faselli
7d21cf78c7
💥 Fix crash when return from assembly mode linux ( #13091 )
...
* Fix return from assembly linux
* Tie deferred callback to canvas lifetime and add shutdown guards
Use m_canvas->CallAfter instead of wxGetApp().CallAfter to ensure the callback is only executed if the canvas is still alive.
Add early returns if wxGetApp().is_closing() is true before accessing plater or the 3D canvas, reducing the risk of use-after-free during application shutdown.
Addresses feedback regarding potential UI teardown race conditions.
* copilot suggestion
* Use local reference to wxGetApp() in Return button callback
Replace multiple calls to wxGetApp() with a single local reference
to improve readability and avoid redundant function calls.
2026-04-06 14:06:48 +08:00
aa51d1965f
Don't steal focus from text inputs on mouse ( #12834 )
...
In GLCanvas3D::on_mouse, avoid calling SetFocus when the currently focused window is a text input control (wxTextCtrl, wxComboBox or wxSpinCtrl). This prevents deselection bugs when the mouse leaves the window while a text control is focused. Also commented out explicit wx text-control includes near the top of the file.
Only TextCtrl needed
cleaning
Removed unused wxWidgets header includes.
Update GLCanvas3D.cpp
Co-authored-by: yw4z <yw4z@outlook.com >
Co-authored-by: yw4z <ywsyildiz@gmail.com >
2026-04-05 13:53:41 +03:00
SoftFever
c06a0223a7
Fix 3D canvas blank area during window resize after wxWidgets 3.3.2 upgrade
2026-03-28 15:46:34 +08:00
SoftFever
779a36bf8b
fix a regresion that the "search in preset" popup dialog will dismiss itself when move the cursor out of the dialog.
...
The regression is casued by 382cf57166 ("Fix hotkeys blocked in Prepare view when notification is shown")
2026-03-28 13:04:20 +08:00
SoftFever
85390a9da0
Guard wxToolTip::GetToolTipCtrl() for wx 3.3 and add explicit wx/utils.h includes
...
- Wrap GetToolTipCtrl() call in GUI_App.cpp with #if wxVERSION_NUMBER < 3300
guard, as this API may not be accessible in wxWidgets 3.3. The dark tooltip
theming is cosmetic and non-critical.
- Add explicit #include <wx/utils.h> to 7 source files that use functions from
that header (wxGetMousePosition, wxLaunchDefaultBrowser, wxGetDisplaySize,
wxBell) but relied on transitive includes. This preempts breakage from
wxWidgets 3.3 reducing transitive includes.
Files with wx/utils.h added: BBLTopbar.cpp, CreatePresetsDialog.cpp,
CameraPopup.cpp, GLCanvas3D.cpp, GCodeViewer.cpp, GUI_ObjectList.cpp,
FilamentMapPanel.cpp.
Skipped BindDialog.cpp and FilamentPickerDialog.cpp as they already include
wx/wx.h which provides wx/utils.h transitively.
Part of wxWidgets 3.1.5 -> 3.3.2 upgrade.
2026-03-24 21:02:37 +08:00
SoftFever
bcd89aba5e
Skip flushing volume validation for multi-tool printers
...
Flushing volumes only apply to SEMM and BBL printers. Multi-tool printers don't perform filament purging between tool changes, so the zero-volume warning was being incorrectly triggered.
2026-03-18 15:39:07 +08:00
SoftFever
6399d88015
Revert "Fix wipe tower loaded outside of plate boundaries ( #12191 )"
...
This reverts commit e14e186bb7 .
2026-03-17 19:16:09 +08:00
SoftFever
c8070b67d5
Revert "Fix wipe tower placed outside bed boundary on first slice ( #12777 )"
...
This reverts commit 494601eea5 , reversing
changes made to d28e964e04 .
2026-03-17 19:14:50 +08:00
SoftFever
ad0cce4c38
Fix wipe tower placed outside bed boundary on first slice
...
The wipe tower config position (wipe_tower_x/y) could be outside the
plate boundary (e.g. default y=250 on a 200mm printer). No constraint
was applied at slice time, so the tower was generated out-of-bounds.
2026-03-15 17:38:44 +08:00
SoftFever
382cf57166
QoL: Fix hotkeys blocked in Prepare view when notification is shown ( #12715 )
...
Fix hotkeys blocked in Prepare view when notification is shown
Restore SetFocus() in the GLCanvas3D mouse-entering handler so the
canvas reclaims wxWidget keyboard focus whenever the mouse enters it
(provided the main window is active). Without this, clicking a sidebar
control or a UI update triggered by slicing could leave the canvas
without focus, causing hotkeys like Tab to stop working until the user
clicked the canvas or dismissed the notification.
2026-03-10 15:57:15 +08:00
Derrick
e8b2fa3a32
Fix zoom button tooltip width miscalculation ( #12692 )
...
wx strings to be converted to utf-8 before doing width calculation for consistency.
JIRA-127
2026-03-09 18:22:37 +08:00
Alexandre Folle de Menezes
d54adafdaa
Grammar and spelling fixes on GUI strings ( #12410 )
2026-03-03 17:36:42 -03:00
SoftFever
a38af4d85a
fix missing translations for Canvas Toolbar Menu
2026-03-01 01:15:14 +08:00
yw4z
095b5116ac
Add option for hiding / showing gridlines ( #10545 )
...
Might be useful who want to use custom grid line system with textures. or a clean look
### PROBLEM / SCENARIOS
• Custom made textures overlapping with grid system. so it might be confusing for user if want to use specific markings
• User may found its a distracting item and wants a clean look
### SOLUTION
added to view menu
<img width="477" height="434" alt="Screenshot-20251230192707" src="https://github.com/user-attachments/assets/e298d9b2-5f8f-4e33-af22-ea7c84c9b5b8 " />
added to canvas menu
<img width="278" height="297" alt="Screenshot-20251230192717" src="https://github.com/user-attachments/assets/a9952408-a361-4e64-ad9a-72e2480c74cf " />
Clean look without gridlines
<img width="1669" height="1157" alt="Screenshot-20250827144140" src="https://github.com/user-attachments/assets/9229f330-9543-4d39-a8fc-01deb9b61336 " />
<img width="1669" height="1157" alt="Screenshot-20250827144212" src="https://github.com/user-attachments/assets/ab3848fb-74d7-4618-8bc7-0cdff10a3804 " />
Few Examples with custom made textures / markings without gridlines
<img width="1669" height="1157" alt="Screenshot-20250827140008" src="https://github.com/user-attachments/assets/5d7b17ab-e97a-489c-9e4d-99157a37b6b7 " />
<img width="1669" height="1157" alt="Screenshot-20250827141904" src="https://github.com/user-attachments/assets/a7e0f360-a85a-489d-9bc2-39286984643a " />
2026-03-01 00:19:04 +08:00
Alexandre Folle de Menezes
72a4597107
Fix GUI strings that should start with uppercase ( #12499 )
2026-02-27 11:19:22 -03:00
Yves and SoftFever
1952442e18
Restore select all plates as its own action ( #12256 )
...
restore select all plates as its own function
Co-authored-by: SoftFever <softfeverever@gmail.com >
2026-02-13 16:24:59 +08:00
Yves
08afbefa56
Change Ctrl+A behavior from all plates to current plate only ( #12236 )
...
Change CTRL-A behavior from ALL Plates to current plate only
2026-02-11 16:08:21 +08:00
discip
49413e7990
fixing typo in #12218 ( #12239 )
...
Change slope global use configuration to show overhang
Unfortunately there was a typo in #12218
This should fix it.
2026-02-11 16:07:23 +08:00
Sabriel-Koh
9950662ddf
Fix: box selection selecting wrong object in orthogonal view ( #12230 )
...
# Description
When using box selection with the orthogonal view, unexpected objects end up getting selected.
Fixed by setting the selection camera to use the same view as the display camera.
Fixes #5895
# Screenshots/Recordings/Graphs
Bugged:
https://github.com/user-attachments/assets/e98fcbb1-0f01-43dd-a3d5-cb0af97e226e
Fixed:
https://github.com/user-attachments/assets/f84e801c-d595-4394-b42f-ed8758413980
## Tests
Tested the selection in both perspective and orthogonal.
2026-02-10 22:31:51 +08:00
Sabriel-Koh
cae1567726
fix: Show Labels and Show Overhang toggles not being saved ( #12218 )
...
* fix: Show Labels and Show Overhang toggles not being saved
* refactor: use get_bool and add comments
2026-02-09 22:27:03 +08:00
Derrick
e14e186bb7
Fix wipe tower loaded outside of plate boundaries ( #12191 )
...
* Add checks to snap wipe tower back to origin when it was loaded outside the plate boundary
* Fix Wipe Tower preview outside plate boundary and warning notification
- snaps wipe tower preview to nearest edge if it was loaded outside of plate boundary.
- Added warning notification to notify position change
2026-02-09 22:25:41 +08:00
Derrick
e6e6210120
Fix extruder name >2 extruder printers ( #12190 )
...
Fix for memory access violation when using printers other than bbl printers with >2 extruders.
JIRA-24
2026-02-06 16:55:35 +08:00
Valerii Bokhan
98cb91110e
Fix: Free camera panning/rotating fixed ( #12174 )
...
Fixes #10266
2026-02-05 19:57:23 +00:00
yw4z
d608d7dffe
UI Fixes / Improvements ( #12069 )
...
* clone dialog - spin input stuck on selected
* fix advanced toggle label
* fix scrollbar appearing on project page welcome screen
* create slicing section on preferences
* reduce margins on tabs
* bbl part skip dialog
* Update filament_not_mactch.svg
* Update icon_qusetion.svg
* match hyperlink color on notifications
* fix position of notifications on slicing errors
* match background color of BBL > Calibration tab > Sidebar
* match look of BBL sidebars
* match bbl monitor icons
* match multi-device page margins
* bbl > monitor > print control buttons
* fix flush dialog showing text selection on buttons
* Printer network dialog > match combo box width
2026-02-04 11:40:02 +00:00
SoftFever
1b355be432
Merge branch 'main' into libvgcode
2026-01-06 11:09:09 +08:00
yw4z and SoftFever
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
Ioannis Giannakas
d6815653f4
Merge branch 'main' into libvgcode
2025-12-18 12:55:11 +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
Andrew Sun
e4d354b673
Merge remote-tracking branch 'upstream/main' into libvgcode
...
# Conflicts:
# src/libslic3r/GCode/GCodeProcessor.cpp
2025-11-18 20:22:57 -05:00
Kiss Lorand and Andrew Sun
a87df7f0b5
Bugfixes ( #2 )
...
* Bugfixes
* Reduce size of diff
to avoid merge conflicts when we cherry-pick from upstream :)
* remove extraneous space
---------
Co-authored-by: Andrew Sun <as-com@users.noreply.github.com >
2025-11-18 19:50:48 -05:00
Noisyfox
5e2a7fbf35
Merge branch 'main' into dev/p2s-pr
2025-11-17 14:56:09 +08:00
Andrew Sun
7408f333a6
Merge remote-tracking branch 'upstream/main' into libvgcode
...
# Conflicts:
# src/slic3r/GUI/GLCanvas3D.cpp
2025-11-16 22:53:04 -05:00
Ian Bassi
4b1ddcdc55
Url update: SoftFever/OrcaSlicer -> OrcaSlicer/OrcaSlicer ( #11371 )
...
* SoftFever/OrcaSlicer -> OrcaSlicer/OrcaSlicer
* Revert for deps
2025-11-17 11:17:54 +08:00
Andrew Sun
7814605906
Merge remote-tracking branch 'upstream/main' into libvgcode
...
# Conflicts:
# src/libslic3r/GCode/GCodeProcessor.cpp
# src/libslic3r/GCode/GCodeProcessor.hpp
# src/slic3r/CMakeLists.txt
# src/slic3r/GUI/GCodeViewer.cpp
# src/slic3r/GUI/GCodeViewer.hpp
# src/slic3r/GUI/GLCanvas3D.cpp
# src/slic3r/GUI/GLCanvas3D.hpp
# src/slic3r/GUI/GUI_Preview.cpp
2025-11-15 11:11:20 -05:00
Noisyfox
9d944fd1bd
Merge branch 'main' into dev/p2s-pr
2025-11-13 10:11:10 +08:00
Noisyfox
c0ad4f4e1c
Revert "Fix: Correcting the behavior of the camera panning." ( #11337 )
...
Revert "Fix: Correcting the behavior of the camera panning. (#11111 )"
This reverts commit 08bd21310c .
2025-11-12 13:09:39 +08:00
Noisyfox
614612ed38
Merge branch 'main' into dev/p2s-pr
...
# Conflicts:
# src/slic3r/GUI/DeviceErrorDialog.cpp
2025-11-09 12:35:32 +08:00
Valerii Bokhan
08bd21310c
Fix: Correcting the behavior of the camera panning. ( #11111 )
...
* Fix: Correcting the behavior of the camera panning.
Fixes #11107
2025-11-09 12:29:27 +08:00
Alexandre Folle de Menezes
14dd1078bf
Spellcheck translatable strings ( #11242 )
...
* Spellcheck translatable strings
2025-11-09 11:52:27 +08:00
Alexandre Folle de Menezes
2bcbb688a1
Fix casing of axis' names ( #11258 )
2025-11-08 22:36:03 +08:00
Noisyfox
4efaee4c98
Merge branch 'main' into dev/p2s-pr
2025-11-04 10:26:47 +08:00
githubber4ever
2ae3378605
toggle axis visibility on canvas ( #9666 )
...
* toggle axis visibility on canvas
* set show_axes config on toggle
2025-11-02 00:23:26 +08:00
Noisyfox
93c4838efe
Merge branch 'main' into dev/p2s-pr
2025-10-31 16:54:45 +08:00
Noisyfox
05533a7fd3
Fix black bed texture if svg file ( #11166 )
...
* Fix blank bed texture if svg file
* Refresh scene once the texture compression is completed
2025-10-31 16:53:08 +08:00
weizhen.xie
edced8d5a6
Fix: When the flushing multiplier is 0, a warning popup should also be displayed.
...
Jira: STUDIO-14962
Change-Id: Iee6887fb6ed6941bbd58d9d2b834b6654ee9c806
(cherry picked from commit 43dbb7f228afb4304b6ea398991efd2659feafbe)
2025-10-28 15:30:01 +08:00
weizhen.xie
2959f7549c
FIX:Flushing volume button interaction optimization
...
Jira:STUDIO-14583
Change-Id: Ic1a600e92fb408b690febbd3f7a78924aed42e7a
(cherry picked from commit 672b3b54119b46c8e19f635520d4f78710128815)
2025-10-28 15:29:53 +08:00
weizhen.xie
06acdf2609
ENH:Give a warning when the flushing value changes or is zero.
...
Jira: STUDIO-13175
Change-Id: Ibc5a912464322d2bc40514c310dfc4859bbd79b3
(cherry picked from commit 3fa4b149a0a529d8a2b1c6b6b80415161c13b2c3)
(cherry picked from commit f6c03caaa744b774ffc9d6150b3691d232ced472)
2025-10-28 15:29:47 +08:00
Vovodroid and SoftFever
e922411371
Add instances ( #6237 )
...
* Add instances
* - Added a new menu item for converting instances to objects,
---------
Co-authored-by: SoftFever <softfeverever@gmail.com >
2025-10-26 16:13:14 +08:00
Noisyfox
da2934d02a
Revert "ENH:instead of prime_volume by filament_prime_volume"
...
This reverts commit e7e6405ad3 .
2025-10-05 19:16:05 +08:00
xun.zhang
f7643eb3be
ENH: update prompt for filament mix printing
...
jira: NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com >
Change-Id: I92c86edadd6720b0e566057bd2593605ee4a3f77
(cherry picked from commit a93f6a54a2be94807702e3c75bdb4c79d508f260)
2025-10-03 23:08:53 +08:00