Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

redesigned app settings and switch to rust crypto #1988

Merged
merged 58 commits into from
Feb 10, 2025
Merged
Changes from 1 commit
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
97a0fed
rework general settings
ajbura Oct 1, 2024
5401b2e
account settings - WIP
ajbura Dec 6, 2024
285d8d1
add missing key prop
ajbura Dec 7, 2024
6fa0cfc
add object url hook
ajbura Dec 7, 2024
f67fbd1
extract wide modal styles
ajbura Dec 7, 2024
c43bbea
profile settings and image editor - WIP
ajbura Dec 7, 2024
c34c3e3
add outline style to upload card
ajbura Dec 14, 2024
fa199df
remove file param from bind upload atom hook
ajbura Dec 14, 2024
ff371ee
add compact variant to upload card
ajbura Dec 14, 2024
9c46a6f
add compact upload card renderer
ajbura Dec 14, 2024
de281ad
add option to update profile avatar
ajbura Dec 15, 2024
77111f8
add option to change profile displayname
ajbura Dec 15, 2024
a1b2e36
allow displayname change based on capabilities check
ajbura Dec 15, 2024
e8ace5f
rearrange settings components into folders
ajbura Dec 15, 2024
97ec996
add system notification settings
ajbura Dec 15, 2024
233ec01
add initial page param in settings
ajbura Dec 15, 2024
643da9e
convert account data hook to typescript
ajbura Dec 16, 2024
d3b2e73
add push rule hook
ajbura Dec 16, 2024
feec0a8
add notification mode hook
ajbura Dec 16, 2024
bda6198
add notification mode switcher component
ajbura Dec 16, 2024
a1791ca
add all messages notification settings options
ajbura Dec 16, 2024
a5042bb
Merge branch 'dev' into rework-user-settings
ajbura Dec 16, 2024
cb7db3c
add special messages notification settings
ajbura Dec 17, 2024
9a0d716
add keyword notifications
ajbura Dec 18, 2024
02a8577
add ignored users section
ajbura Dec 18, 2024
7c91dac
improve ignore user list strings
ajbura Dec 18, 2024
37524fa
add about settings
ajbura Dec 18, 2024
e685eb9
add access token option in about settings
ajbura Dec 18, 2024
ef8d09e
add developer tools settings
ajbura Dec 18, 2024
061f27a
add expand button to account data dev tool option
ajbura Dec 18, 2024
e949a5e
update folds
ajbura Dec 21, 2024
a91acbd
fix editable active element textarea check
ajbura Dec 21, 2024
6b1d827
do not close dialog when editable element in focus
ajbura Dec 21, 2024
6b75bc8
add text area plugins
ajbura Dec 21, 2024
81738d4
add text area intent handler hook
ajbura Dec 21, 2024
64a5bf5
add newline intent mod in text area
ajbura Dec 21, 2024
5029516
add next line hotkey in text area intent hook
ajbura Dec 21, 2024
f6b8b01
add syntax error position dom utility function
ajbura Dec 22, 2024
7d4c529
add account data editor
ajbura Dec 22, 2024
d6d22da
add button to send new account data in dev tools
ajbura Dec 22, 2024
3bfc80c
improve custom emoji plugin
ajbura Dec 26, 2024
15d72b6
add more custom emojis hooks
ajbura Dec 26, 2024
17727de
add text util css
ajbura Dec 26, 2024
c1ef616
add word break in setting tile title and description
ajbura Dec 26, 2024
9d812a6
emojis and sticker user settings - WIP
ajbura Dec 26, 2024
5bc1eab
view image packs from settings
ajbura Jan 4, 2025
b18bce0
emoji pack editing - WIP
ajbura Jan 5, 2025
77ebd1a
Merge branch 'dev' into rework-user-settings
ajbura Jan 5, 2025
e9d8a7b
add option to edit pack meta
ajbura Jan 12, 2025
c983e20
Merge branch 'dev' into rework-user-settings
ajbura Jan 12, 2025
bf31a8e
change saved changes message
ajbura Jan 12, 2025
632e54d
add image edit and delete controls
ajbura Jan 13, 2025
7b41fde
add option to upload pack images and apply changes
ajbura Jan 15, 2025
6ba0da9
fix state event type when updating image pack
ajbura Jan 15, 2025
f4bf351
lazy load pack image tile img
ajbura Jan 15, 2025
4618ab5
hide upload image button when user can not edit pack
ajbura Jan 15, 2025
9bb7319
add option to add or remove global image packs
ajbura Jan 16, 2025
39521b7
upgrade to rust crypto (#2168)
ajbura Feb 10, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
add text area intent handler hook
  • Loading branch information
ajbura committed Dec 21, 2024
commit 81738d4f5d90a9bb654be41ddfe93848dbfad8b1
53 changes: 53 additions & 0 deletions src/app/hooks/useTextAreaIntent.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
import { isKeyHotkey } from 'is-hotkey';
import { KeyboardEventHandler, useCallback } from 'react';
import { Cursor, Intent, Operations, TextArea } from '../plugins/text-area';

export const useTextAreaIntentHandler = (
textArea: TextArea,
operations: Operations,
intent: Intent
) => {
const handler: KeyboardEventHandler<HTMLTextAreaElement> = useCallback(
(evt) => {
const target = evt.currentTarget;

if (isKeyHotkey('tab', evt)) {
evt.preventDefault();

const cursor = Cursor.fromTextAreaElement(target);
if (textArea.selection(cursor)) {
operations.select(intent.moveForward(cursor));
} else {
operations.deselect(operations.insert(cursor, intent.str));
}

target.focus();
}
if (isKeyHotkey('shift+tab', evt)) {
evt.preventDefault();
const cursor = Cursor.fromTextAreaElement(target);
const intentCursor = intent.moveBackward(cursor);
if (textArea.selection(cursor)) {
operations.select(intentCursor);
} else {
operations.deselect(intentCursor);
}

target.focus();
}
if (isKeyHotkey('enter', evt) || isKeyHotkey('shift+enter', evt)) {
evt.preventDefault();
const cursor = Cursor.fromTextAreaElement(target);
operations.select(intent.addNextLine(cursor));
}
if (isKeyHotkey('mod+shift+enter', evt)) {
evt.preventDefault();
const cursor = Cursor.fromTextAreaElement(target);
operations.select(intent.addPreviousLine(cursor));
}
},
[textArea, operations, intent]
);

return handler;
};