Merge branch 'main' into fix/load-3mf-after-sync

This commit is contained in:
Ian Chua
2026-05-26 10:56:29 +08:00
committed by GitHub
3 changed files with 17 additions and 2 deletions

View File

@@ -338,7 +338,21 @@ void FilamentGroupPopup::OnRadioBtn(int idx)
} }
} }
void FilamentGroupPopup::OnTimer(wxTimerEvent &event) { Dismiss(); } void FilamentGroupPopup::OnTimer(wxTimerEvent &event)
{
#if __APPLE__
// On macOS, when moving cursor from slice button to this popup window,
// the popup window entering event is triggered first, then the slice button
// leaving event got triggered. So the timer is stopped first, then started
// again, causing the popup being dismissed immediately.
// To fix this, we check if cursor is still inside the popup window before
// dismissing.
wxPoint pos = this->ScreenToClient(wxGetMousePosition());
if (this->GetClientRect().Contains(pos)) return;
#endif
Dismiss();
}
void FilamentGroupPopup::Dismiss() { void FilamentGroupPopup::Dismiss() {
m_active = false; m_active = false;

View File

@@ -121,6 +121,7 @@ std::map<std::string, std::vector<SimpleSettingData>> SettingsFactory::PART_CATE
{"bottom_shell_thickness", L("Bottom Minimum Shell Thickness"), 1}, {"bottom_shell_thickness", L("Bottom Minimum Shell Thickness"), 1},
{"bottom_surface_density", L("Bottom Surface Density"), 1}, {"bottom_surface_density", L("Bottom Surface Density"), 1},
{"sparse_infill_density", "", 1}, {"sparse_infill_density", "", 1},
{"fill_multiline", "", 1},
{"sparse_infill_pattern", "", 1}, {"sparse_infill_pattern", "", 1},
{"lateral_lattice_angle_1", "", 1}, {"lateral_lattice_angle_1", "", 1},
{"lateral_lattice_angle_2", "", 1}, {"lateral_lattice_angle_2", "", 1},

View File

@@ -2448,7 +2448,7 @@ void TabPrint::build()
optgroup->append_single_option_line("sparse_infill_density", "strength_settings_infill#sparse-infill-density"); optgroup->append_single_option_line("sparse_infill_density", "strength_settings_infill#sparse-infill-density");
optgroup->append_single_option_line("fill_multiline", "strength_settings_infill#fill-multiline"); optgroup->append_single_option_line("fill_multiline", "strength_settings_infill#fill-multiline");
optgroup->append_single_option_line("sparse_infill_pattern", "strength_settings_infill#sparse-infill-pattern"); optgroup->append_single_option_line("sparse_infill_pattern", "strength_settings_infill#sparse-infill-pattern");
optgroup->append_single_option_line("gyroid_optimized", "strength_settings_patterns#gyroid_optimized"); optgroup->append_single_option_line("gyroid_optimized", "strength_settings_patterns#gyroid-optimized");
optgroup->append_single_option_line("infill_direction", "strength_settings_infill#direction"); optgroup->append_single_option_line("infill_direction", "strength_settings_infill#direction");
optgroup->append_single_option_line("sparse_infill_rotate_template", "strength_settings_infill_rotation_template_metalanguage"); optgroup->append_single_option_line("sparse_infill_rotate_template", "strength_settings_infill_rotation_template_metalanguage");
optgroup->append_single_option_line("skin_infill_density", "strength_settings_patterns#locked-zag"); optgroup->append_single_option_line("skin_infill_density", "strength_settings_patterns#locked-zag");