diff --git a/ChangeLog b/ChangeLog
index 97fff99e0ab43325ac64fd5faf04cb2bd071b0f7..c06bf6e4405705be3e76d66cb641a2ac34626c7b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -203,6 +203,9 @@ CVS code -
 	- Remove unneeded NANO_SMALL #ifdef, so that it's included
 	  whenever its prototype is, and so it can compile when
 	  DISABLE_OPERATINGDIR isn't defined and NANO_SMALL is. (DLR)
+  do_browser()
+	- Refresh the screen when Ctrl-L is pressed in the file browser,
+	  as Pico does. (DLR)
 - global.c:
   shortcut_init()
 	- Fix misplaced #endif keeping the "Full Justify" shortcut in
diff --git a/src/files.c b/src/files.c
index f0b99de54bd1c5550b0e79b3d4ac1a07c5997f3e..545468960d56c562ad88bfb5cef484a48b1675ba 100644
--- a/src/files.c
+++ b/src/files.c
@@ -2584,6 +2584,11 @@ char *do_browser(char *path, DIR *dir)
 		free_charptrarray(filelist, numents);
 		goto change_browser_directory;
 
+	    /* Refresh the screen. */
+	    case NANO_REFRESH_KEY:
+		total_update();
+		break;
+
 	    /* Go to a specific directory. */
 	    case NANO_GOTOLINE_KEY:
 	    case NANO_GOTOLINE_FKEY:
diff --git a/src/global.c b/src/global.c
index 53f13bc9e91a2dbc9e3cd563105a3bd136614a61..fd84b83e4aa7abe43d2a6736d2ccb4b9a1693b91 100644
--- a/src/global.c
+++ b/src/global.c
@@ -1002,6 +1002,10 @@ void shortcut_init(bool unjustify)
 	IFHELP(nano_nextpage_msg, NANO_NO_KEY), NANO_NEXTPAGE_FKEY,
 	NANO_NO_KEY, VIEW, NULL);
 
+    sc_init_one(&browser_list, NANO_REFRESH_KEY, N_("Refresh"),
+	IFHELP(nano_refresh_msg, NANO_NO_KEY), NANO_NO_KEY,
+	NANO_NO_KEY, VIEW, NULL);
+
     /* Translators: try to keep this string under 22 characters long */
     sc_init_one(&browser_list, NANO_GOTOLINE_KEY, N_("Go To Dir"),
 	IFHELP(nano_gotodir_msg, NANO_GOTOLINE_ALTKEY),