Axel Dörfler
05bd1efe5b
* the FontManager is now a looper (but doesn't do anything useful yet).
...
* moved the system default font functionality into the DesktopSettings class.
* ServerFont::SetStyle() is now a public method.
* Improved font fallback routines: they will never end up without a font if
there is at least one font installed.
* fixed some minor bugs in the DecorManager.
* Decorator now get a DesktopSettings object passed - dunno if that's a good
idea (since we'll have to open the DesktopSettings header), but it works
for now (and something like this is probably needed anyway).
* a clean ServerFont is now set to the system default font - and not to the
(user chosen) desktop default font anymore (since the font manager doesn't
know about that one).
* Improved font directory scanning in the font manager a bit, it's now using
find_directory() instead of hard-coded paths.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14666 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-03 17:03:36 +00:00
Stephan Aßmus
359c905c57
offscreen bitmaps work, tested on Haiku as well, supports all colorspaces that BBitmap::ImportBits() supports. It uses a fallback for non-B_RGB(A)32 bitmaps. Added support for B_SUB_PIXEL_PRECISION view flags, though it is a bit hacky, since I had to add it to LayerData, even though it is not a true part of stack data. Added Layer::SetFlags() to enforce code path and update fLayerData. Cleaned up DisplayDriverPainter and DisplayDriver API (changed some const BRect& rect to simply BRect rect in order to be able to reuse it in the code), moved Painter.h, the test environment only draws the changed part of the frame buffer again - this causes a lot less CPU overhead, Painter special cases stroke width of 1.0 to use square caps, which is similar to R5 implementation and removes a lot of problems with non-straight line drawing, ServerWindow uses the DisplayDriver from it's WinBorder instead of the one from the Desktop (needed for offscreen windows, which have their own DisplayDriverPainter), it also checks for GetRootLayer() == NULL, because offscreen layers are not attached to a RootLayer, there was a fix for scrolling which worked at least in the test environment, it is now defunced, because Adi moved _CopyBits to Layer... I need to reenable it later, LayerData has no more fEscapementDelta, also fixed fFontAliasing (which was thought to overriding the font flags, and now works as such again), Desktop initialises the menu_info and scroll_bar_info stuff, which makes ScrollBars work actually... hope I didn't forget something.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 16:17:16 +00:00
Stephan Aßmus
fbf48e6437
Enabled HW acceleration for CopyRegion(). Tested on Haiku and it works. I also implemented FillRegion and InvertRegion. But using different acceleration hooks after one another freezes Haiku, app_server, the accelerant or whatever. I have no clue about accelerants, so if a knowledgable someone would have a look at AccelerantHWInterface.cpp, that'd be great. The software cursor stuff has a cosmetical bug with regards to CopyRegion() too, I don't understand it yet. I also tried to improve StringWidth() and DrawString() preformance. I confirmed that the glyph cache is actually used, but AGGTextRenderer::RenderString() is a dog.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-04 23:48:19 +00:00
Stephan Aßmus
3dea4bb659
cleanup the defines, move old DisplayDriver implementations out because they are currently unused and won't build
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-18 18:48:19 +00:00
Stephan Aßmus
6697162d5c
just a slightly more robust default font handling... should now work on Haiku even if you didn't install fonts from BeOS.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-12 13:15:38 +00:00
Axel Dörfler
914c87ccea
No longer defines ENABLE_INPUT_SERVER_EMULATION if DISPLAYDRIVER is set to HWDRIVER.
...
Added a ToDo comment about the forgotten find_directory().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-31 19:29:57 +00:00
Stephan Aßmus
0cabce17c3
fixed some font related problems, Painter should now rely on the app_server font manager. maybe I fixed some compile problems too. Sorry if that was the case.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:58:09 +00:00
Stephan Aßmus
127b4b0a4b
moved more of the old stuff from DisplayDriver into DisplayDriverImpl
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 22:22:44 +00:00
Michael Lotz
9775bf33cf
TEST_MODE is now disabled on Haiku too. So app_server is not a BApplication anymore and doesn't depend on itself.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 19:49:55 +00:00
Axel Dörfler
74bc93bf37
DISPLAYDRIVER can now be overridden by a previous definition.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 16:57:50 +00:00
Stephan Aßmus
197f82a8fe
sorry, forgot to commit the move of the locking implementation
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 13:43:39 +00:00
Stephan Aßmus
f21a56fe4f
added Painter version of DisplayDriver
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12048 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:04:29 +00:00
DarkWyrm
66133bb5d9
s/OpenBeOS/Haiku/
...
Style fixes for ServerBitmap and ServerCursor
Assignment operator for GraphicsBuffer
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-20 22:46:37 +00:00
DarkWyrm
557b47b2d0
Janitorial work in DisplayDriver.h
...
Added a #define to ServerConfig for workspace data file
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-26 02:13:58 +00:00
DarkWyrm
f9b967b4cf
Added DirectDriver definition
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-11 02:45:29 +00:00
Adi Oanca
48a965dce4
nothing important... you know...
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6044 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-13 00:06:29 +00:00
DarkWyrm
3df88aae3d
Integrated Adi's new desktop code
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6022 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-11 22:08:53 +00:00
shadow303
c01b1be5a0
Add visible region to layerdata
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5059 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-16 22:21:19 +00:00
DarkWyrm
d1e924c11e
File updates
...
Moved BitmapManager and TokenHandler to libappserver
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-25 15:44:59 +00:00
DarkWyrm
9381d29b6f
Massive reconfiguring to fix link problems with all things needing app_server so
...
urces
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3963 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-13 20:56:00 +00:00