GSoC'22 - Week #2: Global Shortcuts

Posted 3 months ago

Hello, everyone! The second week has now concluded. I may not have as much to showcase as I did in the first week, but I have made considerable progress on the backend.

This week was primarily devoted to developing a strategy for managing palette shortcuts and constructing a preliminary implementation thereof.

Action names are now produced based on their pointer values as opposed to their names, and all shortcuts are now kept in the palette cells themselves as opposed to storing them in the XML since the action names are now volatile for these cells. For example, An action that was called palette-item-page-break before would now be called palette-item-ItemID-PointerValue (palette-item-XYZ-ABCDEF)

This is in addition to the automated insertion of actions to shortcuts without needing their presence in shortcuts.xml. This implies that palette shortcuts theoretically function somewhat more reliably than before as they do not depend on something modifiable.

However, they need a great deal of work, which will be worked upon later since, for now, I've been instructed to put palette shortcuts on hold in order to focus on more vital aspects of the project, namely toolbar shortcuts and categorization.


Regarding classification, I have extracted all software actions into a CSV file so they may be easily read for categorization. Nonetheless, I feel this will be a lengthy process since several actions need to be categorized.


The first row is ‘Action Name’, the second is ‘Title’ and the third is ‘Description’.

Playback Toolbar

Regarding toolbar shortcuts, I will also add shortcuts to the playback toolbar similar to the note input bar. I will begin working on the same in the upcoming week.