mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-04-06 00:32:05 +02:00
Fix flushing windows dialog able to move around using trackpad and added esc to close dialog (#12694)
Added entry to wipingdialog.html css to prevent it from being overscrollable and its position fixed. Added escape button to close dialog event on both javascript and webview events JIRA-136
This commit is contained in:
@@ -8,13 +8,19 @@
|
||||
-webkit-user-select: none;
|
||||
}
|
||||
|
||||
html, body {
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
height: 100%;
|
||||
background: #f5f5f5;
|
||||
font-family: sans-serif;
|
||||
}
|
||||
html, body {
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
height: 100%;
|
||||
background: #f5f5f5;
|
||||
font-family: sans-serif;
|
||||
overscroll-behavior: none;
|
||||
}
|
||||
|
||||
body {
|
||||
position: fixed;
|
||||
inset: 0;
|
||||
}
|
||||
|
||||
.container {
|
||||
background: #fff;
|
||||
@@ -413,6 +419,15 @@
|
||||
window.wipingDialog.postMessage(data);
|
||||
});
|
||||
|
||||
// Escape should close the dialog even when focus is inside web content.
|
||||
document.addEventListener("keydown", function (event) {
|
||||
if (event.key === "Escape") {
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
quit();
|
||||
}
|
||||
}, true);
|
||||
|
||||
function buildText(data) {
|
||||
document.getElementById('volume_desp_panel').innerText = data.volume_desp_panel
|
||||
document.getElementById('volume_range_panel').innerText = data.volume_range_panel
|
||||
|
||||
@@ -496,6 +496,15 @@ WipingDialog::WipingDialog(wxWindow* parent, const int max_flush_volume) :
|
||||
BOOST_LOG_TRIVIAL(error) << __FUNCTION__<< "Failed to parse json message: " << message;
|
||||
}
|
||||
});
|
||||
|
||||
m_webview->Bind(wxEVT_CHAR_HOOK, [this](wxKeyEvent& e) {
|
||||
if (e.GetKeyCode() == WXK_ESCAPE) {
|
||||
if (IsModal()) EndModal(wxID_CANCEL);
|
||||
else Close();
|
||||
return;
|
||||
}
|
||||
e.Skip();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user