mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[apps/code] Fix Python loading when going in the VarBoxController
The Var box controller deinited python on exit, and the console controller did not reload python + it made the console controller lose all its context, such as imported scripts
This commit is contained in:
@@ -44,14 +44,14 @@ ConsoleController::ConsoleController(Responder * parentResponder, App * pythonDe
|
||||
}
|
||||
}
|
||||
|
||||
bool ConsoleController::loadPythonEnvironment(bool autoImportScripts) {
|
||||
bool ConsoleController::loadPythonEnvironment() {
|
||||
if(pythonEnvironmentIsLoaded()) {
|
||||
return true;
|
||||
}
|
||||
emptyOutputAccumulationBuffer();
|
||||
m_pythonDelegate->initPythonWithUser(this);
|
||||
MicroPython::registerScriptProvider(m_scriptStore);
|
||||
m_importScriptsWhenViewAppears = autoImportScripts;
|
||||
m_importScriptsWhenViewAppears = m_autoImportScripts;
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -104,6 +104,7 @@ const char * ConsoleController::inputText(const char * prompt) {
|
||||
}
|
||||
|
||||
void ConsoleController::viewWillAppear() {
|
||||
loadPythonEnvironment();
|
||||
assert(pythonEnvironmentIsLoaded());
|
||||
m_sandboxIsDisplayed = false;
|
||||
if (m_importScriptsWhenViewAppears) {
|
||||
@@ -116,6 +117,10 @@ void ConsoleController::viewWillAppear() {
|
||||
m_editCell.setText("");
|
||||
}
|
||||
|
||||
void ConsoleController::didEnterResponderChain(Responder * previousFirstResponder) {
|
||||
loadPythonEnvironment();
|
||||
}
|
||||
|
||||
void ConsoleController::didBecomeFirstResponder() {
|
||||
app()->setFirstResponder(&m_editCell);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user