summaryrefslogtreecommitdiff
path: root/src/vtedraw.h
AgeCommit message (Collapse)AuthorFilesLines
2009-03-23Bug 576504 – vte does not pass its testsuite.Behdad Esfahbod1-1/+0
2009-03-23 Behdad Esfahbod <behdad@gnome.org> Bug 576504 – vte does not pass its testsuite. * src/vte.c: * src/vtedraw.h: Fix "make check". svn path=/trunk/; revision=2391
2009-02-12Bug 54926 – Should try bold version of font before pseudo-boldingBehdad Esfahbod1-8/+12
2009-02-12 Behdad Esfahbod <behdad@gnome.org> Bug 54926 – Should try bold version of font before pseudo-bolding Patch from Kees Cook <kees@outflux.net> * src/vte.c (_vte_invalidate_cell), (_vte_invalidate_cursor_once), (vte_terminal_unichar_is_local_graphic), (vte_terminal_draw_graphic), (vte_terminal_draw_cells), (vte_terminal_draw_rows), (vte_terminal_paint_cursor): * src/vtedraw.c (_vte_draw_get_char_width), (_vte_draw_text), (_vte_draw_char), (_vte_draw_has_char): * src/vtedraw.h: * src/vtepangocairo.c (_vte_pangocairo_set_text_font), (_vte_pangocairo_get_char_width), (_vte_pangocairo_has_bold), (_vte_pangocairo_draw_text), (_vte_pangocairo_draw_has_char): * src/vteskel.c: Try bold font before pseudo-bolding. svn path=/trunk/; revision=2371
2008-12-12Bug 149631 – gnome-terminal doesn't combine combining chars in utf8Behdad Esfahbod1-5/+6
2008-12-12 Behdad Esfahbod <behdad@gnome.org> Bug 149631 – gnome-terminal doesn't combine combining chars in utf8 * src/vteunistr.c: * src/vteunistr.h: An extended UTF-32 type that assigns numeric values to UTF-8 sequences on demand. Can be used to efficiently store a string, instead of one character, at each cell. * src/vte-private.h: * src/vte.c: * src/vtedraw.c: * src/vtedraw.h: * src/vtepangocairo.c: Port to vteunistr instead of gunichar for cell content. * src/vte.c: Handle zerowidth insertions by sticking it on the previous cell. * src/iso2022.h: * src/iso2022.c: Cleanup ambiguous-width handling. Handle zero-width chars. svn path=/trunk/; revision=2340
2008-12-08Bug 563752 – pangocairo backend recreates cairo_surface_t for backgroundBehdad Esfahbod1-19/+13
2008-12-08 Behdad Esfahbod <behdad@gnome.org> Bug 563752 – pangocairo backend recreates cairo_surface_t for background drawing * src/vte.c (vte_terminal_paint), (vte_terminal_set_scroll_background), (vte_terminal_background_update): * src/vtedraw.c (_vte_draw_new), (_vte_draw_set_background_solid), (_vte_draw_set_background_image), (_vte_draw_set_background_scroll), (_vte_draw_draw_rectangle): * src/vtedraw.h: * src/vtepangocairo.c (_vte_pangocairo_destroy), (_vte_pangocairo_set_background_solid), (_vte_pangocairo_set_background_image), (_vte_pangocairo_set_background_scroll), (_vte_pangocairo_clear), (_vte_pangocairo_clip), (set_source_color_alpha): * src/vteskel.c: Cleanup vte_draw background API. Use a cached cairo_pattern_t in pangocairo backend. Also, queue background update on scroll_background change. svn path=/trunk/; revision=2335
2008-12-02Cache the full ASCII range if Latin uses the default language.Behdad Esfahbod1-2/+8
2008-12-02 Behdad Esfahbod <behdad@gnome.org> * src/vtedraw.h: * src/vtepangocairo.c (font_info_cache_ascii): Cache the full ASCII range if Latin uses the default language. svn path=/trunk/; revision=2312
2008-11-22 Bug 560766 – Deprecate and remove vte_terminal_get_using_xft()Christian Persch1-2/+0
* src/vte.c: (vte_terminal_get_using_xft): * src/vte.h: * src/vtedraw.c: (_vte_draw_text): * src/vtedraw.h: * src/vtepangocairo.c: Deprecate vte_terminal_get_using_xft() as preparation for bug #560766. Remove the internal vtedraw method already. svn path=/trunk/; revision=2181
2008-11-20Bug 560818 – pangocairo backend doesn't share font cache across widgetsBehdad Esfahbod1-1/+1
2008-11-20 Behdad Esfahbod <behdad@gnome.org> Bug 560818 – pangocairo backend doesn't share font cache across widgets * src/vtepangocairo.c (font_info_cache_ascii), (font_info_allocate), (font_info_free), (font_info_register), (font_info_unregister), (font_info_reference), (font_info_destroy_delayed), (font_info_destroy), (context_hash), (context_equal), (font_info_find_for_context), (font_info_create_for_context), (font_info_create_for_screen), (font_info_get_unichar_info): Cache font info and use it for multiple widgets. svn path=/trunk/; revision=2154
2008-11-14Remove unneeded draw methods.Behdad Esfahbod1-17/+4
2008-11-14 Behdad Esfahbod <behdad@gnome.org> * src/vte.c (vte_terminal_ensure_font): * src/vtedraw.c (_vte_draw_new), (_vte_draw_free), (_vte_draw_set_background_opacity), (_vte_draw_set_background_color), (_vte_draw_set_text_font), (_vte_draw_get_text_metrics), (_vte_draw_get_char_width), (_vte_draw_char), (_vte_draw_draw_rectangle), (_vte_draw_set_scroll): * src/vtedraw.h: * src/vteft2.c (_vte_ft2_destroy), (_vte_ft2_start), (_vte_ft2_end), (_vte_ft2_set_background_image), (_vte_ft2_clear), (_vte_ft2_set_text_font), (_vte_ft2_get_text_metrics), (_vte_ft2_get_char_width), (_vte_ft2_draw_text), (_vte_ft2_draw_has_char), (_vte_ft2_draw_rectangle), (_vte_ft2_fill_rectangle): * src/vtegl.c (_vte_gl_destroy), (_vte_gl_get_visual), (_vte_gl_start), (_vte_gl_end), (_vte_gl_set_background_image), (_vte_gl_clear), (_vte_gl_set_text_font), (_vte_gl_get_text_metrics), (_vte_gl_get_char_width), (_vte_gl_draw_text), (_vte_gl_draw_has_char), (_vte_gl_rectangle): * src/vtepango.c (_vte_pango_set_text_font), (_vte_pango_get_text_metrics): * src/vtepangox.c (_vte_pangox_create), (_vte_pangox_destroy), (_vte_pangox_start), (_vte_pangox_end), (_vte_pangox_set_background_image), (_vte_pangox_clip), (_vte_pangox_clear), (_vte_pangox_set_text_font), (_vte_pangox_get_text_metrics), (_vte_pangox_get_using_fontconfig), (_vte_pangox_draw_text), (_vte_pangox_draw_has_char), (_vte_pangox_draw_rectangle), (_vte_pangox_fill_rectangle): * src/vtepangox.h: * src/vteskel.c (_vte_skel_clear), (_vte_skel_get_text_metrics), (_vte_skel_draw_text), (_vte_skel_fill_rectangle): * src/vtexft.c (_vte_xft_set_text_font), (_vte_xft_get_text_metrics), (_vte_xft_draw_text): Remove unneeded draw methods. svn path=/trunk/; revision=2144
2008-11-13Simplify backends by relying more on defaults.Behdad Esfahbod1-6/+20
2008-11-13 Behdad Esfahbod <behdad@gnome.org> * src/vte.c (vte_terminal_background_update): * src/vtedraw.c (_vte_draw_update_requires_clear), (_vte_draw_new), (_vte_draw_set_background_opacity), (_vte_draw_set_background_color), (_vte_draw_set_background_image), (_vte_draw_char), (_vte_draw_set_scroll): * src/vtedraw.h: * src/vteft2.c (_vte_ft2_set_background_image), (_vte_ft2_clear), (_vte_ft2_get_char_width): * src/vtegl.c (_vte_gl_create), (_vte_gl_clear), (_vte_gl_get_char_width), (_vte_gl_draw_text): * src/vtepango.c (_vte_pango_create), (_vte_pango_start), (_vte_pango_set_background_image), (_vte_pango_clear): * src/vtexft.c (_vte_xft_create), (_vte_xft_set_background_image), (_vte_xft_clear), (_vte_xft_get_char_width): Simplify backends by relying more on defaults. svn path=/trunk/; revision=2139
2008-11-13Use sensical defaults instead of g_return_if_fail'ing when backendBehdad Esfahbod1-0/+1
2008-11-13 Behdad Esfahbod <behdad@gnome.org> * src/vtedraw.h: * src/vtedraw.c (_vte_draw_new), (_vte_draw_get_visual), (_vte_draw_get_colormap), (_vte_draw_start), (_vte_draw_end), (_vte_draw_set_background_color), (_vte_draw_set_background_image), (_vte_draw_requires_repaint), (_vte_draw_clip), (_vte_draw_clear), (_vte_draw_set_text_font), (_vte_draw_get_text_width), (_vte_draw_get_text_height), (_vte_draw_get_text_ascent), (_vte_draw_get_char_width), (_vte_draw_get_using_fontconfig), (_vte_draw_text), (_vte_draw_char), (_vte_draw_has_char), (_vte_draw_fill_rectangle), (_vte_draw_draw_rectangle), (_vte_draw_set_scroll): Use sensical defaults instead of g_return_if_fail'ing when backend functions are not implemented. svn path=/trunk/; revision=2137
2007-03-16Bug 418073 – Opacity ignored for vtexftChris Wilson1-2/+2
2007-03-16 Chris Wilson <chris@chris-wilson.co.uk> Bug 418073 – Opacity ignored for vtexft * src/vte.c: * src/vtedraw.c (_vte_draw_requires_clear): * src/vtedraw.h: * src/vteft2.c (_vte_ft2_set_background_image): * src/vtegl.c (_vte_gl_create), (_vte_gl_set_background_image): * src/vtepango.c (_vte_pango_set_background_image): * src/vtepangox.c (_vte_pango_x_set_background_image): * src/vtexft.c (_vte_xft_set_background_color), (_vte_xft_set_background_image): Flood fill the backing pixmap if we need to change it's opacity as well. svn path=/trunk/; revision=1842
2007-03-05Bug 414586 – Terminal screen blinks when menu is opened for the firstChris Wilson1-0/+2
2007-03-05 Chris Wilson <chris@chris-wilson.co.uk> Bug 414586 – Terminal screen blinks when menu is opened for the first time Avoid resetting the window background colour when the style is reset. Avoid clearing the window if we are using a simple color and double bufferring (i.e when we know we are using a pre-cleared pixmap). * src/vte-private.h: * src/vte.c (vte_terminal_init), (vte_terminal_size_allocate), (vte_terminal_unrealize), (vte_terminal_realize), (vte_terminal_paint_area), (vte_terminal_expose), (vte_terminal_class_init), (vte_terminal_background_update): * src/vtedraw.c (_vte_draw_has_background_image): * src/vtedraw.h: * src/vteft2.c (_vte_ft2_set_background_image): * src/vtegl.c (_vte_gl_set_background_image): * src/vtepango.c (_vte_pango_set_background_image): * src/vtepangox.c (_vte_pango_x_set_background_image): svn path=/trunk/; revision=1811
2007-02-28Bug 410534 – Slow content scrolling, takes 100% of CPU.Chris Wilson1-1/+1
2007-02-28 Chris Wilson <chris@chris-wilson.co.uk> Bug 410534 – Slow content scrolling, takes 100% of CPU. Submitting long glyph runs was causing a dramatic (10x) slow down in the fglrx xserver. * src/vtedraw.h * src/vtexft.c (_vte_xft_draw_text): Cap the max glyph run length to 300. svn path=/trunk/; revision=1777
2007-02-23Add a new debug flag to monitor draw operations. Don't issue individualChris Wilson1-0/+2
2007-02-23 Chris Wilson <chris@chris-wilson.co.uk> Add a new debug flag to monitor draw operations. Don't issue individual glyphs for is_local_graphic() in the middle of a run. * src/debug.c: (_vte_debug_parse_string): * src/debug.h: * src/vte.c: (vte_terminal_unichar_is_local_graphic), (vte_terminal_draw_rows), (vte_terminal_paint): * src/vtedraw.c: (_vte_draw_init_user), (_vte_draw_init_default), (_vte_draw_new), (_vte_draw_free), (_vte_draw_get_visual), (_vte_draw_get_colormap), (_vte_draw_start), (_vte_draw_end), (_vte_draw_set_background_color), (_vte_draw_set_background_image), (_vte_draw_requires_repaint), (_vte_draw_clip), (_vte_draw_clear), (_vte_draw_set_text_font), (_vte_draw_get_text_width), (_vte_draw_get_text_height), (_vte_draw_get_text_ascent), (_vte_draw_get_char_width), (_vte_draw_get_using_fontconfig), (_vte_draw_text), (_vte_draw_char), (_vte_draw_has_char), (_vte_draw_fill_rectangle), (_vte_draw_draw_rectangle), (_vte_draw_set_scroll): * src/vtedraw.h: * src/vteft2.c: (_vte_ft2_draw_has_char): * src/vtegl.c: (_vte_gl_draw_has_char): * src/vtepango.c: (_vte_pango_draw_has_char): * src/vtepangox.c: (_vte_pango_x_draw_has_char): * src/vteskel.c: (_vte_skel_draw_has_char): * src/vtexft.c: (_vte_xft_draw_has_char): svn path=/trunk/; revision=1729
2007-02-04Bug 106618 – CJK 'fixed width' font and 's p a c e d o u t' issueChris Wilson1-1/+6
2007-02-04 Chris Wilson <chris@chris-wilson.co.uk> Bug 106618 – CJK 'fixed width' font and 's p a c e d o u t' issue * src/vtedraw.h: * src/vteglyph.c: (_vte_glyph_cache_set_font_description): * src/vtepango.c: (_vte_pango_set_text_font): * src/vtepangox.c: (_vte_pango_x_set_text_font): * src/vtexft.c: (_vte_xft_set_text_font): Detect a change in font between wide-chars and recheck for a fixed-width estimate. svn path=/trunk/; revision=1618
2007-01-31A mixed bag of cleanups.Chris Wilson1-1/+1
2007-01-31 Chris Wilson <chris@chris-wilson.co.uk> A mixed bag of cleanups. * configure.in: * src/pty.c: (_vte_pty_set_utf8): Test for existence of tc[sg]etattr. * src/vte-private.h: * src/vte.c: (vte_terminal_emit_adjustment_changed), (vte_terminal_queue_adjustment_changed), (vte_terminal_set_color_internal), (vte_terminal_handle_sequence), (_vte_terminal_enable_input_source), (vte_terminal_io_read), (vte_terminal_init), (vte_terminal_unrealize), (vte_terminal_finalize), (vte_terminal_background_update), (vte_terminal_queue_background_update), (vte_terminal_emit_pending_signals), (process_timeout), (update_repeat_timeout), (update_timeout): Move idle signal emission to display handlers. * src/vtedraw.h: Add '&' to the single width characters. * src/vteseq.c: (_vte_sequence_get_handler): * src/vteseq.h: Drop the extraneous GQuark parameter. * src/vtexft.c: (_vte_xft_set_text_font): Avoid use of strlen for a compile-time fixed length string. svn path=/trunk/; revision=1595
2007-01-26Bug 401082 – double-draw issueChris Wilson1-0/+2
2007-01-26 Chris Wilson <chris@chris-wilson.co.uk> Bug 401082 – double-draw issue The main cause of this bug was not expanding the cleared area to cover all the cells affected by the draw and forgetting to offset the clear by VTE_PAD_WIDTH. To counter the performance hit due to the expanded repaint area, each backend is presented with the opportunity to apply a clip to the exposed region before painting. This also fixes bug 333157, * src/vte.c: (_vte_invalidate_cells), (vte_terminal_paint_area), (vte_terminal_paint): * src/vtedraw.c: (_vte_draw_clip): * src/vtedraw.h: * src/vteft2.c: (_vte_ft2_end), (_vte_ft2_clip): * src/vtegl.c: * src/vtepango.c: (_vte_pango_clip): * src/vtepangox.c: (_vte_pango_x_clip): * src/vtexft.c: (_vte_xft_clip), (_vte_xft_draw_text): svn path=/trunk/; revision=1548
2007-01-24cf Bug 399617 – Avoid memory allocations during an expose event.Chris Wilson1-2/+2
2007-01-24 Chris Wilson <chris@chris-wilson.co.uk> cf Bug 399617 – Avoid memory allocations during an expose event. Currently we cannot generate long glyph runs due to the text painting being broken up into single rows and setting a low max run cap. The benefit of longer runs is the backends can do more caching within a run and potentially generate fewer render calls and/or less network traffic. In the simple test case, this increased the performance of a remote hexdump by 10%. * src/vte.c: (vte_terminal_draw_rows), (vte_terminal_paint): Scan entired exposed area for glyph runs. * src/vtedraw.h: Increase VTE_DRAW_MAX_LENGTH * src/vtexft.c: (_vte_xft_draw_text): Create GlyphSpecs rather than CharFontSpecs, saves a conversion and potential malloc inside libXft, and our own malloc. svn path=/trunk/; revision=1523
2007-01-24Revert the last accidental overcommit.Chris Wilson1-2/+2
svn path=/trunk/; revision=1515
2007-01-24Valgrind pointed out a couple of places where we tried to access beforeChris Wilson1-2/+2
2007-01-24 Chris Wilson <chris@chris-wilson.co.uk> * src/vteaccess.c: (vte_terminal_accessible_text_modified): Valgrind pointed out a couple of places where we tried to access before the start of the string. svn path=/trunk/; revision=1514
2007-01-17Bug 395373 - Allow the user to specify backend priorities.Chris Wilson1-2/+2
2007-01-17 Chris Wilson <chris@chris-wilson.co.uk> Bug 395373 - Allow the user to specify backend priorities. * src/vtedraw.c: (_vte_draw_init_user), (_vte_draw_init_default), (_vte_draw_new): Scan $ENV{VTE_BACKEND} for the user's preferred backend and failover to the first working backend. Discard checking VTE_USE_* * src/vtedraw.h: * src/vteft2.c: * src/vteft2.h: * src/vtegl.c: * src/vtegl.h: * src/vtepango.c: * src/vtepango.h: * src/vtepangox.c: * src/vtepangox.h: * src/vteskel.c: (_vte_skel_check), (_vte_skel_create), (_vte_skel_destroy), (_vte_skel_start): * src/vteskel.h: * src/vtexft.c: * src/vtexft.h: Remove the environment variable field, drop the "Vte" prefix from the backend names and make the exported structure const. svn path=/trunk/; revision=1447
2006-07-10Bug 345377 – real transparency Patch from Kristian Høgsberg <krhBehdad Esfahbod1-2/+4
2006-07-10 Behdad Esfahbod <behdad@gnome.org> Bug 345377 – real transparency Patch from Kristian Høgsberg <krh redhat.com> * doc/reference/tmpl/vte.sgml: * doc/reference/vte-sections.txt: * python/vte.defs: * src/vte-private.h: * src/vte.c (vte_terminal_set_opacity), (vte_terminal_init), (vte_terminal_background_update): * src/vte.h: * src/vteapp.c (main): * src/vtedraw.c (_vte_draw_set_background_color): * src/vtedraw.h: * src/vteft2.c (_vte_ft2_set_background_color): * src/vtegl.c (_vte_gl_set_background_color): * src/vtepango.c (_vte_pango_set_background_color): * src/vtepangox.c (_vte_pango_x_set_background_color): * src/vteskel.c (_vte_skel_set_background_color): * src/vtexft.c (_vte_xft_create), (_vte_xft_set_background_color), (_vte_xft_clear): Add vte_terminal_set_opacity().
2006-04-18Remove the #ident strings.Behdad Esfahbod1-1/+0
2004-04-20Add (#134429). take a VteTerminalAntiAlias argument. take aNalin Dahyabhai1-2/+6
* src/vte.h, src/vte.c (vte_terminal_set_font_full): Add (#134429). * src/vteglyph.c(_vte_glyph_cache_set_font_description): take a VteTerminalAntiAlias argument. * src/vteft2.c, src/vtegl.c, src/pango.c, src/pango.x, src/vtexft.c (*_set_text_font): take a VteTerminalAntiAlias argument.
2003-06-16add. Move private VteTerminal stuff which needs to be shared with otherNalin Dahyabhai1-0/+2
* src/vteint.h: add. Move private VteTerminal stuff which needs to be shared with other modules in the library here. * src/vtedraw.c, src/vtedraw.h: add get_char_width(), for use in drawing the cursor. * src/vte.c(vte_invalidate_cursor_once): if the character under the cursor doesn't fit into its cell, expose the column to the right of it so that we can paint into the adjacent cell. * src/vte.c(vte_terminal_paint): when clearing the area behind the cursor or drawing the hollow rectangle to indicate its position when we don't have focus, use the visible width of the character instead of just assuming it will fit. This complies better with assertion 2.
2003-05-28check for GTK+ 2.2, and if found, force use of multihead-safe APIs to tryNalin Dahyabhai1-0/+6
* configure.in: check for GTK+ 2.2, and if found, force use of multihead-safe APIs to try to flush out some bugs. * src/vte.c, src/vteapp.c, src/vtedraw.c, src/vtefc.c, src/vteglyph.c: clean up some sloppy multihead changes. * src/vte.c, src/vte.h (vte_terminal_match_set_cursor_type): add. * src/vtedraw.c, src/vtedraw.h: add a draw_char() method which is allowed to fail. * src/vte.c(vte_terminal_draw_graphic): separate the width of a column and the number of columns to be drawn. Use _vte_draw_char() to avoid crude approximations of characters when we have a font for them.
2003-05-13add _vte_draw_needs_repaint() to indicate if the drawing back-end can onlyNalin Dahyabhai1-0/+2
* src/vtedraw.c, src/vtedraw.h: add _vte_draw_needs_repaint() to indicate if the drawing back-end can only handle entire-window paints. * src/vteconv.c: return a value from _vte_conv_close(), even though it isn't used. * src/vte.c(vte_terminal_paint): don't look at drawing starting at negative row or coumn offsets. * src/vtegl.c: prefer glX double-buffering to GDK's, and use double-buffered possibly-direct windows instead of indirect pixmaps.
2003-05-09let the caller control whether or not we return the default colormap.Nalin Dahyabhai1-1/+2
* src/vtedraw.c, src/vtedraw.h (_vte_draw_get_colormap): let the caller control whether or not we return the default colormap. * src/vtegl.c: enable blending. Don't specify any buffer depths. Set the current drawable before we do any drawing. Call gluOrtho2D with the right args to set up the right projection. * src/vteskel.c: quiet compiler warning by removing a "const". * src/vtedraw.c: juggle the preferred render order again.
2003-05-01add a singleton object for managing copies of background images, eitherNalin Dahyabhai1-2/+13
* src/vtebg.c, src/vtebg.h: add a singleton object for managing copies of background images, either the desktop background, an in-memory pixbuf, or an on-disk file, with tinting. Using a single store for this stuff lets multiple widgets share images and should reduce both CPU and memory consumption in applications which create more than one VteTerminal instance with similar settings. * src/vtedraw.c, src/vtedraw.h: adapt the set_background_pixbuf() interface to the vtebg method and rename to set_background_image(). * src/vteft2.c, src/vtegl.c, src/vtepango.c, src/vtepangox.c, src/vteskel.c, src/vtexft.c: update to work with newer vtebg/vtedraw interfaces. * src/vte.c(vte_terminal_filter_property_changes): remove in favor of vtebg method. Manage background state for vtebg.
2003-04-14disable pangox, xft, glx drawing if run invoked with the --without-x flag.Nalin Dahyabhai1-1/+23
* configure.in: disable pangox, xft, glx drawing if run invoked with the --without-x flag. * vte.pc.in: include CFLAGS found by AC_PATH_XTRA when built with X. * src/iso2022.c(_vte_iso2022_substitute_single): clean up and ensure that ambiguous widths are respected. * src/iso2022.c, src/iso2022.h: add _vte_iso2022_unichar_width(). * src/vte.c: remove old xft2/xft1/pango/pangox/core drawing code, making draw the only supported method. Remove most dependencies on gdkx and Xlib, except for root pixmap ID watching. * src/vtedraw.c: only use pangox, xft if X_DISPLAY_MISSING is not defined. * src/vtedraw.c, src/vtedraw.h: add get_using_fontconfig() method. * src/vte.c(vte_terminal_get_using_xft): use _vte_draw_get_using_fontconfig(), which is what apps really want to know when they call this function. * src/vtegl.c: wrap in #ifndef X_DISPLAY_MISSING. * src/vtepangox.c: wrap in #ifndef X_DISPLAY_MISSING. * src/vtexft.c: wrap in #ifndef X_DISPLAY_MISSING. * src/vteglyph.c(_vte_glyph_cache_set_description): use horizontal advance instead of bitmap width when calculating display widths. Rename to _vte_glyph_cache_set_font_description.
2003-04-09add specific checks for PangoX and glX. add drawing method using freetypeNalin Dahyabhai1-5/+7
* configure.in: add specific checks for PangoX and glX. * src/vteft2.c, src/vteft2.h: add drawing method using freetype and GdkRGB. * src/vteglyph.c, src/vteglyph.h: add. * src/vtepangox.c, src/vtepangox.h: add drawing method using PangoX. * src/vtergb.c, src/vtergb.h: add. * src/vtegl.c, src/vtegl.h: add placeholder drawing method using freetype and glX. * src/Makefile.am: add newly-added source files to libvte.la target. * src/vtedraw.c, src/vtedraw.h: add get_visual and get_colormap methods so that drawing methods can override the default visual and colormap. Rename get_text_base() to get_text_ascent(), which is more correct. Remove scroll(), which would just wrap gdk_window_scroll(). * src/vte.c: fix logic for choosing alternate render methods when VTE_USE_XFT is "0". * src/vteapp.c: add -- option to stop parsing options with getopt. * src/vtefc.c: fix incorrect DPI read due to type mismatch (#109513).
2003-03-05require Xft2 and fontconfig, drop Xft1. Require freetype2. add xticker,Nalin Dahyabhai1-0/+110
* configure.in: require Xft2 and fontconfig, drop Xft1. Require freetype2. * src/Makefile.am, src/xticker.c: add xticker, useless but interesting. * src/vte.c, src/vte.h: add vte_terminal_set_scroll_background() to enable background scrolling (where supported by the drawing code). * src/vteapp.c: set the tinting color to the default background color to see what that's like. Add -s option to toggle scrolling backgrounds. * src/vtefc.c, src/vtefc.h: add. For converting PangoFontDescriptions to sorted lists of FcPatterns suitable for passing to XftFontOpenPattern() or even FT_New_Face(). * src/vtedraw.c, src/vtedraw.h: add. New drawing layer. * src/vtepango.c, src/vtepango.h: add. Drawing layer using Pango. * src/vtexft.c, src/vtexft.h: add. Drawing layer using Xft2. * src/vte.c: add render type VteRenderDraw for transitional period in preparation for nuking other drawing code. Merge HAVE_XFT bits into HAVE_XFT2 areas. Nuke Xft1-specific stuff. Move drawing of lines and rectangles to dedicated functions. Always call vte_unichar_width() instead of g_unichar_iswide().