Commit Graph
100 Commits
Author SHA1 Message Date
Axel Dörfler 2b1246d968 Renamed AS_WINDOW_TITLE to AS_SET_WINDOW_TITLE.
Fixed handling in ServerWindow as stippi's latest commit broke it.
It's now properly done with a separate ServerWindow::SetTitle() method,
that will also take care to rename the window's thread.
Changed naming the window thread in the app_server to "w:<team>:<title>".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 19:20:19 +00:00
Axel Dörfler 4902831aca Fixed the newly introduced hang when a menu item was selected (which was only one
of the consequences): a forgotten rootLayer->Lock()...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 18:46:59 +00:00
Axel Dörfler 0bb8508592 Stippi's commit accidently changed the initial screen size.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 18:38:12 +00:00
Axel Dörfler 0f8af9d8cb Removed extra version of find_directory() - it is supposed to live in libroot.so,
and in fact, already does it for quite some time :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 18:21:50 +00:00
Axel Dörfler 6a0a0a80da Implemented AS_GET_WINDOW_LIST and AS_GET_WINDOW_INFO.
Renamed Desktop::FindWinBorderByServerWindowTokenAndTeamID() to FindWinBorderByClientToken().
Every ServerWindow now gets a server token.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13455 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 18:14:24 +00:00
Axel Dörfler d76e154b8b Implemented get_token_list() and get_window_info() client side.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 17:30:54 +00:00
Axel Dörfler ef571f678c Cleanup. Added BTokenSpace::GetList(), though it's probably not needed after all
(we can still remove it later if needed).
Added B_SERVER_TOKEN type.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 17:22:35 +00:00
Axel Dörfler f4b64fa6c8 GetToken() did not check for the correct token type.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 14:46:59 +00:00
Axel Dörfler a84bd95ff7 Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13442 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 14:32:08 +00:00
Axel Dörfler dfb4e6ff47 Fixed DrawBitmapAsync() rectangle variants.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13441 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 14:01:47 +00:00
Axel Dörfler 7da4596065 Removed execute property from source files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 13:36:47 +00:00
Axel Dörfler 410e0ccdf7 Removed incorrectly set execute property.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13436 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 03:47:08 +00:00
Axel Dörfler 149a5ffcba Fixed build for target haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13435 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 03:46:42 +00:00
Axel Dörfler 06fe6a428c The _menu_info_ptr_ is now initialized correctly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13434 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 01:42:56 +00:00
Axel Dörfler f5d8fa6e60 AS_LAYER_GET_CLIP_REGION missed a Flush() in case the view was not hidden,
and that put apps that used it to sleep (for example, Tracker is using it).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 01:19:01 +00:00
Axel Dörfler b1e04bcb5c The app_server now also quits fast in case there are no apps to quit... :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 01:02:32 +00:00
Axel Dörfler ae8de5211d Fixed an obvious bug in _checksum_() that isn't triggered by its current use:
"temp" was added to "sum" in the loop, so that some int8 values were taken
into account more than once.
Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13431 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 00:59:27 +00:00
Axel Dörfler b1e14283b4 The stream was reused later, so it was a dumb idea to not include the
magic in it (it was written twice then, later).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13430 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 00:57:33 +00:00
Axel Dörfler 749a772b97 Accidently broke BMessage::_SendFlattenedMessage() with the last commit;
the magic is not part of the header anymore when read from a stream (because
BDataIO does not support seeking, and we need to know the magic before actually
reading the header).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13429 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 00:03:18 +00:00
Axel Dörfler dc9e836b35 *Very* basic read-only Dano/Zeta message support. Only briefly tested.
Not really suited for message sending/retrieval (because target stuff is
missing), but should work more or less with disk based messages.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13428 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-04 21:41:41 +00:00
Axel Dörfler bc1a7f9f09 Now prints out a message when the window title should be set.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 18:29:20 +00:00
Axel Dörfler 41c719936b Fixed SetLook() (is not implemented server-side, though).
Finally got the thread rename code right under R5 8-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13391 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 18:26:18 +00:00
Axel Dörfler 1b36d9d743 The TEST_MODE and non-TEST_MODE code is now the same, only the modifiers/keys
are different. Therefore, workspace changes should work on real hardware as
well now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 11:22:58 +00:00
Axel Dörfler 0a7d4d9991 Moved the move-window-on-screen code into PulseWindow::MoveOnScreen().
When you change the appearance during runtime, the screen location is
now checked again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 11:03:43 +00:00
Axel Dörfler c030c6fa68 As the comment says, deleting the cursor is not necessary.
But since every single cursor is owned by a team - why the cursor manager?
I must overlook something...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13385 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 10:13:50 +00:00
Axel Dörfler 3870c9f18f Improved quit mechanism (for the last time): if an application had open
windows that wouldn't quit on demand, the app_server would have gotten
the kShutdownServer message anyway already (as the last app was quit).
Since that one removed things like gDesktop/gBitmapManager, it liked
crashing.
Now, there is a semaphore that will be send to each app on quit. Only
when this semaphore can be acquired, the shutdown message will be sent.
Removed unused semaphores (decorator, active app).
Replaced fAppListLock with a BLocker (just calling acquire_sem() without
error checking is very unsafe in userland, and should never be done).

BTW the bug was triggered by broken menu code that only sometimes
really quit the window; it leaves a whole lot of zombies around - Stefano,
any quick idea? :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 10:09:11 +00:00
Axel Dörfler 37fa302a92 Also commented some unimplemented message handler to not break the reply mechanism.
The ServerWindow did not even have such a mechanism anyway... (it now has).
Minor cleanup, replaced some "delete" with "delete[]" where appropriate.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13382 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 08:50:45 +00:00
Axel Dörfler 1e1b96cdc1 Rather than a "case message: /* unimplemented */ break;", we should not
handle the case at all to give the server the possibility to send a
failure response - ifdef'd some code out.
Added comment to ServerApp::PingTarget(), because what it currently does
does not make any sense.
Minor cleanup (replaced fSignature.String() with Signature()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 08:48:51 +00:00
Axel Dörfler 1786706696 You're not supposed to delete bitmaps yourself; you have to let the
bitmap manager do the job.
This fixes a possible crashing bug on quit, a giant memory hole, and
probably also a possible crash during runtime.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 08:10:42 +00:00
Axel Dörfler 5712a788a1 WorkspacesLayer now makes use of DisplayDriver::ConstrainClippingRegion() in
order to flicker less (which works, but it's not really that nice yet, as
it currently only works for the background).
The workspaces layer is now also invalidated if a new window appears on the
screen or goes away (also when this happens in another workspace).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13379 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 07:58:22 +00:00
Axel Dörfler 24a146d4f6 Small hack to get to know the code a bit better.
A view-only workspaces window support (with lots of drawing flicker) - this
means you see what happens in the workspaces, but it doesn't do anything if
you click on it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13378 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 06:53:07 +00:00
Axel Dörfler 86fa5942b1 Added a LinkReceiver::Code() method, that can be used to retrieve the
code of the current message.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 06:50:09 +00:00
Axel Dörfler f598d348b1 A window thread is now called "w:<title>" instead of just "<title>".
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 06:44:39 +00:00
Axel Dörfler 0160c6fbda Fixed minor drawing problem of the on-screen KDL: in NO_CLEAN mode, the first two
lines would be left untouched instead of cleared before use.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13375 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-01 06:42:07 +00:00
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
Axel Dörfler e970b839a0 Disabled B_USER_CLONEABLE_AREA for now - maybe this should be handled via kernel settings later.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13372 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-30 23:14:13 +00:00
Axel Dörfler 8bc4973900 Some cleanup and bug fixes: the length of the bits in BBitmap::SetBits()
was way too much, new[] was used, but not delete[].
The font size is now adapted to the processor/vendor strings, looking
much better now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-30 23:05:55 +00:00
Axel Dörfler 793b31c5fd Fixed BView::SetFontSize() - only the internal font state was changed,
no one told the app_server about it (ie. StringWidth() would work
correctly, but the app_server would ignore the font size).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-30 23:02:34 +00:00
Axel Dörfler 0b2dbe7d46 Someone wrote the argument parsing code that may set argv[i] to NULL...
Patch submitted by Philipp Schmid.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-30 20:42:35 +00:00
Axel Dörfler 1a3f15e929 Doh, it's Team Monitor - not Task Manager :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-30 17:46:34 +00:00
Axel Dörfler c0614f3291 Ported r13366 back from the R5 BFS to the Haiku BFS: fixed bad bug in the journaling
code, the super block log data could have been wrong. Moved the doubly linked list
code to the kernel's util/DoublyLinkedList.h.
Also removed Journal::fCurrent, as it's not really used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-30 16:38:37 +00:00
Axel Dörfler 2921880701 Fixed a bad bug in the journaling code: set_blocks_info() was called before
the super block was written back. This had a big race condition when all
blocks in the transaction were written back before the super block was
written. In that case, the log info part of the super block got out of
sync and was plain wrong (eventually causing the disk to be unmountable).
Also moved the list code over to the kernel's DoublyLinkedList.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-30 16:23:56 +00:00
Axel Dörfler 597aa5f24d No longer draws any lines over the thumb area in B_BLOCK_THUMB mode.
It's now completely flicker-free in that mode, all known drawing bugs are gone.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 23:08:57 +00:00
Axel Dörfler 9b030c1d2d Looks like I'm on a run: forgot to commit Jamfile :/
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 23:05:05 +00:00
Axel Dörfler 6355993de9 No wonder I had to remove the grist to make it build.... :-)
Thanks John!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 22:35:04 +00:00
Axel Dörfler a66e28b1ff B_BLOCK_THUMB style actually deletes the background, so it's safe to exclude
its region when clearing the background in Draw().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13352 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 15:53:46 +00:00
Axel Dörfler 6f54957024 The bar background was still drawing over some border lines which could cause flickering.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13351 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 15:46:16 +00:00
Axel Dörfler 39b86d2a8e The SliderTest now also uses our own BControl, as that doesn't invalidate the
whole frame in SetValue().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13350 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 15:28:41 +00:00
Axel Dörfler d2f968ec96 Fixed build of ideinfo, moved it into its own subdirectory.
Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 15:14:08 +00:00
Axel Dörfler f8f63bc7eb Buidl fix, courtesy of John Drinkwater.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13348 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 14:57:29 +00:00
Axel Dörfler 002af7f9c0 Fixed build of usb_hid, partially by John Drinkwater.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 14:52:47 +00:00
Axel Dörfler ce98205af5 Build fixes, mostly by John Drinkwater - looks like he's cleaning up behind me :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 14:48:13 +00:00
Axel Dörfler 7af7a22216 Fixed the remaining drawing bugs the test app revealed.
The block thumb frame is now left out when the bar background is filled
which reduces flicker.
Also, the background fill draw over the region occupied with the border
lines which also caused flicker.
The border lines still draw over the thumb area, and thus, may cause
noticeable flicker there when moving it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 13:03:58 +00:00
Axel Dörfler 09196077b8 This fixes some of the drawing bugs; those were only visible under BeOS, though (both R5 + Dano).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 12:26:17 +00:00
Axel Dörfler c280e11b89 The update region for B_VERTICAL orientation is different; it now
also works correctly when fUseFillColor is used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 02:20:12 +00:00
Axel Dörfler a00fcbcdf8 Improved BSlider class:
- rewrote GetPreferredSize(), it now actually works correctly
- BSlider is certainly not supposed to resize itself on creation
- fixed BarFrame() and ThumbFrame() to support a different view frame
  than the ideal one
- added SetBarThickness() support
- refactored constraining the mouse point to _ConstrainPoint() - it's
  now used by MouseDown() and MouseMoved() - because of that, tracking
  now works with vertical sliders as well
- still has some drawing problems, but less
- _ReservedSlider4() was defined public for the R5 build
Cleanup, more or less rewrote the header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13342 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 02:12:42 +00:00
Axel Dörfler d40d872486 Extended test app a bit, added R5 version to the build for comparison.
Seems like Be's slider doesn't work that well for B_VERTICAL orientation either.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 02:08:13 +00:00
Axel Dörfler f269841c3b Added a BSlider test application - our BSlider class needs definitely some work :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13340 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-29 00:23:12 +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 33bff18326 Removed obviously accidently set execute property from source files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 23:38:36 +00:00
Axel Dörfler 900a549127 Only overrides BSlider::DrawBar() if compiled for BeOS (would look okay under R5, too, though).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13337 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 23:29:04 +00:00
Axel Dörfler 1d0f02b4ac Fixed some drawing problems (only visible when fUseFillColor was used, or
when DrawBar() was overridden).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13336 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 23:24:27 +00:00
Axel Dörfler b7596f59ec AS_LAYER_GET_STATE no longer sends stuff that doesn't belong to the layer's state.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 23:03:28 +00:00
Axel Dörfler bb1336b44f Some refactoring and cleanup:
- renamed some members and methods to fit our style guide
- moved removeSelf() to RemoveSelf() (as those two are essentially
  the same), and fixed it on the way: the state of the child views
  is now also updated by the new _UpdateStateForRemove() method
- Moved BWindow::sendPulse() and activateView() to BView::_Pulse()
  and BView::_Activate()
- some minor stuff

This also fixes the broken previous commit - I forgot to update
View.h; this update contains the previous changes as well. Sorry
for the inconvenience.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 23:02:44 +00:00
Axel Dörfler 3783821c25 Fixed B_CONTROL_HIGHLIGHT_COLOR/BORDER_COLOR. Changed highlight color from Dano value
to something for R5 (ie. what DiskProbe is using).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 21:52:32 +00:00
Axel Dörfler a79f112e9b Sorry for the broken last commit.
We can always link against libroot.so, there is no need for this special case.
Also fixed line breaks: please try not to commit DOS line breaks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 20:13:24 +00:00
Axel Dörfler 086240f26d The work-around is no longer needed; but since restoring the high
color only is cheaper than a full PushState()/PopState() we'll
continue to use it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 19:20:03 +00:00
Axel Dörfler 9d8e148146 Fixed BView::LeftTop() - it certainly shouldn't return 0;0 only :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 19:13:00 +00:00
Axel Dörfler 3c336bbe89 The old Jamfile was fine and is certainly able to build AboutHaiku under R5;
reverted last change.
Please, if you intend to build an application for R5, make sure that the build
target platform ($TARGET_PLATFORM) is set correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 19:12:15 +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
Axel Dörfler 0c26ddbc29 The MenuBar background is now drawn correctly when selected.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 15:11:58 +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
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
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
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
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
Axel Dörfler 0faef3aff9 Just to prove my point :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13256 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 02:00:26 +00:00
Axel Dörfler 8ba7bedb43 Minor cleanup.
Since we will (almost) definitely forget some names, shouldn't we say sorry to be on the safe side? :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13255 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 01:56:38 +00:00
Axel Dörfler d830c752cc Added missing team lead Michael Pfeiffer!
Added Michael Phipps to the list of contributors - at least he did
some coding some time ago ;-)) Anyone still not listed?
Applied the missing bits of our style guide (at least he tried :-)).
Removed the CPU detection code, as we have one at a central place
(headers/private/shared/cpu_type.h).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13254 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-24 01:48:44 +00:00
Axel Dörfler 1b53e8af26 The app_server now cleans up better after a team crashed; not only the
application and bitmaps are removed, the team's windows are now removed
as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 23:21:10 +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 ce1639b2bf Some more cleanup:
- replaced fMsgSender/Receiver with a BPortLink fLink
- moved message loop into non-static method _MessageLooper()
- renamed Zoom()/Minimize()/Quit()/ScreenModeChanged() to Notify*(), and
  Quit() to NotfiyQuitRequested() to make more clear what they do (they
  don't operate on ServerWindow, they just notify its client)
- less insane way to init a window: there is no longer the constructor
  and a separate method Init(); now there is the constructor (which
  fully sets up the window), InitCheck(), and Run() which runs the
  window's message loop
- moved the quitting stuff into a separate method Quit() and made
  it callable from other threads.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 22:43:11 +00:00
Axel Dörfler a38e46a046 ServerApp now maintains a list of all windows, ServerWindow's AS_DELETE_WINDOW
will update it automatically.
Renamed ServerWindow::fName to fTitle, made it a pointer - it will now just
adopt the title pointer that came from AS_CREATE_WINDOW.
Just another cleanup round: renamed Layer::GetName() to Name(), no
more layer->fName->String() accesses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13239 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 18:48:10 +00:00
Axel Dörfler fcb006dcf5 Rewrote how the app_server and ServerApp's quit. As a side effect, the server
can now quit instantly.
AppServer must no longer call ServerApp's destructor once it's running - it now
has to call Quit() in this case. The ServerApp is now destructed in its own thread.
Some cleanup (like renaming ServerApp::MonitorThreadID() to Thread()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-23 17:40:35 +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
Axel Dörfler 2e86adec11 Implemented AS_GET_MODE_LIST server side.
Fixed broken ViewHWInterface::GetModeList() - it did not correctly write into
the allocated memory. Also extended it to be more flexible, has better timing
values, and more resolutions.
ViewHWInterface::SetMode() will now check if the requested mode is in its
list of supported modes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-22 18:14:13 +00:00
Axel Dörfler 05a710320d MonitorView now takes anti-aliasing into account.
Hide TV menu *before* adding it to the window, or our app_server does it all wrong (temporary work-around).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-22 17:30:27 +00:00