rotation is wrong on Fujitsu P1630 in 12.04
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Magick Rotation |
Invalid
|
Undecided
|
Favux |
Bug Description
With Magick Rotation and the fujitsu kernel module on Kubuntu 12.04 on my p1630, the display rotates with the panel as it should, however the touchscreen input is not oriented correctly either in portrait mode or after returning to landscape mode. This is remedied by directly resetting the Coordinate Transformation Matrix (to the identity, regardless of the display orientation), Evdev Axis Calibration, and Evdev Axes Swap, after rotating the display panel, using
xinput set-prop [device] [property] [value]
where [device] can be obtained by `xinput list` (in my case it's 12) and then the three values of [property] whose values change incorrectly under rotation (as well as their values) can be found by `xinput list-props [device]`. So by making a shell script with the appropriate three commands for each orientation and invoking them with Magick Rotation's "Run after switch to tablet" and "Run after switch to normal" functions (under Setup on the right-click menu from the notification area green arrow icon), the correct behavior is achieved. Here are the commands I'm using:
For portrait orientation (n.b. "Rotation state in tablet mode" = `left`):
xinput --set-prop 12 260 3970 376 120 3922
xinput --set-prop 12 261 1
xinput --set-prop 12 133 1 0 0 0 1 0 0 0 1
For landscape orientation:
xinput --set-prop 12 260 109 3918 364 3972
xinput --set-prop 12 261 0
xinput --set-prop 12 133 1 0 0 0 1 0 0 0 1
(133 is Coordinate Transformation Matrix, 260 is Evdev Axis Calibration, and 261 is Evdev Axes Swap.)
I hope this is enough information to enable a fix for the p1630. (Incidentally, the bezel buttons aren't doing anything either; I haven't had time to figure out why yet.)
Changed in magick-rotation: | |
assignee: | nobody → Favux (favux-is) |
status: | New → Invalid |
(I figured out that the bezel buttons have keycodes but I needed to assign keysyms [I used a .Xmodmap].)