diff --git a/src/lib/isTouchscreenDevice.ts b/src/lib/isTouchscreenDevice.ts
index ee674992f1d64922198a75abee8af0da63cc8cb0..f1cd23393a332aedae31efce7cadd93fc9cd1d06 100644
--- a/src/lib/isTouchscreenDevice.ts
+++ b/src/lib/isTouchscreenDevice.ts
@@ -1,7 +1,7 @@
 import { isDesktop, isMobile, isTablet } from "react-device-detect";
 
 export const isTouchscreenDevice =
-    isDesktop && !isTablet
+    (isDesktop || isTablet)
         ? false
         : (typeof window !== "undefined"
               ? navigator.maxTouchPoints > 0
diff --git a/src/pages/settings/panes/Sessions.tsx b/src/pages/settings/panes/Sessions.tsx
index c2b1f16218d60b018178c16223932c3cfbc68a01..2a67c337494f26b86abf7bf4a55eb2948dbd4044 100644
--- a/src/pages/settings/panes/Sessions.tsx
+++ b/src/pages/settings/panes/Sessions.tsx
@@ -182,7 +182,27 @@ export function Sessions() {
                     </div>
                 )
             })}
-            <Button error>
+            <Button error
+                onClick={async () => {
+                    // ! FIXME: add to rAuth
+                    let del: string[] = [];
+                    render.forEach((session) => {
+                        if (deviceId !== session.id) {
+                            del.push(session.id);
+                        }
+                    })
+
+                    setDelete(del);
+
+                    for (let id of del) {
+                        await client.req(
+                            "DELETE",
+                            `/auth/sessions/${id}` as "/auth/sessions",
+                        );
+                    }
+
+                    setSessions(sessions.filter(x => x.id === deviceId));
+                }}>
                 <Text id="app.settings.pages.sessions.logout" />
             </Button>
             <Tip>