Review Request 128858: [frameworks] Hide cursor when tablet pen leaves proximity of the screen

Oliver Sander oliver.sander at tu-dresden.de
Wed Sep 7 20:18:31 UTC 2016


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/128858/
-----------------------------------------------------------

Review request for Okular.


Repository: okular


Description
-------

I am trying to fix the following papercut:  I regularly write on pdf files in presentation mode, using the pen that comes with my Lenovo ThinkPad Yoga.  When I approach the screen with the pen, the cursor appears, and it follows the pen tip during writing.  When I lift off the pen, the cursor stays on, and auto-hides only a few seconds later (because of Okular::Settings::EnumSlidesCursor::HiddenDelay).  As a consequence, the cursor frequently hides the last bits of what I have just written.  This is a nuisance, because I do this in front of an audience, and a lot of it is math (where every detail matters).

Ideally, the cursor would auto-hide when I lift the pen off the screen.  Luckily, Qt has an event for this: QEvent::TabletLeaveProximity.  Unluckily, the documentation says (http://doc.qt.io/qt-5/qtabletevent.html):

"TabletEnterProximity and TabletLeaveProximity events [...] are only sent to QApplication"

Therefore, this patch introduces a new class TabletApplication, which inherits from QApplication, and is used in main.cpp instead of QApplication.  The proximity events are really caught, and each time a short note is printed on the console.

Unfortunately, at this point I am stuck and need some help.  Apparently, I cannot control the cursor from a QApplication.  How do I get the information that a TabletProximity has been caught to the presentation widget? Maybe the answer is trivial, but I have very little Qt programming experience.  Thanks for your help!


Diffs
-----

  shell/CMakeLists.txt 84cbf2d 
  shell/main.cpp 856d2b0 
  shell/tabletapplication.h PRE-CREATION 
  shell/tabletapplication.cpp PRE-CREATION 

Diff: https://git.reviewboard.kde.org/r/128858/diff/


Testing
-------


Thanks,

Oliver Sander

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/okular-devel/attachments/20160907/1f735a5e/attachment.html>


More information about the Okular-devel mailing list