Miroslav, There's more than one moving part here: Adwaita-icon-theme and the Adwaita icons built in to Gtk3 itself. It looks to me like there was a bit of a communications failure between the two groups. One of the Gtk devs has moved the icons eliminated by adwaita-icon-theme into Gtk3 itself, but it will take a couple of weeks for that to percolate into a release and probably quite a bit longer before I update the gtk-osx modules to pick it up. Regardless, switching to the -symbolic icon names is the way forward so you might as well get it over with.
Regards, John Ralls > On Jun 30, 2022, at 12:03 PM, Miroslav Rajcic <mraj...@hotmail.com> wrote: > > Thanks John, > > the information was quite helpful, but also quite surprising. > When choosing what icon names to use to replace stock icons, I used official > documentation, see for example comments in this file: > https://gitlab.gnome.org/GNOME/gtk/-/blob/gtk-3-24/gtk/deprecated/gtkstock.h > > Example comment: > /** > * GTK_STOCK_OPEN: > * > * The “Open” item and icon. > * > * Deprecated: 3.10: Use named icon "document-open" or the label > "_Open". > */ > I guess that means that the documentation does not match the current state. > Will replace names with "-symbolic" variants. > > Best regards, > Miroslav > > From: john <jra...@ceridwen.us> > Sent: Thursday, June 30, 2022 6:39 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, > > 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