Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 75383 Details for
Bug 116195
gnome-settings-daemon fails to start, X error
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
evdev-fix.patch
evdev.patch (text/plain), 2.32 KB, created by
Benoît "UBIK" Collet-Billon
on 2005-12-23 03:22:01 UTC
(
hide
)
Description:
evdev-fix.patch
Filename:
MIME Type:
Creator:
Benoît "UBIK" Collet-Billon
Created:
2005-12-23 03:22:01 UTC
Size:
2.32 KB
patch
obsolete
>=== modified file 'gnome-settings-daemon/gnome-settings-mouse.c' >--- gnome-settings-daemon/gnome-settings-mouse.c >+++ gnome-settings-daemon/gnome-settings-mouse.c >@@ -33,24 +33,57 @@ > gint n_buttons, > gboolean left_handed) > { >- const gint left_button = 0; >+ const gint left_button = 1; > gint right_button; >+ gint i; > > /* if the button is higher than 2 (3rd button) then it's > * probably one direction of a scroll wheel or something else > * uninteresting > */ >- right_button = MIN (n_buttons - 1, 2); >- >- if (left_handed) >- { >- buttons[left_button] = right_button + 1; >- buttons[right_button] = left_button + 1; >- } >- else >- { >- buttons[left_button] = left_button + 1; >- buttons[right_button] = right_button + 1; >+ right_button = MIN (n_buttons, 3); >+ >+ /* If we change things we need to make sure we only swap buttons. >+ * If we end up with multiple physical buttons assigned to the same >+ * logical button the server will complain. This code assumes physical >+ * button 0 is the physical left mouse button, and that the physical >+ * button other than 0 currently assigned left_button or right_button >+ * is the physical right mouse button. >+ */ >+ >+ /* check if the current mapping satisfies the above assumptions */ >+ if (buttons[left_button] != left_button && >+ buttons[left_button] != right_button) >+ /* The current mapping is weird. Swapping buttons is probably not a >+ * good idea. >+ */ >+ return; >+ >+ /* check if we are left_handed and currently not swapped */ >+ if (left_handed && buttons[left_button - 1] == left_button) >+ { >+ /* find the right button */ >+ for (i = 0; i < n_buttons; i++) >+ { >+ if (buttons[i] == right_button) >+ break; >+ } >+ /* swap the buttons */ >+ buttons[left_button - 1] = right_button; >+ buttons[i] = left_button; >+ } >+ /* check if we are not left_handed but are swapped */ >+ else if (!left_handed && buttons[left_button - 1] == right_button) >+ { >+ /* find the right button */ >+ for (i = 0; i < n_buttons; i++) >+ { >+ if (buttons[i] == left_button) >+ break; >+ } >+ /* swap the buttons */ >+ buttons[i] = right_button; >+ buttons[left_button - 1] = left_button; > } > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 116195
:
75227
| 75383