diff --git a/docs/astro.config.mjs b/docs/astro.config.mjs index d5c941767640..1a259c399d62 100644 --- a/docs/astro.config.mjs +++ b/docs/astro.config.mjs @@ -234,6 +234,10 @@ export default defineConfig({ ...getSidebarTranslatedLabel("FAQ"), link: "/community/faq/", }, + { + ...getSidebarTranslatedLabel("Stylus support"), + link: "/community/stylus-support/", + }, { ...getSidebarTranslatedLabel("Comparison"), link: "/community/comparison/", diff --git a/docs/src/content/docs/community/faq.md b/docs/src/content/docs/community/faq.md index ba217604bf6c..f15e62e0d427 100644 --- a/docs/src/content/docs/community/faq.md +++ b/docs/src/content/docs/community/faq.md @@ -23,6 +23,8 @@ Try updating your browser to the latest version. > [#270](https://github.com/LinwoodDev/Butterfly/issues/270) +See [Stylus support](/community/stylus-support) for current behavior and workarounds. + I'm using the input provided by the flutter framework. This is the issue to track it: [flutter/flutter#42846](https://github.com/flutter/flutter/issues/42846). @@ -58,6 +60,8 @@ Butterfly is available on iOS as preview. Click [here](https://butterfly.linwood > [#238](https://github.com/LinwoodDev/Butterfly/issues/238) +See [Stylus support](/community/stylus-support) for current behavior, settings, and issue links. + I'm using the input provided by the flutter framework. There are already issues to track it: Windows: [flutter/flutter#65248](https://github.com/flutter/flutter/issues/65248) and [flutter/flutter#102836](https://github.com/flutter/flutter/issues/102836). diff --git a/docs/src/content/docs/community/stylus-support.md b/docs/src/content/docs/community/stylus-support.md new file mode 100644 index 000000000000..351bb8e5db0c --- /dev/null +++ b/docs/src/content/docs/community/stylus-support.md @@ -0,0 +1,39 @@ +--- +title: Stylus support +--- + +This page collects the current stylus and pen-input behavior in Butterfly. + +## Supported platforms + +- **Android / mobile:** Stylus input works best and is the main supported path today. +- **Desktop (Windows/Linux):** Stylus input is currently limited by Flutter input support. +- **Web:** Often a good fallback when desktop stylus behavior is inconsistent. + +## Stylus-related settings + +You can find stylus-related options in **Settings → Input → Pen**: + +- **Pen-only input** (changed in 2.5): helps avoid accidental finger/touch drawing when using a stylus. +- **Pen-only toggle on stylus detection:** when a stylus is detected, a quick Pen-only toggle is activated; you can still disable it in **Settings → Input → Pen**. +- **Ignore pressure:** useful when pressure data is unreliable. This is set to help with cases where Firefox reports incorrect pressure on first input. +- **Input test:** lets you verify what pointer/stylus events your device is currently reporting. + +## Pen shortcuts and pointer test + +Butterfly supports pen/stylus shortcuts (button mappings can vary by device/OS). If shortcuts do not behave as expected, open **Input test** first and check button values: + +- **Primary button** commonly appears as `10` (`2`) +- **Secondary button** commonly appears as `100` (`4`) or `100000` (`32`) + +These values are bit mappings from pointer button flags. + +## Known framework limitations + +Some stylus issues come from Flutter input handling rather than Butterfly directly. + +- Android S-Pen tracking issue: [flutter/flutter#42846](https://github.com/flutter/flutter/issues/42846) +- Windows stylus issues: [flutter/flutter#65248](https://github.com/flutter/flutter/issues/65248), [flutter/flutter#102836](https://github.com/flutter/flutter/issues/102836) +- Linux stylus issue: [flutter/flutter#63209](https://github.com/flutter/flutter/issues/63209) + +If your setup is affected, please still report it in Butterfly issues with your platform, device model, and app version. diff --git a/docs/src/translations/en.json b/docs/src/translations/en.json index 32b8a4851bad..54d66d7c9e7a 100644 --- a/docs/src/translations/en.json +++ b/docs/src/translations/en.json @@ -43,6 +43,7 @@ "code_of_conduct": "Code of conduct", "embedding": "Embedding", "faq": "FAQ", + "stylus_support": "Stylus support", "versions": "Versions", "nightly": "Nightly", "privacy_policy": "Privacy policy",