projects
/
modest
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Better attachments detection for text/calendar
[modest]
/
src
/
widgets
/
modest-vbox-cell-renderer.c
diff --git
a/src/widgets/modest-vbox-cell-renderer.c
b/src/widgets/modest-vbox-cell-renderer.c
index
e365606
..
e711f5c
100644
(file)
--- a/
src/widgets/modest-vbox-cell-renderer.c
+++ b/
src/widgets/modest-vbox-cell-renderer.c
@@
-31,7
+31,7
@@
#include <glib/gi18n-lib.h>
#include <glib/gi18n-lib.h>
-#include <gtk/gtkwidget.h>
+#include <gtk/gtk.h>
#include <modest-text-utils.h>
#include <modest-vbox-cell-renderer.h>
#include <modest-text-utils.h>
#include <modest-vbox-cell-renderer.h>
@@
-187,6
+187,7
@@
modest_vbox_cell_renderer_append (ModestVBoxCellRenderer *vbox_renderer,
#if GLIB_CHECK_VERSION(2, 10, 0) /* g_object_ref_sink() was added in glib 2.10: */
g_object_ref_sink (G_OBJECT (cell));
#else
#if GLIB_CHECK_VERSION(2, 10, 0) /* g_object_ref_sink() was added in glib 2.10: */
g_object_ref_sink (G_OBJECT (cell));
#else
+ g_object_ref (G_OBJECT (cell));
gtk_object_sink (GTK_OBJECT (cell));
#endif
}
gtk_object_sink (GTK_OBJECT (cell));
#endif
}
@@
-202,6
+203,8
@@
modest_vbox_cell_renderer_get_size (GtkCellRenderer *cell,
{
gint calc_width, calc_height;
gint full_width, full_height;
{
gint calc_width, calc_height;
gint full_width, full_height;
+ guint xpad, ypad;
+ gfloat xalign, yalign;
GList *node;
ModestVBoxCellRendererPrivate *priv = MODEST_VBOX_CELL_RENDERER_GET_PRIVATE (cell);
GList *node;
ModestVBoxCellRendererPrivate *priv = MODEST_VBOX_CELL_RENDERER_GET_PRIVATE (cell);
@@
-220,18
+223,25
@@
modest_vbox_cell_renderer_get_size (GtkCellRenderer *cell,
}
}
}
}
- full_width = (gint) cell->xpad * 2 + calc_width;
- full_height = (gint) cell->ypad * 2 + calc_height;
+ g_object_get (cell,
+ "xpad", &xpad,
+ "ypad", &ypad,
+ "xalign", &xalign,
+ "yalign", &yalign,
+ NULL);
+
+ full_width = (gint) xpad * 2 + calc_width;
+ full_height = (gint) ypad * 2 + calc_height;
if (rectangle && calc_width > 0 && calc_height > 0) {
if (x_offset) {
*x_offset = (((gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL) ?
if (rectangle && calc_width > 0 && calc_height > 0) {
if (x_offset) {
*x_offset = (((gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL) ?
- (1.0 - cell->xalign) : cell->xalign) *
+ (1.0 - xalign) : xalign) *
(rectangle->width - full_width));
*x_offset = MAX (*x_offset, 0);
}
if (y_offset) {
(rectangle->width - full_width));
*x_offset = MAX (*x_offset, 0);
}
if (y_offset) {
- *y_offset = ((cell->yalign) *
+ *y_offset = ((yalign) *
(rectangle->height - full_height));
*y_offset = MAX (*y_offset, 0);
}
(rectangle->height - full_height));
*y_offset = MAX (*y_offset, 0);
}
@@
-264,14
+274,11
@@
modest_vbox_cell_renderer_render (GtkCellRenderer *cell,
GList *node = NULL;
GtkCellRenderer *child;
gint height, extra;
GList *node = NULL;
GtkCellRenderer *child;
gint height, extra;
- GtkRequisition req;
direction = gtk_widget_get_direction (widget);
nvis_children = 0;
nexpand_children = 0;
direction = gtk_widget_get_direction (widget);
nvis_children = 0;
nexpand_children = 0;
- /* first, retrieve the requisition of the children cell renderers */
- modest_vbox_cell_renderer_get_size (cell, widget, NULL, NULL, NULL, &(req.width), &(req.height));
/* Counts visible and expandable children cell renderers */
for (node = priv->renderers_list; node != NULL; node = g_list_next (node)) {
/* Counts visible and expandable children cell renderers */
for (node = priv->renderers_list; node != NULL; node = g_list_next (node)) {
@@
-293,6
+300,9
@@
modest_vbox_cell_renderer_render (GtkCellRenderer *cell,
GdkRectangle child_alloc;
if (nexpand_children > 0) {
GdkRectangle child_alloc;
if (nexpand_children > 0) {
+ GtkRequisition req;
+
+ modest_vbox_cell_renderer_get_size (cell, widget, NULL, NULL, NULL, &(req.width), &(req.height));
height = cell_area->height - req.height;
extra = height / nexpand_children;
} else {
height = cell_area->height - req.height;
extra = height / nexpand_children;
} else {