@@ -104,6 +104,8 @@ private final class KeyboardShortcuts {
104104 KeyStroke .getInstance (SWT .MOD1 , 'R' ), KeyStroke .getInstance (SWT .MOD1 , 'r' ));
105105 }
106106
107+ public static final String ID_DATA_KEY = "org.eclipse.ui.internal.findreplace.overlay.FindReplaceOverlay.id" ; //$NON-NLS-1$
108+
107109 private static final String REPLACE_BAR_OPEN_DIALOG_SETTING = "replaceBarOpen" ; //$NON-NLS-1$
108110 private static final double WORST_CASE_RATIO_EDITOR_TO_OVERLAY = 0.95 ;
109111 private static final double BIG_WIDTH_RATIO_EDITOR_TO_OVERLAY = 0.7 ;
@@ -117,7 +119,7 @@ private final class KeyboardShortcuts {
117119 private boolean replaceBarOpen ;
118120
119121 private Composite container ;
120- private Button replaceToggle ;
122+ private Button replaceBarToggle ;
121123 private FindReplaceOverlayAction replaceToggleShortcut ;
122124
123125 private Composite contentGroup ;
@@ -130,9 +132,9 @@ private final class KeyboardShortcuts {
130132 private ToolItem wholeWordSearchButton ;
131133 private ToolItem caseSensitiveSearchButton ;
132134 private ToolItem regexSearchButton ;
133- private ToolItem searchUpButton ;
134- private ToolItem searchDownButton ;
135- private ToolItem searchAllButton ;
135+ private ToolItem searchBackwardButton ;
136+ private ToolItem searchForwardButton ;
137+ private ToolItem selectAllButton ;
136138 private AccessibleToolBar closeTools ;
137139 private ToolItem closeButton ;
138140
@@ -370,6 +372,7 @@ public int open() {
370372 }
371373 overlayOpen = true ;
372374 applyOverlayColors (backgroundToUse , true );
375+ assignIDs ();
373376 updateFromTargetSelection ();
374377 searchBar .forceFocus ();
375378
@@ -391,6 +394,25 @@ private void restoreOverlaySettings() {
391394 }
392395 }
393396
397+ @ SuppressWarnings ("nls" )
398+ private void assignIDs () {
399+ replaceBarToggle .setData (ID_DATA_KEY , "replaceBarToggle" );
400+ searchBar .setData (ID_DATA_KEY , "searchInput" );
401+ searchBackwardButton .setData (ID_DATA_KEY , "searchBackward" );
402+ searchForwardButton .setData (ID_DATA_KEY , "searchForward" );
403+ selectAllButton .setData (ID_DATA_KEY , "selectAll" );
404+ searchInSelectionButton .setData (ID_DATA_KEY , "searchInSelection" );
405+ wholeWordSearchButton .setData (ID_DATA_KEY , "wholeWordSearch" );
406+ regexSearchButton .setData (ID_DATA_KEY , "regExSearch" );
407+ caseSensitiveSearchButton .setData (ID_DATA_KEY , "caseSensitiveSearch" );
408+
409+ if (replaceBarOpen ) {
410+ replaceBar .setData (ID_DATA_KEY , "replaceInput" );
411+ replaceButton .setData (ID_DATA_KEY , "replaceOne" );
412+ replaceAllButton .setData (ID_DATA_KEY , "replaceAll" );
413+ }
414+ }
415+
394416 private void applyOverlayColors (Color color , boolean tryToColorReplaceBar ) {
395417 closeTools .setBackground (color );
396418 closeButton .setBackground (color );
@@ -400,9 +422,9 @@ private void applyOverlayColors(Color color, boolean tryToColorReplaceBar) {
400422 wholeWordSearchButton .setBackground (color );
401423 regexSearchButton .setBackground (color );
402424 caseSensitiveSearchButton .setBackground (color );
403- searchAllButton .setBackground (color );
404- searchUpButton .setBackground (color );
405- searchDownButton .setBackground (color );
425+ selectAllButton .setBackground (color );
426+ searchBackwardButton .setBackground (color );
427+ searchForwardButton .setBackground (color );
406428
407429 searchBarContainer .setBackground (color );
408430 searchBar .setBackground (color );
@@ -511,20 +533,20 @@ private void createSearchTools() {
511533
512534 searchTools .createToolItem (SWT .SEPARATOR );
513535
514- searchUpButton = new AccessibleToolItemBuilder (searchTools ).withStyleBits (SWT .PUSH )
536+ searchBackwardButton = new AccessibleToolItemBuilder (searchTools ).withStyleBits (SWT .PUSH )
515537 .withImage (FindReplaceOverlayImages .get (FindReplaceOverlayImages .KEY_FIND_PREV ))
516538 .withToolTipText (FindReplaceMessages .FindReplaceOverlay_upSearchButton_toolTip )
517539 .withOperation (() -> performSearch (false ))
518540 .withShortcuts (KeyboardShortcuts .SEARCH_BACKWARD ).build ();
519541
520- searchDownButton = new AccessibleToolItemBuilder (searchTools ).withStyleBits (SWT .PUSH )
542+ searchForwardButton = new AccessibleToolItemBuilder (searchTools ).withStyleBits (SWT .PUSH )
521543 .withImage (FindReplaceOverlayImages .get (FindReplaceOverlayImages .KEY_FIND_NEXT ))
522544 .withToolTipText (FindReplaceMessages .FindReplaceOverlay_downSearchButton_toolTip )
523545 .withOperation (() -> performSearch (true ))
524546 .withShortcuts (KeyboardShortcuts .SEARCH_FORWARD ).build ();
525- searchDownButton .setSelection (true ); // by default, search down
547+ searchForwardButton .setSelection (true ); // by default, search down
526548
527- searchAllButton = new AccessibleToolItemBuilder (searchTools ).withStyleBits (SWT .PUSH )
549+ selectAllButton = new AccessibleToolItemBuilder (searchTools ).withStyleBits (SWT .PUSH )
528550 .withImage (FindReplaceOverlayImages .get (FindReplaceOverlayImages .KEY_SEARCH_ALL ))
529551 .withToolTipText (FindReplaceMessages .FindReplaceOverlay_searchAllButton_toolTip )
530552 .withOperation (this ::performSelectAll ).withShortcuts (KeyboardShortcuts .SEARCH_ALL ).build ();
@@ -714,24 +736,24 @@ private void createMainContainer(final Composite parent) {
714736 private void createReplaceToggle () {
715737 replaceToggleShortcut = new FindReplaceOverlayAction (this ::toggleReplace );
716738 replaceToggleShortcut .addShortcuts (KeyboardShortcuts .TOGGLE_REPLACE );
717- replaceToggle = new Button (container , SWT .FLAT | SWT .PUSH );
739+ replaceBarToggle = new Button (container , SWT .FLAT | SWT .PUSH );
718740 GridDataFactory .fillDefaults ().grab (false , true ).align (GridData .BEGINNING , GridData .FILL )
719- .applyTo (replaceToggle );
720- replaceToggle .setToolTipText (replaceToggleShortcut
741+ .applyTo (replaceBarToggle );
742+ replaceBarToggle .setToolTipText (replaceToggleShortcut
721743 .addShortcutHintToTooltipText (FindReplaceMessages .FindReplaceOverlay_replaceToggle_toolTip ));
722- replaceToggle .setImage (FindReplaceOverlayImages .get (FindReplaceOverlayImages .KEY_OPEN_REPLACE_AREA ));
723- replaceToggle .addSelectionListener (SelectionListener .widgetSelectedAdapter (e -> toggleReplace ()));
744+ replaceBarToggle .setImage (FindReplaceOverlayImages .get (FindReplaceOverlayImages .KEY_OPEN_REPLACE_AREA ));
745+ replaceBarToggle .addSelectionListener (SelectionListener .widgetSelectedAdapter (e -> toggleReplace ()));
724746 }
725747
726748 private void toggleReplace () {
727749 if (!replaceBarOpen && findReplaceLogic .getTarget ().isEditable ()) {
728750 createReplaceDialog ();
729- replaceToggle .setImage (FindReplaceOverlayImages .get (FindReplaceOverlayImages .KEY_CLOSE_REPLACE_AREA ));
751+ replaceBarToggle .setImage (FindReplaceOverlayImages .get (FindReplaceOverlayImages .KEY_CLOSE_REPLACE_AREA ));
730752 } else {
731753 hideReplace ();
732- replaceToggle .setImage (FindReplaceOverlayImages .get (FindReplaceOverlayImages .KEY_OPEN_REPLACE_AREA ));
754+ replaceBarToggle .setImage (FindReplaceOverlayImages .get (FindReplaceOverlayImages .KEY_OPEN_REPLACE_AREA ));
733755 }
734- replaceToggle .setSelection (false ); // We don't want the button to look "locked in", so don't
756+ replaceBarToggle .setSelection (false ); // We don't want the button to look "locked in", so don't
735757 // use it's selectionState
736758 updateContentAssistAvailability ();
737759 }
@@ -759,6 +781,7 @@ private void createReplaceDialog() {
759781
760782 updatePlacementAndVisibility ();
761783 applyOverlayColors (backgroundToUse , true );
784+ assignIDs ();
762785 replaceBar .forceFocus ();
763786 }
764787
@@ -774,12 +797,12 @@ private void enableSearchTools(boolean enable) {
774797 }
775798
776799 private void enableReplaceToggle (boolean enable ) {
777- if (!okayToUse (replaceToggle )) {
800+ if (!okayToUse (replaceBarToggle )) {
778801 return ;
779802 }
780803 boolean visible = enable && findReplaceLogic .getTarget ().isEditable ();
781- ((GridData ) replaceToggle .getLayoutData ()).exclude = !visible ;
782- replaceToggle .setVisible (visible );
804+ ((GridData ) replaceBarToggle .getLayoutData ()).exclude = !visible ;
805+ replaceBarToggle .setVisible (visible );
783806 }
784807
785808 private void enableReplaceTools (boolean enable ) {
@@ -822,8 +845,8 @@ private int calculateOverlayWidthWithToolbars(String searchInput) {
822845
823846 private int calculateOverlayWidthWithoutToolbars (String searchInput ) {
824847 int replaceToggleWidth = 0 ;
825- if (okayToUse (replaceToggle )) {
826- replaceToggleWidth = replaceToggle .getBounds ().width ;
848+ if (okayToUse (replaceBarToggle )) {
849+ replaceToggleWidth = replaceBarToggle .getBounds ().width ;
827850 }
828851 int closeButtonWidth = closeTools .getSize ().x ;
829852 int searchInputWidth = getTextWidthInSearchBar (searchInput );
0 commit comments