GSoC/2016/StatusReports/BhavishaDhruve: Difference between revisions

From KDE Community Wiki
< GSoC‎ | 2016‎ | StatusReports
(Report of GSoC 2016)
 
(Report of GSoC 2016)
Line 1: Line 1:


== REPORT ==
== '''''Devising the Plasma Mobile Emulator''''' ==
 
'''''PROJECT: DEVISING THE PLASMA MOBILE EMULATOR'''''


The aim of my proposal was to develop emulator for plasma mobiles which would be the solution for developing, testing and accessing plasma phones without having real phone.
The aim of my proposal was to develop emulator for plasma mobiles which would be the solution for developing, testing and accessing plasma phones without having real phone.


For making this proposal a reality, the work-flow that I and my mentor Bhushan Shah had decided were:
For making this proposal a reality, the work-flow that I and my mentor Bhushan Shah had decided were:
Step 1 : Focusing on the working of Docker Container and then creating Docker Container with kwin_wayland and plasma-mobile essentials.
Step 1 : Focusing on the working of Docker Container and then creating Docker Container with kwin_wayland and plasma-mobile essentials.
Step 2 : Implementing support for different DPI in the nested environment of kwin_wayland.
Step 2 : Implementing support for different DPI in the nested environment of kwin_wayland.
Step 3 : Adding support for touch events into FakeInput interface.
Step 3 : Adding support for touch events into FakeInput interface.
Step 4 : Integration of translating touch events into click events.
Step 4 : Integration of translating touch events into click events.
Step 5 : Screenshot and screen recording, but this was to be done only if time would permit.
Step 5 : Screenshot and screen recording, but this was to be done only if time would permit.
Step 6 : Polishing of codebase and bug-fix.
Step 6 : Polishing of codebase and bug-fix.
Step 7 : Documentation on usage of emulator.
Step 7 : Documentation on usage of emulator.


However, in the course of project the actual things I have worked on are:
However, in the course of project the actual things I have worked on are:
- Created Docker container with kwin_wayland running inside.
- Created Docker container with kwin_wayland running inside.
         https://quickgit.kde.org/?p=scratch%2Fbdhruve%2Fpm-emulator.git
         https://quickgit.kde.org/?p=scratch%2Fbdhruve%2Fpm-emulator.git
- Added support for events in the KWayland fakeinput_interface, autotested these added functionalities as well, and  integrated it in kwin_wayland.
- Added support for events in the KWayland fakeinput_interface, autotested these added functionalities as well, and  integrated it in kwin_wayland.
         https://phabricator.kde.org/D1672 -> Add support for fakeinput interface and protocol.
         https://phabricator.kde.org/D1672 (Add support for fakeinput interface and protocol.)
         https://phabricator.kde.org/D1758 -> Integrated FakeInput touch events into input redirection.
         https://phabricator.kde.org/D1758 (Integrated FakeInput touch events into input redirection.)
 
- In Plasma Mobile emulator, KWin needed to be child of the emulator window, to achieve that, created a declarative plugin which created the anonymous wayland server which in turn   
- In Plasma Mobile emulator, KWin needed to be child of the emulator window, to achieve that, created a declarative plugin which created the anonymous wayland server which in turn   
   got the nested kwin_wayland started.
   got the nested kwin_wayland started.
         https://phabricator.kde.org/D1989
         https://phabricator.kde.org/D1989
- Rendered the kwin_wayland on QML, for that I triggered repaint of the QQuickItem when damaged signal of SurfaceInterface was triggered.
- Rendered the kwin_wayland on QML, for that I triggered repaint of the QQuickItem when damaged signal of SurfaceInterface was triggered.
         https://phabricator.kde.org/D1989
         https://phabricator.kde.org/D1989
- Allowed input in QQuickitem using QQuick input events.
- Allowed input in QQuickitem using QQuick input events.
         https://phabricator.kde.org/D1989
         https://phabricator.kde.org/D1989


The work which is still pending are:
The work which is still pending are:


- Different Resolution.
- Different Resolution.
- Screenshots and Screen Recording. (Future Development)
- Screenshots and Screen Recording. (Future Development)
- Documentation on usage of emualtor.
 
- Documentation on usage of Emulator.

Revision as of 07:18, 16 August 2016

Devising the Plasma Mobile Emulator

The aim of my proposal was to develop emulator for plasma mobiles which would be the solution for developing, testing and accessing plasma phones without having real phone.

For making this proposal a reality, the work-flow that I and my mentor Bhushan Shah had decided were:

Step 1 : Focusing on the working of Docker Container and then creating Docker Container with kwin_wayland and plasma-mobile essentials.

Step 2 : Implementing support for different DPI in the nested environment of kwin_wayland.

Step 3 : Adding support for touch events into FakeInput interface.

Step 4 : Integration of translating touch events into click events.

Step 5 : Screenshot and screen recording, but this was to be done only if time would permit.

Step 6 : Polishing of codebase and bug-fix.

Step 7 : Documentation on usage of emulator.

However, in the course of project the actual things I have worked on are:

- Created Docker container with kwin_wayland running inside.

       https://quickgit.kde.org/?p=scratch%2Fbdhruve%2Fpm-emulator.git

- Added support for events in the KWayland fakeinput_interface, autotested these added functionalities as well, and integrated it in kwin_wayland.

       https://phabricator.kde.org/D1672  (Add support for fakeinput interface and protocol.)
       https://phabricator.kde.org/D1758  (Integrated FakeInput touch events into input redirection.)

- In Plasma Mobile emulator, KWin needed to be child of the emulator window, to achieve that, created a declarative plugin which created the anonymous wayland server which in turn

 got the nested kwin_wayland started.
       https://phabricator.kde.org/D1989

- Rendered the kwin_wayland on QML, for that I triggered repaint of the QQuickItem when damaged signal of SurfaceInterface was triggered.

       https://phabricator.kde.org/D1989

- Allowed input in QQuickitem using QQuick input events.

       https://phabricator.kde.org/D1989

The work which is still pending are:


- Different Resolution.

- Screenshots and Screen Recording. (Future Development)

- Documentation on usage of Emulator.