*/
#include <algorithm>
+#include <cmath>
#include <extdef.h>
float TimeMarker::get_x() const
{
- return ((time_ - view_.offset()) / view_.scale()).convert_to<float>();
+ // Use roundf() from cmath, std::roundf() causes Android issues (see #945).
+ return roundf(((time_ - view_.offset()) / view_.scale()).convert_to<float>()) + 0.5f;
}
QPoint TimeMarker::point(const QRect &rect) const
if (!enabled())
return;
- const qreal x = ((time_ - view_.offset()) / view_.scale()).convert_to<qreal>();
+ const qreal x = get_x();
const QRectF r(label_rect(rect));
const QPointF points[] = {
p.drawText(r, Qt::AlignCenter | Qt::AlignVCenter, get_text());
}
-void TimeMarker::paint_fore(QPainter &p, const ViewItemPaintParams &pp)
+void TimeMarker::paint_fore(QPainter &p, ViewItemPaintParams &pp)
{
if (!enabled())
return;