summaryrefslogtreecommitdiff
path: root/documentation/compositor.txt
diff options
context:
space:
mode:
authorBenji Dial <benji@benjidial.net>2024-05-20 17:40:47 -0400
committerBenji Dial <benji@benjidial.net>2024-05-20 17:40:47 -0400
commit9af5588c30c4126a2800aae1afcb0de2c373dc6c (patch)
treed2a48a97b1664f958b5f88a8b0c03ef8366b0f49 /documentation/compositor.txt
parent5a54df93c4e9368c36e69d1e9c88cd2904e92308 (diff)
downloadhilbert-os-9af5588c30c4126a2800aae1afcb0de2c373dc6c.tar.gz
rewrite application stuff in the kernel to support multitasking
Diffstat (limited to 'documentation/compositor.txt')
-rw-r--r--documentation/compositor.txt32
1 files changed, 25 insertions, 7 deletions
diff --git a/documentation/compositor.txt b/documentation/compositor.txt
index 8946eff..7442d51 100644
--- a/documentation/compositor.txt
+++ b/documentation/compositor.txt
@@ -1,14 +1,25 @@
compositors listen on the socket id "hilbert.compositor".
+when a window is opened by an application, that window can only be referred to
+on that stream. the opaque value given in the "window opened" message refers to
+that window in future messages on that stream. it is guaranteed to be distinct
+for different windows on the same stream, and in no way guaranteed to be
+distinct for different windows on different streams. the window is bound
+just to the stream, not to the application. if the stream where a window
+was created is gifted to a new process, the new process has complete control
+over the window, and the compositor does not need to be informed.
+
data types:
- color24:
- byte: red
- byte: green
- byte: blue
+ color:
+ opaque dword (result of encode color system call).
+ from c++, use __euler_encode_color in euler/syscall.hpp.
+
+ color rectangle:
+ multiple hilbert colors, top to bottom by row, left to right within row
- color24 rectangle:
- multiple color24's, top to bottom by row, left to right within row
+ window:
+ opaque word (given in "window opened" message after "open window" message)
messages from applications to compositor:
@@ -19,8 +30,15 @@ messages from applications to compositor:
update window region:
byte: 0x01
+ window: the window
dword: start x
dword: start y
dword: width
dword: height
- color24 rectangle: the data
+ color rectangle: the data
+
+messages from compositor to application:
+
+ window opened:
+ byte: 0x00
+ window: the window