1. 06 May, 1998 2 commits
    • Stefan Jeske's avatar
      Removed code that caused an endless loop. · 1afc96a7
      Stefan Jeske authored
      	* gtk/testgtk.c (unselect_all): Removed code that caused an
      	endless loop.
      1afc96a7
    • Tim Janik's avatar
      reimplemented the signal storage system to use a linear array rather than · 518a8a9c
      Tim Janik authored
      Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.c: reimplemented the signal storage system to use a
              linear array rather than a hash table.
              be carefull *not* to keep any GtkSignal pointers across invokations
              of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
              general code cleanups, made all allocations through memchunks.
              (gtk_signal_lookup): we now do the lookup of signals through a key_id
              for the signal names to avoid multiple hashing of the signal name on
              lookups for the several hirarchy levels of an object.
      
      Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
              checking for signal initialization in gtksignal.c.
      
              * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
              a long debugging period ;)
      
      Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
              gtk_type_is_a().
              * gtk/gtktypeutils.c: reimplemented the type storage system to use a
              linear array rather than a hash table. it actually speeded up testgtk
              for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
              pointers across invokations of gtk_type_node_next_and_invalidate() and
              therefore gtk_type_unique()!
      
              * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
              inheritance of a class pointer.
              (GTK_OBJECT): modifications for speedups.
              (GTK_IS_OBJECT): likewise.
              (GTK_OBJECT_CLASS): likewise.
              (suggested by owen).
      
              * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
      
              * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
      
              * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
              since its derivation changed 4 month ago ;(. showed up with the unique
              type name checking code in gtk_type_unique().
      
              * random guint->GtkType and macro fixups.
      518a8a9c
  2. 05 May, 1998 1 commit
  3. 04 May, 1998 3 commits
    • Federico Mena Quintero's avatar
      Added $x_libs in the other_libraries field in the check for · 12fd81ef
      Federico Mena Quintero authored
      1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
      
      	* configure.in: Added $x_libs in the other_libraries field in the
      	check for XShapeCombineMask.
      12fd81ef
    • Owen Taylor's avatar
      2780a82a
    • Owen Taylor's avatar
      Merges from the gtk-1-0 branch · d142827b
      Owen Taylor authored
      Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
      	"glibconfig.h" and another about writing another IRC
      	client.
      
      Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
      	parameters to log are doubles. Digital Unix apparently
      	is missing the argument in its prototype.
      
      Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtklabel.c (gtk_label_state_changed): Don't
      	force a clear until the widget is actually on
      	screen.
      
      Hopefully nothing else though CVS think there are a whole
      bunch more changed files.
      d142827b
  4. 03 May, 1998 4 commits
    • Owen Taylor's avatar
      configure.in acheader.h gdk/gdkwindow.c Check for Shape extension both on · 4851efe2
      Owen Taylor authored
      Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* configure.in acheader.h gdk/gdkwindow.c
      	Check for Shape extension both on the client and server
      	side. (And, more importantly, check for the shape extension
      	so we may include -lXext even when compiling with --disable-xshm)
      
      	Don't set override_redirect on all shaped windows. It isn't
      	necessary.
      
      	* gdk/gdkwindow.c: Set ->colormap to NULL for root
      	and foreign windows. Use this to check if we
      	need to get the colormap from X.
      
      Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkbutton.c (gtk_button_paint): Draw the areas
      	between the default and the button always in GTK_STATE_NORMAL.
      
      	* gtk/gtkrange.c (gtk_range_style_set): Added a style_set
      	callback.
      
      Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
      	  Fix a buffer overflow on pixmaps that claim to have
      	  more than 31 characters p...
      4851efe2
    • Tim Janik's avatar
      hmmmm, corrections? · c0b92323
      Tim Janik authored
      c0b92323
    • Tim Janik's avatar
      new function to set the adjustments value without causing a current · 5c9af6b5
      Tim Janik authored
      Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
                      to set the adjustments value without causing a current emission of
                              "value_changed" to be restarted.
      
                                      * gtk/gtksignal.c: added new functions to retrive the number of
                                              existing emissions for a certain signal.
                                                      (gtk_signal_n_emissions): new function.
                                                              (gtk_signal_n_emissions_by_name): new function.
      5c9af6b5
    • Tim Janik's avatar
      new function to set the current focus_child of a container, does proper · 19bbe055
      Tim Janik authored
      Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
                      set the current focus_child of a container, does proper referencing and
                              adjusts the vadjustment/hadjustment associated with the focus widget.
      
                                      * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
                                              containers via gtk_container_set_focus_child.
      
                                                      * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
                                                              where appropriate.
      
                                                                      * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
                                                                              child since not every child removal goes through this function (this
                                                                                      showed up after gtk_container_set_focus_child() started to reference the
                                                                                              focus_child of a container).
      
                                                                                                      * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
                                                                                                              of a container from gtk_container_remove into this place.
      19bbe055
  5. 02 May, 1998 4 commits
    • Tim Janik's avatar
      added new functions to operate on intermediate function pointers. · 2ca03393
      Tim Janik authored
      Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.c: added new functions to operate on intermediate
                      function pointers. implemented incremental blocking.
                              (gtk_signal_disconnect_by_func): new function.
                                      (gtk_signal_handler_block_by_func): new function.
                                              (gtk_signal_handler_unblock_by_func): new function
      2ca03393
    • Owen Taylor's avatar
      merging owen's bug fix · 864a3863
      Owen Taylor authored
      Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
      
              * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
                      Always show the scrollbars when the policy is
                              GTK_POLICY_ALWAYS...
      864a3863
    • Tim Janik's avatar
      only emit "value_changed" if we really passed a new value. · d466bcb7
      Tim Janik authored
      Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
                      "value_changed" if we really passed a new value.
                              (gtk_adjustment_changed): new function to emit the "changed" signal.
                                      (gtk_adjustment_set_value): new function to emit the "value_changed"
                                              signal.
      d466bcb7
    • Tim Janik's avatar
      do not just return if the combo-list is empty since that will cause the · 998ac310
      Tim Janik authored
      Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
                      the combo-list is empty since that will cause the combo to operate
                              on a non existing GtkList window.
                                      (gtk_combo_get_pos): provide the combo list with a usfull default
                                              height if empty.
                                                      (gtk_combo_popup_button_press): grab the focus.
                                                              (gtk_combo_activate): grab the focus.
      998ac310
  6. 01 May, 1998 5 commits
    • Owen Taylor's avatar
      Further changes to the way the window is popped up so that it will be · b0a28fda
      Owen Taylor authored
      Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkcombo.c: Further changes to the way the window
      	is popped up so that it will be compatible with
      	auto-scrolling in the future.
      b0a28fda
    • Owen Taylor's avatar
      New function to reset the RC styles for a heirarchy · de210bbd
      Owen Taylor authored
      Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
      	function to reset the RC styles for a heirarchy
      
              Clear the window background if necessary in
      	gtk_window_style_set.
      
      	* gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
      	rereads all previously read RC files.
      
      	* gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
      	(Should it just be called gdk_get_toplevels?)
      
      	* gtk/testgtk.c: New test to reload RC files.
      de210bbd
    • Tim Janik's avatar
      prefixed all clist flags with GTK_ to avoid name clashes. redefined · befef270
      Tim Janik authored
      Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkclist.h:
                      * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
                              clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
                                      GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
                                              the GTK_ prefix (this solution involved less changes in the
                                                      gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
                                                              the mem_chunk==NULL test in gtk_clist_construct. merged in changes
                                                                      from lars & stefan to support the derivation of GtkCtree.
      
                                                                              * gtkctree.h:
                                                                                      * gtkctree.c:
                                                                                              initial import of a tree widget derived from gtkclist, courtesy
                                                                                                      of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
                                                                                                              it just damn rocks!
      
      
      Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
              for us.
              (gtk_list_insert_items):
              (gtk_list_remove_items_internal):
              (gtk_list_clear_items):
              remove a possible pointer grab, we might get thrown into a loop
              otherwise.
              (gtk_list_button_press): grab the pointer *before* selecting the child,
              because selection of items may cause the lists children to change,
              resulting in a grab release.
              (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
              children.
              (gtk_list_shutdown): remove all children from the list.
              (gtk_real_list_unselect_child):
              (gtk_real_list_select_child): *always* put our internal structures into
              sane state *before* signal emisions (i.e. list->selection updates prior
              to gtk_list_item_[de]select() calls).
      
              * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
              focused child walks out of the window.
              removed CAN_FOCUS for the combo arrow's button since it doesn't react
              to keyboard events ("clicked" connection is missing).
      befef270
    • Owen Taylor's avatar
      changed log · ce46df0b
      Owen Taylor authored
      ce46df0b
    • Owen Taylor's avatar
      05bc6a5b
  7. 30 Apr, 1998 1 commit
    • Owen Taylor's avatar
      Allow the user to use the popup list like a menu. · 8850ce81
      Owen Taylor authored
      Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkcombo.[ch]: Allow the user to use the popup list
      	like a menu.
      
      	* gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
      	to gtkitem.c so dragging can also work in lists.
      
      	* gtk/gtklist.[ch]: Track child enter events and use
      	those to allow dragging the selection.
      
      Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtktext.c: Try enabling background pixmaps for editable text
      	widgets.  There is a bit of flashing, but not too bad. If you
      	don't want the flashing, you can always not set a background
      	pixmap.
      
      Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtktext.c: Fixed a bug where the drawn level
      	was being messed up when the text was scrolled
      	during a deletion.
      8850ce81
  8. 29 Apr, 1998 1 commit
  9. 24 Apr, 1998 2 commits
    • Owen Taylor's avatar
      merging changes from owen: · 5647eeec
      Owen Taylor authored
      
      Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
      
              * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
              that when we are running with a non-installed colormap,
              in 8-bit pseudo-color, we actually are using the system
              visual. (Fixes *Bad Match* errors on Digital Unix machines
              with multiple 8-bit pseudo-color visuals)
      
      -r HEAD and -r gtk-1-0 are in sync now!
      5647eeec
    • Tim Janik's avatar
      changed ref_count field to be of type guint. added check for ref_count>0; · 3e3c14e9
      Tim Janik authored
      Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
                      field to be of type guint.
                              * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
                                      ref_count>0;
                                              (gtk_accelerator_table_install): keep a per object list of accelerator
                                                      tables that refer to this object.
                                                              (gtk_accelerator_table_remove): remove the accelerator table from the
                                                                      per object list.
                                                                              (gtk_accelerator_table_clean): warn if there are any object references
                                                                                      left in an accelerator table upon destruction.
                                                                                              (gtk_accelerator_tables_delete): new function to delete object
                                                                                                      references from the accelerator tables associated with this object.
      
                                                                                                              * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
                                                                                                                      GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
                                                                                                                              of an accelerator can be prevented by gtk_signal_emit_stop().
                                                                                                                                      (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
                                                                                                                                              so there are no stale pointers in accelerator tables left.
      
      
      
      this change is binary compatible, so just touch gtkaccelerator.h -r gtkwidget.h
      3e3c14e9
  10. 23 Apr, 1998 1 commit
  11. 22 Apr, 1998 1 commit
    • Tim Janik's avatar
      prepend the running_timeouts list with the tmp_list link itself, not with · 0dc21c56
      Tim Janik authored
      Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
                      running_timeouts list with the tmp_list link itself, not with a new
                              GList structure pointing to our link. that would fill up memory and
                                      causes the GList.data fields of the running_timeouts list to point to
                                              GList structures and not GtkTimeoutFunction structures which is a
                                                      *really* bad thing.
                                                              (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
                                                                      the above entry ;).
      0dc21c56
  12. 18 Apr, 1998 1 commit
    • Tim Janik's avatar
      new function ala gtk_radio_button_set_group. (gtk_radio_menu_item_init): · 57703d01
      Tim Janik authored
      Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkradiomenuitem.h:
                      * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
                              ala gtk_radio_button_set_group.
                                      (gtk_radio_menu_item_init): assure that we always have at least a group
                                              that points to self.
      
                                                      * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
                                                              added g_return_if_fail() statements.
                                                                      (gtk_radio_button_init): assure that we always have at least a group
                                                                              that points to self.
      57703d01
  13. 17 Apr, 1998 1 commit
  14. 15 Apr, 1998 2 commits
  15. 14 Apr, 1998 4 commits
    • PDT 1998 Shawn T. Amundson's avatar
      Released GTK+ 1.0.0 · 2b210ff4
      PDT 1998 Shawn T. Amundson authored
      Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
      
              * Released GTK+ 1.0.0
      2b210ff4
    • Owen Taylor's avatar
      Don't read the character past the end of the text. · 385164d6
      Owen Taylor authored
      Mon Apr 13 21:40:14 1998  Owen Taylor  <owt1@cornell.edu>
      
      	* gtk/gtktext.c (find_char_width): Don't read the
      	character past the end of the text.
      
      	* gtk/gtkrange.c (gtk_real_range_timer): If the mouse
      	button has been released before the timer is activated,
      	don't keep on scrolling.
      
      	* gdk/gdk.c (gdk_event_translate): Filter subsequent configure
      	events after we discard the first. Removed obsolete and
      	sometimes very slow GdkOtherEvent. (Left in gdktypes.h
      	with signal in GTK)
      385164d6
    • PDT 1998 Shawn T. Amundson's avatar
      update address info to gtk.org for ftp and web sites. · 5c67089e
      PDT 1998 Shawn T. Amundson authored
      Mon Apr 13 18:03:54 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
      
              * README: update address info to gtk.org for ftp and web sites.
      5c67089e
    • Federico Mena Quintero's avatar
      New function; wrapper for XPolygonRegion(). · af36f776
      Federico Mena Quintero authored
      1998-04-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
      
      	* gdk/gdkregion.c (gdk_region_polygon): New function; wrapper for
      	XPolygonRegion().
      
      	* gdk/gdk.h: Added prototype for gdk_region_polygon().
      
      	* gdk/gdktypes.h (GdkFillRule): New enum type of fill rule for polygons.
      af36f776
  16. 13 Apr, 1998 6 commits
    • Michael K. Johnson's avatar
      removed duplicate call to gtk_widget_set_policy. · 1d617210
      Michael K. Johnson authored
      Mon Apr 13 15:04:26 1998  Michael K. Johnson <johnsonm@redhat.com>
      
              * gtk/testgtk.c (create_clist): removed duplicate call to
              gtk_widget_set_policy.
      1d617210
    • Tim Janik's avatar
      check for accelerator table to be != NULL. · 18dfa1ae
      Tim Janik authored
      Mon Apr 13 05:03:11 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkwindow.c (gtk_window_add_accelerator_table): check for
                      accelerator table to be != NULL.
                              (gtk_window_remove_accelerator_table): likewise.
      18dfa1ae
    • PDT 1998 Shawn T. Amundson's avatar
      typo, gtk-1.0.0 should be gtk+-1.0.0 A little more intro on what gtk is... · 7ec26905
      PDT 1998 Shawn T. Amundson authored
      Sun Apr 12 19:35:09 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
      
              * INSTALL: typo, gtk-1.0.0 should be gtk+-1.0.0
      	* README: A little more intro on what gtk is...
      7ec26905
    • Owen Taylor's avatar
      An old allocation error. · a3ee7a94
      Owen Taylor authored
      Sun Apr 12 22:43:22 1998  Owen Taylor  <owt1@cornell.edu>
      
      	* gtk/gtkmenuitem.c (gtk_menu_item_size_allocate):
      	An old allocation error.
      
      	* gtk/gtkviewport.c (gtk_viewport_add): Don't map
      	when adding a not-VISIBLE widget to a VISIBLE
      	viewport.
      a3ee7a94
    • PDT 1998 Shawn T. Amundson's avatar
      Changed LGPL address for FSF in all .h and .c files · 92006c8e
      PDT 1998 Shawn T. Amundson authored
      Sun Apr 12 18:54:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
      
              * Changed LGPL address for FSF in all .h and .c files
      92006c8e
    • Owen Taylor's avatar
      Set a flag so instead of clearing the area in advance. That looked · e6af5d49
      Owen Taylor authored
      Sun Apr 12 20:09:40 1998  Owen Taylor  <owt1@cornell.edu>
      
      	* gtk/gtklabel.[ch] (gtk_label_expose): Set a flag so
      	instead of clearing the area in advance. That looked
      	_really_ bad.
      
      	* gtk/gtkcontainer.c (gtk_container_class_init): Changed
      	"focus" to RUN_LAST.
      
      	* gtk/gtkentry.c (gtk_entry_realize): Fixed place
      	where allocation was used where requisition was meant.
      	(Found by David J N Begley <david@avarice.nepean.uws.edu.au>)
      
      	* gtk/gtkwindow.c (gtk_window_set_default): Fixed
      	assertion in when setting default to NULL>
      	("Damon Chaplin" <DAChaplin@email.msn.com>)
      
      	* gtk/gtkwidget.c (gtk_widget_unparent): Unset the
      	default widget on the toplevel, if necessary.
      
      Sun Apr 12 02:04:21 1998  Owen Taylor  <owt1@cornell.edu>
      
      	* gtk/gtkpreview.c: Removed unecessary and harmful
      	htons/ntohs when storing properties. (X does the byte
      	swapping itself)
      e6af5d49
  17. 11 Apr, 1998 1 commit