> On Sept. 6, 2017, 8:24 p.m., Albert Astals Cid wrote:
> > ui/presentationwidget.cpp, line 1305
> > <https://git.reviewboard.kde.org/r/128858/diff/4/?file=481745#file481745line1305>
> >
> > Why this change?
Previously, the code there was
slotChangeDrawingToolEngine( QDomElement() );
slotChangeDrawingToolEngine( m_currentDrawingToolElement );
And here is the content of slotChangeDrawingToolEngine:
if ( element.isNull() )
{
delete m_drawingEngine;
m_drawingEngine = 0;
m_drawingRect = QRect();
setCursor( Qt::ArrowCursor );
}
else
{
m_drawingEngine = new SmoothPathEngine( element );
setCursor( QCursor( QPixmap( QStringLiteral("pencil") ),
Qt::ArrowCursor ) );
m_currentDrawingToolElement = element;
}
You can see that it sets the cursor shape, but we don't want that: When drawing
with the stylus we want the cursor to remain a CrossCursor, not change back to
ArrowCursor. But the cursor change is really only a by-product of the calls to
this method. Therefore I simply inlined the calls to
slotChangeDrawingToolEngine, and omitted the cursor change.
- Oliver
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/128858/#review103694
-----------------------------------------------------------
On Oct. 5, 2016, 4:20 p.m., Oliver Sander wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/128858/
> -----------------------------------------------------------
>
> (Updated Oct. 5, 2016, 4:20 p.m.)
>
>
> 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
> -----
>
> ui/presentationwidget.h 69574d2
> ui/presentationwidget.cpp c16d616
>
> Diff: https://git.reviewboard.kde.org/r/128858/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Oliver Sander
>
>