Skip to content

Commit b9d884b

Browse files
authored
Merge pull request #62 from JichouP:fix/#45
未読チャンネルを下から消化したい
2 parents cc382ed + 98c5267 commit b9d884b

File tree

7 files changed

+26
-3
lines changed

7 files changed

+26
-3
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org).
99

1010
### Added
1111

12+
- [全環境] 一番下の未読チャンネルをクリックする `clickNavigationBarHomeBottomUnreadChannel` を追加 [#62](https://github.com/JichouP/Better-traQ/issues/62)
1213
- [全環境] チャンネル入力時に、Enter キーで検索結果の一番上のチャンネルに飛ぶ機能を追加 [#58](https://github.com/JichouP/Better-traQ/issues/58)
1314
- [全環境] チャンネル/ユーザー検索にフォーカスしているかどうかを判定する条件を追加 [#56](https://github.com/JichouP/Better-traQ/issues/56)
1415
- [全環境] スタンプ詳細のプルダウンのクリックを追加 [#54](https://github.com/JichouP/Better-traQ/issues/54)

src/content_scripts/@types/SelectorEnum.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ type SelectorEnum =
99
| 'navigationSelectorHomeTab'
1010
| 'navigationBarHomeHomeChannel'
1111
| 'navigationBarHomeTopUnreadChannel'
12+
| 'navigationBarHomeBottomUnreadChannel'
1213
/// Channelsタブ
1314
| 'navigationSelectorChannelsTab'
1415
| 'navigationBarChannelsChannelFilterInput'

src/content_scripts/actions.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ export { default as clickNavigationBarChannelsChannelFilterStar } from './action
3636
export { default as clickNavigationBarChannelsNextChannel } from './actions/clickNavigationBarChannelsNextChannel';
3737
export { default as clickNavigationBarChannelsPreviousChannel } from './actions/clickNavigationBarChannelsPreviousChannel';
3838
export { default as clickNavigationBarChannelsTopSearchResult } from './actions/clickNavigationBarChannelsTopSearchResult';
39+
export { default as clickNavigationBarHomeBottomUnreadChannel } from './actions/clickNavigationBarHomeBottomUnreadChannel';
3940
export { default as clickNavigationBarHomeHomeChannel } from './actions/clickNavigationBarHomeHomeChannel';
4041
export { default as clickNavigationBarHomeTopUnreadChannel } from './actions/clickNavigationBarHomeTopUnreadChannel';
4142
export { default as clickNavigationBarUsersTopSearchResult } from './actions/clickNavigationBarUsersTopSearchResult';
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import selectors from '../selectors';
2+
import { mousedown } from './utils/dispatchEvent';
3+
4+
const clickNavigationBarHomeBottomUnreadChannel = () => {
5+
const unreadChannelSelector =
6+
selectors.navigationBarHomeBottomUnreadChannel();
7+
if (!unreadChannelSelector) return;
8+
const unreadChannelEl = document.querySelector<HTMLDivElement>(
9+
unreadChannelSelector
10+
);
11+
if (!unreadChannelEl) return;
12+
mousedown(unreadChannelEl);
13+
};
14+
15+
export default clickNavigationBarHomeBottomUnreadChannel;

src/content_scripts/default/task.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ const defaultTasks: Task[] = [
4444
],
4545
},
4646
{
47-
name: 'トップ未読チャンネルをクリック()',
47+
name: 'ホームチャンネルをクリック(未読チャンネルがない場合)',
4848
keybinds: [
4949
{
5050
key: 'e',

src/content_scripts/selectors.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,12 @@ const selectors: Record<SelectorEnum, () => string | null> = {
4545
: null,
4646
navigationBarHomeTopUnreadChannel: () =>
4747
existHomeChannel()
48-
? '#app > div > div > div > div > div > div > div > div > div:nth-child(2) > div:nth-child(3) > div:nth-child(1) > div' // ホームチャンネルが存在する場合は2番目
49-
: '#app > div > div > div > div > div > div > div > div > div:nth-child(1) > div:nth-child(2) > div > div:nth-child(1)', // ホームチャンネルが存在しない場合は1番目
48+
? '#app > div > div > div > div > div > div > div > div > div:nth-child(2) > div:nth-child(3) > div:nth-child(1) > div:nth-child(1)' // ホームチャンネルが存在する場合は2番目
49+
: '#app > div > div > div > div > div > div > div > div > div:nth-child(1) > div:nth-child(3) > div:nth-child(1) > div:nth-child(1)', // ホームチャンネルが存在しない場合は1番目
50+
navigationBarHomeBottomUnreadChannel: () =>
51+
existHomeChannel()
52+
? '#app > div > div > div > div > div > div > div > div > div:nth-child(2) > div:nth-child(3) > div:nth-last-child(1) > div:nth-child(1)' // ホームチャンネルが存在する場合は2番目
53+
: '#app > div > div > div > div > div > div > div > div > div:nth-child(1) > div:nth-child(3) > div:nth-last-child(1) > div:nth-child(1)', // ホームチャンネルが存在しない場合は1番目
5054
navigationSelectorChannelsTab: () => navigationSelector(3),
5155
navigationBarChannelsChannelFilterInput: () =>
5256
'#app > div > div > div > div > div > div > div > div > div > div > div > div > input',

src/store/zAction.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ const zAction = z.union([
77
z.literal('clickNavigationSelectorHomeTab'),
88
z.literal('clickNavigationBarHomeHomeChannel'),
99
z.literal('clickNavigationBarHomeTopUnreadChannel'),
10+
z.literal('clickNavigationBarHomeBottomUnreadChannel'),
1011
z.literal('clickNavigationSelectorChannelsTab'),
1112
z.literal('focusNavigationBarChannelsChannelFilterInput'),
1213
z.literal('inputCurrentChannelNameNavigationBarChannelsChannelFilter'),

0 commit comments

Comments
 (0)