[gpm]Synaptics patch 7

Troy Schultz tschultz@canada.com
05 Jun 2002 07:28:05 -0400


Peter,

I have some interesting findings.

On Tue, 2002-06-04 at 21:18, Peter Berg Larsen wrote:
> 
> On 4 Jun 2002, Troy Schultz wrote:
> 
> > With patch7 I get the following;
> > - Press UP directtion, window scrolls up only once(approx 5 lines), does
> > not continue to scoll, subsequent UP presses do nothing
> 
> What happens if you do shifts between up and down button?

Using original settings...

I can press UP and get one scroll, if I release and repress UP I get
nothing.

I can press DOWN and get once scroll, if I release and repress DOWN I
get nothing.

If I press UP I get one scroll, if I release and then press DOWN I get
one scroll. I can continue to repeat this and each time I get only one
scroll for each direction.

> 
> 
> > [scrolling_speed]              2
> > [scrolling_button_factor]      0.5
> 
> Try setting one or both of them higher. In the code there is a speed *
> factor calculation that just migh give integer 0 scrolling. If it is the
> reason, then it should either work or not at all, which is way I dont
> understand why you say that the first buttonpress results in scrolling and
> not the nexts.

With scrolling_speed = 5 and scrolling_button_factor-0.5, still only
scrolls once, but now not on every press.  Scrolling direction is
correct.

With scrolling_speed =2 and scrolling_button_factor=1.5, now scrolls
when button is released.  The number of lines scrolled is dependant on
how long I hold the button.  Also the scrolling direction is now
reversed.

I have also tried a variety of other combinations and if the
scrolling_button_factor is >1 then I get repeated scrolls on button
release.

With scrolling_speed = 2, scrolling_button_factor=-1.0, now scrolls when
button is pressed, looks correct, direction is also correct.  Also
scrolling stops when button is released.  Subsequent button presses
results in more scrolling.  This setting seems to work properly!

I also tried other values for scrolling_button_factor (-2.0, -5.0) and
noted correct scrolling direction, but sometimes scroll when button is
pressed, other times when released.  Also scrolling did not always
change imediately when button state was changed.  It seemed to send out
stacked messages dependant on duration of key press.

It would be nice if other factors work as well, with
scrolling_button_factor=-1.0 speed is quite fast.  I can set
scrolling_speed to a higher number but that effects all scrolling
methods.  

It is very nice to be able to set the edge scrolling to a nice
comfortable speed and then scroll faster with the 4-way key, kind of as
a corse and fine scroll.

I have also noted that if I was last using the edge-scroll in one
direction and then try same direction with 4-way, it does not work.  I
must scroll in different direction first.  After that I can change
scroll directions with the 4-way key works fine.

I noticed that I get different results for values of
scrolling_button_factor that were not -1.0.  I need to do a lot more
tests before I can explain what happens, but there seems to be some
relationship to odd/even numbers and if scrolling works on button press
or release.

At least for now I'll leave the setting where I have them.


Here are my current gpm-syn.conf settings;

/* enabling configuration parameters */
[edge_motion_enabled]          FALSE
[edge_motion_speed_enabled]    FALSE
[corner_taps_enabled]          TRUE
[tap_gesture_enabled]          TRUE
[pressure_speed_enabled]       TRUE
[tossing_enabled]              FALSE
[does_toss_use_static_speed]   TRUE
[tap_hold_edge_motion_enabled] FALSE
/* pressure induced speed related configuration parameters */
[low_pressure]                 40
[speed_up_pressure]            60
[pressure_factor]              0.05
[standard_speed_factor]        0.10
/* toss/catch related parameters */
[min_toss_time]                100
[max_toss_time]                300
[prevent_toss_time]            300
[min_toss_dist]                2
[static_toss_speed]            70
[toss_speed_factor]            0.5
/* edge motion related configuration parameters */
[x_min_center]                 1632
[x_max_center]                 5312
[y_min_center]                 1408
[y_max_center]                 4108
[edge_speed]                   20
/* corner tap actions */
[upper_left_action]            0(none)
[upper_right_action]           0(none)
[lower_left_action]            0(none)
[lower_right_action]           10(toggle 4-way button action)
/* 4 way button actions */
[up_button_action]             5(up action)
[down_button_action]           6(down action)
[left_button_action]           2(middle button)
[right_button_action]          4(fourth button)
/* wmode parameters */
[wmode_enabled]                TRUE
[drag_lock_enabled]            FALSE
[finger_threshold]             30
[tap_lower_limit]              5
[tap_upper_limit]              200
[tap_range]                    100
[tap_interval]                 200
[multiple_tap_delay]           30
[pads_tap_interval]            8
/* Additional wmode options */
[palm_detect_enabled]          TRUE
[palm_detect_level]            1
[multi_finger_tap_enable]      FALSE
[multi_finger_stop_enabled]    TRUE
[multi_finger_stop_delay]      8
/* Additional options */   
[touchpad_enabled]             TRUE
[stick_enabled]                FALSE
[stick_pressure_enabled]       FALSE
[four_way_button_enabled]      TRUE
[four_way_button_is_mouse]     FALSE
[scrolling_enabled]            TRUE
[auto_scrolling_enabled]       TRUE
[scrolling_edge]               2
[scrolling_speed]              8
[scrolling_button_factor]      -1.0
[auto_scrolling_factor]        2.0


This gives me almost the functionality I want.

I hope this is not too confusing I wrote this as I was doing each test.
- Troy