@@ -1407,40 +1407,55 @@ public void actionPerformed(ActionEvent e) {
1407
1407
1408
1408
item = newJMenuItem (_ ("Find..." ), 'F' );
1409
1409
item .addActionListener (new ActionListener () {
1410
- public void actionPerformed (ActionEvent e ) {
1411
- if (find == null ) {
1412
- find = new FindReplace (Editor .this );
1413
- }
1414
- if (getSelectedText ()!= null ) find .setFindText ( getSelectedText () );
1415
- //new FindReplace(Editor.this).show();
1416
- find .setLocationRelativeTo (Editor .this );
1417
- find .setVisible (true );
1418
- //find.setVisible(true);
1410
+ public void actionPerformed (ActionEvent e ) {
1411
+ if (find == null ) {
1412
+ find = new FindReplace (Editor .this );
1419
1413
}
1420
- });
1414
+ if (!OSUtils .isMacOS () && getSelectedText () != null ) {
1415
+ find .setFindText (getSelectedText ());
1416
+ }
1417
+ find .setLocationRelativeTo (Editor .this );
1418
+ find .setVisible (true );
1419
+ }
1420
+ });
1421
1421
menu .add (item );
1422
1422
1423
- // TODO find next should only be enabled after a
1424
- // search has actually taken place
1425
1423
item = newJMenuItem (_ ("Find Next" ), 'G' );
1426
1424
item .addActionListener (new ActionListener () {
1427
- public void actionPerformed (ActionEvent e ) {
1428
- if (find != null ) {
1429
- find .findNext ();
1430
- }
1425
+ public void actionPerformed (ActionEvent e ) {
1426
+ if (find != null ) {
1427
+ find .findNext ();
1431
1428
}
1432
- });
1429
+ }
1430
+ });
1433
1431
menu .add (item );
1434
1432
1435
1433
item = newJMenuItemShift (_ ("Find Previous" ), 'G' );
1436
1434
item .addActionListener (new ActionListener () {
1435
+ public void actionPerformed (ActionEvent e ) {
1436
+ if (find != null ) {
1437
+ find .findPrevious ();
1438
+ }
1439
+ }
1440
+ });
1441
+ menu .add (item );
1442
+
1443
+ if (OSUtils .isMacOS ()) {
1444
+ item = newJMenuItem (_ ("Use Selection For Find" ), 'E' );
1445
+ item .addActionListener (new ActionListener () {
1437
1446
public void actionPerformed (ActionEvent e ) {
1438
- if (find ! = null ) {
1439
- find . findPrevious ( );
1447
+ if (find = = null ) {
1448
+ find = new FindReplace ( Editor . this );
1440
1449
}
1450
+ if (getSelectedText () != null ) {
1451
+ find .setFindText (getSelectedText ());
1452
+ }
1453
+ find .setLocationRelativeTo (Editor .this );
1454
+ find .setVisible (true );
1441
1455
}
1442
1456
});
1443
- menu .add (item );
1457
+ menu .add (item );
1458
+ }
1444
1459
1445
1460
return menu ;
1446
1461
}
0 commit comments