├── .gitignore ├── CODE_OF_CONDUCT.md ├── LICENSE ├── README.md └── disable-scroll-wheel-zoom ├── images ├── icon128.png ├── icon16.png ├── icon48.png ├── icon96.png └── screenshot.png ├── manifest.json └── src ├── disable-scroll-wheel-zoom.js └── disable-scroll-wheel-zoom.min.js /.gitignore: -------------------------------------------------------------------------------- 1 | *.ai 2 | *.eps 3 | *.psd 4 | *.zip 5 | *.crx 6 | *.pem 7 | 8 | # Logs 9 | logs 10 | *.log 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | lerna-debug.log* 15 | 16 | # Diagnostic reports (https://nodejs.org/api/report.html) 17 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 18 | 19 | # Runtime data 20 | pids 21 | *.pid 22 | *.seed 23 | *.pid.lock 24 | 25 | # Directory for instrumented libs generated by jscoverage/JSCover 26 | lib-cov 27 | 28 | # Coverage directory used by tools like istanbul 29 | coverage 30 | *.lcov 31 | 32 | # nyc test coverage 33 | .nyc_output 34 | 35 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 36 | .grunt 37 | 38 | # Bower dependency directory (https://bower.io/) 39 | bower_components 40 | 41 | # node-waf configuration 42 | .lock-wscript 43 | 44 | # Compiled binary addons (https://nodejs.org/api/addons.html) 45 | build/Release 46 | 47 | # Dependency directories 48 | node_modules/ 49 | jspm_packages/ 50 | 51 | # Snowpack dependency directory (https://snowpack.dev/) 52 | web_modules/ 53 | 54 | # TypeScript cache 55 | *.tsbuildinfo 56 | 57 | # Optional npm cache directory 58 | .npm 59 | 60 | # Optional eslint cache 61 | .eslintcache 62 | 63 | # Microbundle cache 64 | .rpt2_cache/ 65 | .rts2_cache_cjs/ 66 | .rts2_cache_es/ 67 | .rts2_cache_umd/ 68 | 69 | # Optional REPL history 70 | .node_repl_history 71 | 72 | # Output of 'npm pack' 73 | *.tgz 74 | 75 | # Yarn Integrity file 76 | .yarn-integrity 77 | 78 | # dotenv environment variables file 79 | .env 80 | .env.test 81 | 82 | # parcel-bundler cache (https://parceljs.org/) 83 | .cache 84 | 85 | # Next.js build output 86 | .next 87 | 88 | # Nuxt.js build / generate output 89 | .nuxt 90 | dist 91 | 92 | # Gatsby files 93 | .cache/ 94 | # Comment in the public line in if your project uses Gatsby and not Next.js 95 | # https://nextjs.org/blog/next-9-1#public-directory-support 96 | # public 97 | 98 | # vuepress build output 99 | .vuepress/dist 100 | 101 | # Serverless directories 102 | .serverless/ 103 | 104 | # FuseBox cache 105 | .fusebox/ 106 | 107 | # DynamoDB Local files 108 | .dynamodb/ 109 | 110 | # TernJS port file 111 | .tern-port 112 | 113 | # Stores VSCode versions used for testing VSCode extensions 114 | .vscode-test 115 | 116 | .DS_Store 117 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | 2 | # Contributor Covenant Code of Conduct 3 | 4 | ## Our Pledge 5 | 6 | In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation. 7 | 8 | ## Our Standards 9 | 10 | Examples of behavior that contributes to creating a positive environment include: 11 | 12 | * Using welcoming and inclusive language 13 | * Being respectful of differing viewpoints and experiences 14 | * Gracefully accepting constructive criticism 15 | * Focusing on what is best for the community 16 | * Showing empathy towards other community members 17 | 18 | Examples of unacceptable behavior by participants include: 19 | 20 | * The use of sexualized language or imagery and unwelcome sexual attention or advances 21 | * Trolling, insulting/derogatory comments, and personal or political attacks 22 | * Public or private harassment 23 | * Publishing others' private information, such as a physical or electronic address, without explicit permission 24 | * Other conduct which could reasonably be considered inappropriate in a professional setting 25 | 26 | ## Our Responsibilities 27 | 28 | Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior. 29 | 30 | Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. 31 | 32 | ## Scope 33 | 34 | This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers. 35 | 36 | ## Enforcement 37 | 38 | Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately. 39 | 40 | Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership. 41 | 42 | ## Attribution 43 | 44 | This Code of Conduct is adapted from the http://contributor-covenant.org, version 1.4, available at http://contributor-covenant.org/version/1/4/ 45 | 46 | ======= 47 | # Code of Conduct 48 | 49 | ## 1. Purpose 50 | 51 | A primary goal of Theatherflix is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof). 52 | 53 | This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior. 54 | 55 | We invite all those who participate in Theatherflix to help us create safe and positive experiences for everyone. 56 | 57 | ## 2. Open Source Citizenship 58 | 59 | A supplemental goal of this Code of Conduct is to increase open source citizenship by encouraging participants to recognize and strengthen the relationships between our actions and their effects on our community. 60 | 61 | Communities mirror the societies in which they exist and positive action is essential to counteract the many forms of inequality and abuses of power that exist in society. 62 | 63 | If you see someone who is making an extra effort to ensure our community is welcoming, friendly, and encourages all participants to contribute to the fullest extent, we want to know. 64 | 65 | ## 3. Expected Behavior 66 | 67 | The following behaviors are expected and requested of all community members: 68 | 69 | * Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community. 70 | * Exercise consideration and respect in your speech and actions. 71 | * Attempt collaboration before conflict. 72 | * Refrain from demeaning, discriminatory, or harassing behavior and speech. 73 | * Be mindful of your surroundings and of your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential. 74 | * Remember that community event venues may be shared with members of the public; please be respectful to all patrons of these locations. 75 | 76 | ## 4. Unacceptable Behavior 77 | 78 | The following behaviors are considered harassment and are unacceptable within our community: 79 | 80 | * Violence, threats of violence or violent language directed against another person. 81 | * Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language. 82 | * Posting or displaying sexually explicit or violent material. 83 | * Posting or threatening to post other people’s personally identifying information ("doxing"). 84 | * Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability. 85 | * Inappropriate photography or recording. 86 | * Inappropriate physical contact. You should have someone’s consent before touching them. 87 | * Unwelcome sexual attention. This includes, sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances. 88 | * Deliberate intimidation, stalking or following (online or in person). 89 | * Advocating for, or encouraging, any of the above behavior. 90 | * Sustained disruption of community events, including talks and presentations. 91 | * Someone trying to get money out of this project, or insisting on it. This is an Open Source Project with colaborations. 92 | 93 | ## 5. Consequences of Unacceptable Behavior 94 | 95 | Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated. 96 | 97 | Anyone asked to stop unacceptable behavior is expected to comply immediately. 98 | 99 | If a community member engages in unacceptable behavior, the community organizers may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning (and without refund in the case of a paid event). 100 | 101 | ## 6. Reporting Guidelines 102 | 103 | If you are subject to or witness unacceptable behavior, or have any other concerns, please notify a community organizer as soon as possible. 104 | 105 | 106 | 107 | Additionally, community organizers are available to help community members engage with local law enforcement or to otherwise help those experiencing unacceptable behavior feel safe. In the context of in-person events, organizers will also provide escorts as desired by the person experiencing distress. 108 | 109 | ## 7. Addressing Grievances 110 | 111 | If you feel you have been falsely or unfairly accused of violating this Code of Conduct, you should notify Felipe or any other member to talk about it in a private meeting, with a concise description of your grievance. Your grievance will be handled in accordance with our existing governing policies. 112 | 113 | 114 | 115 | ## 8. Scope 116 | 117 | We expect all community participants (contributors, paid or otherwise; sponsors; and other guests) to abide by this Code of Conduct in all community venues–online and in-person–as well as in all one-on-one communications pertaining to community business. 118 | 119 | This code of conduct and its related procedures also applies to unacceptable behavior occurring outside the scope of community activities when such behavior has the potential to adversely affect the safety and well-being of community members. 120 | 121 | ## 9. Contact info 122 | 123 | Go to issues in the project. 124 | 125 | ## 10. License and attribution 126 | 127 | This Code of Conduct is distributed under a [Creative Commons Attribution-ShareAlike license](http://creativecommons.org/licenses/by-sa/3.0/). 128 | 129 | Portions of text derived from the [Django Code of Conduct](https://www.djangoproject.com/conduct/) and the [Geek Feminism Anti-Harassment Policy](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy). 130 | 131 | Retrieved on November 22, 2016 from [http://citizencodeofconduct.org/](http://citizencodeofconduct.org/) 132 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Felipe Alfonso González 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ### Disable Ctrl + Scroll Wheel Zoom 🚫 🔍 2 | 3 | Disables the ctrl + scroll wheel zoom shortcut in Chrome. 4 | 5 | Logo 6 | 7 | 8 | 9 | You can try out the extension on the [Chrome Web Store](https://chromewebstore.google.com/detail/mdpfkohgfpidohkakdbpmnngaocglmhl?hl=en&authuser=1). 10 |
11 | 12 |
13 | 14 | [![Chrome Web Store](https://img.shields.io/chrome-web-store/v/mdpfkohgfpidohkakdbpmnngaocglmhl.svg?style=flat-square&label=Chrome%20Web%20Store&logo=google-chrome&logoColor=white)](https://chromewebstore.google.com/detail/mdpfkohgfpidohkakdbpmnngaocglmhl?hl=en&authuser=1) 15 | 16 | 17 | #### Description 18 | 19 | This Chrome extension disables the Ctrl + scroll wheel zoom shortcut, preventing accidental zooming when browsing. It intercepts the wheel event and checks if the Ctrl key is pressed. If so, it prevents the default browser behavior and scrolls the window smoothly instead of zooming. 20 | 21 | #### Features 22 | 23 | - Prevents accidental zooming in Chrome. 24 | - Smooth scrolling when Ctrl + scroll wheel is used. 25 | 26 | 27 | #### Installation 28 | 29 | To install this extension, follow these steps: 30 | 1. Download the extension files. 31 | 2. Open Chrome and go to `chrome://extensions`. 32 | 3. Enable "Developer mode" at the top-right corner. 33 | 4. Click on "Load unpacked" and select the downloaded extension folder. 34 | 35 | 36 | #### Contributing 37 | 38 | Contributions are welcome! Please feel free to submit a pull request or open an issue if you have any suggestions, bug reports, or feature requests. 39 | 40 | 41 | #### License 42 | 43 | This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. 44 | 45 | 46 | Tags: ctrl, control, shortcut, scroll wheel, scrollwheel, mouse wheel, mousewheel, disable, prevent, turn off, no 47 | 48 | -------------------------------------------------------------------------------- /disable-scroll-wheel-zoom/images/icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phparkle/disable-scroll-wheel-zoom/ec381e5e1a77ac37951754b0d0b1cb3e4987f956/disable-scroll-wheel-zoom/images/icon128.png -------------------------------------------------------------------------------- /disable-scroll-wheel-zoom/images/icon16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phparkle/disable-scroll-wheel-zoom/ec381e5e1a77ac37951754b0d0b1cb3e4987f956/disable-scroll-wheel-zoom/images/icon16.png -------------------------------------------------------------------------------- /disable-scroll-wheel-zoom/images/icon48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phparkle/disable-scroll-wheel-zoom/ec381e5e1a77ac37951754b0d0b1cb3e4987f956/disable-scroll-wheel-zoom/images/icon48.png -------------------------------------------------------------------------------- /disable-scroll-wheel-zoom/images/icon96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phparkle/disable-scroll-wheel-zoom/ec381e5e1a77ac37951754b0d0b1cb3e4987f956/disable-scroll-wheel-zoom/images/icon96.png -------------------------------------------------------------------------------- /disable-scroll-wheel-zoom/images/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/phparkle/disable-scroll-wheel-zoom/ec381e5e1a77ac37951754b0d0b1cb3e4987f956/disable-scroll-wheel-zoom/images/screenshot.png -------------------------------------------------------------------------------- /disable-scroll-wheel-zoom/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 3, 3 | "name": "Disable Ctrl + Scroll Wheel Zoom", 4 | "version": "1.3", 5 | "description": "Disables the ctrl + scroll wheel zoom shortcut in Chrome.", 6 | "homepage_url": "http://github.com/phparkle/disable-scroll-wheel-zoom", 7 | "icons": { 8 | "16": "images/icon16.png", 9 | "48": "images/icon48.png", 10 | "128": "images/icon128.png" 11 | }, 12 | "content_scripts": [ 13 | { 14 | "matches": [""], 15 | "run_at": "document_start", 16 | "all_frames": true, 17 | "js": ["src/disable-scroll-wheel-zoom.min.js"] 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /disable-scroll-wheel-zoom/src/disable-scroll-wheel-zoom.js: -------------------------------------------------------------------------------- 1 | // Listen for the "wheel" event 2 | document.addEventListener("wheel", function(event) { 3 | // Check if the Ctrl key is pressed 4 | if (event.ctrlKey) { 5 | // Prevent the default browser behavior of zooming 6 | event.preventDefault(); 7 | 8 | // Smoothly scroll the window 9 | window.scrollBy({ 10 | // Scroll horizontally by the amount specified by the wheel event 11 | left: event.deltaX, 12 | // Scroll vertically by the amount specified by the wheel event 13 | top: event.deltaY, 14 | // Use smooth scrolling behavior 15 | behavior: 'smooth' 16 | }); 17 | } 18 | }, { passive: false }); // Specify that the event is not passive, allowing preventDefault() to be called 19 | -------------------------------------------------------------------------------- /disable-scroll-wheel-zoom/src/disable-scroll-wheel-zoom.min.js: -------------------------------------------------------------------------------- 1 | document.addEventListener("wheel",(function(e){e.ctrlKey&&(e.preventDefault(),window.scrollBy({left:e.deltaX,top:e.deltaY,behavior:"smooth"}))}),{passive:!1}); --------------------------------------------------------------------------------