Hello Michael,

I have added the diff file as an attachment. I just executed svn diff in my
rosegarden folder, will this suffice?

Alvar

On Wed, Sep 29, 2010 at 4:40 AM, D. Michael McIntyre <
[email protected]> wrote:

> On Friday, September 24, 2010, Alvar Udras wrote:
>
> > Comments/Ideas?
>
> > *Index: src/gui/widgets/Panned.cpp
>
> Can you attach the patch separately instead of pasting it within the body
> of
> the email?  I copied that out, pasted it into a file, and tried to apply
> the
> patch, but it failed repeatedly on malformed lines.  I edited a couple of
> them
> by hand, but it just keeps going like that, and this is too painful.
> --
> D. Michael McIntyre
>
>
> ------------------------------------------------------------------------------
> Start uncovering the many advantages of virtual appliances
> and start using them to simplify application deployment and
> accelerate your shift to cloud computing.
> http://p.sf.net/sfu/novell-sfdev2dev
> _______________________________________________
> Rosegarden-devel mailing list
> [email protected] - use the link below to unsubscribe
> https://lists.sourceforge.net/lists/listinfo/rosegarden-devel
>
Index: src/gui/widgets/Panned.cpp
===================================================================
--- src/gui/widgets/Panned.cpp  (revision 12061)
+++ src/gui/widgets/Panned.cpp  (working copy)
@@ -147,7 +147,7 @@
     int hMax = horizontalScrollBar()->maximum();
 
     double leftDist = 0.15;
-    double rightDist = 0.20;
+    double rightDist = 0.15;
 
     int w = width();                        // View width in pixels
     QRectF r = mapToScene(0, 0, w, 1).boundingRect();
@@ -174,7 +174,7 @@
 //    std::cerr << "x = " << x << ", left = " << left << ", leftThreshold = " 
<< leftThreshold << ", right = " << right << ", rightThreshold = " << 
rightThreshold << std::endl;
 
     // Is x inside the view?
-    if (x < left || (x > rightThreshold && x < right && page)) {
+    if (x < leftThreshold || (x > rightThreshold && x < right && page)) {
 //        std::cerr << "big scroll (x is off left, or paging)" << std::endl;
         // scroll to have the left of the view, plus threshold, at x
         value = hMin + (((x - ws * leftDist) - x1) * (hMax - hMin)) / (length 
- ws);
Index: src/gui/editors/notation/NotationWidget.cpp
===================================================================
--- src/gui/editors/notation/NotationWidget.cpp (revision 12061)
+++ src/gui/editors/notation/NotationWidget.cpp (working copy)
@@ -866,7 +866,7 @@
         m_hpanner->slotShowPositionPointer(QPointF(sceneX, sceneY), height);
     }
 
-    if (getPlayTracking() || !fromDocument) {
+    if ((getPlayTracking() && 
(m_document->getSequenceManager()->getTransportStatus() != STOPPED )) || 
!fromDocument) {
         if (moveView) m_view->slotEnsurePositionPointerInView(fromDocument);
     }
 }
Index: src/gui/rulers/LoopRuler.h
===================================================================
--- src/gui/rulers/LoopRuler.h  (revision 12061)
+++ src/gui/rulers/LoopRuler.h  (working copy)
@@ -123,6 +123,9 @@
     int  m_currentXOffset;
     int  m_width;
     bool m_activeMousePress;
+    // remeber the mouse x pos in mousePressEvent and in mouseMoveEvent so that
+    // we can emit it in mouseReleaseEvent to update the pointer position in 
other views
+    double m_lastMouseXPos;
 
     RosegardenDocument *m_doc;
     bool m_mainWindow;
Index: src/gui/rulers/LoopRuler.cpp
===================================================================
--- src/gui/rulers/LoopRuler.cpp        (revision 12061)
+++ src/gui/rulers/LoopRuler.cpp        (working copy)
@@ -301,6 +301,8 @@
             // button is pressed, before we begin to drag it.
             emit dragPointerToPosition(m_grid->snapX(x));
 
+            m_lastMouseXPos = x;
+
         }
 
         m_activeMousePress = true;
@@ -335,8 +337,9 @@
             // other views (typically, in the seg. canvas while the user has 
dragged the pointer
             // in an edit view)
             //
-            double x = mouseEventToSceneX(mE);
-            emit setPointerPosition(m_grid->snapX(x));
+
+            emit setPointerPosition(m_grid->snapX(m_lastMouseXPos));
+
         }
         emit stopMouseMove();
         m_activeMousePress = false;
@@ -371,6 +374,9 @@
         }
     } else {
         emit dragPointerToPosition(m_grid->snapX(x));
+
+        m_lastMouseXPos = x;
+
     }
 
     emit mouseMove();
------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
Rosegarden-devel mailing list
[email protected] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to