separate input scheme

This commit is contained in:
speedie 2023-01-23 17:08:27 +01:00
parent e8de732879
commit 918e440084
5 changed files with 25 additions and 2 deletions

View file

@ -8,6 +8,7 @@ static const unsigned int alphas[][3] = {
[SchemeItemNorm] = { fgalpha, bgalpha, borderalpha }, [SchemeItemNorm] = { fgalpha, bgalpha, borderalpha },
[SchemeItemSel] = { fgalpha, bgalpha, borderalpha }, [SchemeItemSel] = { fgalpha, bgalpha, borderalpha },
[SchemeMenu] = { fgalpha, bgalpha, borderalpha }, [SchemeMenu] = { fgalpha, bgalpha, borderalpha },
[SchemeInput] = { fgalpha, bgalpha, borderalpha },
[SchemePrompt] = { fgalpha, bgalpha, borderalpha }, [SchemePrompt] = { fgalpha, bgalpha, borderalpha },
[SchemeNormHighlight] = { fgalpha, bgalpha, borderalpha }, [SchemeNormHighlight] = { fgalpha, bgalpha, borderalpha },
[SchemeSelHighlight] = { fgalpha, bgalpha, borderalpha }, [SchemeSelHighlight] = { fgalpha, bgalpha, borderalpha },
@ -23,8 +24,9 @@ static const char *colors[SchemeLast][2] = {
[SchemeRArrow] = { col_rarrowfg, col_rarrowbg }, [SchemeRArrow] = { col_rarrowfg, col_rarrowbg },
[SchemeItemNorm] = { col_itemnormfg, col_itemnormbg }, [SchemeItemNorm] = { col_itemnormfg, col_itemnormbg },
[SchemeItemSel] = { col_itemselfg, col_itemselbg }, [SchemeItemSel] = { col_itemselfg, col_itemselbg },
[SchemeInput] = { col_inputfg, col_inputbg, },
[SchemeMenu] = { NULL, col_menubgcolor }, [SchemeMenu] = { NULL, col_menubgcolor },
[SchemePrompt] = { col_promptfg, col_promptbg }, /* this one is left */ [SchemePrompt] = { col_promptfg, col_promptbg },
[SchemeNormHighlight] = { col_normhlfgcolor, col_normhlbgcolor }, [SchemeNormHighlight] = { col_normhlfgcolor, col_normhlbgcolor },
[SchemeSelHighlight] = { col_selhlfgcolor, col_selhlbgcolor }, [SchemeSelHighlight] = { col_selhlfgcolor, col_selhlbgcolor },
[SchemeCaret] = { col_caretfgcolor, NULL }, [SchemeCaret] = { col_caretfgcolor, NULL },

View file

@ -10,6 +10,8 @@ spmenu.col_larrowfg: #bbbbbb
spmenu.col_rarrowfg: #bbbbbb spmenu.col_rarrowfg: #bbbbbb
spmenu.col_larrowbg: #222222 spmenu.col_larrowbg: #222222
spmenu.col_rarrowbg: #222222 spmenu.col_rarrowbg: #222222
spmenu.col_inputfg: #eeeeee
spmenu.col_inputbg: #222222
spmenu.col_numfgcolor: #ffffff spmenu.col_numfgcolor: #ffffff
spmenu.col_numbgcolor: #000000 spmenu.col_numbgcolor: #000000
spmenu.col_normhlfgcolor: #ffffff spmenu.col_normhlfgcolor: #ffffff

View file

@ -60,6 +60,10 @@ static char col_itemnormbg[] = "#222222"; /* Normal background item co
static char col_itemselfg[] = "#eeeeee"; /* Selected foreground item color */ static char col_itemselfg[] = "#eeeeee"; /* Selected foreground item color */
static char col_itemselbg[] = "#005577"; /* Selected background item color */ static char col_itemselbg[] = "#005577"; /* Selected background item color */
/* Input colors */
static char col_inputbg[] = "#222222"; /* Input field background color */
static char col_inputfg[] = "#eeeeee"; /* Input field foreground color */
/* Menu colors */ /* Menu colors */
static char col_menubgcolor[] = "#222222"; /* Menu background color */ static char col_menubgcolor[] = "#222222"; /* Menu background color */

View file

@ -63,6 +63,7 @@ enum { SchemeLArrow,
SchemeItemNorm, SchemeItemNorm,
SchemeItemSel, SchemeItemSel,
SchemeMenu, SchemeMenu,
SchemeInput,
SchemePrompt, SchemePrompt,
SchemeNormHighlight, SchemeNormHighlight,
SchemeSelHighlight, SchemeSelHighlight,
@ -443,7 +444,7 @@ drawmenu(void)
} }
/* draw input field */ /* draw input field */
w = (lines > 0 || !matches) ? mw - x : inputw; w = (lines > 0 || !matches) ? mw - x : inputw;
drw_setscheme(drw, scheme[SchemeMenu]); drw_setscheme(drw, scheme[SchemeInput]);
if (passwd) { if (passwd) {
censort = ecalloc(1, sizeof(text)); censort = ecalloc(1, sizeof(text));
memset(censort, '.', strlen(text)); memset(censort, '.', strlen(text));
@ -1758,6 +1759,8 @@ usage(void)
"spmenu -sib <color> Set the selected item background color\n" "spmenu -sib <color> Set the selected item background color\n"
"spmenu -pfg <color> Set the prompt foreground color\n" "spmenu -pfg <color> Set the prompt foreground color\n"
"spmenu -pbg <color> Set the prompt background color\n" "spmenu -pbg <color> Set the prompt background color\n"
"spmenu -ifg <color> Set input foreground color\n"
"spmenu -ibg <color> Set input background color\n"
"spmenu -mbg <color> Set the menu background color\n" "spmenu -mbg <color> Set the menu background color\n"
"spmenu -nhf <color> Set the normal highlight foreground color\n" "spmenu -nhf <color> Set the normal highlight foreground color\n"
"spmenu -nhb <color> Set the normal highlight background color\n" "spmenu -nhb <color> Set the normal highlight background color\n"
@ -1921,18 +1924,22 @@ main(int argc, char *argv[])
} else if (!strcmp(argv[i], "-nb")) { /* normal background color */ } else if (!strcmp(argv[i], "-nb")) { /* normal background color */
colors[SchemeItemNorm][ColBg] = argv[++i]; colors[SchemeItemNorm][ColBg] = argv[++i];
colors[SchemeMenu][ColBg] = argv[++i]; colors[SchemeMenu][ColBg] = argv[++i];
colors[SchemeInput][ColBg] = argv[++i];
colors[SchemePrompt][ColBg] = argv[++i]; colors[SchemePrompt][ColBg] = argv[++i];
} else if (!strcmp(argv[i], "-nf")) { /* normal foreground color */ } else if (!strcmp(argv[i], "-nf")) { /* normal foreground color */
colors[SchemeItemNorm][ColFg] = argv[++i]; colors[SchemeItemNorm][ColFg] = argv[++i];
colors[SchemeMenu][ColFg] = argv[++i]; colors[SchemeMenu][ColFg] = argv[++i];
colors[SchemeInput][ColFg] = argv[++i];
colors[SchemePrompt][ColFg] = argv[++i]; colors[SchemePrompt][ColFg] = argv[++i];
} else if (!strcmp(argv[i], "-sb")) { /* selected background color */ } else if (!strcmp(argv[i], "-sb")) { /* selected background color */
colors[SchemeItemSel][ColBg] = argv[++i]; colors[SchemeItemSel][ColBg] = argv[++i];
colors[SchemeMenu][ColBg] = argv[++i]; colors[SchemeMenu][ColBg] = argv[++i];
colors[SchemeInput][ColBg] = argv[++i];
colors[SchemePrompt][ColBg] = argv[++i]; colors[SchemePrompt][ColBg] = argv[++i];
} else if (!strcmp(argv[i], "-sf")) { /* selected foreground color */ } else if (!strcmp(argv[i], "-sf")) { /* selected foreground color */
colors[SchemeItemSel][ColFg] = argv[++i]; colors[SchemeItemSel][ColFg] = argv[++i];
colors[SchemeMenu][ColFg] = argv[++i]; colors[SchemeMenu][ColFg] = argv[++i];
colors[SchemeInput][ColBg] = argv[++i];
colors[SchemePrompt][ColFg] = argv[++i]; colors[SchemePrompt][ColFg] = argv[++i];
/* spmenu colors */ /* spmenu colors */
@ -1950,6 +1957,10 @@ main(int argc, char *argv[])
colors[SchemePrompt][ColFg] = argv[++i]; colors[SchemePrompt][ColFg] = argv[++i];
} else if (!strcmp(argv[i], "-pbg")) { /* prompt bg color */ } else if (!strcmp(argv[i], "-pbg")) { /* prompt bg color */
colors[SchemePrompt][ColBg] = argv[++i]; colors[SchemePrompt][ColBg] = argv[++i];
} else if (!strcmp(argv[i], "-ifg")) { /* input fg color */
colors[SchemeInput][ColFg] = argv[++i];
} else if (!strcmp(argv[i], "-pfg")) { /* input bg color */
colors[SchemeInput][ColBg] = argv[++i];
} else if (!strcmp(argv[i], "-shf")) { /* selected highlight foreground color */ } else if (!strcmp(argv[i], "-shf")) { /* selected highlight foreground color */
colors[SchemeSelHighlight][ColBg] = argv[++i]; colors[SchemeSelHighlight][ColBg] = argv[++i];
} else if (!strcmp(argv[i], "-shf")) { /* selected highlight foreground color */ } else if (!strcmp(argv[i], "-shf")) { /* selected highlight foreground color */

View file

@ -13,6 +13,8 @@ ResourcePref resources[] = {
{ "col_itemnormbg", STRING, &col_itemnormbg }, { "col_itemnormbg", STRING, &col_itemnormbg },
{ "col_itemselfg", STRING, &col_itemselfg }, { "col_itemselfg", STRING, &col_itemselfg },
{ "col_itemselbg", STRING, &col_itemselbg }, { "col_itemselbg", STRING, &col_itemselbg },
{ "col_inputbg", STRING, &col_inputbg },
{ "col_inputfg", STRING, &col_inputfg },
{ "col_menubgcolor", STRING, &col_menubgcolor }, { "col_menubgcolor", STRING, &col_menubgcolor },
{ "col_numfgcolor", STRING, &col_numfgcolor }, { "col_numfgcolor", STRING, &col_numfgcolor },
{ "col_numbgcolor", STRING, &col_numbgcolor }, { "col_numbgcolor", STRING, &col_numbgcolor },
@ -29,11 +31,13 @@ ResourcePref resources[] = {
{ "color10", STRING, &col_larrowfg }, { "color10", STRING, &col_larrowfg },
{ "color10", STRING, &col_rarrowfg }, { "color10", STRING, &col_rarrowfg },
{ "color10", STRING, &col_itemnormfg }, { "color10", STRING, &col_itemnormfg },
{ "color10", STRING, &col_inputfg },
{ "color0", STRING, &col_itemnormbg }, { "color0", STRING, &col_itemnormbg },
{ "color0", STRING, &col_menubgcolor }, { "color0", STRING, &col_menubgcolor },
{ "color0", STRING, &col_larrowbg }, { "color0", STRING, &col_larrowbg },
{ "color0", STRING, &col_rarrowbg }, { "color0", STRING, &col_rarrowbg },
{ "color0", STRING, &col_itemselfg }, { "color0", STRING, &col_itemselfg },
{ "color0", STRING, &col_inputbg },
{ "color6", STRING, &col_promptbg }, { "color6", STRING, &col_promptbg },
{ "color0", STRING, &col_promptfg }, { "color0", STRING, &col_promptfg },
{ "color6", STRING, &col_itemselbg }, { "color6", STRING, &col_itemselbg },