New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes issue #146 #148

Merged
merged 1 commit into from Sep 28, 2017

Conversation

Projects
None yet
2 participants
@albertosottile
Member

albertosottile commented Sep 15, 2017

On macOS, fixes the "Add to the bottom of shared playlist" QFIleDialog with the QtGui.QFileDialog.DontUseNativeDialog workaround used before. Also fixes drag and drop of media files on both the "List of who is playing what" and "Shared playlist" boxes.

Drawbacks: requires PyObjC. If merged, the installation instructions should be updated to include pip install pyobjc.

@Et0h

This comment has been minimized.

Show comment
Hide comment
@Et0h

Et0h Sep 15, 2017

Contributor

http://www.birving.com/blog/2015/09/29/drag-and-drop-files-into-gui-using/ indicates one should install pyobjc-core before installing which may relate to the issue at https://stackoverflow.com/questions/36813269/issue-with-installing-pyobjc-for-python but I'm not sure. As far as I can tell, if we're using PySide 1 we need to use NSURL to support file dragging and that means we need PyObjC. Are there any major drawbacks to requiring it other than requirement bloat?

Contributor

Et0h commented Sep 15, 2017

http://www.birving.com/blog/2015/09/29/drag-and-drop-files-into-gui-using/ indicates one should install pyobjc-core before installing which may relate to the issue at https://stackoverflow.com/questions/36813269/issue-with-installing-pyobjc-for-python but I'm not sure. As far as I can tell, if we're using PySide 1 we need to use NSURL to support file dragging and that means we need PyObjC. Are there any major drawbacks to requiring it other than requirement bloat?

@albertosottile

This comment has been minimized.

Show comment
Hide comment
@albertosottile

albertosottile Sep 15, 2017

Member

That birving.com page is what I used as reference to write this workaround. You are right, we need NSURL and I did not find an alternative that does not rely on PyObjC. I do not see any particular problem in requiring it in the instructions, my concern was about the size of PyObjC. Including it in a .app bundle will increase the size of the packaged file.

Member

albertosottile commented Sep 15, 2017

That birving.com page is what I used as reference to write this workaround. You are right, we need NSURL and I did not find an alternative that does not rely on PyObjC. I do not see any particular problem in requiring it in the instructions, my concern was about the size of PyObjC. Including it in a .app bundle will increase the size of the packaged file.

@albertosottile albertosottile changed the title from Fixes issue #146 to Fixes issue #146 Sep 17, 2017

@albertosottile

This comment has been minimized.

Show comment
Hide comment
@albertosottile

albertosottile Sep 17, 2017

Member

Just an FYI, the current master of Syncplay, when packaged in an .app, is about 39.9 MB. The inclusion of the Foundation module from pyobjc increased it to about 41.4 MB. So I guess that was too much ado about nothing.

Also, to further complicate things: [EDITED] it appears that the drag and drop problem arises only from a certain version of macOS (I guess 10.9 but I might be wrong) and affects all the subsequent releases. At least on these versions, It does not matter if the software is executed from the python script or packed in a .app.

Member

albertosottile commented Sep 17, 2017

Just an FYI, the current master of Syncplay, when packaged in an .app, is about 39.9 MB. The inclusion of the Foundation module from pyobjc increased it to about 41.4 MB. So I guess that was too much ado about nothing.

Also, to further complicate things: [EDITED] it appears that the drag and drop problem arises only from a certain version of macOS (I guess 10.9 but I might be wrong) and affects all the subsequent releases. At least on these versions, It does not matter if the software is executed from the python script or packed in a .app.

@Et0h Et0h merged commit 0f2f8fa into Syncplay:master Sep 28, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment