Skip to content

Updates Redraw timer, renames to 'Desktop', and removes registry requirement for portability#16

Open
BeSmarterWithData wants to merge 15 commits into
egonl:mainfrom
BeSmarterWithData:main
Open

Updates Redraw timer, renames to 'Desktop', and removes registry requirement for portability#16
BeSmarterWithData wants to merge 15 commits into
egonl:mainfrom
BeSmarterWithData:main

Conversation

@BeSmarterWithData

Copy link
Copy Markdown

This pull request introduces several improvements and new features to the project, focusing on easier installation, modernized settings storage, streamlined build automation, and codebase enhancements. The most important changes are summarized below.

Installation & Usage Improvements:

  • Added a new PortionOfScreen.bat script for quick install and launch of the app, which downloads the latest executable to the user's local app data directory and runs it without requiring admin rights. The README.md was updated to document this new installation method and clarify usage instructions. [1] [2]

Settings Storage Modernization:

  • Switched settings storage from the Windows Registry to an INI file located in %APPDATA%\PortionOfScreen\settings.ini, improving portability and simplifying configuration management.

Build & Release Automation:

  • Added a new GitHub Actions workflow (.github/workflows/build.yml) to automatically build the project on Windows, copy the built executable to the dist folder, and commit it back to the repository.
  • Enhanced the release workflow to support manual triggering via workflow_dispatch and to generate version numbers based on the current date and commit SHA when not building from a tag. [1] [2]

Codebase & Performance Enhancements:

  • Improved redraw and focus handling by adjusting timer intervals and switching to client-based painting, resulting in smoother updates and reduced flicker. [1] [2] [3] [4]
  • Refactored code to remove unused registry dependencies and modernized includes, making the codebase cleaner and easier to maintain.

These changes collectively make the application easier to install, configure, maintain, and distribute, while also improving its runtime behavior and developer experience.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant