fix forking during channel selection

tzemanovic
Feb 10, 2026, 11:00 AM
47ZTC4WSACRTU45OJUYCLPGS3XYG5BG2LYIXA7QRKE2AEPH5B25QC

Dependencies

  • [2] 5ZRDYL6K fork channel, fix recording esc key
  • [3] S4WH75Y3 allow to select channels if there are any other. Conditional switch
  • [4] WAOGSCOJ very nice refactor, wip adding channels logs
  • [5] MORKDJUE use allowed actions binding for key subs
  • [6] YRGDFHAB project dir picker
  • [*] 6YZAVBWU Initial commit

Change contents

  • replacement in inflorescence/src/main.rs at line 942
    [2.5999][4.83205:83283]()
    if matches!(selection.primary, selection::Primary::Channel) {
    [2.5999]
    [4.83283]
    if let Some(name) = forking_channel_name.take_if(|name| {
    let name = name.trim();
    let empty = name.is_empty();
    let unique = || {
    repo.channel != name
    && !repo.other_channels.iter().any(|n| n == name)
    };
    !empty && unique()
    }) {
    state
    .repo_tx_in
    .send(repo::MsgIn::ForkChannel(name))
    .unwrap();
    } else if matches!(
    selection.primary,
    selection::Primary::Channel
    ) {
  • edit in inflorescence/src/main.rs at line 972
    [2.6453][3.2203:2246](),[3.2246][4.83556:83614](),[4.83614][3.2304:2447](),[3.2304][3.2304:2447](),[3.2447][4.83615:83857](),[4.83857][3.2528:2798](),[3.2528][3.2528:2798]()
    } else if let Some(name) =
    forking_channel_name.take_if(|name| {
    let name = name.trim();
    let empty = name.is_empty();
    let unique = || {
    repo.channel != name
    && !repo
    .other_channels
    .iter()
    .any(|n| n == name)
    };
    !empty && unique()
    })
    {
    state
    .repo_tx_in
    .send(repo::MsgIn::ForkChannel(name))
    .unwrap();