fix(tasks): стрелка нижней панели открывает панель списков задач
Раньше на Задачах стрелка «назад» уводила на предыдущий раздел (Файлы). Теперь она закрывает открытый список и показывает панель списков задач (TasksListNavView: Все/Текущие/конкретные списки) — как сайдбар папок в Почте/Файлах/Календаре. Проброшен showListsRequest → vm.closeList(). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -134,6 +134,7 @@ fun AppScaffold(
|
||||
var filesUploadRequest by remember { mutableIntStateOf(0) }
|
||||
var contactsCreateRequest by remember { mutableIntStateOf(0) }
|
||||
var tasksCreateRequest by remember { mutableIntStateOf(0) }
|
||||
var tasksShowListsRequest by remember { mutableIntStateOf(0) }
|
||||
var supportCreateRequest by remember { mutableIntStateOf(0) }
|
||||
var calendarSettingsRequest by remember { mutableIntStateOf(0) }
|
||||
var talkChatsRequest by remember { mutableIntStateOf(0) }
|
||||
@@ -458,7 +459,10 @@ fun AppScaffold(
|
||||
AppTab.Mail -> mailSidebarOpen = !mailSidebarOpen
|
||||
AppTab.Calendar -> calendarSidebarOpen = !calendarSidebarOpen
|
||||
AppTab.Files -> filesSidebarOpen = !filesSidebarOpen
|
||||
// Разделы без сайдбара (Карточки/Конференции/Контакты/Задачи/
|
||||
// Задачи: стрелка открывает панель списков (закрывает
|
||||
// открытый список) — как сайдбар в Почте/Файлах.
|
||||
AppTab.Tasks -> tasksShowListsRequest++
|
||||
// Разделы без сайдбара (Карточки/Конференции/Контакты/
|
||||
// Поддержка): стрелка = «назад» к предыдущему разделу.
|
||||
else -> popTabHistory()?.let { activeTab = it }
|
||||
}
|
||||
@@ -566,6 +570,7 @@ fun AppScaffold(
|
||||
modifier = contentModifier,
|
||||
createRequest = tasksCreateRequest,
|
||||
openListSlug = pendingTasksListSlug,
|
||||
showListsRequest = tasksShowListsRequest,
|
||||
onOpenListConsumed = { pendingTasksListSlug = null },
|
||||
onUnauthorized = forceLogout,
|
||||
)
|
||||
|
||||
@@ -31,12 +31,18 @@ fun TasksScreen(
|
||||
modifier: Modifier = Modifier,
|
||||
createRequest: Int = 0,
|
||||
openListSlug: String? = null,
|
||||
showListsRequest: Int = 0,
|
||||
onOpenListConsumed: () -> Unit = {},
|
||||
onUnauthorized: () -> Unit = {},
|
||||
) {
|
||||
val vm: TasksViewModel = viewModel()
|
||||
val state by vm.state.collectAsState()
|
||||
|
||||
// Стрелка «назад» нижней панели на Задачах → показать панель списков (закрыть открытый список).
|
||||
LaunchedEffect(showListsRequest) {
|
||||
if (showListsRequest > 0) vm.closeList()
|
||||
}
|
||||
|
||||
LaunchedEffect(session.serverUrl, session.username, session.davUserId) {
|
||||
vm.load(session)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user