Custom Admin Emoji Panel (Djblets)

Review Request #11878 — Created Nov. 20, 2021 and updated

Information

Djblets
release-2.x

Reviewers

Adds a ListEditEmojiDictionaryField (inherited from Michelle Aubin's
ListEditDictionaryField class), which takes in a dictionary of values and
splits it into a tuple of (key, value1, value2, value3).

EmojiFileInput class is a subclass of FileInput, which takes in a file
upload from the user, and saves it into the context variable. In future
implementations, the get_context() method can also be used to render image
previews if the file uploaded is a valid image file.

Unit testing: Unit test suites for ListEditDictionaryField and ListEditField
Local testing: making sure the app runs property with print() statements.

Summary ID Author
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang
Fix suggestions.
fb858a1db8f16a916ea1351af00163b280ced4f4 mxiuwang
Render emoji preview image.
b0afa975bf77e71b0c3527ca4637bea1491f112a mxiuwang
Fix flake8 suggestions.
0930dd98450d3286095571053949b2be0a424357 mxiuwang
Description From Last Updated

Description needs to wrap with 80 chars I believe

akim.ruslanovakim.ruslanov

In testing done, mention what kind of new test was added

akim.ruslanovakim.ruslanov

The review request description and summary should also reflect what this commit does, not the work being done in Review …

chipx86chipx86

E231 missing whitespace after ','

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E501 line too long (93 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

Col: 87 Missing semicolon.

reviewbotreviewbot

Col: 62 Missing semicolon.

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W293 blank line contains whitespace

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E501 line too long (95 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E501 line too long (123 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

Col: 87 Missing semicolon.

reviewbotreviewbot

Col: 62 Missing semicolon.

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E501 line too long (95 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E501 line too long (123 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E131 continuation line unaligned for hanging indent

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

This belongs with the Review Board change, since it's really specific to Review Board's implementation. Djblets should be limited to …

chipx86chipx86

Col: 87 Missing semicolon.

reviewbotreviewbot

Col: 62 Missing semicolon.

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E501 line too long (95 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E501 line too long (123 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E131 continuation line unaligned for hanging indent

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

Col: 87 Missing semicolon.

reviewbotreviewbot

Col: 62 Missing semicolon.

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E501 line too long (95 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E501 line too long (123 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E131 continuation line unaligned for hanging indent

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E501 line too long (95 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E501 line too long (123 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E131 continuation line unaligned for hanging indent

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W291 trailing whitespace

reviewbotreviewbot

E302 expected 2 blank lines, found 1

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

W292 no newline at end of file

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E261 at least two spaces before inline comment

reviewbotreviewbot

E501 line too long (95 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E501 line too long (123 > 79 characters)

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E131 continuation line unaligned for hanging indent

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

Col: 87 Missing semicolon.

reviewbotreviewbot

Col: 62 Missing semicolon.

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E502 the backslash is redundant between brackets

reviewbotreviewbot

E203 whitespace before ','

reviewbotreviewbot

E502 the backslash is redundant between brackets

reviewbotreviewbot

E127 continuation line over-indented for visual indent

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

E131 continuation line unaligned for hanging indent

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

E126 continuation line over-indented for hanging indent

reviewbotreviewbot

E231 missing whitespace after ','

reviewbotreviewbot

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

reviewbotreviewbot

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

reviewbotreviewbot

F401 'django.utils.html.format_html_join' imported but unused

reviewbotreviewbot

F401 'django.utils.html.format_html' imported but unused

reviewbotreviewbot

Col: 87 Missing semicolon.

reviewbotreviewbot

Col: 62 Missing semicolon.

reviewbotreviewbot
Checks run (2 failed)
flake8 failed.
JSHint failed.

flake8

JSHint

mxwang
mxwang
Review request changed
Summary:
ListEditDictionaryField Patch from Michelle Aubin.
Custom Admin Emoji Panel (Djblets)
Description:
~  

[WIP] ListEditDictionaryField Patch from Michelle Aubin.

  ~

Adds a page to the admint 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:

  + * Enforcing mandatory fields that user must fill out before clicking "Save", so as to not raise an error.
  + * Adding labels to the form fields, and removing the extra "name" field at the very top of the form.
  + * Rendering a preview of the emoji when loading the page (through get_context() in EmojiFileUpload).

Testing Done:
  +

Unit testing

  + Local testing

Commits:
Summary ID Author
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang

Checks run (2 failed)

flake8 failed.
JSHint failed.

flake8

JSHint

akim.ruslanov
  1. 
      
  2. Show all issues

    Description needs to wrap with 80 chars I believe

  3. Show all issues

    In testing done, mention what kind of new test was added

  4. 
      
mxwang
Review request changed
Description:
~  

Adds a page to the admint 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.

  ~

Adds a page to the admint 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:

~   * Enforcing mandatory fields that user must fill out before clicking "Save", so as to not raise an error.
~   * Adding labels to the form fields, and removing the extra "name" field at the very top of the form.
~   * Rendering a preview of the emoji when loading the page (through get_context() in EmojiFileUpload).

  ~ * Adding labels to the form fields, and removing the extra "name" field at the
  ~ very top of the form.
  ~ * Rendering a preview of the emoji when loading the page (through get_context()
  + in EmojiFileUpload).

Commits:
Summary ID Author
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang

Checks run (2 failed)

flake8 failed.
JSHint failed.

flake8

JSHint

mxwang
mxwang
chipx86
  1. This change incorporates a lot of things from Michelle Aubin's change. It makes it hard to know what parts should land from her change and what should land from yours. Can you instead rebase your work on top of hers, only post the range of commits for your work, and mark her review request as a dependency (Depends On field)?

  2. djblets/forms/widgets.py (Diff revision 3)
     
     
    Show all issues

    This belongs with the Review Board change, since it's really specific to Review Board's implementation. Djblets should be limited to things that are more generic and reusable.

  3. 
      
chipx86
  1. 
      
  2. Show all issues

    The review request description and summary should also reflect what this commit does, not the work being done in Review Board. From the point of view of the Djblets code, Review Board "doesn't exist." That's the way to think about it. There's a separation.

  3. 
      
mxwang
Review request changed
Description:
~  

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,
  ~

Adds a ListEditEmojiDictionaryField (inherited from Michelle Aubin's

  ~ ListEditDictionaryField class), which takes in a dictionary of values and
  ~ splits it into a tuple of (key, value1, value2, value3).

-   and saved into SiteConfiguration, while the image data is loaded from and
-   saved to DefaultStorage.

   
~  

  ~

EmojiFileInput class is a subclass of ClearableFileInput, which takes in a

  + file upload from the user, and saves it into the context variable. In future
  + implementations, the get_context() method can also be used to render image
  + previews if the file uploaded is a valid image file.

   
   

   
   

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.
    * Rendering a preview of the emoji when loading the page (through get_context()
~   in EmojiFileUpload).

  ~ in EmojiFileUpload). Right now, the uploaded image file is being passed as a
  + bytestream, but it needs to be passed as a file or image object in order
  + to be rendered.

Commits:
Summary ID Author
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang

Checks run (2 failed)

flake8 failed.
JSHint failed.

flake8

JSHint

mxwang
Review request changed
Commits:
Summary ID Author
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang

Checks run (1 failed, 1 succeeded)

flake8 failed.
JSHint passed.

flake8

mxwang
Review request changed
Commits:
Summary ID Author
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang
Fix suggestions.
fb858a1db8f16a916ea1351af00163b280ced4f4 mxiuwang

Checks run (1 failed, 1 succeeded)

flake8 failed.
JSHint passed.

flake8

mxwang
mxwang
Review request changed
Commits:
Summary ID Author
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang
Fix suggestions.
fb858a1db8f16a916ea1351af00163b280ced4f4 mxiuwang
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang
Fix suggestions.
fb858a1db8f16a916ea1351af00163b280ced4f4 mxiuwang
Render emoji preview image.
b0afa975bf77e71b0c3527ca4637bea1491f112a mxiuwang

Checks run (2 failed)

flake8 failed.
JSHint failed.

flake8

JSHint

mxwang
mxwang
Review request changed
Commits:
Summary ID Author
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang
Fix suggestions.
fb858a1db8f16a916ea1351af00163b280ced4f4 mxiuwang
Render emoji preview image.
b0afa975bf77e71b0c3527ca4637bea1491f112a mxiuwang
ListEditDictionaryField Patch from Michelle Aubin.
2feb2a1b838640fd4496e505f7877ea5ebafbf72 mxiuwang
[WIP] Adding custom emojis in admin emoji dashboard.
1f16add484e311fa95e175dc2310b48efaab08ba mxiuwang
[WIP] rendering images.
7cc3931eab59f1db877bba4fe4b27d34bf7fa562 mxiuwang
[WIP] Render images.
ad573006dac8d287f15765c2807432943beb0c94 mxiuwang
Add docstring, code cleanup.
551239428bb72dbfa77d8921948c04ab12c184c2 mxiuwang
Add Djblets tests.
89a570f427670d8ae3bb95aa04466fa3f95bbf8e mxiuwang
Fix automatically-raised whitespace issues.
96f4639e280373651b32fb61f8e9c54ebcdbf955 mxiuwang
Define ListEditEmojiDictionaryField as its own class.
8c4bd95ad19b9f9e923fec0b5b9ddedd738d74f8 mxiuwang
Fix suggestions.
fb858a1db8f16a916ea1351af00163b280ced4f4 mxiuwang
Render emoji preview image.
b0afa975bf77e71b0c3527ca4637bea1491f112a mxiuwang
Fix flake8 suggestions.
0930dd98450d3286095571053949b2be0a424357 mxiuwang

Checks run (2 failed)

flake8 failed.
JSHint failed.

flake8

JSHint