summaryrefslogtreecommitdiff
path: root/vcl/source
diff options
context:
space:
mode:
Diffstat (limited to 'vcl/source')
-rw-r--r--vcl/source/window/builder.cxx16
1 files changed, 15 insertions, 1 deletions
diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx
index faffeccbb764..4f7202f0e5d1 100644
--- a/vcl/source/window/builder.cxx
+++ b/vcl/source/window/builder.cxx
@@ -604,6 +604,18 @@ namespace
return bResizable;
}
+ bool extractDecorated(VclBuilder::stringmap &rMap)
+ {
+ bool bDecorated = true;
+ VclBuilder::stringmap::iterator aFind = rMap.find(OString("decorated"));
+ if (aFind != rMap.end())
+ {
+ bDecorated = toBool(aFind->second);
+ rMap.erase(aFind);
+ }
+ return bDecorated;
+ }
+
bool extractCloseable(VclBuilder::stringmap &rMap)
{
bool bCloseable = true;
@@ -973,11 +985,13 @@ namespace
OString sBorder = VclBuilder::extractCustomProperty(rMap);
if (!sBorder.isEmpty())
nBits |= WB_BORDER;
+ if (!extractDecorated(rMap))
+ nBits |= WB_OWNERDRAWDECORATION;
OString sType(extractTypeHint(rMap));
if (sType == "utility")
nBits |= WB_SYSTEMWINDOW | WB_DIALOGCONTROL | WB_MOVEABLE;
else if (sType == "popup-menu")
- nBits |= WB_SYSTEMWINDOW | WB_DIALOGCONTROL | WB_POPUP | WB_OWNERDRAWDECORATION;
+ nBits |= WB_SYSTEMWINDOW | WB_DIALOGCONTROL | WB_POPUP;
else
nBits |= WB_MOVEABLE;
return nBits;