Fix mobile Calendar crash from missing DisplayPayeeProvider (#6698)

* Initial plan

* Fix mobile Calendar fatal error by correcting height constraint

The Virtualizer component in TransactionList requires its parent to have a defined height. Changed the View wrapper from height: '100%' to flex: 1 to properly distribute space within the flex container, accounting for the chevron button.

Co-authored-by: MatissJanis <886567+MatissJanis@users.noreply.github.com>

* Add DisplayPayeeProvider to fix mobile Calendar error

The TransactionListItem component uses useDisplayPayee hook which requires DisplayPayeeProvider context. Wrapped TransactionListMobile with DisplayPayeeProvider to fix "useDisplayPayee must be used within a DisplayPayeeContextProvider" error on mobile.

Co-authored-by: MatissJanis <886567+MatissJanis@users.noreply.github.com>

* Change flex to height for View component

* Add release notes for PR #6698

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: MatissJanis <886567+MatissJanis@users.noreply.github.com>
Co-authored-by: Matiss Janis Aboltins <matiss@mja.lv>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
This commit is contained in:
Copilot
2026-01-19 18:05:02 +00:00
committed by GitHub
parent e6e108ffbd
commit 9376217c5e
2 changed files with 16 additions and 7 deletions

View File

@@ -64,6 +64,7 @@ import { useAccounts } from '@desktop-client/hooks/useAccounts';
import { SchedulesProvider } from '@desktop-client/hooks/useCachedSchedules';
import { useCategories } from '@desktop-client/hooks/useCategories';
import { useDateFormat } from '@desktop-client/hooks/useDateFormat';
import { DisplayPayeeProvider } from '@desktop-client/hooks/useDisplayPayee';
import { useFormat, type FormatType } from '@desktop-client/hooks/useFormat';
import { useLocale } from '@desktop-client/hooks/useLocale';
import { useMergedRefs } from '@desktop-client/hooks/useMergedRefs';
@@ -743,13 +744,15 @@ function CalendarInner({ widget, parameters }: CalendarInnerProps) {
overflow: 'auto',
}}
>
<TransactionListMobile
isLoading={false}
onLoadMore={loadMoreTransactions}
transactions={allTransactions}
onOpenTransaction={onOpenTransaction}
isLoadingMore={false}
/>
<DisplayPayeeProvider transactions={allTransactions}>
<TransactionListMobile
isLoading={false}
onLoadMore={loadMoreTransactions}
transactions={allTransactions}
onOpenTransaction={onOpenTransaction}
isLoadingMore={false}
/>
</DisplayPayeeProvider>
</View>
</animated.div>
)}