This commit is contained in:
nakst 2021-09-08 09:03:29 +01:00
parent 55edbd26be
commit 81cc802542
2 changed files with 5 additions and 2 deletions

View File

@ -769,6 +769,8 @@ int ProcessRootMessage(EsElement *element, EsMessage *message) {
EsSyscall(ES_SYSCALL_WINDOW_SET_PROPERTY, window->handle, ES_WINDOW_SOLID_TRUE, 10 * theming.scale, ES_WINDOW_PROPERTY_SOLID); EsSyscall(ES_SYSCALL_WINDOW_SET_PROPERTY, window->handle, ES_WINDOW_SOLID_TRUE, 10 * theming.scale, ES_WINDOW_PROPERTY_SOLID);
EsRectangle embedInsets = ES_RECT_4(WINDOW_INSET, WINDOW_INSET, WINDOW_INSET + CONTAINER_TAB_BAND_HEIGHT, WINDOW_INSET); EsRectangle embedInsets = ES_RECT_4(WINDOW_INSET, WINDOW_INSET, WINDOW_INSET + CONTAINER_TAB_BAND_HEIGHT, WINDOW_INSET);
EsSyscall(ES_SYSCALL_WINDOW_SET_PROPERTY, window->handle, (uintptr_t) &embedInsets, 0, ES_WINDOW_PROPERTY_EMBED_INSETS); EsSyscall(ES_SYSCALL_WINDOW_SET_PROPERTY, window->handle, (uintptr_t) &embedInsets, 0, ES_WINDOW_PROPERTY_EMBED_INSETS);
EsRectangle opaqueBounds = ES_RECT_4(WINDOW_INSET, window->windowWidth - WINDOW_INSET, WINDOW_INSET, window->windowHeight - WINDOW_INSET);
EsSyscall(ES_SYSCALL_WINDOW_SET_PROPERTY, window->handle, (uintptr_t) &opaqueBounds, 0, ES_WINDOW_PROPERTY_OPAQUE_BOUNDS);
} else { } else {
response = ProcessWindowBorderMessage(window, message, bounds, WINDOW_INSET - BORDER_THICKNESS, WINDOW_INSET); response = ProcessWindowBorderMessage(window, message, bounds, WINDOW_INSET - BORDER_THICKNESS, WINDOW_INSET);
} }

View File

@ -488,13 +488,14 @@ SYSCALL_IMPLEMENT(ES_SYSCALL_WINDOW_SET_BITS) {
bool isEmbed = _window.type == KERNEL_OBJECT_EMBEDDED_WINDOW; bool isEmbed = _window.type == KERNEL_OBJECT_EMBEDDED_WINDOW;
Window *window = isEmbed ? ((EmbeddedWindow *) _window.object)->container : ((Window *) _window.object); Window *window = isEmbed ? ((EmbeddedWindow *) _window.object)->container : ((Window *) _window.object);
Surface *surface = &window->surface;
EsRectangle insets = window->embedInsets;
if (!window || (isEmbed && currentProcess != ((EmbeddedWindow *) _window.object)->owner)) { if (!window || (isEmbed && currentProcess != ((EmbeddedWindow *) _window.object)->owner)) {
SYSCALL_RETURN(ES_SUCCESS, false); SYSCALL_RETURN(ES_SUCCESS, false);
} }
Surface *surface = &window->surface;
EsRectangle insets = window->embedInsets;
if (isEmbed) { if (isEmbed) {
region = Translate(region, insets.l, insets.t); region = Translate(region, insets.l, insets.t);
} }