Ticket #12999: patch-fix-12999.patch

File patch-fix-12999.patch, 5.2 KB (added by michael2402, 10 years ago)
  • src/org/openstreetmap/josm/gui/conflict/pair/ConflictResolver.java

    diff --git a/src/org/openstreetmap/josm/gui/conflict/pair/ConflictResolver.java b/src/org/openstreetmap/josm/gui/conflict/pair/ConflictResolver.java
    index 68626a7..2d3fdf4 100644
    a b public class ConflictResolver extends JPanel implements PropertyChangeListener {  
    346346    }
    347347
    348348    /**
     349     * Adds all registered listeners by this conflict resolver
     350     * @see #unregisterListeners()
     351     */
     352    public void registerListeners() {
     353        nodeListMerger.registerListeners();
     354        relationMemberMerger.registerListeners();
     355    }
     356
     357    /**
    349358     * Removes all registered listeners by this conflict resolver
    350359     */
    351360    public void unregisterListeners() {
    352         nodeListMerger.unlinkAsListener();
    353         relationMemberMerger.unlinkAsListener();
     361        nodeListMerger.unregisterListeners();
     362        relationMemberMerger.unregisterListeners();
    354363    }
    355364
    356365    /**
  • src/org/openstreetmap/josm/gui/conflict/pair/ListMerger.java

    diff --git a/src/org/openstreetmap/josm/gui/conflict/pair/ListMerger.java b/src/org/openstreetmap/josm/gui/conflict/pair/ListMerger.java
    index fd0753e..152e17c 100644
    a b public abstract class ListMerger<T extends PrimitiveId> extends JPanel implement  
    882882        );
    883883    }
    884884
    885     public void unlinkAsListener() {
    886         myEntriesTable.unlinkAsListener();
    887         mergedEntriesTable.unlinkAsListener();
    888         theirEntriesTable.unlinkAsListener();
     885    /**
     886     * Adds all registered listeners by this merger
     887     * @see #unregisterListeners()
     888     */
     889    public void registerListeners() {
     890        myEntriesTable.registerListeners();
     891        mergedEntriesTable.registerListeners();
     892        theirEntriesTable.registerListeners();
     893    }
     894
     895    /**
     896     * Removes all registered listeners by this merger
     897     */
     898    public void unregisterListeners() {
     899        myEntriesTable.unregisterListeners();
     900        mergedEntriesTable.unregisterListeners();
     901        theirEntriesTable.unregisterListeners();
    889902    }
    890903
    891904    protected final <P extends OsmPrimitive> OsmDataLayer findLayerFor(P primitive) {
  • src/org/openstreetmap/josm/gui/dialogs/ConflictResolutionDialog.java

    diff --git a/src/org/openstreetmap/josm/gui/dialogs/ConflictResolutionDialog.java b/src/org/openstreetmap/josm/gui/dialogs/ConflictResolutionDialog.java
    index ee637b7..fcd2344 100644
    a b public class ConflictResolutionDialog extends JDialog implements PropertyChangeL  
    5151    }
    5252
    5353    @Override
     54    public void addNotify() {
     55        super.addNotify();
     56        registerListeners();
     57    }
     58
     59    @Override
    5460    public void setVisible(boolean isVisible) {
    5561        String geom = getClass().getName() + ".geometry";
    5662        if (isVisible) {
    public class ConflictResolutionDialog extends JDialog implements PropertyChangeL  
    6167            if (isShowing()) { // Avoid IllegalComponentStateException like in #8775
    6268                new WindowGeometry(this).remember(geom);
    6369            }
    64             unregisterListeners();
    6570        }
    6671        super.setVisible(isVisible);
    6772    }
    public class ConflictResolutionDialog extends JDialog implements PropertyChangeL  
    98103
    99104    private void registerListeners() {
    100105        resolver.addPropertyChangeListener(applyResolutionAction);
     106        resolver.registerListeners();
    101107    }
    102108
    103109    private void unregisterListeners() {
    public class ConflictResolutionDialog extends JDialog implements PropertyChangeL  
    125131
    126132        resolver.addPropertyChangeListener(this);
    127133        HelpUtil.setHelpContext(this.getRootPane(), ht("Dialog/Conflict"));
    128 
    129         registerListeners();
    130134    }
    131135
    132136    /**
  • src/org/openstreetmap/josm/gui/widgets/OsmPrimitivesTable.java

    diff --git a/src/org/openstreetmap/josm/gui/widgets/OsmPrimitivesTable.java b/src/org/openstreetmap/josm/gui/widgets/OsmPrimitivesTable.java
    index fe872d0..cafd6aa 100644
    a b public abstract class OsmPrimitivesTable extends JosmTable {  
    8282    protected JPopupMenu buildPopupMenu() {
    8383        JPopupMenu menu = new JPopupMenu();
    8484        zoomToAction = buildZoomToAction();
    85         Main.getLayerManager().addLayerChangeListener(zoomToAction);
    86         Main.getLayerManager().addActiveLayerChangeListener(zoomToAction);
    8785        getSelectionModel().addListSelectionListener(zoomToAction);
    8886        menu.add(zoomToAction);
    8987        return menu;
    9088    }
    9189
    92     public void unlinkAsListener() {
     90    /**
     91     * Adds all registered listeners by this table
     92     * @see #unregisterListeners()
     93     */
     94    public void registerListeners() {
     95        Main.getLayerManager().addLayerChangeListener(zoomToAction);
     96        Main.getLayerManager().addActiveLayerChangeListener(zoomToAction);
     97    }
     98
     99    /**
     100     * Removes all registered listeners by this table
     101     */
     102    public void unregisterListeners() {
    93103        Main.getLayerManager().removeLayerChangeListener(zoomToAction);
    94104        Main.getLayerManager().removeActiveLayerChangeListener(zoomToAction);
    95105    }