20#include <freerdp/config.h>
22#include <winpr/assert.h>
23#include <winpr/wlog.h>
25#include <freerdp/channels/disp.h>
26#include <freerdp/client/disp.h>
28#include "android_disp.h"
30#define TAG CLIENT_TAG("android.disp")
32BOOL android_disp_init(
androidContext* afc, DispClientContext* disp)
40 WLog_DBG(TAG,
"disp channel connected");
44BOOL android_disp_uninit(
androidContext* afc, DispClientContext* disp)
50 WLog_DBG(TAG,
"disp channel disconnected");
54BOOL android_disp_send_monitor_layout(
androidContext* afc, UINT32 width, UINT32 height)
58 DispClientContext* disp = afc->disp;
59 if (!disp || !disp->SendMonitorLayout)
61 WLog_WARN(TAG,
"disp channel not available");
65 rdpSettings* settings = afc->common.context.settings;
68 layout.Flags = DISPLAY_CONTROL_MONITOR_PRIMARY;
69 layout.Top = layout.Left = 0;
71 layout.Height = height;
72 layout.PhysicalWidth = 0;
73 layout.PhysicalHeight = 0;
78 UINT rc = disp->SendMonitorLayout(disp, 1, &layout);
79 if (rc != CHANNEL_RC_OK)
81 WLog_ERR(TAG,
"SendMonitorLayout failed: %" PRIu32, rc);
85 WLog_DBG(TAG,
"SendMonitorLayout: %" PRIu32
"x%" PRIu32, width, height);
WINPR_ATTR_NODISCARD FREERDP_API UINT16 freerdp_settings_get_uint16(const rdpSettings *settings, FreeRDP_Settings_Keys_UInt16 id)
Returns a UINT16 settings value.
WINPR_ATTR_NODISCARD FREERDP_API UINT32 freerdp_settings_get_uint32(const rdpSettings *settings, FreeRDP_Settings_Keys_UInt32 id)
Returns a UINT32 settings value.