Introduce a button to disable copilot integration

Antonio Scandurra and Nathan Sobo created

Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Change summary

crates/copilot/src/sign_in.rs   | 16 +++++++++++++++-
styles/src/styleTree/copilot.ts |  2 +-
2 files changed, 16 insertions(+), 2 deletions(-)

Detailed changes

crates/copilot/src/sign_in.rs 🔗

@@ -5,7 +5,7 @@ use gpui::{
     platform::{WindowBounds, WindowKind, WindowOptions},
     AppContext, ClipboardItem, Element, Entity, View, ViewContext, ViewHandle,
 };
-use settings::Settings;
+use settings::{settings_file::SettingsFile, Settings};
 use theme::ui::modal;
 
 #[derive(PartialEq, Eq, Debug, Clone)]
@@ -199,6 +199,20 @@ impl CopilotCodeVerification {
                     },
                 )
                 .boxed(),
+                theme::ui::cta_button_with_click(
+                    "Disable Copilot Integration",
+                    style.auth.content_width,
+                    &style.auth.cta_button,
+                    cx,
+                    {
+                        move |_, cx| {
+                            SettingsFile::update(cx, move |settings| {
+                                settings.features.copilot = Some(false);
+                            });
+                        }
+                    },
+                )
+                .boxed(),
             ])
             .align_children_center()
             .boxed()

styles/src/styleTree/copilot.ts 🔗

@@ -113,7 +113,7 @@ export default function copilot(colorScheme: ColorScheme) {
             },
             dimensions: {
                 width: 280,
-                height: 280,
+                height: 320,
             },
         },