Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
GTK3: Fix caja information panel #573
Conversation
lukefromdc
added some commits
Jun 18, 2016
|
Well, should be save to merge to master? |
|
Should be, though I would have to revert mate-desktop to test. Cherrypick On 6/18/2016 at 5:24 PM, "raveit65" notifications@github.com wrote:
|
|
At the moment i'm a bit clueless what is wrong with GdkRGBA port, i hope that some of the other guys will help. |
|
With this last commit I just sent the only thing that is broken as a result of On 6/18/2016 at 5:33 PM, "raveit65" notifications@github.com wrote:
|
|
For the gradient background, it looks like eel_gradient_new in gdk_extensions.c On 6/18/2016 at 5:33 PM, "raveit65" notifications@github.com wrote:
|
|
Just took a look at eel_gradient_new, the color variables there are const char variables, while in eel_bg_get_desktop_color they are GdkRGBA 's. eel_bg_get_desktop_color loads new "char" variables from the RBGA's, wonder if the format put into these variables in not valid for eventually making the colors? |
|
Now playing with the code below: #if GTK_CHECK_VERSION (3, 0, 0)
#else
#endif
The start_color and end_color variables both work, as simply setting color_spec = g_strdup to either color works properly. It's when The special case of a gradient where both colors are identical does work, it's in other cases where https://developer.gnome.org/glib/stable/glib-String-Utility-Functions.html#g-strconcat warns that this function often assembles a string other than in the order you want. My guess is that the char variables loaded from the GdkRBGA's when put into this function are returning a value that is formatted differently than GkdColor was giving and is not useful for setting up a gradient. using this test code: Thus, the returned value "color_spec" back in eel_background.c is coming back as a string that cannot be interpreted by another function due to a format change between GdkColor and GdkRBGA. |
|
merged 262492b |
|
Nice analysis, i will look in gdk_extensions.c again. |
raveit65
closed this
Jun 19, 2016
|
More on the GkdRBGA issue for gradients: Back in eel_background.c, the returned "color_spec" value is returned by
#if GTK_CHECK_VERSION (3, 0, 0)
#if GTK_CHECK_VERSION (3, 0, 0)
#else
#endif
}`` Looks like |
lukefromdc commentedJun 18, 2016
The Caja information panel (information option in sidebar) was never fully ported to GTK3, probably still isn't. Set the .view style class on it, and exclude the rest of caja_information_panel_update_appearance as that code segfaults (at least with GTK 3.21) on dragging a background to the info panel.
We now have a demo for background dragging in GTK3: A background can be dragged to the information sidebar and will be displayed. Won't be saved and won't appear in other Cajs navigation windows, something in the code that segfaulted no doubt needs to be fixed for that but that's for later. At least this widget finally works. It will follow any theme I have and no longer fails to update to BlackMATE or my own theme.