Commit Graph

5481 Commits

Author SHA1 Message Date
Alex Wilson
82ab316723 Add default spacing for Layouts (#5614)
* introduce B_USE_DEFAULT_SPACING, which works somewhat like B_SIZE_UNSET and B_ALIGN_HORIZONTAL_UNSET
* introduce static float BControlLook::ComposeItemSpacing(float spacing), which checks uses be_control_look->DefaultItemSpacing().
* modify layouts to use BControlLook::ComposeItemSpacing() in SetInsets and SetSpacing methods.
* default insets are still 0, 0, 0, 0, but can be set to default spacing by passing B_USE_DEFAULT_SPACING
* I've found two regressions, patches incoming, please report others on #5614.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38512 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-02 22:58:24 +00:00
Stephan Aßmus
575fd7c2bf Of course the same fix needs to be applied
to SeekToTime(). The extractor may have
modified the time, don't let the decoder
overwrite the actually seeked time. I am thinking
the API should be called SeekedTo() or Seeked(),
and would be purely informative for decoders,
without even a return value.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38499 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 17:29:32 +00:00
Stephan Aßmus
9297e303c5 Do not override the seek frame which the extractor may
have adjusted. (The API is somewhat silly, since Decoders
can't really do anything with the seek frame, it can only
be told to them. But current decoders will assign the seeked
frame from the wanted frame, which would override the seeked
frame from the extractor... the API should be fixed.)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-01 15:54:06 +00:00
Oliver Tappe
b7f609650b * 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
2010-08-30 19:58:19 +00:00
Oliver Tappe
2bd0cd6cb8 * improved const-correctness of BLocale
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-30 18:57:17 +00:00
Oliver Tappe
6e30c4b8af * rename BTimeZone::Accessor to BTimeZone::Private to match the other
private accessor classes
* adjust style in BTimeZone::Private implementation to match other classes
  of this kind


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38449 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-30 14:30:22 +00:00
Clemens Zeidler
588b796bcb Add the possibility to load all add-ons in a directory immediately.
Rename _HandlePulse to _HandlePendingEntries.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-29 22:05:33 +00:00
Oliver Tappe
a9faf94392 * reintroduced be_locale as global information point for the current locale
values
* added locking to BLocale (needed since the data of the global object may
  change any time)
* BLocale no longer passes out pointers to internal objects, it fill objects
  passed in by the client instead (just like be_locale_roster does)
* dropped default language as member from RosterData, it is no part of the
  default locale
* fleshed out implementation of TimeUnitFormat and DurationFormat, both
  of which can now be given a BLocale in order to set the strings being used
  during formatting


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38428 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-29 20:55:00 +00:00
Oliver Tappe
f3dd81ab9b * style adjustments
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-29 20:40:15 +00:00
Oliver Tappe
f059c93c7d * minor cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38414 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-28 09:36:59 +00:00
Oliver Tappe
81fe5a9200 * re-added GetAvailableTimeZones() to BCountry - it is now a convenience wrapper
around BLocaleRoster::GetAvailableTimeZonesForCountry()
* minor cleanup

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38412 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-28 09:23:26 +00:00
Oliver Tappe
9ef134d918 * added timezone-support to some more date/time-formatting methods in BLocale
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-26 22:17:40 +00:00
Oliver Tappe
c91aa9f4e6 * moved support for getting timezones-by-country from BCountry to LocaleRoster,
since we'd like to be able to get the timezones of the global (i.e. empty)
  country, too.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-26 22:16:40 +00:00
Stephan Aßmus
3c772f3e09 Finally fixed #3036: BColumnListView::PreferredSize() needs
to take into account the correct extra spacing around
the TitleView, as well the internal margin width that
the TitleView adds to the current column width sum for
its virtual width used to set the horizontal scrollbar
proportion. Introduced TitleView::MarginWidth() for that.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-26 13:57:54 +00:00
Stephan Aßmus
2f368a273a Fixed the overly complicated computation of the height of the
removed rows in OutlineView::RemoveRow(BRow* row). It also
contained a bug (tracked down by Duggan in ticket #3897, thanks!)
which caused it to skip the sub-tree height computation when
FindParent() returns false, which it does for root items.
Now the computation is simple: The subTreeHeight is the height
of the row itself, if a) the row doesn't have a parent or b)
the parent is visible and expanded. Then if the row being removed
is expanded, we calculate the sub-tree height recursively.
Removed a lot of duplicated or even trippled checks along the
way and solved two easily solvable TODOs with regards to what is
invalidated. Previously the entire list view was invalidated
for each row being removed, even if they were scrolled out the
view bounds.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38372 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-26 13:10:27 +00:00
Axel Dörfler
0250598f79 * Forgot to update copyright for the last change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-26 12:14:36 +00:00
Axel Dörfler
d3e85ecc1a * LaunchApp() now removes an existing app hint if load_image() returned an
error. It could even try again in the case of launch-by-signature to make
  it more robust.
* _ResolveApp() now only updates the MIME type's app hint if there is no hint
  already. This means that only the first app launch will update the hint, not
  the ones after that; ie. if you had two installations of an app, launching
  it by signature will now always launch the first app, not the one started
  last.
* This is done since the app hint is written before its known whether or not
  the app could be started at all. Now, if an app could not be started, the
  hint is removed, which means it can be reset on next try.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-26 12:13:45 +00:00
Stephan Aßmus
dd96260d50 Cleaned up OutlineView::FindParent(), only do the visibility check if required.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-26 11:52:11 +00:00
Oliver Tappe
aa8372c486 * changed BTimeZone to use BLanguage instead of BLocale, as that what represents
the locale of messages (timezone names in this case)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38340 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 18:32:59 +00:00
Adrien Destugues
bca1690bfa Preliminary support for adjusting the money format in the locale preflet :
* API for formatting a number and recovering the field positions
 * Some changes in the preflet to display the formatted number and start filling in the fields.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 16:07:39 +00:00
Joachim Seemer
394609e3ad Corrected sentence casing. Thanks diver. Fixes #5169.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 15:23:43 +00:00
Oliver Tappe
3bdedcf3f1 * added support for getting the names of a timezone for a specific locale
(not currently used anywhere, but should be part of the BTimeZone interface)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 15:03:54 +00:00
Stephan Aßmus
e4f3cf203c * Renamed _plugin_manager to gPluginManager.
* Improved tracing in PluginManager.cpp when loading an add-on.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 13:30:39 +00:00
Stephan Aßmus
a8766bc652 Turn apparently non-vital error output into simple trace output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-24 09:42:17 +00:00
Oliver Tappe
7244db260e Fix regression introduced with r38322
* the chosen preferred languages weren't restored in Locale preflet

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-23 20:48:52 +00:00
Oliver Tappe
750e57b842 Optimized Time preflet:
* use upon-demand initialization in BTimeZone to avoid unnecessary work
* renamed BTimeZone::Code() to BTimeZone::ID() and adjusted all callers
* avoid using BCountry in the Time preflet for the time being, this means
  the icon-flags are gone for now (but they could be re-added if the demand
  is pressing ;-)
* group the timezones by regions and then by country instead
The performance improvement is considerable and I personally think the new grouping is an improvement, too. Please share your thoughts!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-23 15:17:49 +00:00
Oliver Tappe
039ad7e757 Added support for getting a list of all available timezone IDs to LocaleRoster.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-23 14:46:54 +00:00
Rene Gollent
d8ede51747 If we failed to instantiate the view (ergo we are a zombie), don't remove the drop coordinates from the replicant message we store as they'll be needed in order to reinstantiate the zombie at the correct position on the next pass.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-21 21:22:12 +00:00
Rene Gollent
994e96504c - Remove leftover debug output.
- Simplified BShelf::SaveLocation(). Resolves CID 431.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-21 21:11:39 +00:00
Rene Gollent
cc26ee399d Forgot to adjust the copyright on files affected in previous commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-21 15:29:52 +00:00
Rene Gollent
2041484b41 Fix various problems found while investigating (and fixing) CID 1453. In short, handling of zombie replicants was completely broken ; they never actually made it to the shelf, and weren't saved/restored either. A problem still remains with respect to restoring them (the shelf relies on the dragged message's drop point to position them, which isn't preserved when the message is flattened/unflattened it seems).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-21 15:28:50 +00:00
Rene Gollent
1f50b439bb Make gcc2 happy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 22:35:04 +00:00
Alex Wilson
be345b9c46 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
2010-08-19 19:56:35 +00:00
Stephan Aßmus
2faa1532f8 * Refactored a lot of repetitive code and made
everything more readible.
 * Once I understood better how everthing is supposed
   to work, I've fixed some bugs.
 * The most important problem was that AddDirectory()
   placed the wrong entry (resolved symlinks) into the
   entry list it keeps for each directory. This resulted
   in the mechanisms not working at all when an add-on
   was a symlink.
 * There was a hidden TODO, which would mean that moving
   an add-on from one watched directory into another,
   like from home/config/add-ons/... into common/add-ons/...
   would drop the client application (media_server,
   input_server, ...) into the debugger.
 * The fFormerEntries list did not seem to serve any
   purpose. Basically it would not disable add-ons
   removed from a watched directory unless it changed
   it's name at the same time. I've removed it completely,
   since it didn't seem to be an optimization
   (entry cache) either.
 * Each actual add-on file is now node-monitored for
   stat changes. So if you have a link in the add-on
   folder, and the linked to add-on changes, it triggers
   a reload of the add-on now. This will make it much
   more pleasant to develop add-ons and have them affective
   immediately.

I tested with a fresh image, but there are no immediate
regressions I am aware of. I could imagine that messing
with certain add-ons can have a bad effect now, like
removing the keyboard input_server add-on may trigger the
keyboard to stop working immediately without an input_server
restart, but Tracker should warn before it happens.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 19:52:19 +00:00
Oliver Tappe
1662a36480 * fix the single remaining gcc2-warning in media kit and enable -Werror for it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 15:46:54 +00:00
Oliver Tappe
269ebc04b9 Fix #6373, second try
* make BDADDR_* macros refer to value types instead of addresses
* adjust all interfaces using bdaddr_t* to use (mostly const) refs instead,
  which IMHO makes the interface & code clearer
* that got rid of a couple of const incorrectness casts
* some cleanup along the way


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 15:29:02 +00:00
Oliver Tappe
32a2294fdc * revert r38213, as it introduces initialization problems
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 14:40:17 +00:00
Stefano Ceccherini
49550a2089 Fix Build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38261 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 04:12:25 +00:00
Stefano Ceccherini
2aef272550 Change Path() to GetPath(), and made it accept a reference instead of
a pointer. Style changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 03:57:58 +00:00
Rene Gollent
1e7a45fd7a Fix build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-19 01:48:03 +00:00
Alex Wilson
1eeda2bd42 Fix style violations I've commited in r38207 and r38251, the first pointed out by Ingo <- thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 22:06:15 +00:00
Stefano Ceccherini
2d05ca4e7a Actually return B_NO_MEMORY in case of error (was a regression introduced
in r38247.
Small style fixes (more to come)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 20:03:07 +00:00
Stefano Ceccherini
d3485a2648 Renamed some members to fit our guidelines
(and to make the code more readable)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 19:57:53 +00:00
Oliver Tappe
8f88fe1d98 * fix CID-258: BView::SetViewOverlay() shouldn't crash if given a NULL bitmap.
Coverity was complaining because we did a half-ass check against NULL only to
pass that NULL pointer on to a function that deref'd it.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 19:55:51 +00:00
Stefano Ceccherini
1c9ed76e33 Fix CID 879. We leaked some stuff in case of error. Removed useless check.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 19:53:08 +00:00
Oliver Tappe
65341d518f Someone familiar with BBitmap, please review:
* BBitmap could leak fWindow in operator=()
* two copy constructors didn't initialize the members properly, which
  could cause crashes in _CleanUp()
* minor cleanup
Actually found this while staring at CID 254-257, which were false alarm, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38246 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 19:44:15 +00:00
Axel Dörfler
6ec5758fe7 * Cleanup - this is very ugly code, and the API is also not really good; we
really should get rid of the current mail kit some day.
* Fixed another memory leak I stumpled upon.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38245 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 18:20:42 +00:00
Axel Dörfler
02b5d2e4e3 * Stefano was right, there was another leak - I've fixed them all now in a
nicer way.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38244 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 17:55:23 +00:00
Oliver Tappe
e1a6422727 Fix #6458 - crash in BTextView when entering Japanese characters
* when I changed InsertText() to adjust the caret position recently, I
  forgot to drop that adjustment from all callers - _HandleInputMethodChanged()
  was still doing it, leading to out of bounds access

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38243 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 17:33:48 +00:00
Stefano Ceccherini
64bd6d9651 Fix CID 890. dest was leaked on error. To me it seems that src is leaked too,
and there's even a comment that says we are leaking memory.
Coverity doesn't complain, though, so I wonder if I'm wrong. Please someone
have a second look.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-18 16:25:31 +00:00