Load keyboard mappings based on actual keyboard layout

Bug #686377 reported by jus
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Medium
Daniel Schürmann

Bug Description

Currently we have the Standard.kbd.cfg file which holds the standard mapping for Mixxx. Problem is that the mapping only works as intended if you have an english keyboard layout.
Example: On a german keyboard Hotcues does not work, on a french keyboard the Beatsync does not work and so on.

While you can edit your keyboard layout and save it as Custom.kbd.cfg it would be an important step toward internationalisation if we`d support different keyboard layouts.

Like we dynamically load translations (mixxx_de.ts , mixxx_fr.ts , mixxx_it.ts ....) based on the language settings we should be able to do the same for keyboard mappings (Standard.kbd_de.cfg , Standard.kbd_fr.cfg , Standard.kbd_it.cfg....).

Tags: i18n
RJ Skerry-Ryan (rryan)
Changed in mixxx:
status: New → Confirmed
importance: Undecided → Wishlist
tags: added: i18n
Revision history for this message
Daniel Schürmann (daschuer) wrote :

Found following hints:
http://doc.qt.nokia.com/stable/qkeysequence.html#keyboard-layout-issues

QLocale QApplication::keyboardInputLocale ()

Revision history for this message
jus (jus) wrote :

Upgrading to bug since the keyboard shortcuts feature is basically broken for an undetermined number of users.

Changed in mixxx:
importance: Wishlist → Medium
Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Sounds good.. let's do this as part of the i18n 1.11 efforts if possible.

Changed in mixxx:
milestone: none → 1.11.0
Changed in mixxx:
assignee: nobody → Daniel Schürmann (daschuer)
status: Confirmed → In Progress
Revision history for this message
Daniel Schürmann (daschuer) wrote :

Here is a first patch.

I am wondering how is the use case for a RU Layout. There exist keyboards with both German and Russian key labels. Do the users change the layout depending on the application? What is the conclusion for Mixxx?

Revision history for this message
Daniel Schürmann (daschuer) wrote :
Revision history for this message
Daniel Schürmann (daschuer) wrote :

Update the nsis installer too.

It would be nice if the nsis scripts can be more automatic, refer bug #905491.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote : Re: [Bug 686377] Re: Load keyboard mappings based on actual keyboard layout

I agree Daniel -- I think we should generate the NSIS from SCons.

2011/12/17 Daniel Schürmann <email address hidden>

> Update the nsis installer too.
>
> It would be nice if the nsis scripts can be more automatic, refer bug
> #905491.
>
> ** Patch added: "keyboard_layout2.patch"
>
> https://bugs.launchpad.net/mixxx/+bug/686377/+attachment/2637566/+files/keyboard_layout2.patch
>
> --
> You received this bug notification because you are a member of Mixxx
> Development Team, which is subscribed to Mixxx.
> https://bugs.launchpad.net/bugs/686377
>
> Title:
> Load keyboard mappings based on actual keyboard layout
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/mixxx/+bug/686377/+subscriptions
>

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Mixxx should act on the QEvent::KeyboardLayoutChange for our Russian user.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Made configobject using UTF-8 codec. So we can support umlaut short-cuts in a platform independent way.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Patch in #9 looks good. Let's add this for 1.11.0. I'll try to remember to add a note about this in the release blog post so that if people had edited Standard.kbd.cfg in their install folder instead of Custom.kbd.cfg then they'll know to move them.

Thanks,
RJ

Changed in mixxx:
status: In Progress → Fix Committed
RJ Skerry-Ryan (rryan)
Changed in mixxx:
status: Fix Committed → Fix Released
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/5703

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related blueprints

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.