100 Commits
Author SHA1 Message Date
Alexandre Deckner 5261544b0d Applying patch for ticket #6134.
Fixes BCursor tests. Thanks Karvjorm! And sorry for the delay.
I also re-enabled the tests in the Jamfile (cf. r41788)




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 15:21:05 +00:00
Alexandre Deckner def39abd74 * 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
2011-07-17 17:28:29 +00:00
Alexandre Deckner df1c9e984e * Slight renamings, no functional changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42442 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-17 10:31:50 +00:00
Alexandre Deckner 29769e0452 * 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
2011-07-17 09:51:22 +00:00
Alexandre Deckner 94af9087b0 * Fix #6548. Don't initially Hide() if already hidden, otherwise the showlevel
would never get a chance be visible again.

When instanciated from an archive, a BDragger restores its
BView::fShowLevel and thus can already be hidden if archived while hidden.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-13 00:12:43 +00:00
Alexandre Deckner 6009abf2bd * 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
2011-06-05 13:42:27 +00:00
Alexandre Deckner f2068166ad * 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
2011-06-05 01:55:52 +00:00
Alexandre Deckner 596bb6891a * 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
2011-06-03 21:12:14 +00:00
Alexandre Deckner d797e0629c * 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
2011-05-29 01:05:18 +00:00
Alexandre Deckner d769c15ad5 * 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
2010-11-18 15:05:32 +00:00
Alexandre Deckner 9377675061 * 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
2010-09-18 00:49:33 +00:00
Alexandre Deckner 7b80b5d518 * 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
2010-09-17 16:28:10 +00:00
Alexandre Deckner ad76f4439f * 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
2010-09-16 16:36:56 +00:00
Alexandre Deckner 894cf4f363 * 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
2010-08-08 23:46:59 +00:00
Alexandre Deckner 43f24e051b * 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.
  Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-08 14:37:06 +00:00
Alexandre Deckner 1f34e928ac * 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
2010-07-14 15:32:00 +00:00
Alexandre Deckner a111096469 * Minor style fixes, spaces vs tabs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-13 13:33:49 +00:00
Alexandre Deckner 148f33f206 * 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
2010-07-13 13:19:51 +00:00
Alexandre Deckner 4ed28a571a * 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
2010-07-13 12:39:53 +00:00
Alexandre Deckner ecdb5ec668 * 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.
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-03 00:13:59 +00:00
Alexandre Deckner 08b3ae9bb2 * 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:
+alphabranch

   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
2010-05-02 23:32:54 +00:00
Alexandre Deckner ab5fb573e5 * 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
2010-04-28 13:37:27 +00:00
Alexandre Deckner cfbd755443 * When launching an app by signature, check against the correct device trash when checking if an executable is in the trash.
When using find_directory(B_TRASH_DIRECTORY... to check if an entry is in the trash one should always pass the entry's volume otherwise you might be checking in the wrong trash.
Might happen elsewhere in the tree, will have an opengrok look.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-12 17:09:36 +00:00
Alexandre Deckner cd4e946773 * Add a serial_input command to the kernel debugger, allows using serial input even when on-screen kdebug is enabled. Usefull for remote debugging. Please review/adjust.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-28 00:50:01 +00:00
Alexandre Deckner 2882dba2a1 * remove left-overs of deprecated ClassInfo.h includes (cf. OpenGrok) except in SupportKit.h for backward source compatiblity (although it shouldn't really matter).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-24 15:10:37 +00:00
Alexandre Deckner e7f640f25f * more cleanup in Sounds preflet, replaced occurences of the deprecated cast_as macro, added missing checks.
* took the opportunity to do the same for all occurences as reported by OpenGrok 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-24 14:10:17 +00:00
Alexandre Deckner bf7db4bb7e * style cleanup, no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-24 13:34:36 +00:00
Alexandre Deckner 46cac7f7dd * No need to show an error alert when the preflet is already running, it behaves
as expected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-19 14:39:48 +00:00
Alexandre Deckner accec9a7ae * Style fixes. Encountered ambiguous cases, please see my following questions
in the commit ml.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-06 17:32:07 +00:00
Alexandre Deckner f7ace4e827 * Style fixes (pointer style)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-06 16:12:53 +00:00
Alexandre Deckner 2ec4a3b13f * Use os.path.walk to visit directories
* Use \w instead of [a-zA-Z0-9] in some regex's
* Add switch to the "space after control statement" rule
* Added pointer/reference style rule


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-06 15:55:44 +00:00
Alexandre Deckner 3904801c31 * Fix many style issues. Quaternion and Vector3 still show some of their foreign
origin. Yes.. shame on me, i had even imported their non unix line endings :)
  Will make them BCitizens soon.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 09:37:45 +00:00
Alexandre Deckner ae762f316d * Add multi file/directory support
* Refined some rules to not include the new-line
* Added 'windows line ending' rule
* Enhanced the html output, not an expert there though



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 03:23:50 +00:00
Alexandre Deckner 3b02662f2d * Use BReferenceable instead of Referenceable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 16:50:01 +00:00
Alexandre Deckner ef2927b12c * Use <span> for the highlights
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-01 18:13:29 +00:00
Alexandre Deckner 214f735e34 * Style checker for the Haiku C++ coding guidelines
* Added an html report output with highlights and tooltips
* Still a few false positives and rules missing. Some regex could be reworked
* TODO: ignore some rules when in comments, multifile support



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33856 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-31 22:20:25 +00:00
Alexandre Deckner 36f51b0861 * Applied patch jalopeura, fixing mail2mbox and mbox2mail signatures in rdef. Closing #4856. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33772 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-26 13:57:36 +00:00
Alexandre Deckner e2ee5e5706 * 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
2009-10-26 10:21:33 +00:00
Alexandre Deckner c3ce629473 * 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
2009-10-23 08:07:56 +00:00
Alexandre Deckner 047eef826e * Sorry, that was supposed to be multiple launch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33475 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-07 00:24:19 +00:00
Alexandre Deckner d12a4384f1 * Fixed closing via deskbar's close all. The problem was that i forgot to
define the app_flags in the rdef, case that isn't well handled apparently
when creating a BMessenger targeting the app.
Thanks to Michael and Rene for helping! Fixes #4712

* Removed unneeded and faulty App::MessageReceived and a strange (probably
 copy pasted then forgotten) MainWindow::QuitRequested.
* Minor changes. Made App destructor virtual, moved init into ReadyToRun,
 fixed a few style violations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-07 00:12:25 +00:00
Alexandre Deckner ea1a27d61a * Reworked my fix for #3617. We now check again for a double click if the pose
was not freshly selected.
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32660 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-24 19:15:12 +00:00
Alexandre Deckner 569634e95b * Style fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-22 16:46:25 +00:00
Alexandre Deckner abd3d52b5d * Forgot to save that file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-22 13:46:01 +00:00
Alexandre Deckner 8e43b9e35e * A mouse shake detecting BMessageFilter that's easily integrated in any app.
* A test app for it. I added a src/test/kits/shared folder as i found it was the
 most logical place for it. Shake it up.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-22 13:43:21 +00:00
Alexandre Deckner 725ad924ff * 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
 BRect::Intersect.  



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-20 10:59:53 +00:00
Alexandre Deckner f2b42dbb1b * 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
2009-08-20 02:19:08 +00:00
Alexandre Deckner 50f1b82d5b * 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
2009-08-20 01:19:41 +00:00
Alexandre Deckner 105f1c632e * 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
2009-08-19 15:29:59 +00:00
Alexandre Deckner d111ca1a64 * Remove bad pixel on the hand
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-19 14:18:32 +00:00
Alexandre Deckner bdee02b5b0 * 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
2009-08-19 14:16:45 +00:00
Alexandre Deckner 8a6c0c3a1d * Some cursor overlays for tracker drag'n'drop operations
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32514 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-19 13:44:42 +00:00
Alexandre Deckner c5b7a0fe6a * 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
2009-08-19 13:19:31 +00:00
Alexandre Deckner 3074019e96 * 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
2009-08-19 12:51:50 +00:00
Alexandre Deckner b8508f581e * Icon for Haiku3d
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 14:51:17 +00:00
Alexandre Deckner 9d841f24b3 * New icon for MediaConverter.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 13:35:46 +00:00
Alexandre Deckner 34be4b60ec * Add Speaker icons, the idea is to refresh the deskbar replicant and media
preflet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 12:05:18 +00:00
Alexandre Deckner 84e0703c87 * Build fix
* More style fixes
* Automatic whitespace cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-12 12:21:13 +00:00
Alexandre Deckner 19e9930c2a * More style fixes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-12 11:40:42 +00:00
Alexandre Deckner 3cbc1540cc * Style update. Don't know what to do about the licence headers though
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-12 11:25:44 +00:00
Alexandre Deckner 220c754efe * Rename deskbarview.cpp/h to DeskbarView.cpp/h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-12 10:53:00 +00:00
Alexandre Deckner 636f089026 * Rewrote icon drawing for the deskbar replicant, now use our shiny vector
icons. Haven't looked into R5 backward compat.
* Minor style fixes, more in the next commit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-12 10:47:18 +00:00
Alexandre Deckner 6d893152ea * Added Haiku3d demo to the image. Removed GLDirectMode demo as discussed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-07 10:49:09 +00:00
Alexandre Deckner 3d65021d98 * Style fixes
* Moved the wait_for_thread in _StopRenderThread()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-03 10:55:13 +00:00
Alexandre Deckner 42158ac76f * Typo :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 16:15:41 +00:00
Alexandre Deckner bee3c7a915 * New demo showing an OpenGL animated Haiku logo. Could be a good base for
future 3d demos i have in mind and the missing ones (ie: 3dmov and 3dmix).
 Makes for a nice Haiku sample code too, without legacy.
 Not in the image yet, waiting for the green light. Enjoy!

 ps: Will commit the Blender object files and export script later.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32027 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-31 15:38:12 +00:00
Alexandre Deckner 0ed66b2314 * added the inverse [-e] option that waits until all such named threads ended.
I use this to cleanly switch between my dev Tracker and the trunk one. I need
  to wait until it has really quit before overwriting and running another
  version. 



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 16:16:37 +00:00
Alexandre Deckner f207162e07 * 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
2009-07-03 00:11:19 +00:00
Alexandre Deckner 4465d9277f * Fix broken copy of a BString into a fixed size char[]. Input/output
endpoints names would be broken and "Save Nodes" would create a broken file.
 Open/Save nodes now works (again?) and endpoint names display correctly in info
 windows/views.
 
 That detail is fixed but it's the design of Cortex that's broken here really :)
 To be continued... some day


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-01 18:52:27 +00:00
Alexandre Deckner eee6f40b8b * Archive/Unarchive refresh interval
* Minor style fix


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29976 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-06 20:30:21 +00:00
Alexandre Deckner c51d0337a1 * Rewrote BDragger's mouse tracking to be asynchronous using a message filter. Placed the filter in
kits/shared since i plan to use it in other places like Tracker. Animated replicants like 
ActivityMonitor wont stall anymore when initiating the drag. (On the desktop, Tracker's mouse 
tracking still busy loops sometimes, that's next on my list). 

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


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-06 19:15:00 +00:00
Alexandre Deckner 9cfb11a5cf * Make BDragger respect the doc and only archive/unarchive the popup menu when it's a
custom provided one. Incidentally makes #1775 (that i'll reopen in a moment, see r29947) a 
lot less likely to happen for most users since it can now only happen with those 
customized popups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 19:59:53 +00:00
Alexandre Deckner 642cc1315d * Fixes a small regression introduced in r29728, don't return B_ERROR if we couldn't lock
the popup's window, in this case the window just closed, so we go on with archiving then.
There's still a (rarely occuring) problem with the unlocking though, probably due to some 
BMenu funkyness, will investigate, left a TODO.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-05 18:54:15 +00:00
Alexandre Deckner 561b5d977b * 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
2009-04-05 15:29:56 +00:00
Alexandre Deckner df8b89cbf7 * Return B_ERROR if the window couldn't be locked, thanks stippi
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-26 13:33:36 +00:00
Alexandre Deckner 82e6d2ffcd * Lock the popup menu window when archiving, fixes #1775
* Made the drag detection less sensitive as most simple clicks would initiate an unwanted drag.
* Don't show the dragger's popup from its original parent window (not a shelf) for all buttons, as in R5.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-26 11:07:45 +00:00
Alexandre Deckner 3fd2ea61ce * Update ref count later in _AddReplicant and add one check to be sure we checked all possible errors.
* Moved new statics to the cpp file as it seems we don't usually expose such internals in our public headers


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-08 16:08:03 +00:00
Alexandre Deckner 37a89eb4e9 * Use ref counting to determine when to unload a replicants add_on image, fixes #2712.
* Don't delete fStream if we don't own it, would crash ShelfTest on quit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29439 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-08 14:18:06 +00:00
Alexandre Deckner f11e13ffa2 * Fix build of ShelfTest
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29385 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-03 12:36:41 +00:00
Alexandre Deckner 634596058d * 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
2009-02-24 21:41:32 +00:00
Alexandre Deckner ea83c971c6 * 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
2009-02-24 18:55:23 +00:00
Alexandre Deckner 4712bc807c * 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
2009-02-16 10:39:26 +00:00
Alexandre Deckner a1056d5fa3 * Key font size now also takes the window width into account.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 12:58:09 +00:00
Alexandre Deckner 4f2fd49bdc * Added a "launcher" for Tracker preferences, which are now accessible from the preferences menu/folder. See #2365
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-29 03:35:20 +00:00
Alexandre Deckner e5a30119a0 * 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
2009-01-12 19:42:41 +00:00
Alexandre Deckner 51505cb08a * 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
2009-01-11 03:08:56 +00:00
Alexandre Deckner fc7b01b188 * fix coding style
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28408 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-31 18:01:55 +00:00
Alexandre Deckner e3bcc1dc09 * Combine the two calls to ScrollBy into one.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-31 15:59:00 +00:00
Alexandre Deckner e984242155 * 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
2008-10-31 15:07:06 +00:00
Alexandre Deckner f05f4fcb53 * 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
2008-10-26 00:09:47 +00:00
Alexandre Deckner ccbb95ba82 * Enable keyboard navigation on the long description BTextView.
* Use a derived text view that filters the tab key to avoid interupting tab 
navigation while in focus/editing. Closes #2321


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-25 23:09:06 +00:00
Alexandre Deckner 97893f16af * Removed the enclosing box to gain some space and enlarged the listviews. Should be
rethought and reimplemented with the layout system and my keymap management patch, but 
the intent was to make it more usable in the mean time.
* Don't change the focus on keydown so that we can naviguate the list with the 
keyboard.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-24 13:17:07 +00:00
Alexandre Deckner 7a249e96f5 Few fixes to the keymap preflet to make it good enough for the alpha 1. Lots of
things could be rewritten in a cleaner way but i'd rather finish my keymap 
management patch as i rewrote the preflet for it anyway. For example the '(Current)' 
item shouldn't be needed anymore but is still there in case the keymap:name attribute 
read fails or if the original keymap file doesn't exist anymore (for example, applying 
a user keymap, quiting the preflet, deleting the keymap file, and reloading the 
preflet)  

* Revert/apply data wasn't correctly loaded when the first load was on a system 
keymap. This would allow revert/apply right after starting the preflet. That was the 
cause of #2659.
* fCurrentMapName wasn't updated after a Revert or Apply
* Select the active keymap in the lists after reverting.

Quick cosmetical fix follows.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-24 11:50:45 +00:00
Alexandre Deckner 6dee6b8c17 * 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
2008-10-22 09:02:17 +00:00
Alexandre Deckner 369ad66d92 * 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
2008-10-21 23:00:13 +00:00
Alexandre Deckner 842cd2b8cc * 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
2008-10-18 16:32:10 +00:00
Alexandre Deckner 3704f31d73 * 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
2008-10-17 09:52:09 +00:00
Alexandre Deckner e85ca56c7d * Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-17 08:57:24 +00:00
Alexandre Deckner 3d7584da5c * 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 
todos.
  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
2008-10-17 01:41:43 +00:00
Alexandre Deckner e522ba55ba * 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
2008-10-16 01:41:45 +00:00