helloSystem / Filer

A file manager that can also render the desktop
GNU General Public License v2.0
31 stars 9 forks source link

Dragging a document onto the white area of an opened folder window crashes #164

Closed louies0623 closed 1 year ago

louies0623 commented 1 year ago

When using Spring-loaded folders function, it will be terminated by the right-click menu.

PC-2-screen0.webm

probonopd commented 1 year ago

Right now, you need to drag the icon into the window that is opened. I know that this is not ideal, but I haven't found a better solution yet.

louies0623 commented 1 year ago

When the window comes out, the mouse will be released automatically, and I have no time to move the file to the window.

probonopd commented 1 year ago

When the window comes out, the mouse will be released automatically, and I have no time to move the file to the window.

I cannot reproduce this.

louies0623 commented 1 year ago

I reproduced a whole chain of crashes.

PC-2-screen0.webm

louies0623 commented 1 year ago

I cannot reproduce this.

It's going to crash in the end, right?

probonopd commented 1 year ago

No, it works for me on my development machine. I will try on the Live ISO. It would be helpful to have the About screen at the beginning of each video, then I can know exactly which build of the Live ISO has the issue. Thanks!

probonopd commented 1 year ago

I can reproduce the issue on hello-0.8.0_0H242-FreeBSD-13.1-amd64.

probonopd commented 1 year ago

This seems to have to do with it:

QCoreApplication::postEvent: Unexpected null receiver
QCoreApplication::postEvent: Unexpected null receiver
QCoreApplication::postEvent: Unexpected null receiver
(...)
QMetaObject::connectSlotsByName: No matching signal for on_actionOpenAndCloseCurrentWindow_triggered()
QMetaObject::connectSlotsByName: No matching signal for on_actionFolderProperties_triggered()
QMetaObject::connectSlotsByName: No matching signal for on_actionDeleteWithoutTrash_triggered()
QIODevice::read (QProcess): device not open

Are we trying to post an event to an object that no longer exists? Was the object deleted before the event was handled? To fix this error, we need to check if the object is still valid before posting the event.

I will need some time to figure out what exactly is going on here. Strange that it doesn't happen on my local developer machine.

Does this also happen when one installs the system to disk, or only on the Live ISO?

Yes.

So my question is: Why does it not crash on my local developer system?

Interesting...

probonopd commented 1 year ago

Actually:

Dragging a document onto the white area of an opened folder window crashes. No matter whether spring-loaded folders are used or not.

So it may be unrelated to spring-loaded folders.

louies0623 commented 1 year ago

It moves the location of the folder on the desktop, and then pulls the file in and it crashes.