sublimehq / sublime_merge

Issue tracker for Sublime Merge
https://www.sublimemerge.com
274 stars 14 forks source link

Can't limit keybinds to work outside text fields (not_equal doesn't work for text_control) #1841

Open eugenesvk opened 10 months ago

eugenesvk commented 10 months ago

Version info

Description

control Context key doesn't work with a not_equal text_control condition (though it works with equal)

Steps to reproduce

Add the following to have non-modifier keys to switch tabs outside of text fields (and do regular typing inside)

{"keys":["1"]   ,"command":"select_sidebar_tab","args":{"tab":1}    ,"context":[{"key":"control","operator":"not_equal","operand":"text_control"}]} ,//|super+1| branches @1-column
{"keys":["2"]   ,"command":"select_sidebar_tab","args":{"tab":2}    ,"context":[{"key":"control","operator":"not_equal","operand":"text_control"}]} ,//|super+2| commits  @1-column
{"keys":["3"]   ,"command":"select_sidebar_tab","args":{"tab":3}    ,"context":[{"key":"control","operator":"not_equal","operand":"text_control"}]} ,//|super+3| files    @1-column

Steps to reproduce the behavior:

  1. Open Sublime Merge and any repo
  2. Click on a text control (like a commit message)
  3. Press 1 or 2 or 3

Expected behavior

1, 2, or 3 typed in a text control

Debug Information

tested with a fresh portable app without any git config and an empty repo

Debug Information === App Version Information === Build: 2091 === Git Version Information === Using Git: D:\Sublime Merge\sublime_merge_build_2091_x64\Git\cmd\git.exe (bundled) git version 2.39.1.windows.1 PATH: === Browse Page Information === HEAD: 0000000000000000000000000000000000000000 Is in merge: 0 Is in cherry_pick: 0 Is in rebase: 0 Is in revert: 0 === Git Status Information === === Our Status Information === === Git Config Information === color.interactive=true color.ui=auto core.autocrlf=true core.bare=false core.filemode=false core.ignorecase=true core.logallrefupdates=true core.repositoryformatversion=0 core.symlinks=false credential.helper=manager credential.https://dev.azure.com.usehttppath=true diff.astextplain.textconv=astextplain filter.lfs.clean=git-lfs clean -- %f filter.lfs.process=git-lfs filter-process filter.lfs.required=true filter.lfs.smudge=git-lfs smudge -- %f help.format=html include.path=C:/Program Files/Git/etc/gitconfig pack.packsizelimit=2g rebase.autosquash=true === Our Config Information === Git Config Path Information Our config output is identical to the Git config output === Git Attributes Information === git check_attr --all output === Our Modified Files Newline Normalisation and EOL Information === === Our Modified Files Flag Information === Ignoring symlinks: 1

Screenshots