Commit Graph

36720 Commits

Author SHA1 Message Date
Stephan Aßmus
f8d26f5c5f Don't delete a BToolTip directly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 19:06:18 +00:00
Stephan Aßmus
8887a47ded Upgraded FFmpeg to the release version 0.6 (only some minor compile fixes to the code
with regards to using the wrong #include scope in one file and disabling two
apparently unmaintained asserts when compiling in DEBUG mode). I didn't yet test
the GCC 2 build, but I need to get this into SVN since I am having some annoying
file corruption troubles. In fact I am hoping I am not commiting broken files,
but a few seconds ago everything was still building cleanly. One thing that definitely
improved is the (disabled at the moment) AVI support. Every clip I tested so far
plays, which can't be said about our native AVI reader. With the previous FFmpeg
version (a random SVN revision is my guess), many old AVIs played completely broken.
So far, I have not spotted any regressions


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 19:01:50 +00:00
Jérôme Duval
995b475caf Patch from dachaac (bug #4813): Fix ATA vendor and product strings according to ATA string conventions. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 18:53:47 +00:00
Stephan Aßmus
af4608b687 Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 18:45:48 +00:00
Stephan Aßmus
1fc294b86a * Do not use an I/O buffer which is allocated with a StreamCookie
object. Demuxers may actually resize the I/O context buffer,
   which would corrupt memory. This is certainly the case in FFmpeg
   0.6, don't know if it was a problem before.
 * Do not set the time to the packet PTS in Seek(), if it's the magic
   value for "no PTS".
 * Don't regard the AVInputFormat flags (generic index), we can detect
   this more reliably by the observed behavior: Don't trust the found
   keyframe if we are obvioulsy building the keyframe index on the fly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 18:45:05 +00:00
Stephan Aßmus
b8b74f90f4 Resolved TODO. The current time should point to
the beginning of the next buffer. GetNextChunk()
still has the same problem.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 18:13:58 +00:00
Philippe Houdoin
faff258d9a Use system grab/grabbing cursors.
Fix #6549.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 15:02:38 +00:00
Stephan Aßmus
dec32162b5 One should be suspicious when subtracting "samples"
from "frames". LateNoticeReceived() would have skipped
two many buffers depending on the channel count.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 10:41:05 +00:00
Stephan Aßmus
9abb7d4713 Remove the Matroska reader from the image and enable
Matroska support in the FFmpeg plugin. I have a few streams
to test with, most didn't play right with the Matroska reader,
many simply crash. With the FFmpeg matroska support, most files
do play fine. Seeking the audio stream is a problem, in that
the FFmpeg code does not build the index for the audio stream,
and so seeking always falls back to regions of the file that
have already played. The audio will catch up eventually and
playback will be fine again. A minority of files I could test
with don't work right, those seem all to be older files.
Overall, the support for Matroska files has much improved
with this commit. I am still investigating why FFplay has
no trouble seeking in mkv files, while the FFmpeg plugin only
seeks perfectly in video streams. It may be a problem that
the FFmpeg plugin uses completely separate AVFormatContexts
for each stream, which on the other hand allows to seek BMediaTracks
independently from each other and resolves concurrency issues.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 09:50:24 +00:00
Stephan Aßmus
11c015d896 -1 is a valid index for the current playlist item index
in the Playlist code, but we don't want to get to this
index from the GUI. Handle truncation of the index in
the ControllerView. This solves invalid button state
when using the keyboard to skip to the previous item
when the current item was already the first item.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 09:21:12 +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
Alex Wilson
e80276e2d7 Fix some more regressions from r38512, Tracker prefs, Icon-O-Matic, Expander & Screenshot. Thanks to diver for finding these.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-06 08:41:48 +00:00
Andreas Färber
3243de5750 boot_loader_openfirmware: Add iSCSI boot support
If no Haiku remote disk server is found, try an iSCSI discovery session on
the TFTP server, using the IP address from the boot command or OF options.
All available IPv4 targets are considered, Target Portal Groups are ignored.

RFC 4173 suggests a mechanism that avoids a discovery session by using DHCP;
that requires a compatibly configured DHCP server though and we wouldn't have
access to such data currently anyway. iSCSI is currently used as fallback,
and when it doesn't succeed it falls back to the menu as before.

Resolves ticket #5319.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38537 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-05 22:56:22 +00:00
Andreas Färber
5b086e27e8 boot_net: Add iSCSI initiator support
Add support for both discovery and regular iSCSI sessions. Command and status
sequence numbers do differentiate between session and connection but only
one connection per session is currently supported.

Code is Big Endian for now, so compile it for ppc only.

Based on RFC 3720 ff. Tested against OpenSolaris 2009.06.

Resolves most of ticket #5319.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-05 22:30:41 +00:00
Andreas Färber
eb5e456002 boot_net: Various TCP fixes
Don't enqueue a packet whose sequence number matches the first one in queue
or is between the next and the acknowledged on. This would lead to packet
duplication in the queue and leftovers after dequeuing.

Optimize calculation of acknowledgement number for out-of-order reception.
If a single missing packet arrived, this could have resulted in a timeout
depending on the window size.

In case the connection is closed, do dequeue remaining packets. This would
have caused a read error after a unidirectional FIN.

Prepare a dynamic window size calculation.

Do checksum calculation before attempting to trace packet contents. I have
seen a few and couldn't spot an error in the checksum calculation.

More fine-grained control over trace output.
Trace the Maximum Segment Size option if present; break after End of Options.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-05 21:02:38 +00:00
Joachim Seemer
1fa654541e Corrects a small typo to fix #6554.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-05 09:23:23 +00:00
Joachim Seemer
7fd93693fd Use binary prefixes (KiB, MiB, GiB...). Fixes #6551.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-05 08:58:09 +00:00
Fredrik Holmqvist
b0c5015140 If source_index is != 0 it is hardwired to a GSI (Global System Interrupt).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38532 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-05 08:20:47 +00:00
Philippe Houdoin
00a4277c4a Support up to B_MAX_CPU_COUNT distinct colors.
This fix #6541.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-05 08:09:00 +00:00
Andreas Färber
040b33980c boot_net: Prepare socket-specific TCP window size
Pass the desired window size from the socket to the service.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38530 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-04 22:36:35 +00:00
Andreas Färber
7d415c01cc boot_net: TCP and UDP style cleanup
Remove superfluous comments.
Adjust spacing and initializer indentation.
Make NULL pointer checks explicit.
Don't assign in if-clause.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-04 22:14:20 +00:00
Andreas Färber
267f107882 iSCSI: Add header for protocol
Define structs for iSCSI messages, to be used by boot loader and kernel add-on.
For now it will refuse to compile for Little Endian systems (e.g., x86).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-04 21:09:13 +00:00
Stephan Aßmus
3e9336fd20 * Small coding style fixes and improved naming
of the thread related methods.
 * Explicitely reset the fThread member in
   _StopOutputThread().
 * Added TODO about the somewhat seemingly fragile method
   to ensure the previous buffer for a channel has
   been processed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-04 10:41:12 +00:00
Alex Wilson
da81ea91d7 patch by 'jstreessman' fixing regressions in AboutSystem and InstallerWindow from r38512, thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-04 08:47:41 +00:00
Fredrik Holmqvist
688768804f The flag returns true if io_apic is disabled. Use the proper check so that it can be toggled while booting. (io_apic is not working though so no need to try unless you are interested in development).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 21:45:41 +00:00
Stephan Aßmus
b79d094ee0 With many AC3 streams in AVIs I have, the FFmpeg AC3 codec
crashes. In some MKVs I have, the FFmpeg implementation
behaves badly when the stream switches from stereo to 6-channel
(weird, but can apparently happen). So simply don't claim
support for AC3, since we have a "native" AC3 decoder which
works much better.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 12:16:21 +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
13ff011b85 Removed left-over debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 10:19:24 +00:00
Alex Wilson
eb55a19acf Fix regression in AboutSystem from r38512, expected spacing to be 0, so this is now requested explicitly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38520 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 08:40:04 +00:00
Alex Wilson
8ceeae63ae * Fix regression in CodyCam from r38512, and do some refactoring too.
* Instead of passing a different message constant for each possible rate of capture, we pass a single message with a int32 'seconds' field.
* switch to templatized layout builders, make use of AddMenuField and AddTextControl methods.
* Changed semantics of VideoWindow::_BuildCaptureControls to only construct views, not add them, the window layout is now built in the VideoWindow constructor.
* EnumeratedStringValueSetting now takes a function pointer to get its strings, instead of a const char**.
* kUploadClients and kCaptureRates arrays are not NULL terminated anymore, there is a size constant associated with each one.
* Style fixes




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 08:36:23 +00:00
Clemens Zeidler
8875d8af63 Tune parameter and fix a comment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 04:49:56 +00:00
Clemens Zeidler
a6771397dc Store the stacking order to restore it if a window changed its layer position.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 03:55:29 +00:00
Clemens Zeidler
7fe05355e3 Also manage a list of all areas in a group.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-03 00:34:54 +00:00
Clemens Zeidler
d4bbf5c221 Clean up.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 23:58:26 +00:00
Alex Wilson
bc68157324 * Update opengl preflet to fix regression from r38512
* Refactor code, especially layout-related, there were way too many views being created
* Remove empty hook methods
* Fix a bug which caused the convolution capabilities to be misrepresented as 0x0


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38514 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 23:07:26 +00:00
Alex Wilson
8b0cc2ea42 Fix simple regression from r38512 in ActivityMonitor. Expected default spacing was 0, but this must now be explicitly requested.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 22:59:48 +00:00
Alex Wilson
82ab316723 Add default spacing for Layouts (#5614)
* introduce B_USE_DEFAULT_SPACING, which works somewhat like B_SIZE_UNSET and B_ALIGN_HORIZONTAL_UNSET
* introduce static float BControlLook::ComposeItemSpacing(float spacing), which checks uses be_control_look->DefaultItemSpacing().
* modify layouts to use BControlLook::ComposeItemSpacing() in SetInsets and SetSpacing methods.
* default insets are still 0, 0, 0, 0, but can be set to default spacing by passing B_USE_DEFAULT_SPACING
* I've found two regressions, patches incoming, please report others on #5614.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38512 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 22:58:24 +00:00
Clemens Zeidler
743d974099 Floor the tabLength to avoid drawing bugs. Add the leftover of this cutting to the last tab.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 03:51:29 +00:00
Clemens Zeidler
af89e8106a Remove unused function.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 03:30:14 +00:00
Clemens Zeidler
d344b03a93 Ensure that the window is in the front when using focus follow mouse.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 03:10:55 +00:00
Clemens Zeidler
04674450ad - Do the window layout on every resize. This is e.g. needed to do the tab layout.
- Use old ActivateWindow implementation till the Desktop SendBehind question is solved.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 03:05:58 +00:00
Stephan Aßmus
41af979eb8 Simplified the code a bit, removed debugging output and
added a work-around for the problem that FindKeyFrameForFrame()
may return another frame for a previously found keyframe
(due to rounding issues in the extrator).

At the moment, files which used to play horribly play pretty well
now for me. One remaining problem is that audio may be mute when
seeking far ahead in file, and the audio decoding has to catch
up. It will eventually be all ok. Once a section of the file has
played, it becomes seekable. This seems to be weird behavior of
some FFmpeg demuxers, and only with some files.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 21:55:11 +00:00
Stephan Aßmus
2cc22e8a26 Don't try to decode more than 5 frames at a time to reach
the seek frame. It's just not such a good strategy, since
it appears to be faster to just wait until the next keyframe
is reached naturally.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 21:51:56 +00:00
Jérôme Duval
01aeac8c1f remove debug leftover
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 21:41:49 +00:00
Stephan Aßmus
dc24f85691 Use rounding to avoid the situation, that FindKeyFrame()
returns a frame, and using that very same frame again
for FindKeyFrame() returns a different frame, because
the rounding effects have converted the time to be smaller
than the timestamp that was found for the first call to
FindKeyFrame(). It still happens sometimes, but a lot less
frequently. Ideas appreciated. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38504 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 21:39:04 +00:00
Andreas Färber
3bc0fcc66e boot_net: Fix TCP memory leaks
In some error conditions the packet would have been leaked.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 18:19:57 +00:00
Stephan Aßmus
65e71a6e02 Coding style fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38502 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 17:57:18 +00:00
Stephan Aßmus
b6aa6d0da3 Removed left-over debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38501 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 17:56:51 +00:00
Stephan Aßmus
1a2e8aeeaf Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 17:53:00 +00:00