Index: Core/Components/src/Core.Components.OxyPlot/DynamicPlotController.cs =================================================================== diff -u -rbe895944b132f57968074d720aac14be11c20475 -r8d6da66e0a6788518b70d0201f8ca861c5cc8519 --- Core/Components/src/Core.Components.OxyPlot/DynamicPlotController.cs (.../DynamicPlotController.cs) (revision be895944b132f57968074d720aac14be11c20475) +++ Core/Components/src/Core.Components.OxyPlot/DynamicPlotController.cs (.../DynamicPlotController.cs) (revision 8d6da66e0a6788518b70d0201f8ca861c5cc8519) @@ -80,19 +80,10 @@ IsPanningEnabled = false; IsRectangleZoomingEnabled = false; - EnableMiddleMouseButtonPanning(); EnableScrollWheelZooming(); } /// - /// Enables panning using the middle mouse button. - /// - private void EnableMiddleMouseButtonPanning() - { - this.BindMouseDown(OxyMouseButton.Middle, PlotCommands.PanAt); - } - - /// /// Enables zooming in and out by using the scroll wheel. /// private void EnableScrollWheelZooming() @@ -106,6 +97,7 @@ private void EnablePanning() { this.BindMouseDown(OxyMouseButton.Left, PlotCommands.PanAt); + this.BindMouseDown(OxyMouseButton.Middle, PlotCommands.PanAt); IsPanningEnabled = true; } Index: Core/Components/test/Core.Components.OxyPlot.Test/DynamicPlotControllerTest.cs =================================================================== diff -u -rbe895944b132f57968074d720aac14be11c20475 -r8d6da66e0a6788518b70d0201f8ca861c5cc8519 --- Core/Components/test/Core.Components.OxyPlot.Test/DynamicPlotControllerTest.cs (.../DynamicPlotControllerTest.cs) (revision be895944b132f57968074d720aac14be11c20475) +++ Core/Components/test/Core.Components.OxyPlot.Test/DynamicPlotControllerTest.cs (.../DynamicPlotControllerTest.cs) (revision 8d6da66e0a6788518b70d0201f8ca861c5cc8519) @@ -18,9 +18,9 @@ Assert.IsTrue(controller.IsPanningEnabled); Assert.IsFalse(controller.IsRectangleZoomingEnabled); Assert.AreEqual(3, controller.InputCommandBindings.Count); - AssertDefaultPanAtCommand(controller, 0); - AssertDefaultWheelZoomCommand(controller, 1); - AssertCustomPanCommand(controller, 2); + AssertWheelZoomCommandBinding(controller, 0); + AssertMousePanAtCommandBinding(controller, 1, OxyMouseButton.Left); + AssertMousePanAtCommandBinding(controller, 2, OxyMouseButton.Middle); } [Test] @@ -37,9 +37,9 @@ Assert.IsTrue(controller.IsPanningEnabled); Assert.IsFalse(controller.IsRectangleZoomingEnabled); Assert.AreEqual(3, controller.InputCommandBindings.Count); - AssertDefaultPanAtCommand(controller, 0); - AssertDefaultWheelZoomCommand(controller, 1); - AssertCustomPanCommand(controller, 2); + AssertWheelZoomCommandBinding(controller, 0); + AssertMousePanAtCommandBinding(controller, 1, OxyMouseButton.Left); + AssertMousePanAtCommandBinding(controller, 2, OxyMouseButton.Middle); } [Test] @@ -54,33 +54,25 @@ // Assert Assert.IsTrue(controller.IsRectangleZoomingEnabled); Assert.IsFalse(controller.IsPanningEnabled); - Assert.AreEqual(3, controller.InputCommandBindings.Count); - AssertDefaultPanAtCommand(controller, 0); - AssertDefaultWheelZoomCommand(controller, 1); - AssertCustomRectangleZoomCommand(controller, 2); + Assert.AreEqual(2, controller.InputCommandBindings.Count); + AssertWheelZoomCommandBinding(controller, 0); + AssertCustomRectangleZoomCommand(controller, 1); } - private static void AssertDefaultPanAtCommand(DynamicPlotController controller, int index) + private static void AssertMousePanAtCommandBinding(DynamicPlotController controller, int index, OxyMouseButton expectedMouseButton) { var panAtCommand = controller.InputCommandBindings[index]; - Assert.AreEqual(OxyMouseButton.Middle, ((OxyMouseDownGesture) panAtCommand.Gesture).MouseButton); + Assert.AreEqual(expectedMouseButton, ((OxyMouseDownGesture)panAtCommand.Gesture).MouseButton); Assert.AreEqual(PlotCommands.PanAt, panAtCommand.Command); } - private static void AssertDefaultWheelZoomCommand(DynamicPlotController controller, int index) + private static void AssertWheelZoomCommandBinding(DynamicPlotController controller, int index) { var wheelZoomCommand = controller.InputCommandBindings[index]; Assert.IsTrue(wheelZoomCommand.Gesture is OxyMouseWheelGesture); Assert.AreEqual(PlotCommands.ZoomWheel, wheelZoomCommand.Command); } - private void AssertCustomPanCommand(DynamicPlotController controller, int index) - { - var panAtCommand = controller.InputCommandBindings[index]; - Assert.AreEqual(OxyMouseButton.Left, ((OxyMouseDownGesture) panAtCommand.Gesture).MouseButton); - Assert.AreEqual(PlotCommands.PanAt, panAtCommand.Command); - } - private void AssertCustomRectangleZoomCommand(DynamicPlotController controller, int index) { var rectangleZoomCommand = controller.InputCommandBindings[index];