Skip to content

Commit

Permalink
directvt#86 Implement CloseWindow desktop action
Browse files Browse the repository at this point in the history
  • Loading branch information
o-sdn-o committed Dec 18, 2024
1 parent 0745be1 commit 5f4be7e
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions src/vtm.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -1800,8 +1800,14 @@ namespace netxs::app::vtm
}
void close_focused_windows(hids& gear)
{
log("close_focused_windows");
gear.set_handled();
items.foreach(gear.id, [&](auto& item_ptr)
{
bell::enqueue(item_ptr->object, [](auto& boss) // Keep the focus tree intact while processing key events.
{
boss.bell::signal(tier::anycast, e2::form::proceed::quit::one, true);
});
gear.set_handled();
});
}
void minimize_focused_windows(hids& gear)
{
Expand Down Expand Up @@ -2214,23 +2220,23 @@ namespace netxs::app::vtm
};
LISTEN(tier::preview, e2::form::proceed::action::warp , gear)
{
close_focused_windows(gear);
warp_focused_windows(gear);
};
LISTEN(tier::preview, e2::form::proceed::action::close , gear)
{
minimize_focused_windows(gear);
close_focused_windows(gear);
};
LISTEN(tier::preview, e2::form::proceed::action::minimize , gear)
{
maximize_focused_windows(gear);
minimize_focused_windows(gear);
};
LISTEN(tier::preview, e2::form::proceed::action::maximize , gear)
{
fullscreen_first_focused_window(gear);
maximize_focused_windows(gear);
};
LISTEN(tier::preview, e2::form::proceed::action::fullscreen , gear)
{
warp_focused_windows(gear);
fullscreen_first_focused_window(gear);
};
}

Expand Down

0 comments on commit 5f4be7e

Please sign in to comment.