Congratulations!Congrats for what seems like a great prod, with nice step-by-step documentation!
ObservationsThe observations below apparently have a common cause and are probably easy to fix.
Basically, it looks like AT2 wants to do itself window management, something that is already handled by other software properly with all the complicated and platform-specific corner cases done right. Handling anything like this with custom code is likely to cause more work for little benefits and frustrate some users. Juce doesn't force this, does it?
Anyway, this causes 4 observations, none critical but degrading the user experience. From minor to annoying:
1 Window border and buttons mis-styled* The window is drawn with custom border and minimize/maximize/close widgets that kind-of imitates Windows 10.
* User preferences are ignored: border width, color, style+size+position of buttons (not only minimize/maximize/close but some others like roll, pin to desktop).
* This looks alien/fad/gimmick on a Linux desktop where common wisdom for ages is that app just don't try to interfere with basic desktop functionality.
2 Resize: User Experience broken* For years some desktop environment (XFCE which I use, KDE also IIRC) have allowed to alt-click anywhere in the window. Left click moves the window, right click resizes. Not with AT2. Left works, right not: it moves just like left.
* Actually, any external program I've tried to change window size just could not.
* For a moment I thought AT2 was like some old Windows apps that have fixed size window. In practice it was. [Added: apparently, it really is, kind-of. See below.]
3 Maximize button does not do what's expected* Then I tried the "maximize" button. Broken also.
* Explanation: my laptop has a small screen and its desktop extends onto a big screen. Pressing the "maximize" button maximizes the window
on the small screen even if I put it on the big screen first.
* Can I maximize it on the big screen simply? I guess not. With any usual app, this just works.
4 The most annoying: Alt-Tab cannot switch to Arkos Tracker!* The window just does not appear in the list of opened windows.
* It feels like the app disappeared, crashed or something.
* Actually, the app is indeed there, but can't be reached with alt-tab.
As a side note, be aware that Ubuntu Linux for years no longer has a "task bar" that lists window titles.
As a matter of fact, I don't use a task bar / app dock or anything like that would take room at the bottom of the screen.
I happen to switch between windows using SuperSwitcher. That tool sees AT2 window, and shows it with default icon.
Those who don't use SuperSwitcher may have a more difficult time.
How to work around broken user experienceSince the maximize button can change the window size, the application can actually change size. Good news!
I finally found that you can resize the application the old slow way that I've not used for years: aim for the window bottom right corner, left-click and drag.
ConclusionNo big deal, yet frustration for no good reason.
IMHO the best thing to do it just do like all apps: don't try to interfere with basic desktop functionality.
(1) Don't forbid the system to decorate the windows. This just lets the window manager decorate the windows with the style that the user wished.
(2) Don't forbid the system to resize the window. This just lets whatever platform-specific option you don't even know to just work.
(3) Don't declare the window as a special window (dependent window, tool window or whatever). This is special cases for applications like Gimp where the user clearly wants
one entry per image in Alt-Tab, and not one entry per each small tool window. Not relevant for AT2 which has only one window.
Trying to do window management oneself only gets a setup that work on your platform and your habits but breaks for other people, causes more work, for what benefit?
Tech sideFrom the app behavior it looks like it tells the system that it
is a fixed size app and just happens to have custom code that allows limited options to change position and size, with an incomplete maximize feature. Is that right?
I think I remember the last apps that did something similar: the antique
xmms player or
xine - Wikipedia. Those were really fixed size, so the choice of forcing the platform and handling everything by itself caused not as much work as in your case and was less likely to frustrate users. The popular VLC did not fall into this trap.
Probably, fixing those problems will just be a matter of just
not forbiding desktop environment to do its job, in practice removing things / simplifying code and/or not enabling some Juce features that cause interference with basic desktop functionality.