@@ -1407,40 +1407,55 @@ public void actionPerformed(ActionEvent e) {
14071407
14081408 item = newJMenuItem (_ ("Find..." ), 'F' );
14091409 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 );
14191413 }
1420- });
1414+ if (!OSUtils .isMacOS () && getSelectedText () != null ) {
1415+ find .setFindText (getSelectedText ());
1416+ }
1417+ find .setLocationRelativeTo (Editor .this );
1418+ find .setVisible (true );
1419+ }
1420+ });
14211421 menu .add (item );
14221422
1423- // TODO find next should only be enabled after a
1424- // search has actually taken place
14251423 item = newJMenuItem (_ ("Find Next" ), 'G' );
14261424 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 ();
14311428 }
1432- });
1429+ }
1430+ });
14331431 menu .add (item );
14341432
14351433 item = newJMenuItemShift (_ ("Find Previous" ), 'G' );
14361434 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 () {
14371446 public void actionPerformed (ActionEvent e ) {
1438- if (find ! = null ) {
1439- find . findPrevious ( );
1447+ if (find = = null ) {
1448+ find = new FindReplace ( Editor . this );
14401449 }
1450+ if (getSelectedText () != null ) {
1451+ find .setFindText (getSelectedText ());
1452+ }
1453+ find .setLocationRelativeTo (Editor .this );
1454+ find .setVisible (true );
14411455 }
14421456 });
1443- menu .add (item );
1457+ menu .add (item );
1458+ }
14441459
14451460 return menu ;
14461461 }
0 commit comments