option to cache a freed buffer -- and implementations
BlockBufferCache{NoLock,Kernel}.
* ZlibPackageDataReader does now dynamically get its read and uncompress
buffers from a provided BufferCache when needed.
* Allocating the buffers once and keeping them over the whole life time was a
bit too memory heavy, since we create a reader for every file for which a
vnode is created. A FS module global factory provides a buffer cache.
* Added a mutex to PackageFile::DataAccessor which guards the access to the
data reader which isn't thread safe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34115 a95241bf-73f2-0310-859d-f6bbb57e9c96
event.
* This allows applications to listen to keys independent to their dead key
status.
* The app_server keyboard filter now also check for B_UNMAPPED_KEY_DOWN.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34112 a95241bf-73f2-0310-859d-f6bbb57e9c96
which window to give focus, it already does the right thing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34110 a95241bf-73f2-0310-859d-f6bbb57e9c96
window is currently updating its drawings as suggested by Stippi.
* Add this method to decide whether to call _FontChanged() in
BListView::SetFont().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34109 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added shortcuts ctrl-alt-F to get a window to front, and ctrl-alt-b to move it
to the back.
* Updated the user guide with these shortcuts, and also explained the missing
"single click to bring window to front" behaviour.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34108 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The target volume block size is passed to the CalcItemsAndSize() function
to get a more accurate picture of whether items will fit. Before, it would
assume hard coded 1024 bytes block size.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34107 a95241bf-73f2-0310-859d-f6bbb57e9c96
HasStatus() and UpdateStatus() were not run in the same lock, so the job
view could be gone anyway. And secondly, both methods iterate over all status
items to find the one with the correct thread. Doh, if we don't have enough
work to do, lets make some! Of course this was not critical in any case...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34104 a95241bf-73f2-0310-859d-f6bbb57e9c96
file once, tracking an open count.
* Added VFSInit()/VFSUninit() methods to the Node and PackageNode class
hierarchies, called by the {get,put}_vnode() PackageFile implements them to
set up/tear down access to the file data. Also added a Read() reading the
data.
* Implemented the open(), free_cookie(), and read() FS hooks for real. Reading
files works now. Executing doesn't yet -- it requires working with
IORequests in a way not supported by the userlandfs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34102 a95241bf-73f2-0310-859d-f6bbb57e9c96
start of the chunk, which is wrong for non chunk aligned offsets.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34101 a95241bf-73f2-0310-859d-f6bbb57e9c96
* We now report more correct stat data. The information are retrieved from the
Package* objects.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34098 a95241bf-73f2-0310-859d-f6bbb57e9c96
PackageSymlink with a "fat" interface.
* Replaced File and Symlink by fat class LeafNode.
* Added Package* object management to Directory and LeafNode.
* Implemented packagefs_read_symlink(), so symlinks work now.
* Added some missing locking the kernel interface.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34096 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Untested, but should work (will test it when I get home later today).
- This is my first attempt at adding something for compatibility reasons. Let
me know if something in wrong.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34091 a95241bf-73f2-0310-859d-f6bbb57e9c96
stack after that has just been changed, and does not contain the data one
would assume.
* This fixes the leaking the vm_translation_map_arch_info objects, and thus
bug #4957.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34090 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The FS parses package files from "/boot/common/packages" and builds an
node tree representation of the contained entries. Merging directories should
work. Lots of other stuff is missing yet, though.
* Implemented the hooks for directory entry lookup and iteration. So it's
possible to see the contents of the FS at least.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34088 a95241bf-73f2-0310-859d-f6bbb57e9c96
afterwards; ie. the alt key is no longer stuck after visiting KDL.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34087 a95241bf-73f2-0310-859d-f6bbb57e9c96
them in the PackageReader instead of fprintf().
* Got rid of unconditional printf().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34084 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Simplified the handling of the first window and removed FirstWindow(),
we can tell by fPlayerCount.
* Both the above would fix a crash when requesting the about alert with the
first window already gone. Respectively another player instance opening
if fFirstWindow was reset to NULL after some recent revision.
* Implemented restoring the current playlist, index and position in the file.
* Devised a more robust way to solve asynchronous seeking. The Controller is
now notified that a seek request has been handled with a dedicated hook.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34079 a95241bf-73f2-0310-859d-f6bbb57e9c96
and empty windows only):
* New windows use the width from the window that was last resized by the user.
* The first window uses the stored window position and size.
* When switching from video content to audio content, the last window width
from previous audio-only content is restored.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34078 a95241bf-73f2-0310-859d-f6bbb57e9c96
aren't monotonically increasing which this code was assuming. This fixes bug
#4917.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34074 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Rename "Configure Favorites..." to "Edit Favorites...".
- Remove the old-style Configure Favorites dialog in favor of simply
opening the favorites folder (~/config/settings/Tracker/go) in a
Tracker window for the user to manipulate.
- Rename the "Favorite Folders" section to simply "Favorites" as files
are also allowed (i.e. to easily open a template document).
- Removed completely arbitrary (and silent) 20 item limit to favorites
list.
- Automatic whitespace cleanup
Still to do: Grab the ref filter from the file panel (if any) and run the
favorites through it as well, since we want to filter out any non-folder
favorites that the app is incapable of handling. Also, the setting for
the favorites menu to show recent documents needs a new home, as it was
previously in the no longer existing Configure Favorites window. Suggestions
welcome, as I'm not currently seeing a spot in the Tracker prefs that would
make good sense.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34071 a95241bf-73f2-0310-859d-f6bbb57e9c96