Commit Graph

34689 Commits

Author SHA1 Message Date
Ryan Leavengood
162e5c8091 When the toolbar is hidden by animation it is moved, and so we need to move it
back when showing it again but not using animation.

Fixes #7734.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 23:08:58 +00:00
Axel Dörfler
6ee17ffbe8 * Fixed incorrect usage of "new" - thanks korli!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 18:32:48 +00:00
Alex Wilson
0f4e8dfec6 Replace use of old layout-builder classes with new ones in devices app.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 18:14:38 +00:00
Axel Dörfler
8c5a0accf5 * Do not reserve memory when the area is too large. This fixes #7740 where the
reserved amount was simply too small, but also works around address space
  waste with many larger bitmaps.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 17:04:50 +00:00
Axel Dörfler
ee918f6365 * This fixes the BitmapStream issues identified by #7740; the actual problem
persists to be debugged further.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 16:48:05 +00:00
Axel Dörfler
9674328ebe * Minor style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 16:20:46 +00:00
Michael Lotz
80ad7275a9 Fix the build of the pcnet driver. It should probably be updated to the current
FreeBSD version though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 15:19:05 +00:00
Clemens Zeidler
8a26696cbf Patch by mt who also puts the Japanese mail translation into HTA. Thanks! Closes #7689.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-23 19:59:00 +00:00
Rene Gollent
11ce866cbd Revert unintended change, and clarified TODO a bit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-23 12:08:20 +00:00
Rene Gollent
93e87b30a2 Add TODO note.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-23 03:00:05 +00:00
Rene Gollent
ff22dfe8f3 Should have been part of previous commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-23 00:10:01 +00:00
Rene Gollent
29a6c81bcd We now retrieve and unflatten the target BMessage successfully,
though we don't yet create child nodes for the contained fields.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-23 00:08:58 +00:00
Alexander von Gluck IV
a1d3b4af1e * Add missing DAC code for >= r620
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-22 22:09:44 +00:00
Alexander von Gluck IV
e3e0bb558a finish off DACPower modes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-22 21:17:56 +00:00
Rene Gollent
d137ab049b Used the wrong define in the previous commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-22 20:41:51 +00:00
Rene Gollent
29fdb533ba Fix build with tracing disabled.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-22 20:37:13 +00:00
Rene Gollent
46b619c39d Fix several problems in Flatten() that could potentially lead to overflows
and/or crashes if given a smaller buffer size than the Flatten operation 
actually required.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-22 12:52:28 +00:00
Michael Lotz
3270af3ca7 * Check the no-init case consistently, no need to crash when we failed to
allocate the header.
* Code style cleanups: 80-char limit, pointer style of recent additions,
  explicit NULL checks, check ports against 0 instead of B_OK, results != B_OK.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-22 08:47:30 +00:00
Clemens Zeidler
839429d5eb - Use soft inequality constraints to describe the window max size. This means the max size of a window is only violated when it is really necessary. In this case the affected windows get a temporary sufficient large max size limit.
- When resizing a window the window size constraint stays soft when solving the layout. This makes sure that the layout constraints can be fulfilled. Fixes r41759.
- Some other refactoring.

S&T should work much better now. Sorry that I wasn't able to finish it before a3.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-22 05:22:04 +00:00
Rene Gollent
04584c0d6f Add the beginnings of a BMessage type/value handler. Not yet registered with
the type handler roster since it's quite far from being complete.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-21 22:59:54 +00:00
Michael Lotz
4a3d2e7808 Make the heap debug functions available when USE_SLAB_ALLOCATOR_FOR_MALLOC is
enabled as well. As this heap implementation is still used for the port heap
(as it handles B_NO_LOCK areas) those are still useful.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-21 20:25:49 +00:00
Michael Lotz
6244ea5051 Fix range check. The previous check would produce an off by one error making the
last byte of an unmapped-but-still-there page non-readable (i.e. from B_NO_LOCK
areas), causing such reads to fail in KDL.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-21 13:06:26 +00:00
Rene Gollent
0573015d14 Introduce a flag in ExpressionEvaluationContext in order to distinguish between
cases where no object pointer is available vs the object pointer being present
but NULL, which would previously not be pushed onto the stack, leading to
expression evaluation failures.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-21 01:53:46 +00:00
Michael Lotz
2b86134925 * Actually include an offset to write to in writev_port_etc(). It would
previously just always write over the beginning of the buffer for each vector.
  Since the writev version isn't exposed to userland by means of a syscall and
  kernel internally nobody used it, nobody noticed so far.
* Merge the two loops for user and kernel copy to remove the code duplication.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-21 01:13:43 +00:00
Michael Lotz
cd3e02ca1e * Growing the port heap by adding new areas was broken in various ways. For one
the acquired quota in sTotalSpaceInUse wasn't released in all cases leading to
  it eventually reaching the limit (after a _very_ long time though, so this is
  more theoretical than anything else). The sAllocatingArea flag wasn't reset in
  the case that an area was already added in the meantime, resulting in no
  further growing being possible. Then there were race conditions between
  waiting for space to become available and the situations which made that space
  available (freeing port_messages and adding new areas).
* Fix these race conditions by using a mutex (sPortQuotaLock) to protect the
  various quota and allocation related variables. Instead removed the atomic_*
  operations that were previously used.
* Had to move some static functions around.

Should make port heap growing more robust, even though in normal use you'll
likely never encounter it...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-21 00:56:20 +00:00
Michael Lotz
b617e8daff A blast from the past: r15048 from way back removed the wrong boolean parameter
causing the message to be sent with a timeout of "true" (getting converted to 1)
instead of the intended 0 meaning no/infinite timeout. This caused the message
sending to be aborted due to the timeout if it was blocking on a full port for
example. Since the return value is never checked noone noticed.
It's possible that this was the cause of some lost input messages (mouse,
keyboard) when the system was under heavy enough load for either the port heap
to be exhausted (unlikely) or the input_server <-> app_server port to run full
(quite possible).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 22:24:36 +00:00
Clemens Zeidler
f092b1f782 Style fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 21:27:41 +00:00
Clemens Zeidler
6a9178f51c Fix the build and put B_UTF8_ELLIPSIS into the B_TRANSLATE macro, my fault.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 21:23:07 +00:00
Clemens Zeidler
c26c18e489 Apply a nice patch from Taos, thanks!
Localize the mail server and preferences. Get rid of MDRLanguage.h.
The Japanese translation is attached to #7689. Please give a notice when it is in the translation system and the ticket can be closed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 21:15:27 +00:00
Clemens Zeidler
cba256dc5b Apply a nice patch from Taos, just some smaller style fixes by myself.
Localize the mail kit.
The Japanese translation is attached to #7689. Please give a notice when it is in the translation system and the ticket can be closed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 21:12:23 +00:00
Jérôme Duval
aa56e459e0 revert r42251. Cast the enum to uint32 before use in switchs to please GCC 4.5.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 21:12:10 +00:00
Clemens Zeidler
b2a55ebf98 Apply a nice patch from Taos, just some smaller fixes by myself.
Localize the mail add-ons.
The Japanese translation is attached to #7689. Please give a notice when it is in the translation system and the ticket can be closed.
Does the B_UTF8_ELLIPSIS comes into the B_TRANSLATE macro?



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 21:09:11 +00:00
Jérôme Duval
c57f433713 fix the PPC build: don't use NULL for an int parameter, found by gcc 4.5
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42264 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 17:02:44 +00:00
Jérôme Duval
11977ba83b added more cpu feature flags for x86
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 17:00:50 +00:00
Clemens Zeidler
c9ef74ccd2 Update all optimized variables. Most off the time it went fine because the initial solution was already optimal. This fixes #7193.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 07:12:52 +00:00
Axel Dörfler
9d8f95fcee * More cleanup.
* Fixed slightly incorrect copyright year, thanks Clemens :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42261 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 22:23:19 +00:00
Axel Dörfler
21c22141b8 * Removed default_sent_directory(), and introduced
default_mail{_in|_out}_directory() methods in the BPrivate namespace.
* Used these methods in the inbound/outbound protocols.
* Moved WriteMessageFile() into the BPrivate namespace as well, and put its
  prototype into a new header MailPrivate.h along with the new directory
  getters.
* Removed the automatic copy to the sent directory again, and only have one
  directory for incoming mail. Incidentally, this fixed #7509, although the
  underlying filter restriction remains.
* Automatic whitespace cleanups, some style cleanups. Sorry for the mess.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 22:11:04 +00:00
Axel Dörfler
cffd2917a3 * Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 22:06:30 +00:00
Axel Dörfler
ab383924fc * Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42258 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 22:03:49 +00:00
Axel Dörfler
51ecde2887 * Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 21:16:15 +00:00
Rene Gollent
2648a38678 Make the memory view properly handle the target address size.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42255 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 20:58:20 +00:00
Rene Gollent
5d70f1ae3e Get the variable view state more or less usable again. Still needs some more work to
do things like preserve renderer settings and some other details.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 20:21:38 +00:00
Axel Dörfler
cd591eca19 * Removed BONE PPP detection support.
* Style cleanup, no functional change intended.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42253 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 20:11:10 +00:00
Axel Dörfler
dcb652ca5a * Fixed ignoring the result of GetStat() which could cause random values to
be counted (for example already if a directory didn't have its X bit set).
* Instead of doing weird heuristics assuming the size on disk, use the actual
  value the file system reports. This might have side effects on file systems
  that don't report those correctly, which can then be fixed :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 18:38:31 +00:00
Jérôme Duval
ad1263fce3 Part of patch from #6840:
* GCC 4.5 complains about switchs with cases not part of the directory_which enum
* Merge FSUtils directory_which values into the enum


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 18:15:25 +00:00
Jérôme Duval
e53da92708 Part of patch from #6840:
* GCC 4.5 complains about switchs with cases not part of the window_look enum (see WindowPrivate.h).
* To keep them private, cast the enum to int before use in switchs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 18:13:21 +00:00
Jérôme Duval
1f5188bb43 Part of patch from #6840: GCC 4.5 complains about an out of bound access on version_descriptor, use the next field instead
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 18:05:22 +00:00
Rene Gollent
f4ba9a458f * Cleanups.
* Add support for keyboard navigation to the memory view.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42246 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 17:21:28 +00:00
Axel Dörfler
8bc4ea31a0 * Renamed "Outbound"/"Inbound" to Outgoing and Incoming, which is not just
more common language, but also consistent with the rest of the preferences
  app.
* Fixed broken "get SMTP add-on" method.
* Renamed OK button to "Next", and "Finish" on the last page.
* Style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42245 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 14:52:39 +00:00
Ryan Leavengood
d52b839e94 When called from the ReadOnlyBootPrompt, quitting the Installer will result in
restarting. So it makes sense to use the label Restart for the button instead
of Quit.

Fixes #7090.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42239 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 22:55:53 +00:00
Rene Gollent
80480954e2 Add support for byte swapping to the memory inspector.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 22:24:00 +00:00
Ryan Leavengood
07fb28e3df Delete the cursors in the view destructor. Thanks Axel!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 22:15:42 +00:00
Rene Gollent
2e687c4792 No need to call DragStart() if we have no drag message yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 21:31:07 +00:00
Rene Gollent
7560163d8c * Revert r42223 since it breaks some cases.
* Simplify handling a bit. Instead of more or less duplicating some of the
  move logic from PoseView, simply construct an appropriate target model and
  let PoseView's HandleDropCommon() take care of understanding what to do with
  the drag message. This has the side effect that things like dropping a text
  clipping message onto a target in an x-ray menu actually works as expected
  now.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 14:17:17 +00:00
Ryan Leavengood
828a3e9558 Account for quickly repeated double clicks when toggling fullscreen mode. If
done fast enough the click count can reach 7 pretty easily.

Fixes #7591.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42233 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 06:00:14 +00:00
Ryan Leavengood
7c4be36fa6 Use grabbing cursor when moving image with the mouse.
Fixes #7592.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42232 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 05:43:29 +00:00
Ryan Leavengood
8445a94515 Make the delete key clear the selection in selection mode, trash the file otherwise.
Fixes #6772.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 04:46:37 +00:00
Rene Gollent
4529df90fe Add a keyboard shortcut for Run to accompany the ones for the different step actions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42230 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 03:42:31 +00:00
Rene Gollent
f4d44cd47d Remove the monitor item before calling FSNotification() on it. Otherwise,
in some cases PoseView would call back into PoseCreatedOrMoved(), leading
to an infinite recursion.

Fixes #7696.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 03:22:31 +00:00
Alex Wilson
bbfcd83bde Make the 'Long description' textview in FileTypes use the BScrollView::SetBorderHighlighted() method when it is focused, also enable tab-key navigation (which was the whole purpose of creating the custom class used for the field) with the B_NAVIGABLE flag.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42228 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 01:52:29 +00:00
Clemens Zeidler
7d5fd9326c Some style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 01:33:05 +00:00
Clemens Zeidler
6c7a658d1c Add support for soft inequality constraints for quadratic solvers. A slack variable is used in a normal hard inequality and the slack variable is minimized with a high penalty. In this way the constraint is only violated when necessary. Some smaller clean up.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 01:26:31 +00:00
Rene Gollent
ab6b173770 Slight relocation, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 00:48:22 +00:00
Alex Wilson
d90a465e08 Change the value of other spacing/inset constants so that B_USE_DEFAULT_SPACING has its own unique value. Also adjust BControlLook::ComposeSpacing() to reflect this.
closes #7447


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 00:37:39 +00:00
Rene Gollent
5e90adf5d7 Fix regression introduced by r41892: DragStart() was called at the wrong time,
leading the drag message to contain nothing more than an empty B_MOUSE_IDLE
message. This broke several other cases of drag and drop which relied on it
containing the dragged refs. Fixes #7705.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-17 22:56:11 +00:00
Axel Dörfler
f5971e6742 * Fixed excessive translation. Those are BMessage fields, and not supposed to
be translated!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42220 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-17 21:30:32 +00:00
Clemens Zeidler
94eb1edee7 - Polish ToString version of Constraint a bit.
- Check the left side of a Constraint for Summands with same Variables and merge them. This fix some issues in the quadratic solver.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-17 04:26:09 +00:00
Rene Gollent
b1227839e5 Give focus the inspector's text input when opening the window.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-17 02:21:17 +00:00
Rene Gollent
7a574c6cbd Check that a source file is in fact available before attempting to use it to
generate a clipping name. Fixes #7704.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 22:53:55 +00:00
Rene Gollent
21e484aea9 * Add previous/next block navigation buttons.
* Fix a calculation error with respect to the last line of the block.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 22:45:40 +00:00
Michael Lotz
71b9d8cf3b Check for the (local) APIC feature on the CPU before moving on to SMP config and
APIC enumeration. As the local APIC is the basis for inter-CPU communication, we
can't do SMP when it's absent.
Fixes #7692, but indeed it makes no real sense for QEMU to provide the APIC info
in the MP and ACPI tables (and actually emulate the hardware) when it disables
the APIC support flag at the same time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 22:36:22 +00:00
Rene Gollent
a5d0b3f501 Align the text section's highlight correctly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 22:08:18 +00:00
Rene Gollent
0215c110a5 Implement scrolling to the target address.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 21:57:41 +00:00
Rene Gollent
98a61309e7 * Re-enable 64-bit representation.
* Clean up various drawing issues in the memory view's rendering code that were
  causing scrolling artifacts.
* Fix stupid mistake whereby the data being visualized was in fact from the
  Debugger's address space, and not the target team's. This would likely also
  have caused some crashes.
* Highlight the data pointed to by the current target address.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 20:55:20 +00:00
Philippe Houdoin
6a80f55b25 Small changes resting on my working copy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 18:07:57 +00:00
Philippe Houdoin
45667a941b No space was made for Hat(s) value(s) in variable_joystick.
Would explain why hat shown by StickIt was always static neutral...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 16:01:32 +00:00
Alexander von Gluck IV
ab29dee1ed A few style fixes, no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 15:24:08 +00:00
Alexander von Gluck IV
6604b1b623 * Break DAC code into sperate source file
* Implement assigning DAC A/B to crt
* Clean up mode change code
* Still some pixel clock wierdness


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 14:39:07 +00:00
Rene Gollent
2acfac81cd * Refactored MemoryView to be more flexible ; it can now show a configurable
choice of hexadecimal and/or character displays of the memory data, with
  different digit grouping sizes. Still needs some work but is basically
  functional.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 04:21:18 +00:00
Alexander von Gluck IV
f7f3828178 pass device pciid through to accelerant
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-16 03:10:17 +00:00
Axel Dörfler
ed55a28368 * The previous solution was needlessly complicated.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 21:07:49 +00:00
Axel Dörfler
535453d97d * Reset the passed string on failure for BeOS compatibility.
* Fixes #7701.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 21:02:31 +00:00
Axel Dörfler
6031eb572d * Send an initial message to handle the pending entries instead of waiting for
a whole second until the message runner kicks in.
* This should further reduce the time the mouse pointer sits uselessly on the
  screen.
* This is not a fix of #917, but makes it hopefully less annoying.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 20:51:32 +00:00
Axel Dörfler
2ca6c9f1e4 * Removed extra snooze() for debugging purposes when publishing a device; this
directly reduces the time the mouse cursor is visible but cannot be moved
  yet. Based on a patch by Adek336 as part of ticket #917.
* Decreased the republishing snooze about a second, too.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 20:33:31 +00:00
Oliver Tappe
8d22d5a76b * fix build of Debugger with gcc2
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 20:25:50 +00:00
Axel Dörfler
916c873ba3 * Solved #7038 a bit nicer by disabling the interface.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 20:12:24 +00:00
Axel Dörfler
4a3a7e3f28 * Don't show the separator if there aren't any devices.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 20:11:35 +00:00
Axel Dörfler
4b252842da * Removed as wordy as superfluous debug output prefix.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 19:29:51 +00:00
Axel Dörfler
59236b809b * Also mangle the name into the device class symbol - this should help with the
e1000 driver.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 18:24:51 +00:00
Alexander von Gluck IV
d1d65a79cb * malloc an array of pointers to hold active crt info, mode, limits, etc.
Plan to move gRegister into the crt struct at some point.
* Few style fixes
* Added function to probe edid of attached monitors and populate CRT info
* Disable VGA control modifications temporarly while I hammer out some issues.
* Fix radeon card model checks (bitwise & is not |)
* Finally fix? blanking start / end calculations using porch
* Use mask for setting sync polarity
* Add overscan (8 pixels is default?)
* Disable PLLSet/Power for the moment as it seems to muck things up.
* is_mode_supported now validates if a mode line is with the monitors
  h/v sync frequencies (how does is_mode_supported know what crt the os wants?)
* PLL Write/Read don't actually use the PLL Write/Read functions (thanks AMD!)
* Added better PLL legacy (r600-r610) support
* Consistantly give no DCCG on legacy cards.
* Tracing!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 18:22:06 +00:00
Ingo Weinhold
100541ec40 waitpid(): Fixed regression introduced with my signals changes: When WNOHANG was
specified the syscall error code B_WOULD_BLOCK would no longer be mapped to 0.
Fixes #7693.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 02:42:53 +00:00
Ingo Weinhold
5b0ecc5fd1 Make sure headers/build is in the include paths, so that the Haiku counterparts
most headers refer to can be found. Fixes the build under Haiku (ticket #7688).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 01:20:20 +00:00
Alexander von Gluck IV
b3ce8cd8ba small logic fix on my part, not properly handling usb drives with empty media. Potential fix to #7687
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 16:39:35 +00:00
Ingo Weinhold
38c1f44d70 load_image_internal(): Forgot to reserve room on the stack for the program
arguments and environment. Fixes failures to start programs in case the space
available through rounding to full page sizes wasn't sufficient.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 13:39:54 +00:00
Ingo Weinhold
9437559db1 * Added function team_init_exit_info_on_error() which initializes the team's
exit info with some generic status.
* team_create_thread_start(), common_thread_entry(): Initializes the team's
  exit info (if that's the main thread) before calling thread_exit(). Fixes
  #7686.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 13:04:31 +00:00
Ingo Weinhold
dc2b8faba2 exit_debugger(): Only try to release the semaphore when no one holds the
scheduler lock. Otherwise we may deadlock.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 12:48:06 +00:00
Ingo Weinhold
ec5cc81fa0 exit_debugger():
* Only try to cancel the a transfer, if sUseUSBKeyboard is set.
* Set the "_usbPipe" parameter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 12:46:40 +00:00
Ingo Weinhold
dc3ba981d4 Added try_acquire_spinlock().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 12:41:11 +00:00
Ingo Weinhold
4cc4f7bb18 * Added KMessage to libroot_build.
* libbe_build: Where possible we directly use the actual Haiku headers and
  sources, now. In the headers/build headers we just include the respective
  Haiku headers as needed. That still allows overrides where necessary. The
  intention is to make it easier to keep the build stuff in sync.
* Fixed a few printf() format and signed/unsigned comparison warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 11:42:49 +00:00
Ingo Weinhold
45ec6bf344 BResources::SetToImage(): Compile conditionally based on
HAIKU_TARGET_PLATFORM_HAIKU, so the file can also be compiled for the host
platform.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 11:29:08 +00:00
Ingo Weinhold
e76046d3f9 Use casts that are more portable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 11:27:24 +00:00
Ingo Weinhold
32a44923a6 * Use B_PRI* macros.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 11:26:43 +00:00
Ingo Weinhold
4bb026ea4b Missing header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42175 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 11:26:05 +00:00
Ingo Weinhold
54cf3a72ba Changed sReplyPortInUse type from long to int32, so it be used with
atomic_add() also on 64 bit architectures.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 11:25:37 +00:00
Ingo Weinhold
aa08883069 Use a more portable cast.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 11:23:48 +00:00
Stefano Ceccherini
4b2adaae5f Changed wrong help text
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 07:52:27 +00:00
Rene Gollent
436dbf26ae Fix off by one error that resulted in the first line of data being
rendered offscreen.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 03:46:57 +00:00
Rene Gollent
90624579a7 More cleanups. Scrolling draws correctly now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 03:33:10 +00:00
Rene Gollent
e445dd0ef7 Fix buffer size.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42169 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 02:37:59 +00:00
Rene Gollent
e99f2683ba Slight cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42168 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 02:36:20 +00:00
Rene Gollent
348e6deb98 * Move expression evaluation to the inspector window.
* Actually start rendering the memory data. Still has some drawing glitches
  when scrolling though, will look into those tomorrow. Also doesn't yet
  highlight the location which the target address actually points to within
  the block.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 02:28:55 +00:00
Ingo Weinhold
a928c3f001 operation <<(): Use the standard types [unsigned] long [long] instead of
[u]int32 and [u]int64 to avoid clashes with the int/unsigned int versions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 01:07:16 +00:00
Ingo Weinhold
07cadb8481 Make use of the UsePrivateBuildHeaders rule.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42164 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 00:51:52 +00:00
Michael Lotz
08c7202f8a * Add a termios member that stores the config across open/close cycles. This
allows the use of stty to configure the serial device and later using other
  commands with these settings still in place.
* Store incoming termios settings when they are set, restore the previous
  settings on open and apply the control modes to the device side as well.
* Only send the control to the system side tty cookie again. Doing it for both
  cookies was only done to configure the termios, which isn't necessary anymore.
* Remove fallbacks to c_{i|o}speed fields and always use c_cflag & CBAUD for the
  single speed setting we have.
* Remove some leftover control line state logic that doesn't apply anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 00:09:33 +00:00
Michael Lotz
75a4759d33 Since the c_ispeed and c_ospeed fields are marked unused, and since I don't see
how one could actually apply different speeds, make cf{set|get}{i|o}speed() use
the c_cflag field with the CBAUD mask instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 23:58:26 +00:00
Alexander von Gluck IV
aa2a6e33cb * Move to common MMIO function set to make card subsystem access easier
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 22:28:13 +00:00
Alexander von Gluck IV
d9e412b339 * Repair style issue using uintNN_t vs uintNN
* Make index numbering consistant (0-n vs 1-n)
* Add a little more tracing to PLLCalibrate because
  we were missing a failure situation


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 21:40:22 +00:00
Michael Lotz
77a5d93e96 * Remove the output thread again and write to the device in the write call. To
ensure that we don't block on the tty buffer, we chop up the data into blocks
  that are written into the tty and then the buffer is flushed to the device
  each time. This resolves the issue that a quick open/write/close would not
  actually send the data to the device as it would cancel the transfer before
  the output thread had a chance to run.
* Use the tty_close_cookie() call. Doing the close before waiting for the input
  thread ensures that it is woken up if it blocked on writing into the tty.
* Correct the type of the USB callback status and only try to clear a halt if
  the device was actually stalled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 21:33:55 +00:00
Michael Lotz
bd1aad8366 Add some more function return tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 20:46:42 +00:00
Michael Lotz
16c5a72847 * Seperate out the tty_close_cookie from tty_destory_cookie and make the former
available as a module function as well.
* Remove some unneeded resetting from tty_destroy_cookie.
* Move the public module functions to the public API section of the file and
  order them by their declaration order in the module info.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 20:44:22 +00:00
Ingo Weinhold
0a187107e7 arch_debug_serial_[try_]getchar(): Look at the line status we read a bit closer
before assuming we have data. If the I/O port isn't valid (e.g. because there
is no serial port) 0xff seems to be a typical value to read. In that case fail.
Fixes KDL input on machines without serial port -- kgetc() would always think
it read something from the serial port, never trying any other input.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 18:25:08 +00:00
Michael Lotz
224d969b1d * When determining the bit to be set for RTS/DTR there was a missing comparison
to op which would've caused a wrong line state to be set.
* Add some more allocation checks.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 17:54:59 +00:00
Ingo Weinhold
e823d4a6be Small refactoring: Moved serial port initialization to helper function.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 17:35:37 +00:00
Alexander von Gluck IV
a604c04965 * Small style fix to Calibration diff var and PLLCRTCGrab stored var
* Repair incorrect DCCG operation at end of PLLSet


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 14:46:52 +00:00
Alexander von Gluck IV
babb12ed0e forgot to remove this, doesn't make sense to power the PLL down on accelerant unload
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 04:19:22 +00:00
Alexander von Gluck IV
e7e76b29e8 * Define default PLL ranges
* Add crtid to register struct
* Disable VGA mode on FrameBuffer set (enables extended mode setting)
* Disable blanking calculations and setting more gracefully via if 0
* Add a *large* amount of code to Set/Calculate/Calibrate PLL
* Disable PLL on removal of accel.
* Remove junk comments on overscan
* Enable pixel clock limit pulling
* write32AtMask style cleanup
* Rename ReadMC to be more consistant
  (I need to adjust naming for these MMIO calls)
* Implement read/write MC. (so many hardcoded oneoffs AMD)
* Implement write32PLLAtMask MMIO call


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 04:07:42 +00:00
Michael Lotz
7c865cf94d usb_floppy is for the most part a copy of usb_disk and should probably be merged
into it again (adding generic CBI support). It is so much of a copy even that it
still claimed to have the original 3 support descriptors while in fact it only
has one. Since the memory beyond that one support descriptor was probably just
zeros, making them complete wildcards usb_support_descriptor wise, this lead to
every single USB device being handed to the usb_floppy device added hook.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 02:15:48 +00:00
Rene Gollent
804177aa7b Destroy memory block manager on shutdown.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42144 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 02:10:48 +00:00
Rene Gollent
689f750f2d Actually create the memory block manager in TeamDebugger, and add a menu item
allowing one to bring up the inspector. This gets us as far as successfully
retrieving memory data from the target team and passing it on to any listeners.
Right now there's not much to see though, as the memory view to visualize the
data is not yet implemented.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 02:09:12 +00:00
Ingo Weinhold
90ade5e298 * Added file_system_module_info::uninitialize() analogously to
partition_module_info::uninitialize().
* Implemented the hook for BFS.
* Implemented KFileSystem::Uninitialize().

Fixes failure to initialize a BFS initialized device with an intel partition
map.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 01:53:11 +00:00
Ingo Weinhold
0b7fe5cbe2 partition_module_info::uninitialize(): Added block size parameter for
convenience.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 01:38:03 +00:00
Ingo Weinhold
285f4cf441 * Added optional partition_module_info::uninitialize() hook. It is supposed to
destroy the partitioning system's on-disk structure.
* Adjusted the existing partitioning system implementations accordingly.
  Actually implemented the hook for the intel partitioning system.
* Added Uninitialize() method to KDiskSystem and KPartitioningSystem. The latter
  implements the method calling the new module hook.
* _user_uninitialize_partition(): Also let the disk system uninitialize the
  on-disk structure.

This fixes the failure to initialize a disk device with BFS, when it contains a
valid partition map with at least one partition.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 01:27:13 +00:00
Ingo Weinhold
f84387d6c4 _user_initialize_partition(): After performing the operation don't set the new
disk system, if the partition already has a disk system set. This can happen
when the disk system's initialization function is lazy and just lets the DDM
rescan the partition. In bad cases the previous disk system has a higher
priority than the new one and, if its on-disk structures have not been
destroyed, it will win the rescan. Not setting the disk system in such cases at
least leaves the partition object in a consistent state.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 00:35:49 +00:00
Ingo Weinhold
ec623acad8 Removed weird debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 00:21:30 +00:00
Alexandre Deckner
94af9087b0 * Fix #6548. Don't initially Hide() if already hidden, otherwise the showlevel
would never get a chance be visible again.

When instanciated from an archive, a BDragger restores its
BView::fShowLevel and thus can already be hidden if archived while hidden.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 00:12:43 +00:00
Ingo Weinhold
e53a1e0f94 Removed unnecessary (and broken) hack.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 00:02:18 +00:00
Ingo Weinhold
6436e4676f MainWindow::_UpdateMenus():
* Don't fall back to the disk device, if no partition was selected. No idea why
  that was done. It led to operations (like initialize) being enabled that
  would fail, if invoked.
* Don't check CanInitialize() on the selected partition with its current disk
  system to determine whether to enable the initialization menu. No idea why
  that was done either. It led to the menu being disabled, when there was no
  reason for it.
* Also disable the initialization menu when no partition is selected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 00:00:20 +00:00
Ingo Weinhold
5e78920c12 * Added platform_debug_get_log_buffer() which returns the debug log buffer and
its size.
* Added "Display current boot loader log" item to the "Debug Options" boot
  loader menu. It displays what the boot loader has logged so far. Might be
  interesting for early boot issues when serial debugging is not possible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 23:31:57 +00:00
Rene Gollent
73df2f2086 * Add validation of the RSDP checksums.
* If we detect ACPI 2.0 or higher, the spec says we should use the XSDT rather
  than the RSDT. Attempt to do so, falling back to the RSDT if the former fails
  to be mapped/validated.
* Refactored acpi_find_table into a templated version to account for the fact
  that the XSDT exports different pointer widths for its links to other tables
  than the RSDT.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 22:01:43 +00:00
Rene Gollent
62e1d169f8 * TeamMemoryBlock: Now stores whether or not the block it represents is writable.
* RetrieveMemoryBlockJob: Make use of get_memory_properties() to retrieve the
  block's protection bits and mark it appropriately.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 20:51:27 +00:00
Michael Lotz
051cb22a2a Add serial_io, a simplistic BSerialPort based command line tool that prints what
it reads from the specified port and writes what gets input on stdin. It
currently hardcodes the basic setup of the serial port.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 20:40:33 +00:00
Rene Gollent
36dc99a323 Add private get_memory_properties() syscall which allows one to retrieve the
address protection bits as well as the wiring flags for an arbitrary address
in a team's address space. Will be used in the debugger for the purposes
of the memory inspector/editor, in order to determine whether it can in fact
allow editing for the currently inspected address range.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 20:17:14 +00:00
Ingo Weinhold
8bcc50c336 * Added arch_debug_blue_screen_try_getchar() and arch_debug_serial_try_getchar()
which don't wait for a character, but return -1 when no character is
  available ATM. Implemented correctly for x86 only.
* Changed the semantics of the debugger_module_info::debugger_getchar() hook.
  It is supposed to return immediately now.
* Adjusted usb_keyboard accordingly. Hacked UHCI's debug_process_transfer() to
  achieve that. It does now start, check, or cancel a transfer. Split
  UHCI::ProcessDebugTransfer() into StartDebugTransfer(), and
  CheckDebugTransfer() accordingly, and also added a CancelDebugTransfer().
  The latter seems to have issues. Michael, please have a look. I have no clue
  what I'm doing. :-)
* Adjusted kgetc() to poll all possible inputs using the new
  functions/semantics. This allows to use any input (USB, PS/2, serial) in KDL.
* Removed the no longer needed "serial_input" command.
* read_line(): Also support 0x7f as backspace code. That's what xterm sends.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 17:15:42 +00:00
Axel Dörfler
21d6b8e2c7 * Let checkfs collect stats of how the data streams are used.
* Would be nice to only show this when an extra argument had been passed to
  checkfs, but I'm afraid the API is somewhat limited, not to say pretty much
  unusable for the task.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 15:24:54 +00:00
Ingo Weinhold
b23ab34f66 I accidentally committed r42122 and r42123 to the signals branch. Merged into
trunk. The interesting part of r42122 was already fixed in the trunk, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 14:53:02 +00:00
Rene Gollent
2a55b919c3 Revert r42120.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 11:24:02 +00:00
Rene Gollent
b52c7c5943 Remove unnecessary calculations from BListView::ScrollToSelection(). At least I
see no useful purpose to the distinction made here.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42120 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 02:27:17 +00:00
Rene Gollent
c4b692da1a Revert r42105. The rsdt_length field on the rsdp structure we have declared is
actually misleading, since it specifies the length of the xsdt rather than the rsdt. Furthermore, it is only available if the BIOS reports ACPI version 2.0 or greater. Since we don't currently support the XSDT, we can't rely on that field and have to resort to the previous approach of mapping the RSDT header in order to determine the length of the RSDT itself.

Also add validation of the RSDT's checksum so we don't get tripped up by BIOS's with broken tables.

Should fix boot problems that were introduced by r42105.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 01:56:29 +00:00
Ingo Weinhold
24df65921b Merged signals-merge branch into trunk with the following changes:
* Reorganized the kernel locking related to threads and teams.
* We now discriminate correctly between process and thread signals. Signal
  handlers have been moved to teams. Fixes #5679.
* Implemented real-time signal support, including signal queuing, SA_SIGINFO
  support, sigqueue(), sigwaitinfo(), sigtimedwait(), waitid(), and the addition
  of the real-time signal range. Closes #1935 and #2695.
* Gave SIGBUS a separate signal number. Fixes #6704.
* Implemented <time.h> clock and timer support, and fixed/completed alarm() and
  [set]itimer(). Closes #5682.
* Implemented support for thread cancellation. Closes #5686.
* Moved send_signal() from <signal.h> to <OS.h>. Fixes #7554.
* Lots over smaller more or less related changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 00:00:23 +00:00
anevilyak
ccd31b93f1 Remove mistakenly added extra line.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 21:09:53 +00:00
anevilyak
28ca7ae021 Since the time preflet is now layout-aware, scrolling the zone list to
the current time zone must be done after layouting has been done, else 
the view doesn't have a valid size to work with yet. Resolves #7681.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42106 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 20:51:27 +00:00
jackburton
14282c1e55 We already know the rsdt length in advance,
so map the whole table without freeing and remapping later


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42105 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 19:54:56 +00:00
anevilyak
4bcb62ee96 Applied patch by Jean-Loïc Charroud that reworks the anyboot MBR to fix boot
problems on various systems. Resolves #3441. Thanks!

+alpha3



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42104 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 19:14:49 +00:00
anevilyak
6e70e32dec If we found a header, but it wasn't the one we were looking for, reset the header ptr to NULL after unmapping. Otherwise a bogus header pointer was potentially returned, leading to an invalid mem access. Fixes boot problems on my Athlon following recent ACPI changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 18:38:15 +00:00
humdinger
a2ac370037 Fixed a copy&paste error spotted by korli. Thanks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 15:54:41 +00:00
leavengood
a2a9adafa2 Change value of constant to better reflect the name. It had a different name
when I first added it to the code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 14:11:30 +00:00
anevilyak
448068fcce Fix incorrect ref count comparison spotted by Ingo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 14:07:55 +00:00
leavengood
5fb0d3a67a Add some padding to the time zone display.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 14:03:15 +00:00
leavengood
d2d65a82c8 Fix #7672 by applying humdinger's patch then adding more:
The server name is checked while typing and if it is not valid the text is made
red. Invalid entries cannot be added to the list.

Also made the server add message be the invoking message so that the enter key
works to add a server.

After adding a valid server the text is cleared.

Valid servers names are alpha-numeric with periods, dashes and underscores.
Could need some things added but that should cover 99% of the cases.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 14:01:03 +00:00
Rene Gollent
fca88f7b78 Fix minor oversight in previous commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42094 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 01:02:22 +00:00
Rene Gollent
c1ae7caf60 * Modify LocatableEntry and Domain to use a similar strategy as
TeamMemoryBlockManager to avert a race condition where an entry
  could be acquired while another thread was about to delete it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 01:00:25 +00:00
Ingo Weinhold
2e8aa19c63 * The boot loader does now set up an IDT that allows it to catch processor
exceptions (page faults and the like). The handler dumps possibly interesting
  information (registers, a (numerical) stack trace) to the serial output, and,
  if possible, also to the screen. That should help debugging boot loader
  crashes.
* For the IDT the boot loader sets up for the kernel the descriptors are set up
  the same way, so until the kernel initializes the IDT itself (arch_init()) the
  facility is still in place and can thus catch very early kernel boot crashes.
  Unfortunately the on-screen output doesn't seem to work anymore at that point,
  so the output only goes to the serial port...
* ... and to the debug syslog -- dprintf() does now append it there after
  debug_cleanup() has been called. Seems to work fine in qemu, but when I tested
  it on real hardware the debug syslog was gone.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-11 00:08:42 +00:00
Rene Gollent
8c3c117201 Adjust ReleaseReference() to also return the previous ref count as
AcquireReference() now does, and adjust all callers that relied on the previous
return type.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 22:31:33 +00:00
Rene Gollent
d73d70971b * Various cleanups prompted by previous commit review:
- Introduce TeamMemoryBlockOwner to act as an interface for blocks to
	  remove themselves from the manager when they expire. Consequently remove
  	  TeamMemoryBlock's direct reference to the block manager.

	- Simplify GetBlock() to remove unnecessary recursion.

	- Store dead blocks in a doubly linked list instead of another hash table.

	- Minor style fixes.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 22:20:39 +00:00
Michael Lotz
36986acbbd * Finish the port to the new tty module. Back when I left off last time it was
only halfway finished. The way it is supposed to work is that there are two
  tty cookies, representing the system and the device side. Reads and writes
  coming from the system and going to the device are using the system cookie
  while reads and writes coming from the device use the device cookie.
* Move writing to the device into an output thread, similar to how reading from
  the device works. This isn't necessarily a good idea and might be moved back
  into the write hook again to ensure that writes can be made blocking. Right
  now if you just write and then close, the writes will most likely be canceled
  before every going out to the device.
* Removed the read and write lock mutex. They aren't necessary as the tty layer
  will serialize the reads and writes anyway.
* Made simply copying the data to the write buffer the default implementation of
  the OnWrite callback and removed the OnWrite in ACMDevice. The ProlificDevice
  didn't provide an OnWrite hook before, so it would've never written anything.
* Break out the baud index to speed mapping into an inline function. Since the
  defines might change in termios.h just adding an array is a bit fragile (it
  already missed one entry and would've been broken for certain speeds).

This should make usb_serial usable for some (most?) cases. I've tested this with
an Arduino board that uses an FTDI interface. As mentioned above, since writes
currently just write into the tty layer and don't wait for the data to be
flushed, and since close doesn't wait for the output buffers to be drained
either, a simple write and close (as in "echo a > /dev/ports/usb0") will in most
cases cancel the output before it is written to the device. I'm looking into
a few ways to fix that next.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 17:35:46 +00:00
Michael Lotz
5cc760197a Apply limits to the transfer lengths. At least in the case where a one byte FTDI
header is used that only has 6 bits of length info this would've previously
potentially overflowed depending on the input size.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 17:20:27 +00:00
Michael Lotz
f7868b8f1a * Print the speeds even though they are marked as not used (as the baud index
is inside the cflags) since stty for example sets them.
* Turn off debug output by default and fix a warning due to that.
* Some minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 17:18:06 +00:00
Michael Lotz
6e72f897f4 Remove the global lock and the documentation for it. It was specific to the tty
driver and doesn't apply to the generic module.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 17:12:51 +00:00
Joachim Seemer
9254b0c4df Applied localization patch by mt, removed About menu/window as we decided those are not needed with system software. Fixes #7656. Compiling, working cosmetics, I'd say +alpha.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 13:43:06 +00:00
Stefano Ceccherini
b047e41327 Map the whole table also in acpi_check_rsdt().
Also print the table revision, after the vendor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 12:59:14 +00:00
Stefano Ceccherini
fb764e7fda Map the whole table, and not just the header. Fix #7497 again (hopefully
correctly now)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 10:34:41 +00:00
Rene Gollent
3e3ce16f5e * Introduce TeamMemoryBlock[Manager]. These provide an interface to raw memory
page data of the target team.
* Jobs: Add RetrieveMemoryBlockJob which performs a background read of the
  target team's memory. Used by InspectRequested() to perform the actual work.
* TeamDebugger: Added InspectRequested() hooks to allow clients to ask for
  a memory read to be performed.
* Introduce InspectorWindow and MemoryView to form the basis of a memory inspector.
  As yet these are more or less stubs and not yet hooked in.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42080 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 01:58:39 +00:00
Rene Gollent
a99d0dd7b7 AcquireReference() now returns the previous ref count.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42079 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-10 01:55:12 +00:00
Stefano Ceccherini
ad12a198d7 Revert r42068 and r42069, since they didnt' make sense (but something's
obviously fishy)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 21:01:57 +00:00
Alex Wilson
813147df83 * Add new SetInsets() methods to BTwoDimensionalLayout, BSplitView
* Also add equivalent methods to the layout builders in LayoutBuilder.h
* BSplitView now calls BControlLook::ComposeSpacing(), instead of BSplitLayout
* part of #7447


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 20:58:52 +00:00
Axel Dörfler
cd511790d7 * Minor coding style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 19:52:49 +00:00
Rene Gollent
b697e03121 * Create and store a messenger to the team window at creation time. Use said messenger to correctly resolve the TODO previously attempted in r42066.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 19:39:26 +00:00
Rene Gollent
87aa57e88e Fix minor oversight in previous commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 19:32:14 +00:00
Rene Gollent
930a139d70 * LockTarget[WithTimeout()]: Detect potential race condition where the looper
is deleted/recreated in between retrieval and lock. Report failure if so. 



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 19:29:52 +00:00
Michael Lotz
4e1d68e994 Style cleanup, 80 char limit. No functional changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 19:00:37 +00:00
Jérôme Duval
173a47a5da revert r41986
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 18:15:35 +00:00
Stefano Ceccherini
0a3e6ddf63 Add a comment so this doesn't happen anymore
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 15:01:35 +00:00
Stefano Ceccherini
e282383b4e Map B_PAGE_SIZE, and not just acpi_description_header (was actually a
regression), since the tables are bigger than that.
Accessing unmapped memory was doing bad things on
XenServer.
Fixes ticket #7497.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 14:52:56 +00:00
Stefano Ceccherini
5cea82988c Missing default case
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 14:44:43 +00:00
Rene Gollent
163f1c9ad6 Resolve TODO.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-09 01:59:21 +00:00
Alexander von Gluck IV
5be4b532a8 * Put uint8 back to uint32 as per ML recommendations
* Begin using multi-architecture friendly formatting macros per ML
* Change uint32 snoozeTime to preferred bigtime_t per ML
* Thanks for the great feedback!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 22:10:59 +00:00
Alexander von Gluck IV
331ecb302c change to non-posix int introduced a small bug, sorry about that
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 19:27:39 +00:00
Alexander von Gluck IV
d1639f80d8 small change, use non-posix style int typedef
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42059 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 18:57:03 +00:00
Alexander von Gluck IV
ea9b910a26 * change overly large uint32 to uint8 as we only count to 12 max
* add additional tracing to usb_disk lun inquiry
* cd and other optical disk devices can take some time to spin up
  when plugged. Now we give them some time to do so to ensure we
  can detect the media type properly if there is a cd in the drive.
  Things non-mechanical (flash drives) will continue almost immediately
  as there is no spin up time. The more attempts, the longer the wait.
  We now try 7 times (28 seconds total), my modern usb cdrom takes
  about 6 (21 seconds) of those cycles to be ready on power up and 4
  (10 seconds) on media change while powered up.
* tested with usb media and cd media.  Doesn't introduce any visible
  delay to the user.
* the write protected status in lun is now correct for my usb cd device
  on plug (it wasn't previously)
* still seeing it though as read/write. Looking at this now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 18:45:22 +00:00
Axel Dörfler
5cb190eda2 * Remove the entry from the entry cache as well when removing a bad inode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 18:29:01 +00:00
Axel Dörfler
1342dbcbbc * Removed support for building on BeOS R5.
* Made MessageIO comply to our coding style.
* No other functional change (intended).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 17:22:51 +00:00
Alexander von Gluck IV
ba1f2817df fix deprecated non-const char
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42048 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 03:50:26 +00:00
Alexander von Gluck IV
36e54f3a44 fix gcc4 warning on missing parentheses on &
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 03:41:48 +00:00
Alexander von Gluck IV
ca3d3619b6 correct cookie pointers to match filesystem operations; new to new.h; fix parameters of ramfs_read_vnode
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 03:35:23 +00:00
Alexander von Gluck IV
39313f2227 begin reorganizing ramfs callback parameters to match new filesystem driver standard; correct incorrect style fix as per Ingo; correct layout of fs operation mapping struct
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 03:13:59 +00:00
Alexander von Gluck IV
6305a11cd4 tweak the last of the nodes; break apart old style file_system_module_info; add fVolume to Volume to replicate bfs style
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 02:25:42 +00:00
Alexander von Gluck IV
84a474186f change legacy fs_cookie to void**; tweak a few node function parameters
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42038 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 00:58:50 +00:00
Alexander von Gluck IV
f76a033d04 first round of style cleanup on ramfs driver; change node _dir to pointer in ramfs_lookup function
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42036 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 00:42:51 +00:00
Michael Lotz
1b7d2a5498 Add hat support to the JoystickProtocolHandler. Completely untested for lack of
hardware though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42035 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 00:27:31 +00:00
Michael Lotz
9028fd53bd Add HIDReportItem::ScaledRangeData() that scales the data into a pariticular
range.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42033 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 00:26:04 +00:00
Alexander von Gluck IV
32aef194f4 remove cpp.h and cpp.cpp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-08 00:10:03 +00:00
Alex Wilson
6648dd3cf1 * Add new spacing/inset constants for the layout API. For now, leave B_USE_DEFAULT_SPACING, but this will go soon.
* Rename BControlLook::ComposeItemSpacing() to ComposeSpacing(), and extend it to handle the new constants.
* Adjust users of BControlLook::ComposeItemSpacing() accordingly.
* part of #7447


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42025 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 20:40:56 +00:00
Ryan Leavengood
693ecccc82 Make the Installer status view a little wider by default and also resize it's
height if needed. This should prevent any text from being cut off (though to be
fair it is possible to resize the window horizontally to see any cut off text.)

Fixes #5882.

+alpha3


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42022 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 19:37:47 +00:00
Michael Lotz
7802e2dd2c Get the HID descriptor from the already retrieved configuration info instead of
always calling the device and requesting it. If no HID descriptor is found in
the configuration we fall back to retrieving it manually and if that fails we
fall back to a dummy report descriptor length. In the most usual case this will
save one unnecessary USB control request.

Incidentally this also fixes the absolute pointing device under VirtualBox. VBox
stalled the retrieval of the HID descriptor. That alone wasn't so problematic as
in this case we just fell back to the dummy report descriptor length which
would've been large enough. But VBox also times out the next request after the
stall, which in this case was the retrieval of the report descriptor, hence no
HIDDevice could be created.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 18:17:08 +00:00
Alexander von Gluck IV
8a480e5d69 undo accidental change to cpp.cpp in r42016
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 18:09:12 +00:00
Ryan Leavengood
955ffec296 Revert the old change r36762 which added a small offset to tracker right click
menus since it is no longer needed after r40132/r40142. Thanks diver for the
reminder.

#5809 can finally be closed again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 18:08:35 +00:00
Alexander von Gluck IV
3de080c186 change format of fs_volume to match current kernel filesystem interface
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 18:07:25 +00:00
Ingo Weinhold
202706381e * Added TODOs where IsDataPending() is called incorrectly. Since it has stupid
semantics, I'd recommend introducing an _IsDataPending() with sane semantics
  and use that.
* IsDataPending() Added TODO regarding possible overflow.
* SetTimeout(): Added TODO regarding consistency.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 16:35:49 +00:00
Ingo Weinhold
ace7983115 Automatic whitespace cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 16:20:18 +00:00
Stephan Aßmus
e750d35cbf Applied patch by Pete Goodeve from ticket #7182. It improves
keyboard navigation/tracking of BMenus and BMenuBars, although
many issues remain.
Should not yet go into alpha, since there is one issue which
I am not sure if it's not a regression. The issue is that
invoking a menu item with Enter for the first time seems to
have no effect, while invoking it subsequently works as
expected. I don't know, yet, if that's a regression of this patch.
In any case, it's better than before, thanks, Pete!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 12:46:00 +00:00
Michael Lotz
7b03963e8a * Add a quirky device entry for XBOX 360 controllers.
* As they don't claim to be HID, they don't provide a report descriptor either,
  so we build one. The built descriptor is similar to the one found in FreeBSD
  for the same class of devices. Might fix/help #7649, for lack of hardware I
  can't test this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 00:35:31 +00:00
Michael Lotz
4ca60b965f Move the quirky device detection out of the HIDDevice constructor and into the
usb_hid_device_added hook so that we can actually detect non-HID devices at all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-07 00:25:58 +00:00
Michael Lotz
575517e617 * Remove the report ID argument of HIDWriter::DefineInput{Data|Paddding} to
allow for creating descriptors that don't use report IDs at all.
* Adjust sixaxis_build_descriptor and set the global report ID once at the
  beginning instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 23:54:01 +00:00
Michael Lotz
c67c6b5300 * Add device class, subclass and protocol to the quirky device structure.
* Add these to the usb_support_descriptor when adding from the quirky devices.
* Extend the SIXAXIS comment a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 23:48:28 +00:00
Michael Lotz
cac918bed0 Add devices we have explicit quirky device support for to the support
descriptor. This allows us to support devices that aren't strictly HID or only
provide vendor specific interfaces by constructing report descriptors for their
data format.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41992 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 22:47:22 +00:00
Jérôme Duval
b2dfb801a3 Second try at fixing #7572 (after r41842). Please review.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 22:23:44 +00:00
Axel Dörfler
a779d2cbd6 * Reverted accidental Jamfile change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 20:37:43 +00:00
Axel Dörfler
5ff090465d * ServerMemoryAllocator::RemoveArea() never removed the deleted mapping from
the list.
* Might even help with #7632.
+alpha


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 20:34:52 +00:00
Jérôme Duval
dae8628f1b .c => .cpp, build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 19:52:16 +00:00
Jérôme Duval
ae67ffbd06 * style cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 18:50:53 +00:00
Ryan Leavengood
f1574c746c Update the Deskbar date tooltip properly. Previously it was not updated when
the date actually changed at midnight or if the date was changed in the Time
preferences and probably other cases.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41959 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 05:02:21 +00:00
Ryan Leavengood
650adfd315 Change the label for "Clock set to:" to "Hardware clock set to:" since that is
what this setting represents. Also added a fairly long explanatory tool tip.
Sorry translators! ;)

Fixes #5264.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 03:47:01 +00:00
Ryan Leavengood
8c333297c1 Apply another patch from Hamish from ticket #2412 which adds more localization
and removes unneeded whitespace. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 03:03:53 +00:00
Rene Gollent
b184abda90 Fix gcc4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41954 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 02:29:48 +00:00
Michael Lotz
f7a566feb7 Simplify hid_decode using the new HIDParser::PrintToStream() which generates the
same output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 00:50:23 +00:00
Michael Lotz
bc64bf6ab4 Add support for absolute pointing devices. Supported are mice/pointers with
absolute coordinates (qemu/kvm -usbdevice tablet) and various digitizers. If a
tablet-like usage is determined the MouseProtocolHandler publishes to
input/tablet instead of input/mouse and reports its info in a tablet_movement
structure instead of a mouse_movement structure, allowing for absolute
coordinates. Note that right now only the absolute coordinates are used, the
other tablet specific inputs (eraser, pressure, tilt and contact) aren't yet
filled in. I will add these as a second step.
I've only tested this with kvm where this makes the "seamless" mouse integration
work and therefore fixes #5989. Note that QEMU for BeOS/Haiku doesn't support
that mode (patch pending on my side) and will lock the pointer into the upper
left corner if -usbdevice tablet is used (whereas it previously just did
nothing).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-06 00:10:56 +00:00
Ryan Leavengood
365839fb2d Apply patches from Humdinger and mt (with some overlap) which adds localization
to the Network time tab and makes the layout use more standard spacing.

Also changed the name of the Synchronize button after a sync to Synchronize again.

Fixes #7642.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 23:55:41 +00:00
Michael Lotz
6eabc83386 Add HIDReportItem::ScaledFloatData() which scales the data into a float range
from 0.0 to 1.0.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 23:53:04 +00:00
Michael Lotz
21f237c0af Add the tablet input_server device add-on directory to the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 23:17:01 +00:00
Michael Lotz
1c1f322ec1 Replace the TabletInputDevice by a MouseInputDevice based reimplementation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 19:15:43 +00:00
Michael Lotz
fdad31e6a5 Small cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 19:09:04 +00:00
Fredrik Modeen
b9bac11908 remove unused code the em driver are in e1000
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 18:25:06 +00:00
Joachim Seemer
3c018b5f64 Added missing localization macros.+alpha
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 17:56:25 +00:00
Fredrik Modeen
2d3e6927ca Reverting so I can work on it without disturbing the GSoC project ;)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 17:30:40 +00:00
Rene Gollent
d39c94f224 Remove reference to no longer existing NetworkTime Jamfile.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 14:56:28 +00:00
Alexandre Deckner
6009abf2bd * One more fix needed for right click dragging. Ignore right mouse up if a drag
or long click happened between the initial mouse down and the present mouse up.
Tried to avoid this solution by other means but wasn't working in a corner case,
at least it's clear what's the code is doing.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 13:42:27 +00:00
Ryan Leavengood
2530274ddc Missed this in my previous Time commit, hence the build break, sorry!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 06:09:55 +00:00
Joachim Seemer
4269010322 Fixed copy and paste error. Fixes #7640.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 04:58:53 +00:00
Ryan Leavengood
f4e32875a9 Remove the now obsolete NetworkTime application.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41931 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 02:38:05 +00:00
Ryan Leavengood
323ba9b7fb Apply Hamish Morrison's patch from #2412, with a few small style changes and
merging my fixes to ntp.cpp from the NetworkTime source.

This makes Time use the layout system as well as support updating time through
the network.

I tried very hard to catch and fix any new style violations, though in general
Hamish did quite well.

After some testing this could be put in Alpha3, but I won't mark it as such
yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 02:36:32 +00:00
Alexandre Deckner
f2068166ad * Fix regression spotted by Humdinger. Emulate right click dragging like it
used to work before, i.e right mouse button dragging works and the context
menu shows on mouse up if not dragged. I guess that at some point we'll rethink
all the mouse gestures we support and maybe simplify a bit, like dropping
long click support (as an emulated right button), and possibly
separating some features via user settings if needed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41929 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 01:55:52 +00:00
Michael Lotz
58e371f5a5 Make the HIDWriter available to hid_decode as well. It is not (yet) used there
however.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 00:41:40 +00:00
Michael Lotz
d3260cdb5f * Reimplement the descriptor patching mechanism for quirky devices by a function
to build a new descriptor using a HIDWriter. This way a completely new
  descriptor can be built on the fly or a fixed already patched blob can be
  written to the writer if desired.
* Implemented writing a new report descriptor for Sony SIXAXIS controllers. The
  descriptor also includes the pressure sensitive button states (exposed as 12
  axes) and the accelerometers/gyroscope (exposed as another 4 axes). While the
  motion sensing data is now available (and fun to look at), the usefulness is
  fairly limited, as the values are not scaled/transformed in any way. It might
  be possible to generically do such transformations using unit descriptions,
  but those are not implemented yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41925 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 00:40:19 +00:00
Michael Lotz
517851a173 Reimplement axis mapping and allow for more usages to be axes. This allows for
duplicate usages and simply adds more axes in that case. It also removes the
gaps that were previously put in place if there were higher numbered axes.
However, since the ordering of the axes now depends on the ordering inside the
HID collection, it is possible that some controllers won't have the X, Y and Z
axis mapped as the first three axes, which might confuse applications. I've not
encountered a report structure that would lead to such a situation yet, but then
again the amount of reports I was able to get hold of is fairly limited. If it
becomes a problem the mapping needs to be adjusted accordingly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 00:30:33 +00:00
Michael Lotz
9aec639d12 Add a PrintToStream() method to HIDParser that prints the resulting reports and
the root collection.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 00:12:15 +00:00
Michael Lotz
0e37c8a9fc Implement a HIDWriter that provides a high and lower level interface for writing
report descriptors. These descriptors aren't optimized for efficiency (the
writer doesn't attempt to avoid writing unneeded global items for example) but
they will only serve as input for the HIDParser that parses them correctly
regardless.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-05 00:10:07 +00:00
Joachim Seemer
63208ae886 Made the first column a bit wider,because it always truncated the Vision notification... Also changed the bit weird spacing to be a uniform DefaultItemSpacing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41910 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-04 18:37:04 +00:00
Siarzhuk Zharski
0d97cc65ed An Intel PHYs MII module added to ipro100 driver to fix "No Link" status issues.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-04 14:09:24 +00:00
Michael Lotz
6b9615d068 * Keep an open count in the JoystickProtocolHandler.
* Only cancel the update thread if the last open instance is closed. This fixes
  that other applications using the same joystick would stop getting updated
  values as soon as one application was closed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-04 13:51:30 +00:00
Ingo Weinhold
dfc8551aad open_executable(): Changed search order according to the ABI specs. DT_RPATH
is now searched before the LIBRARY_PATH/ADDON_PATH. Fixes #7638.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-04 13:28:31 +00:00
Michael Lotz
6e53f9a990 * Make the quirky device mechanism a bit more useful by allowing an init
function that is triggered before the protocol handlers are added.
* Use the quirky device mechanism to support the Sony SIXAXIS controller (the
  PS3 one). It requires a specific get_report to become operational. Note that
  you still have to push the PS button to enable it after plugging in. Note also
  that only the two analog sticks are reported as axis, the analog values of the
  buttons as well as the motion sensors aren't described by the HID descriptor
  and therefore aren't accessible. The digital button states (on/off only) work
  however. A fixed descriptor could possibly be crafted to support the missing
  features later on though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-04 12:47:02 +00:00
Michael Pfeiffer
84cb679caa Use layout API
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-04 08:18:28 +00:00
Michael Lotz
e36050e83d Set the debug keyboard info for the kernel debugger when initializing keyboard
handlers. A full sized keyboard is assumed when LEDs are found and those are
preferred then. This makes USB keyboards work (at least those that worked
by voluntarily entering KDL before, i.e. those that are hooked up to UHCI root
ports) also when entering KDL by means of a panic. The first (few) keys are
swallowed though, but that's certainly better than it not working at all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 23:24:58 +00:00
Alexander von Gluck IV
93344365ca few small fixes to get ramfs slightly closer to compiling again; <new> is for you; add parentheses to avoid gcc warnings
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 23:03:10 +00:00
Rene Gollent
eab06f5f40 Keyboard and Tablet were likewise using the aforementioned ioctls incorrectly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 22:23:10 +00:00
Axel Dörfler
baf8979f50 * Improved FLV description.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41895 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 22:16:12 +00:00
Rene Gollent
308e87fc11 The ioctl for reading mouse parameters was missing the structure size. This would cause it to randomly fail and exit the loop, resulting in the mouse going unresponsive.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 22:12:06 +00:00
Michael Lotz
894a3ebe89 Specify that we support variable mode, which will cause drivers to switch to
that mode when they support it. Right now there is only usb_hid though. With
this commit controllers with an arbitrary number of axes, hats and buttons are
now supported by BJoystick and by the BJoystick <-> driver protocol as well as
by usb_hid (usb_hid doesn't yet have support for hats though).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 21:15:45 +00:00
Alexandre Deckner
596bb6891a * Finally rewrote the filthy, busy-looping, mouse tracking in Tracker.
The new asynchronous tracking doesn't lock the view and makes desktop 
replicants happy while clicking and dragging around. Fixes #880, #7241 
and certainly other tickets, that i will revisit, about refresh locks 
on the desktop or mouse related bugs. Based on a reusable MessageFilter and the 
recent B_MOUSE_IDLE message. Some parts are ported from the old code
and could use further simplification.

There should be no intentional user fonctional change, except: 
- slightly bigger threshold radius, shorter duration thresholds
 (= 1.0 x the system-wide doubleclick setting)
- not reimplemented: quickening threshold when holding shift while dragging
 a pose over a destination pose.

Some parts are ported from the old code and could use further simplification.
There is one known minor regression with autoscrolling while 
rect-selecting but that will be better fixed with some changes to the 
autoscroll code. Will address that ASAP. As for the unknown regressions, 
please test :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41892 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 21:12:14 +00:00
Michael Lotz
233d1dc479 Implement variable joystick mode in the JoystickProtocolHandler. It supports
both, variable and extended joystick mode, using the same mechanism of mimicing
the extended_joystick structure with the variable one if required. The mode
used depends on the support flag coming in from BJoystick (currently off), so
with this commit the behaviour doesn't change. I'm going to flip that switch
next though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 21:11:38 +00:00
Axel Dörfler
3f953a72ff * Fixed missing initialization of fIsVesa, which should fix #7588.
+alpha


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 21:06:08 +00:00
Michael Lotz
e0f0271ae6 Use the appropriate initialize*() method instead of setting up the structure
manually.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 20:55:14 +00:00
Axel Dörfler
497beb0e26 * Fixed build, and therefore finally fixes #6317 again :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 20:38:38 +00:00
Michael Lotz
6e0cca2f96 * Remove the JoystickPrivate.h again and move the variable_joystick structure
into joystick_driver.h as it is convenient to have also on the driver side.
* Added comments explaining the data structure and use case of the structure.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 19:48:16 +00:00
Michael Lotz
ab1763688f * Replace the fixed size extended_joystick structure with a variably sized one
inside BJoystick.
* Add joystick_module_info flag to communicate support for variably sized reads.
* The variably sized data structure is set up to describe either the actual
  amount of data, when variably sized reads are supported by the driver, or it
  is set up so that it exactly matches the data layout of the extended_joystick
  structure. This allows us to support both as input data, while only needing to
  care about a single format inside BJoystick. Convenience pointers allow the
  data to be retrieved without additional overhead or extra logic.
* Add some sanity checks and ensure some boundaries when dealing reading data
  from the variably sized structure (as there might not be any buttons, hats,
  axis at all now).
* Ensure that the extended_joystick structure doesn't change in size due to
  padding by making it _PACKED (it wasn't padded though).

This is still supposed to work exactly as before. However, it opens up the
possibility to actually support arbitrary controllers with arbitrary axis, hat
and button counts. It therefore allows to actually deliver what the BJoystick
API was designed to handle all along.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 18:33:43 +00:00
Michael Lotz
660fe6bca9 * Make use of the new BJoystick::GetButtonValues() so any number of buttons can
be retrieved. I think the fixed layout will actually make it impossible to see
  anything beyond the 9th button however... The coding style of this app is,
  different, to say the least and I didn't really bother fixing it up right now,
  so the changes just mimic what's there.
* Some automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 15:55:50 +00:00
Michael Lotz
4b5bcc6684 Introduce a BJoystick::GetButtonValues() function that aligns with the other
Get*Values() functions but retrieves an arbitrary amount of button states using
a boolean array. This overcomes the 32 button limitation on the API side. Right
now the function does simply set the first 32 states from the button bitmap, as
the BJoystick to driver interface hasn't been adapted yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 15:40:31 +00:00
Stephan Aßmus
f3997b74b3 Applied patch by Pete Goodeve (with small coding style corrections)
which fixes vertical BSliders. (ticket #7548) Thanks a bunch!
+alpha


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 15:39:34 +00:00
Ingo Weinhold
9536ec0297 Reimplemented the gdb stub support for the 'g' command (read registers):
* Added an arch_debug_gdb_get_registers() interface that is supposed to provide
  the register values in the format expected by gdb and implemented it for x86.
* Reimplemented gdb_regreply() to use that. Also made it buffer overflow safe.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 15:35:10 +00:00
Michael Lotz
bb2420a474 Remove two unimplemented private functions. Since their signature was changed
already anyway (as compared to the original BeOS ones) this won't introduce any
missing symbols.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 13:26:22 +00:00
Michael Lotz
1147fabd67 Move function definitions to match their declaration order. Also move some
declarations to group them more logically. No functional changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 12:45:35 +00:00
Philippe Houdoin
fccb048765 Fixed gcc2 build (sorry).
Plus one forgotten small style fix.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 12:39:51 +00:00
Michael Lotz
2682d2fbdd * Return early when opening the device failed and just return B_ERROR as
documented in the BeBook. Sadly the success return is specified as "a positive
  integer", so I didn't change it to B_OK.
* We actually want non-blocking mode, so don't reset the O_NONBLOCK flag. It was
  ignored before anyway though, so this doesn't change anything.
* The legacy buttons 1 and 2 are in the pressed state when false, so initialize
  them to true instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 12:15:46 +00:00
Michael Lotz
30e429b4e4 I was mislead by the legacy joystick structure data type for the axis values
(which is uint32), but the legacy BJoystick axis values are just the same int16
as the ones in extended mode, so nothing has to be done besides assigning them.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 11:58:09 +00:00
Philippe Houdoin
1291377a6e Applied patch by Pete Goodeve, which adds multi-ports support to usb_midi driver.
Fixed some coding style and a few sanity checks where it make sense.

This driver code is not in a good shape and needs a wide cleanup.
unfortunatly, I still don't have any device to test with, so I can't do that anytime soon.
Intead of letting his patch collecting dust since 3 months (my bad),
I think it's better the multi-port support gets at least more exposure than
just Pete's hardware.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-03 10:30:03 +00:00
Alexander von Gluck IV
5d6dcc0685 remove AtomInit.. breaks radeon_hd build due to missing return and I have a while until I can implement it fully
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-02 23:05:24 +00:00
Alexander von Gluck IV
1dac446909 added scale update locking register; remove leftover intel hack thats not needed on Radeon; fix gcc4 warning on card model comparison
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41872 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-02 22:50:28 +00:00
Michael Lotz
464e0351d3 * Add a BJoystick::RescanDevices() public function. It allows the BJoystick
to be updated with newly plugged in devices without the need to recreate a
  BJoystick object.
* Do an initial (re-)scan on object creation instead of always scanning in
  CountDevices() and by extension GetDeviceName().
* This makes CountDevices() and GetDeviceName() stable with regards to the
  device list, so that an enumerating application doesn't suddenly get more/less
  devices than it might expect.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-02 15:10:31 +00:00
Michael Lotz
a00ac73989 Ensure that a GetDeviceName() call triggers a ScanDevices() as well, as it can
be called without calling CountDevices().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-02 13:04:14 +00:00
Michael Lotz
393ca9a124 Cleanup of the _BJoystickTweaker:
* Include sorting, header style, macro naming, variable naming, spacing, ...
* Some simplifications, early returns and the like.
* The device name list items were allocated with new but deleted with free. The
  whole private BJoystick list being modified by a friend class is dubious
  though and should be reworked. Ideally node monitoring would be implemented
  so that the list can be re-populated on demand instead of scanning through
  every time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-02 12:42:18 +00:00
Philippe Houdoin
258cffcde2 Fix gcc4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-02 08:13:31 +00:00
Michael Lotz
5052c5b678 Make adjustments to the JoystickProtocolHandler so that it works in accordance
with the BJoystick requirements:

* Make the Read() non-blocking. This is required as BJoystick is a polling
  interface. A single current state is used that is updated by a separate thread
  on report arrival. The thread is spawned as soon as the ProtocolHandler is
  opened for the first time (and quit at the first wait return after the
  ProtocolHandler is closed). With this we can simply return the current state
  on read.
* Remove the ring buffer as it was not needed in the first place. This also
  happens to solve the problem of sharing a JoystickProtocolHandler. Before,
  concurrent reads would queue up the same result multiple times in the ring
  buffer and then return stale data on the next update.

Solves most of #7629.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-02 00:56:18 +00:00
Michael Lotz
23249681ab Since we never actually read more than one mouse_movement at a time and we only
ever wait for reports on demand, there's no need for buffering at all.
This removes some unnecessary copying and ring buffer overhead, the ring buffer
will now in fact not be created at all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-01 23:34:03 +00:00
Ryan Leavengood
4787582ad1 Add zuMi's Shortcuts icon. Thanks for the suggestion diver.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41863 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-01 21:37:34 +00:00
Alexander von Gluck IV
eb1b3e422f implement AtomBios CailRead/WriteFBData callbacks
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-01 18:34:13 +00:00
Alexander von Gluck IV
3fcaf0d61c remove unneeded orphan function declaration for AllocateFB
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-01 14:55:40 +00:00
Alexander von Gluck IV
057f5d1d50 GCC2 build fixes on radeon_hd driver
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-01 14:39:15 +00:00
Joachim Seemer
5719d5c9d6 Added LanguageFlags.rdef with the Esperanto flag data. Now Axel can play with it, see #7614. Thanks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41854 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-31 17:12:10 +00:00
Joachim Seemer
547a76feb5 Removed the Esperanto flag again from the rdef, as it's not country, as correctly pointed out by Axel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-31 15:45:41 +00:00
Michael Lotz
f202fdc6ed * Add Jamfiles to allow building the stickit sample code. It allows testing of
the BJoystick API and joystick drivers.
* Also fix a few warnings in the code that were caused by using NULL instead of
  0 for BWindow/BView flags.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-31 02:33:28 +00:00
Michael Lotz
f46bc7f19e * Add a JoystickProtocolHandler to usb_hid that supports the BJoystick protocol.
This includes input scaling, so the resulting input ranges should always match
  the ones of the BJoystick data (hence no calibration should be required).
* It supports joysticks, gamepads and multi-axis controllers. I've only tested
  it with a Microsoft SideWinder Gamepad Pro so far, which now works as expected
  with stickit.
* Fixes #7429.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-31 02:21:05 +00:00
Michael Lotz
10a1a81d02 Also clear the sign extension when not changing signedness, as otherwise we'll
overwrite the values with the sign extension.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-31 02:09:10 +00:00
Michael Lotz
ef13dbda92 * Actually implement the relevant parts of BJoystick, i.e. reading the joystick
info and values. Inspired by and in parts based on the patch by caz_haiku in
  ticket #7429 (though rewritten completely due to the other changes). Thanks
  for the pointers!
* Clean up the mixup of internal joystick info and the one from
  joystick_driver.h so that BJoystick and the drivers talk about the same
  structures.
* Extensive coding style cleanup, simplifications, NULL checks, early returns,
  std::nothrow allocations, include sorting, argument naming, ... that kind of
  stuff.
* Added some TODO notes for remaining stuff.
* Automatic (and manual) whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-31 02:05:39 +00:00
Michael Lotz
6d551ee44f Also take the unsigned -> signed conversion into account.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 22:31:59 +00:00
Jérôme Duval
2925a66e80 revert r41842
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 22:17:56 +00:00
Clemens Zeidler
3b0616a46b Add more random into the SSL seed. Thanks Axel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41844 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 21:50:13 +00:00
Michael Lotz
d75a906285 Add a ScaledData() getter that scales the data to the desired bit width and
converts the signed-ness as specified.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41843 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 21:45:10 +00:00
Jérôme Duval
e761436dee Also enables the Initialize menu when the partition is also a device: Hopefully should fix #7572.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41842 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 21:42:35 +00:00
Clemens Zeidler
a4710c0d46 Move ServerConnection class from the IMAP add-on to libmail.so. This avoids to init SSL each time an IMAP add-on
is loaded. SMTP and POP still have this problem! TODO: use the ServerConnection class in these add-ons too.
This would also remove a lot of #ifdef SSL form these add-ons. Will not do it in the near future, feel free to fix it
...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41840 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 21:36:06 +00:00
Axel Dörfler
3feabba6d9 * Applied patch by idefix that fixes IDE. Nah, that fixes launching BootManager
when mimset didn't run yet. This obviously cleans up after a change that I
  did, thanks a lot!
* This closes bug #7595.
* Also took the opportunity to clean up a bit more in this regard, and fixed a
  few coding style violations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41837 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 21:17:10 +00:00
Michael Lotz
b5274bc4f6 Pass read and write calls to the protocol handlers as well, moving the default
of returning B_ERROR to the ProtocolHandler base class. Not used yet, but will
be used for the BJoystick <-> JoystickProtocolHandler.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41835 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 19:53:14 +00:00
Jérôme Duval
6ec9dff3f3 ppc build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41834 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 19:51:45 +00:00
Ingo Weinhold
ad63c6796c Improved debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41833 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 18:48:10 +00:00
Joachim Seemer
1838417186 Added flag for Esperanto. Updated CountryFlags.rdef. Thanks dejam for noticing. Fixes #7614.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41831 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 17:56:46 +00:00
Clemens Zeidler
b58ab52cd6 SSL should be thread safe (right?) but SSL_library_init function and SSL_load_error_strings are not, or they should be called only once...
Remove extra ssl lock, there is already one in ssl.
This fixes #7574. I have seen this or a similar bug before and it was quit reproduceable, now it seems to be fixed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41828 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 05:46:10 +00:00
Clemens Zeidler
4b4ae23e28 Workaround for #7575. There seems to be something fishy in the regex. Could somebody with experience in re_search check what
the real problem is?



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 04:16:31 +00:00
Clemens Zeidler
389f3fe159 Add a simple test just to check that the synchronous quit request does not crash.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-29 22:47:23 +00:00
Clemens Zeidler
f47952f723 If the looper is B_QUIT_REQUESTED synchronously. First quit and then send the reply message. Please check if this is the
correct semantics. I expected that the looper is dead when SendMessage returned. This should fix #7559 where the looper 
destructor has to be called before continuing the cleanup.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41821 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-29 22:43:50 +00:00
Clemens Zeidler
806c3afaf6 Fix test app build and adjust the app path to the jam output directory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41817 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-29 21:41:11 +00:00
Fredrik Modeen
981bdb5af9 Hope I fix more than I breake with this update of ipro1000
it's taken from freebsd driver e1000 r221505

This include alot of cards (including my HP)

I had to "remove" som parts. led was the easiest part. All code shoulc have haiku in them

The part below was perhaps needed but I could not fix the error that whas showing (located in if_em.c) aslo it works as is on my HP 8540.

static int
em_sysctl_reg_handler(SYSCTL_HANDLER_ARGS)
{
	struct adapter *adapter;
	u_int val;

	adapter = oidp->oid_arg1;
	val = E1000_READ_REG(&adapter->hw, oidp->oid_arg2);
	return (sysctl_handle_int(oidp, &val, 0, req));
}

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-29 19:27:05 +00:00
Axel Dörfler
105fd85c3a * Removed TypedGroupListModel - without GCC2's covariant return type handling,
it's not really worth the effort.
* Added missing libstdc++ to the build.
* This fixes the GCC4 build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41803 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-29 08:17:27 +00:00
Alexandre Deckner
d797e0629c * Return a zero width and empty destination string when there's no destination dir. Fixes #7462 +alpha3
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41801 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-29 01:05:18 +00:00
Michael Lotz
305aff3f78 * Changed the way how devices are enumerated and protocol handlers are added to
handle the different device classes. Handlers are now added based on the
  application collections that the HID descriptor describes instead of by
  enumerating the different report items inside the reports. This means that a
  device is now logically treated as a mouse when it comes with an application
  collection that designates it as a mouse, instead of when there is a report
  that contains an X and a Y axis. This resolves the conflicts that gamepads
  and joysticks were added as mice due to them containing such elements. This
  therefore fixes #4499 and opens up the way to properly handle other device
  types like joysticks (#7429), gamepads, tablets (#7354, #5989 and #7481) and
  so on. I'll work on gamepads/joysticks next and see where we stand for tablets
  later.
* Added a few enumeration functions to HIDCollection to support the above.
* Fix the root collection handling. A device doesn't describe a single root
  collection and then adds everything as a child. Instead it just has multiple
  collections on level 0. We account for that now by always creating an empty
  logical collection as the root collection where all the collections of the
  descriptor get added.
* Rename the {Mouse|Keyboard}Device.{cpp|h} to
  {Mouse|Keyboard}ProtocolHandler.{cpp|h} as that more clearly describes their
  purpose. These classes are protocol handlers, i.e. they handle the ioctl based
  mouse and keyboard protocol between the driver and the input_server add-ons.
* Change a lot of stuff to use references instead of pointers where it makes
  sense (not necessarily complete yet).

I've tested this successfully on a keyboard with extended keys, a combo device
with a keyboard with extended keys and a mouse, a mouse and a gamepad (that now
doesn't do anything anymore) and found no regressions. However, since there are
a lot of very varied ways how to describe such functions with HID, it's not too
unlikely that some more curiously described devices will now stop working. These
have to be handled case by case and their usages have to be added to the added
to the appropriate handlers (or new handlers have to be written). Please test
and create bug reports (preferrably including the report descriptor that is
written out to /tmp).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-28 19:59:02 +00:00
Alexander von Gluck IV
3035edeb39 add Radeon HD2600 PCIID, Thanks Benjamin A!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41792 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-28 16:29:16 +00:00
Clemens Zeidler
bef39d09af Make the app test suite partial compile again (gcc4). Commented out the cursor and message tests because I was not sure how to fix it. The UnitTester fails to load the addon, though. It can't get the symbol from the lib, any idea?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-28 07:16:21 +00:00
Axel Dörfler
48ae3e3808 * Followed Ingo's suggestion, and added a BWindow::Layout() method.
* Changed ShowImage to use that function.
+alpha in case Ingo gives his okay :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-27 22:21:59 +00:00
Alex Wilson
c67a3f98ab Shrink Media preflet main window by removing doubled spacing in one place, and using default spacing (11.0f) in place of a custom spacing (14.0f).
+alpha


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41781 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-27 21:51:39 +00:00
Jérôme Duval
3cd099e2d4 Patch from Jérôme Leveque: Work in progress: code cleanup (includes dos newlines and 80 chars by line)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-27 18:59:25 +00:00
Jérôme Duval
d61187a1f3 Patch from Pete Goodeve (ticket #7581): MIDI Pitchbend scaled wrongly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-27 18:29:07 +00:00
Axel Dörfler
abed26b20a * Removed the "Standard" from "Lithuanian (Standard)" - the name without any
suffix is the standard for all other keymaps but this one.
* As a side effect, this allows ReadOnlyBootPrompt to select the right keymap
  for Lithuanian as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41775 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-27 16:09:02 +00:00
Axel Dörfler
2fba0c20d1 * Now switches the keymap according to the language. If there is no matching
keymap, it falls back to US-International, as before.
+alpha


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41773 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-27 16:06:00 +00:00
Axel Dörfler
eaa910c505 * We obviously need to relayout manually, as it looks like the view is not
layouted correctly after the resize. This fixes bug #7577. Ingo, is this
  the desired behaviour of the layout engine, and if so, what's the rationale
  behind it?
* Removed extraneous FitToBounds() call in ShowImageView::SetHideIdlingCursor();
  it doesn't belong there.
+alpha


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41772 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-27 15:28:42 +00:00
Alexander von Gluck IV
27dde8e939 small style fix; no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41770 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-27 02:16:00 +00:00
Alexander von Gluck IV
217c0b1d48 Add surface address high handling; set primary and secondary surface frame buffer offset
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41769 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-27 02:14:54 +00:00
Axel Dörfler
fe80b89072 * Only overwrite the keymap label with "Custom" if there actually is no keymap
selected.
* This fixes #7553.
+alpha


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41762 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-26 18:21:58 +00:00
Michael Lotz
caa82f7074 * Don't try to check devices that are obviously not on PCI anymore.
* Fix a warning about pci_address::segment potentially being used uninitialized.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41760 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-26 18:05:50 +00:00
Michael Lotz
7ce4456927 * After reading the routing table(s), do another run through the PCI devices and
check if all of them are assigned with a routing entry. If not, as happens for
  PCI add-on cards that ACPI isn't aware of for example, infer the routing by
  calculating it from the PCI default routing and going up through the parents
  until a matching routing entry is found. Fixes #7520.
* This will also panic (for now) in case there remain unroutable devices and
  eventually will prevent the IO-APIC to be used in these cases.
* Enabled some debug output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41758 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-26 12:35:02 +00:00
Alexander von Gluck IV
5f6744a8cd * move all register calculation into init_registers to
keep things simple to troubleshoot
* use crt offset only on evergreen, else use AMD provided
  register locations
* init_registers(crtid) is called before making register calls
  to a monitor.
* init_registers supports 1-2 displays on r600-r700
* init_registers supports 1-6 displays on r800+ (AMD eyefinity)
* restore CardBlankSet function in a more simple form
  (still needs init_registers addition)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-26 04:51:57 +00:00
Axel Dörfler
dc3bd077cd * Early work in progress of toying around with the idea to show some useful
panels when touching the screen border with the mouse while holding down the
  CTRL key.
* Right now, a simple running applications list is shown on the top/bottom, and
  a list of the windows of the current app on the left/right edge which you can
  click to front.
* Imagine you could configure this to show various panels like a shelf, a
  query window, workspaces, recent files, favourite files, folder contents,
  have a clipboard for files, ...
* Just wanted to have it in SVN even if it's only barely useful right now - I
  would be glad to hear your opinions on this, and if it's worthwhile to
  continue working on this.
-alpha


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41754 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-25 23:19:15 +00:00
Alexander von Gluck IV
2cc7e38c93 temporarly disable screen blanking; setting V/H blank start/end is what was causing empty display, disabled for now; Hardware video mode setting is close!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41753 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-25 22:42:37 +00:00
Axel Dörfler
e78a1b6a6f * Reenabled flags via the new BLocaleRoster::GetFlagIconForLanguage() method.
+alpha (also for the previous commit)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41745 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-25 17:10:27 +00:00
Axel Dörfler
702526b17f * Added BLanguage::GetIcon(), and BLocaleRoster::GetFlagIconForLanguage(). The
former just calls the latter. Getting the flag for a language is pretty
  simplistic for now, but it won't return the wrong flag, just only a few known
  ones (should be enough for ReadOnlyBootPrompt, at least).
* Ordered methods in declaration order.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-25 17:09:30 +00:00
Axel Dörfler
e050c0c678 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-25 15:48:34 +00:00
Rene Gollent
e7d7b1e232 Add debug option to disable the on-screen debug output's paging by default, for
cases such as USB keyboards where the keyboard no longer functions once the 
kernel is entered and the USB stack initializes.

Implements #7561.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41736 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-25 02:56:46 +00:00
Ingo Weinhold
e5003582d1 Reverted r41727. Accidentally committed to wrong branch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-25 00:46:11 +00:00
Ingo Weinhold
38894ae9a8 Fixed check. sigset() is supposed to return the previous signal disposition,
respectively SIG_HOLD, if the signal was blocked.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-25 00:41:57 +00:00
Michael Lotz
cb80e931f6 * Turn around finding the routing table on a PCI bridge and checking for it to
actually be a bridge. We always want to check if the device at hand is a PCI
  bridge, because in that case we need to recurse further down. We recurse now
  even if there is no routing table found for the current bridge, since that
  doesn't mean that another bridge, further below, can't have a routing table
  again. Possibly fixes #7520.
* Fix the matching function to just check for function 0 to be present instead
  of classifying it. Previously if there happened to be a cardbus bridge on
  function 0 of a multi function device, the rest of the functions of the device
  would've been ignored because we returned early due to the unsupported bridge.
* Only hand down the current bus number when recursing as that makes it clearer
  what's going on instead of handing in a partially filled out pci_address
  structure and then filling in other parts inside the function.
* Commented out getting the segment number as we don't support it at all.
* Extended debug output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-25 00:11:33 +00:00
Alexander von Gluck IV
3be5e03652 * rename graphics_memory to frame_buffer. lets keep consistant
* pass mapped frame buffer area id to accelerant
* remove my temporary hacked together frame buffer memory mapping
* completely rely on PCI BAR for now for aperture size / location instead of
  R6XX_CONFIG_FB_BASE reg.
* Remove my temporary AllocateFB function.
* set grphPrimarySurfaceAddr to physical memory frame buffer location (offset 0)
* fix P/N sync setting.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41722 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-24 22:08:54 +00:00
Jérôme Duval
bccbe7a7b9 Patch from Pete with changes by myself (bug #7558): BMidiSynth destructor should delete be_synth.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-24 18:39:04 +00:00
Michael Lotz
35e8baa6b0 Fix typo in error output and a little automatic whitespace cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-24 17:01:35 +00:00
Rene Gollent
e26b9867f0 Build fix, removed one line too many.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-24 12:34:05 +00:00
Rene Gollent
5e3eb88b1c Cleanup: no need for parsing since the kernel settings will handle semicolon separated options directly. Thanks Axel!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41707 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-24 12:10:57 +00:00
Rene Gollent
8837310ce7 * Slightly alter the semantics of the input gathering function to take the
menu item it's associated with rather than an input string. This allows it
  to calculate the position to start the input at, as well as the correct
  line to place it on. The previous solution always put the input at the
  center line, which happened to be the right place by happy coincidence
  unless one also had the menu items for viewing/saving the debug syslog
  present.
* Implement input buffer scrolling, and consequently lift the previous size
  limit on user input (it is now only limited by the size of the passed in
  buffer).
* Implement parsing of the input buffer to allow it to handle comma-separated
  options. Thus, one can now input things like "disable_smp true, serial_debug_output false"
  and it will be handled properly.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41706 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-24 03:21:51 +00:00
Michael Lotz
c05a3fa6a7 We obviously need to mask off the interrupt threshold value before overwriting
it with our new setting. Otherwise we might end up with an illegal value as the
interrupt threshold which might inhibit interrupt generation alltogether
depending on the controller implementation. This was the case for the ATI/AMD
SBx00 chipsets. Therefore fixes #5551.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-23 21:53:12 +00:00
Michael Lotz
fe81732aca Tiny cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-23 21:48:40 +00:00
Michael Lotz
ce44796e34 Introduce simplistic poll mode for EHCI. If enabled a thread will run the
interrupt handler every millisecond so it can check for interrupts to handle.
While this is certainly not ideal, it allows EHCI to run (surprisingly well
even) on chipsets that experience interrupt routing issues.
It can be enabled with the safemode setting "ehci_polling on" that can either
be entered using the new advanced debug option entry in the bootloader and/or
in the kernel settings file.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-23 20:50:21 +00:00
Alex Wilson
9b2ea762db * Fix layout problem which appeared with the introduction of CollapsingLayouter. Basically, one of the layouts expected empty columns to act like glue, which is how they worked at the time. Now use BSpaceLayoutItem::CreateGlue() to get equivalent behaviour.
* Also do a very small bit of refactoring, to have MediaFileInfoView take better charge of its max size.
+alpha


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41686 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-23 18:27:29 +00:00
Michael Lotz
2c0d5258df Of course the PIC mask register is a _mask_ and the enabled interrupts are the
ones that aren't masked. This reversed the enabled interrupts and therefore
disabled the already installed ACPI SCI handler and wrongly enabled the other
interrupt pins instead on PIC to IO-APIC handover. Probably fixes #7525.
+r1alpha3


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-23 18:01:59 +00:00
Michael Lotz
f599932f82 * Simplify APIC writes.
* Add explicit volatile keyword.
* Minor variable name cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41684 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-23 15:02:05 +00:00
Michael Lotz
2ae3d5121c Switch to using the PIT in mode 0 (interrupt on 0) instead of mode 2 (rate
generator). There are chipsets (namely ATI/AMD SBx00) where mode 2 doesn't seem
to work (the counter isn't reloaded after the countdown has completed). Mode 0
has the same resolution as mode 2 and, as interrupts are disabled at this point
in booting, is otherwise equivalent as well. I've tested this on 5 machines
available to me and it doesn't seem to have any negative effect.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-23 14:51:42 +00:00