GSoC/GCI Archive
Google Code-in 2014 KDE

Porting Accessibility Config Module away from Deprecated Libraries

completed by: Toby Chen

mentors: David Edmundson

Port Accessibility Config module away from kdelibs4support

When we created frameworks5 we changed some things from kdelibs4. Some classes were dropped and moved to Qt, some where renamed and there were some other changes.
In order to make our life easier we created a special library that still has all the deprecated parts of kdelibs4 but compiling on Qt5. Using this support library isn't ideal, and we want to move away from it.

This task it to port the configuration module access (which can be found as Accessibility in systemsettings) away from this support library.

Prerequisites:
- Student should know how to compile apps from source without help
- C++/Qt knowledge

Difficulty:
- Some porting is ridiculously easy, some may be very difficult. It's really hard to know until you've done it.

Steps to complete:
- complie the plasma-desktop package as-is without changes and confirm everything builds
- start fixing warnings in this module about deprecated classes
- remove any mention of KDELibs4Support from kcms/access/CMakeLists.txt
- make sure it still compiles
- test
- submit code for review at http://git.reviewboard.kde.org

Compile instructions:
make sure you have plasma5
git clone git://anongit.kde.org/plasma-desktop
compile as normal



When working out how to port a deprecated class:

- First read here https://community.kde.org/Frameworks/Porting_Notes
- Make sure all frameworks used are listed under target_link_libraries
- Look in the documentation of the deprecated API
- Spent 5-10 minutes on Google
- Finally, ask in #plasma on freenode on IRC

An example KCM not using kdelibs4support can be found in plasma-dekstop/kcms/baloo