### lumo-ui Repository Structure Overview Source: https://github.com/nomanr/lumo-ui/blob/main/CONTRIBUTING.md This snippet illustrates the directory structure of the lumo-ui project, detailing the location of components, plugins, sample applications for Android and Compose Multiplatform, and build scripts. ```Text ├── gradle/ │ ├── libs.versions.toml # Dependency version management ├── lumo-ui/ │ ├── components-lab/ # UI components library │ ├── plugin/ # Gradle plugin implementation │ └── scripts/ # Build & release scripts │ ├── generate_templates.sh # Regenerates UI templates ├── sample-android/ # Android sample app │ ├── catalogue/ # Sample components showcase │ ├── ui-components/ # Sample UI component implementations ├── sample-multiplatform/ # Multiplatform sample app │ ├── android/ # Android runner module │ ├── common/ # Multiplatform catalogue module (contains all platform source sets) │ ├── desktop/ # Desktop runner module │ ├── ios/ # iOS runner module │ ├── web/ # Web runner module ``` -------------------------------- ### Clone lumo-ui Repository Fork Source: https://github.com/nomanr/lumo-ui/blob/main/CONTRIBUTING.md This command clones your forked lumo-ui repository from GitHub to your local machine, allowing you to begin development. Replace 'your-username' with your actual GitHub username. ```Shell git clone https://github.com/your-username/lumo-ui.git ``` -------------------------------- ### Create New Feature Branch Source: https://github.com/nomanr/lumo-ui/blob/main/CONTRIBUTING.md This command creates a new Git branch for your feature or bug fix and switches to it. It's crucial for isolating your changes and preparing them for a pull request. ```Shell git checkout -b feature/your-feature-name ``` -------------------------------- ### Prevent Default Scroll and Touchmove on Canvas Source: https://github.com/nomanr/lumo-ui/blob/main/sample-multiplatform/catalogue/web/src/wasmJsMain/resources/index.html This JavaScript snippet targets a canvas element with the ID 'ComposeTarget' and attaches event listeners for 'wheel' and 'touchmove' events. The `preventScroll` function is called for these events, which uses `event.preventDefault()` to stop the browser's default scrolling behavior. The `passive: false` option is essential to allow `preventDefault()` to be called within the event listener. ```JavaScript const canvas = document.getElementById('ComposeTarget'); const preventScroll = (event) => { event.preventDefault(); }; canvas.addEventListener('wheel', preventScroll, { passive: false }); canvas.addEventListener('touchmove', preventScroll, { passive: false }); ``` -------------------------------- ### Prevent Scrolling on Canvas Element (JavaScript) Source: https://github.com/nomanr/lumo-ui/blob/main/sample-multiplatform/catalogue/web/src/jsMain/resources/index.html This JavaScript snippet targets an HTML canvas element with the ID 'ComposeTarget' and attaches event listeners to prevent default scroll behavior. It specifically disables scrolling via mouse wheel and touchmove gestures, ensuring that interactions within the canvas are not interrupted by external scrolling. ```javascript const canvas = document.getElementById('ComposeTarget'); const preventScroll = (event) => { event.preventDefault(); }; canvas.addEventListener('wheel', preventScroll, { passive: false }); canvas.addEventListener('touchmove', preventScroll, { passive: false }); ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.