Problem when running a ui program from shortcut.
-
I put a home screen icon with shortcut to run a program I made. The program is with a ui view and the problem is that when I leave the view after using it without closing it (which we usually do when using a tablet,) and next time I run a program from the shortcut, a new view is invoked over the same view I opened last time. That seems natural because shortcut is only to open a program and run it, but I wonder if there is any way to avoid opening as many views as I click the icon. It seems difficult to manage a program running in a different thread, but as I believe we should mostly face the same problem when making a shortcut, does anyone have good idea on it?
-
@satsuki.kojima do you see a difference if you have or not a tab with your script open?
-
@satsuki.kojima my solution is correct, I think, if you leave Pythonista by opening another app, like you asked.
-
@cvp
I closed all the tab of my script, and now it works all fine so far.
-
@cvp I think the singleton view approach in that thread would work, with modification -- basically as part of the launch, it would close and reopen the view ( or reinitialize it). Haven't tried it myself.
-
@JonB good idea. @satsuki-kojima you could try
-
@JonB
Excuse my slow response. I knew, advised by you, that the same discussion was held in this forum 2 years ago. There were many ideas in that discussion as well although I haven't been all through this yet.
I am very new to singleton approach and my understanding is that singleton pattern can be implemented in one running program. Am I right? If I run my program twice and create a thread in each program, then those threads have to be different threads(different instances,) I think.
Given many ideas, I'll keep posting for any update. Thank you so much.@cvp
Your solution seems working. Mysterious behavior (which I described) may be caused by my impatient testing. (run a program, close Pythonista, run a program again with no break but only clicking the shortcut icon etc.)
-
Again, I'll caveat that I haven't run this, but @TPO's code could be modified to return
lock_view
fromis_active
, then you could simply close and relaunch the view. Or, if the view is already active, you could reuse the view, and just replace all the subviews.I'll have to experiment with it.
-
@JonB
Ah yes, so you mean the codes of @TPO, posted 2 years ago. Sorry, I did't get it and was misunderstanding your suggestion. Well, I think I need to try it. Will let you know how it works.
-
This post is deleted!last edited by
-
@satsuki.kojima don't worry, this user has posted in the last 10 topics, everybody saw it.
-
Thank you for your help. vidmate download instasave