Commit Graph

22264 Commits

Author SHA1 Message Date
Axel Dörfler
5d0a5f7cac * The bfs_shell needs to include <new> as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-23 11:59:47 +00:00
Axel Dörfler
082bae1aa5 * bfs_fsync() no longer grabs the Inode's read lock - instead, Inode::Sync()
will take care of the locking.
* Use new(std::nothrow) over new, and malloc (only in kernel_interface.cpp);
  the kernel_cpp.h header isn't really necessary anymore, so there is no reason
  BFS should continue to use it.
* Removed superfluous NULL checks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-23 11:56:08 +00:00
Ingo Weinhold
7c27db095e Typo spotted by Axel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 20:58:23 +00:00
Ingo Weinhold
5c99d63970 Merged branch haiku/branches/developer/bonefish/vm into trunk. This
introduces the following relevant changes:
* VMCache:
  - Renamed vm_cache to VMCache, merged it with vm_store and made it a
    C++ class with virtual methods (replacing the store operations).
    Turned the different store implementations into subclasses.
  - Introduced MergeStore() callback, changed semantics of Commit().
  - Changed locking and referencing semantics. A reference can only be
    acquired/released with the cache locked. An unreferenced cache is
    deleted and a mergeable cache merged when it is unlocked. This
    removes the "busy" state of a cache and simplifies the page fault
    code.
* Added VMAnonymousCache, which will implement swap support (work by
  Zhao Shuai). It is not integrated and used yet, though.
* Enabled the mutex/recursive lock holder asserts.
* Fixed DoublyLinkedList::Swap().
* Generalized the low memory handler to a low resource handler. And made
  semaphores and reserved memory handled resources. Made
  vm_try_resource_memory() optionally wait (with timeout), and used that
  feature to reserve memory for areas.
...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 20:36:32 +00:00
Karsten Heimrich
12fd6cc2e7 * move libprint sources into libs, as it is a 3rdparty lib
* move libprint headers into libs headers folder accordingly
* merge all shared folders sources into kits print, we might build later on a
  real print kit, propably also to access cups from an nicely API, atm static
* move all shared headers into private print, also pr_server.h from interface
* adjust build to work with the changed folder layout



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 20:30:14 +00:00
Axel Dörfler
467acc16f5 * Cleanup, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26568 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 17:57:00 +00:00
Axel Dörfler
33f9067b36 * Started using the I/O scheduler -- disabled it for now, though, as it doesn't
really work yet (there are some bits missing in the IORequest and IOScheduler
  to able to use them this way).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 16:31:35 +00:00
Axel Dörfler
6835a76dfe * Now supports formatting file devices as well as partitions.
* Fixed crash when it couldn't find the device.
* Added a "-l|--list-types" option that list all file systems that support
  initializing (currently only BFS).
* Added a "-q|--dont-ask" option that prevents mkfs from questioning your
  command :-)
* Fixed return value - would return failure to the shell when it actually
  succeeded and vice versa.
* Improved/clarified some output and fixed spelling errors.
* Errors now have the command name as prefix, as that's how it is usually
  done (and very useful for batch processing).
* Cleanup, though I kept the FsCreator class which is kinda superfluous.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 14:11:54 +00:00
Axel Dörfler
6cc43bfbb0 * _user_find_partition() did not work for partitions (only for devices), as it
did not set the "devicesOnly" flag to false when calling RegisterDevice().
* ddm_userland_interface.cpp incorrectly wrote to userland memory when it
  assigned "neededSize" in several places.
* Replaced on-stack path with the UserStringParameter class where appropriate.
* Made the UserStringParameter class castable to char*.
* Minor cleanup in KDiskDeviceManager.cpp.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26563 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 14:05:47 +00:00
Stephan Aßmus
ebdb1a612b Just small white space cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 11:03:03 +00:00
Stephan Aßmus
ea021c679f Clicking on a menu item that already has an open submenu will close the
sub menu and quit menu tracking. This closes #1826. I tested a bit with
various different menu situations and there seem to be no negative side
effects.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26561 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 10:50:34 +00:00
François Revol
dcd20e9d16 forgotten -fno-pic makes arch_elf.cpp give the correct pointers to dprintf instead of garbage.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 01:56:33 +00:00
François Revol
9a486099e8 better english, tell about rela relocs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 01:11:45 +00:00
François Revol
9f8e918d80 The .dynamic section should be both part of the data and dynamic segments!
This makes the kernel loadable by the bootloader, which does load it, and all the modules \o/


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 00:46:07 +00:00
Axel Dörfler
86cea5c5f1 * Renamed IOOperation::SetRequest() to Prepare().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26557 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 00:45:25 +00:00
Axel Dörfler
8faff60c7f * Enabled all DMA tests, wrote some more.
* Moved data buffer creation to a TestSuiteContext class.
* Added checks if the I/O operation does the correct thing, ie. reads/writes
  the data to the right offset.
* Rearranged DMA translation: we now handle the partial write case correctly
  (bounce buffer must always span over the whole block), and are able to join
  adjacent bounce buffers together.
* The new _AddBounceBuffer() method also respects boundary and segment size
  restrictions for bounce buffers.
* IOOperation now prepares the outgoing vecs/offset/length to contain the
  right data for the current phase (partial read begin/end/do-all); it will
  also make sure that the lengths of the vecs are of the same size than the
  whole request.
* All tests are now passed, the I/O request implementation seems to be ready
  for integration now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26556 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 00:43:01 +00:00
Stephan Aßmus
bee04bfed9 mmlr + stippi:
Hide USB errors better from the upper layers: Only try the "clear feature"
command if the error is B_DEV_STALLED. On other errors, the clear feature
was likely to fail, as it should only be used on stalled devices. Errors
intended to be ignored were thus not ignored because of the "clear feature"
failure.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26555 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 00:27:01 +00:00
Ingo Weinhold
f974514476 BString::Append(, int32) methods have been broken in r26378. A local
variable "length" shadowed the "length" parameter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 23:21:47 +00:00
Stephan Aßmus
6df047777a * Cleanup for 80 char per line limit.
* Don't spam the syslog when the device was not a Wacom.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 23:16:48 +00:00
Michael Lotz
a524312842 * Fix off-by-one error in port number which caused full- or lowspeed devices
behind highspeed hubs with multiple transaction translators not to work.
* The parent hub isn't necessarily the one providing the transaction translator
  for a full- or lowspeed device. Therefore we need to inherit the hub/port
  addresses to lower devices unless we are a highspeed hub that might be the
  actual provider of the transaction translator. This logic error caused full-
  and lowspeed devices not to work if they were behind a fullspeed hub that
  itself was behind a highspeed hub.

This fixes bugs #1889 and #2501.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 22:46:16 +00:00
Ingo Weinhold
5b1d60c80e r26509 broke char codes (e.g. Ctrl-K and Ctrl-D) matching one of the
checked B_* char codes. Fixes bug #2533.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26550 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 22:14:25 +00:00
Stephan Aßmus
a86d99e0da Opening previously open windows on non-boot partitions obviously only worked if the
automounter already mounted these partitions. Since this happens asynchronously,
it sometimes worked and sometimes not. The very simply and non-hacky fix for this
problem is to send a message from the automounter to the application looper to
have it open the previous windows after the initial mount scan is done.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 16:01:51 +00:00
Stephan Aßmus
499c81036f * Fixed automounting all BFS disk when Tracker starts.
* Fixed mounting previously mounted partitions. fSettings was never initialized when restoring
  the settings. The code I removed earlier didn't do that either.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 15:44:45 +00:00
Stephan Aßmus
df7697df96 Do not shoot ourselves in the foot and remove the previously mounted partitions
from the settings message just after having restored it. This should fix
restoring the previously mounted partitions, but I have not tested it yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 13:18:17 +00:00
Michael Lotz
508dd5f91d Output some more debug output in case of port reset failure.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 13:11:53 +00:00
Stephan Aßmus
1f855f9696 Implemented a double buffered mode for the case that the screen is 32 bit.
It works by adjusting the display_mode to have twice the virtual height to
cause the graphics driver to allocate enough frame buffer. Since hardware
acceleration calls are based on geometry locations instead of memory locations,
accelerated calls can work in the offscreen buffer with this method.
Similarily, the new CopyBackToFront() method copies the back buffer into the
front buffer with hardware acceleration. The code is currently disabled, since
not all graphics drivers handle the virtual versus display size correctly,
for example the intel_extreme driver. It works for example with the radeon
driver, but another problem prevents me to judge the benefit of this method.
Most types of screen redraws are flicker free, though, which is the whole point
of the excercise. :-)
Another problem with the current code is the initial mode switch. It does
not try again to double the frame buffer in the fall back code paths. It could
also check the frame buffer memory at all, before even trying to save some
cycles.
To see it in action, uncomment the code at line 508.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:50:32 +00:00
Stephan Aßmus
576305a5d8 * Adopt the code to handle the case that even a HWInterface instance with
hardware accelerated functions could be double buffered.
* Align the rectangle used for arc drawing like those for ellipsis.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:40:46 +00:00
Stephan Aßmus
328699e5f6 * Coding style cleanup
* Added a flag "fIsOffscreenBuffer", which is used to shift the frame buffer
  pointer to the position after the visible frame buffer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:33:06 +00:00
Stephan Aßmus
c5ac899aac * Refactor the method that actually copies rectangles from the back buffer to
the front buffer so that derived classes could override it.
* Minor coding style changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:31:27 +00:00
Michael Lotz
22e1bd0701 DiskProbe also used B_RGB32 instead of B_RGBA32 and would therefore display a black background on the icon.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:28:14 +00:00
Stephan Aßmus
167caf601e When switching ports, the code forgot to also switch the detected flatpanel
parameters. This caused ticket #1732 for me. At another place in the code,
the native resolution is added to the supported mode list and there it is
hardcoded to the first flatpanel info.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:25:33 +00:00
Stephan Aßmus
d0dc969483 Added two resolutions for certain wide screen TVs that have VGA or DVI inputs.
Either of the two should work when the native resolution is 1368x768.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:16:42 +00:00
Stefano Ceccherini
85f2668898 Patch by Dustin Howett (GSOC): Move ACPI probing out of the
bootloader's smp init and into its own unit.
ACPI tables can now generally be found with acpi_find_table(signature).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 07:13:51 +00:00
François Revol
3ef0397bc5 - cleanups
- disable tracing mmu
- make scratch buffer 8k as it's declared as such... that makes things much better indeed :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26537 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 02:54:37 +00:00
François Revol
3c5029f112 Turned out the generated kernel_m68k had a single PT_LOAD segment (RWE) instead of separate text and data like every other single binary, and everything on other platforms. This works around it by forcing sections to separate headers. It's still beyong me why I have to do this here, ld should do it on its own. Anyone has a clue ?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 00:36:31 +00:00
François Revol
1e5538f5e8 silently skip PT_INTERP and PT_PHDR types as we can ignore them. This should make real unhandled types more obvious.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 00:31:25 +00:00
Ingo Weinhold
2f14f5ee99 axeld + bonefish + mmlr:
* Added trace entry for block reads from disk.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 00:30:16 +00:00
François Revol
f83297ba2d cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 00:29:08 +00:00
Ingo Weinhold
2b3c0783a0 mmlr + bonefish + axeld:
* Fixed build: round_up() has been renamed to key_align().
* Whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26532 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 00:27:44 +00:00
Ingo Weinhold
9083840f34 bonefish + mmlr + axeld:
* Fixed a bug that could easily corrupt your disks (yeah, one of those
  again): bfs_get_file_map() truncated the last vec incorrectly and
  would potentially return a too large file size -- which was later
  happily overwritten with file data, but could have belonged to
  anything but that file (like inodes, B+trees, etc.).
* Renamed previous round_up() function to key_align().
* Added round_up() template function, and used it where appropriate.
* The latter actually fixed two bugs where the and mask was computed in
  32 bit where it should have been in 64 bit.
* Inode::FindBlockRun() should have checked the max indirect size
  instead of the direct size - this didn't cause any problems, though.
* White space cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 23:59:32 +00:00
Ingo Weinhold
a0a18e64f0 bonefish + mmlr + axeld:
* The "bfs" KDL command parsed the optional block_run::start parameter
  incorrectly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26530 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 23:49:24 +00:00
François Revol
1b5a395d01 Cleanup and fix 040 definitions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 22:08:39 +00:00
François Revol
d14351d2c6 - better not check an entry for validity when we want to fill it
- bitfield definitions of page dirs were reversed... 040 is still wrong though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 21:16:37 +00:00
François Revol
74c5e8bd10 - move VADDR_TO_* to headers
- move part of mmu handling to mmu-dependant files and extend ops
- implemented 040 mmu init. doing so I spotted a bug in ARAnyM which ignored [ID]TT0. Linux likely doesn't use them but I was too lazy touse temporary page tables. I also noticed bitfields were in wrong order, to be fixed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 20:31:48 +00:00
Stephan Aßmus
7c730d1ed4 When initializing a partition, default to the existing partition name. If
there is none, default to "Haiku".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 17:43:39 +00:00
François Revol
c6d022fab9 Send panic to natfeat output as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 17:04:41 +00:00
Axel Dörfler
f02e1e36e9 * The "bfs_inode" KDL command now prints out some additional information
contained in the inode object when available (ie. when you don't use the
  '-b' option).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 16:34:56 +00:00
Ingo Weinhold
e700fc1d5c axeld + bonefish + mmlr:
* FileMap::_InvalidateAfter():
  - Off-by-one error. The last extend (which normally should be kept)
    was thrown away, too, but still accessed afterwards. Worst case
    could be a write to free()d memory.
  - Drop the last extend when it would be truncated to zero size.
* FileMap::Translate():
  - Incorrect handling of B_BUFFER_OVERFLOW case in the
    vfs_get_file_map() loop. After the loop the function would return
    incorrectly, making the caller think all vectors in the provided
    array had been initialized correctly. This could cause a file system
    implementation using the file map to read from or write to random
    disk locations, in the latter case possibly corrupting the file
    system.
  - Some readability improvements in the final loop. Removed incorrect
    check.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 16:29:12 +00:00
Axel Dörfler
762472641e * Added the generic device bus manager module to the built-in module list; now
it can actually be used (that should have been part of an earlier commit,
  but didn't break the build this time).
* dump_modules() must use kprintf() instead of dprintf().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 13:52:15 +00:00
Axel Dörfler
0d066dea36 * Added block level tracing to the block cache.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-20 12:37:56 +00:00
Axel Dörfler
45a206a742 axeld + bonefish:
More work on the I/O scheduler, more precisely mainly the DMAResource class:
* When splitting requests into operations, we're now able to flexibly mix
  bounce buffer segments and the given physical vectors in a single
  operation. This reduces the number of operations.
* Squashed several TODO and fleshed out more of the implementation.
* Added a test driver running unit tests. There are only a few tests yet,
  but those pass.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 23:27:14 +00:00
Oliver Tappe
9e05183977 * some minor cleanups and clarifications
* dropped tracing of udp-header


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 22:32:51 +00:00
Oliver Tappe
14eaa7b61d * replaced a couple of unconditional dprintf()s with TRACEs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 22:31:20 +00:00
Oliver Tappe
4d6c666d22 * dropped swapping of addresses when delivering locally via loopback, since
that is neither correct (source and destination are ok as they are) 
  nor does it have any effect (since those values are clobbered by the
  domain module afterwards)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 21:47:03 +00:00
Stephan Aßmus
54badb1f36 mmlr + stippi:
Fixed more controls to handle a B_TRANSPARENT_COLOR as view coloe of the
parent view. Some controls would not initialize their LowColor() at all
if they were the only control in a window.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 21:28:33 +00:00
Oliver Tappe
88ed5fc1d2 * updated netperf to version 2.4.4
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26514 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 19:57:34 +00:00
Stephan Aßmus
4f2fc580b8 The BStringView is not a BControl but suffered from the same problem in
AttachedToWindow(). Maybe there are more non-BControls yet, I didn't
have a look.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 17:49:45 +00:00
Stephan Aßmus
5fe54dee09 If the parent view color is B_TRANSPARENT_COLOR,
fallback to ui_color(B_PANEL_BACKGROUND_COLOR) in AttachedToWindow(). Most
controls don't paint their background and rely on the app_server painting it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 17:09:54 +00:00
Ingo Weinhold
552580cd28 * TermView::KeyDown(): We were writing to the TTY even when the user
pressed a shortcut that should result in a terminal action
  (e.g. Shift-Left/Right -- Shift-Left generated a Ctrl-\).
* Removed spaces at the end of lines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 16:12:32 +00:00
Michael Lotz
2fc7e292e5 When calculating the actual length for requests, we don't want to include the
8 byte request header. It was included in the case of outgoing request
transfers before. In fact we always just want the length of the data phase,
which for non-requests just happens to be the whole transfer.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 15:59:21 +00:00
Stephan Aßmus
2415100444 * More debug output with regards to the codec id for video streams.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 15:40:21 +00:00
Stephan Aßmus
bfc786ca45 * Cleanup, mostly for 80 char per line limit.
* Fixed warnings when tracing is turned on.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 15:39:34 +00:00
Stephan Aßmus
9e46a45d4f Added support for some 3ivx streams for the time being, until the 3ivx codec
works or has some convenient way of integration.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 15:38:05 +00:00
Stephan Aßmus
b66837d4cd Better debug output, print the error string when failing to get a Reader or Decoder.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26504 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 15:30:29 +00:00
Michael Lotz
c6bb6dfcf0 Remove the explicit PCI interrupt configuration. Not yet sure it will be required later on anyway. Should fix the build of non-x86 targets.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 14:52:10 +00:00
Stephan Aßmus
85db8e8380 In my BSlider changes, I changed the behavior of GetPreferredSize(), which
previously did never shrink the slider horizontally. This broke a couple
apps, so I added it back, although I don't quite agree that this is the correct
behavior. Apps using the new layout system are not affected though, so I
guess it is alright. Should fix #2530, although I didn't test it yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26502 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 12:39:14 +00:00
Stephan Aßmus
fa55277509 In BeOS, BView::Bounds() does the owner lock check. In Haiku, it does now
too. Removed the check in Frame() accordingly, because that uses Bounds().
Removed some code left overs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26501 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 12:36:26 +00:00
Jérôme Duval
45bf857f8d usb devices and vendors list from NetBSD version 1.502
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 11:41:32 +00:00
Jérôme Duval
cfd62a38e0 merging acpica-20080701 into trunk
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26499 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 11:09:30 +00:00
Jérôme Duval
e929b415fc update to tzdata2008d
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 10:47:57 +00:00
Jérôme Duval
82e3aced80 updated freetype to 2.3.7
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 10:41:42 +00:00
Jérôme Duval
1ef720e9b1 update pci ids
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-19 10:19:01 +00:00
Michael Lotz
69dddbdea1 Initial work towards supporting IO APICs. This cannot work for PCI interrupts
though until we use ACPI for proper PCI IRQ routing through the IO APIC.
Therefore the IO APIC code path is not yet enabled and the IO APIC isn't used.
ISA interrupts would work though, as would PCI interrupts if you'd hardcode
them for your specific configuration.
Note that this change also modifies some parts in the bootloader and in the PIC
setup to make local APICs available even on non-SMP systems. This causes APIC
timers to be used instead the normal PIT if it is available (also on non-SMP
configurations).
Also fixes some general errors in SMP and PIC code as well as some code cleanup.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 23:19:41 +00:00
Stephan Aßmus
84c9d73d7d In the B_MOUSE_MOVED message, "where" is supposed to be in window coordinates
while "be:view_where" is in view coordinates. We made the mistake of having
them both be in view coordinates. This caused a problem for example in Vision.
(#2460)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 22:34:38 +00:00
Axel Dörfler
aef87862a4 * Added support for generic drivers.
* If init_driver() fails, the device manager now prints a message to syslog.
* device_node::CompareTo() was broken: it never correctly compared the last
  attribute. This could cause duplicate nodes.
* Removed superfluous white space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26489 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 17:12:27 +00:00
Axel Dörfler
6969690afe bonefish + axeld:
* Moved the old I/O scheduler code into the device manager, and replaced its
  contents completely :-)
* Implemented the DMA and I/O requests/scheduler framework - for now in C++
  only. It's a work in progress and not used anywhere yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 14:39:46 +00:00
Axel Dörfler
df1b333aa5 No wethers in here anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 14:37:23 +00:00
Axel Dörfler
af4d15c72a * Removed I/O scheduler knowledge from devfs - it will be moved into the
drivers that need it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 14:35:47 +00:00
Michael Lotz
541959e00a Add (not really necessary) locking of the sMountMutex in case of KDEBUG to keep the assert in find_mount() happy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 02:07:08 +00:00
François Revol
a440169494 - fix def
- calculate ram ranges, 1 for st ram, one for fast ram if available. The kernel won't differentiate yet though, we'll have problems with DMA later on...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 01:11:59 +00:00
Stephan Aßmus
f779adc692 mmlr + stippi:
In my last row of changes I removed a call to ResizeToPreferred()
in SetLimitLabels(). It is confirmed that the BeOS implementation
is doing it and some applications rely on it, like our own Mouse preflet.
This closes #2526.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-18 00:06:28 +00:00
François Revol
36265c4de7 - print vars of interest to help setup mem map
- shuffle memory map
- set up transparent translations: first 32MB of RAM and last 16MB for IO space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 23:56:22 +00:00
Stephan Aßmus
6eeea348d0 Also destroy the query lock in the Volume destructor.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 20:54:11 +00:00
Oliver Ruiz Dorantes
41da6509b2 - Add handling of some events taking part on the pairing process
- Rename event structures to be consistent with another remaining ones
- Fix typos
by Mika & Oliver




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 20:44:09 +00:00
Michael Lotz
741b3d9004 Use B_RGBA32 instead of B_RGB32 when getting vector icons. Should fix bug #2525.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 19:32:57 +00:00
Michael Lotz
84717c2c61 bonefish+mmlr:
Fix kernel printing of unsigned 64bit datatypes with the highest bit set. They
would previously be converted to a signed type and were then handled wrongly.
Use the sign flag to properly decide when to use casting to a singed type.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26473 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 19:26:09 +00:00
François Revol
87f9eb4682 Make sure debug output will wrap at 80 cols as the atari VT52 emulation doesn't do it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 02:38:23 +00:00
François Revol
3d5d990815 machine != platform
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 02:14:01 +00:00
François Revol
566ca582ba Fix 030 code. Seems we need to force gas to understand we want 030 code there, -m68030 didn't help.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:40:36 +00:00
Axel Dörfler
eaf71fbdb6 * Build fix: coreutils had a replacement for dirfd().
* Made DIR argument const in dirfd().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:22:13 +00:00
Axel Dörfler
13ea2be597 * Since cache_io() can now work with NULL buffers, I resurrected prefetching
using it.
* IOW cache_prefetch_vnode() should work again now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:10:18 +00:00
Michael Lotz
51c99056b5 Make the launch_speedup module compile again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:03:12 +00:00
Michael Lotz
d73327e274 Make dirfd() publically available. It used on other systems as well it seems.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26466 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:01:52 +00:00
Stephan Aßmus
441ad0b87e * Don't continue with initializing a partition if the user cancelled the
parameter panel... Doh!
* Force update the disk view when rescanning the disks (a newly initialized
  partition will now also show the correct name in the DiskView).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 01:00:49 +00:00
Stephan Aßmus
d63b9e14a0 I think the ListPopulatorVisitor gets BDiskSystems allocated on the stack,
so tracking the modification preparations is both unnecessary and
as canceling is performed on a stale pointer...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26464 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:46:11 +00:00
Stephan Aßmus
2570af9d13 Accidentially removed one preparation/cancellation too many. Added it back
but cancel only if preparing was successful.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26463 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:32:26 +00:00
Stephan Aßmus
a9cc6c1e3d The modification preparations were not properly maintained which could
cause all kinds of trouble when finally trying to initialize a partition.
In various situations, the disk would already be prepared for modifications
in which case PrepareModifications() will return an error when called again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:27:36 +00:00
Stephan Aßmus
065e9c8f80 Updated TODO, I could remove some items.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:25:59 +00:00
Axel Dörfler
f97fa70dfb * Build fix: the AGP-GART bus manager also used vm_page_allocate_page_run().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:10:52 +00:00
François Revol
b092ec2850 030 version of transparent translation init.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26459 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 00:03:38 +00:00
Stephan Aßmus
3cd9fb7518 * Calculate correct invalidation rect in SetBarThickness()
* Improved ThumbFrame() for B_TRIANGLE_THUMB, too high horizontal slider
  had the thumb along the bottom and not on the bar.
* Improved triangel thumb drawing, the vertical drawing did look so good
  yet, I also put the triangle on the right side, it looked weird on the
  left and it reverted the hashmark meaning too.
* Small code cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 23:49:28 +00:00
Axel Dörfler
50baef55f2 * Removed some old working_set/page daemon stuff from the address space.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 23:36:25 +00:00
Axel Dörfler
6db6b628d6 * Added B_PHYSICAL_BASE_ADDRESS address specification for anonymous areas.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 23:32:25 +00:00
Axel Dörfler
736352dcf5 * Added [un]lock_memory_etc() versions that accept a team_id as first argument.
This allows drivers to lock the memory outside of the original team context.
* create_area_etc() got a struct team as first argument, but that should have
  been a team_id.
* Removed delete_area_etc() - there is already vm_delete_area() doing the same
  thing.
* Renamed vm_get_address_space_by_id() to vm_get_address_space(), as there is
  no other method of getting an address space.
* Removed erroneous white space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26455 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 22:55:17 +00:00
Axel Dörfler
cb9191556c bonefish + axeld:
* Removed the superfluous "flags" parameter from ConditionVariable::Add()
  that we forgot there when we moved the flags field from
  ConditionVariableEntry::Add() to Wait().
* Using this method was therefore not a good idea - only UnixFifo did, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26454 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 22:43:50 +00:00
Michael Lotz
2293ed6941 Add missing string.h that would otherwise soon break the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 22:17:29 +00:00
Oliver Ruiz Dorantes
6e82afcc18 -Update copyright
-whitespaces cleanups 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26452 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 19:30:45 +00:00
Oliver Ruiz Dorantes
7434b76048 Add to the command manager the connection accept and reject commands
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 19:25:44 +00:00
Oliver Ruiz Dorantes
870ae24a6d Resolve allocation of multiple Messengers,(Mika Lindqvist)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26449 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 19:04:53 +00:00
Stephan Aßmus
fe5d1557e4 Also test the UpdateText() behavior.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 18:42:37 +00:00
Stephan Aßmus
1ae794159a * Changed the signature of UpdateText() to return a "const char*" (char*
really makes no sense if the pointer belongs to the derived class and
  only confuses). Note this change does not affect binary compatibility.
* Introduced a new MaxUpdateTextWidth() virtual method which is really
  necessary to handle the update text correctly in the layout.
* Introduced a new UpdateTextChanged() method which can be called to
  notify the control of a changed update text. Internally, SetValue()
  also uses it.
* Handle the width or height of the UpdateText() correctly in the layout.
  For horizontal layout, the width was forgotten to be included in
  GetPreferredSize(), for vertical layout, it was completely broken before.
* Handle invalidation correctly when the UpdateText() changes.
* Remove the arbitrary insets for labels from the border the control. This
  makes it easier to align the control's labels with other controls.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26447 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 18:37:44 +00:00
Jérôme Duval
06688259b6 fix alignment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 17:36:27 +00:00
Stephan Aßmus
8995071f07 The vertical slider is now at least functionally working, although the rendering
code needs some love.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 15:55:58 +00:00
Stephan Aßmus
f898f8af47 If the user specified a hashmark location other than B_HASH_MARKS_NONE, draw
at least two hash marks, even if the hash mark count has never been configured.
Also means the minimum hashmark count is 2 instead of 1 as before. I think this
behavior is more what one would expect, I turned on hashmarks and wondered
why nothing happened until I realized I needed to configure the count as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 15:15:24 +00:00
Stephan Aßmus
58ecd48c0f Added a test for BSlider
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26442 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 15:06:13 +00:00
Stephan Aßmus
423b124450 First round of BSlider fixes to be more layout friendly:
* Improve the minimum size calculation and cache it.
* Invalidate the layout on various property changes that require it.

Vertical BSliders are very broken... that's up next.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26441 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 14:41:10 +00:00
Stephan Aßmus
cdcfa5945d * Added layout friendly constructor
* Use constructor lists for initializing members
* Simplified initial SetBarColor()
* Update the offscreen view with ViewColor() and LowColor(), someone might
  have changed it after AttachedToWindow() was called.
* Cleanup here and there


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 13:46:05 +00:00
Rene Gollent
2cfee16a9e Build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 18:26:40 +00:00
Stephan Aßmus
4c28a7375d mmlr + stippi:
Use B_RGBA32 if you mean that instead of B_RGB32. The IconUtils could be
changed to either refuse B_RGB32 or give them an invalid alpha channel
with just B_TRANSPARENT_MAGIC_RGBA32. That would make that mistake more
obvious.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26437 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 18:20:01 +00:00
Stephan Aßmus
f01b70d098 mmlr + stippi:
Found an incompatibility with BeOS, where Haiku behaves correctly, though,
after our changes: The alpha channel of B_RGB32 bitmaps is ignored, but
B_TRANSPARENT_MAGIC_RGBA32 pixels are considered fully transparent. In BeOS,
B_RGB32 are simply treated as B_RGBA32, but only in B_OP_ALPHA. We have
added a comment as well as the code that would enabled the BeOS behavior.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26436 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 18:18:07 +00:00
Axel Dörfler
d421644512 * Offloaded the data source retrieval into another thread for more accuracy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26434 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 17:10:52 +00:00
Axel Dörfler
46fa06b554 * Made the network I/O byte per second computation more accurate.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 17:09:08 +00:00
Stephan Aßmus
0634c42f2c Small code and comment cleanups as well as clarifications.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 17:06:14 +00:00
Stephan Aßmus
96c7800295 Rearrange Painter::_DrawBitmap() so that the optimized codepaths for unscaled
drawings are used for bitmaps that needed to be converted to B_RGBA32.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26431 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 16:46:39 +00:00
Axel Dörfler
706b0852bd * Fixed a possible overflow issue - for some reason, the page (and other)
counter are int32 in system_info.
* This fixes the new issue Bruno saw after the previous fix of bug #2140.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26430 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 15:59:26 +00:00
Axel Dörfler
84e23a5d08 * DataHistory::ValueAt() now interpolates between two values in case the time
doesn't match exactly one data item (before, it would have returned the
  value of the closest but earlier value).
* This almost removes the effect that the older values seem to change with
  every refresh (because the time did not always match exactly)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26429 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 15:55:28 +00:00
Stephan Aßmus
fe71730a9c Add one more optimization for an often used case of bitmap rendering.
B_RGBA32 and B_RGB32 in B_OP_OVER no longer go through the generic AGG code
path, but have an optimized version now, as long as the bitmap is not scaled.
B_RGB32 needs to handle B_TRANSPARENT_MAGIC_RGBA32, while B_RGBA32 works just
like regular alpha blending.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26427 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 15:41:03 +00:00
Oliver Tappe
b0387fe2bb Fix problem with openssh failing to connect to OpenSolaris and Zeta servers:
* we need to initialize c_ospeed and c_ispeed, as a value of 0 means 
  'hangup' - which is not a good default, I suppose


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 15:09:32 +00:00
Stephan Aßmus
e87506af4d * Implement SetFont() and invalidate the layout. More controls should probably
do this.
* Fix build, appearantly I made a last minute change in Draw()...

BTW, confirmed that adding virtuals declared in the base class is ok for
binary compatibility.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26425 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 13:55:44 +00:00
Stephan Aßmus
4d2baf30df * Small coding style improvements.
* fPreferredSize was not initialized for the archive constructor.
* Added comment to archive constructor, because I was wondering how
  the default button status was reconstructed or the archive code path.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26424 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 13:23:29 +00:00
Stephan Aßmus
ee2a347385 Minor cleanup again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 13:22:29 +00:00
Stephan Aßmus
d3fe87ce70 * Cache a fPreferredSize following the example of BButton. Changed
GetPreferredSize() accordingly.
* No longer adds margins to the left/right side and top/bottom. These will
  make it difficult to make exact visual alignments with other controls and
  labels.
* Invalidate the layout in SetText().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26422 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 13:20:26 +00:00
Stephan Aßmus
52daa631a5 Added comment about possibly invalidating the layout when changing the font.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26421 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 13:17:52 +00:00
Stephan Aßmus
2a739c3115 Insignificant cleanup and comment typo fixes...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 13:17:20 +00:00
Ingo Weinhold
0629fe02b3 Properly round the partition size in
get_default_partition_content_name().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26417 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 11:28:18 +00:00
Axel Dörfler
8c121d2ca1 * Fixed the bug described by Salvatore: since we let BFS open directories with
read/write access, we shouldn't let it truncate the directory B+tree...
* Also fixed allowing truncation in read-only mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-14 23:23:16 +00:00
Stephan Aßmus
eb91d0058d * Whether an audio and/or video node is used is now more explicit. The audio
node can now also be turned off for videos that don't have audio.
* The PlaybackManager currently has the "no audio" support added in a not
  quite so nice way, will have to think about something, this is just quick
  and dirty to get it going. There is just two places where the audio time
  needs to be ignored, because it remains at zero.
  
-> Especially when using OSS, the seeking latency will be much reduced when
  playing videos that have no sound.

* The Controller now maintains the frame it wanted to seek to and does not
  forward "position changed" to other listeners as long as the seek frame
  has not been reached. This fixes the slider jumping back to the old position
  for a bit until jumping back to the seek frame. It also fixes another
  problem when switching to the next file. Because the total duration is
  already adopted while the old clip is still playing within the seek latency,
  the current position jumped to the new relative position, while it is
  still refering to the position within the old clip. So both seeking and
  switching clips looks much smoother now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-14 21:58:07 +00:00
Fredrik Modeen
67ca609fdc small updates
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26414 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-14 19:53:39 +00:00
Fredrik Modeen
574759641e BJoystick test app. A updated Stickit demo app the original article included
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-14 19:14:23 +00:00
Axel Dörfler
badcd9dbc7 * Popup menu is now sticky - this should probably be the default of all menus
when "sticky menus" is selected in the menu preferences (just in case we still
  have that setting...). Oh, this also fixes bug #2315.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26411 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-14 17:33:10 +00:00
Axel Dörfler
51591198d6 * Now use two views when starting (one memory, one CPU usage). The third view
that is added to the window is a networking monitor, all later views default
  to CPU usage again.
* DataSources can now share a single adaptive scale, so that they become
  comparable in a single view.
* The networking in/out sources are now using this feature.
* DataHistory::ValueAt() now uses binary search to find the right data_item;
  this also fixes bug #2140, and makes it possible to change the refresh rate
  (which is not yet implemented, though).
* Zooming the timeline now also works by clicking the first mouse button and
  dragging the mouse around (instead of only via the scroll wheel, in case you
  hadn't noticed yet :-)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26409 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-14 17:29:02 +00:00
Ryan Leavengood
d4a18674e3 CHANGED the MidiPlayer GUI to use the layout system, mostly for the purposes of
the article I am writing, though it really did need this change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26408 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-14 16:41:21 +00:00
Karsten Heimrich
9b41970442 * hide the license key field as it is only supported in the commercial pdflib version
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 21:47:20 +00:00
Karsten Heimrich
99939029b3 * only delete the popupmenu if we running the async version of BPopUpMenu
This fixes part 3 of task #1987, TaskManager was using the syncronous version of
  of BPopUpMenu wrapped in it's own class to run asyncronous. It did set SetAsyncAutoDestruct
  to true and afterwards calling delete an the already deleted menu.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 20:42:14 +00:00
Oliver Tappe
49a22456dd Overhauled BNetEndpoint implementation (and BNetAddress, too):
* added NetEndpointTest that exposed a couple of bugs
* fixed several bugs in the implementation of BNetEndpoint, some of which kept 
  NetPenguin from working
* fixed a couple of constness issues in BNetEndpoint and BNetAddress


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 19:58:35 +00:00
Ingo Weinhold
0af6c60b15 Use the new get_default_partition_content_name() to construct a useful
volume name -- ReiserFS volumes don't support names.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26404 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 12:52:05 +00:00
Ingo Weinhold
f9f2d81621 Added helper function get_default_partition_content_name() that can be
used by file systems to get a useful name, if the file system (or just
that specific volume) doesn't have one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 12:50:35 +00:00
Ingo Weinhold
64789466f1 Calmed down some debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26402 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 12:47:36 +00:00
Ingo Weinhold
60f2ef17be * Added "partition_id partition" field to fs_volume, so that file
systems can get the partition they reside on easily.
* Updated TODO.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 12:47:08 +00:00
Karsten Heimrich
d903f7e019 * fix some longjump warnings
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 11:16:15 +00:00
Karsten Heimrich
0ef072a3f9 * missing include, remove some whitespaces
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26399 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 11:13:50 +00:00
Karsten Heimrich
a80e05e225 * fixes for ticket #2378
* adjust ui code to be more font sensitive
* add/ rename some of the utils message manipulation functions
* use ReadAttrString instead of ReadAttr to get the printer name



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26398 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-13 11:11:43 +00:00
Ingo Weinhold
3be7d0090c Don't fail, when no userland add-on could be found for partition. We
won't be able to edit the partition in any way, but we shouldn't cause
the whole BDiskDevice::PrepareModifications() to fail. Should fix bug
#2470 -- haven't tested this, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26397 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 22:28:04 +00:00
Karsten Heimrich
4db0488ead * reordered MarinView.h, MarginView.cpp
* rename private functions to use underscore
* rename some public functions to match the usual style
* adjust pdf/ preview driver to use the renamed functions
* we where leaking a single message in _ConstructGui, otherwise no functional change
  


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26396 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 21:09:49 +00:00
Stephan Aßmus
fc53a63149 * On some systems, switching the resolution in VESA mode during
runtime did not work and gave a "General System Error".
  Jan Kloetzke provided a temporary work around, the area
  which the BIOS can access is enlarged, although according to
  specs, this should not be needed.
* After switching modes in the VESA driver, turn on write
  combining for the frame buffer area. This gives a huge speed
  boost for all graphics drawing. Only people for which mode
  changes did not work were using the full speed since the
  VESA mode switching support was added.
* Cleanup in the Jamfile, some header directories were included
  multiple times.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26395 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 19:33:03 +00:00
Stephan Aßmus
44e302192f The info window is not zoomable. (Fixes #2436.)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 17:50:05 +00:00
Fredrik Modeen
6942537437 cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 11:01:38 +00:00
Fredrik Modeen
326767870b unsuccessfully effort to move emuxkigamport to the emuxki audio driver where it belongs. The sound got distorted when the joystick was used.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26391 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 10:55:44 +00:00
Fredrik Modeen
0996e64efd Driver for USB Joystick SBLive and audigy. Work in progress. Right now the USB driver don't work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 10:31:24 +00:00
Ingo Weinhold
fca1417369 Fixed small selection problems:
* When selecting character-wise backwards the initially selected char
  was deselected.
* When first extending a selection and then moving the mouse back into
  the initial selection region (char, word, or line), the previously
  selected additional char/word/line would not be deselected (only when
  moving the mouse in the other direction out of the initial selection).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26389 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 02:36:26 +00:00
Ingo Weinhold
975d43b433 Incorrect selection line end enforcement -- the selection end is
exclusive. Fixes bug #2516.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 01:39:45 +00:00
Ingo Weinhold
bb69160b48 Changed GetStringFromRegion() to not insert '\n' for soft line breaks.
Fixes bug #2515.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 01:28:57 +00:00
Karsten Heimrich
731b9ac77c * If a handler goes away that has an looper, we should remove us from the
loppers fHandlers list, otherwise we might end up with a dangeling pointer.

  This should fix the crashes seen in Cortex and Icon-O-Matic on app close.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-11 20:07:00 +00:00
Oliver Ruiz Dorantes
674e234e11 - Reorder and fix the uninitialization of a device.
- Fix some null pointer bugs
- Mark the removed device to avoid killing it twice in the uninit hook (Mika Lindqvist)
* More things might be still missing in the uninit context 



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26382 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-11 18:18:43 +00:00
Stephan Aßmus
e4f6d30d1c The scrollbar down-button was hidden behind the window resize handle in the
Playlist window.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-11 15:00:58 +00:00
Stephan Aßmus
7992eb9f4b Added methods for (un)archiving. (yet unused and untested.)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-11 14:13:10 +00:00
Stephan Aßmus
ea1b25f5d1 Calling BStatusBar::Update() with NULL as either string argument should
keep the current string. (Untested)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26379 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-11 11:38:51 +00:00
Stephan Aßmus
2cbb2916a7 * _DoAppend() no longer checks the string and the string length, which resulted
in duplicate work/checks. Instead the length is checked in the calling
  functions.
* operator=(const char*) now checks if the passed pointer is the strings
  own data pointer. I think it would have freed the memory before, not
  sure though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-11 11:32:07 +00:00
Oliver Tappe
aebcc506e2 Corrected by previous assumption, since gethostbyname() has nothing to do with
struct sockaddr_in - the real culprits were BNetAddress::GetAddr(sockaddr_in&)
and BNetAddress::SetTo(const sockaddr_in&):
* moved check_r5_compatibility() into r5_compatibility.h to make that function
  available to BNetAddress, too
* adjusted sockaddr_in-handling methods of BNetAddress to deal with R5-addresses
  if in compatibility mode
* removed is_r5_sockaddr() again, since it is no longer needed

With this less hacky solution, Beam, NetPositive, NetworkTime and Vision still work. So, there's hope that the R5 compatibility layer is now complete.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 21:25:19 +00:00
Axel Dörfler
bd2509c549 * Desktop::_UpdateFloating() and Desktop::_UpdateSubsetWorkspaces() both
assumed that there was only a single window that was responsible for the
  workspaces of a floating/subset window. Of course, any number of windows
  can make up the workspaces of those. This fixes bug #2506.
* Added a Window::InSubsetWorkspace() method to complement SubsetWorkspaces().
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 14:17:23 +00:00
Stephan Aßmus
d24ece5186 * I have experiemented with a different method of countering the colored edges
problem of subpixel-anti-alised font rendering. Personally I find the method
better than filtering the subpixels, since it is a straighter transition
between unfiltered subpixel aa and grayscale aa. There is no added blur
affecting also innocent neighboring pixels. The filter method is better at
hiding jagged diagonal lines though, so Andrej and I agreed to move this to
a general discussion on the mailing list. Screenshots forthcomming...

* Some additional coding style improvements.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 12:59:20 +00:00
Axel Dörfler
9082b7f4ed * Completed module watching mechanism.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 12:42:02 +00:00
Axel Dörfler
b4147ed317 * RescanDiskSystems() now locks the disk device manager, as it clobbers the
disk system lists.
* Added module watching; on module changes, it will now automatically rescan
  the disk systems.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 12:21:05 +00:00
Axel Dörfler
b5753dd7c9 * Added a __swap_int32() function to the runtime_loader - this fixes the build,
since KMessage needs it now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 11:52:57 +00:00
Axel Dörfler
a120934388 * Moved KMessage field printing from vfs_boot.cpp::get_boot_partitions() into
KMessage::Dump().
* Improved message dump output a bit (more concise).
* get_boot_partitions() now simply calls KMessage::Dump() instead.
* Added a KMessage::IsEmpty() method.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26365 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 10:06:17 +00:00
Stephan Aßmus
66058774c8 Patch by Andrej Spielmann (GSOC):
* Extend the Fonts preflet to offer the new subpixel rendering and hinting
  options in a new "Advanced Settings" tab.
* Remove trailing white space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:33:15 +00:00
Stephan Aßmus
1d6aab3303 Patch by Andrej Spielmann (GSOC):
* Add a private BFont API that sets/gets the subpixel and hinting configuration
  of the app_server. Currently, the options are boolean, but may be changed
  to modes later.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:31:48 +00:00
Stephan Aßmus
b09e2f6f4b Patch by Andrej Spielmann (GSOC):
* Extend the app_server protocol by configuration options to turn
  subpixel font rendering on/off and also make the glyph hinting optional
  (aligning of glyph shapes to the pixel grid).
* Implement the setting in the app_server and also handle the persistency.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:29:50 +00:00
Stephan Aßmus
fa6a00c628 Patch by Andrej Spielmann (GSOC):
* Integrate the subpixel rendering with the existing drawing backend and
  the font rendering.
* The font cache has got an additional rendering type for extracting and
  caching glyph bitmaps that store subpixel coverage values.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:26:38 +00:00
Stephan Aßmus
73b44a6aae Patch by Andrej Spielmann (GSOC):
* Extend the existing agg_renderer_region with the two new subpixel methods.
* Remove trailing whitespace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:22:41 +00:00
Stephan Aßmus
829453f678 Patch by Andrej Spielmann (GSOC):
Sorry, actually this third AGG class is also needed to handle subpixel scanline
coverage.

NOTE: I am trying to break up the large patch into digestable pieces. The
comments come from me not from Andrej, so I am to blame for any confusion! :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:19:22 +00:00
Stephan Aßmus
185d13d5de Patch by Andrej Spielmann (GSOC):
Two new AGG classes were needed to handle subpixel scanline coverage values.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:15:59 +00:00
Stephan Aßmus
0a0622a6de patch by Andrej Spielmann (GSOC):
Removed trailing whitespace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:12:38 +00:00
Stephan Aßmus
c816464287 patch by Andrej Spielmann (GSOC):
Added complementary functions to the set of functions that implement a
drawing_mode, these new functions interpret the coverage values passed
from the AGG rasterizer or another scanline storage as subpixel triplets.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26355 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:08:59 +00:00
Stephan Aßmus
60d98a49ed patch by Andrej Spielmann (GSOC):
* Added marco definitions for subpixel based blending of two 32 bit pixels.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:06:59 +00:00
Stephan Aßmus
674c8bc8bb Added TODO about a problem that the late mouse moved message dropping code
may have.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26353 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 07:35:47 +00:00
Stephan Aßmus
dde9faab86 * Made the mouse moved message dropping code slightly nicer to read.
* Don't drop messages which carry an important transit value. (Thanks, Axel!)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26352 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 07:21:16 +00:00
Jérôme Duval
6d3c6e761a reduced buffer size: with 4096, no buffer is received by the multiaudio addon
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 23:14:57 +00:00
Ingo Weinhold
f937627dc8 Blue screen pagination:
* Changed prompt and keys: Now it's 'q' to quit (abort) the debugger
  command and 's' to skip the following output.
* Don't offer or try to quit a command in the boot debug output.
* Cleanup the prompt and go to the next line also when aborting the
  command.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26348 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 22:59:45 +00:00
Axel Dörfler
8d79c7db81 * Made Dump() const.
* Removed superfluous whitespace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 21:32:37 +00:00
Jérôme Duval
14f3368d36 fix warning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 18:26:16 +00:00
Oliver Ruiz Dorantes
d04eb939af -Move the launching of the Local Device to an IOCTL from the open hook to be more compatible with the net_stack
-Implement Launch method in the accesors regarding previous comment
-Fix KDL at removing device



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 17:01:30 +00:00
Ingo Weinhold
383a9ac435 * Added an explicit boot_splash_uninit(). Not really needed, but makes
it clear when boot_splash_set_stage() must no longer be used.
* Free the memory associated with the kernel args before starting the
  init process. Unlike the original TODO stated there are quite a few
  more users of the kernel args (including the boot splash screen),
  hence we can't really do that earlier, unless we decide to copy the
  data over to the kernel heap. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 15:25:01 +00:00
Ingo Weinhold
fa0a5cd0e8 insert_preloaded_image() now copies the debug symbols and string table
over to the kernel heap. This allows us to simply free them in
unload_elf_image(). Now we no longer leak the memory for non-preloaded
images. On my T61 this amounted to more than 10 MB of kernel heap after
booting.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 15:17:39 +00:00
Axel Dörfler
daa861bc29 Work-in-progress of the module notification implementation:
* Most things are working, it just doesn't notify the listeners on changes yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26342 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 14:23:29 +00:00
Stephan Aßmus
bb73c05fd7 * Introduced a new view event mask flag: B_FULL_POINTER_HISTORY which,
when set, prevents any old mouse moved message discarding.
* BWindow::DispatchMessage(B_MOUSE_MOVED) checks the event time of the
  message and discards too old events, but only if there is another event
  in the queue and the view does not specify B_FULL_POINTER_HISTORY.
* BView::GetMouse() ignores the checkHistory flag passed to the function
  in case the event mask specifies B_NO_POINTER_HISTORY.
  B_FULL_POINTER_HISTORY on the other hand prevents the dropping of old
  messages.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 14:13:03 +00:00
Axel Dörfler
191a03fd11 * {add|remove}_node_listener() erroneously had "dev_t" as type of "node".
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26340 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 13:04:54 +00:00
Axel Dörfler
9c5c79ad86 * Made DIR definition private, and moved it into the new dirent_private.h
header.
* Added fields necessary to make it possible to retrieve more than one
  dirent from the underlying file system.
* Unless some app creates a DIR on its own to it to feed readdir(), this
  change should be binary compatible. If we find an application misbehaving,
  we can still make it a GCC4 only thing.
* fs_attr/fs_index/fs_query now all use readdir() directly (as that one
  contains the logic to iterate through a number of dirents in userspace).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 11:16:00 +00:00
Axel Dörfler
6ad2f357dc * Both, rootfs, and devfs did not correctly report the number of entries
returned by fs_read_dir().
* Removed superfluous white space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 10:59:02 +00:00
Stephan Aßmus
fe3d5b3083 Implemented a simple fix for the message-pile-up problem of
BView::GetMouse( , ,useHistory = true) in case the application
calls GetMouse() in a loop with a longer delay then mouse
messages arrive at the queue. The "when" field of the messages
is used to discard old mouse moved messages. This also fixes
the possible problem of finding the same message over and over
in case it is not removed from the queue for other reasons.
This fix makes selecting text in Pe for example usable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26337 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 10:03:28 +00:00
Ingo Weinhold
74d5c1e499 * Fixed serious memory leak in team_create_thread_start(). The
destructor of the automatic KPath variable was never invoked, since
  normally arch_thread_enter_userspace() would not return and thus the
  function scope never be left. After a standard "jam @image" almost
  42 MB of kernel heap were lost this way.
* Added a few warning comments in functions that shouldn't use automatic
  variables with a destructor in the function scope either.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 03:58:38 +00:00
Ingo Weinhold
d1d7044ed1 Added TODO regarding memory leak. Too tired ATM to solve it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 03:04:39 +00:00
Ingo Weinhold
b64e66fbd0 Changes related to the "caches" command:
* The table used for sorting the caches could be too small for the
  number of caches in the system. We never checked that, which could
  cause a crash or triple faults when invoking the command.
* We now allocate the table as an area. Also increased the table size to
  102400 entries.
* Also print the committed memory for non-RAM caches, if they are the
  root cache of a cache tree that has committed memory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 01:56:58 +00:00
Marcus Overhagen
0cd4d5fa02 Report SCSI_STATUS_GOOD after successful ATAPI commands. This makes CDDA-fs work with AHCI.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 22:39:03 +00:00
Stephan Aßmus
f3312751b9 honor 80 char limit in comment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 22:31:26 +00:00
Jérôme Duval
3787196a5a * some methods to access stream registers were defined with wrong types
* use HDAC_BIDIR_STREAM_OFFSET and HDAC_OUTPUT_STREAM_OFFSET when applicable
* use a PAGE_ALIGN macro


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 21:48:50 +00:00
Jérôme Duval
f67bbdb2a6 fixed warnings
use playback rate as preferred rate (instead of record)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 21:31:14 +00:00
Stephan Aßmus
264df95726 All input device add-ons should already do this, but make sure that
mouse messages have a "when" field with the event system time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 20:29:18 +00:00
Stephan Aßmus
d36ae78cc6 Added two tests:
* statusbar was used to test and improve some BStatusBar behavior
* lagging_get_mouse demonstrates what the problem is with older
  applications using synchronous GetMouse() calls without specifying
  that they actually don't care about mouse history.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 20:01:31 +00:00
Oliver Ruiz Dorantes
48cca06a81 Add new virtual method in the delegates to launch the device, Instantiation meant only to open/register the localdevice
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 18:39:41 +00:00
Stephan Aßmus
6be60b2d19 Applied patch by Jan Kloetzke:
The PUSHF/POPF instructions were not emulated correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 18:25:45 +00:00
Stephan Aßmus
fc8e77f863 When a BBitmap is drawn with scale, but also only partly, the inverse
image scan generator matrix was calculated wrongly. The part of the offset
that lies within the bitmap bounds needs to have the scale applied as well.
Maybe this code can be simplified. Appearantly there is not a lot of code
that uses BBitmap drawing this way, perhaps because the R5 version has had
issues with rounding. But MediaPlayer uses this feature for drawing the peak
levels and this is fixed by this change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26324 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 17:48:30 +00:00
Stephan Aßmus
93016537eb Check if the Painter even has a clipping region set before trying to take the
short cut when no text needs to be rendered. I've seen a crash yesterday in
the app_server test environment when the decorater was drawing something,
although it may also have been because I had a screwed up objects folder
where some objects were not recompiled because I am switching back and forth
between two app_server code folders.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 17:41:15 +00:00
Stephan Aßmus
bafcc63bcc This is either a fix or a workaround for a problem in Pe, where the
application modifies the scrollbars one by one and the changes would
have some weird cyclic effect where the constrains of one scrollbar
affected the scrolling already while they would be lifted afterwards.
It sounds weird, but maybe it is simply a resulting behavior of the
BeOS implementation which does not check the scrollbar restrictions
in the BView code. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 17:21:39 +00:00
Jérôme Duval
81a7dedd6b init buffer_cycle
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 16:41:52 +00:00
Ingo Weinhold
65748dc8d9 Remove() was moving an additional array element. Mostly harmless, but
would cause a crash when the array end was page-aligned and the next
page was not accessible. Happened to me during a "rm -rf ...".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 16:15:41 +00:00
Axel Dörfler
1bde8b03e7 * Replaced BFS's ReadWriteLock implementation with the kernel's rw_lock.
* The BlockAllocator now uses the new mutex_transfer_lock() function instead
  of clobbering the mutex directly.
* Removed Lock.h - it's no longer needed.
* Minor white space cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 08:04:37 +00:00
Axel Dörfler
78b32dd026 * The rw_lock is now able to nest read/write locks when you have a write lock.
It follows the semantics of the BFS R/W lock, though, that is, if you unlock
  your write lock before the read locks, the read locks effectively become
  write locks, too.
* Added a mutex_transfer_lock() function that will allow you to unlock a mutex
  in a different thread than the one which locked it (only matters if KDEBUG
  is enabled, though).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 07:56:49 +00:00
Michael Lotz
f90a5e346d Adding bus_barrier macro to compatibility layer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26312 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 21:52:40 +00:00
Oliver Tappe
a042907733 * removed debuggin leftover
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 21:06:04 +00:00
Jérôme Duval
b5f75a7ec8 forgot to close the stream before deletion
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 20:45:54 +00:00
Karsten Heimrich
685483eada * set the what field to okok on success, as the epson returns 'Good' for some reason
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 20:04:03 +00:00
Karsten Heimrich
c5ea3d591d * rearranged header a bit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 20:01:46 +00:00
Karsten Heimrich
a836d47d56 * cleanup, no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 19:39:10 +00:00
Karsten Heimrich
30cf4e6a54 * revert the last change as we can get stop etc. also
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 19:23:40 +00:00
Karsten Heimrich
7630cacab6 * check against baad as e.g. the epson addon does not return okok on success
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 19:14:08 +00:00
Karsten Heimrich
f56301c9e8 * maintain our own rect while printing, this makes it possible to print all pages e.g. syslog from StyledEdit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 19:10:39 +00:00
Oliver Tappe
3ad86c7ff5 Fixed R5 compatibility "layer" in libnetwork:
* instead of always converting from the expected r5_sockaddr_in to haiku's own,
  we now explicitly check whether or not the given sockaddr is an r5_sockaddr_in
  or not, naturally doing the conversion only if it is. This is necessary since
  even R5 applications may not always pass in r5_sockaddr_in structs (as for
  instance gethostbyname() will return a native [haiku-]sockaddr_in)
* cleaned up the confusion between the name r5addr and it's actual meaning
  (holding a haiku sockaddr_in) - renaming it to haikuAddr instead
* undid the part of Ingo's r25489 described as: "Extended R5 compatibility 
  check to also consider calls from libbnetapi" - as I fail to see why this
  would be desirable and in fact it stops at least Beam from working.
  Ingo: if you can remember, please enlighten me what was the reason behind 
  this change.
This finally makes Beam "work" (well: connect to servers and download mails ;-)
Vision, NetworkTime and NetPositive are still working, too, so hopefully there
are no regressions.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 18:53:01 +00:00
Axel Dörfler
06d5e1b3b6 * Added ReadLocker/WriteLocker classes to auto lock an rw_lock.
* Added *_init_etc() functions to the fs_shell.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 18:12:33 +00:00
Axel Dörfler
846f4fa2ab * Work-around for the KDEBUG "holder" mechanism; we actually want to lock the
mutex in another thread here than we will unlock it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 16:34:38 +00:00
Axel Dörfler
03fa417b70 * Removed the home-brewn locking classes in BFS besides the read/write lock
(for now).
* Inode::fSmallDataLock is now a recursive_lock, Journal::fLock is now
  a recursive_lock, too, Journal::fEntriesLock is now a mutex, as is
  BPlusTree::fIteratorLock.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 16:21:00 +00:00
Axel Dörfler
af370c702a * Added a recursive_lock_trylock() function.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 16:17:34 +00:00
Axel Dörfler
589f1a9133 * Made the private kernel locking primitives available to file systems as well.
* Applied Korli's mutex_unlock() fix to block_cache.cpp.
* Removed block_cache_priv.h, as it's no longer needed (moved its definitions
  into block_cache.cpp, as in the kernel file).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 15:19:19 +00:00
Axel Dörfler
36bf05cac9 * Added a lock to FileMap - since the map is retrieved lazily, and file
systems like BFS only hold a read lock when reading the map, accessing the
  file map wasn't safe.
* Made FileMap::Free() private, and renamed it to _Free().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 12:53:53 +00:00
Axel Dörfler
92c3ae2b69 * Reverted r26293 again, as that "subtle" change also prevented any device I/O
from happening...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 12:45:38 +00:00
Axel Dörfler
bed8516acc * file_{read|write}() now only accept regular files, and will return either
B_BAD_VALUE or B_IS_A_DIRECTORY depending on the vnode type.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 12:27:37 +00:00
Axel Dörfler
469c26e738 * Since we now have a vnode::type field, several calls of read_stat() were no
longer necessary.
* Optimized file_seek() using this field, too; reading the stat is now only done
  when necessary.
* file_read() and file_write() will now return B_IS_A_DIRECTORY so that not
  every file system has to care about that particular error code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 12:24:24 +00:00
Axel Dörfler
52ecda6ecf * Added some optional KDL command and statistics to the file map implementation.
* Turned them on for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 12:02:24 +00:00
François Revol
0cd3ea3e50 ...and the correct struct name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 11:31:40 +00:00
François Revol
30145fa1fd - handle the supervisor bit from SR correctly on iframes
- various notes on 060 vs others:
	- 060 has 040 compatible mmu, except pgtables must *not* be on copyback memory
	- 060 has a processor control reg which has a revision number to use in system_info
- notes on ctx switch:
	- must be kept in sync with asm code
	- fsave generate variable size frames, so reserve space and use non-predecrementing EA.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 11:22:26 +00:00
Axel Dörfler
9dcc2929fa * Made a class FileMap from struct file_map.
* Added two TODO comments to the start of the file.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 11:16:50 +00:00
Stephan Aßmus
62bf33df96 Don't reset the window size when playing a new file if it isn't necessary.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 08:33:03 +00:00
Stephan Aßmus
591f4c05bc Remove the negative delay that was supposed to account for client->app_server
delay. The audio is later than the calculated realtime anyways, I suspect
the OSS Node does not advertise it's latency 100% correctly yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 08:32:17 +00:00
Michael Lotz
432e3df3c7 * Change the fixed bin list to a generated one based on a few constraining
factors per heap class. The previous bin sizes would in many cases just have
  wasted memory by not fully using up the available space while not providing
  any more elements than a bigger size. The computed bins ensure that the best
  sizes are used based on a min count, min size, alignment and max waste per
  page. Also changed the heap sizes to more reasonable values and renamed them
  to small, medium and large.
* Remove the shouldGrow parameter from heap_memalign() and just check it using
  heap_should_grow() where appropriate.
* Fix readding a nun-full area to the area list, the added page count can be
  bigger than one, therefore the check must be free_page_count == pageCount.
* Simplify ensuring correct alignment, just aligning the size instead of
  checking each candidate bin for alignment is enough.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 01:09:41 +00:00
François Revol
1308815ba3 Fix scope for gcc4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-06 20:23:25 +00:00
Jérôme Duval
df709516a0 moved stateStatus read/write out of the interrupt handler
added some error verbose


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-06 19:20:03 +00:00
Stephan Aßmus
4a684bb832 That is more likely to give the right realtime...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-06 18:32:28 +00:00
Stephan Aßmus
9282400ff4 * The SeekSlider did not update the knob when it was resized.
* Subtile visual improvements to the SeekSlider.
* Added a PeakView for displaying the audio peaks that are produced by
  the AudioProducer.
* A MessageEvent can now directly take a custom BMessage for delivery.
* The peak notification mechanism is a bit separate from the rest of the
  Controller notification design, since the notification delivery should
  be delayed until the audio is actually audible. I may change this
  quick and dirty design though, since it is not so nice. The target
  time could also be part of the message and be handled at a different
  stage, but that would make it less efficient.
* Layout improvements to the playback controls.
* Code cleanup here and there, changed some license statements.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-06 18:29:42 +00:00
Ingo Weinhold
e146a7bf2f Also print the indices of stack frames. This makes the "call" command
more convenient to use.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-06 15:32:40 +00:00
Karsten Heimrich
ba18b05b5d * Fixed broken archive functionality, before we would not archive subitems
and store the archived items in the wrong message field. Verified on R5.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-06 14:46:06 +00:00