1"use strict";(globalThis.webpackChunkfloorp_docs||=[]).push([[6399],{2081(e,s,t){t.r(s),t.d(s,{assets:()=>a,contentTitle:()=>u,default:()=>x,frontMatter:()=>h,metadata:()=>n,toc:()=>g});const n=JSON.parse('{"id":"features/mouse-gestures","title":"Mouse Gestures","description":"Learn how to use the mouse gesture feature in Floorp","source":"@site/docs/features/mouse-gestures.mdx","sourceDirName":"features","slug":"/features/mouse-gestures","permalink":"/docs/features/mouse-gestures","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Cutter","lastUpdatedAt":1779656103000,"frontMatter":{"title":"Mouse Gestures","description":"Learn how to use the mouse gesture feature in Floorp"},"sidebar":"tutorialSidebar","previous":{"title":"Interface and Themes","permalink":"/docs/features/interface-and-themes"},"next":{"title":"Panel Sidebar","permalink":"/docs/features/panel-sidebar"}}');var i=t(1987),r=t(7008),o=t(264);const l=t.p+"assets/images/actions-reload-ea2b3b4934ecd6e6ea9ae8cfad3df9fb.webp",c=t.p+"assets/images/settings-general-c8bed5bf7325dd36c774d3ba5568de61.webp",d=t.p+"assets/images/settings-edit-5b8ba2130110f821274095eb950cf084.webp",h={title:"Mouse Gestures",description:"Learn how to use the mouse gesture feature in Floorp"},u=void 0,a={},g=[{value:"Browsing with Just Your Mouse",id:"browsing-with-just-your-mouse",level:3},{value:"How to Use Mouse Gestures",id:"how-to-use-mouse-gestures",level:3},{value:"Customizing Mouse Gestures",id:"customizing-mouse-gestures",level:3},{value:"Sensitivity Settings",id:"sensitivity-settings",level:4},{value:"Trail Settings",id:"trail-settings",level:4},{value:"Customizing Gesture Actions",id:"customizing-gesture-actions",level:3},{value:"Using Rocker Gestures",id:"using-rocker-gestures",level:3}];function p(e){const s={br:"br",code:"code",h3:"h3",h4:"h4",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(s.h3,{id:"browsing-with-just-your-mouse",children:"Browsing with Just Your Mouse"}),"\n",(0,i.jsx)(s.p,{children:"Introduced in Floorp 12, the mouse gesture feature allows you to perform various browser actions simply by moving your mouse."}),"\n",(0,i.jsxs)(s.p,{children:["Typically, browsers are operated by clicking buttons or text on the UI. If you are experienced with PCs, you might also make frequent use of keyboard shortcuts.",(0,i.jsx)(s.br,{}),"\n","However, since you already use a mouse to browse web pages, it makes sense that you should be able to operate the browser using only the mouse.",(0,i.jsx)(s.br,{}),"\n","The Mouse Gesture feature in Floorp was developed to meet this exact need."]}),"\n",(0,i.jsx)(s.p,{children:"Unlike traditional UI clicks or keyboard operations, which require finding buttons or pressing multiple keys, Mouse Gestures let you quickly execute actions anywhere on the page simply by moving your mouse."}),"\n",(0,i.jsx)("img",{src:l,width:"100%",alt:"Example of mouse gesture operation"}),"\n",(0,i.jsx)(s.h3,{id:"how-to-use-mouse-gestures",children:"How to Use Mouse Gestures"}),"\n",(0,i.jsxs)(s.p,{children:["You can enable Mouse Gestures by navigating to ",(0,i.jsx)(s.strong,{children:"Floorp Hub > Mouse Gestures"})," (",(0,i.jsx)(s.code,{children:"about:hub#/features/gesture"}),")."]}),"\n",(0,i.jsxs)(s.p,{children:['By default, basic operations (referred to as "Actions") such as ',(0,i.jsx)(s.code,{children:"Go Back"}),", ",(0,i.jsx)(s.code,{children:"Go Forward"}),", and ",(0,i.jsx)(s.code,{children:"Reload"})," are pre-registered.",(0,i.jsx)(s.br,{}),"\n","For example, holding down the right-click button, moving the mouse to the left, and releasing it will take you back to the previous page. Holding down the right-click button and moving it up and then down will reload the page."]}),"\n",(0,i.jsx)(s.p,{children:"While performing a gesture, a visual trail of the mouse movement is displayed. When you release the button while the Action name is visible, that Action will be executed."}),"\n",(0,i.jsx)(s.h3,{id:"customizing-mouse-gestures",children:"Customizing Mouse Gestures"}),"\n",(0,i.jsxs)(s.p,{children:["You can freely customize both the gestures and the actions they perform.",(0,i.jsx)(s.br,{}),"\n","Set up your favorite gestures to create a comfortable, personalized browsing experience."]}),"\n",(0,i.jsx)(s.h4,{id:"sensitivity-settings",children:"Sensitivity Settings"}),"\n",(0,i.jsx)("img",{src:c,width:"100%",alt:"Basic mouse gesture settings"}),"\n",(0,i.jsxs)(s.p,{children:['To change Mouse Gesture settings, click "Mouse Gestures" in the Floorp Hub sidebar, or open ',(0,i.jsx)(s.code,{children:"about:hub#/features/gesture"})," directly."]}),"\n",(0,i.jsxs)(s.ul,{children:["\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Sensitivity"})}),"\n",(0,i.jsxs)(s.p,{children:['The higher the value (closer to the right), the more tolerant the feature is of "hand shake" or slight accidental movements during a gesture. The default value is ',(0,i.jsx)(s.code,{children:"40"}),"."]}),"\n"]}),"\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Minimum distance"})}),"\n",(0,i.jsxs)(s.p,{children:["The higher the value (closer to the right), the longer the cursor movement required for it to be recognized as a gesture. The default value is ",(0,i.jsx)(s.code,{children:"12px"}),"."]}),"\n"]}),"\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Right-click suppression time"})}),"\n",(0,i.jsxs)(s.p,{children:["The higher the value (closer to the right), the longer the context menu will be prevented from appearing after a gesture is completed. The default value is ",(0,i.jsx)(s.code,{children:"200ms"}),"."]}),"\n"]}),"\n"]}
1),"\n",(0,i.jsx)(s.h4,{id:"trail-settings",children:"Trail Settings"}),"\n",(0,i.jsxs)(s.ul,{children:["\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Show gesture trail"})}),"\n",(0,i.jsx)(s.p,{children:"When enabled, a line is displayed along the path of the mouse cursor during gestures. Enabled by default."}),"\n"]}),"\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Show gesture label"})}),"\n",(0,i.jsx)(s.p,{children:"When enabled, the name of the action to be executed by that gesture is displayed on the screen. Enabled by default."}),"\n"]}),"\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Trail width"})}),"\n",(0,i.jsxs)(s.p,{children:["The higher the value (closer to the right), the thicker the line displayed along the cursor path during gestures. The default value is ",(0,i.jsx)(s.code,{children:"6px"}),"."]}),"\n"]}),"\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Trail color"})}),"\n",(0,i.jsxs)(s.p,{children:["You can customize the color of the line displayed along the cursor path during gestures. The default is ",(0,i.jsx)(s.code,{children:"#37ff00"})," (green)."]}),"\n",(0,i.jsx)(s.p,{children:"You can specify any color by entering a Hex color code, or by clicking the color preview to open your system's color picker."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(s.h3,{id:"customizing-gesture-actions",children:"Customizing Gesture Actions"}),"\n",(0,i.jsx)(s.p,{children:"Gestures and Actions can be added, modified, or deleted as needed. Try setting up your own unique combinations!"}),"\n",(0,i.jsxs)(s.ul,{children:["\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Add Gesture"})}),"\n",(0,i.jsxs)(s.p,{children:["Click ",(0,i.jsx)(s.strong,{children:"Add Gesture"})," at the very bottom of the Gesture Action list to create a new gesture. Details are explained in the next section."]}),"\n"]}),"\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Edit Gesture"})}),"\n",(0,i.jsxs)(s.p,{children:["Clicking ",(0,i.jsx)(s.strong,{children:"Add Gesture"})," or the ",(0,i.jsx)(s.strong,{children:"Edit"})," button next to an existing gesture action opens the gesture editing screen."]}),"\n",(0,i.jsx)(s.p,{children:'Open the "Action" dropdown list to select what operation that specific gesture will perform.'}),"\n",(0,i.jsxs)(s.p,{children:['Clicking the arrow buttons in the gesture editing screen adds directions to the "Pattern" one by one.',(0,i.jsx)(s.br,{}),"\n","To remove added patterns, click the ",(0,i.jsx)(s.code,{children:"x"}),' button to the right of the arrows or click the "Reset" button.']}),"\n",(0,i.jsxs)(s.p,{children:["Finally, click ",(0,i.jsx)(s.strong,{children:"Save"})," to complete the configuration."]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)("img",{src:d,width:"100%",alt:"Gesture action editing screen"}),"\n",(0,i.jsxs)(s.ul,{children:["\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Duplicate Gesture"})}),"\n",(0,i.jsx)(s.p,{children:"Clicking the second button in a gesture's action row opens a screen to duplicate that exact gesture action. You can then edit and save it as you like."}),"\n"]}),"\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Delete Gesture"})}),"\n",(0,i.jsx)(s.p,{children:"Clicking the trash can button in the gesture action row deletes that specific gesture action."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(s.h3,{id:"using-rocker-gestures",children:"Using Rocker Gestures"}),"\n",(0,i.jsx)(s.p,{children:"When Rocker Gestures are enabled, you can execute configured actions by right-clicking while holding down the left-click button, or vice versa."}),"\n",(0,i.jsxs)(s.ul,{children:["\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Left \u2192 Right"})}),"\n",(0,i.jsx)(s.p,{children:"Configures the action executed by right-clicking while holding down the left-click button. By default, it navigates to the next page."}),"\n"]}),"\n",(0,i.jsxs)(s.li,{children:["\n",(0,i.jsx)(s.p,{children:(0,i.jsx)(s.strong,{children:"Right \u2192 Left"})}),"\n",(0,i.jsx)(s.p,{children:"Configures the action executed by left-clicking while holding down the right-click button. By default, it navigates to the previous page."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(o.A,{})]})}function x(e={}){const{wrapper:s}={...(0,r.R)(),...e.components};return s?(0,i.jsx)(s,{...e,children:(0,i.jsx)(p,{...e})}):p(e)}},264(e,s,t){t(1763);var n=t(8174),i=t(5915),r=t(1987);const o=()=>(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{children:(0,r.jsx)(i.A,{children:"Need Support?"})}),(0,r.jsxs)("ul",{children:[(0,r.jsx)("li",{children:(0,r.jsx)(n.A,{to:"https://discord.floorp.app",children:(0,r.jsx)(i.A,{children:"Discord (Floorp Projects)"})})}),(0,r.jsx)("li",{children:(0,r.jsx)(n.A,{to:"https://x.com/Floorp_Browser",children:"X (@Floorp_Browser)"})}),(0,r.jsx)("li",{children:(0,r.jsx)(n.A,{to:"https://reddit.com/r/Floorp",children:"Reddit (r/Floorp)"})}),(0,r.jsx)("li",{children:(0,r.jsx)(n.A,{to:"https://misskey.io/@[email protected]",children:"Misskey.io (@[email protected]
1)"})})]})]});t.d(s,["A",0,o])},7008(e,s,t){t.d(s,{R:()=>o,x:()=>l});var n=t(1763);const i={},r=n.createContext(i);function o(e){const s=n.useContext(r);return n.useMemo(function(){return"function"==typeof e?e(s):{...s,...e}},[s,e])}function l(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:o(e.components),n.createElement(r.Provider,{value:s},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.