Commit Graph

16109 Commits

Author SHA1 Message Date
Michael Lotz
ee18c3ccff Added an extended ImportBits() to ServerBitmap to allow the use of offsets and made ReadBitmap() use it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-06 00:18:26 +00:00
Michael Lotz
bdc6f9e7ef * Fixed a swapping bug for 16 bit colorspaces
* Added some comments
* Added some checking to avoid noop shifts
* Added buffer length checks
* Implemented (as Stephan suggested) a version of ConvertBits() that takes offsets.
This new version allows to move a region of the source into a region (possibly not at the same point) on the dest while converting colorspaces on the fly.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16592 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 23:53:33 +00:00
Axel Dörfler
8413da2383 Like the comment above said, vfs_lookup_vnode() doesn't grab a ref to the vnode,
so we better shouldn't release it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16591 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 20:55:35 +00:00
Axel Dörfler
0254f09df2 It's not so problematic if a busy vnode was released; what is problematic is
if that was the last ref.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16590 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 20:54:17 +00:00
Axel Dörfler
ecc6684dca Now uses thread_yield() instead of snooze(5), patch by Danny Robson.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 20:06:44 +00:00
Axel Dörfler
9e3f619722 We don't have floating point support for dprintf() in the kernel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16588 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 19:42:40 +00:00
Axel Dörfler
59cd24b7db __HAIKU__ is now also defined for the test environment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 19:41:17 +00:00
Oliver Tappe
94a055c10d * fixed broken FindLast() taking a char and an offset
* added two more tests that exhibit the (now fixed) problem in FindLast()



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 18:27:50 +00:00
Axel Dörfler
0d4c16e0c0 * Reduced the stack usage of most of the I/O paths - there were several places
that put one or more full paths on the stack before, which could cause some
  problems under certain conditions.
* Cleaned up KPath, ie. use size_t instead of int32 where appropriate, added
  license.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 18:11:59 +00:00
Axel Dörfler
5d13c758d1 * Reduced stack usage for iterator_get_next_module() quite a bit by no
longer pushing a whole path on the stack.
* open_module_list() now adds the prefix to the paths it puts on the
  stack to reduce the amount of searching to do (this probably wasn't
  done before because of the earlier boot method via bootfs which
  didn't allow for deep path names).
* module.c is now module.cpp (for KPath usage).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16584 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 18:09:19 +00:00
Axel Dörfler
f97a4547ac Enabled debugging kernel stacks by default for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 18:05:33 +00:00
Michael Lotz
a97ee677a7 Ensure that the cursor is not drawn (it was visible in single buffered mode). Drawing the cursor is not implemented yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16582 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 14:41:52 +00:00
Michael Lotz
acfad7920c Added an ImportBits() function to ServerBitmap and used it in ReadBitmap(). Should work for all colorspaces now.
Magnify does now work correctly, fixed bug 197.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 12:59:39 +00:00
Michael Lotz
b09e53fae0 Wrote a new color conversion engine. It's 2-5 times faster than the old one (depending on colorspaces) and about half in size.
I've put it into ColorConversion.cpp and moved PaletteConverter there too, cleaning up Bitmap.cpp.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16580 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-05 05:01:15 +00:00
Stefano Ceccherini
7a25fcafda Constrain the clipping region before drawing the label. This fixes bug 232
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16579 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-04 19:38:18 +00:00
Stephan Aßmus
8b41c21369 * B_BITMAP_WILL_OVERLAY bitmaps are currently not
supported. (makes VLC run without changes)
* B_BITMAP_CLEAR_TO_WHITE causes the server to
  clear the bitmap to white... :-)
* removed weird comment


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16578 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-03 20:24:13 +00:00
Stefano Ceccherini
2c11ec31c8 BMenuItem also draws ctrl bitmap if needed, BTextView::AutoResize implemented more correctly
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-03 19:31:09 +00:00
Stefano Ceccherini
da2e259d76 added a constant
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16576 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-03 19:10:33 +00:00
Axel Dörfler
bb674499f8 * Finally implemented B_WATCH_MOUNT, ie. Tracker now shows newly mounted volumes
(mounting still only works from the Terminal).
* Shuffled functions in node_monitor.cpp around to clearly differentiate between
  private, private kernel, and public kernel functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-03 11:48:49 +00:00
Michael Lotz
f1fb383d6f Small fix for the last commit. Next thing is color conversion using a subset of what is in Bitmap.cpp. Maybe the conversion functions should be put into a conversion class that can be used by the app_server too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-03 00:13:43 +00:00
Michael Lotz
3e2ee69551 Started implementing the server side of BScreen()->ReadBitmap().
Colorspace conversion is not done yet so that it only works correct in 32bit modes.
Also drawCursor is not respected yet. Partially fixes bug 197.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 23:50:06 +00:00
Axel Dörfler
d5062208bb * Added a new list_insert_item_before() function that inserts a new item
before another one in the list.
* The video modes in the boot loader are now sorted (by resolution, larger
  resolution comes first). Doubled entries are automatically removed; this
  fixes bug #192.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 22:48:47 +00:00
Axel Dörfler
5370f52b15 setlocale() now returns "C" in case the locale is set to NULL.
This allows current VLC to run without the need of exporting one of the
LC_ALL/LC_CTYPE/LANG environment variables (it used to crash without this).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 18:34:13 +00:00
Axel Dörfler
22b4c9cace Added missing [l]lrint[f|l]() functions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 17:55:26 +00:00
Axel Dörfler
f94b06f992 Implemented SSE2/3 support (tested with VLC).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16569 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 17:12:56 +00:00
Axel Dörfler
e11882b484 * Fixed preferred application of the image super type (it's haiku-showimage,
not obos-showimage for quite some time now).
* Removed preferred application from image sub-types - the one in the super
  type is sufficient.
* Added file extension and short description to the PNG image type.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16568 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 13:42:11 +00:00
Axel Dörfler
7ac39b9272 * Added AVI MIME type with sniffer rules.
* Fixed sniffer rule of the MPEG MIME type.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 13:39:11 +00:00
Axel Dörfler
39e26f6113 Fixed a bug in the previous commit that prevented the Roster to find an
app if the type had no preferred application at all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 13:19:27 +00:00
Axel Dörfler
0bad0dd05e _TranslateType() now falls back to the preferred app of the super type in
case the preferred app of the type itself is not available or valid.
Ie. if you have deleted an application that was the preferred app for
"image/png", the system will now try to open the file with the preferred
app for "image".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 13:00:40 +00:00
Axel Dörfler
bc2f09bb77 * Fixed a possible endless loop: when the calling team should receive the B_REFS_RECEIVED
message, we no longer send a message. This seems to be what BeOS does, and it prevents
  Tracker from playing ping-pong when trying opening generic files.
* Eliminated superfluous otherTeam & targetTeam variables in _LaunchApp().
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 12:30:12 +00:00
Axel Dörfler
4b6321235c Now executes a UserBootscript if available.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16563 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 08:29:18 +00:00
Bryan Varner
90200dfec1 * added the beginnings of an acpi_thermal driver.
* currently should detect thermal zones and allow interrogation of their current and critical (possibly HOT) temps.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-02 05:26:09 +00:00
Axel Dörfler
f19839c230 Some groundwork for overlay support. If someone wants to finish this, feel
free to continue (it would be nice to be notified before, though, in case
I get to it again in the next weeks).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16561 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-01 21:20:57 +00:00
Axel Dörfler
5891e232e2 BTextView::SetFontAndColor() no longer crashes with a NULL font pointer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-01 17:39:08 +00:00
Axel Dörfler
383638eee9 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-01 17:38:40 +00:00
Axel Dörfler
9cc21fd165 Changed the way a valid display mode is chosen:
* instead a fitting display mode from the list, and having a fallback
  "ignore frequency" mode, the closest available screen mode is now
  chosen.
* The display_mode's frequency of the mode found is now adapted to the
  requested frequency, as it's done in the screen preferences panel.
* Removed the fallback 8 bit mode for now; instead, we should have
  _FindMode() deviate from the color space as well, if needed.
* This all fixes the problem that you suddenly had an (still badly
  supported) 8 bit mode after reboot, instead of the one originally
  chosen in the screen mode preferences.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-01 16:08:28 +00:00
Axel Dörfler
b61fdf78c6 * The inode block wasn't written back when it was opened with O_TRUNC/B_ERASE_FILE
which could cause inconsistency of on-disk structures.
* Fixed copy&paste bug introduced by Ingo when he did the GCC 4 work-around: when
  shrinking the direct range, the new size was written to the indirect range.
* Some cleanup, renamed private Inode methods to have a leading '_' symbol.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16557 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-01 12:57:54 +00:00
Ingo Weinhold
e68c6184ca user_debug_exception_occurred() now checks whether a non-default signal
action has been set for the signal. If so, it doesn't try to install a
debugger, but simply lets the caller deliver the signal.
Fixes bug #237 (VLC entering the debugger when checking for processor
extensions).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16556 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 23:03:06 +00:00
Axel Dörfler
61daf48296 Accidently disabled the fake interrupt cleanup, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16555 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 21:49:57 +00:00
Axel Dörfler
57808587d5 Fixed warning when build with DEBUG=1.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 21:45:27 +00:00
Axel Dörfler
adbba9cd76 Temporarily disabled interrupt handling: this fixes a strange symptom that happen
on stippi's and my laptop when connected to a power outlet (no interrupts arrive
anymore but timer interrupts).
Need to investigate this a bit more...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 21:22:26 +00:00
Axel Dörfler
3a14d2275f * Fixed various minor font sensitivity issues with larger fonts.
* Fixed build on Dano.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 21:18:24 +00:00
Axel Dörfler
28475bfdbd Added Michael Paine to the list of contributors.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16551 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 19:42:28 +00:00
Axel Dörfler
bfe698736d * Implemented private do_window_action() function, used by the Deskbar to bring
windows to front (or minimize them).
* Desktop::ActivateWindow() no longer crashes in case the window to be activated
  is not on the current workspace - instead, it doesn't do anything at this
  point. IOW it doesn't handle workspace activation at all, yet.
* Renamed ServerWindow::GetWindowLayer() to ServerWindow::Window().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16550 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 18:31:16 +00:00
Jérôme Duval
3b723f7914 added fs_get_vnode_name
cleanup of Jamfile
clean license


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 17:30:47 +00:00
Jérôme Duval
63beb9cd39 Installer should merge directories and replace files
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 16:08:49 +00:00
Jérôme Duval
f764a491bb hopefully patched some of the problems reported by barber <bxi07354@nifty.ne.jp> on bug #141
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 15:54:20 +00:00
Axel Dörfler
52cd65cdf4 Fixed build for GCC 4, this closes bug #239.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 14:48:23 +00:00
Axel Dörfler
2990d21b82 * Recognized any values instead of just boolean ones. This fixes bug #186.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 12:17:26 +00:00
Axel Dörfler
b3b202f451 The Inode's lock was named incorrectly when it was newly created.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-02-28 11:57:50 +00:00