fix: scrollbar width

This commit is contained in:
kangfenmao 2024-10-22 16:03:13 +08:00
parent 927670d3a3
commit 1063610c01
4 changed files with 20 additions and 3 deletions

View File

@ -1,5 +1,4 @@
@import './markdown.scss'; @import './markdown.scss';
@import './scrollbar.scss';
@import './ant.scss'; @import './ant.scss';
@import '../fonts/icon-fonts/iconfont.css'; @import '../fonts/icon-fonts/iconfont.css';
@import '../fonts/ubuntu/ubuntu.css'; @import '../fonts/ubuntu/ubuntu.css';
@ -39,6 +38,7 @@
--color-code-background: #323232; --color-code-background: #323232;
--color-scrollbar-thumb: rgba(255, 255, 255, 0.08); --color-scrollbar-thumb: rgba(255, 255, 255, 0.08);
--color-scrollbar-thumb-hover: rgba(255, 255, 255, 0.15); --color-scrollbar-thumb-hover: rgba(255, 255, 255, 0.15);
--color-scrollbar-thumb-active: rgba(255, 255, 255, 0.2);
--color-hover: rgba(40, 40, 40, 1); --color-hover: rgba(40, 40, 40, 1);
--color-active: rgba(55, 55, 55, 1); --color-active: rgba(55, 55, 55, 1);
@ -90,6 +90,7 @@ body[theme-mode='light'] {
--color-code-background: #e3e3e3; --color-code-background: #e3e3e3;
--color-scrollbar-thumb: rgba(0, 0, 0, 0.08); --color-scrollbar-thumb: rgba(0, 0, 0, 0.08);
--color-scrollbar-thumb-hover: rgba(0, 0, 0, 0.15); --color-scrollbar-thumb-hover: rgba(0, 0, 0, 0.15);
--color-scrollbar-thumb-active: rgba(0, 0, 0, 0.2);
--color-hover: var(--color-white-mute); --color-hover: var(--color-white-mute);
--color-active: var(--color-white-soft); --color-active: var(--color-white-soft);

View File

@ -45,6 +45,7 @@ export function useAppInit() {
useEffect(() => { useEffect(() => {
const transparentWindow = windowStyle === 'transparent' && isMac && !minappShow const transparentWindow = windowStyle === 'transparent' && isMac && !minappShow
window.root.style.background = transparentWindow ? 'var(--navbar-background-mac)' : 'var(--navbar-background)' window.root.style.background = transparentWindow ? 'var(--navbar-background-mac)' : 'var(--navbar-background)'
!isMac && import('@renderer/assets/styles/scrollbar.scss')
}, [windowStyle, minappShow]) }, [windowStyle, minappShow])
useEffect(() => { useEffect(() => {

View File

@ -1,3 +1,4 @@
import { isWindows } from '@renderer/config/constant'
import db from '@renderer/databases' import db from '@renderer/databases'
import { useAssistant } from '@renderer/hooks/useAssistant' import { useAssistant } from '@renderer/hooks/useAssistant'
import { useSettings } from '@renderer/hooks/useSettings' import { useSettings } from '@renderer/hooks/useSettings'
@ -8,7 +9,7 @@ import { EVENT_NAMES, EventEmitter } from '@renderer/services/event'
import { deleteMessageFiles, filterMessages, getContextCount } from '@renderer/services/messages' import { deleteMessageFiles, filterMessages, getContextCount } from '@renderer/services/messages'
import { estimateHistoryTokens, estimateMessageUsage } from '@renderer/services/tokens' import { estimateHistoryTokens, estimateMessageUsage } from '@renderer/services/tokens'
import { Assistant, Message, Model, Topic } from '@renderer/types' import { Assistant, Message, Model, Topic } from '@renderer/types'
import { captureScrollableDiv, runAsyncFunction, uuid } from '@renderer/utils' import { captureScrollableDiv, classNames, runAsyncFunction, uuid } from '@renderer/utils'
import { t } from 'i18next' import { t } from 'i18next'
import { flatten, last, reverse, take } from 'lodash' import { flatten, last, reverse, take } from 'lodash'
import { FC, useCallback, useEffect, useMemo, useRef, useState } from 'react' import { FC, useCallback, useEffect, useMemo, useRef, useState } from 'react'
@ -219,7 +220,12 @@ const Messages: FC<Props> = ({ assistant, topic, setActiveTopic }) => {
}, [assistant, messages]) }, [assistant, messages])
return ( return (
<Container id="messages" style={{ maxWidth }} key={assistant.id} ref={containerRef}> <Container
id="messages"
className={classNames(isWindows && 'scrollbar')}
style={{ maxWidth }}
key={assistant.id}
ref={containerRef}>
<Suggestions assistant={assistant} messages={messages} lastMessage={lastMessage} /> <Suggestions assistant={assistant} messages={messages} lastMessage={lastMessage} />
{lastMessage && <MessageItem key={lastMessage.id} message={lastMessage} lastMessage />} {lastMessage && <MessageItem key={lastMessage.id} message={lastMessage} lastMessage />}
{reverse([...messages]).map((message, index) => ( {reverse([...messages]).map((message, index) => (
@ -248,6 +254,11 @@ const Container = styled.div`
background-color: var(--color-background); background-color: var(--color-background);
padding-bottom: 20px; padding-bottom: 20px;
overflow-x: hidden; overflow-x: hidden;
&.scrollbar {
&::-webkit-scrollbar {
width: 10px;
}
}
` `
export default Messages export default Messages

View File

@ -329,3 +329,7 @@ export function formatFileSize(file: FileType) {
return (size / 1024).toFixed(2) + ' KB' return (size / 1024).toFixed(2) + ' KB'
} }
export function classNames(...classes: Array<string | boolean | undefined | null>) {
return classes.filter(Boolean).join(' ')
}