Only anim if not first dive when openning subsurface with a divelog.

The animation appeared when the user started subsurface with a default
file, wich was a little annoying since it didn't had a 'from' position
to go and it was also increasing it's size on some window managers
that do subtle windows animations when a program starts. This patch
treats the first dive opened when the program loads with a divelog pa
rameter differently as the following ones storing the velocity value
on a temporary, and reassigning it later.

Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Tomaz Canabrava 2014-03-11 18:54:28 -03:00 committed by Dirk Hohndel
parent b758210c19
commit 9cc942376e
4 changed files with 33 additions and 2 deletions

View file

@ -316,12 +316,23 @@ void ProfileWidget2::setupSceneAndFlags()
// Currently just one dive, but the plan is to enable All of the selected dives.
void ProfileWidget2::plotDives(QList<dive *> dives)
{
static bool firstCall = true;
// I Know that it's a list, but currently we are
// using just the first.
struct dive *d = dives.first();
if (!d)
return;
int animSpeedBackup = -1;
if(firstCall && MainWindow::instance()->filesFromCommandLine()){
QSettings s;
s.beginGroup("Animations");
animSpeedBackup = s.value("animation_speed",500).toInt();
s.setValue("animation_speed",0);
firstCall = false;
}
// restore default zoom level and tooltip position
if (zoomLevel) {
const qreal defScale = 1.0 / qPow(zoomFactor, (qreal)zoomLevel);
@ -431,6 +442,11 @@ void ProfileWidget2::plotDives(QList<dive *> dives)
// qDebug() << event->getEvent()->name << "@" << event->getEvent()->time.seconds;
}
diveComputerText->setText(currentdc->model);
if (MainWindow::instance()->filesFromCommandLine() && animSpeedBackup != -1){
QSettings s;
s.beginGroup("Animations");
s.setValue("animation_speed",animSpeedBackup);
}
}
void ProfileWidget2::settingsChanged()