Repository navigation
feat(toolbar): show when extraction presets use ordinary conversion - #1420
Open
SeoJCalive wants to merge 3 commits into
Open
SeoJCalive wants to merge 3 commits into
SeoJCalive wants to merge 3 commits into
Conversation
KnifeLemon
requested changes
Nov 12, 2026
KnifeLemon
left a comment
Owner
There was a problem hiding this comment.
@SeoJCalive 정리해 주신 결정 네 가지를 그대로 잘 따라 주셨어요. 고마워요!
- 도넛 가운데 글자와 "사용 가능한 프리셋" 툴팁 한 줄, 세 프리셋만 담은 정해 둔 목록, 공통 문구 모두 합의한 대로예요.
- 판정도 깔끔해요. 실행할 수 없는 형식과 엔진 패키지가 필요한 형식은 빼고 세요. 봉투 형식도 추측하지 않고, 모션이 없는 JPEG는 일반 변환으로 표시하지 않아요.
- 끌기 중 성능도 괜찮아요. 판정은
BuildFace에서 한 번만 하고,ShowHint는 저장된 값을 읽기만 해요. - 묶음 안쪽 고리, 앞·뒷면, 취소·뒤집기·다시 불러오기에서 문구가 지워지는 경우까지 테스트로 확인돼서 좋았어요.
고쳐 주셨으면 하는 것
- 작은 가운데에서 안내 글자가 너무 작아져요.
DrawCenter의fitScale에 아래 한계가 없어요.- 가운데 구멍 크기는 25%까지 줄일 수 있어요. 그러면 글을 놓을 폭이 기본(42%)의 절반쯤으로 줄어들어요.
- 그 상태에서 영어 "Some files…"와 "Drop → Extract frames (PNG)"가 여러 줄로 접히면, 제 계산으로는
fitScale이 0.4쯤까지 내려가요. 도넛 크기를 100으로 줄이면 더 작아지고요. - 지금은 이 경우에도 제목·안내가 원래 크기에 두 줄까지 보여요. 그래서 "클릭·드롭 안내는 그대로 읽히게"가 작은 설정에서 깨져요. 기본 크기에서만 맞춰 보신 것 같아요.
- 방법은 편한 쪽으로 해 주세요.
fitScale에 0.8쯤 아래 한계를 두고 알림 문구는 2~3줄에서 말줄임해도 되고, 안내(CenterSubtitle)는 원래 크기·두 줄을 지키고 알림만 줄여도 돼요. - 구멍 25%, 크기 100에서 한 번 봐 주세요.
docs/FORMAT-RULES.md8번을 맞춰 주세요. 지금은 "for example in the slot's tooltip"이라고 되어 있어요.- 도넛 가운데 글자와 사용 가능한 프리셋 툴팁으로 바꿔 주세요.
- 목록이
PresetAvailability.OrdinaryConversionFor에 있다는 것도 적어 주세요. 그래야 프리셋을 추가할 때 어디에 넣을지 바로 알 수 있어요.
남겨 주신 질문과 선택에 대한 답
- "All convertible files / input formats" 문구를 따로 두는 것: 이대로 좋아요.
- 파일 두 개가 모두 PNG면 "이 파일은"도 "일부"도 맞지 않아서, 따로 있어야 해요.
- "변환 가능한"이 들어가서 알 수 없는 파일이 섞였을 때도 사실과 어긋나지 않아요.
- 한국어 "변환 가능한 파일은 모두 일반 변환으로 실행돼요"와 "변환 가능한 입력 형식은 모두 일반 변환으로 실행돼요"도 자연스러워요.
- 알림이 보이는 동안 파일 개수 제목을 대신하는 것: 좋아요. 조각을 가리키기 전과 벗어난 뒤에는 개수가 다시 보이고, 클릭·드롭 안내는 그대로 남으니까요. 같이 줄이는 방식만 위 1번처럼 아래 한계를 두면 돼요.
작은 것
- PR 본문 맨 끝에 준비하면서 쓰신 메모로 보이는 줄이 남아 있어요. 백틱 네 개짜리 줄과 "업로드하며 생긴 줄 지우기…", "본문 속 메모 한 줄…"이에요. 지워 주시면 돼요.
Collaborator
Author
|
@KnifeLemon 꼼꼼히 봐 주셔서 고마워요. 말씀하신 두 가지를 새 커밋으로 고쳤어요.
PR 본문 끝에 남아 있던 메모도 지웠어요. "변환 가능한" 문구와 개수 제목 대체에 대한 답도 고마워요. 그대로 두었어요. |
SeoJCalive
force-pushed
the
feat/1091-ordinary-conversion-notice
branch
from
November 13, 2026 07:42
89f6ff8 to
153ce06
Compare
KnifeLemon
requested changes
Nov 13, 2026
KnifeLemon
left a comment
Owner
There was a problem hiding this comment.
@SeoJCalive 지난번 두 가지를 빠르게 고쳐 주셔서 고마워요!
- 작은 가운데: 안내(
CenterSubtitle)는 알림이 없을 때와 똑같이 11.5·두 줄로 두고, 알림만 0.78까지 줄였다가 줄 수와 폭을 줄이고 마지막에 빠지는 방식 좋아요. 알림이 없을 때는 예전과 같은 좌표로 그리는 것도 확인했어요. docs/FORMAT-RULES.md8번: 도넛 가운데와 사용 가능한 프리셋 툴팁, 그리고PresetAvailability.OrdinaryConversionFor줄까지 딱 맞아요.- PR 본문 끝 메모도 지워진 것 확인했어요.
고쳐 주셨으면 하는 것
- CI가 새
DonutCenterReadabilityTests에서 실패해요. 첫 커밋만 있을 때는 통과했으니 두 번째 커밋 때문이에요. Windows·Ubuntu는 7개, macOS는 29개가 실패해요. CI는 릴리스와 같은 Noto 글꼴(build/fetch-fonts.ps1)로 돌려서, 로컬에서 재신 결과와 다르게 나온 것 같아요.pwsh build/fetch-fonts.ps1을 먼저 돌리고--filter DonutCenterReadabilityTests로 보면 CI와 같은 결과를 볼 수 있을 거예요. 세 가지예요.- 기본 크기에서 아랍어·페르시아어 "all" 문구가 말줄임돼요 (
Default_size_keeps_the_whole_notice(ar|fa, all), 세 번째 줄HasCollapsed). 실제 화면에서도 그래요. 7개 언어에 하셨던 것처럼ar·fa의donut.ordinary_conversion.all을 줄여 주시거나, 기본 크기에서 한 줄을 더 쓰게 해 주세요. Notice_ink_keeps_the_subtitle_gap...이 작은 가운데에서 알림이 빠지는 경우를 받지 않아요 (bn-BD, ar). 코드는 일부러 알림을 뺄 수 있고Hint_text_and_stroked_icons...는 그걸 받아들이니까, 이 테스트도 작은 크기에서는 알림이 없으면 건너뛰게 맞춰 주세요.Hint_text_and_stroked_icons...가 작은 가운데에서 안내 글자가 둥근 가운데 밖으로 나간다고 실패해요 (bn-BD, ne, fa, ar). 알림을 빼도 안내 자체가 25%·100 가운데에 안 들어가는 경우예요. 이건 알림이 없을 때도 같아서 이 PR이 책임질 부분이 아니에요. 절대 위치 대신 "알림이 없을 때 배치와 같은 글자이고 더 밖으로 밀리지 않았는지"로 확인하거나, 알림 없이도 넘치는 경우는 건너뛰어 주세요. macOS에서 실패가 훨씬 많은 걸 보면 1e-6·0.01px 허용치도 너무 빡빡해 보여요. 1px쯤으로 늘려 주시면 좋겠어요.Package on Ubuntu 22.04두 잡은 앞의 잡이 실패해서 생긴 연쇄 실패라 따로 볼 필요 없어요.
- 기본 크기에서 아랍어·페르시아어 "all" 문구가 말줄임돼요 (
작은 것
- 아주 작은 가운데(25%·100)에서 알림이 "So… / file…"처럼 잘리거나 빠지는 건 괜찮아요. 지난번에 말한 "알림만 줄여도 돼요"에 맞는 결과예요.
- 테스트를 고치다 배치 탐색이 너무 복잡해지면 더 단순하게 가셔도 돼요. 0.78 아래로 줄이지 않고, 남은 높이만큼 줄 수를 정해 말줄임하고, 한 줄도 안 들어가면 빼는 정도면 충분해요. 편한 쪽으로 해 주세요.
- 고치신 뒤 PR 본문 "How was it tested"를 새 커밋 기준으로 맞춰 주세요. 지금은
5b91b379와 "35 App + 3 Core" 기준이에요.
Collaborator
Author
|
@KnifeLemon 방금 올린 수정 커밋에서 CI가 실패했어요. 새로 넣은 가운데 글자 시험이 아랍어·페르시아어·벵골어·네팔어 사례에서 실패했어요. 제 시험 환경에 앱이 쓰는 Noto 아랍어·벵골어·데바나가리·태국어 글꼴이 빠져 있어서, 이 언어들을 다른 글꼴로 재고 있었던 게 원인이에요. 글꼴을 CI와 똑같이 맞춰 다시 재고 고친 뒤 새 커밋으로 올릴게요. 위 답글에 적은 언어별 측정 결과도 그때 바로잡을게요. |
Keep extraction presets usable while showing an input-dependent notice in the donut centre and the Available presets tooltip. Cover the three agreed extraction presets, distinguish mixed inputs, and add the notice in every supported language. Test real controls, cached tooltip updates, and per-source extraction flags in a mixed queue. Closes #1091 Co-authored-by: sisyphus-dev-ai <sisyphus-dev-ai@users.noreply.github.com>
Keep the click/drop guidance at its original size and two-line limit while a notice is shown, so a small centre no longer shrinks it. Only the notice gives way: it keeps at least 78% of its font size and fewer lines or an ellipsis, with a small gap above the guidance. Fit the text and the flip-hint icons inside the round centre, prefer a complete notice whenever one fits, and cache the chosen layout instead of recomputing it every frame. Without a notice the centre is drawn as before. Test the drawn layout with real controls in 22 languages at the default and the smallest centre size, with and without a flip hint. Shorten seven all-files translations so the default notices stay complete. Document where the notice appears and where its preset list lives in format rule 8. Co-authored-by: sisyphus-dev-ai <sisyphus-dev-ai@users.noreply.github.com>
Measure the ellipsis width and keep complete-notice candidates untrimmed. Fit the secondary hint around tall script glyphs without changing the guidance, notice font floor or ink gap. Shorten the Arabic and Persian all-files notices and cover every default scope and hint combination with the bundled fonts. Let the small-centre checks accept an omitted notice while still checking the guidance.
SeoJCalive
force-pushed
the
feat/1091-ordinary-conversion-notice
branch
from
November 13, 2026 19:26
153ce06 to
5a7964b
Compare
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?
Closes #1091. Before running, the donut centre and the existing Available presets tooltip now tell users when an extraction preset will perform an ordinary conversion instead of its named operation, without blocking the action. The maintainer-decided direction, our own choices and one wording question are under Notes for review.
Type of change
How was it tested?
dotnet format --verify-no-changes:dotnet format Filee.slnx --verify-no-changes --no-restore --severity warnexits 0.dotnet test: related App filters (513 passed, 5 macOS-only skipped), CoreJobQueueTests(59 passed, 3 Windows-only skipped) and the new tests (35 App + 3 Core) on5b91b379, 0 failed. The App full suite could not finish on my Linux server (see below), so it is left to this PR's CI.Details
Rebased the uncommitted change from
47e24cd3ontoc458122f, then onto5b91b379. The latest three-way application was conflict-free; all 132 notice keys/values and upstream's new locale keys were retained. No feature code changed in the latest rebase.5b91b379c458122f, 17 on47e24cd3)5b91b3795b91b3795b91b379, one fresh-process run5b91b37947e24cd3, three runsc458122f, one fresh-process run47e24cd347e24cd3(Linux, Xvfb)47e24cd3run in this environment (Hindi/emoji Annotate text, Japanese font fallback, GNOME pointer bridge sockets, Engines page render). The eighth,AskPagesTests.The_window_fits_in_light_and_dark(bn-BD, dark), failed only in the full run; the Ask window uses none of the changed code or keys, andAskPagesTestspasses 22/22 when rerun on its own. Not rerun locally onc458122for5b91b379: on this server thec458122fApp suite takes about four hours, and a run of it for another branch was stopped by the per-user thread limit. This PR's CI covers the full suite.c458122f: reran M07–M12 and M14, 7/7 detected and restored green after successful builds. The M08 rerun removed the notice from the actual centre renderer to verify that the rendering assertions detect the omission. M01–M06's classification targets and M13's tooltip row were unchanged and were not rerun. No mutation target code changed betweenc458122fand5b91b379, so none was rerun in the latest rebase47e24cd3c458122fc458122fThe
5b91b379rebase did not require fit remeasurement or screenshot recapture: no locale conflict occurred, the 132 notice values are unchanged, and upstream changed none of the notice renderer, tooltip, or classification files. Existing captures and measurements above remain historical evidence rather than newly claimed runs. All latest builds and test processes usedDOTNET_PROCESSOR_COUNT=4and the 12 GB memory scope; App tests used Xvfb/X11 and serialized xUnit collections.Verification limits and UI observations
macosCI label when the PR is opened.Screenshots (UI changes)
Mixed PNG + MP4 drop, English/light: only the still image takes the ordinary-conversion path.
These are crops of real controls at their existing logical size, rendered at 2x pixel density. The donut profile has only a front face. The editor tooltip uses PNG as its specified input format. Converter routes are deterministic test fixtures; screenshots are not evidence of real-engine conversion.
Single-file, mixed-drop, and editor tooltip comparisons; English and German
Checklist
src/Filee.App/Assets/i18n/*.jsonfilesTHIRD-PARTY-NOTICES.md