Resolves: tdf#160681 draw impress comment similarly to how writer does it

so we get the same filled MenuButton in both applications

Change-Id: Iea41a17285287ec2794e4cdce6eaae0906fff291
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168969
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
diff --git a/sd/source/ui/annotations/annotationwindow.cxx b/sd/source/ui/annotations/annotationwindow.cxx
index a0bfe01..b3d8778 100644
--- a/sd/source/ui/annotations/annotationwindow.cxx
+++ b/sd/source/ui/annotations/annotationwindow.cxx
@@ -40,11 +40,13 @@

#include <vcl/commandevent.hxx>
#include <vcl/commandinfoprovider.hxx>
#include <vcl/decoview.hxx>
#include <vcl/vclenum.hxx>
#include <vcl/svapp.hxx>
#include <vcl/gradient.hxx>
#include <vcl/settings.hxx>
#include <vcl/ptrstyle.hxx>
#include <vcl/virdev.hxx>

#include <strings.hrc>
#include "annotationwindow.hxx"
@@ -274,10 +276,7 @@ void AnnotationWindow::InitControls()
    if (mbReadonly)
        mxMenuButton->hide();
    else
    {
        mxMenuButton->set_size_request(METABUTTON_WIDTH, METABUTTON_HEIGHT);
        mxMenuButton->connect_selected(LINK(this, AnnotationWindow, MenuItemSelectedHdl));
    }

    EEControlBits nCntrl = mpOutliner->GetControlWord();
    nCntrl |= EEControlBits::PASTESPECIAL | EEControlBits::AUTOCORRECT | EEControlBits::USECHARATTRIBS | EEControlBits::NOCOLORS;
@@ -553,6 +552,32 @@ void AnnotationWindow::SetColor()
    mxPopover->set_background(maColor);
    mxMenuButton->set_background(maColor);

    ScopedVclPtrInstance<VirtualDevice> xVirDev;
    xVirDev->SetLineColor();
    xVirDev->SetFillColor(maColor);

    Size aSize(METABUTTON_WIDTH, METABUTTON_HEIGHT);
    ::tools::Rectangle aRect(Point(0, 0), aSize);
    xVirDev->SetOutputSizePixel(aSize);
    xVirDev->DrawRect(aRect);

    ::tools::Rectangle aSymbolRect(aRect);
    // 25% distance to the left and right button border
    const ::tools::Long nBorderDistanceLeftAndRight = ((aSymbolRect.GetWidth() * 250) + 500) / 1000;
    aSymbolRect.AdjustLeft(nBorderDistanceLeftAndRight );
    aSymbolRect.AdjustRight( -nBorderDistanceLeftAndRight );
    // 40% distance to the top button border
    const ::tools::Long nBorderDistanceTop = ((aSymbolRect.GetHeight() * 400) + 500) / 1000;
    aSymbolRect.AdjustTop(nBorderDistanceTop );
    // 15% distance to the bottom button border
    const ::tools::Long nBorderDistanceBottom = ((aSymbolRect.GetHeight() * 150) + 500) / 1000;
    aSymbolRect.AdjustBottom( -nBorderDistanceBottom );
    DecorationView aDecoView(xVirDev.get());
    aDecoView.DrawSymbol(aSymbolRect, SymbolType::SPIN_DOWN, COL_BLACK,
                         DrawSymbolFlags::NONE);
    mxMenuButton->set_image(xVirDev);
    mxMenuButton->set_size_request(aSize.Width() + 4, aSize.Height() + 4);

    mxMeta->set_font_color(bHighContrast ? maColorLight : maColorDark);

    mxVScrollbar->customize_scrollbars(maColorLight,
diff --git a/sd/uiconfig/simpress/ui/annotation.ui b/sd/uiconfig/simpress/ui/annotation.ui
index 49a8a30..dcebff0 100644
--- a/sd/uiconfig/simpress/ui/annotation.ui
+++ b/sd/uiconfig/simpress/ui/annotation.ui
@@ -2,6 +2,12 @@
<!-- Generated with glade 3.38.2 -->
<interface domain="sd">
  <requires lib="gtk+" version="3.20"/>
  <object class="GtkImage" id="image7">
    <property name="visible">True</property>
    <property name="can-focus">False</property>
    <property name="icon-name">open-menu-symbolic</property>
    <property name="icon_size">2</property>
  </object>
  <object class="GtkMenu" id="menu">
    <property name="visible">True</property>
    <property name="can-focus">False</property>
@@ -140,8 +146,9 @@
                <property name="valign">start</property>
                <property name="margin-end">10</property>
                <property name="margin-top">5</property>
                <property name="image">image7</property>
                <property name="relief">none</property>
                <property name="draw-indicator">True</property>
                <property name="always-show-image">True</property>
                <property name="popup">menu</property>
                <child>
                  <placeholder/>