Michael Lotz
b2c9e18270
Accelerant based implementations of HWInterface and RenderingBuffer. Untested.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 16:31:46 +00:00
Axel Dörfler
82aa535b3f
Updated app_server Jamfile to be able to build a server that runs under Haiku
...
if $TARGET_PLATFORM requires this.
Note, "jam app_server" for R5 did not work for me before and does not work now
although the number of errors are reduced - whoever knows the requirements for
the app_server under R5 better than me, please fix this.
Added the app_server as well as some more drivers to the Haiku HD image. Since
RUN_WITHOUT_APP_SERVER is still defined, it won't work correctly, though.
For the time being, you need to manually alter this and the Bootscript in order
to run it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 16:21:55 +00:00
Axel Dörfler
b2b5acff33
Made DISPLAYDRIVER a true compile time option.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 15:39:08 +00:00
Stephan Aßmus
1a7fc52717
added some functions with optimized implementation, optimizes most frequent usage
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-29 01:43:04 +00:00
Adi Oanca
eb6bc5d5ff
Started to implement workspace support. Surprisingly, with this small change changing workspaces actualy works. An it works quite well I may add. :-) So happy the new window manager which I heavily tested actualy works inside app_server. :-)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 21:32:24 +00:00
Adi Oanca
256c1b1502
Insignifican change. Read uint32 instead of int32.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 21:26:35 +00:00
Stephan Aßmus
e33b90ea35
implemented cursor support in the DisplayDriverPainter
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 18:03:45 +00:00
Stephan Aßmus
e0bb2421ea
whoa - how did this even work?
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12094 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 14:29:18 +00:00
Stephan Aßmus
181a984e2a
implemented the rest of the drawing calls save for Stroke/FillShape, since I would have to ask what kind of data this function is being passed
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 13:39:35 +00:00
Stephan Aßmus
02ec6ae825
Implemented and tested the color spaces B_RGB16, B_RGB15, B_CMAP8 and B_GRAY8. The trick is this: The Painter based implementation will most likely always use a double buffered approach. I simply made the back buffer, into which Painter draws, always B_RGBA32, while the front buffer can have any other format the drawing backend is supposed to support. In CopyBackToFront, the format conversion is handled. This gets us pretty far without actually doing very much, and I am not even sure if there should/can be a better implementation.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 13:38:11 +00:00
Stephan Aßmus
c3bfa6fec9
avoid a crash if used without attached buffer
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 13:33:15 +00:00
Stephan Aßmus
9543470f44
RootLayer thread can busy loop, and with this change, its easier to shoot app_server whereever it hurts most
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:13:19 +00:00
Stephan Aßmus
f6939eb1e1
more correct implementation, but still exhibits problems, usage turned off in ViewHWInterface::Invalidate
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:11:33 +00:00
Stephan Aßmus
94b3e6bfd0
ignore the pattern passed to the drawing functions, keep using the one from SetDrawData
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:08:10 +00:00
Stephan Aßmus
55a56d8b0e
added fake_input_server.cpp to the build
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12086 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:04:44 +00:00
Stephan Aßmus
022badfd34
extracted the fake input_server communication into an extra file used by ViewDriver and ViewHWInterface
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-28 11:04:00 +00:00
Stephan Aßmus
53115c9920
moved the place of implementation of locking in DisplayDriver, because the Painter version has it elsewhere. the DisplayDriver locking API is now abstract, the same locking is now in DisplayDriverImpl, Painter version uses HWInterface for locking
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 22:02:19 +00:00
Adi Oanca
d9bbe07efa
When the active window (the one who has both, focus and front states) changes, messages are sent to the client side. This makes BWindow::WindowActivated to be called on such am event.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 13:52:26 +00:00
Adi Oanca
80cbe2b0f3
2 new methods
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 13:48:30 +00:00
Adi Oanca
2401f93d84
Added FrontWinBorder(). Made FocusWinBorder() and a few other methods inline.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 12:58:27 +00:00
Adi Oanca
ab88eaf2ad
BWindows are notified when they are moved or resized.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 12:19:37 +00:00
Adi Oanca
867b420067
get_workspace_windows() new returns true if there was a change in window hierarchy. Improved performance a bit by avoiding an invalidate call.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 10:51:28 +00:00
Adi Oanca
aa498a5f03
get_workspace_windows() now returns bool
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 10:49:42 +00:00
Adi Oanca
9e358400f5
Sending windows into background works now.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 10:00:37 +00:00
Michael Lotz
6109122c9b
Implemented screen to screen blit and cleaned up header.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 05:29:56 +00:00
Michael Lotz
65369afd6d
Implement AS_LAYER_COPY_BITS.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 05:25:59 +00:00
Michael Lotz
f43d1e849d
Implement AS_LAYER_SET_PATTERN.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12065 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 04:08:33 +00:00
Michael Lotz
a2a622616f
Some cleanup to make it easier to read.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12064 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 03:33:23 +00:00
Michael Lotz
d5373f593a
Minor cleanup and a small fix
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-27 01:57:28 +00:00
Stephan Aßmus
c3314ff5eb
added DPMS functions to HWInterface as well as Initatialze and Shutdown, added a couple of TODO comments
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 23:23:40 +00:00
Stephan Aßmus
4594032d1a
got this added\?
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:26:42 +00:00
Stephan Aßmus
3294d07b15
abstract base class and implementation using BView and BWindow of an interface to a graphics card, UpdateQueue doesn't work yet, it was going to be used to decouple frame buffer transfers to the front buffer from the drawing in the back buffer
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12056 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:16:29 +00:00
Stephan Aßmus
5cdd702901
use a DisplayDriverPainter version if config says so
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:13:23 +00:00
Stephan Aßmus
1b52d7cf9c
include my new stuff in the build
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12054 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:12:37 +00:00
Stephan Aßmus
3d07835f2a
init display mode
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:11:52 +00:00
Stephan Aßmus
517e54d0d9
added more support functions
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:10:54 +00:00
Stephan Aßmus
80547db1f2
added some support functions for string bounding box
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12051 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:09:58 +00:00
Stephan Aßmus
4157339be2
started to implement stuff, it can actually be used and renders my test app almost like the old implementation, plus clipping
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:09:02 +00:00
Stephan Aßmus
e56d7bd374
fixed type in RootLayer, which I found because I triggered a bug
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 22:05:40 +00:00
Stephan Aßmus
e2408620c3
disable the build of agg_font_freetype.cpp for now
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12041 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 16:49:40 +00:00
Michael Lotz
0f1414c791
Add Jamfile for libpainter.a to fix the build of app_server.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 10:51:07 +00:00
Michael Lotz
2f45e7ed71
Update inline documentation to reflect the removal of the strlength field
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 10:40:13 +00:00
Adi Oanca
61c1519f03
Small fix to send B_MOUSE_MOVE/UP messages to the BView which acquired the mouse
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 09:18:27 +00:00
Adi Oanca
40b3f1e1ec
* clicking inside the active window no longer gets you into debugger. :-P
...
* Updated KeyboardEventHandler to use the new focus method.
* don't read strlength on B_KEY_DOWN/UP as this gets you into debugger when using ViewDriver.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 08:55:27 +00:00
Adi Oanca
07fdbe8f67
Moved app_server window a bit to the left.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 08:41:46 +00:00
Stephan Aßmus
80141c9fc5
libagg is now build as static
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 23:34:35 +00:00
Stephan Aßmus
1fc2bd8922
the beginnings of the Painter version of DisplayDriver, I don't know what I'm doing yet, so just ignore this for now
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 22:46:10 +00:00
Stephan Aßmus
a850bd1d8f
added Painter to the app_server build and fixed the Jamfile to include the drawing subfolder for header search path
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 22:44:18 +00:00
Michael Lotz
b1530ab8e8
When sending native keydown/keyup events the delivery of the string was broken.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 21:51:02 +00:00
Michael Lotz
96b832ac57
No need to endless loop here.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 21:39:53 +00:00
Michael Lotz
d31e3b8e27
Use FTFace() function to get the face instead of always creating a new one.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 21:11:46 +00:00
Michael Lotz
6d495dfc26
FT_New_Face is a quite heavy function and shouldn't be called for every StringWidth, StringHeight and DrawString call. We now keep it open in FontStyle and destroy it there too.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 21:02:40 +00:00
Michael Lotz
c98108eee3
The monitoring thread should be called "picasso" (lower case) as in BeOS R5.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 20:39:43 +00:00
Michael Lotz
22cf66212c
Update AccelerantDriver to the new API and implement all necessary functions.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 19:59:10 +00:00
Michael Lotz
0653d45f5b
Adapt to new location of display drivers
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 19:46:28 +00:00
Stephan Aßmus
c0fe8a07c9
moved Painter into drawing
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11989 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 17:55:49 +00:00
Stephan Aßmus
3ddd2fc70f
started to move files arround for better source structure, app_server still builds and runs fine, in case you were worried...
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11988 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 17:48:49 +00:00
Stephan Aßmus
10612543aa
step 3, exracted code from DisplayDriver into DisplayDriverImpl, adjusted the existing implementations to derive from the new class, got rid of some "friend" stuff along the way, essentially I made room for the new Painter based DisplayDriver implementation.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 17:29:20 +00:00
Stephan Aßmus
cd9401a70b
second step, all unused stuff is actually removed from DisplayDriver.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 13:27:20 +00:00
Stephan Aßmus
f595ecf898
as a first step, all appearently unused calls are commented outfrom DisplayDriver and derived classes, I moved many implementations arround to match the order of the declaration in the header, makes it easier to find stuff
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 13:14:59 +00:00
Axel Dörfler
89501e16b9
Forgot to update fonts Jamfiles - ideally, these should be moved somewhere else,
...
maybe into the data/ directory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 14:51:25 +00:00
Axel Dörfler
33bbe22391
Moved app_server files to app/.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 14:45:52 +00:00
Axel Dörfler
7abf63d292
Moved app directory out of the way to ease moving.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 14:43:40 +00:00
Axel Dörfler
13b81f062e
Removed old app_server files. server/ will be moved on layer up next.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 14:31:53 +00:00
Stephan Aßmus
bdef3a8ede
spotted some potetial segfault bugs
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-24 12:59:13 +00:00
Stephan Aßmus
592bc7d4a3
updated
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11968 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 23:13:29 +00:00
Stephan Aßmus
a0ee6395cd
updated
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11967 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 23:10:43 +00:00
Stephan Aßmus
6fb68b835c
added missing string rendering functions, on Haiku, there should be support for drawing bitmaps in all colorspaces that BBitmap::ImportBits knows how to convert to B_RGB32
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 22:34:45 +00:00
Stephan Aßmus
8df0e71d06
support rendering strings up to a certain length, ie less then strlen
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 22:33:06 +00:00
Stephan Aßmus
a0c67cdb39
refactored DrawBitmap to support a version BBitmaps and one for ServerBitmaps, implemented InvertRect, but that was a while ago, and I didn't test it
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-23 20:31:33 +00:00
Adi Oanca
165177a105
Added support for Layers capturing the mouse (Mouse events). Changed WinBorder to use mouse events.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-21 20:29:24 +00:00
Adi Oanca
464ebc06c7
Some extra locking when adding a WinBorder
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-19 19:08:19 +00:00
Adi Oanca
07bde8ab89
* solved that damn bug that run me into debugger. yuppyyy.
...
* removed some comments
* mouse down messages go only to the view that has focus. Yeah, they didn't. :p
* solved a bug where some windows did not redraw when hiding a modal.
* another bug where a floating window would not come in front for gaining focus.
* added client's team_id into window title.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-19 18:58:47 +00:00
Adi Oanca
48e72f82e6
Removing subset windows works now.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-18 19:00:45 +00:00
Adi Oanca
ddf57545a2
Improved locking. A bit. :-)
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-17 17:41:00 +00:00
Adi Oanca
211de495df
Keyboard and Mouse handlers went private.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-17 17:37:56 +00:00
Adi Oanca
943ba1b132
MoveToFront() returned 'invalidate' for a floating window when it shouldn't; window was already in front as possible.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-17 17:36:30 +00:00
Adi Oanca
89bdde9df1
There was too much debug output for regions rebuilding
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-14 20:59:00 +00:00
Adi Oanca
8b4cf1c373
Fixed a problem with floating subset windows not being shown when their main window became active. (Cleared visible regions for it and its children when automatically being removed from workspace)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11739 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-14 19:25:15 +00:00
Adi Oanca
c14d3fc9bd
Some progress on supporting subset windows.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-13 22:54:01 +00:00
Adi Oanca
8866e7b709
RootLayer.h: introduced a method for highlighting window tab when focus
...
changes.
RootLayer.cpp: window tab was properly lit only when changing focus with
the mouse. Now the same happens when showing or hidding windows.
Desktop.cpp: normal windows created after floating windows did not had
B_FLOATING_APP_WINDOW_FEEL windows in their internal list, thus when such
a window was selected to become the front most it did not show floating
app windows in front of it. Fixed that now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11710 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-13 19:53:44 +00:00
Adi Oanca
9015d08261
.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-13 17:07:40 +00:00
Adi Oanca
c9df3905a8
Improved performance when getting windows list from the active workspace. no more call malloc() every time the list was needed.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-12 23:26:05 +00:00
Adi Oanca
a6fa470989
Window tab is highlighted/grayed when changing between windows
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-10 22:07:44 +00:00
Adi Oanca
d3beb2a46c
Window moving and resizing resumed
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-10 21:34:04 +00:00
Adi Oanca
d29c4f5287
Some objects must be destroyed on server quit.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 21:52:41 +00:00
Adi Oanca
74d5a8f70e
Fixed a couple of crashes. app_server nicely quits now.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 23:21:36 +00:00
Adi Oanca
e438905abd
New window manager comming in.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-28 20:23:51 +00:00
DarkWyrm
348f28e773
Removed the locking from RootLayer::Buttons -- caused a hang in the one place it is called. (doh!)
...
Implemented ServerApp handler for BFont::CountTuned and added a standby handler for BFont::Direction
Tweaked the ServerWindow debug output
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11457 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-23 01:45:48 +00:00
Adi Oanca
0b9056c784
BMessages which reach BWindow now take full advantage of application_kit's power in sending BMessages to BHandlers
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-07 00:45:59 +00:00
DarkWyrm
a7870927a4
Implemented AS_SET_FAMILY_AND_STYLE_FROM_ID. One more thing that works better than R5. ;)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-05 22:46:54 +00:00
DarkWyrm
ee1240b38e
RootLayer now tracks which mouse buttons are down
...
Implemented ServerWindow code for GetMouse
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-05 21:39:39 +00:00
DarkWyrm
fac4ccbae7
Made Layer::RequestDraw actually request a screen update
...
Added a second method for ServerFont::SetFamilyAndStyle and added return codes
Removed a couple memory leaks
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-05 20:12:05 +00:00
Stephan Aßmus
6c1ebb0fcb
huge cleanup and more style guide conformance, removed agg namespace, used marcos for inlined blending functions to avoid dereferencing, which gives a small speedup
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-04 15:52:46 +00:00
Stephan Aßmus
2902c1573a
a little clean up, usage of unpacked scanline container gives a small speedup
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-04 15:45:12 +00:00
Stephan Aßmus
033e1e690c
DrawingMode is no longer in agg namespace, an ellipse is drawn with a minimum of 12 sections
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-04 15:43:23 +00:00
Adi Oanca
998521f78d
Helped BWindow for calling the apropriate BView hook methods on some mouse and keyboard events
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-03 22:50:48 +00:00
Adi Oanca
0a09721a2c
Added a private field to B_MOUSE_DOWN message to know whose BView::MouseDown() method to call
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-03 21:31:42 +00:00
DarkWyrm
f3721fd1d7
Tweaked the GetSystem font calls to prevent memory leaks
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-01 23:23:45 +00:00
shadow303
b9717a7150
Long overdue fixes for internal API change, now if I could just unbork my system enough to test them...
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-29 00:19:38 +00:00
Stephan Aßmus
aaea96798d
the version for B_OP_COPY that ignores the pattern and uses the color from the AGG renderer directly, thus the renderer color needs to be set up correctly, which Painter does take care of
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 21:49:00 +00:00
Stephan Aßmus
884e8bc6b5
flag for using a solid version of a DrawingMode, currently only B_OP_COPY actually has an implementation
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 21:45:59 +00:00
Stephan Aßmus
597841da50
trying to optimize for B_SOLID_XXXX, implemented separate _SetPattern function, which encourages usage of a special DrawinMode instance, but it is currently not used, because it didn't give much speedup.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11111 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 21:44:38 +00:00
Stephan Aßmus
4f6cd6ef55
some additional status information
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 13:10:06 +00:00
Stephan Aßmus
d4734e04d1
support for switching the alpha drawing mode when the blending mode changes
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 13:07:21 +00:00
Stephan Aßmus
8eca754bfd
support for the rest of the drawing modes
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 13:05:37 +00:00
Stephan Aßmus
3741b755dc
huge clean up
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 13:02:27 +00:00
Stephan Aßmus
681c4b3ba5
rest of the drawing modes
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-28 12:59:17 +00:00
haydentech
c0e4d12489
AS_LAYER_POP_STATE was inadvertantly deleting the entire layerdata stack instead of just popping the top one off
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-27 23:16:28 +00:00
Adi Oanca
faa0ed6a33
s/(c) 2001-2002, OpenBeOS./(c) 2001-2005, Haiku, Inc.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 20:44:09 +00:00
Adi Oanca
574540edd2
Removed a redundant BMessage when mouse button was pressed. This message is already sent by WinBorder::MouseDown(). Window content was redraw when a window became active. Removed some code that anyway was not used. It will be replaced by the new window manager which is comming soon.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 21:04:23 +00:00
Adi Oanca
c4e214743d
All 'Invalidate' methods are now private, intended for RootLayer's use only.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 20:59:27 +00:00
Adi Oanca
304feb8ad5
RebuildAndForceRedraw() is not needed anymore
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 20:57:51 +00:00
Adi Oanca
bd1ede2ae9
Yes... I really don't remember why I haven't subclassed FMWList from BList...
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 17:34:47 +00:00
Adi Oanca
383461c7ee
3 global variables (gRedrawReg, gCopyRegList, gCopyList) went into RootLayer's property
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-24 17:18:19 +00:00
DarkWyrm
c0dc91fc00
Since last checkin version had no description:
...
Huge amounts more debug output available
Resolved several timing issues
Fixed a major problem with sending mouse messages to the server when emulating the input server
There are still stability issues with initial startup
Still some drawing problems
It *works*!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 18:59:50 +00:00
DarkWyrm
2471ba9f3d
Cleaned up driver init section of Desktop -- worry about multiple drivers only with AccelerantDriver
...
RootLayer: debug output fixes and removed a compiler complaint
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 18:22:48 +00:00
DarkWyrm
c36b4a4409
messaging fixes to RootLayer and ViewDriver
...
minor tweaks to ServerWindow
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 15:39:01 +00:00
DarkWyrm
7605e77d21
Added GetFamilyAndStyle
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-23 13:40:11 +00:00
Adi Oanca
63f09583e3
Oups. Layer::MoveBy/ResizeBy() escaped me. :-) The actions they used to perform are now executed only by RootLayer's thread.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-22 23:25:41 +00:00
Adi Oanca
b4fe86df56
Yes... B_FULL_UPDATE_ON_RESIZE on Layer resize not with every redraw. :-D
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10966 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-22 21:51:39 +00:00
Adi Oanca
ed446d324d
ServerWindow.cpp:
...
* made MonitorWin thread wait until associated WinBorder is hidden
and RootLayer's lock is acquired.
RootLayer.cpp:
* added 2 public methods for calculating visible regions.
ALL:
* all previous 'Invalidate' methods now call RootLayer's ones.
That's it, all region calculations are done in the context of the
high priority thread: WorkingThread.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10961 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-22 20:51:12 +00:00
Adi Oanca
864a2c6456
Window showing/hiding is now done in RootLayer::WorkingThread's context
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:18:25 +00:00
Adi Oanca
f6e53a25ec
No need to lock anymore when calling ServerWindow::SendMessageToClient()
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10937 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:16:15 +00:00
Adi Oanca
6a257c30a9
Moved window moving code from ServerWindow. CPU consuming operations now run win WorkingThread's context. Added locking mechanism for WorkingThread. Removed locking arround ServerWindow::SendMessageToClient().
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:13:00 +00:00
Adi Oanca
1cd22df0dc
Added 2 private methods for showing/hiding WinBorders. Added a BLocker member.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:09:06 +00:00
Adi Oanca
fde7aed2ee
Moved 'Invalidate' calls in RootLayer.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 21:06:59 +00:00
DarkWyrm
56bead3235
Implemented ServerFont::SetFamilyAndStyle(id,id)
...
Other API tweaks to ServerFont
Style changes in ServerFont
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10928 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 13:13:08 +00:00
DarkWyrm
de48335a77
Added handlers for a few unhandled and unimplemented BView calls
...
BView::GetMouse won't block the app for now, at least
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-21 02:01:28 +00:00
Stephan Aßmus
08f1d3c965
refactoring and cleanup
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 23:26:13 +00:00
Stephan Aßmus
34651df507
extracted general blending function
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 23:24:02 +00:00
Stephan Aßmus
f71ffba994
implemented more drawing modes, refactored a little, still work left to do...
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 23:07:07 +00:00
Stephan Aßmus
95ff0e4fe8
Maybe I have actually nailed bitmap scaling, though I would think that the BView implementation doesn't exactly follow the Be Book. Could be I'm overlooking something. Anyways, Painter seems to behave like the original now. The previous revision had a compile error too for aliased drawing.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10917 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 22:57:17 +00:00
Adi Oanca
84b62fccc0
* closing a window no longer takes you to debugger
...
* send mouse_[move/up/weel] only if the cursor is inside a window(not
above decorator)
* added WinBorder::MouseWheel()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 18:39:08 +00:00
Adi Oanca
8357c93db5
Fixed that annoying cursor bug where the window dissapeared on moving
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 17:30:37 +00:00
Stephan Aßmus
30fd3eb18a
line profile is now cached by being a member of Painter, as was suggested by Maxim, it's too heavy an object for being created on the fly
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 15:23:23 +00:00
Stephan Aßmus
db94952b4f
updated info
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:54:42 +00:00
Stephan Aßmus
8cd6385cfe
adopted for different PatternHandler version
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:27:08 +00:00
Stephan Aßmus
cb8e43abdf
now integrated with Haiku build system, so no more need for this
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:23:07 +00:00
Stephan Aßmus
2e4822e67d
new B_OP_ADD drawing mode
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:15:58 +00:00
Stephan Aßmus
9e89de2ca6
adopted to different PatternHandler version
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:14:50 +00:00
Stephan Aßmus
1b837c4b6b
there can only be one
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:13:10 +00:00
Stephan Aßmus
7ca3c69091
added some convinience functions to handle rgb_color additionally to RGBColor
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 14:10:11 +00:00
Stephan Aßmus
0a86682dd0
this code is part of the Painter testing framework, and thus doesn't belong here
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 12:53:26 +00:00
Stephan Aßmus
ba35b5d77d
this file has been moved to headers/private/servers/app
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-20 12:44:07 +00:00
DarkWyrm
7a5829aab1
Made modifications to send keyboard messages to client applications
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 18:59:41 +00:00
Adi Oanca
aea21365e7
Cursor operations are made through RootLayer's(ATM, the only one) CursorManager and visible settings directly call RootLayer's DisplayDriver.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 18:00:05 +00:00
Adi Oanca
3b5df3c151
'cursormanager' not global anymore
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 17:55:50 +00:00
Adi Oanca
eb7b20d820
RootLayer now has a stack allocated CursorManager
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 17:54:03 +00:00
Adi Oanca
f9ef06250c
FindCursor is now public
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-19 17:52:53 +00:00