[dolphin] [Bug 452637] New: Action "Open Terminal" ignores path context of interacted folder

Brennan Kinney bugzilla_noreply at kde.org
Fri Apr 15 05:23:56 BST 2022


https://bugs.kde.org/show_bug.cgi?id=452637

            Bug ID: 452637
           Summary: Action "Open Terminal" ignores path context of
                    interacted folder
           Product: dolphin
           Version: 21.12.3
          Platform: Archlinux Packages
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: dolphin-bugs-null at kde.org
          Reporter: polarathene-signup at hotmail.com
                CC: kfm-devel at kde.org
  Target Milestone: ---

SUMMARY

Since 2021 releases have dropped the Konsole "Open Terminal Here" service in
favor of a generic internal alternative "Open Terminal" in Dolphin.

The new service opens a terminal at the views location, but ignores the context
of the location for any sub-location interacted with (folder, or via details
view many nested levels deep), requiring explicit navigation afterwards, or
workarounds such as opening a new tab/window to use the context menu action.

This seems like a regression, but may be intentional to support other terminals
than Konsole. However Konsole is opening at the view location, thus it seems
the UX regression is fixable.


STEPS TO REPRODUCE
1. Right-click a folder and choose "Actions => Open Terminal".
2. Terminal window opens at the views set location, not the sub-directory that
was interacted with.


OBSERVED RESULT

Terminal window opens at the views set location, not the sub-directory that was
interacted with.


EXPECTED RESULT

Terminal window opens at the location of the interacted sub-directory.

Especially useful in the "Details" view mode for a project overview, when
expanding multiple levels deep I should be able to open applications such as a
terminal without having to navigate or open a new view tab to perform the
action (current workaround).


SOFTWARE/OS VERSIONS
Linux/KDE Plasma: ArchLinux, X11 with kernel 5.15.28
KDE Plasma Version: 5.24.3
KDE Frameworks Version: 5.91.0
Qt Version: 5.15.3


ADDITIONAL INFORMATION

This used to be possibly prior to Konsole 20.12 from what I understand. Here is
the commit that caused the regression in favor of Dolphin's internal service
replacement:
https://invent.kde.org/utilities/konsole/-/commit/7cfe7bb380613d37427b76cc026027e547221f9e

Presently, Dolphin uses the service action `open_terminal` internally that
calls the following to launch the system terminal (instead of previously
hard-coded Konsole from `konsolehere.desktop` service:
https://invent.kde.org/system/dolphin/-/blob/3ebe3975a65d6e81fbda260d6df1806a7f82e142/src/dolphinmainwindow.cpp#L1088

The functionality appears to have been introduced with this MR by developer
Alexander Lohnau:
https://invent.kde.org/system/dolphin/-/merge_requests/81

In the referenced Reddit thread for that MR, a user attempts to adapt the
Konsole shipped service to their preferred Terminal app Tilix, and discovered
an issue with differing options to open the terminal at the expected path:

> Changing "--workdir %f" to "--working-directory %f" fixed the issue.

I am not familiar with how Dolphin is launching the `open_terminal` action
beyond the point I referenced earlier. I assume that calls code from another
project that was difficult to search for via the Gitlab UI. Hopefully this is
not a concern that would block this request from being feasible.

If it would be possible to address this regression, so that the service could
open at the expected location being interacted with, not the views top-level
location, that would be fantastic :)


WORKAROUND:

The present workaround is to disable the internal Dolphin service, and restore
the previous Konsole shipped service instead (altering it for alternative
terminal if necessary like with Tilix above). The full issue and workaround
solution was discussed recently here:

https://www.reddit.com/r/kde/comments/u1mdic/how_to_restore_dolphin_action_open_terminal_here/

With the original `konsolehere.desktop` service located here:
https://invent.kde.org/utilities/konsole/-/blob/release/20.12/desktop/konsolehere.desktop

Place it's contents in `/usr/share/kservices5/ServiceMenus/konsolehere.desktop`
and the service is restored under actions.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the kfm-devel mailing list