Modify

Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#20123 closed defect (fixed)

"null" Preference Tab

Reported by: mdk Owned by: team
Priority: normal Milestone: 20.12
Component: Core Version: tested
Keywords: template_report Cc: OliverW

Description (last modified by mdk)

What steps will reproduce the problem?

  1. Start JOSM
  2. Open Preference Window

What is the expected result?

See all the preference tabs.

What happens instead?

Before "Advanced Preferences" there is a tab called "null" which vanish if I click on it. Next time I open the Preference window again, the "null" tab appears again.

Please provide any additional information below. Attach a screenshot if possible.

Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2020-11-18 20:16:58 +0100 (Wed, 18 Nov 2020)
Revision:17323
Build-Date:2020-11-19 02:30:51
URL:https://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (17323 en) Linux Ubuntu 20.10
Memory Usage: 331 MB / 1980 MB (140 MB allocated, but free)
Java version: 14.0.2+12-Ubuntu-1, Private Build, OpenJDK 64-Bit Server VM
Look and Feel: javax.swing.plaf.metal.MetalLookAndFeel
Screen: :0.0 3840x2160 (scaling 1.0x1.0)
Maximum Screen Size: 3840x2160
Best cursor sizes: 16x16 -> 16x16, 32x32 -> 32x32
Desktop environment: ubuntu:GNOME
Java ATK Wrapper package: libatk-wrapper-java:all-0.38.0-1
Environment variable LANG: de_CH.UTF-8
libcommons-compress-java: libcommons-compress-java:all-1.20-1
libcommons-logging-java: libcommons-logging-java:all-1.2-2
fonts-noto: fonts-noto:-
VM arguments: [--add-modules=java.scripting,java.sql, -Djosm.restart=true, -Djosm.dir.name=JOSM-latest, -Djava.net.useSystemProxies=true]

Plugins:
+ ColumbusCSV (35640)
+ FastDraw (35640)
+ HouseNumberTaggingTool (35640)
+ OpeningHoursEditor (35640)
+ RoadSigns (35640)
+ SimplifyArea (35640)
+ buildings_tools (35640)
+ contourmerge (v0.1.6)
+ imagery-xml-bounds (35640)
+ imagery_offset_db (35640)
+ pbf (35640)
+ poly (35640)
+ public_transport (35640)
+ reltoolbox (35640)
+ reverter (35640)
+ terracer (35640)
+ turnrestrictions (35640)
+ utilsplugin2 (35640)
+ wikipedia (1.1.4)

Tagging presets:
+ https://josm.openstreetmap.de/josmfile?page=Presets/OneClick&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Presets/LaneAttributes&preset&zip=1

Map paint styles:
+ https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1
+ https://josm.openstreetmap.de/josmfile?page=Styles/Maxspeed&style&zip=1

Attachments (3)

null preference.png (13.2 KB ) - added by mdk 4 years ago.
20123.patch (1.3 KB ) - added by GerdP 4 years ago.
log error and ignore preference is a TabPreferenceSetting which doesn't provide an icon
20123-columbusCSV-no-dialog.patch (3.8 KB ) - added by GerdP 4 years ago.
remove dead dialog code from columbusCSV

Download all attachments as: .zip

Change History (16)

by mdk, 4 years ago

Attachment: null preference.png added

comment:1 by mdk, 4 years ago

Description: modified (diff)

comment:2 by simon04, 4 years ago

Without installed plugins, the "null" tab is not present. Can you figure out which plugin causes the "null" tab (by sequentially disabling your plugins)? Thank you!

comment:3 by skyper, 4 years ago

I have no problems with these plugins among other.

Plugins:
+ imagery_offset_db (35640)
+ reverter (35640)
+ terracer (35640)
+ utilsplugin2 (35640)

comment:4 by mdk, 4 years ago

OK, the guilty plugin is:
+ ColumbusCSV (35640)
It is for a GPS tracker, I used some time ago.

This also solved #19825.

comment:5 by GerdP, 4 years ago

Plugin FixAdresses also doesn't set a title (doesn't overwrite the constructor of DefaultTabPreferenceSetting)'

comment:6 by GerdP, 4 years ago

I guess we should fix both plugins and there should also be better code to handle this null value in PreferenceDialog?
The problem also exists with r17084, but there it doesn't show the "null" string in the tab.

comment:7 by GerdP, 4 years ago

Ticket #20136 has been marked as a duplicate of this ticket.

by GerdP, 4 years ago

Attachment: 20123.patch added

log error and ignore preference is a TabPreferenceSetting which doesn't provide an icon

comment:8 by GerdP, 4 years ago

Don't know if this is the right approach. The two plugins both use this constructor which sets a null icon:

    /**
     * Constructs a new {@code DefaultTabPreferenceSetting}.
     */
    protected DefaultTabPreferenceSetting() {
        this(null, null, null);
    }

This doesn't work well since years, at least since r14153. So, either nobody needs the settings of these plugins or maybe even the plugins are not used?

comment:9 by mdk, 4 years ago

The Wiki for ColumbusCSV https://wiki.openstreetmap.org/wiki/JOSM/Plugins/ColumbusCSV has a section "Settings", but they only show how to change them in "Advanced Preferences". So it looks like this Plugin has preferences, but not in a separate tab.

comment:10 by skyper, 4 years ago

Cc: OliverW added
Version: tested

comment:11 by GerdP, 4 years ago

So it looks like this Plugin has preferences, but not in a separate tab.

Well, it creates a dialog but without an icon and this dialog is discarded when you click on the "null" tab:
source:osm/applications/editors/josm/plugins/ColumbusCSV/src/org/openstreetmap/josm/plugins/columbusCSV/ColumbusCSVPreferences.java
I tried to change the code so that an icon is set (and that works) but the tab still vanishes when I click on it.
So, one option is to remove the code that doesn't work (easy), another would be to make it work.

by GerdP, 4 years ago

remove dead dialog code from columbusCSV

comment:12 by GerdP, 4 years ago

Resolution: fixed
Status: newclosed

In 17424/josm:

fix #20123: "null" Preference Tab

  • log error and ignore preference is a TabPreferenceSetting which doesn't provide an icon

comment:13 by GerdP, 4 years ago

Milestone: 20.12

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.