Skip to content

Simple GTK-based dialog with CSS appearance support#5546

Merged
iorsh merged 49 commits intofontforge:masterfrom
iorsh:gtk_simple_dlg
Jun 29, 2025
Merged

Simple GTK-based dialog with CSS appearance support#5546
iorsh merged 49 commits intofontforge:masterfrom
iorsh:gtk_simple_dlg

Conversation

@iorsh
Copy link
Copy Markdown
Contributor

@iorsh iorsh commented Mar 26, 2025

Initial support for GTK3 / GTKMM3-based UI. Only "Add Encolding Slots" dialog was ported, to keep stability while allowing for initial testing. Based on infrastructure work by @Omnikron13.

The customized UI appearance is supported with CSS - see screenshots.

Tested on Linux (KDE, Gnome under X, Wayland), Windows 64-bit, macOS. Binaries for testing are available at https://github.com/iorsh/fontforge/actions/runs/14070685506 (scroll to the end of the page).

Known issues:

  • On macOS the dialog is shown in the corner instead of middle of the screen.

See also discussion #5324.

New GTK-based UI (default FontForge apperance):
gtk_dlg_default
Legacy GDraw-based UI (default FontForge apperance):
gdraw_dlg_default

New GTK-based UI (customized FontForge apperance):
gtk_dlg
Legacy GDraw-based UI (customized FontForge apperance):
gdraw_dlg

@iorsh iorsh mentioned this pull request Apr 26, 2025
@iorsh
Copy link
Copy Markdown
Contributor Author

iorsh commented Jun 26, 2025

Currently the GTK window doesn't block its parent legacy window from receiving mouse events, and this can lead to crashes or issues. We plan to fix it later, once we have initial feedback of GTK usability and stability.

Copy link
Copy Markdown
Contributor

@frank-trampe frank-trampe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We talked through this, and it makes sense. It is impossible to test all cases on all platforms. We will fix anything that breaks in testing at a later time. It is a small change, so any problems ought to be minimally disruptive.

Comment thread .appveyor.yml Outdated
@iorsh iorsh merged commit d5e2b10 into fontforge:master Jun 29, 2025
7 checks passed
@iorsh iorsh mentioned this pull request Jun 29, 2025
12 tasks
@iorsh iorsh mentioned this pull request Aug 16, 2025
@iorsh iorsh deleted the gtk_simple_dlg branch February 26, 2026 21:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants