before in this mode. Some further cleanup, only B_TRUNCATE_BEGINNING is still
left.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13154 a95241bf-73f2-0310-859d-f6bbb57e9c96
Enlarged the cancel button a bit.
Started counting mechanism (ie. later, when you really press Ctrl+Alt+Del,
the TMDescView counts down to zero). Ideally, this would be fed by the
keyboard device.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13148 a95241bf-73f2-0310-859d-f6bbb57e9c96
bottom of the list while other teams are added at the top of the list.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13147 a95241bf-73f2-0310-859d-f6bbb57e9c96
It now also handles all messages relating to its controls.
The file path is now truncated to the view's bounds.
Fixed wrong update position of the TMDescView; it always took updateRect
as view bounds.
Enlarged item gap a bit so fit the BeOS task manager exactly.
Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13145 a95241bf-73f2-0310-859d-f6bbb57e9c96
TMBox::Pulse() will now only invalidate the view if something changed - this
completely removes the flickering that was visible with our app_server.
Fixed typo.
Added a ToDo comment since TMDescView::fItem is not correctly updated.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13144 a95241bf-73f2-0310-859d-f6bbb57e9c96
Also no longer states that Haiku components would be part of "the BeOS" :-)
Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13143 a95241bf-73f2-0310-859d-f6bbb57e9c96
so that we could theoretically run the Media preferences app.
IMO, these belong into libmedia.so; they should be rarely needed with
the new media kit, anyway.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13141 a95241bf-73f2-0310-859d-f6bbb57e9c96
People is now almost font-sensitive (only the width is fixed).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13137 a95241bf-73f2-0310-859d-f6bbb57e9c96
Now searches all volumes for people groups.
The only thing left is to make "URL:" and "E-mail:" clickable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13136 a95241bf-73f2-0310-859d-f6bbb57e9c96
null byte, and add junk as arguments. Thanks to Korli for testing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13134 a95241bf-73f2-0310-859d-f6bbb57e9c96
Also restored the original locations of the class members I broke before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13132 a95241bf-73f2-0310-859d-f6bbb57e9c96
of private members if the class has friends (and BWindow has a lot of
them...), stupid Axel!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13131 a95241bf-73f2-0310-859d-f6bbb57e9c96
If there is no be_app when the AppServerLink is created, it now
falls into the debugger (maybe only for now?).
Removed some debugging cruft.
BTW I changed the standard app_server resolution to 800x600 by
intention - at least for testing this is much more appropriate,
and can be reversed later again.
FWIW I think we should use 1024x768 as a standard or whatever
is the native display resolution. Use 640x480 as a fall back
only in safemode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13130 a95241bf-73f2-0310-859d-f6bbb57e9c96
to LinkReceiver, LinkMsgSender to LinkSender, and put everything into the
BPrivate namespace.
Made AppServerLink a cheap object - it will use the applications receiver/sender
and not create its own buffers.
Fixed broken communication stuff here and there (mostly Font.cpp).
Put the newly introduced set|get_system_colors() into the BPrivate namespace -
please don't introduce private functions into the public namespace!!!
Also fixed their broken communication use, as Darkwyrm obviously forgot about
it again: the sequence Flush(); GetNextMessage() without error checking is
purely wrong and can make the app hang and/or crash! :-)
Other minor cleanup.
The input_server used some test mode with the haiku build target which is
probably wrong.
Hopefully I did not forget anything this time.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13128 a95241bf-73f2-0310-859d-f6bbb57e9c96
Also, when the line is too long, E2BIG is returned.
Thanks to Korli who pointed me to this: http://homepages.cwi.nl/~aeb/std/shebang/
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13114 a95241bf-73f2-0310-859d-f6bbb57e9c96
now as well.
Also, both functions will now test if the executable exists and is valid; that
way, load_image()/exec*() can catch many errors without having to create a new
team (or erase the current one - an exec*("my invalid app") might now return
with an error).
The runtime linker now exports a function to test executables that is aware
of the search paths, and will also check user permissions upfront.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13113 a95241bf-73f2-0310-859d-f6bbb57e9c96
be the same for both ways (via load_image() and exec*()).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13112 a95241bf-73f2-0310-859d-f6bbb57e9c96
Also fixed _AllocateBuffer() to handle out of memory situations gracefully.
It should probably also have upper limits with regard to the bitmap size.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13109 a95241bf-73f2-0310-859d-f6bbb57e9c96
(that saves the file system from starting a new transaction, which is currently
expensive).
Changed output a bit: the launch line now also contains the parent team ID,
file paths are truncated from applications.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13100 a95241bf-73f2-0310-859d-f6bbb57e9c96
as required by the interface.
Unfortunately, this doesn't help the slow window moving with Rudolf's drivers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13099 a95241bf-73f2-0310-859d-f6bbb57e9c96
no items can be removed from that list - nevertheless, it's wrong.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13088 a95241bf-73f2-0310-859d-f6bbb57e9c96
can now only happen if the thread is killed.
_user_receive_data() will now longer pass B_CAN_INTERRUPT to receive_data(),
but B_KILL_CAN_INTERRUPT - this should fix the problem Stefano experienced
with this function, even if I couldn't reproduce it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13075 a95241bf-73f2-0310-859d-f6bbb57e9c96
target can also simply be set to the preferred handler by using the
BInvoker::SetTarget(NULL, Looper()) form.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13068 a95241bf-73f2-0310-859d-f6bbb57e9c96
passes them to the focus view. Before, only the data view got those messages
(because they are accessible over the menu, and had the data view as target).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13067 a95241bf-73f2-0310-859d-f6bbb57e9c96
not used outside of it.
Added tracking for the last transaction in the block cache; that way it can test
if the last transaction has been closed before opening a new one.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13022 a95241bf-73f2-0310-859d-f6bbb57e9c96
to the free list, so a new range was started for every allocation (!).
block_range::Free() did not update the chunk's used_mask correctly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13021 a95241bf-73f2-0310-859d-f6bbb57e9c96
if that's a good idea (it may still be a good idea to succeed for shrinking the
stream, even if not everything worked), but it looks better :-)
Improved debug output in case TrimPreallocation() fails.
Journal::FlushLogAndBlocks() no longer ends the current transaction if called
from within an ongoing transaction.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13019 a95241bf-73f2-0310-859d-f6bbb57e9c96
This helps to reduce the flood of commands for those blue screen "users" :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13018 a95241bf-73f2-0310-859d-f6bbb57e9c96
Commented out a check that would prevent characters smaller than B_UTF8_ELLIPSIS
to be rendered (ie. the maximum width could be less than the ellipsisWidth but
greater than the complete string width for small strings).
Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13013 a95241bf-73f2-0310-859d-f6bbb57e9c96
Hack workaround: enlarged the text width a bit, because the title often appeared
truncated for no apparent reason.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13012 a95241bf-73f2-0310-859d-f6bbb57e9c96
(Incorrectly) implemented AS_GET_DESKTOP_COLOR - works for now.
Minor cleanup.
Is AS_SET_SCREEN_MODE used at all?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13010 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added LinkMsgReader::NeedsReply() method.
Completely redone ServerApp messaging: no more "replyport" from BAppServerLink; instead,
the registered client reply port is used. Fixed some more weak messaging stuff.
ServerApp now recognizes if an unknown message needs a reply, and sends it - for example,
the "Screen" preferences app no longer hangs, but crashes on start :)
Made LinkMsgReader::Read() virtual again, since it's needed by RAMLinkMsgReader.cpp.
Renamed BPortLink::GetNextReply() to GetNextMessage().
Some more cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13004 a95241bf-73f2-0310-859d-f6bbb57e9c96
Extended the PortLinkTest application a bit (and updated it).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13003 a95241bf-73f2-0310-859d-f6bbb57e9c96
Note, the special case can go as soon as we've moved the driver over to the new
driver architecture.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13001 a95241bf-73f2-0310-859d-f6bbb57e9c96
BPortLink::AttachString() now accepts a length argument, and will no longer
send a terminating null byte; LinkMsgReader::ReadString(), however, will
make sure the string read is null terminated.
Changed client communication code to use FlushWithReply() instead of Flush()
and GetNextReply() - there were many bugs and shortcomings in the code, I
hope I've fixed them all.
Converted ClientFontList.cpp to our coding style (but not completely, the
class members are missing).
Some more cleanup - I hope Adi will adopt our coding style one day!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12998 a95241bf-73f2-0310-859d-f6bbb57e9c96
- StartMessage() can now get a size to make sure there is enough free space
- if StartMessage() is called with the current message behind a certain
watermark, the buffer is flushed in order to prevent moving around messages
in the buffer. The actual value should be tested in real life, though.
- enlarged maximum buffer size to 64k
- fixed bug: could use memcpy() to move overlapping memory around
- added a flag to Flush() that marks messages as needing a reply - the other
way would be to mark the message "code" to contain this information
Some cleanup in LinkMsgReader.
BPortLink now has most methods as inlines.
The buffer sizes are now declared in a shared header, so that receiver and
sender are always equipped equally.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12997 a95241bf-73f2-0310-859d-f6bbb57e9c96
by default. Select "safe mode" in the boot menu to get to the old consoled.
Note, if you're using VESA mode, make sure you run in 32 bit, or the
app_server will crash.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12965 a95241bf-73f2-0310-859d-f6bbb57e9c96
functions will currently deadlock when called from within the Deskbar.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12962 a95241bf-73f2-0310-859d-f6bbb57e9c96
Removed the stopConnection() method.
Cleaned up header a bit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12959 a95241bf-73f2-0310-859d-f6bbb57e9c96
(ab)using the BApplication lock to synchronize messaging.
Also, it now has one global reply port, that is created on demand,
but never freed - hope this doesn't cause any other trouble.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12957 a95241bf-73f2-0310-859d-f6bbb57e9c96
and therefore waited indefinitely for its demise.
Run() had the usual "if error != my special error -> everything fine" that
seems to be everywhere in the Application Kit.
Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12956 a95241bf-73f2-0310-859d-f6bbb57e9c96
will do that anytime soon, and it should be done by using node monitoring,
anyway.
devfs_open_dir() now makes sure the directory contents are up-to-date - this
should fix the app_server device lookup.
Disabled debug output in the read/write hooks to improve its usage.
Renamed part_map to partition.
Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12935 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added new devfs_add_driver() function that the device manager will now call
to register new drivers.
Devfs will now keep a list of known drivers and remembers, if they have
been initialized already - a driver can now safely scan the directory it's
in while being scanned itself without having its hooks called twice.
Devfs is now using a recursive lock instead of a mutex (that's not really
a requirement right now, but would allow us to keep the fs lock during
scanning).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12933 a95241bf-73f2-0310-859d-f6bbb57e9c96
currently needs even more memory than the old one 8-)
Not cleaned up at all.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12921 a95241bf-73f2-0310-859d-f6bbb57e9c96
Building our components for use with R5/dano/whatever is now something you need
to want, it's not the default anymore.
Note: you can still build single components for R5 by overriding the target
platform per target, too, for example:
$ TARGET_PLATFORM=r5 jam app_server
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12920 a95241bf-73f2-0310-859d-f6bbb57e9c96
environment, but it didn't set the "environ" to the new array, and
thus throwing away the copy again.
GCC no longer crashes because of this, and runs through without help :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12914 a95241bf-73f2-0310-859d-f6bbb57e9c96
but that was not working correctly):
only the owning transaction (the one that came first) can now end a transaction.
To do: if the owning transaction fails, it should actually not abort the
transaction in case there were sub transactions, but does so right now
(should do no harm, eventually file data is not freed as it should).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12913 a95241bf-73f2-0310-859d-f6bbb57e9c96
(FATAL() would be okay, but it's currently configured to panic).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12912 a95241bf-73f2-0310-859d-f6bbb57e9c96
of running into an assert() later on, we now back out early in this case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12902 a95241bf-73f2-0310-859d-f6bbb57e9c96
to enable debug output in the runtime linker and still have to compute the offsets
manually.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12900 a95241bf-73f2-0310-859d-f6bbb57e9c96
called by debug_init_post_vm().
Since the availability of a blue screen specific getchar() is static anyway, there
is no need for the sBlueScreenGetChar variable (only the message "only serial input
available" gets lost, but since that is platform specific anyway...).
Hello blue screen! We now have an on-screen KDL, to be enabled by the kernel
setting "bluescreen", just like on BeOS.
The blue screen does not yet support any cursor actions or backspace, though (need
to grab some stuff from our console driver).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12896 a95241bf-73f2-0310-859d-f6bbb57e9c96
kernel_debugger() didn't do enough before; panic() did all the work - but
since the former is a public function as well, I moved all the functionality
to it. Also fixed a possible buffer overrun in panic().
Renamed dbg_* to debug_*.
"serial_debug_port" setting did not ignore negative values.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12889 a95241bf-73f2-0310-859d-f6bbb57e9c96
- extended libdebug.so functionality to be able to get stack frames,
current instruction pointer, etc.
- changed the debug_server to be able to run as a simple BLooper - this
saves some trouble when the app_server dies
- the debug_server now prints out a stack crawl for the crashed team
(without symbols, though - for that data to be helpful you should
have a look at the loaded images (ie. where they start))
- the debug_server now also prints the team name when it kills it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12882 a95241bf-73f2-0310-859d-f6bbb57e9c96
If a file "vesa" happens to be in data/settings/kernel/drivers/ it will be copied to the
image.
If you're on a BeOS machine, the standard fonts will be copied (Swis721, Courier); this
causes the "Workspace 1" to be shown under Haiku, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12880 a95241bf-73f2-0310-859d-f6bbb57e9c96
hardly atomic, so we need to grab the thread lock after all.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12877 a95241bf-73f2-0310-859d-f6bbb57e9c96
could have destroyed the BFS integrity... (just happened to me, that's how I
noticed it)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12867 a95241bf-73f2-0310-859d-f6bbb57e9c96