Index: /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UISlidingWidget.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UISlidingWidget.cpp	(revision 73597)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UISlidingWidget.cpp	(revision 73598)
@@ -5,5 +5,5 @@
 
 /*
- * Copyright (C) 2017 Oracle Corporation
+ * Copyright (C) 2017-2018 Oracle Corporation
  *
  * This file is part of VirtualBox Open Source Edition (OSE), as
@@ -27,5 +27,5 @@
 UISlidingWidget::UISlidingWidget(QWidget *pParent /* = 0 */)
     : QWidget(pParent)
-    , m_fStateIsFinal(false)
+    , m_enmState(State_Start)
     , m_pAnimation(0)
     , m_pWidget(0)
@@ -73,5 +73,5 @@
     updateAnimation();
     /* Update widget geometry: */
-    m_pWidget->setGeometry(m_fStateIsFinal ? m_finalWidgetGeometry : m_startWidgetGeometry);
+    m_pWidget->setGeometry(m_enmState == State_Final ? m_finalWidgetGeometry : m_startWidgetGeometry);
 }
 
@@ -107,5 +107,5 @@
     updateAnimation();
     /* Update widget geometry: */
-    m_pWidget->setGeometry(m_fStateIsFinal ? m_finalWidgetGeometry : m_startWidgetGeometry);
+    m_pWidget->setGeometry(m_enmState == State_Final ? m_finalWidgetGeometry : m_startWidgetGeometry);
 }
 
@@ -129,5 +129,5 @@
     updateAnimation();
     /* Update widget geometry: */
-    m_pWidget->setGeometry(m_fStateIsFinal ? m_finalWidgetGeometry : m_startWidgetGeometry);
+    m_pWidget->setGeometry(m_enmState == State_Final ? m_finalWidgetGeometry : m_startWidgetGeometry);
 }
 
@@ -156,3 +156,2 @@
     return m_pWidget->geometry();
 }
-
Index: /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UISlidingWidget.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UISlidingWidget.h	(revision 73597)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UISlidingWidget.h	(revision 73598)
@@ -5,5 +5,5 @@
 
 /*
- * Copyright (C) 2017 Oracle Corporation
+ * Copyright (C) 2017-2018 Oracle Corporation
  *
  * This file is part of VirtualBox Open Source Edition (OSE), as
@@ -47,4 +47,13 @@
 public:
 
+    /** Sliding state. */
+    enum State
+    {
+        State_Start,
+        State_GoingForward,
+        State_Final,
+        State_GoingBackward
+    };
+
     /** Constructs sliding widget passing @a pParent to the base-class. */
     UISlidingWidget(QWidget *pParent = 0);
@@ -56,8 +65,11 @@
     void setWidgets(QWidget *pWidget1, QWidget *pWidget2);
 
+    /** Returns sliding state. */
+    State state() const { return m_enmState; }
+
     /** Moves animation forward. */
-    void moveForward() { emit sigForward(); }
+    void moveForward() { m_enmState = State_GoingForward; emit sigForward(); }
     /** Moves animation backward. */
-    void moveBackward() { emit sigBackward(); }
+    void moveBackward() { m_enmState = State_GoingBackward; emit sigBackward(); }
 
 protected:
@@ -72,7 +84,7 @@
 
     /** Marks state as start. */
-    void sltSetStateToStart() { m_fStateIsFinal = false; }
+    void sltSetStateToStart() { m_enmState = State_Start; }
     /** Marks state as final. */
-    void sltSetStateToFinal() { m_fStateIsFinal = true; }
+    void sltSetStateToFinal() { m_enmState = State_Final; }
 
 private:
@@ -94,5 +106,5 @@
 
     /** Holds whether we are in animation final state. */
-    bool         m_fStateIsFinal;
+    State        m_enmState;
     /** Holds the shift left/right animation instance. */
     UIAnimation *m_pAnimation;
