Commit Graph

447 Commits

Author SHA1 Message Date
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