02d041d...
by
Carlos Soriano <email address hidden>
general: Make property extensions gtk version independent
Nautilus property extensions to add property pages to the property
dialog was providing a GtkWidget to be modified by extensions.
This makes the extension need to target a specific gtk version, which
with the new gtk versioning might be hard to provide, and it's quite a
bad practice since it requires everyone to be on top of any gtk update.
This is currently holding the work for porting Nautilus to gtk4, since
the Totem extension depends on us having the same gtk+ version, which is
unlikely.
This work makes the extension for providing property extensions not
depend on gtk by providing a plain struct to be filled with data that
later on Nautilus will layout on the UI.
NautilusSelectionCanvasItem lost a few properties that control the way
the selection rectangle is drawn, namely the color and
stippling-enabling ones, which results in different rendering of the
file outlines when dragging multiple of them. At the moment, the
outlines are styled according to GTK_STYLE_CLASS_RUBBERBAND, which gives
them solid blue-ish borders and a light blue background.
This commit removes the code that sets those properties.
This takes care of a couple of things:
- not claiming the sequence at the end of the button press handler
breaks ctrl-clicking;
- chaining up to button_press_event() in some cases is superfluous;
- chaining up to button_press_event() instead of propagating the
event down breaks expanders.
canvas-item: Drop gtk_style_context_get_background_color()
Even though more convoluted than the previous solution, this one
should last longer. Canvas item icons are now colorized by first drawing
the background to a Cairo surface and then multiplying the color values
of the original icon pixbuf and the ones from the newly created one.
ad18383...
by
Carlos Soriano <email address hidden>