Stephan Aßmus
|
17360617d2
|
fixed a really lame bug in the StrokeLine call that caused all these problems with line drawing and or invalidation afterwards, avoid transforming the clipping region into another format used by AGG by using a special BRegion based renderer
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12400 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 08:15:04 +00:00 |
|
Stephan Aßmus
|
519c55739f
|
an agg renderer that uses a (reference to a) BRegion for storing clipping information, this avoids transforming the clipping from Painter to the agg world
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12399 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 08:12:29 +00:00 |
|
Stephan Aßmus
|
8770be761d
|
convert the invalid rect to the top layer coords, Adi, an update message is only sent when a layer is the top layer in Layer::RequestDraw, I don't know how to fix this, but it would be nice to have BView::Invalidate working.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12398 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-15 00:31:39 +00:00 |
|
Adi Oanca
|
b53cd0ef8f
|
All keyboard messages now go to BWindow's preferred handler. Also, mouse wheel messages go to the BView under mouse.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12396 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 21:42:32 +00:00 |
|
Stephan Aßmus
|
6359ecc258
|
just a temporary thing... I couldn't resist
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12391 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:24:42 +00:00 |
|
Stephan Aßmus
|
a52667ee9c
|
added a comment about how it would be nice if ServerFont could be guaranteed to be valid (ie it doesn't crash if you call one of it's functions from outside code, I like it when a C++ class is an encapsulated object, maintaining a valid internal state, and whatever client code does, it should just never crash)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12390 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:22:01 +00:00 |
|
Stephan Aßmus
|
53ca92129f
|
code is more correct
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12389 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:12:44 +00:00 |
|
Stephan Aßmus
|
8fdfa137d6
|
don't crash if the system fonts are not initialized
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12388 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:12:06 +00:00 |
|
Stephan Aßmus
|
bd841e3cd4
|
fall back fonts are actually used now if you didn't install the Vera fonts on R5
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12387 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:11:33 +00:00 |
|
Stephan Aßmus
|
d3665bb866
|
mostly cosmetic changes, nothing of substance
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12386 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:10:41 +00:00 |
|
Stephan Aßmus
|
d78aea1846
|
hides a bug where we appearently read from the cursor out of bounds because of float to int converting issues... need to investigate that. In any case, I got the cursor position thing completely wrong, my intentions of setting it to 0.5, 0.5 were something else...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12385 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:09:03 +00:00 |
|
Stephan Aßmus
|
ec668ad701
|
Cosmetical changes and quite a few bug fixes along the way - B_RGB24 is definitely not supposed to be 32 bits per pixel. For example. Added another constructor to take on bitmap data from somewhere else
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12384 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:06:01 +00:00 |
|
Stephan Aßmus
|
9afc50fd98
|
cosmetical changes and some bug fixes along the way, added another constructor to take on bitmap data from somewhere else
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12383 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-14 00:04:26 +00:00 |
|
Adi Oanca
|
49ea5b1684
|
Yeah, I can't imagine how I could forget to insert this line...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12379 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-13 21:47:44 +00:00 |
|
Adi Oanca
|
ea44b0bc79
|
Made BWindow::WorkspaceActivated() and BWindow::WorkspacesChanged() work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12378 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-13 21:32:23 +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 |
|
Stephan Aßmus
|
b176b6b493
|
The DisplayDriverPainter is now also the default on Haiku. The DisplayDriverImpl stuff is left out for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12340 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 08:22:16 +00:00 |
|
Stephan Aßmus
|
5eec899752
|
added a TODO comment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12339 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 08:15:53 +00:00 |
|
Stephan Aßmus
|
a53e726400
|
StrokeLine takes a non-const DrawData, penlocation is altered.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12338 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 08:15:25 +00:00 |
|
Stephan Aßmus
|
a11f3c21fd
|
StrokeLine takes now a DrawData, but it is only work in progress. The changes will be more drastic in the end.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12337 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 08:14:29 +00:00 |
|
Stephan Aßmus
|
80ed6173ec
|
Hinting works now and is enabled, the support for transformed text is probably completely broken now. To reenable it, the font loading needs to ask for vector glyphs when there will be a transformation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12335 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 08:12:59 +00:00 |
|
Stephan Aßmus
|
0858a6fca1
|
The freetype hinter only works correctly if the embedded transformation is the identity matrix. The AGG freetype font engine has a flip_y method to make it easier to work with coordinates where y points down. Since it changes the embedded transformation, hinting was messed up. Therefor, this is a workarround to be able to keep using the identity matrix and still have y pointing down. It just flips the generated raster glyphs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12334 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 08:11:09 +00:00 |
|
Stephan Aßmus
|
764683a939
|
StrokeLine alters the pen location, DrawData needs to be non-const. I didn't make this change in the DisplayDriverImpl stuff, and it is left out of the build for now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12333 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 08:07:20 +00:00 |
|
Stephan Aßmus
|
bd6b1617ec
|
a few cosmetic changes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12332 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-12 08:05:03 +00:00 |
|
Adi Oanca
|
4038d58146
|
Fixed a bug where a modal subset on some occasions did not change workspaces when its main window did. Initializing workspaces is a bit different now, they are initialized when are needed. Some work on adding support for BWindow::WorkspaceActived()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12299 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-11 22:46:48 +00:00 |
|
Michael Lotz
|
7544c9f03b
|
Implemented DumpToFile() from AccelerantDriver so that screenshots can be taken.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12296 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-11 20:15:43 +00:00 |
|
Michael Lotz
|
f0b7006ca0
|
We lost one pixel there.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12295 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-11 20:13:34 +00:00 |
|
Michael Lotz
|
d7b4d4119c
|
This is a temporary implementation of ctrl-tab/switching between windows. It can be removed when we can use Twitcher (if we really want to use it in the end).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12294 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-11 20:11:46 +00:00 |
|
Adi Oanca
|
9d88881f9c
|
Added support for setting a window's workspaces from BWindow::SetWorkspaces(). Added a new method in RootLayer to have the new window list, invalidate, set new focus and send activate messages in a single command. Did that because there were many places where the same sequence was executed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12287 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-10 19:04:06 +00:00 |
|
Adi Oanca
|
8476051c04
|
One can change a (B_NORMAL_WINDOW_FEEL only, as in R5) window's workspace by holding its tab and switching workspaces with keyboard
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12281 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-10 11:30:51 +00:00 |
|
Adi Oanca
|
d137bc62e8
|
Removed a friend, a printf and a blank line. :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12280 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-10 11:26:59 +00:00 |
|
Adi Oanca
|
81d71c74c8
|
Update requests are sent only after the last one has been received an processsed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12268 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-06 20:56:46 +00:00 |
|
Adi Oanca
|
2f6d87a6c5
|
Removed some commented code of mine as it's no longer needed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12267 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-06 20:54:00 +00:00 |
|
Adi Oanca
|
ddc9feb406
|
Added a member to know when an update request has been sent
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12266 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-06 20:52:58 +00:00 |
|
Adi Oanca
|
75efbbb3ed
|
if region is not NULL but invalid, draw nothing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12265 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-06 20:51:38 +00:00 |
|
Adi Oanca
|
0cb3fdda93
|
Nothing special. Just some cleanup to the update code. There is still a problem with layers not being properly updated sometimes when you move windows arround. The same problem occurs a lot more often when resizing windows. I'm traking it... :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12259 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-05 20:03:07 +00:00 |
|
Stephan Aßmus
|
8940f93c1d
|
AccelerantHWInterface now uses a MallocBuffer as RenderingBuffer for the back buffer instead of a BitmapBuffer, which under Haiku does not work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12217 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-01 10:36:23 +00:00 |
|
Michael Lotz
|
7d5778defa
|
Added support for GetEscapements() too. Still unfinished. Maybe this should be moved elsewhere?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12216 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-01 09:18:25 +00:00 |
|
Michael Lotz
|
c2da902f2e
|
Implemented BPortLink::AttachShape and BPortLink::ReadShape and used them for passing the shapes in AS_GET_GLYPH_SHAPES.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12215 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-01 07:29:04 +00:00 |
|
Michael Lotz
|
ebf8af66c9
|
Added support for BFont::GetGlyphShapes. Not finished yet and untested, delivery method as to be changed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12214 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-01 07:00:32 +00:00 |
|
Michael Lotz
|
3661cae99c
|
Aren't these supposed to be chars?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12213 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-01 04:03:11 +00:00 |
|
Michael Lotz
|
54f7283aa0
|
Appearantly StrokeLineArray is used in BButton rendering.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12210 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-01 02:06:07 +00:00 |
|
Ingo Weinhold
|
c6ba97963c
|
We didn't Unlock(), if setting the display mode failed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12209 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-04-01 01:11:38 +00:00 |
|
Adi Oanca
|
a2bc7be9ed
|
This fixes up the last known remaining issues with the update code. It works perfectly now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12197 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-31 16:48:51 +00:00 |
|
Stephan Aßmus
|
a356096dba
|
massive performance improvements. On my ancient 2xPII 350, the DisplayDriverPainter with the ViewHWInteface is pretty much usable now. It could be even better if app_server culmulated update requests more.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12180 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-31 10:46:02 +00:00 |
|
Michael Lotz
|
bb72ccac74
|
The Painter now uses a special version of the agg_font_engine that uses the FontServer ftlib and the already loaded FT_Facees from ServerFont/FontStyle instead of doing it all again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12177 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-31 06:08:37 +00:00 |
|
Stephan Aßmus
|
89b3c19c8a
|
ViewHWInterface updates are a bit smoother now
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12175 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-30 23:02:44 +00:00 |
|
Stephan Aßmus
|
15b391f607
|
more correct implementation, forgot header again
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12173 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-30 22:24:40 +00:00 |
|
Adi Oanca
|
4c6f8b572e
|
This fixes up those update request being lost.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12172 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-30 22:13:26 +00:00 |
|
Stephan Aßmus
|
fbdc6c450d
|
ups, forgot this one, but it doesn't help. views seem to have no clipping applied to them at all now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12171 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
2005-03-30 22:11:48 +00:00 |
|