From f749bb8d839edd970d236646ea74b0ed5a0bf253 Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Tue, 31 May 2022 19:33:06 +0300 Subject: [PATCH] Implement desktop client layout --- lib/redux/app/app_actions.dart | 9 +++++++-- lib/ui/app/view_scaffold.dart | 2 -- lib/ui/invoice/edit/invoice_edit_desktop.dart | 1 - 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/redux/app/app_actions.dart b/lib/redux/app/app_actions.dart index 12eb89c02..2dd5ad954 100644 --- a/lib/redux/app/app_actions.dart +++ b/lib/redux/app/app_actions.dart @@ -495,9 +495,14 @@ void viewEntityById({ if (isDesktop(navigatorKey.currentContext)) { if (!state.prefState.isViewerFullScreen(entityType)) store.dispatch(ToggleViewerLayout(entityType)); + final filterEntity = + store.state.getEntityMap(entityType)[entityId] as BaseEntity; viewEntitiesByType( - entityType: EntityType.invoice, - filterEntity: store.state.getEntityMap(entityType)[entityId]); + entityType: filterEntity.entityType.relatedTypes + .where((entityType) => + state.userCompany.canViewOrCreate(entityType)) + .first, + filterEntity: filterEntity); } else { store.dispatch(ViewClient( clientId: entityId, diff --git a/lib/ui/app/view_scaffold.dart b/lib/ui/app/view_scaffold.dart index 0f1b41bb9..b06fae022 100644 --- a/lib/ui/app/view_scaffold.dart +++ b/lib/ui/app/view_scaffold.dart @@ -1,6 +1,4 @@ // Flutter imports: -import 'dart:ui'; - import 'package:flutter/material.dart'; // Package imports: diff --git a/lib/ui/invoice/edit/invoice_edit_desktop.dart b/lib/ui/invoice/edit/invoice_edit_desktop.dart index 5cdad52af..66382dc9e 100644 --- a/lib/ui/invoice/edit/invoice_edit_desktop.dart +++ b/lib/ui/invoice/edit/invoice_edit_desktop.dart @@ -21,7 +21,6 @@ import 'package:invoiceninja_flutter/data/models/invoice_model.dart'; import 'package:invoiceninja_flutter/data/models/serializers.dart'; import 'package:invoiceninja_flutter/data/models/settings_model.dart'; import 'package:invoiceninja_flutter/data/web_client.dart'; -import 'package:invoiceninja_flutter/redux/app/app_actions.dart'; import 'package:invoiceninja_flutter/redux/app/app_state.dart'; import 'package:invoiceninja_flutter/redux/client/client_selectors.dart'; import 'package:invoiceninja_flutter/redux/invoice/invoice_selectors.dart';