Commit Graph
109 Commits
Author SHA1 Message Date
Axel Dörfler a178983df6 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
2011-09-09 21:33:16 +00:00
Axel Dörfler f74d4e95d9 * Removed the 150ms delay before showing the window - the window is now always
opened only once the stream is ready. This fixes the random "open in audio
  position" of video files.
* Removed a call to _ShowIfNeeded() in _RefsReceived(); it doesn't seem to have
  any purpose.
* Center new video windows on screen.
* Call _ShowIfNeeded() after the window has been positioned and resized in
  _SetupWindow(). This fixes having the window jump around on screen after
  launch.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42352 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-01 00:05:29 +00:00
Axel Dörfler 0325a782f4 * Removed the superfluous wait time until the context menu pops up. This fixes
the video hanging everytime you open the context menu.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42351 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-30 23:05:51 +00:00
Axel Dörfler c54e3124f6 * Automatic whitespace cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42350 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-30 23:01:18 +00:00
Jonas Sundström e28afdf1ea Changes to the MediaPlayer's playlist window's menu options Remove, Remove all, Move to Trash.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41122 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-26 23:21:13 +00:00
Jonas Sundström 11c7ff531a 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
2011-03-26 02:18:52 +00:00
Jonas Sundström 560ff4478d 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
2011-03-25 22:13:48 +00:00
Jonas Sundström b97c51490a 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
2011-03-16 00:42:18 +00:00
Siarzhuk Zharski 2ee8f3f65f Bunch of localization fixes pointed out by Diver. Thanks!
Notes:
- FileTypes: The "Same as" button label separated to two entities in dependency of 
             context: "Same Type as ..." and "Same Application as ...";
- Tracker:   The sentences like "If you do %action [...]. To do %action [...]"
             now use separately translated verbs for so called
             "ifYouDoAction" and "toDoAction";
- NetworkStatus: NetworkStatusView _ShowConfiguration is fixed back after previous
			 attempt to localize it in r37337: useless code bloating purged out,
             broken quasi-header "ifaceName information:" pulled back from Hell;
- StyledEdit: Menu item "Can't undo" had different casing in some situation. Looks
             like HTA cannot detect such situation, so right lines "Can't undo"
             were masked by wrong one "Can't Undo" and this line stay untranslated
             for most time.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-25 22:18:31 +00:00
Joachim Seemer 8c95e40e18 * Changed full screen shortcut to B_ENTER like in Terminal, ShowImage, Web+.
* Put "Always on top" into context menu.
* Rearranged items in context menu to have interface related options together.
* Disable "No interface" in full screen mode context menu.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-28 19:18:09 +00:00
Adrien Destugues 238df8fb85 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
2010-12-29 10:38:58 +00:00
Oliver Tappe d1d8fda637 Next step of Locale Kit refactoring:
* BLocale now keeps language and country completely separate and
  mixes the formatting conventions into the current language's locale
  when formatting dates and times (needs to be done for number- and
  currency-formatting, too, since the digits may not be in the
  preferred language)
* optimized fetching of the flag icons such that they are all loaded
  in one go (by the locale roster) - this alone speeds up the Locale
  preflet considerably
* worked on fixing the language confusion in the Locale preflet
* fixed a couple of bugs in the Locale preflet that would lead to
  illegal characters being displayed in the date-subpart menus


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-19 21:36:44 +00:00
Axel Dörfler 7bf8d24715 * Do not add documents to the recent list in _UpdatePlaylistItemFile(), but do
so when the items are added to the playlist. This has the added advantage of
  being able to easily reselect sub-folders (an album for example).
* Enabled navigating folders in the recent item list.
* Added Playlist::IsEmpty() method.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-08 13:16:49 +00:00
Axel Dörfler 954d79e244 * Added first working "display_as" type "duration".
* Changed Media:Length to int64, and use the new duration view in Tracker.
* Renamed the pretty name for video's Media:Length to "Runtime" (that's how it's
  called in IMDB, and I was never really fond of "Playing Time").
* FileTypes AttributeWindow needed to check the display-as types, as well as
  if the contents are acceptable when opening, too.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38856 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-29 17:10:02 +00:00
Stephan Aßmus e65a6eb2e0 * Give some options for subtitle placement and size.
* Optimize subtitle drawing when subtitles are to be
   displayed at screen bottom versus video bottom, and
   the subtitle frame does not intersect the video. In
   that case we only need to draw it when it changes
   (or is to be removed). Fixed the dead-lock problem
   in a nicer way.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-28 21:43:39 +00:00
Stephan Aßmus c8ccdf5203 * Added basic support for SRT subtitle files. It only works
if the SRT file is placed alongside the current playlist
   item under the same name (sans extension). The name of the
   language is taken from the file which needs to be separated
   by a dot (should be improved).
 * Instead of the black outline, subtitles have a nice drop
   shadow now, which is easier on the eyes somehow.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38827 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-27 15:26:41 +00:00
Stephan Aßmus fd5c34224c * Show the window when opening files, since that shows the nice
"opening file bla" message and makes starting MediaPlayer feel
   even more snappy.
 * Show the window at the no-video location when opening files.
 * Move the "Drop files to play" message handling into MainWin
   and make sure it shows after failed attempts to open a file
   when the playlist is still empty.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-21 16:04:24 +00:00
Stephan Aßmus ebd866299d * 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
2010-09-21 14:47:21 +00:00
Stephan Aßmus 3a8771cf17 * Use duration_to_string() to write better playing time
attribute strings (i.e. with separate hour).
 * Write video bitrate attribute.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38718 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-19 12:02:00 +00:00
Stephan Aßmus 5bacae95fe Make use of the new meta-data API and display the
audio track menu item label as the language of the
track.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-17 08:33:25 +00:00
Stephan Aßmus a110536aac When the video is paused, use the left/right cursor keys
for single frame stepping instead of winding. One frame without
shift-modifier, five frames with shift held down.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38671 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-16 12:45:03 +00:00
Stephan Aßmus 341ea11eb3 Implemented enlarging controls in full-screen mode, it's optional
and the setting defaults to "on".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38610 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-12 09:59:35 +00:00
Stephan Aßmus 4d6c88624e * _CurrentVideoSizeInPercent() returned wrong values,
but it didn't result in wrong behavior before.
Implemented more keyboard actions from ticket #2495:
 * +/- zoom the video now (by +/- 10% of current scale).
 * ZXCVB (raw keys hardcoded, i.e. the keys along the bottom
   of the keyboard) act as playback buttons: skip previous (Z),
   play (X), pause (C), stop (V), skip next (B).
 * Renamed "No interface" menu item to "Hide interface" and
   changed the shortcut to Cmd-H. This item is only available
   with video streams, though.
 * 'M' will mute/unmute the audio.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-10 12:04:57 +00:00
Stephan Aßmus 1c1de1a5cd The Media:Rating attribute can now be controlled via
the new Attributes menu. Added a TODO for how this should
eventually work.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-10 11:15:28 +00:00
Stephan Aßmus 7fee522dd0 * Moved the Settings menu items into the MediaPlayer menu.
* Removed the Settings menu in favor of a new Attributes
   menu (does not offer anything yet).
 * The context menu was showing two separator items by mistake
   (after the About item was removed from it).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-10 10:37:38 +00:00
Stephan Aßmus 811aedf9c2 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
2010-09-10 10:07:13 +00:00
Stephan Aßmus 0beac2ff04 PlaybackManager:
* Make sure that the messages which trigger a performance
   time update a) don't pever pile up and b) that we don't
   still receive an event after reinitialization (would
   not have been a problem, at one point I thought it was).
 * Don't compile in support for changing the playback speed
   for the moment.
 * Better support for notifying the reaching of a seek frame,
   In _UpdateStates(), the wrong state (most often out of bounds)
   was checked to be a seek request state. Check if a seek request
   was reached in all other cases where states are removed.

Controller:
 * Simple but important simplification of the problem that
   seeked frames are reached asynchronously and with a latency:
   In TimePosition() simply report the seeked frame, if there
   are still pending seek requests. This allows a consistent
   view from the outside, i.e. after calling SetTimePosition(),
   TimePosition() will not return something different.
 * Use a more robust way to track pending seek requests. A
   new request may have been issued while not having reached
   the previous one yet.
 * Implement a notification for reaching the seek frame, but
   I didn't need it after all, may come in handy later...

MainWin:
 * Change the cursor left/right keys to support winding.
   Cursor up/down change the volume, Cmd-up/down skips
   to the previous/next playlist item, left/right do the
   winding now, as requested in ticket #2495.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38594 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-09 21:30:36 +00:00
Stephan Aßmus c5f8afb944 First implementation at the "loop by default" settings.
To make it better, there should be a looping mode per
window, and the settings should serve only as defaults.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-07 14:36:32 +00:00
Stephan Aßmus 45f82fe6d0 Coding style fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 09:15:31 +00:00
Stephan Aßmus 8ae6dbd9de * Rename a couple Audio:* attributes to Media:*, as discussed
some time ago on the mailing list. This change will not exactly
   break existing audio tools, but once those tools write the old
   attributes, the user will not see the expected changes when he
   is displaying the new attributes in Tracker, and the old
   attributes will of coerse appear alongside the new ones in
   the Attribute menu. In the long run, it makes things cleaner,
   though.
 * Make MediaPlayer write the new duration attribute, and also for
   video clips.
 * Register opened playlist items when they are files with the
   system, so not only files opened via drag and drop or Tracker
   will appear in MediaPlayers "Open File" menu.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 12:03:12 +00:00
Stephan Aßmus 36f28785c6 * Don't clutter the context menu with a mostly never
used About... menu item.
 * Setup the About menu item in the file menu such
   that it sends its message to the be_app, we no
   longer have to forward it then.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 10:20:29 +00:00
Stephan Aßmus ee891c8828 Do not resize the VideoView to the scaled size
of the video anymore, but tell the VideoView
the video frame size. So the outside regions of
the video are also painted by the VideoView. Not
tested with overlays, but should work. The side
effect is that the controls appear along the bottom
of the screen in full-screen mode. The controls
may need to be over the video, so they cannot be
attached to the parent of the VideoView (this was
already the case).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 13:02:30 +00:00
Stephan Aßmus 80a9df2502 * Show the controls in full-screen mode when the mouse moves.
* Propagate the current audio channel count to the controls.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 11:42:38 +00:00
Stephan Aßmus 7e3a856975 Don't disable the audio/video track menus anymore when
there is only one track. I introduced this at diver's request,
but I think it's irritating. Also when the audio tracks will
be named after their language, it would be nice to know it,
or even perhaps other properties, like channel count.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-30 10:00:54 +00:00
Axel Dörfler a444274016 * Fixed regression I introduced in r36391. Thanks for proof-reading, Stippi!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-21 14:39:29 +00:00
Axel Dörfler d75c9c3da5 * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36391 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-21 08:58:18 +00:00
Axel Dörfler be982b9cd5 * Only restore the previous playing position when there is a file that is
currently playing; this fixes the the problem I mentioned in a comment in
  bug #3855.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 15:23:03 +00:00
Stephan Aßmus 14a66ce5f4 Disable either track menu when there is just one or no track. Fixes #5622.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-24 16:59:18 +00:00
Michael Lotz eeeef45c69 * 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
2010-01-31 01:03:06 +00:00
Michael Lotz 382a4b129a Add some locking to accesing PlaylistItems in these two cases as suggested by
Stephan.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35348 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-30 18:42:46 +00:00
Jérôme Duval 96cddcb711 * avoids crashing when fPlayList is already gone on quitting.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 00:22:48 +00:00
Michael Lotz cef3da793a Remove leftover from lazy copy&paste action.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 21:27:42 +00:00
Michael Lotz 63bcd0d0c3 Add "URI" property that returns the URI of the currently playing item.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 21:23:33 +00:00
Michael Lotz c5d6e9b06e Add some scripting to the MediaPlayer so it can be remote controlled.
Example usage to skip one track forward: hey MediaPlayer Do Next of Window 0


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 04:41:54 +00:00
Stephan Aßmus 312ca935ab * 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
2010-01-23 10:52:36 +00:00
Stephan Aßmus 7974d3dcf3 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
2010-01-13 14:33:35 +00:00
Axel Dörfler 54ca879739 * Also write the bitrate as attribute.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-20 15:16:13 +00:00
Stephan Aßmus e663610e84 * 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
2009-11-19 12:27:25 +00:00
Stephan Aßmus 25fcb499b4 Since the window now starts hidden for a brief moment, calling IsHidden() on
the views in the FrameResized() hook which does the layout had some
unanticipated results. We need to know relative to the views themselves. This
fixes the video view being visible despite audio-only content.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-19 10:07:25 +00:00
Stephan Aßmus e337e55fdd * 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
2009-11-18 23:25:02 +00:00