refactor: don't show settings on startup

This commit is contained in:
zhom
2025-08-06 23:27:01 +04:00
parent ed913309dd
commit cd28531588
2 changed files with 4 additions and 41 deletions
+2 -10
View File
@@ -25,8 +25,6 @@ impl Default for TableSortingSettings {
pub struct AppSettings {
#[serde(default)]
pub set_as_default_browser: bool,
#[serde(default)]
pub show_settings_on_startup: bool,
#[serde(default = "default_theme")]
pub theme: String, // "light", "dark", or "system"
}
@@ -39,7 +37,6 @@ impl Default for AppSettings {
fn default() -> Self {
Self {
set_as_default_browser: false,
show_settings_on_startup: true,
theme: "system".to_string(),
}
}
@@ -151,13 +148,8 @@ impl SettingsManager {
}
pub fn should_show_settings_on_startup(&self) -> Result<bool, Box<dyn std::error::Error>> {
let settings = self.load_settings()?;
// Show prompt if:
// 1. User wants to see the prompt
// 2. Donut Browser is not set as default
// 3. User hasn't explicitly disabled the default browser setting
Ok(settings.show_settings_on_startup && !settings.set_as_default_browser)
// Always return false - we don't show settings on startup anymore
Ok(false)
}
}
+2 -31
View File
@@ -7,7 +7,7 @@ import { BsCamera, BsMic } from "react-icons/bs";
import { LoadingButton } from "@/components/loading-button";
import { Badge } from "@/components/ui/badge";
import { Button } from "@/components/ui/button";
import { Checkbox } from "@/components/ui/checkbox";
import {
Dialog,
DialogContent,
@@ -29,7 +29,6 @@ import { showErrorToast, showSuccessToast } from "@/lib/toast-utils";
interface AppSettings {
set_as_default_browser: boolean;
show_settings_on_startup: boolean;
theme: string;
}
@@ -47,12 +46,10 @@ interface SettingsDialogProps {
export function SettingsDialog({ isOpen, onClose }: SettingsDialogProps) {
const [settings, setSettings] = useState<AppSettings>({
set_as_default_browser: false,
show_settings_on_startup: true,
theme: "system",
});
const [originalSettings, setOriginalSettings] = useState<AppSettings>({
set_as_default_browser: false,
show_settings_on_startup: true,
theme: "system",
});
const [isDefaultBrowser, setIsDefaultBrowser] = useState(false);
@@ -290,10 +287,7 @@ export function SettingsDialog({ isOpen, onClose }: SettingsDialogProps) {
]);
// Check if settings have changed (excluding default browser setting)
const hasChanges =
settings.show_settings_on_startup !==
originalSettings.show_settings_on_startup ||
settings.theme !== originalSettings.theme;
const hasChanges = settings.theme !== originalSettings.theme;
return (
<Dialog open={isOpen} onOpenChange={onClose}>
@@ -362,29 +356,6 @@ export function SettingsDialog({ isOpen, onClose }: SettingsDialogProps) {
</p>
</div>
{/* Startup Behavior Section */}
<div className="space-y-4">
<Label className="text-base font-medium">Startup Behavior</Label>
<div className="flex items-center space-x-2">
<Checkbox
id="show-settings"
checked={settings.show_settings_on_startup}
onCheckedChange={(checked) => {
updateSetting("show_settings_on_startup", checked as boolean);
}}
/>
<Label htmlFor="show-settings" className="text-sm">
Show settings on app startup
</Label>
</div>
<p className="text-xs text-muted-foreground">
When enabled, the settings dialog will be shown when the app
starts.
</p>
</div>
{/* Permissions Section - Only show on macOS */}
{isMacOS && (
<div className="space-y-4">