History log of /haiku/src/kits/tracker/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
a9b30187 20-Jul-2020 John Scipione <jscipione@gmail.com>

IK: align BTextView text rect/fix alignment

Preserve passed in text rect in fTextRext (unless in layout)
and create an internal version fAlignedTextRect which is used
in place of fTextRect. fAlignedTextRext is aligned to fit the
text rect bounds and grows to fit. fAlignedTextRect always grows
vertically but only grows horizontally if wrap is off.

Left-aligned text view's grow right, right-aligned ones grow left,
and center center aligned ones grow out.

Set fTextRect to bounds in _DoLayout().

Reduce left and right padding inside text views from full label
spacing to half label spacing. Unify padding between BTextControl
and BTextView.

Fixing padding also fixes right and center-aligned BTextViews.

Undo extra scrolling for non-left text views from hrev24130 fixing
a scrolling left and right with mouse bug when it shouldn't.

Replace max_c and min_c with std::max and std::min respectively.

Remove scrolling from one instance of BTextView::SetText as it
produced undesired results while editing a scrolled text view.

Set text rect in BTextControl::DoLayout() and ScreenSaver

Don't add padding if BTextView::SetInsets() is called. Set insets
to 0 in Tracker "Edit name" setting which prevents default padding
from being added. This is so that when you rename a file in Tracker
the TextView appears on top of the file name text with no padding.

80 char limit fixes.

Fixes #1651 #12608 #13796 #15189 #15688

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

9027ca04 05-Aug-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: fix infowindow resizing

Fixes #16053

d548fb2b 28-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Rework BFilePanel compatibility code.

Instead of adding "dummy views", leave the original views intact
and just add a resizing hack to take care of any movements that
apps have inflicted.

Fixes #16411, a crash in WonderBrush, and compatibility issues
in some other applications.

6aee9d64 25-Jul-2020 X512 <danger_mail@list.ru>

Tracker: fix count view border problem

Fixes #16439.

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

77912444 05-Mar-2020 X512 <danger_mail@list.ru>

Tracker: fix ScrollIntoView

Same problem as in BListView::ScrollToSelection.

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

15ba64aa 13-Jul-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Unify Settings menu shortcut

Use , as the shortcut key for settings in all built-in apps. Some used
S, but that's already the shortcut for saving. , is the recommended
shortcut in the HIG already, but built-in apps were not updated to

Fixes #11733.

e6c710f4 06-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Set a minimum size on the count view...

...when it is paired with a horizontal scrollbar. This has the
added benefit of restoring the previous horizontal scrollbar size,
it having been lost in the prior refactor due to the "container views"
removing 2 pixels for the borders (previously, there was a different
sizing system for the count view that provided it.)

Fixes #16368 item 1.

c0a15174 06-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Restore prior text-rect bounds in the count view.

The one-pixel offset greatly improved the text alignment under HiDPI,
but degraded it on non-HiDPI. I guess one pixel really does make
that much of a difference; so this will have to be revisted.

94cc40b1 06-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Add a minimum font size for the count view.

Based on the logic from the title view.

df2e6c7a 06-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Force the horizontal scrollbar to always be the preferred size.

See inline comment. Should fix second part of #16368.

f82f94ef 06-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove partial support for custom fonts in PoseView.

BFont is by default bitmap-spaced, so we do not need to make
a new font just to add bitmap spacing. The rest of the code
assumes in places that we have the same general characteristics
as be_plain_font anyway, so having these bits of code does
not make a lot of sense.

Also correct the list element height computation to now just use
be_plain_font directly, which will work even when this is the first
PoseView created (i.e. before the font height has been read.)

76fcfb69 06-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove extra space between pose controls and buttons.

Now that the scrollbar is part of the pose area, we no longer
have to include its height in the spacing of the pose view
from the buttons and the bottom of the window.

Mentioned by X512 in #16368.

549e16ed 05-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove scroll bar width from the right margin in file panels.

No longer needed, the layout will take care of this now.

749fbae0 05-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Fix PoseView list item height computation.

This gets list item margins on HiDPI much closer to their standard-
DPI counterparts.

Fixes #16178.

ec25a045 05-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Eliminate the fixed count-view size altogether.

This moves the scroll bars and the count view into the layout
inside FilePanels, so more shim views for compatibility are now made.

Fixes #13179.

58f263a2 05-Jul-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove usage of hard-coded count view size in ContainerWindow.

This makes the count view width, height, and font size properly
proportional in the container window. BFilePanel is not yet
fixed however.

fc5ce319 21-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Missing pluralization in Tracker InfoWindow

Fixes #16086

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

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

Tracker InfoWindow: improve layout

Fixes #16053

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

dc92c471 24-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix translation of InfoWindow title.

Fixes #16118.

8ba65975 16-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Build fix

56788ad9 16-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: tweak FindPanel layout again

- Remove the "more options" latch
- Put the icon back on the left.

Fixes #16015

bf207efc 07-Mar-2020 John Scipione <jscipione@gmail.com>

Tracker: ContainerWindow style fixes only

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

451cf86f 11-May-2020 X512 <danger_mail@list.ru>

Tracker: fix debug build

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

09af7c13 08-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: fix layout of find panel.

A minimal layout cleanup for beta2. Further changes were proposed in a
separate ticket, #9781, maybe for later.

Fixes #9780.

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

9670db20 08-May-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: add some time_t overflow checks in StatusWindow

Don't pretend file copies will end in 1901, that's obviously wrong.

Helps with #11176, but we should really not use time_t here, or make it

Fun fact: we're now closer to the end of the UNIX epoch than to the creation
of Haiku!

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

20f2ebae 07-May-2020 Adrien Destugues <adrien.destugues@opensource.viveris.fr>

Remove MouseDownThread and its usages

This code comes from an old Be Newsletter and since then the API
received the addition of SetMouseEventMask. In several places the
MouseDownThread was misused: it would spawn a new thread on every mouse
click and not clear the previous one. This could for example lead to
BSpinner skipping values if you clicked it at the right speed.

There are functional changes in BSpinner, before it updated for the
first time 100ms after mouse down, and then as you moved the mouse
around the button, now it activates immediately on first click and then
every 200ms (which may be a bit short). In other places, no functional
changes intended.

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

5fd6feed 27-Apr-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: fix checkbox positions in InfoWindow.

Fixes #15914.

8eaf4427 11-Mar-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Refactor IconCache to use BOpenHashTable.

This removes the last usage of the old OpenTracker OpenHashTable,
and so it can now be removed.

Change-Id: I7a7bceef1d3fc74c7fdfa7b079e53576452703dc
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2339
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: John Scipione <jscipione@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>

17512090 10-Mar-2020 Niels Sascha Reedijk <niels.reedijk@gmail.com>

Fix error in string.

Reported by a translator. Thanks!

1ba93961 07-Mar-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Replace the deprecated std::hash_set with our HashSet.

Change-Id: I7d29f0c905a3ab1a20f6eca252ff1f168218c23f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2322
Reviewed-by: John Scipione <jscipione@gmail.com>

996c9bf0 07-Mar-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Use ObjectDeleter instead of the deprecated std::auto_ptr.

Change-Id: I5d358076065fefa39df923e4554599b716d9883b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2321
Reviewed-by: John Scipione <jscipione@gmail.com>

3548a2eb 14-Mar-2019 Murai Takashi <tmurai01@gmail.com>

tracker: Fix PVS V595

Fix 'fFile' pointer was utilized at line 327
before it was verified against NULL.

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

6bff9184 07-Jan-2020 X512 <danger_mail@list.ru>

Tracker: fix window focus behaviour

* Also fix LongAndDragTrackingFilter
Fixes #15605

Change-Id: I98c5f3ca435e54c98515ebe2fccbbfd5d08c1a25
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2081
Reviewed-by: Sergei Reznikov <diver@gelios.net>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>

8854b897 09-Feb-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

PaneSwitch: fix a layout issue with large font sizes

This is used in Find window and also in Installer.

Remove some unused code (I think leftovers from Tracker InfoWindow

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

2b197862 07-Feb-2020 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove unused variable.

Fixes the build (due to a -Werror).

4c8c060b 03-Feb-2020 Olivier Coursière <olivier.coursiere@laposte.net>

Make the FilePermissionView font size aware

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

992ae400 18-Jan-2020 Murai Takashi <tmurai01@gmail.com>

Fix catching by value

Pointed out by LGTM.
Change-Id: I223655c728305f6f45b3738553da5b7d7a69e8c8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2134
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>

a00b7c2f 04-Jan-2020 Humdinger <humdingerb@gmail.com>

DoCatalogs for VirtualDirectoryWindow

Fixes #15601

4766e7fe 22-Dec-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker InfoWindow: collapse borders and make resizable

Fixes #15344.

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

2a49e094 28-Sep-2019 Murai Takashi <tmurai01@gmail.com>

Tracker kit: Fix memory leak

Like moveList and copyList, duplicateList could be deleted here.
Pointed out by Clang static analyzer.

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

ea5c088d 16-Nov-2019 John Scipione <jscipione@gmail.com>

Tracker: fix fall back to bitmap icon

We can convert a bitmap icon to B_RGBA32 and scale it at the same
time if we pass in the right size to IconUtils. Don't error out,
force the icon_size to be either B_LARGE_ICON or B_MINI_ICON,
grab the bitmap at that size then convert and scale it.

Implement a second fallback. If the scaling and converting fails
then use ImportBits to convert the icon from B_CMAP8 to B_RGBA32
then center it without scaling.

Fill with transparent before drawing bitmap to prevent artifacting.

Fixes #9554

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

894c9f26 20-Oct-2019 Humdinger <humdingerb@gmail.com>

Localizing "Attributes" tab of InfoWindow

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

23d6916a 23-Sep-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker InfoWindow: cleanup of size string invalidation code

Should fix #15351.

79e2e1b9 23-Sep-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix accidental code removal in tracker infowindow refactoring

Should fix #15322 and #15352

5f996be3 31-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

InfoWindow: more window sizing improvements

Fixes #15310 and other problem mentioned in comments threrein.

72ce5947 31-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

InfoWindow: allow some resizing of attribute columns

Fixes #15319

03d334bb 27-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

build fixes.

sys/types.h cannot incliude endian.h because that creates circular
include dependencies.

Add proper multiarch grist to libcolumnlistview.

ab56137e 26-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

IconCache: remove incorrect ASSERT()

The code does just fine both if entry is NULL and if it doesn't have an
icon. However, if entry is NULL, this assert calls a method on it, which
is a bad idea.

Change-Id: I80b314db373970d99eb008aeaec6254d14c39ca7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1749
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>

19f8517f 26-Aug-2019 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Link against the right libcolumnlistview.

84dc1163 25-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker InfoWindow: add a tab with file attributes

Now there is no need to resort to listattr and catattr to see the
attributes of a file. You can get them easily, from the GUI.

- No editing support
- Only a few well-known types are handled
- No support for attributes with array of values or otherwise unexpected
- Special handling for B_TIME_FORMAT which is annoyingly of a different
size between 32 and 64bit systems, making the attribute format
slightly incompatible.

The window is a bit small to show all the information, so the "Type"
column is put off-view on the right, one can scroll to it if needed.

Vertically there is space for only 4 to 5 entries. It was suggested that
we could merge the permissions and information tabs, making the new
first tab higher, and thus adding more space to this one as well.

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

9bb8d3a4 25-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker InfoWindow: fix regressions

- Misplaced popup window for showing truncated paths in full (#15301)
- Crash when using Alt + E to edit the filename (#15302)
- "Link To" information for symlinks does not fit in window (#15303)

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

2140520f 25-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker InfoWindow: layoutify, use tabs

- Use layout kit to make a few things simpler
- Separate the view showing the header (icon/name) and the one showing
the extra details, making two simpler files instead of a complex one
- Fix some layouting issues
- The permissions are now in a second tab, allowing to add a third one
with other things (more on that later)

screenshot: http://pulkomandy.tk/drop/fileinfo.png

Change-Id: Ief80815eba749723664f40f1317f8aa4cf692162
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1745
Reviewed-by: Ryan Leavengood <leavengood@gmail.com>

ebb30434 25-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: move AttributeView to own file and rename

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

79d1a09c 25-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Adjust SEARCH_SOURCE also for the DoCatalogs invokation.

97218560 25-Aug-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: move InfoWindow to a subdirectory.

I'm going to split it into even more files, and it's easier to track
what's part of it this way.

Change-Id: I09c302da38ce96f0077c5f53fd17c08cdd6c22c9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1743
Reviewed-by: Ryan Leavengood <leavengood@gmail.com>

8043df7a 20-Aug-2019 X512 <danger_mail@list.ru>

Fix BMenuBar width in Tracker

d2a69b8b 20-Aug-2019 Ryan Leavengood <leavengood@gmail.com>

Tracker: Improve pose loading speed, add comments

If a new pose is going to be placed below the current view bounds, we
definitely do not need to do any drawing. If it is above or inside the view
bounds we do this special drawing method.

Overall this method of doing updates is complicated and hard to adjust without
introducing drawing artifacts. As noted in the TODO, this should be rethought
from scratch.

But for now in one case of over 8000 files in a single directory this improved
the loading speed from about 8 or 9 seconds to 1. Queries results also load
much faster. I am testing in a VM with a single CPU on a host with an SSD, so
others may see better performance with more CPUs, or less with a spinning hard

But at least now the drawing won't be the bottleneck.

Should finally fully fix #3011, or at least good enough for close.

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

5e7114c1 01-Aug-2019 Ryan Leavengood <leavengood@gmail.com>

Tracker: Do a duplicate when pasting files into their own directory

Fixes #2755 (blast from the past!)

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

ecba7b5c 01-Aug-2019 Ryan Leavengood <leavengood@gmail.com>

Tracker: Ensure loading the Node works before passing to a Filter

Checking errors is important. This properly fixes #10365 and resolves a few

This DirectoryFilter is also used in Expander, though with a lower level
implementation that did not trigger this bug. This feels like it could be
in the the Tracker or shared kit.

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

10d876de 31-Jul-2019 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Add missing close-paren from previous commit.

5bc37860 31-Jul-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

PVS V1039: useless use of multichar constants

Bitshifts and masks are a lot more readable here.

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

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>

72bfb144 17-Jul-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

PVS V1028: cast result of operation instead of operands

If an overflow occurs before the cast, we can't fix it. If we cast
first, we can rely on integer promotion to make the result use the
appropriate size.

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

fcf7cbe7 16-Jul-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

PVS V522: null pointer dereferences

Change-Id: Iaa753ef3a93c36031789a85f87e569fc410d3304
Reviewed-on: https://review.haiku-os.org/c/1604
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>

ca72c678 16-Jul-2019 Adrien Destugues <pulkomandy@pulkomandy.tk>

PVS V517: two times the same comparison

Change-Id: I93bfdb8cb09d61f537228c4b0a53ee603240d00d
Reviewed-on: https://review.haiku-os.org/c/1602
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>

a1ad8af6 24-May-2019 Augustin Cavalier <waddlesplash@gmail.com>

Change a number of sprintf to snprintf.

Fixes a number of -Werrors about format overflow from GCC 8.

1705656e 24-May-2019 Augustin Cavalier <waddlesplash@gmail.com>

Add (void*) casts to memcpy/memset invocations to appease GCC 8.

A lot of these classes are not *technically* "trivially copyable"
for one reason or another, but in all of these cases it seems
OK to me to use memcpy/memset on them. Adding a cast to void*
tells GCC that "I know what I'm doing here" and shuts up the

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

Remove all invocations of SetSubDirSupportedPlatformsBeOSCompatible.

d04d9b25 13-Mar-2019 Lee Mon <strongleemon@rambler.ru>

BugFix 2: fix errors found by cppcheck

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

579b9cd9 20-Feb-2019 Zach Dykstra <dykstra.zachary@gmail.com>

Adjust the magic incantations to fix spacing

This is my first commit, so bear with me if I've violated any standards here!

I've bumped a few offsets to fix text clipping in the Get Info window. The proper
long-term fix is to recreate this window with the layout library, but that's
a substantially larger job.

Patch set 1
Before: https://i.imgur.com/S7Pl5Qv.png
After: https://i.imgur.com/bd3H1Kw.png

Patch set 3
French: https://i.imgur.com/rpmUb5T.png
German: https://i.imgur.com/ca9DecW.png
Portuguese: https://i.imgur.com/dE8sKFI.png

The font size in the Permissions drop-down is fixed. I had previously bumped it to
12, to be inline with the default font size present in a new Haiku install. However,
that produced text clipping for French and other locales. I reverted it back to 10,
and now longer strings fit as-is.

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

eff1e73c 12-Feb-2019 Augustin Cavalier <waddlesplash@gmail.com>

shared: Merge BOpenHashTable in; remove OpenTracker's OpenHashTable.

The HashMap and HashSet classes are copied from userlandfs. The
HashMap one works as-is as it's already used in userlandfs; the
HashSet does not even compile yet.

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

514aaae7 11-Feb-2019 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove list view menu from virtual directory window.

This reverts commit ed99a95f359befa9029c95f173b025ad2d1af1b9.

It isn't needed now that list view sizing is dependent
on system font size.

Fixes #14897.

47517233 01-Feb-2019 Augustin Cavalier <waddlesplash@gmail.com>

headers/kernel: Move B_WAIT_TILL_LOADED to a syscall header.

It is only used as an argument to _kern_load_image directly, not to
any of the load_image functions in image.h, so it belongs in a syscall-
specific header like other such constants.

No functional change intended.

707c912e 15-Dec-2018 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove "launch broken link" cruft.

As the comment says, this was a pre-R5 (!) hack for Be's CIFS driver.

e3af9ff0 18-Nov-2018 Murai Takashi <tmurai01@gmail.com>

kits/tracker: Fix PVS 923

Fix 'entry' is assigned values twice successively.

Change-Id: I86456bf156eb48f3966439a854256e27ee87caaf
Reviewed-on: https://review.haiku-os.org/765
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

df4074fb 24-Nov-2018 Augustin Cavalier <waddlesplash@gmail.com>

Remove a lot of unused constants.

Spotted by Clang. No functional change intended.

62c7ec5c 23-Nov-2018 Augustin Cavalier <waddlesplash@gmail.com>

Fix various instances of -Wset-but-unused.

Largely no functional change; most of these are just
removing the unused variables.

b791e997 05-Nov-2018 Axel Dörfler <axeld@pinc-software.de>

Tracker: Improved NavIcon spacing

* The spacing between icon and text now scales with the font size, too.

a55e9f52 05-Nov-2018 Axel Dörfler <axeld@pinc-software.de>

Tracker: NavMenu icons scale with font size

* Moved icon size computation into separate utility function.

fa584266 05-Nov-2018 Axel Dörfler <axeld@pinc-software.de>

Tracker: Simplified test; fColumnList cannot be NULL

6ccc2b9f 04-Nov-2018 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Add some missing NULL checks.

Fixes #14685.

0f03d737 04-Nov-2018 Axel Dörfler <axeld@pinc-software.de>

Tracker: List view icons now grow with font size

* This also removes the mini/large icon mode for list views; it's now
simply always matching your font size.

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

48a6df08 16-Sep-2018 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Eliminate the double border in the OpenWithWindow.

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

497f099f 16-Sep-2018 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Clean up AddPoses threads properly.

They may still be running at the point we detach from the window, and
as we stop watching everything else at that point (and the threads
themselves depend on the window looper as the global "lock"), we
need to tear them down then.

We especially cannot do this in the destructor, as there are some
virtual methods that the threads need during their teardown which
obviously will not work in ~BPoseView.

Fixes #13371, and potentially other Tracker crashes that occured
as a result of closing the window while the add-poses tasks were
still operational.

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

7457ccb4 13-Aug-2018 Augustin Cavalier <waddlesplash@gmail.com>

BMessageFormat: Rename to BStringFormat.

The ICU class is named MessageFormat, but on Haiku, it sounds too much
like something related to BMessage (which it isn't in the slightest)
and not part of the Locale system. It works almost entirely with BStrings,
so naming it BStringFormat makes much more sense.

OK'ed by PulkoMandy and Humdinger.

46bf100b 20-Jul-2018 Hrishi Hiraskar <hrishihiraskar@gmail.com>

Tracker: Fixed wrong error message in ContainerWindow.cpp

56a7cb31 19-Jul-2018 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix build.

bc8427c5 04-May-2018 Hrishi Hiraskar <hrishihiraskar@gmail.com>

Tracker: Allow add-ons to dynamically extend popup menu.

An add-on may now add custom entries to the popup menu, in order
to provide more than one action.

Change-Id: Ib4726c0c1e70c59e3ba4d752df24b76cfee1c4a4

6fdf2dd2 04-Jul-2018 John Scipione <jscipione@gmail.com>

Tracker: center text horizontally again

We alwasys draw text at the bottom of the calculated TextWidget
rect, that's why it needed to be centered to get the desired
placement. However, there is two places

6b9353b4 04-Jul-2018 John Scipione <jscipione@gmail.com>

Tracker: Revert to previous CalcRectCommon bottom calc

... in list mode. Fixes #12997

This bug was introduced in hrev50528 along with new 32x32 icon size
in list mode. I'm not sure what I was thinking on this particular
line but reverting it seems to fix the problem and logically the
original code makes sense.

8a9e1e0d 31-Dec-2017 Augustin Cavalier <waddlesplash@gmail.com>

Removal of non-Haiku target platform logic from build system (part 1.)

Following recent changes to use libroot_build on Haiku also, it is now
actually impossible to build Haiku components on non-Haiku platforms
(BeOS R5, Dan0, BONE, Zeta), so we can remove any logic related to this.

This is only the first part; still to be removed are:
* SetSubDirSupportedPlatformsBeOSCompatible

f3114cad 05-Dec-2017 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Add shortcut_catcher to UseHeaders.

Tracker uses KeyInfos.h from it. Previously this wasn't needed
due to the SEARCH_SOURCE added in the Shortcuts preferences,
but as that is now just a UseHeaders, we need it here (if only
for the DoCatalogs.)

8742c1d0 21-Nov-2017 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove now-unused bool displayingSymlink argument from InfoWindowRect.

5c6208cc 17-Nov-2017 John Scipione <jscipione@gmail.com>

Tracker: Line TitleView up with scroll bar arrow

Make TitleView a few pixels shorter at the default font size so that
it lines up with the scroll bar arrow to its immediate right.

Note the font size used in the title view before and still is 9px
(12px * 3/4)

Make this the minimum TitleView height even for smaller font sizes
so that the title view never is shorter than the height of a
scrollbar button. Make the minimum font size for TitleView 8px
because 6px (8px * 3/4) was just too small to read.

As font size is made larger it will increase the height of the
titlebar to accomodate the increased font size and consequently no
longer line up with the scrollbar arrow.

The code to scale the bar height via the font height was taken from
BColumnListView. The code to position the title in the middle of the
title bar was also taken from BColumnListView.

Some included style fixes:
* Rename height to fontHeight
* Rename loc to titleLocation
* 80 column limit

16af9b4c 05-Nov-2017 Humdinger <humdingerb@gmail.com>

Style, no functional changes

Make termination consistant with that last commit hrev51521.
As wished and proof-read by waddlesplash. Hope all's well...

a4d1e649 03-Aug-2017 Owen <owenca@users.noreply.github.com>

Make Alt-Up and Alt-W keys work for file panels.

Fixes #11979

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

615417e5 30-Oct-2017 Julian Harnath <julian.harnath@rwth-aachen.de>

BFilePanel: reset to home dir if volume unmounted

* Fix bug reported by humdinger: when the volume which is
currently shown in the file panel is unmounted, the file
panel's window was closed and even deleted. This is not only
inconvenient but also a use-after-free bug waiting to happen:
an application which keeps the BFilePanel around to show it
again later (as recommended in the BeBook) cannot know that
it has become invalid while it was hidden (the destruction of
the window happens even when it's not shown).

* When receiving an unmount event for the currently shown volume,
we now reset the view to the home directory.

05977524 22-Jul-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

Remove full date format from Tracker date columns

It is too similar to the long format and does not add much value.
And it creates some problems with using a locale format with another's

Fixes #11343.

96bdefaf 12-Jun-2017 Humdinger <humdingerb@gmail.com>

Tracker: Use layout management for "Select..." window

Also remove the BMessageFilter EscapeFilter and use B_CLOSE_ON_ESCAPE
in the window constructor instead.

I moved fExpressionTextControl->MakeFocus(true); down to when the
window is Lock()ed. Otherwise the text control refuses to be focused...

ba25f57a 10-Jun-2017 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: More B_PRId32 -> B_PRIdTIME.

9f6dbb5f 05-Jun-2017 Augustin Cavalier <waddlesplash@gmail.com>

Fix the build following the 64-bit time_t switch.

756c36e7 29-May-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

Rotate permission labels in Tracker InfoWindow

This allows to fit a lot more text in the same horizontal space, so we
can fit the label in various locales, without spreading the checkboxes
further apart.

Fixes #6987

fd9afd8a 29-May-2017 Adrien Destugues <pulkomandy@pulkomandy.tk>

Missing localizations in tracker info window.

Patches from Karvjorm in #6987 (but not directly related to that ticket)

75fc1907 13-May-2017 Owen <owenca@users.noreply.github.com>

Tracker: Fix blue border for focus in file panel.

This fixes the bugs pertaining to drawing and erasing the blue border
when a view gains and loses the focus, respectively. It also fixes the
bug that the file list (PoseView) always has a blue border when the
panel window is activated, even if the pose view doesn't have the focus.

Fixes #13496.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

1c0e7a58 15-May-2017 Owen <owenca@users.noreply.github.com>

Tracker: Fix blue border of CountView in file panel.

This removes the blue border of CountView in BFilePanel.

Fixes: #12923

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

db068cd6 01-May-2017 Owen <owenca@users.noreply.github.com>

Tracker: Always enable the Open button for B_DIRECTORY_NODE.

Always enable the default button in Open File Panel if the node flavors

Fixes #13463.

Signed-off-by: Axel Dörfler <axeld@pinc-software.de>

84c62f1d 02-May-2017 Brian Hill <supernova@warpmail.net>

Fix drawing of Tracker volume icon freespace bar

For icon sizes less than B_LARGE_ICON (32) the icon size was
incorrectly just set to B_MINI_ICON (16) causing an error in where
horizontally the free space bar was drawn for icon sizes between 16
and 32. This has never really been an issue because the predefined
options in Tracker do not allow selecting an icon size between 16 and
32, but this fix will prevent drawing issues in the future if that
ever does become an option.

2d8adbdd 29-Apr-2017 Owen <owenca@users.noreply.github.com>

Tracker: Fix Shift+click multi-selection not being disabled.

Using BFilePanel with multi-selection turned off does not prevent
multi-selection by SHIFT-click. Traced the bug to
BPoseView::AddRemoveSelectionRange(), and the safest fix is to not
touching the boolean extendSelection but to just add the test for
fMultipleSelection to the if block that handles B_SHIFT_KEY.

Fixes #13462.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

a8ae893b 29-Apr-2017 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Fix B_UNDO/B_REDO forwarding to a focused BTextView.

56f9e8b7 29-Apr-2017 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: If a BTextView is focused, do not force-forward clipboard events to it.

In its original state this code just forwarded all clipboard messages to the
focused view, which sometimes was a BTextView or the like which knows nothing
about Tracker's custom clipboard events, and thus would wind up in an infinite

Now, the messages are left to be handled by the focused view if a BTextView
is selected (e.g. in a file panel, or in Tracker's navigator), but otherwise
forwarded directly to the BPoseView.

Fixes #12721.

41b05954 28-Apr-2017 Owen <owenca@users.noreply.github.com>

Tracker: Fixed shift extension after keyboard selection.

fixes the bug that caused multi-selection by SHIFT-cliking to fail if an
item in the file panel was selected by a key (ticket #13460).

If the user tries to select a single item by pressing a key (Left/Right,
Up/Down, etc.), the BPoseView::KeyDown() function will call the
BPoseView::SelectPose() function, which must set fSelectionPivotPose to
the selected item (or pose) because this item might be the starting (or
pivot) pose of the next multi-selection by SHIFT-click.

Signed-off-by: Axel Dörfler <axeld@pinc-software.de>

5d614ec3 25-Apr-2017 Augustin Cavalier <waddlesplash@gmail.com>

tracker: We now target only Haiku since the layout merge, so use B_REDO.

54a37ee4 22-Apr-2017 Humdinger <humdingerb@gmail.com>

Tweak when to use black/white for icon labels on Desktop

I've felt for a long time that the Desktop's background colour had to
be much too dark for the icon labels to switch from black to white.
I came to the new values by trial and hope nobody hates those now...

adad0931 07-Mar-2017 Murai Takashi <tmurai01@gmail.com>

libtracker: add B_TRANSLATE to List view menu.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

d54cb434 17-Feb-2017 Humdinger <humdingerb@gmail.com>

Layout fixes to Tracker's Get Info window

This corrects hrev50847. Turns out we need 8 lines for normal
files and symlinks, not 7. Fixes #13308.

The "Opens with:" label used the decreased font size set in
src/kits/tracker/InfoWindow.cpp:894. Increase font size by 2 again
for the label.

4ad2ad6d 19-Dec-2016 Murai Takashi <tmurai01@gmail.com>

DirMenu.cpp: fix memory leak.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

Fixes #13118.

b01e48c6 22-Jan-2017 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Warn if there is < 5% of free space left on the drive.

Previously it would warn only below 20MB of free space, if this was
less than 10% of the drive's capacity. This is obviously ridiculous now.
The first suggested patch used a simple 10% as the new criteria, but that's
a little high -- 100GB out of a 1TB drive is still a bunch of space left.
5% seems like a more appropriate choice here, and preserves a behavior
closer to the original 20MB on smaller (older) drives (5% of 500MB = 25MB.)

If this turns out to be too annoying for some users, we can make the check
more refined than it is now, but I don't think that will be necessary.

Fixes #4520.

80873d1b 07-Sep-2016 Gabriel Maia <gbl08ma@gmail.com>

Tracker: always shrink the text input when renaming

When renaming an entry at the edge of a PoseView, the input
would not resize as usual. This change ensures the input
becomes resizable again if the text becomes small enough.
Fixes #3438.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

8b9c75d6 15-Jan-2017 Andrew Aldridge <i80and@foxquill.com>

Fix copying special files in Tracker

Signed-off-by: Axel Dörfler <axeld@pinc-software.de>

5f8edc9c 07-Jan-2017 Tsimblist <tsimblist80@gmail.com>

Fix for ticket #12978 - Tracker GetInfo window layout problem

Signed-off-by: Axel Dörfler <axeld@pinc-software.de>

b50d53dd 18-Dec-2016 Murai Takashi <tmurai01@gmail.com>

NodePreloader.cpp: fix memory leak.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

Fixes #13115.

956c2f5f 11-Nov-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

Replace "All BeOS disks" with "All Haiku disks"

- In mount menu and mount preferences.

Fixes #12623.

05574d9b 31-Oct-2016 Humdinger <humdingerb@gmail.com>

Tracker: Fixed alert button label for renaming of home folder

Fixed copy&paste error for button label of renaming action.

3798bf90 22-Oct-2016 Augustin Cavalier <waddlesplash@gmail.com>

Use the kDesktopWindowLook/kDesktopWindowFeel constants from WindowPrivate.h...

... instead of redefining them, or including a private Tracker header to
get them.

cfe0adf0 22-Oct-2016 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove unused definition.

13cf3fec 21-Oct-2016 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove unused Cursors.h header.

45e5951b 17-Oct-2016 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Fix the TitleView appearing sometimes in icon-view folders.

It appears this would only happen when opening a new window (not an
existing one) for a folder that was set to icon-view.

Regression from hrev48734 (Layout API commit). Fixes #13000.

09bb8269 25-Sep-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: localize RegExp errors.

These were left out because the same RegExp.cpp file is also used by
collectcatkeys. This needed some jam file changes to get collectcatkeys
to build on both the host and target.

Fixes the last remaining part of #6374.

ccb55f96 25-Sep-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: localize query templates.

Tracker can create query templates when they don't exist yet. This was
done with an hardcoded archive of BColumns for the pose view, which did
not allow for an easy way to replace the strings. Now the archive is
created on the fly when the function is run, which makes it possible to
build it with localized strings (and in the system's endianness, which
will make it load faster).

Based on patch by mt, but with a lot of rework.

Fixes part of #6374.

f8c5cdac 17-Sep-2016 Humdinger <humdingerb@gmail.com>

Use new Device_NAS vector icon for shared volumes

...and remove old bitmap icons.

ed99a95f 02-Sep-2016 John Scipione <jscipione@gmail.com>

Tracker: Add list view menu to virtual directory window

8fdd2629 01-Sep-2016 John Scipione <jscipione@gmail.com>

Tracker: 32x32 icon size option in list mode

16x16 is same old default
32x32 is new and fun

Adjust start offset to depend on icon size

Remove the kColumnStart variable and instead use StartOffset()
method which calculates the column start offset based on the icon
size. When you switch between icon sizes in list mode recalculate
the first column width to make room for the icon or more text.

Add some padding to list height in large icon mode.

41b9b4ad 01-Sep-2016 John Scipione <jscipione@gmail.com>

Tracker: Remove some left behind code

A couple of lines of code were left behind in a previous
refactor. Code just checked some list items.

b339ee18 02-Sep-2016 John Scipione <jscipione@gmail.com>

Tracker: Make mini mode default for list mode

but if you are in icon mode (like Desktop) use large icons instead.

This change will be important going forwards.

ee20ff95 01-Sep-2016 John Scipione <jscipione@gmail.com>

Tracker: Style fixes

More style fixes

5cf94071 30-Aug-2016 John Scipione <jscipione@gmail.com>

Revert "Tracker: Add some zoom padding in list mode"

This reverts commit f76147aa9ac4cd9c3367305f429dbdffb6df8bcf.

27c911e8 30-Aug-2016 John Scipione <jscipione@gmail.com>

Revert "Tracker: Add zoom padding in list mode take 2"

This reverts commit 7d009616aab2b00f0db48976625db042d141c5b1.

7d009616 27-Aug-2016 John Scipione <jscipione@gmail.com>

Tracker: Add zoom padding in list mode take 2

Add 16px to right and bottom of content when zoom

fixup of last commit

f76147aa 26-Aug-2016 John Scipione <jscipione@gmail.com>

Tracker: Add some zoom padding in list mode

Add some padding to the right and bottom of the content when
you zoom.

16px the size of a mini-icon

5298c297 23-Aug-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

Fix regressions introduced in hrev 50503

- Missing "dontAsk" when renaming some files,
- Missing exceptions in the warning alert construction to automatically
allow modifying some files (anything inside the settings folder)
- Missing translations

Fixes #12925.

4072c4f1 21-Aug-2016 Adrien Destugues <pulkomandy@pulkomandy.tk>

Tracker: fix localization of warning when editing system dirs

Programatically generating a string usually doesn't work well with
localization. Better unfold all the possiblities.

Moreover, the callers of the functions had a long if condition with
3 B_TRANSLATE calls embedded in, and there was an erroneous ; at the end
of those, so the supposedly protected statement was executed anyway.

Fixes #12747.

777ff371 27-Jul-2016 Murai Takashi <tmurai01@gmail.com>

Tracker: Fix -Wlogical-not-parentheses

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

With style fix: comparison must still be a boolean value.

Fixes #12892

9d37e741 31-Jul-2016 John Scipione <jscipione@gmail.com>

Tracker FindPanel: Make a copy of fDeviceIcon

... so that it gets deleted by destructor and not the original

4a319b9c 31-Jul-2016 John Scipione <jscipione@gmail.com>

Tracker FindPanel: SetMarked() and SetTargetForItems()

in AttachedToWindow() rather than the constructor.

This does the action at the appropriate time to draw the initial
state correctly.

d7fa9d35 31-Jul-2016 John Scipione <jscipione@gmail.com>

Tracker FindPanel: Use const char* instead of BString

Use String() to get the const char* out of the BString where appropriate

Also rename msg variable to message

717b47e7 31-Jul-2016 John Scipione <jscipione@gmail.com>

Tracker: Style fixes

indentation, spaces, explicitly compare to B_OK

d8c4f7b5 31-Jul-2016 John Scipione <jscipione@gmail.com>

IconMenuItem: Make icon_size B_MINI_ICON by default

caf0a129 11-Apr-2016 John Scipione <jscipione@gmail.com>

Tracker: Draw IconMenuItem in closed state

Add an Icon() and SetIcon() method. Override SetMarked() to set the
parent menu field icon.

Don't move the label right if icon is NULL. Make the first menu item
an IconMenuItem with a NULL icon. This allows the icon to draw in the
closed menu state.

icon gets updated even if you select an item in a submenu

ebb20270 29-Jul-2016 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Don't show warning alert when working in /system/cache/tmp.

Originally, the tmp folder was in /boot/common, where it didn't show
an alert box. Since the move to /system, it simply fell into the general
"is in system directory" case.

Fixes #10173.

606ae81a 21-Jul-2016 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Move deprecated FSUtils functions to FBCPadding.cpp.

This includes FSCopyAttributesAndStats as well as an older version of
FSGetDeskDir, and adds another alias of FSGetTrashDir. Fixes BeIDE

c1cd54a0 21-Jul-2016 Augustin Cavalier <waddlesplash@gmail.com>

FSUtils: Add a "bool copyTimes" argument to FSCopyAttributesAndStats().

BPoseView::NewFileFromTemplate does not want to copy the times. Fixes #11702.

We have to keep a 2-argument version of this function because it looks like
some third-party applications might call it (e.g. Dockbert), and even
though it's technically private API, it's easy enough to preserve binary

e944daca 21-Jul-2016 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove special filtering case from NewFileFromTemplate.

If the pose matches the current type-ahead filter, it will be added
by the node watcher anyway, so this just created duplicate poses
which messed up internal data structures. Fixes #11122.

a449e230 19-Jul-2016 Axel Dörfler <axeld@pinc-software.de>

Tracker: Made open-with menu scale with font size.

36c80cff 19-Jul-2016 Axel Dörfler <axeld@pinc-software.de>

Tracker: Fixed CachedEntryIterator::GetNextEntry() debug build.

* A "style fix" introduced in 54e2dd7272db551cab02cc678bd45bc4131dd867
broke the debug version by reversing the assertion logic.

0bcb8365 19-Jul-2016 Axel Dörfler <axeld@pinc-software.de>

Tracker: Remove adding BeOS trash icons in trash watcher.

* The icons have been removed in 4e38bdba1781bac2598e5f6319bf183fc2ab765b
which caused a debugger call in the debug build.

e0197754 02-Jul-2016 Murai Takashi <tmurai01@gmail.com>

TrackerString.cpp: fix comparison between pointer and integer

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Ticket: #12842

d455c57e 14-May-2016 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Change QueryPoseView over to using a BRefFilter.

Fixes #12640 (was broken by hrev44493).

9bd7e401 07-Mar-2016 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Restore original PoseView/TitleView names except in BFilePanel.

Should've fixed #12635, but it doesn't. No idea why; perhaps
request.AddSpecifier("Window", "/boot/home/Desktop");
doesn't work anymore?

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.

a99deff4 10-Jan-2016 looncraz <looncraz@looncraz.net>

Tracker Desktop Icons Using Wrong Text Color

Was using the panel color without checking if we were the desktop view.
This corrects the reported issue where icon label outlines would look

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

03b1819c 11-Jan-2016 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Get rid of the "Restart Deskbar" menu item.

Now that launch_daemon automatically restarts Tracker and Deskbar
when they crash, this is not needed anymore.

79a091e7 07-Jan-2016 looncraz <looncraz@looncraz.net>

Correct Tracker QueryPoseView Column Resize Appearance

PoseView's ColumnRedraw fills exposed areas in manually in an offscreen view
using the PoseView's LowColor. As QueryPoseView uses a custom view color it
is necessary for the low color to match, otherwise resizing a column will
draw the untinted document background color.

Fixes #12569.

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

678f8a7b 05-Jan-2016 looncraz <looncraz@looncraz.net>

Tracker: Fix column title colors following Set*UIColor merge.

Repair regression where low color for text drawing was not set properly.
Do not use tinted color for default color state.

Prior to this, the hinting font would not respond to being pressed and the
column title background was the wrong color initially, but correct after
resizing (but then wrong again after a redraw on exposure).

In addition, the initial tint values used for the view color were unused,
so I removed them.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

c5b4dc40 09-Dec-2015 looncraz <looncraz@looncraz.net>

Tracker: Use Set*UIColor, improved font awareness.

InfoWindow now uses the font size to determine the window size and
placement of elements. Also uses system colors, including link
colors. Permissions view not font sensitive yet.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
Patch 0039 from looncraz, unmodified.

a89ac5a6 16-Dec-2015 Markus Himmel <markus@himmel-villmar.de>

Tracker: Add dragged poses to the drag message in the correct order

The function EachPoseAndModel iterates through poses in reverse order.
This fixes #12333.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>

408a2da5 10-Nov-2015 John Scipione <jscipione@gmail.com>

Tracker: Set low color before drawing column name

Fixes #12084

d3628dcd 10-Nov-2015 John Scipione <jscipione@gmail.com>

IK: Move CheckNodeIconHintPrivate to Tracker

* Move BPrivate::BNodeInfo::CheckNodeIconHintPrivate() to Tracker's
Model class.
* Rename HasVectorIconHint(BNode*) to CheckNodeIconHint(BNode*).
and make it check not only for vector icons but also if you have
BOTH large and mini icons.
* Replace instances of CheckNodeIconHintPrivate() with the newly
created CheckNodeIconHint().

d0ac6099 07-Nov-2015 Humdinger <humdingerb@gmail.com>


Use B_USE_WINDOW_SPACING as inset from contents to window border.
Some whitespace cleanup.

f672379c 03-Nov-2015 John Scipione <jscipione@gmail.com>

Tracker: Redraw info window when file path changes

The hard work was already being done, we just had to redraw to get the new path.

Fixes #12437

4cb40196 20-Oct-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove needless NULL check before delete.

Thanks John!

c746acc2 21-Oct-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Delete own BTextWidgets in BPose destructor.

Fixes a memory leak, and #12393.

e01bbf95 14-Oct-2015 John Scipione <jscipione@gmail.com>

Tracker: Fix issue with vertical scroll bar border

This issue only manifested itself when the navigation toolbar was shown.

The scrollbar appeared to have no border while the rest did. This issue
manifested when the scrollbar insets were adjusted in hrev49654. The
scroll bar insets were really hiding the bug underlying bug though.

I'll try to explain what was happening and how I fixed it. The PoseView
container, called BorderedView, was showing its top border when the
navigation bar was hidden, and hiding its top border when the navigation
bar was shown. This (almost) worked because the menu bar provided a
bottom border while the navigation toolbar didn't. However hiding
BorderedView's top border also hid the scroll bar border.

My solution was to draw a bottom border on the navigation toolbar and
then remove the top border from BorderedView unconditionally. So either
the menu bar or the navigation toolbar provides a bottom border and the
BorderedView has no top border.

Fixes #12392

2d34b65e 15-Sep-2015 Jessica Hamilton <jessica.l.hamilton@gmail.com>

Tracker: fix insets of vertical scrollbar.

d8b517b5 09-Sep-2015 Axel Dörfler <axeld@pinc-software.de>

Tracker: made title view height depend on font size.

* It now uses a font that's 3/4 the size of the plain font; ie. there
shouldn't be any change with the default font size.
* Also cleaned up some weird layout code on the way.

46dd7d50 09-Sep-2015 Axel Dörfler <axeld@pinc-software.de>

Tracker: Fixed vertical list icon position.

* Instead of drawing it at the bottom of the line, draw it in the
middle of it.

bf548029 09-Sep-2015 Axel Dörfler <axeld@pinc-software.de>

Tracker: Made list element spacing relative to font size.

* Instead of always adding two pixels, we now multiply the size with 1.1.

f0b3691d 09-Sep-2015 Axel Dörfler <axeld@pinc-software.de>

Tracker: Removed extra border next to the draggable icon.

* Also removed extraneous call to BMenuBar::SetBorder(); B_BORDER_FRAME
is the default, anyway.

f8300bd9 17-Aug-2015 Axel Dörfler <axeld@pinc-software.de>

Tracker: Added a "Skip all" functionality.

* Also, the copy prompt gets a missing "Replace" button (instead of
only offering "Replace all").

0104e6fa 17-Aug-2015 Axel Dörfler <axeld@pinc-software.de>

Tracker: Use BEntry::Name(), minor cleanup.

* Use BEntry::Name() over GetName() where appropriate.
* Fixed some weird indentation.
* Simplified some constructs.

7cef8ca2 10-Aug-2015 Michael Lotz <mmlr@mlotz.ch>

Tracker: Fix regression introduced in hrev49011.

If the view fails to lock because it is actually gone, we obviously
can't use it to return the container, so delete it directly in that

Fixes #12072 and probably #11982 which would then be a duplicate.

a4db376c 03-Aug-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Fix crash when the VirtualDirectoryWindow can't create the PoseView.

Fixes #11859. We may want to show an error message rather than failing
silently, but at least that is better than crashing.

d0017f37 25-Jul-2015 Jérôme Duval <jerome.duval@gmail.com>

libtracker.so: fixed parenthesis warning on not operator...

* "logical not is only applied to the left hand side of comparison"
* found with GCC6

5f83ad89 21-Jul-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Move DirMenu.h to headers/private/tracker so other applications can uuse it.

b46999bc 21-Jul-2015 Axel Dörfler <axeld@pinc-software.de>

Tracker: page down/up now selects poses.

* When pressing shift it will also extend the selection to the bottom
or the top of the page.
* It does not deselect anything yet, but Tracker's selection logic is
pretty questionable, anyway, and it's way too complicated to
implement this nicely as of now.

dfcbef64 04-Jul-2015 Philippe Saint-Pierre <stpere@gmail.com>

Erratum hrev49359: Compare size with 0 rather that B_OK

Thanks Ingo!

189c10b0 03-Jul-2015 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: check result of FlattenedSize() for error

217e35d6 03-Jul-2015 Philippe Saint-Pierre <stpere@gmail.com>

FindPanel: Reorder operations to avoid leak

CID 1234656

060bd5eb 02-Jul-2015 Philippe Saint-Pierre <stpere@gmail.com>

Tracker::BTitleView, Init fPreviousLeftClickTime

CID 1273731

93bd491f 01-Jul-2015 Philippe Saint-Pierre <stpere@gmail.com>

Logic error in TaskLoop::RunIfNeeded()

The ! operator would have priority over < and would transform currentTime before the
comparison. Moreso, the logic was reversed. It is supposed to return false if it's
not time yet to run the task, not the opposite.

CID 1273447.

8083e779 29-Jun-2015 Philippe Saint-Pierre <stpere@gmail.com>


In Tracker's TitleView, use an user defined color to draw outline when
moving columns rather than hardcoded color.

ffc3c617 29-Jun-2015 Philippe Saint-Pierre <stpere@gmail.com>

Incorrect font applied in Add-on submenu

When accessing the Tracker Add-on menu from ContainerWindow's top menu, the
font in Add-Ons submenu would change from its parent menu.

ee87fbc4 28-Jun-2015 Philippe Saint-Pierre <stpere@gmail.com>

Do not hardcode tab height in ResizeToFit()

969a5d2f 20-Jun-2015 John Scipione <jscipione@gmail.com>

Fix mess in Tracker add-ons created in hrev48858

Revert the Tracker portions of hrev48858, they were not needed and were not
right either... sorry guys

OpenTargetFolder add-on modified slightly to use the passed in symlink(s) only,
the parent directory ref is unused, it appears to be unneeded here also.

With this and the reverted commits Zip-O-Matic and other add-ons should
work again.

Fixes #12105

29355b23 17-Jun-2015 Janus <janus2@ymail.com>

Tracker: reduce distance between rows with big fonts

38b2eae6 14-Jun-2015 Janus <janus2@ymail.com>

Tracker: fix selection glitch with some fonts

* This problem was present for the fonts with total height
greater than 19 and smaller than 20.
* Reduce distance between row with big fonts.
* Fixes #11615.

9b438e17 03-May-2013 Jessica Hamilton <jessica.l.hamilton@gmail.com>

Tracker: Find Panel - fix handling of duplicate mimetype descriptions.

Currently, Haiku has two mimetypes for MIDI files, which causes the
logic for clearing the currently marked item to sometimes fail. Instead,
when two mimetypes have the same description, the subtype is added to
the label in parentheses as is done in the FileTypes preflet.

7919d656 29-May-2015 Jessica Hamilton <jessica.l.hamilton@gmail.com>

Revert "FilePanel: re-parenting the PoseView to get shortcuts to work"

This reverts commit 89486c92764891b1142243547d8e97fdc866c4f1.

89486c92 26-May-2015 Jessica Hamilton <jessica.l.hamilton@gmail.com>

FilePanel: re-parenting the PoseView to get shortcuts to work

4bb1fc17 08-May-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: get rid of fTrashContextMenu member from DeskWindow...

... as it's useless and shadowing the one in ContainerWindow.
No functional change intended, and none occurs (from my testing).

PVS message V703.

eb866045 08-May-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Model: use SetToFormat.

e5ab3b09 26-Apr-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: move deprecated cruft to FBCPadding.cpp.

The Be Book [1] states that these are supposed to be C functions,
but the comment (see diff) said they were deprecated, and the fact
that they were in a .cpp file (and I checked with "nm") made them
C++ functions.

I can't recall any applications failing to start because these
symbols were unresolved, so we might be able to just remove them...

[1]: https://www.haiku-os.org/legacy-docs/bebook/BFilePanel_Overview.html

b4df8f6f 26-Apr-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove [I]Find* functions from TrackerString.

"git blame" indicates they've been here since Tracker was imported
into the tree, and a single paragraph explaining their existence
just states they are more efficient/faster than the ones in BString
due to running simple checks before calling str*cmp.

If there is (still) such a performance problem in our BString, we should
fix it there and not use hacky workarounds. I didn't notice any difference
in speed when using Tracker with this patch; however, I'm on a reasonably
fast machine.

37335989 26-Apr-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: delete more non-Haiku code.

4a6014fe 26-Apr-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: fix PoseView border in FilePanels.

859686a5 18-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

Tracker: Fix use-after-free in info window attribute view dtor.

The model was owned by the info window and is gone at the point where
the AttributeView is destroyed. Since the extra check whether the model
is a symlink isn't really needed at all, I opted to just remove it
instead of destroying the AttributeView sooner or unsetting its model.

2bd0b27f 08-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

Tracker: Fix use-after-free by ref filter of OpenWithPoseView.

Commit ea8b1e14 changed OpenWithPoseView from using ShouldShowPose for
filtering poses to a BRefFilter. The introduced ref filter used the
iterator handed to the BPoseView::AddPosesTask which took ownership
of that iterator and deleted it as soon as it was done. Since actually
adding the poses as well as further filtering is asynchronous and
happens after the AddPosesTask completes, the iterator was used after
it was already deleted.

Introduce BPoseView::ReturnDirentIterator() that is called after the
AddPosesTask is complete. The default version deletes the iterator,
the OpenWithPoseView overrides it and does nothing, it deletes the
iterator in the destructor instead.

Also fix leaking the ref filter. The BPoseView does not take ownership
of the filter as it usually comes from a BFilePanel which is documented
to not take ownership.

0a74a005 08-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

Tracker: Remove two outdated comments, whitespace cleanup.

d854f235 08-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

Tracker: Remove an old PPC STL workaround.

d0a9f680 04-Apr-2015 Michael Lotz <mmlr@mlotz.ch>

Tracker: Fix use-after-free on destruction of the icon caches.

The hash table member still uses the element array memeber to clear
itself on destruction. We must therefore ensure that the element array
isn't destroyed before the hash table. Since the destruction order of
memebers is the reverse order of their declaration, reordering them
is enough.

8e655993 31-Mar-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: default HideDotFiles to false (again).

As discussed on the ML.

2ead925e 29-Mar-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: fix extra border in spatial mode.

a1fc016c 29-Mar-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: allow opening the desktop as a window in navigator mode.

Fixes #9610.

4e357263 29-Mar-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: add "hide dotfiles" option to the GUI & enable it by default.

Changing this many lines of code to add a single boolean preference
is absolutely insane. We need a new preference-tracking system, and
one that can be reused in other applications, too.

Fixes #9200.

9782bd32 19-Mar-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Fix FilePanel menu bar initialization.

It appears I was a bit too hasty in hrev48850, as if I had looked more
closely I would have noticied that this code depended on the menu bar
being initialized to function correctly.

Fixes #11914.

4f716de6 05-Mar-2015 John Scipione <jscipione@gmail.com>

Tracker: Fix Tracker add-ons

Would crash if PoseView()->SelectionList()->ItemAt(0) was NULL

Fixes #11894

5b6e8d49 04-Mar-2015 John Scipione <jscipione@gmail.com>

Tracker: Obligatory style fixes

9cdba41a 03-Mar-2015 John Scipione <jscipione@gmail.com>

Tracker and Open Target Folder: Select result

Implement the todo in Open Target Folder to select the result by sending
Tracker a message with the refs to select.

Add a new kSelect message constant to tracker_private.h to hook into.

Tracker reads in the message and finds the window that the refs are located in,
activates it, then selects the corresponding poses scrolling the pose view
if necessary.

Bump version of Open Target Folder to 1.0.2

039f5926 03-Mar-2015 John Scipione <jscipione@gmail.com>

Tracker, Deskbar, ShowImage: move public commands

... to tracker_private.h so they may be used by external apps
such as Deskbar and ShowImage. Remove PublicCommands.h

2634c397 03-Mar-2015 John Scipione <jscipione@gmail.com>

Tracker and Open Target Folder: fix for containers

Containers meaning directories, queries, and virtual directories

Open Target Folder was basically rewritten to work with BEntry's that are not
BDirectory's which makes it work not only for regular directories, but also for
symlinks in virtual directories and even symlinks in queries (which also didn't
work, and now does).

Update version to 1.0.1 and copyright.

Fixes the rest of #11091

d59fdbf2 27-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Add PoseView() method

...to VirtualDirectoryWindow class

7ef62fb6 27-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Style fixes

* Style fixes to QueryContainerWindow.h
* Style fixes to ContainerWindow
* Style fixes to Model
* Style fixes to Tracker
* Style fixes to PoseView
- Most of the changes come from unindenting the code

1f68e420 02-Mar-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: initialize menus after the PoseView has been added to the window.

Fixes #11819.

1d329e20 01-Mar-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: fix CountView sizing issues.

And now, the sizing differences between layout Tracker and non-layout Tracker
should not be noticeable to the naked eye.

cd70e3e2 02-Mar-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: delete MetroWerks compatibility stuff.

1dedefaf 02-Mar-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: don't initialize layouts when we're not supposed to.

This didn't cause any problems before because all the views that don't
use layouts reimplemented this function. But that may not be the case in
the future.

8b03727a 28-Feb-2015 Augustin Cavalier <waddlesplash@gmail.com>

Revert "Tracker: Fix memory leak"

This reverts commit de7aed2b5671d54c3557fad447ba60ffe17ef9bb. It turns out
that this causes crashes when trying to navigate in directories with
type-ahead filtering enabled. (possibly related to the root cause of

9e78efbb 27-Feb-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: delete un-needed #includes.

All of these header files are already included by the .h file that
corresponds to the .cpp file.

7d515bdb 27-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: handle copying files from virtual directories

If virtual directory first resolve the symlink before copying/moving/linking the file.

Fixes #11091

R1/B1 bug squashed!

27c57467 27-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Move static functions up

Rename CopySelectionListToBListAsEntryRefs to CopySelectionListToEntryRefList
to reflect that it no longer copies to a BList but instead to a BObjectList<entry_ref>

4c47562f 27-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Minor style fixes to PoseView

f0647531 26-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: link to TargetLibsupc++

370ee87a 26-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: replace max_c with std::max

Remove using statements and put map include in its proper place

de7aed2b 26-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Fix memory leak

When items were removed from fFilteredPoseList as opposed to fPoseList, the
items were not automatically deleted and thus leaked. By setting the BObjectList
to automatically delete them on removal (by setting the deleteIfOwned paramete
to true) we avoid this leak.

c8c5ac51 26-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Fix double delete

fWidgetList is a BObjectList, the items are deleted when removed already so we
should not have the BObjectList delete them for us too. Instead, let's just turn
that off so we can delete the items ourselves one time.

8c2813c1 25-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Style fixes

95e8362c 25-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Save Desktop state again

Let me tell you a story about a bug.

In a615ec8f86406c14607c656cf90492bc58bd73d0 Axel imported the OpenTracker code
into Haiku with fSaveStateIsEnabled set to true (for Desktop and all windows).

In 9f2a3f6f47d121411c85a1e939f1cda80a4b4b1d I (John) changed it to:
fSaveStateIsEnabled(dynamic_cast<BDeskWindow*>(this) == NULL) which is suppose
to detect whether or not the ContainerWindow is the Desktop and only save the
state if it is NOT. However, this didn't actually work because since this is
called in the constructor the dynamic_cast to BDeskWindow* fails. Therefore we
were still saving the state of Desktop even though the code make it look like
we weren't.

In e7803cf1f69a81b1c77880518ba16b6708c1efdb Augustin updated the code so that
BDeskWindow passes in a isDeskbar flag as part of the constructor parameters
thus detecting that the window was Deskbar correctly. So basically Augustin
fixed the bug detecting whether or not the window was the Deskbar in the
constructor which then disabled saving the Desktop's state to attributes.
Augustin unknowingly turned saving the Desktop's state off.

We don't want to disable saving the Desktop's state because that's where we
store things like the icon size. What I was probably thinking when I tried
unsuccessfully to turn off saving the state of the Desktop was that I don't
want to save the WINDOW state of the Desktop since that would save the
window dimensions of the Desktop (whatever your screen resolution is) and if
you changed Tracker to non-spatial mode and opened the Desktop in a Tracker
window it would pick up those attributes and then make the window take up the
entire dimensions of your screen (a whole different bug).

This bug, however, is also handled in 9f2a3f6f47d121411c85a1e939f1cda80a4b4b1d
because code was added to BContainerWindow::SaveWindowState() which detects
whether or not the window is the Desktop and if so, doesn't save (or restore)
the window state (which is only part of the state).

So with this change (reversal really) the other parts of the Desktop's state
like icon size are once again saved while the window state is not.

Fixes #11864

94dcb68b 25-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Code simplication

Replace calls to dynamic_cast<BDeskWindow*>(this) != NULL with fIsDesktop
which is the flag added to the constructor in

We no longer need to do the expensive dynamic_cast's because we have a handy
flag to check instead.

5f26850c 25-Feb-2015 John Scipione <jscipione@gmail.com>

Tracker: Small style fixes

4e38bdba 14-Feb-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: Remove old (bitmap) icons.

Before removing each of these, I verified that:
* there was already a HVIF of the icon in this rdef file
* the "MICN" constant was not used anywhere in the tree

There are a few icons left (e.g. BeBox icon) that don't have HIVF
equivalents (at least not in this file.)

9a36a4c8 14-Feb-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: delete non-BControlLook drawing code.

This will result in changes to generated assembly, but should not
result in a functional change of any kind.

2f5fe16a 14-Feb-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: delete #ifndef __HAIKU__ code.

Since tracker_layout has been merged, this is pretty useless now.
Should result in no change to generated assembly.

4230183d 04-Feb-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker/StatusWindow: use vector icons.

Fixes #11711.

33858486 11-Feb-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: take advantage of BToolBar changes from the previous commit.

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).

5288f773 27-Jan-2015 John Scipione <jscipione@gmail.com>

Tracker: Reorder include alphabetically

No functional change intended, corrected in feature branch, but
unrelated to feature. Having this change in tree will make keeping
my Tracker feature branches up to date slightly easier.

e7803cf1 26-Jan-2015 Augustin Cavalier <waddlesplash@gmail.com>

Tracker: use the Layout API wherever possible.

Sorry this commit is so big, but I couldn't figure out how to do this
incrementally without breaking things.

I wasn't able to just merge Aldeck's branch, as it was a partial refactor
of Tracker and didn't just rewrite the UI creation code to use layouts,
and the changes for PM (e.g. addon loading, virtual directories) made it
very hard to merge (it doesn't even compile after an automerge) so rather
than spending time on that, I decided it'd be better to recreate his work.

Miscellaneous notes:
- This partially cleans up BPoseView & subclasses and BContainerWindow &
subclasses -- none of the subclasses and child views abuse the parent's
state, child views, or layout now.
- BFilePanel and BDeskWindow are not on layouts, because:
* BFilePanel docs in the Be Book instructed developers that wanted to
modify BFilePanel's layout to just use FindView() and then move the
views around. Obviously making it use layouts will break all BeOS
apps that do this, and there are a lot of them (Pe, WonderBrush are
just two examples.) I've added a note to the TODO list for R2 to create
a layout-compatible API for this.
* Some replicants (Workspaces, for example) rely on manipulating
BDeskWindow's drawing state. This is incompatible with layouts, as
at least in the case of Workspaces, it breaks a layouted version
of BDeskWindow entirely.
- I noticed a lot of #ifdef BEOS_VERSION ... gunk in the code. Tracker
probably didn't build on BeOS just before this commit, and now it
won't for sure, so I intend to go through and clean that out in the
near future.

This commit also fixes:
- enhancement #4996 (make Tracker's navigator use vector icons)
- bug #3039 (resizing OpenWithWindow flashes the blue border)
- bug #3889 (OpenWithWindow redraw errors)
- a regression that was a side effect of "dynamic_cast<BDeskWindow*>(this)"
always returning NULL when run in the constructor. I just added a "bool
isDeskWindow" to BContainerWindow's constructor that is only set to true
by BDeskWindow.
- a copy&paste error in VirtualDirectoryPoseView that was passing "uint32
resizeMode" as "uint32 viewMode".

Thanks to Alexandre for his original branch (it was a very useful
reference), Axel (for some miscellaneous advice & encouragement),
Adrien & Humdinger (for user interface review), and Diver (for user
interface review & testing).

da51f9c3 19-Jan-2015 John Scipione <jscipione@gmail.com>

Make Tracker MIME type add-ons list a BStringList

27c555cb 30-Dec-2014 Markus Himmel <markus@himmel-villmar.de>

Fix #8881: Add color drops to Backgrounds

- The Backgrounds preferences app will now accept color drops.
- The Backgrounds app will update if a color drop to the desktop
has changed its color due to a direct color drop

Signed-off-by: Jerome Duval <jerome.duval@gmail.com>

fe7fe266 25-Oct-2014 Axel Dörfler <axeld@pinc-software.de>

libtracker: delete folder cleanup.

* Removed a number of superfluous BDirectory::Rewind() calls.
* Renamed some variables.

529cd177 04-Dec-2014 Adrien Destugues <pulkomandy@gmail.com>

BFilePanel: allow to change the node flavors

There doesn't seem to be anything ini the implementation that would
cause a problem, as long as you don't try to change this while the
window is already open.

03ad73fc 24-Nov-2014 Adrien Destugues <pulkomandy@gmail.com>

More uses of BMessageFormat

ZipOMatic, DiskUsage, MediaConverter, MediaPlayer, ShowImage,
WebPositive, Screen preferences, Tracker, string_for_size.

Thanks to KapiX for reporting those!

961fdd8c 08-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

BMessageFormat: parse the pattern at construction

* Instead of parsing the pattern everytime Format() is called, parse it
only once when the object is created.
* Adjust all callers to make use of the feature and reuse the instance
as much as possible. This also allows calling B_TRANSLATE only once
instead of everytime the formatting needs to be done. We use either a
static instance (when the message pattern is constant) or a field (when
it is not known to be constant).
* Since the BMessageFormat instances are now reused, add locking to
avoid race conditions (ICU itself is thread safe, but the format pattern
is recreated when the locale is changed)

53382a8a 07-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

Start making use of BMessageFormat.

e3857211 02-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

Move DateTimeFormat and NumberFormat out of BLocale

* ... and adjust all callers
* Remove NumberFormatImpl: we rely on ICU to provide this and it can be
fully wrapped into the C++ file. The class was a stub anyway.
* "Monetary" format is included in NumberFormat for now. There may be a
more generic solution to handle monetary and BTimeUnitFormat (and other
arbitrary units)

03b2550e 01-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

Move time formatting to BTimeformat.

* Harmonize API for all B*Format to take an output BString by reference
as the first parameter,
* Move the FormatTime methods from BLocale to BTimeFormat
* Adjust all callers for BTimeFormat, BTimeUnitFormat and

0a925409 01-Oct-2014 Adrien Destugues <pulkomandy@gmail.com>

Adjust all BDateFormat callers again.

f188c1de 30-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

BDateFormat: improve API

* Use a reference rather than a pointer for the output string, removing
the need for NULL checks (which were missing, anyway)
* Adjust callers to that change
* Add new Format variant taking a BDate argument

2a5e33a9 26-Sep-2014 Adrien Destugues <pulkomandy@gmail.com>

Move date formatting from BLocale to BDateFormat

* There is a little code duplication. This will be moved to BFormat once
the time and datetime formatting is also moved out of BLocale
* The way to create a BDateFormat from a BLocale is still open for
discussion. I'm undecided between making BDateFormat a member of
BLocale, or adding a BDateFormat(const BLocale&) constructor.
* Adjust all users of the API.

fcc65d4a 04-Jan-2014 Janus <janus2@ymail.com>

Fix #6865: [Tracker] Use default checkboxes for permissions

360431e6 07-Sep-2014 Rene Gollent <rene@gollent.com>

Tracker: Fix #11193.

Fix regression introduced in commit 2f60dea5: BSymlink::ReadLink()
returns a byte count in the success case, which ThrowOnError() does
not anticipate. Consequently, attempts to copy symlinks would fail.

87e8603d 13-Aug-2014 Oliver Tappe <zooey@hirschkaefer.de>

Merge branch 'gcc_syslibs'

* From now on, the gcc-specific system libraries (libgcc, libsupc++ and
libstdc++) are provided by separate packages built along with gcc:
- gcc_syslibs contains the shared libraries (libgcc_s.so, libsupc++.so and
- gcc_syslibs_devel contains the static libraries and both c++ and gcc
The shared libraries now make proper use of symbol versioning and there
are version-specific symlinks
* The buildsystem has been adjusted to no longer use the libraries and
headers from the cross-compiler, but use the ones provided by the
above-mentioned packages. The only exception is that the 32-bit libraries
required for the bootloader of the x86_64 architecture are still taken
from the cross-compiler.

220d0402 31-Jul-2014 Oliver Tappe <zooey@hirschkaefer.de>

Use libstdc++, libsupc++ and libgcc from gcc_syslibs.

* Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so
from the gcc_syslibs build feature for everything except x86_gcc2.
* Use libgcc_s.so from the gcc_syslibs build feature for everything but
x86_gcc2 (which still carries libgcc as part of libroot.so).
* Drop filtering of libgcc objects for libroot, as that is no longer
necessary since we're only using libgcc-as-single-object for libroot
with x86_gcc2, where the filtered object file doesn't exist. Should
the objects that used to be filtered cause any problems as part of
libgcc_s.so, we can always filter them as part of the gcc build.
* Use libsupc++.so from the gcc_syslibs build feature for everything but
* Adjust all Jamfiles accordingly.
* Deactivate building of faked libstdc++.so for non-x86-gcc2. For
x86_gcc2, we still build libstdc++.so from the sources in the Haiku
source tree as part of the Haiku build .
* Put gcc_syslibs package onto the image, when needed.

3e2653e6 10-Aug-2014 John Scipione <jscipione@gmail.com>

Tracker: re-add includes that were lost during merge

2f60dea5 29-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Throw exception on assert failure

... in situations where a NULL pointer dereference was vital to the
functioning of the method we use a stronger assert that throws an
exception on failure. This is accomplished by a new method in
Utilities.cpp, ThrowOnAssert().

None of these conditions should ever be true, if they are it means that
the code is written improperly and would have resulted in a NULL
dereference and undefined behavior (most likely a crash) before.

Most instances of ThrowOnAssert() either replace an ASSERT followed
by a dereference or an early return that covered the error.

Also remove _ThrowOnErrorWithMessage() which wasn't being used.

9cc03189 28-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Add NULL checks and ASSERTs

To prevent recoverable NULL pointer dereferences. Dereferencing a
NULL pointer is undefined behavior and should be avoided.

Unrecoverable NULL checks will be dealt with in the next commit.

e47063d2 28-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Don't need to cast to BWindow here

d48f1c2e 28-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: code simplication, don't check if NULL

just pass in NULL, that's what is happening anyway.

82d9f9d1 28-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Use main screen if window is NULL

Here we try to determine the screen frame of screen that the window is on,
use the main screen when window is NULL.

3c4e2699 28-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: small code simplication

Use std::max() to avoid comparison and turn into 1-liner.

54e2dd72 28-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes

No functional changes intended.

85a2e66c 27-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Refactor size calc to use a BString

By using a BString we can keep track of the string length instead of
calculating the length after hoping that sprintf() works or doing a
bunch more work to check the return values using either snprintf()
or asprintf(). sprintf() was not bounds checked either. As an added
bonus we no longer have to use an arbitrary 1024 bytes size buffer.

CID 991605

a0db7748 27-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to WidgetAttributeText

* rename result to outString
* rename str to inString

e6877f10 25-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unintentional integer overflow, CID 701977

3748c166 25-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Set initial value, CID 609895

b7735c4c 25-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Set initial value, CID 609894

9ead583f 25-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Set default values, CID 609893

cf2902f4 25-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Potential, but unlikly NULL dereference

a8216d9f 25-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to WidgeAttributeText.cpp

95ef5405 25-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 611229

a35bd7b0 25-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 600452

86c2b955 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 600506

6b51d902 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to FilePanelPriv.cpp

e2ee7b04 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Move B_TRANSLATION_CONTEXT to top

of FilePanelPriv.cpp

a76808e7 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast in FilePanelPriv.cpp, CID 300327

e5355e28 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked return values

Check that find_directory() and path.Append() succeeded.

38f3b29c 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Check dynamic_cast

f0b515ec 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Check dereference NULL pointers

field->Menu() could return NULL, field->Menu()->FindMarked() could return NULL.

8fbb387b 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: check dynamic_cast

fbf61796 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Check dynamic_cast

ASSERT that it is not NULL as it shouldn't be.

a2400cc5 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: some style fixes to FindPanel

dc28a571 24-Jul-2014 John Scipione <jscipione@gmail.com>

Refactor FindPanel::Draw()

Check if pointers are NULL before dereferencing them.

dddea1f7 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Prefer textControl->Text()

over textControl->TextView()->Text(), also SetText()

73de7ce4 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: check that textControl->TextView() isn't NULL

a2b0a3c0 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: refactor FindPanel::SetUpAddRemoveButtons()

Instead of passing the box in we can just use FindView to get it,
that's what other methods do. Also, check if removeButton exists
in AddAttrRow() first instead of doing it in this method.

350af1ce 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 1210857

e85fa8f7 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 1210856

ce04484e 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Dereference NULL pointer, CID 1032279

Also a bit of a refactor of GetDefaultAttrName(), check for NULL explicitly,
rename result to attrName

861d997e 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 1032264

Also some minor refactoring, rename string to textEntryString,
check before dereferencing potentially NULL pointers.

08b7ddae 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 1032263

1e09ea53 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Check return values, CID 991051 & CID 991052

The CIDs are about mkdir, we want to check that either the command
succeeded or failed because the directory already exists.

However, we also want to check the return value of find_directory()
and Append() to make sure they succeeded as well.

1995f1a6 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Check for negative size, CID 610924

1371d18c 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 603126

f0eb64b4 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 603125

404b6d40 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 603123

ee090c53 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked return value, CID 602471

1cdaa16d 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 600353

... and possibly others.

6ef1768d 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 600349

9fc1e7ff 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 600348

d2af6ff1 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 600347

bee19b94 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 600346

35237fd8 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 500345

d6e0dbfe 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 600343

bbd3b2d9 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 600340

cfc444a6 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Unchecked dynamic_cast, CID 300339

14948881 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to FindPanel

d5881312 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: reorder includes in FindPanel.cpp

4f48aeed 24-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Check dynamic_cast, CID 600337

322b28e0 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init member var, CID 610121

015559bf 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init member vars, CID 610120

ec3d0a69 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: check dynamic_cast, CID 600336

ec23596a 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init member vars, CID 991720

a45f995d 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init member vars, CID 609834

d6c4e7a6 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init default member values, CID 609845

23d59b87 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: RegExp, set initial member values

CID 609956

8bc62a0a 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: RegExp style fixes, pointer style

acd00fc5 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init fTime to 0, CID 610125

c8c3cf03 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init default member values, CID 609642

f68bec60 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init times to 0, CID 610124

1bea02ac 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init fTime to 0, CID 610125

49d5d59c 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: AttributeStream: implement default constructor

Set members to dummy values

CID 610118

d069f646 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: AttributeStream style fixes

Rename cloneThis and attr to other

1aa5e797 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: check return value, CID 610641

... if failure, set to blank BMessage().

d5451cc8 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix negative buffer size, CID 610926

a98019cd 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: init fIteratingDesktop CID 609644, 609833

26602689 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Set default values in case of error

...for BColumn. Fixes CID 602478 and CID 602479

3557a902 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes, whitespace only

1463a012 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Initialize pointers, CID 610135-610136

e741289a 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix uninitialized members, CID 610133

68295c92 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix uninitialized members, CID 610132

91dee2fc 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix uninitialized members, CID 991721

628bd168 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix unchecked return value. CID 602488

854c14fb 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: tiny style fix, 80 char limit

d6a5d596 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix unchecked return value. CID 602487

a1c48ee5 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: tiny style fix

655fc1b4 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Check if Submenu() is NULL. CID 601585

00ce6437 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix uninitialized pointer, CID 991718

fTrashContextMenu was never initialized in the constructor
(looks like it just got overlooked since all other pointers were.)

1a250696 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix use after free, CID 610577

This seems to happen when BList got converted to a BObjectList.
The latter frees items when removing them by default while the former
does not.

50060fcc 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix unchecked return value, CID 602466

4083dbf1 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix NULL dereference

9b9c1e27 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix memory leak, CID 600996

We now only create the BString if we're going to put it in the list.

10489e89 22-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: check if widget == NULL, CID 600509

Add a few helpful comments too.

ab28908d 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Fix dereference after NULL, CID 601541

_TrackerLaunchDocuments() dereferences refs to copy it, so, we need
check that it isn't NULL first.

Also a few style fixes.
* Name params consistent with TTracker class methods
ref, message => appRef, refs
* Use NULL instead of 0 for NULL pointer.

58121655 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Fix 3 copies, CID 609040-CID 609042

strcpy() => strlcpy()

d89f61f0 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: unchecked return value, CID 602465

Check that refs is not NULL and that refs->FindData() succeeds.

Also, explicit NULL check

3aeed660 07-Aug-2014 Jérôme Duval <jerome.duval@gmail.com>

include strings.h where appriopriate...

instead or additionally to string.h, in preparation for functions move.
* moves str[n]casecmp() functions and others to strings.h.
* strings.h doesn't include string.h anymore.
* this solves #10949

51a0d540 08-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Even more optimization of this list iteration.

I hope everyone is happy, now.

267d1d78 07-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

More efficient clearing of the entryList.

As pointed out by Ingo, using RemoveAt(0) here is needlessly

fd8d809f 07-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Style fix.

9cd25f4c 07-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Build fix.

15f61ef9 07-Aug-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

CID992461: Memory leak

Fixes #10362.

478d9536 01-Aug-2014 Philippe Saint-Pierre <stpere@gmail.com>

Icon outline setting was ignored if no background image found

Might have been the cause behind #10019.

3188d3d0 23-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Remove logically dead code

Replace with an ASSERT that srcWindow != NULL by the time we've gotten
this far.

CID 1228649 and CID 1228650

b8bcb088 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Fix integer overflow


1e228168 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Initialize view and low colors

CID610137 and CID610138

190fda60 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Check that LockLooper() succeeds


a892df23 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Fix several unchecked return values

CID611191, CID611192, CID611193

5969c5d7 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Fix use after free


1933335b 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix 2 uninitialized scalers


ba24adb2 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix 2 unbounded copies


d308d1fa 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix unchecked dynamic_casts

CID603130, CID603131, CID603132

62de0e04 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix unchecked return values

Check that LockLooper() succeeds

CID611190, CID611194, CID602477

dc3cfca4 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix unused pointers

CID610474, CID610475

20e3467e 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix dereference after NULL checks

CID600503, CID600504, CID600505

0db0308b 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to PoseView.cpp

Compare with NULL explictly

565cd805 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: whitespace fix, spaces to tab

4deecac0 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Fix BuildMimeTypeList(), styleish and correct

Thanks Axel for pointing out my error.

29c145bc 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Check LockLooper() return value.

Fixes CID602468 and CID602469

Thanks waddlesplash for pointing this out.

b992df89 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Don't crash clicking Open with... menu item

This bug was introduced in hrev47498

The reason Tracker crashed was because OpenWithContainerWindow
had a NULL TargetModel() which we were trying to dereference.

Fix this by creating an empty model in OpenWithContainerWindow. Add an
ASSERT to check that the TargetModel() is not NULL in the future.

Another way to fix this bug would have been to check that TargetModel() wasn't
NULL each time before we use it. I didn't go with that solution because we
assume TargetModel() is not NULL in a lot of places so it would be a lot of work
to check them all. I think it's better to give OpenWithContainerWindow a dummy
model even though it doesn't make sense for it to have one just so that we don't
crash when we try to dereference the pointer.

bb804d09 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Make sure count > 0

... in a more stylish way, no negative counts allowed.

6527415d 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: obligatory round of style fixes

* Explicit NULL checks
* whitespace
* single line if gets no {}'s

61dec7d2 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: fix bug introduced in hrev17795

Ticket #298 for context.

In BContainerWindow::AddWindowContextMenus() pasteItem is used but
not declared if CUT_COPY_PASTE_IN_CONTEXT_MENU is defined.

5ddedec5 18-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: more style fixes to ContainerWindow.cpp

* Rename templateMenu to templatesMenu.
* 80 char limit fixes
* whitespace fixes
* Declare 1 item per line.
* Don't set variables inline, set, then use.
* Explicit NULL comparisons
* {}'s around if statment with multi-line appearance

bc1739a5 17-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: A few more style fixes to Utilities

* icon_size size => icon_size which (I've settled on which)
* fOrigBitmap => fOriginalBitmap
* resizeMask/resizeFlags => resizingMode (header and cpp match)
* error => result
* explicit NULL checks for pointers
* multi-line conditional ifs get {}'s
* rename result to more descriptive name when not status_t

c6433b0b 17-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: A few more style fixes to IconCache

* Hilight => Highlight

9f2a3f6f 27-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Move opening Desktop window to constructor

BRoster::Launch() sends B_REFS_RECEIVED before B_READY_TO_RUN
if the application is not running, so, when B_REFS_RECEIVED looked for
the Desktop window it wasn't created yet since that happen in ReadyToRun().

By creating the Desktop window in the constructor instead it is available
in RefsReceived() so an extra Desktop windows isn't opened.

8e5c1f23 25-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style, reorder includes in DeskWindow.cpp

670b729d 25-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixe, update comment, spelling

...and fits on 1 line

8b960457 27-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to ContainerWindow

537e1fff 26-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Write Trash icon attrs only once

Also create Trash if does not exist but check the if the icon
attrs are set separately.

Only set the vector trash icon #ifdef __HAIKU__ does this
even matter anymore?

7f68dcb4 26-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Write Desktop icon attrs only once

dd3359ae 26-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: return B_BAD_VALUE if you pass in a NULL dir

c2d07d99 26-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: yet more style fixes

ae7d51b2 02-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to IconCache and Utilities

ee196640 22-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Update Tracker nav bitmaps and layout

bd41bc51 27-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes in Tracker (app)

f6d49550 22-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: include ContainerWindow.h in Navigator.h

e17179d3 22-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to Navigator.h

b77cc939 22-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fix, move headers down in Navigator.cpp

f13a47d2 14-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: Pose style fixes kind => which

d5868b59 26-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to PoseView

Variable renaming for consistency and clarity

8dd0b0ae 14-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Model

d7e68211 04-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: miscellaneous style fixes

6ab2085f 22-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to ContainerWindow

49d37d94 04-Jul-2014 John Scipione <jscipione@gmail.com>

Tracker: tiny style fix, explicit NULL check

6c424fff 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Tiny style fix to Bitmaps.cpp

021aaa43 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fix, capitalize share icons hex

... just to make them consistent with the rest.

92dd9f73 16-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Style fixes, no functional changes.

ceb65ce1 16-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Extend Tracker scripting capabilities

* Allow EXECUTE on the Folder property to open a window for the passed
ref and return a BMEssenger targetting that window.
* Allog GET on the Folder property to return a messenger to the matching
window, if one is already open.
* Make scripting support mandatory and remove the define allowing to
disable it.

dd03c93f 16-Jul-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Move automount settings to the Tracker preferences

* Avoids the ugly "button that opens another window" UI paradigm in
Tracker preferences.
* Makes it possible to revert changes to the automount settings as the
Tracker preferences window has a revert button.

fcd2bfb7 15-Jul-2014 Philippe Saint-Pierre <stpere@gmail.com>

Style fix, no functional changes

Thanks Axel!

384eec8f 14-Jul-2014 Philippe Saint-Pierre <stpere@gmail.com>

Ticket #3385: inconsistencies when single window + disks icon

When using the Show Disks icon option, single window navigaton mode,
and starting navigation by the Disks icon, these bugs would occurs
upon entering child poses :

*) The draggable icon at the top right wouldn't appear
*) The file menu wouldn't update properly (for example, the New folder
menu item won't show)

Based in part on dru_ed's patch.

ab97fc05 30-Jun-2014 John Scipione <jscipione@gmail.com>

Replace FindFirst() == 0 with StartsWith()

Thanks PulkoMandy.

784d5bea 29-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: small refactor to FindPaths.

No functional change intended.

* Remove trailing / from Tracker, thanks Axel.
* put addOnPaths.CountStrings() in a variable.

f90ef128 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: fix accidental logic reversal

...introduced in a66ee36. This should hopefully be the last issue.

a1e68861 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: tiny style fix in NavMenu.cpp

b0fcbfb8 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fix, use NULL instead of 0 for pointers

512c80ef 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: add back parens

64fda603 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: fix accidential logic reversal

d73129ff 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to IconCache

7dbe2120 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Fix accidental logic reversal in a66ee36

should be: if (!container || suppressFolderHierarchy)

also rename container to isContainer

546ec3bc 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: tiny style fix to FilePanelPriv.cpp

116b363c 21-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: indent comments

91faf320 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Fix DEBUG build (I hope)

92199e80 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to WidgetAttributeText

69e5768d 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to VolumeWindow

e07476a1 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to VirtualDirectoryWindow

5d3c0dd1 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to VirtualDirectoryPoseView

d8d0539a 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to VirtualDirectoryManager

09d0d8f9 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to VirtualDirectoryEntryList

27dc6eb7 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to ViewState

a4c3bbd3 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Utilities

e29e8b3b 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to TrashWatcher

22b073d4 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to TrackerString

e55f3b53 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to TrackerSettingsWindow

4c081057 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to TrackerSettings

a92b6287 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to TrackerScripting.cpp

eaece3eb 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to TrackerInitialState.cpp

d8edc673 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Tracker class

6d4e243a 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to TitleView

477bd87b 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to TextWidget

2be7dbb5 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Tests.cpp

a2d1822e 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to TemplatesMenu

754d953d 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to StatusWindow classes

ad12c9b5 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: SlowMenu style fixes

4afa2a75 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: SlowContextPopup style fixes

f435b678 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to SettingsViews classes

b2ee107b 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to SettingsHandler classes

262e7c93 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Settings class

775ad007 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to SelectionWindow

96d9dde0 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to RegExp (minor)

0c7c3ed4 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to RecentItems

Renamed fTterator to fIterator which I'm assuming was a typo.

961b4f97 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to QueryPoseView

388dbb6f 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to QueryContainerWindow

1147c0f9 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to PublicCommands.h

just changes header guard names for consistency.

850b01ce 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to PoseViewScripting

091db3a9 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Check if selectedPose is NULL

... before using it.

14bf930b 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Check if selectedBounds is NULL

... before using it.

38181640 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to PoseView class

fdb62486 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to PoseList class

6b1b5709 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Pose class

3dca1864 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to PendingNodeMonitorCache

8c968207 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: OverrideAlert style fixes

3d47df58 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Use floats in OpenWithWindow calculations

c5138395 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to OpenWithWindow

01579713 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: NodeWalker style fixes

26325b39 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: NodePreloader style fixes

a66ee368 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: NavMenu style fixes

f97ab85b 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: make sure dynamic_cast succeeded

CID something or other I'll bet.

808af41c 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Navigator

dbe62cc7 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to MountMenu class

c8d910f7 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Model class

40ef04f3 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: MiniMenuField style fixes

90da0257 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: tiny style fix to MimTypes.h

cc334f72 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: MimeTypeList style fixes

603e1a2c 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: LockingList.h style fixes (minor)

ff43bcbf 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to InfoWindow

Return B_BAD_VALUE if pointer is NULL in InfoWindow

ba50b2c2 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to IconMenuItem

f2ed4761 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to IconCache

a83fb6fe 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to GroupedMenu

Add Open Tracker License to source as this came from OpenTracker.

aee40335 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to FSUtils

086eaa58 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to FSUndoRedo

Add Open Tracker License to source since this came from OpenTracker.

e2f6a01c 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to FSClipboard

58203edf 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to FindPanel

9f7b8c72 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to FilePermissionsView

08575837 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to FilePanel

345d92c4 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to FavoritesMenu

e4d63b6d 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to EntryIterator

a3c479b7 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to DirMenu (minor)

4242cbe2 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to DialogPane

c8f406e6 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to DeskWindow.h

tabs -> spaces

238d9b2e 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: DesktopPoseView style fixes

82d4b3dd 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Cursors.h

0fe013b6 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to CountView

63c1c892 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to ContainerWindow

d9649689 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Commands.h

barely touched it.

3a7eb1b4 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Bitmaps

95c61b83 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to BackgroundImage

ce3ae98b 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Background.h

6290bdf8 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to AutoMounterSettings

7ec2c512 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to AttributeStream

9e168cf4 20-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: style fixes to Attributes.h

991dadd6 16-Jun-2014 Humdinger <humdingerb@gmail.com>

Make sure there's a space in front of B_UTF8_ELLIPSIS.

As PulkoMandy said in hrev47388: C++11 safe and reads better.

0546bdd5 14-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: code simplication to hrev47374

We don't need to create a BNode from a BDirectory because BDirectory derives
from BNode! So use the BDirectory we already have as a BNode and get the
node_ref from it so we can pass it into WatchNode().

Sorry for the noise.

1f17f750 14-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Use BPathFinder to find add-ons

6cf062b9 14-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to DeskWindow

00922c99 14-Jun-2014 Jessica Hamilton <jessica.l.hamilton@gmail.com>

Tracker: fix accidental logic inversion. Fixes #10940.

888f72ca 09-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: close Desktop window on switch to spatial mode

If you have the Desktop window open when you switch to spatial
mode this will now close the window. You aren't allowed to have
the Desktop open in 2 places symultaneously in spatial mode.

646b1fe1 09-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Open Desktop folder in own window in browser mode.

... in a few more cases.

If you are in spatial mode and you double-click on the Desktop folder
it activates the Desktop putting all other Tracker windows in the

If you are in browser mode and you double-click on the Desktop folder
it opens the Desktop folder in the current window.

If you issue 'open ~/Desktop' from Terminal or if you have Expander set
to open the expanded folder and you expand something on the Desktop
it won't open the Desktop folder in its own window in either spatial or
browser mode.

This patch alters Trackers behavior to open the Desktop folder in its own
window in these cases when you are in browser mode.

One might argue (as a few have on IRC) that this behavior should also
happen in spatial mode, but, this patch does not alter the behavior of
spatial mode. In spatial mode opening the Desktop folder with
'open ~/Desktop' or extracting a zip file with Expander on the Desktop
simply activates the Desktop pushing all other Tracker windows into the
background state.

Fixes #10929

157e4b42 09-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Replace max_c() with std::max()

9437e677 09-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes

53286932 24-Apr-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

Move IconMenuItem.h to headers/private/tracker.

* This can be useful outside of Tracker, so make it more visible.

09b0602f 21-Feb-2014 Stephan Aßmus <superstippi@gmx.de>

Tracker: Revert not offsetting the text.

It actually looked better before. It completely depends
on the first and last letter of the text whether there is
a pixel too much on the left or right. On average, it
looks better with the offset, since the string width often
includes the spacing needed before the next glyph on the
right, while the string touches the bounding box on the left.
What should be changed is how tight everything is in general,
the selection box should simply extend more outward. But I
don't really feel like diving into that right now.

06a4c38e 21-Feb-2014 Stephan Aßmus <superstippi@gmx.de>

Tracker: Don't offset text in selection box

Either the offset was a workaround for some BeOS bug or
backwards compatibility (I know of at least a vertical off-by-one
text positioning on BeOS for backwards compatibility reasons), or
the Haiku (FreeType) text rendering simply differs slightly, which
can't be avoided. In any case, relevant here is what looks better.
Should fix #1319.

9bd08d10 01-Feb-2014 John Scipione <jscipione@gmail.com>

Tracker: Don't change selection if right-click

... inside a selection. If you click outside a selection extend the
selection to include the new items as Tracker normally would and
then pop up the dialogs.

Works with control-click as well, same utility function used.

Fixes #10449

80f4300a 01-Feb-2014 John Scipione <jscipione@gmail.com>

Tracker: Make context menu work with control-click

in additional to secondary mouse button click, uses same utility function.

898f1082 01-Feb-2014 John Scipione <jscipione@gmail.com>

Tracker: Add SecondaryMouseButtonDown method

Create this utility method in Utilities.cpp and use it elsewhere tell if the
secondary mouse button is pressed or if it is emulated with a control-click.

eed35bac 01-Feb-2014 John Scipione <jscipione@gmail.com>

Tracker: add class name to pragma

e37767b0 01-Feb-2014 John Scipione <jscipione@gmail.com>

Tracker: some style fixes to BContainerWindow()

6be6813f 01-Feb-2014 John Scipione <jscipione@gmail.com>

Tracker: swap using std::swap()

fcb24e82 31-Jan-2014 John Scipione <jscipione@gmail.com>

Tracker: Only open items if doubleclick w/ primary MB

Also rename fLastClickPt to fLastClickPoint

9d33fe68 31-Jan-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to BPoseView

d0f2d828 16-Jan-2014 Pawel Dziepak <pdziepak@quarnos.org>

Merge branch 'scheduler'


0e766ecb 13-Jan-2014 Adrien Destugues <pulkomandy@pulkomandy.tk>

allow BNavMenu to traverse symlinks

* Patch by stpere
* Fixes #6780.

72b14059 10-Jan-2014 Jonathan Schleifer <js@webkeks.org>

Fix sizeof on private, non static variable.

aa4b5749 07-Jan-2014 Alexander von Gluck IV <kallisti5@unixzen.com>

runtime_loader: Detect and trigger on PE binaries

* Previously PE binaries would trigger the "incorrectly
executable" dialog. Now we get a special message for
* Legacy at the moment is a R3 x86 PE binary. This could
be extended to gcc2 binaries someday far, far, down the
road though
* The check for legacy is based on a PE flag I see
set on every R3 binary (that isn't set on dos ones)
* Unknown is something we know *is* an executable, but
can't do anything with (such as an MSDOS or Windows
* No performance drops as we do the PE scan last
* Tested on x86 and x86_gcc2

80c9ee9c 24-Dec-2013 Freeman Lou <freemanlou2430@Yahoo.com>

Tracker: exclude trash from selection.

Signed-off-by: Rene Gollent <rene@gollent.com>

1bc7045f 15-Dec-2013 Pawel Dziepak <pdziepak@quarnos.org>

kernel, libroot: Introduce new API for obtaining system info

fdc8f5b8 19-Nov-2013 Puck Meerburg <puck@puckipedia.nl>

Tracker: Use Alt-L to set focus on Navigator's location

* Alt-L shortcut sets the focus to location input view in single navigation mode;
* Fixes #9602.

- GCI2013

e551626f 01-Dec-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Implement support for a SYS:ENV attribute on executable

__flatten_process_args() does now have the executable path as an
additional (optional) parameter. If specified, the function will read
the file's SYS:ENV attribute (if set) and use its value to modified the
environment it is preparing for the new process. Currently supported
attribute values are strings consisting of "<var>=<value>" substrings
separated by "\0" (backslash zero), with '\' being used as an escape
character. The environment will be altered to contain the specified
"<var>=<value>" elements, replacing a preexisting <var> element (if

A possible use case would be setting a SYS:ENV attribute with value
"DISABLE_ASLR=1" on an executable that needs ASLR disabled.

bd336e3a 19-Oct-2013 John Scipione <jscipione@gmail.com>

Update semantic shortcuts

Update BKeymap::GetModifiedCharacters() to translate a given character
and set of modifiers filling out a list of all characters that match for another
set of modifiers.

This allows us to, for example, get all characters in the normal map that
have the '+' character in the corresponding shift map.

It is fully generic allowing one to get a list of characters in any map given
a character and modifiers of another map.

Also I converted from using a BList to using a BObjectList.

With this, along with BWindow::HasShortcut(), the semantic shortcuts now
work not only with Command+'=', but any key in the normal map that has
'+' in it's shift map as long as it isn't already taken by another shortcut.

57f830ce 18-Oct-2013 John Scipione <jscipione@gmail.com>

Tracker: Add semantic zoom in shortcut.

Fixes #6692

iif '+' is localed in shift + '=' in your keymap, add a shortcut for
Command + '=' to zoom in.

000e7d40 18-Oct-2013 John Scipione <jscipione@gmail.com>

Tracker: Add zoom shortcuts to menuless windows

(for instance the desktop)

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

38fa81bf 03-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove B_COMMON*_DIRECTORY and kCommon*Directory constants

* This does intentionally break source compatibility, so that a review
of concerned code is forced.
* Binary compatibility should be maintained in most cases. The values
of the constants for the writable directories are now used for the
writable system directories. The values for the non-writable
directories are mapped to "/boot/system/data/empty/...", an empty or
non-existent directory, so that they will simply be skipped in search
paths. Only code that explicitly expects to find something in a
B_COMMON_* directory, will fail.

4b7e2196 03-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove /boot/common for good

* Remove support for the "common" installation location from packagefs,
package kit, package daemon, package managers.
* Rename the B_COMMON_*_DIRECTORY constants referring to writable
directories to B_SYSTEM_*_DIRECTORY.
* Remove/adjust the use of various B_COMMON_*_DIRECTORY constants.
I'm sure some occurrence still remain. They can be adjusted when the
remaining B_COMMON_*_DIRECTORY constants are removed.

cf70d345 12-Sep-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Merge remote-tracking branch 'haiku/master' into package-management

This reverts 8f7f28a7c3db28711920ad5d15df401fae90bcf1 (OpenGL: Upgrade
Mesa 9.2).


d691c48c 30-Aug-2013 John Scipione <jscipione@gmail.com>

Tracker: get StringWidth of menuField, not view

f8a99c90 09-Aug-2013 Rene Gollent <anevilyak@gmail.com>


ac4d653d 09-Aug-2013 Rene Gollent <anevilyak@gmail.com>

Tracker: Fix another navigator issue.

The problem indicated by #8388 hid another issue with respect to
show/hiding the navigator on the fly, namely that it didn't correctly
respect the type of Tracker window, which would cause the navigator to
show up in cases where it shouldn't, such as query windows.

b939c391 07-Aug-2013 Rene Gollent <anevilyak@gmail.com>

Tracker: Fix #8388.

BNavigator shouldn't update its location until AllAttached(). Otherwise,
it might immediately trigger a redraw, and in such a case, the
navigation buttons wouldn't yet have had a chance to load their icon
resources, leading to a debug assert in BPictureButton due to said
images not being present, but required.

225b6382 05-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Support building most system libraries for secondary arch

Also adjust the HaikuImageGet[Private]SystemLibs rules to support to
return the library targets matching the current architecture.

040a8141 05-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add node_ref::operator <

Moved from VirtualDirectoryManager. Defining the operator static doesn't
work with gcc 4 and it's useful to have globally available anyway.

8a2643da 05-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

libtracker: VirtualDirectoryManager::_RemoveDirectory(): typo

Should have caused infinite recursion when the directory still had

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.
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).

4ba4d40b 13-Jul-2013 Philippe Saint-Pierre <stpere@gmail.com>

Addons shortcuts: fix override

Under some specific circumstances (changing the key and the modifier in a specific way
at the same time), Tracker would get confused and not change the shortcut.

Thanks Diver

3fe41617 13-Jul-2013 Philippe Saint-Pierre <stpere@gmail.com>

Tracker add-on shortcuts, move resource to BEOS: namespace

29cfb630 11-Jul-2013 Philippe Saint-Pierre <stpere@gmail.com>

Regression fix in Tracker

A delay on Tracker quit request was wrongly introduced
(via reboot, or hey Tracker quit, for example)

d058a4ae 10-Jul-2013 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: store default add-ons shortcuts in resource

* Default shortcuts for add-ons are now stored within the binary as a resource
(it was previously appended to the file name, as Open Terminal-T, for example)
* Use ~/config/shortcuts_settings to override those default shortcuts
(editable with Shortcuts preflet)
* Tracker avoid rescanning the add-ons directories when unnecessary
* Monitor the shortcuts_settings to apply changes on the fly
* Fallback to default shortcuts whenever appropriate (settings file deleted, etc.)
* Should fix #4446 (with resource rather than attributes)

7e78b434 08-Jul-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Merge remote-tracking branch 'haiku/master' into package-management


1c29b26e 29-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add virtual directory feature to Tracker

Similar to stored queries, files of the virtual directory type behave
like directories -- i.e. they open in a list-mode Tracker window and
show up as an item with submenu in navigation menus. The file itself is
a plain text file in driver settings format. It can have an arbitrary
number of "directory" entries, which specify the paths of (actual)
directories for which the virtual directory provides a merged view. The
view will not show duplicate entries. For non-directory entries the
first one encountered (according to the order the directory paths are
specified in the file) will be shown. A subdirectory entry will again
behave like a virtual directory.

The support in Tracker isn't perfect yet. I'm afraid major refactoring
would be necessary to get it there.

The virtual directory file type uses a differently colored version of
the folder icon. Alternatives welcome.

de85051c 29-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BPoseView::AttributeChanged(): additional check in icon case

Model::AttrChanged() requires the model to be open and so does
IconCache::IconChanged(), so add the check. Not sure if the block is
ever executed now (or ever worked before). This does at least prevent
asserts being triggered when compiled with debugging enabled.

ddd775f5 20-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BPoseView::FSNotification(): fix issue in debug build

535207ae 19-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

BPoseView::AddPosesTask(): fix count checks

In case GetNextDirents() returned an error, the wrong blocks were

0ebfc3e0 23-Jun-2013 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: remove superflous separator item in ContextMenu #6997

99380098 04-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

add_catalog_entry_attributes.sh: Remove optional directory

a532c573 04-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove /boot/{apps,preferences} symlinks

And adjust all remained occurrence in the tree accordingly (->

2fec3040 02-Jun-2013 John Scipione <jscipione@gmail.com>

Tracker Settings: Put color control a group and add indents

* Also don't set the initial position since the layout kit takes
care of that for us now.
* Remove the no longer used spacing constants.

7fd5989d 02-Jun-2013 John Scipione <jscipione@gmail.com>

Tracker Settings: Style fixes

* Add spaces around {}'s
* Add 2 blank lines between class declarations in header

62bcb75c 02-Jun-2013 John Scipione <jscipione@gmail.com>

Tracker Settings: Re-factor includes

* Remove includes from header and use bare class definitions instead
* Add the includes from the header to the cpp file
* Remove Alert.h include from cpp file, not used.
* Remove TextControl.h include from header, not used.
* Add Point.h include to cpp file, we do use that.
* Reorder includes according to style guidelines

64c61228 02-Jun-2013 John Scipione <jscipione@gmail.com>

Tracker Settings: Use BLayoutBuilder template and refactor

... instead of using the less flexable BGroupLayoutBuilder.

* Reduce Group levels used by eliminating the uneeded top
level group.
* Use font relative spacing units in a few places instead of
hard coding 20 pixels.
* By using the layout builder template I can use the single
parameter version of SetInsets().

f6d98e7b 29-May-2013 John Scipione <jscipione@gmail.com>

File Panel: make room for icon in directory menu field

c663ca21 11-May-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Merge branch 'master' into package-management


09cbc86d 10-May-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

TTracker::RefsReceived(): Forward "be:*" message fields

In some cases /bin/open puts some additional fields in the
B_REFS_RECEIVED message, but those were completely ignored. This makes
opening paths with appended line/column numbers actually work as

935599c5 08-May-2013 John Scipione <jscipione@gmail.com>

Revert "Info: Set fixed size true for pref app menu field"

This reverts commit 879020baf11d142a48ba1714fcca1c419b93a4c3.

879020ba 08-May-2013 John Scipione <jscipione@gmail.com>

Info: Set fixed size true for pref app menu field

Fixes #9753

This changes the preferred app menu field to no longer resize itself
based on the item width and instead always take up the rest of the
available space in the window. For narrower items this means that there
will be empty space to the right where there wasn't before. For items
wider than the available width of the window (like the example in #9753)
this means that the item will be truncated when selected.

AFAIK this was always a problem and was not caused by my recent work on
menu fields, we just didn't notice it because it's rare that an application
name in English at the default 12pt font size is wider than the available

That being said, this fix is a band aid, the real fix is to convert this
window to use the layout APIs so that if you have an application that is too
wide to fit then the window will resize itself to fit the new item. There are
other some layout problems in this window too. Unfortunately, like Find, this
window has not been updated in aldeck's Tracker layout branch. Luckily,
converting this window to use the layout API is a lot less work than Find was.

13cec302 06-May-2013 John Scipione <jscipione@gmail.com>

Find: set a max width on each of the menu fields

... instead of the just on the mime type menu now that
menu field truncation is working. This will prevent the
volume menu growing too wide as well.

25a7b01d 05-May-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Merge branch 'master' into package-management

Additional changes:
* Add src/system/kernel/lib/zlib, which builds a kernel version of zlib,
needed by packagefs.
* BuildFeatures: Add a build feature "gcc2" to allow for easier checks.
* Referenceable.cpp: Include <OS.h> instead of <debugger.h>. The latter
is not needed and prevents building for the build platform.
* zlib/zutil.h: Fix gcc 2 build. We really should use the external
package instead.


6723d9fc 30-Apr-2013 John Scipione <jscipione@gmail.com>

Create a BWindow::AlertPosition() method and use it

...to position alert's and open/save dialogs nicely inside of the parent window,
or if that is unavailable, the screen frame.

AlertPosition() is private (for now) but BAlert and BFilePanel are BWindow's friends so
BWindow allows those classes to touch it's privates.

3a12979d 29-Apr-2013 John Scipione <jscipione@gmail.com>

FindPanel: Set the MIME type field to fixed width

...instead of based on the width of its contents which can make the window
grow too wide. Fixes #9719

c80aa6e4 29-Apr-2013 John Scipione <jscipione@gmail.com>

Simplication in Tracker Find Panel

If attribute mode and you select a mime type, Remove then add the rows first
with the first items marked, then go through and re-mark the selected item.

ec63fd32 28-Apr-2013 John Scipione <jscipione@gmail.com>

Use std::max instead of max_c

3c777060 28-Apr-2013 John Scipione <jscipione@gmail.com>

Fix gcc4 build, use max_c from SupportDefs instead of max

f542c513 28-Apr-2013 John Scipione <jscipione@gmail.com>

Fix bug involving the condition string being removed when it shouldn't

This bug occured when you selected from the mime type menu field while in
attribute mode. The rows are removed and added again but the condition string
view was left out because the menu item wasn't marked yet. Reordered to remove
row, then set marked, then add row checking if marked and adding the condition
string view based on the marked mime type. If no mime types are set it uses the
first mimetype instead which is what we want in that case.

2db4f183 28-Apr-2013 John Scipione <jscipione@gmail.com>

Make logic menu field more font dynamic, wasn't working for Japanese

Some style fixes and code simplications too.

e001e604 28-Apr-2013 John Scipione <jscipione@gmail.com>

Consolidate strings so they are added to the catalog just once.

337a12f6 28-Apr-2013 John Scipione <jscipione@gmail.com>

Another style fix

32994cb4 28-Apr-2013 John Scipione <jscipione@gmail.com>

Style fixes and code simplifications

955d6389 28-Apr-2013 John Scipione <jscipione@gmail.com>

Close window on Esc

e94d7e41 27-Apr-2013 John Scipione <jscipione@gmail.com>

Remove the And/Or menu field when you remove a row

43f6509c 27-Apr-2013 John Scipione <jscipione@gmail.com>

Turn off radio mode and set label from marked for fRecentQueries

35e34dda 27-Apr-2013 John Scipione <jscipione@gmail.com>

Use sentence case lowercasing the word "query"

0184cbec 27-Apr-2013 John Scipione <jscipione@gmail.com>

Eliminate variable, set directly

f7467fd1 27-Apr-2013 John Scipione <jscipione@gmail.com>

Set the PaneSwitch arrow rect based on the be_plain_font size

bedc6966 27-Apr-2013 John Scipione <jscipione@gmail.com>

Put checkboxes under query box in more options

d3277fa8 27-Apr-2013 John Scipione <jscipione@gmail.com>

Tweak the latch position

e8a78127 26-Apr-2013 John Scipione <jscipione@gmail.com>

Sentence case Recent queries, clip count from 0 to 10

1db0bf00 26-Apr-2013 John Scipione <jscipione@gmail.com>

Make the logic menu fields non-navigatable, tab order

16c46df9 26-Apr-2013 John Scipione <jscipione@gmail.com>

Remove dead code, de-indent comment

c65c2a54 26-Apr-2013 John Scipione <jscipione@gmail.com>

Rename add and remove to add button and remove button

c00d0642 26-Apr-2013 John Scipione <jscipione@gmail.com>

Right align Add and Remove buttons

56fe9fad 26-Apr-2013 John Scipione <jscipione@gmail.com>

Refactor attaching FindPanel to FindWindow

8e8b861c 26-Apr-2013 John Scipione <jscipione@gmail.com>

Set the initial rect to 0 and center the window on screen

a12df99d 26-Apr-2013 John Scipione <jscipione@gmail.com>

Use font relative spacing units

1b989483 26-Apr-2013 John Scipione <jscipione@gmail.com>

Style fixes

21fd5809 26-Apr-2013 Jessica Hamilton <jessica.l.hamilton@gmail.com>

Update Tracker's Find Panel to use the Layout API.

Signed-off-by: John Scipione <jscipione@gmail.com>

a53db189 11-Apr-2013 Rene Gollent <anevilyak@gmail.com>

Fix #9663.

When clearing the filter state, don't disable filtering entirely if we
have a ref filter present. Otherwise, it won't be invoked again
until the next time a typeahead filter is engaged.

1af18424 09-Apr-2013 John Scipione <jscipione@gmail.com>

Pass the B_FILTER_BITMAP_BILINEAR for scaling backgrounds

Fixes #6536

7e702e52 09-Apr-2013 John Scipione <jscipione@gmail.com>

Covert Tracker Find window to use ControlLook arrows

Also fix a few style issues and make the MiniMenu control have a nice keyboard
focus border.

3c6d2325 11-Feb-2013 John Scipione <jscipione@gmail.com>

Update Tracker prefs window workspace behavior.

Basically make the Tracker preferences window work like most other
windows do as far as workspaces go.

Opens on your current workspace. If you switch workspaces then go
into Deskbar and select Tracker Preferences it will switch to
the workspace that already has the window open. If you close the
window, switch workspaces and then select preferences it will move
the window to your current workspace and show it.

This is similar to the fix for the same problem on the Deskbar
preferences window and for the same reason: the window gets hidden
when you close it, not actually deleted so we need to do a bit more
work to get the window to behave with workspaces. Hiding instead of
deleting the window allows us to remember where you were when you
closed the window, what tab you were on, what control had focus, etc.

Fixes #8000

1baa2211 10-Feb-2013 Humdinger <humdingerb@gmail.com>

Removed Trash options from Tracker prefs.

As discussed [1][2], using a Trash is in the interest of the
vast majority of users. The setting is still present in the
Tracker settings file. SHIFT+DELETE will still bypass the

[2] http://www.freelists.org/post/haiku/Removing-Trackers-Trash-options

Please enter the commit message for your changes. Lines starting

163a3948 09-Feb-2013 Humdinger <humdingerb@gmail.com>

Revert "Renamed Tracker option "Don't move files to Trash" (#9352)"

This reverts commit 45f77dcd7029914ccd99178dfb333eb68c7af9e5.

0288eb77 01-Feb-2013 Matt Madia <mattmadia@gmail.com>

Reword an alert prompt to be less detailed, but more correct.

Resolves #6654. To note, AFAICT, this code block should never be executed.
However, I did feel comfortable removing it, in case the location of Trash
is relocated in the future.

2e6221ff 27-Jan-2013 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Replace usage of ceil by ceilf

45f77dcd 06-Jan-2013 Humdinger <humdingerb@gmail.com>

Renamed Tracker option "Don't move files to Trash" (#9352)

Renamed that option as it is the only negatively phrased to
"Move deleted files to Trash first" and also the option below
that to "Ask before deleting for good".
Also renamed every function name etc. in that regard and also
settings string of the Tracker settings file.

db416834 02-Jan-2013 Matt Madia <mattmadia@gmail.com>

Automatic whitespace cleanup. No functional change.

a74c82b9 25-Dec-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Drawing issues in dragBitmap (#8005)

Remove rounding issues in height calculation leading to drawing issues when using some font sizes.

205cf695 24-Dec-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Force Identify - don't require holding shift (#4857)

Don't require to hold shift when clicking on force identify,
can now be released after popup menu have appeared.

3fbf5d68 23-Dec-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Drawing artifact (#6513)

After switching from outline only selection mode to transparent rectangle,
a drawing artifact could occur because the last selection rectangle wasn't
reset properly. On following update, Tracker thought a selection rectangle
was still to be shown.

cd03d7c1 21-Dec-2012 John Scipione <jscipione@gmail.com>

Remove locking from TrackerSettingsWindow::QuitRequested()

Like Deskbar it isn't needed here either since the window is already
locked. The return value seems to be totally ignored, so, just leave
as is.

08c0a78f 20-Dec-2012 John Scipione <jscipione@gmail.com>

(Tiny) style fix only

0eacc85b 20-Dec-2012 John Scipione <jscipione@gmail.com>

Style fixes, no functional change indented

6c6fcaf9 20-Dec-2012 Alex Smith <alex@alex-smith.me.uk>

Some build fixes for DEBUG=1.

1789de43 02-Dec-2012 Humdinger <humdingerb@gmail.com>

Left-aligned Eject-checkbox in mount settings
Thanks to diver.

923d64ef 25-Nov-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Prevent TextWidget to start editing twice

It was possible to confuse TextWidget to start editing twice (clicking on the widget and during the wait,
pressing F2) and confusing the states of the TextWidget.

d6a17f3d 25-Nov-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: fix memory leak in OpenWithFilter. (CID #715684)

dbe30881 25-Nov-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Tracker crashes in KeyDown() if there are no models associated with the PoseView.

Happens in special windows, such as OpenWith Window, that do have a PoseView not associated
with a model. Fixes #8160.

e1fb666f 24-Nov-2012 John Scipione <jscipione@gmail.com>

While I'm at it update Tracker preferences ListView.

* Use be_control_look->DefaultLabelSpacing() instead of hard-coding 4px.
* Use pre-generated system colors.
* Indicate a pane is revertable by making the font bold instead of
blue. This makes the revertable setting orthogonal with the
selected setting (can be both bold and selected color).

11c9f9a1 18-Nov-2012 Alex Smith <alex@alex-smith.me.uk>

Merge branch 'master' into x86_64


9c647375 07-Oct-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

Tracker: Style fix (+alpha4)

* Depends on ff09527e4f6f67 (which is +alpha4 *not* +alpha3) :)
* As per commit ML
* Do a direct AddItem vs using an item variable which
breaks program flow.
* A better long term solution may be to enable the debug server
to recover 'system' applications that fail. #9039

ff09527e 02-Oct-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

Tracker: Introduce "Restart Deskbar" option (+alpha3)

* Matches "Restart Tracker" option in Deskbar
* Only shows up when 0 Deskbar processes exist
* Don't dereference fFileMenu if RepopulateMenus called
on desktop (no menu bar)
* Regenerate desktop menu on each click
* Resolves #9039

751c6aba 23-Sep-2012 Axel Dörfler <axeld@pinc-software.de>

Fixed saving the column state to a message.

* This fixes copy/pasting the column state when the "display-as"
feature is used.

151b6997 15-Sep-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Moving columns could make an horizontal scrollbar appear

96c30cc8 03-Sep-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: fix warning in gcc2

Refactor a bit the conditions to avoid a warning.

139ee879 03-Sep-2012 Rene Gollent <anevilyak@gmail.com>

Fix some behavioral regressions introduced by previous commit.

- Some parts of Tracker were basing certain assumptions on whether the
types list was NULL or not. We now check on list emptiness instead.

9335e141 03-Sep-2012 Rene Gollent <anevilyak@gmail.com>

Fix crash when dragging files onto nav menus.

- BNavMenu now keeps its own copy of the cached types list that's passed to it.
In some circumstances it could happen that the container window would
delete the list and consequently the nav menu would wind up with a pointer
to an invalid object. Probably a regression from the async mouse tracking

d6c852ec 19-Aug-2012 Ryan Leavengood <leavengood@gmail.com>

Actually cache something when CacheLocalizedName is called.

Before its name was a lie, since nothing was cached.

Another boolean was added because getting the localized name could fail, and we
don't want to pointlessly try again, so relying on fHasLocalizedName won't work
for that.

Since in my tests this was getting called up to 4 times per application when
opening the Deskbar Application menu, this caching should speed that up a bit,
at least when this file name translation feature is turned on.

ed63a5d2 18-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Double-Click simplification

Double-click check was redoing what is essentially already done in input_server.

The way we were doing it, right clicking (or pressing a different button for the second click,
for that matter) wasn't clearing the fields remembered and thus not breaking the sequence.
So a third click returning to the correct sequence (in a short time) would get recognized
as a valid second click. So a quick left-right-left would be seen by that method as left-left.

Also, clean up a previous fix I committed. Removed the introduced Origin() method as it
is the LeftTop() method I was interested in and it is already existing.

Fix #8714

cc2b203e 17-Aug-2012 Humdinger <humdingerb@gmail.com>

Reverting part of hrev44535.

Renaming "Preferences" to "Tracker preferences" has been
unexpectedly contentious. Reverted.

e688bf23 16-Aug-2012 Alex Smith <alex@alex-smith.me.uk>

Merge branch 'master' into x86_64


ef4ed1b7 15-Aug-2012 Humdinger <humdingerb@gmail.com>

Replaced "Preferences"/"Options" with "Settings"

Replaced remaining "Preferences" and "Options" with "Settings" as
that is generally used for app settings instead of the system
preferences found in the preference panels.

Renamed Tracker's "Preferences" to "Tracker preferences" to be
similar to the entries in the Deskbar and e.g. the Media replicant
in the Deskbar tray.

c3837537 14-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: TextWidget editing flaws

TextWidget tried to detect if the editing box would span outside the PoseView,
but it was using an hardcoded value of 1 for the minimum left value. But in Icon mode,
negative values can occur. Change to use the view's origin (top left corner of the view).

8cbdf82a 14-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Drawing glitch when created Pose is first in PoseView

Due to clipping of a rect to match the view bounds, there was a confusion
as to whether the rect was at the top of the view bounds, or above the view
bounds as both met the condition.

Fixes #8876.

7ad72ef6 12-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

PoseView: avoid duplication of poses

When filtered, clear the FilteredPoseList before re-filling it.

Fixes #8875.

39433058 11-Aug-2012 Rene Gollent <anevilyak@gmail.com>

Fix ticket #8858.

- When an Identify/Force Identify request is made in Tracker, if the target
is a link, resolve it to its destination first. Fixes #8858.
- Have mime_update.sh explicitly mimeset the welcome/user guide scripts.

c01e918c 09-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Cancel editing of Widget if sorting of poses occured.

Since the position of the widget was registered at the first click,
it likely changed and its causing drawing afterfacts (it's editing at
its old location).

66c09a35 09-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Delayed widget editing, crash avoidance

Make the PoseView stop watching a TextWidget if it's being deleted.
Could happen in race conditions for example, if you click to edit
the name widget of a pose while the pose is being deleted soon after.

4cf0af06 09-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Additional cases to cancel double-click detection

Don't wait for a potential second click (and then trigger Widget editing) when:

1. a click occurs on a different pose, on a 'pose-less' area or when right clicking
2. when you start dragging something.

741e5246 09-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Double-click management changes

Make the "second click of a double-click" detection waiting time async. In other words
(hopefully clearer), when the TextWidget gets a click, it register itself, recording the time,
and it will get the editing order later as a callback from PoseView when the delay without any
further click expires.

Fixes #8818 and maybe others.

e0e641c0 09-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Style fixes, should have no functional change

a5e96a30 09-Aug-2012 Alex Smith <alex@alex-smith.me.uk>

Merge branch 'master' into x86_64

97660846 08-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

InfoWindow: Icon wasn't properly refreshing when changing

11a36918 08-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

PoseView::AddPosesTask - no need to open the node at this point

aafb6faf 08-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

PoseView: crash related to PoseView containing many files

Due to a previous change in the incrementation of models in AddPosesTask,
PoseView containing large number of poses were prone to crash in ClearPoses().

Gaps in PoseList or other invalid memory area were introduced.

Thanks to x-ist for precious assistance in spotting those issues!

0bc1be32 08-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

PoseView: Fix crash in FilePanel

Again, a regression fix. Under some circumstance, fFiltering was wrongly
set. Also, the node wasn't open before checking the BRefFilter and some
filters expected that to be.

5489384d 08-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: crash fix in FilePanel

Regression of hrev44493, file panel crashed when changing dir and
filtering being disabled (sorry!)

Also fix the widget editing when filtering is activated. Now renaming
a file/folder and causing it to 'fall off' the filter does work.

7d460e3b 07-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

PoseList: fix an assertion failure

ea8b1e14 07-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

OpenWithWindow: Fix crash at closing, and fix filtering

Following hrev44493, the way ShouldShowPose was used changed a bit,
to harmonize with type ahead filtering.

This updates OpenWithWindow to use a BRefFilter to do its
filtering rather than overloading ShouldShowPose.

c2535dc4 07-Aug-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: various issues regarding filtering

1. A BRefFilter-ed PoseView wouldn't keep monitoring files after its opening
thus not picking up files that happen to fit the filter thereafter (mime attr
updated, etc..)
2. A filtered PoseView wouldn't get updated when:
a) a column was added or removed
b) a file was renamed
c) a file was moved
3. Harmonize the way BRefFiltering and Type-ahead filtering are working. Both
can be used together.
4. The handler for AttributeChanged() wasn't working properly if link(s) of a
changed model was/were its siblings.
5. Broken links weren't detected/updated (it nows monitor the lost target
parent directory, and wait for the target creation to show the link fixed)

This is a big change (even more considering the 'critical-ness' of the component)
Testing is MUCH welcome!

Should fix #4254, #5381, #1717 (and maybe others)

c802257b 05-Aug-2012 Alex Smith <alex@alex-smith.me.uk>

Merge branch 'master' into x86_64

aed35104 05-Aug-2012 Humdinger <humdingerb@gmail.com>

Close alerts with ESCAPE key.

Added SetFlags(B_CLOSE_ON_ESCAPE) or SetShortcut(index, B_ESCAPE) to BAlerts
depending if the result gets used later in the code, or if it's a one-button

adf8818e 05-Aug-2012 Alex Smith <alex@alex-smith.me.uk>

Compilation fixes for Terminal, add to image.

It runs, but has shown up various bugs: app_server crashes, kernel
panics, rendering problems. Working on fixing these now.

688e8788 28-Jul-2012 Ryan Leavengood <leavengood@gmail.com>

Don't check for double click if it was a right mouse click.

Fixes #8714.

e51854a1 15-Jul-2012 John Scipione <jscipione@gmail.com>

Add 96x96 and 128x128 icon sizes to tracker including scaling of BeOS icons using scale3x and scale4x algorithms.

ea001e58 28-Jul-2012 John Scipione <jscipione@gmail.com>

Round 2 of style changes to Tracker

* focused on 80-char limit fixes.
* also some whitespace and case statement indentation fixes

a51764c5 27-Jul-2012 John Scipione <jscipione@gmail.com>

WIP: Yet more style fixes, mostly 80 char violations.

96a1e39a 27-Jul-2012 John Scipione <jscipione@gmail.com>

An error while emptying trash is not that dramatic.

caaec019 27-Jul-2012 John Scipione <jscipione@gmail.com>

A for loop with just an end condition is better as a while loop.

b05aa8b5 27-Jul-2012 John Scipione <jscipione@gmail.com>

Style changes in Tracker, no functional change.

Manual whitespace cleanup
Change instances of const char * to const char*
Convert /* */ C style comments to // C++ style comments

b866f1fa 24-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Files created from templates are now monitored

fixes #2796.

4c45f003 23-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Right clicking on Pose triggered Rename prompts

Right clicking on a Pose to get the contextual menu would quite often
trigger a rename action of that pose. Don't allow to rename a pose
by releasing the secondary mouse button.

fb678bc3 23-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Sorting in filtered view led to crash

Fixes #6992.

c082e8f2 23-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Variation between Saved and Restored widths

When restored, an overlap was wrongly detected in offsets for
failure to take into account the width of the border line.

This was causing the horizontal scrollbar to show unnecessarily.

50d739de 23-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Regression fix

A crash of Tracker was triggered when accessing AddOn menu (by
shortcut or context-menu) for Pose on Desktop, because of it's
incapacity to read the mime type list (that wasn't built in
those cases).

5cdd07a8 23-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Optimisation of AddonMenu menu construction

1. Build the list of mimetypes of files in selection only once and
reuse it for all further tests.

2. Fix a regression introduced in hrev44384 where the MimeType()
wouldn't get recognized when just changed by tracker (by that same
right click). It would be on subsequent clicks.

3. Rename the static map variable to better fit our coding style
and be more understandable.

516cac78 23-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Coding style violations fixes and typos

No functional changes, thanks Axel!

674ff0df 22-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Various sorting issues in Tracker

When sorting files by Modified dates, right clicking on a file was leading
to a sorting issue where files were changing positions (without reason).

1. Any changes to stats (size, modification, creation, mode) was triggering
the sorting. Now only stats fields currently used as a Sort criteria will
trigger such event.

2. The Mimeset of file was set (in case of unknown file format) once per checked
add-on when building AddOn Menu. Now it's checked once per file in selection.
(so, once per file, rather then once per file, per add-on).

3. Now rely on registrar to force the mimeset (to trigger the sniffer in case
the attribute already exist) rather than trying to duplicate the feature in Tracker.

4. When Sorting, if there is a old position known, check if it's working by looking
if you should come after the previous item, and before the following item. Previously,
the item would be pushed at the top if the group of item all fitting the criteria
(same file size, same file kind, etc.. depending on the sorting criteria).

Fixes #8478.

1236c746 21-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: a file leaving Trash won't appear in QueryPoseView

Fixing #1592.

A feedback FSNotification()->EntryMoved->PendingNodeMonitorCache->FSNotification
was seemingly introducing some race condition, as it was working 1 time
on several tries.

851c719d 04-Jul-2012 Humdinger <humdingerb@gmail.com>

Small text changes in alert when renaming/moving special folders.

Since the button was renamed from "Do it!" to the specific action,
an additional explanation in case of special user folders isn't
needed any more.
Split text into paragraphs for better readability.

72b7db34 21-May-2012 Reznikov Sergei <diver@gelios.net>

Added resize to fit shortcuts. Partially fixes #7467.

* Adjusted initial tracker windows width to fit modified column.
* Resolved a TODO: Added get info shortcut to Open with window.

Author: Sergei Reznikov <diver@gelios.net>

Signed-off-by: Alexandre Deckner <alexandre.deckner@uzzl.com>

78614977 06-May-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Removing the Desktop Background Image don't clear a pointer

fBackgroundImage wasn't being cleared when removing the desktop
background image because the loading process wasn't ignoring
loading failures (as is the "no background for this workspace" setting).

fBackgroundImage not being NULL was causing crashes mainly in
ScreenChanged(), where it was trying to re-center a non-existant
background. Was causing #7376 and maybe others.

4dad975d 06-May-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Consider extra column margin in PoseView::Extent()

In List Mode, consider the extra margin added to the right of
the last column when computing the Extent of the PoseView. This
was causing the ResizeToFit to resize a bit too small.

Fixes #4318

f790fa29 17-Apr-2012 Axel Dörfler <axeld@pinc-software.de>

Added a tool tip for the detailed progress info.

* Got rid of the parentheses around the progress text.
* Automatic whitespace cleanup.

ba747b26 14-Apr-2012 Reznikov Sergei <diver@gelios.net>

Fix #5586: Add missing shortcuts to FilePanel.

546208a5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.

3da13b80 07-Apr-2012 Rene Gollent <anevilyak@gmail.com>

Fix typeahead cancellation in file panels.

- Add accessor to PoseView that reports whether the view is currently
typeahead filtering.
- Use said accessor in the file panel's filter in order to detect whether
to tell the latter to cancel filtering vs closing the panel.

Fixes #8140.

41836758 02-Mar-2012 Rene Gollent <anevilyak@gmail.com>

Move black/white color constant definitions to header.

Previously, there were two instances of the actual variables, named in
ControlLook.cpp and Utilities.cpp. This caused clashes on gcc4 builds, leading
to various crashes during initialization. Instead we now declare them as
static constants in the header itself as is done for various other interface
color constants elsewhere. Fixes ticket #8358.

5c6b9eb0 23-Feb-2012 Jerome Duval <jerome.duval@gmail.com>

Some fixes for GCC 4.6 warning: variable set but not used

d63b75fa 22-Feb-2012 Philippe Saint-Pierre <stpere@gmail.com>

Outline of labels/strings drawn to desktop

* Rather than duplicating the decision taking logic involving wheter or not to draw
the outline or glow in every replicant, update be_control_look to make it more
* The Monitoring of the background preferences is now only done in Tracker (where it
was already being done).
* Add a BControlLook::B_IGNORE_OUTLINE flag to avoid this new behaviour.
* Remove that said logic from ActivityMonitor and use be_control_look.
* Use the ignore flag in DeskCalc to avoid the outline in its case.

Should fix #7716, #7291.

581a9661 05-Jan-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Fix inconsistent "Open parent" behaviour

1. When in /boot, you couldn't go to the parent (which is fine by itself),
but the menu item wasn't disabled.

2. In Single Window Browsing, doing "Open parent" wasn't respecting that
setting and was opening new windows.

3. In filepanel, when navigating to Desktop folder, the "Go to parent" was
still proposed even though it would do nothing choosing it.

4. Opening a Pose in Single Window Browsing was repopulating the menus and
putting the shortcuts again. That was an issue if Navigator bar was used
since it conflicts with its shortcuts.

Fixing ticket #6851.

8df5e79d 05-Jan-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: FSMoveToTrash(): needless check and possible crash fix

In an earlier commit, I removed a memleak, but it was covering more cases
than intended. Thanks to Alex Wilson's insight, it seems that simply removing
the check is better (since that check is essentially redone in FSMoveToTrash()).

97f16764 04-Jan-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: Memory leak fix

The leak occured everytime a folder, or queries where opened while

CID 5848.

dafbb164 04-Jan-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker (FSUtils): negative passed to unsigned parameter

BVolume::BlockSize() might return a negative value (error code) and it
was passed as parameter of CalcItemsAndSize() as a size_t (unsigned).

Thus the check for an error code failed.

CID 4171.

aa11dcae 04-Jan-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker (InfoWindow): small memory leak fix

In the case of a broken symlink, a Model object was leaked when trying
to get the icon of the target.

CID 5844.

c56f0ce1 04-Jan-2012 Philippe Saint-Pierre <stpere@gmail.com>

FindPanel: Avoid NULL deference; CID 352.

d390c065 04-Jan-2012 Philippe Saint-Pierre <stpere@gmail.com>

PoseView: Fix assertion in InitDirentIterator

The dynamic_cast was called twice, and the assert was
done on the first attempt. Now it just cast once, assert on this
and pass it further as before.

CID 3122.

fcfd6873 03-Jan-2012 Philippe Saint-Pierre <stpere@gmail.com>

Tracker: memory leak fix

In MoveRefsToTrash(), the srcList wasn't deleted after usage.

CID 5849.

0e35d5d2 12-Dec-2011 John Scipione <jscipione@gmail.com>

Change instances of wether in comments to whether. No functional change intended.

04847ecc 27-Nov-2011 Philippe Saint-Pierre <stpere@gmail.com>

Fix style coding violation (possibly causing confusion)

ec9e2f90 27-Nov-2011 Philippe Saint-Pierre <stpere@gmail.com>

No functional change, avoid confusion in Coverity about exceptions

CID 9248, CID 9250, CID 10844, CID 10977, CID 10978, CID 10979, CID 10980,
CID 10981, CID 10982, CID 10983

323b6546 21-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Filtered flat import of Oliver's svn package management branch

Bring the changes that aren't package management related and the ones
that are but don't take effect as long as they are ignored by the build
system into the master.

Summary of changes:
* Introduce private header <directories.h> with constants for a good
deal of paths that should usually be retrieved via find_directory().
* Replace hard-coded paths by using find_directory() or the
<directories.h> constants (e.g. in drivers and the kernel).
* Add find_directory() constants needed for package management.
* src/apps/deskbar: BeMenu.* -> DeskbarMenu.*,
DeskBarUtils.* -> DeskbarUtils.*
* Change deskbar menu settings directory from ~/config/be to
* Other smaller cleanups, changes, and fixes.

a86a5aef 06-Nov-2011 John Scipione <jscipione@gmail.com>

Remove the translation text from the button label in FSUtils.cpp for the Tracker alert dialog that pops up when you try to move or rename an important system folder. The translation text is already provided in another place. Thanks humdinger.

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

88b4c422 05-Nov-2011 John Scipione <jscipione@gmail.com>

Replace the word 'Haiku' in the alert dialogs that appear in Tracker when you
try to move or rename an important system folder with a macro so that
translators do not try and translate the name of the OS. I struggled
to find a global place where the OS name could be pulled from instead of
using a #define in FSUtils.cpp. I ended up grabbing the system name from the
utsname struct. This is identical to what is outputted by 'uname -s' which is
the word 'Haiku'.

Fixes #8092

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

19ae20e6 05-Nov-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Merge branch 'master' into pm-flat


55ea3ed8 04-Nov-2011 John Scipione <jscipione@gmail.com>

Do not capitalize the Button label strings in code. Instead allow the translators to provide a version in the proper case instead. I made the untranslated buttons lable strings capitalized so that it would look correct in English. Thanks humdinger and axeld.

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

504f70a6 03-Nov-2011 John Scipione <jscipione@gmail.com>

Change the text and button label of the activate button on Tracker dialogs
that appear when you try to rename or move an important system folder such
as 'system' or 'config' from the generic (and a little non-standard) 'Do It'
to a proper verb such as 'Rename' or 'Move'.

I take localization into account, there are now 3 different variables that
need to be translated, first is %ifYouDoAction which is the action verb in
one form, second is %toDoAction which is the action verb but in a different
form, and third is %toConfirmAction which is the text that appears on the
button label itself. Although in English there is no distinction between
%ifYouDoAction and %toDoAction (both use the same verb e.g. rename) there
is a distinction in other languages such as German.

Comments are provided in English and German using B_TRANSLATE_COMMENT as a
help for translators. I had some help from DeadYak and Humdinger getting the
German translations right since I only speak English (thanks guys). Humdinger
also directed me to the verb form translation issue in the first place.

I also removed the OSNAME macro and just use 'Haiku' instead since we aren't
maintaining an OpenTracker port for BeOS anymore. Ingo aka bonefish indicated
that this change could be a bit of a problem for distributions (were there
any) but if we actually wanted to support distributions we'd want to use a
global OSNAME macro somewhere else as I am sure the word 'Haiku' must appear
in the source in other places.

Closes #7767

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

4eef91b9 29-Oct-2011 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Rework time computations in tracker status window to use localized functions.
Result is not as good as the previous implementation, because we need the more advanced BDateFormat API, which is not available yet.

Fixes #6930.

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

e98a8505 29-Sep-2011 Axel Dörfler <axeld@pinc-software.de>

* Minor cleanup.
* Removed non-Haiku compatibility code - it's just no longer needed.

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

9cf506a2 18-Jul-2011 Philippe Saint-Pierre <stpere@gmail.com>


* Add "Arrange By" submenu in Window menu.
* You can arrange by the same fields you can sort by in list view. Changing your sorting order in list view will change the Arrange By choice when you enter icon view and vice-versa.
* Support ReverseSort order.
* Keep the clean-up feature, but it's now under the Arrange By menu.

Fixing ticket #1349.

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

def39abd 17-Jul-2011 Alexandre Deckner <alex@zappotek.com>

* Finally finish implementing proper selection rect autoscroll to work with the
new asynchronous mouse tracking. Sorry for the delay. Up to now it was needing
mouse moves to autoscroll, it now behaves as before.

* Removed check that was disabling regular drag'n'drop auto-scrolling when
inactive. I don't see an obvious reason why that was done, as it's just handy
and is consistent with the other behaviors when inactive.

Note, i gotta love those comments that do anything but help, good example of
how not to comment :) i.e don't comment about what will happen when the
adjacent code won't be executed (especially in a case that can't happen).
My brain almost exploded a second time trying to explain that!

// selection scrolling will also work if the window is inactive
Should read:
// disable drag'n'drop auto scrolling when window is inactive

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

3773b475 10-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Tracker: Sort volumes like folders

Volumes no longer have a higher sorting priority than folders when "sort
folders first" is enabled.

c98a59c6 08-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Don't show packagefs on desktop or in disks window

More generally: Any volume that is mounted at a directory of a
persistent volume is not shown on the desktop or the disks window any

3dfd9cb9 16-Jun-2011 Oliver Tappe <zooey@hirschkaefer.de>

Flat commit of all changes from package-management branch in svn

df1c9e98 17-Jul-2011 Alexandre Deckner <alex@zappotek.com>

* Slight renamings, no functional changes.

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

29769e04 17-Jul-2011 Alexandre Deckner <alex@zappotek.com>

* Don't do anything in MouseIdle if we're not dragging a message.

This especially avoid bringing tracker windows up to front when staying idle
over a tracker window while holding down a button. This could happen when
hovering while still holding a scroll thumb of another overlapping window.

Fixes regression #7829 introduced in r41892

* Also properly reinitialise the cached dragMessage on B_EXITED_VIEW,
otherwise it would still think it is dragging and thus still pass through my
above fix.

I'd like to cleanup the drag message caching mechanism as it's not
pretty in my opinion. Possibly even adding it to BView.

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

cb2f9709 26-Jun-2011 Philippe Saint-Pierre <stpere@gmail.com>

The destination directory wasn't stored in the UndoRedo record in the case of a duplication operation, causing issues when trying to redo an undone duplication (couldn't find the volume correctly).

Fixes #2883.

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

aa56e459 20-Jun-2011 Jérôme Duval <korli@users.berlios.de>

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

dcb652ca 19-Jun-2011 Axel Dörfler <axeld@pinc-software.de>

* 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

ad1263fc 19-Jun-2011 Jérôme Duval <korli@users.berlios.de>

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

2e687c47 18-Jun-2011 Rene Gollent <anevilyak@gmail.com>

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

7560163d 18-Jun-2011 Rene Gollent <anevilyak@gmail.com>

* 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

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

f4d44cd4 17-Jun-2011 Rene Gollent <anevilyak@gmail.com>

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

ab6b1737 17-Jun-2011 Rene Gollent <anevilyak@gmail.com>

Slight relocation, no functional change.

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

5e90adf5 17-Jun-2011 Rene Gollent <anevilyak@gmail.com>

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

955ffec2 07-Jun-2011 Ryan Leavengood <leavengood@gmail.com>

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

#5809 can finally be closed again.

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

6009abf2 05-Jun-2011 Alexandre Deckner <alex@zappotek.com>

* 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

f2068166 04-Jun-2011 Alexandre Deckner <alex@zappotek.com>

* 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

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

d797e062 28-May-2011 Alexandre Deckner <alex@zappotek.com>

* 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

ccb1117c 06-May-2011 Axel Dörfler <axeld@pinc-software.de>

* Fixed a bug in BPoseView::CreatePoses() that Ingo found, but was apparently
too lazy to fix?!

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

5987b2a3 07-Apr-2011 Jonas Sundström <jonas@kirilla.com>

Offer a 'Real name' column in Tracker list view mode, when set to show localized names. As discussed a while back. I honestly don't know if this is such a great idea after all. Name + real name is kind of silly. Ideally it would be labeled in a more logical way, or the feature should be dropped.

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

edb71067 31-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Localization of the most user-visible folders. Ignoring subfolders of common/, system/ and home/config/.

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

88608174 28-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Disable menu item 'Edit name' for Desktop, Root, Trash and entries with localized names.

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

2d93b528 28-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Set Escape as shortcut for BAlert Cancel option.

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

77e2c2da 28-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Have ConfirmChangeIfWellKnownDirectory() protect the folders Common, Desktop, Root and Trash from renames and moves. Shift-key dialog protection added for the Home folder. Attempts on Desktop, Root and Trash are blocked silently. I admitt it's a bit odd to protect these so resolutely, unlike system, common and home, which are truly essential to the system. Would it be patronizing to enforce a stricter regime?

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

ee6a2e55 27-Mar-2011 Jonas Sundström <jonas@kirilla.com>

* Extend the Model class with a method bool HasLocalizedName().
* Disallow renaming of entries with localized names for now - this is meant to be temporary - and so far only in Tracker's Info window. Renames do not result in a change, visually, as the localized name hides the real name, and results in a bad user experience. One could possibly allow renames of the localized name, writing it back to the catalog. I've experimented with using BCatalogAddOn::SetString() but haven't been able to make it stick yet.
* Disallow renaming Trash in Tracker's Info window via Command-E.
* Adjust the argument order of BLocaleRoster::GetLocalizedFileName().
* Add a BLocaleRoster::GetLocalizedFileName() variant to look up another app's name given its signature and unlocalized, canonical name.

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

2d5868f8 22-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Use short-circuit evaluation to avoid out-of-bounds string access. Thanks Jérôme!

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

7758e371 22-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Enable localization of Tracker add-on names and shortcuts, with the canonical name and shortcut as fallback.

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

6f477364 21-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Make BLocaleRoster::GetLocalizedFileName() take a const entry_ref& rather than a non-const entry_ref&. Remove private GetLocalizedFileName() from libtracker and make Tracker and Deskbar use the one in BLocaleRoster.

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

7b3cdb96 16-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Prepare BFilePanel for localized names.

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

ed7ee7a4 11-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Localization support for filesystem entries in Tracker and Deskbar (leaf menu). (It appears to work, but is likely incomplete and quite possibly incorrect.) Fix issue with RosterData::Refresh() resulting in a B_LOCALE_CHANGED broadcast, and Deskbar looping. Add a global boolean gLocalizedNamePreferred to avoid calling BLocaleRoster::Default()->IsFilesystemTranslationPreferred() too often from Model instances. Following Tracker code style in libtracker, so as to not mix in too much clean-up.

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

4d15b486 04-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Reordering for readability.

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

fca835f1 04-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Style fixes. Thanks, Axel!

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

ec3ead23 04-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Style fixes. Doxygen comment. Use standard strchr function.

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

f5c0a997 03-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Support for showing localized app entries in Deskbar. Just the app entries so far, and not yet the items in the leaf menu. Please review.

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

53e3cc52 26-Feb-2011 Siarzhuk Zharski <zharik@gmx.li>

Some buffers become too small for localized strings. Pointed out by Diver. Thanks.
Fixes #6664 and #6591.

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

7d805b2d 26-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

* Fixed unlocking the window before suspending the
tracker task thread, which got broken/removed in r40226.
* Also fixed a race condition that the previous code
had, which is that after unlocking the window, the task
thread could be interrupted, the window could theoretically
go away and the view be destroyed before the thread continues,
but we still access/dereference the BView pointer.

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

2ee8f3f6 25-Feb-2011 Siarzhuk Zharski <zharik@gmx.li>

Bunch of localization fixes pointed out by Diver. Thanks!

- FileTypes: The "Same as" button label separated to two entities in dependency of
context: "Same Type as ..." and "Same Application as ...";
- Tracker: The sentences like "If you do %action [...]. To do %action [...]"
now use separately translated verbs for so called
"ifYouDoAction" and "toDoAction";
- NetworkStatus: NetworkStatusView _ShowConfiguration is fixed back after previous
attempt to localize it in r37337: useless code bloating purged out,
broken quasi-header "ifaceName information:" pulled back from Hell;
- StyledEdit: Menu item "Can't undo" had different casing in some situation. Looks
like HTA cannot detect such situation, so right lines "Can't undo"
were masked by wrong one "Can't Undo" and this line stay untranslated
for most time.

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

0611a317 25-Feb-2011 Alex Wilson <yourpalal2@gmail.com>

Fix graphical erros in Tracker's status window by truncating the destination path as needed. (Fixes #5914). Also remove fallback drawing code for when be_control_look is NULL, as that shouldn't be the case ever.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40685 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

b7547596 23-Feb-2011 Philippe Saint-Pierre <stpere@gmail.com>

Replace occurences of strcpy and strcat by strlcpy and strlcat. At both places, while improbable, it was possible to get string overflows.

CID 9043, 9044

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

0e952e21 23-Feb-2011 Philippe Saint-Pierre <stpere@gmail.com>

If the template name was long enough, we would have exceeded the string size.

CID 9046

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

96f9949a 22-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

The parent menu of the attributes menu might be showing, thus it needs
to be locked before its font is retrieved or items are added.

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

41b9586a 12-Feb-2011 Axel Dörfler <axeld@pinc-software.de>

* Let SelectionWindow::MoveCloseToMouse() also take the current workspace into
account. This fixes bug #7211.
* Also, don't move it that close to the border of the screen (it now keeps an
offset of 20 pixels).
* Always move the selection window to the mouse position, even if it's already
on screen.
* Close the window when pressing the escape key.

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

e0971ab8 09-Feb-2011 Axel Dörfler <axeld@pinc-software.de>

* Restricted the cursor position/selection restoration to the formula mode for
stored queries - it's usually more annoying than helpful for the other modes.

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

b2d0aaa9 31-Jan-2011 Rene Gollent <anevilyak@gmail.com>

Don't attempt to move the selection to the target window if the latter does not contain a poseview (as is the case for an info window). Resolves #7179.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40338 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

67a473f7 22-Jan-2011 Rene Gollent <anevilyak@gmail.com>

CID 10361: Slight code simplification to remove superfluous for loop.

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

915a7b8c 19-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

Make BObjectList<> publically available:
* cleaned up ObjectList.h
* switched several uses of new() to new(std::nothrow)
* moved ugly AsBList() hack into BObjectList<>::Private class and
adjusted all callers accordingly

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

c5b852f9 14-Jan-2011 Rene Gollent <anevilyak@gmail.com>

Patch by Shade: If the volume does not return a valid capacity, don't crash with a division by zero error. Resolves #7103. Thanks!

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

9f609ed7 07-Jan-2011 Axel Dörfler <axeld@pinc-software.de>

* Fixed wrong indentation of the if-clause introduced in r40144.
* Automatic whitespace cleanup.

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

523ce58a 07-Jan-2011 Jérôme Duval <korli@users.berlios.de>

Applied patch from engleek with fix hints from devheart (bug #4720):
Scale to fit now keeps the aspect ratio by cutting horizontally or vertically.

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

74c7ad20 01-Jan-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Set B_NOT_RESIZABLE for the deskbar and the desktop window. Fixes #6999.

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

7eb2d53b 10-Dec-2010 Jérôme Duval <korli@users.berlios.de>

Now checks BPath init status before using it, this was crashing the Tracker in #6305.

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

d277bc82 05-Dec-2010 Stephan Aßmus <superstippi@gmx.de>

Since the function keys don't serve any purpose yet, make F2 enter renaming
mode for the first selected item (i.e. just like Cmd-E). This makes Tracker
behave as Windows Explorer and at least Nautilus in Ubuntu.

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

eaab4bd5 26-Nov-2010 Oliver Tappe <zooey@hirschkaefer.de>

Fix #6758:
* adjust TruncTimeBase() in libtracker's WidgetAttributeText to use
the BString-based versions of BLocale's date formatting methods
* restored the 6 different formats Tracker used to try and fit into
a date column (i. e. it now behaves pretty much as it did before the
introduction of the Locale Kit)

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

25dc253d 22-Nov-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

* Merged weak-symbols branch.
* Fixed trivial merge conflict in src/system/libroot/posix/locale/nl_langinfo.cpp
* Fixed gcc 2 compilation of src/system/glue/init_term_dyn.c.

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

0741a7c2 20-Nov-2010 Rene Gollent <anevilyak@gmail.com>

Automatic whitespace cleanup.

When in single window mode, also add opt+cmd+down as a shortcut to navigate to the selected folder in a new window. Fixes ticket #3548.

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

d769c15a 18-Nov-2010 Alexandre Deckner <alex@zappotek.com>

* Remove cmd+opt+ctrl+up shortcuts since that's an undocumented old combo and it clashes with workspace navigation. Only cmd+up and opt+cmd+up remains. I've checked that it indeed conforms to the user guide, but having a second eye wouldn't hurt. Also reordered the constants for more consitency between the calls.

Fixes #6833

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

71dc3c41 09-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Added a way to set the target for a BDirMenu; this didn't work well with
BNavMenus, anyway.
* This fixes ShowImage trying to open anything that is not on top level.
* Automatic white space cleanup in DirMenu.* - I hope Alex doesn't have any
changes in this file...

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

d02cf2c4 08-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Minor cleanup.

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

1d0a97f4 31-Oct-2010 Jérôme Duval <korli@users.berlios.de>

better compute rightDivider before changing the font size

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

86de478e 30-Oct-2010 Jérôme Duval <korli@users.berlios.de>

Don't throw an error when setting filetype on a symlink fails (happens with ext2, attributes are readonly), there are no such errors for dirs and files anyway.

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

6fd2f4a0 23-Oct-2010 Oliver Tappe <zooey@hirschkaefer.de>

One more monster commit (sorry ...) concerning the Locale Kit:
* extracted new class BFormattingConventions from BCountry, which
manages the formatting conventions from a given locale and
allows to get/set the four different date/time formats supported
by ICU-locales as well as number and monetary formats
* overhauled the Locale preflet:
+ drop editing features for all formats, since I don't think
they do not make much sense to have in a prefs GUI - being
able to select from the existing locales should be good
enough. Please note that you can still change the formats
programmatically in an application.
+ renamed the 'Countries' tab to 'Formatting'
+ the locale formatting conventions list in the 'Formatting'
tab is now hierarchical for easier access (less scrolling)
+ fixed functionality of 'Revert' and 'Defaults' buttons
+ added support for using the month/day-names of your preferred
language during date formatting
* adjusted BLocale to ask BFormattingConventions for the current
formats when formatting dates and times and to offer 4
different format styles (full, long, medium and short).
* adjust all classes formatting dates/times to pick the
appropriate format style
* BLocaleRoster no longer directly archives/unarchives the
individual formatting conventions but delegates that to

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

419df705 22-Oct-2010 Rene Gollent <anevilyak@gmail.com>

Style fix.

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

df66f40b 22-Oct-2010 Rene Gollent <anevilyak@gmail.com>

When right/control click drag and dropping onto an x-ray menu, present
the same choices that we do when dropping onto a normal poseview.
Resolves #6732.

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

1959f850 19-Oct-2010 Rene Gollent <anevilyak@gmail.com>

When trying to auto-place a pose, we need to short circuit if we're the
Desktop and the next available slot lies outside of the view bounds.
Otherwise we loop forever. Resolves ticket #5218.

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

567ffaec 19-Oct-2010 Rene Gollent <anevilyak@gmail.com>

FetchNaturalChunk() needs to use isspace() just as NaturalCompare does
when retrieving number chunks. Otherwise we wind up with an infinite
loop if a number chunk is preceded by another whitespace char such as
\t. Fixes a hang observed on Clemens' mail store.

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

b8616583 18-Oct-2010 Rene Gollent <anevilyak@gmail.com>

Sort poses using std::stable_sort. Should resolve #6700.

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

3f7a0ba1 08-Oct-2010 Axel Dörfler <axeld@pinc-software.de>

* Fixed a bug in BRecentItemsList::GetNextMenuItem() that would prevent it from
correctly adding navigable folders (it did just hide (and leak) any folders
* Minor cleanup.

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

ce6bec05 30-Sep-2010 Axel Dörfler <axeld@pinc-software.de>

* Based on Adrien's idea to use special unicode characters, I've added rating
and checkbox as new display_as types - editing, however, works the same as

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

a81c4880 29-Sep-2010 Rene Gollent <anevilyak@gmail.com>

Clearly I need sleep.

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

fe0f49ea 29-Sep-2010 Rene Gollent <anevilyak@gmail.com>

Fix header order.

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

7c8978a9 29-Sep-2010 Rene Gollent <anevilyak@gmail.com>

Patch by Takashi Murai: Style cleanup and fix an untranslated string in the navigation context menus.

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

9cdd37b4 29-Sep-2010 Joachim Seemer <humdingerb@googlemail.com>

Correct alphabetical order of header files.

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

e2dbbb35 29-Sep-2010 Joachim Seemer <humdingerb@googlemail.com>

Adjusted padding in Mount settings panel.

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

954d79e2 29-Sep-2010 Axel Dörfler <axeld@pinc-software.de>

* Added first working "display_as" type "duration".
* Changed Media:Length to int64, and use the new duration view in Tracker.
* Renamed the pretty name for video's Media:Length to "Runtime" (that's how it's
called in IMDB, and I was never really fond of "Playing Time").
* FileTypes AttributeWindow needed to check the display-as types, as well as
if the contents are acceptable when opening, too.
* Minor cleanup.

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

1098779c 29-Sep-2010 Axel Dörfler <axeld@pinc-software.de>

* Cleanup, no functional change.

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

93776750 17-Sep-2010 Alexandre Deckner <alex@zappotek.com>

* Fix extra space typo in the mount settings alert. Spoted by Diver, thanks!

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

7b80b5d5 17-Sep-2010 Alexandre Deckner <alex@zappotek.com>

* Use multiple translate contexts in Tracker for easier translation

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

ad76f443 16-Sep-2010 Alexandre Deckner <alex@zappotek.com>

* Build fix, see ticket 6374
* 80 char limit fix

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

108f794c 16-Sep-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by mt: Translate various yet untranslated strings in libtracker,
closes ticket #6374. Thanks a bunch!

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

23f4a4bb 12-Sep-2010 Joachim Seemer <humdingerb@googlemail.com>

Another sentence casing change found by diver, see #5169. Thanks.

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

886c6276 12-Sep-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed debug build (format string/argument mismatches).

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

e83635fd 12-Sep-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

* RegExp::Prop(): Fixed build (assignment of string literals to a char*).
* Automatic whitespace cleanup.

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

1bddf9ca 12-Sep-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

* Missing <Debug.h> include.
* Automatic whitespace cleanup.

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

e80276e2 06-Sep-2010 Alex Wilson <yourpalal2@gmail.com>

Fix some more regressions from r38512, Tracker prefs, Icon-O-Matic, Expander & Screenshot. Thanks to diver for finding these.

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

b7f60965 30-Aug-2010 Oliver Tappe <zooey@hirschkaefer.de>

* removed all BLocale-related getters from BLocaleRoster - they're available
in BLocale (which is accessible via be_locale)
* adjusted all users accordingly

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

394609e3 24-Aug-2010 Joachim Seemer <humdingerb@googlemail.com>

Corrected sentence casing. Thanks diver. Fixes #5169.

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

be345b9c 19-Aug-2010 Alex Wilson <yourpalal2@gmail.com>

Update AutoMounterSettings to use the templatized layout builders from LayoutBuilder.h and also fix a regresson caused by r38207, also caught by diver.

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

eb7595eb 16-Aug-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

CID 1457 : dead code (we know pressed is true at this point).

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

606e627e 15-Aug-2010 Rene Gollent <anevilyak@gmail.com>

Remove unnecessary NULL check (the view in question is created in all cases in InitCommon(), and is already dereferenced several times prior to the check in the function anyways).

Fixes CID 1078.

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

b2323020 11-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* The leading spaces and zeros are now actually skipped, instead of copied first
and then replaced.
* Now considers a space to end a number chunk. In the future, we might want to
think about sorting fractional amounts correctly as well, but I guess that's
not that important for Tracker.

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

6a960972 11-Aug-2010 Axel Dörfler <axeld@pinc-software.de>

* We cannot use a natural sorting algorithm that only supports int32 - that
cannot be stable for entries with up to B_FILE_NAME_LENGTH (256) bytes.
* Rewrote the natural sorting code to be simpler where possible, but also
supports sorting numbers of arbitrary length.

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

894cf4f3 08-Aug-2010 Alexandre Deckner <alex@zappotek.com>

* Apply patch from Takashi Murai: use layouting for Tracker settings window/views.
Slight modifications to the patch:
Put back passing the view names (eventhough it seem useless atm).
One or two small indenting issues.
Implemented your todo (listview width adapts to the longest item).

Thanks a lot.

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

43f24e05 08-Aug-2010 Alexandre Deckner <alex@zappotek.com>

* Apply patch by Takashi Murai, find menu items by message code instead of item name (correcting previous patch)
I've found more occurences but i will solve it differently since they are about finding messageless submenus.

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

4a7b2e04 07-Aug-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Add FormatDateTime function to BLocale
* Use the function to localize the date/time in tracker.

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

0f2ec5c2 05-Aug-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Remove "date & time" view from tracker settings, since it will soon use the locale kit settings.

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

8d50f4a5 31-Jul-2010 Rene Gollent <anevilyak@gmail.com>

NewModelItem can potentially return NULL in a number of cases, which wasn't checked for. Don't try to add them or otherwise manipulate them in such a case. Fixes CID 641.

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

2ad2951e 27-Jul-2010 Rene Gollent <anevilyak@gmail.com>

Fix yet another cause of the boot volume icon being mapped incorrectly (as pointed out by a gcc warning): the value chosen for B_BOOT_DISK was well outside of the range of the directory_which enum. Consequently it wound up getting truncated and never correctly being matched in the switch that grabs the icon from resources. Curiously, this bug/warning only showed up with a cross-compiled executable, but not with one compiled with the development toolchain compiler packages. Should hopefully nail this bug once and for all.

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

b599c219 27-Jul-2010 Philippe Houdoin <philippe.houdoin@gmail.com>

Fixed Volume sizes unit in info window, using string_for_size().
This fix #6395.

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

8eff03f5 25-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* fixed all build warnings by collectcatkeys that I found
* automatic whitespace cleanup

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

eddec292 21-Jul-2010 Oliver Tappe <zooey@hirschkaefer.de>

* applied patch by kaliber that fixes more than 100 warnings - thanks a lot!
Closes #6349

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

1f34e928 14-Jul-2010 Alexandre Deckner <alex@zappotek.com>

* Removed last remains of the OPEN_TRACKER define.
* Cleanup of unused include.

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

a1110964 13-Jul-2010 Alexandre Deckner <alex@zappotek.com>

* Minor style fixes, spaces vs tabs.

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

148f33f2 13-Jul-2010 Alexandre Deckner <alex@zappotek.com>

* More PoseView localization by T.Murai (a.k.a mt). Thanks a lot. (be careful with the 80 chars indenting though ;-)

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

4dc7415f 13-Jul-2010 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Also remove inclusion of AboutBox.cpp to fix the build. Sorry

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

4ed28a57 12-Jul-2010 Alexandre Deckner <alex@zappotek.com>

* Applied libtracker localization patch from T.Murai (a.k.a mt) with some modifications (see below).
* Functional modifications:
Reworked InfoWindow file size localization, the patch removed number formating (size in bytes) and was too complicated to my taste.
Replaced the uses of sprintf with the safer snprintf.
Changed signature to x-vnd.Haiku-libtracker instead of x-vnd.Haiku-libTracker (to be consistent with the binary name)
* Style modifications:
Reworked lots of 80 char indenting (probably due to the now shorter line lengths since your previous patch that wasn't using the macros)
Lots of missing brackets when "if's" becomes multiline.
Other minor fixes.

Noticed a few uses of FindItem on translated names that might become problematic someday. Added some TODO's regarding localization of file sizes. Localization might still be
optimized a bit regarding the produced en.catkeys

Note to translators: .catkeys files should be placed in haikusource/data/catalogs/kits/tracker though beware as the base en.catkeys might change
slightly in the next days.
Note to users: As with any other app you need to restart Tracker (or any aother app using libtracker's filepanels) for it to pick the locale setting. E.g: use 'quit an
application' and 'restart Tracker' from process controller.

Thanks a lot T.Murai

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

4195dda9 12-Jul-2010 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Removed unused file

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

4db1f9f3 13-Jul-2010 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Use BMenu::RemoveItems() instead of iterating.

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

140f3bd8 11-Jul-2010 Rene Gollent <anevilyak@gmail.com>

WellKnownEntry used a const char * to store the name of its entry, but didn't actually copy the passed-in string, only its pointer. Since the entries were all populated via strings off the stack, this led to them being overwritten with random garbage during program execution. In the best case, this would result in well known icons such as the ladybug boot volume failing to resolve. In the worst case, this likely led to random corruption/crashes. Fixed by having them store a BString instead.

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

fc7c01a1 02-Jul-2010 Rene Gollent <anevilyak@gmail.com>

Fix typo spotted by Clang. Resolves ticket #6253.

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

2376696d 19-May-2010 Stephan Aßmus <superstippi@gmx.de>

Provide the HVIF version of the printer spool type. These types should really
be moved into the mime database source... but anyway, thanks to Meanwhile for
the icon! Reference: Ticket #1429.

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

9a708202 14-May-2010 Rene Gollent <anevilyak@gmail.com>

FSCreateTrashDirs mustn't create the directories itself. This breaks the logic in FSGetTrashDir that creates/applies attributes if needed. This most likely explains Axel's random problems with trash directories being visible, since this would cause a fresh Haiku install's /boot/trash to never be marked invisible as it should be.

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

3ddefbc1 14-May-2010 Stephan Aßmus <superstippi@gmx.de>

Fixed warning.

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

1e9e9da3 11-May-2010 Axel Dörfler <axeld@pinc-software.de>

* I'm not sure why it happens, but the drag bitmap offset was BPoint(2, 1) off
(that should be good enough for the current Tracker).
* Minor cleanup.

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

9c8f2367 11-May-2010 Axel Dörfler <axeld@pinc-software.de>

* Never choose a target pose in UpdateDropTarget() that is part of the currently
dragged selection. This fixes the context menu popping up when you try to
move around an icon a few pixels only.

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

4dc62bba 08-May-2010 Jérôme Duval <korli@users.berlios.de>

FavoritesMenu: don't call the RefFilter when the model's node is NULL. Fixes bug #5871.

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

da816940 08-May-2010 Stephan Aßmus <superstippi@gmx.de>

Don't open context menus right under the mouse so that the first item is
already selected and get's picked when the user releases the mouse right after
the initial click. For model context menus, like right clicking a mounted disk
on the desktop, this somehow worked without selecting the item. But opening
the context menu on an empty part of the desktop always selected the Desktop
entry which resulted in the menu immediately closing without any effect. The
perhaps unwanted side-effect of this change is that navigation menus don't
automatically open unless you move the mouse a bit. Please play with this a bit
before commiting to alpha branch. I remember having to move the mouse a bit
on R5 as well, but could be wrong about it.

The real fix would be in BMenu and BMenuBar tracking code, but the changes
which I would have in mind are too radical to do before the release. I
understand that _IsStickyMode() is supposed to handle this case, but it actually
has too little information, since each menu is tracking the mouse state itself
and doesn't know what another menu already knows. Perhaps this is what the
"start" parameter was for in the original _Track() hook, but why not simply
create an object which is passed from menu to menu and tracks everything of
relevance and maintains state?

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

bdb32d10 04-May-2010 Rene Gollent <anevilyak@gmail.com>

Simplify the check for what volumes to show free space bars on. They are
now shown only on read/write volumes that are not CDDA.

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

4ab96afd 04-May-2010 Rene Gollent <anevilyak@gmail.com>

Use openAnyways mode instead of click to open rect for tracker context
menus. May help with #3267.

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

ecdb5ec6 02-May-2010 Alexandre Deckner <alex@zappotek.com>

* Filter out B_INSERT and B_FUNCTION_KEY as they would end up in type ahead "default" case. Fixes #5609. Looking at all the not already caught keycodes, this should cover every cases.

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

08b3ae9b 02-May-2010 Alexandre Deckner <alex@zappotek.com>

* RemoveFromVSList was failing to actually remove some poses due to a buggy optimisation. This was causing calls on invalid poses in many places in the PoseView code (icon mode). This fixes #4322 (and duplicate #5780). This should also fix #3828. Please test.

I took the conservative approach and the penalty is really minimal if even not at all perceptible as i've measured. I decided to go this way as PoseView code is very fragile and depends on many of those "loose assertions" to be valid. This conservative approach also allows to confidently include the fix in alpha2:

Besides those "wise" reasons, the thing is that i've wasted too many hours already this week and in the past due that VSPoseList/PoseList syncing fragility. I'm not willing to fix the optimisation of a broken design that i've already experimentally rewriten two times already, and that i (or any mentally sane person) will finally ditch sooner or later :)

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

f7cf3195 29-Apr-2010 Rene Gollent <anevilyak@gmail.com>

PoseView::MoveSelectionInto() needs to check for the case that the source
window actually has a selection list to use. Certain actions can render it
possible to empty out the selection in mid drag-and-drop, which MoveSelectionInto
wasn't taking into account, leading to a crash.

Fixes ticket #5860.

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

0230fc14 29-Apr-2010 Axel Dörfler <axeld@pinc-software.de>

* Neither ours nor BeOS' find_directory() will return an error if the directory
does not exist yet.
* Therefore, only BDirectory::SetTo() will fail if the trash does not exist
yet. Changed the code to actually work as expected, now.
* Fixed old and new style violations.

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

ca34b422 28-Apr-2010 Rene Gollent <anevilyak@gmail.com>

Only write the icons if we did in fact have to freshly create the Trash directory. Should fix #5827 completely.

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

0872569d 28-Apr-2010 Rene Gollent <anevilyak@gmail.com>

Temporarily comment out writing the vector icon since it currently appears to be broken somehow. Will look into it tonight.

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

63ebfa8d 28-Apr-2010 Rene Gollent <anevilyak@gmail.com>

When creating Trash directories, Tracker would only set the hidden and/or icon attributes at startup for volumes mounted at that point in time. Volumes mounted later would have the directory created, but not marked hidden or otherwise attributed, which would lead to confusing situations where the root Trash dirs would appear randomly while browsing the filesystem.
Instead, Tracker now always writes those attributes when calling FSGetTrashDir(), which is reused by FSCreateTrashDirs(). Fixes ticket #5827.

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

ab5fb573 28-Apr-2010 Alexandre Deckner <alex@zappotek.com>

* Removed what finally looks like an old (and not needed anymore) workaround. That is, the sending of a message when dropping a pose over another one while its context menu is still showing. That was causing #4757 since poseview was receiving the dropped message two times.

I've been investigating the issue in depth, it's there since the first opentracker revision, so i even installed R5 and built/debugged opentracker to confirm it was indeed needed on R5. That would be another case of undocumented (misdocumented) workaround for an R5 bug, ie: BMenu would steal the drop message although the mouse isn't over it anymore (Stefano idea?). Heh if only i could reach the original Tracker devs :-D

I don't like when i don't understand a problem up to the last bit, but it should be reasonably safe for alpha2 +alphabranch

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

b64b6705 24-Apr-2010 Rene Gollent <anevilyak@gmail.com>

Factored out initialization of default values into an _Init() function that's now called by all constructors.
The BMessage version of the ViewState constructor was not retrieving the icon/last icon size values.

May fix #4322.

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

01e63caf 21-Apr-2010 Rene Gollent <anevilyak@gmail.com>

When creating a new pose, the index offset at which it was inserted in list mode was never passed back. Consequently, when creating a new folder via the cmd+N shortcut (which immediately goes into edit mode), the TextWidget for editing would appear at the wrong location.

Fixes ticket #5774.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36408 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

e9024a3b 11-Apr-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Build tools : allow to run DoCatalogs with a custom regexp for special cases
* Introduce a system-wide localization catalog used for strings hidden deep in some libraries. Add special API to get it.
* string_for_size is the first to make use of this system wide catalog. This allows to have a fully localized DriveSetup.
* As a side effect, tracker also uses it. It now requires liblocale.so.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36175 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

769912c8 16-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

Use the new cursors.

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

7c0f5738 02-Mar-2010 Rene Gollent <anevilyak@gmail.com>

Remove Tracker's special DnD handling. Instead, BTextView/BTextControl now
honors drag messages containing entry refs and resolves the path of the first
one contained. Will work on a more sophisticated solution that would allow
optionally extracting the file text instead via right click drag context menu
when I have more time.

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

ddee0943 01-Mar-2010 Rene Gollent <anevilyak@gmail.com>

Add an extra sanity check to Tracker's automatic text clipping extraction when
drag and dropping text files: before it would blindly read the entirety of the
file's text contents regardless of size, which probably led to more than a few
nasty surprises when someone attempted to drag very large (i.e. multimegabyte)
text files. We now clamp the amount of data we read to 64KB. Though it's
debatable if this feature is at all useful, since it may potentially be better
implemented by handling entry_refs in dropped messages in BTextView directly
(assuming a compatible type). Opinions welcome.

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

f24e3c9f 21-Feb-2010 Axel Dörfler <axeld@pinc-software.de>

* Fixed warnings and coding style violations.

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

cee04e80 08-Feb-2010 Artur Wyszynski <aljen-mlists@o2.pl>

Fixed various errors/warnings reported by cppcheck:
* memory leaks
* resource leaks
* added const's to getters
* removed a few reundant conditions

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

7438e942 07-Feb-2010 Rene Gollent <anevilyak@gmail.com>

Fix spacing.

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

807bdfdf 07-Feb-2010 Rene Gollent <anevilyak@gmail.com>

As pointed out by mmlr, we only need to provide the symbol, and only in the case of gcc2.

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

a5c2457f 07-Feb-2010 Rene Gollent <anevilyak@gmail.com>

Re-add dev_t version of FSGetDeskDir for bin compat reasons: BeIDE (unfortunately) appears to make use of some of the private FSUtils calls. Reimplemented call to use the normal FSGetDeskDir ignoring the passed in volume argument since we no longer have a desktop directory any place else. Fixes the problem reported in #5135.

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

029f4e93 02-Feb-2010 Michael Lotz <mmlr@mlotz.ch>

* Add an inline CurrentPoseList() that returns either the filtered or normal
pose list and replaced the rather ugly "fFiltering ? ..." everywhere with it.
* Automatic whitespace cleanup.

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

cc5b8518 02-Feb-2010 Michael Lotz <mmlr@mlotz.ch>

No need to lock out the normal typeahead when filtering doesn't apply (i.e. in
icon mode). And a little automatic whitespace cleanup.

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

0086654c 31-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

Automatic whitespace cleanup, no functional change.

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

b3e4ce54 31-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

Use the multibyte aware string functions for typeahead search and filtering so
that special characters can be used as well (umlauts for example).

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

7acdd03f 31-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

Replaced the sMatchString buffer used for typeahead search by a BString. No
intended functional change.

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

ef9c0b6a 31-Jan-2010 Rene Gollent <anevilyak@gmail.com>

More cleanups:
- remove some more leftover desktop integration-related code.
- remove special case that would hide the Desktop folder in file panels.
- fixed BFilePanel to correctly filter out the trash from the volume root
and show it on the desktop like everywhere else.
- renamed CountView::Add/RemoveFilter so they don't hide
BHandler::Add/RemoveFilter (gcc4 warning).

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

83c03b56 30-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

Missed the re-insertion when exiting early after checking the sort order for a
pose on a non-visible pose list which would cause poses to get lost from the
unfiltered list.

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

497aa62c 30-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

* Provide a LaunchLooper that receives launch messages and executes the launch
functions provided with the given arguments.
* Make use of that looper to replace spawning a thread for each launch task.

On the one side this reduces the amount of used threads (and should fix #698)
and on the other side it makes the order in which refs are sent a bit more

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

6a5cf0a1 30-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

Allow shift-return to discard the filter so you can decided whether or not the
filter shall stay in effect when opening a selection.

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

29327709 30-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

Fix missing check that would cause non-matching poses to show up on attribute
changes (which may also happen on creation of new files).

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

ac53da69 30-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

When initially starting filtering we need to make sure that non-matching poses
fall out of the selection. The same is later done when removing them from the
matching subset, so moved that to a common EnsurePoseUnselected().

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

beb2e054 30-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

* Renamed CancelFiltering() to ClearFilter() to make it more clear what it does.
* Add UpdateAfterFilterChange() with the update part of FilterModified().
* Add StopFiltering() that clears the filter and updates.
* Make use of these functions where appropriate to fix missing scroll ranges
after canceling a filter.

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

545ebde0 30-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

Implement type ahead filtering (this time for real and without abusing the
vertically sorted pose list). When enabled typing will filter based on the
currently visible attribute columns. Using shift-space as a delimiter
independent filtering strings can be typed, so you can filter based on multiple
attributes at once to refine results while you type. Filtering stays active
until you cancel it using the escape key. While the filtered result is displayed
all normal file operations can be used. Using the return key while filtering
auto-selects and opens the first filter result, allowing for fast traversal
through directories and directly opening the topmost result.

* Introduces fFilteredPoseList which stores the active filter result. The list
is only used when filtering is currently active, so no syncing is required
* Some minor adjustments to leave out invalidations where non-visible poses are
* Account for the now possible multiple lists throughout BPoseView.
* Add filter string output to the CountView and made that one a bit wider.
* Added all the settings-cruft for type ahead filtering (defaults to off).

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

16940ab8 18-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Now that the speed is displayed right away, increase the number of slots for
calculating the average speed to get a more stable value.

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

89af0548 17-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Employ a similar naming abstraction for the desktop as has been done for Trash to allow that name to be localized visually later (same on-disk location though).
SlowContextPopup also needed to be adjusted to account for trash's new location.

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

35de4b48 17-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Implement showing the estimated time to finish a file process. It will toggle
automatically between showing amount copied + speed and estimated finish time
+ time left. It could be implemented to toggle on mouse click, but then it would
be a hidden feature. Comments welcome.

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

b37100b2 17-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Missed a few instances in the previous cleanup.

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

d9626569 17-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Model: Add accessor for Trash node property and cleanup spacing between inlines.
Rest: Use the IsTrash() accessor on Model where possible in place of the more expensive FSIsTrashDir() check.

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

9589965c 17-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Change the algorithm that calculates the average copy speed, so it begins to
display much earlier (two seconds).

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

4e1bbd4d 17-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Implemented display of current size/total size copied and current copy speed.
It will begin to play after a short time (10 seconds). Estimated finish time
is still a TODO.

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

406799c1 17-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Copy and paste bugs prevented the copy progress bar to function properly.

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

0e848e2d 17-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Fix error spotted by Adrien: don't return Trash name for anonymous volumes.

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

6abd81fc 17-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Add a special node type for the Trash analogous to the one used for the root dir. This allows the model to return an arbitrary name not directly tied to the on-disk name for the Trash directory, which a) makes it localizable in the future, and b) means it's not tied to the on-disk name, which removes the requirement that the Trash dir name be uppercase on disk.

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

782fbf00 17-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Overlooked this with my previous Trash-related changes: updated NavMenu to be
behaviorally in sync - it now hides the root volume Trash dir like PoseView,
and adds the Trash entry as needed when navigating down the Desktop.

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

aa61ee48 17-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Cleaned up legacy icon mappings and add some missing resource definitions to
TrackerIcons.h. Also removed the setup for the folder icon mimetype in
TrackerInitialState, as it was using a non-existent resource ID to do so with.

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

3cc5c3ff 17-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Further cleanup of TrackerLoopControl. gStatusWindow is now nowhere used anymore
except inside TrackerLoopControl. The only expected change of behavior is when
trying to copy something onto a read-only volume. AFAICS, it would previously
prompt an alert and not already show the status window. Now it will show the
status window and prompt an alert, like in all the other situations when the
operation would be stopped before it even started by an alert. I was able to
remove quite a few code duplications along the way. CopyLoopControl can be
instantiated by itself and provides default implementations which could in turn
be removed from TrackerLoopControl.

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

8aad9487 16-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

* 80 chars/line limit cleanup
* Fixed one more occurance of "dos" filesystem check.

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

0bf7f1f8 16-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

When an error occurs to incrase the node monitor limit, reset the current
value and don't keep it at the value we wanted it increased to.

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

7ca5e887 15-Jan-2010 Rene Gollent <anevilyak@gmail.com>

* PoseView: Re-enabled respecting the invisible pose attribute.
* FSUtils: Mark the root-level Trash directories as invisible. For the time being,
this renders the Trash only visible on the Desktop once more, pending
further consensus on how to handle it in the future. Note however that
this also means that Desktop and/or var directories that still have the
old _trk/pinfo_le attribute from prior to the previous visibility changes
will also be marked invisible again, and those people dual-booting older
BeOS will also still see this issue as the Tracker on those will still
force-write the invisible attribute onto those directories on every volume.

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

a65ec153 15-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Fix style violations (thanks Axel!).
Update filesystem name in find_directory as our fat filesystem is not named "dos".

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

01dffd8e 14-Jan-2010 Rene Gollent <anevilyak@gmail.com>

More Tracker refactoring:
* relocated Trash dirs to volume roots by modifying find_directory() to report the trash location as volume/Trash.
* FSUtils no longer creates /home/Desktop on every volume.
* TrashWatcher now keeps icons in sync on all volumes.
* Simplified FSGetDeskDir since it no longer has to worry about getting the desk directory on any volume other than the root.
* Relocated trash context menu logic to BContainerWindow so it can also be used at the volume roots.
* DesktopPoseView now creates a virtual Trash pose representing the trash contents as before.
* Corrected typo: Model::WriteAttrKillForegin() -> Model::WriteAttrKillForeign().

Closes ticket #5245.

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

7b6edf52 14-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Simplified FSIsDeskDir() as suggested by Axel. Thanks!

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

16789848 13-Jan-2010 Rene Gollent <anevilyak@gmail.com>

FSIsDeskDir should only consider a path to be the desktop if it lives on the boot volume. Fixes non-boot Desktop dirs still showing the volumes and such in windows and nav menus.

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

9869082c 13-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

* First attempt at cleaning up the CopyLoopControl mess. Instantiate one
TrackerCopyLoopControl and pass it on when needed. Avoid access to
gStatusWindow directly. Later on, I will try to make it possible to drop more
files/folders onto an ongoing copy process to append it to the job, i.e. copy
those files to the same target folder.
* For each updating the status, entry_refs were copied instead of passed by
reference, which was a bit unnecessary overhead.

* Some coding style cleanup.

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

c126f2f2 13-Jan-2010 Michael Lotz <mmlr@mlotz.ch>

* Fix missing parenthesis in r35040 that caused node monitoring not to work.
* Minor automatic whitespace cleanup.

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

2865e5a0 12-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by Humdinger:
Changed strings to sentence case in the rest of the Tracker code.
Remaining part of case-tracker.diff from #5169.

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

82d8aaf8 12-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by Humdinger:
Changed strings to sentence case. The changes in StatusWindow and
FSUtils are missing because I have some unfinished work in progress
in those files. Will commit them separately. This is case-tracker.diff
from #5169.

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

671dd808 12-Jan-2010 Rene Gollent <anevilyak@gmail.com>

Various cleanups:
* Removed dead/obsolete Integrate Non-boot Desktops code.
* Modified PoseView to ignore the fInvisible attribute of BPoseInfo for now.
This has the net effect that the Desktop folder and /boot/var are no longer
hidden from the user. To go with this change, Tracker no longer forcibly
writes that hidden setting to those folders on access. This feature might
be useful again in the future (especially in conjunction with relocating
the Trash folder somewhere such as the disk root), but is currently somewhat
problematic because those dual-booting with BeOS will still have a Tracker
that force writes those attributes which would bring us back to square one
with respect to showing the Desktop folder when we start respecting the
attribute again. Suggestions welcome. Haiku-only users can remove the
_trk/pinfo_le attribute on those folders to remove the invisibility
in any case.
* TrackerSettings: Removed obsolete desktop integration settings. Also
modified TrackerSettings parser to skip unrecognized settings instead
of aborting the settings file parsing process entirely.

Closes ticket #2872.

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

32ac1033 04-Jan-2010 Axel Dörfler <axeld@pinc-software.de>

* The Desktop window is no longer zoomable. This fixes ticket #5173.
* Removed no longer used headers (private BeOS device API).

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

5b41cd61 04-Dec-2009 Rene Gollent <anevilyak@gmail.com>

Clear the navigation menu before populating it. Fixes ticket #5079.

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

862508e7 02-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Turned on widget outline by default.

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

a8af8078 02-Dec-2009 Axel Dörfler <axeld@pinc-software.de>

* Cleanup.

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

dbba3d21 26-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Fixed wrong preprocessor statement, thanks Jeroen!

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

0d70a99f 26-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Patch by Matt to replace the leaf disk overlay with a bug for non-release
versions. This closes ticket #5036.

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

0b0e9179 22-Nov-2009 Rene Gollent <anevilyak@gmail.com>

Pass the favorites menu a reference to the file panel's ref filter. This is necessary since favorites are no longer constrained to only being folders, and as such they need to likewise be constrained to only display supported types. Fixes another part of #4916.

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

d2b45aa3 20-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

Avoid an invalid GCC warning by using a union.

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

1221df2d 19-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* Improved floating point display.

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

2ecfe97e 18-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

* Some cleanup for 80 chars/line limit
* The target volume block size is passed to the CalcItemsAndSize() function
to get a more accurate picture of whether items will fit. Before, it would
assume hard coded 1024 bytes block size.

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

1e179f36 18-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

Seems like I have forgot to commit deleting the AutoMounter code from Tracker
back then?

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

78248acd 18-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

The usage of BStatusWindow::HasStatus() was really bogus. First of all
HasStatus() and UpdateStatus() were not run in the same lock, so the job
view could be gone anyway. And secondly, both methods iterate over all status
items to find the one with the correct thread. Doh, if we don't have enough
work to do, lets make some! Of course this was not critical in any case...

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

9d6405b7 17-Nov-2009 Stephan Aßmus <superstippi@gmx.de>

Code cleanup, no functional change except for changing BWindow::Run() into
a BWindow::Hide()-BWindow::Show() combo.

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

f4dc5998 15-Nov-2009 Rene Gollent <anevilyak@gmail.com>

Partially implement ticket #4916:
- Rename "Configure Favorites..." to "Edit Favorites...".
- Remove the old-style Configure Favorites dialog in favor of simply
opening the favorites folder (~/config/settings/Tracker/go) in a
Tracker window for the user to manipulate.
- Rename the "Favorite Folders" section to simply "Favorites" as files
are also allowed (i.e. to easily open a template document).
- Removed completely arbitrary (and silent) 20 item limit to favorites
- Automatic whitespace cleanup
Still to do: Grab the ref filter from the file panel (if any) and run the
favorites through it as well, since we want to filter out any non-folder
favorites that the app is incapable of handling. Also, the setting for
the favorites menu to show recent documents needs a new home, as it was
previously in the no longer existing Configure Favorites window. Suggestions
welcome, as I'm not currently seeing a spot in the Tracker prefs that would
make good sense.

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

a63c6183 04-Nov-2009 Axel Dörfler <axeld@pinc-software.de>

* The InfoWindow's name text view is now using DisallowFilenameKeys() as well.
* DisallowFilenameKeys() no longer forbids the ':', as there is no reason to do
* Automatic whitespace cleanup.

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

315c212b 29-Oct-2009 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Two lines between functions

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

d5ca839e 29-Oct-2009 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Fix spelling error.

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

d3b11328 27-Oct-2009 Rene Gollent <anevilyak@gmail.com>

Move CheckDevicesEqual into FSUtils so it can be used in more places.
Rework ContainerWindow's B_REFS_RECEIVED to use CheckDevicesEqual to decide move vs copy as is done elsewhere.

Fixes ticket #4850.

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

e2ee5e57 26-Oct-2009 Alexandre Deckner <alex@zappotek.com>

* My previous fix to #4130 wasn't correct since it could miss some moved or
renamed files. After more investigation i found out that the problem was
caused by a non usual use of the zombie list in r31307. In the conditions
to reproduce #4130 it would call AttrChanged() or StatChanged() on zombie
poses which by convention should always be invalid models, ie: null node.
The logic would potentially create other problems too as it wasn't only
adding refFiltered models to the zombies.
I reverted part of r31307, clarified the logic and updated the comments.
I'd prefer another implementation for this as reusing the zombie list
here is only calling for future mysterious problems. #4131, #4271, #4610
and #4831 are still closed, but i'm reopening #1717 which is more of an
enhancement btw.

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

c3ce6294 23-Oct-2009 Alexandre Deckner <alex@zappotek.com>

* When a file was created, then deleted shortly after, on a PoseView that is
busy processing other things, the file could be gone by the time we processed
the fs notification message of the entry creation. This case wasn't handled
properly and would cause #4130 and most certainly duplicate #4831, #4610 and
also possibly #4271.

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

35e7c964 20-Oct-2009 Michael Lotz <mmlr@mlotz.ch>

Fix dirent handling. The d_reclen field contains the size of the whole record,
so it includes sizeof(dirent).

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

c1b274fd 12-Oct-2009 Stephan Aßmus <superstippi@gmx.de>

* Removed auto mounter code from Tracker.
* Tracker forwards auto mounter related messages to the mount_server.
* Rewrote AutoMounterSettings to not know AutoMounter and use
the layout-management.
* Moved the "Eject When Unmounting" setting into the Mount Settings.
* Launch the mount_server during boot, but delay the script until all
previously mounted volumes have been mounted. This solves some annoying
timing bugs during boot. For example when you have desktop backgrounds
on other volumes and some servers don't deal well with the situation
of links to add-ons on other volumes becoming valid with a delay...
* src/kits/tracker/Commands.h includes the private headers/private/
mount/MountServer.h header, which made adjustments to the DiskUsage
Jamfile necessary.

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

994b2356 07-Oct-2009 Stephan Aßmus <superstippi@gmx.de>


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

df78ef39 06-Oct-2009 Stephan Aßmus <superstippi@gmx.de>

Removed BeOS version of the code.

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

0eab14cd 04-Oct-2009 Ryan Leavengood <leavengood@gmail.com>

Apply patch from Caitlin Shaw, aka rogueeve, to fix Tracker's replace behavior
for the case of 1 file.

Fixes #4717.

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

941098a2 30-Sep-2009 Jonas Sundström <jonas@kirilla.com>

Standardizing on BWindow::CenterOnScreen()

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

7c870e9a 04-Sep-2009 Ryan Leavengood <leavengood@gmail.com>

These are the remaining changes to properly implement the new default of volume
space bars being on. Thanks for the tips Axel.


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

9e59c0f7 03-Sep-2009 Ryan Leavengood <leavengood@gmail.com>

Fix #4407 by making the volume space bars on by default.


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

76e853e2 02-Sep-2009 Joachim Seemer <humdingerb@googlemail.com>

Renamed menu 'Attributes|Copy/Paste Attributes' to 'Attributes|Copy/Paste Layout'. Fixes #2835.

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

ea1a27d6 24-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* Reworked my fix for #3617. We now check again for a double click if the pose
was not freshly selected.

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

725ad924 20-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* When checking a draw/updateRect intersection, an offset was added too early
making the check fail when Pose::Draw was called with a non zero offset.
Fixes #4289
* Fixed an x/y typo (that had no really visible effect, the fade effect might
need some more indepth review)
* Removed dead code, and replaced an inlined intersection check with

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

f2b42dbb 19-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* Favorites in filepanels are always folders, the type of favorites here
doesn't depend on the 'node flavor' of the parent filepanel.
Fixes #3624
* Minor style fix

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

50f1b82d 19-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* Rewrote rename-click detection to be more usable. The code is much smaller
and is based on the pose selection time, not on click time. It is more
robust and since the selection might have been by click, keyboard or
selection rect, it makes the behavior very pleasant (in my opinion) for
multiselections. Try and tell me!
* Disabled the modifiers (first click editing). Too many of them, and
conflicting with other usages, i'd like your opinions/preferences.
* Removed old, hackish and now unused DelayedEdit/SetDelayedEdit stuff.

Fixes #3617

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

105f1c63 19-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* Added a TODO about droping icons under replicants or deskbar since i
couldn't find a quick solution that wouldn't need the layouting rewrite
(currently in redesign phase in my branch)
* In the mean time i've added desktop element avoidance in Cleanup so one
can easily recover hidden icons without advanced shortcuts. Before that, it
would need a CleanupAll aka shift-alt-k (which would relayout everything btw).

Doesn't fix #4241 but at least provides a way to see your icons again easily.

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

2c69b5b6 19-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Made the libbe_test environment basically working under Haiku - to actually
make it work, one would need to use versioning for all libbe symbols. This is
worth an 8k price per file that links against libbe.so, so I didn't want to
commit this as is. An alternative to this solution would be to write a
separate application that is responsible for the app_server's window. Comments
* Removed BeOS compatbility of the libbe_test stuff.
* Renamed the libbe_test targets from *haiku* to *test*, ie. libbe_haiku.so is
now called libbe_test.so, haiku_registrar is now test_registrar, etc.
* This also removes BeOS compatibility from tracker/FSUtils.cpp (all BeOS
compatibility should be removed, but I don't want to make Alexandre more work
in his branch, and it's not urgent at all).
* Replaced the former "run" scripts for the test environment with a single
run script (see updated NOTES file).
* Removed the libbe_test target from some applications - this was only to help
developing them under BeOS, and is thus no longer necessary.

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

bdee02b5 19-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* Move cursors to Cursors.h
* Use the new copy cursor

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

c5b7a0fe 19-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* Give a chance to volume/disks icons to save their position when changing the
"Show Disks/Volumes Icon" preference. Fixes #1559
* Automatic white space cleanup

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

3074019e 18-Aug-2009 Alexandre Deckner <alex@zappotek.com>

* Remove wrong check that was preventing to properly place the first pose. Fixes #4055

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

39fff753 18-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Fixed broken sort order of all attributes.

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

a5dc8f86 16-Aug-2009 Philippe Saint-Pierre <stpere@gmail.com>

Reverting r30894 as it seems it is what was causing the slowness reported in ticket #4247.

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

14347545 11-Aug-2009 Philippe Saint-Pierre <stpere@gmail.com>

Now it also considers the MimeType of symlinks targets when proposing add-ons in tracker.

This fixes ticket #2775.

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

a9218c9c 08-Aug-2009 Rene Gollent <anevilyak@gmail.com>

Oops, check was reversed.

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

d726fd50 08-Aug-2009 Rene Gollent <anevilyak@gmail.com>

When picking file destinations via the slow context popup, also do the copy vs move check based on device. Fixes ticket 4202.

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

2d6de22f 08-Aug-2009 Rene Gollent <anevilyak@gmail.com>

An Open With window has no target model. PoseView's drop target handling code didn't take this into account, causing a crash. Fixes ticket #4200.

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

249efd04 31-Jul-2009 Axel Dörfler <axeld@pinc-software.de>

* Fixed basic layout issues, and therefore bug #4138. This panel needs a serious
usability redesign, though, so I didn't bother letting it use the layout
engine for now.

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

c9d9b2da 28-Jul-2009 Rene Gollent <anevilyak@gmail.com>

Remove old BeOS-era hack to prevent NavMenus from containing > 500 items. This fixes missing items when right click browsing large directories.

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

7e1f710f 27-Jul-2009 Axel Dörfler <axeld@pinc-software.de>

* Removed the superfluous Ctrl-Alt-Up shortcut from Tracker that clashed with
the new workspace navigation.

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

d219b1fc 26-Jul-2009 Axel Dörfler <axeld@pinc-software.de>

* Let AddMimeMenu() check if the MIME type is valid, otherwise BMimeType::Type()
could return NULL. This fixes the crashing part of #4037.

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

63d557f0 15-Jul-2009 Michael Lotz <mmlr@mlotz.ch>

Fixing random GCC4 warnings. Mostly missing consts, some parentheses, some braces... Should all be harmless and not change anything.

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

5422febd 14-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

Fixed a few coding style violations and GCC4 warnings.

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

a41067fc 08-Jul-2009 Rene Gollent <anevilyak@gmail.com>

When initializing a file panel, check if the view is being targetted at the desktop. If so we need to flag appropriately as we need a different iterator which will also return the volume poses. Fixes ticket #4073.

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

f207162e 02-Jul-2009 Alexandre Deckner <alex@zappotek.com>

* In single window navigation mode, when navigating into a directory which had no viewstate yet (new folder) or if
fViewState didn't change, fTitleView wouldn't be reset and updated to the new column set. (unfortunately the column
state is managed separately from the rest of the view state). That would cause crashes for example when switching
to a directory with fewer columns and triggering a redraw of a column that shouldn't be there anymore.
Fixes #3710.

* TitleView::Reset didn't invalidate the view and would leave the old columns there until a redraw was
triggered externally.

* Minor cleanup

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

f3797c5a 30-Jun-2009 Stephan Aßmus <superstippi@gmx.de>

Patch by Jeroen Oortwijn: Improve the tab-key focus-cycle ordering of the
Tracker Settings window. Thanks a lot! Fixes ticket #4051.

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

254d2b2d 28-Jun-2009 Rene Gollent <anevilyak@gmail.com>

Fix a number of problems in PoseView:

1) If a node was filtered out by the ref filter, PoseView effectively wiped out all evidence that it ever knew the node existed and stopped listening for changes on it. Consequently, it would never notice if an attribute change such as updating the file's type made the file now eligible to be viewed. Now we keep watching the node and keep it on the zombie list until such time as it passes the filter (if ever).
2) Refresh() cleared the pose list, but not the inserted nodes list. Consequently, any nodes that were already visible before calling Refresh() would not be readded.

This fixes various problems seen in the file panels in WonderBrush (and probably others), such as the file panel initially coming up empty sometimes, and also it not noticing new screenshots,

This closes ticket #1717.

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

26888374 27-Jun-2009 Rene Gollent <anevilyak@gmail.com>

Fix assertion when using Tracker in debug mode. This closes ticket #1636.

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

66684552 14-Jun-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Use public functionality instead of private BeOS syscalls.
* Automatic whitespace cleanup.

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

de81e90c 28-May-2009 Philippe Saint-Pierre <stpere@gmail.com>

Replaces NodeMonitor by PathMonitor in the InfoWindow to update the calculated size of the directory when a change happen.

This implement the suggestion in ticket #2868.

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

bcfe344c 22-May-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Made our struct stat POSIX compliant again -- the time_t fields have been
replaced by timespec fields. Via macros the structure is still source
compatible with the old one.
* Introduced header <compat/sys/stat.h> that defines the old stat structure
(as stat_beos) and conversion functions
* Introduced versions for [l,f]stat().
* Added symbol versions for BDirectory::GetStatFor() for sake of binary
* BStatable::GetStat(): Renamed the old method, changed its parameter to
stat_beos*, and and made it private. Added a new version (using up a
reserved vtable slot). It remains source and binary compatible.
* BRefFilter::Filter(): Changed the struct stat* parameter to struct stat_beos*
for sake of binary compatibility. This breaks source compatibility, though,
which we can't help, since the class doesn't have reserved vtable slots.
* Fixed several issues with the stat structure change, mostly adjusted uses of

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

0c708545 12-May-2009 Stephan Aßmus <superstippi@gmx.de>

Make the partition ID check more flexible, if partitions just pop up out of
nowhere, we still want to be able to automount them, even though the
notification is not for a device.

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

be5788f8 12-May-2009 Stephan Aßmus <superstippi@gmx.de>

Fixed a number of remaining problems with the AutoMounter:
* During boot, the mount mode was ignored for any removable volumes, they
simply got mounted always.
* When automounting later, all partitions on all removable devices would
be mounted, not only the ones on the newly inserted device.

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

3908951b 12-May-2009 Stephan Aßmus <superstippi@gmx.de>

* When inserting USB sticks, the read-only mount suggestion was completely
bypassed, same for invoking "Mount All". Now, the "initial scan" parameter
is used to decide if the user should be alarmed. Basically, it means you
get to decide for every mounted volume if you want it rather read-only.
In the old code:
- If you wanted a stick mounted read-only, you had to go to "Tracker Settings"
and disabled auto-ejecting, unmount the stick, then re-mount to get it to
ask you for read-only mounting.
- But then, it would remember this setting, so when you unplugged the stick
and then replugged it, it would mount it read-only again. This may be nice
for later, but for now, I want to decide if I am willing to take the risk
each time.
* The new code also has the implication that when you plug a drive with more
than one partition, you are being asked for each one. I extended the alert
to also mention the partition name.

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

7a282f3b 01-May-2009 Jérôme Duval <korli@users.berlios.de>

* combine MovePenTo() with DrawString()

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

838eca46 29-Apr-2009 Philippe Saint-Pierre <stpere@gmail.com>

Allows "Icon Label Outline" to be disabled when no background bitmaps are chosen.

It complements r29190 and fixes ticket #2395.

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

107d2b33 26-Apr-2009 Bruno G. Albuquerque <bga@bug-br.org.br>

Only try to add the preferred app if it can be found, otherwise the Open With
menu would be completelly empty.

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

33ce1915 23-Apr-2009 Stefano Ceccherini <stefano.ceccherini@gmail.com>

if opening a document failed because the system is shutting down, don't ask the user if he wants to open the document with another application, since that would fail as well.

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

8baeb63a 23-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Probably not good to invalidate the layout in the destructor...

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

5d2a1fb4 23-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

More style cleanup.

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

3e3d7acb 23-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

In some ways, this is unrelated, but I had to combine this anyhow:
* Extend the PaneSwitch BControl from Tracker, so it can draw on/off labels.
This has the added benefit that you can click the label to expand/collapse,
like for example in the Get Info window (Permissions).
* I also added font-sensitivity features to PaneSwitch, and it can be used
in layouted windows (untested).
* This made the "DrawButton" in the Installer superfluous.

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

5e71c7b1 16-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Patch by Obaro Ogbo (nastee) with small changes by myself:
* Added "Close All in Workspace" menu item in the Window menu. The shortcut
is 'Q', which is usually the Quit shortcut. Since Tracker prevents quitting
via this shortcut, overriding it like this is ok, this was also discussed
in the ticket #2833. I've tested that the existing functionality is not
disturbed (ie Quit in the Settings panel still works, as does quitting
Tracker via "hey Tracker quit"). I did not add the "Close All" menu item,
since that feature is already available via DeskBar and when pressing the
shift key before opening the Window menu.
* I did change the additional short cut. As with "Clean Up" versus "Cleanup Up
All", it's now consistently the shift key, which you have to press.

Note to Obaro: The only other change was that one can set the target of the
menu item to be "be_app", that way one avoids dispatching the message in the
window. Thanks a lot for your work, Obaro!

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

979786f1 12-Apr-2009 Rene Gollent <anevilyak@gmail.com>

Don't show the total number of items if 0 (as will happen in the case of move operations since we skip the pre-flight count for those). Fixes ticket #3722.

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

4fba3522 11-Apr-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Removed src/kits/tracker/OpenHashTable.h. The shared version in
headers/private/shared is newer, though with small interface changes.
* Removed the unnecessary Debug.h include in
* Adjusted sources using these headers, mostly by adding missing includes.
* Lots of automatic whitespace cleanup.

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

4024eadf 10-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

My previous fixes had an oversight and the very last fix introduced new drawing
problems. Basically, forceDraw was set to false which then prevented any new
items to be drawn when there was no scrolling necessary. Now we use a local
variable "needToDraw" that starts with "true" on each iteration. I don't really
know why forceDraw is even passed to the function in the first place. Maybe
it should be called "disabledDrawing" with reversed meaning and should be used
for windows that open on another workspace....

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

039878c1 09-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

* Set forceDraw to false when we have already drawn the pose, not when
there is only some pending scrolling.
* Fixed my previous ScrollTo() change to actually scroll in the two directions
in two steps...

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

72cd1c77 09-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Fixed some weird fallback code, I don't think it's used and added a TODO
for whoever stumbles there next...

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

080385d5 09-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Fixed logic to detect and warn about changes in the system folder. Merged
the "system" folder and "system folder or it's contents" case.

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

000f19e2 09-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Small coding style cleanup.

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

61d107c8 09-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Fix hardcoded paths for this *test* component.

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

6a71afb0 08-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Sorry for mixing some cleanups into this patch...
* When changing icon sizes, invalidate before scrolling. This causes silent
scrolling in app_server and avoids a visual jerk. Everything needs to be
re-drawn at the new icon size anyways.
* Removed the fUpdateRegion member from BPoseView. It was supposed to make
drawing quicker, but it only made it slower. Checking for intersection with
the update rect passed to Draw() should be much more straight forward and
does not involve app_server communication...
* Refactored some misnamed methods, ScrollIntoView() would always draw and
only sometimes scroll - I couldn't agree with that.
* There is a very confusing mix of "fullDraw" and "minimalRect" booleans which
seem to be used with wrong semantics. The minimalRect flag passed to BPose::
CalcRect() means to get the pose rect for the icon and the first column only,
not all columns. Contrary to that, some pose rect calculation happens with
minimalRect == fullDraw... I tried to fix some of that.
* The visible changes of this patch are when adding poses. The
SynchronousUpate() wasn't working so well, I made it work reliably by invoking
Invalidate() and Window()->UpdateIfNeeded(), which also takes care of any
drawing that the app_server has to do for the background. And it's flicker
free in double buffered mode...
-> This fixes poses being drawn multiple times and the text getting darker.
* And there was another bug when adding poses. The extent (bottom of last item
in list view for example) can be just above the current view bounds. When the
next item is added above the view bounds, then the extent scrolls into view,
but there is nothing to be scrolled in this case. srcRect is still invalid
and so is dstRect. But destRect should be valid in this case.
-> This fixes some poses being cut off at the bottom when opening Tracker

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

1f904d1e 08-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* If you do something, please try to do it right, or at least test it.
* The alert escape check was broken in several ways. First of all, the buttons
can be NULL which suddenly crashed apps. Second of all, the check didn't even
work as it was reversed.
* Also, I disabled the code for now, as I really don't think string comparison
heuristics are the way to solve this.

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

7dc5caf2 07-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

When changing icon size, pose locations need saving. That's not so nice, but
pose locations are always in view coordinates from the perspective of BPoseView,
even if the unscaled location wouldn't change from the perspective of BPose.
This could be removed when storing and restoring unscaled location. I was just
not sure were all this happens.

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

96da4b41 07-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

* Fix the completely broken desktop icon size changing which I introduced
yesterday. It needs to auto-place icons which go out of view or underneath
the deskbar or a replicant. Also it obviously cannot scroll to keep the
view "centered" as normal Tracker windows.
* Fix/improve the desktop context menu with regards to icon size options. It
also displays the shortcuts, which now work on the desktop too.
* When doing an icon cleanup on the desktop, not only the deskbar is avoided,
but also replicant views.

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

e419aeed 06-Apr-2009 Rene Gollent <anevilyak@gmail.com>

If drag and drop with the context menu is used (right click drag / control + drag), treat "Copy Here" as a request to duplicate the item if the destination is the same folder.

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

7cdbeb0e 06-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

* Changing the icon size will now work more like simply scaling/zooming the
view. BPose converts the scale in SetLocation() and Location(), which does
_not_ affect performance for list mode, BTW. So that should be fine.
* The center of the pose view is now locked when changing the icon size.

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

e70b6d95 06-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

* Cleanup in the icon mode stuff. kScaleIconMode is gone. There is simply
kIconMode and it can have different sizes.
* The "Icon Mode" super menu item is marked, when in icon mode, as well as
the size item in it's sub menu.
* When switching from mini icon mode or list mode back into icon mode, the
previous icon size is now restored. This also works when the folder has
been closed meanwhile. (The on-disk format for view state has changed, so
your folders will open with default values.)

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

f5bdd554 06-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Patch by Maxime Simon with small changes by myself: Change the icon size
menu as discussed in ticket #2431. There are only three main shortcuts for
icon, mini icon and list mode. Additional short cuts have been added to
increase and decrease the icon size. I've moved the shortcut from the 32
icon size to the menu item for the icon size menu itself. Unfortunately,
icon placement does not scale with the size (as before) and switching to
icon mode from one of the other modes does not restore the previous icon
size. Looking into it.

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

019f90e6 05-Apr-2009 Jonas Sundström <jonas@kirilla.com>

Setting the escape key as shortcut for the Cancel options of Tracker's dialogs.

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

0f617d44 05-Apr-2009 Rene Gollent <anevilyak@gmail.com>

Fix several cases of forgetting to include libstdc++ in the libs. This allows a successful build of Haiku on gcc4 Haiku, though it's presently unclear to me why this didn't prevent linking on any other platform (gcc2 haiku, and gcc2/4 cross compilers from FBSD had no issues here).

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

561b5d97 05-Apr-2009 Alexandre Deckner <alex@zappotek.com>

* Implements enhancement #2829, ie: change the modifier key (now shift) to force identify on
already identified files and change the menu item label accordingly so that the 'feature' is
not hidden anymore.
The identification mechanism will probably be automated in the future, forcing
identification would then become the only use of this menu item.

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

4d162402 05-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

* Should fix the default desktop background (Haiku logo) since the move of the
artwork folder.

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

86e64a73 04-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Patch by Maxime Simon: Add short cuts ot the icon modes. Thanks a lot! Fixes
ticket #2431.

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

317bd7dd 03-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* Changed directory structure as suggested on the mailing list.
* Made the TimeZoneView less error prone, and also actually use Haiku code (the
previous check didn't work since it used #if, not #ifdef).
* Also took the liberty to rename our boot loader to haiku_loader, since I had
to update the nasm binary anyway. Updated the assembly sources to nasm 2.0.
* I haven't found where the synth location in the MIDI code is specified,
* Also, NetBootArchive, and FloppyBootImage haven't been updated yet. Will do
so next.
* Some optional packages still put their license to beos/etc/licenses. I didn't
update them yet, as we'll probably do so anyway at some point. Also, I think
we might want to introduce a common/data/licenses instead for those.
* If you encounter any problems, please tell!

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

7ce973c6 01-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Patch by plasm with some modifications by myself: Implement natural sorting
in Tracker. Strings are compared in chunks where the type of each chunk can be
numer or string. Thanks a lot!

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

8ad62dec 29-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

Patch by Obaro Ogbo: Provide a PreferredWidth() implementation for the
Relation attribute column in the Open With panel. So double clicking will
size it properly. Fixes ticket #3035. Thanks a lot!

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

86fb66a8 29-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

Fixed a mixup of the flags and resize mode arguments. In my previous commit,
I wrongly assumed that viewMode == view flags.

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

dec2485c 29-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

Patch by jonas.kirilla: Allow the Tracker settings window to be quit by
Command-Q. Thanks a lot!

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

0834dd80 28-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

* Use B_DRAW_ON_CHILDREN for the Desktop pose view.
* Draw the selection rect in DrawAfterChildren().
* Call DrawAfterChildren() manually in Draw(), if B_DRAW_ON_CHILDREN is not set.

This change allows replicants, in case they want to be aware of being embedded
in the desktop, to use alpha blending to draw on top of the desktop pose view.
For replicants which do not care, this patch changes nothing. When views
with B_DRAW_ON_CHILDREN invalidate themselves, they will automatically trigger
an update of children that sit on top the invalidated area, at least with our
app_server. So this change works just like one would expect, ie like
compositing views. Of course it should have flickering when app_server does not
run in double buffered mode.

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

af20d1a1 26-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

Small cleanups.

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

ce657006 23-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

Beautified the Tracker job status window:
* Centered icon in available space.
* Improved button layout.
* Pause button remains pressed when paused.

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

cafee0b7 23-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

Improved/fixed the look of file panels. If I feel motivated enough, I may
also fix the font-sensitivity issues.
* The CountView can now draw part of the PoseView focus indication. Though I
am not convinced anymore that I am approaching this the right way. Maybe
scroll views should simply leave room for drawing a frame between child
and scroll bars...
* ContainerWindow::BackgroundView uses the new BControlLook method to draw
the scroll view frame to look just like a regular scroll view.
* Some fixes to layout of controls in file panels and minimum window size.
There would be much more left to do...

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

08ff393d 21-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

Fix DraggableContainerIcon drawing after recent BControlLook method signature
change for DrawMenuBarBackground(). The borders are passed one position later.

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

81824f60 18-Mar-2009 Axel Dörfler <axeld@pinc-software.de>

* Auto mounting now works correctly for CDs and USB sticks, thus fixing bug

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

8f464bc9 18-Mar-2009 Axel Dörfler <axeld@pinc-software.de>

* Added support for automatic mount on media change. Not yet tested, though,
and probably only works for CDs as is (ie. not for USB sticks).

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

f5812f4b 14-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

r28745 prevented overwriting the global type ahead string buffer from
an unrelated window. However, we broke unsetting the type ahead string on the
little info view. This fixes this again, the type ahead string never went

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

492e224b 14-Mar-2009 Michael Lotz <mmlr@mlotz.ch>

* Update the signature of _kern_load_image(). It has been changed and therefore
the calls to it always failed.
* Check what error is returned and read the approprite details out of the

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

4dabc2e6 14-Mar-2009 Axel Dörfler <axeld@pinc-software.de>

* Fixed warning.

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

2ade87ff 14-Mar-2009 Stephan Aßmus <superstippi@gmx.de>

Temporary fix for the ugly drag bitmaps when dragging icons from the Desktop.

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

b32211a4 12-Mar-2009 Axel Dörfler <axeld@pinc-software.de>

* r28871 turned around the sort logic for undefined attributes.
* Cleanup.

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

1c56dee2 08-Mar-2009 Rene Gollent <anevilyak@gmail.com>

We need to remove the node from our list when the pose is removed. Otherwise deleting, then recreating the same file will be rejected as a duplicate and not added to the view. Thanks to mmlr for reporting.
Small cleanups.

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

ccefc7ac 06-Mar-2009 Rene Gollent <anevilyak@gmail.com>

Clear the node list when switching directories. Otherwise navigating out of a directory and back in single window mode will show no nodes whatsoever.

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

59160ac7 06-Mar-2009 Rene Gollent <anevilyak@gmail.com>

Fix gcc4 build. GCC 3 and up moved some of the SGI extension classes into a different namespace.

Fixes ticket #3524.

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

38f46251 06-Mar-2009 Rene Gollent <anevilyak@gmail.com>

Rework this again due to flaws in the previous optimization - due to its use for things like sorting the visible pose list, it would rely on whatever pose column was being used for sorting, and as such would generate false positives when the view was being ordered by certain attributes. We now use an std::hash_set to track all the nodes that have been added to the current view and use that for a duplicate check instead. Also slightly boost the max number of models per chunk that we read.

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

847af007 03-Mar-2009 Rene Gollent <anevilyak@gmail.com>

Second attempt at PoseView population optimizations: We still search for the pose in our list, but now rely on a binary search to do it instead, rather than the previous linear search. This considerably boosts population speed for large folders here, while still preserving correct behavior.

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

63459605 24-Feb-2009 Alexandre Deckner <alex@zappotek.com>

* Revert the changes in r29316 as it's now fixed upstream.

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

ea83c971 24-Feb-2009 Alexandre Deckner <alex@zappotek.com>

* Round mouse coords before doing BRegion ops for the transparent
selection rect, as BRegion behaves unpredictably with non-integral
values (cf bebook).
Fixes #1527

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

887f9688 24-Feb-2009 Stephan Aßmus <superstippi@gmx.de>

Improved the look of the icon label outline, at least the white text
version should look much better now. Not so sure about the dark text
version, but if you don't want that, just make sure your desktop bg
color is dark enough to get white text.

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

08f9d400 22-Feb-2009 Jérôme Duval <korli@users.berlios.de>

set widget outline to true on DesktopPoseView creation as default. It might not be set by the BackgroundImage code if there is none.

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

3291c580 21-Feb-2009 Rene Gollent <anevilyak@gmail.com>

Revert the PoseView change from r29190. This is incorrect since the outline setting only applies to the desktop poseviews, and is explicitly set there by the backgrounds settings code in BackgroundImage.cpp. This fixes the font rendering artifacts reported in ticket #3467.

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

ec8c04cc 21-Feb-2009 Rene Gollent <anevilyak@gmail.com>

Never show the copy cursor if the item being dragged is a volume or the disks icon. Fixes ticket #3468.

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

4712bc80 16-Feb-2009 Alexandre Deckner <alex@zappotek.com>

* Revert one the changes done in r29198 has it happen to be wrong. See #3450 and #3011

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

2f86ba45 15-Feb-2009 Stephan Aßmus <superstippi@gmx.de>

Implemented a new look for the Haiku interface controls. It was
overheard that they looked too ninety-ish.
TODO: The code behind this is work in progress. The basic idea
is to extract all drawing code into a new class BControlLook,
of which there is a global instance be_control_look, instantiated
in InterfaceDefs.cpp. At the moment, all the old drawing code is
still there, and the usage of be_control_look is inside if-bodies
checking the instance against NULL. In another words, by not
instanitating be_control_look, you can revert back to the old look.
BControlLook's job is to provide reusable methods for drawing
certain types of frames, backgrounds and labels, so that application
developers can make controls that re-use the same drawing code
as built-in controls and adopt to changes made there. I have added
the notion of "borders". Each of the frame drawing methods can be
made to draw certain borders only, which is supposed to help when
controls shall visually attach. This feature is not fully explored
at all ATM.
TODO: Update BColumnListView header view and BStringItem text
spacing. Update other apps where it makes sense to use BControlLook.
For the moment, only Tracker and LaunchBox are updated. More...
NOTE: The new look is not very radically different, so that existing
apps do not immediately look too ugly or out of place.

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

95da0645 14-Feb-2009 Rene Gollent <anevilyak@gmail.com>

Some pose performance improvements by aldeck and myself:
1) We don't need to call FindPose() on every pose as we're freshly adding it,
and a duplicate should never happen in this circumstance (the FindPose() is still there if
Tracker is compiled in debug mode however.
2) Adjust the FSClipboard calls such that the locking is optional. This allows us to lock
once per CreatePoses group rather than once per pose.

Together these changes make for a significant performance improvement when it comes to
populating a large folder.

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

71ed64b7 13-Feb-2009 Jérôme Duval <korli@users.berlios.de>

* Icon label outline is by default true. We take this into account on PoseView creation in Tracker, and when no image is selected in Backgrounds.
* This flag is still only settable when an image is selected.

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

c4d59015 08-Feb-2009 Rene Gollent <anevilyak@gmail.com>

Slight logic cleanup that prevents excessively rechecking the drop target in some instances.

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

a67852c5 08-Feb-2009 Rene Gollent <anevilyak@gmail.com>

Reset the cursor check state if we drag over a pose that's not a suitable DnD destination for the drag. Otherwise we'll reset the cursor back to the move state and never set to copy again unless we exit/reenter the window. Thanks to luroh for reporting.

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

81796bc0 08-Feb-2009 Rene Gollent <anevilyak@gmail.com>

Don't leak memory when aborting operations due to read-only volume.

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

c854c133 08-Feb-2009 Rene Gollent <anevilyak@gmail.com>

Disallow move to trash and/or delete operations from read-only volumes. This fixes ticket #3421.

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

42fe9293 07-Feb-2009 Rene Gollent <anevilyak@gmail.com>

Tracker now alters the cursor to indicate the resulting FS op when drag and dropping files.
If the op is determined to be a copy, the copy cursor from Wonderbrush (thanks Stephan!) is
displayed. Otherwise, the default hand cursor is used to indicate move.

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

4f3347b6 03-Feb-2009 Joachim Seemer <humdingerb@googlemail.com>

As discussed here:
We decided on a distinction between path+filename and only the path to a file.
I changed the places a user is exposed to the issue, using the definition:
Path with filename: "Path"
Path without filename: "Location"

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

8e1e99a3 01-Feb-2009 Rene Gollent <anevilyak@gmail.com>

Fix Create Link from context menu.

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

28e82de7 31-Jan-2009 Rene Gollent <anevilyak@gmail.com>

Compute the point list for the destination items. This fixes a problem reported by BGA where dropped items in large icon mode weren't being dropped onto the location of the pointer, but rather the first available grid slot.

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

dc027966 31-Jan-2009 Rene Gollent <anevilyak@gmail.com>

Unbreak build.

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

b8d65a49 30-Jan-2009 Rene Gollent <anevilyak@gmail.com>

This should really fix #3393. Apparently I'm more sleep-deprived than I thought.

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

fee5fc34 30-Jan-2009 Rene Gollent <anevilyak@gmail.com>

Fix another regression preventing moving around icons. Fixes ticket #3393.

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

6a392dce 29-Jan-2009 Rene Gollent <anevilyak@gmail.com>

Skip doing the preflight size calculation in cases where the requested FS operation will be instantaneous anyways.

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

994541a8 29-Jan-2009 Rene Gollent <anevilyak@gmail.com>

Refactor MoveSelectionTo a bit to reuse other code instead of duplicating most of it practically verbatim with different variable names.

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

12f46beb 29-Jan-2009 Rene Gollent <anevilyak@gmail.com>

Fix a regression introduced with my previous commit where forcing Move would not always be respected.

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

cfd0c077 28-Jan-2009 Rene Gollent <anevilyak@gmail.com>

If the source and destination volumes of a drag and drop op do not match, default to copying unless the user has explicitly requested otherwise. TODO: visual indicator of which op is going to happen.


M PoseView.cpp

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

280987e2 25-Jan-2009 Jérôme Duval <korli@users.berlios.de>

Applied a tip from Stephan: pass the location to DrawString directly.

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

0cfe9ac0 25-Jan-2009 Jérôme Duval <korli@users.berlios.de>

* centers the text for the settings list item as done with BStringItem

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

e5a30119 12-Jan-2009 Alexandre Deckner <alex@zappotek.com>

* There was a bug in the way the mimetypes list was constructed, it would recalculate the list on
each addition, which is o(n). It's already refreshed lazily on read, only rarely when ContainerWindow updates
his menu.
Now there's only one recalc when finished adding poses, 9ms for 20K files here.
Pose adding is almost linear now for the first thousand files, but it gets worse after that due to
another known problem. Now doing 35s instead of 80s on a 20K files folder here, more to come :)

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

b47e7347 11-Jan-2009 Karsten Heimrich <host.haiku@gmx.de>

* Prevent a column to shrink smaller then the default column width. This was most notable
when double clicking e.g. the Size column in a tracker window containing only folders.
It would shrink smaller then one can resize it while dragging the resize 'handle'.

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

b2f91e61 11-Jan-2009 Karsten Heimrich <host.haiku@gmx.de>

* Prevent the B_OBSERVER_NOTICE_CHANGE to get passed on to ContainerWindow, since
this would crash Tracker in case the 'Open With' window is shown and one try's
to set, e.g 'Show full path in title' or 'Show Navigator' etc.

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

51505cb0 10-Jan-2009 Alexandre Deckner <alex@zappotek.com>

* The pose adding thread was going too fast, opening too many files (those are closed by the window thread), and
reaching the file descriptor limit. For some still unknown reason, this was causing GetNextDirents to stop returning new
entries. The result was that, on populated folders, Tracker wouldn't load all poses and stop at a random amount.
We now take a more conservative approach and close the files before sending, reopening them on reception.

Now the AddPoses thread is a bit too aggressive, especially on second runs, i needed to add some snoozing otherwise it
would stall Tracker for several seconds. (testing on a 20000 files folder).
This fixes #3054

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

6d344473 10-Jan-2009 Rene Gollent <anevilyak@gmail.com>

Fixed broken ternary logic in GenericAttributeText::Compare() that would result in the wrong value being returned when one or both attributes being compared were undefined. A symptom of this was the crash reported in ticket #2760. Leaving that ticket open for now though as returning the wrong value to the sort shouldn't have caused a crash regardless.

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

db5b0bfc 27-Dec-2008 Rene Gollent <anevilyak@gmail.com>

When drag and dropping a text file, Tracker would refuse to extract the text (and style attributes, if any) if the file in question didn't have both the text/plain filetype *and* Tracker's clipping attribute. Since I was unable to find any good reason whatsoever to check for the latter, I removed this. Fixes the reported problems where drag and dropping a file onto a BTextView would do nothing unless the clipping attribute existed as well.

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

c3341227 03-Dec-2008 Rene Gollent <anevilyak@gmail.com>

If the source volume is read only, only allow a copy op since move makes no sense in this case. Ideally we should probably also modify NavMenu and the drag context menu to only present the options that make sense in a particular situation. Fixes ticket #3195.

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

4f7d38d3 02-Dec-2008 Rene Gollent <anevilyak@gmail.com>

Correctly indicate "Copying" vs "Moving" state in status window (thanks Adrian Panasiuk for pointing this out).

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

d35d0f74 28-Nov-2008 Axel Dörfler <axeld@pinc-software.de>

* s/fLastKeyTime is no longer a static member - this fixes that the type-ahead
buffer will be taken over to another window (if you type fast enough).
* Also the type-ahead runner no longer clobbers the static type-ahead buffer,
so it won't delete something you typed in another window anymore (again, if
you type fast enough :-)).

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

b9224a25 28-Nov-2008 Axel Dörfler <axeld@pinc-software.de>

* Fixed typo.
* No need to duplicate other people's coding style violations: parameters
have names in Haiku even in header files; fixed some more occurences of
this problem (but not nearly all).

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

87f41e61 25-Nov-2008 Rene Gollent <anevilyak@gmail.com>

Resolve several bugs that are probably as old as Tracker itself:
1) Move To now works as advertised in all cases - previously it
silently converted a move into a copy if the destination volume
was different, as its move code was not geared towards handling
that case properly. This also has the side effect that drag and
drop is now always a move as well unless overridden via right click
DnD. This may or may not be reverted back to the original behavior
later depending on the consensus.
2) Copying a folder onto another folder of the same name now merges
the contents instead of destroying the original. This fixes ticket
#1420. Still to do: interactive prompting to allow fine grained file
replacement and skipping in this and other multi-file cases, but
I'll open a new enhancement ticket for that.

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

91415718 25-Nov-2008 Bruno G. Albuquerque <bga@bug-br.org.br>

- Traverse links when adding well known directories.

This change will make directories like the downloads folder get its correct
special icon even if it is a link to a another directory. The destination
directory also gets the icon which makes it easy to identify special
directories even in other partitions.

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

641305c2 25-Nov-2008 Bruno G. Albuquerque <bga@bug-br.org.br>

- Find panel now also includes supertype attributes.

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

3005b1d6 06-Nov-2008 Stephan Aßmus <superstippi@gmx.de>

Always retrieve the "would be mount point" of the partition
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"

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

b545073f 06-Nov-2008 Stephan Aßmus <superstippi@gmx.de>

* Moved the global BPrivate::WidthBuffer from BTextView into BPrivate as
* Tracker PoseView now uses BPrivate::gWidthBuffer instead of it's own
* 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

fc7b01b1 31-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* fix coding style

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

e3bcc1dc 31-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* Combine the two calls to ScrollBy into one.

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

e9842421 31-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* On date format change, remove the need for the synchronous call to
DrawViewCommon(), simply invalidate since the logic is simplified now,
see below.
* Reworked the way TimeAttributeText was updated when date format is
changed. Got rid of the recalculatText flag propagation, it was broken
since forever anyway (was here on r5 max4.1): It was only updating
visible poses and wasn't robust in certain cases. Besides, it was
cluttering the code on several layers upfront only for date format changes.

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

34034cf6 27-Oct-2008 Axel Dörfler <axeld@pinc-software.de>

* _UnmountAndEjectVolume() now actually ejects the media, if configured, and
possible, ie. if no other volumes are mounted on the device.
* Fixed a operator precedence bug in GetSettings() when retrieving the mounted
volume flags.

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

f05f4fcb 25-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* Added support to show tracker preferences via scripting. This will allow accessing
tracker prefs via the preferences menu using a one line script: 'hey Tracker DO
Preferences'. Not sure how to set the icon of the script with the build system, feel
free to do it. See enhancement #2365

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

6dee6b8c 22-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* Do the locking and lock check in an outer 'if', the window could be left
unlocked if the whole condition wasn't true. Thanks stippi!

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

369ad66d 21-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* Lock the window when saving windows states in Tracker::QuitRequested.
This was the cause of #2571 and duplicate #2888 although the bug wasn't
triggered anymore since r28205.

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

cde552bd 18-Oct-2008 Michael Lotz <mmlr@mlotz.ch>

Don't select anything in type ahead mode when no match is found anymore. This
makes sure that the best match just stays selected instead of always selecting
the topmost pose.

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

aa22e8db 18-Oct-2008 Michael Lotz <mmlr@mlotz.ch>

Changed the score calculation for type ahead in the Tracker. Previously if there
was at least one character matching at the start of any file it would have
gotten a score >= 1. This rendered the substring matching completely useless
as soon as this happened, because it would always get a score < 1 depending on
the position of the occurance. Now substring matching is the first (and without
word mode, the only) score to get. Since the score depends on the position of
the match, this doesn't change anything for exact matches at the beginning, but
it does allow for substring matches even if there is a file starting with the
same letter as the search string. Also use strcasestr() instead of strstr() to
make the search case insensitive.

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

842cd2b8 18-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* Removed the call to Refresh() when switching to scaled icon mode as it
would scroll to (0, 0), and screw the now always-in-sync fViewState.
After testing every possible mode transition, there seem to be no side
effect as the comment would suggest. Stippi, do you remember why it
was necessary? See r18699.
* This enabled me to do my previously added TODO's.

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

3704f31d 17-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* AddPosesCompleted could be called actually before all the poses were added.
The method was called after _sending_ all the messages, not after receiving
them all. This fixes the scroll validity check in AddPosesCompleted in list
mode (bug mentioned in my last commit).

We can now close #2441, tracker windows should now be completely persistant
with regard to scrolling now, in all modes (spatial mode, single window
mode in list or icon mode). \o/

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

e85ca56c 17-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* Style cleanup.

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

3d7584da 16-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* Rewrote the way BViewState checks if changes needs to be saved on quiting a navigation window (icon mode and
list mode) or switching dir in single window navigation. Fixes the other half of the problem in #2441. Left some
I discovered an other bug that can add a random offset after finishing adding poses.

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

2cb8652f 16-Oct-2008 Bruno G. Albuquerque <bga@bug-br.org.br>

- The Trash context menu was using a checkmark to keep track of the last
selected item which does not make much sense. Disabled the checkmark.

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

49ad25b3 16-Oct-2008 Axel Dörfler <axeld@pinc-software.de>

* The type ahead mechanism did not work correctly in list view mode: instead
of taking the contents of the columns, it would always use the file name
* That uncovered another bug, though: WidgetText::Text() tried to cast everything
to StringAttributeText, but GenericAttributeText is actually used for most
* Therefore, GenericAttributeText is now a subclass from StringAttributeText.
* Extended the type ahead to take other columns into account, and made it also
find strings in the middle (like a filter) as a second choice.
* Whitespace cleanup.

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

e522ba55 15-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* In single window navigation, tracker wasn't restoring the view origin (current scrolling) properly. It was reseting the origin even after
successfully loading the saved state. Reworked the logic to make that work properly (this also needed checking if the state read succeeded). This
fixes part of #2441. There is still an issue when sometimes the view state is not saved properly, more tomorrow!

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

404bf9d1 15-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* Simply check if fTrashContextMenu->Window() is non NULL. This should be the definitive
solution :)

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

8cca2102 15-Oct-2008 Rene Gollent <anevilyak@gmail.com>

Fix build (ShowingAwarePopupMenu was not added to libtracker's build, resulting in undefined sym errors).

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

618c7ffa 15-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* There was indeed a problem with my previous attempt at fixing #353. This should be much

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

e400b7d3 14-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* DeskWindow wasn't checking if the context menu for the trash was already open and showing. We do it like in ContainerWindow now. Fixes #353

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

b16cba7b 13-Oct-2008 Axel Dörfler <axeld@pinc-software.de>

* The Tracker now makes use of the new B_DISK_SYSTEM_SUPPORTS_WRITING flag,
and will only show the "mount me read-only?" dialog when the file system
actually supports writing in the first place.

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

d881bedf 04-Oct-2008 Axel Dörfler <axeld@pinc-software.de>

* We must not sort the cached inodes, or else we mess up the order for
* This fixes bug #2795.

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

f28ab87b 04-Oct-2008 Axel Dörfler <axeld@pinc-software.de>

* Added "sortInodes" parameter to CachedEntryIteratorList constructor.
* Moved static CompareInode() to CachedEntryIterator::_CompareInodes().
* Cleanup.

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

05ea8535 02-Oct-2008 Karsten Heimrich <host.haiku@gmx.de>

* fix some mem leaks

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

c716766b 02-Oct-2008 Karsten Heimrich <host.haiku@gmx.de>

* whitespace cleanup

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

2b389c6e 25-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

don't leak the bmessenger. CID 888

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

85d7d4bc 25-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

the loop was never entered. CID 93

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

84dcf4f2 25-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

CID 996. Don't leak the BString

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

2e2f53f6 25-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

don't leak extendedPoseInfo on error. CID 997

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

90b7764d 21-Sep-2008 Rene Gollent <anevilyak@gmail.com>

Move WidthBuffer and TextGapBuffer into BPrivate and use them from there in BPoseView and BTextView. This (correctly) fixes the previous gcc4 build issues.

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

a682d981 20-Sep-2008 Stephan Aßmus <superstippi@gmx.de>

Quite a cleanup action to avoid polluting the global namespace with private
BTextView classes:

* Declared the directly used BTextView helper classes as private BTextView
classes and changed all affected files.
* Realized that Tracker's BPoseView was (accidentally?) using what used to
be _BWidthBuffer_. It had declared it's own class with the same name and
same members/size in headers/private/tracker/TextViewSupport.h, but the
implementation was nowhere to be found. I can only explain this that
the BTextView implementation was then actually linked and used. But the big
problem was that it was used without locking (unlike in BTextView)! When
many Tracker windows opened during system startup or later and they happened
to each request characters not yet in the cache, I imagine things could have
gone bad and corrupted memory. Anyways, since I can see the usefulness of
the cache, BPoseView uses BTextView::WidthBuffer on purpose now. And I moved
the locking inside BTextView::WidthBuffer::StringWidth().
* Adjusted InterfaceDefs.cpp accordingly.
* TODO: Move subsequent classes into BTextView namespace as well, ie derived
classes that BTextView doesn't directly know about. All stuff in src/kits/
* Added preliminary and not yet implemented layout friendly BTextView
* I will try to handle the insets imposed by BTextView::fTextRect a bit
differently when used inside the new layout management framework. For this,
I added BTextView::SetInsets() and GetInsets(). SetInsets() doesn't do
anything yet.

So far, everything seems to work still... ;-)

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

ec10ce59 14-Sep-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

delete -> delete[]. CID 151

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

fbf8d9c8 14-Sep-2008 Michael Lotz <mmlr@mlotz.ch>

Remove superfluous NULL check as menu being non-NULL is asserted at the top.
Fixes CID 1075.

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

f679edb6 14-Sep-2008 Michael Lotz <mmlr@mlotz.ch>

Don't build the context menu before checking for NULL. Fixes CID 1077, though
the Tracker sources should really be cleaned up to use nothrow and/or exception
handling more consistently.

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

ebcba0be 13-Sep-2008 Stephan Aßmus <superstippi@gmx.de>

Free query in error code path. Fixes CID 927.

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

19a1d666 06-Sep-2008 Stephan Aßmus <superstippi@gmx.de>

Improve the Read-Only mounting suggestion for additional volumes.
* Following a suggestion by BGA, even non-boot Haiku volumes will get the
read-only popup, although with less emphasis in the wording.
* BPartition does inherit the read-only flag from it's parent device when
not yet mounted. This is now checked and at least prevents the read-only
popup for volumes on read-only media. If I understood everything correctly,
there is no easy way to tell if a file system supports writing.
* Updated indentation style in the header.

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

83705761 28-Aug-2008 Bruno G. Albuquerque <bga@bug-br.org.br>

- Better be safe than sorry. Check MIME type and super type after
constructiuon. Thanks Rene for reminding me that BMimeType actually has a
InitCheck() method. :)

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

3f2dd98c 28-Aug-2008 Stephan Aßmus <superstippi@gmx.de>

This fixes a bad feeling in my stomache:
* When mounting a non-BFS volume, suggest to the user to mount it read-only.
* Store the mount flags with each volume in the automounter settings, restore
mount settings on next boot.
The second part is probably nice to have anyways und should prevent bad surprises,
the first part should be removed again when we have absolute confidence in all
our file system implementations as well as the kernel itself.

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

dcf3842b 25-Aug-2008 Bruno G. Albuquerque <bga@bug-br.org.br>

- Changed the well-known "Downloads" dir to be named "downloads" for

All well-known directories in the home dir ("mail", "people", "config") are all
lowercase. The only exception was the "Downloads" one.

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

d262deae 21-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* The MIME type menu in the find panel now shows the MIME type icons, if any.
* Whitespace cleanup.

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

d125d984 21-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* IconMenuItem now falls back to the icon of the super type, if a MIME type
didn't have one.
* Whitespace cleanup.

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

206c62f0 21-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Got rid of the "count" parameter and maintenance altogether - makes the code
much simpler.
* Simplified code to compute "start", ie. the index of the first MIME type menu
* Promote MIME types to the top-level if their super type don't add any

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

090da60b 22-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Renamed CreateMimeMenu() to AddMimeMenu(), as it now also adds the menu to
its parent. The item count of the parent is now actually adjusted, so that
additional entries are found.
* AddMimeMenu() now returns the menu of an already existing MIME type. Hence,
we don't add the supertype menu twice anymore for each type, or don't add
the second type at all when called again.
* Cleaned up naming, consistent use of "* " vs. " *".

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

15a27c4d 22-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Whitespace cleanup, no functional change.

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

e51479d9 21-Aug-2008 Bruno G. Albuquerque <bga@bug-br.org.br>

- Creates the supertype menu when only supertype attributes are present.
- *NOW* it works.

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

be8c87ab 21-Aug-2008 Bruno G. Albuquerque <bga@bug-br.org.br>

- Added a new CreateMimeMenu() method that creates the menu with attributes
for a specific MIME type.
- Attribute menus now display a hierarchy with type and supertype attributes.

This looks a bit ugly but mostly because not all types and supertypes have icons and descriptions. Anyone up to do a MIME database cleanup? :)

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

c56a21ed 19-Aug-2008 Alexandre Deckner <alex@zappotek.com>

- Made multi-selection modifier semantics consistent with most OS's out there. See #1255,
please shout if you've got anything against that :)

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

06ba3f0a 17-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
a predefined location on disk (not yet implemented). This would also allow
to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
icons for those.
- B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
variants that can also retrieve the icon data directly (like
* Reenabled the previous BPartition::GetIcon(), based on a patch by
Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.

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

489075a3 24-Jul-2008 Axel Dörfler <axeld@pinc-software.de>

* Renamed _ForceUnmount() to _SuggestForceUnmount() to clarify what it does.
* Factored an _UnmountAndEjectVolume() method that takes a partition and mount
path out of the method with the same name that gets a BMessage.
* Remove the mount point only if it's in rootfs.
* Minor cleanup.

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

7a1c09b6 23-Jul-2008 Rene Gollent <anevilyak@gmail.com>

Only try to rmdir in the case of success.

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

5c4fff2e 23-Jul-2008 Rene Gollent <anevilyak@gmail.com>

Tracker and DriveSetup now attempt to clean up the mount point after successfully unmounting the volume.

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

a86d99e0 21-Jul-2008 Stephan Aßmus <superstippi@gmx.de>

Opening previously open windows on non-boot partitions obviously only worked if the
automounter already mounted these partitions. Since this happens asynchronously,
it sometimes worked and sometimes not. The very simply and non-hacky fix for this
problem is to send a message from the automounter to the application looper to
have it open the previous windows after the initial mount scan is done.

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

499c8103 21-Jul-2008 Stephan Aßmus <superstippi@gmx.de>

* Fixed automounting all BFS disk when Tracker starts.
* Fixed mounting previously mounted partitions. fSettings was never initialized when restoring
the settings. The code I removed earlier didn't do that either.

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

df7697df 21-Jul-2008 Stephan Aßmus <superstippi@gmx.de>

Do not shoot ourselves in the foot and remove the previously mounted partitions
from the settings message just after having restored it. This should fix
restoring the previously mounted partitions, but I have not tested it yet.

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

741b3d90 17-Jul-2008 Michael Lotz <mmlr@mlotz.ch>

Use B_RGBA32 instead of B_RGB32 when getting vector icons. Should fix bug #2525.

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

dcdf3137 03-Jul-2008 Axel Dörfler <axeld@pinc-software.de>

* Unnamed volumes now get the disk size instead of "unnamed" in their mount
menu name, ie. "(unnamed Ext2 File System)" could become "(12.5 GB Ext2 File System)".
* Minor cleanup.

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

8a588970 25-Jun-2008 Alexandre Deckner <alex@zappotek.com>

- HiliteDropTarget was broken, it used a trick to avoid unselecting already selected items but assumed every
call to HiliteDropTarget(true) and HiliteDropTarget(false) would come in pair on the same target.

Fixes #2453 and #1793

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

96f8dfae 24-Jun-2008 Alexandre Deckner <alex@zappotek.com>

- Some view mode transitions had to be handled specially: kScaleIconMode -> kScaleIconMode,
kMiniIconMode -> kScaleIconMode, kIconMode -> kScaleIconMode.

Switching the mode to kScaleIconMode uses a special code path that resets the view origin,
which wouldn't get a chance to be stored/restored. Other icon mode don't need to save/restore
their origin except when going to or coming from kListMode.

This fixes #2441, although i just discovered the same problem when using SwitchDir() (single
window navigation)

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

d511a89a 19-Jun-2008 Alexandre Deckner <alex@zappotek.com>

- Since r21336, BView::ScrollBy was checking the values against the ScrollBar ranges but ScrollBy is often called before
updating the scroll range (ie: in ContainerWindow.cpp). IMO, the programatic ScrollBy method shouldn't depend on the
ScrollBars ranges or state. The original fix in r21336 was apparently hiding other BScrollBar or BView bugs that have been
fixed in the mean time.
The content was offseted when going back to list mode after moving icons on the left/up in icon mode. This fixes Tracker bug

- Revert and fix changes to ContainerWindow.cpp in r18481 (cvs 1.37). The condition was broken, but it wouldn't ScrollBy()
anyway due to the previous problem. Fixing BView made the content autoscroll even if the lefttop corner of the extent was
already visible.

- Probably unrelated, fix changes to ContainerWindow.cpp in r18993 (cvs 1.38). PoseView()->Bounds().left/top < 0 is expected,
if for example in icon mode you move an icon close or crossing the left side of the window and then scroll left to adjust.
This fix ResizeToFit that wouldn't scroll the view correctly in some cases.

So we had a Tracker Bug uncovering a BView fix that was hiding another Tracker bug, everything is fixed hopefully, phew :-)

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

491a3293 12-Jun-2008 Alexandre Deckner <alex@zappotek.com>

- AddPoses didn't check for the ShowDiskIcon() option when deciding to AddRootPoses.

When changing to icon mode with a size other than 32 (ie: kScaleIconMode) PoseView calls Refresh() and all the poses are
removed and loaded again (PoseView.cpp line 1995). This called AddPoses but didn't check for ShowDiskIcon(). The Disks icon
was shown on startup though, since Tracker uses another code path when starting (caching?).

This fixes #1833.

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

ed27e7ae 09-Jun-2008 Alexandre Deckner <alex@zappotek.com>

- Scrollbar proportions computation was wrong in icon mode. The problem showed when a folder contained few icons regrouped in a small area (Extent() smaller than Bounds()). The viewable extent is
always Bounds() now.

This fixes #361, again we're better than R5! Although in this test case, the scrollbars shouldn't be activated in the first place. In icon mode the poseview is still putting too much white space on
the left (x<0) and make the scrollbars show. Fix is almost ready :-)

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

9abdb222 30-May-2008 Axel Dörfler <axeld@pinc-software.de>

* PoseView waited for 200 ms after a B_META_MIME_CHANGED message was evaluated
to give other windows the opportunity to mark the icon invalid before
recaching it.
* Since we currently update all app MIME types on first boot, over 400 messages
are generated, so that delay easily caused the message queue to get full.
* I've now reduced the wait to 10 ms, and also call BWindow::UpdateIfNeeded()
afterwards, which empties the message port, too. This fixes bug #2212.
* Note though, this should be handled completely different to make it really
work right.

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

873066a8 30-May-2008 Axel Dörfler <axeld@pinc-software.de>

A bit of cleanup.

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

f61b0e49 12-May-2008 Jérôme Duval <korli@users.berlios.de>

Patch from Kaoutsis: replace hard coded path with find_directory(B_BEOS_ETC_DIRECTORY, ...)

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

4a32ef2c 18-Apr-2008 Michael Lotz <mmlr@mlotz.ch>

Remove doubled "count" in declaration. Fixes a "operation may be undefined"
warning with GCC4.

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

47908b9a 10-Apr-2008 Stefano Ceccherini <stefano.ceccherini@gmail.com>

fixed warnings.

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

70f87b87 02-Apr-2008 Axel Dörfler <axeld@pinc-software.de>


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

13b895c5 03-Apr-2008 Stephan Aßmus <superstippi@gmx.de>

Applied patch by Christof Lutteroth:
* The count/info view in Tracker truncates the text in a better way when
it does not fit, and also used the space of the barber pool when it isn't

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

a7a306d1 26-Mar-2008 Stephan Aßmus <superstippi@gmx.de>

* Added "Disks" icon (file system root mimetype) based on work done by
Marius Middelthon - Thanks!
* Sorted vector icons a bit more like original bitmap icons.
* Renamed BeBox icon to Root icon.
* Commented out some dead code which caused a warning in

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

5a32be6b 15-Mar-2008 Rene Gollent <anevilyak@gmail.com>

Specify a umask when creating tracker_shelf file.

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

6107b24d 15-Mar-2008 Axel Dörfler <axeld@pinc-software.de>

* Changed the sorting order back to how it was done previously to r22113.
* This fixes bug #1915.

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

c8ae58fd 02-Mar-2008 Rene Gollent <anevilyak@gmail.com>

Made Navigator color-sensitive. More to come.

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

351b7a2d 25-Feb-2008 Axel Dörfler <axeld@pinc-software.de>

* The latter will be set in "statFields" for interim updates when you have
asked to get them via the former.
* BFS now uses the B_STAT_INTERIM_UPDATE flag for sending updates to actively
written files.
* This makes us more compatible with BeOS again; if you only asked for
B_WATCH_STAT, you will now only receive a notification if the file in
question has been closed.
* Tracker now uses B_WATCH_INTERIM_STAT to always get all updates (ie.
downloading a file will update its size and modification time in Tracker
periodically during the download).
* Wether "needsTrimming" was true or not has no influence on wether or not
the size index needs to be updated in BFS - only the actual file size is
stored there, not the on-disk size.
* Added a TODO comment in Inode::WriteAt() that it would actually need to
update the size index when changing the file size, not when the file has
been closed (but that's probably too slow).

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

3831b0dc 18-Feb-2008 Alexandre Deckner <alex@zappotek.com>

- Revert button's first update didn't work since revert data is stored in the Show() method.
- Default data is defined in two places, and was inconsistent.
- Color comparisons could be done with the wrong alpha. note: BColorControl's behavior wrt alpha might differ from R5's.

This fixes part of #254

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

7b95b37c 05-Feb-2008 Stephan Aßmus <superstippi@gmx.de>

Make the Desktop window check the Deskbar frame only every half a second,
use a cached value otherwise. Should speed up icon placement when Tracker

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

0fc3b834 21-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

The AutoMounter should not keep a BDirectory object around that points to the
volumes root directory when trying to unmount it. This fixes bug #1694.
Thanks to Ingo for investigating this! :-)

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

46c6a221 11-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

Files that were created in the future (time zone issues, or whatever)
shouldn't be regarded recent either.

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

f1b05aa5 10-Jan-2008 Michael Lotz <mmlr@mlotz.ch>

Fix syntax error.

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

978e434d 10-Jan-2008 Axel Dörfler <axeld@pinc-software.de>

* Finally nailed down and fixed #355: apparently, if the pose info attribute
couldn't be read from a file, Tracker would try 10 times with a 10 ms
timeout - but only if the creation time equals the modification time!
That was obviously supposed to be a check if the file was recent...
Now that computers are faster (even when running Haiku), it may
actually take less than one second to copy a file, so most files on
the Haiku image satisfied this thoughtful and future-proof check.
(And no, even the original BFS does not automatically increase the
modified time on close.)
* Now, mmlr came up with a better check: we just check the file's
creation time against the current time to see if it's a recent file.
That should work a bit more reliable :-)

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

477d25de 07-Dec-2007 Jérôme Duval <korli@users.berlios.de>

don't add backgroundTexture.tga as default folder image
fix bug #1649

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

6e927a5f 30-Oct-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

malloc.h ain't no standard header. Use stdlib.h instead.

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

f2e230ca 15-Oct-2007 Jérôme Duval <korli@users.berlios.de>

fix a bit of gcc4 build

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

f6e4cbb9 15-Oct-2007 Axel Dörfler <axeld@pinc-software.de>

* Rewrote BeBuild.h which had "a few" consequences (got rid of all those class
* Minor cleanup here and there.

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

f0e6ea21 12-Sep-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Tracker never copied zero-sized attributes.

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

1de41c15 06-Sep-2007 Stephan Aßmus <superstippi@gmx.de>

* fixed tracker single click selection.

If I may say so, I find this code extremely messy and in desperate need for
refactoring. The bad news is that selection flickers now - the columns which
don't need to be drawn at all. I printed some debugging info in
BTextWidget::Draw() and it appears that for a single selection state change,
at least four invokations of BTextWidget::Draw() will result. Sometimes many
more. Since the code calculated the dirty rects wrongly in many places, it
appears that this bug might not have shown before. Like I said, the code is
a mess and there is not a single place for invalidating poses, so I am not
surprised why tons of invalidations arrive. :-/ Maybe I should make myself
more familiar with Tracker... or revert my text outline patch. :-P

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

e44a5286 29-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

The Compare() methods were broken. Worst of all Compare(x, x) would
return 1, which caused STL sort() to access elements out of bounds.
Fixes bug #1422.

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

c4a589b0 29-Aug-2007 Axel Dörfler <axeld@pinc-software.de>

There is no reason the printers directory shouldn't have the folder icon.

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

c9f80156 28-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed DEBUB build.

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

22ca66b9 28-Aug-2007 Axel Dörfler <axeld@pinc-software.de>

Fixed bug #1028 from both sides:
* FindPanel::SetUpAddRemoveButtons() called Window()->FindView() but did not
check if Window() was NULL.
* BWindow now always checks the result of a BAutolock - this is why Tracker
got away with this bug on BeOS; NULL windows cannot be locked...

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

6eb01296 23-Aug-2007 Ryan Leavengood <leavengood@gmail.com>

Patch from Justin O'Dell for bug #254, fixing the Defaults button behavior
for the Appearance and Menu prefs, and Tracker's settings.

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

5c34aef7 22-Aug-2007 Stephan Aßmus <superstippi@gmx.de>

changed the meaning of the "icon view label background" Tracker setting:
* it is replaced by a "icon view label outline" feature that renders a black
or white outline around the text of a label under an icon. This can be used
for background images that have a lot of contrast and is visually more
pleasing (IMHO) than the text box in the workspace color (but the outline
could of course still be improved as well)
the outline or "false bold width" feature is a new BFont feature in Haiku
* Tracker appeared to have a disabled feature to install default background
images, I enabled this feature and rewrote it a bit to use our big logo
from the artwork folder, the placement is for 800x600, so not optimal for
larger desktops, but at least it is shown by default on new installations
or rather "fresh" images
* changed the way the dotted underline is rendered under links, accidentally,
this fixes the bug that it was not dotted at all since a while, which is
a bug in app_server or BView not tracking the need to update the drawing
pattern in certain situations (this bug needs to be fixed too of course)

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

f7deaad7 21-Aug-2007 Axel Dörfler <axeld@pinc-software.de>

If Moved() has been called, Clicked() can't be called anymore; this actually
fixes a crashing bug when dropping a column too fast.

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

27eab79b 20-Aug-2007 Axel Dörfler <axeld@pinc-software.de>

* BTitleView now resizes its columns asynchronously. As a side-effect, this
also solves the slow resizing part of bug #160 under Haiku (where GetMouse()
obviously gets a lot more messages).
* Rearranged the interaction between BTitleView and ColumnTrackState a bit,
removed some unused cruft.
* PoseView::ResizeColumn() had obviously required code to redraw the resizing
lines on enlarging the column excluded for whatever reason.
* Minor cleanup.

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

90aa2658 04-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Made the compatibility level for target libbe_test depend on the compatibility
of the host platform. The libtracker Jamfile seems to be the only one that
needs another exception.

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

da0f9ae0 02-Aug-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Added Haiku as host platform supported by the build system ("haiku_host").
Completely untested yet.

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

d22f48c9 02-Aug-2007 Stephan Aßmus <superstippi@gmx.de>

* fix the build of the app_server test environment (libbe_test) after
the change to the nodemonitor syscall

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

74f09960 26-Jul-2007 Axel Dörfler <axeld@pinc-software.de>

Forgot to remove some debug output.

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

74c0424a 26-Jul-2007 Axel Dörfler <axeld@pinc-software.de>

* Added a mechanism to retrieve a BMessage with eventual error descriptions
for _kern_load_image().
* Added KMessage to the runtime_loader (a bit hacky, though) - it will use
it to deliver the above mentioned functionality.
* load_dependencies() did return the wrong status code in case a library
was missing; now it returns B_MISSING_LIBRARY.
* load_dependencies() will now try to load all dependencies when a report
message is requested; therefore, all missing libraries are listed.
* Renamed uspace_program_args to user_space_program_args.
* The kernel filled in various members of the user_space_program_args structure
unsafely, ie. was not using user_memcpy().
* Renamed some local variables in team.c to better fit our style guide (ie.
uargs to userArgs).
* Changed Tracker to use the new _kern_load_image() variant on Haiku to retrieve
and report all missing libraries. This fixes bug #1324.
* Adapted kernel_cpp.cpp to the runtime loader as well; the latter will now
compile with _LOADER_MODE defined.

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

67aa3b3e 26-Jul-2007 Axel Dörfler <axeld@pinc-software.de>

The "Delete" item in the Trash is not really needed - but was pretty close to "Restore"; I've removed it for safety.

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

95163879 19-Jul-2007 Axel Dörfler <axeld@pinc-software.de>

The AutoMounter now also compiles for Haiku again, sorry!

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

c16182bf 18-Jul-2007 Axel Dörfler <axeld@pinc-software.de>

Tracker now also restores the previously opened windows from volumes that were
mounted later by the AutoMounter's initial mounting loop.

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

eeb608e1 26-Jun-2007 Axel Dörfler <axeld@pinc-software.de>

* StringFromStream() did not work correctly for empty strings (messed up the stream
* StringFromStream() called BString::LockBuffer() with "length", but touched "length + 1"
* Prepared for the new "display as" FileTypes feature.
* The "DefaultQueryTemplate" folder now adds the MIME type of the folder to the
attribute menu for simplified editing (before, you had to move a file with a
matching file type into that folder to be able to add the attributes you likely
wanted to see).

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

efd98f31 20-Jun-2007 Axel Dörfler <axeld@pinc-software.de>

The "show shared volumes on Desktop" setting now defaults to true.

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

bb36f69f 20-Jun-2007 Jérôme Duval <korli@users.berlios.de>

gPeriodicUpdatePoses is already declared extern in the header

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

687e327b 19-Jun-2007 Michael Lotz <mmlr@mlotz.ch>

Reworked the handling of periodically updated poses (currently only ones with a volume space bar):

* Addad global list where poses that need periodic updates can be registered with a callback
* Use this mechanism for poses with a volume space bar
* Create only one BVolume when the BPose is created for a volume, instead of every time the free space is calculated
* On Pulse() the global list is used to update all of the registered periodic update poses
* As the poses know their volume, it is no longer necessary to use a BVolumeRoster to loop through each volume on each Pulse()
* Removed the now superfluous SendNotices() mechanism
* Removed corresponding watching / handling of these notices in BPoseView

The BPoseView did a linear search for each volume pose on each Pulse() before. What's more it did this once for each mounted volume as it did get one individual notice for each of them. To get these volumes a BVolumeRoster was used to loop through the volumes, but then the BPose did still create a new BVolume to actually calculate the free space! I'm surprised that it did not suck away more performance with this method...

Anyway, this should bring down BVolume construction and update overhead down to a minimum and hopefully fix ticket #1247.

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

77974ff1 06-Jun-2007 Stefano Ceccherini <stefano.ceccherini@gmail.com>

some forgotten fVariable -> sVariable renaming

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

021ebd61 05-Jun-2007 Axel Dörfler <axeld@pinc-software.de>

Fixed a warning when compiling Tracker for BeOS.

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

75159db4 04-Jun-2007 Jonas Sundström <jonas@kirilla.com>

The menubar icon at the top-right of Tracker folder windows now uses the view color of its parent view. This fixes bug #551.

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

0d9c65d5 03-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* applied patch by Jonas Sundström, the draggable icon in the Find window
will be drawn with alpha channel

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

b31d4c43 01-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* messed up the build... ICON->VICN

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

df50d6f7 01-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* added query, query-template, printer, generic printer, floppy and bookmark icons.
-> all done by zuMi sometimes with minor modifications by myself

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

e200a8e9 28-May-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Unknown variable referred to in DEBUG build.

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

340e1a97 29-Mar-2007 Stephan Aßmus <superstippi@gmx.de>

added broken symlink icon (almost 1:1 copy from zuMi's version,
only slight clean-up and used the colors from my app icon)

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

e6d3d872 29-Mar-2007 Stephan Aßmus <superstippi@gmx.de>

created "volume" icon (started off of zuMi's version)

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

b8ba8f58 28-Mar-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Added the disk device API to the libbe_haiku.so, so that libtracker.so builds
again for target libbe_test. Added respective syscall stubs and other functions
to libhaikucompat.a.

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

67fb7cd0 28-Mar-2007 Axel Dörfler <axeld@pinc-software.de>

Minor cleanup.

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

eb9b1980 03-Mar-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed gcc 4(.1.2) build problems.

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

63d6bf7a 26-Feb-2007 Axel Dörfler <axeld@pinc-software.de>

* Applied patch by Jonas to have 32-bit icons in the mount and template menus
under Haiku. This fixes bug #1033. Thanks!
* Changed IconMenuItem sizing to use the same method as ModelMenuItem which
makes sure the item is large enough for the icon, and which centers the icon
in case the item is higher than the icon.
* Minor cleanup, added some comments about where those classes are used.

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

e89c2353 06-Feb-2007 Waldemar Kornewald <wkornewald@nowhere.fake>

"Show Folder Location in Title Bar" is now disabled, by default.

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

2e7b1dcd 06-Feb-2007 Waldemar Kornewald <wkornewald@nowhere.fake>

The Defaults button had a different default than Tracker has

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

f6a62205 02-Feb-2007 Waldemar Kornewald <wkornewald@nowhere.fake>

Fixed comment style. :)

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

f70737c1 01-Feb-2007 Waldemar Kornewald <wkornewald@nowhere.fake>

Fixed (*crossing fingers* :) the probably most complicated deadlock in Haiku's history...Axel, am I exaggerating? :)
I've tested it and it seems to work. Could someone else please confirm that everything still works well?

Hmm, I'm still wondering why Axel took the time to suggest a possible solution to me instead of fixing it himself. There must be a catch. ;)

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

4686f4f7 24-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

A little oversight made all icons white on BeOS. This fixes bug #990.

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

5f5d917a 24-Jan-2007 Ryan Leavengood <leavengood@gmail.com>

Your wish is my command: now only removable read-only volumes have their
desktops integrated in Tracker.

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

355260f7 23-Jan-2007 DarkWyrm <darkwyrm@gmail.com>

Removed non-boot desktop integration checkbox.

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

61b44b93 21-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Fixed a bug introduced by DarkWyrm: he obviously missed that there are two locations
where you have to set the default value of a setting.

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

2395270d 21-Jan-2007 DarkWyrm <darkwyrm@gmail.com>

Label tweaks as agreed upon on list
"List folders first" and "Show Full Path" default to on now

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

83dd342c 21-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

* Implemented the AutoMounter for Haiku - it's barely tested at this point, but
at least mounting/unmounting seems to work. This fixes bug #191.
* Also changed the way how Tracker automatically mounts/unmounts volumes: it now
only differentiates between removable and fixed storage, not between initial
scan at boot, and periodical scans during runtime. Also removed all HFS stuff.
* Got rid of _INCLUDES_CLASS_DEVICE_MAP for the BeOS build.

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

eaac0739 19-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

* Fixed build under R5/Dano that was broken since Stippi added vector icon support.
* Separated Haiku's icon stuff a bit better, so that Tracker can still be built
without having Haiku headers around.
* Minor cleanup.

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

64866164 19-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

* To get away with that empty mount menu, it now at least shows all mounted and
mountable volumes - there are no icons yet, and it will also not work at all,
that is, you cannot mount/unmount any volumes yet.
* Got rid of _INCLUDES_CLASS_DEVICE_MAP in MountMenu.cpp.

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

a803529b 19-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

As Marcus noticed, some icons were gone after my last change; in fact no icons
were shown for all files without an own icon, and without one from its MIME type.

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

8cddf191 16-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Tracker now prefers an icon coming directly from the MIME type over one specified
by the application - as FileTypes already did.

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

1130b709 04-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Tracker now uses the name of the symlink for add-ons, instead of resolving it first.
This fixes bug #602.

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

55efc4c3 18-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

* R5 seems to reuse the Workspaces icon for the Desktop, so Haiku does too.

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

15e5a8b1 07-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

some more forgotten places for B_VECTOR_ICON_TYPE

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

e0c6ab60 07-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

* fixed shadow of folder icon
* made the paper sheet just a bit lighter at the bottom
* created font folder icon

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

bae87c91 06-Nov-2006 Axel Dörfler <axeld@pinc-software.de>

Added a new type for the vector icon format 'VICN' or B_VECTOR_ICON_TYPE.
It's hopefully now used everywhere instead of B_RAW_TYPE where appropriate.

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

d632afd3 03-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

* new vector icons I created in the past months

for applications, I kept the R5 icon around and the
vector icon is only used when compiling for Haiku,
for the mimetypes, I removed the R5 icon, as I don't
think they are used outside the Haiku build

naturally, I'm open for comments

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

26a0f125 02-Nov-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed a wrong error message in case an add-on couldn't be loaded. Reported by BeOS Mr. X.

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

52caf663 18-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed compilation under R5 and Dano.

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

f974492c 04-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Imported ViewState.cpp|h 1.2 from OpenTracker CVS.

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

1f9f5e4e 04-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed warning.

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

784166f2 03-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Imported ContainerWindow.cpp 1.39 from OpenTracker repository.

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

979fca9d 28-Sep-2006 Axel Dörfler <axeld@pinc-software.de>

Minor cleanup.

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

8cebe025 28-Sep-2006 Axel Dörfler <axeld@pinc-software.de>

Tracker now also sets the preferred application when installing the Person
MIME type to the People app.

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

e2ba090e 25-Sep-2006 Jérôme Duval <korli@users.berlios.de>

fixed some gcc4 warnings

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

e20af02a 14-Sep-2006 Stephan Aßmus <superstippi@gmx.de>

* now draws disabled icons fine when they are B_RGBA32

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

358b3c8e 14-Sep-2006 Stephan Aßmus <superstippi@gmx.de>

* don't mess so much with the drawing and blending mode when
drawing icons, most importantly, don't switch from compositing
to pixel alpha, this fixes the drag bitmap generation, now
it looks beautiful

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

ebe10933 14-Sep-2006 Stephan Aßmus <superstippi@gmx.de>

* when the group of dragged icons was a bit larger, the
bitmap was not completely transparent, but had a faint
shadow, I removed this, though it seemed to be on purpose,
I have no idea why... it looked like a bug

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

aac40c99 11-Sep-2006 Stephan Aßmus <superstippi@gmx.de>

* Tracker makes sure certain mimetypes exist and copies icons from
its resources -> now also the vector icons (thanks Jérôme for
the hint)

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

59deaf10 11-Sep-2006 Stephan Aßmus <superstippi@gmx.de>

various changes to improve integration of vector icons
* Deskbar uses 32 bit icons now
* vector icons are now correctly converted to B_CMAP8 bitmaps
if no B_CMAP8 icon is available
* small fixes in Tracker (window mode menu)

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

7fb6186f 29-Aug-2006 Stephan Aßmus <superstippi@gmx.de>

* integration of vector icons with the registrar and the mime data base
* additional versions of SetIcon[ForType] and GetIcon[ForType] in BMimeType
and BAppFileInfo, which handle flat vector icon data
* changes in Tracker to support scalable icons (currently broken for
non-vector icons and needs cleanup) and drawing icons correctly with alpha
channel (large parts of this work done by Michael Lotz)

If someone feels like looking over the changes, that would be much
appreciated! :-)

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

9ecf9d1c 26-Aug-2006 Ingo Weinhold <ingo_weinhold@gmx.de>

Merge from layout management branch.

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

4b66b0e0 20-Aug-2006 Axel Dörfler <axeld@pinc-software.de>

Imported ContainerWindow.cpp 1.38. This fixes bug #298.

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

4f459891 11-Aug-2006 Axel Dörfler <axeld@pinc-software.de>

* Imported files from OT-current:
- InfoWindow.cpp 1.17, .h 1.5
- TrackerSettingsWindow.cpp 1.9
- ContainerWindow.cpp 1.37, .h 1.7
- DialogPane.cpp 1.4
* This also fixes bug #718.

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

2009d9e5 28-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Imported AutoMounter.cpp 1.9 - debug build fix by Jerome Duval.

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

29c171b1 27-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

reverted my "build fix" since it actually breaks the build on R5
... the problem is local to my machine... sorry about that!

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

d48519fa 27-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Can now be built for BeOS targets as well.

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

75acb8cb 27-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

synced with rev 1.12 from OT rep, fixed build on R5

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

f8262c2b 27-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

sync to rev 1.62 from OT rep: use the event time instead of the current system time for appending or starting a new match when typing ahead to select a pose

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

aded7d13 26-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Imported InfoWindow.cpp 1.16, and .h 1.4 from OpenTracker current.
This fixes bug #694.

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

190650c3 25-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Imported SettingsViews.cpp 1.11, .h 1.9, TrackerSettingsWindow.cpp 1.8, .h 1.3,
and SelectionWindow.cpp 1.3.
This fixes bug #656.

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

9195c270 13-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Imported ContainerWindow.cpp 1.33 from OpenTracker CVS. This removes
an extra menu separator in the window context menu.

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

85376415 13-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Imported InfoWindow.cpp 1.15 from OpenTracker CVS.
This fixes bug #649.

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

269d3bd5 11-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Imported PoseView.cpp 1.61, OpenWithWindow.cpp 1.8, and OpenWithWindow.h 1.3
from OpenTracker CVS.
This fixes bug #354.

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

fe49a8a3 11-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Imported DeskWindow.cpp 1.8 and ContainerWindow.cpp 1.32 from OpenTracker CVS.
This fixes bug #298.

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

7befa79a 01-Jun-2006 Axel Dörfler <axeld@pinc-software.de>

Imported SettingsViews.cpp 1.10, FilePanelPriv.cpp 1.14, TrackerSettingsWindow.cpp 1.7,
SettingsViews.h 1.8, FSClipboard.cpp 1.12, PoseView.cpp 1.60,
TrackerSettingsWindow.h 1.2, TrackerSettings.cpp 1.11 from the OpenTracker repository.

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

693f381e 31-May-2006 Stephan Aßmus <superstippi@gmx.de>

Fixed a weird Tracker bug, fOkToMapIcons was initialized to "true", but
I have no idea what sense this makes. When switching from list mode to
icon mode, some poses had their locations set to location "infinity",
because MapToNewIconMode did a division by zero. This resulted in feeding
the scrollbars a totally insane range.

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

5dadd750 31-May-2006 Stephan Aßmus <superstippi@gmx.de>

very small cleanup

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

3b5cc3b1 31-May-2006 Axel Dörfler <axeld@pinc-software.de>

MIME types are case insensitive, so Tracker should not be so picky.
The app queries still are case sensitive, though (shouldn't hurt, as the MIME
type database preserves the case).

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

66d3076d 31-May-2006 Axel Dörfler <axeld@pinc-software.de>

Cleanup, no functional change.

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

c7b650c8 26-May-2006 Stephan Aßmus <superstippi@gmx.de>

* because of my last change, the background was filled even though the app_server already did it

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

12104c2e 26-May-2006 Stephan Aßmus <superstippi@gmx.de>

synced with OT repository - I guess you knew what was comming,
Tracker saves and restores the window decorator settings on

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

56cedb9e 26-May-2006 Stephan Aßmus <superstippi@gmx.de>

sync to OT repository, simplify drawing code and remove dark edge at first attr column

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

b0bc48fb 19-May-2006 Axel Dörfler <axeld@pinc-software.de>

Some more GCC 4 and PPC fixes.
* Mesa doesn't compile yet, as some PPC specific stuff seems to be
missing, Philippe?
* Cortex and some other stuff has been marked x86-only, although
it's more of a "GCC 2.95.3"-only.
* I'm not sure if it's a bug in GCC 4, or if that's what the C
standard demands, but sizeof(some_type::some_field) is not
valid anymore :-/

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

2fdf723b 21-Apr-2006 Stephan Aßmus <superstippi@gmx.de>

* replaced BeOS logos in boot disk and BeOS folder icon with
a (hopefully) cute rocket. It's not quite as readible as
the other overlays, so I might work on it some more. Also
note that it is a manned rocket, as per the window, so I
hope it cannot be mistaken for a missile. :-)
BTW - talk about self contained development, the icon was
done on Haiku!

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

c4d51ab4 16-Apr-2006 Axel Dörfler <axeld@pinc-software.de>

* FSEmptyTrash() no longer checks against a specific error code from
* Minor cleanup.

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

995303fa 08-Apr-2006 Stephan Aßmus <superstippi@gmx.de>

synced with rev 1.11 from OpenTracker cvs, ignore read only volumes when building the navigation menu for the unified Trash folder

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

cd94fdda 28-Mar-2006 Axel Dörfler <axeld@pinc-software.de>

* Tracker wrote icons with the wrong type at several places.
* Also replaced all B_COLOR_8_BIT with the B_CMAP8 constant.

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

d5a91370 26-Mar-2006 Axel Dörfler <axeld@pinc-software.de>

No writes the correct attribute type for the Trash icon - this caused Tracker
to have the plain directory icon for the trash. You might need to delete the
trash icons in order to see the correct ones (as our BFS is more restrictive
with respect to the attribute type).

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

b608af89 08-Mar-2006 Axel Dörfler <axeld@pinc-software.de>

Imported AutomountSettings.* 1.2, StatusWindow.cpp 1.7, and TrackerIcons.rdef 1.5 from
OpenTracker current. This fixes bug #203.

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

0cf86704 06-Mar-2006 Axel Dörfler <axeld@pinc-software.de>

Imported InfoWindow.cpp 1.14 from the OT repository: the "Disks" info window no
longer calculates the size by iterating over all files - it now just adds up the
disk capacities.
This fixes the userland part of bug #210 - the kernel part has already been
fixed earlier.

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

f0c62dff 19-Feb-2006 Jérôme Duval <korli@users.berlios.de>

added multiple-symbol-spaces for avoiding a downcast bug with CLAmp

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

77187226 16-Feb-2006 Axel Dörfler <axeld@pinc-software.de>

Was broken when the mounting feature is disabled. This fixes bug #132.

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

aaa1e815 15-Feb-2006 Axel Dörfler <axeld@pinc-software.de>

* A separator item obviously has a "" label instead of NULL - this fixes bug #138.
* Made Tracker safe against a NULL item label, anyway.

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

81202ff5 11-Jan-2006 Axel Dörfler <axeld@pinc-software.de>

Imported DialogPane.cpp 1.3 from the OT repository: shouldn't crash anymore
under Haiku.

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

f15ba337 08-Jan-2006 Stephan Aßmus <superstippi@gmx.de>

synced with version 1.59 of the OpenTracker rep

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

e2491d6b 08-Jan-2006 Jérôme Duval <korli@users.berlios.de>

reverted to previous version

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

ebc8a403 04-Jan-2006 Jérôme Duval <korli@users.berlios.de>

Installer makes use of FSCopyFolder in libtracker.so

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

4faa23cc 01-Jan-2006 Axel Dörfler <axeld@pinc-software.de>

Minor fix, closes bug #81.

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

a615ec8f 30-Dec-2005 Axel Dörfler <axeld@pinc-software.de>

Imported OpenTracker-current.

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

8126a5e7 11-Dec-2005 Axel Dörfler <axeld@pinc-software.de>

Fixed debug build.

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

e68b7626 11-Dec-2005 Axel Dörfler <axeld@pinc-software.de>

More GCC 4 fixes by Ingo Weinhold - appeared because of the recent removal
of new/typeinfo/exception from our headers.
Rearranged the IconCache node_ref hash computation