Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 449144
Collapse All | Expand All

(-)file_not_specified_in_diff (-2 / +50 lines)
Line  Link Here
0
-- a/gtk/gtknotebook.c
0
++ b/gtk/gtknotebook.c
Lines 344-349 Link Here
344
                                              cairo_t          *cr);
344
                                              cairo_t          *cr);
345
static gint gtk_notebook_button_press        (GtkWidget        *widget,
345
static gint gtk_notebook_button_press        (GtkWidget        *widget,
346
                                              GdkEventButton   *event);
346
                                              GdkEventButton   *event);
347
static gboolean gtk_notebook_scroll          (GtkWidget        *widget,
348
                                              GdkEventScroll   *event);
347
static gint gtk_notebook_button_release      (GtkWidget        *widget,
349
static gint gtk_notebook_button_release      (GtkWidget        *widget,
348
                                              GdkEventButton   *event);
350
                                              GdkEventButton   *event);
349
static gboolean gtk_notebook_popup_menu      (GtkWidget        *widget);
351
static gboolean gtk_notebook_popup_menu      (GtkWidget        *widget);
Lines 646-651 Link Here
646
  widget_class->get_preferred_height_for_width = gtk_notebook_get_preferred_height_for_width;
648
  widget_class->get_preferred_height_for_width = gtk_notebook_get_preferred_height_for_width;
647
  widget_class->size_allocate = gtk_notebook_size_allocate;
649
  widget_class->size_allocate = gtk_notebook_size_allocate;
648
  widget_class->draw = gtk_notebook_draw;
650
  widget_class->draw = gtk_notebook_draw;
651
  widget_class->scroll_event = gtk_notebook_scroll;
649
  widget_class->button_press_event = gtk_notebook_button_press;
652
  widget_class->button_press_event = gtk_notebook_button_press;
650
  widget_class->button_release_event = gtk_notebook_button_release;
653
  widget_class->button_release_event = gtk_notebook_button_release;
651
  widget_class->popup_menu = gtk_notebook_popup_menu;
654
  widget_class->popup_menu = gtk_notebook_popup_menu;
Lines 1894-1900 Link Here
1894
  attributes.event_mask = gtk_widget_get_events (widget);
1897
  attributes.event_mask = gtk_widget_get_events (widget);
1895
  attributes.event_mask |= (GDK_BUTTON_PRESS_MASK |
1898
  attributes.event_mask |= (GDK_BUTTON_PRESS_MASK |
1896
                            GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK |
1899
                            GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK |
1897
                            GDK_POINTER_MOTION_MASK | GDK_LEAVE_NOTIFY_MASK);
1900
                            GDK_POINTER_MOTION_MASK | GDK_LEAVE_NOTIFY_MASK |
1901
                            GDK_SCROLL_MASK);
1898
  attributes_mask = GDK_WA_X | GDK_WA_Y;
1902
  attributes_mask = GDK_WA_X | GDK_WA_Y;
1899
1903
1900
  priv->event_window = gdk_window_new (gtk_widget_get_parent_window (widget),
1904
  priv->event_window = gdk_window_new (gtk_widget_get_parent_window (widget),
Lines 2863-2868 Link Here
2863
    return FALSE;
2867
    return FALSE;
2864
}
2868
}
2865
2869
2870
static gboolean
2871
gtk_notebook_scroll (GtkWidget      *widget,
2872
                     GdkEventScroll *event)
2873
{
2874
  GtkNotebook *notebook = GTK_NOTEBOOK (widget);
2875
  GtkNotebookPrivate *priv = notebook->priv;
2876
  GtkWidget *child, *event_widget;
2877
  gint i;
2878
2879
  if (!priv->cur_page)
2880
    return FALSE;
2881
2882
  child = priv->cur_page->child;
2883
  event_widget = gtk_get_event_widget ((GdkEvent *)event);
2884
2885
  /* ignore scroll events from the content of the page */
2886
  if (!event_widget || gtk_widget_is_ancestor (event_widget, child) || event_widget == child)
2887
    return FALSE;
2888
2889
  /* nor from the action area */
2890
  for (i = 0; i < 2; i++)
2891
    {
2892
      if (event_widget == priv->action_widget[i] ||
2893
          (priv->action_widget[i] &&
2894
           gtk_widget_is_ancestor (event_widget, priv->action_widget[i])))
2895
        return FALSE;
2896
    }
2897
2898
  switch (event->direction)
2899
    {
2900
    case GDK_SCROLL_RIGHT:
2901
    case GDK_SCROLL_DOWN:
2902
      gtk_notebook_next_page (notebook);
2903
      break;
2904
    case GDK_SCROLL_LEFT:
2905
    case GDK_SCROLL_UP:
2906
      gtk_notebook_prev_page (notebook);
2907
      break;
2908
    }
2909
2910
  return TRUE;
2911
}
2912
2913
2866
static GList*
2914
static GList*
2867
get_tab_at_pos (GtkNotebook *notebook, gint x, gint y)
2915
get_tab_at_pos (GtkNotebook *notebook, gint x, gint y)
2868
{
2916
{

Return to bug 449144