improve handling backspace key

This commit is contained in:
Andrzej Rybczak
2009-03-26 12:26:22 +01:00
parent cbc452fde5
commit a6635322a8
3 changed files with 7 additions and 10 deletions

View File

@@ -153,7 +153,7 @@ void DefaultKeys(ncmpcpp_keys &keys)
keys.ToggleAutoCenter[0] = 'U';
keys.ToggleDisplayMode[0] = 'p';
keys.ToggleLyricsDB[0] = 'L';
keys.GoToParentDir[0] = 263;
keys.GoToParentDir[0] = KEY_BACKSPACE;
keys.SwitchTagTypeList[0] = '`';
keys.Quit[0] = 'q';

View File

@@ -443,7 +443,7 @@ string Window::GetString(const string &base, size_t length, size_t width, bool e
// these key codes are special and should be ignored
if ((input < 10 || (input > 10 && input < 32))
# ifdef USE_PDCURSES
&& input != 8) // backspace key in pdcurses
&& input != KEY_BACKSPACE)
# else
)
# endif // USE_PDCURSES
@@ -467,9 +467,6 @@ string Window::GetString(const string &base, size_t length, size_t width, bool e
break;
}
case KEY_BACKSPACE: case 127:
# ifdef USE_PDCURSES
case 8: // backspace key in pdcurses
# endif // USE_PDCURSES
{
if (x <= minx && !beginning)
break;
@@ -483,11 +480,7 @@ string Window::GetString(const string &base, size_t length, size_t width, bool e
}
else if (beginning > 0)
beginning--;
if (input != KEY_BACKSPACE && input != 127
# ifdef USE_PDCURSES
&& input != 8 // backspace key in pdcurses
# endif // USE_PDCURSES
)
if (input != KEY_BACKSPACE && input != 127)
break; // backspace = left & delete.
}
case KEY_DC:

View File

@@ -31,6 +31,10 @@
#include <vector>
#include <string>
// this points to nothing, so redefine it
#undef KEY_BACKSPACE
#define KEY_BACKSPACE 8
#ifdef _UTF8
# define my_char_t wchar_t
# define TO_STRING(x) ToString(x)