Commit Graph
100 Commits
Author SHA1 Message Date
Axel Dörfler d593e74a27 First steps towards being able of collapse vm_cache objects after forking:
* a vm_cache now maintains a list of its "consumer" caches.
* introduced to new functions that add/remove consumer to a cache (instead
  of only maintaining the vm_cache::source field).
* fixed the incorrect reference counting when doing copy-on-write; we kept
  one ref too many of the lower cache.
* minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19035 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-10 17:16:06 +00:00
Axel Dörfler 66a1b50b01 Forgot to add an 'extern "C"' to the R5 compatibility exports.
This fixes bug #892.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-08 11:05:49 +00:00
Axel Dörfler 61edba289e Replaced libstdc++.r4 with $(TARGET_LIBSTDC++) - this should fix the build for some targets.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19028 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-08 10:46:38 +00:00
Axel Dörfler 3c1e481aa7 Added print transport and driver add-ons to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19027 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 19:21:22 +00:00
Axel Dörfler 1f66b01946 LPR had the same problem (SocketStream2.o does not exist anymore).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19026 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 19:15:36 +00:00
Axel Dörfler 70dd6916db Fixed build (was still trying to link against SocketStream2.cpp).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19025 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 19:13:56 +00:00
Axel Dörfler 1781c9776e Added libmail.so, Printers & E-mail (preferences), and BeMail to the image.
The printer transport add-ons and drivers are missing yet, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19023 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 18:00:36 +00:00
Axel Dörfler 8c603fe7c6 Build fixes for Haiku - is this WIN32 stuff really needed, or can we get rid of it?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19022 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 16:35:16 +00:00
Axel Dörfler d2ae268f24 libnetapi.so no longer exists under Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19021 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 16:15:57 +00:00
Axel Dörfler e6a3af0462 Added R5 libnet.so specific getusername() and getpassword().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 16:04:18 +00:00
Axel Dörfler c5b560408b Removed unneeded second calculator from the repository.
Accidently, this also fixes bug #867.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 12:46:38 +00:00
Axel Dörfler ee50138fcd Now notifies all pending selects when closing the socket.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 12:37:13 +00:00
Axel Dörfler a7028ce680 * Implemented select support for sockets and notifications, not yet tested, though;
this closes ticket #811.
* Added notification support to IPv4 and UDP.
* Implemented reading out SO_ERROR.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-07 12:32:02 +00:00
Axel Dörfler fb4e373041 * Followed suggestions by Philippe and moved libnetapi.so into libnetwork.so as well.
* Also added libbnetapi.so and libnetapi.so to the R5 compatibility evaluation score.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 17:20:50 +00:00
Axel Dörfler 6a5dcb571c Imported most of the old libnet.so compatibility functions (from old/compat/libnet/compat.c).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19015 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 13:46:14 +00:00
Axel Dörfler e9828bbd25 * libnetapi.so should now work correctly in the R5 compatibility environment.
* Added a link from libbnetapi.so to libnetapi.so. We might think about moving
  libnetapi.so into libnetwork.so as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 13:17:00 +00:00
Axel Dörfler fd589b20ba Fixed the build - one of those last minute changes you forgot to compile... :-/
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 13:14:22 +00:00
Axel Dörfler 153b2845d2 * Added a link from libnet.so to libnetwork.so for R5 compatibility.
* Fixed R5 socket definitions to match their actual definitions.
* libnetwork.so now detects at runtime wether or not R5 compatibility should be
  enabled or not.
* All socket functions should now be R5 net_server compatible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 13:07:05 +00:00
Axel Dörfler 3cf73255de The Haiku startup code now exports a symbol called __gHaikuStartupCode. This can
be used to determine wether or not the executable was linked for/under Haiku or
not (ie. BeOS).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 12:19:20 +00:00
Axel Dörfler e979f4bac7 get_image_symbol() and get_nth_image_symbol() now accept NULL arguments for the
location and type parameters.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 12:17:06 +00:00
Axel Dörfler 0d7ec13a82 Simplified a bit, removed unneeded function stubs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 11:46:23 +00:00
Axel Dörfler 7f4e6824df Added a private call to get the dependencies of a loaded image. This will be used
to determine linkage of libnet.so vs. libsocket.so/libbind.so in the libnetwork.so.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-06 11:40:20 +00:00
Axel Dörfler ecf0475ad0 Porting r18992 to the R5 version of BFS (and therefore, bfs_shell used to build the
Haiku image) revealed a problem with that change:
* If the root node only contained a single entry it was freed instead of just making
  it a leaf node - that could produce an invalid b+tree (could only happen with
  attribute or index trees, as directories always contain '.' and '..').


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-05 17:34:11 +00:00
Axel Dörfler bad41d39a2 Ported r18992 from the Haiku version of BFS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-05 13:59:07 +00:00
Axel Dörfler d4f8d429da * Allowed widescreen modes to be displayed on analog monitors using the "force_ws" setting.
* Also added a 1270x720 HDTV resolution (was accidently part of the previous commit).
Both changes courtesy of Doug Shelton.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-05 12:15:24 +00:00
Axel Dörfler a459c8e0d8 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-05 12:11:18 +00:00
Axel Dörfler e12e7a2004 Added support for the nVidia GeForce 7600 GS, courtesy of Doug "tigerdog" Shelton.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-05 11:54:51 +00:00
Axel Dörfler f00c299faa Made adjusting the partition size a bit more strict (negative sizes aren't allowed
anymore; maybe we should even introduce a minimal partition size).
This fixes bug #882.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-05 10:55:59 +00:00
Axel Dörfler f974492c2d Imported ViewState.cpp|h 1.2 from OpenTracker CVS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-04 13:06:39 +00:00
Axel Dörfler 1f9f5e4e63 Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18995 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-04 13:05:48 +00:00
Axel Dörfler 784166f253 Imported ContainerWindow.cpp 1.39 from OpenTracker repository.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18993 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-03 22:43:20 +00:00
Axel Dörfler 0d01edbaba Fixed a stupid bug found by accident:
* When removing the last key from a leaf node, the node wasn't freed, but just
  emptied, and thus the whole tree structure would never combast.
* This could also cause a bug in the TreeIterator: if the last entry was not
  in the last node, every second readdir() after the last one would return
  the last entry again. I only found this because that happens to be what
  Tracker does (which would run in an endless loop while scanning the directory
  then).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18992 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-03 17:51:22 +00:00
Axel Dörfler 65bf7e89c9 Fixed typo in the BIOS work-around that should prevent booting from Intel partitions at all.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18991 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-03 15:26:40 +00:00
Axel Dörfler 0e9f724cf8 * When run as part of the boot loader, it will now adjust the size of partitions
to fit into the session - this should help bug #238 to disappear.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18988 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-10-02 22:49:32 +00:00
Axel Dörfler 8d07a4ae75 Our heap doesn't like big allocations, use areas instead - this fixes bug #875.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-29 23:29:21 +00:00
Axel Dörfler b83fe28463 * Fixed some warnings.
* I forgot to mention it before, but this driver seems to have been written
  by Erdi Chen.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-29 14:12:22 +00:00
Axel Dörfler b9ecaef57a Added the S3 Savage driver from BeBits - accoring to Siarzhuk it doesn't work yet
under Haiku, though. If someone has access to this card, feel free to fix this :-)
I renamed the driver to s3savage (from BeSavage), and added the license text
separately (dunno if that's really needed, though).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-29 13:44:54 +00:00
Axel Dörfler 8d9e5a451e * Turned on debugging in the Intel partitioning system add-on, and the partition
stuff of the boot loader to help with bug #238.
* Minor cleanup (added license headers, fixed debug output)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-29 13:13:02 +00:00
Axel Dörfler 00529536d2 Fixed my previous commit - now dragging a bitmap is working again. Thanks Stefano!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18976 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-29 09:00:55 +00:00
Axel Dörfler 02cc779b7d Moved datastore implementation into net_buffer.cpp - there is no reason to clobber the kernel with it.
This also fixes the issue of exporting a C++ API from the kernel.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-28 18:27:30 +00:00
Axel Dörfler 5af206180e Removed executable property.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-28 18:09:27 +00:00
Axel Dörfler 979fca9d83 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-28 15:59:04 +00:00
Axel Dörfler 8cebe02569 Tracker now also sets the preferred application when installing the Person
MIME type to the People app.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-28 15:54:22 +00:00
Axel Dörfler 8b4fbcf3ad * Now dumps a message to the serial debug output in case a GUI server died; if the
registrar or the input_server died, you didn't get any notification before.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-28 15:47:44 +00:00
Axel Dörfler e0091c79d8 * Drag messages can now also be started with a NULL bitmap pointer and an invalid
drag rectangle - this fixes bug #596, as Cortex obviously relies on this.
* Added a comment on how dragging without a bitmap should be done (app_server should
  directly support this without needing to drag real bitmaps).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-28 12:11:45 +00:00
Axel Dörfler 85baf76e1a The computation of the number of blocks in the last allocation group was wrong; it
would usually be one block too small - this fixes bug #659.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-28 10:46:37 +00:00
Axel Dörfler 646182be71 * When specifying invalid arguments, an error message is now printed. This fixes bug #714.
* Removed some useless information.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-27 18:00:35 +00:00
Axel Dörfler b631d2f40d * Fixed the bug Bruno observed (and worked around) in a safer way - the node data was
not written back before GetNextSmallData() was called (which let the region appear
  empty even though it wasn't).
* I left the shortcut in case of the "name" attribute in there, because it should
  be a bit faster.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-27 13:10:13 +00:00
Axel Dörfler cc347633b9 This fixes bug #851 - GLTeapot unlocks the window before indirectly calling
BWindow::UpdateIfNeeded(); BPopUpMenu::Go() should be independent of this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-26 21:06:20 +00:00
Axel Dörfler d9766fe30b * Changed team_get_process_group_locked() to have a session parameter instead
of a team to avoid confusion. It now also accepts a NULL session pointer in
  which case the actual group's session doesn't matter.
* Fixed the race condition in send_signal_etc() that could allow accessing an
  invalid team pointer.
* Jerome's earlier change already fixed bug #841, and this also fixed bug #855.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-26 12:51:59 +00:00
Axel Dörfler 946d88f90b We're now using the same priorities for windows as BeOS does - this should improve
the responsiveness of the GUI, and should also fix bug #742.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18821 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-12 11:11:22 +00:00
Axel Dörfler 5bab2844c1 This fixes the crashing bug #849. Unfortunately, it still crashes, just at a different location.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-12 00:22:10 +00:00
Axel Dörfler f3585ce573 Applied stripped down patch from Mathew Schofield.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18766 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-05 18:30:07 +00:00
Axel Dörfler 242dab1257 Minor cleanup, I hope I'm not interfering, Korli :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18762 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-05 15:27:21 +00:00
Axel Dörfler 3b57441c75 Added text input filters for "To:", "CC:", and "BCC:" fields that filter an eventual
leading "mailto:" from any insertions (like from a clipboard pasting).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-04 21:07:46 +00:00
Axel Dörfler 309c11a716 * Added text input filter functionality.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-04 21:06:33 +00:00
Axel Dörfler 1f2d7e39bf Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-09-04 20:32:07 +00:00
Axel Dörfler a847b384c6 DeviceOpener::Open() now returns the actual error instead of -1, as suggested
by Korli.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-31 17:26:13 +00:00
Axel Dörfler ffacc65107 Imported the bfs_rename() permission check fix from the Haiku version.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18720 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 23:37:57 +00:00
Axel Dörfler 9b906ccf04 * You can now create the block cache in read-only mode (using an additional
parameter during construction).
* Doing so will now result in a kernel panic whenever your file system tries to
  write to a block.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 23:18:31 +00:00
Axel Dörfler 03a2985277 * When releasing a vnode, it tried to trim down the allocation even if the file
system was mounted read-only.
* bfs_rename() did not check the access privileges of the directories involved.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18718 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 23:15:52 +00:00
Axel Dörfler 793f542244 Added a comment about the outcome of a potential problem.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 23:12:31 +00:00
Axel Dörfler c40fe37f0b * Reverted the changes r17693 made to vfs_get_vnode_cache(); instead, vm_create_vnode_cache()
will now grab a reference to the vnode as well if successful. This way, vfs_get_vnode_cache()
  now actually works how it should: it will now always grab a reference to the cache and
  its underlying vnode. This removes an extra reference to the vnode (and vm_cache) that
  got ignored before and prevented volumes to be unmounted (or file caches to be removed).
  Thanks to Korli for pointing this out.
* file_cache_create() is now aware of that extra vnode reference and releases it; unmounting
  volumes is now working again as it should.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 23:09:04 +00:00
Axel Dörfler 96d67014ff Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 23:00:58 +00:00
Axel Dörfler 190aa14f19 * Use user_strlcpy() instead of this scary combination of strnlen() and user_memcpy().
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18714 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 22:39:20 +00:00
Axel Dörfler 1c1c6688d1 Make sure "otherTeam" is -1 when it's not found in the reply.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 16:15:57 +00:00
Axel Dörfler 60e0ea9f7f Bug fix for my last commit: all of a sudden, a text would need more than one
bad character to be accepted.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 11:56:20 +00:00
Axel Dörfler 86cebbca83 Added the fdinfo app to the image for debugging purposes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18706 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-30 10:04:06 +00:00
Axel Dörfler d3669ef900 * Extended the text recognition to UTF-8 characters - if a text contains too many
bad characters, it will be rejected, at least after bug #675 has been fixed.
* In the future, we should use the same mechanism as the TextSnifferAddon of the
  registrar; it would also be nice to use additional charset information (at least
  differentiating between latin-1 and UTF-8).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 23:24:58 +00:00
Axel Dörfler e04ec8626e * UTF8ToCharCode() only skipped 3 bytes for a 4 byte character.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18702 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 22:20:18 +00:00
Axel Dörfler 324e3770e6 Fixed build under Dano.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 17:00:09 +00:00
Axel Dörfler 7ee49d9f64 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18696 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 15:04:42 +00:00
Axel Dörfler 304d592760 Made the keyboard device more resistant against any kind of error:
* Scancodes greater 255 are now handled correctly, and will no longer crash
  the input_server. This fixes bug #830.
* Use new (std:nothrow) instead of a simple new
* Now checks all allocations and appropriately handle failure
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 14:14:45 +00:00
Axel Dörfler 0ab73f2b26 * Fixed warnings.
* Cleanup, separated hook and driver functions from the rest.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 11:44:50 +00:00
Axel Dörfler e651d817a7 Fixed debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 11:06:43 +00:00
Axel Dörfler 022567d3a0 Dumping semaphore info in the kernel debugger will now print the whole queue
of waiting threads by ID (instead of just the queue head and tail pointers).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 11:05:22 +00:00
Axel Dörfler 2bd9d1e3d8 Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18687 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 10:32:29 +00:00
Axel Dörfler be0e738496 * send_signal_etc() now handles a pid_t of -1 specially, but not yet really correct
(that was part of the problem of bug #702).
* Fixed send_signal_etc() when you called it with a pid_t of zero: the signals should
  go to all teams in the calling team's group, not only to the team (for -1, we do
  the same for now).
* Made team_get_process_group_locked() public, and rewrote send_signal_etc() to use
  it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18684 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 01:41:16 +00:00
Axel Dörfler 567f38888f kill_thread() and friends are supposed to check the passed in thread_id or else
some signals could go to some group when a negative value was passed in.
This actually fixes bug #702 where SoundPlay obviously does a kill_thread(-1)
at the end (which accidently killed all userspace applications, including the
input_server, app_server, ...).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 01:36:54 +00:00
Axel Dörfler e8d442f969 Added libnetapi.so to the build again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 00:20:25 +00:00
Axel Dörfler 241b048033 * Fixed build of libnetapi.so - it probably won't work for now, though, have a look
at the comment in r5_compatibility.h.
* Intentionally broke source compatibility and removed all that outdated Nettle stuff.
* Also, I took the liberty of making m_init private and rename it to fInit - again, this
  will only affect source compatibility.
* Rewrote NetEndpoint.h
* Fixed quite a few small bugs around the code that I touched, for example in NetAddress,
  SetTo() never set fInit, and therefore could be wrong.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-29 00:19:23 +00:00
Axel Dörfler 036caeb9cf Those two aren't needed here (we don't need that level of source compatibility,
ie. if someone included net/socket.h he's doomed to change his sources).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-28 21:52:07 +00:00
Axel Dörfler 6fdccb80f5 Moved libnetapi.so sources into the src/kit/net/ directory - they don't yet build, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18678 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-28 21:46:23 +00:00
Axel Dörfler a17c3a48b8 Changed the way DesktopSettings work:
* Removed the DesktopSettings lock itself - it's not really needed at all,
  and causes some trouble with a clean locking design. This may even have
  fixed bug #757, at least I couldn't reproduce it anymore.
* There is now a class for read-only access that requires you to have locked
  the desktop (either read or write).
* There is now another class LockedDesktopSettings that allows you to set
  settings (and only that) - when you're changing the settings, you must not
  have read locked the desktop (ie. hold the single window lock). The class
  will obtain a write lock, but write locks can be nested.
* Moved SetWorkspacesCount() into the Desktop class.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-26 15:13:08 +00:00
Axel Dörfler f8b41f8219 Moved functions around, so that the static private functions are at the top.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 23:41:54 +00:00
Axel Dörfler 6961cdf6f2 Process groups are no longer searched via their team/session, but by using a separate
hash. This also allows them to stay valid after the group leader died when there are
other teams left in it. This closes bug #1.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 22:58:48 +00:00
Axel Dörfler 3e975f9210 Minor cleanup; renamed some global static variables to match our style guide.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 22:29:54 +00:00
Axel Dörfler 17c6d00009 Parameter "window" is now allowed to be NULL (this fixes a crashing bug I introduced earlier).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 20:45:22 +00:00
Axel Dörfler 967302c5b7 Fixed a stupid copy&paste bug.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 12:33:15 +00:00
Axel Dörfler fa407130aa Now this should nail down bug #762 pretty well: BView::GetMouse() no calls the
private BWindow::_StealMouseMessage() which makes sure only messages for the
preferred handler are stolen, and also, that nothing gets lost that shouldn't
get lost.
Also updates the fLastMouseMoved view in case the message is actually removed
due to GetMouse().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 09:52:12 +00:00
Axel Dörfler fafab8272d This should actually fix the bug a bit nicer (as it no longer prevents the mouse
from moving at all when moved slowly).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 09:37:16 +00:00
Axel Dörfler 5ce268a62d You shouldn't eat mouse moved messages outside of the mouse down/up cycle.
At least there is a pending bug in BView::GetMouse() that causes this restriction.
This fixes bug #762 for now (will do the part in GetMouse() next).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 08:53:28 +00:00
Axel Dörfler 5c87242ea3 Improved the fake mouse-moved mechanism quite a bit:
* EventDispatcher now adopts the cursor position from the HWInterface upon
  assignment, so that even the initial cursor reports match the on screen
  visuals.
* The message was never sent because "target" in Desktop::_SendFakeMouseMoved()
  was never set.
* EventDispatcher::SendFakeMouseMoved() now accepts an EventTarget and no
  longer a BMessenger (fits better to the rest of the API).
* EventDispatcher::SendFakeMouseMoved() now sends out the exit transit message
  to the previous target directly (doesn't wait until the next actual mouse
  move), and updates the previous target as well, so that scrolling now
  works in that new window.
* This only partially fixes bug #762, though, as GetMouse() can still steal
  this mouse message (BTextViews do that in WindowActivated()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 08:49:21 +00:00
Axel Dörfler 524c811b5d Renamed HWInterface::GetCursorPosition() to CursorPosition() to match
the usual style.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18595 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-24 08:40:44 +00:00
Axel Dörfler d479fa7ae4 Floating windows no longer flicker when moving a window to another workspace
using the shortcut keys (Alt-Fn).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-23 21:49:59 +00:00
Axel Dörfler 6474795008 SetWorkspace() now also move the subset windows of the mouse event window to
the new workspace - this fixes bug #755. Unlike floating windows, they aren't
even redrawn :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18592 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-23 21:21:45 +00:00
Axel Dörfler 85e2542930 Shouldn't try to move windows to top that aren't yet in the workspace
(a.k.a. floating windows) in SetWorkspace().
This fixes bug #211.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18591 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-23 20:11:36 +00:00
Axel Dörfler 258d8a3380 When building the update region on workspace switch, the mouse event window was
ignored even if it was not visible on the previous workspace (only normal windows
can be moved this way).
This fixes bug #765.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-23 12:20:28 +00:00
Axel Dörfler 3e16073da7 Updated signature; replaced "obos" with "haiku".
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-23 09:56:32 +00:00
Axel Dörfler 8e8e662d0a Forgot to update include names as well...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18576 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-22 23:40:25 +00:00