Commit Graph

1727 Commits

Author SHA1 Message Date
Stefano Ceccherini
418ab0643a Apparently I can't reuse those references, as it leads to every kind of bugs. I wonder if it's just plain wrong or it's a gcc bug. Minor changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 12:35:14 +00:00
Axel Dörfler
84d9f25ac5 The thread renaming was broken under R5. Cleaned it up a little.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 01:58:56 +00:00
Axel Dörfler
9793d44045 Removed superfluous BView::findView() and moved its functionality to BView::FindView().
Fixed it on the way - it's a bad idea to pass NULL pointers to strcmp().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 01:54:12 +00:00
Philippe Houdoin
8e6b7c38fb Add opengl kit to build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-26 21:34:31 +00:00
Philippe Houdoin
006a9e008b Add a first draft OpenGL kit.
The OpenGL software renderer add-on should follow soon.
Allow to link GLTeapot as native, but without renderer, nothing is displayed ;-)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-26 20:21:09 +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
583f6c3eba Added server side support for BScreen::ProposeMode(), fixed client side too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 05:58:43 +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
83f9178dbd Better rounding code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13258 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 02:44:49 +00:00
Axel Dörfler
d2e5d36050 fMenuSem was not initialized, and therefore, the window tried to delete some
arbitrary semaphore on destruction.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 23:18:17 +00:00
Axel Dörfler
014ddc8724 Now also sets fInitError when the app_server did not create the app
(and not only drop into the debugger).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 16:29:51 +00:00
Stefano Ceccherini
ba69a3795b Fixed a possible buffer overflow (thanks Axel). Removed a todo item
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 13:22:58 +00:00
Stefano Ceccherini
557dfeeb12 Implemented CalcFrame() and used it to limit the menu frame's size (actually, only the width for now). This shows that TruncateLabel() works.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 08:41:55 +00:00
Stefano Ceccherini
cab8c0900c Implemented and used TruncateLabel(), courthesy of Olivier Milla. Note that its use is never triggered at the moment, because our menu frame just adapt to any content size, even if it goes out of the screen (!)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13228 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 08:15:54 +00:00
Stefano Ceccherini
de5a23520e Flicker fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 08:14:33 +00:00
Axel Dörfler
8eee00f687 No longer draws hidden views (the app_server still handles them wrong, though,
when they are hidden while being attached to the window).
DrawAfterChildren() is now called at the appropriate place.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-22 17:28:24 +00:00
Stefano Ceccherini
5b6aece60e SendNotices() should send messages also to observers interested to all kind of messages.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-22 08:37:27 +00:00
Stefano Ceccherini
e6629a65a2 Misc cleanups
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-21 09:40:01 +00:00
Stefano Ceccherini
61e19def00 Verified and removed a ToDO item (thanks goes to Olivier Milla)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-20 08:33:30 +00:00
Stefano Ceccherini
d0164ea34a Small style changes, just to improve my commit stats :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-20 08:28:12 +00:00
Stefano Ceccherini
f353b33a85 MenuWindows seems to behave better this way on our app_server. We should either find the right flags/feel combination or test and implement support for kMenuWindowFeel within the app server.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-20 07:45:04 +00:00
David McPaul
5f8e88545e Turned chunk cache back on
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-19 06:01:31 +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
Stefano Ceccherini
cd89e86a9d small change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-18 06:02:35 +00:00
DarkWyrm
53ba0acbb1 Fixed a TODO
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-17 19:20:08 +00:00
Axel Dörfler
1231504465 Fixed various problem of the BSlider class:
- _DrawTriangleThumb() was drawing outside of thumb frame in B_HORIZONTAL mode
- the focus mark was not updated on value changes
- MessageReceived() and FrameMoved() called themselves, resulting in an endless loop
- there were some drawing leftovers when moving the slider around (only in the thumb
  frame). The fix is not nice and may cause flickering (it's commented as such)
- Fixed triangle drawing problems due to anti-aliasing
Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-17 02:33:47 +00:00
Axel Dörfler
f56083d8c0 Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-17 01:45:51 +00:00
Axel Dörfler
dec3c805d9 No uses B_OP_OVER when drawing the arrows - this fixes the broken look
due to anti-aliasing. Have I mentioned that the arrows are very ugly
anyway right now, and don't match the rest of the look? :-)
Fixed a crashing bug in the "pressed button repeater" - it didn't lock
the looper when scrolling the view.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 21:30:34 +00:00
Axel Dörfler
5f8e562f04 Added a ToDo comment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 18:53:24 +00:00
Axel Dörfler
837261c6bb This removes the "error: looper must be locked when quit" message.
I haven't yet fully investigated the looper quitting mechanism in
detail, so there might be more bugs left.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 18:40:04 +00:00
Jérôme Duval
1831c12069 added libdevice.so
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 18:13:40 +00:00
Stefano Ceccherini
00087fc967 small change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 13:05:29 +00:00
Stephan Aßmus
4d67034226 a new graphics state is pushed before calling BView::Draw() and popped after it. So any state changes you do in your Draw() function will be forgotton when you're done, as on R5. I have not done a lot of testing for bugs in the state stack within the app_server though...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 12:37:30 +00:00
Stephan Aßmus
9b0c5e413c fixed a crash into the debugger because the looper was not locked in BMenuBar::Track(), Stefano, please review...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 12:34:46 +00:00
Axel Dörfler
5d914f565f Now uses BLooper::check_lock() instead of BLooper::AssertLocked(), because it
doesn't have to check if the looper is valid (we wouldn't be its child if it
weren't).
ResizeTo() and MoveTo() are not supposed to call FrameResized() and FrameMoved()
manually when the view is not yet attached to the window.
BView::CountChildren() and BView::ChildAt() now check if the looper is locked.
Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13168 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 03:00:44 +00:00
Axel Dörfler
410d5c37d5 Implemented BLooper::check_lock().
Use AssertLock() more often instead of varying debugger messages.
Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 02:56:03 +00:00
Axel Dörfler
1ae95ac872 Mixed up argument order - dunno why this didn't have any effect on R5,
but the frame wasn't visible in Haiku, and rightly so :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13166 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 01:01:23 +00:00
Axel Dörfler
53442520cc Fixed a bad bug in the app_server:
fCurrentLayer was used to determine to which layer a new one would be
added to, but BView::AddChild() would only set this correctly for the
current view, ie. all children of the new child were added to the
wrong layer in the app_server.
Now, AS_LAYER_CREATE sends the parent's token to the server, and the
server relies on this to build the layer hierarchy.
All of a sudden a lot of hidden views are visible now. I noticed the
bug while refactoring the task manager, but a lot of apps were affected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13164 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-16 00:46:02 +00:00
DarkWyrm
5021d2fe30 Added functions to replace current hacks in Appearance to handle decorators
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-15 18:56:02 +00:00
Axel Dörfler
2d4b179de5 Implemented B_TRUNCATE_MIDDLE, since truncate_strings() could corrupt memory
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
2005-06-15 16:49:04 +00:00
Stefano Ceccherini
ba61835820 Fixed submenus for good
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-15 12:09:40 +00:00
Stefano Ceccherini
757ce6e540 Greatly improved BMenuBar::Track(). Now it uses a simple tracking loop instad of two nested loops. BMenu will follow, someday.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-15 11:37:05 +00:00
Axel Dörfler
507ff76a65 Added empty stubs for shutdown_media_server() and launch_media_server(),
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
2005-06-15 04:33:39 +00:00
Axel Dörfler
6a27b3b363 Renamed source files for LinkReceiver and LinkSender to match their class names.
Headers will follow.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 23:10:39 +00:00
Axel Dörfler
0cb92588a8 Made sLocker static, as originally intended.
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
2005-06-14 21:37:03 +00:00
Axel Dörfler
f395db3740 Updated a comment I forgot before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 21:31:30 +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
DarkWyrm
f1fb9c6f5f Added two private functions which are for getting & setting system colors as a set.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 20:49:47 +00:00
Adi Oanca
7faaf6ba8b fixed the viewColor bug
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13120 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-14 15:37:43 +00:00