Closed Bug 165941 Opened 22 years ago Closed 22 years ago

Next Tab doesn't respect NSUserKeyEquivalents

Categories

(Camino Graveyard :: Accessibility, defect)

PowerPC
macOS
defect
Not set
normal

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: trwrt, Assigned: sfraser_bugs)

Details

Attachments

(1 file)

I changed Back/Forward and Previous Tab/Next Tab back to using (Shift)Command-Arrow on my machine using a defaults write: defaults write org.mozilla.navigator NSUserKeyEquivalents '{"Back" = "@\UF702"; "Forward" = "@\UF703";"Previous Tab" = "@\$\UF702"; "Next Tab" = "@\$\UF703";}' This worked fine in nightly builds up to at least 8/20. However, in builds from at least 8/24 onward the Next Tab keyboard equivalent doesn't get changed from Command-}, although the other ones do get changed successfully. Using the 8/20 build with the exact same .plist file I do get Shift-Command-RightArrow for Next Tab, so something has definitely changed in Navigator.
I can confirm this behavior, and supply a workaround. System: ibook dual-USB 2001 500MHz 384 MB 10.2 To reproduce: download the 9/1 or 9/2 build and install. Open a Terminal and paste in: defaults write org.mozilla.navigator NSUserKeyEquivalents \ '{ Home = "@H"; Back = "@\Uf702"; Forward = "@\Uf703"; "Next Tab" = "@$\Uf703"; "Previous Tab" = "@$\Uf702"; }' You can read this back with "defaults read org.mozilla.navigator NSUserKeyEquivalents" Launch Navigator. Problem: "Home" and "Previous Tab" remain set to null and command-{, respectively. Note that the original reporter had problems with "Next Tab", not "Previous Tab". This seems to vary from build to build. Workaround: Quit Navigator and open /Applications/Navigator.app/Contents/Resources/English.lproj/MainMenu.nib/objects.nib using Interface Builder (Developer Tools required). Manually edit the Home, Next Tab, and Previous Tab keys. It appears to be sufficient to assign anything to Home: I used command-opt-shift by accident, and I was thereafter able to assign using 'defaults write' as above. I also replaced Next/Previous in the nib with their original values, since I couldn't figure out how to enter arrow keys or Unicode values. Again, 'defaults write' started working as soon as I edited the key equivalent, saved the nib, and launched Navigator.
Working Navigator.app/Contents/Resources/English.lproj/MainMenu.nib/objects.nib for 2002090805 - per previous comment, this is generated by opening the original nib in IB, touching the key bindings for Home, Next Tab, and Previous Tab, and saving. I suspect that the existing nib is simply corrupt.
Mine.
Assignee: brade → sfraser
Status: UNCONFIRMED → NEW
Ever confirmed: true
The Preferences menu item is also affected, and can be fixed using the same workaround documented above. 2002091005.
I think we have a winner: the 2002092104 build seems to have this fixed.
Update (2002092304): Home, Back, Forward, Next Tab, and Previous Tab are fine, but "Preferences..." still requires a swift kick to the IB. The below works with TextEdit, Preview, and other apps, but not with Navigator/Chimera. defaults write NSGlobalDomain NSUserKeyEquivalents \ '{ "Preferences..." = "@;" ; "Preferences" = "@;" ; }' So while this bug is technically fixed - the original symptoms are gone - the wider scope of "not all menu commands can be set via NSUserKeyEquivalents" still needs a tweak or two.
Component: Toolbars & Menus → Accessibility
> "Preferences..." = "@;" ; The '...' may be the option-colon character '…', so you need to match that as well.
No, I'm pretty sure that 'Preferences...' uses three dots, not an elipses. $ strings < /Applications/Navigator.app/Contents/Resources/English.lproj/MainMenu.nib/objects.nib | grep 'Preferences' | od -c 0000000 P r e f e r e n c e s . . . \n d 0000020 i s p l a y P r e f e r e n c e 0000040 s W i n d o w : \n 0000051 Opening the nib with IB indicated the same: three dots, not an elipses. Anyway I have no idea how to put an elipses into an NSUserKeyEquivalents string - maybe as a unicode like the arrow key? Is there a table of those code somewhere - in /Developer, maybe?
defaults write org.mozilla.navigator NSUserKeyEquivalents '{"Preferences..."="@8";}' works for me, as do the others.
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
rs vrfy
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: