Commit Graph
100 Commits
Author SHA1 Message Date
kernelkind 8979c97741 macos build script
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-11-26 12:39:30 -05:00
kernelkind f982c65862 macos packaging
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-11-25 16:42:20 -05:00
kernelkind 792abf11d7 add new column type: hashtag
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-11-21 20:18:39 -05:00
kernelkind 308717cabf include commit hash in SupportView
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-11-21 16:13:36 -05:00
kernelkind 8464a1d22c disable post button if draft buffer empty
closes: https://github.com/damus-io/notedeck/issues/417

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-11-21 15:27:19 -05:00
kernelkind 412ba9b565 use AcquireKeyState for AddColumn
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-11-02 22:18:27 -04:00
kernelkind 529b76094c init external notifs column
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-11-02 22:18:23 -04:00
kernelkind ee5dd5426f tmp remove DeckAuthor columns
we don't yet have logic for handling switching 'deck authors' and this
is causing two problems:
1. the column title isn't renamed when the selected account is changed
2. when saving a deck author column to disk and the account is switched
   beforehand, it switches to the current deck author's column

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-30 13:46:00 -04:00
kernelkind 56dd88b3a2 initial column storage
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-30 13:40:31 -04:00
kernelkind 503b7edeb5 use open instead of egui OpenUrl for mailto link
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-28 17:02:40 -04:00
kernelkind 0c7b5e7e59 fix cmd line args bug
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-28 15:30:44 -04:00
kernelkind 309477dca4 support view
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-25 15:23:35 -04:00
kernelkind 03bfb34172 app window size persists on app close
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-25 15:23:35 -04:00
kernelkind d3b4a9efc1 write log files to disk daily and on panic
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-25 15:23:35 -04:00
kernelkind 4f86e9604f file storage
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-25 15:23:35 -04:00
kernelkind eedb4e1297 NoteActionResponse for note preview pfp clicking
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-15 13:21:39 -04:00
kernelkind 2d7da83872 rename TimelineResponse -> ColumnNoteResponse
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-15 12:35:06 -04:00
kernelkind 54d49f0110 reword comments and logs thread -> NotesHolder
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-15 11:54:05 -04:00
kernelkind 0a077ae797 fix unnecessary copy every frame
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-15 11:45:13 -04:00
kernelkind e5ba897ce6 revert timeline no_scroll stuff
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-15 11:22:48 -04:00
kernelkind dcb6620ddd proper timelineTabs
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-14 17:39:10 -04:00
kernelkind 6ffe33e924 integrate profile view caching
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-14 13:29:36 -04:00
kernelkind 705a4bdf05 profile struct
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-14 13:29:36 -04:00
kernelkind 780fba3093 generify Threads
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-14 13:29:31 -04:00
kernelkind d11d8aa9d0 consolidate timelineTab ui to TimelineTabView
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-14 10:58:43 -04:00
kernelkind 34aef30fed click on thread pfp
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-11 17:58:29 -04:00
kernelkind 8e6a982843 profile unsub
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-11 17:47:03 -04:00
kernelkind ce3f24abcd add profile preview and implement scrolling
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-11 16:37:17 -04:00
kernelkind 44948fdff0 init profile routing
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-11 16:37:17 -04:00
kernelkind b1549a52c7 tmp: kernelkind/egui-nav
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-08 21:43:31 -04:00
kernelkind a2fc754e1b updated back arrow
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-08 21:38:43 -04:00
kernelkind 983640b85a tmp: kernelkind/egui-nav
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-08 21:37:16 -04:00
kernelkind ee5aa32469 fix deck author bug & rename titles
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-08 19:10:25 -04:00
kernelkind 0d994172a0 unsubscribe timeline on deletion
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-07 14:02:37 -04:00
kernelkind 1bf9d5d934 title bar
add title bar to columns with title specific to the column type.
also add column deletion button

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-07 14:02:33 -04:00
kernelkind 0a22210c89 tmp use kernelkind egui-nav
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-07 12:42:51 -04:00
kernelkind 45223dbc25 move get first router to Columns
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-01 12:59:00 -04:00
kernelkind 57069ff7c0 push column picker immediately to new column
instead of pushing to temporary column first

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-10-01 12:51:14 -04:00
kernelkind ebe4bf3046 animate add column options
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-30 10:27:48 -04:00
kernelkind 80be174f41 add more add column options
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-30 10:27:48 -04:00
kernelkind e2dd1b3298 remote sub new timeline
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-30 10:27:48 -04:00
kernelkind 731f206424 basic add column impl
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-30 10:27:48 -04:00
kernelkindandWilliam Casarin 7d9a23c87d route back after clicking 'post' button
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-26 13:51:04 -07:00
kernelkindandWilliam Casarin 9c572e18a3 add logo to side panel
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-26 13:17:21 -07:00
kernelkind 171889b3aa process 'more options' for previews
forgot to add this part

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-25 13:15:12 -04:00
kernelkind e60793ff37 remove profile_preview_controller
no longer needed

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-24 16:52:58 -04:00
kernelkind 2832def161 remove app from sidebar
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-24 16:52:58 -04:00
kernelkind 0ea3132ee2 update sidebar to match new design
also adds interaction on hover & click

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-24 16:52:58 -04:00
kernelkind d76678dffc Add AnimationHelper
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-24 16:52:58 -04:00
kernelkind c66cf6a98c change side panel width to 64.0
matches figma design

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-24 16:52:58 -04:00
kernelkind fd75e93605 initial compose note view
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-24 16:52:58 -04:00
kernelkind ad319b643f can left click note more options button
egui doesn't support custom buttons so
`stationary_arbitrary_menu_button` had to be hacked together

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-19 19:04:28 -04:00
kernelkind 6f5f090fbe Add 'more options' to each note
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-19 19:04:28 -04:00
kernelkind 814736f9b3 implement multi_subscriber for Thread
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-18 13:53:34 -04:00
kernelkind d52c50acc2 multi subscriber impl
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-18 13:53:34 -04:00
kernelkind 0a08ae92d9 minor cleanup
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-18 11:36:07 -04:00
kernelkind eadef78543 make views pure
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-18 11:26:42 -04:00
kernelkind 6e77d20197 address PR comments
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-18 11:26:41 -04:00
kernelkind 06336a14ef add repost button
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-18 11:26:41 -04:00
kernelkind 33dcd8ba66 make PostActionExecutor for code reuse
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-18 11:26:41 -04:00
kernelkind de9e0e4ca1 post quote reposts impl
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-18 11:26:40 -04:00
kernelkind 06aa595d54 add suggested changes
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-17 11:12:43 -04:00
kernelkind f2993a61b7 kind 6 repost impl
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-17 11:04:05 -04:00
kernelkindandWilliam Casarin 7fa7529a1d cargo update
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-11 16:14:57 -07:00
kernelkindandWilliam Casarin aa82cb9fda fix flickering on account switch
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-11 16:14:32 -07:00
kernelkindandWilliam Casarin 950a47119e implement stateful account management view
`./preview StatefulAccountManagementView`

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-11 16:14:31 -07:00
kernelkindandWilliam Casarin 3a9c7607f3 make AccountManagementView stateless
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-11 16:13:58 -07:00
kernelkindandWilliam Casarin dda7256f51 add LoginState to app
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-11 16:13:16 -07:00
kernelkindandWilliam Casarin ee0029268f add RoutableWidgetState conception
holds the routes for an arbitrary widget

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-11 16:12:57 -07:00
kernelkindandWilliam Casarin df4e331d33 narrowize account login view
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-11 16:12:08 -07:00
kernelkindandWilliam Casarin 206112849d narrowize account management view
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-11 16:12:07 -07:00
kernelkindandWilliam Casarin 52604e65c6 remove global popup conception
can be added later if we need it again

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-09-11 16:11:10 -07:00
kernelkind 9141d951d1 fixed global.json
broke due to 9328ef2dff

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-08-22 20:31:20 -04:00
kernelkind a890c9e970 select first account
closes: https://github.com/damus-io/notedeck/issues/119

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-07-02 13:12:20 -04:00
kernelkind 2a47a66bbb impl linux credential storage
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-06-28 15:27:46 -04:00
kernelkind 6afb618089 reintroduce account management
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-06-23 20:04:00 -04:00
kernelkind 98a61c0aa7 reintroduce account switcher
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-06-18 19:16:11 -04:00
kernelkindandWilliam Casarin df0377cb89 Pfp integration to side panel
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin 7ebd694f11 refactor account switcher & management previews
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin 22264e70f5 Integrate account switcher to side panel
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin c0b1a01b5d Account switcher
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin f489ed3b9e Migrate to new AccountManagementView conception
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin 2ca47edf4d AccountManager: add ability to make a selection
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin bdf6156fff Move preview controller out of account_manager.rs
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin 11b3effa51 Add AccountManager to app
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin 748d9d2358 Integrate global popup into app
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin f071d59dae Rename PersistState -> StateInMemory
also use IdTypeMap::insert_temp instead of insert_persisted.
The whole conception of using egui memory to share state is probably
going to be changed to a more robust solution in the future.

Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin fd943e5f9f account_management: refactor
Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin 88a3a2d088 move test account creation & apply to global popup
Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin 17d0c97c78 Create side panel & global popup
Create a side panel UI element for desktop with three buttons for:
adding a column, settings, and account management. The account
management button is temporary pending a better design. It is the only
one that is interactable at the moment. When the user clicks it, the
global popup window will be shown and the AccountManagementView will be
presented on the window. The user can click on the X on the top right of
the window to close it.

Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-27 10:48:28 -07:00
kernelkindandWilliam Casarin 1dc832baea app: add accounts to Damus & mock
Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-27 10:48:28 -07:00
kernelkind adc1d25948 macos_key_storage: runner ignore tests
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-23 16:07:58 -04:00
kernelkind 0c88c63460 Conditionally compile MacOS key storage code
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-23 16:07:38 -04:00
kernelkind 9fad35485a Add MacOS key storage
Signed-off-by: kernelkind <kernelkind@gmail.com>
2024-05-21 19:50:05 -04:00
kernelkindandWilliam Casarin 95f8623c41 migrate AccountManagementView to enostr Keypair
Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-14 14:39:05 -07:00
kernelkindandWilliam Casarin bb25fd4ae1 AccountSelectionWidget
Will be useful for selecting an account for the 'Add Column' view

Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-13 10:50:42 -07:00
kernelkindandWilliam Casarin e9c3596067 AccountManagementView
View used to add and remove accounts from the app

Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-13 10:50:42 -07:00
kernelkindandWilliam Casarin 93800e0d04 Add SimpleProfilePreview
Preview that only contains the pfp, display name, and username

Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-13 10:50:42 -07:00
kernelkindandWilliam Casarin 59818edd83 remove nostr-sdk
Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-08 14:14:37 -07:00
kernelkindandWilliam Casarin e04c8821d5 Add keypair & update pubkey
Keypair & FullKeypair match structs in damus ios

Signed-off-by: kernelkind <kernelkind@gmail.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-08 14:14:37 -07:00