minor QoL patches

This commit is contained in:
vaxerski 2022-03-21 19:28:43 +01:00
parent 295a0c4a69
commit 3d61738d5d
5 changed files with 12 additions and 2 deletions

View file

@ -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) {

View file

@ -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) {

View file

@ -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);
}

View file

@ -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

View file

@ -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);
} }