@tutti-os/workbench-surface 0.0.40 → 0.0.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -278,31 +278,31 @@
278
278
  .workbench-window__resize-handle[data-handle="north-west"],
279
279
  .workbench-window__resize-handle[data-handle="south-east"],
280
280
  .workbench-window__resize-handle[data-handle="south-west"] {
281
- width: 24px;
282
- height: 24px;
281
+ width: 16px;
282
+ height: 16px;
283
283
  }
284
284
 
285
285
  .workbench-window__resize-handle[data-handle="north-east"] {
286
- top: -8px;
287
- right: -8px;
286
+ top: -12px;
287
+ right: -12px;
288
288
  cursor: nesw-resize;
289
289
  }
290
290
 
291
291
  .workbench-window__resize-handle[data-handle="north-west"] {
292
- top: -8px;
293
- left: -8px;
292
+ top: -12px;
293
+ left: -12px;
294
294
  cursor: nwse-resize;
295
295
  }
296
296
 
297
297
  .workbench-window__resize-handle[data-handle="south-east"] {
298
- right: -8px;
299
- bottom: -8px;
298
+ right: -12px;
299
+ bottom: -12px;
300
300
  cursor: nwse-resize;
301
301
  }
302
302
 
303
303
  .workbench-window__resize-handle[data-handle="south-west"] {
304
- bottom: -8px;
305
- left: -8px;
304
+ bottom: -12px;
305
+ left: -12px;
306
306
  cursor: nesw-resize;
307
307
  }
308
308
 
@@ -12,6 +12,25 @@ test("floating window bodies do not reserve a right-side content margin", () =>
12
12
  );
13
13
  });
14
14
 
15
+ test("floating window corner resize handles do not intrude further than the edge handles", () => {
16
+ const css = readFileSync(resolve("src/styles/workbench.css"), "utf8");
17
+
18
+ // Edge handles (north/south/east/west) reach 4px into the window before
19
+ // being clipped by `.workbench-window`'s overflow:hidden. Corner handles
20
+ // used to be sized/offset so they reached 16px inward instead, which let
21
+ // them sit on top of interactive chrome anchored to a window's corners
22
+ // (for example the agent-gui conversation rail's bottom-left config
23
+ // button) and swallow clicks meant for that content.
24
+ assert.match(
25
+ css,
26
+ /\.workbench-window__resize-handle\[data-handle="north-east"\],\s*\.workbench-window__resize-handle\[data-handle="north-west"\],\s*\.workbench-window__resize-handle\[data-handle="south-east"\],\s*\.workbench-window__resize-handle\[data-handle="south-west"\]\s*{[^}]*width:\s*16px;[^}]*height:\s*16px;/s
27
+ );
28
+ assert.match(
29
+ css,
30
+ /\.workbench-window__resize-handle\[data-handle="south-west"\]\s*{[^}]*bottom:\s*-12px;[^}]*left:\s*-12px;/s
31
+ );
32
+ });
33
+
15
34
  test("mission control hidden presentation windows are invisible and inert", () => {
16
35
  const css = readFileSync(resolve("src/styles/workbench.css"), "utf8");
17
36
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tutti-os/workbench-surface",
3
- "version": "0.0.40",
3
+ "version": "0.0.41",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.ts",
@@ -34,10 +34,10 @@
34
34
  "@tutti-os/config-tsconfig": "0.0.0"
35
35
  },
36
36
  "dependencies": {
37
- "@tutti-os/ui-i18n-runtime": "0.0.40",
38
- "@tutti-os/ui-react-hooks": "0.0.40",
39
- "@tutti-os/workbench-snapshot": "0.0.40",
40
- "@tutti-os/ui-system": "0.0.40"
37
+ "@tutti-os/ui-i18n-runtime": "0.0.41",
38
+ "@tutti-os/ui-react-hooks": "0.0.41",
39
+ "@tutti-os/workbench-snapshot": "0.0.41",
40
+ "@tutti-os/ui-system": "0.0.41"
41
41
  },
42
42
  "peerDependencies": {
43
43
  "react": "^19.1.0",