* Narrative web: Sort problem with places.
Fixes#10868.
Places list is not sorted depending on the selected language.
If you start gramps in english or another language then try to generated
a narrative web report in another language, the navigation alphabet is
incorrect. This is true for the place list and the person list.
The problem was related to pyICU.
* Narrative web: some pylint improvement.
The updated uimanager and managedwindow uses the plugin id to create actions for plugins that make a window to support the menus. If the plugin id contains a space, Gramps crashes.
Fixes#11202
If you click on a marker in the family map page, you get a popup.
In this popup associated with a place, if you have several events,
for each event you see the person and the event type.
If you click on the person, you go to the related page for this person.
If you click on the event type, you go to the related page for this event.
Fixes#11150
After asking the OSM support, I was told OSM forward all http request to
https when we use .org url.
So it should work in all cases.
This has an energy cost, so it would be good for the planet to change
http to https.
* Avoid comma in a lat/lon entry field.
* Be more precise on the tooltip text.
* conv_lat_lon should not accept comma in lat/lon
* Tests failed with comma in lat/lon
* geoplaces fails to center if bad lat/lon
In this patch:
1 - If you copy/paste strings from another application,
you can add CR, LF, TAB and other special characters. I remove them.
2 - suppress all leading and trailing spaces for these entry field.
Check all values of an attribute type and not only the first one.
Check all values of an attribute type. If a person has several attributes with the same type/key the current behaviour is that only the first value is checked.
Example Person X Atrributes:
(Key=occupation: Value=farmer)
(Key=occupation: Value=soldier)
(Key=occupation: Value=smith)
=> Currently: Filter 'persons with attribut' (Key=occupation, Value=farmer) returns Person X, but no return of Perrson X for (Key=occupation, Value=soldier) or (Key=occupation: Value=smith).
=> After fix: Person X is returned for all three filter searches.