History log of /haiku/src/apps/mediaplayer/MainApp.cpp
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


# 9e53d4e9 03-Dec-2017 Owen <owenca@users.noreply.github.com>

Accepts URLs as command line arguments.

Fixes #9793

Signed-off-by: Kacper Kasper <kacperkasper@gmail.com>


# 61a59e87 09-Apr-2015 Dario Casalinuovo <b.vitruvio@gmail.com>

MediaPlayer: add new media services notification service


# aed35104 05-Aug-2012 Humdinger <humdingerb@gmail.com>

Close alerts with ESCAPE key.

Added SetFlags(B_CLOSE_ON_ESCAPE) or SetShortcut(index, B_ESCAPE) to BAlerts
depending if the result gets used later in the code, or if it's a one-button
BAlert.


# 546208a5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# a178983d 09-Sep-2011 Axel Dörfler <axeld@pinc-software.de>

Cleanup while I was searching for a bug that ended up being in the app_server;
the decorators now return non-sense as their frame, thank you Clemens!
* Got rid of Settings::CurrentSettings() - the get/store pair wasn't really
thread-safe anyway, as it always updated all fields, so settings could get
lost easily. The mechanism is still being used in the settings window, though.
* Introduced some getters/setters for the settings that work on the message
directly which simplifies some code.
* Minor style cleanups.
* Automatic whitespace cleanup.


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


# 11c7ff53 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Removing most About windows and menu items as discussed here
http://www.freelists.org/post/haiku-commits/r40968-in-haikutrunksrcapps-activitymonitor-bootmanager-charactermap-codycam-deskbar,3
Leaving them for now in replicants, and in Terminal, according to (my interpretation of) the instructions here
http://dev.haiku-os.org/browser/haiku/trunk/src/apps/terminal/README.GPL_to_OBOS#L70
Some sporadic cleanup.

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


# 560ff447 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again.

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


# b97c5149 15-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Making use of B_TRANSLATE_APP_NAME, BAboutMenuItem, BAboutWindow. Clean-up. Removal of some ellipsis. ('About Haiku' in Deskbar.)

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


# 860c710d 28-Feb-2011 Joachim Seemer <humdingerb@googlemail.com>

Unlocalized playlist settings file of MediaPlayer.

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


# 238df8fb 29-Dec-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Patch by Dziadek as part of GCI : localize MediaPlayer.


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


# ebd86629 21-Sep-2010 Stephan Aßmus <superstippi@gmx.de>

* Added new Playlist notification ImportFailed().
The PlaylistListView will trigger it when the import command
failed (happens for example when none of the files are
media files).
* Moved displaying the according alert from the import fommand
into the MainWindow. Show the window if necessary. This fixes
MediaPlayer just idling in the Deskbar without any window
in this case, since the MainWindow is shown after the first
call to _SetupWindow() since some time. But _SetupWindow() is
not invoked when no file could be opened.
* Removed some meanwhile useless debug output.


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


# 811aedf9 10-Sep-2010 Stephan Aßmus <superstippi@gmx.de>

New player windows returned from NewWindow() are not
automatically shown anymore since the playlist restore
changes. Unbreak opening a new player, let the application
thread open it.


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


# 780d7cab 13-Apr-2010 Axel Dörfler <axeld@pinc-software.de>

* Removed extra space in the about window.


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


# bafcab92 13-Apr-2010 Axel Dörfler <axeld@pinc-software.de>

* Minor cleanup, no functional changes.


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


# eeeef45c 30-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

* Implemented a "refs catcher" that will catch refs received through a
B_REFS_RECEIVED within a short amount of time (0.5 seconds right now) and
send them to the last window to be appended to the playlist. This allows to
select multiple media files in Tracker and get them inside a playlist of a
single window instead of spawning many individual ones (like when filtering
for an album, selecting all tracks and opening them by hitting enter).
* Introduce special append index values APPEND_INDEX_REPLACE_PLAYLIST (-1, does
the same as before) and APPEND_INDEX_APPEND_LAST. The latter is used when
appending through a RefsReceived() call and ensures that the index is
evaluated at the actual insertion time (in ImportPLItemsCommand::Perform())
as by the time this function is called the playlist count may have changed
already due to multiple RefsReceived() invokations, which would then mess up
the order. This makes the above item work as expected.


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


# 312ca935 23-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

* Refactored storing the playlist archive in the quit message.
* Added looping all windows on quit and store the current playlist if
applicable.

Fixes #5061.


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


# 7974d3dc 13-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by Humdinger:
Updated Haiku apps to use sentence-case. What a huge undertaking...
The files where I had to apply the patch manually (for mysterious
reasons) have also gotten a whitespace cleanup. I've proof-read
everything so hopefully there should be no problems.

This should be the final part of #5169.


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


# 6e190ec6 19-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

* Created icons for MediaPlayer playlists
* Properly register playlist mimetype in MediaPlayer. Double clicking them
will now open them in MediaPlayer.


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


# e663610e 18-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

* Made opening playlist items asynchronous (in the Controller thread).
* Resolved TODO: Use the existing "FileChanged" notification in the main
window to adopt the UI to the currently playing item.
* When opening a file takes some time, the window is now free to start hidden
and setup a message runner to unhide it after 150 msecs.
* When launching MediaPlayer with files, the 150 msecs delay is used to
start the window hidden and pop up right at the correct location for audio.
If opening the first audio file takes less than 150 msecs, the window will
already show as soon as possible.
* While opening a file in the Controller, the window will say so in the
disabled seek slider instead of showing the message "Drop media files here.".


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


# 31609943 19-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

Removed left-over spotted by korli, thanks!


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


# e337e55f 18-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

* Fixed some regressions I introduced. The video is now correctly layouted
again. Bute this commit seems to make the old bug that some parts of the GUI
are black much more likely. Will look into it tomorrow.
* The calculations to move the window wholy into the screen frame were buggy.


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


# ab18a502 16-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

* Moved the about alert handling into the application
* Simplified the handling of the first window and removed FirstWindow(),
we can tell by fPlayerCount.
* Both the above would fix a crash when requesting the about alert with the
first window already gone. Respectively another player instance opening
if fFirstWindow was reset to NULL after some recent revision.
* Implemented restoring the current playlist, index and position in the file.
* Devised a more robust way to solve asynchronous seeking. The Controller is
now notified that a seek request has been handled with a dedicated hook.


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


# f907fa59 16-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

Work in progress for storing some window position/size related settings of
the first window, and restoring them for audio content.


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


# 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


# 9e43353c 19-Oct-2009 Stephan Aßmus <superstippi@gmx.de>

The media_server signature is actually defined.


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


# dc3d5923 13-Jun-2009 Stephan Aßmus <superstippi@gmx.de>

When the media server is not running, display an alert and offer to start it.


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


# ac6b0fc9 11-Oct-2008 Stephan Aßmus <superstippi@gmx.de>

Remember the last used file panel folder. Also remember the folder even
if the user cancled the file panel. Some improvements to the SettingsMessage
and some more helpful comments here and there.


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


# 126ce071 10-Oct-2008 Stephan Aßmus <superstippi@gmx.de>

* Cleanup with regards to file panel usage. There are two global file panels
now maintained by the application. (So that the last used folder is more
consistently remembered.)
* Added a message protocol for using the file panels from other loopers.
* Implemented playlist saving and loading for the binary (BMessage-based)
format. There were some beginnings for supporting a m3u-like text-based format
as well.


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


# eaa3a999 06-Oct-2008 François Revol <revol@free.fr>

Fix the gMainApp race on launch in a cleaner way.


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


# d8b7877c 06-Oct-2008 Karsten Heimrich <host.haiku@gmx.de>

* correct comment, i've written a small test app and it works the same way on R5



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


# f3547bb3 06-Oct-2008 Karsten Heimrich <host.haiku@gmx.de>

* cleanup



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


# ca75aaad 27-Sep-2008 François Revol <revol@free.fr>

Fix for R5:
- add missing controls for R5 version
- hack to work around a race that happens on BeOS at least, someone should fix it better. stippi ?


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


# 4ddc254c 26-Aug-2008 Stephan Aßmus <superstippi@gmx.de>

* Implemented decreasing the volume of inactive player windows according to
the global settings. This is only done though if there are multiple players
open at the time. (It doesn't consider their "playing" state, though.)
* The SettingsWindow is now maintained by the MainApp, and there is only a
single instance, those settings are application wide. Also used the
"application floating" window look&feel.
* Small code cleanups.


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


# 34ff70da 05-Jul-2008 Stephan Aßmus <superstippi@gmx.de>

* Added "Randomize" feature to Playlist window (Edit menu). It randomizes
either the selected items, or the entire list if nothing is selected.
* Small cleanups here and there.


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


# 0fc56ed5 30-May-2008 Stephan Aßmus <superstippi@gmx.de>

* Moved a bunch of non-primary interface classes into a new subfolder
"interface"

* Complete reimplementation of the playback engine using Media Nodes:
- Seeking video files does not appear to lockup the playback anymore, but
works on a frame accurate level even for keyframe based streams. There is
currently a problem with certain container formats, the audio track reports
a "Device Seek Error" in certain conditions. In that case audio goes silent,
and can be restarted by going back to the beginnings of the stream.
- Video overlays are now supported.
- It would be possible to connect the output of the MediaPlayer to other
applications or dormant media nodes.

* Known regressions:
- The volume slider has currently no effect anymore.
- Switching the audio track during playback has a known race condition and
can crash the player.
- The new engine is not as "light weight" as the old one. I tagged the
previous implementation in tags/components/mediaplayer-engine-v1. It does
not seem to have any noticable effect though.



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


# 658aafcb 06-Apr-2008 François Revol <revol@free.fr>

Add recent files to the Open File menu.
Add dropped files to the roster's list of recent files.


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


# df542f71 25-Mar-2008 Stephan Aßmus <superstippi@gmx.de>

Prepare the MediaPlayer to survive a media_server restart, by first
making it detect the quit/start of the media_server and media_addon_server.
No action is currently taken in response to this, but the SoundOutput used
by the Controller needs to be recreated I would think.


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


# 0f5e6b41 24-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* remove QuitRequested() implementation again, because the bug that MediaPlayer
didn't quit was really in BApplication (the fix there also fixes other apps
not quitting, like Icon-O-Matic and probably others)


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


# 82fc8592 23-Jun-2007 Ryan Leavengood <leavengood@gmail.com>

Fixed bug #1281, which I logged. MediaPlayer was not behaving properly when being asked to quit.

The default BApplication::QuitRequested was not playing well with the other quitting logic in
MediaPlayer (like in the windows.)

This simple "return true" QuitRequested seems to do the trick.


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


# d329f1d6 02-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* cleanup in MainWin, better grouping of functions in .h and
moved functions in .cpp accordingly, prepended private methods with _
* disabled InfoWin, because it accessed members of MainWin directly,
will be reimplemented with notification mechanism
* fixed the bug with the multiple error alerts for an unsupported file,
the window should use the current file index from the notification
itself


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


# 1f8b22ef 22-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed some more application signatures and version info, and made them all consistent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19091 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


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

added MediaPlayer to the build


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17212 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


# 04a91b97 05-Apr-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

Imported source code from DVB TV application


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


# 61a59e87d84e0c9d463797ec961005d5cf2ac7f8 09-Apr-2015 Dario Casalinuovo <b.vitruvio@gmail.com>

MediaPlayer: add new media services notification service


# aed35104852941f0f6f3d1dcc5338b5f337d0a3c 05-Aug-2012 Humdinger <humdingerb@gmail.com>

Close alerts with ESCAPE key.

Added SetFlags(B_CLOSE_ON_ESCAPE) or SetShortcut(index, B_ESCAPE) to BAlerts
depending if the result gets used later in the code, or if it's a one-button
BAlert.


# 546208a53940a26c6379c48a7854ade1a8250fc5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# a178983df66aad5957fbc82fb596c74fa4d02e45 09-Sep-2011 Axel Dörfler <axeld@pinc-software.de>

Cleanup while I was searching for a bug that ended up being in the app_server;
the decorators now return non-sense as their frame, thank you Clemens!
* Got rid of Settings::CurrentSettings() - the get/store pair wasn't really
thread-safe anyway, as it always updated all fields, so settings could get
lost easily. The mechanism is still being used in the settings window, though.
* Introduced some getters/setters for the settings that work on the message
directly which simplifies some code.
* Minor style cleanups.
* Automatic whitespace cleanup.


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


# 11c7ff531a01b64773d8a8f0e02c1c7c9f27ca29 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Removing most About windows and menu items as discussed here
http://www.freelists.org/post/haiku-commits/r40968-in-haikutrunksrcapps-activitymonitor-bootmanager-charactermap-codycam-deskbar,3
Leaving them for now in replicants, and in Terminal, according to (my interpretation of) the instructions here
http://dev.haiku-os.org/browser/haiku/trunk/src/apps/terminal/README.GPL_to_OBOS#L70
Some sporadic cleanup.

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


# 560ff4478d5c85455ea3e5ed5e392ef93132d545 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again.

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


# b97c51490af2a4e3a20d6baf7d31e59b63924e99 15-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Making use of B_TRANSLATE_APP_NAME, BAboutMenuItem, BAboutWindow. Clean-up. Removal of some ellipsis. ('About Haiku' in Deskbar.)

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


# 860c710dca380955bd3fbe53ba8d888cef4aba30 28-Feb-2011 Joachim Seemer <humdingerb@googlemail.com>

Unlocalized playlist settings file of MediaPlayer.

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


# 238df8fb8531e56c1cef834cebe0ad42cb5ed81d 29-Dec-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Patch by Dziadek as part of GCI : localize MediaPlayer.


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


# ebd866299d45ed59d8576e1a9634f924cc07aa6e 21-Sep-2010 Stephan Aßmus <superstippi@gmx.de>

* Added new Playlist notification ImportFailed().
The PlaylistListView will trigger it when the import command
failed (happens for example when none of the files are
media files).
* Moved displaying the according alert from the import fommand
into the MainWindow. Show the window if necessary. This fixes
MediaPlayer just idling in the Deskbar without any window
in this case, since the MainWindow is shown after the first
call to _SetupWindow() since some time. But _SetupWindow() is
not invoked when no file could be opened.
* Removed some meanwhile useless debug output.


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


# 811aedf9c24d12f9d79e624a13e643fd78b51a5e 10-Sep-2010 Stephan Aßmus <superstippi@gmx.de>

New player windows returned from NewWindow() are not
automatically shown anymore since the playlist restore
changes. Unbreak opening a new player, let the application
thread open it.


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


# 780d7cab55b437593ecaf869cba44cd4ca2ffa63 13-Apr-2010 Axel Dörfler <axeld@pinc-software.de>

* Removed extra space in the about window.


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


# bafcab9265d78ede53aa2d22cce1d3f938fccf93 13-Apr-2010 Axel Dörfler <axeld@pinc-software.de>

* Minor cleanup, no functional changes.


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


# eeeef45c692d3497aacb7116cbebd939b672d4b8 30-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

* Implemented a "refs catcher" that will catch refs received through a
B_REFS_RECEIVED within a short amount of time (0.5 seconds right now) and
send them to the last window to be appended to the playlist. This allows to
select multiple media files in Tracker and get them inside a playlist of a
single window instead of spawning many individual ones (like when filtering
for an album, selecting all tracks and opening them by hitting enter).
* Introduce special append index values APPEND_INDEX_REPLACE_PLAYLIST (-1, does
the same as before) and APPEND_INDEX_APPEND_LAST. The latter is used when
appending through a RefsReceived() call and ensures that the index is
evaluated at the actual insertion time (in ImportPLItemsCommand::Perform())
as by the time this function is called the playlist count may have changed
already due to multiple RefsReceived() invokations, which would then mess up
the order. This makes the above item work as expected.


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


# 312ca935ab5d8265301afefca0f3b78d64a92369 23-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

* Refactored storing the playlist archive in the quit message.
* Added looping all windows on quit and store the current playlist if
applicable.

Fixes #5061.


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


# 7974d3dcf39ce78e5885b481eee12e561ad6e096 13-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by Humdinger:
Updated Haiku apps to use sentence-case. What a huge undertaking...
The files where I had to apply the patch manually (for mysterious
reasons) have also gotten a whitespace cleanup. I've proof-read
everything so hopefully there should be no problems.

This should be the final part of #5169.


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


# 6e190ec6a4db9279ae83ad063a24154d3e5f77f6 19-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

* Created icons for MediaPlayer playlists
* Properly register playlist mimetype in MediaPlayer. Double clicking them
will now open them in MediaPlayer.


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


# e663610e84ed96e246aa7bb6d416bd51c1166447 18-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

* Made opening playlist items asynchronous (in the Controller thread).
* Resolved TODO: Use the existing "FileChanged" notification in the main
window to adopt the UI to the currently playing item.
* When opening a file takes some time, the window is now free to start hidden
and setup a message runner to unhide it after 150 msecs.
* When launching MediaPlayer with files, the 150 msecs delay is used to
start the window hidden and pop up right at the correct location for audio.
If opening the first audio file takes less than 150 msecs, the window will
already show as soon as possible.
* While opening a file in the Controller, the window will say so in the
disabled seek slider instead of showing the message "Drop media files here.".


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


# 3160994355246ab1b013ab213b8fd991d14485bc 19-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

Removed left-over spotted by korli, thanks!


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


# e337e55fdd21d454353f148ea7ca6d3f3c95161c 18-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

* Fixed some regressions I introduced. The video is now correctly layouted
again. Bute this commit seems to make the old bug that some parts of the GUI
are black much more likely. Will look into it tomorrow.
* The calculations to move the window wholy into the screen frame were buggy.


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


# ab18a502299fa5a8d32768b07814836ef365380b 16-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

* Moved the about alert handling into the application
* Simplified the handling of the first window and removed FirstWindow(),
we can tell by fPlayerCount.
* Both the above would fix a crash when requesting the about alert with the
first window already gone. Respectively another player instance opening
if fFirstWindow was reset to NULL after some recent revision.
* Implemented restoring the current playlist, index and position in the file.
* Devised a more robust way to solve asynchronous seeking. The Controller is
now notified that a seek request has been handled with a dedicated hook.


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


# f907fa59c315a272572712723574066be3a77513 16-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

Work in progress for storing some window position/size related settings of
the first window, and restoring them for audio content.


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


# 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


# 9e43353ce54568be127f428b5491cf560e1f97d6 19-Oct-2009 Stephan Aßmus <superstippi@gmx.de>

The media_server signature is actually defined.


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


# dc3d5923698ee5cc7811689bfb0281b28a9921cd 13-Jun-2009 Stephan Aßmus <superstippi@gmx.de>

When the media server is not running, display an alert and offer to start it.


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


# ac6b0fc9d204ee771eeae68f0f00cddc53adf77a 11-Oct-2008 Stephan Aßmus <superstippi@gmx.de>

Remember the last used file panel folder. Also remember the folder even
if the user cancled the file panel. Some improvements to the SettingsMessage
and some more helpful comments here and there.


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


# 126ce071385e2ddc8ba0c0247768433f2f810522 10-Oct-2008 Stephan Aßmus <superstippi@gmx.de>

* Cleanup with regards to file panel usage. There are two global file panels
now maintained by the application. (So that the last used folder is more
consistently remembered.)
* Added a message protocol for using the file panels from other loopers.
* Implemented playlist saving and loading for the binary (BMessage-based)
format. There were some beginnings for supporting a m3u-like text-based format
as well.


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


# eaa3a999acb28f74952d4a3c328f6f8b555e21d3 06-Oct-2008 François Revol <revol@free.fr>

Fix the gMainApp race on launch in a cleaner way.


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


# d8b7877cf267d5deaa3e63f3f434d41d7babf50b 06-Oct-2008 Karsten Heimrich <host.haiku@gmx.de>

* correct comment, i've written a small test app and it works the same way on R5



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


# f3547bb3d368ea6386ee69bb5636311d5f6795d1 06-Oct-2008 Karsten Heimrich <host.haiku@gmx.de>

* cleanup



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


# ca75aaad96e6df3d649c77f23bc568950c7a0ea1 27-Sep-2008 François Revol <revol@free.fr>

Fix for R5:
- add missing controls for R5 version
- hack to work around a race that happens on BeOS at least, someone should fix it better. stippi ?


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


# 4ddc254c08b7f88229ba3741946b0925f3c8f805 26-Aug-2008 Stephan Aßmus <superstippi@gmx.de>

* Implemented decreasing the volume of inactive player windows according to
the global settings. This is only done though if there are multiple players
open at the time. (It doesn't consider their "playing" state, though.)
* The SettingsWindow is now maintained by the MainApp, and there is only a
single instance, those settings are application wide. Also used the
"application floating" window look&feel.
* Small code cleanups.


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


# 34ff70da4f9ca0421ee84588fb4f7032247482c8 05-Jul-2008 Stephan Aßmus <superstippi@gmx.de>

* Added "Randomize" feature to Playlist window (Edit menu). It randomizes
either the selected items, or the entire list if nothing is selected.
* Small cleanups here and there.


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


# 0fc56ed57bdd5d2d44f33edd17d94210704613bd 30-May-2008 Stephan Aßmus <superstippi@gmx.de>

* Moved a bunch of non-primary interface classes into a new subfolder
"interface"

* Complete reimplementation of the playback engine using Media Nodes:
- Seeking video files does not appear to lockup the playback anymore, but
works on a frame accurate level even for keyframe based streams. There is
currently a problem with certain container formats, the audio track reports
a "Device Seek Error" in certain conditions. In that case audio goes silent,
and can be restarted by going back to the beginnings of the stream.
- Video overlays are now supported.
- It would be possible to connect the output of the MediaPlayer to other
applications or dormant media nodes.

* Known regressions:
- The volume slider has currently no effect anymore.
- Switching the audio track during playback has a known race condition and
can crash the player.
- The new engine is not as "light weight" as the old one. I tagged the
previous implementation in tags/components/mediaplayer-engine-v1. It does
not seem to have any noticable effect though.



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


# 658aafcb6263a23f5422743cebd086be24730606 06-Apr-2008 François Revol <revol@free.fr>

Add recent files to the Open File menu.
Add dropped files to the roster's list of recent files.


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


# df542f717fd7226e36e39453b494ec387202c8e8 25-Mar-2008 Stephan Aßmus <superstippi@gmx.de>

Prepare the MediaPlayer to survive a media_server restart, by first
making it detect the quit/start of the media_server and media_addon_server.
No action is currently taken in response to this, but the SoundOutput used
by the Controller needs to be recreated I would think.


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


# 0f5e6b41e7506b1f659b535e163630d1394f67fd 24-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* remove QuitRequested() implementation again, because the bug that MediaPlayer
didn't quit was really in BApplication (the fix there also fixes other apps
not quitting, like Icon-O-Matic and probably others)


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


# 82fc8592fcf4a1c20e846c09b676eaa137f5b24f 23-Jun-2007 Ryan Leavengood <leavengood@gmail.com>

Fixed bug #1281, which I logged. MediaPlayer was not behaving properly when being asked to quit.

The default BApplication::QuitRequested was not playing well with the other quitting logic in
MediaPlayer (like in the windows.)

This simple "return true" QuitRequested seems to do the trick.


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


# d329f1d6c1ab87225f92373f227626b9702607bc 02-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* cleanup in MainWin, better grouping of functions in .h and
moved functions in .cpp accordingly, prepended private methods with _
* disabled InfoWin, because it accessed members of MainWin directly,
will be reimplemented with notification mechanism
* fixed the bug with the multiple error alerts for an unsupported file,
the window should use the current file index from the notification
itself


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


# 1f8b22ef227c0ee004bdfc60e5a753e48e716258 22-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed some more application signatures and version info, and made them all consistent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19091 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


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

added MediaPlayer to the build


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17212 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


# 04a91b97bde1b41f4100b923a1699ddeac36635b 05-Apr-2006 Marcus Overhagen <marcusoverhagen@gmail.com>

Imported source code from DVB TV application


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