Commit Graph

13118 Commits

Author SHA1 Message Date
Ingo Weinhold
07b6630b86 Made reading and writing memory overflow safe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 11:19:30 +00:00
Axel Dörfler
a87826801c Added workaround for current stability problems of the app_server: giant lock,
say hello to RootLayer.
Adi will probably not like this, but that's definitely only a temporary solution :-)
This little fix greatly increases app_server stability under Haiku - ie. menus
are working now, the team monitor comes up regularly, etc. - how great is that?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 03:23:16 +00:00
Axel Dörfler
276aa135a7 The size limits are now correctly enforced on window creation, ie. the ResizeLimits
test application now works as it should.
DefaultDecorator::GetSizeLimits() did work correctly, there was no need
to have extra protection limits.
Enabled Stephan's automatic resize code on BWindow::SetSizeLimits() again, and
added a short comment why I think R5's behaviour is just a bug/leftover.
Moved guts of ResizeBy() into _ResizeBy() that doesn't send the update message
to the client, and is now called in the constructor to make sure the border
size is within limits. Also made it work there, as fTopLayer is NULL in that
environment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 02:00:48 +00:00
Axel Dörfler
d4e2c64c2a Added small app that tests window resizing and size limits.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 01:54:27 +00:00
Axel Dörfler
85bd83a710 AS_CREATE_WINDOW now also gets the actual frame width and size limits of
the window on server side - ie. if the app_server could not create a
window of the size requested, BWindow::fFrame will still be correct
(and the size limits will mirror actual decorator limits).
Renamed fMinWindHeight and friends to fMinHeight and so on.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 01:14:39 +00:00
Axel Dörfler
5727f0cfa2 B_WINDOW_RESIZED sends int32 values, not floats.
Made message parsing more robust for a lot of messages.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 00:58:26 +00:00
Axel Dörfler
c17904c587 The B_WINDOW_RESIZED message now looks exactly like it does under R5, ie. has a "when" field, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 00:53:41 +00:00
Ingo Weinhold
047ab3f955 Be on the safe side when checking the size of data to be written to an area (overflow).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13299 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 00:35:28 +00:00
Stephan Aßmus
f8570b7199 substract the border width from minSize, as that is the inner width of the window
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 00:34:51 +00:00
Stephan Aßmus
063f418c53 made room for a new meaning of BitmapBuffer, it will be used for a RenderingBuffer class that wraps arround a ServerBitmap. BBitmapBuffer on the other side is handy as well and wraps arround a BBitmap, as BitmapBuffer did before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 22:11:27 +00:00
Stephan Aßmus
203661c9d0 svn does not do what I want before I commit this... It's going to be renamed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 21:53:17 +00:00
Axel Dörfler
0ed7eba713 Reverted last change, as BFont::IsFixed() does now work properly, thanks to Stefano.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 19:57:16 +00:00
DarkWyrm
175c92ffb3 Updated the resource signature to match the app's signature
Utilize CDDB lookups
Use display controls look similar to LED panels on CD players
Window is resizable and controls respond appropriately
Added support to display elapsed time, both for the CD and the current track
Numerous little bugfixes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13294 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 18:44:34 +00:00
Stefano Ceccherini
9f5ffc2c3c Fixed BFont's GetTunedCount() and IsFixed()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 15:44:47 +00:00
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
08d9a6e30d Some minor work on minimum window sizes. A WinBorder now makes sure it has
a valid size on construction; DefaultDecorator should do that as well.
ServerApp AS_CREATE_WINDOW now makes sure it passes a valid rectangle to
ServerWindow's constructor.
Smaller default size for Layers that have been created with an invalid frame.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 02:06:15 +00:00
Axel Dörfler
0d58f3c284 BFont::IsFixed() doesn't seem to work correctly under the app_server yet
(though the implementation *looks* correct), so I've disabled this check
for now.
This let it draw the data correctly, although the line selection has
artifacts that are not present under R5.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-27 02:01:32 +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
75480b6bf8 Add Mesa & SGI's GLU copyrights.
Still need to investigate about precise GLUT copyright(s) situation.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-26 22:07:18 +00:00
Philippe Houdoin
0017390797 Add dependency to the pseudotarget 'obj' to improve MergeObjectFromObjects rule.
Thanks to Ingo for the hint.
 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-26 21:52:51 +00:00
Philippe Houdoin
d5cf9b7feb Removed GLX headers: was never there anyway!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-26 21:48:15 +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
Philippe Houdoin
9b531940b9 Link against native libGL.so. Native OpenGL headers too.
Changed the app signature to match resource one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-26 15:53: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
Philippe Houdoin
0061feaff0 Import OpenGL kit headers, thanks to Mesa3D project.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-26 13:50:18 +00:00
Stefano Ceccherini
025793417a Added \n to the debug strings, so we get the output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-26 06:26:03 +00:00
Stephan Aßmus
18cbc4ff3d Using the read locking in DisplayDriver was a bit early. Painter itself is not thread safe, so while we use the HWInterface lock for locking, we can only do read locking once each window has its own Painter instance. I'm still investigating this possibility. It depends on the memory foot print of painter, of which I don't have a clear idea yet. Anyways, this quick change fixes Adis problems and is required at this time anyways. Sorry for the inconvenience.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 22:56:24 +00:00
Adi Oanca
e3fbc7752f integration of the new clipping code continues
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 15:45:58 +00:00
Stefano Ceccherini
d06e1bff11 Fixed array initialization.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 14:13:30 +00:00
Stefano Ceccherini
89d0b3cdad Safer code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 13:58:55 +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
Adi Oanca
e603410b82 - simplified a little the update code/process.
- moved part of the update code from Layer to WinBorder. Fits better
there.
- renamed a couple members.
- some cleanup.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 13:09:19 +00:00
Adi Oanca
b62270533e removed a printf
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 08:47:51 +00:00
Adi Oanca
94fa2bd256 inlined a few methods in header file, otherwise app_server would not build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 08:45:00 +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
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
DarkWyrm
238e9fd71b I didn't feel like working on the app_server today. 'Hope Sikosis doesn't mind. :D
Definitely a work in progress, but it'll play CDs at the moment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 21:29:28 +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
Stefano Ceccherini
400a469bd9 Added Marcin Konicki aka Ahw... Shard to the contributors's list
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 17:16:01 +00:00
Axel Dörfler
4fc80701bd Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13264 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 16:15:27 +00:00
Axel Dörfler
a10cf76ef5 Renamed src/prefs to "preferences", as the directory is usually called in BeOS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 15:57:12 +00:00
Axel Dörfler
a44af5321f Added libgame.so needed by Magnify and Sound.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 15:35:00 +00:00
Stefano Ceccherini
171f28336b The device name isn't allocated on the heap, so it shouldn't be freed. This also fixes the crash in case there is no serial mouse. Thanks to Oscar Lesta for providing the fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13261 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 09:28:49 +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
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
5029b563fd Fixed pretty much broken AreaPool - I am not sure this class is that a good idea, anyway.
area_for() is not the cheapest call; the user better knows the area and deletes it directly.
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13257 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 02:13:32 +00:00