pidgin/pidgin

Create a new PidginAccountManager that replaces the manually built one.

The old code was left to keep this change as clean as possible and will be
removed afterwards.

Drag and drop as been removed as it's completely different in GTK4 and I didn't
want to waste time on it since it's going to be deleted when it's rewritten.

I also didn't implement the double click to modify account as that's different
in GTK4 and we don't yet have new Event Controller for it in GTK3.

Support for selecting multiple accounts was dropped and now only one account may be selected at a time.

Finally, I changed the title of the "Delete" button to "Remove" as "Remove"
seems more clear.

Testing Done:
Used the previous dialog to add, remove, and modify accounts and verified they were updated appropriately.
Also started pidgin without any accounts enabled, to verify that the new dialog was shown instead of the old.
Tested the add, modify, remove, and close buttons.
Tested that the modify and remove buttons are only sensitive when an account is selected.

Bugs closed: PIDGIN-17589

Reviewed at https://reviews.imfreedom.org/r/1318/
---
environment:
- BUILD_NUMBER
- REPOSITORY=pidgin/builders
- REGISTRY=docker.io
- DOCS_BUILD_IMAGE=${REGISTRY}/${REPOSITORY}:debian-bookworm-amd64
tasks:
import:
type: docker/import
files: .:.
build:
type: docker/run
image: ${REGISTRY}/${REPOSITORY}:${TARGET}
clean:
type: convey/clean
files:
- appimage-x86_64
- clang
- debian-bookworm-amd64
- fedora-35-amd64
- scanbuild
- ubuntu-jammy-amd64
docs-clean:
type: convey/clean
files:
- facebook3-docs
- finch3-docs
- pidgin3-docs
- purple3-docs
docs-build:
type: docker/run
image: ${DOCS_BUILD_IMAGE}
workdir: ${CONVEY_WORKSPACE}
script:
- set -ex
- meson -Ddoc=true build-docs
- ninja -C build-docs doc
docs-export:
type: docker/export
files:
- build-docs/doc/reference/finch/finch/:finch3-docs
- build-docs/doc/reference/libpurple/libpurple/:purple3-docs
- build-docs/doc/reference/pidgin/pidgin/:pidgin3-docs
- build-docs/doc/reference/protocols/facebook/facebook/:facebook3-docs
export:
type: docker/export
files: build-${TARGET}:${TARGET}
bare-export:
type: docker/export
files: ${TARGET}:${TARGET}
plans:
pidgin3-appimage-x86_64:
environment:
- TARGET=appimage-x86_64
- RECIPE=Pidgin3
- CONFIGURE_ARGS=-Dconsoleui=False
stages:
- tasks: [import, build, bare-export]
clang:
environment: [TARGET=clang]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
clean:
stages:
- tasks: [clean, docs-clean]
debian-bullseye-amd64:
environment: [TARGET=debian-bullseye-amd64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
debian-bookworm-amd64:
environment: [TARGET=debian-bookworm-amd64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
docs:
stages:
- tasks: [docs-clean, import, docs-build, docs-export]
fedora-35-amd64:
environment: [TARGET=fedora-35-amd64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
scanbuild:
environment: [TARGET=scanbuild]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
ubuntu-jammy-amd64:
environment: [TARGET=ubuntu-jammy-amd64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always