GSoC 2021 - Work Product - Improving Accessibility For the Visually Impaired
This page contains all the changes made to MuseScore’s source code, completed under the project Improving Accessibility for the Visually Impaired. The project was part of Google Summer of Code 2021.
More information about the project is available at the following locations:
- Weekly blog posts
- Youtube video demonstrating progress made halfway through the project.
- Official Project Proposal
My work for GSoC’21 was mainly divided between three GitHub Pull Requests, i.e. PR#8280 - High-Contrast Overhaul, PR#8806 - Navigation Control Border Re-Implementation and PR#8886 -
Score-Page Color Inversion. PR#8280 and PR#8806 have been merged into the MuseScore master branch, while PR#8886 is currently in a draft stage.
Attached below is the list of commits for each PR in chronological order.
- High-Contrast Overhaul:
- Plugged in colour data for HC themes
- Added new Accessibility tab under Appearance tab
- Inset Stroke for all FlatButtons(unfinished)
- Added Inset Stroke for Various Elements
- Removed Border Color Variable/changed Stroke to Border in Accessibility page
- Temporary Test Commit
- High Contrast Styles Dialog Overhaul + New Design Implementation
- Code Review Fixes
- Sentence Case Implementation
- Navigation Control Border Re-Implementation:
- Score-Page Color Inversion
As promised in my original proposal, I have met all goals mentioned in the proposal, along with any other add-ons and ‘nice-to-have’ features that the team agreed should make into the application (save for Score Inversion). Score Page Color Inversion is a work in progress (as of 20 Aug, 2021), and is expected to be done within the next couple of days. However, the code review and fixing phase could possibly take another day, which could push me over the 23rd Aug. deadline. In totality, the High-Contrast mode has received a much-needed overhaul, and the visually impaired user will now find themselves equipped with tools that significantly increase accessibility and visibility, which achieves the goal we set for this project.