|
458 | 458 | min-width: 0; |
459 | 459 | } |
460 | 460 |
|
461 | | -.app-layout-split .dv-sash { |
462 | | - background-color: transparent; |
| 461 | +.layout, |
| 462 | +.dock-split { |
| 463 | + /* Asymmetrical hit margins to prevent blocking clicks on the left side (e.g. file tree) */ |
| 464 | + --sash-hit-margin-left: 2px; |
| 465 | + --sash-hit-margin-right: 2px; |
| 466 | +} |
| 467 | + |
| 468 | +@media (pointer: coarse) { |
| 469 | + .layout, |
| 470 | + .dock-split { |
| 471 | + --sash-hit-margin-left: 4px; /* Made smaller on the left to avoid blocking file explorer clicks */ |
| 472 | + --sash-hit-margin-right: 4px; /* Larger on the right side where it is safer to tap */ |
| 473 | + } |
463 | 474 | } |
464 | 475 |
|
465 | | -.app-layout-split .dv-sash::after { |
| 476 | +.layout .dv-sash, |
| 477 | +.dock-split .dv-sash { |
| 478 | + background-color: transparent !important; |
| 479 | +} |
| 480 | + |
| 481 | +.layout .dv-sash::after, |
| 482 | +.dock-split .dv-sash::after { |
466 | 483 | content: ''; |
467 | 484 | position: absolute; |
468 | 485 | pointer-events: none; |
| 486 | + transition: background-color 0.15s ease; |
469 | 487 | } |
470 | 488 |
|
471 | | -.app-layout-split .dv-vertical > .dv-sash-container > .dv-sash::after { |
| 489 | +/* Vertical sashes (separating panels horizontally) */ |
| 490 | +.layout .dv-split-view-container.dv-horizontal > .dv-sash-container > .dv-sash::after, |
| 491 | +.dock-split .dv-split-view-container.dv-horizontal > .dv-sash-container > .dv-sash::after { |
472 | 492 | left: 50%; |
473 | 493 | top: 0; |
474 | 494 | bottom: 0; |
475 | 495 | width: 2px; |
476 | 496 | transform: translateX(-50%); |
477 | | - background: linear-gradient(to bottom, transparent, #555, transparent); |
| 497 | + background: linear-gradient(to bottom, transparent, var(--theme-border, #555), transparent); |
478 | 498 | } |
479 | 499 |
|
480 | | -.app-layout-split .dv-horizontal > .dv-sash-container > .dv-sash::after { |
| 500 | +/* Horizontal sashes (separating panels vertically) */ |
| 501 | +.layout .dv-split-view-container.dv-vertical > .dv-sash-container > .dv-sash::after, |
| 502 | +.dock-split .dv-split-view-container.dv-vertical > .dv-sash-container > .dv-sash::after { |
481 | 503 | left: 0; |
482 | 504 | right: 0; |
483 | 505 | top: 50%; |
484 | 506 | height: 2px; |
485 | 507 | transform: translateY(-50%); |
486 | | - background: linear-gradient(to right, transparent, #555, transparent); |
| 508 | + background: linear-gradient(to right, transparent, var(--theme-border, #555), transparent); |
| 509 | +} |
| 510 | + |
| 511 | +/* Highlight active/dragging sashes */ |
| 512 | +.layout .dv-sash:not(.disabled):active::after, |
| 513 | +.dock-split .dv-sash:not(.disabled):active::after, |
| 514 | +.layout .dv-sash:not(.disabled):hover::after, |
| 515 | +.dock-split .dv-sash:not(.disabled):hover::after { |
| 516 | + background: var(--theme-accent-background, #007acc) !important; |
| 517 | +} |
| 518 | + |
| 519 | +/* Expanded hit area for sashes to make resizing easier, especially on touch devices */ |
| 520 | +.layout .dv-sash::before, |
| 521 | +.dock-split .dv-sash::before { |
| 522 | + content: ''; |
| 523 | + position: absolute; |
| 524 | + z-index: 10; |
| 525 | + background: transparent; |
| 526 | +} |
| 527 | + |
| 528 | +/* Vertical sashes hit area (separating panels horizontally) */ |
| 529 | +.layout .dv-split-view-container.dv-horizontal > .dv-sash-container > .dv-sash::before, |
| 530 | +.dock-split .dv-split-view-container.dv-horizontal > .dv-sash-container > .dv-sash::before { |
| 531 | + top: 0; |
| 532 | + bottom: 0; |
| 533 | + left: calc(-1 * var(--sash-hit-margin-left)); |
| 534 | + right: calc(-1 * var(--sash-hit-margin-right)); |
| 535 | +} |
| 536 | + |
| 537 | +/* Horizontal sashes hit area (separating panels vertically) */ |
| 538 | +.layout .dv-split-view-container.dv-vertical > .dv-sash-container > .dv-sash::before, |
| 539 | +.dock-split .dv-split-view-container.dv-vertical > .dv-sash-container > .dv-sash::before { |
| 540 | + left: 0; |
| 541 | + right: 0; |
| 542 | + top: calc(-1 * var(--sash-hit-margin-left)); |
| 543 | + bottom: calc(-1 * var(--sash-hit-margin-right)); |
487 | 544 | } |
488 | 545 |
|
489 | 546 | .layout .dv-tab-overflow-control, |
|
0 commit comments