Repository navigation
원형 툴바: 사용 가능한 프리셋을 종류별 탭으로 나누기 (#343) - #463
Open
SeoJCalive wants to merge 1 commit into
Open
SeoJCalive wants to merge 1 commit into
SeoJCalive wants to merge 1 commit into
Conversation
Contributor
Author
|
@KnifeLemon 님, CI에서 실패한 올려 주신 #464을 확인하였는데 현재 수정 상태의 PR은 중지하고 그리고 10k 스타 축하드립니다!! |
Owner
|
@SeoJCalive 님, 네 그렇게 해 주시면 돼요. 축하도 감사합니다! #464는 방금 main에 머지됐어요. main을 합친 뒤 툴바 시험을 맞춰 주시고, 통과하면 Ready로 바꿔 주세요. 참고로 #464에서 도넛 구성이 몇 가지 바뀌었어요.
그래서 편집 탭과 묶음 수 기대값이 달라질 수 있어요. 설정 스키마를 바꾸지 않으신 건 좋아요. 그사이 다른 언어(예: 태국어 #445)가 먼저 들어가면 그 파일의 새 문구 4개는 머지할 때 저희가 채울게요. 그 때문에 기다리실 필요는 없어요. |
…bar palette The preset palette on the toolbar page grew long once every converter showed up in one list. Split it into kind tabs and keep the per-donut judgement so switching donuts stays instant. - Tabs: All / Image (Image, Vector) / Document (Pdf, Document, Spreadsheet, Presentation, Hwp, Text, Ebook, Data) / Video & audio (Video, Audio, Subtitle) / Edit (tools, target *) / 3D & CAD / Map (Geo) / Archive / Font, mapped from format categories in one table. Empty tabs are hidden; the row is hidden when one kind tab would only repeat All. Tabs wrap inside the 230 px column and the arrow keys reach every tab. Groups lead every tab. Switching donuts returns to All (and clears the search, as KnifeLemon#427 does), flipping keeps the tab, nothing is saved. - Search spans every tab and shows only the tabs with results. Presets this donut can't run are revealed dimmed with their reason; drag and double-click add are blocked, right-click edit still opens. PresetAvailability is unchanged. - Cache: judgements are kept per donut for the life of the page and dropped on extension save, reset, engine change and preset edit/add/delete, including saves made from the radial window (LibraryChanged); the page's own saves don't clear other donuts. - Tab names reuse format.category.* where they exist; four new keys (toolbar.tab.all/media/edit/model3d_cad) in all 13 locales. Closes KnifeLemon#343
SeoJCalive
force-pushed
the
feature/toolbar-tabs
branch
from
October 23, 2026 02:17
7d8b923 to
936b5e3
Compare
SeoJCalive
marked this pull request as ready for review
October 23, 2026 02:53
Contributor
Author
|
@KnifeLemon 님, #464가 들어간 main(61fd350) 위로 옮기고 툴바 시험을 맞췄습니다.
CI가 통과해서 Ready로 바꿨습니다. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this change?
#343(#266 2단계)입니다. #343에서 답해 주신 방향대로, 원형 툴바 화면 오른쪽의 사용 가능한 프리셋 목록을 종류별 탭으로 나눴습니다. #304에서 2단계로 미루신 도넛별 판정 캐시와 검색 시 숨긴 프리셋도 함께 넣었습니다.
탭 묶음: #343에서 제안해 주신 아홉 탭입니다. PDF는 문서, 벡터는 이미지, 자막은 동영상·소리에 두었고, 데이터는 앞서 말씀드린 대로 문서에 두었습니다. 형식 범주 → 탭 대응과 탭 이름 키는
ToolbarPageViewModel.TabDefinitions표 하나에 모았습니다. 탭을 더하거나 옮길 때는 이 표만 고치면 됩니다.toolbar.tab.allformat.category.Imageformat.category.Documenttoolbar.tab.mediatoolbar.tab.edittoolbar.tab.model3d_cadformat.category.Geo(한국어 "지리 정보")format.category.Archive(한국어 "압축 파일")format.category.Font"전체" 탭: 첫 탭입니다.
빈 탭: 숨깁니다. "전체" 말고 묶음 탭이 하나뿐이면 "전체"와 내용이 같아서 탭 줄을 숨기고 "전체"를 보여 줍니다(예: 오디오 도넛은 편집 프리셋만 있어 탭 줄이 없습니다).
좁은 칸: 탭이 230px 칸을 넘으면 줄바꿈합니다. 탭 이름은 잘리지 않고, 방향키(좌우·위아래)로 모든 탭에 갈 수 있습니다. 확장자 없는 도넛(탭 9개)을 영어·한국어·스페인어·러시아어의 밝은·어두운 테마로 확인했습니다.
그룹: 모든 탭 맨 앞에 보입니다.
검색: 모든 탭에서 찾고, 결과가 있는 탭을 보여 줍니다. 이 도넛에서 숨긴 프리셋도 검색어에 걸리면 흐리게 보이고, 도넛과 같은 사유가 툴팁으로 나옵니다. 이 칩은 끌어넣기·더블클릭으로 추가할 수 없고, 우클릭 편집은 됩니다.
탭 상태: 도넛을 바꾸면 "전체"로 돌아가고, 앞·뒷면을 뒤집을 때는 지금 탭을 유지합니다. 설정에는 저장하지 않습니다. 도넛을 바꿀 때 검색어를 지우는 Fix #425, #427: Donut toolbar counts both faces, search boxes clear #434([Bug]: Donut Toolbar Search Missing clear button and search state persists on profile switch #427)의 동작과 검색창 × 버튼은 그대로 두었습니다.
새 그룹·새 프리셋: 목록에 남으면 그 항목이 보이는 탭으로 옮깁니다.
도넛별 판정 캐시: 한 번 판정한 도넛을 다시 고르면 바로 채워집니다. 툴바 화면이 열려 있는 동안만 기억하고, 확장자·초기화·엔진·프리셋이 바뀌면 지금처럼 다시 판정합니다.
판정 코드:
PresetAvailability의 판정 순서는 건드리지 않았습니다(#326과 겹침 최소화).UI 문구: 새 키 4개(
toolbar.tab.all·media·edit·model3d_cad)를 프랑스어·네팔어·번체 중국어까지 13개 언어 모두에 넣었고, 나머지 다섯 탭 이름은 기존format.category.*문구를 씁니다. 프랑스어·네팔어는 각 파일에 이미 있는 용어(CAO, थ्रीडी)에 맞추었습니다.구현 메모
ToolbarPageViewModel.cs(탭·검색·캐시),ToolbarPage.axaml·ToolbarPage.axaml.cs(탭 줄, 위아래 방향키, 추가 막기), 13개 언어 파일.PresetAvailability, 설정 스키마, 패키지는 바꾸지 않았습니다.ListBox에WrapPanel을 써서 칸을 넘으면 다음 줄로 내려갑니다. 좌우키는 ListBox 기본 동작을 쓰고, 위아래키는 윗·아랫줄에서 가장 가까운 탭으로 갑니다.LibraryChanged)은 전부, 프리셋 편집은 그 프리셋만 다시 판정합니다. 화면을 닫으면 캐시와 구독을 모두 정리합니다.ToolbarEditorTests.cs), 실제 화면을 띄우는 시험 9개(ToolbarPaletteViewTests.cs), 렌더 시험 2개(9개 탭·230px·방향키, 검색으로 드러난 흐린 칩), 13개 언어 키 시험 1개를 더했습니다. 주요 단언은 코드를 일부러 되돌리는 변이로 실패하는 것을 확인했습니다.How was it tested?
dotnet format --verify-no-changesdotnet test: Core 462개 통과. App 863개 중 852개 통과, 10개 건너뜀, 1개 실패. 실패한Engines_page_shows_versions_descriptions_and_download_speed는 main에서도 같이 실패합니다(제 Linux에 Ghostscript·LibreOffice가 설치되어 있음).Screenshots (UI changes)
(PR 작성 화면에
.omo/plans/toolbar-palette/step2/shots/의 파일을 끌어 넣으면 링크로 바뀝니다. 이미지 탭 장면은mac-01-image-donut-image-tab.png입니다.)Checklist
src/Filee.App/Assets/i18n/*.jsonfilesTHIRD-PARTY-NOTICES.md(해당 없음)