VDR Plugin 'osdteletext' Revision History
-----------------------------------------
2021-12-16: version 2.3.1
- [pbiering] DrawMessage: use scaled font and border to avoid exceeding current TT-OSD size

2021-12-15:
- [pbiering] ChannelSwitch: fix bug related to live channel hint in case of current channel has no Teletext

2021-12-12:
- [pbiering] ChannelSwitch: add hint about Top40 channels with Teletext
- [pbiering] DrawMessage: avoid transparent background on message boxes

2021-12-10:
- [pbiering] naming: replace "Line 24" with "Footer Line" and improve text representations

2021-12-09: version 2.3.0
- [pbiering] add support for half bright standard colors and ETSI colors 16-31
- [pbiering] extend 24-Line-Toggle with a 3rd option to display hint lines for standard keys
- [pbiering] long option fix "key-levels", add-missing "osd-preset"
- [pbiering] limit DrawMessage box to maximum box size

2021-08-06: version 2.2.1
- [pbiering] fix frame in case reaching OSD limits
- [pbiering] honor frame value in case of 100% width or height

2021-05-30: version 2.2.0
- [pbiering] adjust range check for "jump to page"

2021-05-22:
- [pbiering] fix range check bug related to Hotkey "jump to page" config
- [pbiering] fix not working Hotkey level feature in case only 2 levels are active

2021-05-12:
- [pbiering] fix in setup changed but not applied to current background transparency

2021-05-11:
- [pbiering] fix in OSD config changed but not remembered background transparency

2021-04-22:
- [pbiering] remove obsolete setup options suspendReceiving, inactivityTimeout
- [pbiering] drop setup option configuredClrBackground and change to "BackTrans" (with multi-preset support) and proper 0-255 logic (not inverted as before)

2021-04-18:
- [pbiering] implement optional OSD Hotkey level feature (max. 9 levels with limiter)
- [pbiering] implement optional OSD Preset feature (max. 9 presets with limiter)
- [pbiering] rework dynamic menu creation related to 'jump to' to fix 'not working on last config entry' issue

2021-04-27: version 2.1.1
- [pbiering] release receiver on live channel switch earlier in sequence to use even on 2-tuner systems by default only one tuner
- [pbiering] release device on non-live -> non-live channel switch earlier to avoid locking on 2-tuner systems

2021-04-19: version 2.1.0
- [pbiering] catch case where in tuned mode channel switch is triggered on selected device and switch into cached mode

2021-04-15:
- [pbiering] finally catch and handle proper switching from tuned to live channel by outside trigger (e.g. RCU)

2021-04-14:
- [pbiering] replace all sleeps related to messages with a delay method, review/catch cases when a channel switch message should be displayed
- [pbiering] include channel number in 'invalid channel' message
- [pbiering] ChannelSwitch now supports receiving other channels from same transponder or even other transponder (aka "tuned" mode)
- [pbiering] various cosmetic fixes

2021-04-11: version 2.0.2
- [pbiering] fixes/cleanup translations of key assignment setup menu

2021-04-11: version 2.0.1
- [pbiering] fix warnings reported by clang
- [pbiering] display channel switch message only in case OSD is active
- [pbiering] fix G0 character without diacritical mark
- [pbiering] bring storage system "packed" back to default

2021-04-11: version 2.0.0
- [pbiering] additional fixes found during regression tests related to translations and others

2021-04-09:
- [pbiering] clear teletext page on channel switch

2021-04-08:
- [pbiering] many fixes found during regression tests related to MessageBox, too often CleanDisplay calls, ...
- [pbiering] display PageId always in case OSD was restarted (useful e.g. for subtitle pages)
- [pbiering] selected background color kept on OSD restart

2021-04-07:
- [pbiering] cached pages of non-live channel:  display page IDs in different color and a 'c' mark, do not trigger useless 'Pause'
- [pbiering] channel switch: display message, on empty OK return to live channel
- [pbiering] draw bi-colored message frame, increase frame on high resolution, change font on high resolution

2021-04-06:
- [pbiering] stop updating clock and blink in case of page update was stopped
- [pbiering] display sender name in case page is not found
- [pbiering] blacklist Italic and Oblique fonts from being selectable (which causes anyhow issues on displaying because of kerning)
- [pbiering] improve font scaling

2021-04-04:
- [pbiering] add "Text Font" option to OSD config

2021-04-03:
- [pbiering] add support for "G0 character with diacritical mark" by implementation related support of X/26
- [pbiering] introduce new page cache storage format VTXV5 to cover X/25-28 and M/29 extension
- [pbiering] fix not working selection of cache-system 'legacy'

2021-03-28: version 1.1.1
- [pbiering] fix missing implementation of graphics char 0x7f (filled rectangle)
- [pbiering] implement 'Paused' toggle

2021-03-27:
- [pbiering] add backgorund transparency to OSD config mode
- [pbiering] remember background color when toggling through 'Half' mode

2021-03-25:
- [pbiering] fix/enable toggle support for concealed chars and hint after page number if concealed chars exist, do not display concealed chars by default

2021-03-25: version 1.1.0
- [pbiering] fix related to boxed chars in case page is not boxed itself

2021-03-24:
- [pbiering] add 24-line-mode as optional key action toggle

2021-03-23:
- [pbiering] implement OSD config mode

2021-03-22:
- [pbiering] implement optional black frame
- [pbiering] extend half mode with top instead bottom placement
- [pbiering] replace bottom black line by button hint line

2021-03-21:
- [pbiering] fix broken support of 'blink'
- [pbiering] hide clock on boxed pages
- [pbiering] show PageId only until 1st update on boxed pages

2021-03-20:
- [pbiering] extend README with hints to reference pages (hint from https://www.vdr-portal.de/forum/index.php?thread/134254-osdteletext-1-0-0-released/&postID=1338016#post1338016)

2021-03-12: version 1.0.7
- [pbiering] decrease thread priority to "low"
- [pbiering] add info log for thread start/stop (incl. some statistics)
- [pbiering] add optional debug log for cTxtReceiver::DecodeTXT

2021-02-28:
- [pbiering] align plugin prefix in log, cleanup some EOL code
- [pbiering] fix OSD background rectangle size
- [pbiering] fix char rectangle size

2021-02-28: version 1.0.6
- [pbiering] fix for 'half' and 'zoom' mode in combination with 24-line mode

2021-02-27: version 1.0.5
- [pbiering] some fixes related to 24-line mode option and double call of CleanDisplay

2021-02-27: version 1.0.4
- [pbiering] add 24-line mode option

2021-02-26: version 1.0.3
- [pbiering] fix 'half' mode

2021-02-25: version 1.0.2
- [pbiering] replace percent based vertical/horizontal center option by top/left (re-add dropped feature)

2021-02-25: version 1.0.1
- [pbiering] add percent based vertical/horizontal center option

2021-02-23: version 1.0.0
- [pbiering] replace OSD sizing options by percent values and always-centric
- [pbiering] scale "Text Vertical Offset" according to reduced size

2021-02-19: version 0.9.9
- [pbiering] add fallback to 8 bpp in case OSD is not supporting TrueColor

2021-02-04:
- [pbiering] fix obsolete use of readdir_r (credits to ua0lnj)
	https://github.com/vdr-projects/vdr-plugin-osdteletext/issues/5

2021-02-01: version 0.9.8
- [pbiering] introduce setup option "Text Vertical Offset" ("5" looks good on softhddevice)
- [pbiering] fix out-of-bounds message by using new way to calculated x/y position for ClearMessage
- [pbiering] merge fix for issues found with OpenGL
	https://www.vdr-portal.de/forum/index.php?thread/133952-softhddevice-bug-in-opengl-osd-bug-mit-osdteletext/
- [pbiering] merge fix for annoying blank lines in graphics characters
	https://www.vdr-portal.de/index.php?attachment/41771-osdteletext-0-9-7-patch/
        https://www.vdr-portal.de/forum/index.php?thread/131627-gel%C3%B6st-vdr-plugin-osdteletxt-0-9-7/&postID=1303329#post1303329
- [pbiering] add configurable 4bpp color mode base on hardcoded patch:
	https://www.vdr-portal.de/index.php?attachment/41884-osdteletext-4bpp-diff/
	https://www.vdr-portal.de/forum/index.php?thread/131627-gel%C3%B6st-vdr-plugin-osdteletxt-0-9-7/&postID=1304681#post1304681

2018-02-24: version 0.9.7
- Added teletext2.ttf
- Cyrillic support added

2018-01-28: version 0.9.6
- Merged the changes from Rolf Ahrenbergs fork pon GitHub
  (https://github.com/rofafor/vdr-plugin-osdteletext):
- VDR 2.3.1 compatibility (patch by 'kandakruemel')
- Fixed character drawing
- Fixed character conversion table for Finnish/Swedish

2015-02-13: version 0.9.5
- Avoid pkg-config warnings
- Improved cleanup when closing OSDTeletext
  (Thx to Ville Skyttä and Rolf Ahrenberg)

2013-03-10: version 0.9.4
- Allow to override the CXXFLAGS
- Fixed CZ font and added CZ-SK subset - patch provided Marek Hajduk
  (Closes #1134)
- Dropped backwards compatibility for VDR 1.6.0 (Closes #944)
- Using new standard plugin Makefile from VDR 1.7.39

2012-04-03: version 0.9.3
- VDR 1.7.27 compatibility (Closes #919), Credit goes to nox and gda fro
  vdrportal.de
- Instead of doing mixed drawing to cOsd and cBitmap only draw to cBitmap
  (Closes #899, this should fixe the issues with the TT6400)

2012-03-25: version 0.9.2
- Some code refactorings (Thx to Ville Skyttä)
- FF card transfer mode on channel switch with VDR >= 1.7.25 (Closes: #9)
  (Thx to Udo Richter)
- VDR 1.7.26 compatibility (Thx to Ville Skyttä)
- Better live view channel switch detection

2011-08-20: version 0.9.1
- Updated Italian translation provided by Diego Pierotto (Closes #450)
- Added Slovak translation provided by Milan Hrala (Closes #558)

2010-11-06: version 0.9.0
- Updated Italian translation provided by Diego Pierotto (Closes #151)
- Fix valid page number check in TeletextBrowser::ExecuteAction (Closes #154)
- Fixed possible segfault (Closes #179) - (Thx to Manuel Reimer)
- Added setup option to disable main menu entry (Closes #149)
  (Thx to Manuel Reimer!)
- Added command line option to enable storing TopText pages, which is
  now disabled by default (References #177) (Thx to Andreas Brachold!)
- Makefile adjustments for VDR 1.7.13.
- Don't care if the current channel really changed, if we get a channel switch
  on the primary device (Thx to Sören Moch)

2009-06-02: version 0.8.3
- Updated Ukrainian translation provided by Yarema P. aka Knedlyk (Closes #133)

2009-05-25: version 0.8.2
- More refactoring of the TxtStatus class (Thx to Sören Moch!)
- Install plug-in to lib dir with --remove-destination as suggested
  by Christian Wieninger (Closes #57)
- If background is configured to completely black or transparent,
  toggle between black and transparent only.
- Updated Italian translation provided by Diego Pierotto (Closes #60)
- Fixed problems with VDR >= 1.7.3 (not all teletext pages accessible,
  4 GByte VTX files)
- Removed unnecessary DVBDIR from Makefile

2009-01-10: version 0.8.1
- Small bugfix in channel switching code

2009-01-10: version 0.8.0
- Added Portuguese translation provided by Chris Silva
- Updated Italian translation by Davide Cavalca
- Removed the "OSD" from the main menu entry as suggested by Davide Cavalca
- Added Ukrainian translation provided by Yarema P. aka Knedlyk
- Removed obsolete options -R and -r
- Remove remnants of VDR < 1.6 support
- Updated Russian translation provided by Oleg Roitburd (Closes #46)
- Improved error handling
- Background toggling now allows to switch between black, the configured
  background transparency and full transparency as suggested by
  Walter K. (Closes #41)
- Removed the OSDTELETEXT_REINSERTION_PATCH (dead code)
- Removed timingdebug code
- Merged class ChannelStatus into cTxtStatus and changed the code that
  detects, if the current live channel has been changed and the
  OsdTeletext receiver needs to switch to the new channel as well
- Updated French translation provided by Nival Michaël (Closes #56)

2008-12-19: version 0.7.0
- switched completely to VDR 1.6's I18N system and removed the old crap - no
  more support for older VDR versions! (thx to Rolf Ahrenberg)
- proper translation of the key bindings (thx to Rolf Ahrenberg)
- Partially updated Italian translation by Davide Cavalca <davide125@tiscali.it>

2008-12-02: version 0.6.0
- Moved installation of README and manpage from all to install target
- Updated code for VDR 1.6.0
- Changed default location of vtx cache to /var/cache/vdr/vtx
- Fixed problems with switching channels on FF+Budget systems
  See: http://www.vdr-portal.de/board/thread.php?postid=728192#post728192

2005-08-16: version 0.5.1

- show page if it was initially not found
  but is received later
  (suggested by Luca Olivetti)
- added timeout for user inactivity after 
  which the plugin is closed. Without timeout the plugin would
  prevent VDR's auto-shutdown mechanism if it remains open.
  The value is the same as VDR's min user inactivity
  setup option.
  (suggested by Peter Bieringer)
- fixed gcc4 warnings
  (thanks to Ville Skyttä)
- updated Finnish translation
  (thanks to Rolf Ahrenberg)
- added command line parameter documentation
  to READMEs
- added /var/cache/vdr/osdteletext to the list of recommended
  cache directories
  (suggested by Ville Skyttä)

2005-04-21: version 0.5

  Udo Richter:
- font subsystem now supports Teletext level 1.
  Fonts are provided for English, German, French,
  Italian, Spanish, Portuguese, Swedish and Finnish.
  The correct font is chosen automatically.
- support for "boxed mode" (newstickers, subtitles):
  in 4Bpp mode the area not covered by the box
  will be completely transparent
- OSD can now be aligned on screen:
  - in horizontal alignment mode, 0 means on the left, 
    50 in the center and 100 on the right
  - in vertical alignment mode, 0 means at the top,
    50 in the center and 100 at the bottom
  - default is central alignment
- changed palette system, no longer depending on 
  order of indexing
- fixed compilation failure with gcc 2.95
- changed OSD minimum size from 480x324 to 320x250
- some bugfixes and comments in txtrecv.c
  Marcel Wiesweg:
- avoid crash and improve behavior when an
  invalid channel number is entered

2005-03-30: version 0.5-pre1

  Udo Richter:
- extensive rewrite of display code
- removed display.*, txtbitmap.*, colormapping.h
- added txtrender.*, displaybase.*, display.*
- menu.c adapted to new display engine
- speed improvements by incremental drawing
- strict adherence to standard

2005-03-21: version 0.4.9-inofficial

- rewrite of scaling and drawing code, better scaling
  algorithm, removed inefficient double painting.
  Increases speed by a factor of 4. (Udo Richter)
- minor fixes for pagenumber, channel number and clock
  fields to minimize overdrawing (Rolf Ahrenberg)
- fix for graphical errors if normal characters are 
  introduced after double high ones (Rolf Ahrenberg)
- fix in receiving code to make osdteletext work
  with some Swedish channels (thanks to Magnus Andersson)
- pseudo target in Makefile allows a simple "make".
  Previously, this would fail and you needed "make all"

2005-03-03: version 0.4.2

- fixes for double-high characters, scaling and localization
  (thanks to Rolf Ahrenberg for his patch edition)
- adapted to VDR API >= 1.3.18, reentrancy fixes
- added Spanish and Catalan translation
  (thanks to Luca Olivetti)
- create stored files with 644 permissions
  (suggested by Andreas Brachold)

2004-09-21: version 0.4.1

- fixed problem with undefined file permissions 
  of created files (thanks to whoever created the patch)
- fixed hexadecimal/decimal misinterpretation for "Jump to" 
  key bindings (thanks to Peter Bieringer for pointing this out)
- cosmetic change: key Left when entering channel number
  now resets the cursor by one position, other keys stop
  entering of page number

2004-06-18: version 0.4

- ported to VDR 1.3/1.4 series (>=1.3.8 now required)
  This mostly involved changes in the OSD graphics code,
- now supports OSDs with color depth of 3 
  (thanks to Sascha Volkenandt)
- rewrote the storage system:
  - cache directory is now configurable (option -d)
    Default value is still /vtx to allow seamless migration,
    but /tmp/vtx is recommended (conforms to LSB etc.)
  - changed the default file format: Now more than one
    page is stored in one file. On filesystems that depend
    on a blocksize the increases storage efficiency.
    For tmpfs the improvement factor is approx. 4.
  - The old system is still available via a
    command line option (though it now uses a slightly
    different naming)
  - when no more space is available on disk
    or a specified number of harddisk space is exceeded
    (option -n) the folder least recently modified
    will be deleted.
    On exit, all files will be deleted, i.e.
    (!) on exit, all files with suffix .vtx
    below the storage directory will be deleted
  - the option -r is now obsolete (will be ignored)
    option -R/--no-receive is deprecated
- code cleanups, removed broken or unused code
- fixed quite a few bugs
- Added Russian translation (thanks to Vyacheslav Dikonov)

2003-12-2: version 0.3.2

- receiver now uses a ring buffer and a thread to reduce
  time spent in Receive() function, thus delaying VDR's
  receiver thread (several people reported problems
  with bitstreamout - thanks to Christian Jacobsen
  and Dr. Werner Fink)
- fixed and improved the newly introduced receiver thread
  (thanks to Dr. Werner Fink)
- fixed a bug that if there is a double high title on a page,
  the last line on that page will be missing
  (fixed by Rolf Ahrenberg)
- fixed Finnish translation (thanks to Rolf Ahrenberg)
- added Italian translation (thanks to "kikko77")
- fixed bug that you could not enter 0 when switching
  channel (thanks to Dietmar Hilbrich)

2003-04-28: version 0.3.1

- added support for DXR3 systems. Patches contributed by Kai Moeller
  and Sascha Volkenandt, thanks to them.
- the "0" if pressed as first digit now switches between current
  and last page (as VDR does it with channels)
- fixed autosuspend thread

2003-04-03: version 0.3

- fixed two serious memory leaks, thanks to Martin Pley
- added feature to automatically update the page if it changed.
- moved color definitions to colormapping.h
- made width and height configurable, independent from, but with the same
  mechanism as VDR
- made setup menu items dynamic, i.e. the "Page Number" entries are hidden
  when "Jump to..." is not selected
- Experimental: added option to suspend the receiving automatically
  for 5min after 30s. This may enable you to use your TV set's 
  teletext decoder if you like to. (patch to VDR needed)
- Experimental: added an action to immediately suspend receiving,
  respectively reenable it
- added an action to switch the background color between the value
  you configured in the setup and black
- improved color handling when foreground and background
  color are the same, thanks to Martin Pley
- fixed small bug in ChangePageRelative, thanks to Martin Pley
- improvements in page switching, thanks to Martin Pley
- rewrote parts of the README
- added a German README.DE
- several fixes and code clean-ups



2003-02-26: version 0.2.1

- fixed two compiling problems with gcc versions other than 3.2
  (asprintf, <map>)
- included Finnish translations, thanks to Lauri Tischler
- improved Makefile, now uses install instead of mkdir/cp

2003-02-15: version 0.2

- Copied code to receive and save teletext data from original teletext plugin.
  (appreciating Peter Seyringer's great work)
- added command line option to enable the receiving code
- added setup options to make key bindings fully configurable.
  For each key you can choose between the three actions "Zoom", "Half page" or
  "Switch channel" or use it to jump to a page
- added setup option to make background transparency configurable 
  (0...255, VDR's default value being 127)
- included Emil Naepflein's patch to improve changing pages relatively
- added feature to view saved pages of other channels than the current
  ("Switch Channel"). Last pages are remembered over channel switching.
- fixed bug when the upper half of a page was not automatically shown
  when using the number keys
- page and channel numbers now persist when returning to VDR
- added clock which can regularly be updated.
  (the clock shows the system time, which may definitely be different
   from the time broadcast via teletext)
- added setup option to enable clock
- now copies README to ../../man, as Reinhard Walter Buchner suggested


2003-02-05: Version 0.1

- Initial revision.
