Commit Graph

21 Commits

Author SHA1 Message Date
Michael Drake
4cbc56ebc1 Add Unicode support to internal font.
+ Now contains more glpyhs (was previously limited to cp-1252).
  + When a glyph is unavailable, the codepoint is now rendered.
  + Added glyph data file.
  + Added converter to generate the font's .c file from the data.

TODO:

  The generated file is currently checked into the repo, but it
  should be generated as part of the build process, in the
  build-* directory.

  To update the generated source file, first build the converter:

      $ gcc -O2 -Wall framebuffer/convert_font.c -lm \
          -o build-Linux-framebuffer/tools/convert_font

  And then use it to generate the souce file:

      $ build-Linux-framebuffer/tools/convert_font \
         framebuffer/res/fonts/glyph_data \
         framebuffer/GEN_font_internal.c -v

  The converter's usage is:

     convert_font [options] <in_file> <out_file>

  See convert_font --help for more details.
2014-05-06 21:31:05 +01:00
Michael Drake
e1a96ecfe1 Register destruction callback to free text widget text. 2013-10-23 19:58:20 +01:00
Michael Drake
5ca6862a87 FONT_SIZE_SCALE is for preserving fractional parts, so use it properly. 2013-08-29 12:04:37 +01:00
Michael Drake
126141a52c Ensure text is at the right height for Freetype and Internal fonts. 2012-08-08 14:04:57 +01:00
Michael Drake
b238791002 Use enum instead of magic numbers for tracking key modifier states. Pass special keys to core (e.g. WORD_LEFT, SELECT_ALL, etc). 2012-08-01 14:47:20 +01:00
Michael Drake
d84ad62a04 Scroll text in writable text widget so caret is always in view. 2012-08-01 09:29:26 +01:00
Michael Drake
465ebb2c7b Only writable text widget needs caret rendering. 2012-08-01 09:16:25 +01:00
Michael Drake
9e3db46b67 Handle CTRL modifier too. CTRL with cursor left/right is same as SHIFT. CTRL+U clears writable. 2012-07-31 22:55:08 +01:00
Michael Drake
21ce8800b8 Cursor left/right keys plus modifier move caret to extrems. 2012-07-31 22:40:47 +01:00
Michael Drake
75cc4a06be Factor out some repeated code. 2012-07-31 22:30:39 +01:00
Michael Drake
53183b2411 Make text input widget remove caret on "strip focus" event. 2012-07-31 22:18:44 +01:00
Michael Drake
2999410af6 When a text input widget has its text set, and it has the caret, move the caret to the end. 2012-07-31 21:04:20 +01:00
Michael Drake
140795500c Claim, position, and render caret in text input widget. Currently does not remove caret when input widget is stripped of focus (because widget doesn't know). 2012-07-31 20:43:43 +01:00
Michael Drake
4125a8afdf Remove strlen from redraw functions. 2012-07-31 15:18:25 +01:00
Michael Drake
45b9d96678 Add support for editing text input widget contents from arbitrary position in string (instead of just end). 2012-07-31 15:13:52 +01:00
Michael Drake
90b0c48bb2 Split out common code to generate a font style for text input widget. 2012-07-31 14:06:57 +01:00
Michael Drake
eddae6af06 Remove plotter table global. Pass a redraw context around redraw functions. Knockout could be handled better. Note: untested on most front ends.
svn path=/trunk/netsurf/; revision=12543
2011-06-30 15:48:07 +00:00
Vincent Sanders
06764ea9f0 add control of fbtk text widget padding
svn path=/trunk/netsurf/; revision=12116
2011-03-21 07:51:37 +00:00
John Mark Bell
d945884cb1 Fix font sizing in text widget
svn path=/trunk/netsurf/; revision=12016
2011-03-13 10:52:09 +00:00
Vincent Sanders
30a92ed4e6 remove malloc.h anachronism
svn path=/trunk/netsurf/; revision=11227
2011-01-06 09:24:14 +00:00
John Mark Bell
5bebf2f2fc Merge branches/vince/netsurf-fbtk-rework to trunk.
svn path=/trunk/netsurf/; revision=10605
2010-07-07 18:08:17 +00:00