Disko Changelog 1.7

New Features & Improvements


  • Function: translation now extensible in a generic way
  • Function: new MMSPulser (to give soft logarithmic or linear callback pulses)
  • Function: live Themeswitch
  • Function: added Disko default theme, that can be changed via XML
  • Function: configuration parser now accepts command line switches:
    • --disko:graphics.videolayer.pixelformat=<pixelformat>
    • --disko:graphics.graphicslayer.pixelformat=<pixelformat>
    • --disko:graphics.fullscreen=<fullscreen modes>
    • --disko:graphics.hideapplication=true/false


  • Function: ARGB->BGR24 blend coloralpha routine
  • Function: BGR24->BGR24 blend coloralpha routine
  • Function. RGB32->RGB32 blend coloralpha routine
  • Function: Support for BGR555
  • Function: added stretching via libswscale for I420, YV12, YUY2
  • Function: added JPEG support, added TIFF support


  • Memory Usage, Performance: now supports single buffering
  • Performance: moveTo() now has refresh parameter
  • Performance: background windows get no alpha channel
  • Eyecandy: show and hide action now use MMSPulser for smooth scrolling
  • Eyecandy: windows can now be stretched in any direction


  • Performance: improvements with global opacity settings
  • Performance: ARGB FillRectangle optimizations


  • Eyecandy: MenuWidget uses MMSPulser for smooth scrolling
  • Performance: MMSTextBoxWidget faster text layout algorithm
  • Performance: refresh Widget only if cursors is really drawn
  • Function: Textbox can now be filled from file


  • Function: added simple gesture recognition for inputs

Taff Tool

  • added parameter for pixelformat (supported: ARGB, AiRGB, RGB16, AYUY)
  • added parameter for mirror size



  • MMSTimer: fixes (deadlock when calling stop in the same thread context, restart bug if stop is called twice
  • MMSTAffFIle: do not regenerate TAFF if modification date is in the future
  • MMSWindow: deadlock fixed, out of range exception fixed
  • MMSWindow: fixed too strong opacity in child window stack
  • MMSInput: removed unnecessary stack handover causing many mallocs to zero
  • MMSInput: fixed bug in ringbuffer handling, fixing lockups after some time
  • MMSFBSurfaceManager: cache unused surfaces only 3s

Build system

  • API incompatibility with libxml2 < 2.7.0
  • not setting own default values if CXXFLAGS is set
  • check C++ compiler existence
  • tools can now be statically linked
  • picture backend is complete optional, fallback is the internal taff format