macos window title/size
* add macOS implmentation for oc_window_set_title() * move implementation of oc_window_set_content_size() to a block that is guaranteed to run on the main thread
This commit is contained in:
parent
9ed636e018
commit
fad375c403
|
@ -1471,6 +1471,29 @@ bool oc_window_is_focused(oc_window window)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void oc_window_set_title(oc_window window, oc_str8 title)
|
||||||
|
{
|
||||||
|
dispatch_block_t block = ^{
|
||||||
|
@autoreleasepool
|
||||||
|
{
|
||||||
|
oc_window_data* windowData = oc_window_ptr_from_handle(window);
|
||||||
|
if(windowData)
|
||||||
|
{
|
||||||
|
windowData->osx.nsWindow.title = [[NSString alloc] initWithBytes:title.ptr length:title.len encoding:NSUTF8StringEncoding];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
if([NSThread isMainThread])
|
||||||
|
{
|
||||||
|
block();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dispatch_sync(dispatch_get_main_queue(), block);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
bool oc_window_is_minimized(oc_window window)
|
bool oc_window_is_minimized(oc_window window)
|
||||||
{
|
{
|
||||||
@autoreleasepool
|
@autoreleasepool
|
||||||
|
@ -1634,9 +1657,9 @@ oc_rect oc_window_get_content_rect(oc_window window)
|
||||||
|
|
||||||
void oc_window_set_content_rect(oc_window window, oc_rect rect)
|
void oc_window_set_content_rect(oc_window window, oc_rect rect)
|
||||||
{
|
{
|
||||||
|
dispatch_block_t block = ^{
|
||||||
@autoreleasepool
|
@autoreleasepool
|
||||||
{
|
{
|
||||||
|
|
||||||
oc_window_data* windowData = oc_window_ptr_from_handle(window);
|
oc_window_data* windowData = oc_window_ptr_from_handle(window);
|
||||||
if(windowData)
|
if(windowData)
|
||||||
{
|
{
|
||||||
|
@ -1652,6 +1675,16 @@ void oc_window_set_content_rect(oc_window window, oc_rect rect)
|
||||||
[windowData->osx.nsWindow setFrame:frameRect display:YES];
|
[windowData->osx.nsWindow setFrame:frameRect display:YES];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
if([NSThread isMainThread])
|
||||||
|
{
|
||||||
|
block();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dispatch_sync(dispatch_get_main_queue(), block);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------
|
//--------------------------------------------------------------------
|
||||||
|
|
Loading…
Reference in New Issue