The problem is that hitting "Cmd-Shift-M" on mac always minimizes the app, even though it should only minimize on "Cmd-M", and not on "Cmd-Shift-M". The code that minimizes (using the WXWidgets "Iconize()" call) happens in MainFrame.cpp keyboard event loop. The code that's checking, looks for "Cmd-M" but does not check for any other keyboard modifiers, so I added a check to ignore the event if Shift is pressed along with "Cmd-M". There's a secondary issue that isn't really relevant to this bug in that the app will still minimize when pressing "Cmd-Shift-M", but ONLY on the "Home" sub-screen. (all other sub-screens work as they should). I'm not sure why, but when the "Home" sub-screen is selected, the keyboard event loop (MainFrame.cpp, line 609), is called TWICE when "Cmd-Shift-<any key>" is pressed: * Once where the event's wxKeyModifier (retrieved via `evt.GetModifiers()` is set to `wxMOD_CONTROL` AND `wxMOD_SHIFT`. (this is correct) * Once where the event's wxKeyModifier is **ONLY** set to `wxMOD_CONTROL` (this is wrong). Again, this double-event (with the wrong modifiers) only happens when the user is on the "Home" sub-screen. For the context of this bug the 3DConnexion preferences dialog isn't needed on the "Home" sub-screen so this secondary bug doesn't matter. But it does make the UX odd where Cmd-Shift-M will minimize the app when the user is viewing the "Home" sub-screen, but not minimize the app when the user is viewing any other sub-screen. |
||
---|---|---|
.github | ||
bbl/i18n | ||
bbs_test_tools | ||
cmake | ||
deps | ||
doc | ||
lib | ||
resources | ||
sandboxes | ||
src | ||
t | ||
tests | ||
xs | ||
.dockerignore | ||
.gitignore | ||
BambuStudio.mo | ||
BambuStudio.sublime-project | ||
Build.PL | ||
BuildLinux.sh | ||
CMakeLists.txt | ||
Containerfile | ||
DockerBuild.sh | ||
DockerRun.sh | ||
Dockerfile | ||
LICENSE | ||
README.md | ||
build_win.bat | ||
localazy.json | ||
version.inc |
README.md
Work with us!
If you are interested in working with us in China, please apply to our open positions below by simply sending your resume to our mailbox [zhaopin at bambulab.com].
BambuStudio
Bambu Studio is a cutting-edge, feature-rich slicing software.
It contains project-based workflows, systematically optimized slicing algorithms, and an easy-to-use graphic interface, bringing users an incredibly smooth printing experience.
Prebuilt Windows, macOS 64-bit and Linux releases are available through the github releases page.
Bambu Studio is based on PrusaSlicer by Prusa Research, which is from Slic3r by Alessandro Ranellucci and the RepRap community.
See the wiki and the documentation directory for more informations.
What are Bambu Studio's main features?
Key features are:
- Basic slicing features & GCode viewer
- Multiple plates management
- Remote control & monitoring
- Auto-arrange objects
- Auto-orient objects
- Hybrid/Tree/Normal support types, Customized support
- multi-material printing and rich painting tools
- multi-platform (Win/Mac/Linux) support
- Global/Object/Part level slicing parameters
Other major features are:
- Advanced cooling logic controlling fan speed and dynamic print speed
- Auto brim according to mechanical analysis
- Support arc path(G2/G3)
- Support STEP format
- Assembly & explosion view
- Flushing transition-filament into infill/object during filament change
How to compile
Following platforms are currently supported to compile:
- Windows 64-bit, Compile Guide
- Mac 64-bit, Compile Guide
- Linux, Compile Guide
Report issue
You can add an issue to the github tracker if it isn't already present.
License
Bambu Studio is licensed under the GNU Affero General Public License, version 3. Bambu Studio is based on PrusaSlicer by PrusaResearch.
PrusaSlicer is licensed under the GNU Affero General Public License, version 3. PrusaSlicer is owned by Prusa Research. PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci.
Slic3r is licensed under the GNU Affero General Public License, version 3. Slic3r was created by Alessandro Ranellucci with the help of many other contributors.
The GNU Affero General Public License, version 3 ensures that if you use any part of this software in any way (even behind a web server), your software must be released under the same license.
The bambu networking plugin is based on non-free libraries. It is optional to the Bambu Studio and provides extended networking functionalities for users. By default, after installing Bambu Studio without the networking plugin, you can initiate printing through the SD card after slicing is completed.