Implemented the notifications on song change. Notifications will not be displayed in any of these three conditions:
Notifications setting turned off
User is on the music service tab and therefor can already see the song changed
SynQ extension popup is open so user can already see the song changed
For non-Mac users, we can display the album art by using a base64 encoded image, hence the helper. If fetching and encoding the image fails or if the user is on Mac, we use text notification.
I also renamed the private methods of each observer to be more accurate and consolidated some constructor and the notifications logic to the observer "abstract" class.
Reorganized Observers so they can be subscribed to in addition to through the messages it was already emitting. This allowed the notification creation logic to be decoupled from the Observer class.
Overview
Implemented the notifications on song change. Notifications will not be displayed in any of these three conditions:
For non-Mac users, we can display the album art by using a base64 encoded image, hence the helper. If fetching and encoding the image fails or if the user is on Mac, we use text notification.
I also renamed the private methods of each observer to be more accurate and consolidated some constructor and the notifications logic to the observer "abstract" class.