Commit Graph

1618 Commits

Author SHA1 Message Date
Axel Dörfler
b7a96f02fd Now fills in system_info::cpu_infos[] (ie. CPU activity) by looking at the active
time of the idle thread. IOW Pulse now works :-)
Renamed the idle thread/stack to start with 1 instead of 0 (first idle thread will
be called "idle thread 1").
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13373 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 00:31:38 +00:00
Marcus Overhagen
0d1adad317 Media Codec API just got a visit from the coding style police.
We now use "const" for the chunk buffer pointer returned by GetNextChunk,
because the buffer is not supposed to be modified by the codec.
size_t is used for the size where applicable. This matches BMediaDecoder.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-30 00:24:06 +00:00
Axel Dörfler
ef79db4f7c Doh, two times in a row... forgot to update ViewAux.h.
Changes from BView refactoring.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 00:22:01 +00:00
Axel Dörfler
80a230b10e Rewrote the push/pop state and ViewAttr stuff:
- it now seems to work finally correctly
- renamed ViewAttr to ViewState and put it into the BPrivate namespace
- some refactoring (moved some private BView methods to ViewState)
- renamed AS_LAYER_MOVETO/RESIZETO to *_TO (note the underscore)
- exchanged BView::originX/Y with fParentOffset (BPoint)
- divided AS_LAYER_GET_COLORS into separate ones for high/low/view color
- BView::SetPattern() now actually works as expected (ie. updates
  only if necessary)
- exchanged the ViewAttr::flags with ViewState::valid_flags which inverses
  the previous logic (which wasn't even used consistently)
- fState was initialized twice (incorrectly by the ViewAttr constructor,
  and then again correctly by initCachedState()) - now the ViewState
  constructor does the job alone, but correctly
- BView::PushState() no longer resets the state (it did so only locally
  anyway...)
- cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 18:56:55 +00:00
Adi Oanca
843c11c953 another message
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13318 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 15:09:02 +00:00
Ingo Weinhold
9351453415 * Added a private API class BServer, a BApplication subclass especially
for servers, that don't have a GUI or want to control when the app server
  connection is established.
* BServer is necessarily a friend of BApplication, for it uses a private
  constructor. Hence BApplication::Private::InitGUIContext() is no longer
  needed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 14:53:29 +00:00
Ingo Weinhold
c8e7f53e08 * Radically culled the list of BApplication friends and introduced a
BApplication::Private class for accessing relevant parts.
* Pulled the app server connection and IK initialization out of
  InitData() into a new method _InitGUIContext() and introduced a private
  constructor that allows to avoid this initialization. This will be used
  for servers that don't have GUI respectively want to init the app server
  connection later.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13312 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 12:55:16 +00:00
Adi Oanca
876a13d8dc added a scroll message
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 12:02:49 +00:00
Philippe Houdoin
c17c7c0645 Internal Mesa3D's private declaration use everywhere in Mesa code.
Maybe this header will move in the future...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-26 13:54:42 +00:00
Stefano Ceccherini
55b222b0b0 Stephan already implemented the needed support for dpms stuff too, so why not implementing the client methods too?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 13:53:48 +00:00
Stefano Ceccherini
75de27f83b more BScreen related stuff
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 06:30:09 +00:00
Stefano Ceccherini
4b7db694ce RetraceSemaphore() doesn't need to be public
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 05:40:59 +00:00
Stefano Ceccherini
c641898150 implemented client/server side support for BScreen::GetDeviceInfo() and WaitForRetrace(), and (only client side) support for Bscreen::ProposeMode()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 18:02:01 +00:00
Axel Dörfler
0ec4af2233 Improved AreaPool to have an initial size as well as well as a name that is
used for new area.
MemPool::AddToPool() now gracefully deals with NULL pointers (or a size of 0).
BitmapManager was deleting the area it transferred to AreaPool before - it
no longer needs an extra area, though.
Minor other cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 04:01:16 +00:00
Axel Dörfler
b5436616a3 Fixed some style related functions and other oddities in FontServer.
Also applied our style guide on that class.
Renamed some public globals to match our style guide.
Made BitmapManager inherit from BLocker instead of duplicating its
functionality (incorrectly, did not check for B_INTERRUPTED) locally.
Some more cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 03:31:41 +00:00
Stephan Aßmus
3dcb3b079a Added some root layer locking in ServerWindow.cpp when accessing the layer tree. Moved HWInterface management out of DisplayDriverPainter and into Desktop. Removed all the directly hardware related functions from DisplayDriver API. They just called the same HWInterface functions. Now DisplayDriver is much cleaner and ready for being attached to a yet to be written BitmapHWInterface. Clean up of the display mode stuff in Screen and the View-/AccelerantHWInterface. Frequency is now regarded on Haiku. AccelerantHWInterface::GetModeList now works before SetMode has been called. Added MultiLocker from the sample code. HWInterface uses it now in preparation to being used from multiple instances of DisplayDriver.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 23:46:17 +00:00
Stephan Aßmus
c69d4b2719 clean up, bug fixes and more robustness
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 23:14:40 +00:00
Rudolf Cornelissen
fad6f70b5d added/modified shared_info to (better) support upto 32 3D accelants. Needs to be improved/expanded later though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-19 15:11:42 +00:00
Stefano Ceccherini
10c5dab807 Added client side support for BScreen::RetraceSemaphore() and BScreen::GetModeList(). Server side support isn't yet there, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-18 06:36:23 +00:00
Stephan Aßmus
2734243aca Preparation of more correct support for state stack.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-17 13:20:45 +00:00
Axel Dörfler
8095208973 Added poke driver, courtesy of Oscar Lesta. The "poke" command line application will follow.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 19:12:46 +00:00
Stephan Aßmus
c818183b7e _started_ implementing Tab sliding
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 16:44:58 +00:00
Rudolf Cornelissen
a1d2fb778f modified 3d reload flag to support 32 clones, added clone counter as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 12:47:29 +00:00
Rudolf Cornelissen
512d251741 added shared_info flag to inform 3D add-on to reload it's rendering state.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 10:01:26 +00:00
Axel Dörfler
68dcbfb983 Those commands were used but not defined, obviously some forgot to update this file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 00:58:12 +00:00
DarkWyrm
e67e7dd995 Some cleanups to ColorSet in anticipation of future cleanups for Appearance app
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-15 17:20:17 +00:00
Stephan Aßmus
cf5ff0c0d0 fixed memory corruption in the stuff I added to moreUTF8. This fixes GetEscapement crashes. The rest of the file needs reviewing as well, but I wanted to commit this ASAP
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-15 17:09:00 +00:00
Axel Dörfler
dd10337fd0 Renamed BAppServerLink to AppServerLink, BPortLink to PortLink, LinkMsgReader
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
2005-06-14 21:28:56 +00:00
Axel Dörfler
43ed6aa0db The "shebang" handler is supposed to parse arguments, too - we now do that.
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
2005-06-14 12:39:06 +00:00
Axel Dörfler
be22452f3b Apparently, both load_image() and exec*() support running scripts. We do that
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
2005-06-14 11:23:29 +00:00
Axel Dörfler
b84688be5f Added a basic low memory handler service.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 13:03:54 +00:00
Axel Dörfler
b1a248305b Minor cleanup, changed return type of page count functions (from addr_t to size_t,
as that's more correct).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-13 13:02:24 +00:00
Axel Dörfler
a69e0ac327 The boot item list was not initialized; this was no problem, though, as
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
2005-06-13 13:01:13 +00:00
Axel Dörfler
183dee22cb Unlike R5, receive_data() could return an error code under Haiku - this
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
2005-06-12 11:14:37 +00:00
Stephan Aßmus
9851ab5c1e The Haiku Logo is displayed on the Desktop. :-) Of course this will be removed as soon as Tracker runs. If you don't want it, you can disable it in RootLayer.h. Fixed a clipping bug with text rendering.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-11 13:00:17 +00:00
Adi Oanca
9080b4b47c viewColor, background and overlay bitmaps are not part of a view graphics state anymore
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-10 16:05:34 +00:00
Adi Oanca
15409bba6e added a todo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-10 15:55:49 +00:00
Stefano Ceccherini
ddf2e6ea5f Removed unused message codes. Added a TODO item
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13044 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-10 15:35:43 +00:00
DarkWyrm
fda4af2667 Forgot to check this in. Added a code for _set_system_font()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13032 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-09 16:11:15 +00:00
Axel Dörfler
3ba7d6f350 Added AS_{GET|SET}_DESKTOP_COLOR.
(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
2005-06-08 13:24:40 +00:00
Axel Dörfler
bd28b3c746 BAppServerLink is now using BApplication::fServerTo/From for its messaging.
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
2005-06-08 04:01:59 +00:00
Axel Dörfler
75936a02e4 BPortLink now has a FlushWithReply() method itself.
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
2005-06-08 00:36:26 +00:00
Axel Dörfler
750b92faf3 Almost rewrote LinkMsgSender; it's now much cleaner and works better:
- 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
2005-06-07 22:36:03 +00:00
Stefano Ceccherini
7475dcdf3a Added an app server command to retrieve the color map. Made some adjustments to SystemPalette.cpp, implemented support for it in BPrivateScreen. Moved get_scs() a bit down to avoid a deadlock. Note that getting the colormap doesn't work due to port capacity limit (?)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 21:32:24 +00:00
Stefano Ceccherini
88da217a0b Added a header with menu actions defines
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:34:50 +00:00
Stephan Aßmus
442992bf26 fixed some pretty bad bugs that prevented menus from working (they now do): The BMessage* in AddShortcut is taken in responsibility by the BWindow, so we cannot directly use the message from BMenuItem, the be_app was locked in InitData but never unlocked, it fixes BMenus only working once, and who knows what else it fixes. A little cleanup with _BCmdKey usage, also note that it is inefficient to RemoveItem()s from a list in the destructor of any class using a BList as data container! Simply delete the items and be done with it. The BList destructor will take care of the rest and free its storage in one go.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:19:28 +00:00
DarkWyrm
2e1184a6e4 Undid a change from r12937 to fix building libbe.so
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-05 01:15:26 +00:00
Axel Dörfler
851fc4f198 Private class BAppServerLink now has a global locker, instead of
(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
2005-06-04 17:16:49 +00:00
Stephan Aßmus
59345e264f huge cleanup, support for SetSizeLimits, support for truncating strings, numerous decorator bug fixes, Layer does not draw when view color is B_TRANSPARENT_COLOR, cleaner dispatching of mouse events to the WinBorder in RootLayer, commented the char map selection in the font server, as it seems glyph lookup by unicode index works much better with the default map
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:50:30 +00:00
Stephan Aßmus
7aca21e6bf added const to some operators
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:31:26 +00:00