Summary: | Dolphin settings not detecting executable scripts behaviourOnLaunch "open" value | ||
---|---|---|---|
Product: | [Applications] dolphin | Reporter: | Serhiy Zahoriya <serhiy.int> |
Component: | general | Assignee: | Dolphin Bug Assignee <dolphin-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | minor | CC: | kfm-devel, nate, wbauer1 |
Priority: | NOR | ||
Version: | 19.12.3 | ||
Target Milestone: | --- | ||
Platform: | Kubuntu | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/system/dolphin/commit/7a6956da997a39a22c1f08138674459c3c3aa32b | Version Fixed In: | 20.04.3 |
Sentry Crash Report: |
Description
Serhiy Zahoriya
2020-05-10 16:13:22 UTC
It looks like the "dontAsk" and "open" behaviors are identical? I guess Dolphin should consider the "open" value to be the same as "Open in Application" A secondary problem is that when Dolphin is configured to make KIO always ask, the dialog box still has an option to not ask anymore. kio doesn't know about "dontAsk", it uses "open" for "Open in application". But dolphin's settings incorrectly use "dontAsk" since https://phabricator.kde.org/D15147, I actually mentioned it there but got ignored... (In reply to Wolfgang Bauer from comment #2) > kio doesn't know about "dontAsk", it uses "open" for "Open in application". To be more precise, it actually only knows "alwaysAsk" and "execute", all other values are mapped to "open". This is the code that reads the setting (in src/widgets/krun.cpp): KConfigGroup cfgGroup(KSharedConfig::openConfig(QStringLiteral("kiorc")), "Executable scripts"); const QString value = cfgGroup.readEntry("behaviourOnLaunch", "alwaysAsk"); if (value == QLatin1String("alwaysAsk")) { return true; } else { q->setRunExecutables(value == QLatin1String("execute")); } It however does write the values "open" or "execute" though when ticking the "Don't ask again" checkbox: if (isDontAskAgainSet) { QString output = result == ExecutableFileOpenDialog::OpenFile ? QStringLiteral("open") : QStringLiteral("execute"); KConfigGroup cfgGroup(KSharedConfig::openConfig(QStringLiteral("kiorc")), "Executable scripts"); cfgGroup.writeEntry("behaviourOnLaunch", output); } A possibly relevant merge request was started @ https://invent.kde.org/system/dolphin/-/merge_requests/28 A possibly relevant merge request was started @ https://invent.kde.org/system/dolphin/-/merge_requests/29 A possibly relevant merge request was started @ https://invent.kde.org/system/dolphin/-/merge_requests/30 Git commit 7a6956da997a39a22c1f08138674459c3c3aa32b by Elvis Angelaccio, on behalf of Wolfgang Bauer. Committed on 05/07/2020 at 15:22. Pushed by elvisangelaccio into branch 'release/20.04'. Write correct value for "Open in application" script execution setting KIO actually uses "alwaysAsk", "execute", and "open" as possible values. When reading the setting, map unknown values to "open" like KIO does. That also provides compatibility with older dolphin versions. FIXED-IN: 20.04.3 M +5 -5 src/settings/general/confirmationssettingspage.cpp https://invent.kde.org/system/dolphin/commit/7a6956da997a39a22c1f08138674459c3c3aa32b |