J. Landman Gay wrote:

> On 5/2/20 8:20 PM, Richard Gaskin via use-livecode wrote:
>> LiveCode is nearly unmatched for making desktop apps, but for
>> mobile development there are so many unfinished edges it's barely
>> a contender for anyone not already heavily invested in LiveCode
>> from desktop work.
>>
>> It would be reassuring if the LC team could share with us their
>> plan to finish their mobile implementation, to deliver a user
>> experience on par with its best-of-breed desktop workflows.
>
> That's what widgets are for.

Are they?

Widgets are great for specialized functionality not in the box. But crafting custom widgets should not be seen as a replacement for essential common GUI elements.

Will you be solving your field display issue by writing your own text engine from scratch in a lower-level scripting language?

Should I tell that forum user that LiveCode doesn't provide common GUI essentials out-of-the-box?

Show of hands: how many of you would be using LiveCode today if the desktop editions required you to write your own common GUI controls from scratch?


> There are native fields and buttons, though some are still
> missing, but not enough people are writing them. And unfortunately,
> mobile GUIs change often enough on both Android and iOS that the
> native buttons aren't so native any more.

If/when this goes in the engine, it could be handled as it is on the desktop, with hooks into the host OS renderer. Write once, render anywhere.

But at the moment, at a minimum the team could do what so many of us have done: write a library that walks through LC-native controls on the card and makes appropriate replacements/additions where needed for mobile.

When the script sees a group or field with scrollbars, it turns the scrollbars off so they're not visible and automatically creates the mobile-native scoller region to match it.

When the script sees a checkbox, it hides that and instantiates a mobile-native Boolean selector.

When the script sees an editable field, it hides that and creates an editable field matching those properties in its place.

Pinch-to-zoom on images becomes a property, so those interactions invoke a good-but-difficult-to-find-buried-in-the-forums-script to handle that (the Lesson on that is woefully incorrect).

In each case, message handlers route mobile-native messages to their LC-native counterparts. This lets you script using LC objects without having to type out control defs in code like you're a C programmer from 1993. And it lets you enjoy one of the finest benefits of The xTalk Way: blurring the line between development and runtime so you spend more time developing your app in the environment designed for developing.

This won't handle all possible circumstances, but will remove the most serious pain points from at least 80% of LC's uniquely odd mobile development workflows.

This could be done today. It could have been done many years ago. Many of us have been replicating this for years.


That would reduce the most common pain points, but still wouldn't address your need to scroll field text whose formatted height exceeds 32765px.

For that we need some engine work, to finally be done with the frankly-bizarre requirement that a perfectly good field needs to be wrapped inside of a group just to scroll smoothly.

We don't need that strange and unpredictable extra step on the desktop, and that we need it on mobile is not a feature, it's a bug, a shortcoming that I hope the engine team has a plan to address.

LiveCode on the desktop is flippin' awesome. LiveCode on mobile can be every bit as awesome, and needs to be if it's to remain relevant in a world of simpler competitors.

The current workflow requirements undo the otherwise-powerful benefits of using LC on mobile for many newcomers.

--
 Richard Gaskin
 Fourth World Systems
 Software Design and Development for the Desktop, Mobile, and the Web
 ____________________________________________________________________
 ambassa...@fourthworld.com                http://www.FourthWorld.com




_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to