Commit Graph

39847 Commits

Author SHA1 Message Date
Siarzhuk Zharski
7f4deb4400 * Implemented PS2_CMD_RESEND command handlig;
* Workaround for touchpad reset timeouts on some HP/Compaq KBCs. Looks like such 
  KBC marks the mouse reset request (xFF) as correctly sent (by xFA answer) but 
  does not wait enough time for the answer from touchpad. So complete answer 
  finally contains xFE xAA x00 bytes. The workaround detects this xFE xAA answer
  and issues the RESEND (xFE) request to touchpad. This forces touchpad to resend
  the last packet of data (xAA x00) that can be processed normally by the host;

* Fix for handling passthrough_command() call. The parent device was disabled at
  start of processing command and was not re-enabled back in case any error return.
  This fixes the touchpad "pass-through" feature handling on the same HP/Compaq HW.
  This KBC has the "pass-through" capability marked ON but cannot handle it as
  currently implemented - there is no answer from corresponding port. The parent 
  device stay in disabled state after this;

* Fix ps2_dev_publish() for handling passthrough devices (parent_dev != NULL)
  This workaround postpone the publishing such device until the parent device
  finishes it's opening and set the PS2_ENABLED_FALG. It prevent from mixing 
  the Synaptics multi-command sequences from synaptics_open() and ps2_dev_publish()
  routines and failing both initializations;

Fixes #2867 #3594 #4315



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-26 19:38:26 +00:00
Rene Gollent
f225c7e944 BMessageValueNode now publishes a BMessageFieldNode child, which in turn
exposes child nodes for all the fields detected in the target BMessage.
Doesn't yet exposes the indices/values for each field though.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42324 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-26 18:35:56 +00:00
Siarzhuk Zharski
6b61d62e98 Suppress the keyboard and AUX interrupts during sending
PS/2 active multiplexing activation sequence. This prevent from
IRQ storm on some controllers. Fixes #7635.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-26 18:04:29 +00:00
Rene Gollent
9186e23d5a Rearrange _HandleSourceCodeChanged() a bit so it correctly handles updating
the current source path when changing frames in all cases.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-26 16:22:45 +00:00
Joachim Seemer
3d3a03c017 Updated catalogs from HTA.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-26 13:30:12 +00:00
Michael Lotz
14c345e147 * Revert r42319 as it introduces a race condition when entering the kernel
debugger. As sInDebugger is already > 0 when the first CPU enters KDL, code
  from other CPUs might see debug_debugger_running() == true already before they
  enter the debugger.
* Instead, move the sDebuggerOnCPU setting out of the debugger loop and hold the
  value until after calling exit_kernel_debugger() so that the exit hooks still
  see debug_debugger_running() == true.
* Also avoid calling exit_kernel_debugger() when we've been called recursively
  (previousCPU != -1). Previously the exit hooks would've been called and the
  debugger state reset erroneously. To balance the missing decrement of
  sInDebugger in that case we decrement sInDebugger in enter_kernel_debugger()
  also when detecting the recursion case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-26 00:06:52 +00:00
Michael Lotz
3214710036 Use sInDebugger instead of sDebuggerOnCPU to determine if the debugger is
running. The former has a broader scope and lasts until the debugger exit is
actually done whereas the latter is already reset when the inner loop is exited.
This fixes the issue Ingo saw where the USB physical memory manager wasn't able
to free resources used for the debug transfer. It has reserved debug memory that
it uses depending on debug_debugger_running() and was therefore confused when
it returned false when called from the kernel debugger module exit hook.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 22:48:38 +00:00
Rene Gollent
97c9b89bce Rework BMessageValueNode to find its needed addresses via member value locations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42318 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 20:48:54 +00:00
Jérôme Duval
aaebe6a96f merged changes from 8.2 FreeBSD release for ale, alc and ae drivers
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 11:26:35 +00:00
Jérôme Duval
c0535fa096 mii files from FreeBSD 8.2 with our diffs applied
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 11:24:56 +00:00
Jérôme Duval
ff35fe1fdf added some missing functions and definitions for FreeBSD 8.2
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 11:05:40 +00:00
Jérôme Duval
d474d44ab6 added some missing functions and definitions for FreeBSD 8.2
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 11:03:20 +00:00
Ryan Leavengood
281ad93ce7 Make the zoom "sticky" at 1.0 for about half a second when zooming with the mousewheel.
It might be a bit annoying, not sure yet.

Implements #7253.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 04:24:54 +00:00
Ryan Leavengood
0f06b3de2a Changing the order of function calls in SelectAll() causes the selection rect
size to show up correctly in the status bar.

Fixes #7710.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 03:24:25 +00:00
Clemens Zeidler
ccc37bbb77 Don't forget to unlock when there is no desktop listener for the message.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 02:46:15 +00:00
Scott McCreary
1dcae018bc Updated python to 2.6.7.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 02:08:27 +00:00
Ryan Leavengood
c0227dce5c In fullscreen mode, hide and show the toolbar based on the mouse's position,
not just any mouse movement. When the mouse reaches the top 15 pixels, show the
toolbar, otherwise hide it.

Implements #7735.

On a related note, the animation for toolbar showing and hiding which Stephan
implemented is really nice. We need more animation in Haiku!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 23:32:25 +00:00
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
Axel Dörfler
cefef1c371 * Header cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 18:22:02 +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
50a9a98edb Add the pcnet driver to the image and remove reference to the old vlance driver.
It seems to work fine in VirtualBox and makes the network card work that is
emulated by default. From the log it looks like Hugo actually ported/implemented
the driver under VMWare and it worked, so that it isn't in the image looks like
an oversight.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-24 15:37:51 +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
Jérôme Duval
6289e476a9 Updated gcc 4 native package to 4.5.3
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-23 18:04:28 +00:00
Scott McCreary
fe55cf20bd Updated curl to 7.21.7
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-23 17:15:55 +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
Rene Gollent
c158e82214 Remove bash completion from the image for now, since as currently implemented it breaks the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-21 18:12:58 +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
Michael Lotz
97184c6965 Tiny comment cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-21 12:35:50 +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