NANA_POSIX for bits common to Linux, MacOS and BSD. OSS sound as fall-back for POSIX. Cheat for detecting default browser on POSIX.

This commit is contained in:
unitrunker
2018-01-21 23:41:52 -06:00
parent 81018c21fd
commit c7434afed8
28 changed files with 415 additions and 176 deletions

View File

@@ -256,7 +256,7 @@ namespace detail
std::vector<key_value_rep> table_;
};
//class window_manager
//class window_manager
//struct wdm_private_impl
struct window_manager::wdm_private_impl
{
@@ -835,7 +835,7 @@ namespace detail
std::lock_guard<mutex_type> lock(mutex_);
if (!impl_->wd_register.available(wd))
return false;
auto & brock = bedrock::instance();
bool moved = false;
const bool size_changed = (r.width != wd->dimension.width || r.height != wd->dimension.height);
@@ -906,12 +906,12 @@ namespace detail
// window again, otherwise, it causes an infinite loop, because when a root_widget is resized,
// window_manager will call the function.
bool window_manager::size(core_window_t* wd, nana::size sz, bool passive, bool ask_update)
{
{
//Thread-Safe Required!
std::lock_guard<mutex_type> lock(mutex_);
if (!impl_->wd_register.available(wd))
return false;
auto & brock = bedrock::instance();
if (sz != wd->dimension)
{
@@ -1168,7 +1168,7 @@ namespace detail
}
bool window_manager::set_parent(core_window_t* wd, core_window_t* newpa)
{
{
//Thread-Safe Required!
std::lock_guard<mutex_type> lock(mutex_);
if (!impl_->wd_register.available(wd))
@@ -1248,7 +1248,7 @@ namespace detail
//The menubar token window will be redirected to the prev focus window when the new
//focus window is a menubar.
//The focus window will be restored to the prev focus which losts the focus becuase of
//memberbar.
//memberbar.
if (prev_focus && (wd == wd->root_widget->other.attribute.root->menubar))
wd = prev_focus;
@@ -1396,7 +1396,7 @@ namespace detail
return tabs.front();
}
}
else if (tabs.size() > 1) //at least 2 elments in tabs are required when moving backward.
else if (tabs.size() > 1) //at least 2 elments in tabs are required when moving backward.
{
auto i = std::find(tabs.begin(), end, wd);
if (i != end)
@@ -1564,7 +1564,7 @@ namespace detail
}
}
void window_manager::call_safe_place(unsigned thread_id)
void window_manager::call_safe_place(thread_t thread_id)
{
std::lock_guard<mutex_type> lock(mutex_);
@@ -1601,7 +1601,7 @@ namespace detail
bool established = (for_new && (wdpa != for_new));
decltype(for_new->root_widget->other.attribute.root) pa_root_attr = nullptr;
if (established)
pa_root_attr = for_new->root_widget->other.attribute.root;
@@ -1736,7 +1736,7 @@ namespace detail
wd->root = for_new->root;
wd->root_graph = for_new->root_graph;
wd->root_widget = for_new->root_widget;
wd->pos_owner.x = wd->pos_owner.y = 0;
auto delta_pos = wd->pos_root - for_new->pos_root;