Summary: | Double click on folder from desktop opens not only that folder but also random unrelated ones | ||
---|---|---|---|
Product: | [Applications] dolphin | Reporter: | php4fan |
Component: | general | Assignee: | Dolphin Bug Assignee <dolphin-bugs-null> |
Status: | REOPENED --- | ||
Severity: | major | CC: | almur.kde, fanzhuyifan, kfm-devel, zilla |
Priority: | NOR | ||
Version: | 22.12.3 | ||
Target Milestone: | --- | ||
Platform: | Manjaro | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
php4fan
2023-05-02 15:30:10 UTC
I could reproduce this on Arch. It is, to my eyes, kind-of intended since in the settings of Dolphin there is one which seems to control exactly this. I am wondering however what is the rationale behind a *default* of reopening the tabs of the last process.. can anybody shed some light? I admit I find this behaviour slightly odd too. > It is, to my eyes, kind-of intended since in the settings of Dolphin there is one which seems to control exactly this.
Are you talking about the one under "Startup -> New windows -> Show on startup"
which has two options:
- Folders, tabs, and window state from last time
- [a specific folder]
But this one also applies when I close all Dolphin windows and then launch Dolphin from scratch. When I do so, of course I do want it to reopen my last window with the tabs that I had in it. If I change that setting, it will apply in this case too, and I don't want that. So that's a reasonable default (but I do see the need for a setting, i.e. I understand why others may prefer to always start from a given folder).
But when I open a new window BY DOUBLE CLICKING ON A SPECIFIC FOLDER on the desktop, it makes no sense to open _additional_ tabs that are from *SOME* previously closed window. Especially when I already have another window open. The concept of "last time" is not even well defined in this situation.
It seems to be using the same setting for unrelated situations.
And indeed I checked that changes this setting does make the issue go away. But again, it's not an acceptable workaround.
Why is this being ignored? > Especially when I already have another window open. The concept of "last time" is not even well defined in this situation.
Yeah I think this is the problem. I have a dolphin window that I keep open permanently, with two tabs to a bunch of PDFs that I consult every day (docs like the C and C++ standards). So I definitely want that window to be restored when I start dolphin.
But if I open a second dolphin window, or a third one, or some other application runs "xdg-open /some/path", or I mount a USB drive via the systray applet, I don't want a new window with all the same tabs in it *again*.
I have Firefox set to restore my tabs and windows from last time as well, but if I press Ctrl-N to open a new window it doesn't reopen all those tabs *again*. They're still there in the original window, I don't need them reopened!
If I change dolphin's setting to show $HOME (or some other dir) on startup, then launching a new dolphin window to open a specific dir (e.g. with xdg-open) or mounting a removable drive doesn't open with $HOME in a second tab, it *only* opens the location it was told to open. Why doesn't the "show on startup" setting take effect here too? To be clear, I don't think it should take effect, because that would be silly. But that's exactly what it does when "show on startup" is set to restore the previous state.
I think the sensible behaviour would be to ignore that setting when dolphin is launched to show a specific dir (like when clicking on a folder on the desktop, or mounting a removable drive, or some other app uses xdg-open). Just show the dir it's been asked to show.
If dolphin is launched with no arguments, e.g. from the start menu or the command line, then the "show on startup" would be relevant. That is the action "start dolphin", and not "show dir X in a file manager, which happens to be dolphin". They are two very different use cases.
This is a regression, it used to behave as expected. There's no need to invent anything, just find what broke it. Can we please have this adressed?? This is tremendously annoying. (In reply to php4fan from comment #6) > Can we please have this adressed?? This is tremendously annoying. Would you be interested to do a git bisect to figure out the first bad commit? : ) > Would you be interested to do a git bisect to figure out the first bad commit? : )
If there's a guide for dummies on how to do that I may give it a shot, but given I have to learn from scratch and install all the tools and stuff, I strongly suspect it would take me about 20x the time it would take any of the developers (who probably do git bisects all the time) to do the same thing. Especially considering that anybody can easily reproduce the issue on the current version. At least nobody has said they can't reproduce.
Guys please, this is a huge pain in the a** Please for f***'s sake this is such a pain in the a**. It's been over a year since this annoying regression appeared. Nobody even replied to comment 8 I suspect that teaching you how to build dolphin from source, and then teaching you how to use git bisect, would *also* take longer than just doing it, so nobody has taken the time to teach you. (I have no idea how to build dolphin from source, and whether I'd also need to rebuild other things like plasma and kde frameworks along with it, otherwise I'd try the bisection myself.) > .... so nobody has taken the time to teach you.
Yeah that was expected. What surprises me is that nobody has taken the time to try the bisection either (or to investigate the issue in any way, it seems).
(In reply to php4fan from comment #2) > > It is, to my eyes, kind-of intended since in the settings of Dolphin there is one which seems to control exactly this. > > Are you talking about the one under "Startup -> New windows -> Show on > startup" > which has two options: > - Folders, tabs, and window state from last time > - [a specific folder] Yeah, this is the intended behavior controlled by this setting. > Yeah, this is the intended behavior controlled by this setting. If so, it's intended wrong. See my comment 2. Has this setting been recently introduced? If it has, then again, it's implemented or designed wrong, as pointed out in comment 2. If it hasn't, then it means that it used to work properly and this is a regression (I mean this is a regression either way, but if the setting isn't new then it's not due to introducing the setting, or probably even related to it). Could you explain why that makes sense, referring to comment 4? Why is "xdg-open this directory in a file manager, which happens to be Dolphin" the same as "Start Dolphin and restore the same session as last time"? I'm not trying to "start a new Dolphin session" I'm just trying to open a directory in the file manager. Why would I want to open that directory *and get another copy of all the previous tabs* every time I open a directory? That means I end up with several Dolphin windows and all of them have another copy of the same set of tabs, so for the example in comment 0 I get one window with folders A, X, Y, Z, and another window with B, X, Y, Z. Why is this useful? Why would I want X, Y, and Z present **in every dolphin window I start**??? Surely the point of "Folders, tabs and window state from last time" is to restore the state when you first login to the desktop. To, y'know, restore the state. I don't want to keep "restoring" it again and again every time in multiple windows. That's dumb. I already restored it once, thanks. This behaviour might be intentional, but that doesn't mean it's logical or useful. (In reply to php4fan from comment #2) > Are you talking about the one under "Startup -> New windows -> Show on > startup" > which has two options: > - Folders, tabs, and window state from last time > - [a specific folder] N.B. the option is NOT nested under New Windows. There is a radio button for "Show on startup" and a SEPARATE one for "New windows". That seems relevant to me. The problem seems to be that opening a directory by clicking on the desktop, or running xdg-open, is considered a new session "startup", rather than just opening a new window for *that specific directory only*. I think there needs to be some "is this the first dolphin window? if so restore the previous session, otherwise open a new window without the previous tabs" logic. So that it doesn't keep "restoring" tabs that are already open in another window. > N.B. the option is NOT nested under New Windows. > There is a radio button for "Show on startup" and a SEPARATE one for "New windows". > That seems relevant to me. Just to clarify, the settings have changed since I wrote comment 2. The setting is now under "Interface -> Folder and Tabs -> Show on startup" (i.e. the very first setting) and it has two possible options (i.e. radio buttons): (A) "Folders, tabs and windows from last time" and (B) the option to select a specific folder. The "New windows" section that now only comprises a single checkbox setting is now completely unrelated. @fanzhuyifan after all the replies from me and Jonathan Wakely you do now understand that this is an issue, right? What is stopping this from being addressed? BTW you never confirmed whether or not the setting, that you misunderstood as causing this as expected behavior, was introduced around the time this issue appeared (which is probably a few months before it was reported). Because again, if that is not the case, and the setting already existed long before, then probably this has nothing to do with it and is just a stupid unrelated regression. |