diff --git a/src/gui/dataList.cpp b/src/gui/dataList.cpp index 64de04221..cf8eb0e4c 100644 --- a/src/gui/dataList.cpp +++ b/src/gui/dataList.cpp @@ -1040,19 +1040,7 @@ void FurnaceGUI::drawSampleList(bool asChild) { } else { if (ImGui::Button(ICON_FA_FOLDER "##SampleFolder")) { folderString=""; - } - if (ImGui::BeginPopupContextItem("NewSampleFolder",ImGuiMouseButton_Left)) { - ImGui::InputText("##FolderName",&folderString); - ImGui::SameLine(); - ImGui::BeginDisabled(folderString.empty()); - if (ImGui::Button(_("Create"))) { - e->lockEngine([this]() { - e->song.sampleDir.push_back(DivAssetDir(folderString)); - }); - ImGui::CloseCurrentPopup(); - } - ImGui::EndDisabled(); - ImGui::EndPopup(); + ImGui::OpenPopup("NewSampleFolder"); } if (ImGui::IsItemHovered()) { ImGui::SetTooltip(_("New folder")); @@ -1136,7 +1124,8 @@ void FurnaceGUI::drawSampleList(bool asChild) { } } else { if (ImGui::MenuItem("new folder")) { - showError("to be done..."); + folderString=""; + ImGui::OpenPopup("NewSampleFolder"); } } } @@ -1156,6 +1145,20 @@ void FurnaceGUI::drawSampleList(bool asChild) { } } + if (ImGui::BeginPopup("NewSampleFolder",ImGuiWindowFlags_AlwaysAutoResize|ImGuiWindowFlags_NoTitleBar|ImGuiWindowFlags_NoSavedSettings)) { + ImGui::InputText("##FolderName",&folderString); + ImGui::SameLine(); + ImGui::BeginDisabled(folderString.empty()); + if (ImGui::Button(_("Create"))) { + e->lockEngine([this]() { + e->song.sampleDir.push_back(DivAssetDir(folderString)); + }); + ImGui::CloseCurrentPopup(); + } + ImGui::EndDisabled(); + ImGui::EndPopup(); + } + ImGui::Separator(); if (ImGui::BeginTable("SampleListScroll",1,ImGuiTableFlags_ScrollY)) { actualSampleList();