mirror of
https://github.com/RGBCube/serenity
synced 2025-06-21 19:52:10 +00:00
WindowServer: Implement switching windows in reverse order
This commit is contained in:
parent
58517bc068
commit
dfd759f75a
2 changed files with 13 additions and 2 deletions
|
@ -56,13 +56,23 @@ void WSWindowSwitcher::on_key_event(const WSKeyEvent& event)
|
|||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (event.key() == Key_LeftShift || event.key() == Key_RightShift)
|
||||
return;
|
||||
if (event.key() != Key_Tab) {
|
||||
WSWindowManager::the().set_highlight_window(nullptr);
|
||||
hide();
|
||||
return;
|
||||
}
|
||||
ASSERT(!m_windows.is_empty());
|
||||
m_selected_index = (m_selected_index + 1) % m_windows.size();
|
||||
|
||||
if (!event.shift()) {
|
||||
m_selected_index = (m_selected_index + 1) % m_windows.size();
|
||||
} else {
|
||||
m_selected_index = (m_selected_index - 1) % m_windows.size();
|
||||
if (m_selected_index < 0)
|
||||
m_selected_index = m_windows.size() - 1;
|
||||
}
|
||||
ASSERT(m_selected_index < m_windows.size());
|
||||
auto* highlight_window = m_windows.at(m_selected_index).ptr();
|
||||
ASSERT(highlight_window);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue