its resources -> now also the vector icons (thanks Jérôme for
the hint)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18806 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Deskbar uses 32 bit icons now
* vector icons are now correctly converted to B_CMAP8 bitmaps
if no B_CMAP8 icon is available
* small fixes in Tracker (window mode menu)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18803 a95241bf-73f2-0310-859d-f6bbb57e9c96
not yet working but a bit better :
GLTeapot display is now white instead of black :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18776 a95241bf-73f2-0310-859d-f6bbb57e9c96
imported missing pieces of mesa
GLView now gets a renderer correctly
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18772 a95241bf-73f2-0310-859d-f6bbb57e9c96
TODO : reorganization for GLRenderer.h MesaRenderer.* and libmesa.a
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18765 a95241bf-73f2-0310-859d-f6bbb57e9c96
in several steps:
1. early pre-registration with the registrar ("I wanna launch the
app, make sure noone interferes.")
2. load the app image
3. finish pre-registration with the registrar ("I have launched
the app, here is its team ID.")
4. start app main thread
5. send "on launch" messages to the app (argv, refs, others)
If the app is already running or being launched, 1. fails with a
conclusive error code and returns the team ID and the pre-registration
token of the app. Steps 2 - 4 are skipped and only the messages are
delivered using the team ID returned by 1.
This change fixes a race condition: The failed early pre-registration
request obviously cannot return the team ID, if the other thread
launching the app has not finished step 3 yet. Thus the argv/refs
message would not get delivered and Launch() would not return the
correct team ID.
Now we wait for the pre-registration to be finished in this case, using
the former _IsAppPreRegistered() mechanism, which already provided
such a waiting feature for one request. It has been extended to
accomodate an arbitrary number of waiting requests and renamed to
_IsAppRegistered().
This fixed bug #763.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18728 a95241bf-73f2-0310-859d-f6bbb57e9c96
* additional versions of SetIcon[ForType] and GetIcon[ForType] in BMimeType
and BAppFileInfo, which handle flat vector icon data
* changes in Tracker to support scalable icons (currently broken for
non-vector icons and needs cleanup) and drawing icons correctly with alpha
channel (large parts of this work done by Michael Lotz)
If someone feels like looking over the changes, that would be much
appreciated! :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18699 a95241bf-73f2-0310-859d-f6bbb57e9c96
at the comment in r5_compatibility.h.
* Intentionally broke source compatibility and removed all that outdated Nettle stuff.
* Also, I took the liberty of making m_init private and rename it to fInit - again, this
will only affect source compatibility.
* Rewrote NetEndpoint.h
* Fixed quite a few small bugs around the code that I touched, for example in NetAddress,
SetTo() never set fInit, and therefore could be wrong.
* Some cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18680 a95241bf-73f2-0310-859d-f6bbb57e9c96
size of 3 pixels. To be verified, but seems to work better.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18657 a95241bf-73f2-0310-859d-f6bbb57e9c96
private BWindow::_StealMouseMessage() which makes sure only messages for the
preferred handler are stolen, and also, that nothing gets lost that shouldn't
get lost.
Also updates the fLastMouseMoved view in case the message is actually removed
due to GetMouse().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18601 a95241bf-73f2-0310-859d-f6bbb57e9c96
At least there is a pending bug in BView::GetMouse() that causes this restriction.
This fixes bug #762 for now (will do the part in GetMouse() next).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18597 a95241bf-73f2-0310-859d-f6bbb57e9c96
on GCC 4.
* Fixed buggy scripting error responses: "error" is only included on
error, and B_ERROR (-1) can hardly be a candidate for the
BMessage::what field (uint32).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18490 a95241bf-73f2-0310-859d-f6bbb57e9c96
in _AddToList()).
* Cleaned up BDragger and BShelf a bit, moved private classes into the BPrivate
namespace, renamed private methods to have the '_' prefix.
* Rewrote Dragger.h.
* Is that static dragger list needed at all? And if so, for what?`
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18487 a95241bf-73f2-0310-859d-f6bbb57e9c96
replacing files when merging when you don't have deleted them manually (for some reason,
it only works as part of the merge operation, and we didn't copy the whole tree to
have "a fresh start" - next time we know better, at least if SVN still suffers from
that same limitation).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18456 a95241bf-73f2-0310-859d-f6bbb57e9c96
replicant positioning upon add, a.k.a. bug #639: Deskbar relied on that method
being called to add positioning information to the replicant.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18354 a95241bf-73f2-0310-859d-f6bbb57e9c96
also added an ASSERT to check the current radio button is still on after the switching off process
this fixes the weird behavior in the password window of the ScreenSaver prefapp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18107 a95241bf-73f2-0310-859d-f6bbb57e9c96
This should make our BColumnListView completely usable.
(ColumnTypes files were taken from imkit SVN)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18081 a95241bf-73f2-0310-859d-f6bbb57e9c96
i* thus the NOTE in Painter isn't valid anymore
* in Painter::_DrawBimap() moved scale computation after potential changes to BRects
* fix typo : right => bottom. This caused a bug in Haiku Mouse preferences app
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18017 a95241bf-73f2-0310-859d-f6bbb57e9c96
... the problem is local to my machine... sorry about that!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17937 a95241bf-73f2-0310-859d-f6bbb57e9c96
again with a synchronous reply - the "reply done" flag wasn't cleared before sending.
* Improved error message in case the buffer for flattening the message couldn't be
allocated. BTW this would be a good place to use the new writev_port() function and
don't do any allocation at all.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17914 a95241bf-73f2-0310-859d-f6bbb57e9c96
change the size parameter type of several functions in sys/socket.h to match POSIX
compat libs and legacy headers keep the original R5 type (though I make a change for this)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17911 a95241bf-73f2-0310-859d-f6bbb57e9c96
syscall, but they could not know if R5 code called them (in which case the stat
size has a different size). We now always only return the R5 stat structure here.
This fixes bug #420. We might want to find a different solution to this problem,
though.
* Be got SYMLINK_MAX wrong - it's not the maximum number of links (that's SYMLOOP_MAX),
but the maximum size of a symlink buffer. Added missing SYMLOOP_MAX and SYMLINK_MAX
constants to limits.h.
* Fixes MAXSYMLINKS to use SYMLOOP_MAX, instead of SYMLINKS_MAX (which doesn't exist
in POSIX specs, but we (intentionally) break source compatibility here).
* Reenabled the Haiku versions of stat(), fstat(), and lstat() when build for Haiku.
* Removed OpenBeOS namespace stuff from the files I touched.
* Removed superfluous StorageDefs.Private.h, whyever that ended up in a public header
is beyond me.
* Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17894 a95241bf-73f2-0310-859d-f6bbb57e9c96
handler anymore, no matter if a shortcut existed or not.
This fixes bug #498.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17883 a95241bf-73f2-0310-859d-f6bbb57e9c96
fix binary compatibility for several classes (I missed this before)
the soft synth loads by default /boot/beos/etc/synth/big_synth.sy (which I locally linked to a General Midi sf2 bank
tested with MidiSynth 1.6 on Haiku
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17864 a95241bf-73f2-0310-859d-f6bbb57e9c96
* More or less rewrote BStatusBar, too:
- Draw() now only redraws something when it's part of the updateRect.
- no more flickering (uses B_TRANSPARENT_COLOR now), this fixes bug #530.
- added Dano/Zeta-style SetTo() method.
- big cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17857 a95241bf-73f2-0310-859d-f6bbb57e9c96
fix SoftSynth::PlayHandler, offset and incr are counted in samples
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17853 a95241bf-73f2-0310-859d-f6bbb57e9c96
late, in DispatchMessage(), working around all eventually installed message filters.
This fixes the odd "cannot drop files into file panel" bug mentioned in bug #669.
* They are now handled in _DetermineTarget() and _SanitizeMessage().
* _SanitizeMessage() is now called earlier, so that no user code can see them before;
even though this might give you wrong MouseDown() coordinates in combination with
a redirecting message filter, I think that's exactly what would happen in this
situation under R5 as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17839 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The preferred application is now written with the case preserved. This fixes
bug #635.
* Minor cleanup.
* BApplication::_InitData() now also corrects a pre-registered application signature
if the case is different. Note, however, that the application watching mechanism
doesn't seem to work correctly with this, maybe sending out those should be postponed
until the registration is completed?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17836 a95241bf-73f2-0310-859d-f6bbb57e9c96
This would explain why BLooper::resolve_specifier() was misbehaving before I fixed it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17834 a95241bf-73f2-0310-859d-f6bbb57e9c96
for some types (like "application/x-vnd.Be-elfexecutable") would fail. This fixes
bug #666 (no, I'm not the exorcist :-)).
* Renamed private methods to have the '_' prefix.
* Cleanup, added license.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17832 a95241bf-73f2-0310-859d-f6bbb57e9c96
tested with ForwardMessageTest.cpp
well I hope it doesn't break anything :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17831 a95241bf-73f2-0310-859d-f6bbb57e9c96
was limited by the visible list count, it did not care if the insertion
failed, it didn't maintain the BListItem::fHasSubitems field, neither
fVisible, and it didn't invalidate the latch of the parent, if needed.
* The "add item at end" also did not care if the item should be added to the
visible list, too, it always did.
* AddUnder() would have crashed with a NULL superitem.
* _RemoveItem() now updates the fHasSubitems field as well.
* _SuperitemForIndex() can now return the index of the superitem as well.
* SortItemsUnder() did not check if the "underItem" if the items should be
added to the visible list or not, it also just did.
* SortItemsUnder() now invalidates the part of the visible list that may
have been changed.
* This fixed bug #662, and possibly #663, too (at least I could never
reproduce it).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17812 a95241bf-73f2-0310-859d-f6bbb57e9c96
But the default size is the view one, not the view's window size, which doesn't make much sense.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17798 a95241bf-73f2-0310-859d-f6bbb57e9c96
BLooper had a be-handler named suite
BWindow is now exposing Active
scripting to BViews isn't working yet
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17797 a95241bf-73f2-0310-859d-f6bbb57e9c96
when enabled, and B_NORMAL_WINDOW_FEEL when disabled. IOW when enabled, no
other windows can interfere.
* Therefore, it's no longer necessary to have the screen_blanker window
use kWindowScreenFeel - it will set its window to full screen as long
as the blanker runs.
* Added a AS_APP_CRASHED notification in the app_server that will remove
all kWindowScreenFeels from the windows of the crashed app.
* This is now used by the debugger to ensure that the debugger alert will
be visible.
* Factored out a DesktopLink class out of the BRoster::_ActivateApp()
method. This class is now also used in the new BRoster::_ApplicationCrashed()
method as used in the debug_server (via BRoster::Private).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17785 a95241bf-73f2-0310-859d-f6bbb57e9c96
representing the interface for, well, MIME sniffer add-ons.
* Implemented the respective add-on manager and make use of it in
the MIME database code. Unfortunately the MIME DB code completely
lives in libbe.so and hence I had to put my code there too.
IMHO we should (one day) remove the direct (read-only) MIME DB
access from libbe and move everything into the registrar.
Currently the add-on manager supports built-in add-ons only; it
doesn't really load anything from disk ATM.
* Added a built-in text sniffer add-on to the registrar. It's based
upon the BSD file tool code.
This closes bug #250 (plain text files are identified as such, now).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17784 a95241bf-73f2-0310-859d-f6bbb57e9c96
* simplified drawing a bit, and got rid of those scary scale*() stuff (which also
results in better looks). The monitor now looks like the one in Screen; I think
it should either be a very reduced form or a very detailed form, but anything
in between often looks just odd.
* It now also listens to B_MOUSE_DOWN incl. mouse tracking, not only to B_MOUSE_UP.
* Less flickering on state changes (and focus change).
* Loading settings no longer overwrites defaults missing from the settings.
* Renamed ScreenSaverSettings::GetBlankCorner() to BlankCorner(),
LoadSettings() to Load(), GetState() to GetModuleState(), ....
* Some more cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17783 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The size returned was too big, as the size in the flattened message included
the message format.
* Made it a bit more robust, too (bail out if the section header size is smaller
than zero).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17772 a95241bf-73f2-0310-859d-f6bbb57e9c96
exceptions in case of an error. Therefore, whenever those methods are called,
we need to surround them with a try/catch block.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17766 a95241bf-73f2-0310-859d-f6bbb57e9c96
* fixed some local variables names
* fixed the case of some message attribute names
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17734 a95241bf-73f2-0310-859d-f6bbb57e9c96
makes use of BWindow::_SetFocus() in BView::MakeFocus()
BWindow::_KeyboardNavigation() now uses BView::MakeFocus()
This is though not enough: _SetFocus isn't called on window activation/deactivation, thus the input server isn't aware of a focus view change in this case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17723 a95241bf-73f2-0310-859d-f6bbb57e9c96
drawn correctly in that case, and the thumb stays at the start of the slider
(minimal position). This fixes bug #193.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17705 a95241bf-73f2-0310-859d-f6bbb57e9c96
userland-networking files into a convenient place for easier testing:
+ net_server_driver and net_stack_driver are installed to
/boot/home/config/add-ons/kernel/drivers/bin and ../dev/net
+ net_stack_tester, ifconfig, arp and route are installed to
$(HAIKU_TEST_DIR)/kits/net/userland
+ libsocket, libnet, libbind and libnetapi are installed to
$(HAIKU_TEST_DIR)/kits/net/userland/lib
+ userland add-ons are installed to
$(HAIKU_TEST_DIR)/kits/net/userland/add-ons/obos_network
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17701 a95241bf-73f2-0310-859d-f6bbb57e9c96
I have no idea what sense this makes. When switching from list mode to
icon mode, some poses had their locations set to location "infinity",
because MapToNewIconMode did a division by zero. This resulted in feeding
the scrollbars a totally insane range.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17673 a95241bf-73f2-0310-859d-f6bbb57e9c96
message - and even return the error message it got from BMessage::AddString()
for trying so.
This fixes bug #585.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17671 a95241bf-73f2-0310-859d-f6bbb57e9c96
The app queries still are case sensitive, though (shouldn't hurt, as the MIME
type database preserves the case).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17668 a95241bf-73f2-0310-859d-f6bbb57e9c96
is used at other places, and all of a sudden, the "Open With..." menu in Tracker is
working now :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17666 a95241bf-73f2-0310-859d-f6bbb57e9c96
MIME type.
* We now write the META:TYPE attribute that contains the type with
preserved case (as in BeOS). We even currently check this whenever
a type is opened, but that can be removed later, again.
* BMimeType::GetSupportingApps() was broken for applications that
only support the super type.
* Also BMimeType::GetSupportingApps() preserves the case of the
signatures.
* Why on earth would we want to preserve the case of case insensitive
MIME types? Simple, this let's you query for those apps using case
sensitive queries, as Tracker uses for its "open with" functionality.
Strangely enough, that one still doesn't work, even though the query
predicate is now correct.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17661 a95241bf-73f2-0310-859d-f6bbb57e9c96
A consequence is the FileType tracker addon (which hasn't a signature) has now its attributes set on Linux builds
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17642 a95241bf-73f2-0310-859d-f6bbb57e9c96
and changed BMenuItem to actually use it.
This fixes bug #640.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17641 a95241bf-73f2-0310-859d-f6bbb57e9c96
before sending a B_MOUSE_DOWN message to any other view. This fixes bug
594 for real and another bug in BMenuBar. BMenuBar tracking will also
be simplified a bit because of this. Install items to a NULL window on
Show() as does R5 (although I don't know why yet).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17605 a95241bf-73f2-0310-859d-f6bbb57e9c96
Tracker saves and restores the window decorator settings on
Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17602 a95241bf-73f2-0310-859d-f6bbb57e9c96
queue, should fix bug 594 and not risk of losing clicks. SetStickyMode()
calls StealFocus() to give the chance to be keyboard-navigated to menus.
Added an extra (temporary) InvalidateLayout() because some items weren't
added in
some cases (Tracker's attributes menu for example)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17599 a95241bf-73f2-0310-859d-f6bbb57e9c96
to export the previously virtual slot to be binary compatible...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17594 a95241bf-73f2-0310-859d-f6bbb57e9c96
Position(). This used up a virtual slot of BPositionIO. GetSize() needed to be
implemented in BFile, which uses the BStatable version as before. This should
hopefully be binary compatible. The only problem could be in source
compatibility when there are classes inheriting from BPositionIO implementing
their own GetSize().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17593 a95241bf-73f2-0310-859d-f6bbb57e9c96
prevented ProcessController from showing its menus.
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17587 a95241bf-73f2-0310-859d-f6bbb57e9c96
both messages wanted to reply then, which could get the wrong reply (B_NO_REPLY)
into the reply port. This fixes bug #513, took me some hours to figure that out...
* _SendMessage() no longer allows to forward a message and asking for a synchronous
reply that already has a source waiting for a reply.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17584 a95241bf-73f2-0310-859d-f6bbb57e9c96
On PPC, both dispatch.c and GLDispatcher.cpp were exporting gl* OpenGL API. Twice is not better, even when "none" was the previous state for PPC port ;-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17578 a95241bf-73f2-0310-859d-f6bbb57e9c96