1. 17 Dec, 2000 1 commit
    • Havoc Pennington's avatar
      Port to GObject, can go back in gdk-pixbuf after setting up a · fde4fecf
      Havoc Pennington authored
      2000-12-16  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c:
      Port to GObject, can go back in gdk-pixbuf after setting up
      a gdk-pixbuf-marshal.h header over there.
      
      * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
      (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
      args
      (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
      set
      (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
      here, do it when we create the buttons later
      (gtk_tree_view_realize_buttons): add some g_return_if_fail
      (gtk_tree_view_map): paranoia checks that column->button is shown
      and unmapped
      (gtk_tree_view_size_request): only request visible children.
      Move header size calculation in here, for cleanliness, and
      to maintain invariants for child widgets if we eventually
      let users set different children inside the buttons
      (gtk_tree_view_map_buttons): factor out code to map buttons,
      since it was being called several times
      (gtk_tree_view_size_allocate_buttons): move_resize the drag
      windows instead of just moving them; their height may change
      if we allow random widgets in there, or the theme changes.
      (gtk_tree_view_size_allocate): move button size allocation
      above emitting the scroll signals, to ensure a sane state when we
      hit user code
      (gtk_tree_view_button_release): remove queue_resize after
      tree_view_set_size(), set_size() will handle any resize queuing
      that's needed
      (gtk_tree_view_focus_in): just queue a draw, don't fool with
      draw_focus goo
      (gtk_tree_view_focus): use gtk_get_current_event() and
      gdk_event_get_state()
      (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
      (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
      semicolon
      (gtk_tree_view_create_button): show the button here
      (gtk_tree_view_button_clicked): actually emit the clicked signal
      on the column
      (_gtk_tree_view_set_size): return right away if the size is
      unchanged, as a cheesy optimization
      (gtk_tree_view_setup_model): rename set_model_realized to
      setup_model to match the flag that indicates whether we've
      called it
      (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
      exist, because set_scroll_adjustment does that and it shouldn't
      matter what order you call these in
      (gtk_tree_view_get_vadjustment): ditto
      (gtk_tree_view_set_headers_visible): canonicalize the bool,
      for paranoia
      (gtk_tree_view_set_headers_visible): call
      gtk_tree_view_map_buttons() instead of using cut-and-paste code
      (gtk_tree_view_append_column): clarify whether the return value
      is the count of columns before or after, and do the increment
      separately from the return statement so you can tell from the code.
      (gtk_tree_view_remove_column): ditto
      (gtk_tree_view_insert_column): ditto
      (gtk_tree_view_get_column): remove g_return_if_fail for columns
      outside the existing range, the docs say that outside-range
      columns are allowed, so we handle them as documented. (Presumably
      this allows a nice loop with column != NULL as test.)
      (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments
      mean (left/right/center etc.).
      (gtk_tree_view_collapse_all): only queue a draw if we're mapped
      (gtk_tree_view_expand_row): add docs
      (gtk_tree_view_collapse_row): add docs
      
      * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
      function to emit the clicked signal on a column
      
      * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
      state of an event
      (gdk_event_get_time): don't treat GDK_SCROLL
      as a button event, remove default case from switch so gcc
      will whine if we don't explicitly handle all event types
      
      * gtk/gtktreeselection.h: added some FIXME
      
      * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
      "columns" to "n_columns" and "column" to "columns" for clarity
      fde4fecf
  2. 16 Dec, 2000 1 commit
    • Havoc Pennington's avatar
      General cleanup of the log attr iteration stuff. This should make e.g. the · e405f75c
      Havoc Pennington authored
      2000-12-16  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtktextiter.c: General cleanup of the log attr iteration
      stuff. This should make e.g. the delete key work again in the
      text widget...
      (gtk_text_iter_forward_cursor_positions): handle negative count
      (gtk_text_iter_backward_cursor_positions): handle negative count
      (gtk_text_iter_forward_word_ends): handle negative count
      (gtk_text_iter_backward_word_starts): handle negative count
      
      * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
      gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c,
      gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to
      GObject. No doubt will cause breakage.
      
      * demos/gtk-demo/textview.c: remove hacks around
      non-GObject-ification of the text objects
      
      * demos/gtk-demo/main.c (main): use g_object_set() to manipulate
      the text tag
      e405f75c
  3. 15 Dec, 2000 2 commits
    • Owen Taylor's avatar
      Add two virtualized functions gdk_drawable_get_clip_region - to get the · 6e5a269f
      Owen Taylor authored
      Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
      
              * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
      	Add two virtualized functions gdk_drawable_get_clip_region - to
      	get the clip region when drawing.
      
      	* gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
      	use invalidate_region.
      
      	* gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
      	region.
      
      	* acconfig.h configure.in: Check for Xft. For now, assume
      	that if Xft is found, Pango was compiled with Xft support
      	as well.
      
      	* gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add
      	gdk_colormap_query_color().
      
      	* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
      	with Xft if appropriate.
      
      	* gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
      	a pangoxft context if we have XFT and the environment
      	variable GD_USE_XFT is set.
      
      	* gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
      	and also possibly an XftDraw structure.
      
              * gtk/gtkfontsel.c: Handle the case where the font from the
      	style doesn't match any of the fonts a bit better.
      
      	* gtk/testgtk.c: Add tabs between directional segments for
      	hebrew/arabic test. (Not really necessary, just a little
      	prettier.)
      6e5a269f
    • Havoc Pennington's avatar
      fix unicode validation when reading a file · 2142a98c
      Havoc Pennington authored
      2000-12-14  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/testtext.c (fill_file_buffer): fix unicode validation when
      	reading a file
      2142a98c
  4. 14 Dec, 2000 4 commits
    • Havoc Pennington's avatar
      remove unused call to get_last_line() · 94ec8cff
      Havoc Pennington authored
      2000-12-14  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
      	unused call to get_last_line()
      
      	* gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
      	here until boxed is working (and maybe after that - we should
      	really not gratuitously break old code)
      
      	* gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
      	specific types for font_desc and tabs args, move them to
      	GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get
      	fixed. Move GdkColor args to GTK_TYPE_POINTER also.
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
      	use GTK_TYPE_POINTER for signal signatures as a hack-around
      
      	* gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
      	PangoTabArray
      
      	* gtk/gtktextlayout.c (line_display_iter_to_index):
      	make static
      	(line_display_index_to_iter): make static
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
      	to marshal a string not a boxed
      
      	* gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
      
      	* gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
      	since the UTF-8 isn't validated yet
      
      	* gtk/gtktextsegment.c (char_segment_check_func): don't require
      	lines to end in '\n'
      
      	* gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
      	forward_to_delimiters, and grapheme boundaries
      	(gtk_text_view_delete_from_cursor): properly handle non-newline
      	delimiters, and grapheme boundaries
      
      	* gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
      	to gtk_text_iter_forward_to_delimiters, and make it work properly
      	if empty lines end with a character other than '\n'
      
      	* gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
      	position
      94ec8cff
    • Tor Lillqvist's avatar
      Add gdkkeys. · 2e70f892
      Tor Lillqvist authored
      2000-12-15  Tor Lillqvist  <tml@iki.fi>
      
      	* gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
      
      	* gtk/gtk.def
      	* gdk/gdk.def: Update.
      
      	* gdk/win32/gdkmain-win32.c
      	* gdk/win32/gdkkeys-win32.c: New file. Move some functions from
      	gdkmain-win32.c here.
      
      	* gdk/win32/makefile.mingw.in (all): No need to make
      	gdk-win32res.o here, the makefile one step up will call us to make
      	it.
      
      	* gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
      	gdkkeys-win32.
      
      	* gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
      
      	* gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
      	call to g_source_add().
      
      	* gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
      	leak. Thanks to Andreas Kemnade.
      2e70f892
    • Havoc Pennington's avatar
      Remove double _ in front of some functions · be59b202
      Havoc Pennington authored
      2000-12-13  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtktextbtree.h: Remove double _ in front of some functions
      
      * gtk/gtktext*.[hc]: update accordingly
      be59b202
    • Havoc Pennington's avatar
      Put _ in front of every function in this header file · bacb35ba
      Havoc Pennington authored
      2000-12-13  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtktextbtree.h: Put _ in front of every function in this
      header file
      
      * gtk/gtktext*.[hc]: update to reflect renamed btree functions
      bacb35ba
  5. 13 Dec, 2000 1 commit
    • Tim Janik's avatar
      doh, this was broken beyond believe. · 2c9eb3a5
      Tim Janik authored
      Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
      
      	* gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
      
      	* gtk/gtkbox.c: change property types from (u)long to (u)int for
      	::position and ::padding.
      
      	* gtk/gtkcontainer.c: make ::border_width an INT property.
      
      	* gtk/gtkpacker.c: make ::position an INT property.
      
      	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
      	guard against NULL h/v scrollbars, since this is used at construction
      	time.
      
      	* gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
      	internal gtk_clist_constructor().
      
      	* gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
      	gtk_ctree_constructor().
      
      	* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
      	::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
      
      	* docs/reference/Makefile.am: fun stuff, disabled docs generation
      	again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
      
      	* gtk/gtkwidget.[hc]:
      	removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
      	and gtk_widget_get().
      	(gtk_widget_new): use g_object_new_valist().
      	(gtk_widget_set): use g_object_set_valist().
      
      	* gtk/gtkobject.[hc]:
      	removed gtk_object_arg_get_info(), gtk_object_getv(),
      	gtk_object_query_args(), gtk_object_newv(),
      	gtk_object_class_add_signals(),
      	gtk_object_class_user_signal_new(),
      	gtk_object_class_user_signal_newv(),
      	gtk_object_arg_set(), gtk_object_arg_get(),
      	gtk_object_args_collect(),
      	gtk_object_default_construct(),
      	gtk_object_constructed(),
      	GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
      	removed nsignals, signals and n_args members from GtkObjectClass.
      	(gtk_object_new): use g_object_new_valist().
      	(gtk_object_set): use g_object_set_valist().
      	(gtk_object_get): use g_object_get_valist().
      
      	* gtk/gtkcompat.h: define gtk_object_default_construct().
      
      	* gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
      	g_object_new().
      
      	* gtk/*.c: removed gtk_object_class_add_signals() from class_init()
      	fucntions, cleaned up method assignments (make sure your structures
      	are setup properly before calling out). removed all GTK_CONSTRUCTED
      	hacks ;)
      2c9eb3a5
  6. 12 Dec, 2000 2 commits
    • Owen Taylor's avatar
      Fix off-by-one error in checks. (Dave Lambert) · 90461d7d
      Owen Taylor authored
      Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix
      	off-by-one error in checks. (Dave Lambert)
      90461d7d
    • Tim Janik's avatar
      get rid of object_signal:: GtkObject argument uses, use GObject · 53d7e430
      Tim Janik authored
      Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
      
              * gtk/testgtk.c:
              (create_tooltips):
              (create_statusbar): get rid of object_signal:: GtkObject argument uses,
              use GObject swapped_signal:: properties instead.
      
              * gtk/gtkcellrenderertoggle.c:
              * gtk/gtkcellrenderertextpixbuf.c:
              * gtk/gtkcellrenderertext.c:
              * gtk/gtkcellrendererpixbuf.c:
              * gtk/gtkcellrenderer.c:
              * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
              missing warnings for invalid property ids, install properties
              with g_object_class_install_property() now.
      
              * gtk/gtksignal.c:
              (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
      53d7e430
  7. 11 Dec, 2000 4 commits
    • Owen Taylor's avatar
      Add a function to determine if a window is the focus widget within its · 0cdc00ec
      Owen Taylor authored
      Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
      	to determine if a window is the focus widget within
      	its toplevel.
      
      	* gtk/gtkcontainer.[ch]: Fix the return type of ::focus
      	to be boolean.
      
      	* gtk/gtkcontainer.c (gtk_container_real_focus): Move handling
      	of the case where the container CAN_FOCUS to here instead
      	of having it in each individual move-the-focus place.
      
      	* gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
      	focusing to be geometric in a much more obvious sense. Arrowing
      	around is still non-intuitive because it isn't perfect and
      	because entries, etc, grab the arrow keys, but it at least
      	usually will do what you expect now.
      
      	* gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
      	file.
      
      	* gtk/gtknotebook.c: Change tabs to be a single item in
      	the focus chain. Make movement of focus on tabs with arrow
      	keys wrap around.
      
      	* gtk/gtknotebook.c (gtk_notebook_find_child): Add
      	CHECK_FIND_CHILD macro to give informative error messages
      	instead of silent returns.
      
      	* gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT
      	flag since we handle GdkReturn on the tabs.
      
      	* gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
      	windows rather than sending expose events directly.
      
      	* gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure
      	definition for GtkNotebookPage into .c file, since it is private.
      
      	* gtk/testgtk.c (create_notebook): Add option for
      	testing borderless notebook.
      
      	* gtk/testgtk.c (page_switch): Removed egregious poking
      	around in GTK+ internals.
      
      	* docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
      
      	* gtk/gtkclist.[ch]: Remove key press handler, handle focusing
      	properly through gtk_clist_focus. Make the title headers a
      	single item in the tab-focus chain, and make left-right wrap
      	around.
      
      	* gtk/gtkwindow.c (gtk_window_focus): Add a custom
      	focus method so that wrapping around works properly.
      
      	* gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() -
      	that is handled for the widget now.
      0cdc00ec
    • Owen Taylor's avatar
      Flag invisible widgets as TOPLEVEL. · 5a188a9f
      Owen Taylor authored
      Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
      	widgets as TOPLEVEL.
      
      	* gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
      	TOPLEVEL widgets are containers.
      
      	* gtk/gtkinvisible.h: Remove useless include.
      5a188a9f
    • Havoc Pennington's avatar
      Handle chopping off \r\n and 0x2029 in addition to \n before passing to · 310a0d4f
      Havoc Pennington authored
      2000-12-11  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
      	Handle chopping off \r\n and 0x2029 in addition to \n before
      	passing to PangoLayout
      
      	* gtk/gtkimcontextsimple.c
      	(gtk_im_context_simple_get_preedit_string):
      	return an empty string if no match is pending
      
      	* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
      	assertion that the returned preedit string was sane
      
      	* gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
      	s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
      	s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
      310a0d4f
    • Owen Taylor's avatar
      Fix up finalizer to chain to its parent. · 116853db
      Owen Taylor authored
      Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize):
      	Fix up finalizer to chain to its parent.
      116853db
  8. 09 Dec, 2000 1 commit
  9. 08 Dec, 2000 1 commit
    • Havoc Pennington's avatar
      fix breakage here that cause a segfault on text insertion · 565074f9
      Havoc Pennington authored
      2000-12-08  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
      	that cause a segfault on text insertion
      
      	* gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix
      	warning
      
      	* gtk/gtktextiter.c (test_log_attrs): use
      	_gtk_text_buffer_get_line_log_attrs to speed things up a bit
      
      	* gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs):
      	Get log attrs for a line, using a cache stored on the buffer
      
      	* gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
      	reported by Jeff Franks
      565074f9
  10. 06 Dec, 2000 1 commit
    • Havoc Pennington's avatar
      add gdkkeys.[hc] · 36aac017
      Havoc Pennington authored
      2000-12-03  Havoc Pennington  <hp@pobox.com>
      
      * gdk/Makefile.am: add gdkkeys.[hc]
      
      * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
      files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
      
      * acconfig.h, configure.in: add checks and command line options
      for XKB
      
      * gdk/x11/gdkkeys-x11.c: Implement the above functions
      
      * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
      and group in the key event
      
      * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
      field with the low-level hardware key code, and a group
      field with the keyboard group
      
      * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
      and declare a couple globals used for keymap handling
      
      * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
      hold down Shift-Control and type a hex number to get a Unicode
      character corresponding to the hex number
      (gtk_im_context_simple_get_preedit_string): Fix cursor position
      (return bytes not chars)
      36aac017
  11. 05 Dec, 2000 1 commit
    • Owen Taylor's avatar
      Fix link to PNG home, remove reference to fribidi. · a4b2a6a8
      Owen Taylor authored
      Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* INSTALL: Fix link to PNG home, remove reference
      	to fribidi.
      
      	* gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
      
      	* gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
      	tested.)
      
      	* gtk/gtkcheckmenuitem.c: Permanently turn on
      	always_show_toggle.
      
      	* gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to
      	be NULL. (Vladimir Klebanov, #26545)
      
      	* gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix
      	some signed/unsigned comparison problems. (#6510,
      	David Kaelbling)
      
      	* gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
      	return type to boolean (Oskar Liljeblad, #18648)
      a4b2a6a8
  12. 04 Dec, 2000 3 commits
    • Havoc Pennington's avatar
      fix this to be sane · 9365d0d7
      Havoc Pennington authored
      2000-12-04  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
      
      	* gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
      
      	* gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
      
      	* gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary
      	hack to avoid infinite loops (queue draw instead of draw) -
      	Owen has more appropriate fixes in a branch he'll check in later.
      
      	* gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
      	separator, CR, and CRLF as line ends
      
      	* gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
      	into lines using pango_find_paragraph_boundary(); other bits of
      	the widget are still going to be broken if the boundary isn't '\n'
      	though
      9365d0d7
    • Havoc Pennington's avatar
      Fix bugs Alex found: · 9cca191b
      Havoc Pennington authored
      2000-12-04  Havoc Pennington  <hp@redhat.com>
      
              Fix bugs Alex found:
      
      	* gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
      	to "draw"
      
      	* gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
      
      	* gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
      
      	* gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw()
      	implementation in here, apparently the expose() implementation was
      	dead code.
      9cca191b
    • Havoc Pennington's avatar
      Remove "draw" virtual method and signal · 5995baab
      Havoc Pennington authored
      2000-12-02  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
      method and signal
      
      * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
      calls gdk_window_process_updates() to push the exposes through
      (gtk_widget_class_init): No more draw signal, no
      gtk_widget_real_draw()
      
      * gtk/gtkbin.c (gtk_bin_draw): remove
      
      * gtk/gtkbox.c (gtk_box_draw): remove
      
      * gtk/gtkbutton.c (gtk_button_draw): remove
      
      * gtk/gtkcalendar.c (gtk_calendar_draw): remove
      
      * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
      
      * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
      
      * gtk/gtkclist.c (gtk_clist_draw): remove
      
      * gtk/gtkentry.c (gtk_entry_draw): remove
      
      * gtk/gtkeventbox.c (gtk_event_box_draw): remove
      
      * gtk/gtkfixed.c (gtk_fixed_draw): remove
      
      * gtk/gtkframe.c (gtk_frame_draw): remove
      
      * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
      
      * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
      
      * gtk/gtklayout.c (gtk_layout_draw): remove
      
      * gtk/gtklist.c (gtk_list_draw): remove
      
      * gtk/gtklistitem.c (gtk_list_item_draw): remove
      
      * gtk/gtkmenu.c (gtk_menu_draw): remove
      
      * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
      
      * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
      
      * gtk/gtknotebook.c (gtk_notebook_draw): remove
      
      * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
      
      * gtk/gtkpacker.c (gtk_packer_draw): remove
      
      * gtk/gtkrange.c (gtk_range_draw): remove
      
      * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
      
      * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
      
      * gtk/gtktable.c (gtk_table_draw): remove
      
      * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
      
      * gtk/gtktext.c (gtk_text_draw): remove
      
      * gtk/gtktextview.c (gtk_text_view_draw): remove
      
      * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
      
      * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
      
      * gtk/gtktree.c (gtk_tree_draw): remove
      
      * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
      
      * gtk/gtktreeview.c (gtk_tree_view_draw): remove
      
      * gtk/gtkviewport.c (gtk_viewport_draw): remove
      
      * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
      
      * gtk/gtkvscale.c (gtk_vscale_draw): remove
      
      * gtk/gtkwindow.c (gtk_window_draw): remove
      5995baab
  13. 02 Dec, 2000 2 commits
    • Anders Carlsson's avatar
      Commit GtkToggleButton fix to HEAD too. · b18bb07b
      Anders Carlsson authored
      b18bb07b
    • Havoc Pennington's avatar
      don't create dangling pointers to the appearance attributes from the line · 35876710
      Havoc Pennington authored
      2000-11-30  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
      dangling pointers to the appearance attributes from the
      line display
      
      * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
      width/height to mean "full width/height of drawable"
      
      * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
      click to select word/line
      
      * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters
      when getting log attrs. Get a slice, so that pixmaps and stuff
      are properly handled.
      
      * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
      paste into the selection (replaces selection now, previously
      crashed or added to selection). Reveals longstanding btree bug -
      select multiple lines, middle-click on the selection, boom. This
      isn't related to my changes though.
      
      * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
      PangoLogAttrs changes
      (gtk_entry_move_backward_word): ditto
      
              * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
      	functions return bool whether the iter moved onto a
      	dereferenceable position.
      
      	 * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
      	 functions for motion in terms of display lines.
      
      	 * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
      	 get the buffer a mark is inside
      35876710
  14. 01 Dec, 2000 1 commit
  15. 30 Nov, 2000 2 commits
    • Tor Lillqvist's avatar
      Changes by Hans Breuer: · 68ae419b
      Tor Lillqvist authored
      2000-11-30  Tor Lillqvist  <tml@iki.fi>
      
      	Changes by Hans Breuer:
      
      	* gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
      	Dont't use negative width and height as max_hints. This fixes
      	Owen's recent testgtk changes for win32.
      
      	* gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
      	gdk_win32_hdc_release): These are exported and may be called with
      	other drawable types than our GdkDrawableImplWin32 (?).
      
      	* gdk/gdkwindow.c: Backing store appears to work on Windows now,
      	so always #define USE_BACKING_STORE.
      
      	* gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
      	of printf for debugging output.
      
      	* gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
      
      	* gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
      
      	* gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
      	declaration.
      
      	* gtk/gtktexttypes.h: Ditto.
      
      	* gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
      	(GDK_VoidSymbol) also if in case of arg check failure.
      
      	* gtk/gtkimcontextsimple.c
      	(gtk_im_context_simple_get_preedit_string): Don't assign cursor
      	position to the pointer, but to the variable it points to.
      
      	* gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
      
      	* gtk/gtk.def: Updates.
      68ae419b
    • Elliot Lee's avatar
      Inherits from GTK_TYPE_OBJECT, not GTK_TYPE_TREE_MODEL. · 094159e4
      Elliot Lee authored
      
      
      Inherits from GTK_TYPE_OBJECT, not GTK_TYPE_TREE_MODEL.
      094159e4
  16. 28 Nov, 2000 2 commits
  17. 27 Nov, 2000 1 commit
    • Federico Mena Quintero's avatar
      Connect to the "changed" callback of the adjustment. We need to redraw the · ba97b146
      Federico Mena Quintero authored
      2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
      
      	* gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
      	the "changed" callback of the adjustment.  We need to redraw the
      	spin button's arrows when the adjustment's range changes.
      	(adjustment_changed_cb): Draw the arrows.
      	(gtk_spin_button_value_changed): Draw the arrows.
      ba97b146
  18. 25 Nov, 2000 1 commit
    • Alexander Larsson's avatar
      Huge GtkFB patch with lots of small bugfixes and initial selections implementation. · 1c805555
      Alexander Larsson authored
      2000-11-23  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkselection-fb.c:
      	Initial selection implementation.
      
      	* gtk/gtkselection.c:
      	if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
      	requestor in gtk_selection_request.
      
      	* gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
      	Added gdk_selection_property atom.
      
      	* gdk/linux-fb/gdkprivate-fb.h:
      	Export _gdk_selection_window_destroyed.
      	Removed mask_off_x/y from GdkCursorPrivateFB.
      	Removed hbearing, added top, left to PangoFBGlyphInfo.
      
      	* gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
      	Call _gdk_selection_window_destroyed
      	(_gdk_windowing_window_init): Don't call gdk_cursor_new() before
      	the root window has been created.
      	(static_dx_hack, static_dy_hack, compare_draw_rects,
      	gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
      	in region. They are already sorted. Instead just traverse them in
      	reverse if draw_direction < 0.
      
      	* gdk/linux-fb/gdkinput-ps2.c (send_button_event):
      	Double-clicks must be sent after the normal button_press.
      	(gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
      
      	* gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
      	Pass _gdk_fb_screen_gc instead of NULL.
      
      	* gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
      	Initialize gdk_selection_property.
      	(gdk_event_make): Remove unused code.
      
      	* gdk/linux-fb/gdkcursor-fb.c:
      	Make the pixmap for the cursor the same size as the mask. Also remove
      	the mask_off_x/y fields in GdkCursorPrivateFB and combine
      	_gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
      	Now the whole cursor is visible.
      
      	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
      	Fix bug where xdest+height instead of ydest+height was used
      	to calculate if the source and dest overlapped. This fixes the
      	redraw bug when the main window in testgtk was scrolled when
      	partially covered by a tall window.
      	Copy rectangles in region in order depending on draw_direction.
      	Also moved the draw_direction flipping of start_y and end_y into
      	the gc functions, as this might not be what all of them want.
      	(gdk_fb_draw_lines): Support dashed lines.
      	(gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
      	so that the text is positioned correctly (was 1 pixel high).
      
      	gdk/linux-fb/gdkgc-fb.c:
      	Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
      	all lines were drawn a pixel to short. Also checked the default of
      	the rest of the values, and they're the same as X now.
      
      	* gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
      	Clean up pixel positioning of the glyphs. Just use bgy->top and
      	bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
      	to all divisions to get correct rounding behaviour.
      
      	* gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
      	gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
      	Moved start_y/end_y flip into draw_drawable implementations.
      	Flip also x rendering when draw_direction < 0.
      	Remove unneccesary multiply with draw_direction.
      1c805555
  19. 22 Nov, 2000 3 commits
  20. 21 Nov, 2000 2 commits
  21. 20 Nov, 2000 1 commit
    • Havoc Pennington's avatar
      Semi-finish widget embedding. Need guffaw scrolling to be implemented in · 6f7dd53b
      Havoc Pennington authored
      2000-11-20  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
      	gtk/testtext.c: Semi-finish widget embedding. Need guffaw
      	scrolling to be implemented in GDK to finish. Also, right now
      	we just size_allocate all children on every layout change,
      	which is pretty lame. Test commented out of testtext.c,
      	until it works better.
      6f7dd53b
  22. 18 Nov, 2000 2 commits
    • Jonathan Blandford's avatar
      Changed to have the list become non-italic when the demo window is · c9e39436
      Jonathan Blandford authored
      Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
      
      	* demos/gtk-demo/main.c: Changed to have the list become
      	non-italic when the demo window is destroyed through an external
      	event (like a close button).  Doing so found three bugs in the
      	widget.
      
      	* demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
      
      	* gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
      	we actually set the cell.
      
      	* gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
      
      	* gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
      	free a leaked path.  Thanks memprof.
      c9e39436
    • Owen Taylor's avatar
      Patch from ChiDeok Hwang to fix memleaks found by Evan Martin. · 1f74dcee
      Owen Taylor authored
      Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
      	memleaks found by Evan Martin.
      1f74dcee
  23. 17 Nov, 2000 1 commit
    • Tor Lillqvist's avatar
      Update. · 99b14ff2
      Tor Lillqvist authored
      2000-11-18  Tor Lillqvist  <tml@iki.fi>
      
      	* gtk/gtk.def: Update.
      
      	* gtk/gtktexttypes.h: Mark variables for export/import from DLL.
      99b14ff2