patch 8.2.1578: Vim9: popup_clear() does not take "true" as argument

Problem:    Vim9: popup_clear() does not take "true" as argument.
Solution:   Use tv_get_bool(). (closes #6826)
diff --git a/src/popupwin.c b/src/popupwin.c
index 053d6d3..953e76c 100644
--- a/src/popupwin.c
+++ b/src/popupwin.c
@@ -2125,7 +2125,7 @@
     int force = FALSE;
 
     if (argvars[0].v_type != VAR_UNKNOWN)
-	force = (int)tv_get_number(&argvars[0]);
+	force = (int)tv_get_bool(&argvars[0]);
     close_all_popups(force);
 }
 
diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim
index 1aebe05..9e35c7f 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -2559,20 +2559,23 @@
 
 func Test_popupwin_close_prevwin()
   CheckFeature terminal
+  call Popupwin_close_prevwin()
+endfunc
 
-  call assert_equal(1, winnr('$'))
+def Popupwin_close_prevwin()
+  assert_equal(1, winnr('$'))
   split
   wincmd b
-  call assert_equal(2, winnr())
+  assert_equal(2, winnr())
   let buf = term_start(&shell, #{hidden: 1})
-  call popup_create(buf, {})
-  call TermWait(buf, 100)
-  call popup_clear(1)
-  call assert_equal(2, winnr())
+  popup_create(buf, {})
+  TermWait(buf, 100)
+  popup_clear(true)
+  assert_equal(2, winnr())
 
   quit
   exe 'bwipe! ' .. buf
-endfunc
+enddef
 
 func Test_popupwin_with_buffer_and_filter()
   new Xwithfilter
diff --git a/src/version.c b/src/version.c
index 5232e84..12d49bb 100644
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1578,
+/**/
     1577,
 /**/
     1576,