[gtk/wip/jimmac/focus-tabs] Adwaita: don't focus outline tabs with mouse



commit dd61c248c1157be059e147c330e1bec3204deb32
Author: Jakub Steiner <jimmac gmail com>
Date:   Thu May 14 18:50:47 2020 +0200

    Adwaita: don't focus outline tabs with mouse
    
    Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/2721

 gtk/theme/Adwaita/_common.scss  | 6 +++---
 gtk/theme/Adwaita/_drawing.scss | 4 +---
 2 files changed, 4 insertions(+), 6 deletions(-)
---
diff --git a/gtk/theme/Adwaita/_common.scss b/gtk/theme/Adwaita/_common.scss
index 17774ede72..bafad344e0 100644
--- a/gtk/theme/Adwaita/_common.scss
+++ b/gtk/theme/Adwaita/_common.scss
@@ -292,7 +292,7 @@ entry {
 
     @include entry(normal);
 
-    @include focus-ring($within: true);
+    @include focus-ring($focus-state: 'focus-within');
 
     > image { // icons inside the entry
       &.left { margin-right: 6px; }
@@ -342,7 +342,7 @@ entry {
       &.#{$e_type} {
         color: $e_color;
 
-        @include focus-ring($within: true, $fc: transparentize($e_color, 0.5));
+        @include focus-ring($focus-state: 'focus-within', $fc: transparentize($e_color, 0.5));
 
         &:focus-within { @include entry(focus, $e_color); }
 
@@ -1881,7 +1881,7 @@ popover.background {
  * Notebooks *
  *************/
 notebook {
-  @include focus-ring("> header > tabs > tab", $offset: -2px, $within: true);
+  @include focus-ring("> header > tabs > tab:checked", $offset: -2px, $focus-state: 
'focus-within:focus-visible');
 
   > header {
     padding: 1px;
diff --git a/gtk/theme/Adwaita/_drawing.scss b/gtk/theme/Adwaita/_drawing.scss
index 467be6c817..ef4ea6abd5 100644
--- a/gtk/theme/Adwaita/_drawing.scss
+++ b/gtk/theme/Adwaita/_drawing.scss
@@ -9,14 +9,12 @@
 // If $outer is true, the focus ring extends outward. Otherwise, it extends inward.
 // If $within is true, use focus-within instead of focus:focus-visible
 //
-@mixin focus-ring($target: null, $width: 2px, $offset: -$width, $outer: false, $within: false, $fc: 
$focus_border_color) {
+@mixin focus-ring($target: null, $width: 2px, $offset: -$width, $outer: false, $focus-state: 
'focus:focus-visible', $fc: $focus_border_color) {
   & #{$target} {
     outline: 0 solid transparent;
     outline-offset: if($outer, $offset + 4px, $offset + $width + 4px);
   }
 
-  $focus-state: if($within, "focus-within", "focus:focus-visible");
-
   &:#{$focus-state} #{$target} {
     outline-color: $fc;
     outline-width: $width;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]