Skip to content

Commit a2d641d

Browse files
committed
make messages auto-scroll
1 parent 756463c commit a2d641d

File tree

3 files changed

+47
-55
lines changed

3 files changed

+47
-55
lines changed

frontend/Main.tsx

+3-5
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,9 @@ const Main: Component = () => {
5252
</Flex>
5353
</Box>
5454
</Flex>
55-
<Box>
56-
<Box>
57-
<Heading level="1" mb="1">Messages</Heading>
58-
<Sidebar search={search} setSearch={setSearchAndOpen} />
59-
</Box>
55+
<Box overflow="auto">
56+
<Heading level="1" mb="1">Messages</Heading>
57+
<Sidebar search={search} setSearch={setSearchAndOpen} />
6058
</Box>
6159
</SplitView>
6260

frontend/Messages.tsx

+27-29
Original file line numberDiff line numberDiff line change
@@ -24,35 +24,33 @@ const Messages: Component<{
2424
});
2525

2626
return (
27-
<Box overflow="auto">
28-
<Table id="messages" dense css={{ "table-layout": "fixed" }}>
29-
<Thead>
30-
<Th maxW="70px"> Id </Th>
31-
<Th maxW="70px">Type</Th>
32-
<Th maxW="70px">Descr</Th>
33-
<Th>Payload</Th>
34-
</Thead>
35-
<Tbody>
36-
<For
37-
each={getMessages({
38-
instanceId: props.search().instanceId,
39-
type: props.search().type,
40-
})}
41-
>
42-
{(message, index) => (
43-
<MessageRow
44-
isSelected={messageIndex() === index()}
45-
message={message}
46-
onSelect={(message) => {
47-
setMessageIndex(index());
48-
props.onSelectMessage(message);
49-
}}
50-
/>
51-
)}
52-
</For>
53-
</Tbody>
54-
</Table>
55-
</Box>
27+
<Table id="messages" dense css={{ "table-layout": "fixed" }}>
28+
<Thead>
29+
<Th maxW="70px"> Id </Th>
30+
<Th maxW="70px">Type</Th>
31+
<Th maxW="70px">Descr</Th>
32+
<Th>Payload</Th>
33+
</Thead>
34+
<Tbody>
35+
<For
36+
each={getMessages({
37+
instanceId: props.search().instanceId,
38+
type: props.search().type,
39+
})}
40+
>
41+
{(message, index) => (
42+
<MessageRow
43+
isSelected={messageIndex() === index()}
44+
message={message}
45+
onSelect={(message) => {
46+
setMessageIndex(index());
47+
props.onSelectMessage(message);
48+
}}
49+
/>
50+
)}
51+
</For>
52+
</Tbody>
53+
</Table>
5654
);
5755
};
5856

frontend/Sidebar.tsx

+17-21
Original file line numberDiff line numberDiff line change
@@ -20,27 +20,23 @@ const Sidebar: Component<{
2020
const [message, setMessage] = createSignal<Message | null>(null);
2121

2222
return (
23-
<Flex height="100%" flexDirection="column" justifyContent="space-between">
24-
<Box>
25-
<Filters value={props.search()} onChange={props.setSearch} />
26-
<Tabs>
27-
<TabList>
28-
<Tab>Messages</Tab>
29-
<Tab>Chat</Tab>
30-
</TabList>
31-
<TabPanel>
32-
<Messages search={props.search} onSelectMessage={setMessage} />
33-
</TabPanel>
34-
<TabPanel>
35-
<Chat search={props.search} onSelectMessage={setMessage} />
36-
</TabPanel>
37-
</Tabs>
38-
</Box>
39-
<Box>
40-
<Show when={message()}>
41-
{(message) => <MessageDetails message={message} />}
42-
</Show>
43-
</Box>
23+
<Flex height="100%" flexDirection="column" overflow="auto">
24+
<Filters value={props.search()} onChange={props.setSearch} />
25+
<Tabs>
26+
<TabList>
27+
<Tab>Messages</Tab>
28+
<Tab>Chat</Tab>
29+
</TabList>
30+
<TabPanel>
31+
<Messages search={props.search} onSelectMessage={setMessage} />
32+
</TabPanel>
33+
<TabPanel>
34+
<Chat search={props.search} onSelectMessage={setMessage} />
35+
</TabPanel>
36+
</Tabs>
37+
<Show when={message()}>
38+
{(message) => <MessageDetails message={message} />}
39+
</Show>
4440
</Flex>
4541
);
4642
};

0 commit comments

Comments
 (0)