Files
buzz/mobile/lib/shared/theme/code_style.dart
klopez4212 5fefec604f fix(mobile): restore channel icons and align chat colors with desktop (#8478)
## Summary
- Restores `#` and lock icons for public and private channels on Home,
with matching loading placeholders.
- Updates the dark-mode navigation colors to the desktop design-system
tokens (read and unread text, section headings).
- Replaces the chat color picker with the seven desktop accents (Gray,
Chartreuse, Flame, Magenta, Iris, Cobalt, Jade). Saved legacy colors map
to the closest one.
- Uses white text in your own bubbles, and black where white falls below
4.5:1 (Chartreuse, dark-mode Gray). Links (underlined), quotes, tables
and code use the same text color.
- Insets code blocks in bubbles evenly, with corners concentric to the
bubble and even inner padding.
- The swipe-to-reply indicator uses the chosen chat color.

## Testing
- `flutter analyze` and `dart format` are clean. The full mobile suite
passes (3,705 tests).
- Installed and checked on a Pixel 10 and an iPhone Air against a real
community.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Signed-off-by: kenny lopez <klopez4212@gmail.com>
Co-authored-by: Terp <5856f6900e8e0a4e0ea1f4f8d2ee33e4753d2119bc122f94ecafc660b46c0511@buzz.block.builderlab.xyz>
Co-authored-by: Queue <874bf2d815c2c4b459b90438c669c57f2702f3a76bb6e16fa97184259aac3e9e@buzz.block.builderlab.xyz>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 13:48:12 -04:00

34 lines
1.3 KiB
Dart

import 'package:flutter/material.dart';
import 'message_typography.dart';
/// The app's own code style — one place stating the mono face, its size and
/// the colours a code surface is drawn with.
///
/// Two surfaces render code and they have to read as one family: the fenced
/// block in `MessageContent`, and the inline chip `gpt_markdown` paints from
/// the `InlineCodeStyle` declared in `AppTheme`. Both take their values from
/// here, so neither can drift from the other by editing one copy.
abstract final class CodeStyle {
/// The mono face, already used by the composer and by code blocks.
static const fontFamily = 'GeistMono';
/// Code size at message body scale.
static const fontSize = 13.0;
/// Line height of code text.
static const lineHeight = 1.5;
/// [fontSize] stated against the message body size, for APIs that scale code
/// relative to the text around it rather than fixing a point size. Keeping
/// it a ratio means code follows the body if that size ever changes.
static final fontSizeFactor = fontSize / messageBodyTextStyle.fontSize!;
/// Fill behind a code surface.
static Color background(ColorScheme scheme) => scheme.surfaceContainerHighest;
/// Outline around a code surface.
static Color border(ColorScheme scheme) =>
scheme.outline.withValues(alpha: 0.7);
}