diff --git a/src/gui/cursor.cpp b/src/gui/cursor.cpp index 19526268..5a98a78c 100644 --- a/src/gui/cursor.cpp +++ b/src/gui/cursor.cpp @@ -43,7 +43,7 @@ void FurnaceGUI::startSelection(int xCoarse, int xFine, int y, bool fullRow) { } } - if (settings.dragMovesSelection && !fullRow) { + if ((settings.dragMovesSelection==1 || (settings.dragMovesSelection==2 && (ImGui::IsKeyDown(ImGuiKey_LeftCtrl) || ImGui::IsKeyDown(ImGuiKey_RightCtrl)))) && !fullRow) { if (xCoarse>=selStart.xCoarse && (xFine>=selStart.xFine || xCoarse>selStart.xCoarse) && y>=selStart.y && xCoarse<=selEnd.xCoarse && (xFine<=selEnd.xFine || xCoarsegetConfInt("effectValCellSpacing",0); settings.doubleClickColumn=e->getConfInt("doubleClickColumn",1); settings.blankIns=e->getConfInt("blankIns",0); - settings.dragMovesSelection=e->getConfInt("dragMovesSelection",1); + settings.dragMovesSelection=e->getConfInt("dragMovesSelection",2); clampSetting(settings.mainFontSize,2,96); clampSetting(settings.patFontSize,2,96); @@ -2127,7 +2133,7 @@ void FurnaceGUI::syncSettings() { clampSetting(settings.effectValCellSpacing,0,32); clampSetting(settings.doubleClickColumn,0,1); clampSetting(settings.blankIns,0,1); - clampSetting(settings.dragMovesSelection,0,1); + clampSetting(settings.dragMovesSelection,0,2); settings.initialSys=e->decodeSysDesc(e->getConfString("initialSys","")); if (settings.initialSys.size()<4) {