Skip to content
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

spice: show progress of drag & drop file transfers #993

Merged
merged 1 commit into from
Sep 13, 2016
Merged

spice: show progress of drag & drop file transfers #993

merged 1 commit into from
Sep 13, 2016

Conversation

larchunix
Copy link
Contributor

Please review and test:

  • connect to a guest having spice-vdagent running,
  • drag and drop files from the host to the guest,
  • a dialog should raise with a progress bar (if files are too small, the dialog is closed promptly),
  • after the transfer is completed, files can be find on the guest in $XDG_DOWNLOAD_DIR ("$HOME/Downloads")

@antenore
Copy link
Member

I'll test this ASAP.
I think I'll love this patch, thanks!

@antenore
Copy link
Member

Testing, I'll report back tomorrow.

@antenore antenore added this to the v1.2.1 milestone Sep 12, 2016
@antenore
Copy link
Member

So far....

Good job! :-) Thanks so much!

For me it can be merged.

Can you evaluate the following points? If it's easily possible to implemented one or all of them, we wait to merge, otherwise we can think about it afterwards.

The issues I've found.

  1. I cannot copy some file type.
    i.e. I cannot copy .core files, it's not something I need to copy... It's just something I've noted
  2. I cannot get the progress bar, but I think it's because it's too fast.
  3. If the file is not transferred there is no notifications.
  4. It'd be nice to have notifications at the end of each transfers.
    Are you able to put in place something like what I've done with the screenshots?

Here an example https://github.com/FreeRDP/Remmina/blob/next/remmina/src/remmina_connection_window.c#L1673

An other generic issue, it'd be nice to add a quick tip somewhere explaining that spice-vdagend must be running on the guest server (with the right user). Does spice provide I way to test is the vdaegnt is running?

Sorry for all the questions, but as this feature is quite interesting, I'm curious about everything.

@antenore
Copy link
Member

In the code you check that the spice-gtk version is 0.31.0 or newer, in my case I've spice-gtk-0.30_1 , so it shouldn't work, but it does!?!?! It's weird, it shouldn't.

@larchunix
Copy link
Contributor Author

@antenore Thanks for testing. I'll run some tests to answer your points and come back to you asap.

In the code you check that the spice-gtk version is 0.31.0 or newer, in my case I've spice-gtk-0.30_1 , so it shouldn't work, but it does!?!?! It's weird, it shouldn't.

Indeed, it's really weird. Version check is done at compile time. Maybe remmina was compiled on a machine having a more recent version ? (although it should segfault at runtime in this case)

@antenore
Copy link
Member

In the code you check that the spice-gtk version is 0.31.0 or newer, in my case I've spice-gtk-0.30_1 , so it shouldn't work, but it does!?!?! It's weird, it shouldn't.

Indeed, it's really weird. Version check is done at compile time. Maybe remmina was compiled on a machine having a more recent version ? (although it should segfault at runtime in this case)

On the same machine, I'll check the include files, it could be also that the package version is not inline.

@larchunix
Copy link
Contributor Author

@antenore, here are my answers:

  1. I cannot copy some file type.
    i.e. I cannot copy .core files, it's not something I need to copy... It's just something I've noted

I can't reproduce. I tried to transfer a bunch of files (including coredump) and it worked fine for me.

  1. I cannot get the progress bar, but I think it's because it's too fast.

Did you try to drag and drop large files to see if the progress bar is displayed smoothly ?

  1. If the file is not transferred there is no notifications.
  2. It'd be nice to have notifications at the end of each transfers.
    Are you able to put in place something like what I've done with the screenshots?

This can be easily added in the function remmina_plugin_spice_file_transfer_finished_cb() which is called at the end of each transfer. In my first attempts to implement this, I felt the notifications too annoying. I propose to merge this PR first and I will open another one so that we can experiment different designs more easily.

An other generic issue, it'd be nice to add a quick tip somewhere explaining that spice-vdagend must be running on the guest server (with the right user). Does spice provide I way to test is the vdagent is running?

SpiceMainChannel object provides this information through the agent-connected property. If you have some idea about how to display this information in an elegant way I will gladly try to implement it.

@antenore
Copy link
Member

Thanks @larchunix
I think we can merge it, I'll answer more accurately later.

@antenore antenore merged commit 42f5a87 into FreeRDP:next Sep 13, 2016
@larchunix larchunix deleted the spice-file-xfer-progress branch September 15, 2016 19:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants