locked
Keyboard shortcuts stopped working properly in the code editor RRS feed

  • Question

  • User33857 posted

    Using Xamarin Studio on Windows 7 x64.

    The studio crashed while editing a layout for Android (the layout editor crashes much more than I would like).

    Now in the C# source code editor the common hotkeys do not work, such as Ctrl+C, Ctrl+V, Ctrl+X and Ctrl+Z.

    I tried deleting all the stored files and caches under AppData\Local\XamarinStudio and AppData\Roaming\XamarinStudio, that did not help.

    I tried uninstalling the Studio and installing it again, this didn't help either.

    I tried remapping the hotkeys with the hotkey editor dialog in the settings, but the dialog sees the keys I press as numbers. E.g. I press Ctrl+X to remap the 'Cut' command, and the dialog displays 'Control+1057'. Or I press Ctrl+V, the dialog displays 'Control+1052'.
    If I save these numerical mappings, they do not work in the editor either.

    Ctrl+Insert and Shift+Insert work properly, but they are very inconvenient.

    What else can I reset in the studio?
    Or how can I do a proper clean reinstall? It would appear that when I uninstall the studio using the Programs and Features dialog, it is not actually uninstalled, because when I later launch the Xamarin installer it tells me the studio is already installed, with the checkbox disabled, and if I proceed, it somehow resurrects it without fixing the propblem.

    Another interesting thing is that at random moments the hotkeys begin to work properly. If, while they are working, I go to the key mapper dialog, it recognizes the keys properly, e.g. as Ctrl+X and not Control+1057. But if I then close and open the editor again, the keys stop working again.

    Probably worth mentioning that I have no problem whatsoever using Ctrl+C, Ctrl+V etc in all other applications and parts of Windows. It's only the Xamarin studio that does not like them (anymore).

    Thursday, January 2, 2014 2:52 PM

All replies

  • User33857 posted

    An addition: It would appear the hotkeys fail to work globally, not just in the code editor.

    E.g. they would not work in the studio's dialog boxes (you can't copy a value from one text box to another with Ctrl+C).

    Thursday, January 2, 2014 6:18 PM
  • User28 posted

    What version of GTK# do you have installed?

    Thursday, January 2, 2014 8:00 PM
  • User33857 posted

    What version of GTK# do you have installed?

    The one that was automatically offered for installation on 12/27, that is, Gtk# for .Net 2.12.22

    Thursday, January 2, 2014 8:59 PM
  • User28 posted

    Try the GTK# 2.12.23 beta, it has improved keyboard layout support.

    Thursday, January 2, 2014 9:02 PM
  • User33857 posted

    Ouch.

    The interface language in the studio is now Russian despite it says English in the studio settings. Tried changing back to Default and then back to English, reloading the studio each time, but it would not stop being Russian. (Russian is the default OS language, but I had English in the studio and I'd like to keep it).

    Also, I can't now type Cyrillic letters anywhere (the editor, the textboxes in dialog windows etc). Only Latin letters are accepted.

    The hotkey problem is also there, nothing really changed.

    So I'm uninstalling this beta, thank you very much :)

    Edit:
    Rolled back to 2.12.22; English interface is back, can type Cyrillic letters again. The hotkeys were not magically fixed though.

    Thursday, January 2, 2014 9:29 PM
  • User28 posted

    You should be able to get a fix for the UI language issue here.

    Could you please file a bug and include details of the language and keyboard layout settings that you're using?

    Thursday, January 2, 2014 11:07 PM
  • User33857 posted

    I'm not sure if my bug is actually a duplicate of this one (please advise).

    But even if it is, I seem to have found a workaround/reason.
    It would appear the only thing that matters is which keyboard layout is active when you land the first Ctrl+[Z,X,C,V] keystroke on the program.

    If the Russian layout is active when the first hotkey occurs, then all four hotkeys will not work in the current session, even if you later switch to English.
    But if you first switch to English and only then do your first Ctrl+[Z,X,C,V] hotkey, then they will work in the current session even if you later switch to Russian.

    Please advise if this should be posted as a new bug or a comment to the existing one.

    Friday, January 3, 2014 8:34 AM
  • User28 posted

    I think it's related but different - we cache the result of decomposing keystrokes for matching hotkeys (so e.g. on en-US, ctrl-+ is equivalent to ctrl-shift-=), and we don't flush it when you switch layout. So a new bug would be better IMO.

    I'm a bit worried that GTK# 2.12.23 completely breaks Cyrillic input for you. It was supposed to fix character input on Windows for all keyboard layouts. Could you file a bug for that too so @CodyRussell can investigate? Thanks!

    Saturday, January 4, 2014 1:24 AM
  • User33857 posted

    Submitted bug 17050 and bug 17051.

    Saturday, January 4, 2014 6:58 AM
  • User25834 posted

    I got this problem. Sometime those shortcuts doesn't work Ctrl+s, Ctrl+x, Ctrl+c . My keyboards layout is english and thai.

    my machine =>

    Xamarin Studio Version 5.10 (build 811) Runtime: Microsoft .NET 4.0.30319.42000 GTK+ 2.24.23 (MS-Windows theme) GTK# 2.12.30

    Tuesday, October 20, 2015 11:53 PM