[MacPorts] #50873: Dia canvas has incoherent colors in Quartz
#50873: Dia canvas has incoherent colors in Quartz ----------------------+-------------------------------- Reporter: m.rick@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Keywords: | Port: dia ----------------------+-------------------------------- When using Dia with Quartz, the canvas has strange incoherent colors. The colors can change, but the canvas should be a white background with light grey lines. The bugs only occurs with Quartz, not with X11. -- Ticket URL: <https://trac.macports.org/ticket/50873> MacPorts <https://www.macports.org/> Ports system for OS X
#50873: Dia canvas has incoherent colors in Quartz -----------------------+---------------------- Reporter: m.rick@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: dia | -----------------------+---------------------- Changes (by devans@…): * owner: macports-tickets@… => devans@… * cc: devans@… (removed) * status: new => assigned Comment: Yes, I can reproduce this issue. Dia was originally an X11 only app but now will build with gtk2 +quartz as all the X11 specific gtk/gdk code has been removed in the current version. So in principle, it should work with a +quartz build but at least one upstream developer has admitted that there are still issues with +quartz builds. In this case, the clue to what's going on is in the following console messages that are displayed repeatedly {{{ (dia:67675): Gdk-CRITICAL **: gdk_colormap_alloc_colors: assertion 'GDK_IS_COLORMAP (colormap)' failed ** (dia:67675): WARNING **: color_convert failed. }}} Dia implements it's own definition of what a color is, but these colors need to be converted to GdkColors to display properly. color_convert() performs this conversion but fails on +quartz builds resulting in resulting in the problem described. The actual failure is in the gdk function gdk_colormap_alloc_colors() which attempts to allocate a new color in the default visual's colormap. The error says that the colormap passed to this function is not a valid colormap of type GdkColormap. It then returns with no color allocated. Hence the problem. This function is implemented in a backend specific ways for X11, Quartz and Windows so should theoretically work on all backends. I also see errors of the type {{{ (dia:67675): Gdk-WARNING **: Source with depth 1 unsupported }}} so it may be that the code that initially creates the colormap is using an invalid/unsupported visual type. But this is just a quess. As I have time available, I'll try to pinpoint the root cause and report it upstream. In the meantime, you're probably better off using the X11 build. Sorry for not having a better answer right now. -- Ticket URL: <https://trac.macports.org/ticket/50873#comment:1> MacPorts <https://www.macports.org/> Ports system for OS X
#50873: Dia canvas has incoherent colors in Quartz -----------------------+---------------------- Reporter: m.rick@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: dia | -----------------------+---------------------- Comment (by m.rick@…): I made a try and got a strange result: I compiled Murrine Engine for GTK2 and then used Adawaita TGK2 a,d made a GTK RC file to tell Dia to load the Adawaita. It corrected the colors troubles and I got the correct white canvas. But if I try to insert an object from the library, Dia will crash. -- Ticket URL: <https://trac.macports.org/ticket/50873#comment:2> MacPorts <https://www.macports.org/> Ports system for OS X
#50873: Dia canvas has incoherent colors in Quartz -----------------------+---------------------- Reporter: m.rick@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: dia | -----------------------+---------------------- Comment (by devans@…): Replying to [comment:2 m.rick@…]:
I made a try and got a strange result:
I compiled Murrine Engine for GTK2 and then used Adawaita GTK2 and made a GTK RC file to tell Dia to load the Adawaita theme.
It partially corrected the colors troubles and I got the correct white canvas.
I'm not sure of the need for the Murrine Engine here. gnome-themes- standard provides both gtk2 and gtk3 engines as well as the Adwaita icon theme and gnome-backgrounds in a single package. -- Ticket URL: <https://trac.macports.org/ticket/50873#comment:3> MacPorts <https://www.macports.org/> Ports system for OS X
#50873: Dia canvas has incoherent colors in Quartz -----------------------+---------------------- Reporter: m.rick@… | Owner: devans@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: dia | -----------------------+---------------------- Comment (by devans@…): I've added a +quartz variant in r146599. This doesn't help the problem here but allows tracking of whether the port is built with X11 or Quartz. If you have a version built with +quartz, just install dia +quartz to install a new version with the variant attached and uninstall the old version. From now on if there is no variant, it is a X11 build. -- Ticket URL: <https://trac.macports.org/ticket/50873#comment:4> MacPorts <https://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts