GSoC 2015 project

Petar Bešlić2 Petar.Beslic2 at fer.hr
Sun Mar 22 19:17:58 UTC 2015


Hello again,

and, sure, no problem in elaborating it a bit more. I wrote this short summary to see if it would even be considered as good idea and will the others accept it. So...

[Introduction]
Switching slides when you are having a presentation at the conference is possible by pressing keys on your laptop (which requires you to be near the laptop) or using remote controllers (which you have to carry with you). I think it would be nice to be able to switch slides in Calligra Stage (or LibreOffice Impress) from your smartphone running KDE Connect (over Bluetooth or WiFi). And even show slide's thumbnail or notes on your smartphone. Everyone carries their phones with them all the time and everyone is running KDE with KDE Connect (or at least they should :). This should be possible now that we have easy way of connecting Android smartphones and Linux running Plasma DE.

[Project goals]
I would like this to be another plugin for KDE Connect. Even this is nothing crucial I think people would find it useful and convenient. So, the end product, how I see it, would look like this:
 - KDE Connect can 'detect' presentation on the PC
 - KDE Connect can shows slides or notes on the screen
 - User can choose what to show from the above
 - Slides can be switched by swiping gestures or using volume buttons
 - Editing notes on the screen [Future development]
 - Using phone's screen and fingers as pencil [Future development]

[Implementation]
This should work whether the phone is connected via Bluetooth or WiFi. Android side of things should not be too difficult to implement. From my point of view, the hardest thing to do would be to export slide's thumbnail and notes to the outer source (in this case, KDE Connect). I do not know is there are any kind of API that allows that right now (either in Calligra Stage or LibreOffice Impress), and if there isn't, I should write one. Now, that also requires cooperation with Calligra developers and their help, but I'm sure they would be kind enough to help with this and accept the patches. If there are APIs, then this part is considerably easier. All the interface design and presentation on the phone is done by me. User should be able to choose in options how he wants to switch slides (using volume buttons, using swiping gestures, both, or show on-screen buttons), what to show on the screen (slide's thumbnail, notes, both). Interface should have button for starting presentation in fullscreen (F5), button for showing notes, button for options. Double tapping the screen would show thumbnails on phone's screen in fullscreen. In the future I would also like to see to be able to edit notes from the phone (for example when preparing presentation), and use touchscreen on the phone as pencils for the presentation. I would also follow Google's HIG and use material design, so the plugin wouldn't look inconsistent. I haven't worked out all of the details yet, this is just a rough sketch in my head.
About the comment for presentation pointer; I'm not sure how would that work. Laser presentation pointers are 'laser' accurate and if you are standing far away from the presentation screen, even small movements of hand result in big movements of the pointer. I do not think phone sensors would be that precise (even more on lower end phones). And how to properly calibrate sensors? It's not the same calibration if you stretch your arm in full or you cross it in elbow. I just can't see this been possible.

[Timeline]
I cannot say much about the timeline, but I do believe this could be possible to do within the three months of GSoC. The hardest part from my point of view would be writing APIs for Calligra Stage. I do not know much time it would take me, but I think it would take one third of the time for APIs, and two thirds for Android side of things.

[About me]
My name is Petar Bešlić, I'm an undergrad student of CS at Faculty of Electrical Engineering and Computing at  University of Zagreb in Zagreb, Croatia. I cannot brag, I'm not some great programmer, I didn't work on some big projects before. I do know Java and C, but not so much of C++ or Qt. But I am willing to learn and I want to learn. I believe that I can pick up Android development of KDE Connect pretty fast, before GSoC starts, if this gets approval, and I will need some help about Calligra's side of things. I'm going with this because I really want learn something new, work with great people, create something others will use, and be productive. Also, I do think KDE Connect is something Linux as a desktop platform needs pretty bad, and I highly appreciate it, use it, and want to improve it.

If you do like the idea, but think I'm not the best person for this, and this ends up in to-do list, I feel like I still contributed, at least with the idea :)

Kind regards,
Petar

________________________________________
From: Albert Vaca [albertvaka at gmail.com]
Sent: Sunday, March 22, 2015 6:08 AM
To: Petar Bešlić2
Cc: kdeconnect at kde.org
Subject: Re: GSoC 2015 project

If you want to sumbit a proposal, you will have to elaborate it more than this short summary. Have a look at this blogpost:

http://teom.org/blog/kde/how-to-write-a-kick-ass-proposal-for-google-summer-of-code/

By the way, this comment seems related to what you want to do (and can be an interesting addition):

https://albertvaka.wordpress.com/2014/10/23/kde-connect-feature-brainstorming/#comment-1947


On Thu, Mar 19, 2015 at 5:48 AM, Petar Bešlić2 <Petar.Beslic2 at fer.hr<mailto:Petar.Beslic2 at fer.hr>> wrote:
Hello everyone,

As many other students, I would also like to work on the KDE Connect as my GSoC 2015 project.

I would like to implement the ability to manage Calligra Stage presentation from your phone using KDE Connect (and later maybe LibreOffice). My vision of this is: it should be possible to view the whole slide on your phone's screen, switch slides with swiping gestures or using volume buttons, showing slide's thumbnail and notes, or just notes, typing (updating) notes from the phone, and maybe something more similar to this. I don't think this is a crucial feature, but it's convenient. Now, all of this is maybe a bit too small for a whole project (I would do it right now if I didn't have schoolwork), so I would also like to hear other ideas or implement other features that are planned, help fixing bugs, and help in any way.

I really like this plugin, and I would like to see it in KDE Connect, even if I don't make it into GSoC, I will try to do it.

Kind regards,

Petar
_______________________________________________
KDEConnect mailing list
KDEConnect at kde.org<mailto:KDEConnect at kde.org>
https://mail.kde.org/mailman/listinfo/kdeconnect


More information about the KDEConnect mailing list