Xojo and macOS10.14 findings

  1. 5 months ago

    Christoph D

    Jun 6 Pre-Release Testers, Xojo Pro

    Did some testing with macOS10.14 beta 1 and below are some things I noticed:

    FWW I know it is the first beta, still it may be good to look into some things right now instead of waiting.

    - Listbox has a lot of problems :
    The header is funky. Sometimes it turns full black, sometimes it overwrites text, sometimes the text is shifted to the left. Definitely something is wrong here.
    The paint event has problems with .drawpicture (it draws .PNG images with a black background).
    Fast scrolling is troublesome (read: cannot keep up updating). Drawing glitches are clearly visible.

    - Labels:
    The text color is not adapted when turning the Dark Mode on. (yes, I turned on Darkmode with the declares Sam provided).

    - Many controls do not display the 'dark' type version. It just displays the 'default' (yes, I turned on Darkmode with the declares Sam provided).

    - Scrollbars have the wrong color (and still aren't transparent - read native).

    - The Xojo UI has all sort of glitches (probably because they are custom and not native.

    Now, I think Xojo Inc can fix the controls easily.
    The non-native listbox is another story. With the Darkmode, it is now completely non-macOS-a-like. I mean, when you use the Listbox, your app will not look like a macOS at all. This was already the case with the previous macOS versions, but now it is really becoming a huge problem if you want to make a decent macOS app.
    I do realise the non-native listbox control will be hard to make it look good (Read: how macOS users expect it to look), but maybe Xojo Inc can take a serious look at adding a native listbox (NSTableView?).

    BTW Appwrapper 3 still works. So 32bit apps seems to be allowed. At least for this beta. :)

  2. Thom M

    Jun 6 Pre-Release Testers Greater Hartford Area, CT

    @Christoph Dnbsp;Vocht - Scrollbars have the wrong color (and still aren't transparent - read native).

    Just FYI, the scrollbars are native, but they won't get the modern feel because they can't. Xojo needs a scroll view in order to make modern scrolling a reality.

  3. Tim J

    Jun 6 Pre-Release Testers, Xojo Pro Dehydrating in AZ

    @Christoph De Vocht he non-native listbox is another story. With the Darkmode, it is now completely non-macOS-a-like. I mean, when you use the Listbox, your app will not look like a macOS at all. This was already the case with the previous macOS versions, but now it is really becoming a huge problem if you want to make a decent macOS app.
    I do realise the non-native listbox control will be hard to make it look good (Read: how macOS users expect it to look), but maybe Xojo Inc can take a serious look at adding a native listbox (NSTableView?).

    I've now started using 2 listboxes to make one. Neither has a header, and the first IS the header for the main listbox. The result looks like this:
    -image-
    That allows me to use the CellBackgroundPaint and CellTextPaint events to create a look that is more in tune with my overall app.

  4. Thom M

    Jun 6 Pre-Release Testers Greater Hartford Area, CT

    @Tim J I've now started using 2 listboxes to make one. Neither has a header, and the first IS the header for the main listbox. The result looks like this:
    -image-
    That allows me to use the CellBackgroundPaint and CellTextPaint events to create a look that is more in tune with my overall app.

    Not saying your approach is wrong, but why didn't you use a canvas for the header?

  5. Tim J

    Jun 6 Pre-Release Testers, Xojo Pro Dehydrating in AZ

    @Thom M Not saying your approach is wrong, but why didn't you use a canvas for the header?

    Because the resulting gradient is different on the three platforms when I used a canvas.

  6. Christoph D

    Jun 6 Pre-Release Testers, Xojo Pro
    Edited 5 months ago

    @Tim J I've now started using 2 listboxes to make one. Neither has a header, and the first IS the header for the main listbox.

    Ha yes, again we need to use tricks to make it (kinda) work. But honestly, I dislike non-native looks. Especially for macOS. macOS users don't like non-native stuff (and they are right not to).

  7. Emile S

    Jun 6 Europe (France, Strasbourg)

    @Christoph Dnbsp;Vocht Listbox has a lot of problems

    It have a lot of problems already… and Xojo do not had time to remove them !

  8. Thom M

    Jun 6 Pre-Release Testers Greater Hartford Area, CT

    @Tim J Because the resulting gradient is different on the three platforms when I used a canvas.

    That's... odd.

  9. Dave S

    Jun 6 San Diego, California USA

    I posted code for a self-synchronizing listbox header that is canvas based.... it would take some modification to be "dark-mode" but a quick search should find the link to the source code I posted... (not where I can find it at the moment)

  10. Alberto D

    Jun 6 Pre-Release Testers, Xojo Pro
    Edited 5 months ago

    @Dave S I posted code for a self-synchronizing listbox header that is canvas based.... it would take some modification to be "dark-mode" but a quick search should find the link to the source code I posted... (not where I can find it at the moment)

    This? https://forum.xojo.com/43864-custom-listbox-header/

  11. Sam R

    Jun 6 Pre-Release Testers, Xojo Pro Hengchun, Pingtung, Taiwan

    @Christoph Dnbsp;Vocht The text color is not adapted when turning the Dark Mode on. (yes, I turned on Darkmode with the declares Sam provided).

    I've already written code to fix this.

    @Christoph Dnbsp;Vocht - Many controls do not display the 'dark' type version. It just displays the 'default' (yes, I turned on Darkmode with the declares Sam provided).

    Which ones?

    @Christoph Dnbsp;Vocht - The Xojo UI has all sort of glitches (probably because they are custom and not native.

    I think I can fix that too.

    @Christoph Dnbsp;Vocht BTW Appwrapper 3 still works. So 32bit apps seems to be allowed. At least for this beta. :)

    They said it would last year, just that 10.13 was the last OS to support 32-Bit apps unhindered. Then they went and pulled that stunt by freighting casual users who opened 32-Bit apps.

    btw, I have an alpha version of App Wrapper 64-Bit, I've been using it, but I would like it to have a bit more testing before it goes public, due to the colossal amount of declares in there.

  12. 4 months ago
    Edited 4 months ago

    I had a look through Apple's guide for making an app Dark Mode ready and it says to add NSRequiresAquaSystemAppearance NO to the info Plist file to properly support dark mode on apps built with 'older' SDKs.

    So by simply adding a build script with the following to my Mac build it enabled dark mode which works for most things.
    It even supports the new appearance settings allowing the default colour to be changed from blue to others (I have it set to orange).

    Dim App As String = CurrentBuildLocation + "/""" + CurrentBuildAppName + ".app"""
    Call DoShellCommand("/usr/bin/defaults write " + App + "/Contents/Info 'NSRequiresAquaSystemAppearance' 'NO'")

    The UI in the Xojo editor
    -image-

    And when running
    -image-

    The only things I can see that don't adapt correctly are the TextField, TextArea, Bezel button and Listbox but I don't know if they're even supposed to adapt...
    But both of those can be fixed via custom drawing on the listbox and just setting the background and font colour on the text field and area. And just don't use bezel buttons :P

  13. Edited 4 months ago

    I added the option to the Xojo IDE's plist and this is what happened :D
    -image-

    Nearly there, interesting to see all the custom controls.

  14. Tim P

    Jul 3 Pre-Release Testers feedback://46303

    I would hope Xojo focuses on fixing bugs rather than creating a dark mode interface. Dark mode interface for Xojo is literally lowest priority for me with all of the other issues Xojo is facing.

  15. @Tim P I would hope Xojo focuses on fixing bugs rather than creating a dark mode interface. Dark mode interface for Xojo is literally lowest priority for me with all of the other issues Xojo is facing.

    I agree that the Xojo IDE does not need a dark mode and would not want them to focus on it rather than fixing bugs.
    However with dark mode being one of the main features of MacOS 10.14 it is nice to know that our apps built with Xojo can support it with relative ease.

  16. Jeff T

    Jul 3 Midlands of England, Europe

    one of the main features of MacOS 10.14

    If that's a main feature, Apple are in trouble.

  17. Beatrix W

    Jul 3 Pre-Release Testers Europe (Germany)

    Unfortunately, Gilles is correct with Dark Mode being one of the major features of Mojave. Oh, and the death of non-Retina screens. And the death of non-transparency. I still think that all Apple developers are 20-somethings with perfect eyesight.

  18. Tim S

    Jul 3 Canterbury, UK

    @Tim P I would hope Xojo focuses on fixing bugs rather than creating a dark mode interface. Dark mode interface for Xojo is literally lowest priority for me with all of the other issues Xojo is facing.

    +1

    It's definitely fiddling while Rome burns.

  19. Tim S

    Jul 3 Canterbury, UK

    @Beatrix W Oh, and the death of non-Retina screens.

    What does this mean?

  20. Beatrix W

    Jul 3 Pre-Release Testers Europe (Germany)

    @Tim Streater: I meant the "improvements" in regards to subpixel antialiasing. Try any random QT app. Like Kindle, Calibre, Valentina Studio etc. Totally absolutely unusable on Mojave.

  21. Newer ›

or Sign Up to reply!