Compare commits
10 commits
6677fe05d5
...
8f906d1762
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8f906d1762 | ||
|
|
5f96f6191b | ||
|
|
5e0392be04 | ||
|
|
6fa2cb09cc | ||
|
|
ffb2c46d6e | ||
|
|
2735e3f2c3 | ||
|
|
48b648500e | ||
|
|
a95a1c1691 | ||
|
|
25019d3647 | ||
|
|
e72723fabb |
14 changed files with 577 additions and 340 deletions
621
Cargo.lock
generated
621
Cargo.lock
generated
File diff suppressed because it is too large
Load diff
12
Cargo.toml
12
Cargo.toml
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "cosmic-edit"
|
||||
version = "1.0.8"
|
||||
version = "1.0.11"
|
||||
authors = ["Jeremy Soller <jeremy@system76.com>"]
|
||||
edition = "2024"
|
||||
license = "GPL-3.0-only"
|
||||
|
|
@ -70,7 +70,9 @@ debug = true
|
|||
onig = { git = "https://github.com/rust-onig/rust-onig.git", branch = "main" }
|
||||
onig_sys = { git = "https://github.com/rust-onig/rust-onig.git", branch = "main" }
|
||||
|
||||
# [patch.'https://github.com/pop-os/libcosmic']
|
||||
# libcosmic = { git = "https://github.com/pop-os/libcosmic//" }
|
||||
# cosmic-config = { git = "https://github.com/pop-os/libcosmic//" }
|
||||
# cosmic-theme = { git = "https://github.com/pop-os/libcosmic//" }
|
||||
[patch.'https://github.com/pop-os/libcosmic']
|
||||
libcosmic = { path = "../libcosmic" }
|
||||
cosmic-config = { path = "../libcosmic/cosmic-config" }
|
||||
cosmic-theme = { path = "../libcosmic/cosmic-theme" }
|
||||
iced_futures = { path = "../libcosmic/iced/futures" }
|
||||
iced_winit = { path = "../libcosmic/iced/winit" }
|
||||
|
|
|
|||
12
debian/changelog
vendored
12
debian/changelog
vendored
|
|
@ -1,3 +1,15 @@
|
|||
cosmic-edit (1.0.11) noble; urgency=medium
|
||||
|
||||
* Epoch 1.0.11 version update
|
||||
|
||||
-- Jeremy Soller <jeremy@system76.com> Tue, 14 Apr 2026 11:09:17 -0600
|
||||
|
||||
cosmic-edit (1.0.9) noble; urgency=medium
|
||||
|
||||
* Epoch 1.0.9 version update
|
||||
|
||||
-- Jeremy Soller <jeremy@system76.com> Mon, 06 Apr 2026 15:09:58 -0600
|
||||
|
||||
cosmic-edit (1.0.8) noble; urgency=medium
|
||||
|
||||
* Epoch 1.0.8 version update
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ menu-open-project = افتح مشروعًا...
|
|||
open-recent-project = افتح مشروعًا حديثًا
|
||||
close-project = أغلِق المشروع
|
||||
save = احفظ
|
||||
save-as = إحفظ كـ...
|
||||
save-as = احفظ باسم...
|
||||
revert-all-changes = تراجع عن جميع التغييرات
|
||||
menu-document-statistics = إحصائيات المستند...
|
||||
document-type = نوع المستند...
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ line-count = Zeilen
|
|||
## Git-Verwaltung
|
||||
|
||||
git-management = Git-Verwaltung
|
||||
git-management-description = Git-Verwaltung ist ein Entwicklerwerkzeug für die Versionskontrolle.
|
||||
git-management-description = Git-Verwaltung ist ein Entwicklerwerkzeug, das für die Versionskontrolle eingesetzt wird.
|
||||
git-management-loading = Git-Verwaltung wird geladen...
|
||||
stage = Vormerken
|
||||
staged-changes = Vorgemerkte Änderungen
|
||||
|
|
@ -34,7 +34,7 @@ project-search = Projektsuche
|
|||
## Aufforderung zum Speichern von Änderungen
|
||||
|
||||
prompt-save-changes-title = Änderungen vor dem Schließen speichern?
|
||||
prompt-unsaved-changes = Es existieren ungespeicherte Änderungen. Speichern?
|
||||
prompt-unsaved-changes = Du hast ungespeicherte Änderungen. Wenn du ohne zu speichern fortfährst, gehen diese Änderungen verloren.
|
||||
cancel = Abbrechen
|
||||
discard = Änderungen verwerfen
|
||||
save-all = Alles speichern
|
||||
|
|
@ -131,3 +131,4 @@ menu-keyboard-shortcuts = Tastenkombinationen...
|
|||
menu-about = Über COSMIC Texteditor...
|
||||
repository = Repository
|
||||
support = Unterstützung
|
||||
comment = Texteditor für den COSMIC Desktop
|
||||
|
|
|
|||
0
i18n/eu/cosmic_edit.ftl
Normal file
0
i18n/eu/cosmic_edit.ftl
Normal file
|
|
@ -10,18 +10,18 @@ todo = TODO
|
|||
document-statistics = Asiakirjan tilastot
|
||||
word-count = Sanoja
|
||||
character-count = Merkkejä
|
||||
character-count-no-spaces = Merkit (ilman välilyöntejä)
|
||||
character-count-no-spaces = Merkkejä (ilman välilyöntejä)
|
||||
line-count = Rivejä
|
||||
|
||||
## Git management
|
||||
|
||||
git-management = Git-hallinta
|
||||
unstaged-changes = Vaiheistamattomat muutokset
|
||||
staged-changes = Vaiheistetut muutokset
|
||||
unstaged-changes = Valmistelemattomat muutokset
|
||||
staged-changes = Valmistellut muutokset
|
||||
|
||||
## Project search
|
||||
|
||||
project-search = Projektin haku
|
||||
project-search = Projektihaku
|
||||
|
||||
## Settings
|
||||
|
||||
|
|
@ -31,7 +31,7 @@ settings = Asetukset
|
|||
|
||||
appearance = Ulkoasu
|
||||
theme = Teema
|
||||
match-desktop = Sovita työpöydän kanssa
|
||||
match-desktop = Sovita työpöytään
|
||||
dark = Tumma
|
||||
light = Vaalea
|
||||
syntax-dark = Tumma syntaksi
|
||||
|
|
@ -42,7 +42,7 @@ default-font-size = Fontin oletuskoko
|
|||
### Keyboard shortcuts
|
||||
|
||||
keyboard-shortcuts = Pikanäppäimet
|
||||
enable-vim-bindings = Ota käyttöön Vim-komennot
|
||||
enable-vim-bindings = Ota käyttöön Vim-näppäinsidokset
|
||||
|
||||
# Menu
|
||||
|
||||
|
|
@ -52,19 +52,19 @@ enable-vim-bindings = Ota käyttöön Vim-komennot
|
|||
file = Tiedosto
|
||||
new-file = Uusi tiedosto
|
||||
new-window = Uusi ikkuna
|
||||
open-file = Avaa tiedosto...
|
||||
open-file = Avaa tiedosto…
|
||||
open-recent-file = Avaa viimeaikainen tiedosto
|
||||
close-file = Sulje tiedosto
|
||||
menu-open-project = Avaa projekti...
|
||||
open-recent-project = Avaa viimeisin projekti
|
||||
menu-open-project = Avaa projekti…
|
||||
open-recent-project = Avaa viimeaikainen projekti
|
||||
close-project = Sulje projekti
|
||||
save = Tallenna
|
||||
save-as = Tallenna nimellä...
|
||||
revert-all-changes = Peru kaiki muutokset
|
||||
menu-document-statistics = Dokumentin tilastot...
|
||||
document-type = Dokumentin tyyppi...
|
||||
encoding = Koodataan...
|
||||
menu-git-management = Git-hallinta...
|
||||
save-as = Tallenna nimellä…
|
||||
revert-all-changes = Kumoa kaikki muutokset
|
||||
menu-document-statistics = Asiakirjan tilastot…
|
||||
document-type = Asiakirjan tyyppi…
|
||||
encoding = Merkkikoodaus…
|
||||
menu-git-management = Git-hallinta…
|
||||
print = Tulosta
|
||||
quit = Lopeta
|
||||
|
||||
|
|
@ -79,8 +79,8 @@ paste = Liitä
|
|||
select-all = Valitse kaikki
|
||||
find = Etsi
|
||||
replace = Korvaa
|
||||
find-in-project = Etsi projektista...
|
||||
spell-check = Tarkista oikeinkirjoitus...
|
||||
find-in-project = Etsi projektista…
|
||||
spell-check = Tarkista oikeinkirjoitus…
|
||||
|
||||
## View
|
||||
|
||||
|
|
@ -96,10 +96,10 @@ convert-indentation-to-tabs = Muunna sisennykset sarkaimiksi
|
|||
word-wrap = Rivitys
|
||||
show-line-numbers = Näytä rivinumerot
|
||||
highlight-current-line = Korosta nykyinen rivi
|
||||
syntax-highlighting = Syntaksi korostus...
|
||||
syntax-highlighting = Syntaksikorostus…
|
||||
menu-settings = Asetukset…
|
||||
menu-keyboard-shortcuts = Pikanäppäimet…
|
||||
menu-about = Tietoa COSMIC-tekstieditorista
|
||||
menu-about = Tietoa COSMICin tekstimuokkaimesta…
|
||||
cosmic-text-editor = COSMICin tekstimuokkain
|
||||
cancel = Peru
|
||||
repository = Tietovarasto
|
||||
|
|
@ -121,3 +121,7 @@ default-size = Oletuskoko
|
|||
zoom-out = Loitonna
|
||||
comment = Tekstimuokkain COSMIC-työpöydälle
|
||||
find-placeholder = Etsi…
|
||||
stage = Valmistele muutokset
|
||||
unstage = Poista valmistelu
|
||||
replace-placeholder = Korvaa…
|
||||
default-zoom-step = Zoomauksen askeleet
|
||||
|
|
|
|||
|
|
@ -0,0 +1,89 @@
|
|||
cancel = Sefsex
|
||||
undo = Ssemmet
|
||||
save = Sekles
|
||||
quit = Tuffɣa
|
||||
replace = Semselsi
|
||||
support = Tallalt
|
||||
settings = Iɣewwaṛen
|
||||
appearance = Timeẓri
|
||||
theme = Asentel
|
||||
dark = Aɣmayan
|
||||
light = Aceɛlal
|
||||
paste = Senteḍ
|
||||
select-all = Fren akk
|
||||
zoom-in = Asemɣeṛ
|
||||
default-size = Tiddi tamezwert
|
||||
zoom-out = Asemẓi
|
||||
view = Wali
|
||||
menu-settings = Iɣewwaṛen…
|
||||
match-desktop = Amṣada d tnarit
|
||||
file = Afaylu
|
||||
new-window = Asfaylu amaynut
|
||||
edit = Ẓreg
|
||||
cut = Gzem
|
||||
copy = Nɣel
|
||||
repository = Asarsay
|
||||
cosmic-text-editor = Amaẓrag n uḍris COSMIC
|
||||
new-document = Isemli amaynut
|
||||
open-project = Ldi asenfaṛ
|
||||
document-statistics = Tiddadanin n isemli
|
||||
word-count = Amḍan n wawalen
|
||||
character-count = Isekkilen
|
||||
character-count-no-spaces = Isekkilen (war tallunin)
|
||||
line-count = Izirigen
|
||||
git-management = Asefrek n Git
|
||||
git-management-description = Asefrek Git d afecku n uneflay i yettwasqedcen i tmehlin n usenqed n ileqman.
|
||||
git-management-loading = Asali n usefrek n Git…
|
||||
project-search = Anadi n usenfaṛ
|
||||
prompt-save-changes-title = Sekles ibeddilen send ad tmedleḍ?
|
||||
prompt-unsaved-changes = Ɣuṛ-k·m ibeddilen ur nettwasekles ara. Ma tkemmeleḍ war asekles, ibeddilen-agi ad ṛuḥen.
|
||||
discard = Sefsex ibeddilen
|
||||
save-all = Sekles akk
|
||||
syntax-dark = Taseddast taɣmayant
|
||||
syntax-light = Taseddast taceɛlalt
|
||||
default-font = Tasefsit tamezwert
|
||||
default-font-size = Tiddi n tsefsit tamezwert
|
||||
default-zoom-step = Isurifen n usemɣer
|
||||
keyboard-shortcuts = Inegzumen n unasiw
|
||||
find = Af-d
|
||||
find-in-project = Af-d deg usenfaṛ…
|
||||
tab-width = Tehri n yiccer: { $tab_width }
|
||||
show-line-numbers = Sken imḍanen n izirig
|
||||
highlight-current-line = Sebrureq izirig amiran
|
||||
syntax-highlighting = Asebrureq n tseddast…
|
||||
menu-keyboard-shortcuts = Inegzumen n unasiw…
|
||||
menu-about = Ɣef umaẓrag n uḍris COSMIC…
|
||||
open-file = Ldi afaylu…
|
||||
todo = Ad Yettwaxdem
|
||||
stage = Smiter
|
||||
unstage = Kkes seg usmiter
|
||||
staged-changes = Ibeddilen yettusmitren
|
||||
unstaged-changes = Ibeddilen ur nettusmitren ara
|
||||
find-placeholder = Af-d…
|
||||
find-previous = Af-d uzwir
|
||||
find-next = Af-d uḍfir
|
||||
replace-placeholder = Semselsi…
|
||||
replace-all = Semselsi akk
|
||||
use-regex = Seqdec Tinfaliyin tiluganin
|
||||
case-sensitive = Yettḥulfu i tejṛut n usekkil
|
||||
wrap-around = Uɣal ɣer izirig
|
||||
new-file = Afaylu amaynut
|
||||
open-recent-file = Ldi afaylu n melmi kan
|
||||
close-file = Mdel afaylu
|
||||
menu-open-project = Ldi asenfaṛ…
|
||||
open-recent-project = Ldi asenfaṛ n melmi kan
|
||||
close-project = Mdel asenfaṛ
|
||||
save-as = Sekles am…
|
||||
document-type = Anaw n yisemli…
|
||||
encoding = Asettengel…
|
||||
menu-git-management = Asefrek n Git…
|
||||
print = Siggez
|
||||
redo = Err-d
|
||||
spell-check = Asenqed n tira…
|
||||
word-wrap = Tuɣalin s ajerriḍ
|
||||
revert-all-changes = Sefsex ibeddilen akk
|
||||
indentation = Asiẓi
|
||||
automatic-indentation = Asiẓi awurman
|
||||
convert-indentation-to-spaces = Selket asiẓi ɣer tallunin
|
||||
convert-indentation-to-tabs = Selket asiẓi ɣer yiccer
|
||||
comment = Amaẓrag n uḍris i tnarit COSMIC
|
||||
|
|
@ -21,7 +21,7 @@ line-count = 行数
|
|||
|
||||
git-management = Git 管理
|
||||
git-management-description = Git 管理是个用于版本控制的开发工具。
|
||||
git-management-loading = 正在加载 Git 管理...
|
||||
git-management-loading = 正在加载 Git 管理…
|
||||
stage = 暂存
|
||||
staged-changes = 已暂存的更改
|
||||
unstage = 取消暂存
|
||||
|
|
@ -61,10 +61,10 @@ default-zoom-step = 缩放步长
|
|||
keyboard-shortcuts = 键盘快捷键
|
||||
enable-vim-bindings = 启用 Vim 快捷键
|
||||
# Find
|
||||
find-placeholder = 查找...
|
||||
find-placeholder = 查找…
|
||||
find-previous = 查找上一个
|
||||
find-next = 查找下一个
|
||||
replace-placeholder = 替换...
|
||||
replace-placeholder = 替换…
|
||||
replace = 替换
|
||||
replace-all = 全部替换
|
||||
case-sensitive = 区分大小写
|
||||
|
|
@ -79,18 +79,18 @@ wrap-around = 循环搜索
|
|||
file = 文件
|
||||
new-file = 新建文件
|
||||
new-window = 新建窗口
|
||||
open-file = 打开文件...
|
||||
open-file = 打开文件…
|
||||
open-recent-file = 打开最近文件
|
||||
close-file = 关闭文件
|
||||
menu-open-project = 打开项目...
|
||||
menu-open-project = 打开项目…
|
||||
open-recent-project = 打开最近项目
|
||||
close-project = 关闭项目
|
||||
save = 保存
|
||||
save-as = 另存为...
|
||||
save-as = 另存为…
|
||||
revert-all-changes = 撤销所有更改
|
||||
menu-document-statistics = 文档统计...
|
||||
document-type = 文档类型...
|
||||
encoding = 编码...
|
||||
menu-document-statistics = 文档统计…
|
||||
document-type = 文档类型…
|
||||
encoding = 编码…
|
||||
menu-git-management = Git 管理…
|
||||
print = 打印
|
||||
quit = 退出
|
||||
|
|
@ -105,8 +105,8 @@ copy = 复制
|
|||
paste = 粘贴
|
||||
select-all = 全选
|
||||
find = 查找
|
||||
find-in-project = 在项目中查找...
|
||||
spell-check = 拼写检查...
|
||||
find-in-project = 在项目中查找…
|
||||
spell-check = 拼写检查…
|
||||
|
||||
## View
|
||||
|
||||
|
|
@ -125,8 +125,8 @@ convert-indentation-to-tabs = 将缩进转换为 Tab
|
|||
word-wrap = 自动换行
|
||||
show-line-numbers = 显示行号
|
||||
highlight-current-line = 高亮当前行
|
||||
syntax-highlighting = 语法高亮...
|
||||
menu-settings = 设置...
|
||||
syntax-highlighting = 语法高亮…
|
||||
menu-settings = 设置…
|
||||
menu-keyboard-shortcuts = 键盘快捷键…
|
||||
menu-about = 关于 COSMIC 文本编辑器…
|
||||
repository = 仓库
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
cosmic-text-editor = COSMIC 編輯器
|
||||
new-document = 新文件
|
||||
cosmic-text-editor = COSMIC 文字編輯器
|
||||
new-document = 新建文件
|
||||
open-project = 開啟專案
|
||||
todo = 待辦事項
|
||||
|
||||
|
|
@ -11,7 +11,7 @@ todo = 待辦事項
|
|||
|
||||
## Document statistics
|
||||
|
||||
document-statistics = 文件統計
|
||||
document-statistics = 文件統計資料
|
||||
word-count = 字數
|
||||
character-count = 字元數
|
||||
character-count-no-spaces = 字元數(不含空格)
|
||||
|
|
@ -31,8 +31,8 @@ project-search = 專案搜尋
|
|||
|
||||
## Prompt save changes
|
||||
|
||||
prompt-save-changes-title = 未儲存的變更
|
||||
prompt-unsaved-changes = 您有未儲存的變更。是否儲存?
|
||||
prompt-save-changes-title = 關閉之前儲存變更?
|
||||
prompt-unsaved-changes = 您有變更尚未儲存。如果您繼續而無儲存,這些變更將會遺失。
|
||||
discard = 放棄變更
|
||||
|
||||
## Settings
|
||||
|
|
@ -43,27 +43,27 @@ settings = 設定
|
|||
|
||||
appearance = 外觀
|
||||
theme = 主題
|
||||
match-desktop = 與桌面一致
|
||||
dark = 深色模式
|
||||
light = 亮色模式
|
||||
syntax-dark = 語法深色
|
||||
syntax-light = 語法亮色
|
||||
match-desktop = 符合桌面
|
||||
dark = 深色
|
||||
light = 淺色
|
||||
syntax-dark = 暗色語法
|
||||
syntax-light = 亮色語法
|
||||
default-font = 預設字型
|
||||
default-font-size = 預設字型大小
|
||||
default-font-size = 預設字體大小
|
||||
|
||||
### Keyboard shortcuts
|
||||
|
||||
keyboard-shortcuts = 鍵盤快捷鍵
|
||||
enable-vim-bindings = 啟用 Vim 綁定
|
||||
keyboard-shortcuts = 鍵盤快速鍵
|
||||
enable-vim-bindings = 啟用 Vim 按鍵綁定
|
||||
# Find
|
||||
find-placeholder = 尋找...
|
||||
find-previous = 上一個
|
||||
find-next = 下一個
|
||||
replace-placeholder = 替換...
|
||||
replace = 替換
|
||||
replace-all = 全部替換
|
||||
replace-placeholder = 取代...
|
||||
replace = 取代
|
||||
replace-all = 取代全部
|
||||
case-sensitive = 區分大小寫
|
||||
use-regex = 使用正規表達式
|
||||
use-regex = 使用正規表示式
|
||||
|
||||
# Menu
|
||||
|
||||
|
|
@ -71,36 +71,36 @@ use-regex = 使用正規表達式
|
|||
## File
|
||||
|
||||
file = 檔案
|
||||
new-file = 新檔案
|
||||
new-window = 新視窗
|
||||
new-file = 新建檔案
|
||||
new-window = 新建視窗
|
||||
open-file = 開啟檔案...
|
||||
open-recent-file = 開啟最近檔案
|
||||
open-recent-file = 開啟最近使用的檔案
|
||||
close-file = 關閉檔案
|
||||
menu-open-project = 開啟專案...
|
||||
open-recent-project = 開啟最近專案
|
||||
open-recent-project = 開啟最近使用的專案
|
||||
close-project = 關閉專案
|
||||
save = 儲存
|
||||
save-as = 另存為...
|
||||
revert-all-changes = 復原所有變更
|
||||
menu-document-statistics = 文件統計...
|
||||
save-as = 另存新檔...
|
||||
revert-all-changes = 還原所有變更
|
||||
menu-document-statistics = 文件統計資料...
|
||||
document-type = 文件類型...
|
||||
encoding = 編碼...
|
||||
menu-git-management = Git 管理...
|
||||
print = 列印
|
||||
quit = 結束
|
||||
quit = 退出
|
||||
|
||||
## Edit
|
||||
|
||||
edit = 編輯
|
||||
undo = 復原
|
||||
redo = 重做
|
||||
redo = 取消復原
|
||||
cut = 剪下
|
||||
copy = 複製
|
||||
paste = 貼上
|
||||
select-all = 全選
|
||||
find = 尋找
|
||||
find-in-project = 在專案中尋找...
|
||||
spell-check = 拼寫檢查...
|
||||
spell-check = 拼字檢查...
|
||||
|
||||
## View
|
||||
|
||||
|
|
@ -110,17 +110,25 @@ indentation = 縮排
|
|||
### Indentation
|
||||
|
||||
automatic-indentation = 自動縮排
|
||||
tab-width = Tab 寬度: { $tab_width }
|
||||
tab-width = Tab 寬度:{ $tab_width }
|
||||
convert-indentation-to-spaces = 將縮排轉換為空格
|
||||
convert-indentation-to-tabs = 將縮排轉換為 Tabs
|
||||
word-wrap = 自動換行
|
||||
show-line-numbers = 顯示行號
|
||||
highlight-current-line = 突顯當前行
|
||||
highlight-current-line = 突顯目前行
|
||||
syntax-highlighting = 語法突顯...
|
||||
menu-settings = 設定...
|
||||
menu-keyboard-shortcuts = 鍵盤快捷鍵...
|
||||
menu-about = 關於 COSMIC 編輯器...
|
||||
menu-keyboard-shortcuts = 鍵盤快速鍵...
|
||||
menu-about = 關於 COSMIC 文字編輯器...
|
||||
stage = 暫存
|
||||
unstage = 取消暫存
|
||||
cancel = 取消
|
||||
save-all = 全部儲存
|
||||
repository = 軟體庫源
|
||||
support = 支援
|
||||
default-zoom-step = 縮放步進
|
||||
zoom-in = 放大
|
||||
default-size = 預設大小
|
||||
zoom-out = 縮小
|
||||
wrap-around = 循環搜尋
|
||||
comment = COSMIC 桌面文字編輯器
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
use cosmic::widget::menu::key_bind::{KeyBind, Modifier};
|
||||
use cosmic::{iced::keyboard::Key, iced_core::keyboard::key::Named};
|
||||
use cosmic::{iced::core::keyboard::key::Named, iced::keyboard::Key};
|
||||
use std::collections::HashMap;
|
||||
|
||||
use crate::Action;
|
||||
|
|
|
|||
15
src/main.rs
15
src/main.rs
|
|
@ -480,6 +480,7 @@ pub struct App {
|
|||
project_search_id: widget::Id,
|
||||
project_search_value: String,
|
||||
project_search_result: Option<ProjectSearchResult>,
|
||||
project_search_has_focus: bool,
|
||||
watcher_opt: Option<(
|
||||
notify::RecommendedWatcher,
|
||||
HashSet<(PathBuf, RecursiveMode)>,
|
||||
|
|
@ -792,7 +793,7 @@ impl App {
|
|||
fn update_focus(&self) -> Task<Message> {
|
||||
if self.core.window.show_context {
|
||||
match self.context_page {
|
||||
ContextPage::ProjectSearch => {
|
||||
ContextPage::ProjectSearch if self.project_search_has_focus => {
|
||||
widget::text_input::focus(self.project_search_id.clone())
|
||||
}
|
||||
_ => Task::none(),
|
||||
|
|
@ -1495,6 +1496,7 @@ impl Application for App {
|
|||
project_search_id: widget::Id::unique(),
|
||||
project_search_value: String::new(),
|
||||
project_search_result: None,
|
||||
project_search_has_focus: false,
|
||||
watcher_opt: None,
|
||||
modifiers: Modifiers::empty(),
|
||||
};
|
||||
|
|
@ -2053,6 +2055,7 @@ impl Application for App {
|
|||
};
|
||||
}
|
||||
if !has_focus {
|
||||
self.project_search_has_focus = false;
|
||||
return self.update_focus();
|
||||
}
|
||||
}
|
||||
|
|
@ -2440,6 +2443,7 @@ impl Application for App {
|
|||
};
|
||||
|
||||
if let Some((path, cursor)) = path_cursor_opt {
|
||||
self.project_search_has_focus = false;
|
||||
if let Some(entity) = self.open_tab(Some(path)) {
|
||||
return Task::batch([
|
||||
//TODO: why must this be done in a command?
|
||||
|
|
@ -2502,6 +2506,7 @@ impl Application for App {
|
|||
}
|
||||
Message::ProjectSearchResult(project_search_result) => {
|
||||
self.project_search_result = Some(project_search_result);
|
||||
self.project_search_has_focus = true;
|
||||
|
||||
// Focus correct input
|
||||
return self.update_focus();
|
||||
|
|
@ -2537,6 +2542,7 @@ impl Application for App {
|
|||
}
|
||||
}
|
||||
Message::ProjectSearchValue(value) => {
|
||||
self.project_search_has_focus = true;
|
||||
self.project_search_value = value;
|
||||
}
|
||||
Message::PromptSaveChanges(entity) => {
|
||||
|
|
@ -2771,9 +2777,9 @@ impl Application for App {
|
|||
self.tab_model.remove(entity);
|
||||
self.update_watcher();
|
||||
|
||||
// If that was the last tab, make a new empty one
|
||||
// If that was the last tab, exit the application
|
||||
if self.tab_model.iter().next().is_none() {
|
||||
self.open_tab(None);
|
||||
return self.update(Message::QuitForce)
|
||||
}
|
||||
|
||||
// Close PromptSaveClose dialog if open for this entity
|
||||
|
|
@ -2854,6 +2860,9 @@ impl Application for App {
|
|||
self.core.window.show_context = true;
|
||||
}
|
||||
|
||||
self.project_search_has_focus = self.core.window.show_context
|
||||
&& self.context_page == ContextPage::ProjectSearch;
|
||||
|
||||
// Execute commands for specific pages
|
||||
if self.core.window.show_context && self.context_page == ContextPage::GitManagement
|
||||
{
|
||||
|
|
|
|||
|
|
@ -5,8 +5,9 @@ use cosmic::widget::menu::key_bind::KeyBind;
|
|||
use cosmic::{
|
||||
Element,
|
||||
app::Core,
|
||||
iced::{Background, Length, advanced::widget::text::Style as TextStyle, widget::column},
|
||||
iced_core::Border,
|
||||
iced::{
|
||||
Background, Border, Length, advanced::widget::text::Style as TextStyle, widget::column,
|
||||
},
|
||||
theme,
|
||||
widget::{
|
||||
self, divider,
|
||||
|
|
|
|||
|
|
@ -3,14 +3,7 @@
|
|||
use cosmic::{
|
||||
Renderer,
|
||||
cosmic_theme::palette::{WithAlpha, blend::Compose},
|
||||
iced::{
|
||||
Color, Element, Length, Padding, Point, Rectangle, Size, Vector,
|
||||
advanced::graphics::text::{Raw, font_system},
|
||||
event::{Event, Status},
|
||||
keyboard::{Event as KeyEvent, Modifiers},
|
||||
mouse::{self, Button, Event as MouseEvent, ScrollDelta},
|
||||
},
|
||||
iced_core::{
|
||||
iced::core::{
|
||||
Border, Radians, Shell, Transformation,
|
||||
clipboard::Clipboard,
|
||||
image,
|
||||
|
|
@ -24,6 +17,13 @@ use cosmic::{
|
|||
tree,
|
||||
},
|
||||
},
|
||||
iced::{
|
||||
Color, Element, Length, Padding, Point, Rectangle, Size, Vector,
|
||||
advanced::graphics::text::{Raw, font_system},
|
||||
event::Event,
|
||||
keyboard::{Event as KeyEvent, Modifiers},
|
||||
mouse::{self, Button, Event as MouseEvent, ScrollDelta},
|
||||
},
|
||||
theme::Theme,
|
||||
};
|
||||
use cosmic_text::{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue