diff --git a/src/override/Scene.cpp b/src/override/Scene.cpp index 909b498..5b6e85a 100644 --- a/src/override/Scene.cpp +++ b/src/override/Scene.cpp @@ -1,6 +1,6 @@ /* * DISTRHO Cardinal Plugin - * Copyright (C) 2021-2024 Filipe Coelho + * Copyright (C) 2021-2025 Filipe Coelho * SPDX-License-Identifier: GPL-3.0-or-later */ @@ -207,20 +207,23 @@ void Scene::step() { (internal->historyActionIndex != actionIndex && actionIndex > 0 && time - internal->lastSceneChangeTime >= 1.0)) { - remoteDetails->first = false; - - const std::string& name(APP->history->actions[actionIndex - 1]->name); - static const std::vector ignoredNames = { - "move knob", - "move modules", - "move switch", - }; - if (std::find(ignoredNames.cbegin(), ignoredNames.cend(), name) == ignoredNames.cend()) { - printf("action '%s'\n", APP->history->actions[actionIndex - 1]->name.c_str()); + if (remoteDetails->first) { + remoteDetails->first = false; remoteUtils::sendFullPatchToRemote(remoteDetails); - - if (remoteDetails->screenshot) { - window::generateScreenshot(); + } else { + const std::string& name(APP->history->actions[actionIndex - 1]->name); + static const std::vector ignoredNames = { + "move knob", + "move modules", + "move switch", + }; + if (std::find(ignoredNames.cbegin(), ignoredNames.cend(), name) == ignoredNames.cend()) { + d_debug("action '%s'\n", APP->history->actions[actionIndex - 1]->name.c_str()); + remoteUtils::sendFullPatchToRemote(remoteDetails); + + if (remoteDetails->screenshot) { + window::generateScreenshot(); + } } } internal->historyActionIndex = actionIndex;