more robust against broken (userland) file systems.
* 80 character column cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32184 a95241bf-73f2-0310-859d-f6bbb57e9c96
can now easily turn it on again (see #2769).
* Also added OFFSCREEN_BACK_BUFFER define to enable the offscreen back buffer
trick.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32183 a95241bf-73f2-0310-859d-f6bbb57e9c96
setting again. It still allows you to change the mode afterwards, though.
* This fixes bug #3419.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32182 a95241bf-73f2-0310-859d-f6bbb57e9c96
a good idea; it didn't have any consequences in there, but actually broke
the app_server's support for the VGA mode.
* Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32181 a95241bf-73f2-0310-859d-f6bbb57e9c96
_CheckColorMenu() now selects the closest item available - if you switch back
the resolution to one that supports the original color space, it will be
restored. This fixes bug #2995.
* I also reverted r24674 as I remembered why I did that in the first place
(advertizing 24 bit modes as 32 bit), and it was a pretty stupid idea to
solve it like this, I must admit.
* Instead, the color space menu now only shows spaces that are actually
supported by the card at all. One could think about hiding 24 bit in case
both 24 bit, and 32 bit are available, but I didn't do that yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32179 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Changed BMenuField::MenuBarLayoutItem::BasePreferredSize() to return the
min size as well, instead of a fixed 100 pixels for the width...
* More minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32177 a95241bf-73f2-0310-859d-f6bbb57e9c96
always created for directories since quite some time now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32158 a95241bf-73f2-0310-859d-f6bbb57e9c96
only add a very limited amount of buffers part of the frame buffer, for
example, as that one is usually a very large area.
* This could prevent all sorts of media buffers to be cloned on certain
conditions (and could also cause a MediaPlayer fallback to bitmap mode for
no apparent reason).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32156 a95241bf-73f2-0310-859d-f6bbb57e9c96
already fixes bug #4189, although there is another bug that could cause a
similar effect (working on that next).
* Switched from media_server local TMap to HashMap, although this is probably
equally archaic.
* Also replaced TList with std::set for the team list.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32155 a95241bf-73f2-0310-859d-f6bbb57e9c96
instead of allocating them separately, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32153 a95241bf-73f2-0310-859d-f6bbb57e9c96
time. But since this is also locked from within the driver/directory watcher
(with the node monitor lock held), and handle_driver_events() could cause
node monitoring updates, the locking order could be reverted, causing a
deadlock (I just ran into).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32152 a95241bf-73f2-0310-859d-f6bbb57e9c96
be broken in the app_server now, but I haven't checked yet.
* Fixed typo in vesa.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32141 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Cleaned up the source file, no functional change (intended).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32139 a95241bf-73f2-0310-859d-f6bbb57e9c96
accessible to the userland - this fixes#2405 (ie. MediaPlayer overlay now
works).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32135 a95241bf-73f2-0310-859d-f6bbb57e9c96
this fixes problems with large files with sparse ranges (for example, Haiku
images).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32131 a95241bf-73f2-0310-859d-f6bbb57e9c96
"now", and given expected results).
* Now only prints failures, unless you give a command argument (which just
enables verbose output).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32121 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Now uses g++ instead of gcc for C++ files.
* Removed mwcc support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32113 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The BView API can probably be regarded as good enough; the implementation
might need to be improved over time (also, some things as archivability
aren't fully implemented yet). The ToolTip.h header should get public once
finalized.
* Added new B_MOUSE_IDLE message that is sent to a BView after a certain
time has passed (BToolTipManager::ShowDelay()).
* Added small test app (ToolTipTest) that shows what is already working.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32078 a95241bf-73f2-0310-859d-f6bbb57e9c96
else this won't work as is (this is something that could be done, better,
though).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32077 a95241bf-73f2-0310-859d-f6bbb57e9c96
needed to show all of the text view's contents. No idea what the previous
solution was about.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32075 a95241bf-73f2-0310-859d-f6bbb57e9c96
resource that I couldn't find! Also thanks to Jonas and Urias :-)
* Header cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32049 a95241bf-73f2-0310-859d-f6bbb57e9c96
tracker :-)
* Improved monitor name, based on that data as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32036 a95241bf-73f2-0310-859d-f6bbb57e9c96
should fill its space completely (which is now the maximal resolution that
can be chosen).
* Improved monitor info in case there is no name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32033 a95241bf-73f2-0310-859d-f6bbb57e9c96
is no model name, the info is still useful (this also affects saving by
monitor).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32032 a95241bf-73f2-0310-859d-f6bbb57e9c96
CL-Amp which is a bit worse than seeing TrackerStatus in the Deskbar. Will
search for a proper solution later.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32026 a95241bf-73f2-0310-859d-f6bbb57e9c96
usability redesign, though, so I didn't bother letting it use the layout
engine for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32022 a95241bf-73f2-0310-859d-f6bbb57e9c96
window under the mouse was given focus. This makes using FFM with the keyboard
alone very inconvenient to use, which is why now the window that previously
had focus will regain it instead; as soon as you actually move the mouse, the
focus is changed as usual.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32014 a95241bf-73f2-0310-859d-f6bbb57e9c96
to be what happens in BeOS, at least, and fixes bug #4127.
* Hopefully diver will also find any negative consequences of this change :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32012 a95241bf-73f2-0310-859d-f6bbb57e9c96
functionality like this is mostly annoying with little use to be honest, but
other opinions are welcome, of course :-)
It reminds me too much about the insane workspace switching via the mouse
wheel in Ubuntu.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32008 a95241bf-73f2-0310-859d-f6bbb57e9c96
B_READ_ONLY_DEVICE if it has a write hook.
* This fixes bug #4141.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32004 a95241bf-73f2-0310-859d-f6bbb57e9c96
cannot assume that the file is that long - we need to check for the actual
file size specifically, and then clear the extraneous bytes based on that one.
* This fixes seeing old file left-overs in the space beyond the file size in
mmapped file. Thanks to Oliver who provided me with a nice test program to
reproduce this problem (this should also fix gcc's fix_includes app (although
I wonder what it does if a file actually ends on a page boundary).
* Also fixed a bug in precaching that would cause the last page of the cache
to be discarded, causing it to be re-read later on.
* Moved partial page clearing into its own function
read_pages_and_clear_partial(), even though it's currently only used once.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32001 a95241bf-73f2-0310-859d-f6bbb57e9c96
* As a side effect, the window is now resizable, and also stores its window
size, not just its position.
* Replaced the old workspace count setter menu with column/row text controls.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31972 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Implemented old count_workspaces(), and set_workspace_count() using the
new functions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31971 a95241bf-73f2-0310-859d-f6bbb57e9c96
and rows.
* set_workspace_count() now uses the logic formerly found in
WorkspacesView::_GetGrid() to determine the layout.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31958 a95241bf-73f2-0310-859d-f6bbb57e9c96
the one just closed anymore. The fSeparateSubTransactions mechanism should
make sure that this won't happen.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31954 a95241bf-73f2-0310-859d-f6bbb57e9c96
Transaction::UnlockInodes() method was never called, leading to bug #4155.
* In order to make sure that inodes are still going to be reverted, we actually
need to move them into the parent transaction which we now do. This should
fix#4155.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31952 a95241bf-73f2-0310-859d-f6bbb57e9c96
definitely not a good idea to move _UnlockInodes() after the Journal::Unlock()
call (which was done to achieve a revertable inode).
* Instead, Journal::Unlock() is now responsible for calling the now public
Transaction::UnlockInodes(), and always does this at the right time while
holding the journal log.
* While I don't understand how #4155 can happen, this bug should be the one that
caused it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31944 a95241bf-73f2-0310-859d-f6bbb57e9c96
different name than the directory entry pointing to it). The BeOS BFS is known
to create such problems from time to time.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31937 a95241bf-73f2-0310-859d-f6bbb57e9c96
let it crash!
* Made some headers self-contained.
* Always lock, regardless of "reenter" (we're using a recursive lock, so this
doesn't matter at all).
* Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31913 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Reverted r31809 as it introduced a race condition; if the I/O request had been
notified, it could already been deleted at that point.
* Instead, we need to notify the request in each file system/driver that uses
it. Added new notify_io_request() function that does that exactly.
* Added a TODO comment to the userlandfs where the request notification needs
a bit more thought.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31903 a95241bf-73f2-0310-859d-f6bbb57e9c96
* first_argument() never returns NULL, so we don't have to check for it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31899 a95241bf-73f2-0310-859d-f6bbb57e9c96
were supposed to be deleted/changed with the previous commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31888 a95241bf-73f2-0310-859d-f6bbb57e9c96
each attribute access needed 3 syscalls, now only one as it should.
* Renamed the new Haiku call fs_open_attr() to fs_fopen_attr(), and added a new
function fs_open_attr() that takes a path (same semantics as the
fs_[f]open_attr_dir() functions already present in BeOS).
* Merged former _kern_open_attr(), and _kern_create_attr() into one syscall.
* Cleaned up vfs.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31881 a95241bf-73f2-0310-859d-f6bbb57e9c96
a sub transaction, or else we would try to continue using it.
* It doesn't make any sense to increase fUnwrittenTransactions when
_WriteTransactionToLog() failed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31857 a95241bf-73f2-0310-859d-f6bbb57e9c96
leading BFS to report success on actually failed transactions. Those
transactions were even kept open, leading to a panic when starting the next
transaction.
* Transaction::Done() now returns a status - currently, this is only handled
correctly where this is likely to happen without a disk fault, ie. if the
transaction was too large to be written back safely.
* Improved "bfs_journal" command output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31850 a95241bf-73f2-0310-859d-f6bbb57e9c96
throughout the code.
* Got rid of the transactions - they weren't really used, and thus only created
unnecessary overhead.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31836 a95241bf-73f2-0310-859d-f6bbb57e9c96
been removed since 9.5.0, and is available as libbind now. This indeed still
looks very similar to what we already have in our repository, and is much
smaller, too. Sorry for the noise... I just could not find libbind on the
ISC site before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31830 a95241bf-73f2-0310-859d-f6bbb57e9c96