int pos = frame->scrollPosition().y();
qDebug() << QString("At %1 (%2%, height %3)").
arg(pos).arg((qreal)pos / (qreal)height * 100).arg(height);
int pos = frame->scrollPosition().y();
qDebug() << QString("At %1 (%2%, height %3)").
arg(pos).arg((qreal)pos / (qreal)height * 100).arg(height);
int bookmarkPos = (int)((qreal)height * (qreal)b.pos);
painter.drawPixmap(2, bookmarkPos - scrollPos.y(), bookmarkPixmap);
}
int bookmarkPos = (int)((qreal)height * (qreal)b.pos);
painter.drawPixmap(2, bookmarkPos - scrollPos.y(), bookmarkPixmap);
}
- QPen pen(Qt::gray);
- pen.setStyle(Qt::DotLine);
- pen.setWidth(3);
- painter.setPen(pen);
- if (contentIndex > 0) {
- painter.drawLine(0, -scrollPos.y(), width(), -scrollPos.y());
- }
- if (contentIndex < (mBook->parts.size() - 1)) {
- int h = contentsHeight - scrollPos.y() - 1;
- painter.drawLine(0, h, width(), h);
+ if (mBook) {
+ QPen pen(Qt::gray);
+ pen.setStyle(Qt::DotLine);
+ pen.setWidth(3);
+ painter.setPen(pen);
+ if (contentIndex > 0) {
+ painter.drawLine(0, -scrollPos.y(), width(), -scrollPos.y());
+ }
+ if (contentIndex < (mBook->parts.size() - 1)) {
+ int h = contentsHeight - scrollPos.y() - 1;
+ painter.drawLine(0, h, width(), h);
+ }
QWebFrame *frame = page()->mainFrame();
if (frame->scrollBarGeometry(Qt::Vertical).contains(e->pos())) {
e->accept();
return;
}
QWebFrame *frame = page()->mainFrame();
if (frame->scrollBarGeometry(Qt::Vertical).contains(e->pos())) {
e->accept();
return;
}
// Work around Qt bug that sometimes selects web view contents during swipe
switch (e->type()) {
case QEvent::MouseButtonPress:
// Work around Qt bug that sometimes selects web view contents during swipe
switch (e->type()) {
case QEvent::MouseButtonPress:
if (mBook) {
int contentsHeight = page()->mainFrame()->contentsSize().height();
qreal pos = (qreal)(page()->mainFrame()->scrollPosition().y()) /
if (mBook) {
int contentsHeight = page()->mainFrame()->contentsSize().height();
qreal pos = (qreal)(page()->mainFrame()->scrollPosition().y()) /