Revision 702905

Go back to digest for 26th August 2007

Features in KDE Base

Matthias Kretz committed changes in /trunk/KDE/kdebase/runtime/phonon/xine:

too big diff - no way to commit when not connected to the internet :-(

- VideoWidget on destruction tells xine WILL_DESTROY_DRAWABLE (it was in VideoWidgetXT before which was not the drawable)
- change Events namespace to Event class (QEvent subclass and baseclass for all events used in the backend), the Event objects have a refcount now
- let all down-/upstreamEvent reimplementations call the Source-/SinkNode implementations for event object cleanup
- add code to allow copying custom Event objects
- copy the event before posting it (postEvent takes ownership)
- in SourceNode::downstreamEvent increase refcount of events for each sink it
sends it to
- add safeguard in XT classes to check for early deletion
- add code in XineStream to send arbitrary events downstream
- keep a ref to all XT objects that were mentioned in a connectionChange for 3 seconds to give xine some time to finish the rewiring which happens at some undefined point after the rewire call.

- implicitly deinterlace video when playing a DVD
- make EVENT_SPU_BUTTON (DVD menus) work again
- remove all "<< endl"s
- stop adding a new unusable virtual device per run

File Changes

Modified 26 files
  • /trunk/KDE/kdebase/runtime/phonon/xine
  •   /audiooutput.cpp
  •   /audiooutput.h
  •   /audioport.cpp
  •   /backend.cpp
  •   /bytestream.cpp
  •   /effect.cpp
  •   /events.h
  •   /mediaobject.cpp
  •   /mediaobject.h
  •   /mixer_plugin.cpp
  •   /sinknode.cpp
  •   /sinknode.h
  •   /sourcenode.cpp
  •   /sourcenode.h
  •   /videoeffect.cpp
  •   /videowidget.cpp
  •   /videowidget.h
  •   /visualization.cpp
  •   /volumefader_plugin.cpp
  •   /volumefadereffect.cpp
  •   /wirecall.h
  •   /xineengine.cpp
  •   /xinestream.cpp
  •   /xinestream.h
  •   /xinethread.cpp
  •   /xinethread.h
26 files changed in total