diff --git a/blocksuite/affine/components/src/slider/slider.ts b/blocksuite/affine/components/src/slider/slider.ts index b217e2f9fd..fed9865068 100644 --- a/blocksuite/affine/components/src/slider/slider.ts +++ b/blocksuite/affine/components/src/slider/slider.ts @@ -92,7 +92,7 @@ export class Slider extends WithDisposable(LitElement) { const dispose = on(this, 'pointermove', this._onPointerMove); this._disposables.add(once(this, 'pointerup', dispose)); - this._disposables.add(once(this, 'pointerout', dispose)); + this._disposables.add(once(this, 'pointerleave', dispose)); }; private readonly _onPointerMove = (e: PointerEvent) => { diff --git a/blocksuite/affine/components/src/slider/styles.ts b/blocksuite/affine/components/src/slider/styles.ts index 3075a6425e..edfa9cc4ee 100644 --- a/blocksuite/affine/components/src/slider/styles.ts +++ b/blocksuite/affine/components/src/slider/styles.ts @@ -2,6 +2,11 @@ import { unsafeCSSVarV2 } from '@blocksuite/affine-shared/theme'; import { css } from 'lit'; export const styles = css` + :host { + display: block; + touch-action: none; + } + :host([disabled]) { opacity: 0.5; pointer-events: none; diff --git a/blocksuite/affine/gfx/brush/src/toolbar/components/pen/pen-menu.ts b/blocksuite/affine/gfx/brush/src/toolbar/components/pen/pen-menu.ts index 82f212ecf9..55ec97ab35 100644 --- a/blocksuite/affine/gfx/brush/src/toolbar/components/pen/pen-menu.ts +++ b/blocksuite/affine/gfx/brush/src/toolbar/components/pen/pen-menu.ts @@ -1,5 +1,9 @@ import { adjustColorAlpha } from '@blocksuite/affine-components/color-picker'; -import { DefaultTheme } from '@blocksuite/affine-model'; +import { + BRUSH_LINE_WIDTHS, + DefaultTheme, + HIGHLIGHTER_LINE_WIDTHS, +} from '@blocksuite/affine-model'; import { FeatureFlagService, ThemeProvider, @@ -97,6 +101,11 @@ export class EdgelessPenMenu extends EdgelessToolbarToolMixin( this.onChange({ color }); }; + private readonly _onPickLineWidth = (e: CustomEvent) => { + e.stopPropagation(); + this.onChange({ lineWidth: e.detail }); + }; + override type = [BrushTool, HighlighterTool]; override render() { @@ -109,10 +118,13 @@ export class EdgelessPenMenu extends EdgelessToolbarToolMixin( value: { brush: brushIcon, highlighter: highlighterIcon }, }, penInfo$: { - value: { type, color }, + value: { type, color, lineWidth }, }, } = this; + const lineWidths = + type === 'brush' ? BRUSH_LINE_WIDTHS : HIGHLIGHTER_LINE_WIDTHS; + return html`
@@ -156,6 +168,13 @@ export class EdgelessPenMenu extends EdgelessToolbarToolMixin(