(In reply to comment #20)
> > - don't use 0 as the "no range" marker. there might be touchpads (one day) that
> > have negative ranges. In the server we use valid ranges instead, i.e. (min >=
> > max) designates an unset range.
> >
> Ok, now if the edges of the area match the physical ones (priv->minx, etc.) the
> property is unset.
Still not quite sure about this. The reason is that the kernel doesn't
actually guaranteed a min/max range so it can be confusing during debugging
whether a value is supposed to be sent now or not.
I suggest to add another variable to the private rec that contains flags if an
area is set for a given edge. (Have a look at
afb60a0b2497c5d08cbd1739fa8ae6585c428881 for an example).
The initial value of the property can be empty (which means the property
handler must allow a prop->size 0 to unset). Again, this is an explicit signal
that no edges are set. The question is however how we then signal through the
property if only one edge is actually set.
Any suggestions?
> > I'm a bit confused abut the comment above the is_inside_active_area(.. HIST(0))
> > part. can you paraphrase this please?
> >
> That approach was wrong and I've come up with a better (and simpler) solution
> i.e. I set priv->tap_button to 0 in HandleTapProcessing(). Now the cursor
> doesn't jump and taps are disabled in the area.
wouldn't it be easier to only call HandleTapProcessing conditional to
!inside_active_area? or does that mess with the state?
> Furthermore I have added an entry in the man page and added support for the new
> property in synclient.
the man page entry is a bit brief, please explain what the options actually
do (and the property as well).
(In reply to comment #20)
> > - don't use 0 as the "no range" marker. there might be touchpads (one day) that
> > have negative ranges. In the server we use valid ranges instead, i.e. (min >=
> > max) designates an unset range.
> >
> Ok, now if the edges of the area match the physical ones (priv->minx, etc.) the
> property is unset.
Still not quite sure about this. The reason is that the kernel doesn't 08cbd1739fa8ae6 585c428881 for an example).
actually guaranteed a min/max range so it can be confusing during debugging
whether a value is supposed to be sent now or not.
I suggest to add another variable to the private rec that contains flags if an
area is set for a given edge. (Have a look at
afb60a0b2497c5d
The initial value of the property can be empty (which means the property
handler must allow a prop->size 0 to unset). Again, this is an explicit signal
that no edges are set. The question is however how we then signal through the
property if only one edge is actually set.
Any suggestions?
> > I'm a bit confused abut the comment above the is_inside_ active_ area(.. HIST(0)) sing(). Now the cursor
> > part. can you paraphrase this please?
> >
> That approach was wrong and I've come up with a better (and simpler) solution
> i.e. I set priv->tap_button to 0 in HandleTapProces
> doesn't jump and taps are disabled in the area.
wouldn't it be easier to only call HandleTapProcessing conditional to active_ area? or does that mess with the state?
!inside_
> Furthermore I have added an entry in the man page and added support for the new
> property in synclient.
the man page entry is a bit brief, please explain what the options actually
do (and the property as well).