Fixes#10124
Fix up Event Editors Place display for bidi text with Gramps ID (PR 924)
Some versions of Gtk/Pango have trouble with text containing both LTR and RTL characters. The bug notes this shows up in our Event Editor on the 'Place" field, where we have the place displayer title and the Gramps ID concatenated into the same string.
In older versions of Gtk (3.18.9 tested) the bracket around the Gramps ID would get mangled to the beginning of the string:
<images>
In newer versions of Gtk (3.24.3 tested) it was better to start with:
<images>
The older version of Gtk/Pango doesn't seem to properly interpret all of the potential Unicode bidi control characters, so the fix shown is the best I can do. The fixed version of the newer Gtk version is what is desired.
I note that the Place displayer should be fixed up to use more appropriate separators than just commas for RTL text, but that is another issue.
Fixes#11410
The bug submitter noticed that the GEDCOM export contained translated strings in the MEDI lines of his export. GEDCOM should contain English values for most such cases where 'types' are exported.
I scanned the export code for other potential cases, and found:
* Certain unexpected event types on individuals (Marriage)
* Certain unexpected event types on families (Immigration, Residence, etc.)
* Pedigree types that were not standardized on PEDI,_FREL,_MREL (Sponsored, Unknown)
* Family Attributes other than Number if children (Caste, Description, National etc.)
* Personal Attributes other than Caste, Description, ID, National, number of children, SSN (Occupation etc.)
* The MEDI types of this bug report...
Fixes#10762
User "petpil" (Gramps Bugtracker) noted that the Calculate Estimated Dates addon would not expand the size of its window content when the window was stretched. That addon used the ToolManagedWindowBatch which uses a Gtk Notebook to support several tabs. He also submitted a patch which fixes the problem.
The Gtk.Container.add method originally used apparently did not have expand/fill settings to allow the expansion. The Gtk.Box.pack_start used instead does.
I tested this with all the users of ToolManagedWindowBatch and ToolManagedWindow which inherit from ToolManagedWindowBase, and did not see any bad/unexpected side effects. The Calculate Estimated Dates addon was the only one that really could use this, as it was the only one which I spotted using a potentially large widget in the notebook tab.
* Max ages should be divisible by 5 to avoid out of range
errors.
* The chart width should be greater than 45 to look right and
avoid division by zero errors.
Fixes#11384
It turns out the changes was actually changing the wrong config setting...
I had to look this one up. Using a lambda like this is called a 'closure' by some; what is happening is that the value 'constant' is being evaluated at the time the lambda is called, not when it is assigned. So in this particular bit of code the preference setting was actually changing 'preferences.family-relation-type' (the value of the variable 'constant' set a bit after the lambda definition.
I reverted this particular bit of code, as I think this kind of Python knowledge is pretty obscure (I could have just used a different unique name for the 'constant' variable).
Fixes#11390
As it says, if Family Tree name contained non-ASCII characters, the titlebar on Windows would display it wrong. Turned out to be reading of a utf8 file without the 'encoding' set. On Windows this results in using the default encoding which is one of the code pages, NOT utf8.
that passes
If user has only a single font available that passes check for the Genealogical Symbols being all present, the original code crashed. Apparently never tested... #598Fixes#11395
Fixes#11380, #11339
In prior versions of Gramps you could use the undo/redo keys to edit items in the text entries. This no longer works.
This is related to the changes to suppress odd characters and leading/trailing spaces. The Gtk.Entry.set_text() call is effectively clearing the undo/redo list at every keystroke or when you leave the field.
In this PR I move the odd characters cleanup into UndoableEntry.do_insert_text instead of MonitoredEntry.
I scanned the users of MonitoredEntry and they all appeared to use Glade files, I scanned the glade files for anyone using just plain Entry (none found), they all appeared to use UndoableEntry or ValidatableMaskedEntry, so this should cover everyone.
* Narrative web: Ancestor's tree display looks weird
Solves the following:
- Person boxes overlap
- Some person boxes partially visible or hidden
Fixes#11382
* Narrative web: some cleanup in ancestortree.css
* Narrative web : ancestor tree and long names.
* Adapt ancestor tree css file for all themes
Via email a user noted a bug when "Gramps -v" was used with Gtk not installed (and gi was).
When the "gi.require_version('Gtk', '3.0')" was added during Gramps 5.0.0 timeframe, a corresponding exception was not.
Fixes#11366
* Make PedigreeView listen on event update signals.
The PedigreeView was not listening for updates on events, so changes to a birthday or death would not be reflected in the view.
* Remove comment about signal side-effects.
Fixes#11378
For the index, toc, bookmark etc. normal XML escape is correct, the original code also added sub-tags for line break and tab which was NOT correct.
Currently dates and places contain XML special characters (example: birth date
= "1867 <?>"), the item is rendered incorrectly in the report, when images are
included. Escaping special characters with html.escape solves the problem.
Also fixes the & sign in the name, which earlier caused the report to fail.