diff --git a/sc/source/ui/cctrl/dpcontrol.cxx b/sc/source/ui/cctrl/dpcontrol.cxx index 90d8783cee6d..f020024a99ac 100644 --- a/sc/source/ui/cctrl/dpcontrol.cxx +++ b/sc/source/ui/cctrl/dpcontrol.cxx @@ -95,11 +95,6 @@ void ScDPFieldButton::setPopupLeft(bool b) void ScDPFieldButton::draw() { - bool bOldMapEnabled = mpOutDev->IsMapModeEnabled(); - - if (mpOutDev->GetMapMode().GetMapUnit() != MAP_PIXEL ) - mpOutDev->EnableMapMode(false); - if (mbBaseButton) { // Background @@ -146,8 +141,6 @@ void ScDPFieldButton::draw() if (mbPopupButton) drawPopupButton(); - - mpOutDev->EnableMapMode(bOldMapEnabled); } void ScDPFieldButton::getPopupBoundingBox(Point& rPos, Size& rSize) const diff --git a/sc/source/ui/view/gridwin4.cxx b/sc/source/ui/view/gridwin4.cxx index c8f234b84ba2..a5042cdc59da 100644 --- a/sc/source/ui/view/gridwin4.cxx +++ b/sc/source/ui/view/gridwin4.cxx @@ -763,6 +763,7 @@ void ScGridWindow::DrawContent(OutputDevice &rDevice, const ScTableInfo& rTableI aOutputData.DrawStrings(true); // in logic MapMode if bLogicText is set aOutputData.DrawEdit(true); + // the buttons are painted in absolute coordinates if (bIsTiledRendering) { // Tiled offset nScrX, nScrY @@ -777,6 +778,8 @@ void ScGridWindow::DrawContent(OutputDevice &rDevice, const ScTableInfo& rTableI DrawButtons(nX1, nX2, rTableInfo, pContentDev); // Pixel + pContentDev->SetMapMode(MAP_PIXEL); + aOutputData.DrawClipMarks(); // Szenario / ChangeTracking muss auf jeden Fall nach DrawGrid sein, auch bei !bGridFirst