static void TegraLeaveVT(VT_FUNC_ARGS_DECL) { SCRN_INFO_PTR(arg); TegraPtr tegra = TegraPTR(pScrn); xf86_hide_cursors(pScrn); pScrn->vtSema = FALSE; drmDropMaster(tegra->fd); }
Bool xf86_cursors_init (ScreenPtr screen, int max_width, int max_height, int flags) { ScrnInfoPtr scrn = xf86Screens[screen->myNum]; xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn); xf86CursorInfoPtr cursor_info; cursor_info = xf86CreateCursorInfoRec(); if (!cursor_info) return FALSE; xf86_config->cursor_image = malloc(max_width * max_height * 4); if (!xf86_config->cursor_image) { xf86DestroyCursorInfoRec (cursor_info); return FALSE; } xf86_config->cursor_info = cursor_info; cursor_info->MaxWidth = max_width; cursor_info->MaxHeight = max_height; cursor_info->Flags = flags; cursor_info->SetCursorColors = xf86_set_cursor_colors; cursor_info->SetCursorPosition = xf86_set_cursor_position; cursor_info->LoadCursorImage = xf86_load_cursor_image; cursor_info->HideCursor = xf86_hide_cursors; cursor_info->ShowCursor = xf86_show_cursors; cursor_info->UseHWCursor = xf86_use_hw_cursor; #ifdef ARGB_CURSOR if (flags & HARDWARE_CURSOR_ARGB) { cursor_info->UseHWCursorARGB = xf86_use_hw_cursor_argb; cursor_info->LoadCursorARGB = xf86_load_cursor_argb; } #endif xf86_config->cursor = NULL; xf86_hide_cursors (scrn); return xf86InitCursor (screen, cursor_info); }