Ticket #5209: SelectionListDialog-queueTitle.patch

File SelectionListDialog-queueTitle.patch, 2.5 KB (added by doctau, 16 years ago)

possible patch

  • src/org/openstreetmap/josm/gui/dialogs/SelectionListDialog.java

     
    5858import org.openstreetmap.josm.data.osm.event.DataChangedEvent;
    5959import org.openstreetmap.josm.data.osm.event.DataSetListener;
    6060import org.openstreetmap.josm.data.osm.event.DatasetEventManager;
     61import org.openstreetmap.josm.data.osm.event.DatasetEventManager.FireMode;
    6162import org.openstreetmap.josm.data.osm.event.NodeMovedEvent;
    6263import org.openstreetmap.josm.data.osm.event.PrimitivesAddedEvent;
    6364import org.openstreetmap.josm.data.osm.event.PrimitivesRemovedEvent;
     
    6566import org.openstreetmap.josm.data.osm.event.SelectionEventManager;
    6667import org.openstreetmap.josm.data.osm.event.TagsChangedEvent;
    6768import org.openstreetmap.josm.data.osm.event.WayNodesChangedEvent;
    68 import org.openstreetmap.josm.data.osm.event.DatasetEventManager.FireMode;
    6969import org.openstreetmap.josm.data.osm.visitor.BoundingXYVisitor;
    7070import org.openstreetmap.josm.gui.DefaultNameFormatter;
    7171import org.openstreetmap.josm.gui.MapView;
     72import org.openstreetmap.josm.gui.MapView.EditLayerChangeListener;
    7273import org.openstreetmap.josm.gui.OsmPrimitivRenderer;
    7374import org.openstreetmap.josm.gui.SideButton;
    74 import org.openstreetmap.josm.gui.MapView.EditLayerChangeListener;
    7575import org.openstreetmap.josm.gui.dialogs.relation.DownloadRelationMemberTask;
    7676import org.openstreetmap.josm.gui.dialogs.relation.RelationEditor;
    7777import org.openstreetmap.josm.gui.layer.OsmDataLayer;
     
    9999    private DownloadSelectedIncompleteMembersAction actDownloadSelectedIncompleteMembers;
    100100    private InspectAction actInspect;
    101101
     102    private boolean titleDirty;
     103
    102104    /**
    103105     * Builds the panel with the list of selected OSM primitives
    104106     *
     
    274276     */
    275277    class TitleUpdater implements ListDataListener {
    276278        protected void updateTitle() {
    277             setTitle(model.getJOSMSelectionSummary());
     279            if (!titleDirty) {
     280                titleDirty = true;
     281
     282                // queue title update
     283                SwingUtilities.invokeLater(new Runnable() {
     284                    public void run() {
     285                        setTitle(model.getJOSMSelectionSummary());
     286                        titleDirty = false;
     287                    }
     288                });
     289            }
    278290        }
    279291
    280292        public void contentsChanged(ListDataEvent e) {