History log of /haiku/src/apps/mediaplayer/ControllerView.h
Revision Date Author Comments
# 3065fd47 13-Dec-2017 Alexander von Gluck IV <kallisti5@unixzen.com>

MediaPlayer: Relicense to MIT

* The GPL license here was a relic from the past to help
control YellowTab's use of Haiku source code. The intent
at the time was to relicense MIT. Some GPL parts remained.
* This is going to get harder and harder to correct over time.
* This code makes Haiku *not* MIT. Lets correct that.
* I reached out to everyone who made changes to these files and
got personal approvals to relicense MIT.
* If I missed somebody, *and* you feel as though the MIT license
doesn't meet your needs, please contact Haiku, Inc. and we will
work to revert your changes.

Marcus Overhagen EMAIL - MIT OK 11/29/17
Stephan Aßmus EMAIL - MIT OK 11/28/17
Axel Dörfler IRC - MIT OK 11/29/17
Ryan Leavengood KEYBASE - MIT OK 11/28/17
Michael Lotz IRC - MIT OK 11/29/17
Adrien Destugues EMAIL - MIT OK 11/28/17
Joachim Seemer EMAIL - MIT OK 11/28/17
Jonas Sundström EMAIL - MIT OK 11/29/17
François Revol IRC - MIT OK 11/29/17
Jérôme Duval EMAIL - MIT OK 11/29/17
Oliver Tappe EMAIL - MIT OK 11/29/17
Dziadek EMAIL - MIT OK 11/29/17
Philippe Saint-Pierre EMAIL - MIT OK 12/6/17
Philippe Houdoin EMAIL - MIT OK 12/8/17
Dario Casalinuovo IRC - MIT OK 12/13/17


# 53312de5 25-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

MediaPlayer: Toggling Fullscreen wrongly reset control status

All controls were enabled when toggling fullscreen on and off;
now it recalls the argument last used in SetEnabled() and reuse it
when called in AttachedInWindow() (which occurs in such toggling)

Fixes #8804.


# 2caab6e5 28-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Coding style cleanups, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33811 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bae0154c 16-May-2009 Stephan Aßmus <superstippi@gmx.de>

* I didn't like so much how the "Remove and Move into Trash" feature was
implemented. It didn't reuse existing code and didn't integrate well. No
Undo/Redo except via Tracker, but not in the Playlist... some bugs as well
(Remove had same shortcut as Randomize, Didn't maintain current playback item
if last entry was removed)
* I need to reenable the main window short cut though. This is only temporary.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30768 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9327db63 29-Apr-2009 Fredrik Modeen <fredrik@modeen.se>

Adds the option to delete a file from Mediaplayer and move that file to Trash
Works both from main window and PlayList window.
Button that works are B_COMMAND + [delete | d | r] button.
It can be debated what shortcut to use but I needed this function :)
Same goes for the menu i Playlist window. Yell and Ill change :)

What not works are undo and total undo in main window and total undo in Playlist
(total undo = undo files from trash as well as normal undo)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30490 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 540fe7ae 17-Oct-2007 Stephan Aßmus <superstippi@gmx.de>

patch by Fredrik Modéen with changes by myself
* toggle the "marked" state of the settings menu items correctly
* implement muting/unmuting the volume
* implement volume up/down triggered by keyboard events
* forward the skip next/previous events to the controller
(various kinds of keyboard navigation or mouse wheel)
* establish the notification link for volume and muted changes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22594 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5fa5e5fe 29-May-2007 Stephan Aßmus <superstippi@gmx.de>

* added notification support to Playlist and Controller
* added AbstractLOAdapter by Ingo Weinhold which makes
notifications asynchronous
* removed "Player" interface/concept, replaced it by
the notification mechanism (window loads new file
when "current" ref index changes in Playlist)
* removed some cross classes dependencies
* the wind buttons are not displayed anymore for now
* lots of changes to the Controller
- the decoder/player threads are kept running for the
entire lifetime of the Controller object (in essence, makes
it possible to playback seamless)
- abstracted BMediaTrack usage into "Video-" and "AudioSupplier"
objects (the BMediaTrack pointers are only still there, because
I have not gotten around to fix the messy/hacky InfoWindow)
- reaching the end of the stream will trigger a notification,
so that the next file from the playlist is played
- fSoundOutput is managed by the Controller
- tried to make seeking seem more controlled (slider doesn't
jump back to previous position)
- playback position is correctly updated in GUI
- volume is maintained independend of SoundOutput so
that it can be transfered from one to the next output
- performance time is maintained correctly (?) even if
no audio stream is present
* work in progress Playlist window (drag sorting does not work yet!)
* rearranged menus a bit
* rearranged overlay code in the VideoView, but it cannot work
like it is currently designed, since the buffers need to be
switched all at once, which the video decoding thread
is not doing yet
* dragging files into the main window with shift held down
appends to the existing playlist
* dropping folders adds files recursively
* pressing space toggles playback (instead of changing some
settings of the GUI)
* fixed some more minor issues or unimplemented stuff in the UI


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21276 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3d8b4bab 08-May-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

Did some renaming, Changed* is now used when the user modifies the controls.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17376 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fb365709 08-May-2006 Stephan Aßmus <superstippi@gmx.de>

* added a simple seeking slider for Marcus to play with...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17371 a95241bf-73f2-0310-859d-f6bbb57e9c96


# aadc5f57 24-Apr-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

added playlist support


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17225 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c98821ac 24-Apr-2006 Stephan Aßmus <superstippi@gmx.de>

* added GUI classes for the transport control panel implementation
* as noted by the headers, these originate from Be Sample Code or
code that was written by myself alone for VLC (they have been
updated in the meantime though)
* seek slider is missing yet as well playback position info view
(could be taken from VLC as well, I still have the implementation
that contains only my own code)
* fixed application quitting when only one of multiple player
windows is closed (not it quits when the last player is closed
or MediaPlayer->Quit is selected from the menu)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17222 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 99cd5eeb 23-Apr-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

added some resizing support


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17214 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e1d8d7d6 23-Apr-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

implemented some file handling related functionality


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17211 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 53312de5e5d8496b973d93fa4b8397906faa99ee 25-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

MediaPlayer: Toggling Fullscreen wrongly reset control status

All controls were enabled when toggling fullscreen on and off;
now it recalls the argument last used in SetEnabled() and reuse it
when called in AttachedInWindow() (which occurs in such toggling)

Fixes #8804.


# 2caab6e574d52306baf93db9b830dadefbb08836 28-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Coding style cleanups, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33811 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bae0154ca35cc1f8187cf9d09b63e0b08a41ad4f 16-May-2009 Stephan Aßmus <superstippi@gmx.de>

* I didn't like so much how the "Remove and Move into Trash" feature was
implemented. It didn't reuse existing code and didn't integrate well. No
Undo/Redo except via Tracker, but not in the Playlist... some bugs as well
(Remove had same shortcut as Randomize, Didn't maintain current playback item
if last entry was removed)
* I need to reenable the main window short cut though. This is only temporary.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30768 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9327db63a4836bcc1bd1bad60c5d1c79aa54212d 29-Apr-2009 Fredrik Modeen <fredrik@modeen.se>

Adds the option to delete a file from Mediaplayer and move that file to Trash
Works both from main window and PlayList window.
Button that works are B_COMMAND + [delete | d | r] button.
It can be debated what shortcut to use but I needed this function :)
Same goes for the menu i Playlist window. Yell and Ill change :)

What not works are undo and total undo in main window and total undo in Playlist
(total undo = undo files from trash as well as normal undo)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30490 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 540fe7aef9f5fea126dbfb0be82b534744eea29c 17-Oct-2007 Stephan Aßmus <superstippi@gmx.de>

patch by Fredrik Modéen with changes by myself
* toggle the "marked" state of the settings menu items correctly
* implement muting/unmuting the volume
* implement volume up/down triggered by keyboard events
* forward the skip next/previous events to the controller
(various kinds of keyboard navigation or mouse wheel)
* establish the notification link for volume and muted changes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22594 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5fa5e5fea7e2752ce0f9eb514b82f7c34ea308e6 29-May-2007 Stephan Aßmus <superstippi@gmx.de>

* added notification support to Playlist and Controller
* added AbstractLOAdapter by Ingo Weinhold which makes
notifications asynchronous
* removed "Player" interface/concept, replaced it by
the notification mechanism (window loads new file
when "current" ref index changes in Playlist)
* removed some cross classes dependencies
* the wind buttons are not displayed anymore for now
* lots of changes to the Controller
- the decoder/player threads are kept running for the
entire lifetime of the Controller object (in essence, makes
it possible to playback seamless)
- abstracted BMediaTrack usage into "Video-" and "AudioSupplier"
objects (the BMediaTrack pointers are only still there, because
I have not gotten around to fix the messy/hacky InfoWindow)
- reaching the end of the stream will trigger a notification,
so that the next file from the playlist is played
- fSoundOutput is managed by the Controller
- tried to make seeking seem more controlled (slider doesn't
jump back to previous position)
- playback position is correctly updated in GUI
- volume is maintained independend of SoundOutput so
that it can be transfered from one to the next output
- performance time is maintained correctly (?) even if
no audio stream is present
* work in progress Playlist window (drag sorting does not work yet!)
* rearranged menus a bit
* rearranged overlay code in the VideoView, but it cannot work
like it is currently designed, since the buffers need to be
switched all at once, which the video decoding thread
is not doing yet
* dragging files into the main window with shift held down
appends to the existing playlist
* dropping folders adds files recursively
* pressing space toggles playback (instead of changing some
settings of the GUI)
* fixed some more minor issues or unimplemented stuff in the UI


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21276 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3d8b4bab1f2be1cbe8fb4a9e7cf9bd2cb7b367b0 08-May-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

Did some renaming, Changed* is now used when the user modifies the controls.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17376 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fb365709672ad1896ecd0150b21907ea902e05b3 08-May-2006 Stephan Aßmus <superstippi@gmx.de>

* added a simple seeking slider for Marcus to play with...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17371 a95241bf-73f2-0310-859d-f6bbb57e9c96


# aadc5f572d7fa4e6d96e090ccb8087ddba45c27a 24-Apr-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

added playlist support


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17225 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c98821ac7153ccee23df9eb72751102d7a967352 24-Apr-2006 Stephan Aßmus <superstippi@gmx.de>

* added GUI classes for the transport control panel implementation
* as noted by the headers, these originate from Be Sample Code or
code that was written by myself alone for VLC (they have been
updated in the meantime though)
* seek slider is missing yet as well playback position info view
(could be taken from VLC as well, I still have the implementation
that contains only my own code)
* fixed application quitting when only one of multiple player
windows is closed (not it quits when the last player is closed
or MediaPlayer->Quit is selected from the menu)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17222 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 99cd5eeb92bdd42756e075535201dd44318aa8f6 23-Apr-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

added some resizing support


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17214 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e1d8d7d6b48c655bab349c1fde5200fed917289e 23-Apr-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

implemented some file handling related functionality


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17211 a95241bf-73f2-0310-859d-f6bbb57e9c96