components/emacs/patches/buffer_menu.patch
author Gabriel Carrillo <Gabriel.Carrillo@Oracle.COM>
Tue, 22 May 2012 12:58:14 -0700
branchs11-sru
changeset 2282 023bffdeb9c6
parent 176 11a04b640bf2
permissions -rw-r--r--
Added tag S11SRU8_03 for changeset cd851521842f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
176
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
     1
*** emacs-23.1/src/ChangeLog.orig	Wed Oct 14 16:57:29 2009
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
     2
--- emacs-23.1/src/ChangeLog	Wed Oct 14 17:35:12 2009
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
     3
***************
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
     4
*** 1,3 ****
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
     5
--- 1,19 ----
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
     6
+ 2009-09-02  Jan Djärv  <[email protected]>
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
     7
+ 
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
     8
+ 	* xterm.h: Rename x_non_menubar_window_to_frame to
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
     9
+ 	x_menubar_window_to_frame
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    10
+ 
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    11
+ 	* xterm.c: Remove declarations also in xterm.h
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    12
+ 	(XTmouse_position): Do not return valid positions
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    13
+ 	for clicks in the menubar and the toolbar for Gtk+.
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    14
+ 
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    15
+ 	* xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    16
+ 	if the widget for the event has the same top level as a frame,
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    17
+ 	return the frame.
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    18
+ 	(x_menubar_window_to_frame): Detect menu bar even with Gtk+
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    19
+ 	internal windows, bug #4122.
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    20
+ 	(x_non_menubar_window_to_frame): Remove.
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    21
+ 	
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    22
  2009-07-29  Chong Yidong  <[email protected]>
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    23
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    24
  	* Version 23.1 released.
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    25
*** emacs-23.1/src/xfns.c.orig	Wed Oct 14 16:50:22 2009
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    26
--- emacs-23.1/src/xfns.c	Wed Oct 14 17:35:12 2009
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    27
***************
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    28
*** 374,383 ****
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    29
  #ifdef USE_GTK
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    30
                GtkWidget *gwdesc = xg_win_to_widget (dpyinfo->display, wdesc);
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    31
                if (gwdesc != 0
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    32
!                   && (gwdesc == x->widget
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    33
!                       || gwdesc == x->edit_widget
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    34
!                       || gwdesc == x->vbox_widget
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    35
!                       || gwdesc == x->menubar_widget))
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    36
                  found = f;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    37
  #else
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    38
  	      if (wdesc == XtWindow (x->widget)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    39
--- 374,380 ----
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    40
  #ifdef USE_GTK
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    41
                GtkWidget *gwdesc = xg_win_to_widget (dpyinfo->display, wdesc);
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    42
                if (gwdesc != 0
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    43
!                   && gtk_widget_get_toplevel(gwdesc) == x->widget)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    44
                  found = f;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    45
  #else
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    46
  	      if (wdesc == XtWindow (x->widget)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    47
***************
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    48
*** 398,451 ****
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    49
    return found;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    50
  }
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    51
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    52
- /* Likewise, but exclude the menu bar widget.  */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    53
- 
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    54
- struct frame *
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    55
- x_non_menubar_window_to_frame (dpyinfo, wdesc)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    56
-      struct x_display_info *dpyinfo;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    57
-      int wdesc;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    58
- {
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    59
-   Lisp_Object tail, frame;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    60
-   struct frame *f;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    61
-   struct x_output *x;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    62
- 
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    63
-   if (wdesc == None) return 0;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    64
- 
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    65
-   for (tail = Vframe_list; CONSP (tail); tail = XCDR (tail))
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    66
-     {
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    67
-       frame = XCAR (tail);
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    68
-       if (!FRAMEP (frame))
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    69
-         continue;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    70
-       f = XFRAME (frame);
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    71
-       if (!FRAME_X_P (f) || FRAME_X_DISPLAY_INFO (f) != dpyinfo)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    72
- 	continue;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    73
-       x = f->output_data.x;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    74
-       /* This frame matches if the window is any of its widgets.  */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    75
-       if (x->hourglass_window == wdesc)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    76
- 	return f;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    77
-       else if (x->widget)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    78
- 	{
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    79
- #ifdef USE_GTK
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    80
-           GtkWidget *gwdesc = xg_win_to_widget (dpyinfo->display, wdesc);
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    81
-           if (gwdesc != 0
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    82
-               && (gwdesc == x->widget
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    83
-                   || gwdesc == x->edit_widget
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    84
-                   || gwdesc == x->vbox_widget))
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    85
-             return f;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    86
- #else
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    87
- 	  if (wdesc == XtWindow (x->widget)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    88
- 	      || wdesc == XtWindow (x->column_widget)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    89
- 	      || wdesc == XtWindow (x->edit_widget))
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    90
- 	    return f;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    91
- #endif
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    92
- 	}
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    93
-       else if (FRAME_X_WINDOW (f) == wdesc)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    94
- 	/* A tooltip frame.  */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    95
- 	return f;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    96
-     }
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    97
-   return 0;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    98
- }
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
    99
- 
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   100
  /* Likewise, but consider only the menu bar widget.  */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   101
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   102
  struct frame *
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   103
--- 395,400 ----
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   104
***************
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   105
*** 473,487 ****
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   106
        if (x->menubar_widget)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   107
          {
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   108
            GtkWidget *gwdesc = xg_win_to_widget (dpyinfo->display, wdesc);
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   109
-           int found = 0;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   110
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   111
!           BLOCK_INPUT;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   112
            if (gwdesc != 0
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   113
                && (gwdesc == x->menubar_widget
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   114
!                   || gtk_widget_get_parent (gwdesc) == x->menubar_widget))
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   115
!             found = 1;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   116
!           UNBLOCK_INPUT;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   117
!           if (found) return f;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   118
          }
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   119
  #else
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   120
        if (x->menubar_widget
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   121
--- 422,435 ----
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   122
        if (x->menubar_widget)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   123
          {
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   124
            GtkWidget *gwdesc = xg_win_to_widget (dpyinfo->display, wdesc);
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   125
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   126
! 	  /* This gives false positives, but the rectangle check in xterm.c
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   127
! 	     where this is called takes care of that. */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   128
            if (gwdesc != 0
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   129
                && (gwdesc == x->menubar_widget
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   130
! 		  || gtk_widget_is_ancestor (x->menubar_widget, gwdesc)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   131
! 		  || gtk_widget_is_ancestor (gwdesc, x->menubar_widget)))
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   132
! 	    return f;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   133
          }
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   134
  #else
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   135
        if (x->menubar_widget
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   136
*** emacs-23.1/src/xterm.c.orig	Wed Oct 14 16:37:20 2009
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   137
--- emacs-23.1/src/xterm.c	Wed Oct 14 17:35:12 2009
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   138
***************
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   139
*** 109,116 ****
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   140
  #if defined (USE_X_TOOLKIT) || defined (USE_GTK)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   141
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   142
  extern void free_frame_menubar P_ ((struct frame *));
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   143
- extern struct frame *x_menubar_window_to_frame P_ ((struct x_display_info *,
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   144
- 						    int));
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   145
  #endif
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   146
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   147
  #ifdef USE_X_TOOLKIT
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   148
--- 109,114 ----
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   149
***************
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   150
*** 143,153 ****
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   151
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   152
  #endif /* USE_X_TOOLKIT */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   153
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   154
- #if ! defined (USE_X_TOOLKIT) && ! defined (USE_GTK)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   155
- #define x_any_window_to_frame x_window_to_frame
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   156
- #define x_top_window_to_frame x_window_to_frame
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   157
- #endif
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   158
- 
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   159
  #ifdef USE_X_TOOLKIT
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   160
  #include "widget.h"
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   161
  #ifndef XtNinitialState
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   162
--- 141,146 ----
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   163
***************
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   164
*** 3916,3921 ****
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   165
--- 3909,3923 ----
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   166
  		if (child == None || child == win)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   167
  		  break;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   168
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   169
+ #ifdef USE_GTK
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   170
+ 		/* We don't wan't to know the innermost window.  We
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   171
+ 		   want the edit window.  For non-Gtk+ the innermost
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   172
+ 		   window is the edit window.  For Gtk+ it might not
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   173
+ 		   be.  It might be the tool bar for example.  */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   174
+ 		if (x_window_to_frame (FRAME_X_DISPLAY_INFO (*fp), win))
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   175
+ 		  break;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   176
+ #endif
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   177
+ 
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   178
  		win = child;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   179
  		parent_x = win_x;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   180
  		parent_y = win_y;
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   181
***************
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   182
*** 3932,3939 ****
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   183
--- 3934,3947 ----
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   184
  	       parent_{x,y} are invalid, but that's okay, because we'll
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   185
  	       never use them in that case.)  */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   186
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   187
+ #ifdef USE_GTK
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   188
+ 	     /* We don't wan't to know the innermost window. We
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   189
+ 		want the edit window. */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   190
+ 	    f1 = x_window_to_frame (FRAME_X_DISPLAY_INFO (*fp), win);
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   191
+ #else
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   192
  	    /* Is win one of our frames?  */
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   193
  	    f1 = x_any_window_to_frame (FRAME_X_DISPLAY_INFO (*fp), win);
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   194
+ #endif
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   195
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   196
  #ifdef USE_X_TOOLKIT
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   197
  	    /* If we end up with the menu bar window, say it's not
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   198
*** emacs-23.1/src/xterm.h.orig	Wed Oct 14 15:08:03 2009
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   199
--- emacs-23.1/src/xterm.h	Wed Oct 14 17:35:12 2009
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   200
***************
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   201
*** 374,380 ****
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   202
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   203
  #if defined (USE_X_TOOLKIT) || defined (USE_GTK)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   204
  extern struct frame *x_any_window_to_frame P_ ((struct x_display_info *, int));
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   205
! extern struct frame *x_non_menubar_window_to_frame P_ ((struct x_display_info *, int));
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   206
  extern struct frame *x_top_window_to_frame P_ ((struct x_display_info *, int));
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   207
  #endif
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   208
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   209
--- 374,380 ----
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   210
  
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   211
  #if defined (USE_X_TOOLKIT) || defined (USE_GTK)
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   212
  extern struct frame *x_any_window_to_frame P_ ((struct x_display_info *, int));
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   213
! extern struct frame *x_menubar_window_to_frame P_ ((struct x_display_info *, int));
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   214
  extern struct frame *x_top_window_to_frame P_ ((struct x_display_info *, int));
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   215
  #endif
11a04b640bf2 7029475 Move gnu-emacs to userland
Ali Bahrami <Ali.Bahrami@Oracle.COM>
parents:
diff changeset
   216