AW: can I lock screen over more than one handler?

jonathandlynch at gmail.com jonathandlynch at gmail.com
Wed Jul 5 10:57:12 EDT 2017


I have a suggestion, if nothing else works. Use two players, layered on top of each other. When you switch the source of a player, do it to the player on the bottom, then move it to be on top of the other player. 

By switching back and forth, and only reassigning the player on the bottom, it should always cover the transition.

Sent from my iPhone

> On Jul 5, 2017, at 10:19 AM, jonathandlynch at gmail.com wrote:
> 
> I have found that lock screen only blocks screen updates within the main LC context.
> 
> So, for example, it does not block whatever is happening in a browser.
> 
> For some reason, it also sometimes seems smoother to call a function rather than a handler, but perhaps I misperceived what was happening.
> 
> 
> Sent from my iPhone
> 
>> On Jul 5, 2017, at 9:57 AM, Tiemo Hollmann TB via use-livecode <use-livecode at lists.runrev.com> wrote:
>> 
>> Thanks Jonathan, Trevor and Sean for your comments.
>> 
>> Meanwhile I could drill down my "flickering" problem (post from yesterday)
>> to an unexpected command.
>> In one of those handlers I "set the filename of player "myVideoPlayer" to
>> tFile". This command withdraws the focus from the window and passes it back
>> after some milliseconds. On my Win 10 machine with a white window title bar
>> I almost can't see it, but on Win 8 with the standard violet title bar it is
>> an ugly flickering, each time I set the filename (which happens very
>> frequently in a quiz loop).
>> 
>> And I can't prevent this flickering with a lock screen right before the
>> setting of the filename. The setting of the filename seems to release the
>> lock screen or it takes the focus of the window off and back. Very ugly in
>> my case.
>> 
>> Tiemo
>> 
>> 
>> 
>> -----Ursprüngliche Nachricht-----
>> Von: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] Im Auftrag
>> von Sean Cole (Pi) via use-livecode
>> Gesendet: Mittwoch, 5. Juli 2017 15:30
>> An: How to use LiveCode <use-livecode at lists.runrev.com>
>> Cc: Sean Cole (Pi) <sean at pidigital.co.uk>
>> Betreff: Re: can I lock screen over more than one handler?
>> 
>> Hi Tiemo,
>> The solution here is to call another lockScreen at the beginning of
>> handler2. You don't have to use the unlockScreen at the end of handler 1 and
>> 2 as it will do that automatically but it is advisable to include the
>> command anyway. Is there a reason why you had an aversion to using a
>> lockScreen at the start of handler2?
>> 
>> All the best
>> 
>> Sean Cole
>> *Pi Digital Productions Ltd*
>> 
>> On 5 July 2017 at 14:09, Trevor DeVore via use-livecode <
>> use-livecode at lists.runrev.com> wrote:
>> 
>>> On Wed, Jul 5, 2017 at 6:45 AM, Tiemo Hollmann TB via use-livecode < 
>>> use-livecode at lists.runrev.com> wrote:
>>>> 
>>>> 
>>>> Is this possible?
>>>> 
>>>> on handler1
>>>> 
>>>> lock screen
>>>> 
>>>> -- do some stuff here
>>>> 
>>>> send "handler2" in 0 milliseconds
>>>> 
>>>> end handler1
>>>> 
>>>> 
>>>> 
>>>> on handler2
>>>> 
>>>> -- do some other stuff here
>>>> 
>>>> unlock screen
>>>> 
>>>> end handler2
>>>> 
>>> 
>>> No it is not. From the docs for `lock screen`:
>>> 
>>> "When all pending handlers are finished executing, the lockScreen 
>>> property is set back to false and the user sees the current state of 
>>> stack windows on the screen."
>>> 
>>> The use of the word "pending" is confusing because when you use `send` 
>>> you end up with an entry in the `pendingMessages`. But the screen is 
>>> going to be unlocked each time through the event loop. If `handler` 
>>> called `handler2` directly (without using `send`) then you would not 
>>> see the screen update. You should see the result you are looking for 
>>> if you change your code to look like this:
>>> 
>>> ```
>>> on handler1
>>> lock screen
>>> 
>>> -- do some stuff here
>>> 
>>> handler2
>>> end handler1
>>> ```
>>> 
>>> If you need to call `handler2` in time then you will need to figure 
>>> out another approach to updating the screen. Perhaps all screen 
>>> updates will need to happen in `handler2`.
>>> 
>>> --
>>> Trevor DeVore
>>> ScreenSteps
>>> www.screensteps.com
>>> _______________________________________________
>>> use-livecode mailing list
>>> use-livecode at lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your 
>>> subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>>> 
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
>> 
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode




More information about the Use-livecode mailing list