[haiku-commits] haiku: hrev53084 - src/preferences/touchpad

  • From: Adrien Destugues <pulkomandy@xxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 19 Apr 2019 04:26:53 -0400 (EDT)

hrev53084 adds 1 changeset to branch 'master'
old head: 9f7fb0e5c9094fb1a0ac980f020d4e19cd7a680c
new head: 50129064340802d7668b7344ed895469cbae71d3
overview: 
https://git.haiku-os.org/haiku/log/?qt=range&q=501290643408+%5E9f7fb0e5c909

----------------------------------------------------------------------------

501290643408: Disable Touchpad preferences.
  
  Show warning in the touchpad preference dialog box when user is not connected 
and also disable touchpad preferences except touchpad view.
  
  Change-Id: I52b80e834ee3bb37d568aa065942eae405001343
  Reviewed-on: https://review.haiku-os.org/c/1344
  Reviewed-by: Adrien Destugues <pulkomandy@xxxxxxxxx>

                                 [ Preetpal Kaur <preetpalok123@xxxxxxxxx> ]

----------------------------------------------------------------------------

Revision:    hrev53084
Commit:      50129064340802d7668b7344ed895469cbae71d3
URL:         https://git.haiku-os.org/haiku/commit/?id=501290643408
Author:      Preetpal Kaur <preetpalok123@xxxxxxxxx>
Date:        Tue Apr  2 13:51:56 2019 UTC
Committer:   Adrien Destugues <pulkomandy@xxxxxxxxx>
Commit-Date: Fri Apr 19 08:26:40 2019 UTC

----------------------------------------------------------------------------

3 files changed, 30 insertions(+), 1 deletion(-)
src/preferences/touchpad/TouchpadPref.h       |  3 ++-
src/preferences/touchpad/TouchpadPrefView.cpp | 24 +++++++++++++++++++++++
src/preferences/touchpad/TouchpadPrefView.h   |  4 ++++

----------------------------------------------------------------------------

diff --git a/src/preferences/touchpad/TouchpadPref.h 
b/src/preferences/touchpad/TouchpadPref.h
index 94aab9c345..b25018bcdb 100644
--- a/src/preferences/touchpad/TouchpadPref.h
+++ b/src/preferences/touchpad/TouchpadPref.h
@@ -37,7 +37,8 @@ public:
 
                        touchpad_settings&      Settings()
                                                                        { 
return fSettings; }
-
+                       bool                            IsTouchpadConnected()
+                                                                       { 
return fConnected; }
                        status_t                        UpdateSettings();
 
 private:
diff --git a/src/preferences/touchpad/TouchpadPrefView.cpp 
b/src/preferences/touchpad/TouchpadPrefView.cpp
index be40878437..ba96442af3 100644
--- a/src/preferences/touchpad/TouchpadPrefView.cpp
+++ b/src/preferences/touchpad/TouchpadPrefView.cpp
@@ -271,6 +271,13 @@ TouchpadPrefView::TouchpadPrefView()
        SetupView();
        // set view values
        SetValues(&fTouchpadPref.Settings());
+       if (fTouchpadPref.IsTouchpadConnected() == false) {
+               DisablePref();
+               fShowWarning->SetText(B_TRANSLATE("No touchpad found, the 
settings "
+                       "will have no effect."));
+       }
+       else
+               fShowWarning->Hide();
 }
 
 
@@ -457,8 +464,11 @@ TouchpadPrefView::SetupView()
                new BMessage(REVERT_SETTINGS));
        fRevertButton->SetEnabled(false);
 
+       fShowWarning = new BStringView("warning", "");
+
        BLayoutBuilder::Group<>(this, B_VERTICAL)
                .SetInsets(B_USE_WINDOW_SPACING)
+               .Add(fShowWarning)
                .Add(scrollBox)
                .Add(tapBox)
                .AddGroup(B_HORIZONTAL)
@@ -485,3 +495,17 @@ TouchpadPrefView::SetValues(touchpad_settings* settings)
        fScrollAccelSlider->SetValue(settings->scroll_acceleration);
        fTapSlider->SetValue(settings->tapgesture_sensibility);
 }
+
+
+void
+TouchpadPrefView::DisablePref()
+{
+       fTwoFingerBox->SetEnabled(false);
+       fTwoFingerHorizontalBox->SetEnabled(false);
+       fRevertButton->SetEnabled(false);
+       fDefaultButton->SetEnabled(false);
+       fTapSlider->SetEnabled(false);
+       fScrollAccelSlider->SetEnabled(false);
+       fScrollStepXSlider->SetEnabled(false);
+       fScrollStepYSlider->SetEnabled(false);
+}
diff --git a/src/preferences/touchpad/TouchpadPrefView.h 
b/src/preferences/touchpad/TouchpadPrefView.h
index bd4dd5db0d..81483ae2ab 100644
--- a/src/preferences/touchpad/TouchpadPrefView.h
+++ b/src/preferences/touchpad/TouchpadPrefView.h
@@ -17,6 +17,7 @@
 #include <Slider.h>
 #include <View.h>
 #include <GroupView.h>
+#include <StringView.h>
 
 #include "TouchpadPref.h"
 #include "touchpad_settings.h"
@@ -91,6 +92,8 @@ public:
                        void                    SetValues(touchpad_settings 
*settings);
 
 private:
+                       void                    DisablePref();
+
                        TouchpadView*   fTouchpadView;
                        BCheckBox*              fTwoFingerBox;
                        BCheckBox*              fTwoFingerHorizontalBox;
@@ -100,6 +103,7 @@ private:
                        BSlider*                fTapSlider;
                        BButton*                fDefaultButton;
                        BButton*                fRevertButton;
+                       BStringView*    fShowWarning;
 
                        TouchpadPref    fTouchpadPref;
 };


Other related posts:

  • » [haiku-commits] haiku: hrev53084 - src/preferences/touchpad - Adrien Destugues