Page 1 of 1

Wince (Windows CE) browser dies after clicking button.

PostPosted: Fri Oct 30, 2020 4:50 pm
by joe26
Hi guys,

Running an HTML 5.0 compliant browser on a Windows CE 5.0 device, which automatically allocates memory.

Since moving from 7.4.8 straight to 2020.09.0, the app dies unexpectedly when clicking on a button or entering text. Well, expectedly, now.

The server has the Security Setting servoy.clientTrustDataAsHtml set as true, as this broke a sizing issue with the screens. The browser executes a resize on the device's views, so left this in place.

The main view is a screen selection and a help F1 button. The help button is functional in the main view screen selections.

The second view is the selected data entry screen and the same help F1 button.
Clicking the F1 button causes the browser to die.
Entering any data causes the browser to die.

Replacing the code to just change a label text :
Code: Select all
   var time = new Date().getTime();
   debugCount = time.toString().substr(-4);
   application.output(debugCount);
   elements.genericin.requestFocus();

UI will accept text and button can be clicked but no other actions.
Adding application.updateUI() into the code has the same effect.

Are there any other HTML/WebClient changes which could result in the browser dying like the update to Angular?
This worked in 7.4.8 and was as lightweight as possible. Are there any other items not sent or removed through this broad update range?

Thanks,
--Joe.

Re: Wince (Windows CE) browser dies after clicking button.

PostPosted: Fri Oct 30, 2020 9:06 pm
by joe26
Okay, so I removed everything from the onShow and simply placed a text entry on the page and set the update value to the same as a label.
Set the value of the label to 'xxx.'

Still dies.

Forgot to mention the views share a common form, but that's more buttons and placements.

Re: Wince (Windows CE) browser dies after clicking button.

PostPosted: Mon Nov 02, 2020 9:33 am
by Andrei Costescu
Well that browser most likely does not support (or fully support) the newer tech that NG Client uses.
If a simple solution with a button, label, field etc. does not work maybe the browser does not support websockets or something that a js lib needs/uses.

I guess the same solution works on usual modern browsers right?

Re: Wince (Windows CE) browser dies after clicking button.

PostPosted: Mon Nov 02, 2020 3:28 pm
by joe26
The Zebra Enterprise Browser is not the most modern browser, but this is for the web client. The NG client is certainly a no go, and isn't intended to be used for that client type. The solution does work on the newest browsers, as a web client. The NG client runs, with little testing having been done.

Everything functions fine on the initial form.

It runs on the first form, but opening a second page loses its controls. 7.4.8 went fine, 2020.09 can show but not control form actions.

Re: Wince (Windows CE) browser dies after clicking button.

PostPosted: Tue Nov 03, 2020 1:59 pm
by Andrei Costescu
Ah this is for Web Client. I thought it's NG as you mentioned angular update (Web Client does not use angular so it should be unrelated).

But yes, it's hard to say what is the change in Web Client that makes it not work on this browser after so many versions. It could be debugged I guess with a sample solution... Actually one would also need a WinCE device (or virtual image maybe) with Zebra Enterprise Browser to be able to debug/test this so... I'm reluctant to say create a case as it will likely not be addressed/get low prio.

Also, as the browser dies: it sounds like there might be a bug in the browser's native code that the new version bumps into...

Re: Wince (Windows CE) browser dies after clicking button.

PostPosted: Fri Nov 06, 2020 10:29 pm
by joe26
Reviewing changes, many functions do not have return types as they weren't necessary in 7.4.8. Could this be a reason for a dying browser?

Re: Wince (Windows CE) browser dies after clicking button.

PostPosted: Mon Nov 09, 2020 10:22 am
by Andrei Costescu
That's more for developer (how JS compilation works) then for runtime.