talk-desktop icon indicating copy to clipboard operation
talk-desktop copied to clipboard

macOS: System tray icon doesn't remember place

Open binford6000 opened this issue 9 months ago • 7 comments

How to use GitHub

  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Steps to reproduce

  1. Start Talk desktop on Mac
  2. Use ⌘+mouse to move icon to the desired place
  3. Close Talk desktop.
  4. Open it again

Expected behaviour

Talk desktop icon stays at its place.

Actual behaviour

Talk desktop icon is on the very left side of the Dock instead at the moved place.

Dock icon stays not persistent:

Before closing app: zoom

After opening app again: zoom

Diagnosis and logs

Diagnosis report

Diagnosis report

Nextcloud Talk Desktop
Version v1.1.5
Built-in Talk version v21.0.0
Release channel stable
Operating system Darwin 24.3.0 (Darwin Kernel Version 24.3.0: Thu Jan 2 20:24:06 PST 2025; root:xnu-11215.81.4~3/RELEASE_ARM64_T8103)
Executable Path /Applications/Nextcloud Talk.app/Contents/MacOS/Nextcloud Talk
Connected to -
Nextcloud server version 31.0.0
Nextcloud Talk version 21.0.0
notifications app enabled ✅ yes
notify_push app enabled ✅ yes

Application config

{
  "launchAtStartup": false,
  "theme": "default",
  "systemTitleBar": false,
  "monochromeTrayIcon": false,
  "zoomFactor": 1,
  "playSoundChat": "respect-dnd",
  "playSoundCall": "respect-dnd",
  "enableCallbox": "respect-dnd",
  "secondarySpeaker": false,
  "secondarySpeakerDevice": null
}
Client logs
Failed to load resource: the server responded with a status of 404 ()

binford6000 avatar Mar 07 '25 11:03 binford6000

I don't have much user experience on macOS, but I'm very unsure it is something controllable on the application level.

@Ivansss @SystemKeeper Maybe you know better?

ShGKme avatar Mar 08 '25 09:03 ShGKme

It is somehow possible (although my knowledge is also limited here), the files desktop client for example supports this. The information is stored in the native defaults, here's an example from the desktop client:

    "com.nextcloud.desktopclient" =     {
        NSNavLastRootDirectory = "~/Desktop/NextcloudDesktopSync";
        NSNavPanelExpandedSizeForOpenMode = "{800, 448}";
>>      "NSStatusItem Preferred Position Item-0" = 402;
        "NSWindow Frame NSNavPanelAutosaveName" = "560 475 800 448 0 0 1920 1055 ";
        "NSWindow Frame SUStatusFrame" = "50 142 400 135 0 0 1512 944 ";
        "NSWindow Frame SUUpdateAlertSmall" = "446 586 620 183 0 0 1512 944 ";
        SUAutomaticallyUpdate = 0;
        SUEnableAutomaticChecks = 1;
        SUFeedURL = "<....>";
        SUHasLaunchedBefore = 1;
        SULastCheckTime = "2025-03-08 09:24:29 +0000";
        SUSendProfileInfo = 0;
        SUUpdateRelaunchingMarker = 0;
    };

This can be read through defaults read com.nextcloud.desktopclient or for all apps with defaults find "NSStatusItem Preferred Position".

The thing is, when I move the talk desktop icon, that key also gets added for us:

Found 1 keys in domain 'com.nextcloud.talk.mac': {
    "NSStatusItem Preferred Position Item-0" = 367;
}

but when closing the app, the key is gone and the icon is again at the most left? Are we resetting some values on app close?

After change in position:

➜  ~ defaults read com.nextcloud.talk.mac
{
    AppleTextDirection = 1;
    NSForceRightToLeftWritingDirection = 0;
    NSFullScreenMenuItemEverywhere = 0;
    "NSStatusItem Preferred Position Item-0" = 554;
    NSTreatUnknownArgumentsAsOpen = NO;
    "NSWindow Frame electron.devtools" = "163 118 1741 813 0 0 1920 1055 ";
}

After closing

➜  ~ defaults read com.nextcloud.talk.mac
{
    AppleTextDirection = 1;
    NSForceRightToLeftWritingDirection = 0;
    NSFullScreenMenuItemEverywhere = 0;
    NSTreatUnknownArgumentsAsOpen = NO;
    "NSWindow Frame electron.devtools" = "163 118 1741 813 0 0 1920 1055 ";
}

SystemKeeper avatar Mar 08 '25 10:03 SystemKeeper

@SystemKeeper Thanks a lot

ShGKme avatar Mar 08 '25 11:03 ShGKme

  • Electron issue: https://github.com/electron/electron/issues/42154

Thanks again, @SystemKeeper

ShGKme avatar Mar 08 '25 13:03 ShGKme

It would also be great If the tray icon can be disabled.

idominiki avatar Mar 10 '25 07:03 idominiki

It would also be great If the tray icon can be disabled.

If you have unrelated to the current issue feature request - please, create a new issue.

ShGKme avatar Mar 10 '25 19:03 ShGKme

Electron 38 added support for this feature in a simple way:

  • https://github.com/electron/electron/pull/48077

ShGKme avatar Sep 12 '25 18:09 ShGKme