Commit Graph

33788 Commits

Author SHA1 Message Date
Michael Lotz
beb2e05421 * Renamed CancelFiltering() to ClearFilter() to make it more clear what it does.
* Add UpdateAfterFilterChange() with the update part of FilterModified().
* Add StopFiltering() that clears the filter and updates.
* Make use of these functions where appropriate to fix missing scroll ranges
  after canceling a filter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-30 16:53:53 +00:00
Philippe Houdoin
13fee4ed47 Remove older skeleton code, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-30 11:24:58 +00:00
Philippe Houdoin
5adae8699f We don't need this here.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35342 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-30 11:16:50 +00:00
Philippe Houdoin
43a75cae5c Import Zenja Solaja's 3DMov over françois skeleton.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-30 11:14:16 +00:00
Ingo Weinhold
0e81d474e7 Don't access the area after deleting it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35340 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-30 08:23:37 +00:00
Michael Lotz
545ebde00c Implement type ahead filtering (this time for real and without abusing the
vertically sorted pose list). When enabled typing will filter based on the
currently visible attribute columns. Using shift-space as a delimiter
independent filtering strings can be typed, so you can filter based on multiple
attributes at once to refine results while you type. Filtering stays active
until you cancel it using the escape key. While the filtered result is displayed
all normal file operations can be used. Using the return key while filtering
auto-selects and opens the first filter result, allowing for fast traversal
through directories and directly opening the topmost result.

* Introduces fFilteredPoseList which stores the active filter result. The list
  is only used when filtering is currently active, so no syncing is required
  otherwise.
* Some minor adjustments to leave out invalidations where non-visible poses are
  updated.
* Account for the now possible multiple lists throughout BPoseView.
* Add filter string output to the CountView and made that one a bit wider.
* Added all the settings-cruft for type ahead filtering (defaults to off).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-30 08:08:58 +00:00
Michael Lotz
6568077f50 Fix hid_decode build on GCC4. Spotted by Johannes Wischert, thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-30 01:37:04 +00:00
Michael Lotz
67df6a72c3 Cleanup, these aren't necessary anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35337 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-29 23:31:10 +00:00
Michael Lotz
17ec4668b2 Printing of basic types was broken when they were part of non fixed size fields.
The size instead of the data would be printed. The fixed/non-fixed handling is
generic though, so no need to special case the always non fixed elements.
Since adding of basic types through their Add*() function always generates fixed
size fields, this would only be visible if the data was added through AddData()
with isFixedSize == false. This is the case in compiled resources for example,
hence you would see it when printing the returned messages of BMimeType::Get*()
functions for pre-installed types.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-29 23:29:51 +00:00
Ingo Weinhold
e65c400299 * Replaced the vm_page_allocate_page*() "pageState" parameter by a more
general "flags" parameter. It encodes the target state of the page -- so
  that the page isn't unnecessarily put in the wrong page queue first -- a
  flag whether the page should be cleared, and one to indicate whether the
  page should be marked busy.
* Added page state PAGE_STATE_CACHED. Not used yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-29 15:54:40 +00:00
Axel Dörfler
00d70bc148 * Jerome obviously did not test the new libjpeg... replaced /usr/tmp with /tmp
as found out in #5332.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-29 15:20:45 +00:00
Ingo Weinhold
72382fa629 * Removed the page state PAGE_STATE_BUSY and instead introduced a vm_page::busy
flag. The obvious advantage is that one can still see what state a page is in
  and even move it between states while being marked busy.
* Removed the vm_page::is_dummy flag. Instead we mark marker pages busy, which
  in all cases has the same effect. Introduced a vm_page_is_dummy() that can
  still check whether a given page is a dummy page.
* vm_page_unreserve_pages(): Before adding to the system reserve make sure
  sUnreservedFreePages is non-negative. Otherwise we'd make nonexisting pages
  available for allocation. steal_pages() still has the same problem and it
  can't be solved that easily.
* map_page(): No longer changes the page state/mark the page unbusy. That's the
  caller's responsibility.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-29 10:00:45 +00:00
Ingo Weinhold
1196f305d7 Unconditionally log when the memory manager creates/deletes areas.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-29 09:45:47 +00:00
Ingo Weinhold
ab33f2d961 vm_create_null_area(): The area was created with B_NO_LOCK which would cause
the wired count of manually mapped pages not to be decremented in
delete_area(), leading to a "pages still has mappings" panic when the slab
allocator's memory manager deleted areas.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-28 20:16:59 +00:00
Ingo Weinhold
e00b4c1921 * Moved handling of busy blocks into separate functions.
* Added flags to avoid notifying the busy condition variable unnecessarily.
* get_writable_cached_block(): Unlock the cache while memcpy()ing/memset()ing
  the block's data. The idea is to reduce lock contention. Less effective
  than I hoped, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-28 13:58:06 +00:00
Colin Günther
8a249cd5ad * Recursive dependencies are now correctly handled, so Subversion and BeHappy
should now be able to be installed gracefully. This fixes ticket #5248.
* Enhancement of the -a parameter, so that it accepts multiple packages at once.
  Multiple packages have to be included in double quotes, due to the way getopts
  handles options. This fixes ticket #5315.
* Thanks mmadia for this patch!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-28 11:25:25 +00:00
Axel Dörfler
e054bfbf08 * Added missing IPv6 defines and in6addr_any, in6addr_loopback exports.
* This should get most IPv6 applications to link (they just can't open IPv6
  sockets yet, as the protocol is missing).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-28 09:55:41 +00:00
Rene Gollent
e342a98a08 Applied patch by Matt Madia:
Update Netsurf and Bezilla packages to include compatible version of libjpeg. This is a temporary measure until they're properly rebuilt against libjpeg 8.
	Closes ticket #5329.
	


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 23:21:41 +00:00
Oliver Tappe
ebaeff9e68 * activated API-versioning for ICU-libs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35324 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 23:14:50 +00:00
Oliver Tappe
291785f88f * added support for library (API-)versioning and private system libraries to
build system
* declared ICU-libs as private system libraries, which causes them to no longer
  be available for building software (they no longer are linked from the 
  development lib folder, so the linker won't find them)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 23:13:49 +00:00
Ingo Weinhold
d18eaf4c53 * Improved the clarity of some loops in the page reservation functions. No
functional change (other than avoiding no-ops like subtracting 0).
* vm_page_try_reserve_pages(): Moved the kernel tracing calls from the top of
  the function to the points where the reservation already succeeded.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 20:55:02 +00:00
Ingo Weinhold
b6620ccc71 Make the {memalign,free}_etc() available in the kernel emulation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 19:04:46 +00:00
Oliver Tappe
9d63a92ad0 * automatic whitespace cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 18:38:03 +00:00
Adrien Destugues
ffb916a4cb Apparently the .catkeys export of hta is not perfect yet...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 18:23:35 +00:00
Adrien Destugues
ecfb367cb5 Add dutch transaltion for drivesetup and readonlybootprompt.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35318 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 17:31:34 +00:00
Stefano Ceccherini
7a2cbc6c30 Moved terminal preferences to its own directory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 12:46:21 +00:00
Ingo Weinhold
deee8524b7 * Introduced {malloc,memalign,free}_etc() which take an additional "flags"
argument. They replace the previous special-purpose allocation functions
  (malloc_nogrow(), vip_io_request_malloc()).
* Moved the I/O VIP heap to heap.cpp accordingly.
* Added quite a bit of passing around of allocation flags in the VM,
  particularly in the VM*AddressSpace classes.
* Fixed IOBuffer::GetNextVirtualVec(): It was ignoring the VIP flag and always
  allocated on the normal heap.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 12:45:53 +00:00
Ingo Weinhold
94a877f0e5 Lock the kernel address space last.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 07:19:58 +00:00
Jérôme Duval
2a22d2f0e6 forgot these files
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 02:00:32 +00:00
Jérôme Duval
7fd580914a * updated libjpeg to version 8, as the previous version on trunk didn't look like version 7, the merge wasn't usable. I modified jpeglib.h to have the JPEGTranslator built.
* added libjpeg to AboutSystem
* JPEGTranslator now uses the shared library libjpeg.so


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35312 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 01:57:51 +00:00
Michael Lotz
c14db1b2a1 Also accept buttons from the "button page" as long as they are using arrays.
That usually indicates keyboard-like usage and one of my keyboards uses this
type for multimedia keys.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 00:44:39 +00:00
Jérôme Duval
9af4e61b28 update to tzdata2010b
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 00:24:02 +00:00
Jérôme Duval
96cddcb711 * avoids crashing when fPlayList is already gone on quitting.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 00:22:48 +00:00
Michael Lotz
384eec9bc3 Add "hid_decode" which uses the usb_hid HID parser to decode a report descriptor
(which is conveniently stored by usb_hid to /tmp for each device you plug in).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 23:34:23 +00:00
Michael Lotz
fd97180e27 Make the HID parser usable standalone in userland.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 23:27:56 +00:00
Ingo Weinhold
64a9bd15c8 Optimized writing of zeroes to files. Instead of allocating a small buffer
on the fly, clearing and writing it each time, we now use an iovec with 32
identical entries pointing to a clear page that we prepare once at
initialization. This speeds up clear_image in low memory situations
dramatically.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 21:30:50 +00:00
Michael Lotz
cef3da793a Remove leftover from lazy copy&paste action.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 21:27:42 +00:00
Michael Lotz
63bcd0d0c3 Add "URI" property that returns the URI of the currently playing item.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 21:23:33 +00:00
Oliver Tappe
959abd1c51 * added optional package ICU-devel, which (hopefully) contains all the headers
required to build applications that require ICU


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 20:27:16 +00:00
Oliver Tappe
5337f612fe * added license for ICU
* added missing ICU copyright credit to AboutSystem

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 20:20:34 +00:00
Ingo Weinhold
7fa3e4e68a cache_io(): Reevaluate the memory situation periodically. Deciding at the
beginning whether to pass the cache by really doesn't help when
reading/writing a huge amount of data, since a low memory situation is likely
to occur at some point during the operation. This should fix the main issue
of #3768.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35299 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 17:22:46 +00:00
Ingo Weinhold
cff6e9e406 * The system now holds back a small reserve of committable memory and pages. The
memory and page reservation functions have a new "priority" parameter that
  indicates how deep the function may tap into that reserve. The currently
  existing priority levels are "user", "system", and "VIP". The idea is that
  user programs should never be able to cause a state that gets the kernel into
  trouble due to heavy battling for memory. The "VIP" level (not really used
  yet) is intended for allocations that are required to free memory eventually
  (in the page writer). More levels are thinkable in the future, like "user real
  time" or "user system server".
* Added "priority" parameters to several VMCache methods.
* Replaced the map_backing_store() "unmapAddressRange" parameter by a "flags"
  parameter.
* Added area creation flag CREATE_AREA_PRIORITY_VIP and slab allocator flag
  CACHE_PRIORITY_VIP indicating the importance of the request.
* Changed most code to pass the right priorities/flags.

These changes already significantly improve the behavior in low memory
situations. I've tested a bit with 64 MB (virtual) RAM and, while not
particularly fast and responsive, the system remains at least usable under high
memory pressure.
As a side effect the slab allocator can now be used as general memory allocator.
Not done by default yet, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 14:44:58 +00:00
Michael Lotz
c5d6e9b06e Add some scripting to the MediaPlayer so it can be remote controlled.
Example usage to skip one track forward: hey MediaPlayer Do Next of Window 0


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 04:41:54 +00:00
Michael Lotz
a387e84423 Also accept B_MIME_DATA dropped messages. Allows the Terminal to be used with
Keymap as an on-screen keyboard by dropping the sample clipboard content and the
actual keys onto it (including control ones).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 02:34:07 +00:00
Michael Lotz
96d719ae74 Automatic whitespace cleanup, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-26 02:30:21 +00:00
Stephan Aßmus
7f2f2fa041 Remove the ucontext.h header again, until the whole SA_SIGINFO backend is
implemented fully in order not to fool ported software into believing this
API can be used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-25 23:16:06 +00:00
David McPaul
50ff266ef2 Add SSE versions of YUV2RGB converters for earlier x86 cpus
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-25 21:53:56 +00:00
Jérôme Duval
72570e2e14 * spawn the thread after an audio group is created to be safe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-25 21:19:31 +00:00
Ingo Weinhold
c1547182c3 Moved added the debugger commands from slab_init() to slab_init_post_area().
Those use malloc(), which obviously doesn't work before the heap is
initialized.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-25 19:51:53 +00:00
Stephan Aßmus
1518a682f9 Patch by Andreas Faerber: Adding ucontext.h POSIX header. mcontext_h can be
typedef'd to the existing vregs type. Applies #5324. Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-25 18:06:50 +00:00