* Introduced a new handshake between input_server and app_server, and some

temporary handling code in the app_server.
* RootLayer no longer creates the input_server messaging port - this is now
  the responsibility of the input_server.
* Moved AS_CREATE_[OFFSCREEN_]WINDOW from ServerApp::_MessageLooper() to
  _DispatchMessage().
* The RootLayer thread is now started as soon as the input_server is there.
* removed or disabled any input_server stuff in the AppServer class.
* removed old message commmands to the app_server.
* Removed the R5_CURSOR_COMM and HAIKU_APPSERVER_COMM definitions: the
  input_server is now automatically built correctly depending on the target.
* InputServer::EventLoop() plays now safe and checks for error conditions.
* InputServer::EnqueueDeviceMessage() seems to leak memory, added TODO about
  this.
* InputServer event loop messaging uses ports for inner-app communication - why?
* The InputServer event loop thread is no longer killed on exit, it just quits
  when its port is gone.
* Minor cleanup in input_server.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14949 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2005-11-15 19:59:53 +00:00
parent af8899c4bf
commit 6c17d02551
13 changed files with 345 additions and 217 deletions
+14
View File
@@ -1,3 +1,11 @@
/*
* Copyright 2001-2005, Haiku, Inc. All Rights Reserved.
* Distributed under the terms of the MIT License.
*/
#ifndef INPUT_SERVER_TYPES_H
#define INPUT_SERVER_TYPES_H
#define IS_GET_MOUSE_TYPE 'Igmt'
#define IS_SET_MOUSE_TYPE 'Ismt'
#define IS_GET_MOUSE_ACCELERATION 'Igma'
@@ -31,6 +39,10 @@
#define IS_CONTROL_DEVICES 'Icnd'
#define SYSTEM_SHUTTING_DOWN 'SSDn'
// app_server communication
#define IS_ACQUIRE_INPUT 'Iaqi'
#define IS_RELEASE_INPUT 'Irli'
// Method Replicant
#define IS_SET_METHOD 'MRsm'
#define IS_METHOD_REGISTER 'MRmr'
@@ -40,3 +52,5 @@
#define IS_UPDATE_METHOD 'MRu!'
#define IS_ADD_METHOD 'MRa!'
#define IS_REMOVE_METHOD 'MRr!'
#endif /* INPUT_SERVER_TYPES_H */
@@ -0,0 +1,21 @@
/*
* Copyright 2005, Haiku, Inc. All Rights Reserved.
* Distributed under the terms of the MIT License.
*
* Authors:
* Axel Dörfler, [email protected]
*/
#ifndef SHARED_CURSOR_AREA_H
#define SHARED_CURSOR_AREA_H
#include <SupportDefs.h>
struct shared_cursor {
uint32 pos;
int32 read;
};
#endif /* SHARED_CURSOR_AREA_H */