[Pidgin] #2629: Modifications needed for building with native GTK on MacOSX + docklet using GtkStatusIcon

Pidgin trac at pidgin.im
Sat Oct 31 22:36:16 EDT 2009


#2629: Modifications needed for building with native GTK on MacOSX + docklet using
GtkStatusIcon
-------------------------------+--------------------------------------------
 Reporter:  nevil              |        Owner:  rlaager     
     Type:  patch              |       Status:  new         
Milestone:  2.7.0              |    Component:  pidgin (gtk)
  Version:                     |   Resolution:              
 Keywords:  MacOSX gtk native  |  
-------------------------------+--------------------------------------------

Comment(by QuLogic):

 Replying to [comment:38 charkins]:
 > There are some issues with the docklet context menu when using
 GtkStatusIcon on win32. The context menu shows scroll buttons on the top
 and bottom, with the content appearing off of the bottom of the context
 menu window.

 I think this is caused by the `push_in` parameter to the
 !GtkPositionMenuFunc. According to the GTK docs, it does the following:
 >> This parameter controls how menus placed outside the monitor are
 handled. If this is set to TRUE and part of the menu is outside the
 monitor then GTK+ pushes the window into the visible area, effectively
 modifying the popup position. Note that moving and possibly resizing the
 menu around will '''alter the scroll position''' to keep the menu items
 "in place", i.e. at the same monitor position they would have been without
 resizing. In practice, this behavior is only useful for combobox popups or
 option menus and cannot be used to simply confine a menu to monitor
 boundaries. In that case, changing the scroll offset is not desirable.

 The implementation for !GtkStatusIcon always sets this parameter to TRUE.
 In `docklet_gtk_status_position_menu`, you can try setting `*push_in =
 FALSE;` after the call to `gtk_status_icon_position_menu`.

-- 
Ticket URL: <http://developer.pidgin.im/ticket/2629#comment:43>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list