View Issue Details

IDProjectCategoryView StatusLast Update
0001236FreeCADFeaturepublic2013-09-21 11:31
Reporterstevewilton Assigned Towmayer  
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Product Versiontrunk 
Fixed in Version0.14 
Summary0001236: Touchpad navigation issue
DescriptionReporter bigdaveschulz requested a new trackpad navigation feature in ticket 1109 that I thought was a really good idea:

"Multi-touch is becoming much more common on PC laptops. Please consider adding a second binding for scroll-up to zoom in/out or even ctrl-zoom or ctrl move up/down to zoom in addition to the pgup/pgdn binding."

Administrator wmayer responded:

"CTRL+SHIFT+LMB+Mouse move does zooming. Since this might be too many buttons to be pressed CTLR+SHIFT+Mouse move now does zooming, too. This key combination was previously used to rotate but ALT+Mouse move does also rotate the alternative has changed its meaning."

This is a nice addition, but does not address the original feature request. I too wanted a zoom by scroll feature, maybe others do as well.

I wanted to add a patch to implement this feature to the ticket, but it seems that I cannot add a note to a closed ticket, so I'm reporting this in a new ticket. Please feel free to do whatever you wish with this

diff --git a/src/Gui/TouchpadNavigationStyle.cpp b/src/Gui/TouchpadNavigationStyle.cpp
index f7fecdb..b777436 100644
--- a/src/Gui/TouchpadNavigationStyle.cpp
+++ b/src/Gui/TouchpadNavigationStyle.cpp
@@ -71,7 +71,7 @@ const char* TouchpadNavigationStyle::mouseButtons(ViewerMode mode)
     case NavigationStyle::DRAGGING:
         return QT_TR_NOOP("Press ALT button");
     case NavigationStyle::ZOOMING:
- return QT_TR_NOOP("Press CTRL and SHIFT buttons");
+ return QT_TR_NOOP("Press CTRL and SHIFT buttons or scroll middle mouse button");
     default:
         return "No description";
     }
@@ -243,6 +243,15 @@ SbBool TouchpadNavigationStyle::processSoEvent(const SoEvent * const ev)
             }
             this->button2down = press;
             break;
+ case SoMouseButtonEvent::BUTTON4:
+ doZoom(viewer->getCamera(), TRUE, posn);
+ processed = TRUE;
+ break;
+ case SoMouseButtonEvent::BUTTON5:
+ doZoom(viewer->getCamera(), FALSE, posn);
+ processed = TRUE;
+ break;
+
         default:
             break;
         }
TagsNo tags attached.
FreeCAD Information

Activities

wmayer

2013-09-21 11:31

administrator   ~0003604

git show 8410209

Issue History

Date Modified Username Field Change
2013-09-06 19:18 stevewilton New Issue
2013-09-21 11:30 wmayer Status new => assigned
2013-09-21 11:30 wmayer Assigned To => wmayer
2013-09-21 11:31 wmayer Note Added: 0003604
2013-09-21 11:31 wmayer Status assigned => closed
2013-09-21 11:31 wmayer Resolution open => fixed
2013-09-21 11:31 wmayer Fixed in Version => 0.14