History log of /haiku/src/kits/shared/Jamfile
Revision Date Author Comments
# 979a0bc4 21-Mar-2024 Augustin Cavalier <waddlesplash@gmail.com>

Appearance: Hide most colors by default and compute them automatically.

In the new "automatic" mode, the number of displayed colors
is just 3, as opposed to the full 38. Much more manageable!

The HSL routines added in this commit were derived from
https://gist.github.com/ciembor/1494530 which is itself derived
from the Wikipedia page describing HSL/HSV.

Part of #15543 and #11636.

Change-Id: I230a358d18c379fb0673162e0b3cbdb8d1b8d84e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7479
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 0ba60bc7 02-Apr-2023 PulkoMandy <pulkomandy@pulkomandy.tk>

Move BarberPole from HaikuDepot to libshared

I want to use this in at least 2 third-party applications. I think it's
time to make it shared?

Change-Id: I855a59aab4ad6d47d77cf2901cb3dfc34c108059
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6296
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 1e860e07 31-Jan-2023 Augustin Cavalier <waddlesplash@gmail.com>

BPrivate::WeakReferenceable: Move implementation to a .cpp.

No functional change to the implementation, just getting it
out of a header.


# 322be3be 25-Jul-2021 Pascal Abresch <nep@packageloss.eu>

StatusView: compute font size based on scrollbar size

Compute a font size that just fits the available space, instead of using
an arbitrary scaling. This makes the code adjust to any font and any UI
size.

Select the appropriate font using a binary search, which will need only
a few attempts (I think 6 font sizes will be tried at the default
config)

Change-Id: Ie3b8678678c0d940981f1785418aa8ab354d01c5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3893
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# a764093c 21-Dec-2022 Jessica Hamilton <jessica.l.hamilton@gmail.com>

shared: add ColorItem from Gravity screensaver.

* A useful utility class that will also be used by Terminal later

Change-Id: I23020a401fbab7d4116df31f965ae61ecaf2a6cd


# 16081dd2 03-Nov-2022 Augustin Cavalier <waddlesplash@gmail.com>

libshared: Enable hidden visibility.

This breaks ABI as we forgot to do this originally and a lot of apps
implicitly use symbols from libbe or elsewhere that are imported from
libshared, but we are about to branch beta4, so now is the time to
change this.

Fixes #17256.


# 86fa1c21 29-Jun-2020 Leorize <leorize+oss@disroot.org>

Shared Kit: Introduce BMemoryRingIO, a thread-safe ring buffer

This commit introduces a simple thread-safe ring buffer implementation
based on top of BDataIO. The main use case for this class will be to
implement shared buffers between threads for the upcoming refactoring
of Services Kit.

Change-Id: I526bc044b28c91496ad996fabebe538e75647f2c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2966
Reviewed-by: Jacob Secunda <secundaja@gmail.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# cc9bc8c6 02-Feb-2003 Jaidyn Ann <jadedctrl@teknik.io>

Move DateTimeEdit into libshared

BInvoker methods are now used, and input-handling is also tweaked.

Change-Id: I120cca8df9f11c11aac80911108d62fb49488f8f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4927
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# 37ea891a 08-Sep-2021 Augustin Cavalier <waddlesplash@gmail.com>

Enable -fvisibility=hidden on static libraries by default.

Only on non-GCC2 for now, as GCC2 does not have -fvisibility.

An opt-out is left as a possibility, and is unfortunately necessary
for libshared and libicon, as these two are used even in WebKit instead
of linking to the .a. However, libcolumnlistview, libagg, and a whole
bunch of others are now no longer exported, so this is already a major
improvement on what symbols we were leaking.

This may provide performance differences for consumers of these APIs,
as GCC and the linker are now free to merge and directly use functions
that previously could have been semantically interposed. AGG usage in
app_server, especially, may benefit.

We can also now remove the addition from libnetservices, so do that.


# 6375ef05 10-Apr-2021 Fredrik Modéen <fredrik@modeen.se>

Move SettingsMessage to a central location

* Move SettingsMessage
* Remove SettingsMessage from MediaPlayer and WebPositive
* Use the central SettingsMessage in MediaPlayer and WebPositive (Later Bluetooth)
* Fix a Jam file.

Change-Id: I3bb82a40082c5ece5c2aea2468a77bcd9f15ce77
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3856
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 2a7090df 22-Jan-2021 Niels Sascha Reedijk <niels.reedijk@gmail.com>

libnetservices.a: move BGeoLocation from libshared.a

The BGeolocation class uses the network interface in libnetservices.a, so it
is moved here for now.

This will break any out of tree projects that depend on it, but it is a source
incompatible change only.

Change-Id: I6f5b1332eb87ad37dd33fbe09fdb11b16f7f26e4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3670
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# ce64ffdb 22-Jan-2021 Niels Sascha Reedijk <niels.reedijk@gmail.com>

libnetservices.a: Put the experimental API into BPrivate::Network namespace

In order to prevent classes between libnetapi.so with the legacy API and
applications using the libnetservices.a library, the latter will have the
classes in a distinct namespace.

In the implementation, both libbnetapi.so and libnetservices.a will use the
same header and source files. If LIBNETAPI_DEPRECATED is defined during build,
the headers and source will have binary compatible behavior. Otherwise, the
classes and other objects will be put in the HaikuExt namespace.

In order to build the libbnetapi.so and libnetservices.a with the proper
build configuration, there is a stub `src/kits/net/libnetapi_deprecated` folder
that applies the special configuration to the source files.

Currently HaikuDepot, Webpositive, libshared.a and the http_streamer add on
use the compatible API in libbnetapi.so.

Change-Id: Ic73e9f271ef75749adda46f6f72e9a0b2851b461
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3667
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 603e0bdf 20-Jan-2021 Niels Sascha Reedijk <niels.reedijk@gmail.com>

libnetapi.so: make headers of deprecated classes private

These classes have been moved to the public API too soon, and they need some
more time to mature before they can be declared stable.

Change-Id: I9c52a8e6cc103922abde7a6b911fe0c3e6bf5700
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3665
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 6b0e92eb 31-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

libshared: move md5 to BPrivate namespace

Otherwise it clashes with the implementation in OpenSSL which uses the
same names but now has a different ABI.

Change-Id: I5cb3ff97d7b28de978cdcbd8a06f25f65fb53784
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2854
Reviewed-by: Kyle Ambroff-Kao <kyle@ambroffkao.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>


# d9ef4f90 17-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove GPL-licensed implementation of MD5

APE reader was using a GPL licensed version of MD5. A similar
implementation in the public domain was available in libnetapi, which I
moved to libshared so the APE reader can use it (and made some fixes,
missing const mainly). It only needs a small wrapper to use it easily
from C++ in a way compatible with the previous implementation.

Part of #13814.


# a7536efa 19-Aug-2019 Simon South <simon@simonsouth.net>

BKeymap: Add unit tests and fix issues

Add a preliminary set of unit tests for BKeymap and fix these issues:

* BKeymap::operator=() caused a crash by allocating a zero-byte array to hold
the other object's character data.
* BKeymap::SetToCurrent() and SetToDefault() leaked memory by not freeing an
existing character array before allocating a new one.
* BKeymap::SetToCurrent() incorrectly determined the size of the current
keymap's character array, causing GetChars() to fail whenever the current
keymap was loaded. Now SetToCurrent() uses the _get_key_map() private
function, which accurately reports the size of the array.

This commit also updates a Jamfile by replacing a use of "UseHeaders" to
include private header files with the more concise and expressive
"UsePrivateHeaders".

Change-Id: If6f71b209f1bd395be57835c4dd89f0e3f845994
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1724
Reviewed-by: Ryan Leavengood <leavengood@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>


# 194c4838 21-Jul-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Move SettingsHandler to libshared

It's used by both Tracker and Codycam and others might find it useful.

Change-Id: I585d3a1bdc7f8fce7d36bedf6867464cd541ba2e
Reviewed-on: https://review.haiku-os.org/c/1637
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# f74f8600 16-Jun-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

BitmapButton: move from WebPositive to libshared

Remove a currently unused copy of it from HaikuDepot.

Change-Id: Idb97fae8e7190da6bc1049b3c1f1df929ea91bab
Reviewed-on: https://review.haiku-os.org/c/1506
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 66cb2efa 15-May-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Move StripeView to libshared

Change-Id: Ib8ff2f731f9d34e04854f1c2ec288a3db1036793
Reviewed-on: https://review.haiku-os.org/c/1458
Reviewed-by: Rene Gollent <rene@gollent.com>


# 1e60bdea 30-Mar-2019 Augustin Cavalier <waddlesplash@gmail.com>

Remove all invocations of SetSubDirSupportedPlatformsBeOSCompatible.


# 6aff37d1 01-Oct-2017 Augustin Cavalier <waddlesplash@gmail.com>

Move SHA256 class to libroot instead of linking libshared into libroot.

Discussed with PulkoMandy and on the haiku-commits mailing list.

Thanks to @jessicah for compile-testing and fixing 2 small issues I missed.


# 1f6b57a5 13-May-2017 Andrew Lindesay <apl@lindesay.co.nz>

Implementation of JSON Streaming Parser

This change will introduce a streaming parser capability to Haiku. The
existing functionality of writing the JSON data to a BMessage in-memory
model is retained. The new parser implements a SAX-style listener based
interface where the listener accepts parse events. Unit tests have been
supplied for the JSON parser as well.


# 8028ede7 15-Jan-2016 Rene Gollent <rene@gollent.com>

Build: Add architecture rule for libshared.a.

- As suggested by Ingo, add libshared.a to the architecture name map.
This allows it to be linked by its short name like other frequently
used libraries.
- Adjust all Jamfiles referencing the lib accordingly.


# 618cc43b 14-Jan-2016 Axel Dörfler <axeld@pinc-software.de>

IMAP: New folders will now adopt default mail attributes.

* Added a function CopyMailFolderAttributes() that copies the attribute
layout from the text/x-email default query folder.
* This using the new CopyAttributes() method in libshared that is pretty
much a copy of a similar method from copyattr. However, I did not
replace the latter, as that one allows for more fine grained error
reporting (and attribute filtering).
* Closes ticket #3498.


# 485f5339 15-Dec-2015 Augustin Cavalier <waddlesplash@gmail.com>

RWLocker: Move to kits/shared.

As requested by looncraz. A lot of stuff in IOM/MediaPlayer's
'support' directories probably should be moved to 'shared' anyway.


# 94a4c1c4 11-Feb-2015 Augustin Cavalier <waddlesplash@gmail.com>

BToolbar: rename to BToolBar.

"BToolBar" matches the current convention ("BStatusBar", "BMenuBar", etc.)
I've no idea what I was thinking when I renamed this before...

Also adjust all users of BToolBar (Tracker and ShowImage).


# 6d93638b 30-Oct-2014 Augustin Cavalier <waddlesplash@gmail.com>

ToolBarView: rename to BToolbar and move to libshared.

Also adjust ShowImage for this, it's the only thing that's using ToolBarView
right now.

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>


# d0fe638d 01-Oct-2014 Oliver Tappe <zooey@hirschkaefer.de>

Look for private key of default geolocation service.

* Let the jamfile set HAVE_DEFAULT_GEOLOCATION_SERVICE_KEY if the
header that is supposed to contain it is found in src/kits/shared
(which isn't the case for normal builds).
* In case HAVE_DEFAULT_GEOLOCATION_SERVICE_KEY is set, include the
corresponding header and activate Mozilla's geolocation service with
the key defined in that header.

This procedure should enable buildbot to create nightly images without
exposing the private service key.


# 3006031a 01-Oct-2014 Oliver Tappe <zooey@hirschkaefer.de>

Move Geolocation to kits/shared and make it private.


# e4d2963e 04-Aug-2014 Augustin Cavalier <waddlesplash@gmail.com>

libshared: Introduce JSON parser and MessageBuilder.

Based on an earlier piece of source code of mine that parsed JSON into
QObjects, this JSON parser creates a BMessage tree.

Will be used by Stephan in HaikuDepot for communication with the web app.


# d2d1af83 18-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "Move ZlibDecompressor to libshared"

This reverts commit 9af2105d36856be60528c361edf14a263f242338.

Conflicts:
src/kits/package/Jamfile


# 94a66563 18-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "shared kit: fixed headers dependency."

This reverts commit 675878fcfe54639ac7686de2c65166b784613337.


# 9ce450b9 25-Mar-2014 John Scipione <jscipione@gmail.com>

AboutWindow: Move to Interface Kit (still private)


# 675878fc 11-Feb-2014 Jérôme Duval <jerome.duval@gmail.com>

shared kit: fixed headers dependency.


# 9af2105d 10-Feb-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Move ZlibDecompressor to libshared

* This will be used to implement compressed http streams
* Remove the custom BDataOutput class, and use BDataIO instead, for
easier integration with existing code.


# 5df58b52 30-Nov-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Move TextTable from pkgman to libshared


# fb6cc6d8 08-Oct-2013 John Scipione <jscipione@gmail.com>

Move Thread classes from Tracker to shared

So that they may be utilized outside of Tracker


# cf06f966 29-Sep-2013 Axel Dörfler <axeld@pinc-software.de>

libshared: Factored out driver settings class from net_server.

* The new class is called DriverSettingsMessageAdapter which can translate
between a driver_settings file, and a BMessage.
* The net_server Settings class is now just using this class.


# 7bd562ab 04-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

lib{network,package,shared,agg,icon}: secondary arch support


# b0944c78 01-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

More work towards hybrid support

* All packaging architecture dependent variables do now have a
respective suffix and are set up for each configured packaging
architecture, save for the kernel and boot loader variables, which
are still only set up for the primary architecture.
For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
and TARGET_LIBSTDC++ are set to the respective values for the primary
packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
multiple packaging architectures. Generally the respective targets are
(additionally) gristed with the packaging architecture. For libraries
the additional grist is usually omitted for the primary architecture
(e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
Jamfiles for targets built only for the primary architecture don't
need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
cross devel package as well as for libbe (untested).


# 10551127 19-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Move PUuid from shared to support


# 01176bd9 06-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add basic BUuid class

ATM it's only able to generate random UUIDs.


# 47fedeb5 05-Jun-2013 Rene Gollent <anevilyak@gmail.com>

Import RegExp classes from Ham.

Minor adjustments made by myself to fit into Haiku better.


# 6bfaef2b 04-Nov-2012 Rene Gollent <anevilyak@gmail.com>

Add basic helper class for user input prompting.


# af350aa2 20-Jul-2012 Ingo Weinhold <ingo_weinhold@gmx.de>

Add private shared class ArgumentVector

The parser is based on the FS shell's ArgVector.


# 8d87f2b4 25-Jun-2012 Philippe Saint-Pierre <stpere@gmail.com>

StringForRate()

Introduce a function to generate the string representation of a bitrate
(kbps, mbps, gbps, etc..)

* Factor out the code from MediaPlayer InfoWindow
* Allow different bases (/1000 or /1024)


# 60f75e90 04-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

Merge liblocale.so into libbe.so.

* Make the locale kit a part of libbe.
* Drop the LocaleBackend kludge used from within libbe (and from
other places, too) in order to access system catalog strings.
This is now done via gSystemCatalog, which is provided and initialized
by libbe.
* Drop all references to liblocale.so from all Jamfiles.
* Add legacy symlink liblocale.so in order to keep optional packages
that rely on it in a working state.

TODO: the documentation hasn't been updated.


# 596bb689 03-Jun-2011 Alexandre Deckner <alex@zappotek.com>

* 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


# 73f559a4 13-Apr-2011 Jonas Sundström <jonas@kirilla.com>

Move IconView from kits/interface to kits/shared.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41246 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 12d8a9f8 14-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Introducing BAboutMenuItem.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40956 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4153964a 25-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

Moved IconUtils.h to Interface Kit and therefor made it an "official" header. Since the class has no
virtual but only static methods, it is not so likely that binary compatibility issues may arrise
from using it in new apps. Adjusted all the Jamfiles that included the private libicon headers. Note
that it was never necessary to link against libicon.a, since it's part of libbe anyway. There was one
instance where that was done. Hopefully it does not break the build, but I did this change a while ago,
tested it and then the harddrive began failing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40679 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 804c69ca 20-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

Moved IconButton from LaunchBox (actually the updated version from WebPositive)
into libshared.a as BPrivate::BIconButton. Removed some outdated functionality
as well (now only uses BControlLook for drawing, cleaned up custom drawing).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40587 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9daff332 28-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

* moved NaturalCompare() from libtracker.so to libshared.a, in order
to make it available elsewhere


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40307 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 24b218c5 21-Sep-2010 Axel Dörfler <axeld@pinc-software.de>

* Implemented a class that can handle Tracker's query files. Only read support
for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38767 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7a0dca5c 23-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Moved SHA256 code to libshared.a.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b44c25de 16-Apr-2010 Axel Dörfler <axeld@pinc-software.de>

* Factored out a single base class out of the three Keymap implementations we
had in our tree.
* Adapted Keymap, <input>keyboard, and consoled to use it - the additional
functionality is implemented via a subclass in the first two cases.
* "keymap" will come next.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36328 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8f2d34d9 12-Apr-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Fix test_app_server again due to Coding Sprint changes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36195 a95241bf-73f2-0310-859d-f6bbb57e9c96


# abb02bc4 26-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

Moved BAffineTransform from shared kit into interface kit. Still in BPrivate
namespace. Applied 80 char/line limit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35955 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 48d79657 23-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

* Moved the duplicate "string_for_size()" implementations into libshared.a.
* Adapted libtracker.so, DriveSetup and Installer to use the shared version.
* The new version uses the correct units (KiB instead of KB and so on).
* Use the correct units in a few other prominent places, where
string_for_size() could not be used.

Should resolve a major part of #5378.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35935 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a070cf53 06-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

* Indentation update in DateTime.h
* Extended BTime, BDate and BDateTime with archiving functionality.
* Adjusted code which uses these classes, since including DateTime.h
already imports the classes from the BPrivate namespace.
* Moved DateTime.h into Support Kit. It is still in the BPrivate namespace,
as I am uncertain what to do with time_type and diff_type. I'd favor
moving the constants into the classes itself. Possibly removing the B_
prefix from them. Feedback welcome.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35772 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8e43b9e3 22-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* A mouse shake detecting BMessageFilter that's easily integrated in any app.
* A test app for it. I added a src/test/kits/shared folder as i found it was the
most logical place for it. Shake it up.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32602 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 59d799da 28-Jun-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved the mapm library from src/apps/deskcalc to src/libs and headers/libs.
* Moved the ExpressionParser class to shared. It's now built into its own
static library.
* Added hexadecimal number support to the expression parser as well as
Evaluation*() methods to get a number instead of a string.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31298 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b7c5bd63 19-Jun-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Renamed Variant to BVariant and moved it to libshared.a.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31127 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c51d0337 06-Apr-2009 Alexandre Deckner <alex@zappotek.com>

* Rewrote BDragger's mouse tracking to be asynchronous using a message filter. Placed the filter in
kits/shared since i plan to use it in other places like Tracker. Animated replicants like
ActivityMonitor wont stall anymore when initiating the drag. (On the desktop, Tracker's mouse
tracking still busy loops sometimes, that's next on my list).

I had asynchronous long click detection (one button mouse support) in it but decided to get rid of
it, it adds unneeded complexity in the code and is even getting in your way sometimes (ex: now you can
take your time to drag the dragger, you wont be interrupted). If we want to reimplement that
someday it should be done system wide anyway (only Tracker and replicants have that 'feature'
AFAIK).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29972 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 474d27da 24-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Added RWLockable and RWLockManager classes. The former is basically a
light-weight read-write lock, that doesn't use a semaphore itself. Locking
and unlocking has to be done via methods of RWLockManager. This combo allows
lots of locks without risking to hit the semaphore limit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29686 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 11c5023a 16-Oct-2008 Stephan Aßmus <superstippi@gmx.de>

Applied patch by Stephen Deken:
* Added a new class BAffineTransform, currently in the BPrivate namespace
and the inofficial "shared kit".
* Extended BPolygon to be transformable by a BAffineTransform.

Thanks a lot!

Minor fixes by myself:
* The class accidentally still derived from agg::trans_affine.
* Added then missing comparator operators.
* Swapped the BPoint* and count arguments of Apply(), since that seems
to be the more common order in the other Be API.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28176 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 78092ae7 29-Aug-2008 Karsten Heimrich <host.haiku@gmx.de>

* move DateTime and CalendarView into shared
* adjust Time preflet to take that into account



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e2bc2744 28-Aug-2008 Stephan Aßmus <superstippi@gmx.de>

Could have been part of r27221. Added BColorQuantizer to libshared.so. Should
be useful for the GIF Translator for example, maybe even for PNG.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27222 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 075430fa 02-Aug-2007 Stephan Aßmus <superstippi@gmx.de>

* put some more useful utility classes into "shared". I tried to make sure
that OpenHashTable.h does not collide with all the other places that this
is used, it seems everything still builds fine. Most problematic could be
the OpenHashTable.h at kernel/util, but it seems it the target using
that are not affected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21792 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 48295d4b 15-Jun-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

libshared.a doesn't deserve a src/ subdirectory. Moved to
src/kits/shared.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21419 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 94a4c1c4561945d4b8d682cf1fc6d8b6abe3a86e 11-Feb-2015 Augustin Cavalier <waddlesplash@gmail.com>

BToolbar: rename to BToolBar.

"BToolBar" matches the current convention ("BStatusBar", "BMenuBar", etc.)
I've no idea what I was thinking when I renamed this before...

Also adjust all users of BToolBar (Tracker and ShowImage).


# 6d93638b3760112aafca78cea657d7417aef060f 30-Oct-2014 Augustin Cavalier <waddlesplash@gmail.com>

ToolBarView: rename to BToolbar and move to libshared.

Also adjust ShowImage for this, it's the only thing that's using ToolBarView
right now.

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>


# d0fe638dbdfdfdf36990ff15cd9b14b5875498aa 01-Oct-2014 Oliver Tappe <zooey@hirschkaefer.de>

Look for private key of default geolocation service.

* Let the jamfile set HAVE_DEFAULT_GEOLOCATION_SERVICE_KEY if the
header that is supposed to contain it is found in src/kits/shared
(which isn't the case for normal builds).
* In case HAVE_DEFAULT_GEOLOCATION_SERVICE_KEY is set, include the
corresponding header and activate Mozilla's geolocation service with
the key defined in that header.

This procedure should enable buildbot to create nightly images without
exposing the private service key.


# 3006031ac284d9a27b3f5df09ed5974cc31492c4 01-Oct-2014 Oliver Tappe <zooey@hirschkaefer.de>

Move Geolocation to kits/shared and make it private.


# e4d2963e01eaa559c4cdc7165cd8ea0925e165dd 04-Aug-2014 Augustin Cavalier <waddlesplash@gmail.com>

libshared: Introduce JSON parser and MessageBuilder.

Based on an earlier piece of source code of mine that parsed JSON into
QObjects, this JSON parser creates a BMessage tree.

Will be used by Stephan in HaikuDepot for communication with the web app.


# d2d1af830b3f144937ea5e4c3f0e5b74c4c3d737 18-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "Move ZlibDecompressor to libshared"

This reverts commit 9af2105d36856be60528c361edf14a263f242338.

Conflicts:
src/kits/package/Jamfile


# 94a66563f5cfae1e292765d11d4d4ef02f22a9a2 18-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Revert "shared kit: fixed headers dependency."

This reverts commit 675878fcfe54639ac7686de2c65166b784613337.


# 9ce450b9c2f42501d4aff202b0819f96a15b66d1 25-Mar-2014 John Scipione <jscipione@gmail.com>

AboutWindow: Move to Interface Kit (still private)


# 675878fcfe54639ac7686de2c65166b784613337 11-Feb-2014 Jérôme Duval <jerome.duval@gmail.com>

shared kit: fixed headers dependency.


# 9af2105d36856be60528c361edf14a263f242338 10-Feb-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Move ZlibDecompressor to libshared

* This will be used to implement compressed http streams
* Remove the custom BDataOutput class, and use BDataIO instead, for
easier integration with existing code.


# 5df58b522b52d5914bf8b49fc47ff46fde56877f 30-Nov-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Move TextTable from pkgman to libshared


# fb6cc6d855f553fb19432e5ca53ce63d0f0ad8c3 08-Oct-2013 John Scipione <jscipione@gmail.com>

Move Thread classes from Tracker to shared

So that they may be utilized outside of Tracker


# cf06f96628c2f515759163e439bcb0d502497118 29-Sep-2013 Axel Dörfler <axeld@pinc-software.de>

libshared: Factored out driver settings class from net_server.

* The new class is called DriverSettingsMessageAdapter which can translate
between a driver_settings file, and a BMessage.
* The net_server Settings class is now just using this class.


# 7bd562abc946385d255e54cdee7b27e14c49e8c8 04-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

lib{network,package,shared,agg,icon}: secondary arch support


# b0944c78b074a8110bd98e060415d0e8f38a7f65 01-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

More work towards hybrid support

* All packaging architecture dependent variables do now have a
respective suffix and are set up for each configured packaging
architecture, save for the kernel and boot loader variables, which
are still only set up for the primary architecture.
For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
and TARGET_LIBSTDC++ are set to the respective values for the primary
packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
multiple packaging architectures. Generally the respective targets are
(additionally) gristed with the packaging architecture. For libraries
the additional grist is usually omitted for the primary architecture
(e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
Jamfiles for targets built only for the primary architecture don't
need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
cross devel package as well as for libbe (untested).


# 105511275e00602f982f593afea9f65c6bd075e9 19-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Move PUuid from shared to support


# 01176bd9449695959a87ceb51e41a1c292b5716f 06-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add basic BUuid class

ATM it's only able to generate random UUIDs.


# 47fedeb5982c2e449fcb75a5b7d2db4c8b4430e4 05-Jun-2013 Rene Gollent <anevilyak@gmail.com>

Import RegExp classes from Ham.

Minor adjustments made by myself to fit into Haiku better.


# 6bfaef2ba656b4fc87065fb2f56c7fbcb6358609 04-Nov-2012 Rene Gollent <anevilyak@gmail.com>

Add basic helper class for user input prompting.


# af350aa21891c6d37934df7686e2cba1d0f4f29f 20-Jul-2012 Ingo Weinhold <ingo_weinhold@gmx.de>

Add private shared class ArgumentVector

The parser is based on the FS shell's ArgVector.


# 8d87f2b43afbba4bdeb052163cee6b70dba8974d 25-Jun-2012 Philippe Saint-Pierre <stpere@gmail.com>

StringForRate()

Introduce a function to generate the string representation of a bitrate
(kbps, mbps, gbps, etc..)

* Factor out the code from MediaPlayer InfoWindow
* Allow different bases (/1000 or /1024)


# 60f75e901ce3063c63441ac644dd0e55a17d5d09 04-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

Merge liblocale.so into libbe.so.

* Make the locale kit a part of libbe.
* Drop the LocaleBackend kludge used from within libbe (and from
other places, too) in order to access system catalog strings.
This is now done via gSystemCatalog, which is provided and initialized
by libbe.
* Drop all references to liblocale.so from all Jamfiles.
* Add legacy symlink liblocale.so in order to keep optional packages
that rely on it in a working state.

TODO: the documentation hasn't been updated.


# 596bb6891a80782c057a54f77c72060671761248 03-Jun-2011 Alexandre Deckner <alex@zappotek.com>

* 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


# 73f559a4c784b78f0ff7e03e43deab098ca6a9b7 13-Apr-2011 Jonas Sundström <jonas@kirilla.com>

Move IconView from kits/interface to kits/shared.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41246 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 12d8a9f85b1f6daeeca5a5185d915d5ce3c922a3 14-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Introducing BAboutMenuItem.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40956 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4153964a10814090db7c21bd8503b7ad349d4770 25-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

Moved IconUtils.h to Interface Kit and therefor made it an "official" header. Since the class has no
virtual but only static methods, it is not so likely that binary compatibility issues may arrise
from using it in new apps. Adjusted all the Jamfiles that included the private libicon headers. Note
that it was never necessary to link against libicon.a, since it's part of libbe anyway. There was one
instance where that was done. Hopefully it does not break the build, but I did this change a while ago,
tested it and then the harddrive began failing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40679 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 804c69ca0658b139a7ba202b790f066ce8c289de 20-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

Moved IconButton from LaunchBox (actually the updated version from WebPositive)
into libshared.a as BPrivate::BIconButton. Removed some outdated functionality
as well (now only uses BControlLook for drawing, cleaned up custom drawing).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40587 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9daff3323bf8d888dd4748427d1e482a939d0f83 28-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

* moved NaturalCompare() from libtracker.so to libshared.a, in order
to make it available elsewhere


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40307 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 24b218c5a7f41f1ab470ef2daad18029061fe211 21-Sep-2010 Axel Dörfler <axeld@pinc-software.de>

* Implemented a class that can handle Tracker's query files. Only read support
for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38767 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7a0dca5c546b4ee09e7d66e9af34e74364f43067 23-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Moved SHA256 code to libshared.a.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b44c25de42ce39022f701d5637797b2f57e63679 16-Apr-2010 Axel Dörfler <axeld@pinc-software.de>

* Factored out a single base class out of the three Keymap implementations we
had in our tree.
* Adapted Keymap, <input>keyboard, and consoled to use it - the additional
functionality is implemented via a subclass in the first two cases.
* "keymap" will come next.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36328 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8f2d34d9e0152aded064d15207397d3b6190d8d2 12-Apr-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Fix test_app_server again due to Coding Sprint changes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36195 a95241bf-73f2-0310-859d-f6bbb57e9c96


# abb02bc4a40395682a9dd4ad13361653412d82f7 26-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

Moved BAffineTransform from shared kit into interface kit. Still in BPrivate
namespace. Applied 80 char/line limit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35955 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 48d796576e9b4b9610f78f4b96131eb28a362f23 23-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

* Moved the duplicate "string_for_size()" implementations into libshared.a.
* Adapted libtracker.so, DriveSetup and Installer to use the shared version.
* The new version uses the correct units (KiB instead of KB and so on).
* Use the correct units in a few other prominent places, where
string_for_size() could not be used.

Should resolve a major part of #5378.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35935 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a070cf5306662fec199ccf79c0e9872fbcd0fc75 06-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

* Indentation update in DateTime.h
* Extended BTime, BDate and BDateTime with archiving functionality.
* Adjusted code which uses these classes, since including DateTime.h
already imports the classes from the BPrivate namespace.
* Moved DateTime.h into Support Kit. It is still in the BPrivate namespace,
as I am uncertain what to do with time_type and diff_type. I'd favor
moving the constants into the classes itself. Possibly removing the B_
prefix from them. Feedback welcome.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35772 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8e43b9e35e9ea39d427336d2ccf7953aa70c1d35 22-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* A mouse shake detecting BMessageFilter that's easily integrated in any app.
* A test app for it. I added a src/test/kits/shared folder as i found it was the
most logical place for it. Shake it up.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32602 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 59d799dabcba86f92658ddb402f634e262d9aae7 28-Jun-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved the mapm library from src/apps/deskcalc to src/libs and headers/libs.
* Moved the ExpressionParser class to shared. It's now built into its own
static library.
* Added hexadecimal number support to the expression parser as well as
Evaluation*() methods to get a number instead of a string.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31298 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b7c5bd634b64a6f9407eeb5fa15609e582f86c34 19-Jun-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Renamed Variant to BVariant and moved it to libshared.a.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31127 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c51d0337a1561c75f253a2cfd70ce48585c5f86e 06-Apr-2009 Alexandre Deckner <alex@zappotek.com>

* Rewrote BDragger's mouse tracking to be asynchronous using a message filter. Placed the filter in
kits/shared since i plan to use it in other places like Tracker. Animated replicants like
ActivityMonitor wont stall anymore when initiating the drag. (On the desktop, Tracker's mouse
tracking still busy loops sometimes, that's next on my list).

I had asynchronous long click detection (one button mouse support) in it but decided to get rid of
it, it adds unneeded complexity in the code and is even getting in your way sometimes (ex: now you can
take your time to drag the dragger, you wont be interrupted). If we want to reimplement that
someday it should be done system wide anyway (only Tracker and replicants have that 'feature'
AFAIK).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29972 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 474d27da32e2b8dddad376fbaf0d8ddb5bb88d0e 24-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Added RWLockable and RWLockManager classes. The former is basically a
light-weight read-write lock, that doesn't use a semaphore itself. Locking
and unlocking has to be done via methods of RWLockManager. This combo allows
lots of locks without risking to hit the semaphore limit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29686 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 11c5023a777637f2b53021737762c2952533d52f 16-Oct-2008 Stephan Aßmus <superstippi@gmx.de>

Applied patch by Stephen Deken:
* Added a new class BAffineTransform, currently in the BPrivate namespace
and the inofficial "shared kit".
* Extended BPolygon to be transformable by a BAffineTransform.

Thanks a lot!

Minor fixes by myself:
* The class accidentally still derived from agg::trans_affine.
* Added then missing comparator operators.
* Swapped the BPoint* and count arguments of Apply(), since that seems
to be the more common order in the other Be API.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28176 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 78092ae789179f1b5199224109b17898f68a9f9a 29-Aug-2008 Karsten Heimrich <host.haiku@gmx.de>

* move DateTime and CalendarView into shared
* adjust Time preflet to take that into account



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e2bc27448fbfffec531ca4d148722dc6371ca2bf 28-Aug-2008 Stephan Aßmus <superstippi@gmx.de>

Could have been part of r27221. Added BColorQuantizer to libshared.so. Should
be useful for the GIF Translator for example, maybe even for PNG.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27222 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 075430faf4a72fec6ff1863c937e62c493e4b95f 02-Aug-2007 Stephan Aßmus <superstippi@gmx.de>

* put some more useful utility classes into "shared". I tried to make sure
that OpenHashTable.h does not collide with all the other places that this
is used, it seems everything still builds fine. Most problematic could be
the OpenHashTable.h at kernel/util, but it seems it the target using
that are not affected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21792 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 48295d4ba7e8018ec09721cd1ad190b73b6ef528 15-Jun-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

libshared.a doesn't deserve a src/ subdirectory. Moved to
src/kits/shared.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21419 a95241bf-73f2-0310-859d-f6bbb57e9c96