patch 8.1.2193: popup_setoptions(popup_getoptions()) does not work

Problem:    Popup_setoptions(popup_getoptions()) does not work.
Solution:   Also accept a list with three entries for "moved" and
            "mousemoved". (closes #5081)
diff --git a/src/popupwin.c b/src/popupwin.c
index 95435f8..a957932 100644
--- a/src/popupwin.c
+++ b/src/popupwin.c
@@ -493,12 +493,28 @@
     }
     else if (di->di_tv.v_type == VAR_LIST
 	    && di->di_tv.vval.v_list != NULL
-	    && di->di_tv.vval.v_list->lv_len == 2)
+	    && (di->di_tv.vval.v_list->lv_len == 2
+	     || di->di_tv.vval.v_list->lv_len == 3))
     {
-	list_T	*l = di->di_tv.vval.v_list;
-	int	mincol = tv_get_number(&l->lv_first->li_tv);
-	int	maxcol = tv_get_number(&l->lv_first->li_next->li_tv);
+	list_T	    *l = di->di_tv.vval.v_list;
+	listitem_T  *li = l->lv_first;
+	int	    mincol;
+	int	    maxcol;
 
+	if (di->di_tv.vval.v_list->lv_len == 3)
+	{
+	    varnumber_T nr = tv_get_number(&l->lv_first->li_tv);
+
+	    // Three numbers, might be from popup_getoptions().
+	    if (mousemoved)
+		wp->w_popup_mouse_row = nr;
+	    else
+		wp->w_popup_lnum = nr;
+	    li = li->li_next;
+	}
+
+	mincol = tv_get_number(&li->li_tv);
+	maxcol = tv_get_number(&li->li_next->li_tv);
 	if (mousemoved)
 	{
 	    wp->w_popup_mouse_mincol = mincol;