Web lists-archives.com

Re: GSoC Project Proposal: Make High-DPI awesome

I'm so sorry that sendgrid changed my plain-text version of the mail,
here is the original:

Hello fellow developers. I’m a student at the Technical University of
Vienna in Austria and would love to participate in the upcoming Google
Summer of Code. I have already talked about this proposal on IRC, but
now I want to present the full document (continuously updated version
at https://docs.google.com/document/d/1-SmazZh7Ut3dKppI-Q02SnezoNOL_tz0uVM_GGEDWEw/edit?usp=sharing):


Project title: Make High-DPI awesome


As seen on Blog Posts on Planet KDE[1] support for High-DPI monitors
has come a long way since Plasma 5.0. And thanks to the work by many
dedicated people[2] the situation in Plasma is now almost ideal. But
unfortunately, this is not the case for all KDE applications. Support
for HiDPI seems to be more of a hit-and-miss for some of them, many
crucial for day-to-day workflows (like Okular and Gwenview). Competing
desktop environments have nowadays a nearly perfect HiDPI support, so
I think it is time to face the remaining problems once and for all.

Therefore I suggest the following approach:
* My Google Summer of Code project will find HiDPI rendering issues in
  KDE applications and fix them in a coordinated approach.

Proposal Timeline

Before May 30 (Before official coding begin)
* I will be active on IRC and the mailing lists and discuss with my
  mentor the planned steps in detail
* Setting up KDE development environment for framework+workspace+apps
  using kdesrc-build (already done)
* Submitting first patch, fixing gwenview (WIP)
* Building list of HiDPI rendering problems from following sources:
- Looking at bugs.kde.org (examples: #362856 okular, #373232 konsole,
  #373178 gwenview)
- Writing about personal experience (and open bug reports decumeting
  the problems)
- Writing a Blog Post aggregated on Planet KDE about upcoming plan and
  ask users to provide more examples
* Publishing this list on a wiki (e.g. Techbase or the Community Wiki)
  and prioritizing issues

May 30 - June 30 (Phase 1)
* Fixing HiDPI rendering bugs in applications.
  This will not only require collaboration with my mentor, but also
  with the maintainer(s) of the application.
  The scope for this should be strictly inside the KDE ecosystem. If
  there are any bugs upstream - for example
  in the Qt Framework - I will open bug reports, but not try to fix them.
  Besides setting environment variables like QT_SCREEN_SCALE_FACTORS,
  I also have a 4K monitor I can test my patches with.

June 30 - July 28 (Phase 2)
* Further work on found issues.

July 28 - August 29 (Final phase)
* Further work on found issues.
* Polishing user interface for HiDPI settings. Extend it, so it allows
  different scale factors for multiple screens.
* Set-up sane defaults for new installations regarding HiDPI settings
  so that new KDE users have a good experience on the first boot
* If possible, try to also force other applications to use configured
  settings when starting a KDE workspace (Firefox? Google Chrome? GTK?


After my project is finished, users will have a more polished user
experience with HiDPI screens out of the box. Base KDE apps will no
longer show any rendering problems when drawn on a 4K screen.

About me

I’m a 24 year old computer science student at the Technical University
of Vienna. Besides previous tiny patches to KDE-related software (e.g.
[3]) I gained experience with Qt while developing software for smart
interactive displays (like the ones you see in museums) written in
C++/Qt and QML. Further programming experience of mine is in Python
and Java.
My study term lasts until end of June, so it will overlap partly with
the GSoC. I took fewer courses this semester, so there won’t be any
time problems with coding. I also work part-time at an IT operating
company which is specialized in Big Data and Cloud Services, but
cleared time for the intended 30hrs/week I will spend on working for
the project. I have no plan to write a proposal for any other

[1] http://www.lorenzobettini.it/2016/07/hidpi-in-kde-plasma/
[2] http://blog.davidedmundson.co.uk/blog/high_dpi_again
[3] https://git.reviewboard.kde.org/r/101065/


I have set up a complete KDE development environment using
kdesrc-build and am currently in the process of writing a patch for
#373178 - Blurry scaling on HiDPI for gwenview.

I know this project covers many different parts of KDE - frameworks,
applications and possibly the workspace too. Is there somebody who
thinks this is a good idea and is willing to mentor it?

I’m looking also forward to any feedback you have about this proposal.
If you think that there is not a high chance that this project will
get selected, please tell me and I will choose another one from the
GSoC 2017 Ideas List.

Lukas Hetzenecker