File tree Expand file tree Collapse file tree 1 file changed +26
-0
lines changed
src/core/src/main/java/org/apache/jmeter/gui/util Expand file tree Collapse file tree 1 file changed +26
-0
lines changed Original file line number Diff line number Diff line change 39
39
import javax .swing .MenuElement ;
40
40
import javax .swing .UIManager ;
41
41
import javax .swing .UIManager .LookAndFeelInfo ;
42
+ import javax .swing .event .MenuEvent ;
43
+ import javax .swing .event .MenuListener ;
42
44
43
45
import org .apache .jmeter .gui .GuiPackage ;
44
46
import org .apache .jmeter .gui .action .ActionNames ;
@@ -532,6 +534,30 @@ private void makeFileMenu() {
532
534
fileLoadRecentFiles .forEach (jc -> recentFilesOpen .add (jc ));
533
535
recentFilesOpen .setEnabled (LoadRecentProject .hasVisibleMenuItem (fileLoadRecentFiles ));
534
536
537
+ // Add menu listener to refresh recent files when menu is selected
538
+ recentFilesOpen .addMenuListener (new MenuListener () {
539
+ @ Override
540
+ public void menuSelected (MenuEvent e ) {
541
+ // Clear existing recent files from menu
542
+ recentFilesOpen .removeAll ();
543
+
544
+ // Reload recent files
545
+ fileLoadRecentFiles = LoadRecentProject .getRecentFileMenuItems ();
546
+ fileLoadRecentFiles .forEach (jc -> recentFilesOpen .add (jc ));
547
+ recentFilesOpen .setEnabled (LoadRecentProject .hasVisibleMenuItem (fileLoadRecentFiles ));
548
+ }
549
+
550
+ @ Override
551
+ public void menuDeselected (MenuEvent e ) {
552
+ // Not needed
553
+ }
554
+
555
+ @ Override
556
+ public void menuCanceled (MenuEvent e ) {
557
+ // Not needed
558
+ }
559
+ });
560
+
535
561
addPluginsMenuItems (fileMenu , menuCreators , MENU_LOCATION .FILE );
536
562
537
563
// When JMeter menu is integrated with macOS system menu, there's no need in extra "exit"
You can’t perform that action at this time.
0 commit comments