Custom Admin Emoji Panel (Reviewboard)

Review Request #11868 — Created Oct. 23, 2021 and updated

mxwang
Review Board
release-4.0.x
11821
reviewboard

Adds a page to the admin panel which allows an admin to upload a custom emoji
by uploading a name, shortcode, description, and image. These fields are
editable whenever the user re-vists the page. The emoji data is loaded from,
and saved into SiteConfiguration, while the image data is loaded from and
saved to DefaultStorage.

Further work that needs to be done: * Adding labels to the form fields, and removing the extra "name" field at
the very top of the form.

Summary document in Notion: https://www.notion.so/reviewboard/Custom-Emojis-Progress-6644ec34f5a84c6ab957ea11ae2b7259

Unit testing: Unit test suites for class Emoji_Widget
Local testing: making sure the app runs property with print() statements.

Summary Author
Upload Emojis wip.
mxiuwang
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
[WIP] use forms to upload images
mxiuwang
[WIP] load() and save() functions.
mxiuwang
[WIP] Emoji working, trying to validate save().
mxiuwang
WIP save() function in emoji_settings,py
mxiuwang
save runs but does not fetch data from forms.
mxiuwang
[WIP] cannot fetch data from forms.
mxiuwang
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
ListEditDictionaryField working.
mxiuwang
save working except images.
mxiuwang
load() function loads data (except images.
mxiuwang
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
[WIP] Rendering Images.
mxiuwang
[WIP] Render image previews.
mxiuwang
Add docstring, code cleanup.
mxiuwang
Undo accidental pull patch from Akim.
mxiuwang
Remove unnecessary header, add placeholder text.
mxiuwang
Emoji_Widget tests.
mxiuwang
Revert accidental change to dependencies.py and Akim's PR.
mxiuwang
Fix automatically-raised whitespace issues.
mxiuwang
Fix automatically-raised whitespace issues.
mxiuwang
Fix suggestions.
mxiuwang
Render custom emoji image preview.
mxiuwang
Fix flake8 suggestions.
mxiuwang
Description From Last Updated

F401 'django.utils.translation.ugettext' imported but unused

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E501 line too long (83 > 79 characters)

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

F403 'from .models import *' used; unable to detect undefined names

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E226 missing whitespace around arithmetic operator

reviewbotreviewbot

E226 missing whitespace around arithmetic operator

reviewbotreviewbot

E225 missing whitespace around operator

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

F841 local variable 'display_emoji' is assigned to but never used

reviewbotreviewbot

F405 'CustomEmojis' may be undefined, or defined from star imports: .models

reviewbotreviewbot

E251 unexpected spaces around keyword / parameter equals

reviewbotreviewbot

E251 unexpected spaces around keyword / parameter equals

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

F811 redefinition of unused 'ListEditWidget' from line 5

reviewbotreviewbot

F811 redefinition of unused 'forms' from line 3

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E123 closing bracket does not match indentation of opening bracket's line

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E501 line too long (80 > 79 characters)

reviewbotreviewbot

E501 line too long (90 > 79 characters)

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

Col: 36 Expected ')' and instead saw 'this'.

reviewbotreviewbot

F811 redefinition of unused 'ListEditWidget' from line 5

reviewbotreviewbot

F811 redefinition of unused 'forms' from line 3

reviewbotreviewbot

F401 'django.forms' imported but unused

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E231 missing whitespace after ':'

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E231 missing whitespace after ':'

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E231 missing whitespace after ':'

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E123 closing bracket does not match indentation of opening bracket's line

reviewbotreviewbot

E501 line too long (80 > 79 characters)

reviewbotreviewbot

E501 line too long (90 > 79 characters)

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E301 expected 1 blank line, found 0

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E501 line too long (104 > 79 characters)

reviewbotreviewbot

E501 line too long (81 > 79 characters)

reviewbotreviewbot

E501 line too long (87 > 79 characters)

reviewbotreviewbot

E501 line too long (86 > 79 characters)

reviewbotreviewbot

E501 line too long (91 > 79 characters)

reviewbotreviewbot

E501 line too long (90 > 79 characters)

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E501 line too long (97 > 79 characters)

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E302 expected 2 blank lines, found 0

reviewbotreviewbot

E231 missing whitespace after ':'

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E231 missing whitespace after ':'

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E231 missing whitespace after ':'

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E123 closing bracket does not match indentation of opening bracket's line

reviewbotreviewbot

E501 line too long (80 > 79 characters)

reviewbotreviewbot

E501 line too long (90 > 79 characters)

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

F811 redefinition of unused 'ListEditWidget' from line 4

reviewbotreviewbot

F401 'django.forms' imported but unused

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E301 expected 1 blank line, found 0

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E501 line too long (104 > 79 characters)

reviewbotreviewbot

E501 line too long (81 > 79 characters)

reviewbotreviewbot

E501 line too long (87 > 79 characters)

reviewbotreviewbot

E501 line too long (86 > 79 characters)

reviewbotreviewbot

E501 line too long (91 > 79 characters)

reviewbotreviewbot

E501 line too long (90 > 79 characters)

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E501 line too long (97 > 79 characters)

reviewbotreviewbot

F401 'django.core.files.storage.get_storage_class' imported but unused

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E722 do not use bare 'except'

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E302 expected 2 blank lines, found 0

reviewbotreviewbot

E231 missing whitespace after ':'

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E231 missing whitespace after ':'

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E231 missing whitespace after ':'

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E123 closing bracket does not match indentation of opening bracket's line

reviewbotreviewbot

E501 line too long (80 > 79 characters)

reviewbotreviewbot

E501 line too long (90 > 79 characters)

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

F811 redefinition of unused 'ListEditWidget' from line 4

reviewbotreviewbot

F401 'django.forms' imported but unused

reviewbotreviewbot

E501 line too long (87 > 79 characters)

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E501 line too long (120 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

E301 expected 1 blank line, found 0

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E501 line too long (104 > 79 characters)

reviewbotreviewbot

E501 line too long (81 > 79 characters)

reviewbotreviewbot

F841 local variable 'message' is assigned to but never used

reviewbotreviewbot

E126 continuation line over-indented for hanging indent

reviewbotreviewbot

E126 continuation line over-indented for hanging indent

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E502 the backslash is redundant between brackets

reviewbotreviewbot

E128 continuation line under-indented for visual indent

reviewbotreviewbot

E502 the backslash is redundant between brackets

reviewbotreviewbot

E131 continuation line unaligned for hanging indent

reviewbotreviewbot

E501 line too long (85 > 79 characters)

reviewbotreviewbot

E501 line too long (87 > 79 characters)

reviewbotreviewbot

E501 line too long (86 > 79 characters)

reviewbotreviewbot

E501 line too long (91 > 79 characters)

reviewbotreviewbot

E501 line too long (90 > 79 characters)

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E501 line too long (97 > 79 characters)

reviewbotreviewbot
Checks run (1 failed, 1 succeeded)
flake8 failed.
JSHint passed.

flake8

mxwang
mxwang
Review request changed

Commits:

Summary Author
-
Upload Emojis wip.
mxiuwang
-
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
-
[WIP] use forms to upload images
mxiuwang
+
Upload Emojis wip.
mxiuwang
+
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
+
[WIP] use forms to upload images
mxiuwang
+
[WIP] load() and save() functions.
mxiuwang
+
[WIP] Emoji working, trying to validate save().
mxiuwang
+
WIP save() function in emoji_settings,py
mxiuwang
+
save runs but does not fetch data from forms.
mxiuwang
+
[WIP] cannot fetch data from forms.
mxiuwang
+
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
+
ListEditDictionaryField working.
mxiuwang
+
save working except images.
mxiuwang
+
load() function loads data (except images.
mxiuwang
+
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
+
[WIP] Rendering Images.
mxiuwang
+
[WIP] Render image previews.
mxiuwang
+
Add docstring, code cleanup.
mxiuwang
+
Undo accidental pull patch from Akim.
mxiuwang

Diff:

Revision 2 (+1756 -1348)

Show changes

Checks run (2 failed)

flake8 failed.
JSHint failed.

flake8

JSHint

mxwang
mxwang
Review request changed

Commits:

Summary Author
-
Upload Emojis wip.
mxiuwang
-
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
-
[WIP] use forms to upload images
mxiuwang
-
[WIP] load() and save() functions.
mxiuwang
-
[WIP] Emoji working, trying to validate save().
mxiuwang
-
WIP save() function in emoji_settings,py
mxiuwang
-
save runs but does not fetch data from forms.
mxiuwang
-
[WIP] cannot fetch data from forms.
mxiuwang
-
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
-
ListEditDictionaryField working.
mxiuwang
-
save working except images.
mxiuwang
-
load() function loads data (except images.
mxiuwang
-
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
-
[WIP] Rendering Images.
mxiuwang
-
[WIP] Render image previews.
mxiuwang
-
Add docstring, code cleanup.
mxiuwang
-
Undo accidental pull patch from Akim.
mxiuwang
+
Upload Emojis wip.
mxiuwang
+
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
+
[WIP] use forms to upload images
mxiuwang
+
[WIP] load() and save() functions.
mxiuwang
+
[WIP] Emoji working, trying to validate save().
mxiuwang
+
WIP save() function in emoji_settings,py
mxiuwang
+
save runs but does not fetch data from forms.
mxiuwang
+
[WIP] cannot fetch data from forms.
mxiuwang
+
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
+
ListEditDictionaryField working.
mxiuwang
+
save working except images.
mxiuwang
+
load() function loads data (except images.
mxiuwang
+
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
+
[WIP] Rendering Images.
mxiuwang
+
[WIP] Render image previews.
mxiuwang
+
Add docstring, code cleanup.
mxiuwang
+
Undo accidental pull patch from Akim.
mxiuwang
+
Remove unnecessary header, add placeholder text.
mxiuwang
+
Emoji_Widget tests.
mxiuwang
+
Revert accidental change to dependencies.py and Akim's PR.
mxiuwang
+
Fix automatically-raised whitespace issues.
mxiuwang
+
Fix automatically-raised whitespace issues.
mxiuwang

Diff:

Revision 3 (+2044 -1422)

Show changes

Checks run (1 failed, 1 succeeded)

flake8 failed.
JSHint passed.

flake8

mxwang
mxwang
Review request changed

Commits:

Summary Author
-
Upload Emojis wip.
mxiuwang
-
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
-
[WIP] use forms to upload images
mxiuwang
-
[WIP] load() and save() functions.
mxiuwang
-
[WIP] Emoji working, trying to validate save().
mxiuwang
-
WIP save() function in emoji_settings,py
mxiuwang
-
save runs but does not fetch data from forms.
mxiuwang
-
[WIP] cannot fetch data from forms.
mxiuwang
-
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
-
ListEditDictionaryField working.
mxiuwang
-
save working except images.
mxiuwang
-
load() function loads data (except images.
mxiuwang
-
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
-
[WIP] Rendering Images.
mxiuwang
-
[WIP] Render image previews.
mxiuwang
-
Add docstring, code cleanup.
mxiuwang
-
Undo accidental pull patch from Akim.
mxiuwang
-
Remove unnecessary header, add placeholder text.
mxiuwang
-
Emoji_Widget tests.
mxiuwang
-
Revert accidental change to dependencies.py and Akim's PR.
mxiuwang
-
Fix automatically-raised whitespace issues.
mxiuwang
-
Fix automatically-raised whitespace issues.
mxiuwang
+
Upload Emojis wip.
mxiuwang
+
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
+
[WIP] use forms to upload images
mxiuwang
+
[WIP] load() and save() functions.
mxiuwang
+
[WIP] Emoji working, trying to validate save().
mxiuwang
+
WIP save() function in emoji_settings,py
mxiuwang
+
save runs but does not fetch data from forms.
mxiuwang
+
[WIP] cannot fetch data from forms.
mxiuwang
+
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
+
ListEditDictionaryField working.
mxiuwang
+
save working except images.
mxiuwang
+
load() function loads data (except images.
mxiuwang
+
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
+
[WIP] Rendering Images.
mxiuwang
+
[WIP] Render image previews.
mxiuwang
+
Add docstring, code cleanup.
mxiuwang
+
Undo accidental pull patch from Akim.
mxiuwang
+
Remove unnecessary header, add placeholder text.
mxiuwang
+
Emoji_Widget tests.
mxiuwang
+
Revert accidental change to dependencies.py and Akim's PR.
mxiuwang
+
Fix automatically-raised whitespace issues.
mxiuwang
+
Fix automatically-raised whitespace issues.
mxiuwang
+
Fix suggestions.
mxiuwang

Diff:

Revision 4 (+2203 -1501)

Show changes

Checks run (1 failed, 1 succeeded)

flake8 failed.
JSHint passed.

flake8

mxwang
mxwang
Review request changed

Commits:

Summary Author
-
Upload Emojis wip.
mxiuwang
-
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
-
[WIP] use forms to upload images
mxiuwang
-
[WIP] load() and save() functions.
mxiuwang
-
[WIP] Emoji working, trying to validate save().
mxiuwang
-
WIP save() function in emoji_settings,py
mxiuwang
-
save runs but does not fetch data from forms.
mxiuwang
-
[WIP] cannot fetch data from forms.
mxiuwang
-
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
-
ListEditDictionaryField working.
mxiuwang
-
save working except images.
mxiuwang
-
load() function loads data (except images.
mxiuwang
-
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
-
[WIP] Rendering Images.
mxiuwang
-
[WIP] Render image previews.
mxiuwang
-
Add docstring, code cleanup.
mxiuwang
-
Undo accidental pull patch from Akim.
mxiuwang
-
Remove unnecessary header, add placeholder text.
mxiuwang
-
Emoji_Widget tests.
mxiuwang
-
Revert accidental change to dependencies.py and Akim's PR.
mxiuwang
-
Fix automatically-raised whitespace issues.
mxiuwang
-
Fix automatically-raised whitespace issues.
mxiuwang
-
Fix suggestions.
mxiuwang
+
Upload Emojis wip.
mxiuwang
+
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
+
[WIP] use forms to upload images
mxiuwang
+
[WIP] load() and save() functions.
mxiuwang
+
[WIP] Emoji working, trying to validate save().
mxiuwang
+
WIP save() function in emoji_settings,py
mxiuwang
+
save runs but does not fetch data from forms.
mxiuwang
+
[WIP] cannot fetch data from forms.
mxiuwang
+
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
+
ListEditDictionaryField working.
mxiuwang
+
save working except images.
mxiuwang
+
load() function loads data (except images.
mxiuwang
+
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
+
[WIP] Rendering Images.
mxiuwang
+
[WIP] Render image previews.
mxiuwang
+
Add docstring, code cleanup.
mxiuwang
+
Undo accidental pull patch from Akim.
mxiuwang
+
Remove unnecessary header, add placeholder text.
mxiuwang
+
Emoji_Widget tests.
mxiuwang
+
Revert accidental change to dependencies.py and Akim's PR.
mxiuwang
+
Fix automatically-raised whitespace issues.
mxiuwang
+
Fix automatically-raised whitespace issues.
mxiuwang
+
Fix suggestions.
mxiuwang
+
Render custom emoji image preview.
mxiuwang

Diff:

Revision 5 (+2235 -1521)

Show changes

Checks run (1 failed, 1 succeeded)

flake8 failed.
JSHint passed.

flake8

mxwang
mxwang
Review request changed

Commits:

Summary Author
-
Upload Emojis wip.
mxiuwang
-
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
-
[WIP] use forms to upload images
mxiuwang
-
[WIP] load() and save() functions.
mxiuwang
-
[WIP] Emoji working, trying to validate save().
mxiuwang
-
WIP save() function in emoji_settings,py
mxiuwang
-
save runs but does not fetch data from forms.
mxiuwang
-
[WIP] cannot fetch data from forms.
mxiuwang
-
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
-
ListEditDictionaryField working.
mxiuwang
-
save working except images.
mxiuwang
-
load() function loads data (except images.
mxiuwang
-
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
-
[WIP] Rendering Images.
mxiuwang
-
[WIP] Render image previews.
mxiuwang
-
Add docstring, code cleanup.
mxiuwang
-
Undo accidental pull patch from Akim.
mxiuwang
-
Remove unnecessary header, add placeholder text.
mxiuwang
-
Emoji_Widget tests.
mxiuwang
-
Revert accidental change to dependencies.py and Akim's PR.
mxiuwang
-
Fix automatically-raised whitespace issues.
mxiuwang
-
Fix automatically-raised whitespace issues.
mxiuwang
-
Fix suggestions.
mxiuwang
-
Render custom emoji image preview.
mxiuwang
+
Upload Emojis wip.
mxiuwang
+
Upload Emojis using Models model, soon to be changed to Forms model.
mxiuwang
+
[WIP] use forms to upload images
mxiuwang
+
[WIP] load() and save() functions.
mxiuwang
+
[WIP] Emoji working, trying to validate save().
mxiuwang
+
WIP save() function in emoji_settings,py
mxiuwang
+
save runs but does not fetch data from forms.
mxiuwang
+
[WIP] cannot fetch data from forms.
mxiuwang
+
[WIP] Add ListEditDictionaryField for parsing input.
mxiuwang
+
ListEditDictionaryField working.
mxiuwang
+
save working except images.
mxiuwang
+
load() function loads data (except images.
mxiuwang
+
Images saved to DefaultStorage, not yet rendered on load().
mxiuwang
+
[WIP] Rendering Images.
mxiuwang
+
[WIP] Render image previews.
mxiuwang
+
Add docstring, code cleanup.
mxiuwang
+
Undo accidental pull patch from Akim.
mxiuwang
+
Remove unnecessary header, add placeholder text.
mxiuwang
+
Emoji_Widget tests.
mxiuwang
+
Revert accidental change to dependencies.py and Akim's PR.
mxiuwang
+
Fix automatically-raised whitespace issues.
mxiuwang
+
Fix automatically-raised whitespace issues.
mxiuwang
+
Fix suggestions.
mxiuwang
+
Render custom emoji image preview.
mxiuwang
+
Fix flake8 suggestions.
mxiuwang

Diff:

Revision 6 (+2269 -1543)

Show changes

Checks run (1 failed, 1 succeeded)

flake8 failed.
JSHint passed.

flake8

Loading...