[xiphos-source] [crosswire/xiphos] c5a137: Fix font preferences dialog UI issues (#911) (#1279)
LAfricain
noreply at github.com
Wed Mar 11 20:06:30 EDT 2026
Branch: refs/heads/master
Home: https://github.com/crosswire/xiphos
Commit: c5a137fd065fb946f24293deda55c53771e84bdf
https://github.com/crosswire/xiphos/commit/c5a137fd065fb946f24293deda55c53771e84bdf
Author: L'Africain <fr.cyrille at tiberiade.be>
Date: 2026-03-11 (Wed, 11 Mar 2026)
Changed paths:
M po/fr.po
M po/it.po
M po/xiphos.pot
M src/gtk/dictlex.c
M src/gtk/font_dialog.c
M src/gtk/main_menu.c
M src/gtk/main_window.c
M src/gtk/preferences_dialog.c
M src/gtk/xiphos.c
M src/gui/dictlex.h
M src/gui/main_window.h
M src/gui/preferences_dialog.h
M src/gui/widgets.h
M src/main/module_dialogs.cc
M src/main/settings.c
M src/main/settings.h
M src/main/sword.cc
M src/main/sword.h
M src/main/url.cc
M ui/prefs.glade
M ui/prefs.gtkbuilder
Log Message:
-----------
Fix font preferences dialog UI issues (#911) (#1279)
* New help translation for it. Minor correction for French and Italian i18n.
* New strings translated
* Correction of some errors from the last commit
* Solves issue #1104, Three new fields added to preferences, Special for morphological dictionaries
* Fixed issue with dictionary choices not persisting #1104
* Added a new tab for devotional. CSS support. Resolves issue #1010
* Fixes the issue with the dictionary appearing in the devotional tab. And opens the correct tab directly when clicking on a dictionary or devotional.
* Addition of arrows for history navigation, solves issue #732
* Added a calendar display option for the daily devotional. The calendar is displayed according to local time zones. This is an improvement to issue #1010.
* Pot file updated with new features words. French and Italian updated
* Fix Windows build error in sword.cc (missing langinfo.h)
* Fix Windows link error by guarding GtkPopover with version check
* fix: use GDK_SELECTION_PRIMARY instead of GDK_SELECTION_CLIPBOARD for dictionary lookup on double-click
When double-clicking a word to look it up in the dictionary, Xiphos was
reading GDK_SELECTION_CLIPBOARD, which is filled asynchronously by the
WebKit COPY command. This caused a timing issue where the previous word
was looked up instead of the newly selected one.
The fix reads GDK_SELECTION_PRIMARY instead, which X11 fills
automatically and synchronously when the user double-clicks a word,
making it immediately available for the dictionary lookup.
The now-redundant WebKit COPY block (#ifdef USE_WEBKIT2 ... #endif) has
also been removed as it is no longer needed for this functionality.
Fixes #1212
* Fix #1091: show commentary introductions in chapter display
Commentary modules like MHC store introduction text as entry
attributes (Heading/Preverse) like Bible modules do, but
GTKEntryDisp::displayByChapter() never called CacheHeader()
to retrieve and display them.
Add CacheHeader() call in the verse loop of displayByChapter()
to match the existing behavior in GTKChapDisp::display().
* Fix #1091: show commentary introductions in chapter display
Commentary modules like MHC store introduction text as entry
attributes (Heading/Preverse) like Bible modules do, but
GTKEntryDisp::displayByChapter() never called CacheHeader()
to retrieve and display them.
Add CacheHeader() call in the verse loop of displayByChapter()
to match the existing behavior in GTKChapDisp::display().
* Fix: show chapter introduction after chapter title, not before
In getVerseBefore(), the intro material was appended before the
chapter title (display_chapter_N block), causing introductions
to appear above the chapter number. Swap the two blocks so the
chapter title is displayed first, followed by the introduction,
matching the OSIS spec where <div type="introduction"> follows
<chapter sID/>.
* Fix parallel tab navigation broken after changing modules in preferences
Root causes:
1. navbar_parallel was defined three times (parallel_tab.c,
parallel_dialog.c, navbar_versekey_parallel.c), causing each
file to use its own separate instance. This also caused a
duplicate navigation bar to appear when opening the parallel
tab, as each definition created its own navbar widget. Fixed
by keeping the single definition in navbar_versekey_parallel.c
and using extern in the other two files, ensuring a single
navbar is created and displayed.
2. ps_button_cut() stored abbreviations in settings.parallel_list
instead of full module names (the treeview column 1 stores
abbreviations). After a cut, backend->get_SWModule() received
an abbreviation and returned NULL, silently breaking all
navigation. Fixed by converting abbreviations back to full
names after g_strsplit().
3. After changing parallel modules in preferences, navbar_parallel
.module_name was not updated to reflect the new module list.
Added gui_navbar_parallel_set_module() to update it, called
from on_dialog_prefs_response() and on_dialog_prefs_close().
Fixes: #1088
Related: #1272
* Fix missing include for gui_navbar_parallel_set_module
* prefs: add drag-and-drop reordering and double-click adding of parallel versions (fixes #702)
* correction de Vue en Aperçu
* Fix font preferences dialog UI issues (#911)
- Reset language selector to "-- Select --" after each selection,
allowing the font dialog to be triggered again for the same language
- Localize "Cancel" and "OK" buttons in font dialog
- Localize "default" in display columns combobox
- Localize "language: %s" prefix in font preferences with lowercase and
added space after colon, as it is the second part of the sentence
"Change font for / language: %s"
- Localize "none" in font preferences (utilities.c)
* Update source_version.txt to 4.3.2.60
* Revert localization of Language:%s key used in fonts.conf
* Restore source_version.txt to 4.3.2 from master
---------
Co-authored-by: lafricain79 <lafricain79 at gmail.com>
To unsubscribe from these emails, change your notification settings at https://github.com/crosswire/xiphos/settings/notifications
More information about the xiphos-source
mailing list