mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-29 20:05:59 +01:00
minor QoL patches
This commit is contained in:
parent
295a0c4a69
commit
3d61738d5d
5 changed files with 12 additions and 2 deletions
|
@ -61,13 +61,16 @@ void Events::listener_unmapWindow(wl_listener* listener, void* data) {
|
||||||
|
|
||||||
g_pCompositor->removeWindowFromVectorSafe(PWINDOW);
|
g_pCompositor->removeWindowFromVectorSafe(PWINDOW);
|
||||||
|
|
||||||
|
// refocus on a new window
|
||||||
|
g_pInputManager->refocus();
|
||||||
|
|
||||||
Debug::log(LOG, "Window %x unmapped", PWINDOW);
|
Debug::log(LOG, "Window %x unmapped", PWINDOW);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Events::listener_commitWindow(wl_listener* listener, void* data) {
|
void Events::listener_commitWindow(wl_listener* listener, void* data) {
|
||||||
CWindow* PWINDOW = wl_container_of(listener, PWINDOW, listen_commitWindow);
|
CWindow* PWINDOW = wl_container_of(listener, PWINDOW, listen_commitWindow);
|
||||||
|
|
||||||
PWINDOW;
|
Debug::log(LOG, "Window %x committed", PWINDOW);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Events::listener_destroyWindow(wl_listener* listener, void* data) {
|
void Events::listener_destroyWindow(wl_listener* listener, void* data) {
|
||||||
|
|
|
@ -185,6 +185,9 @@ void CHyprDwindleLayout::onWindowCreated(CWindow* pWindow) {
|
||||||
PNODE->pParent = NEWPARENT;
|
PNODE->pParent = NEWPARENT;
|
||||||
|
|
||||||
NEWPARENT->recalcSizePosRecursive();
|
NEWPARENT->recalcSizePosRecursive();
|
||||||
|
|
||||||
|
applyNodeDataToWindow(PNODE);
|
||||||
|
applyNodeDataToWindow(OPENINGON);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CHyprDwindleLayout::onWindowRemoved(CWindow* pWindow) {
|
void CHyprDwindleLayout::onWindowRemoved(CWindow* pWindow) {
|
||||||
|
|
|
@ -194,3 +194,7 @@ void CInputManager::onKeyboardMod(void* data, SKeyboard* pKeyboard) {
|
||||||
wlr_seat_set_keyboard(g_pCompositor->m_sWLRSeat, pKeyboard->keyboard);
|
wlr_seat_set_keyboard(g_pCompositor->m_sWLRSeat, pKeyboard->keyboard);
|
||||||
wlr_seat_keyboard_notify_modifiers(g_pCompositor->m_sWLRSeat, &pKeyboard->keyboard->keyboard->modifiers);
|
wlr_seat_keyboard_notify_modifiers(g_pCompositor->m_sWLRSeat, &pKeyboard->keyboard->keyboard->modifiers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CInputManager::refocus() {
|
||||||
|
mouseMoveUnified(0);
|
||||||
|
}
|
|
@ -20,6 +20,7 @@ public:
|
||||||
void destroyMouse(wlr_input_device*);
|
void destroyMouse(wlr_input_device*);
|
||||||
|
|
||||||
Vector2D getMouseCoordsInternal();
|
Vector2D getMouseCoordsInternal();
|
||||||
|
void refocus();
|
||||||
|
|
||||||
|
|
||||||
// for dragging floating windows
|
// for dragging floating windows
|
||||||
|
|
|
@ -69,7 +69,6 @@ void CHyprXWaylandManager::sendCloseWindow(CWindow* pWindow) {
|
||||||
void CHyprXWaylandManager::setWindowSize(CWindow* pWindow, const Vector2D& size) {
|
void CHyprXWaylandManager::setWindowSize(CWindow* pWindow, const Vector2D& size) {
|
||||||
if (pWindow->m_bIsX11)
|
if (pWindow->m_bIsX11)
|
||||||
wlr_xwayland_surface_configure(pWindow->m_uSurface.xwayland, pWindow->m_vRealPosition.x, pWindow->m_vRealPosition.y, size.x, size.y);
|
wlr_xwayland_surface_configure(pWindow->m_uSurface.xwayland, pWindow->m_vRealPosition.x, pWindow->m_vRealPosition.y, size.x, size.y);
|
||||||
|
|
||||||
else
|
else
|
||||||
wlr_xdg_toplevel_set_size(pWindow->m_uSurface.xdg->toplevel, size.x, size.y);
|
wlr_xdg_toplevel_set_size(pWindow->m_uSurface.xdg->toplevel, size.x, size.y);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue