a fork of iceshrimp.net but a tweaked frontend to my personal liking. waow
fediverse social-media social iceshrimp fedi
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

[frontend] moving the profile buttons in the header div

Niko bbb17908 43d3538e

+107 -105
+1 -105
Iceshrimp.Frontend/Components/ProfileInfo.razor
··· 59 59 </span> 60 60 } 61 61 </div> 62 - <div class="profile-buttons"> 63 - <FollowButton User="User" UserProfile="UserProfile"/> 64 - <button @ref="MenuButton" class="button context-button" @onclick="ToggleMenu" @onclick:stopPropagation="true" aria-label="more"> 65 - <Icon Name="Icons.DotsThreeOutline" Size="1.3em"/> 66 - <Menu @ref="ContextMenu"> 67 - @if (UserProfile.Relations.HasFlag(Relations.Self)) 68 - { 69 - <MenuElement Icon="Icons.Pencil" OnSelect="EditProfile"> 70 - <Text>@Loc["Edit profile"]</Text> 71 - </MenuElement> 72 - } 73 - else if (UserProfile.Relations.HasFlag(Relations.CanBite)) 74 - { 75 - <MenuElement Icon="Icons.Tooth" OnSelect="Bite"> 76 - <Text>@Loc["Bite"]</Text> 77 - </MenuElement> 78 - } 79 - @if (User.Host != null) 80 - { 81 - <MenuElement Icon="Icons.ArrowsClockwise" OnSelect="RefetchUser"> 82 - <Text>@Loc["Refetch"]</Text> 83 - </MenuElement> 84 - } 85 - <MenuElement Icon="Icons.Info" OnSelect="OpenAbout"> 86 - <Text>@Loc["About"]</Text> 87 - </MenuElement> 88 - <hr class="rule"/> 89 - @if (User.Host != null && UserProfile.Url != null) 90 - { 91 - <MenuElement Icon="Icons.ArrowSquareOut" OnSelect="OpenOriginal"> 92 - <Text>@Loc["Open original page"]</Text> 93 - </MenuElement> 94 - } 95 - <MenuElement Icon="Icons.Share" OnSelect="CopyLink"> 96 - <Text>@Loc["Copy link"]</Text> 97 - </MenuElement> 98 - @if (User.Host != null && UserProfile.Url != null) 99 - { 100 - <MenuElement Icon="Icons.ShareNetwork" OnSelect="CopyLinkRemote"> 101 - <Text>@Loc["Copy link (remote)"]</Text> 102 - </MenuElement> 103 - } 104 - <MenuElement Icon="Icons.At" OnSelect="CopyUsername"> 105 - <Text>@Loc["Copy username"]</Text> 106 - </MenuElement> 107 - @if (User.Host == null) 108 - { 109 - <MenuElement Icon="Icons.Atom" OnSelect="CopyAtomFeed"> 110 - <Text>@Loc["Copy Atom feed"]</Text> 111 - </MenuElement> 112 - <MenuElement Icon="Icons.BracketsCurly" OnSelect="CopyJsonFeed"> 113 - <Text>@Loc["Copy JSON feed"]</Text> 114 - </MenuElement> 115 - <MenuElement Icon="Icons.Rss" OnSelect="CopyRssFeed"> 116 - <Text>@Loc["Copy RSS feed"]</Text> 117 - </MenuElement> 118 - } 119 - @if (!UserProfile.Relations.HasFlag(Relations.Self)) 120 - { 121 - <hr class="rule"/> 122 - @if (UserProfile.Relations.HasFlag(Relations.Muting)) 123 - { 124 - <MenuElement Icon="Icons.Eye" OnSelect="Unmute"> 125 - <Text>@Loc["Unmute"]</Text> 126 - </MenuElement> 127 - } 128 - else 129 - { 130 - <MenuElement Icon="Icons.EyeSlash" OnSelect="Mute"> 131 - <Text>@Loc["Mute"]</Text> 132 - </MenuElement> 133 - <MenuElement Icon="Icons.Timer" OnSelect="TemporaryMute"> 134 - <Text>@Loc["Temporary mute"]</Text> 135 - </MenuElement> 136 - } 137 - 138 - @if (UserProfile.Relations.HasFlag(Relations.FollowedBy)) 139 - { 140 - <MenuElement Icon="Icons.LinkBreak" OnSelect="RemoveFromFollowers" Danger> 141 - <Text>@Loc["Remove follower"]</Text> 142 - </MenuElement> 143 - } 144 - 145 - @if (UserProfile.Relations.HasFlag(Relations.Blocking)) 146 - { 147 - <MenuElement Icon="Icons.Prohibit" OnSelect="Unblock" Danger> 148 - <Text>@Loc["Unblock"]</Text> 149 - </MenuElement> 150 - } 151 - else 152 - { 153 - <MenuElement Icon="Icons.Prohibit" OnSelect="Block" Danger> 154 - <Text>@Loc["Block"]</Text> 155 - </MenuElement> 156 - } 157 - 158 - <MenuElement Icon="Icons.WarningCircle" OnSelect="Report" Danger> 159 - <Text>@Loc["Report"]</Text> 160 - </MenuElement> 161 - } 162 - <ClosingBackdrop OnClose="ContextMenu.Close"></ClosingBackdrop> 163 - </Menu> 164 - </button> 165 - </div> 166 62 </div> 167 63 @if (UserProfile.Bio != null) 168 64 { ··· 495 391 _instance = await MetadataService.Instance.Value; 496 392 MemoForm = new UserMemoRequest { Text = UserProfile.Memo ?? "" }; 497 393 } 498 - } 394 + }
+2
Iceshrimp.Frontend/Components/ProfileInfo.razor.css
··· 65 65 gap: 0.5rem; 66 66 margin: 0rem; 67 67 align-items: start; 68 + margin-top: 10px; 68 69 } 69 70 70 71 .badge { ··· 86 87 87 88 .profile-buttons { 88 89 align-items: center; 90 + margin-top: 20px; 89 91 } 90 92 91 93 .context-button {
+104
Iceshrimp.Frontend/Pages/ProfileView.razor
··· 72 72 </div> 73 73 </div> 74 74 </div> 75 + <div class="profile-buttons"> 76 + <FollowButton User="User" UserProfile="UserProfile"/> 77 + <button @ref="MenuButton" class="button context-button" @onclick="ToggleMenu" @onclick:stopPropagation="true" aria-label="more"> 78 + <Icon Name="Icons.DotsThreeOutline" Size="1.3em"/> 79 + <Menu @ref="ContextMenu"> 80 + @if (UserProfile.Relations.HasFlag(Relations.Self)) 81 + { 82 + <MenuElement Icon="Icons.Pencil" OnSelect="EditProfile"> 83 + <Text>@Loc["Edit profile"]</Text> 84 + </MenuElement> 85 + } 86 + else if (UserProfile.Relations.HasFlag(Relations.CanBite)) 87 + { 88 + <MenuElement Icon="Icons.Tooth" OnSelect="Bite"> 89 + <Text>@Loc["Bite"]</Text> 90 + </MenuElement> 91 + } 92 + @if (User.Host != null) 93 + { 94 + <MenuElement Icon="Icons.ArrowsClockwise" OnSelect="RefetchUser"> 95 + <Text>@Loc["Refetch"]</Text> 96 + </MenuElement> 97 + } 98 + <MenuElement Icon="Icons.Info" OnSelect="OpenAbout"> 99 + <Text>@Loc["About"]</Text> 100 + </MenuElement> 101 + <hr class="rule"/> 102 + @if (User.Host != null && UserProfile.Url != null) 103 + { 104 + <MenuElement Icon="Icons.ArrowSquareOut" OnSelect="OpenOriginal"> 105 + <Text>@Loc["Open original page"]</Text> 106 + </MenuElement> 107 + } 108 + <MenuElement Icon="Icons.Share" OnSelect="CopyLink"> 109 + <Text>@Loc["Copy link"]</Text> 110 + </MenuElement> 111 + @if (User.Host != null && UserProfile.Url != null) 112 + { 113 + <MenuElement Icon="Icons.ShareNetwork" OnSelect="CopyLinkRemote"> 114 + <Text>@Loc["Copy link (remote)"]</Text> 115 + </MenuElement> 116 + } 117 + <MenuElement Icon="Icons.At" OnSelect="CopyUsername"> 118 + <Text>@Loc["Copy username"]</Text> 119 + </MenuElement> 120 + @if (User.Host == null) 121 + { 122 + <MenuElement Icon="Icons.Atom" OnSelect="CopyAtomFeed"> 123 + <Text>@Loc["Copy Atom feed"]</Text> 124 + </MenuElement> 125 + <MenuElement Icon="Icons.BracketsCurly" OnSelect="CopyJsonFeed"> 126 + <Text>@Loc["Copy JSON feed"]</Text> 127 + </MenuElement> 128 + <MenuElement Icon="Icons.Rss" OnSelect="CopyRssFeed"> 129 + <Text>@Loc["Copy RSS feed"]</Text> 130 + </MenuElement> 131 + } 132 + @if (!UserProfile.Relations.HasFlag(Relations.Self)) 133 + { 134 + <hr class="rule"/> 135 + @if (UserProfile.Relations.HasFlag(Relations.Muting)) 136 + { 137 + <MenuElement Icon="Icons.Eye" OnSelect="Unmute"> 138 + <Text>@Loc["Unmute"]</Text> 139 + </MenuElement> 140 + } 141 + else 142 + { 143 + <MenuElement Icon="Icons.EyeSlash" OnSelect="Mute"> 144 + <Text>@Loc["Mute"]</Text> 145 + </MenuElement> 146 + <MenuElement Icon="Icons.Timer" OnSelect="TemporaryMute"> 147 + <Text>@Loc["Temporary mute"]</Text> 148 + </MenuElement> 149 + } 150 + 151 + @if (UserProfile.Relations.HasFlag(Relations.FollowedBy)) 152 + { 153 + <MenuElement Icon="Icons.LinkBreak" OnSelect="RemoveFromFollowers" Danger> 154 + <Text>@Loc["Remove follower"]</Text> 155 + </MenuElement> 156 + } 157 + 158 + @if (UserProfile.Relations.HasFlag(Relations.Blocking)) 159 + { 160 + <MenuElement Icon="Icons.Prohibit" OnSelect="Unblock" Danger> 161 + <Text>@Loc["Unblock"]</Text> 162 + </MenuElement> 163 + } 164 + else 165 + { 166 + <MenuElement Icon="Icons.Prohibit" OnSelect="Block" Danger> 167 + <Text>@Loc["Block"]</Text> 168 + </MenuElement> 169 + } 170 + 171 + <MenuElement Icon="Icons.WarningCircle" OnSelect="Report" Danger> 172 + <Text>@Loc["Report"]</Text> 173 + </MenuElement> 174 + } 175 + <ClosingBackdrop OnClose="ContextMenu.Close"></ClosingBackdrop> 176 + </Menu> 177 + </button> 178 + </div> 75 179 </div> 76 180 <ProfileInfo Emojis="@UserResponse.Emojis" User="UserResponse" UserProfile="Profile"/> 77 181 </div>