parent
2b2a073a7e
commit
7e8032eaf4
@ -0,0 +1,52 @@
|
||||
From a7c499a8dcff909693793588c9976a2c039604de Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Wed, 20 Apr 2016 11:55:01 +0100
|
||||
Subject: [PATCH] Resolves: tdf#91778 drawing the background over an active
|
||||
cursor
|
||||
|
||||
will overwrite it, which means that when it toggles "off" afterwards, it uses
|
||||
invert on the freshly drawn background which will visually make it appear "on"
|
||||
and not off
|
||||
|
||||
Just explictly turn it off and restore it and avoid the whole potential
|
||||
problem.
|
||||
|
||||
Change-Id: Ie21d77e9d704124011e43b42c98b26eaf208eef2
|
||||
(cherry picked from commit 29a9f433c268414747d8ec7343fc2b5987971738)
|
||||
---
|
||||
sc/source/ui/view/gridwin4.cxx | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/sc/source/ui/view/gridwin4.cxx b/sc/source/ui/view/gridwin4.cxx
|
||||
index e15cb1e..731c560 100644
|
||||
--- a/sc/source/ui/view/gridwin4.cxx
|
||||
+++ b/sc/source/ui/view/gridwin4.cxx
|
||||
@@ -900,6 +900,14 @@ void ScGridWindow::DrawContent(OutputDevice &rDevice, const ScTableInfo& rTableI
|
||||
aEnd.X() -= 2 * nLayoutSign;
|
||||
aEnd.Y() -= 2;
|
||||
|
||||
+ // toggle the cursor off if its on to ensure the cursor invert
|
||||
+ // background logic remains valid after the background is cleared on
|
||||
+ // the next cursor flash
|
||||
+ vcl::Cursor* pCrsr = pEditView->GetCursor();
|
||||
+ const bool bVisCursor = pCrsr && pCrsr->IsVisible();
|
||||
+ if (bVisCursor)
|
||||
+ pCrsr->Hide();
|
||||
+
|
||||
// set the correct mapmode
|
||||
Rectangle aBackground(aStart, aEnd);
|
||||
if (bIsTiledRendering)
|
||||
@@ -916,6 +924,10 @@ void ScGridWindow::DrawContent(OutputDevice &rDevice, const ScTableInfo& rTableI
|
||||
// paint the editeng text
|
||||
pEditView->Paint(rDevice.PixelToLogic(Rectangle(Point(nScrX, nScrY), Size(aOutputData.GetScrW(), aOutputData.GetScrH()))), &rDevice);
|
||||
rDevice.SetMapMode(MAP_PIXEL);
|
||||
+
|
||||
+ // restore the cursor it it was originally visible
|
||||
+ if (bVisCursor)
|
||||
+ pCrsr->Show();
|
||||
}
|
||||
|
||||
if (pViewData->HasEditView(eWhich))
|
||||
--
|
||||
2.7.3
|
||||
|
@ -0,0 +1,69 @@
|
||||
From 1f40773ad663614deec8133eedb80c90834e9b35 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Thu, 17 Mar 2016 20:48:23 +0000
|
||||
Subject: [PATCH] Resolves: tdf#98726 sneaky transparent clearlooks-phenix
|
||||
scrollbars
|
||||
|
||||
(cherry picked from commit e511f962c0b70e0ce0d19c42be1f198b6191fad1)
|
||||
|
||||
Change-Id: Idc05d7b6c2b42086eafa9ad8ab8e63116d6f676c
|
||||
Reviewed-on: https://gerrit.libreoffice.org/23346
|
||||
Tested-by: Jenkins <ci@libreoffice.org>
|
||||
Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu>
|
||||
---
|
||||
vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx | 25 ++++++++++++++-----------
|
||||
1 file changed, 14 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
|
||||
index ff76169..c1117fe 100644
|
||||
--- a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
|
||||
+++ b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
|
||||
@@ -277,6 +277,17 @@ Rectangle GtkSalGraphics::NWGetScrollButtonRect( ControlPart nPart, Rectangle aA
|
||||
return buttonRect;
|
||||
}
|
||||
|
||||
+static GtkWidget* gCacheWindow;
|
||||
+static GtkWidget* gDumbContainer;
|
||||
+static GtkWidget* gSpinBox;
|
||||
+static GtkWidget* gEntryBox;
|
||||
+static GtkWidget* gComboBox;
|
||||
+static GtkWidget* gListBox;
|
||||
+static GtkWidget* gMenuBarWidget;
|
||||
+static GtkWidget* gMenuItemMenuBarWidget;
|
||||
+static GtkWidget* gCheckMenuItemWidget;
|
||||
+static GtkWidget* gTreeViewWidget;
|
||||
+
|
||||
void GtkSalGraphics::PaintScrollbar(GtkStyleContext *context,
|
||||
cairo_t *cr,
|
||||
const Rectangle& rControlRectangle,
|
||||
@@ -419,6 +430,9 @@ void GtkSalGraphics::PaintScrollbar(GtkStyleContext *context,
|
||||
|
||||
bool has_slider = ( thumbRect.GetWidth() > 0 && thumbRect.GetHeight() > 0 );
|
||||
|
||||
+ gtk_render_background(gtk_widget_get_style_context(gCacheWindow), cr, 0, 0,
|
||||
+ scrollbarRect.GetWidth(), scrollbarRect.GetHeight() );
|
||||
+
|
||||
// ----------------- TROUGH
|
||||
GtkStyleContext* pScrollbarTroughStyle = scrollbarOrientation == GTK_ORIENTATION_VERTICAL ?
|
||||
mpVScrollbarTroughStyle : mpHScrollbarTroughStyle;
|
||||
@@ -1142,17 +1156,6 @@ void GtkSalGraphics::PaintRadio(cairo_t *cr, GtkStyleContext *context,
|
||||
PaintCheckOrRadio(cr, context, rControlRectangle, false, bInMenu);
|
||||
}
|
||||
|
||||
-static GtkWidget* gCacheWindow;
|
||||
-static GtkWidget* gDumbContainer;
|
||||
-static GtkWidget* gSpinBox;
|
||||
-static GtkWidget* gEntryBox;
|
||||
-static GtkWidget* gComboBox;
|
||||
-static GtkWidget* gListBox;
|
||||
-static GtkWidget* gMenuBarWidget;
|
||||
-static GtkWidget* gMenuItemMenuBarWidget;
|
||||
-static GtkWidget* gCheckMenuItemWidget;
|
||||
-static GtkWidget* gTreeViewWidget;
|
||||
-
|
||||
void parent_styles_context_set_state(GtkStyleContext* context, GtkStateFlags flags)
|
||||
{
|
||||
while ((context = gtk_style_context_get_parent(context)))
|
||||
--
|
||||
2.7.3
|
||||
|
Loading…
Reference in new issue