diff options
| -rw-r--r-- | nncmpp.c | 23 | 
1 files changed, 22 insertions, 1 deletions
| @@ -1489,7 +1489,11 @@ app_goto_tab (int tab_index)  	XX( GOTO_ITEM_PREVIOUS, "Go to the previous item" ) \  	XX( GOTO_ITEM_NEXT,     "Go to the next item"     ) \  	XX( GOTO_PAGE_PREVIOUS, "Go to the previous page" ) \ -	XX( GOTO_PAGE_NEXT,     "Go to the next page"     ) +	XX( GOTO_PAGE_NEXT,     "Go to the next page"     ) \ +	\ +	XX( GOTO_VIEW_TOP,      "Select the top item"     ) \ +	XX( GOTO_VIEW_CENTER,   "Select the center item"  ) \ +	XX( GOTO_VIEW_BOTTOM,   "Select the bottom item"  )  enum action  { @@ -1675,6 +1679,19 @@ app_process_action (enum action action)  		app_move_selection (app_visible_items ());  		break; +	case ACTION_GOTO_VIEW_TOP: +		g.active_tab->item_selected = g.active_tab->item_top; +		app_move_selection (0); +		break; +	case ACTION_GOTO_VIEW_CENTER: +		g.active_tab->item_selected = g.active_tab->item_top; +		app_move_selection (MAX (0, app_visible_items () / 2 - 1)); +		break; +	case ACTION_GOTO_VIEW_BOTTOM: +		g.active_tab->item_selected = g.active_tab->item_top; +		app_move_selection (MAX (0, app_visible_items () - 1)); +		break; +  // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  	case ACTION_NONE: @@ -1808,6 +1825,10 @@ g_default_bindings[] =  	{ "C-b",        ACTION_GOTO_PAGE_PREVIOUS, {}},  	{ "C-f",        ACTION_GOTO_PAGE_NEXT,     {}}, +	{ "H",          ACTION_GOTO_VIEW_TOP,      {}}, +	{ "M",          ACTION_GOTO_VIEW_CENTER,   {}}, +	{ "L",          ACTION_GOTO_VIEW_BOTTOM,   {}}, +  	// Not sure how to set these up, they're pretty arbitrary so far  	{ "Enter",      ACTION_CHOOSE,             {}},  	{ "Delete",     ACTION_DELETE,             {}}, | 
