I just added a check in bmtphy_probe() as ENXIO is negative on Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28597 a95241bf-73f2-0310-859d-f6bbb57e9c96
sure that you can have an old style mouse without scroll wheel and one with attached at the
same time. For example, when I hot-plug my PS/2 mouse with wheel, the IBM trackpoint will
otherwise already use up the "PS/2 Mouse 1" name.
Unfortunately, hot-plugging the PS/2 mouse on my T60 docking station still does not work
quite right. The PS/2 driver detects everything correctly, the node monitoring works and I end
up with the correct device threads in the input_server. (The notebook is automatically removing
the touchpad and trackpoint devices in this event, which cannot be turned off in the BIOS.)
However, the mouse does not move. In the syslog, I see one message
"ps2: strange mouse data, x/y overflow, trying resync" after the the output from the add-on
manager in the input_server that it has added the new device. When I restart the input_server,
it works fine, even though the same devices are detected and polling threads are running.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28591 a95241bf-73f2-0310-859d-f6bbb57e9c96
functions private and moved them accordingly in the file.
* I forgot to initialize the BObjectList to own the items in
TouchpadInputDevice.
* Changed the methods that read and apply settings in all three addons to be
executed from the control threads only, which fixes race conditions.
* The success of opening a device is no longer checked in the Start() method
of the *Devices. Instead, the control thread checks the device before it
enters the polling loop and cleans up if there was an error. This fixes
non-running devices in the input_server because the PS/2 driver publishes
devices which is has not checked yet for other reasons. It is important,
however, to open() the devices in the Start() hook and not the control
thread, otherwise there are unwanted race conditions in case node monitoring
events are received more than once for the same device. That's the case
for some reason on one of my computers for the AT 0 keyboard.
TODO:
* Combine the Touchpad and Mouse device addon into one, it's almost the
same code except the Touchpad knows more settings and one more control
message.
* Refactor a common base class for Keyboard and Mouse device addon.
* Fix the mouse speed/acceleration. If the speed is lowered from the default
in the preflet, the mouse becomes almost unusable. To fix this, the same
trick should be used as I used in the touchpad kernel driver, which is to
sum up previous mouse moved fractional offsets.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28590 a95241bf-73f2-0310-859d-f6bbb57e9c96
generic page mapping mechanism. This should fix#2902 (will test in a minute).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28584 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Replaced debug_printf() invocations by a macro, which is set to
ktrace_printf() by default.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28581 a95241bf-73f2-0310-859d-f6bbb57e9c96
the per-root-image breadth-first sorted image array. Instead we have a
per-image hook function to resolve the symbols. The default function
uses the sLoadedImages list directly, which is breadth-first sorted
anyway. There's also a BeOS function for old-style symbol resolution
and one for add-ons, which lacks a proper implementation yet (just
uses old-style ATM).
* Made the dl*() functions POSIX compliant:
- dlopen() does no longer use load_add_on(), but loads the object as a
library. It also properly supports a NULL name, now -- the previous
"_APP_" work-around did only work, if this soname was set on the
program (unlikely for programs using this API).
- Implemented RTLD_{GLOBAL,LOCAL}.
- dlsym() looks up symbols properly now, i.e. not just in the given
image, but breadth-first for an actual image or in load order for
the global scope. It also supports the not-quite POSIX RTLD_DEFAULT
and RTLD_NEXT extensions. Our RTLD_NEXT finds more symbols than in
Linux (also in later dlopen()ed libraries), but that should be fine.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28568 a95241bf-73f2-0310-859d-f6bbb57e9c96
OpenFile() now returns early when the format is unsupported (don't add the document to recent documents, don't allow to save the document) (bug #3072)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28565 a95241bf-73f2-0310-859d-f6bbb57e9c96
class/namespace. Renamed the B_GRADIENT_* types to TYPE_* as the context
is already given.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28564 a95241bf-73f2-0310-859d-f6bbb57e9c96
* fStyleMap could be deleted more than once in certain situations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28563 a95241bf-73f2-0310-859d-f6bbb57e9c96
license was nowhere mentioned. I added an explaination to the copyrights section
and also mentioned that clicking a license name will open the respective
license for reading.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28557 a95241bf-73f2-0310-859d-f6bbb57e9c96
to succeed on Linux. FreeBSD fails some tests since it seems to have a
different load order (depth-first instead of breadth-first). Haiku fails
a lot of tests due to its POSIX non-compliant dlopen().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28556 a95241bf-73f2-0310-859d-f6bbb57e9c96
lock held - that was a relict of the past.
* This fixes bug #2535.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28551 a95241bf-73f2-0310-859d-f6bbb57e9c96
bug #3082.
* Also, it now allows to remove daemons in their hook function.
* Added a "daemons" KDL command that dumps all registered kernel daemons, and
resource resizers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28550 a95241bf-73f2-0310-859d-f6bbb57e9c96
consider the workspaces in the configured count.
* If the window is not on the current workspace after the workspace check,
always move it to the current instead. This lets windows on workspaces
outside of the ones currently configured show up on the current workspace
as if they had the B_NOT_ANCHORED_ON_ACTIVATE flag set.
* This fixes bug #3003.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28549 a95241bf-73f2-0310-859d-f6bbb57e9c96
These were copied from the same code that originally was used for libjpeg
(jpegsrc.v6b.tar.gz) in the JPEGTranslator with a few small changes.
This will be used to implement JPEG lossless transformations in ShowImage in
the way suggested by Michael Lotz in the email linked from the bug.
Next up is changes to ShowImage.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28544 a95241bf-73f2-0310-859d-f6bbb57e9c96
slightly strange redrawing, including scrolling the offscreen view
that it uses in "flicker free" mode (which is the default). Invalidation
does not work in offscreen windows, since the client thread is not running
and certainly won't redraw anything. But that will leave a non-drawable
region on the app_server side of things. Simply don't invalidate in
this case. From what I have seen, redrawing in NetPositive seems to
work fine now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28538 a95241bf-73f2-0310-859d-f6bbb57e9c96
for most messages, use debug_printf(), cleanup line breaks
* check return code of last link method in a lot more places
* changed some printf() and fprintf() into debug_printf()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28537 a95241bf-73f2-0310-859d-f6bbb57e9c96
on uninitialized accelerant, but that's what AS_GET_DRIVER_PATH is for.
* This should fix#2847.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28534 a95241bf-73f2-0310-859d-f6bbb57e9c96
in AutoMounter::InitialMountVisitor::Visit(), otherwise restoring
mount options, like read-only mounting, would never work. This
kind of mixes the options of the mount settings, since it partially
remembers the settings even if the option is not "only previously
mounted disks", but it should not hurt anyways. As a side effect,
this should also fix the mount notification sent to Tracker, as
the path should only have been correct for the "mount previous disks"
setting.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28533 a95241bf-73f2-0310-859d-f6bbb57e9c96
gWidthBuffer.
* Tracker PoseView now uses BPrivate::gWidthBuffer instead of it's own
instance.
* TextView.h and PoseView.h are now a little cleaner.
* InterfaceDefs.cpp now deletes gWidthBuffer in _fini_interface_kit_().
* Added binary compatibility support for NetPositive in WidthBuffer.h and .cpp.
Obviously it kind of defeats the purpose of having WidthBuffer neatly tucked
away in the BPrivate namespace, but Haiku should run NetPositive, I guess.
Fixes#2879.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28532 a95241bf-73f2-0310-859d-f6bbb57e9c96
and wcrtomb() functions. I worked around the issue, and added a build
warning so that we don't forget to change it back once we have working
versions of those.
* This lets apps like "ftp", and "sftp" work again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28531 a95241bf-73f2-0310-859d-f6bbb57e9c96