1. 02 Oct, 2002 1 commit
  2. 25 Sep, 2002 1 commit
    • Havoc Pennington's avatar
      fix GtkWindowMnemonic to have a separate typedef · 1689117c
      Havoc Pennington authored
      2002-09-24  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkwindow.c: fix GtkWindowMnemonic to have a separate
      	typedef
      
      	* gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): monitor
      	FULLSCREEN state
      
      	* tests/testgtk.c (get_state_controls): add
      	fullscreen/unfullscreen test
      
      	* gdk/gdkdisplay.c (gdk_display_finalize): fix unused variable
      
      	* gdk/x11/gdkscreen-x11.c (init_xinerama_support): fix unused
      	variable
      
      	* gdk/x11/gdkevents-x11.c (gdk_xsettings_watch_cb): mop up unused
      	variable
      
      	* gdk/x11/gdkscreen-x11.c
      	(_gdk_x11_screen_window_manager_changed): emit
      	window_manager_changed signal
      
      	* gdk/x11/gdkscreen-x11.h (struct _GdkScreenX11Class): add
      	window_manager_changed signal
      
      	* gdk/x11/gdkevents-x11.c
      	(gdk_x11_screen_get_window_manager_name): new function
      
      	* gtk/gtkwindow.c (gtk_window_class_init): add type_hint,
      	skip_taskbar_hint, skip_pager_hint properties
      	(gtk_window_set_skip_taskbar_hint):
      	(gtk_window_get_skip_taskbar_hint):
      	(gtk_window_set_skip_pager_hint):
      	(gtk_window_get_skip_pager_hint):
      	(gtk_window_fullscreen):
      	(gtk_window_unfullscreen): new functions
      
      	* gdk/gdkevents.h (GdkWindowState): add FULLSCREEN state
      
      	* gdk/gdkwindow.h (GdkWindowTypeHint): add missing type hint
      	values
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_set_skip_taskbar_hint):
      	(gdk_window_set_skip_pager_hint):
      	(gdk_window_fullscreen):
      	(gdk_window_unfullscreen): new functions
      	(set_initial_hints): set fullscreen here if appropriate
      1689117c
  3. 25 Apr, 2002 1 commit
    • Owen Taylor's avatar
      Start of integration of Erwann Chenede's multihead work from the · 425b9886
      Owen Taylor authored
      Thu Apr 25 16:51:40 2002  Owen Taylor  <otaylor@redhat.com>
      
              Start of integration of Erwann Chenede's multihead work
              from the gtk-multihead branch.
      
              * gdk/gdkdisplay.[ch] gdk/gdkscreen.[ch]
              gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkscreen-x11.[ch]
              New classes representing a set of screens with attached
              input devices and a single contiguous area, respectively.
      
              * gdk/gdk.[ch] gdk/gdkinternals.h gdk/x11/gdkmain-x11.c:
              gdk/x11/gdkprivate-x11.h: Make the initialization interface
              simple _gdk_windowing_init() and do the rest in
              gdk_open_display() calls.
      
              * gdk/gdk.[ch]: Add gdk_parse_args() which can be used
              to do the display-independent part of initialization
              instead of gdk_init_[check].
      
              * gdk/gdkcursor.h gdk/gdkfont.h gdk/gdkkeys.h gdk/gdkpixmap.h
              gdk/gdkproperty.h gdk/gdkselection.h gdk/gdkwindow.h:
              Add multihead variants (_for_display(), for_screen()) of functions
              getting information specific to a particular screen screen or
              display.
      
              * gdk/gdkscreen.[ch]: Add gdk_screen__* variants of functions
              like gdk_rgb_get_colormap() that used to get/list global
              objects.
      
              * gdk/x11/gdkx.h: Add functions for converting GdkScreen
              and GdkDisplay into the X equivalents.
      
              * gdk/x11/gdkwindow-x11.c: Removed gdk_window_xid_at_coords()
              not in the headers and unused.
      
              * configure.in gdk/x11/{gxid.c,gxid_lib.[ch],gdkinput-gxi.c}:
              Remove gxid support ... has not been tested for a long time...
              "xfree" support is more portable to non XFree86.
      
              * gdk/**.h: Add a GDK_MULTIHEAD_SAFE define that can be
              used to turn off functions that are inherently non-multihead
              safe.
      
              * gdk/**.c: add GDK_NOTE(multihead, ...) calls when functions
              are used in non-multihead-safe ways.
      
              * gdk/*.c gdk/x11/*.c: Changes to make the internals of GDK
              multihead safe.
      425b9886
  4. 28 Jun, 2001 1 commit
    • Tim Janik's avatar
      !GTK_OBJECT_DESTROYED() -> GTK_WIDGET_REALIZE() for resize queueing. · 00f85bf8
      Tim Janik authored
      Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
              GTK_WIDGET_REALIZE() for resize queueing.
      
              * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
              GTK_WIDGET_REALIZE() for post event delivery destruction upon
              GDK_DESTROY.
      
              * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
              sompensate for former (pre-2.0) connect_after() facility.
              (gtk_widget_send_expose):
              (gtk_widget_event): assert the widget is realized, since event delivery
              to non-realized widgets is essentially a bug. event handlers should
              be able to unconditionally rely on widget->window (unless they
              emit events on their own which can trigger widget destruction).
              (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
              logic. event delivery happens as follows:
              a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
              b) if !was_handled in (a) and the widget is still realized, emit event-
                 specific signal (RUN_LAST handler). returns was_handled.
              c) emission of GtkWidget::event-after for notification if the widget is
                 still realized (regardless of was_handled from previous stages, no
                 class handler). no return value.
              d) was_handled gets passed on to caller, to determine further
                 propagation. if the widget got unrealized meanwhile, was_handled
                 is returned as TRUE.
      
              * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
              gdk_event_get_coords().
      00f85bf8
  5. 02 Apr, 2001 1 commit
    • Owen Taylor's avatar
      Add GdkEventSetting event for notification of changes to system settings, · b52b326d
      Owen Taylor authored
      Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
      
              * gdk/gdkevents.h: Add GdkEventSetting event for notification
      	of changes to system settings, gdk_setting_get() to retrieve
      	a single system setting.
      
      	* gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
      	to the draft XSETTINGS mechanism.
      
      	* gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
      	XSETTINGS.
      
      	* gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
      	of GDK settings changes to the GtkSettings object.
      
      	* gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
      	double-click-timeout property to GDK.
      
      	* gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
      	Define GDK boxed types here.
      
      	* gdk/Makefile.am gdk/makeenums.pl: Generate source files
      	gdk/gdkenumtypes.[ch] for enum definitions.
      
      	* gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
      	* gtk/gtk-boxed.defs: Comment out GDK types
      	* gtk/gtktypeutils.h: Remove GDK types
      	* gtk/Makefile.am: No longer scan GDK headers for enumerataions
      b52b326d
  6. 09 Mar, 2001 1 commit
    • Alexander Larsson's avatar
      Document expose event->region change and that gtk_widget_event doesn't · e7d4a7f9
      Alexander Larsson authored
      2001-03-09  Alexander Larsson  <alexl@redhat.com>
      
      	* docs/Changes-2.0.txt:
      	Document expose event->region change and that gtk_widget_event
      	doesn't allow passing expose events.
      
      	* gdk/gdkevents.h:
      	Add region to expose event.
      
      	* gdk/gdkevents.c:
      	Handle event->region in gdk_event_copy() and gdk_event_free().
      
      	* gdk/gdkwindow.c (gdk_window_process_updates_internal):
      	Generate expose_event->region when creating expose events.
      
      	* gdk/x11/gdkevents-x11.c:
      	Generate expose events with regions when translating X events.
      
      	* gtk/gtkcontainer.[ch]:
      	Default expose handler that propagates expose events to NO_WINDOW
      	children. New function gtk_container_propagate_expose()
      
      	* gtk/gtkwidget.[ch]:
      	Moved gtk_widget_event implementation to gtk_widget_event_internal.
      	gtk_widget_event calls gtk_widget_event_internal but doesn't allow
      	expose events. New function gtk_widget_send_expose() to send expose
      	events. New function gtk_widget_region_intersect() to calculate
      	window/region intersections.
      
      	* gtk/gtkmain.c (gtk_main_do_event):
      	Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
      	Use gtk_widget_send_expose() to send expose events.
      
      	* gtk/gtkbin.c:
      	* gtk/gtkbox.c:
      	* gtk/gtkfixed.c:
      	* gtk/gtkimagemenuitem.c:
      	* gtk/gtklist.c:
      	* gtk/gtkpacker.c:
      	* gtk/gtktable.c:
      	* gtk/gtktree.c:
      	Remove expose handler, using the default container implementation
      	instead.
      
      	* gtk/gtkbutton.c:
      	* gtk/gtkcheckbutton.c:
      	* gtk/gtkeventbox.c:
      	* gtk/gtkfixed.c:
      	* gtk/gtkhandlebox.c:
      	* gtk/gtklayout.c:
      	* gtk/gtklistitem.c:
      	* gtk/gtkmenu.c:
      	* gtk/gtkmenubar.c:
      	* gtk/gtkmenuitem.c:
      	* gtk/gtknotebook.c:
      	* gtk/gtkoptionmenu.c:
      	* gtk/gtkpaned.c:
      	* gtk/gtkscrolledwindow.c:
      	* gtk/gtktogglebutton.c:
      	* gtk/gtktoolbar.c:
      	* gtk/gtktreeitem.c:
      	* gtk/gtkviewport.c:
      	Chain expose handler to parent class handler. Use
      	gtk_container_propagate_expose() to propagate exposes.
      
      	* gtk/gtkclist.c (check_exposures):
      	* gtk/gtktext.c (process_exposes):
      	Use gtk_widget_send_expose instead of gtk_widget_event.
      e7d4a7f9
  7. 27 Feb, 2001 1 commit
    • Havoc Pennington's avatar
      test the window state stuff · 75d79abf
      Havoc Pennington authored
      2001-02-26  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/testgtk.c: test the window state stuff
      
      	* gtk/gtkwindow.c (gtk_window_present): new function, makes a
      	window come to the user's attention as if it were just created
      	(gtk_window_iconify): new function
      	(gtk_window_deiconify): new function
      	(gtk_window_stick): new function
      	(gtk_window_unstick): new function
      	(gtk_window_maximize): new function
      	(gtk_window_unmaximize): new function
      
      	* gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
      
      	* gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
      
      	* gdk/x11/gdkevents-x11.c: create window state events when
      	appropriate
      	(gdk_wmspec_supported): new function
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
      	iconification before showing the window
      	(gdk_window_deiconify): new function
      	(gdk_window_stick): new function
      	(gdk_window_unstick): new function
      	(gdk_window_maximize): new function
      	(gdk_window_unmaximize): new function
      
      	* gdk/gdkwindow.c: store the window state in the window;
      	change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
      	window->mapped.
      	(gdk_window_get_state): return the current window state
      
      	* gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
      	(gdk_event_get_state): handle GDK_WINDOW_STATE
      	(gdk_synthesize_window_state): function to create the window state
      	events
      
      	* gdk/gdkevents.h (struct _GdkEventWindowState): new type of
      	event, for changes to "window state" such as maximized, sticky,
      	etc.
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
      	focuses a window
      
      	* gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function,
      	finds out if we support a given WM spec hint
      75d79abf
  8. 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
  9. 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
  10. 04 Dec, 2000 1 commit
    • 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
  11. 17 Nov, 2000 1 commit
  12. 03 Jul, 2000 1 commit
    • Owen Taylor's avatar
      Ignore calls with <= width or height. · 01212ce1
      Owen Taylor authored
      Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
      	<= width or height.
      
      	* gtk/gtktable.c (gtk_table_attach): Fix missed merge
      	from 1.2 for parent/child states.
      
      	* gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
      	of typos.
      
      	* gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
      	event structures, replace with a generic axes field. Replace
      	deviceid/source with GdkDevice *device.
      
      	* gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
      	to extract particular axis use value from event. (Also
      	can be used for normal X/Y.)
      
      	* gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
      	allow for arbitrary number of axes, namespace everything
      	as gdk_device_*. Replace guint32 deviceid with GdkDevice *
      	everywhere.
      
      	* gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}:
      	Get rid of the gdk_input_vtable setup if favor of simply
      	defining the functions in gdkinput-none/gxi/xfree.c in
      	a similar fashion to the way that the port structure is
      	done.
      
      	* gtk/gtkdnd.c: Fix fields of synthesized button press event
      	for new event structures.
      
      	* gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
      	new device interfaces.
      01212ce1
  13. 20 Jun, 2000 1 commit
  14. 02 Jun, 2000 1 commit
    • Havoc Pennington's avatar
      Remove all references to offscreen flag which was no longer used. · 9ae724bf
      Havoc Pennington authored
      Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c: Remove all references to
      	offscreen flag which was no longer used.
      
      	* gtk/gtkprivate.h (enum): Remove unused flags and compress.
      
      	* gtk/gtkframe.c (gtk_frame_set_label_widget): Check
      	for non-null label_widget->parent.
      
      	* gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
      	which no longer was used.
      
      	* gdk/gdkpango.c (gdk_pango_context_get_info): make static.
      
      	* gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
      	for null arguments.
      
      	* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
      	check for destroyed windows.
      
      Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimmulticontext.c: Add a finalize method and unref
      	the slave context there.
      
      	* gtk/gtkinvisible.[ch]: Make reference counting behavior
      	identical to GtkWindow.
      
      Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* Makefile.am gdk/gdkpango.c: Copy the layout render function from
      	pangox to here, so we can write them independent of rendering
      	system, using GDK primitives.
      
      	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
      	gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
      	since we have a rendering-system independent implementation in
      	terms of draw_glyphs().
      
      	* gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
      	function to render a single line.
      
      	* gdk/x11/gdkpango.c: Move the guts of this file mostly
      	into ../gdkpango.c, which simplifies things, since we
      	don't have to deal with raw X gc's.
      
      Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
      	get the logical attributes for a given GtkTextLine.
      
      Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
      	g_locale_get_codeset() to g_get_codeset() change.
      
      Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testcalendar.c (calendar_font_selection_ok): Use font
      	descriptions.
      
      	* gtk/gtkentry.c (gtk_entry_draw_text): Center text within
      	the entry.
      
      	* gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
      	redoing (vastly simplifying) for Pango. Still needs quite
      	a bit of work. (Size selection is currently poor. List of
      	predefined sizes is not a good idea, since all of these
      	sizes won't necessarily be distinct.)
      
      Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
      	CODESET results for LANG=C.
      
      Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
      	which takes a stringized pango font description;
      	ignore the older 'font' and 'fontset' declarations.
      
      	* gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
      	field with a GdkFont derived via gdk_font_from_description(),
      	for compatibility. (Should we just remove it entirely?
      	Probably too much compatibility breakage, but people
      	should be migrating to the new Pango stuff as quickly
      	as possible.)
      
      Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
      
      Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkcalender.c: Roughly pango-ized. Really needs
      	redoing; there are some bugs in size allocation right
      	now, the semi-existant distinction between header / day
      	fonts was removed, but, with Pango, could actually
      	be made functional in a nice way.
      
      	* gtk/testcalender: Move calender from examples into this
      	directory as a test program. (We really need to restrcture
      	testgtk into a whole directory full of tests for every
      	widget or functionality group, separated into multiple .c
      	files.)
      
      Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testgtk.c (file_exists): Fix stupid typo that
      	was keeping RC file from being loaded.
      
      	* gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
      	RC file font code.
      
      Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
      	Add function to load a GdkFont from a PangoFontDescription.
      
      Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
      	to have any widget for the label, use a GtkLabel widget
      	to display the text. (Based partially on a patch from
      	Anders Carlson.)
      
      	(Quite a bit of code reorganization - strip 90% of the
      	guts out of gtkaspectframe and add a single virtual
      	func to GtkFrameClass - compute_child_allocation.)
      
      Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
      	(Removed clist->row_center_offset field because caching
      	it wasn't saving time or code, added private function
      	_gtk_clist_create_cell_layout()).
      
      Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkaccellabel.c: Pangoized.
      
      	* gtk/[hv]ruler.c: Pangoized
      
      Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkfilesel.c (gtk_file_selection_init):
      	Use gtk_clist_set_column_auto_resize() to remove need
      	need for manual column width computations.
      
      Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel,
      	ensuring Pango correctness, and considerably simplifying the
      	code.
      
      	* gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
      
      	* gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
      	getting of numbers of lines.
      
      	* gtk/gtklabel.c (gtk_label_size_request): Set the requisition
      	to the actual requested width of the lable, not to the wrap
      	width we set.
      
      	* gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
      
      	* gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
      	  gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
      
      	* gtk/gtktextview.c: Fix structure inheritance.
      
      	* gtk/gtkprogressbar.c: Pangoize.
      
      Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
      	in a function.
      
      	* gtk/gtktextlayout.c (find_display_line_above): Fixed
      	bug with computing line tops.
      
      	* gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
      
      Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
      	and y_offset coordinates to do what we need now. (The offset between
      	buffer and layout coordinates has been reintroduced, but is a
      	bit different than before.)
      
      	* gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
      	handle the adjustments ourselves, and scroll as necessary using
      	the new gdk_window_scroll().
      
      	The advantage of this is that when we are incrementally revalidating,
      	we are essentially rearranging things around the visible portion
      	of the screen. With the old setup, the visible portion of the
      	screen was moved around in the layout, so scrolling and redrawing
      	to track that caused jumping of the display. Since we now
      	control the scrolling ourselves, we can suppress this and
      	only redraw when things actually change.
      
      Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
      	the region not just redisplay it after-all, since we store the
      	cursors in the LineDisplay. (Ugly interactions here between
      	GtkLayout and GtkTextBTree here.)
      
      	* gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
      
      Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
      	Added function to scroll contents of a window while keeping the
      	window constant. Works by XCopyArea or guffaw-scrolling depending
      	on the details of how the window is set up. (guffaw-scrolling
      	still needs to be filled in.)
      
      Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
      	move the debugging that was tied to a global variable
      	to that.
      
      	* gtk/gtkmarshal.list: Add NONE:INT,INT,INT
      
      	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
      	validated flag, in line data instead of setting height/width to
      	-1. This allows us to perform operations with partially invalid
      	buffer (using the old size for invalid lines) and thus to do
      	incremental vaidation. Keep height/width aggregates up to date
      	when deleting text and rebalancing the tree.
      
      	* gtk/gtktextbtree.[ch]: Add functions validate a line
      	(gtk_text_btree_validate_line), and to validate up
      	to a number of pixels (gtk_text_btree_validate).
      
      	* gtk/gtktextlayout.[ch]: Add an ::invalidated signal
      	that indicates that something is changed and a revalidation
      	pass is needed. Change ::need_repaint to ::changed, and
      	make it take old and new yranges instead of a rectangle.
      
      	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
      	the line_data_destroy() function from
      	gtk_text_btree_add_view() to a virtual function in
      	GtkTextLayout
      
      	* gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
      	since we are handling partial repaints in a different fashion
      	now.
      
      	* gtk/gtktextbtree.[ch]: Only repaint the changed portion
      	of the selection instead of queueing a repaint on the
      	entire widget.
      
      	* gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
      	get_selection_bounds() down to btree, make the function
      	in buffer a wrapper around the btree function.
      
      	* gtk/gtktextlayout.[ch]: Add functions to check if the
      	layout is valid and to recompute either a range of pixels
      	aroudn a line or a certain total number of pixels.
      
      	* gtk/gtktextlayout.[ch]: Cache a single line display;
      	now that we only redraw the needed portions, the hit rate
      	for this cache is quite high.
      
      	* gtk/gtktextview.[ch]: Keep track of the first paragraph
      	on the screen so that when re-laying-out the buffer, we can
      	keep the same place. This requires connecting to ::value_changed
      	on the adjustments
      
      	* gtk/gtktextview.[ch]: Add idle functions to revalidate
      	the buffer after we receive an ::invalidated signal.
      
      Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
      	to max of allocation and layout size, not just to the
      	layout size.
      
      	* gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size):
      	Invalidate window so it gets redrawn properly.
      
      	* gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
      	to mean the entire window.
      
      	* gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
      	into public header.
      
      Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
      	to get the name of a mark.
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
      	to find the paragraph from a y position.
      
      Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
      	nodes have width/height >= 0, not > 0.
      
      Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
      	Add a size_only flag, so when we only need the size, we don't create
      	useless appearance attributes.
      
      	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
      	duplicate setting of font description.
      
      	* gtk/gtkscale.c: Use PANGO_SCALE instead of 1000
      
      Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
      	EXTRA_DIST. It does not work well when the file that
      	everything depends on is not in the tarball.
      
      Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testgtk.c: Some hacks and fixes so that it basically
      	works when not sitting in the GTK+ build tree.
      
      2000-05-03  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
      	Properly determine the ordering of the tag root and the current
      	line within the tree. Previous algorithm only worked if the tag
      	root's immediate parent was the common root of both the current
      	line and the tag root.
      
      Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (set_para_values): Fix some bugs in
      	alignment.
      
      	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
      	the widget text directional dynamically.
      
      	* gtk/gtktextview.[ch]: Added functions to get and set default
      	wrap mode.
      
      Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
      	in cursor location computation.
      
      Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
      	vadjusment values properly when layout gets smaller.
      
      	* gtk/gtktextview.c (need_repaint_handler): Areas being
      	passed in are far completely inaccurate, and sometimes
      	too small, so, for now, just queue a redraw on the
      	whole visible region.
      
      2000-04-25  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c (summary_destroy): new function to
      	destroy tag summary nodes
      	(gtk_text_line_next_could_contain_tag): this function was
      	totally broken if the line passed in wasn't below the tag
      	root. Fix it.
      	(gtk_text_btree_first_could_contain_tag): In the tag == NULL
      	"wildcard" case, we have to do a linear scan. Blah.
      	(gtk_text_btree_last_could_contain_tag): In tag == NULL case,
      	we have to do the linear scan
      	(tag_removed_cb): When a tag is removed from the tag table,
      	remove the GtkTextTagInfo node from the btree.
      	(gtk_text_btree_spew): Implement the spew function, for
      	our debugging pleasure.
      
      Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
      	a problem with referring to the wrong buffer.
      
      	* gtk/gtkentry.c: Fix focus-in/focus-out confusion.
      
      	* gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
      	font description to gtk_style_new() - otherwise things
      	don't work without a .gtkrc file.
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
      	tags table if we create it ourself, too.
      
      	* gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
      	it was conflicting with XKB modifiers.
      
      	* gtk/gtktextview.[ch]: Add simple support for
      	GtkIMContext.
      
      Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
      	with deletion from last commit.
      
      Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
      	in the context from the current locale.
      
      	* gtk/gtkentry.c (gtk_entry_size_request): Use language from the
      	context, not hardcoded value.
      
      	* gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
      	not logical.
      
      Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
      	attributes - that doesn't handle partial-glyph selection
      	properly. Instead use new pango_layout_line_get_x_ranges()
      	functionality to draw the selection.
      
      	* gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
      	now properly handles out-of-range coordinates.
      
      	* gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
      
      	* gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
      	public.
      
      	* gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
      	for paragraphs opposite to the base direction of the widget.
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
      
      	* gtk/gtktextlayout.c: Don't split segments on marks, since that
      	causes Arabic words to reshape as you cursor through.
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
      	cursor position when moving vertically with the arrow keys and
      	scrolling with page-up/page-down. (Arrow keys save only the X,
      	scrolling saves both X and Y.)
      
      	This means you can line-up / line-down or page-up / page-down
      	without losing your place, and also that moving vertically
      	with the cursor keys keeps the same X position, not the same
      	character count:
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
      	arrow keys move by display lines, not paragraphs.
      
      Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklayout.c: Make sure that the bin window is at least
      	as big as the allocation. (Should we also make sure that the
      	bin window is big enough to completely cover widget->window?)
      
      	* gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
      	function to get the onscreen rectangle.
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
      	for offsets in window coordinates.
      
      Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
      	confusion.
      
      	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
      	from the widget direction.
      
      	* gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg):
      	Add a "direction" attribute.
      
      	* gtk/gtktextview.c: global s/tkxt/text_view/.
      
      	* gtk/testtext.c: Added long block of text in Arabic, to test out
      	the direction attributes. (Some problems with the shaping system
      	for arabic become obvious - like the fact the cursor splits words
      	into unjoined pieces.)
      
      Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
      
      	* gtk/gtktextlayout.c: Fix up alignment.
      
      	* gtk/testtext.c: Add some tests for centering, wrapping.
      
      Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
      	Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
      	If we wrote GTK+-specific layout-render function this could just replace
      	the draw_layout() operation in the vtable.
      
      	* gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to
      	pango_layout_get_cursor_pos() and use that function.
      
      	* gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
      	is a non-static symbol.
      
      	* gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
      	with gtk_text_btree_find_line_by_y()
      
      	* gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
      	renderer that handles GtkTextAppearance attributes.
      
      	* gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h:
      
      	  - Move the values in the style that don't affect geometry into a
      	    GtkTextAppearance structure.
      	  - Change underline to take a PangoUnderline and "font" a string
      	    representation of a font description
      	  - Add a "font_desc" attribute which takes a FontDescription structure.
      
      	* gtk/gtktextlayout.[ch]:
      
      	  - Get rid of the display-line list per each line. Instead, we
      	    generate, on demand, a GtkTextLineDisplay structure which]
      	    contains a PangoLayout * and other necesary information
      	    (offsets, cursor locations) for displaying a paragraph.
      	  - Get rid of the code to wrap lines, create display chunks,
      	    etc. Instead, we just go through a paragraph and convert
      	    it into the necessary inputs to a PangoLayout.
      	  - Implement a new attribute type, GtkTextAttrAppearance. This
      	    holds a GtkTextAppearance, and is used to pass colors,
      	    stipple, etc, through from the layout to the display without
      	    having to use lots and lots of individual attributes.
      	  - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
      	    in terms of PangoLayout functions.
      
      	* gtk/gtktextview.c:
      
      	  - Handle passing the necessary PangoContext to the layout
      	  - Some fixups in painting to deal with the automatic backing store
      	    and offsetting of GTK+-1.4
      	  - Add a style_set handler so that the default style reacts
      	    properly to theme changes.
      
      	* gtk/gtktext?*.[ch]: Random code-style fixes.
      
      	* gtk/testtext.c: Substitute in languages that Pango handles now for Thai
      
      Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
      	in original form preparatory to Pango-ization and gdkimcontext-ization.
      
      Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
      	so that we can derive from gtkimcontext in language bindings properly.
      
      Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
      	Add a compose table including (almost) all the compose combinations
      	from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
      	data in the XIM implementation.
      
      	* gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
      	Moved functions to convert keyvalues from and to unicode here from
      	the win32 port and made them public.
      
      Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
      
      Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontext.[ch]: Base class for new input context system
      
      	* gtk/gtkimmulticontext.[ch]: Proxy input context that allows
      	the real input context implementation to be loaded from modules
      	and switched on the fly.
      
      	* gtk/gtkcontextsimple.[ch]: Simple implementation of an input
      	context that just does direct keysymbol => unicode translation.
      
      	* gtk/gtkentry.[ch]: Start switching editing over to using
      	GtkInputContext. (No handling of preedit yet.)
      
      Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
      	many substitutions. (klass should not be subsituted.)
      
      Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* configure.in: Add checks for Pango
      
      	* configure.in docs/Makefile.am: Add test for sgml2html
      	and allow 'make dist' without building html, but print out
      	warnings in that case. (For making snapshots)
      
      	* gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
      	Add Pango libraries and C flags
      
      	* gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
      	Add function (gdk_draw_layout) to draw a pango layout.
      
      	* gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
      	for getting Pango contexts for GDK.
      
      	* gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
      
      	* gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
      	editing.
      
      	* gtk/gtkentry.c: Hack in simple Hebrew input with direct
      	keysym => unicode translations. More languages can be added
      	here, but real input-method support is needed.
      
      	* docs/Changes-1.4.txt: Added note about entry behavior.
      
      	* gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
      	to set the reading direction for a widget and the global direction.
      	Add test which allows toggling the global direction. Two private
      	flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
      
      	* gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
      	  gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c
      
      	* gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
      
      	* gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
      	underlining now handled by Pango.
      
      	* gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
      	to RCStyle and Style. (Having both this and the old font name and GdkFont
      	is temporary.)
      
      	* gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added
      	convenience functions for creating contexts and layouts for widgets.
      
      	* gtk/testgtk.c: Enhance label tests with multilingual labels.
      9ae724bf
  15. 28 Mar, 2000 1 commit
  16. 14 Mar, 2000 1 commit
  17. 18 Feb, 2000 1 commit
    • Owen Taylor's avatar
      Remove OwnerGrabButtonMask from button entries for GDK_BUTTON_PRESS / · c8a2382b
      Owen Taylor authored
      Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
      	OwnerGrabButtonMask from button entries for
      	GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
      
      	* gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
      	to the event mask (which will result in button/press release
      	being added to the event mask on Unix) so scrolling works
      	for layouts in scroll windows.
      
      	* gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
      
      	Patch from Anders Carlsson  <andersca@picard.andersnet> to add
      	a scroll event.
      
       	* gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
       	scrolling to the "Test Scrolling" part of testgtk.
      
       	* gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
      
       	* gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
       	it against GDK_SCROLL.
      
       	* gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
       	way of mouse wheel scrolling.
      
       	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
      
       	* gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
      
       	* gtk/gtkmain.c: Removed previous mouse wheel hack.
      
       	* gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
       	gdk_event_mask_table.
      
       	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Added
       	GdkEventScroll handler.
      
       	* gdk/gdkevents.h: Added GdkEventScroll structure.
      c8a2382b
  18. 01 Oct, 1999 1 commit
    • Owen Taylor's avatar
      Started · 637a466d
      Owen Taylor authored
      Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
      
              * docs/Changes-1.4.txt: Started
      
      	* gtk/Makefile.am (gdk_headers): Include all the new headers.
      
              * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
      
      	* gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
      	into C file.
      
      	* gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
      	header to gdkinputprivate.h.
      
      	* gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
      	unused since before 1.2.
      637a466d