Semester exams are over at my university and now I have 6 weeks to work on my Google Summer of Code project full-time.
I've just finished a set of updates to Swift which allow file transfer via the contact context menu.
The chat log UI in Swift is a WebKit control, with the content being HTML. The new file transfer functionality now adds a UI in the chat log showing the file transfer. This includes an inline progress bar displaying the transfer's progress.
The file transfer is based on the Jingle File Transfer spec, and interoperates with other clients implementing the same spec. I've successfully tested with Pidgin's and Gajim's development branches implementing the same. We should soon begin to see reliable cross-client file transfer for Jabber soon.
What’s next on the list:
- Finishing up the send-a-file use case (cancelation of transfer and error handling)
- Writing the receive-a-file code in the UI
- Finally implementing SOCKS5 transport-method to have real peer-to-peer transfers