Skip to content

ui: the batch of bugs from the first real walk-through - #38

Merged
huxc573 merged 3 commits into
mainfrom
fix/ui-batch
Oct 17, 2026
Merged

huxc573 merged 3 commits into
mainfrom
fix/ui-batch

Conversation

@huxc573

@huxc573 huxc573 commented Oct 17, 2026

Copy link
Copy Markdown
Contributor

Overlays no longer eat the panes; notices no longer reflow the window; a pane takes focus on click; favourites group by 本端/远端+protocol, open in the focused pane and can be deleted; USB works through adb forward; host and port are separate fields; one accent list named 默认 on both ends. Android: a real back stack, 停止共享 refreshing, every breadcrumb layer tappable, 分栏方向 using the real size, 紧凑 as one line, ← stopping at the exposed root, a visible 连接另一台设备, the remote pane bound to the peer, and 本机 renamed 本端.

Desktop
- 显示方式 and the right-click panel were the last children of the screen's column, so a
  full-size overlay claimed the rest of the height and both panes were squeezed to nothing.
  The overlays are drawn over the screen now, and the card hangs under its button instead
  of 112dp down.
- 通告 is drawn over the window; as a column child it took a row of its own, so every
  notice pushed the screen up and left a band of empty surface.
- A pane takes focus on click. The pointer observer ran after the rows had consumed their
  presses, so clicking a row never moved the focus and the panes could not be switched.
- 收藏夹 is grouped by 本端 / 远端 and protocol, opens in the focused pane, can be deleted,
  and `+` adds an address rather than only the current view.
- USB is real: `Adb` lists devices, `adb forward` maps the device's port onto this machine,
  and the ordinary handshake follows. The screen said 已留位 for four releases.
- 地址 and 端口 are two fields; an empty port means the protocol default. `HOST:PORT` is a
  format, not a question to ask a person.
- 取色: one list on both ends, first chip the mark's indigo called 默认, names under every
  chip, and the 回到品牌靛蓝 button — which set a third colour — is gone.

Android
- Back: panels first, then the screen, then 传输, then one folder up, and only then the
  activity. It used to leave the application from any folder.
- 停止共享 read a plain getter, so the card never changed; it collects the controller now.
- Breadcrumbs show every layer, each tappable, scrolling sideways and parked at the current
  folder. The old limit folded three of them into an ellipsis even with room to spare.
- 分栏方向 compares the real width and height; it compared 380 against 560, two constants,
  so 自动 stacked the panes on a phone held sideways.
- 紧凑 is one line with the size beside the name; it was 详细 with 8dp less.
- ← stops at the exposed root: the phone registered no local roots, so the boundary was
  unknown and the pane walked from /storage/emulated/0 to an unreadable /.
- 连接另一台设备 is a card on the screen with host and port. Connecting opens the remote pane
  on the first shared folder; with no peer the remote pane says so instead of showing this
  phone's disk; an unshared path lists what is shared.
- 本机 is 本端 everywhere. The far end may be another computer, another disk, or a WebDAV or
  FTP mount later, and 本机 was already wrong on a phone.

Root and Shizuku are still not implemented: both need a backend that speaks through `su`
or Shizuku. Selecting them now probes and says so rather than pretending.
The root probe read `su`'s stdout first and then waited; on a machine where su exists and
asks for a password, the read blocks forever and the caller with it. CI's test step sat on
that for twenty minutes. Both the probe and the adb runner close the child's stdin, wait
with a timeout, and read what it wrote afterwards.
The desktop passed its own 共享端口 into adb forward, which only happens to be right when
both ends are on the default. It uses the port typed into 地址/端口 now, and the protocol
default when that is empty.
@huxc573
huxc573 merged commit 1a9f5f5 into main Oct 17, 2026
3 checks passed
@huxc573
huxc573 deleted the fix/ui-batch branch October 17, 2026 07:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant