Commit Graph

33569 Commits

Author SHA1 Message Date
Clemens Zeidler
ef0f557c65 As suggested by Axel use addr_t and size_t.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 16:40:36 +00:00
Ingo Weinhold
c3f84a1df5 _FreeChunk(): When freeing a chunk from a formerly full meta chunk, we have
to add it back to its partial list or it would be leaked.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 16:06:19 +00:00
Clemens Zeidler
707e415d47 Allow a tap click when the right touchpad button is pressed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 15:23:58 +00:00
Ingo Weinhold
5726fbda3c MemoryManager:
* Does now keep one or two empty areas around, so that even in case of
  CACHE_DONT_LOCK_KERNEL_SPACE memory can be provided as long as pages are
  available. The object cache maintainer thread is used to asynchronously
  allocate/delete the free areas.
* Added new debugger commands "slab_meta_chunk[s]" and improved the existing
  ones.
* Moved Area::chunks to MetaChunk.
* Removed unused _AllocationArea() "chunkSize" parameter.
* Fixed serious bug in _FreeChunk(): Empty meta chunks were not removed from
  the partial chunk lists and could thus be used twice.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35264 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 14:46:04 +00:00
Stephan Aßmus
e1453a3e5d When running as the only application, ask the user before quitting for
confirmation before restarting the computer. (Remember that new users may not
even know what the decorator close box does.)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 14:14:17 +00:00
Stephan Aßmus
5266a73520 Applied patch by romain. Through refactoring, the volume name is already
retrieved before a volume is actually mounted and this fixes #4602. I have
applied the patch as is, although it contains some minor coding style violations,
since these have been there before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 14:01:04 +00:00
Stephan Aßmus
4cdd68e739 * Don't draw/clear the background if the parent view draws on children.
* Make use of the BControlLook method to draw labels.

Both fix ticket #4875.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35261 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 12:50:13 +00:00
Stephan Aßmus
c4e211feb6 * Refactored a method to draw a label when the location is already known.
(This one takes care of setting up the correct color.)
 * Added TODO about using either B_CONTROL_TEXT_COLOR, or elliminating that
   constant (which I am in favor of...).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 12:48:18 +00:00
Axel Dörfler
90b5a0b261 * Renamed all DEC_* constants to CLICK_*.
* Renamed DEC_MOVETOBACK to CLICK_MOVE_TO_BACK, and DEC_SLIDETAB to
  CLICK_SLIDE_TAB.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 12:43:48 +00:00
Axel Dörfler
ba1d39e48f * Right clicking the resize area now always moves the window behind. This
obviously differentiates from BeOS behaviour, but I think it makes much more
  sense this way.
* Simplified DefaultDecorator::Clicked() by eliminating the "clicked" variable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35258 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 12:27:17 +00:00
Stephan Aßmus
10ddee8d8e Tweaked the alpha values to be more in line with the look when not blending.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35257 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 12:27:11 +00:00
Stephan Aßmus
61ac1a850f * Set the BLEND_FRAME flag when detecting that the parent view of the control
renders over children.
 * Support the BLEND_FRAME flag also when drawing BSliders.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 12:13:49 +00:00
Ingo Weinhold
34bfbec297 low resource handler: Clear the maintenance_in_progress flag also when
adding the cache to the maintenance queue. Not so important but more correct.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35255 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 11:13:49 +00:00
Ingo Weinhold
c2d63cfa66 Reworked the object cache resizer (renamed to object cache maintainer) and
low resource handler functions. Particularly fixed the race conditions
between those and delete_object_cache().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 11:08:49 +00:00
Stephan Aßmus
312ca935ab * Refactored storing the playlist archive in the quit message.
* Added looping all windows on quit and store the current playlist if
   applicable.

Fixes #5061.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35253 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 10:52:36 +00:00
Stephan Aßmus
fa8101b56e Remember the mouse snapping mode across sessions... fixes #4740.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 10:34:30 +00:00
Stephan Aßmus
b2e4df131a Removed now useless run script.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 10:21:35 +00:00
Ingo Weinhold
10189b502d Changed the memory management algorithm: Instead of designating the area for
a certain chunk size, the areas are split into meta chunks (which are as
large as a large chunk) each of which can be a used independently for chunks
of a certain size. This reduces the vulnerablity to fragmentation, so that we
need fewer areas overall.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 09:14:01 +00:00
Michael Pfeiffer
100dd0cf5c Fixed number with exponent scanner (and simplified that code).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 08:31:15 +00:00
Stephan Aßmus
abc26ba8ad Patch by "stimut": Fixed BMenu to return only enabled BMenuItems when invoking
them via mouse. This will make the mechanism that BSeparatorItems are always
disabled actually work and the behavior correct for other items as well. It also
fixes #4147 (Magnify crashing because it assume all its items have a BMessage).

Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-23 07:50:45 +00:00
Ingo Weinhold
148637e9d0 Use large slabs for the page mappings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 21:51:26 +00:00
Ingo Weinhold
8d1316fd23 Replaced CACHE_DONT_SLEEP by two new flags CACHE_DONT_WAIT_FOR_MEMORY and
CACHE_DONT_LOCK_KERNEL_SPACE. If the former is given, the slab memory manager
does not wait when reserving memory or pages. The latter prevents area
operations. The new flags add a bit of flexibility. E.g. when allocating page
mapping objects for userland areas CACHE_DONT_WAIT_FOR_MEMORY is sufficient,
i.e. the allocation will succeed as long as pages are available.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35246 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 21:19:23 +00:00
Stephan Aßmus
86a0da42a5 Fixed spelling mistake.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35245 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 21:05:23 +00:00
Stephan Aßmus
f88faf25fb Fix parsing scientific notation in the form of 1E+6 or 1E-6.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35244 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 21:02:04 +00:00
Ingo Weinhold
e54d40e826 There's no reason for allocating with CACHE_DONT_SLEEP. The only thing that
would get us is that the allocations could fail when they wouldn't need to.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 20:01:26 +00:00
Ingo Weinhold
8a65066a11 vm_soft_fault(): map_page() can fail for B_NO_LOCK areas, since it needs to
allocate a page mapping. In that case we do at least have to mark the page
not busy again. Furthermore we enforce the minimum page mappings object cache
reserve, so we'll have more luck on the next fault.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 19:58:04 +00:00
Stephan Aßmus
789d560bc6 Automatic whitespace cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 11:48:16 +00:00
François Revol
a8a6d0f150 Patch by mmadia: update NetSurf package, fix dependancies. Fixes #5311.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 11:41:59 +00:00
Ingo Weinhold
f6543e7d55 "&>" is not POSIX. Use "2>&1 >" instead.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 11:39:12 +00:00
Stephan Aßmus
e31addc53d Added German translation from HTA. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 07:04:47 +00:00
Joachim Seemer
787d6f11e8 Applied Matt's patch fixing images in the Welcome page. Fixes #5307. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 06:08:45 +00:00
Philippe Saint-Pierre
41b65b532e Patch by mmadia, updates Firefox's Optional Package
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35233 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-22 01:17:31 +00:00
Ingo Weinhold
86c794e5c1 slab allocator:
* Implemented a more elaborated raw memory allocation backend (MemoryManager).
  We allocate 8 MB areas whose pages we allocate and map when needed. An area is
  divided into equally-sized chunks which form the basic units of allocation. We
  have areas with three possible chunk sizes (small, medium, large), which is
  basically what the ObjectCache implementations were using anyway.
* Added "uint32 flags" parameter to several of the slab allocator's object
  cache and object depot functions. E.g. object_depot_store() potentially wants
  to allocate memory for a magazine. But also in pure freeing functions it
  might eventually become useful to have those flags, since they could end up
  deleting an area, which might not be allowable in all situations. We should
  introduce specific flags to indicate that.
* Reworked the block allocator. Since the MemoryManager allocates block-aligned
  areas, maintains a hash table for lookup, and maps chunks to object caches,
  we can quickly find out which object cache a to be freed allocation belongs
  to and thus don't need the boundary tags anymore.
* Reworked the slab boot strap process. We allocate from the initial area only
  when really necessary, i.e. when the object cache for the respective
  allocation size has not been created yet. A single page is thus sufficient.

other:
* vm_allocate_early(): Added boolean "blockAlign" parameter. If true, the
  semantics is the same as for B_ANY_KERNEL_BLOCK_ADDRESS.
* Use an object cache for page mappings. This significantly reduces the
  contention on the heap bin locks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35232 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 23:10:52 +00:00
Ingo Weinhold
5f679d1cd3 Resize(): Added boolean "force" parameter that allows to force setting the
new memory, even if it isn't needed at that time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 22:16:03 +00:00
Stephan Aßmus
5b45f726d8 German catalog for DriveSetup. Not heavily tested.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35230 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 20:03:44 +00:00
Stephan Aßmus
7d24c6470f Localized DriveSetup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 20:02:57 +00:00
Stephan Aßmus
e07fca806a * Removed now useless run script.
* Updated TODO, we support creating partitions in empty space now. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35228 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 18:17:06 +00:00
Stephan Aßmus
ca48b8d068 Removed no longer valid TODOs. Thanks PulkoMandy!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 15:54:57 +00:00
Stephan Aßmus
9add3a659a Updated German translation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 15:53:03 +00:00
Stephan Aßmus
14c09c6029 Improved strings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 15:26:55 +00:00
Stephan Aßmus
b14896ee8d It Just Works(TM). Replaced the CD boot alert with ReadOnlyBootPrompt.
One just has to love the write overlay. That one really saved a lot
of work.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 15:14:20 +00:00
Adrien Destugues
141da9c590 Update the dutch translation of virtulmemory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 14:55:07 +00:00
Stephan Aßmus
aef296bb5f Sorry, forgot to add German translation for ReadOnlyBootPrompt...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 14:51:10 +00:00
Stephan Aßmus
fa74162f8a Added application which is supposed to replace the "Do you wish to run the
Installer or continue booting to the Desktop" alert that pops up on CD boots.
It allows to set the language and keymap as the very first thing before a Haiku
installation. (Aside from replacing the alert.) Everything tested and working,
I just need to test integration in the Bootscript.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 14:41:58 +00:00
Stephan Aßmus
9471043456 Removed no longer needed header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35220 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 14:39:43 +00:00
Stephan Aßmus
0ee4261ea8 * Don't return positive status_t in Load() instead of B_OK.
* Small coding style corrections.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 14:39:08 +00:00
Stephan Aßmus
384ed4569c Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 14:38:04 +00:00
Adrien Destugues
a292eb4af2 Removed useless static qualifier on some variables that made them behave weird.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 12:04:02 +00:00
Stephan Aßmus
005a5d0bfe Stumbled across some problems while using the Locale Kit and added TODOs
accordingly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 11:38:16 +00:00
Colin Günther
48e129c9d4 White space cleanup. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-21 10:07:25 +00:00