Use Super+I for input switching independently of Fcitx keys
This commit is contained in:
1 parent
d040abb66f
commit
e0e6225fac
10 files changed
+24
-12
No files matched your search
@@ -126,3 +126,8 @@ done
|
||||
|
||||
TEST_KEYBOARD_ONLY=true TEST_FCITX5_CONFIG=$freed assert_fires "keyboard-only profiles skip the terminal controller call" \
|
||||
"non_consuming" "$prefix" "foot" "terminal"
|
||||
|
||||
assert_fires "Super + I toggles configured input independently of custom Fcitx keys" \
|
||||
"exec fcitx5-remote --check -t" "SUPER + I" "chromium"
|
||||
TEST_KEYBOARD_ONLY=true assert_fires "Super + I leaves keyboard-only profiles alone" \
|
||||
"" "SUPER + I" "foot" "terminal"
|
||||
@@ -63,7 +63,7 @@ class InputMethodTest(unittest.TestCase):
|
||||
keys = setup.sections((self.config / "fcitx5/config").read_text())
|
||||
self.assertEqual(keys["Behavior"]["ActiveByDefault"], "False")
|
||||
self.assertNotIn("Control+space", keys["Hotkey/TriggerKeys"].values())
|
||||
self.assertIn("Control+Shift+space", keys["Hotkey/TriggerKeys"].values())
|
||||
self.assertEqual(set(keys["Hotkey/TriggerKeys"].values()), {"Zenkaku_Hankaku", "Hangul"})
|
||||
|
||||
def test_vconsole_variants_quotes_and_japanese_without_preference(self):
|
||||
self.preference.unlink()
|
||||
|
||||
@@ -53,6 +53,7 @@ stub_hyprctl <<BINDS
|
||||
$(lua_bind 64 "SUPER + W" "Close window")
|
||||
$(lua_bind 64 "SUPER + Q" "Close window")
|
||||
$(lua_bind 64 "SUPER + F" "Full screen")
|
||||
$(lua_bind 64 "SUPER + I" "Switch input language")
|
||||
$(lua_bind 64 "SUPER + S" "Toggle scratchpad")
|
||||
$(lua_bind 64 "SUPER + grave" "Toggle scratchpad")
|
||||
$(exec_bind 73 "SUPER SHIFT ALT + 0" "Move window silently to workspace 10" "true")
|
||||
@@ -64,7 +65,7 @@ rendered=$(keybindings)
|
||||
grep -q 'SUPER + F *→ Full screen' <<<"$rendered" ||
|
||||
fail "a chord with no alternative renders on its own" "$rendered"
|
||||
pass "the keybindings menu renders its entries"
|
||||
grep -q 'CTRL SHIFT + SPACE *→ Switch input language' <<<"$rendered" ||
|
||||
grep -q 'SUPER + I *→ Switch input language' <<<"$rendered" ||
|
||||
fail "the input switch shortcut appears in the cheatsheet" "$rendered"
|
||||
pass "the input switch shortcut appears in the cheatsheet"
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ assertEqual(model.inputLabel({}, 'EN'), 'EN', 'a stopped input service retains t
|
||||
assertEqual(model.inputLabel({ current: 'hangul' }, 'EN'), '한', 'Korean input has a distinct label')
|
||||
assertEqual(model.inputLabel({ current: 'custom', language: 'vi' }, 'EN'), 'VI', 'other engines use their reported language')
|
||||
assertEqual(model.inputTooltip(japanese, 'English (US)', false).includes('Space twice'), true, 'Japanese explains character choices')
|
||||
assertEqual(model.inputTooltip(japanese, 'English (US)', false).includes('Ctrl + Shift + Space'), true, 'the input toggle shortcut is discoverable')
|
||||
assertEqual(model.inputTooltip(japanese, 'English (US)', false).includes('Super + I'), true, 'the input toggle shortcut is discoverable')
|
||||
assertEqual(model.inputTooltip(japanese, 'English (US)', true).includes('Right-click'), true, 'combined input and layout switching stays discoverable')
|
||||
assertEqual(model.inputTooltip({ methods: ['keyboard-fr'] }, 'French', false), 'French\nClick to set up an input language', 'one foreign mode offers input setup')
|
||||
assertEqual(model.showIndicator('EN', false, false), false, 'English alone stays hidden')
|
||||
|
||||
Reference in new issue
Block a user