1. 05 Dec, 2000 8 commits
    • Elliot Lee's avatar
      Make GdkColor specify element sizes to avoid waste on 64-bit platforms. · 3bc53c74
      Elliot Lee authored
      
      
      * gdk/gdkcolor.h: Make GdkColor specify element sizes
      to avoid waste on 64-bit platforms.
      3bc53c74
    • 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
    • Owen Taylor's avatar
      Fix to say that file_selection_complete() filters both files and · 691576eb
      Owen Taylor authored
      Thu Nov 30 00:53:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/tmpl/gtkfilesel.sgml: Fix to say that file_selection_complete()
      	filters both files and directories.
      
      	* gtk/tmpl/gtktogglebutton.sgml: Fix description
      	of gtk_toggle_button_toggled().
      691576eb
    • Alexander Larsson's avatar
      Remove bogus colormap setting. · f2e4ead7
      Alexander Larsson authored
      2000-12-05  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
      	Remove bogus colormap setting.
      f2e4ead7
    • Alexander Larsson's avatar
      More complete colormap handling. Now GdkRGB work in 8 bpp modes. · b9ef6f2c
      Alexander Larsson authored
      2000-12-05  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkcolor-fb.c:
      	More complete colormap handling. Now GdkRGB work in 8 bpp modes.
      
      	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
      	Must set colormap.
      b9ef6f2c
    • GMT 2000  Tony Gale's avatar
      DND updates · b3fcc83a
      GMT 2000 Tony Gale authored
      Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
      
              * docs/tutorial/gtk-tut.sgml: DND updates
      b3fcc83a
    • Alexander Larsson's avatar
      Remove old debug g_warning(). (gdk_fb_draw_drawable): The src argument can · f1046d9a
      Alexander Larsson authored
      2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
      
      	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
      	Remove old debug g_warning().
      	(gdk_fb_draw_drawable): The src argument can be either a wrapper
      	or an implementation, just pass the implementation to draw_drawable_2.
      
      	* gdk/linux-fb/gdkprivate-fb.h:
      	Added GDK_IS_DRAWABLE_IMPL_FBDATA()
      
      	* gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
      	clear and invalidate area when window is destroyed.
      	(send_map_events): Remove old commented out code.
      f1046d9a
    • Alexander Larsson's avatar
      Use italic instead of oblique in font aliases. · b7118c80
      Alexander Larsson authored
      2000-12-05  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkpango-fb.c:
      	Use italic instead of oblique in font aliases.
      
      	* gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
      	_gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
      	other unsupported functions.
      b7118c80
  2. 04 Dec, 2000 6 commits
    • Havoc Pennington's avatar
      c149ce59
    • 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
    • Alexander Larsson's avatar
      Divide size by 2, not multiply. · d7714461
      Alexander Larsson authored
      2000-12-04  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
      	multiply.
      
      	* gdk/linux-fb/gdkpango-fb.c:
      	Copied some 26.6 scaling macros from pango to clean up the rounding.
      	(pango_fb_font_get_glyph_info): Correct sign on x value.
      
      	* gdk/linux-fb/gdkprivate-fb.h:
      	Removed unreferenced external functions.
      
      	* modules/linux-fb/Makefile.am: Use ` instead of '.
      
      	* modules/linux-fb/basic.c:
      	Remove dead code. In particular the dummy lang engine which broke all
      	pango layouts in GtkFB. Don't include tables-big.i anymore.
      
      	* modules/linux-fb/tables-big.i:
      	Upgrade to latest version from pango. Left for reference, basic_ranges
      	moved to basic.c.
      d7714461
    • 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
    • Alexander Larsson's avatar
      Return positive descent. · 15c81f52
      Alexander Larsson authored
      2000-12-04  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
      	Return positive descent.
      15c81f52
    • 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
  3. 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
  4. 01 Dec, 2000 6 commits
    • Alexander Larsson's avatar
      Forgot to check in ChangeLog entry. · fb14d129
      Alexander Larsson authored
      fb14d129
    • Alexander Larsson's avatar
      Note: GtkFB now requires Freetype 2 final. · f3e06d23
      Alexander Larsson authored
      2000-12-01    <alexl@redhat.com>
      
      	* gdk/linux-fb/Makefile.am:
      	* modules/linux-fb/Makefile.am:
      	Freetype 2 final uses freetype-config
      
      	* gdk/linux-fb/gdkpango-fb.c:
      	Upgrade to use Freetype 2 final.
      	More flexible support for font aliases, this also fixes a bug with
      	GtkFontSelector, as the aliases must be visible in the font/family list,
      	or GtkFontSelector reads uninitialized memory.
      f3e06d23
    • Hidetoshi Tajima's avatar
      Add NULL argument to XGetIMValues to properly terminate variable argument · 97bfa330
      Hidetoshi Tajima authored
      2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
      
      	* modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
      	XGetIMValues to properly terminate variable argument list, and do
      	NULL return check for ic_values and xim_styles.
      
      	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
      	Restore preedit state after XmbResetIC().
      
      	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
      	XvaCreateNestedList() should take XvaNestedList, but not
      	XvaNestedList*.
      
      	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
      	preedit_draw_callback, preedit_caret_callback): Match
      	"preedit-changed" signal name to "preedit_changed" to be
      	consistent to the spec.
      
      	* gtk/gtkimcontextsimple.c (check_table):
      	Match "preedit-changed" to "preedit_changed" to be consistent
      	to the spec.
      97bfa330
    • 0's avatar
      Match "preedit-changed" to "preedit_changed" to be consistent to the spec. · 1e5b472e
      0 authored
      2000-11-30    <tajima@eng.sun.com>
      
      	* gtk/gtkimcontextsimple.c (check_table):
      	Match "preedit-changed" to "preedit_changed" to be consistent
      	to the spec.
      1e5b472e
    • Owen Taylor's avatar
      Properly handle gc->clip_region == NULL> · 1f7d7453
      Owen Taylor authored
      Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
      	gc->clip_region == NULL>
      1f7d7453
    • Hidetoshi Tajima's avatar
      -Add NULL argument to XGetIMValues. · c396e4bb
      Hidetoshi Tajima authored
      -Check NULL return for xim_styles and ic_values.
      -Restore preedit state after XmbResetIC.
      -Change XVaNestedList* to XVaNestedList.
      -Match "preedit-changed" to "preedit_changed".
      c396e4bb
  5. 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
  6. 29 Nov, 2000 5 commits
    • Alexander Larsson's avatar
      Set the size of the font from the description. (gdk_text_width): Gross · b1b6c9fc
      Alexander Larsson authored
      2000-11-29  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
      	Set the size of the font from the description.
      	(gdk_text_width): Gross hack that calculates the width
      	of text by text_length * size/2. This is necessary because
      	GtkLabel does some ugly gtk_string_width call to calculate
      	an good size.
      	(linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
      b1b6c9fc
    • GMT 2000  Tony Gale's avatar
      DND updates · 696d0bc1
      GMT 2000 Tony Gale authored
      Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
      
      	* docs/tutorial/gtk-tut.sgml: DND updates
      696d0bc1
    • Alexander Larsson's avatar
      If you pass width or height == 0 to gdk_window_clear_area they should be · 92bc6d41
      Alexander Larsson authored
      2000-11-29  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
      	If you pass width or height == 0 to gdk_window_clear_area they
      	should be calculated from the window size.
      92bc6d41
    • Alexander Larsson's avatar
      If there is a grab, but no grab-cursor, use the cursor from the grabbed · 57356cfe
      Alexander Larsson authored
      2000-11-29  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
      	a grab, but no grab-cursor, use the cursor from the grabbed
      	window. (gdk_fb_window_send_crossing_events): Send normal
      	enter/leave notifications if grab and owner_events == TRUE.
      57356cfe
    • Alexander Larsson's avatar
      Do implicit button grabs, even if the window doesn't want the event. · 3c6f0d5f
      Alexander Larsson authored
      2000-11-29  Alexander Larsson  <alexl@redhat.com>
      
      	* gdk/linux-fb/gdkinput-ps2.c (send_button_event):
      	Do implicit button grabs, even if the window doesn't
      	want the event.
      	(gdk_fb_window_send_crossing_events): If there is a
      	grab, only the grabbed window gets normal enter/leave
      	notifications. On ungrab go from grabbed window to current.
      	Don't send any notification to b when propagating from c -> b.
      	If setting a grab on window, don't set prev_window.
      	(handle_mouse_input): Send enter/leave events to the window the
      	mouse is over, not the grabbed one.
      3c6f0d5f
  7. 28 Nov, 2000 8 commits
  8. 27 Nov, 2000 2 commits
  9. 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