History log of /haiku/src/kits/tracker/DeskWindow.cpp
Revision Date Author Comments
# 8446d3b9 13-Dec-2023 John Scipione <jscipione@gmail.com>

Tracker: Miscellaneous cleanup

Move DraggableContainerIcon out of ContainerWindow.cpp into new.
Move CompareLabels to Utilities.cpp

Rename fContainerWindowFlags to fOpenFlags. These are the flags set
by OpenContainerWindow to save and restore state and should not be
confused with the windowFlags that are passed to BWindow. There are
two sets of flags, which I'm calling openFlags and windowFlags.

Rename fUseLayouts to fUsesLayout and useLayouts to useLayout. Put
all the constructor created flags at the top.

"window" variable name is ok, we don't need to say "containerWindow".

Rename Addons to AddOns everywhere with a capital O.
Rename BuildAddOnMenu() to BuildAddOnsMenu() with an s.
Rename AttributeMenu...() methods to AttributesMenu...() with an s.
Rename SetUp...() methods to Setup...() with a lowercase u.

Replace a few instances of fPoseView with PoseView() inline in
BContainerWindow and BDeskWindow.

A few more minor fixes in BDeskWindow.

Replace BPoint(0, 0) with B_ORIGIN in Pose.h

Change-Id: If30803753b63b19e35f14c0f0c4e08111d0d0980
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7240
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# 3961af9f 29-Jul-2023 Humdinger <humdingerb@gmail.com>

Use UTF8 multiplication sign "×" instead of "x"

It was suggested for translations in Pootle, and I agree it looks
subtly nicer: a bit smaller and vertically centered.

Also made all strings that include the "x" translatable, in case
there are different local usages.

For icon sizes in Tracker, move menu creation into a loop with an
kIconSizes array holding the pixel dimensions.

Change-Id: I805279d7186d90a13a40b4d4495670cdfac18913
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6765
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# 6d791f20 08-Dec-2022 CodeforEvolution <secundaja@gmail.com>

Tracker: Fix selected text drawing with light desktop colors, and delayed update for inactive text colors on desktop

This fixes two separate issues in relation to Tracker:
1) If the desktop base color is set to a lighter color (such that black text is used for desktop items),
clicking on another window and then dragging that window over the item leads
to a black selection and text color, leaving the text unreadable. (Fix in Pose.cpp)

2) After fixing the first problem, I noticed that Tracker still didn't immediately update the color of inactive,
though still selected desktop items until another window was dragged over them. (Fix in DeskWindow.cpp)

Change-Id: I43653e23c69a7666ed8a53751b0f65622c8dc596
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5882
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: nephele <nep@packageloss.eu>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 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>


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


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


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


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


# 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>


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

Tracker: style, reorder includes in DeskWindow.cpp


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


# 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


# 9437e677 09-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes


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


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


# 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


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


# 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


# 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


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


# 546208a5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* 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.


# 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.
* Add __HAIKU_ABI_NAME and B_HAIKU_ABI_NAME macros.
* src/apps/deskbar: BeMenu.* -> DeskbarMenu.*,
DeskBarUtils.* -> DeskbarUtils.*
* Change deskbar menu settings directory from ~/config/be to
~/config/settings/deskbar.
* Other smaller cleanups, changes, and fixes.


# 3dfd9cb9 16-Jun-2011 Oliver Tappe <zooey@hirschkaefer.de>

Flat commit of all changes from package-management branch in svn


# 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


# 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


# 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


# 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


# 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


# 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


# 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


# 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


# 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


# 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


# 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


# 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
better!


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


# 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


# 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


# 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


# 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


# 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


# 02be5353 22-May-2005 Axel Dörfler <axeld@pinc-software.de>

Added libtracker.so to the repository and the build.


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


# 4bb1fc1791cb519b57901187da738e926cdfee18 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.


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


# 27c555cb7bae26866cdb31f45dd38cea843c3b7d 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>


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

Tracker: style, reorder includes in DeskWindow.cpp


# ab97fc0564b95efa4abc73a754dcc31b2d515b1f 30-Jun-2014 John Scipione <jscipione@gmail.com>

Replace FindFirst() == 0 with StartsWith()

Thanks PulkoMandy.


# 784d5bea5c98f64053fcde7c04035bcaff4d395a 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.


# 991dadd6324f7b7a68e94743a39ebae789823228 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.


# 0546bdd5e5c5fdc456b1ef41cb46ebea77f3707d 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.


# 1f17f750dbac143855f0e7883092447c1755c187 14-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Use BPathFinder to find add-ons


# 6cf062b93df02142ea8abd5b2f33ade968e88bb3 14-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes to DeskWindow


# 9437e677ba3d5f813929944ae2b09fc37feb8d2d 09-Jun-2014 John Scipione <jscipione@gmail.com>

Tracker: Style fixes


# 4b7e219688450694efc9d1890f83f816758c16d3 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.


# 4ba4d40bb2b3b689b8faf3746952756dcc268cdc 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


# 3fe416173c99ff312d72b3f3743df1489d3122e6 13-Jul-2013 Philippe Saint-Pierre <stpere@gmail.com>

Tracker add-on shortcuts, move resource to BEOS: namespace


# 29cfb630416a52359159f80c7d353fbe54ddf218 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)


# d058a4aed272a9fe79ef9e8443fad3bb5352e433 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)


# 9c647375866fcd78e295e4ee4054f7fa9f31642d 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


# ff09527e4f6f674c4df23e39b365b84e87bfac43 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


# adf8818ec004e8a20614523f3e893303ea318642 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.


# e51854a127450ed5f1dc33ec350a00f1deaff355 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.


# ea001e585a588e40404945a1201821da893d2e09 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


# b05aa8b5b16e5b4f420a35c37805c6387df98737 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


# 50d739dee5fe3c635a052dfd435bcf6557f11639 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).


# 546208a53940a26c6379c48a7854ade1a8250fc5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* 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.


# 323b65468e5836bb27a5e373b14027d902349437 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.
* Add __HAIKU_ABI_NAME and B_HAIKU_ABI_NAME macros.
* src/apps/deskbar: BeMenu.* -> DeskbarMenu.*,
DeskBarUtils.* -> DeskbarUtils.*
* Change deskbar menu settings directory from ~/config/be to
~/config/settings/deskbar.
* Other smaller cleanups, changes, and fixes.


# 3dfd9cb95ce45f59160d50975210bc55e3fc0709 16-Jun-2011 Oliver Tappe <zooey@hirschkaefer.de>

Flat commit of all changes from package-management branch in svn


# 74c7ad20f4ede5bc7fb21cde26a3ee44b599e232 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


# 7b80b5d5181053872dd475b1c559bc010914a31c 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


# 886c627650b0f2522e8a64dd96371cc45a867330 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


# 4ed28a571a7d5f7f13b5b4636fabfeabdfddd40b 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


# 01dffd8edd94699ac1e6f2cc4322555f2171da14 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


# 82d8aaf85a8c1ad19f69637468102ca08040facf 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


# 32ac103336b827fd7a532587d858692c0aa7ee57 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


# 96da4b41b0baadab6c3f9b2fcdfe6573df564d4c 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


# e70b6d957a03fbd24b6c47ad2668d23c11806912 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


# 2cb8652f55a63fc9e3bfb8473d19f8fbcb877549 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


# 404bf9d1ab2d0eca7f04a1e1ba904f011bb5c223 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


# 618c7ffa857e2be4a96daa7645e423335028fad8 15-Oct-2008 Alexandre Deckner <alex@zappotek.com>

* There was indeed a problem with my previous attempt at fixing #353. This should be much
better!


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


# e400b7d395f0e0b6070b673dcb3a8167e64a46a0 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


# 5a32be6b84076abeffcb6905caf8ea685e18dd6a 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


# 59deaf10bcbd8e27fd028f1757e62b27e09e385f 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


# fe49a8a3797aef93c041d2695cf859d3632f9b0c 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


# 5dadd750c07b2bed756cafaa1a54a7d2bf16a588 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


# a615ec8f86406c14607c656cf90492bc58bd73d0 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


# 02be5353fd41ea40007a382e13f007eaf6b5a3a0 22-May-2005 Axel Dörfler <axeld@pinc-software.de>

Added libtracker.so to the repository and the build.


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