Simon Fels
5c7b0adf8c
Synchronize application icons with the host
2017-01-06 18:33:27 +01:00
Simon Fels
bd48e95d2b
Error out early when container manager is not available
2017-01-03 12:28:18 +01:00
Simon Fels
6307ee4b65
Reformat all code parts
2017-01-03 09:18:10 +01:00
Simon Fels
a5993a7023
Fix formatting of comment
2017-01-03 09:15:22 +01:00
Simon Fels
7e80f282a0
Don't send exception when already stopped container can't be stopped again
2017-01-03 09:13:06 +01:00
Simon Fels
d11a281d6c
Terminate process when container manager disconnects or container start fails
2017-01-03 09:12:19 +01:00
Simon Fels
7a2cef31da
Run container as unprivileged for enhanced security
...
On the Android side this requires no change with the current setup.
2017-01-03 09:11:10 +01:00
Simon Fels
128cc2422d
Add unit tests for LayerComposer
2016-12-23 15:40:33 +01:00
Simon Fels
dbbb8ab795
Add unit tests for BufferedIOStream
2016-12-23 15:40:33 +01:00
Simon Fels
3529b83753
Add unit tests for imported things from Android emulator
2016-12-23 15:40:33 +01:00
Simon Fels
f7cabbf8ff
Use largest layer of a window to calculate relative layer positions
...
As a window can be built out of multiple layers we need to take one as
the primary one which covers the entire window area. As it is not
guranteed that the layer size will match the actual window size cause
of synchronizaton delays with the Android side window manager we take
the layer as primary which covers the largest screen area. This should
solve most issues.
2016-12-23 15:38:35 +01:00
Simon Fels
3d051a4056
Update window frame when window is moved rathern when state was updated
...
This leads to incorrect calculations of the layer position calculation
inside the window.
2016-12-22 08:33:33 +01:00
Simon Fels
c4664603fd
Check errno correctly for errors to ignore
2016-12-21 10:32:07 +01:00
Simon Fels
9f69c580af
Get rid of renderer singleton
2016-12-21 10:02:02 +01:00
Simon Fels
aeff6e35df
Cleanup formatting and code style
2016-12-21 08:40:40 +01:00
Simon Fels
3e70f5a548
Don't require alpha bits for the renderer config
...
This prevents certain client applications in the container to work.
2016-12-21 08:40:40 +01:00
Simon Fels
7ce2da3be3
Rework client renderer setup
...
This gets us rid of one unneeded socket based communication point which
we kept around for historic reasons (from Android QEMU) but don't really
need in our case. This allows a simplication of our setup and improves
performance.
2016-12-21 08:40:40 +01:00
Simon Fels
324407eeaa
Allow clients to specify the launch bounds of a new activity
2016-12-21 08:39:44 +01:00
Simon Fels
14d8bb2390
Calculate correct texture coordinates on created primitives
2016-12-19 09:17:11 +01:00
Simon Fels
4e72494aeb
Calculate correct relative position for all renderables
2016-12-19 09:16:44 +01:00
Simon Fels
a3151b6a07
Calculate display bounds for all available displays
...
The hwcomposer module for Android doesn't support multi-monitor well
enough for our use case yet so we give Android a large enough primary
display. This may have negative effects performance wise for the until
we disabled all non freeform stack and wallpaper related rendering on
the Android side so that only visible windows are drawn to not waste
any GPU cycles on things we don't render anyway.
2016-12-19 08:00:50 +01:00
Simon Fels
009cbb3402
Don't stop SDL event processing thread when it is not running
2016-12-19 08:00:16 +01:00
Simon Fels
2f849059c2
Correct texture and frame size calculation to be correct in offscreen areas
2016-12-19 07:21:12 +01:00
Simon Fels
abb0497a5d
Cleanup formatting
2016-12-15 09:20:36 +01:00
Simon Fels
4ec5f8f313
Drop superflous debug log message
2016-12-15 08:49:11 +01:00
Simon Fels
03583e360c
Get rid of unwanted debug message
2016-12-08 17:07:36 +01:00
Simon Fels
fc55e2c59a
Get rid of dropping capabilities as this prevents gaining relevant ones in the container
2016-12-08 17:06:52 +01:00
Simon Fels
e12ed13962
Map /dev/fuse to make Android volume manager happy
2016-12-08 07:10:52 +01:00
Simon Fels
65531a3b82
Handle window movement/resize/close on our side and not in Android
...
This leads to much better performance and user interaction. Resizing
still has some flickering but that is a different area of problems.
2016-12-08 07:08:47 +01:00
Simon Fels
b31d79ca08
Only use bridge if available to prevent container startup failures
...
LXC doesn't start the container when the configured network interface
(the bridge in this case) is not available.
2016-12-04 11:57:40 +01:00
Simon Fels
9c89d8247e
Use run command as default when no command is supplied
2016-12-03 17:11:24 +01:00
Simon Fels
4e07be3754
Use correct target paths inside rootfs path for bind mounts
2016-12-03 15:23:23 +01:00
Simon Fels
b10382d2d8
Reformat all code and use the Google cpp code style
2016-12-02 17:38:43 +01:00
Simon Fels
48bd7f9692
Respect layer crop when calculating surface dimensions and position
2016-12-02 16:31:05 +01:00
Simon Fels
00aadb5467
Improve application manangement and create desktop entries for available app
2016-12-02 16:11:38 +01:00
Simon Fels
e75940711b
Always start new applications on the freeform stack
2016-11-29 06:18:01 +01:00
Simon Fels
972260b76c
Don't throw exception for socket failure as we already bring down the connection
2016-11-28 07:55:50 +01:00
Simon Fels
89869934b9
Drop unneeded include of utils header file
2016-11-28 07:42:08 +01:00
Simon Fels
52aee51bbe
Drop not available logging function in rpc message processor
2016-11-27 16:03:58 +01:00
Simon Fels
06b529e0a0
Implement simple network bridge
2016-11-26 13:38:38 +01:00
Simon Fels
ac8c4a9305
Correct RPC message processing and invocation id assignment
2016-11-26 13:05:24 +01:00
Simon Fels
84b3fa430b
Set focus to current active window
2016-11-26 13:04:50 +01:00
Simon Fels
161099057b
Add missing changes for window implementation
2016-11-25 08:51:38 +01:00
Simon Fels
a40fe51654
Use events instead of method invokes for window state updates and others
2016-11-25 08:50:43 +01:00
Simon Fels
53c2fac5d4
Improve window/layer handling for less flickering and better window movement
2016-11-25 07:14:20 +01:00
Simon Fels
06aacfe4df
Pass stack id as part of the window state update
2016-11-25 07:13:05 +01:00
Simon Fels
76757fe085
Add dirty hack to get rid of home window/task for now
2016-11-23 12:45:14 +01:00
Simon Fels
08024962e0
Set correct viewport for every window we render
2016-11-23 12:44:53 +01:00
Simon Fels
8018942323
Implement renderer instance which composes multiple layers into a window
2016-11-23 12:16:20 +01:00
Simon Fels
d4b4a795c3
Restructure window creation and mangement
2016-11-20 17:08:05 +01:00