Commit Graph

16192 Commits

Author SHA1 Message Date
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
Jérôme Duval
9a46df8614 added haiku-usbmidi-cvs package
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16822 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-17 14:10:33 +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
Jérôme Duval
3b74cca68e replaced strlen with glibc optimized version i586 and powerpc32
if build fails, simply delete the object file posix_build.o manually


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16819 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 16:37:05 +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
Stefano Ceccherini
98b5c6b926 Sorry, this was just a test and wasn't meant to be committed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16816 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 11:15:42 +00:00
Stefano Ceccherini
698e0e3fa7 draw shortcut char and bitmaps one pixel higher
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 11:11:28 +00:00
Jérôme Duval
cc87b419b8 added posix_gnu_string
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 11:10:20 +00:00
Jérôme Duval
a34963f388 added posix_gnu_string
added more posix definitions


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 11:09:43 +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
Stefano Ceccherini
21f9f047fa Don't resize items if not needed, small change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16810 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-15 20:44:23 +00:00
Stephan Aßmus
420379aef6 I should have finally fixed those app_server crashes
in HWInterface::_DrawCursor(). Axel, even though we
understood the problem, we didn't really fix it back
then: When the sync flag was set to true in
BView::SetViewCursor(), the link was only flushed,
which means that the function still returned before the
ServerWindow thread processed the message. This means
that the race condition (the cursor being immediately
deleted after SetViewCursor returns, which might be
processed in ServerApp thread before the SetViewCursor
request in ServerWindow thread) still existed. I changed
SetViewCursor now to do a real sync (wait for the
ServerWindow reply) before returning. The alternative
would be to set the fPendingViewCursor flag in either case.
Anyhow, I could reproduce the error quite reliably before
this change, and now it is gone... here is to hoping!



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16809 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-15 14:04:44 +00:00
Jérôme Duval
562f3db610 unused header
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16808 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-15 13:02:03 +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
Jérôme Duval
e0f9a4e815 added some wchar.h definitions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16803 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 23:18:32 +00:00
Jérôme Duval
641526173e fixed cpluscplus guard
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16802 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 23:17:32 +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
Stefano Ceccherini
f6e3e0a259 Redraw the text when MakeResizable is called. Fixes bug 187
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16798 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 21:30:19 +00:00
Stefano Ceccherini
c44a5bea8b Don't switch to I_BEAM cursor if the textview isn't editable nor selectable. Fixes bug 246 for real
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16797 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 21:02:39 +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
Stefano Ceccherini
e3d0715523 Enlarged a bit the BMCMenuBar's frame, so that it's drawn more nicely
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16795 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 20:41:50 +00:00
Stefano Ceccherini
1fdb18f7dd BChannelControl::GetPreferredSize() is a pure virtual
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 20:41:04 +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
Rudolf Cornelissen
ad78834e21 probably fixed NV31, NV36, and NV40 and higer core and ram PLL programming (new nv.settings tweaks).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16790 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 18:56:05 +00:00
Rudolf Cornelissen
dd822d46f6 added new nv.settings to header. Recompile 3D if you want to run 3D :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 16:34:31 +00:00
Rudolf Cornelissen
097373930d added two new nv.settings (TWEAK options): gpu_clk and ram_clk. These options if enabled overrule your gfx card GPU and RAM speeds set by their BIOS (or set via coldstarting the card with the driver). note: overclocking might destroy your computer! Use with extreme caution. These options were added because it offers application developers a means to find bottlenecks (use underclocking), and it offers gamers the option to overclock for max fps. Disabled by default. 'Undocumented'. Bumped version to 0.74.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 16:33:19 +00:00
Rudolf Cornelissen
912ea16e29 added two new nv.settings (TWEAK options): gpu_clk and ram_clk. These options if enabled overrule your gfx card GPU and RAM speeds set by their BIOS (or set via coldstarting the card with the driver). note: overclocking might destroy your computer! Use with extreme caution. These options were added because it offers application developers a means to find bottlenecks (use underclocking), and it offers gamers the option to overclock for max fps. Disabled by default. 'Undocumented'.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16787 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 16:32:43 +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
Jérôme Duval
3f047e87db renamed multiaudio.addon to hmultiaudio.addon
audio/multi changed to audio/hmulti (avoid confusion with Be's audio/multi)
hmultiaudio.addon won't load ich_ac97 any more (reason is it's not compatible)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 10:45:15 +00:00
Stefano Ceccherini
e78c06d170 Reverted change 16774 as stippi's wish. The offset should be ignored when drawing bitmaps, but it's obviously not, at least in some case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16781 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 08:04:35 +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
Ingo Weinhold
3f56c07d8f We use send_signal(..., SIGKILL) to kill a team instead of kill_team()
now, since the latter one can hang. Closes bug #240.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 00:19:33 +00:00