ItemSelectionProvider: promote toot expansion
state * used in Profile, TrendTimelinePanel, TimelinePanel
This commit is contained in:
parent
dafc2c47a8
commit
9499182a8d
5 changed files with 120 additions and 68 deletions
|
@ -58,6 +58,10 @@ import Menu, { createManagedMenuState } from "~material/Menu";
|
|||
import { share } from "~platform/share";
|
||||
import "./Profile.css";
|
||||
import { useNavigator } from "~platform/StackedRouter";
|
||||
import {
|
||||
createSingluarItemSelection,
|
||||
default as ItemSelectionProvider,
|
||||
} from "../timelines/toots/ItemSelectionProvider";
|
||||
|
||||
const Profile: Component = () => {
|
||||
const { pop } = useNavigator();
|
||||
|
@ -70,6 +74,7 @@ const Profile: Component = () => {
|
|||
}>();
|
||||
const windowSize = useWindowSize();
|
||||
const time = createTimeSource();
|
||||
const [, selectionState] = createSingluarItemSelection();
|
||||
|
||||
const menuButId = createUniqueId();
|
||||
const recentTootListId = createUniqueId();
|
||||
|
@ -499,22 +504,26 @@ const Profile: Component = () => {
|
|||
></TootFilterButton>
|
||||
</div>
|
||||
|
||||
<TimeSourceProvider value={time}>
|
||||
<Show when={recentTootFilter().pinned && pinnedToots.list.length > 0}>
|
||||
<ItemSelectionProvider value={selectionState}>
|
||||
<TimeSourceProvider value={time}>
|
||||
<Show
|
||||
when={recentTootFilter().pinned && pinnedToots.list.length > 0}
|
||||
>
|
||||
<TootList
|
||||
threads={pinnedToots.list}
|
||||
onUnknownThread={pinnedToots.getPath}
|
||||
onChangeToot={pinnedToots.set}
|
||||
/>
|
||||
<Divider />
|
||||
</Show>
|
||||
<TootList
|
||||
threads={pinnedToots.list}
|
||||
onUnknownThread={pinnedToots.getPath}
|
||||
onChangeToot={pinnedToots.set}
|
||||
id={recentTootListId}
|
||||
threads={recentToots.list}
|
||||
onUnknownThread={recentToots.getPath}
|
||||
onChangeToot={recentToots.set}
|
||||
/>
|
||||
<Divider />
|
||||
</Show>
|
||||
<TootList
|
||||
id={recentTootListId}
|
||||
threads={recentToots.list}
|
||||
onUnknownThread={recentToots.getPath}
|
||||
onChangeToot={recentToots.set}
|
||||
/>
|
||||
</TimeSourceProvider>
|
||||
</TimeSourceProvider>
|
||||
</ItemSelectionProvider>
|
||||
|
||||
<Show when={!recentTootChunk()?.done}>
|
||||
<div
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue