fix(discord): keep the presence a Watching activity outside playback - #660
Merged
KhooLy merged 1 commit intoSep 11, 2026
Merged
Conversation
Only the player presence sent activity type 3, so browsing a tab or a title still fell back to type 0 and Discord rendered "Playing Nuvio", the game wording issue NuvioMedia#591 reported. Send type 3 for every presence Nuvio publishes, including the idle one, so the profile consistently reads "Watching Nuvio" with the current screen on the detail line.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Send Discord activity type 3 (Watching) for every presence Nuvio publishes, not just the one sent while a video is playing. Browsing a tab, opening a title and the idle state all used the default type 0, which Discord renders as "Playing Nuvio".
PR type
Why
#591 reported that Discord advertises "Playing Nuvio", as if Nuvio were a game, instead of a Watching activity. #628 fixed that for the player, but only the player:
toDiscordActivity()setstype = 3in thePlayerbranch, while theTabandDetailsbranches and the idle fallback keep theDiscordActivitydefault oftype = 0. So the exact wording the issue reported is still on the profile of every user who has Rich Presence enabled and is not currently playing something, which is most of the time the app is open.Desktop scope
Desktop only, all three platforms (Windows, macOS, Linux). The change is confined to
composeApp/src/desktopMain/.../discordrpc/DiscordPresenceManager.kt; no common code is touched.Issue or approval
Completes #591, whose reported wording still appears outside playback after #628. Same bug, same file, remaining branches.
UI / behavior impact
Policy check
CONTRIBUTING.md.Scope boundaries
Deliberately not changed: the detail lines themselves (still the same English text), the player presence fields added in #628 (title, timestamps, poster), the Rich Presence setting and its default, and the IPC client. The magic number 3 is moved into a named constant so the three call sites read the same, and nothing else is refactored.
Testing
Windows 11, MSI built from this branch, Discord desktop client, Rich Presence enabled in Settings > Advanced.
Screenshots / Video
Not a desktop UI change; nothing in the Nuvio window changes. The visible difference is on the Discord profile, screenshot attached showing the "Watching Nuvio" line while browsing.
Breaking changes
None.
Linked issues
#591, and #628 which fixed the playback half of it.