1,029 changes: 881 additions & 148 deletions aclocal.m4

Large diffs are not rendered by default.

553 changes: 438 additions & 115 deletions configure

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions demo/simple.c
Expand Up @@ -120,6 +120,7 @@ main()

/* prepare main window */
wbkgd(stdscr, COLOR_PAIR(1));
wclear(stdscr);
wrefresh(stdscr);

/*
Expand Down
36 changes: 2 additions & 34 deletions src/st_menu.c
Expand Up @@ -905,36 +905,6 @@ pulldownmenu_draw_shadow(struct ST_MENU *menu)
wmaxy = smaxy - 1;
wmaxx = smaxx - config->shadow_width;

#if NCURSES_WIDECHAR > 0 && defined HAVE_NCURSESW

for (i = 0; i <= smaxy; i++)
for (j = 0; j <= smaxx; j++)
{
cchar_t cch;
wchar_t wch[CCHARW_MAX];
attr_t attr;
short int cp;

/* skip overwritten content */
if (i < wmaxy && j < wmaxx)
continue;

mvwin_wch(menu->shadow_window, i, j, &cch);
getcchar(&cch, wch, &attr, &cp, NULL);

/*
* When original attributte holds A_ALTCHARSET bit, then
* then updated attributte have to hold this bit too, elsewhere
* ACS chars will be broken.
*/
setcchar(&cch, wch,
shadow_attr | (attr & A_ALTCHARSET),
config->menu_shadow_cpn,
NULL);
mvwadd_wch(menu->shadow_window, i, j, &cch);
}

#else

for (i = 0; i <= smaxy; i++)
for (j = 0; j <= smaxx; j++)
Expand All @@ -955,8 +925,6 @@ pulldownmenu_draw_shadow(struct ST_MENU *menu)
NULL);
}

#endif

wnoutrefresh(menu->shadow_window);
}

Expand Down Expand Up @@ -1978,8 +1946,8 @@ st_menu_new(ST_MENU_CONFIG *config, ST_MENU_ITEM *menu_items, int begin_y, int b
/*
* Create state variable for menubar based on template (array) of ST_MENU_ITEM
*/
struct
ST_MENU *st_menu_new_menubar2(ST_MENU_CONFIG *barcfg, ST_MENU_CONFIG *pdcfg, ST_MENU_ITEM *menu_items)
struct ST_MENU *
st_menu_new_menubar2(ST_MENU_CONFIG *barcfg, ST_MENU_CONFIG *pdcfg, ST_MENU_ITEM *menu_items)
{
struct ST_MENU *menu;
int maxy, maxx;
Expand Down