Miroslav, The basic problem is that all of those color icons were declared "legacy" by the Gnome designers a long time ago and Adwaita-icon-theme v42 finally removed them. As it happens that broke a Gtk test, see https://gitlab.gnome.org/GNOME/gtk/-/issues/4754, so they've been added back to Gtk-3.24.34. Another "but": It's only the legacy icons used by Gtk3 itself, so it might not cover all of the icons you need.
The simplest temporary fix is to add a module for an older Adwaita version to your local moduleset. I picked 3.38.0 for GnuCash, see https://github.com/Gnucash/gnucash-on-osx/blob/cd34a47d2236929c931a8676845b5714e2ccde20/modulesets/gnucash.modules#L376. Just arrange for it to be built after meta-gtk-osx-gtk3 and it will overwrite the current Adwaita-42. The longer-term fix is to switch to the newer foo-symbolic names, e.g. "document-new-symbolic". You should do that soon because the legacy icons will disappear from Linux distros soon if they haven't already, particularly on bleeding-edge distros like Arch Linux and Gentoo. I don't know if all of the legacy icons were converted, so you may need to find alternatives or design your own in some cases. Regards, John Ralls > On Jun 30, 2022, at 4:14 AM, Miroslav Rajcic <mraj...@hotmail.com> wrote: > > I've been converting from stock icons to symbolic icons, but no luck so far. > > Example code (both GTK2 and GTK3 builds are supported): > #if GTK_CHECK_VERSION(3,10,0) > icon = gtk_image_new_from_icon_name("edit-delete", > GTK_ICON_SIZE_MENU); > #else > icon = gtk_image_new_from_stock(GTK_STOCK_DELETE, > GTK_ICON_SIZE_MENU); > #endif > > As I can see adwaita theme icons are correctly bundled, and I added test code > on startup to write the theme name and search paths: > gchar* szIconTheme = nullptr; > g_object_get(gtk_settings_get_default(), "gtk-icon-theme-name", > &szIconTheme, (char*) nullptr); > XLOG(LL_INFO, "Icon theme used: %s\n", szIconTheme); > g_free(szIconTheme); > > gint n_elements = 0; > gchar **path; > gtk_icon_theme_get_search_path(gtk_icon_theme_get_default(), &path, > &n_elements); > for(int j=0; j<n_elements; j++) > XLOG(LL_INFO, "Icon path: %s\n", path[j]); > > Logs below indicate that the search paths are correct, but the icons can not > be found anyway: > 12:38:03.534 Icon theme used: Adwaita > 12:38:03.534 Icon path: /Users/gtk3/.local/share/icons > 12:38:03.534 Icon path: /Users/gtk3/.icons > 12:38:03.534 Icon path: > /Applications/NotecasePro.app/Contents/Resources/share/icons > 12:38:03.534 Icon path: > /Applications/NotecasePro.app/Contents/Resources/share/pixmaps > ... > 12:38:03.925 GTK [16]: > (notecase-bin:79345): Gtk-WARNING **: 12:38:03.925: Error loading theme icon > 'document-new' for stock: Icon 'document-new' not present in theme Adwaita > 12:38:03.927 GTK [16]: > (notecase-bin:79345): Gtk-WARNING **: 12:38:03.927: Error loading theme icon > 'document-open' for stock: Icon 'document-open' not present in theme Adwaita > 12:38:03.927 GTK [16]: > (notecase-bin:79345): Gtk-WARNING **: 12:38:03.927: Error loading theme icon > 'document-save' for stock: Icon 'document-save' not present in theme Adwaita > 12:38:03.928 GTK [16]: > (notecase-bin:79345): Gtk-WARNING **: 12:38:03.928: Error loading theme icon > 'list-add' for stock: Icon 'list-add' not present in theme Adwaita > 12:38:03.928 GTK [16]: > (notecase-bin:79345): Gtk-WARNING **: 12:38:03.928: Error loading theme icon > 'go-previous' for stock: > 12:38:03.928 GTK [16]: > (notecase-bin:79345): Gtk-WARNING **: 12:38:03.928: Error loading theme icon > 'go-next' for stock: > 12:38:03.928 GTK [16]: > (notecase-bin:79345): Gtk-WARNING **: 12:38:03.928: Error loading theme icon > 'edit-undo' for stock: > > I've uploaded the new build, as it seems the icons are correctly bundled (lot > of "<name>-symbolic.symbolic.png" files): > http://notecase.sourceforge.net/temp/notecase-4.6.5pre2.pkg > <http://notecase.sourceforge.net/temp/notecase-4.6.5pre2.pkg.filepart> > > Any idea how to debug this? > Can I perhaps activate an additional GTK logging for the GTK theme related > code through GTK_DEBUG variable or something similar? > > Best regards, > Miroslav > > From: gtk-osx-users-list <gtk-osx-users-list-boun...@gnome.org> on behalf of > Miroslav Rajcic via gtk-osx-users-list <gtk-osx-users-list@gnome.org> > Sent: Sunday, June 26, 2022 7:52 PM > To: john <jra...@ceridwen.us> > Cc: gtk-osx-users-list@gnome.org <gtk-osx-users-list@gnome.org> > Subject: Re: [gtk-osx-users] Black screen on ARM based Macs > > Will do, thanks! > > Best regards, > Miroslav > From: john <jra...@ceridwen.us> > Sent: Sunday, June 26, 2022 6:24 PM > To: Miroslav Rajcic <mraj...@hotmail.com> > Cc: gtk-osx-users-list@gnome.org <gtk-osx-users-list@gnome.org> > Subject: Re: [gtk-osx-users] Black screen on ARM based Macs > > Miroslav, > > That's good news, and I tested it here as well. Don't forget to investigate > the toolbar icons and menu. BTW, File>Quit doesn't work though command-Q does. > > Regards, > John Ralls > >> On Jun 26, 2022, at 1:01 AM, Miroslav Rajcic <mraj...@hotmail.com> wrote: >> >> Hi John, >> >> I've got confirmation that the following new build works OK for the user: >> http://notecase.sourceforge.net/temp/notecase-4.6.5.pkg >> >> Changelog: I've updated the launcher script, set the target to 10.12 (as >> you've done) and removed libspell. >> I can now experiment to see which of these helped to resolve the issue. >> >> Thanks again for your help. >> >> Best regards, >> Miroslav >> From: gtk-osx-users-list <gtk-osx-users-list-boun...@gnome.org> on behalf of >> Miroslav Rajcic via gtk-osx-users-list <gtk-osx-users-list@gnome.org> >> Sent: Saturday, June 25, 2022 11:34 AM >> To: John Ralls <jra...@ceridwen.us> >> Cc: gtk-osx-users-list@gnome.org <gtk-osx-users-list@gnome.org> >> Subject: Re: [gtk-osx-users] Black screen on ARM based Macs >> >> Thanks John, >> >> will work to fix the issues you've observed. >> >> Best regards, >> Miroslav >> >> From: John Ralls <jra...@ceridwen.us> >> Sent: Saturday, June 25, 2022 1:45 AM >> To: Miroslav Rajcic <mraj...@hotmail.com> >> Cc: gtk-osx-users-list@gnome.org <gtk-osx-users-list@gnome.org> >> Subject: Re: [gtk-osx-users] Black screen on ARM based Macs >> >> Miroslav, >> >> I built a fresh meta-gtk-osx-gtk3 with macOS version min set to 10.12, >> symlinked $PREFIX/inst to $PREFIX/Resources and copied notecore-bin to >> $PREFIX/MacOS/notecore so that it would find my libraries with >> @executable_path/../Resources, then ran notecore from a jhbuild shell. It >> displayed correctly on both Retina and not. That tells me that whatever is >> messed up it isn't Gtk. >> >> There seems to be a lot of extraneous stuff in your bundle as well, your >> launcher-script looks rather haphazardly ported from a Gtk2 one, and >> libspell is in the wrong place. So start off with a fresh build of >> meta-gtk-osx-gtk3 in an empty folder starting with bootstrap-gtk-osx and for >> safety libspell too. While the build is going on clean up your bundle file >> so that only the libraries and other folders that you need are installed and >> redo your launcher script based on gtk-mac-bundler/examples/gtk3-launcher.sh. >> >> Some other things that need addressing: You seem not to have updated your >> use of gtk-mac-integration for Gtk3: It doesn't work, the menu bar is on the >> window instead of at the top of the screen. The Gtk-supplied icons aren't >> visible, perhaps you're trying to use the GTK_STOCK icons that were >> deprecated in Gtk-3.0.0 and removed somewhere around Gtk 3.10. I thought at >> first you'd gotten tripped up with the removal of the deprecated stock names >> in Adwaita-42, but they don't work with Adwaita-3.38 either. >> >> Once you've got a clean bundle I'll test it for you, but you might want to >> get the Additional Tools for Xcode 13 from >> https://developer.apple.com/downloads. It includes Quartz Debug that might >> enable you to fake retina resolution if your MBA has enough GPU to support >> it. >> >> Regards, >> John Ralls >> >> >> > On Jun 24, 2022, at 2:17 PM, John Ralls <jra...@ceridwen.us> wrote: >> > >> > Miroslav, >> > >> > Thanks. I can confirm that it’s a Retina issue, not an Apple Silicon one. >> > I have the same 1/4 render on my Retina monitor on both my Intel Mac Pro >> > and my M1 mini. It looks normal on the non-Retina monitor on both systems. >> > Next I tried my 2014 MBP Retina running macOS 11 BigSur. Same problem. >> > Maybe this is your user’s first experience with Retina displays? >> > >> > I hadn’t really paid attention to >> > https://gitlab.gnome.org/GNOME/gtk/-/issues/4342#note_1299321 until now. I >> > think that’s a separate issue from the Monterey absolute value change that >> > screwed up flipping the coordinate system. His issue appears similar to >> > yours and he worked around it by removing the scaling >> > line,https://gitlab.gnome.org/GNOME/gtk/-/blob/3.24.33/gdk/quartz/gdkwindow-quartz.c#L194 >> > , altogether. I’m not sure why that would be necessary for you and him >> > and not for anybody else. That line has been there for 6 years, having >> > been introduced in >> > https://gitlab.gnome.org/GNOME/gtk/-/commit/3f077ec36f4a59e803c9f4509996269c862e04af. >> > Note that the scale division in the CTM is countered by scaling the size >> > of the Cairo surface >> > athttps://gitlab.gnome.org/GNOME/gtk/-/blob/3.24.33/gdk/quartz/gdkwindow-quartz.c#L352. >> > >> > Regards, >> > John Ralls >> > >> > >> > >> >> On Jun 24, 2022, at 12:01 PM, Miroslav Rajcic <mraj...@hotmail.com> wrote: >> >> >> >> Hi John, >> >> >> >> you can find the installer with new build here: >> >> http://notecase.sourceforge.net/temp/notecase-4.6.4pre1.pkg >> >> >> >> Thanks for the help. >> >> >> >> Best regards, >> >> Miroslav >> >> >> >> From: john <jra...@ceridwen.us> >> >> Sent: Friday, June 24, 2022 7:49 PM >> >> To: Miroslav Rajcic <mraj...@hotmail.com> >> >> Cc: gtk-osx-users-list@gnome.org <gtk-osx-users-list@gnome.org> >> >> Subject: Re: [gtk-osx-users] Black screen on ARM based Macs >> >> >> >> Miroslav, >> >> >> >> I installed NoteCasePro from your download page to my M1Pro MBP running >> >> the Ventura developer beta and it looks just like your screenshot. It >> >> also has Gtk-3.24.30. Can you give me a link to your Gtk3.24.33 installer? >> >> >> >> I think that the reason you can't see the problem is that your 2017 MBA >> >> doesn't have a Retina display. I'll check it on my MacPro that does have >> >> a Retina display in a bit and follow up. >> >> >> >> I haven't tried cross-compiling to arm64 from intel yet, but it didn't >> >> work at all back in the PPC->Intel days so when I was distributing PPC >> >> apps I built on the respective machines. Universal builds definitely >> >> don't work from the command line, I did try that. I can also say that I >> >> haven't seen any significant behavior differences between running Intel >> >> builds with Rosetta2 and native builds on M1s, so I think it's unlikely >> >> that that's the problem. The Xcode version shouldn't matter either. >> >> >> >> Regards, >> >> John Ralls >> >> >> >> >> >> >> >>> On Jun 24, 2022, at 5:45 AM, Miroslav Rajcic <mraj...@hotmail.com> wrote: >> >>> >> >>> Thanks John, >> >>> >> >>> I don't have M1 hardware, so I depend on users to help troubleshooting >> >>> the issue. >> >>> >> >>> I do my build on Intel hardware (macOS 12.0.1, MacBook Air 2017, XCode >> >>> 13.2.1), with the following target setup: >> >>> setup_sdk(target="10.9", sdk_version="native", architectures=["x86_64"]) >> >>> i.e. program is being run on M1 through Rosetta. >> >>> >> >>> The issue was reported against the build using GTK 3.24.30, then I've >> >>> rebuilt the program to use latest v3.24.33, >> >>> but both users reported that the issue was not fixed (screenshots >> >>> below). They are not developers, so they did not try running gtk-demo. >> >>> >> >>> I do have an app log that redirects all GTK logging, but could not find >> >>> any clue (GTK error/warning) in it. The same binary works fine >> >>> on Intel hardware, no such issues were reported. >> >>> I will re-check to make sure they properly installed the newer build. >> >>> >> >>> Could adding native "arm64" architecture into the setup help with this >> >>> bug (based on the bug that was fixed)? >> >>> Do I need to use newer XCode for this? >> >>> >> >>> Best regards, >> >>> Miroslav >> >>> >> >>> <Screenshot 2022-06-20 at 18.56.35.png> >> >>> >> >>> <Screenshot 2022-06-17 at 06.18.07.png> >> >>> >> >>> From: john <jra...@ceridwen.us> >> >>> Sent: Thursday, June 23, 2022 2:30 AM >> >>> To: Miroslav Rajcic <mraj...@hotmail.com> >> >>> Cc: gtk-osx-users-list@gnome.org <gtk-osx-users-list@gnome.org> >> >>> Subject: Re: [gtk-osx-users] Black screen on ARM based Macs >> >>> >> >>> >> >>> >> >>>> On Jun 21, 2022, at 9:50 PM, Miroslav Rajcic via gtk-osx-users-list >> >>>> <gtk-osx-users-list@gnome.org> wrote: >> >>>> >> >>>> Hi, >> >>>> >> >>>> several users of my program reported the main application screen being >> >>>> partially black on ARM based Macs (M1) on macOS Monterey. >> >>>> Digging online, it seems that this bug has been known: >> >>>> https://gitlab.gnome.org/GNOME/gtk/-/issues/4342 >> >>>> https://gitlab.gnome.org/GNOME/gtk/-/issues/4395 >> >>>> >> >>>> I've rebuilt latest gtk-osx yesterday (moduleset-stable), but the issue >> >>>> still seems to be here. >> >>>> What's the status of this issue in gtk-osx? >> >>> >> >>> Miroslav, >> >>> >> >>> The fix for issue 4342 is in Gtk+-3.0 since 3.24.31 and >> >>> modulesets-stable has 3.24.33, so perhaps the problem your users have >> >>> found isn't the same one. >> >>> >> >>> Is this an Apple Silicon build or an Intel one? What minimum macOS >> >>> version did you specify? Does the problem reproduce in gtk3-demo or is >> >>> it just your app? >> >>> >> >>> Regards, >> >>> John Ralls >> > >> > _______________________________________________ >> > gtk-osx-users-list mailing list >> > gtk-osx-users-list@gnome.org >> > https://mail.gnome.org/mailman/listinfo/gtk-osx-users-list
_______________________________________________ gtk-osx-users-list mailing list gtk-osx-users-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-osx-users-list