aboutsummaryrefslogtreecommitdiffstats
path: root/widgets
diff options
context:
space:
mode:
Diffstat (limited to 'widgets')
-rw-r--r--widgets/table/e-cell-popup.c4
-rw-r--r--widgets/table/e-cell-popup.h1
2 files changed, 4 insertions, 1 deletions
diff --git a/widgets/table/e-cell-popup.c b/widgets/table/e-cell-popup.c
index 48b445a661..3791d4c7aa 100644
--- a/widgets/table/e-cell-popup.c
+++ b/widgets/table/e-cell-popup.c
@@ -147,6 +147,7 @@ static void
e_cell_popup_init (ECellPopup *ecp)
{
ecp->popup_shown = FALSE;
+ ecp->popup_model = NULL;
}
@@ -271,7 +272,7 @@ ecp_draw (ECellView *ecv, GdkDrawable *drawable,
show_popup_arrow = TRUE;
ecp->popup_arrow_shown = TRUE;
} else if (ecp->popup_shown && ecp->popup_view_col == view_col
- && ecp->popup_row == row) {
+ && ecp->popup_row == row && ecp->popup_model == ((ECellView *) ecp_view)->e_table_model) {
show_popup_arrow = TRUE;
}
@@ -502,6 +503,7 @@ e_cell_popup_do_popup (ECellPopupView *ecp_view,
ecp->popup_view_col = view_col;
ecp->popup_row = row;
+ ecp->popup_model = ((ECellView *) ecp_view)->e_table_model;
return popup_func ? popup_func (ecp, event, row, view_col) : FALSE;
}
diff --git a/widgets/table/e-cell-popup.h b/widgets/table/e-cell-popup.h
index 9deaac4a01..8f89ddf9ef 100644
--- a/widgets/table/e-cell-popup.h
+++ b/widgets/table/e-cell-popup.h
@@ -63,6 +63,7 @@ typedef struct {
gint popup_view_col;
gint popup_row;
+ ETableModel *popup_model;
} ECellPopup;