Commit Graph
100 Commits
Author SHA1 Message Date
Axel Dörfler 5f0bf2a3e1 We now track how many pages are in a vm_cache. Therefore, the area_info.ram_size
now reflects the number of pages in the areas cache, instead of just the size of the
area.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16834 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 20:17:31 +00:00
Axel Dörfler bc9902cf98 Implemented freeing of blocks, though it's not very efficient yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16833 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 18:37:37 +00:00
Axel Dörfler 16c7939643 Somehow svn messed up my local copy and didn't let me commit this before (needed
to checkout private headers again).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 16:49:24 +00:00
Axel Dörfler 16ed1e1d15 * Removed headers/private/servers/app - everything is in src/servers/app now.
* Removed DisplaySupport.h, wasn't needed anymore.
* Removed private color set functions from InterfaceDefs.cpp - we might want
  something similar, but definitely not like that.
* Minor cleanup, added some missing licenses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16831 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 16:42:14 +00:00
Axel Dörfler 38a6ea1d98 * Removed the old AS_AREA_MESSAGE stuff - it's currently not used at all, and
even though we might need something similar, we can't use it (since it was
  based on BGet++).
* Removed BGet++, it's not used anymore.
* Removed ServerMemIO class, was never used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 15:59:23 +00:00
Axel Dörfler 0476838149 The test environment should now build okay again, as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 15:48:12 +00:00
Axel Dörfler c7c61938c0 We should delete our server memory as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16828 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 15:31:29 +00:00
Axel Dörfler d3b71f5562 Who said I couldn't break the build?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16827 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 14:43:29 +00:00
Axel Dörfler 9a44fdc97c * Implemented a new client allocation method: instead of having all bitmaps of
all teams in serveral server areas, and instead of having to eventually clone
  them all several times in BBitmap, we now have one or more areas per team,
  and BBitmap will only clone areas once if needed. As a side effect, this
  method should be magnitudes faster than the previous version.
* This method is also much more secure: instead of putting the allocation
  maintenance structures into those everyone-read-write areas, they are now
  separated, so that faulty applications cannot crash the app_server this
  way anymore. This should fix bug #172.
* Freeing memory is not yet implemented though! (although all memory will
  be freed upon app exit)
* There are now 3 different bitmap allocation strategies: per ClientMemoryAllocator
  (ie. via ServerApp), per area (for overlays, not yet implemented), and using
  malloc()/free() for server-only bitmaps.
* ServerBitmap now deletes its buffers itself.
* Cleaned up BBitmap and BApplication a bit.
* The test environment currently doesn't build anymore, will fix it next.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 13:43:26 +00:00
Axel Dörfler 66b7a0f477 Renamed the _kern_init_heap_address_range() syscall to _kern_reserve_heap_address_range()
and made it more powerful.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16825 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 12:52:01 +00:00
Axel Dörfler be4691a9c1 Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-18 12:36:34 +00:00
Axel Dörfler acfa924c01 * The workspaces window now cannot be moved with the Workspaces app anymore;
was a bit strange anyway - this closed bug #317.
* The selected window now gets a selection frame in case it can be moved.
* If the window cannot be moved, a new workspace isn't selected either.
* When choosing a workspace, the one currently selected also gets a selection
  frame.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16823 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-17 17:09:40 +00:00
Axel Dörfler aa9383c1f2 And the final build fix: the boot loader was using libroot's strlen.o object
file (which does no longer exist) - it now uses the one from the kernel as a
quick fix.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16821 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-17 01:18:20 +00:00
Axel Dörfler 70e8c1e7e2 Kernel still needs this.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16820 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 20:29:24 +00:00
Axel Dörfler 7ca5966a15 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16818 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 14:42:47 +00:00
Axel Dörfler e589b33020 Should fix the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16817 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 14:42:04 +00:00
Axel Dörfler 0ce9ba6ba3 * BPrivate::ConvertBits() did not take the source or destination bits length
into account when copying to the same color space (new code isn't that fast,
  but it works).
* BBitmap::ImportBits() did not take the specified offset into account at all.
  This fixes bug #313.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16812 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-15 23:22:27 +00:00
Axel Dörfler 150e5ed532 * When the current focus window was closed or invisible, we used to
chose the front window as our next focus window - but this proved
  to be problematic with B_AVOID_FRONT windows. Therefore, we now
  simply chose the top-most window as the next focus window.
  This fixes bug #281, and potentially also fixes bug #181.
* This also revealed another bug in SetFocusWindow(): when the window
  to have focus already had focus, but were hidden before, the focus
  did not change; if that window was subsequently removed, the app_server
  would have crashed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16811 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-15 21:33:12 +00:00
Axel Dörfler d2aef55738 Put the audio drivers into dev/audio/hmulti - a better name would be appreciated, though :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16807 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-15 00:41:24 +00:00
Axel Dörfler e0ca756789 Added a Tracker add-on as symlink to the Backgrounds preferences panel.
Unfortunately, Tracker resolves the link, and doesn't pick up its name or shortcut
(should be fixed in Tracker, though).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16806 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-15 00:40:15 +00:00
Axel Dörfler c16fda11ae Fixed those stylish pink window buttons I just made.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16805 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-15 00:26:53 +00:00
Axel Dörfler 49fe96777b * Removed ColorUtils.cc from libbe.so - I can't think of a reason why
these should be public (they don't match any basic Be naming style
  anyway :-).
* Put the code that's used by the app_server where it's needed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16804 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-15 00:22:01 +00:00
Axel Dörfler 1d125708f8 Added an empty implementation of the shift_color() function - BeIDE needs
this one, maybe we should find out what it does, make it public and
document it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16801 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 23:17:21 +00:00
Axel Dörfler 579c74ceb5 * Implemented a simple version of the private function mstats() (BeIDE needs it).
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16800 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 23:15:57 +00:00
Axel Dörfler 04cec2bbbd Implemented invocation on double click.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16799 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 21:38:11 +00:00
Axel Dörfler a9b6762f49 The right box didn't take the border of the list view into account, and as
therefore a bit too small.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16796 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 20:45:14 +00:00
Axel Dörfler c864c43bab Fixed warning I just introduced.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16793 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 20:29:50 +00:00
Axel Dörfler baf7b0adf0 Broke the build once more: didn't remember that gettimeofday() was built
for the kernel as well, and thus we need to export _kern_get_timezone(),
too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16792 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 20:22:50 +00:00
Axel Dörfler d1b62548b1 * Added the possibility to see and edit the sniffer rule of a type
(realized as an option enabled in the menu).
* Minor bug fixes and changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16791 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 18:59:00 +00:00
Axel Dörfler 821d63fe0a * gettimeofday() now also fills in a passed in struct timezone, if any,
using the new _kern_get_timezone() syscall.
* Added an implementation of ftime() based on the above function, this
  may fix bug #308.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 14:36:46 +00:00
Axel Dörfler f46bdd1c9a Added a _kern_get_timezone() syscall that can be used without needing to
re-evaluate the timezone file over and over.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 14:29:56 +00:00
Axel Dörfler 33dd85501f Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16784 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 14:27:59 +00:00
Axel Dörfler e6a6424e1c * Added a work-around to _Alloc() to allow R5 NetPositive to work on Haiku;
dunno if we want to keep this, though.
* Improved some methods by no longer calling strlen() more than once.
* We're now using snprintf() instead of sprintf() in the << operators to
  make them more secure (even though the string lengths should be long
  enough).
* Improved << operators by taking the return (the resulting string length) of
  snprintf() into account.
* Replaced calls to _GrowBy() with a negative argument with calls to
  _Alloc() which actually safes some computation.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 12:43:46 +00:00
Axel Dörfler 5d35aa2833 I don't think kill_thread() is actually supposed to wait for the thread
to be killed. Reverted ShutdownProcess.cpp to continue to use kill_team()
instead of sending a signal.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 01:54:49 +00:00
Axel Dörfler 2e37884ff0 Don't crash the kernel when getting a NULL mbuf. I can now ping the
Haiku box (with the SiS 900 driver) :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16779 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 01:07:01 +00:00
Axel Dörfler 8896266062 * Now moves with absolute coordinates instead of relative, which makes moving
windows to other workspaces so much easier that even I managed to get it
  right...
* Moving windows on another workspace is now working as well.
* Fixed a positioning bug in Desktop::SetWorkspace() - was only visible in
  case the window was in more than one workspace, but not in all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-13 23:47:32 +00:00
Axel Dörfler 14fe11cfae * Implemented moving windows around via the Workspaces app. However, you
can't move them to another workspace, and you currently don't see a
  window moving that is not in the current workspace. (this fixes bug #135)
* Desktop::SetWindowBehind() didn't update the WorkspacesLayer.
* Changed Desktop::MoveWindowBy() to be able to move window on any workspace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16776 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-13 22:05:49 +00:00
Axel Dörfler 604390bbb5 The saved position is now also invalid if it is less than zero.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16775 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-13 21:40:55 +00:00
Axel Dörfler ae99c86041 Should now play much nicer with broken settings files. Fixes bug #165.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-13 18:22:59 +00:00
Axel Dörfler 58d9acf59e Enlarged the kernel heap to 32 MB for now, to relieve the "heap overgrown" thing a bit.
That buys some more time before switching to a slab allocator :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-13 17:18:15 +00:00
Axel Dörfler 3a8f1f31bd Implemented a very simplistic and slow leak checker as compile time option
(defaults to turned off).
To make any use of this, you have to call the __dump_allocated() function
at the point you want to check the leaks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16765 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-13 16:10:32 +00:00
Axel Dörfler 6686623070 * Fixed possible crashing bug, since fWindow was never initialized.
* Fixed another BMessageRunner leak.
* Added an optional second parameter which you can use to limit the run time
  of the app.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-13 15:59:58 +00:00
Axel Dörfler ca69de45a8 Applied Michael's patch for MessageUtils.h - this is supposed to fix some
crashing bugs with R5 message format conversion.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16762 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-13 11:52:28 +00:00
Axel Dörfler 557e9c04eb Setting fRunCalled in case of failure is stupid, as this prevents the
window from being freed on Quit(). There still is a memory leak within
StressTest, though - but it's pretty tiny now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16753 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 23:12:17 +00:00
Axel Dörfler bc63570c9b BWindow::Show() will no longer Run() its looper without a valid app_server
connection.
StressTest now detects this case and quits those windows.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16752 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 22:59:49 +00:00
Axel Dörfler 3dd881e3af * Fixed memory leak in StressTest and BWindow: they both did not delete the
message they passed to a BMessageRunner object.
* Added note about the ownership of the message to the BMessageRunner
  documentation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 22:35:36 +00:00
Axel Dörfler ce0be66ff4 When the creation of the window failed, all further messages accidently went
to the ServerApp, instead of being dropped - the window link is now updated
correctly in that case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16750 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 22:04:35 +00:00
Axel Dörfler e2c5e77531 Fixed a crashing bug Stippi's StressTest revealed: hidden (and especially,
removed and deleted) windows must not be the mouse event window (ie. while
dragging or resizing the window).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16749 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 21:49:35 +00:00
Axel Dörfler 3bb07059a4 Fixed the build for the libbe_test target.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16748 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 21:40:00 +00:00
Axel Dörfler 5b78d36e23 Fixed a possible crashing bug with early interrupts.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 21:17:26 +00:00
Axel Dörfler ffece83014 Reduced stack usage, especially the ethernet interface was pretty careless about this.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16746 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 20:12:50 +00:00
Axel Dörfler 51aacbbb39 * open_module_list() put the wrong base path length onto the stack, and thus,
no on-disk modules could be found... (since revision 16584).
* iterator_get_next_module() now makes use of the KPath features, and doesn't
  build the new path manually anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16745 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 19:48:28 +00:00
Axel Dörfler b0976eac74 * Reduced the effects of "priority boost on sem release" to a minimum;
the thread priority is now increased by one, we'll see how that turns
  out for real (I'm not even convinced that this feature is a good idea
  at all yet).
* Enabled debugging the last semaphore acquirer by default.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 17:24:31 +00:00
Axel Dörfler f025cd8b72 While the user resizes a window, programmatical resize operations are ignored,
likewise, while the user moves a window around, programmatical moves are ignored
as well.
This fixes bug #264.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 16:59:15 +00:00
Axel Dörfler 32600acb6b Added Reznikov Sergei a.k.a. Diver to the list of contributors.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 15:37:57 +00:00
Axel Dörfler aac4ccaf0d Added libGL.so to the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 14:46:12 +00:00
Axel Dörfler 56d17f07b9 Now uses the new BMessageRunner form when built for Haiku, and thus, no longer
leaks them.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 12:33:56 +00:00
Axel Dörfler 43d7fe9753 * Added two new constructor forms that allow you to create a BMessageRunner
that is detached from its local object; ie. it will continue to send its
  messages when you delete the object.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 12:27:16 +00:00
Axel Dörfler dd48600aac Minor cleanup, added a TODO about the ability to reset the parameters of
BMessageRunners that already sent their message(s).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 12:21:22 +00:00
Axel Dörfler cbc6a45a40 * Fixed crashing bugs, and thus bug #88.
* Cleanup, make it better fit to our style guide.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-12 00:25:30 +00:00
Axel Dörfler dcf60976b6 * New types are now no longer directly added, but delayed a bit (via a BMessageRunner);
this is done so that the type can be fully installed before investigating it.
* When the preferred app of a type changes, the "is application" property will be
  reexamined - this should help in letting new application types appear in the
  FileTypesWindow list, but not in the ApplicationTypesWindow list.
* Added a progress window for removing uninstalled apps.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 23:47:26 +00:00
Axel Dörfler 8fee027ee3 Updated the resource app version information.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 21:31:30 +00:00
Axel Dörfler 56c5bd3a77 Fixed warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16724 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 21:19:22 +00:00
Axel Dörfler f5659a7615 Quick build fix, Stippi, can you review this?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 20:43:35 +00:00
Axel Dörfler 5ac11f960a * Fixed various minor font sensitivity/resize problems.
* Fixed translator version info; didn't correctly displayed versions < 1.
* Drastically improved looks of that info alert.
* Nicer version alert.
* Renamed class DataTranslationsView to TranslatorListView.
* Added license.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16722 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 20:14:13 +00:00
Axel Dörfler 4316cb15fa * Fixed various font sensitivity and other issues.
* Worked over config views, they now look much cleaner.
* This fixes bug #214.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 18:55:38 +00:00
Axel Dörfler 40fc37b0ae * Fixed GetPreferredSize()
* Text height was computed with roundf() instead of ceilf() (which makes more sense).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16706 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 17:21:17 +00:00
Axel Dörfler eb8d1e3895 * Made preferences window font sensitive, this fixes bug #196.
* BottomPrefsView is no longer needed (just contained two buttons, moved
  their creation to the PrefsWindow class).
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16705 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 17:12:27 +00:00
Axel Dörfler 067407432e * GetModeList() didn't correctly check if the mode list allocation failed.
* No longer changes the arguments in case of an error.
* Takes communication errors more gracefully.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 15:15:25 +00:00
Axel Dörfler f157272bee * You are supposed to free() the mode list returned by BScreen::GetModeList(),
and not to delete it.
* The header didn't include everything it needed.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16702 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 15:13:19 +00:00
Axel Dörfler 04d40ff247 * Fixed flattening/unflattening text_run_arrays; they have to be converted to
and from big endian - this fixes our StyledEdit not being able to read files
  written under BeOS and vice versa.
* Made UnflattenRunArray() more robust against missing fonts; the style is now
  tried to be preserved. Note that BeOS doesn't maintain the "face" field in
  the flattened run arrays correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 12:58:31 +00:00
Axel Dörfler 9acf186f65 * Made GetStyledText() and WriteStyledEditFile() more robust against errors.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16700 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 12:50:47 +00:00
Axel Dörfler 5b14ba1a07 * Now uses BTextView::FreeTextRunArray() instead of just free() where appropriate.
* When reading/writing int32, the type of the variable should match.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 12:48:38 +00:00
Axel Dörfler d51ecfd248 Made helper functions static.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 11:05:16 +00:00
Axel Dörfler e389ac9d78 * Removed superfluous Delete*() methods.
* Invocations like SetShortDescription("") will now remove the description as
  well, not only SetShortDescription(NULL).
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 10:57:47 +00:00
Axel Dörfler 31139022cd * Fixed some minor bugs and oddities, improved error messages.
* Big-time cleanup, added license.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16696 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-11 00:13:18 +00:00
Axel Dörfler 6d24fdc557 Better means to debug apps that try to acquire kernel semaphores.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16695 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-10 23:55:50 +00:00
Axel Dörfler f5d5a442b8 Supported types can now be edited and saved (but not their icons yet).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-10 21:53:09 +00:00
Axel Dörfler 36e7c9a636 SetValue(Value()) is a no op, and we need to invalidate a bit more than
that, anyway. This should fix the broken resize behaviour of the slider
(as, for example, seen in DiskProbe).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-10 14:39:53 +00:00
Axel Dörfler 1e766d4688 Moved the ViewUnderMouse() functionality from the EventDispatcher to the Desktop;
this saves us some locking headaches and solves a possible deadlock in
ServerApp::Activate().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-10 13:03:41 +00:00
Axel Dörfler e0e1c52865 Fixed a possible endless recursion (just do a ResizeBy(0.4, 0.4) or something like this
in your FrameResized() method - exposed by the TextView auto resizing feature).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16687 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-10 12:40:01 +00:00
Axel Dörfler 73bc0d629e * Fixed a possible locking bug in Desktop::WindowAction().
* Cleaned up locking a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16686 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-10 11:42:58 +00:00
Axel Dörfler 87b1f40c0f * Fixed misbehaviour of AS_SET_CURSOR: it will no longer set the mouse cursor
when it's not over a view of the application.
* The application cursor is no longer applied when the mouse cursor is over
  the border (or tab) of a window.
* Gave up and imitate BeOS behaviour: the mouse cursor now always get the
  shape the view below dictates, ie. it will no longer fall back to the
  default cursor outside the focus window.
* The window is now set to the default in case there is no window under it
  at all (ie. if Tracker isn't running).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 22:54:10 +00:00
Axel Dörfler 6417229f7c Floating and left titled windows are now always drawn "active" (ie. have a yellow
tab that doesn't become gray, even if another window gets focus), adopting the
R5 behaviour.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16684 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 22:13:00 +00:00
Axel Dörfler afa8d8ef2e Added the "folder" MIME type, and added icons to that one and the application
MIME type - this is what Tracker does when it's launched, anyway, and it
fixes bug #224.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 21:31:25 +00:00
Axel Dörfler 5bf3af3bad Minor improvements.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 21:30:25 +00:00
Axel Dörfler 1d5fe17898 Fixed zip MIME type (wrong application signature).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 19:56:12 +00:00
Axel Dörfler 68953d3a35 * Introduced a minimum cell size. This fixes bug #200.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 19:46:50 +00:00
Axel Dörfler 9ce4e5b4ed * The ServerApp now has the concept of a current cursor: this is either the cursor
of the view currently under the mouse, or the application cursor, if the view doesn't
  have its own cursor (ie. it will no longer set the wrong cursor in certain situations).
* AS_DELETE_CURSOR has no longer an influence on the application cursor, as this grabs
  a ref for its own use - this fixes bug #275.
* AS_SET_CURSOR no longer sets the cursor when the application is not active.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16678 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 18:37:28 +00:00
Axel Dörfler ed45b6652a Cleaned up AS_SET_CURSOR a bit: it now just calls Desktop::SetCursor(), and no longer
HWInterface::SetCursor() directly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 16:00:36 +00:00
Axel Dörfler 52b3e056cd AS_SET_CURSOR now grabs a reference to the current app cursor, so that it won't be
deleted when the local BCursor object is gone. This should fix bug #275 (ScummVM
should no longer have two cursors), not tested yet, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16676 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 15:51:52 +00:00
Axel Dörfler 9c50f36ed7 Now has some error checks in TReplicantTray::AddIcon() - this fixes bug #222.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16675 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 15:22:37 +00:00
Axel Dörfler b57ef1e651 Some more work on the application type window: it now shows the correct
entries, and you can edit everything but icons and supported types.
Saving is also possible now (but it won't ask yet if you close the
window and has made some changes).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16674 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 14:21:25 +00:00
Axel Dörfler 539d69fc6b Added private "Left Titled" and "Desktop" looks to test.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 12:53:21 +00:00
Axel Dörfler 083ec97572 Implemented kLeftTitledWindowLook.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-09 12:52:40 +00:00
Axel Dörfler abb84c7d51 Removing the nodes from the unused list in fs_unmount() had the side effect that
the root vnode was tried to be removed as well (which resulted in a crash).
Since playing with the root node reference count is a bad idea anyway and opens
a big race condition (with regards to the unused list), we no longer do that
now, until it's safe.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-08 22:57:53 +00:00
Axel Dörfler 168049c8be Added libmail.so to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16664 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-08 22:21:21 +00:00
Axel Dörfler 17372b761e * If there are no free ranges left, the block cache will now reuse older
blocks - this is not enough, though as it would also need to ask other
  volumes to free ranges.
* Increased the number of blocks to free in case of low memory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16663 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-08 21:43:45 +00:00
Axel Dörfler f951ca0e6a Fixed a couple of bugs:
* fs_unmount() freed vnodes, but didn't remove them from the unused list if
  needed.
* vfs_get_module_path() could put a vnode twice under several situations.
* vnode_path_to_vnode() now always puts the dir vnode, even if the provided
  path is NULL. Documented the fact that it does eat the ref, too.
* Added a to-do item in vfs_get_vnode_cache() about a possible problem.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16662 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-08 21:42:14 +00:00
Axel Dörfler b608af899a Imported AutomountSettings.* 1.2, StatusWindow.cpp 1.7, and TrackerIcons.rdef 1.5 from
OpenTracker current. This fixes bug #203.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-08 21:14:12 +00:00