feat(plugin): add font-customizer plugin #3785
No reviewers
Labels
No labels
awaiting-reply
breaking changes
bug
cannot-reproduce
dependencies
documentation
duplicate
electron-issue
enhancement
fix-available
good first issue
help wanted
invalid
javascript
need more information
need rebase
official-youtube-music-issue
plugin request
question
release
security
stale
Status: blocked
typo
wontfix
ytmd-issue
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: YTMD/youtube-music#3785
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "kev2block/master"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR adds a new plugin: Font Customizer.
Features
Screenshots
Playlist view
Lyrics view
Implementation
src/plugins/font-customizer/index.ts
— plugin registration, defaults.src/plugins/font-customizer/menu.ts
— menu UI (mode + popular font radio lists).src/plugins/font-customizer/renderer.ts
— loads Google Fonts, sets CSS vars, applies to player/lyrics surfaces.src/plugins/font-customizer/types.ts
—FontCustomizerConfig
,FontMode
,popularFonts
.Tested
pnpm dev
) and packaged builds.No changes to existing plugins or core behavior.
@ -0,0 +1,167 @@
import prompt from 'custom-electron-prompt';
a simple

...[].map(...)
might make this easier to reason about, e.g in another PR I did@ -0,0 +1,76 @@
import { createRenderer } from '@/utils';
since you are not generating CSS on the fly, and it is 100% static, you should save it to a
.css
file and add it as a stylesheet of your pluginNot quite, look at other plugins for how they apply stylesheets.
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.