This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

View | Details | Raw Unified | Return to bug 91893
Collapse All | Expand All

(-)EditorBracesMatching/src/org/netbeans/modules/editor/bracesmatching/ControlPanel.java (-2 / +2 lines)
Lines 25-32 Link Here
25
public class ControlPanel extends javax.swing.JPanel {
25
public class ControlPanel extends javax.swing.JPanel {
26
    
26
    
27
    private static String [][] SEARCH_DIRECTIONS = new String [][] {
27
    private static String [][] SEARCH_DIRECTIONS = new String [][] {
28
        new String [] { MasterMatcher.D_BACKWARD, "Backward Only" }, //NOI18N
28
        new String [] { MasterMatcher.D_BACKWARD, "Backward" }, //NOI18N
29
        new String [] { MasterMatcher.D_FORWARD, "Forward Only" }, //NOI18N
29
        new String [] { MasterMatcher.D_FORWARD, "Forward" }, //NOI18N
30
        new String [] { MasterMatcher.D_BOTH, "Both" }, //NOI18N
30
        new String [] { MasterMatcher.D_BOTH, "Both" }, //NOI18N
31
    };
31
    };
32
    
32
    
(-)EditorBracesMatching/src/org/netbeans/modules/editor/bracesmatching/MasterMatcher.java (-10 / +26 lines)
Lines 401-417 Link Here
401
                BracesMatcher [] matcher = new BracesMatcher[1];
401
                BracesMatcher [] matcher = new BracesMatcher[1];
402
402
403
                if (D_BACKWARD.equalsIgnoreCase(allowedDirection.toString())) {
403
                if (D_BACKWARD.equalsIgnoreCase(allowedDirection.toString())) {
404
                    if (B_BACKWARD.equalsIgnoreCase(caretBias.toString())) {
404
                    if((origin = findOrigin(B_BACKWARD, factories, matcher)) == null)
405
                        origin = findOrigin(factories, 0, true, matcher);
405
                        origin = findOrigin(B_FORWARD, factories, matcher);
406
                    } else {
407
                        origin = findOrigin(factories, 1, true, matcher);
408
                    }
409
                } else if (D_FORWARD.equalsIgnoreCase(allowedDirection.toString())) {
406
                } else if (D_FORWARD.equalsIgnoreCase(allowedDirection.toString())) {
410
                    if (B_BACKWARD.equalsIgnoreCase(caretBias.toString())) {
407
                    if((origin = findOrigin(B_FORWARD, factories, matcher)) == null)
411
                        origin = findOrigin(factories, -1, false, matcher);
408
                        origin = findOrigin(B_BACKWARD, factories, matcher);
412
                    } else {
413
                        origin = findOrigin(factories, 0, false, matcher);
414
                    }
415
                } else {
409
                } else {
416
                    boolean firstBackward;
410
                    boolean firstBackward;
417
                    int caretAdjustment;
411
                    int caretAdjustment;
Lines 461-466 Link Here
461
                // We were interrupted, no results
455
                // We were interrupted, no results
462
                interrupted = true;
456
                interrupted = true;
463
            }
457
            }
458
        }
459
460
        private int [] findOrigin(
461
            String direction,
462
            Collection<? extends BracesMatcherFactory> factories, 
463
            BracesMatcher [] matcher
464
        ) throws InterruptedException {
465
            int[] origin = null;
466
            if (D_BACKWARD == direction) {
467
                if (B_BACKWARD.equalsIgnoreCase(caretBias.toString())) {
468
                    origin = findOrigin(factories, 0, true, matcher);
469
                } else {
470
                    origin = findOrigin(factories, 1, true, matcher);
471
                }
472
            } else if (D_FORWARD == direction) {
473
                if (B_BACKWARD.equalsIgnoreCase(caretBias.toString())) {
474
                    origin = findOrigin(factories, -1, false, matcher);
475
                } else {
476
                    origin = findOrigin(factories, 0, false, matcher);
477
                }
478
            }
479
            return origin;
464
        }
480
        }
465
481
466
        private Collection<? extends BracesMatcherFactory> findFactories() {
482
        private Collection<? extends BracesMatcherFactory> findFactories() {

Return to bug 91893