{"id":25720419,"url":"https://github.com/mnoomnoo/cursorlocker","last_synced_at":"2026-04-13T23:02:05.614Z","repository":{"id":157003296,"uuid":"363798174","full_name":"mnoomnoo/CursorLocker","owner":"mnoomnoo","description":"Keeps the cursor inside the boundary of the primary monitor if the specified executable is already a process or when it becomes a process.","archived":false,"fork":false,"pushed_at":"2023-05-01T04:04:37.000Z","size":73,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-02T02:19:23.478Z","etag":null,"topics":["cpp","cursor","cursor-boundary","cursor-lock","cursor-movement","cursor-position","fullscreen","fullscreen-mode","lock-cursor","monitor","multi-monitor","screen","windows"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mnoomnoo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-05-03T02:33:41.000Z","updated_at":"2023-05-01T02:39:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"a0cff8ca-07dc-41bc-baf9-fdcec840edcc","html_url":"https://github.com/mnoomnoo/CursorLocker","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/mnoomnoo/CursorLocker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mnoomnoo%2FCursorLocker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mnoomnoo%2FCursorLocker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mnoomnoo%2FCursorLocker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mnoomnoo%2FCursorLocker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mnoomnoo","download_url":"https://codeload.github.com/mnoomnoo/CursorLocker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mnoomnoo%2FCursorLocker/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265866282,"owners_count":23840938,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","cursor","cursor-boundary","cursor-lock","cursor-movement","cursor-position","fullscreen","fullscreen-mode","lock-cursor","monitor","multi-monitor","screen","windows"],"created_at":"2025-02-25T17:49:30.220Z","updated_at":"2026-04-13T23:02:05.546Z","avatar_url":"https://github.com/mnoomnoo.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CursorLocker\n\nThis program locks the cursor to the the primary monitor when the specified executable starts running. Once the specified executable quits then the cursor is unlocked.\n\nOn multi-monitor systems the primary monitor shares a vertical or horizontal edge with another monitor. In some fullscreen applications its possible to move your mouse cursor outside the boundary of the primary monitor. If a click occurs while the cursor is outside the boundary of the primary monitor then Windows will sometimes interact with the click instead of the fullscreen application and cause the application to minimize or worse.\n \n## Usage:\n`CursorLocker.exe \u003cexecutable_file.exe\u003e [OPTIONS]`\n\n## Options:\t\n_**-h, -help**_ := Print version and help info then exits  \n_**-ec, -exesConfig**_ := Loads the exesConfigs.ecfg file which contains a list of executable files to search for. First exe in that list that becomes a process or is already a process triggers the cursor to lock to the primary monitor. Ignores the \u003cexecutable_file.exe\u003e passed in.  \n_**-sleepTime \\\u003cmilliseconds\\\u003e**_ := How long to sleep before a CursorLocker processing iteration. Default is 800 ms\n\n## Usage example:\n`CursorLocker.exe SomeFullscreenApplication.exe`\n\nThe above will start CursorLocker.exe and see if SomeFullscreenApplication.exe is currently a process. If it's currently a process then the cursor will immediately be locked to the primary monitor. If SomeFullscreenApplication.exe isn't a process then CursorLocker.exe will wait to lock the cursor until SomeFullscreenApplication.exe becomes a process\n\n## How to build\n1. Open the repo folder in your favorite IDE\n2. Run cmake to configure the project\n3. Build All\n\n## Thanks\nThe CursorLocker icon is derived from an icon found on game-icons.net and made by Lorc, http://lorcblog.blogspot.com\n \n## License\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmnoomnoo%2Fcursorlocker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmnoomnoo%2Fcursorlocker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmnoomnoo%2Fcursorlocker/lists"}