Skip to content

openSaveFileDialog if click esc will panic in windows #4461

Description

@woailv

Description

`func (m *windowSaveFileDialog) show() (chan string, error) {
files := make(chan string)
defaultFolder, err := getDefaultFolder(m.dialog.directory)
if err != nil {
close(files)
return files, err
}

config := cfd.DialogConfig{
	Title:       m.dialog.title,
	Role:        "SaveFile",
	FileFilters: convertFilters(m.dialog.filters),
	FileName:    m.dialog.filename,
	Folder:      defaultFolder,
}

// Original PR for v2 by @almas1992: https://github.com/wailsapp/wails/pull/3205
if len(m.dialog.filters) > 0 {
	config.DefaultExtension = strings.TrimPrefix(strings.Split(m.dialog.filters[0].Pattern, ";")[0], "*")
}

result, err := showCfdDialog(
	func() (cfd.Dialog, error) {
		return cfd.NewSaveFileDialog(config)
	}, false)
go func() {
	defer handlePanic()
	v, ok := result.(string)// This is right code
	if ok {
		files <- v
		close(files)
	}
}()
return files, err

}`

To Reproduce

  1. application.SaveFileDialog().SetFilename(fmt.Sprintf("%s.rem", f.Ternary(req.Name != "", req.Name, "temp"))).AddFilter("Files", "*.rem").PromptForSingleSelection()

Expected behaviour

  1. application.SaveFileDialog().SetFilename(fmt.Sprintf("%s.rem", f.Ternary(req.Name != "", req.Name, "temp"))).AddFilter("Files", "*.rem").PromptForSingleSelection()

Screenshots

No response

Attempted Fixes

No response

System Details

windows10_x64

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugSomething isn't workingWindowsawaiting feedbackMore information is required from the requestor

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions