Merge upstream 2.8.0 Public Beta (v02.08.00.50)#605
Merged
Conversation
…01.00.08 branch of bamboo_slicer Git logs: N9: github cf229ac ENH: Auto sync 3D gcode qa_test -> github P2S: github 22ec564 ENH: Auto sync 3D gcode qa_test -> github X2D: github 22ec564 ENH: Auto sync 3D gcode qa_test -> github
- 渐变模式下,点击混色推荐中的色块没有正确刷新 jira: none Change-Id: I6abe7cc429100c869d9c9695fbd322bf7a304f68
… Edited by 虾饼 editor: 虾饼 Change-Id: Ida4f0e8313aa488936fcd57a1f3467b40b761435 (cherry picked from commit 0214deadd838c0d010b683ef0d8463e1a5be89da)
The chamfer expansion area is also included in the smoothing process. jira: STUDIO-18228,STUDIO-18439 github: bambulab#10542, bambulab#10775 Change-Id: I90979ac3a553806a298ef8499227ac05ee638e7d
GLVolumeCollection::load_object_volume dereferences model_object->instances[instance_idx] (e.g. instance->get_transformation()) without validating the index. An object with an empty instances vector therefore dereferences a null/garbage ModelInstance* and crashes with EXC_BAD_ACCESS — a jump through a null vtable to 0x0. This happens when opening certain MakerWorld 3MFs: the object-color dialog calls update_obj_preview_origin_thumbnail(), which calls load_object_volume() with a hard-coded instance_idx of 0 for every object, including ones that have no instance yet during loading. Bail out early (returning -1, "no volume added") when model_object is null or volume_idx / instance_idx are out of range. The three other call sites either pass valid indices or ignore the return value. Fixes bambulab#11016
On macOS 26.5+ the wxWebView created in WebView::CreateWebView can be destroyed before the CallAfter() callback that registers the "wx" script message handler fires. The callback captured the raw webView pointer and called AddScriptMessageHandler() on it unconditionally, dereferencing a dangling pointer. On Apple Silicon this trips pointer authentication and crashes (EXC_BAD_ACCESS / PAC failure); elsewhere it shows up as a long startup hang with steadily growing memory use. Guard the async callback by checking g_webviews (the list of live views) before touching the webView, and also remove a view from g_delay_webviews in ~WebViewRef so a pending flush never reaches an already-destroyed view. Fixes bambulab#11004 Fixes bambulab#10968
…rofile Edited by xiaoxiang.liu editor: xiaoxiang.liu Change-Id: I16890cf9260d3a0ea52d4a05615965fece8aa5c4 (cherry picked from commit 8b7997634adc4d267ec4921c6977b6af7bc141a7)
jira: none Change-Id: I630ff284ad9a0f70f426a4328a457cc46dde892b
feishu: issue-7005469648 Change-Id: I0337749cc460b72526a307d183fbba995c728f05 (cherry picked from commit 1ed5703fcfa2c572d103cfae71523e78252c540c) (cherry picked from commit 5e152fb9f29316dc78ad8506718ac77013ff6b56)
JIRA: NONE Change-Id: I718da81c0557f206b51bc49041f7baf17903efa0
…ction is applied; users must exit and re-enter the paint tool to restore normal functionality. jira: STUDIO-18470 Change-Id: Ia1606a3a15ea3786842196e1e7ca70e1a6a4af30 (cherry picked from commit 3effe52666e798a99dcf7082a907c7edf3321cea)
非渐变混色 slot 跳层后重新出现时,calc_slot_lh 将 Z 间距误当层高, 导致子层 Z 坐标大幅偏低。原因是对象层跟踪仅覆盖渐变 slot。 修复:将对象层跟踪扩大到所有混色 slot,确保层高计算正确。 JIRA: none reason: other 自测结果: pass Change-Id: Id38637d812e2ead6853403951179e537569ecde9
jira: none Change-Id: I4e0a67d5401189970e7efb4273216c8b05e43a9f
去掉子层切换时的显式 travel_to_z,改用 change_layer() 同款的 lazy-Z 机制,让 Z 变化随首次 travel_to 的 XY+Z combined move 完成,与正常多色路径行为一致。 JIRA: none reason: other 自测结果: pass Change-Id: Ie637a05945b2bc1e2e429a7c811cbef27c5ec218
On macOS wxWidgets only emits wxEVT_IDLE from the CFRunLoop kCFRunLoopBeforeWaiting observer, i.e. only when the run loop is about to sleep. After visiting the Filament Manager tab its WKWebView (a live web app + bridge) keeps signalling the main run loop, so it rarely reaches the "before waiting" phase and wxEVT_IDLE is starved. Because the canvas drives its render and picking pass from idle, camera moves, drags and gizmo highlighting freeze when returning to the prepare page. The lightweight Home web page goes quiet, which is why it never triggers this. Drive the idle work from a CFRunLoopTimer-backed wxTimer that is armed on canvas input and stood down once real idle events resume, so the canvas stays interactive even while idle is starved. Also force a synchronous picking render on button-down so hover is current for drag-to-grab. No behavior change off macOS. jira: STUDIO-18472 Change-Id: I0a1e6cbf4077c151e214b0cac202e71f31cce7dd
collect_extruders 用 comps.size() != 2 过滤,三色 slot 未纳入跟踪, calc_slot_lh 层高算偏大致子层 Z 偏低撞头。改为 < 2 收集所有混色 slot, 另加 != 2 守卫保持渐变/per-part 仍仅限双色。 JIRA: none reason: other 自测结果: pass Change-Id: I0c6686db1b4e063edb050a04647c92d89771f7d6
Gate hidden WebView reports and filament-manager startup/login hooks so disabled or hidden panels do not build stale state. feishu: none reason: other 自测结果: fail(未执行本地编译;隔离 worktree 无 build_release,已执行 git diff --cached --check) Change-Id: I4b5c6d7e8f90123456789abcdef0123456789abc
…ed by default due to compatibility risk, while keeping other platforms enabled by default. JIRA: none reason Change-Id: I9f1b8062343a7d0e4b6f193cbe2e06e9d5a1c437
feishu: issue-7016862004 自测结果: pass Change-Id: Ib4b0bb2261b58953e40d1daac883a19cb1f3580f
(cherry picked from commit 9c91527)
(cherry picked from commit 02b1ec5)
(cherry picked from commit 0804a01)
(cherry picked from commit 759d455)
(cherry picked from commit 13e9e3f)
(cherry picked from commit a291cdf)
(cherry picked from commit 1fa3a53)
(cherry picked from commit 0f349f4)
(cherry picked from commit dad07cc)
(cherry picked from commit 3e8a7f2)
(cherry picked from commit 5ef059d)
(cherry picked from commit b6be7ca)
(cherry picked from commit 01bc903)
(cherry picked from commit 02bae2e)
(cherry picked from commit 71110aa)
(cherry picked from commit fac5d49)
(cherry picked from commit 7d6b428)
(cherry picked from commit 9d7c970)
(cherry picked from commit a7ed98f)
(cherry picked from commit 23ad262)
(cherry picked from commit 31646dc)
(cherry picked from commit b470edc)
(cherry picked from commit 55b727e)
(cherry picked from commit 1303a53)
(cherry picked from commit d8a8592)
(cherry picked from commit 791e15e)
…610) Fixes the red Windows check on build/2.8.0-beta (C2039/C3861 in GUI_Utils.hpp:205). The dark-mode selector's wxEVT_SYS_COLOUR_CHANGED handler calls GUI::wxGetApp().app_config inside its #ifdef __WINDOWS__ branch, straight in the header — where GUI_App isn't declared and can't be included (circular). Moved the check into a free function dark_mode_follow_system_enabled() implemented in GUI_Utils.cpp, which already includes GUI_App.hpp. Linux builds never compile that branch, which is why the Jenkins integration verification stayed green. The Windows Actions run on this PR is the actual verification. Closes #609
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings the fork up to the upstream 2.8.0 Public Beta (tag
v02.08.00.50) so we can build 2.8.0 packages through our own CI/Jenkins.The merge had 101 conflicting files. Almost all of them are spots where 2.8.0 is just the newer version of code we already carried from 2.7.01, so I took upstream's side there: the DeviceWebHost lazy-construction/Suspend/EnsureBuilt work,
NavigateTo(re_init), the MediaPlayCtrl session telemetry, the filament-managerhasCloudRfidrename, P1P/P1S preset validation, and so on. Taking our old side would have regressed the code and actually broken the build, since MainFrame and DeviceWebPage already call the new signatures. Translations (.po/.pot/.mo) andresources/profilesalso take upstream 2.8.0.Kept from the fork: everything under
.github/andscripts/(our CI and packaging), the version scheme (version.inckeeps the auto-count, base bumped to02.08.00), andbuild_all.ymlstays removed since we replaced upstream's CI.Three small fork-local tweaks got reset to the 2.8.0 baseline and are worth a look before we ship:
GUI_App.cpp: our "draw the splash immediately on GTK" paint-event tweak vs upstream's#ifndef __linux__+ timeout 0ProgressDialog.hpp:m_need_yielddefault (we had false, 2.8.0 has true)deps/Assimp/Assimp.cmake: we used system zlib on Linux, 2.8.0 builds the bundled copyOn LFS: I pushed code plus LFS pointers for review. The upstream-side LFS blobs (new
.mo/profiles) still need to land on the fork's LFS before a package build, I'll take care of that at build time.Once the resolutions look good I'll build the Debian/Fedora/Arch/AppImage packages from this branch on the Jenkins Linux worker.