diff --git a/src/filebrowser/FileBrowserActivity.cpp b/src/filebrowser/FileBrowserActivity.cpp index b8e18bf45..0ea7104c4 100644 --- a/src/filebrowser/FileBrowserActivity.cpp +++ b/src/filebrowser/FileBrowserActivity.cpp @@ -68,7 +68,7 @@ class LoadFilesTask: public Task { std::vector data = Client::Ref().ReadFile(*iter); GameSave * tempSave = new GameSave(data); - saveFile->SetGameSave(tempSave); + saveFile->SetGameSave(tempSave); saveFiles.push_back(saveFile); std::string filename = *iter; diff --git a/src/interface/Panel.cpp b/src/interface/Panel.cpp index d67303704..b78a2cce3 100644 --- a/src/interface/Panel.cpp +++ b/src/interface/Panel.cpp @@ -82,6 +82,8 @@ void Panel::RemoveChild(Component* c) { //remove child from parent. Does not free memory children.erase(children.begin() + i); + if (this->GetParentWindow()->IsFocused(c)) + this->GetParentWindow()->FocusComponent(NULL); break; } } diff --git a/src/save/LocalSaveActivity.cpp b/src/save/LocalSaveActivity.cpp index b57a9933e..96296f02e 100644 --- a/src/save/LocalSaveActivity.cpp +++ b/src/save/LocalSaveActivity.cpp @@ -48,6 +48,7 @@ LocalSaveActivity::LocalSaveActivity(SaveFile save, FileSavedCallback * callback filenameField->Appearance.VerticalAlign = ui::Appearance::AlignMiddle; filenameField->Appearance.HorizontalAlign = ui::Appearance::AlignLeft; AddComponent(filenameField); + FocusComponent(filenameField); ui::Button * cancelButton = new ui::Button(ui::Point(0, Size.Y-16), ui::Point(Size.X-75, 16), "Cancel"); cancelButton->Appearance.HorizontalAlign = ui::Appearance::AlignLeft;