Commit Graph

2818 Commits

Author SHA1 Message Date
Jérôme Duval
efc97b9894 made several inherited methods virtual
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27993 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-12 13:07:01 +00:00
Axel Dörfler
3add2e79b7 * If you click on a window in the Workspaces view, it won't move until you
move the mouse a bit more. This should help with "fast" workspace switches
  when you click on a workspace and accidently move the mouse a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-11 20:06:04 +00:00
Stephan Aßmus
f7d800884d Polished the rendering of the miniature windows in Workspaces.
* The window names are now drawn.
* The window scaling is improved to avoid wobbly placement
  when windows move slightly.
* The tab rect is scaled to size, not a single line.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27976 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-11 18:25:36 +00:00
Stephan Aßmus
877f6beaec zuMi was at it again and created a cool icon for the mail_daemon. Almost a pity
to use this gem for a background application. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-10 19:14:20 +00:00
Axel Dörfler
54f92239a2 * The ServerWindow now memorizes the original BDirectWindow feel when switching
to full screen. Since BDirectWindows can have any feel, this does now
  correctly restore it instead of always reverting to B_NORMAL_WINDOW_FEEL.
* This fixes part of bug #2808.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-08 07:46:27 +00:00
Stephan Aßmus
dc2da019f9 zuMi created a pretty awesome icon for the debug server. It could be improved
(for better silhouettes), but I think it's pretty cool as is! Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27915 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-07 21:48:37 +00:00
Stefano Ceccherini
36bc11a79f I'm getting old. Without this change, bug #2350 was still with us. Sorry for forgetting to commit this
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-07 13:06:16 +00:00
Stefano Ceccherini
bebd82c2b2 should've been part of r27898
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-07 05:51:09 +00:00
Stefano Ceccherini
0dcbaee24a Screen was assuming setting a 800x600 mode would work anyway, but currently the Intel driver only supports the 'native' mode for laptop panels. Added a 'strict' parameter to SetBestMode which, if true, fails if it doesn't find any mode with the passed width. If false, and can't find any good mode, just uses the first mode in the list (could be improved). This fixes bug #2350
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-07 05:47:57 +00:00
Stephan Aßmus
aed05d6cf6 * Added Syslog daemon icon by zuMi. Slight tweaks by myself.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-04 17:29:17 +00:00
Axel Dörfler
1b910a79a2 * Since the "restart"/"shutdown" alert has the inconvenient consequence that the
shutdown process is entered (ie. you cannot start new applications anymore),
  I changed its window feel to normal to make it possible to let it appear on
  all workspaces.
* We should think about if simply letting it enter that phase later isn't the
  better solution, though. Opinions welcome.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-01 16:45:59 +00:00
Stephan Aßmus
ea2317a80c * Tweaked registrar icon to make 16x16 version slightly clearer.
* Added icon to the registrar.
* Updated copyright years in version info.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-01 14:23:22 +00:00
Stephan Aßmus
165e3a7944 * Tweaked MediaServer icon a bit to improve gradients and make the 16x16
icon a little clearer.
* Applied icon to MediaServer rdef. Removed original BeOS icons. Updated
  copyright years.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27815 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-01 11:29:02 +00:00
Karsten Heimrich
611c6ed977 * forgot this file...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27803 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-30 21:56:31 +00:00
Karsten Heimrich
3580c2cf12 * remove png dump from app_server
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27802 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-30 21:49:20 +00:00
Stefano Ceccherini
e32494d24f Check for NULL before dereferencing the pointer. CID 1050
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-25 13:56:50 +00:00
Axel Dörfler
95deefbf66 * Fixed wrong indentation and spacing.
* Enlarged default port size to 50.
* Added license header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-18 13:12:22 +00:00
Stefano Ceccherini
632f1504a8 assign a token to the ServerPicture before anything else. If something fails to initialize, we can still search the picture via token
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-17 07:35:00 +00:00
Michael Lotz
173563d537 Update fallback mappings after removal of BitStream fonts. Not sure these are needed at all though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-16 21:10:30 +00:00
Stefano Ceccherini
a57b0996eb cleanup and return in error case, otherwise a stale style pointer could be added to the family. CID 1246
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-15 12:26:43 +00:00
Michael Lotz
bbe2597fb6 CID 18 and CID 19: Fix leaking the cursor data.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 16:39:11 +00:00
Michael Lotz
246a908734 * CID 1012: Fix leaking the OffsetFile in case it fails to initialize.
* Use std::nothrow (the rest of the file already used it).
* We also have to keep the source file around and properly dispose it, as
  OffsetFile doesn't take ownership of it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 16:30:48 +00:00
Michael Lotz
3e8d3c5f98 * CID 1090: Check the view pointer for NULL before dereferencing it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:55:15 +00:00
Michael Lotz
fccbe8f1a1 * CID 525: Check the return of _UpdateModeList() as otherwise fModeList can
still be NULL although it is used further down.
* CID 526: Check the front buffer to be available before using it in SetMode().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:51:16 +00:00
Michael Lotz
7c618f130f Remove accidentally introduced whitespace in last commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:30:19 +00:00
Michael Lotz
8050519bed CID 157: Fix usage of *covers instead of cover which in this case indeed is NULL
and should have lead to a crash.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:28:31 +00:00
Michael Lotz
4071a5a97b CID 930: Fix memory leak in error case.
Note that this file has a completely different coding style, violating ours for
consistency until the whole file can be cleaned up.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 15:22:30 +00:00
Ryan Leavengood
9b54ac7464 Fixing CID 1305: the null check of fPageFormatText on line 483 was redundant
since fPageFormatText is accessed in both branches of the if before the null
check. If it was actually null there would be a crash well before line 483. In
addition this member is initialized in the constructor. I assume the null check
was added to provide symmetry with the null check of fJobSetupText below it.
But that latter null check is needed since fJobSetupText may not have been
created in the constructor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27427 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 04:13:30 +00:00
Stefano Ceccherini
de2dcd9ab0 fixed another round of gcc4 warnings
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27399 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-10 09:13:02 +00:00
Stefano Ceccherini
bb549f1c81 Implemented dummy FontStyle::IsFullAndHalfFixed(). Freetype doesn't seem to offer any api to be able to tell such a font from others
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27398 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-10 09:02:59 +00:00
Ingo Weinhold
d29be7f320 * CID 153 (line 754): delete array with delete[].
* CID 152 (line 796): delete array with delete[].
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-09 21:32:15 +00:00
Stefano Ceccherini
8b330bfe28 Should have been part of the previous commit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-09 09:54:07 +00:00
Stefano Ceccherini
5f8c1a0244 Remove unused RamLinkMsgReader. Its functionality was integrated inside LinkMsgReader/Sender by Julun.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-09 09:53:27 +00:00
Karsten Heimrich
2982ae5d1a * comment the code that prevents programmatically resize events during
a user resize, this makes ArtPAint's tool pallete window resize properly

  Thanks Stephan for explaining me two time what to look for  :)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-08 20:23:00 +00:00
Michael Lotz
57665c6ef2 Respect B_NOT_MINIMIZABLE in the default decorator. Maybe we should recheck all the flags in the window code though instead of relying fully on the decorator.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-08 08:33:49 +00:00
Jérôme Duval
212426b00e fix warnings
white space cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-03 20:58:19 +00:00
Jérôme Duval
c08e99ef40 print errors when starting devices
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-03 19:12:18 +00:00
Stefano Ceccherini
52b877461d Apply the same logic of r24682 to the drawing of BPictures inside BPictures. Fixes part of bug #1389 (drawing pictures at an offset). Thanks to Karsten for his observations!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-01 14:43:25 +00:00
Karsten Heimrich
3bc4dacf9a * We need to update the drawing state in case SetHighColor, SetDrawingMode etc.
is called after BeginPicture on a freshly created view.

  This is necessary because a second invocation on this view with BeginPicture
  would have caused ServerPicture::SyncState to write the default drawing state
  into the picture. This happens because to BView had now cached the values and
  therefor won't go to the app_server and tell about the change. The first call
  did not change anything as picture recording is handled in _DispatchPictureMessage
  while view changes that modify drawing state are handled in _DispatchViewMessage,
  thus leading to default draw state values beeing written.

  This fixes invalid ticket #2534.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-28 12:01:46 +00:00
Karsten Heimrich
4e61552ecd * first implementation of passing data via area to app_server
this makes printing of large images work, fixes task #1067



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-27 13:39:16 +00:00
Stefano Ceccherini
139f143c62 fixed warnings. Maybe we should do all the calculations in ints instead of using floats
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-26 06:59:00 +00:00
Bruno G. Albuquerque
ec44f528d8 - Added handling for the table of contents (toc) attribute. Now it is ready to
retrieve CDDB information. This is coming as soon as I have real time (as
  opposed to some minutes during lunch) to work on it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-25 17:43:10 +00:00
Stefano Ceccherini
c63991d1f5 fixed warnings
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-25 15:07:14 +00:00
Stefano Ceccherini
d02fd30b90 We were leaking memory every time a BPicture was drawn. Also check if the allocations succeeded. Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-25 13:57:29 +00:00
Jérôme Duval
65e6fe82ad better check the size of the chars table for keymaps. this avoids crashing in #2659.
dunno why the keymap is invalid though


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-24 12:28:27 +00:00
Stephan Aßmus
fe34b1990b * Fixed bug with cropped scaled bitmaps, the wrong offset was used. This fixes
a regression in MediaPlayers peak display where the last row of pixels was
  wrong.
* Fixed clipping rect bugs in the new bilinear scaling loops, the last row
  and/or columns don't always need special treatment, only if they map to the
  last row and/or column of the destination bitmap.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-23 14:30:57 +00:00
Stephan Aßmus
c1111e046b * When playing with the MediaPlayer and toggling bilinear versus
nearest neighbor scaling, I noticed that the bilinear version
  actually used less CPU than the generic AGG code path with nn
  scaling. So I wrote an optimized nn scaling routine for nn
  based on the bilinear scaling code. So the indices into the
  source bitmap are cached. I don't know if this is the optimal
  nn scaling routine, but the CPU usage dropped significantly.
  Only B_OP_COPY is optimized as of yet.
* Optimized the bilinear scaling. When more filtered pixels than
  unfiltered pixels are anticipated, the loops are unrolled to
  special case the very last row/column and bottom right pixel.
  This eliminates the branches in the loops.
* Fixed a bug with partial scaled drawing of bitmaps when it
  used the bilinear scaling, the bitmapShift was in the wrong
  direction.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27169 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-23 11:09:15 +00:00
Jérôme Duval
97686ecc7a also sanitize events added by filters, to be checked with methods too.
this fixes bug #2611


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27162 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-22 22:30:11 +00:00
Michael Pfeiffer
4523512663 Print jobs whose transport add-on is either "Print To File" or not set at all (in case of "Preview" printer) are not processed sequentially.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-21 20:16:24 +00:00
Bruno G. Albuquerque
233871e4d4 - Yet another style fix. This is getting old. :) Thanks Axel (again).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-21 14:28:20 +00:00
Bruno G. Albuquerque
5ec5b4f201 - As expected, style fixes. Thanks Axel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27105 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-21 12:37:31 +00:00
Bruno G. Albuquerque
82427071c1 - Added skeleton for new cddb_server.
- Includes all relevant handling of CDDA exported attributes so you guys can
  see where I am going with this.
 
CDDB handling (including server connection, request and response parsing)
will come up next. In the future we will also have a configuration panel
and a Deskbar replicant for controlling it.

Do we really have to edit the Jamfile in the parent dir to get something
building with our build system?



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-21 02:33:19 +00:00
Jérôme Duval
3658735727 fDeviceAddons wasn't maintained correctly. this fixes #2610
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-20 23:07:08 +00:00
Axel Dörfler
345d8c9ff0 * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-13 12:59:18 +00:00
Axel Dörfler
f1efe9b3d2 * The string length of the UTF8 ellipsis was incorrect (would have been 3).
* Whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26961 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-13 12:53:25 +00:00
Axel Dörfler
d689f4578d * Fixed a possible deadlock in Desktop::_ActivateApp(): since ActivateWindow()
will need to write lock the window lock, we cannot call it with the read
  lock held.
* Added a TODO comment in _ActivateApp() on how we could handle minimized
  windows.
* Added a WindowList::Count() method.
* Added a WindowList::ValidateWindow() that you can use to validate a window
  pointer in case you had to unlock the list.
* Made FirstWindow()/LastWindow() const.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-13 09:00:36 +00:00
Axel Dörfler
b31df46fd2 * The window title now uses B_TRUNCATE_MIDDLE instead of *_END.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26954 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-12 21:07:28 +00:00
Axel Dörfler
ae0606be74 * Added two more private InterfaceDefs functions: get_application_order(), and
get_window_order() will retrieve the application respectively window order
  on the selected workspace.
* Moved private BeOS compatible functions (as used by the Deskbar) into the
  private WindowInfo.h header.
* Whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-12 17:39:42 +00:00
Axel Dörfler
a8f4e1d0fd * _ActivateApp() did not lock the window list while traversing it.
* It will now first iterate through the windows on the current workspace to
  choose the topmost window of this team (for this, it would be nice to have
  a sorted list over all windows/workspaces).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-12 17:33:32 +00:00
Axel Dörfler
44cd4a02c7 * Deskbar's Switcher had an explanation what the window_info::layer field is
about. ServerWindow::GetInfo() now fills in that value following this logic
  as well as further testing.
* Whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26942 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-12 13:44:17 +00:00
Axel Dörfler
547a7d1844 * Since ShowWindow() could call ActivateWindow() again as well, we should
better call Window::SetMinimized() before calling it from there.
* And since ShowWindow() calls _SendFakeMouseMoved(), we also better don't
  call it with the window lock held, or otherwise we would potentially cause
  a deadlock.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26760 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-03 16:19:25 +00:00
Axel Dörfler
518056893e * BWindow::Activate() now also unminimizes a window if necessary.
* Removed superfluous white space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-03 15:49:02 +00:00
Axel Dörfler
3a83c7b181 * Coding style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26756 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-03 15:42:32 +00:00
Stephan Aßmus
59e13a3f06 Patch by Andrej Spielmann (GSoC):
* Simplified the subpixel related methods for the AGG "pixel format" template
  interface, the ones for the solid cover simply pass through the existing
  methods, so only one subpixel blending function is left which does the actual
  work (this removes a lot of the previously added code)
* Implemented a new rasterizer based on the original AGG rasterizer which
  implements subpixel anti-aliasing for any generic AGG vector pipelines. It
  is now optionally used in Painter and AGGTextRenderer (for vector fonts, ie
  rotated, sheared or big enough fonts) depending on the global subpixel
  setting.
* Put all subpixel variables into the new GlobalSubpixelSettings.h|cpp
* Simplified DesktopSettings related classes a bit and renamed previous
  FontSubpixelAntialiasing to just SubpixelAntialiasing.
* The private libbe functions for subpixel related settings moved from Font.cpp
  to InterfaceDefs.cpp where other such functions live. They are not related
  to fonts only anymore.
* Removed the subpixel related settings again from the Fonts preflet and added
  them to the Appearance preflet instead.

All of the above implements subpixel anti-aliasing on a global scale, which
to my knowledge no other OS is doing at the moment. Any vector rendering
can optionally use subpixel anti-aliasing in Haiku now. The bitmap cached fonts
are still affected by the Freetype complile time #define to enable the patented
subpixel rasterization (three times wide glyphs). Vector fonts and shapes are
not affected though at the moment.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-03 13:40:41 +00:00
Axel Dörfler
d2d52d31ab * Made _LaunchInputServer() more robust: when launching by signature fails,
we try its well-known location directly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-01 14:02:02 +00:00
Oliver Ruiz Dorantes
bbe098994d Wrong blackboard calculation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-31 21:59:06 +00:00
Oliver Ruiz Dorantes
b48fa68ace Fix bluetooth_server debug window tabs, they were getting out of bounds due the index assignation
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-31 21:03:17 +00:00
Axel Dörfler
188233b954 * Removed execute property - I wonder why this file is located in this directory,
though; it shouldn't be in here.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-29 12:44:24 +00:00
Stephan Aßmus
e196501316 The Y check can be moved out of the loop of course, why didn't I see this
before?! Is about 4% faster than before. If anyone sees a way to make it faster
yet, please shoot! I can watch movies fullscreen on a 2 GHz Core 2 Duo in
VESA with bilinear scaling, but it would be nice to use less CPU... :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-28 21:30:26 +00:00
Stephan Aßmus
162a7f5f8e * Implemented new BView drawing functions DrawBitmap[Async](
const BBitmap* bitmap, BRect bitmapRect, BRect viewRect, uint32 options).
  Only option so far is B_FILTER_BITMAP_BILINEAR.
* BView::DrawBitmap[Async](const BBitmap* bitmap, BRect viewRect) was accessing
  the bitmap pointer without checking it. Would therefore crash when passing
  NULL, unlike the other methods.
* The BPicture code already reserved room for the BBitmap flags, but did not
  store the actual flags and neiter use them for anything. Since the bitmap
  data is stored anyways, the bitmap creation flags do not matter. So I reused
  this for the new bitmap drawing options.
* Rewrote Bitmap.h and removed the B_BITMAP_SCALE_BILINEAR flag again.
* Tried to optimize Painter::_DrawBitmapBilinearCopy32() a little by giving
  the compiler better hints. There seems to be a marginal, possibly imagined
  speed increase < 0.05 ms. ;-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-28 18:58:30 +00:00
Stephan Aßmus
42ed4fd712 Rearranged includes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26664 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-28 18:51:57 +00:00
Stephan Aßmus
7832e54913 Use #ifdef instead of #if
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-28 12:01:15 +00:00
Stephan Aßmus
28291e331b * Forgot the case in the filter loop where only the top and bottom pixels
need to be interpolated because the x index is right on a source pixel. This
  prevents the out of bounds access for the second to last row in the last
  column. Also the rightmost pixels where incorrectly interpolated with the
  leftmost pixels of the next row. And it actually helps speed too of course.
* Added a compile time option to allocate the filter weighting and index
  caches on the heap instead of the cache. I am not sure if it is a problem
  though, I recall Haiku threads have quite a lot of stack space. The needed
  memory depends on the target size. For a screen with 1920x1200, the caches
  would need 12.5 KB. Allocating them on the stack saves about 0.2 ms on my
  test system. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26656 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-28 11:28:19 +00:00
Stephan Aßmus
b6328ba587 Implemented an optimized version of bilinear scaled bitmap drawing for
B_OP_COPY which is about 2.4 times faster than the AGG version (but of
course less generic). The speed up is even better for smaller and even
scales.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26652 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-27 23:58:20 +00:00
Stephan Aßmus
eb0a177af3 Updated documentation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26651 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-27 09:28:28 +00:00
Stephan Aßmus
dcd70f0e39 * Introduced new BBitmap flag B_BITMAP_SCALE_BILINEAR.
* When drawing BBitmaps with scaling in the app_server, use a bilinear
  filter when a bitmap has this flag set. (Hope nobody objects, otherwise
  I can revert or improve this. Performance can certainly be improved, since
  the AGG implementation is too generic. But that goes for the nearest
  neighbor implementation as well.)
* Flags are uint32, fix app_server side code to declare them correctly. Use
  appropriate link methods in BBitmap and ServerApp.
* Enable the BeOS compatibility mode for B_RGB32 (works just like B_RGBA32
  in B_OP_ALPHA mode).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26649 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-26 23:40:13 +00:00
Karsten Heimrich
0ca6b749f4 * merge parts of libprint and libprintutils to make both indepentend
* adjust all drivers to take that into account
* fix UpdateText() signature in JSDSlider to avoid warning



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26648 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-26 22:36:01 +00:00
Oliver Ruiz Dorantes
585f2ec681 In some cases the remote name request is never returning us the event containing the name. It fails, the reason could be that the command has some differences in the fields depending on the BT version. This is handling the error code properly in this fail case avoiding the wait.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-25 19:37:19 +00:00
Oliver Ruiz Dorantes
0e5e9538e0 Make more clear the output when removing fields from a request
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26636 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-25 19:27:32 +00:00
Oliver Ruiz Dorantes
3205e523cd Implement pairing with a remote bluetooth device
- Fix PincodeWindow to send the pincode commands dissapear after clicking 
- Improve the debug output of bluetooth_server
- Handle all needed events for the pairing
- Simple request could send and receive the event before adding the request to the events wanted list. Inverted the order of this sequence.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-24 20:50:49 +00:00
Karsten Heimrich
12fd6cc2e7 * move libprint sources into libs, as it is a 3rdparty lib
* move libprint headers into libs headers folder accordingly
* merge all shared folders sources into kits print, we might build later on a
  real print kit, propably also to access cups from an nicely API, atm static
* move all shared headers into private print, also pr_server.h from interface
* adjust build to work with the changed folder layout



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 20:30:14 +00:00
Stephan Aßmus
1f855f9696 Implemented a double buffered mode for the case that the screen is 32 bit.
It works by adjusting the display_mode to have twice the virtual height to
cause the graphics driver to allocate enough frame buffer. Since hardware
acceleration calls are based on geometry locations instead of memory locations,
accelerated calls can work in the offscreen buffer with this method.
Similarily, the new CopyBackToFront() method copies the back buffer into the
front buffer with hardware acceleration. The code is currently disabled, since
not all graphics drivers handle the virtual versus display size correctly,
for example the intel_extreme driver. It works for example with the radeon
driver, but another problem prevents me to judge the benefit of this method.
Most types of screen redraws are flicker free, though, which is the whole point
of the excercise. :-)
Another problem with the current code is the initial mode switch. It does
not try again to double the frame buffer in the fall back code paths. It could
also check the frame buffer memory at all, before even trying to save some
cycles.
To see it in action, uncomment the code at line 508.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:50:32 +00:00
Stephan Aßmus
576305a5d8 * Adopt the code to handle the case that even a HWInterface instance with
hardware accelerated functions could be double buffered.
* Align the rectangle used for arc drawing like those for ellipsis.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:40:46 +00:00
Stephan Aßmus
328699e5f6 * Coding style cleanup
* Added a flag "fIsOffscreenBuffer", which is used to shift the frame buffer
  pointer to the position after the visible frame buffer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:33:06 +00:00
Stephan Aßmus
c5ac899aac * Refactor the method that actually copies rectangles from the back buffer to
the front buffer so that derived classes could override it.
* Minor coding style changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 12:31:27 +00:00
Oliver Ruiz Dorantes
41da6509b2 - Add handling of some events taking part on the pairing process
- Rename event structures to be consistent with another remaining ones
- Fix typos
by Mika & Oliver




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26476 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-17 20:44:09 +00:00
Rene Gollent
2cfee16a9e Build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 18:26:40 +00:00
Stephan Aßmus
f01b70d098 mmlr + stippi:
Found an incompatibility with BeOS, where Haiku behaves correctly, though,
after our changes: The alpha channel of B_RGB32 bitmaps is ignored, but
B_TRANSPARENT_MAGIC_RGBA32 pixels are considered fully transparent. In BeOS,
B_RGB32 are simply treated as B_RGBA32, but only in B_OP_ALPHA. We have
added a comment as well as the code that would enabled the BeOS behavior.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26436 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 18:18:07 +00:00
Stephan Aßmus
0634c42f2c Small code and comment cleanups as well as clarifications.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 17:06:14 +00:00
Stephan Aßmus
96c7800295 Rearrange Painter::_DrawBitmap() so that the optimized codepaths for unscaled
drawings are used for bitmaps that needed to be converted to B_RGBA32.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26431 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 16:46:39 +00:00
Stephan Aßmus
fe71730a9c Add one more optimization for an often used case of bitmap rendering.
B_RGBA32 and B_RGB32 in B_OP_OVER no longer go through the generic AGG code
path, but have an optimized version now, as long as the bitmap is not scaled.
B_RGB32 needs to handle B_TRANSPARENT_MAGIC_RGBA32, while B_RGBA32 works just
like regular alpha blending.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26427 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 15:41:03 +00:00
Axel Dörfler
bd2509c549 * Desktop::_UpdateFloating() and Desktop::_UpdateSubsetWorkspaces() both
assumed that there was only a single window that was responsible for the
  workspaces of a floating/subset window. Of course, any number of windows
  can make up the workspaces of those. This fixes bug #2506.
* Added a Window::InSubsetWorkspace() method to complement SubsetWorkspaces().
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 14:17:23 +00:00
Stephan Aßmus
d24ece5186 * I have experiemented with a different method of countering the colored edges
problem of subpixel-anti-alised font rendering. Personally I find the method
better than filtering the subpixels, since it is a straighter transition
between unfiltered subpixel aa and grayscale aa. There is no added blur
affecting also innocent neighboring pixels. The filter method is better at
hiding jagged diagonal lines though, so Andrej and I agreed to move this to
a general discussion on the mailing list. Screenshots forthcomming...

* Some additional coding style improvements.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 12:59:20 +00:00
Stephan Aßmus
b09e2f6f4b Patch by Andrej Spielmann (GSOC):
* Extend the app_server protocol by configuration options to turn
  subpixel font rendering on/off and also make the glyph hinting optional
  (aligning of glyph shapes to the pixel grid).
* Implement the setting in the app_server and also handle the persistency.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:29:50 +00:00
Stephan Aßmus
fa6a00c628 Patch by Andrej Spielmann (GSOC):
* Integrate the subpixel rendering with the existing drawing backend and
  the font rendering.
* The font cache has got an additional rendering type for extracting and
  caching glyph bitmaps that store subpixel coverage values.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:26:38 +00:00
Stephan Aßmus
73b44a6aae Patch by Andrej Spielmann (GSOC):
* Extend the existing agg_renderer_region with the two new subpixel methods.
* Remove trailing whitespace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26360 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:22:41 +00:00
Stephan Aßmus
829453f678 Patch by Andrej Spielmann (GSOC):
Sorry, actually this third AGG class is also needed to handle subpixel scanline
coverage.

NOTE: I am trying to break up the large patch into digestable pieces. The
comments come from me not from Andrej, so I am to blame for any confusion! :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:19:22 +00:00
Stephan Aßmus
185d13d5de Patch by Andrej Spielmann (GSOC):
Two new AGG classes were needed to handle subpixel scanline coverage values.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:15:59 +00:00
Stephan Aßmus
0a0622a6de patch by Andrej Spielmann (GSOC):
Removed trailing whitespace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26357 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:12:38 +00:00
Stephan Aßmus
c816464287 patch by Andrej Spielmann (GSOC):
Added complementary functions to the set of functions that implement a
drawing_mode, these new functions interpret the coverage values passed
from the AGG rasterizer or another scanline storage as subpixel triplets.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26355 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:08:59 +00:00
Stephan Aßmus
60d98a49ed patch by Andrej Spielmann (GSOC):
* Added marco definitions for subpixel based blending of two 32 bit pixels.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-10 08:06:59 +00:00
Oliver Ruiz Dorantes
d04eb939af -Move the launching of the Local Device to an IOCTL from the open hook to be more compatible with the net_stack
-Implement Launch method in the accesors regarding previous comment
-Fix KDL at removing device



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 17:01:30 +00:00
Stephan Aßmus
264df95726 All input device add-ons should already do this, but make sure that
mouse messages have a "when" field with the event system time.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 20:29:18 +00:00
Oliver Ruiz Dorantes
48cca06a81 Add new virtual method in the delegates to launch the device, Instantiation meant only to open/register the localdevice
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 18:39:41 +00:00
Stephan Aßmus
fc8e77f863 When a BBitmap is drawn with scale, but also only partly, the inverse
image scan generator matrix was calculated wrongly. The part of the offset
that lies within the bitmap bounds needs to have the scale applied as well.
Maybe this code can be simplified. Appearantly there is not a lot of code
that uses BBitmap drawing this way, perhaps because the R5 version has had
issues with rounding. But MediaPlayer uses this feature for drawing the peak
levels and this is fixed by this change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26324 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 17:48:30 +00:00
Stephan Aßmus
93016537eb Check if the Painter even has a clipping region set before trying to take the
short cut when no text needs to be rendered. I've seen a crash yesterday in
the app_server test environment when the decorater was drawing something,
although it may also have been because I had a screwed up objects folder
where some objects were not recompiled because I am switching back and forth
between two app_server code folders.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 17:41:15 +00:00
Karsten Heimrich
685483eada * set the what field to okok on success, as the epson returns 'Good' for some reason
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 20:04:03 +00:00
Karsten Heimrich
c5ea3d591d * rearranged header a bit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 20:01:46 +00:00
Karsten Heimrich
a836d47d56 * cleanup, no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 19:39:10 +00:00
Oliver Ruiz Dorantes
5d7bf42195 Fix EOL
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26230 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-02 21:09:04 +00:00
Oliver Ruiz Dorantes
b42c202a65 Fix typos reported by Mika, and remove whitespaces
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-01 20:28:12 +00:00
Oliver Ruiz Dorantes
291e114333 Fix EOL
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-01 19:43:37 +00:00
Oliver Ruiz Dorantes
480cccf67b Fix a serious TODO,
Report the index where the event opcode pair has been found.
Currently server was expecting them to be the first entry of the request 



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-01 19:35:10 +00:00
Oliver Ruiz Dorantes
18dbcd22a0 Handle the command status sent before the arrival of a remote name request.
Avoid unhandled event in the bluetooth_server
	by Mika Lindqvist
  


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-01 19:15:15 +00:00
Stephan Aßmus
f592fcef43 stippi + bonefish:
Fixed race conditions when a ServerApp or ServerWindow is created. The 
reply to the client that the object has been created successfully was 
sent in the thread creating it. Preempted at the wrong time (right after 
writing the message to the port) could lead to the object's thread using 
the link at the same time, which would screw up all subsequent 
communication via that link.
This fixes the problem that mimeset would sometimes fail when building 
Haiku in Haiku (can't find the ticket). It probably also fixes #2331, 
and the bug that sometimes when a window is opened (Terminal, crash 
alert, shutdown window, etc.) it would come up with huge width/height 
and tiny other dimension (can't find the ticket).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-01 15:47:56 +00:00
Michael Lotz
d0b2c3e1b8 Remove locking when drawing the decorator buttons. This is most probably not
correct, but it prevents a deadlock that could sometimes be seen right after
booting when the Terminal was supposed to draw the decorator buttons. It
doesn't seem to cause any problems with locking removed (the original drawing
code didn't lock either). Added a TODO to investigate and eventually fix that
though.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-29 21:03:34 +00:00
Michael Lotz
61ed28ee13 * All drawing modes except for B_OP_COPY should respect transparent pixels in
source bitmaps. The destination is preserved now when encountering such
  transparent pixels in the source bitmaps.
* B_OP_ERASE is supposed to replace with the low color whereever a source
  bitmap has a non-transparent pixel.
* The B_OP_MIN and B_OP_MAX drawing modes are supposed to select either the
  source or destination pixel based on their brightness, not combine the two
  pixels' color components into a new pixel. The brightness_for() function is
  taken from ColorConversion.cpp in the interface kit. Probably a simpler
  algorithm would do as well.
* Handle B_TRANSPARENT_MAGIC_* in all cases when drawing bitmaps with non-alpha
  source bitmaps, as all modes except B_OP_COPY are sensitive to transparency.

This should make all drawing modes behave as documented in the BeBook. Except
for B_OP_SELECT, which seems broken under R5, the results compare nicely now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-22 02:34:15 +00:00
Michael Lotz
00c81869c5 Fix obviously swapped if statement checking for a solid pattern.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-21 23:51:37 +00:00
Michael Lotz
efec339946 Take the source alpha into account when doing a B_OP_INVERT so that drawing
bitmaps in B_OP_INVERT mode does not affect pixels where the source bitmap
was transparent, as noted in the BeBook. Not really sure I'm doing that right
though and probably needs looking into for B_OP_ERASE and B_OP_SELECT too.
Fixes bug #2421 though.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-21 19:38:56 +00:00
Michael Lotz
bdc47b1f97 Remove transparent magic handling for B_CMAP8, ImportBits() takes care of that already.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26065 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-21 14:48:06 +00:00
Michael Lotz
f24652cba6 Fix two wrong debug output messages and add one for AS_SYNC.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26063 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-21 13:45:58 +00:00
Oliver Ruiz Dorantes
14ea910db6 Identation and handling of the pincode and incoming connection events
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-18 21:05:33 +00:00
Stephan Aßmus
9977d172f0 Keep the last changes more in the style of the rest of the file. (Nice
catch, btw, Michael!)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25961 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-15 10:41:54 +00:00
Michael Lotz
345dc29f8a When drawing bitmaps with B_OP_OVER with a color space that does not provide
an alpha channel of itself, we have to respect B_TRANSPARENT_MAGIC_* pixels
and properly make them transparent. We achive that now by just setting the
alpha to 0 in our converted B_RGBA32 bitmap for each pixel where there is a
B_TRANSPARENT_MAGIC_* pixel in the source. This is not really efficient, but
fixes missing images for example in NetPositive. They were treated as B_RGBA32
while they in fact were B_RGB32 and happened to have all alpha bits set to 0.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25956 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-14 20:52:05 +00:00
Michael Lotz
6309b004c6 When drawing the decorator buttons lock the DrawingEngine, enable copying to
the front buffer, draw the bitmap, restore the copy to front buffer state and
unlock. This fixes that the updated button state was not actually copyied to
the front buffer (and therefore visible) when a window was inside an update
(disabling front buffer copying).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25954 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-14 20:51:20 +00:00
Michael Lotz
e13a79e005 * Cache the close and zoom buttons in a blit-ready bitmap so the buttons don't
need to be drawn each time an update occurs (switching focus/non-focus or
  pressed state, involving many graphics card blits and state updates in the
  drawing subsystem).
* Provide a shared list of already present bitmaps. All the default decorators
  now use the new _GetBitmapForButton static method to get a rendered bitmap
  of the button for the given size and state (focus, pressed). If a matching
  bitmap exists it is returned, otherwise a new one is created on demand using
  a shared BitmapDrawingEngine.
* Cache the colors of the tab and frame for both focus and non-focus states to
  avoid always looking them up.
* Added a todo that these bitmaps and the BitmapDrawingEngine are never freed.
  They should be freed on app_server quit, but as there are only like 12 of
  them anyway I didn't really bother.
* Some cleanup.

This should reduce the waste of cycles for just drawing the default decorator
buttons quite a bit. Probably the whole tab should be pre-rendered though to
also safe the text rendering of the title.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-13 13:48:33 +00:00
Michael Lotz
33d85b510b Add a handy utility class that provides a DrawingEngine directly attached to a
server side UtilityBitmap of a certain size. It sets up the DrawingEngine, the
UtilityBitmap and the BitmapHWInterface necessary so that one can directly
do drawing to a bitmap using the normal DrawingEngine interface. It provides
an ExportToBitmap method that allocates an output UtilityBitmap of a specified
size and color space where the content is put into, so a single instance of a
BitmapDrawingEngine can be reused for various drawing.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-13 13:28:13 +00:00
Michael Lotz
3ba76c1433 Whitespace cleanup. No functional changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-12 18:08:52 +00:00
Michael Lotz
018b0c251c * The StrokeLine() variation that takes a rgb_color did change the drawing
state of the painter without restoring it afterwards (HighColor and
  DrawingMode).
  This function is only used in decorators, but as such it could lead to
  strange effects. When clicking and holding the close button on the R5
  MidiPlayer for example, the background of the scope would suddenly become
  the color of the close buttons middle line. As the drawing mode was also
  overwritten this could probably have lead to text rendering issues when
  zooming applications. As I didn't find a easy way to reproduce such a thing,
  this is only theory though.
* Implement the missing IsExclusiveAccessLocked() method in the DrawingEngine
  which is not used at the moment. If corresponding debug output is generated
  though, it reveals possible locking issues with CopyRegion().
* Remove an empty line in the LineArrayData struct.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-11 23:49:53 +00:00
Karsten Heimrich
ced75fc6b0 * in case we do not show the config window,
still distinguish between config page and config job
 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25910 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-10 18:47:07 +00:00
Stephan Aßmus
581e67867c * Change the protocol for sending the affected view tokens during an update
session to also include each view's individual update rect (in screen coords).
  Should actually not be mush slower than the old version, and hopefully makes
  it possible to have smarter BView::Draw() implementations which should make
  more than up for any potential speed loss.
* Removed unused version of View::AddTokensForViewsInRegion().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-09 16:07:18 +00:00
Michael Lotz
ea2bcbf4af * Fix leaking the user and combined screen and user clipping.
* Fix using fScreenAndUserClipping directly in CopyBits() that could crash
  when in fScreenAndUserClipping wasn't used (when there's no user clipping
  for example).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25856 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-07 23:49:04 +00:00
Michael Lotz
f0c3c996cd * Decouple local and user clipping into normal local clipping and a user
clipping region pointer.
* Provide _ScreenClipping() that only includes local and screen clipping but
  not user clipping.
* Provide ScreenAndUserClipping() that returns screen clipping if no user
  clipping is present, or returns a combined region that is then cached.
* Adapt all places where the former methods are used and decide which one to
  use depending on the relevance of user clipping.

User clipping is now ignored for background clearing and when determining
whether or not to call Draw() on a view. This should make Haiku behaviourally
compatible with BeOS (confirmed by the ClippingAndRedraw test app) and should
also fix the Firefox redraw issues. Stephan please review!

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25854 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-07 23:09:21 +00:00
Stephan Aßmus
e4ddc13a40 Revert the bad part of my previous change. Wasn't supposed to exchange
the modifier key.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-07 17:19:19 +00:00
Stephan Aßmus
5f01a858b2 * Check return code.
* Make check slightly more readable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-07 12:50:37 +00:00
Stephan Aßmus
171d365edf Honor the 80 chars per line limit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25810 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 21:17:19 +00:00
Axel Dörfler
6ec21b4ad3 * Implemented retrieving additional bitmap support flags by the app_server.
* Added B_BITMAPS_SUPPORT_OVERLAY flag to indicate overlay support for the
  color space.
* Rewrote GraphicsDefs.h - the previous one was obvious a copy of the Be header,
  including typos and strange white space. I was a bit lazy with respect to
  the color space details, and mostly trusted the information provided by the
  Be header else.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25793 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 17:44:46 +00:00
Axel Dörfler
1938efc0a9 * Renamed the "simple" mode setter Screen::SetMode() variant to SetBestMode();
it can also no longer create a default mode.
* This SetBestMode() function now follows a similar logic than the boot loader,
  that is, only the width must not deviate, all other values are chosen as
  close to the original as possible.
* VirtualScreen::AddScreen() now follows the same logic as the boot loader in
  case no configuration was found, and the current screen has no preferred mode
  (for example via EDID). That is, it will first try 1024x768, and then 800x600.
* This means there is no mode change anymore when switching from the boot
  loader to the app_server in Qemu and VMware.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 14:35:31 +00:00
Axel Dörfler
32eac6c375 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25781 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 14:31:47 +00:00
Axel Dörfler
654aaf6ee2 Quick build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25736 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-31 11:26:06 +00:00
Ingo Weinhold
8d1699709a * For operations that implicitly install a MIME type, we no longer send
two notifications (install + update), but only the install
  notification.
* When create_app_meta_mime() installs a new MIME type (app signature or
  supported type), it only sends the install notification, instead of
  install + one or more updates.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-31 00:07:32 +00:00
Axel Dörfler
55112db6ea * Do not update the internal window state in case sending the message failed.
* This is not perfect, but it makes Tracker catch up and redraw when the next
  event is due. This improves the situation in bug #2212.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 18:16:07 +00:00
François Revol
ebc5ec193f fix gcc4... and style rules. I won't be the only one paying beers at BeGeistert ;)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 12:44:18 +00:00
Oliver Ruiz Dorantes
96f4720393 Add into compilation remaining bluetooth components:
- server
- command tools
- H2 transport driver

Patch by Adrien Destugues and Andreas Faerber



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 21:33:22 +00:00
Ingo Weinhold
9dec848f8d Fixed memory leak. Discovered by Coverity (CID 1013).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 15:36:25 +00:00
Stephan Aßmus
5593e6d9f6 Spotted a mistake in my previous commit, the style would still point to
the last style if the face was not found.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 15:30:48 +00:00
Stephan Aßmus
5b30a26b7c Added additional font face flags for "condensed", "light" and "heavy".
Our font has some extra styles and these could be picked up as the
"regular" face by accident, as witnessed by Firefox. Tracked down by
Michael Lotz. Firefox uses the correct font now for it's interface.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25636 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 14:54:18 +00:00
Karsten Heimrich
fc0c84e771 * use the HVIF icon for the default printer folder, this will fix the black
rect arround the folder icon after setting the default printer on Haiku...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25618 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-22 20:38:14 +00:00
Karsten Heimrich
c749605ff1 * respect the users choise and don't show the printer panel if he does not wan't to setup a printer
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-22 20:23:50 +00:00
Ingo Weinhold
89d327d66e Added missing spwd::sp_lstchg field.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-19 02:16:12 +00:00
Ingo Weinhold
6b202f4e3d * Introduced new header directory headers/private/system which is supposed
to contain headers shared by kernel and userland (mainly libroot).
* Moved quite a few private kernel headers to the new location. Split
  several kernel headers into a shared part and one that is still kernel
  private. Adjusted all affected Jamfiles and source in the standard x86
  build accordingly. The build for other architectures and for test code
  may be broken.
* Quite a bit of userland code still includes private kernel headers.
  Mostly those are <util/*> headers. The ones that aren't strictly
  kernel-only should be moved to some other place (maybe
  headers/private/shared/util).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-14 03:55:16 +00:00
Stephan Aßmus
97ee7d0a55 When drawing is double buffered, there is no excuse for a flickering cursor
(including any drag bitmap). HWInterface::HideFloatingOverlays() was plain
stupid, I know it did check double buffering at one point, but I must have
removed that when messing with it. But copying anything from back to front
buffer is now not overwriting the cursor area anymore, which is painted
immediatly afterwards. Also moving the cursor invalidates only one rect
if old and new cursor area overlap. All these changes should save some cycles
too. Added TODO with regard to caching the on-the-fly cursor compositing
buffer.
If you have
* a more recent computer
* a decent VESA BIOS which supports your native resolution
* don't need video overlays
... I recommend using the VESA driver.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-12 21:10:05 +00:00
Jérôme Duval
07a6286989 B_ZENKAKU_HANKAKU doesn't need B_COMMAND_KEY (I misunderstood the patch).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25421 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-10 13:52:53 +00:00
Jérôme Duval
ba64d8928a * added B_KATAKANA_HIRAGANA and B_ZENKAKU_HANKAKU (used in Japanese keymap)
* Patch by Shinta: switch between input methods are now not only done with Alt+Space but Alt+Zenkaku/Hankaku.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-10 12:38:57 +00:00
Ingo Weinhold
173dd626bf Cast B_OK to (uint32) to solve an overloading ambiguity (I don't agree
with the compiler, though :-)), I'm about to introduce.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-08 20:50:17 +00:00
Jérôme Duval
0895d46fdd added a TODO about user fonts in safe mode
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-08 11:43:00 +00:00
Jérôme Duval
872556daeb Patch from Kaoutsis: use find_directory() instead of hard coded paths
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-08 11:28:42 +00:00
Stephan Aßmus
3db71143ea Print a message about restarting or shutting down the computer. Since this
may take a short moment on real hardware, it is better than the "Asking blah
to quit..." which is otherwise still left.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25355 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-07 19:23:11 +00:00
Stephan Aßmus
fde63f5602 Better naming of a variable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-07 19:22:05 +00:00
Jérôme Duval
f27f494cb2 when no input method is found but the replicant was loaded, we now unload it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-06 21:18:31 +00:00
Jérôme Duval
cea151dc3e B_SAFEMODE_DISABLE_USER_ADD_ONS is also a safe mode we now honor
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-06 21:07:21 +00:00
Ingo Weinhold
3a4c7e6e71 If the supplied entry was a directory,
CreateAppMetaMimeThread::DoMimeUpdate() would always fail early, making
recursive operation impossible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-04 12:48:21 +00:00
Ryan Leavengood
6aede71c0c Resolve a TODO and fix another ancient bug, #386. Print Screen is now handled
by BWindow, no longer by the app_server. This should stop the "screen freeze"
effect.

This adds a dependency on libpng.so and libz.so to libbe.so. The same
dependencies and the PNGDump code added here can be removed from the
app_server. I am just waiting for a code review of this before doing that.

This implementation still does not give the client a chance to handle it
differently.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-30 02:55:15 +00:00
Axel Dörfler
c4d143146c * fDragBitmap was never initialized, leading to occasional crashes after the
first mouse click.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-25 11:39:47 +00:00
Oliver Ruiz Dorantes
39399f65f0 - Implement RemoteDevice::GetFriendlyName() in kit and handle the required reply in the server.
- Now a discovery process is nicer.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 16:53:06 +00:00
Ingo Weinhold
f694f63e2b * Moved private passwd/group/shadow passwd limit constants from
<libroot_private.h> to <user_group.h>.
* Added support in the registrar for adding and modifying users.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25040 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 00:10:51 +00:00
Karsten Heimrich
8a2dad71cc * no need to reply, as set_ui_color won't read it anyway
Fixes some strage behavior (moving/disappearing text) in
  Appearance preflet while moving a color control chooser.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25035 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 23:19:31 +00:00
Ingo Weinhold
b5a945d648 Allow only root access to the shadow password DB.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-17 17:58:51 +00:00
Ingo Weinhold
a94ce1c912 * Reorganized the passwd and group support: A dedicated thread in the
registrar provides access to the DBs via a port message based
  protocol. The functions in libroot just ask the registrar now.
* Added Linuxish shadow passwd support. No putspent() though -- we'll
  provide private functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-17 16:19:18 +00:00
Oliver Ruiz Dorantes
ae736793e8 - Fix parsing of the inquiry replies. There is a first byte indicating the number responses which was ignored.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24993 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-16 22:21:28 +00:00
Oliver Ruiz Dorantes
717c9b00f2 - Fix correct handling of the command status event
- Fix Removal of specifil event wanted in a given request



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-15 17:17:47 +00:00
Rene Gollent
1174007caf Modified bin/keymap's -h option to write a variable to the generated header
indicating the name of the keymap. Correspondingly, modified input_server 
to use the aforementioned variable in order to write the name attribute
to ~/config/Key_map. This allows Keymap prefs to correctly recognize the name
of the default keymap on a fresh build.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-12 22:41:19 +00:00
Stephan Aßmus
67d5c5a838 Implemented Oliver's suggested improvement to ServerCursorReference when
switching cursors. There was a race condition in case the objects was used
by multiple threads, in which Cursor() could return an already destroyed
object. Note: This doesn't fix a real bug or anything, the change is purely
forward looking in case ServerCursorReference is ever used like that.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-08 08:12:38 +00:00
Jérôme Duval
f27659f55e * GRAY8 is 8 bits
* typo


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24798 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-04 19:45:11 +00:00
Axel Dörfler
33808d63f4 * AttachUser() now creates the user directory if it's not there yet. Added
a TODO comment that find_directory() won't return the correct directory in
  a multi-user environment. This fixes bug #2003.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 13:04:08 +00:00
Stephan Aßmus
ace2d5ee37 HWInterface::Cursor() and therefor Desktop::Cursor() accessed the
current cursor without locking, and did not add a reference while
using the cursor. I have tried to solve both problems by introducing
a simple ServerCursorReference class, which makes sure that the
reference count is properly maintained. There are only two places
where this code was even used, from within ServerApp and when taking
screenshots. Axel, you mentioned in #837 that the code is unsafe, is
this what you meant? This hopefully fixes #837, but it is very hard
to reproduce in the first place, I will close the ticket, but it should
just be reopened if ever encountered again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 11:12:39 +00:00
Stephan Aßmus
42cf275606 The scale of a state does not influence the origin. Only previous states
and their origin and scale influences the current state's origin, since
they can be regarded as within the parent state's coordinate system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 11:04:03 +00:00
Oliver Ruiz Dorantes
4b7428b564 - Implement the server understand the Inquiry complete, and the Inquiry result.
- With this, we should be able to discover other devices, but not tested yet. No application to use this part of the kit



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24733 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 21:59:23 +00:00
Oliver Ruiz Dorantes
1ba54b5b31 Fix correct handling of more than one event wanted in a single request
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24732 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 21:51:31 +00:00
Oliver Ruiz Dorantes
fd223db5ad - Add capability to the server to handle Command Status events
- Add capability to reply the inquiry started command status



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24700 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 21:53:37 +00:00
Ingo Weinhold
e954dc800b Send SIGTERM on shutdown, not SIGHUP.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 19:11:18 +00:00
Karsten Heimrich
5d81827b2c * push the states on the server instead on the client side
* DrawState::SetOrigin needs to take the view scaling into account
* set the orgin in BPrintJob, to be able to print more then one page properly

Note: This would make printing work on HAIKU as on BeOS, but still it does
      not because of 1; BPortLink size limit and 2; because we can only print/ draw
      the visible region of a view? I had to resize StyledEdit to a i.e 10000
      to test and to be able to print the full syslog.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 16:25:23 +00:00
Axel Dörfler
f2879f52a3 * The mouse message now also contains the x/y delta, if available, in the
int32 fields "be:delta_x", and "be:delta_y".
* This way, you can discover if the mouse is moved against an edge or corner
  of the screen.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24662 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 17:46:01 +00:00
Maurice Kalinowski
f9fd198ee3 prefer $(TARGET_LIBSTDC++) instead of stdc++ for being more generic (We do the same in libbe)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-28 23:06:09 +00:00
Rene Gollent
c6242cb287 media_server needs libstdc++ to link on gcc4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24634 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-28 23:02:01 +00:00
Axel Dörfler
9dbce7a4e7 * AS_CURRENT_WORKSPACE now holds a single window lock before retrieving
the current workspace.
* This should fix bug #1765 as far as the app_server is concerned.
* Cleanup, removed extraneous white space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24632 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-28 18:59:08 +00:00
Ingo Weinhold
0323066a2a When failing to remove MIME DB attributes that don't exist, don't fail
anymore. This concerned mimeset for instance. The Haiku build under
Haiku now gets a little further.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24618 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-28 07:45:16 +00:00
Ingo Weinhold
b40802973a Addressed memory leaks in the MIME sniffer code. Fixes bug #1660.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-27 04:26:43 +00:00
Ingo Weinhold
781a715529 Move RegistrarThread[Manager].cpp to the registrar. There was no point
in those living in libbe.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-27 02:51:58 +00:00
Karsten Heimrich
c8ee6ba8fb * do some simple checking if the printer exists and is usable at
all, otherwise complain or offer to make it the default printer


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-24 13:23:03 +00:00
Axel Dörfler
5e2ef462ec * Got rid of the duality of FS_WRITE_STAT_* vs. B_STAT_* flags (removed
the former ones).
* Removed extraneous white space.
* net_server settings are now also updated when the size of the 
  file changed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-24 12:04:47 +00:00
Karsten Heimrich
bd937035c7 * adjusted copyright
* small coding style cleanups
* made the config window a bit more font sensitive
* removed unused code in AboutRequested, since change 19593 there is no Be anymore in the about text



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-22 00:34:49 +00:00
Karsten Heimrich
77258c7702 * proper check for the what field to show the config window
* if there are printers but no default one, show only the printer panel without the add dialog
* adjusted the alert message accordingly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-22 00:20:26 +00:00
Axel Dörfler
98fe648b6e * FontFamily::GetStyle() now looks for alternative names when a specific
style couldn't be found, ie. when looking for "Roman", "Regular", and
  "Book" are accepted, too, and "Italic"/"Oblique" are now synonyms as 
  well.
* This prevents StyledEdit from using the "Condensed" style when it does 
  not find a certain font.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-18 16:52:34 +00:00
Stephan Aßmus
79ef179c52 A test app revealed some bugs with regards to client provided clipping regions:
* It is necessary to store the local origin and scale of a view state, at
  least for the clipping region and especially because the scale affects the
  clipping region. Ie origin and scale of one state affect the clipping region,
  at the time the clipping is evaluated, ie
     SetOrigin(...);
     ConstrainClippingRegion(...);
  is equivalent to
     ConstrainClippingRegion(...);
     SetOrigin(...);
  The current client provided clipping region at the time of PushState()
  always constrains the region of the new state. The previous region
  and the current local clipping may have their own individual origin and
  scale.
  To support all this, I needed to store origin and scale of each state on
  the stack, but I do cache the combined origin and scale. Caching only
  the combined region is not possible though. So the new implementation
  is slower than the previous, but more correct.
* Refactored "copy constructor" from DrawState, which is not really a copy
  constructor anyways, made it private. It is only used by PushState().
* Removed some dead code from DrawState.

All this improves Firefox redraw issues a tiny bit, but does not fix them.
Either I am not covering Firefox needs with my test app, or the bug is
somewhere else. At least Haiku behaves like BeOS with regard to client
clipping regions and the state stack now...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24428 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-18 00:04:12 +00:00
Oliver Ruiz Dorantes
a774d59ff0 Implement handling of the scan mode event reply
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-17 22:41:47 +00:00
Stephan Aßmus
f306ef434f * Fix build of app_server test environment by implementing atomic_get(),
maybe this should be the assembler version we use for x86, but is probably
  fine for the purpose of the test environment (only BString uses this)
* Fix semantics of DrawingEngine::CopyToFront() which I recently introduced,
  for the fake accelerant of the test environment, we do need to call
  Invalidate(), not CopyBackToFront() directly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24422 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-17 14:28:09 +00:00
Bruno G. Albuquerque
c975a408dc - Changed default address for failed DHCP requests from 192.168.0.x to
169.254.0.x, as this is the IANA reserved address for default
  configuration.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-16 22:24:18 +00:00
Oliver Ruiz Dorantes
b4825b618a Remove code references for commands
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24398 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-15 15:46:58 +00:00
Axel Dörfler
d8ebe61203 The fWorkspacesViews list now gets its own lock which solves a deadlock
problem when deleting Workspaces replicants.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-14 13:21:17 +00:00
Axel Dörfler
58c42ec9de No need for the kWorkspacesWindow flag anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-14 11:19:57 +00:00
Oliver Ruiz Dorantes
057d0dc02a Correct misspell adquire->acquire
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-13 19:30:04 +00:00
Oliver Ruiz Dorantes
876b8c17c8 Remove Command builder implementation from the server
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24380 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-12 21:52:49 +00:00
Axel Dörfler
092c62f0f1 * Creating a Desktop can fail, in which case the app_server should not return B_OK,
and an invalid desktop message port...
* Desktop::Init() now checks if VirtualScreen::fHWInterface is valid, and exits
  if not. This can happen if you don't have a graphics driver, and turn on on-screen
  debug mode in the boot loader (such that you already see the messages from the
  boot loader).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-12 18:01:32 +00:00
Stephan Aßmus
97d6a0515e GetClippingRegion() was implemented wrongly on the app_server side. It needs
to take the current effective drawing region of the view, but converted to
local coordinate space. Untested as of yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-11 17:38:26 +00:00
Stephan Aßmus
ffac272e35 Used the new mechanism/options in the DrawingEngine with regard to
back to front copies in Window for updates. When in an update session,
any back to front copies are turned off. When the update session ends,
the whole region is copied at once. This has two effects: For once, it
avoids a lot of unnecessary copies (for example, rendering text copied
the background and then the same area for the text again). But even more
effective, it changes the entire drawing of any Haiku app to be completely
flicker free. Provided it happens in the normal Invalidate()/Draw() cycle.
And of course all this only works for double buffering mode, ie VESA.
Potentially, I might have overlooked something, so that this patch could
result in some drawing glitches, but in my testing, I have seen none yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-10 22:30:07 +00:00
Stephan Aßmus
18212e76cc * Made it possible to supress automatic back to front buffer copying of the
rectangle area that is touched by a drawing command.
* Added a CopyToFront(BRegion) method which copies a complete region from
  the drawing/back buffer to the front buffer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24353 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-10 22:24:00 +00:00
Stephan Aßmus
b7458c6b96 RenderingBuffer::Bounds() returns an IntRect, saves a conversion.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24352 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-10 22:22:11 +00:00
Stephan Aßmus
8a1c136e47 Use the front buffer for screenshots always, otherwise we don't get the contents
of BDirectWindows for setups where the app_server uses double buffering mode.
I didn't test the change, but the way the cursor is optionally copied into
the bitmap (which might now be not 32 bpp) looks very flexible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-10 15:32:01 +00:00
Stephan Aßmus
417889ced8 * Handle clearing to white on the client. This also makes sure that bitmaps are
cleared which have no app_server link (B_BITMAP_NO_SERVER_LINK).
* Check the allocation of the BWindow in BBitmap for view accepting bitmaps.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-10 10:51:56 +00:00
Axel Dörfler
6c1198ff2d Disable user add-ons only if specifically set in the safemode settings,
thanks François!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-09 22:21:21 +00:00
Axel Dörfler
cfb3cc4648 * Now checks and honours the "disable user add-ons" safemode setting.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-09 15:25:39 +00:00
Oliver Ruiz Dorantes
009fac9906 Code & text output cleaning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-09 00:04:16 +00:00
Stephan Aßmus
582b3d5a72 * When allocating a new Window, check the allocation of the DrawingEngine
instance by introducing Window::InitCheck(), use new (nothrow).
* Window is responsible for the DrawingEngine instance, but forgot to delete
  it.
* OffscreenWindow is no longer special, every Window owns a DrawingEngine,
  no need to delete it anymore, but since it already deletes the HWInterface
  instance, it needs to detach the DrawingEngine from it.
* Use new (nothrow) in OffscreenWindow as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-08 17:41:24 +00:00
Stephan Aßmus
f875a78340 RenderingBuffer returns IntRect in Bounds() now. Should have been
part of an earlier commit...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-08 17:36:15 +00:00
Axel Dörfler
c7a77521ff Renamed all *LAYER* constants to *VIEW*.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-08 16:44:18 +00:00
Axel Dörfler
437b19277f * Removed severly outdated DebugInfoManager.
* More "layer" cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-08 15:28:31 +00:00
Axel Dörfler
953d895e02 * Got rid of the "Layer" part of WindowLayer, ViewLayer, WorkspacesLayer
(now WorkspacesView), OffscreenWindowLayer.
* Renamed ServerScreen.cpp/h to Screen.cpp/h (the class was already called
  Screen).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-08 12:45:54 +00:00
Axel Dörfler
b0121f5117 AccelerantHWInterface::_DrawCursor() did not override its parent method, but
hide it (because of different argument types, BRect vs. IntRect).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-08 12:26:59 +00:00
Axel Dörfler
2c184b20ed * The Desktop is now maintaining a list of workspaces views, and supports
more than one of them at the time.
* Changed ViewLayer::FindView() to FindViews() that collects all views
  with the given flag set, not just the first one.
* Made ViewLayer::AttachedToWindow() and DetachFromWindow() virtual,
  WorkspacesLayer now overloads them to register itself with the window and
  the desktop.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-08 11:42:20 +00:00
Axel Dörfler
e0d6d2fe80 Fixed warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24299 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-08 11:36:10 +00:00
Oliver Ruiz Dorantes
30f1d1f363 bluetooth_server: a really young piece of meat, code not even to be looked at. Bad/fast code in some modules. But better here than in a crashed partition.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-06 21:02:08 +00:00
François Revol
9fb2c0f239 Fix tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-06 14:27:18 +00:00
Axel Dörfler
6ec72e838c * In normal mouse mode, the focus list is no longer used to find the
next window to get focus after the current one is gone. This fixes the
  strange behaviour when using right-click to send the current window to
  the back.
* When FFM is active, Desktop::SendWindowBehind() will now choose the 
  new focus window to be the one under the mouse, overriding the focus 
  list.
* Desktop::SendWindowBehind() will now also call _SendFakeMouseMoved()
  if necessary.
* Removed Desktop::fFocusFollowsMouse; it was not used or 
  maintained anywhere.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-06 12:55:41 +00:00
Stephan Aßmus
cebfa7dc45 I was trying to fix Firefox redraw problems, but this change does not
help. However it appears I might have fixed the GL apps drawing over
other windows. Cannot reproduce this problem anymore, but it may be
that this bug doesn't show on my new setup (32bit double buffered VESA).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-06 11:15:09 +00:00
Axel Dörfler
d01879e5a6 * Added a separate focus list that will contain all windows in the order
of the last focus.
* When choosing a new focus window, this list is now used to find the
  new focus window instead of just choosing the next window in the
  workspace list.
* With the normal mode mouse, this shouldn't change anything, but with
  focus follows mouse turned on, this will behave much better if you 
  don't actually move the mouse - and it also fixes bug #1886.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-04 12:47:34 +00:00
Rene Gollent
4e03eeaa47 The registrar's shutdown window and BAlert both use
a BTextView in order to be able to display multiline
panel text (since BStringView can't handle this). However,
while they correctly set the background panel color, they
neglected to set the font style/color to that used by panel.
Fixed. This makes shutdown/restart dialogs properly color sensitive.




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-04 01:21:00 +00:00
Rene Gollent
676308a602 App Server now saves/restores ui_color settings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-04 01:19:04 +00:00
Axel Dörfler
b9d1483940 Added support for recognizing Jamfiles.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-01 12:36:03 +00:00
Axel Dörfler
e4ffdb7a94 * Added a more generic subtype for the source code files for automatic
MIME type guessing.
* Now, if the specific MIME type exists, it will be chosen, if it doesn't,
  the generic MIME type is chosen. If that does not exist either, the most
  generic is chosen (a.k.a. "text/plain").


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-01 11:56:30 +00:00
Axel Dörfler
a9ab9cf19a Setting a default netmask/broadcast address is no longer needed in ifconfig
and the net_server; the network stack now does this internally since r24170;
it worked for IPv4 only, anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-28 15:51:34 +00:00
Axel Dörfler
a4de7fa0fa * Do not trust the client! ServerFont::GetEscapements() now takes a
parameter for the length of the arrays, so that even if the char/byte
  counts do not match, no memory is overwritten anymore.
  This fixes bug #1862; .canna obviously contains invalid UTF-8 
  characters, or there is a bug in StyledEdit (or deeper) and it doesn't 
  call BFont::GetEscapements() correctly.
* Fixed some cases of unchecked allocations in the font handling methods
  of ServerApp, added TODOs to all other ones.
* Improved error code when creating a window fails.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-28 00:22:48 +00:00
Karsten Heimrich
85b669320b * make sure we show the "Printer Setup" panel in case one calls ConfigJob
without a previous call to ConfigPage, as this would fail without any notice...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-27 22:27:05 +00:00
Stefano Ceccherini
10da43ea2e Use DejaVu as default fonts, instead of Bitstream Vera. DejaVu is
just like Vera, but it has some more glyphs. Actually we could get rid 
of Vera completely.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-26 15:59:17 +00:00
Stephan Aßmus
c8d785a71d Cursor frame can be expressed using IntRect. Saves a few lines of code too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-24 16:43:50 +00:00
Stephan Aßmus
4d1dd3bcfe Use the AutoFloatingOverlaysHider in the remaining cases where overlays were
hidden regardless of the affected area.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-24 16:08:57 +00:00
Stephan Aßmus
b1ab9b5f07 * ReadBitmap() could mess up the software cursor locking, since it
used the BRect version of HideSoftwareCursor() but then called
  ShowSoftwareCursor() unconditionally.
* Renamed Hide/ShowSoftwareCursor() to Hide/ShowFloatingOverlays().
* Removed no longer needed FontLocker.
* Implemented AutoFloatingOverlaysHider and got rid of a lot of
  code duplication this way.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24095 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-24 15:31:12 +00:00
Axel Dörfler
f9bbab8848 * First steps towards a more flexible workspaces view handling: the
workspaces view can now be any view in the hierarchy.
* Added private view flag kWorkspacesViewFlag that identifies such a
  view - note though, that you must not remove a view before closing or
  hiding its window for now (and that you still need to set the 
  kWorkspacesWindowFlag, too).
* Fixed Workspaces check for valid screen coordinates; after a crash, it
  managed to open its window offscreen for me.
* Added a ViewLayer method FindView() that finds a view with the 
  specified flags set.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-24 11:18:52 +00:00
Stephan Aßmus
c067ed4ea4 applied patch by Maurice Kalinowski:
* Add check whether directory to store settings exists. If not, create it.
* Use global constant (like in DefaultManager.cpp) for path/file names.
* Cleaned up a little bit and made debug output only appear in case 
  debugging is turned on (meaning printf->TRACE).
-> Fixes #1531.
(I added a few more error checks to the code, maybe there should be even 
more...)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-24 09:55:44 +00:00
Stephan Aßmus
f8cb1f478c * Always use the double buffered implementation if running in VESA mode. It
was not used in case of 32 bit VESA modes. Gives a huge performance boost
  for 32 bit VESA mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-23 19:39:42 +00:00
Stephan Aßmus
d755e1c073 Implemented Enable/DisableUpdates again on the app_server side. Untested. It
should prevent the app_server to send any update messages to the client. It
should just keep adding to the pending update sessions region until the client
enabled updates again. If anything is already in the pending session, an
update request will be send immediately.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-20 00:56:45 +00:00
Michael Lotz
94fec641a7 Implemented a small kernel debugger add-on that triggers a redraw of the
entire screen when exiting the kernel debugger. It sets up a thread that sends
a message to the (currently hardcoded) desktop message looper. The desktop then
does mark the whole screen dirty which causes a full redraw.
Since interrupts need to be enabled I went with an asynchronous thread and
releasing a request sem in the add-ons' exit hook.
Added the add-on to the image as it shouldn't hurt to have it for now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24025 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-20 00:40:07 +00:00
Stephan Aßmus
ddb44fda2c Fixed the log file output when DEBUG=2. PRINT() is called from global
initializers before sLogFile was created in the InputServer constructor.
Even moving the log file creation to a global initializer didn't help,
since the order is not guaranteed. So I changed the code to create the
log file on the fly in the PRINT method.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-19 11:32:41 +00:00
Axel Dörfler
4db9f96954 Added "FTP" facility string.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-18 12:42:34 +00:00
Axel Dörfler
5e42a6bdd7 bonefish+axeld:
* the net_server leaked file descriptors for every opened session.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-17 16:40:03 +00:00
Jérôme Duval
a0c4a29faf added B_RGBA15 colorspace, and explicitly print which colorspce is unsupported
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-09 18:08:34 +00:00
Ithamar R. Adema
eb5a25ca41 Slight rework of my previous commit... now ports can be asked too ;)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23928 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-08 02:00:08 +00:00
Ithamar R. Adema
62cb58a8ef Make print_server track Transport addons too. This is because some of the NewTransportAddOns(tm) can also autodetect devices, e.g. USB printers. For this, the print_server needs to keep those transport addons loaded at all times. This code now also enables dynamic Transport discovery for the Printer prefs, e.g. 'hey print_server GET Transport 0' or 'hey print_server GET Transport 'USB Port'' will now work too ;)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23927 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-08 00:34:53 +00:00
Axel Dörfler
41d99cab60 * SetDragMessage() could be called when the mouse button was already released.
* Since it didn't check if any mouse button was pressed at the time it was
  called, it would still initiate a drag, and thus caused bug #1710.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-29 15:14:39 +00:00
Stefano Ceccherini
511c231b35 remove unnecessary code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-24 13:45:59 +00:00