Earlier quoted context omitted.
In your experience, how do web applications compare to native Mac apps? Of course, a web app can be accessible with both VoiceOver and magnification (based on all the features you listed, I'm guessing you're low-vision). But are even the most accessible web applications noticeably less efficient for you than native Cocoa apps?
You're correct, I have low vision. Enough to code and read relatively comfortably, but not for long; so I either make the text enormous or turn on VoiceOver. Below, I'm talking about macOS; I don't use VoiceOver on iOS. I tend to find with web apps that they're pretty inaccessible with VoiceOver, depending on what they were made with. If it's Electron or React Native, unusable. I just make the text huge. No good for…
Boden cross-platform framework: Native C++11, native widgets, no JavaScript
71–80 of 98 posts
Re: Boden cross-platform framework: Native C++11, native widgets, no JavaScript
#72> Native widgets: Instead of drawing widgets that look nearly identical to the platform's design, Boden uses native OEM widgets ensuring that your app will always have a truly native look and feel. While I fully understand the underlying concept, I don’t understand why so many people seems to be bothered by that anymore; I used to care about that as an Android user, but most of the apps I use everyday on my phone (Tw…
There are so many hidden behaviors in native widgets that once you get accustomed to, you can't go back any more. Here are a few of the ones: * Right click the document icon on the title bar to reveal a menu bar for ancestor directories * Drag the document icon into things like an email client as an attachment * Support Emacs-style text editing shortcuts such as C-a C-e C-k everywhere, as well as user-defined ones (I…
Re: Boden cross-platform framework: Native C++11, native widgets, no JavaScript
#73Earlier quoted context omitted.
I notice this most when playing games and I can't get context menus to show up with long presses.
I'm trying to find an example of this "long press shows context menu". Tried long pressing a link in Safari Mac no context menu appears. Ctrl-Click brings up context menu. Tried long pressing a shortcut, no context menu but ctrl-click brings up context menu. Tried selecting and long clicking a file in Finder. No context menu appears but ctrl-click brings up context menu. Tried selecting some text in TextEdit and long…
Re: Boden cross-platform framework: Native C++11, native widgets, no JavaScript
#74This does not appear to be idiomatic C++11. I mean: bdn::P button = bdn::newObj (); Idiomatic would be to use std::shared_ptr and std::make_shared, instead of yet-another-custom-smart-pointer.
They also seem to have wrapped the STL, which I think is a big no-no. No real reason to relearn something new if there is an established standard. A modern C++ library shouldn't do that.
Re: Boden cross-platform framework: Native C++11, native widgets, no JavaScript
#75Earlier quoted context omitted.
You're correct, I have low vision. Enough to code and read relatively comfortably, but not for long; so I either make the text enormous or turn on VoiceOver. Below, I'm talking about macOS; I don't use VoiceOver on iOS. I tend to find with web apps that they're pretty inaccessible with VoiceOver, depending on what they were made with. If it's Electron or React Native, unusable. I just make the text huge. No good for…
I find native apps frustrating that they won't let me select what I want, only what they want to allow me to select, where as in a web page I can generally select whatever I want.
Depends on the app, I find, and how well it's made.
Re: Boden cross-platform framework: Native C++11, native widgets, no JavaScript
#76I mean look at the readme: Getting Started? Just call "python boden.py new -n AwesomeApp"
Just provide examples in source form with minimal and standard instrumentation (like project files) and leave the rest to the user
Re: Boden cross-platform framework: Native C++11, native widgets, no JavaScript
#77Earlier quoted context omitted.
I might be totally off base here, but I get the sense that native widgets have become a skeuomorph for following the common UX conventions of the platform you're running on, with the latter being what brings the real value. The equivalent conventions for web apps and their desktop derivatives are much looser and don't yield as much consistency on which to build effective user expectations and habits. People who exper…
Maybe you mean that "native widgets" has become just a byword for "following platform conventions"?
Re: Boden cross-platform framework: Native C++11, native widgets, no JavaScript
#78> Native widgets: Instead of drawing widgets that look nearly identical to the platform's design, Boden uses native OEM widgets ensuring that your app will always have a truly native look and feel. While I fully understand the underlying concept, I don’t understand why so many people seems to be bothered by that anymore; I used to care about that as an Android user, but most of the apps I use everyday on my phone (Tw…
We wanted to try a different approach. Why not just use what the platform gives you and always get the right look & feel out of the box? That certainly creates its own challenges, like having to provide a good abstraction layer for the core application code. But you do not have to worry about look, feel, drawing performance, interactions with other OS features and the like. And when the OS changes something then the app is automatically up-to-date.
Re: Boden cross-platform framework: Native C++11, native widgets, no JavaScript
#79GPL means its pretty much unusable...
Re: Boden cross-platform framework: Native C++11, native widgets, no JavaScript
#80This does not appear to be idiomatic C++11. I mean: bdn::P button = bdn::newObj (); Idiomatic would be to use std::shared_ptr and std::make_shared, instead of yet-another-custom-smart-pointer.
But on the other hand, not using the standard constructs definitely has a cost associated with it. We are happy for your feedback on this issue.
Note that we also think about the idea of transforming P and making it a specialization of std::shared_ptr for objects derived from bdn::Base. That would give us the best of both worlds. Feel free to let us know what you think.