From 08c4625bbf67261bd438c4f66ff372c506d685df Mon Sep 17 00:00:00 2001 From: Pavel Laptev Date: Sat, 17 May 2025 00:35:08 +0200 Subject: [PATCH 1/3] fix: prevent css transitions from firing on mount --- .../v3/MultiStackOfflaneDropzone.svelte | 6 +++--- packages/ui/src/lib/scroll/Scrollbar.svelte | 10 +++++++--- .../src/lib/utils/preventTransitionOnMount.ts | 19 +++++++++++++++++++ packages/ui/src/styles/utility/helpers.css | 6 +++++- 4 files changed, 34 insertions(+), 7 deletions(-) create mode 100644 packages/ui/src/lib/utils/preventTransitionOnMount.ts diff --git a/apps/desktop/src/components/v3/MultiStackOfflaneDropzone.svelte b/apps/desktop/src/components/v3/MultiStackOfflaneDropzone.svelte index cf1f05c4b0..8862cc3fdf 100644 --- a/apps/desktop/src/components/v3/MultiStackOfflaneDropzone.svelte +++ b/apps/desktop/src/components/v3/MultiStackOfflaneDropzone.svelte @@ -4,6 +4,7 @@ import { StackService } from '$lib/stacks/stackService.svelte'; import { UiState } from '$lib/state/uiState.svelte'; import { inject } from '@gitbutler/shared/context'; + import { preventTransitionOnMount } from '@gitbutler/ui/utils/preventTransitionOnMount'; interface Props { projectId: string; @@ -20,14 +21,13 @@ {#snippet overlay({ hovered, activated })}
-
+
-

+

Drag and drop files
to create a new branch.

diff --git a/packages/ui/src/lib/scroll/Scrollbar.svelte b/packages/ui/src/lib/scroll/Scrollbar.svelte index ba4fc24265..18175d50b3 100644 --- a/packages/ui/src/lib/scroll/Scrollbar.svelte +++ b/packages/ui/src/lib/scroll/Scrollbar.svelte @@ -276,6 +276,7 @@ } +
+ + From f2fe57cfeb66c5f10724bd0ed2696f8649d6dbc3 Mon Sep 17 00:00:00 2001 From: Pavel Laptev Date: Sat, 17 May 2025 15:42:29 +0200 Subject: [PATCH 3/3] fix: restructure components hierarchy in ReduxResult In order to prevent content shift if sections are loading data and still empty. --- .../src/components/v3/WorkspaceView.svelte | 49 ++++++++++++------- .../src/components/v3/WorktreeChanges.svelte | 45 ++++++++--------- 2 files changed, 53 insertions(+), 41 deletions(-) diff --git a/apps/desktop/src/components/v3/WorkspaceView.svelte b/apps/desktop/src/components/v3/WorkspaceView.svelte index c1519ef6d9..cb8518703d 100644 --- a/apps/desktop/src/components/v3/WorkspaceView.svelte +++ b/apps/desktop/src/components/v3/WorkspaceView.svelte @@ -133,31 +133,34 @@ {/if}
- - {#snippet children(stacks)} -
+
+ + {#snippet loading()} +
+ {/snippet} + + {#snippet children(stacks)} - - uiState.global.stacksViewWidth.set(value)} - /> -
- {/snippet} - + {/snippet} + + uiState.global.stacksViewWidth.set(value)} + /> +
diff --git a/apps/desktop/src/components/v3/WorktreeChanges.svelte b/apps/desktop/src/components/v3/WorktreeChanges.svelte index 3a8b91416e..e2dd970f6c 100644 --- a/apps/desktop/src/components/v3/WorktreeChanges.svelte +++ b/apps/desktop/src/components/v3/WorktreeChanges.svelte @@ -119,23 +119,24 @@ let listFooterHeight = $state(0); - - {#snippet children(changes, { stackId, projectId })} - - {#snippet overlay({ hovered, activated })} - - {/snippet} -
- + + {#snippet overlay({ hovered, activated })} + + {/snippet} + +
+ + + {#snippet children(changes, { stackId, projectId })}
{/if} -
-
-
- {/snippet} - + {/snippet} + +
+
+