diff --git a/src/slic3r/GUI/Field.cpp b/src/slic3r/GUI/Field.cpp index 65cac2cc5e..aa366e20ec 100644 --- a/src/slic3r/GUI/Field.cpp +++ b/src/slic3r/GUI/Field.cpp @@ -588,6 +588,14 @@ void TextCtrl::BUILD() { EnterPressed enter(this); propagate_value(); }), text_ctrl->GetId()); + } else { + // Orca: adds logic that scrolls the parent if the text control doesn't have focus + text_ctrl->Bind(wxEVT_MOUSEWHEEL, [text_ctrl](wxMouseEvent& event) { + if (text_ctrl->HasFocus() && text_ctrl->GetScrollRange(wxVERTICAL) != 1) + event.Skip(); // don't consume the event so that the text control will scroll + else + text_ctrl->GetParent()->ScrollLines((event.GetWheelRotation() > 0 ? -1 : 1) * event.GetLinesPerAction()); + }); } text_ctrl->Bind(wxEVT_LEFT_DOWN, ([temp](wxEvent &event)