Commit Graph

344 Commits

Author SHA1 Message Date
William Casarin
e09df3e7c3 timeline: add nip50 search timelines
Fixes: https://github.com/damus-io/notedeck/issues/456
Signed-off-by: William Casarin <jb55@jb55.com>
2025-03-07 13:24:41 -08:00
William Casarin
62a1571dea search: show icon again
Signed-off-by: William Casarin <jb55@jb55.com>
2025-03-07 12:58:42 -08:00
William Casarin
23285e7d76 nevernest some note posting code
Signed-off-by: William Casarin <jb55@jb55.com>
2025-03-07 12:58:42 -08:00
William Casarin
873b0e0dcc nav: ocd updates
Signed-off-by: William Casarin <jb55@jb55.com>
2025-03-07 12:58:42 -08:00
William Casarin
4365839242 Revert driller
This reverts commit cec49c83bd.

Revert "update NoteContentsDriller to NoteContext"

This reverts commit 65bd6a65f9.

Revert "introduce the driller"

This reverts commit 95d618e7fe.
2025-03-07 12:53:34 -08:00
William Casarin
50cf75b8bc lint: fix lint issue
Signed-off-by: William Casarin <jb55@jb55.com>
2025-03-07 12:36:39 -08:00
William Casarin
cec49c83bd fix formatting
Signed-off-by: William Casarin <jb55@jb55.com>
2025-03-07 12:36:26 -08:00
William Casarin
65bd6a65f9 update NoteContentsDriller to NoteContext
Signed-off-by: William Casarin <jb55@jb55.com>
2025-03-07 12:30:53 -08:00
kernelkind
95d618e7fe introduce the driller
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-03-07 12:07:24 -05:00
kernelkind
035aa20790 remove redudant arg
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-03-07 11:58:39 -05:00
Ethan Tuttle
0d251bda9f support Cmd+Enter for posting on macOS
Add support for Command key (macOS) in addition to Ctrl key for submitting posts via keyboard shortcut
2025-03-06 21:56:44 -05:00
kernelkind
e3eab0dfa8 user can explicitly close mention hints
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-03-02 15:05:48 -05:00
kernelkind
66b35c5026 add button for closing mention hints
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-03-02 15:05:48 -05:00
kernelkind
e37c14c9eb fix search results rect bounds
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-03-02 15:05:48 -05:00
kernelkind
83caa9f814 exit mention on double space
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-03-02 15:05:48 -05:00
kernelkind
ea4217d4c8 only show mention hints if prev char is whitespace or at first char
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-03-02 15:05:44 -05:00
William Casarin
95affa2245 ui: fix bounciness when loading pfps
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-27 10:37:07 -08:00
William Casarin
94e31ff715 add_column: add a bit of padding between title and desc
Co-authored-by: Grok3
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-26 19:48:04 -08:00
William Casarin
9713503d9e add_column: use weak color for descriptions
This matches the figma

Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-26 19:41:08 -08:00
William Casarin
cee8ab792c algo: fix algo feed icon
temporary placeholder, but at least its less ugly

Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-26 19:32:19 -08:00
kernelkind
7ca7dd156b fix video links not showing
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-26 16:09:39 -05:00
William Casarin
a524bbd5a4 Merge GIF support by kernel
kernelkind (20):
      use bincode
      update ehttp to 0.5.0
      introduce UrlMimes
      use mime_guess
      add SupportedMimeType
      rename ImageCache -> MediaCache
      Use TexturedImage in MediaCache
      render MediaCache method
      move MediaCache rendering to render_media_cache call
      support multiple media cache files
      introduce Images
      render Images method
      migrate to using Images instead of MediaCache directly
      URL mime hosted completeness
      handle UrlCache io
      introduce gif animation
      handle gif state
      integrate gifs
      use SupportedMimeType for media_upload
      render gif in PostView
2025-02-26 12:29:39 -08:00
kernelkind
615e27c1de fix mention crash
closes: https://github.com/damus-io/notedeck/issues/747

Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 17:49:19 -05:00
kernelkind
9d88ba1415 render gif in PostView
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
e5fc461a79 use SupportedMimeType for media_upload
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
490dedfaf1 integrate gifs
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
d1c7a5a239 handle gif state
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
0461a98d5d handle UrlCache io
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
9592452757 URL mime hosted completeness
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
33fdf647e3 migrate to using Images instead of MediaCache directly
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
75a352a86f render Images method
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
888a933e56 support multiple media cache files
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
7c2b4775f1 move MediaCache rendering to render_media_cache call
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
32b3e2110d render MediaCache method
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
594ea0b42d Use TexturedImage in MediaCache
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
4f4a0feb8c rename ImageCache -> MediaCache
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
kernelkind
fa9e318e41 update ehttp to 0.5.0
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-25 16:49:00 -05:00
William Casarin
660b7cc8b7 feat: add --no-media flag to disable media display
- Introduced a new "no_media" boolean in ColumnsArgs to capture the
  --no-media flag.

- Updated NoteOptions to include a setting for hiding media, configured
  from parsed arguments.

- Refactored Damus to consolidate note options (textmode, scramble, and
  no-media) into a single NoteOptions field.

- Modified navigation UI rendering to pass the unified note_options.

This change allows users to disable media display via the --no-media flag.

Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-22 14:39:33 -08:00
William Casarin
bd352f76d4 feat: add scramble flag for development text scrambling
This commit introduces a new scramble option to help reduce distractions
during development by scrambling text using rot13. When enabled via the
new `--scramble` flag, text displayed in various views is transformed,
making it easier to focus on layout and behavior without reading the
actual content.

App & Args Updates

  - Added a `scramble: bool` field to the main application state (in `app.rs`).

  - Extended argument parsing (in `args.rs`) to recognize the `--scramble` flag.

NoteOptions Enhancement

  - Introduced a new bit flag `scramble_text` in `NoteOptions` with
    corresponding setter/getter methods.

UI Adjustments

  - Propagated the scramble flag through note rendering functions across
    navigation, timeline, and note view modules.

  - Updated several UI components (e.g., in `nav.rs`, `route.rs`, and
    `contents.rs`) to accept and apply the new note options.

Rot13 Implementation

  - Implemented a helper function (`rot13`) to scramble text
    conditionally when the scramble option is enabled.

This feature is intended for development builds only, offering a way to
obscure text content during UI tweaks and testing.

Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-22 14:30:38 -08:00
jglad
030e76c046 hide nsec in account panel 2025-02-13 19:46:59 +01:00
jglad
346e705f36 fix compilation 2025-02-12 21:54:26 +01:00
William Casarin
d82d7fd00d Merge relay debug view fixes & more strict args #711
Ken Sedgwick (5):
      drive-by compiler warning fixes
      drive-by clippy fixes
      add derive Debug to some things
      panic on unknown CLI arguments
      move RelayDebugView to notedeck crate and restore --relay-debug

William Casarin (4):
      clippy: fix lint
      args: skip creation of vec
      nix: fix android build

Link: https://github.com/damus-io/notedeck/pull/711
2025-02-10 17:03:23 -08:00
William Casarin
7f0d0106d9 Merge remote-tracking branch 'github/pr/724' 2025-02-10 16:52:56 -08:00
William Casarin
c4b56a48af Merge ctrl-enter to post
Ethan Tuttle (1):
      feat: ctrl+enter when creating a new note, sends the note, the same way clicking the "Post Now" button.
2025-02-10 16:46:24 -08:00
William Casarin
d0be18c80e clippy: fix enum too large issue
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-10 16:33:58 -08:00
William Casarin
194fa68641 profilesearch: add some padding
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-10 16:08:19 -08:00
Ethan Tuttle
8aaaa336e2 feat: ctrl+enter when creating a new note, sends the note, the same way clicking the "Post Now" button.
This button combination is common enough in "power user" apps for multiline input that I think this is a good default and could likely be configurable in the future.
2025-02-08 21:48:00 -05:00
jglad
4aefe1f1fe refactor 2025-02-08 10:59:15 +01:00
jglad
8588600a2c fix: handle missing file [#715] 2025-02-08 10:52:37 +01:00
kernelkind
0e21611645 cache LayoutJob
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-07 15:58:57 -05:00