Commit Graph
100 Commits
Author SHA1 Message Date
Axel Dörfler c39ecc608f * If getting a new port message failed, we must release the port's write sem
again, or else the port loses capacity.
* This fixes bug #2720.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-30 19:07:38 +00:00
Axel Dörfler d5ad762913 Fixed several problems of the prefetching code:
* Did claim to have reserved pages when calling vm_page_allocate_page(), but
  didn't have any (copy&paste bug). We cannot use it without reserved pages,
  as we need to call vm_page_allocate_page() with a cache locked.
* No longer use low_resource_state() to determine whether to precache or not,
  but use the new vm_page_num_used_pages() instead.
* Also don't (try to) precache when the cache already has more than 2/3 of its
  pages to safe some unnecessary work.
* The size to precache was limited to the file size incorrectly.
* When precaching failed, the cache reference was not released.
* The precaching started one page too late, causing bug #3835.
* Reenabled precaching.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30515 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-30 15:53:41 +00:00
Axel Dörfler 2d8073a9dc * Added a TODO about a problematic use of vm_page_allocate_page() in combination
with vm_cache_acquire_locked_page_cache().
* Added new function vm_page_num_unused_pages() which returns the pages that are
  actually completely free and unused.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30514 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-30 15:46:55 +00:00
Axel Dörfler 88cfea9fc2 * Added a version of reindex that works under Haiku. Changes made to the
original version:
  - removed the BFS bug work-around to create two temporary files first; this
    work around is not needed in our BFS implementation.
  - improved error output.
  - remove attributes before rewriting them. This is needed as BFS won't update
    the indices anymore if the attribute has not actually been changed.
  - applied our coding style.
* This also fixes bug #3843.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-30 12:56:45 +00:00
Axel Dörfler 9431509f5c * Fixed broken socket_get_next_stat() that was responsible for bug #3830.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30500 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-30 11:59:11 +00:00
Axel Dörfler 11efbf0160 * Applied patch by Olivier to implement more mouse reporting modes, and thus
fixing bug #2854. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-24 14:15:18 +00:00
Axel Dörfler 8c8c904aca * Fixed wrong indentation, and number of blank lines.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-24 12:13:22 +00:00
Axel Dörfler 6f440aed2c * net_socket_module_info::acquire_socket() now returns whether or not the
socket could be acquired, ie. when its reference count is 0, it cannot be
  acquired anymore. This requires the protocol to do proper locking, though.
* The TCP EndpointManager now checks the return value of acquire_socket(), and
  only returns the endpoint if that succeeded.
* This fixes bug #2197.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-24 10:12:30 +00:00
Axel Dörfler c9928eb11a * Moved random_file_actions to the other file system tests.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-24 10:06:32 +00:00
Axel Dörfler bf9f608567 * The multiple file creation was not correct, and could create way more files
than planned. Now, it always adds 10% to the max file/dir count unil 50% is
  reached.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-24 10:03:44 +00:00
Axel Dörfler 3ea61f1f22 * Add option -a to always check before contents are removed.
* Print the settings on start in verbose mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-24 10:01:11 +00:00
Axel Dörfler 8eb51285d3 * Made _GetUnchecked() return nothing, as it was ignored anyway.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-24 09:58:54 +00:00
Axel Dörfler 636ccbf306 * Write the identifier as attribute to the file to make later checks possible.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 15:58:29 +00:00
Axel Dörfler 3b9dec1c07 * remove_dir() can no longer remove the base dir.
* Added a remove_dirs() that can reliably clean up the mess afterwards.
* Added option -b to set an alternative base dir.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 15:32:56 +00:00
Axel Dörfler 97f89e0360 * All files now get unique, and verifiable contents.
* Added argument -c|--check-interval to determine how often the file contents
  are checked.
* Added some statistics.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 13:01:54 +00:00
Axel Dörfler 59b3d28a25 * Wrote a test application trying to reproduce bug #2197, ie. modelled after
Mozilla's PR_NewTCPSocketPair() -- unfortunately, it doesn't seem to work.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 21:01:25 +00:00
Axel Dörfler a87124634a * Our INADDR_* and IN_CLASS* macros were mostly wrong - they are supposed to
be in host endian order.
* Adapted ipv4 code that automatically finds a netmask to this change.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30299 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 19:21:52 +00:00
Axel Dörfler d31093e866 * Start of a test application to hopefully be able to reproduce the remaining
BFS problems.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 15:36:24 +00:00
Axel Dörfler 8a26f35a6d * Sequential write accesses were never detected, due to an incorrect check.
* The previous code would have scheduled a single page to be written out (if it
  would have ever been triggered), now we schedule the complete previous write
  access. This greatly speeds up a "dd if=/dev/zero of=test ..." beyond the
  size of available memory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-20 08:02:51 +00:00
Axel Dörfler 4f65f5dca0 * Patch by Olivier to fix the function key assignments, a.k.a. as bug #2853.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 21:07:11 +00:00
Axel Dörfler 21543141dd * Applied slightly changed patch by Olivier that adds basic xterm style mouse
support, thanks!
* This probably closes bug #2854, confirmation pending.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 20:59:08 +00:00
Axel Dörfler 728c7f10e1 * Fixed warnings.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-19 20:57:33 +00:00
Axel Dörfler 24b822d843 * No longer hold the write lock when calling Inode::FillGapWithZeros(), as this
potentially deadlocks as described in bug #3768. The system is still
  completely unresponsive, but gets back to a working state after some time now.
* Since the rw_lock is public, Transaction and InodeReadLocker no longer need to
  be friends with Inode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 09:51:42 +00:00
Axel Dörfler e50b251243 * Applied patch by Olivier that fixes bug #1957. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30220 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-17 09:15:46 +00:00
Axel Dörfler 78e7cdaede * Removed the get_next_removed_vnode() call again - besides the problems Ingo
pointed out, there is also an unsolvable race condition with BFS that other
  file systems should share.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 18:29:12 +00:00
Axel Dörfler 992fba36ee * There is now a list of removed vnodes in Volume - while asking the VFS for
this seemed to be a good idea, there is one race condition that cannot be
  solved otherwise (the vnode must be added/removed to that list while holding
  the transaction lock, and we cannot guarantee that in the VFS).
* We are using an unused area of the in-memory bfs_inode to store the list
  links (bfs_inode::pad - this will also work on 64 bit platforms).
* Inode no longer adds a singly linked list link - the transaction list now
  shares the doubly linked list with the removed vnodes list.
* Added an in-memory flag INODE_IN_TRANSACTION to avoid searching an inode
  to be added in the list.
* Removing an attribute directory did not hold its write lock.
* If removing an attribute failed for some reason, the INODE_DELETED flag
  was not removed (the transaction would not have failed because of that).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 18:24:55 +00:00
Axel Dörfler 22e78d6e65 * Another error found by Romain: the socket's mutex could be destroyed twice
in socket_create(). Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 12:51:49 +00:00
Axel Dörfler 4e5191e9c1 * struct family now uses a DoublyLinkedList instead of a struct list.
* Added but commented out adding/removing chains to its family: this would allow
  the stack to unload protocol modules as soon as they are no longer needed.
  However, it currently does not work yet (double lock, we need a recursive lock
  here to allow this).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 11:11:37 +00:00
Axel Dörfler 7caa5d430c * Now gets the net_socket module in init_stack() to make sure it's initialized
as long as the stack is loaded.
* This fixes another regression from moving the socket API into the kernel.
* Thanks to Romain for reporting this!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:54:07 +00:00
Axel Dörfler 32537299cb * The "net_timer" command was never removed, causing sort_debugger_commands()
to hang when entering KDL, after having unloaded the stack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:50:38 +00:00
Axel Dörfler 09a60e4bd4 * Since we moved the socket stuff into the kernel, we lost the ability to
unload the network stack. This now works again, although I didn't manage to
  do it without another lock.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:49:21 +00:00
Axel Dörfler 7722096951 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 10:31:48 +00:00
Axel Dörfler ddd8303099 * Added "is_in_socket_list" member to determine whether the socket is in the
sSocketList or not (to see if it has to be removed when the socket is
  deleted).
* This fixes the bug reported by Romain when trying to open an unsupported
  protocol (like AF_INET6). Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-16 08:37:00 +00:00
Axel Dörfler e621d84da3 * Now takes the removed but not yet deleted vnodes into account when allocating
spaces on the bitmap.
* This fixes bug #3730.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 16:24:33 +00:00
Axel Dörfler 4e98292b8e * Introduced new call get_next_removed_vnode() to be able to iterate over
removed but not yet deleted vnodes.
* Simplified get_vnode_removed().
* Header cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 16:14:04 +00:00
Axel Dörfler 0e9ddc9350 * The initial ARP entry for interfaces without an address were never removed.
* arp_update_local() was called without holding the sCacheLock, but did not take
  care about locking either. Now the caller has to lock.
* Updating the local ARP entry is now done while holding the sCacheLock the
  whole time, thus it's now atomic to the outside.
* Fixed a potential deadlock: the arp_entry destructor must not be called with
  the sCacheLock being held as long as there is a potential timer running.
* Fixed a potential double delete in case the arp_entry destructor was called
  with a pending ARP_STATE_REMOVE_FAILED or ARP_STATE_STALE. Now, we set the
  new flag ARP_FLAG_REMOVED to check for that condition (it's now set when an
  entry is removed from the hash).
* arp_start_resolve() would leak non-functional ARP entries around when
  something went wrong during the initialization. It will now remove them via
  their timer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 10:29:33 +00:00
Axel Dörfler a96e91db3b * Added TRACE macro to see what timers are set/cancelled.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30166 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-15 10:21:58 +00:00
Axel Dörfler b4a57bf88b * Now makes sure the timer is properly shutdown when deleting the arp_entry.
* This fixes a crashing bug that could be triggered when switching IP addresses
  often.
* Also added a TODO about another possible crashing problem I won't look into
  today anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-14 21:24:43 +00:00
Axel Dörfler 1db58389c6 * {read|write}_pages() does not have a "reenter" argument. This could let both
commands run without proper locking.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-14 17:05:15 +00:00
Axel Dörfler 3553f323a6 * Allow a sector size of 4096 as well; this change allows Haiku to mount an
iPod.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-14 17:04:05 +00:00
Axel Dörfler 5f1b31debd * Made the intel disk_systems add-on independent from the block size as well.
* This also fixes the build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-14 14:46:26 +00:00
Axel Dörfler fc2c8b88a5 * Cleanup, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-14 12:43:54 +00:00
Axel Dörfler 199f33248d * Removed SECTOR_SIZE in the read-only part of the intel partition scanner;
however, it's still used in the write part.
* Made the read-only code block size agnostic. Only tested with an Apple
  iPod so far, and it recognizes its partition fine now. Next test on real
  hardware.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-14 12:33:01 +00:00
Axel Dörfler b41bbb4a46 * Renamed partition_table_sector to partition_table, and PTS* to
PartitionTable*; the sector is not really a sector, but only the first
  512 bytes of it.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-14 11:56:21 +00:00
Axel Dörfler ad491b436f * Moved _CreateBlocks() back into the constructor. That used to make bug #3572
more reproducible, but it doesn't work for me anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30148 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-13 13:12:09 +00:00
Axel Dörfler 78c00a4a53 * Applied patch by sil2001 that fixes bug #3666 (handling of existing symlinks).
* Refactored PkgItem classes, and pulled out a PackageItem base class. Renamed
  other classes to Package*.
* The ItemExists() method should really get a "Apply this choice to all files"
  kind of option...
* Style cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-11 21:37:51 +00:00
Axel Dörfler d1cad26854 * Added an insane block cache tracing mode that will also log the whole block
data. This is available when BLOCK_CACHE_BLOCK_TRACING is 2 or greater.
* Completely untested as of now, though. Will do so soon.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30104 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-10 09:55:04 +00:00
Axel Dörfler 00e8c084e6 Extremely important cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-10 09:53:50 +00:00
Axel Dörfler 7f5c5dc8a1 * Don't try to free the pages area when all you had was a single page (in the
union).
* This fixes a crash on restart that has been revealed by Oco's change to the
  reboot process.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 22:40:15 +00:00
Axel Dörfler 1f25254a3f * Fixed the non-working volume update when using the mouse wheel - only
the slider position was updated, not the actual volume.
* Use InvokeNotify() for wheel changes so that we correctly notify listeners.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 21:40:35 +00:00
Axel Dörfler 126d77c5d5 * Changed ContinuousMessageFilter to register for parameter value changes,
and change its slider value when such a message arrives.
* Currently, this will only work if such a view already received a message;
  added a TODO about how it should be done, but since those would require
  some more changes, I don't want to do that as long as Sean Healy is working
  on that file.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 21:21:42 +00:00
Axel Dörfler 3c2a04f4c9 * Fixed that you would drag the wrong character when the drag was started
while you were already over another character.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 20:45:18 +00:00
Axel Dörfler 9ec59fc934 * Improved tracing of the allocations at block level.
* Turned on extra check on allocation when KDEBUG is set.
* The "bfs" KDL command now also prints the block bitmap block for the
  specified block.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30079 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 19:50:03 +00:00
Axel Dörfler 8734b81d23 * Made the NotificationManager.h header self contained.
* Changed some members to be part of the NotificationManager instead of
  allocated objects.
* Use BAutolock where appropriate.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 19:13:07 +00:00
Axel Dörfler e7cdf7f3f5 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 17:22:00 +00:00
Axel Dörfler 9cfc4c2ff8 * The slider now snaps to 0 dB when crossing that to ease finding the maximum
volume without distortion.
* Added about window.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 17:19:38 +00:00
Axel Dörfler cd7f1893eb * The slider position was actually computed incorrectly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 17:10:43 +00:00
Axel Dörfler b847381250 * Making it private doesn't help unless you have a const BSlider. Therefore,
removed it from the public namespace, and made it only visible when linking.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 15:50:03 +00:00
Axel Dörfler d9479a6951 * Added const version of GetLimits() (the non-const version is still around
for binary compatibility).
* Always round the bar thickness, or we get drawing artefacts.
* Cleaned up the header following our coding style.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 15:41:10 +00:00
Axel Dörfler 4e0b8ffdd6 * As Stephan pointed out, the roster will be NULL if the media server is not
running. Thanks! That's just another thing we should improve in R2.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 11:45:50 +00:00
Axel Dörfler bc608ebf93 * The volume now listens to parameter changes, and adapts itself automatically.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 11:26:19 +00:00
Axel Dörfler 3d2abd1bc8 * The mixer node is now exported.
* The node is no longer allocated separately.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 11:25:23 +00:00
Axel Dörfler 2ff47e1785 * Fixed bug I introduced when deleting parameters (no more crashing).
* Removed the BParameterWeb::{Start|Stop}Watching() methods again, as the same
  thing can be achieved using the BMediaRoster already (even though it doesn't
  seem to work yet).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 09:39:58 +00:00
Axel Dörfler 9a4b02535e * Better defaults: the status window should be visible on all workspaces.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 22:18:29 +00:00
Axel Dörfler 34c7214442 * BParameterWeb::StartWatching() now just calls BMediaRoster::StartWatching()
as on Dano - since the functionality is already there, those two functions
  aren't really needed, though, so we could remove them again.
* Cleaned up DataExchange.h, and added basic reply/request structs for anything
  that needs an area.
* BControllable now uses a helper class ReceiveTransfer to deal with requests
  with areas.
* Major style cleanup of MediaRoster.cpp, though one could still bury some
  hours there...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 21:17:03 +00:00
Axel Dörfler 5bb7f41847 * Fixed warning.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30044 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 21:10:08 +00:00
Axel Dörfler 8aa910b94c * Added missing SO_TYPE.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30032 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 15:24:45 +00:00
Axel Dörfler ab9873555a * Restructured the sources a bit, renamed SliderView to VolumeControl,
VolumeSlider to VolumeWindow.
* The VolumeControl is now a replicant, and be be dragged to the Tracker.
* Hence, moved all volume control stuff from VolumeWindow into the
  VolumeControl class directly.
* Changed menu a bit. Note that controlling the physical output currently
  does not work, but that's a problem of the media node in question (probably
  the multi audio add-on, I'll have a look).
* Added a small delay when clicking on the slider directly before the window
  is hidden, so that you'll get some feedback of your action.
* Added --add-volume, and --volume-control options to "desklink", the former
  adds the volume control icon to the deskbar, the latter opens the volume
  control window directly.
* Further cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30031 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:59:25 +00:00
Axel Dörfler db15cbbee1 * Added Dano-compatible BParameterWeb::StartWatching()/StopWatching() method
stubs.
* However, without a working Dano at hand, I can't really implement something
  compatible, so I'll postpone this to some later point.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:21:29 +00:00
Axel Dörfler eced4ba5a3 * Rewrote ParameterWeb.h.
* Adapted and cleaned up ParameterWeb.cpp.
* Fixed some copy&paste bugs in the BTextParameter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:13:33 +00:00
Axel Dörfler fe6c05fdbe * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30028 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:12:45 +00:00
Axel Dörfler 1f904d1e03 * If you do something, please try to do it right, or at least test it.
* The alert escape check was broken in several ways. First of all, the buttons
  can be NULL which suddenly crashed apps. Second of all, the check didn't even
  work as it was reversed.
* Also, I disabled the code for now, as I really don't think string comparison
  heuristics are the way to solve this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 08:23:07 +00:00
Axel Dörfler 6fc2d92bd3 * Fixed the buggy GCC4 work-around.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 07:57:32 +00:00
Axel Dörfler b494a17f1c * Replaced the volume slider with one looking just like any other slider.
* This is still work in progress, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 23:35:43 +00:00
Axel Dörfler a353e90fa0 * The audio mixer is supposed to support getting/setting only a single value,
such that all channels are affected.
* This fixes the "setvolume" command under Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 23:32:00 +00:00
Axel Dörfler fd0399d738 * Remove executable bit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 21:40:57 +00:00
Axel Dörfler ff99f481b2 * Removed the line view again. Sorry, but this is pretty useless, had a small
fixed size, didn't follow our coding style, etc.
* I did not remove the back-end code in the StyledEditView, though (nor did I
  had a look at it for coding style violations :-)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 19:50:03 +00:00
Axel Dörfler 42d0ef6fe4 * dump_socket() now also prints the actual parent again (not just its
WeakPointer).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 17:41:46 +00:00
Axel Dörfler 1111232758 * Sockets now inherit from WeakReferenceable.
* This fixes the problem when a socket changes something with regards to its
  parent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 16:07:15 +00:00
Axel Dörfler 093e00573f * Added --stacktrace to the flat list of options.
* Removed superfluous and uncommon '"' around options.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29997 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 15:53:37 +00:00
Axel Dörfler 28a650e94d * Made the WeakReferenceable class templatized. Not really sure yet I like that
better, though :-)
* Also fixed a mixup of the unintuitive argument order of our
  atomic_test_and_set(); I guess I will change that sooner or later.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29994 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 15:14:15 +00:00
Axel Dörfler e1fed132d2 * Added a WeakReferenceable implementation, completely untested yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29990 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 12:01:30 +00:00
Axel Dörfler 68dd93a652 * Fixed TCPEndpoint::Listen() never setting the backlog on its socket, causing
only a single pending connection to be accepted at once.
* Fixed discarding endpoints that still had a parent, but were closed before
  they could be accepted (or even established). Previously, these were never
  deleted, slowly filling up the socket's backlog.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 00:18:40 +00:00
Axel Dörfler ab134c0a9a * socket_delete() now also supports deleting children that still have a parent;
added a potentially dangerous TODO, though (will look into this tomorrow).
* Improved output of the KDL command, and also include the child sockets in the
  list.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-07 00:15:52 +00:00
Axel Dörfler 293e82ab1d * Added KDL commands to inspect sockets ("socket", and "sockets").
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-06 22:45:58 +00:00
Axel Dörfler b32dfac5f4 * Now uses DoublyLinkedList instead of the struct list C stuff.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-06 21:18:29 +00:00
Axel Dörfler 8263f82d90 * Missed that when cleaning up the style.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-06 21:13:06 +00:00
Axel Dörfler fd0803f300 * Added RemoveTail() method.
* Renamed DoublyLinkedList::Size() to Count(), since it actually counts the
  items (ie. O(n)).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-06 21:06:19 +00:00
Axel Dörfler 865dbe341e * This should fix the tcp build when tracing is turned on.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29961 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-06 09:37:40 +00:00
Axel Dörfler 7d33b63d40 * Fixed removing a per CPU source.
* Fixed drawing problem when adding a new source, and the draw happened before
  a new value came in.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 21:22:14 +00:00
Axel Dörfler 8e26f38727 * Added a ViewHistory class that stores the current values, so they don't have
to be interpolated everytime. This class also makes sure that the values are
  always from the same offsets, so the flickering is gone.
* Need to use SetMouseEventMask() or else the mouse up will be ignored when
  changing the resolution via dragging the mouse.
* Fixed a bug that prevented the DataHistory data interpolation from working
  correctly.
* The refresh threads are now working at B_URGENT_DISPLAY_PRIORITY, making the
  view updates much more stable with less jitter.
* Removed the draw refresh, and have it always be the same as the value
  refresh.
* Added lower refresh intervals (25, and 75 ms).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 21:05:50 +00:00
Axel Dörfler 64805bb7f0 * Copy keyboard layouts to the image as well.
* I noticed a bit too late that we usually have lower caps folder in our
  repository. Well, if someone complains enough... :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29942 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 15:59:08 +00:00
Axel Dörfler a6354157ca * Moved some stuff in data/etc/ to data/system/data because that's where
they now end up in the image.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 14:55:59 +00:00
Axel Dörfler 433deca87e * Made the 105 key international keyboard the default, since this is probably
more helpful to most people than the 104 key one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 13:30:27 +00:00
Axel Dörfler afa564ec96 * Made the modifiers sticky when used with the mouse. This greatly improves
changing keymaps this way.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 13:02:36 +00:00
Axel Dörfler 6db2be327d * Changed the way the shortcuts are switched: we no longer do the same thing
as BeOS on the right side (that is, switching control and option key), but
  switch control and command there as well.
* As a consequence, the Alt-Gr key will stay where it is when switching the
  shortcuts.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29929 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 13:00:51 +00:00
Axel Dörfler c21f81c11a bonefish + axeld:
* There was one incorrect check in BufferQueue::Get() that happened because
  the wrong operator was used due to the uint32 cast operator.
* Consequently, we removed the uint32 cast operator, and changed the code
  to deal with this. Fortunately, no other bugs were observed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29928 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 12:00:36 +00:00
Axel Dörfler c7fe8932fd * _FreeKeys() now also clears the indicator list (so they are no longer copied
each time you load a new layout).
* Fixed the IBM laptop keyboard layout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 08:55:18 +00:00
Axel Dörfler c066660256 * Fixed drawing the L-shaped enter key; the clipping was constrained on the
wrong view since I added offscreen drawing.
* Added a description of the keyboard layout language; it's unlikely to
  undergo much changes anymore now.
* Added a few comments for stippi :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 08:34:32 +00:00
Axel Dörfler 9200ccec5a * That must have been a BeOS limitation, at least our kernel sports the same
generic API for each architecture.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 08:01:23 +00:00