Andriy Palamarchuk apa3a@yahoo.com writes:
Changed system parameters won't be reset back to X settings?
Not if they are changed permanently; if we want them to be reset then we simply should not set them and always query X.
Basically there are many possibilities:
1) get and set in registry, ignore X 2) get and set in registry, if nothing in registry get default value from X 3) always get from X, ignore registry, do nothing on set 4) always get from X, ignore registry, set X value on set (not recommended)
and there are even more combinations if you differentiate setting permanently/temporarily. There is no single right answer, it all depends on what the parameter does. IMO most cases should do 1), but there can be exceptions.
One case which comes to mind when such integration would be useful is system parameter which shows whether mouse buttons are swapped. Left-handed person can configure mouse after he ran Wine the first time, or the settings can be changed temporarily. We need a way to find out the system setting was changed and don't rely on saved value.
In this case I don't think we should query X at all, since if the buttons are swapped at the X level this is transparent for us. Otherwise the buttons will get swapped twice...
--- Alexandre Julliard julliard@winehq.com wrote:
Andriy Palamarchuk apa3a@yahoo.com writes:
Changed system parameters won't be reset back to X settings?
Not if they are changed permanently; if we want them to be reset then we simply should not set them and always query X.
Basically there are many possibilities:
- get and set in registry, ignore X
- get and set in registry, if nothing in registry
get default value from X 3) always get from X, ignore registry, do nothing on set 4) always get from X, ignore registry, set X value on set (not recommended)
and there are even more combinations if you differentiate setting permanently/temporarily. There is no single right answer, it all depends on what the parameter does. IMO most cases should do 1), but there can be exceptions.
I was going to implement option: N) On initialization get all settings from X. Allow application to play with settings as it wants. Don't change X settings. This is like 2) when all the registry settings are removed before system parameters initialization.
Lets go with 1) by default. I will look into each case whether we need more integration.
One case which comes to mind when such integration would be useful is system parameter which shows whether mouse buttons are swapped. Left-handed
person
can configure mouse after he ran Wine the first
time,
or the settings can be changed temporarily. We
need a
way to find out the system setting was changed and don't rely on saved value.
In this case I don't think we should query X at all, since if the buttons are swapped at the X level this is transparent for us. Otherwise the buttons will get swapped twice...
I agree with you that logical to phisical *button mappings* are transparent in both - Windows and in X. I'm not going to use separate Wine mouse buttons mapping :-) I was rather thinking about situation when application needs to know whether it works with left-handed user. For such user it can show message "Click with Left Mouse Button" when it expects event from logical right button. Is this a real situation? What about assigning actions to mouse buttons in a game?
On other hand left-handed users are probably accustomed to such kind of confusions and will try both buttons ;-)
This is probably not the best example where we need integration.
Andriy
__________________________________________________ Do You Yahoo!? Find a job, post your resume. http://careers.yahoo.com