iiordanov / remote-desktop-clients

VNC, RDP, SPICE, and oVirt/RHEV/Proxmox Clients for Android and Blackberry 10
GNU General Public License v3.0
2.11k stars 565 forks source link

on macOS, caption buttons can cover screen content #425

Open b- opened 1 year ago

b- commented 1 year ago

Hey there, please see attached screenshot

image

I think just about all remote desktop applications I've seen on macOS tend to put an ordinary title bar on top, which is one way to alleviate this (i.e., if the window isn't fullscreen put some padding on the top margin? bonus, can put status info from the connection there, bam catalyst titlebar). An example image I found of Apple Remote Desktop with its current UI:

image

Of course I can manually resize the window to prevent the caption buttons from covering the content, but I feel like I shouldn't have to.

On the other hand, these days titlebars on macOS are pretty insanely huge, so perhaps there could be an option/a checkbox to enable/disable titlebar padding? (aside, I remember when people hated on Windows XP for having huge titlebars that are at least 2-3x smaller than the pictured combined toolbar macOS). Said option probably should either hide, or make semi-transparent, the caption buttons?

b- commented 1 year ago

By the way, I hope I'm not bugging you too much with all these bug/feature reports! I think your software is wonderful and super useful, but I appreciate the polish that makes the UI on many Mac applications so pretty :)

iiordanov commented 1 year ago

Hey Bri, no worries, keep the bug-reports coming. I may get busy with my job and may not have time to reply immediately but I'll get to them eventually. I was on the fence about this change that removed the title-bar and I am also annoyed by the buttons covering content. I think I'll back the change out.

iiordanov commented 1 year ago

I tried disabling the transparent titlebar and realized why I enabled it in the first place. By default MacOS places the content of the UIImage that holds the remote desktop content at the top-left of the window without any regard to whether it covers content or not. So the solid titlebar simply covers the same area that the transparent titlebar covers. So in order to get the app to not have part of your desktop inaccessible and invisible, i have to figure out how to get the titlebar rectangle, position the UIImage just below that, and report the available resolution to the remote OS as the remaining unobscured area. Sounds painful! :)