Commit Graph

1395 Commits

Author SHA1 Message Date
Penar Musaraj
eae22548de
Footer navigation for iOS PWAs and DiscourseHub app (#7347) 2019-04-10 12:23:18 -04:00
Bianca Nenciu
b5008586c5 DEV: Remove HTML parser from Tautologistics. (#7344) 2019-04-10 11:21:22 +02:00
Tarek Khalil
131eba0366 FIX: Hide post replies content for ignored users (#7320) 2019-04-05 16:13:36 +02:00
Guo Xiang Tan
d1fa2b71cf FIX: Letters between words incorrectly highlighted within post. 2019-04-03 15:57:51 +08:00
Tarek Khalil
d26d1b387e
FEATURE: Add ignore duration selection for user notifications preferences page (#7269)
* FEATURE: Introducing new UI for tracking User's ignored or muted states
2019-03-29 13:33:08 +00:00
Guo Xiang Tan
a6d93f6317 FIX: Avoid error on ajax.abort() when client has not opened the request. 2019-03-29 15:38:38 +08:00
Joffrey JAFFEUX
8fb63b2706
FEATURE: unified popover implementation (#7244) 2019-03-26 15:43:27 +01:00
Guo Xiang Tan
e0cb2a434a Fix regression introduced in dae0bb4c67.
Add tests so it doesn't bite me again.
2019-03-26 17:52:37 +08:00
Guo Xiang Tan
dae0bb4c67 FIX: Post blurb incorrect when search contains a phrase match.
If the blurb generated is not around the search term, we will not be
able to highlight it on the client side.
2019-03-26 17:01:52 +08:00
Joe
ec2123809f FEATURE: user and group cards on mobile (#7246) 2019-03-25 13:37:17 +01:00
Osama Sayegh
67b96ad2ff FIX: discourse client should know about Logster (simpler approach) (#7237)
* Revert "FIX: discourse client should know about Logster (#7232)"

This reverts commit bfcbc4d2d6.

* FIX: discourse client should know about Logster (simpler approach)
2019-03-22 08:48:57 +11:00
Maja Komel
f3d0d8fe7d Upgrade to Ember 3.7.0 2019-03-20 14:43:25 +01:00
tshenry
cc8082138f
Fix typos 2019-03-20 00:06:12 -07:00
Vinoth Kannan
0861ca7764 FIX: Don't push browser state if navigated from root url to home page url and vice versa 2019-03-19 19:22:06 +05:30
Tim Lange
298f18cf70 UX: Enabled pinch to zoom for lightbox (#7161)
* UX: Enabled pinch to zoom for lightbox

* FIX: Prettier for lightbox.js

* FIX: Only change content of meta tag
2019-03-18 10:57:24 -04:00
David Taylor
4e8c174ee5
FEATURE: Display notification count in title for logged in users (#7184)
This replaces the 'contextual' counters for logged in users. We will still use the old method for anon users
2019-03-18 12:59:47 +00:00
Joffrey JAFFEUX
e711d3cb3a
FIX: prevents quote shortcut key to show in composer before quote (#7177) 2019-03-15 12:01:38 +01:00
Roman Rizzi
77931b70c3
Revert "DEV: Upgrade to Ember 3.7.0 (#6977)" (#7165)
This reverts commit 3eebf8be73.
2019-03-13 15:49:47 -03:00
Dan Ungureanu
91bd0becaa DEV: Allow topics to register default topic order criteria. (#7158) 2019-03-13 16:44:08 +01:00
Maja Komel
3eebf8be73
DEV: Upgrade to Ember 3.7.0 (#6977)
* Upgrade to Ember 3.7.0

* use ember source 3.7.0.2

* fix mobile header

* fix navigation
2019-03-13 12:16:06 +01:00
Dan Ungureanu
35942f7c7c
FEATURE: Special call-out for new / returning posters. (#7115) 2019-03-08 10:48:35 +02:00
Joffrey JAFFEUX
3acf8a95f3
UX: various tweaks to search-menu (#7114) 2019-03-08 09:23:44 +01:00
Tarek Khalil
b58eea1fcb
FEATURE: Hide ignored user's Original Post content (#7113)
* FEATURE: Hide ignored user's Original Post content
2019-03-06 09:20:45 +00:00
Joffrey JAFFEUX
dc4001370c
FEATURE: displays groups in menu search (#7090) 2019-03-04 10:30:09 +01:00
Joffrey JAFFEUX
075b264338
DEV: replaces DOMNodeInserted by the better MutationObserver (#6884) 2019-03-04 10:28:59 +01:00
Dan Ungureanu
fd9671f7fe
DEV: Minor code improvements. 2019-03-02 19:07:54 +02:00
Sam
03a70ef69c FIX: allow underscore and dash in username search
_ and - are technically punctuations, but we allow them in usernames so
accept them in search
2019-03-01 15:23:45 +11:00
Dan Ungureanu
6bc8382555 FEATURE: Use smooth scrolling for J/K keyboard shortcuts. (#7084) 2019-03-01 09:31:40 +11:00
Arpit Jalan
c02956e29c
FIX: when posts are moved to a message then small action post should not be publicly visible (#7085)
This fix is inspired from what we do in discourse-assigned plugin.
https://github.com/discourse/discourse-assign/blob/master/lib/topic_assigner.rb#L184
https://github.com/discourse/discourse-assign/blob/master/assets/javascripts/discourse-assign/initializers/extend-for-assigns.js.es6#L125-L133
2019-02-28 19:49:26 +05:30
Sam
06abecdb41 FEATURE: on iPad bluetooth keyboard use ALT-ENTER for post submit
Command and Control can not be properly detected via JavaScript so lean on
Alt that can be detected.
2019-02-28 16:41:31 +11:00
Sam
0b86a99c39 FEATURE: allow iPad users to specify they have a physical keyboard
Sadly there is no clean way of detecting a keyboard is connected to an iPad

If the keyboard is connected we want to disable all the touch related hacks
on iOS

This allows iPad users to specify they have a keyboard connected. Setting
is per device.
2019-02-28 15:59:44 +11:00
Joffrey JAFFEUX
d04c4bf8e7
UX: puts back share-panel as floating pane on post actions (#7066) 2019-02-26 14:15:25 +01:00
Jeff Wong
8be7878656 FEATURE: add ability to clear previously set mobile_view with mobile_view=auto 2019-02-22 10:44:49 -08:00
Guo Xiang Tan
46e62c0d22
UX: Default user facing routes to /g instead of /groups. (#7042) 2019-02-21 13:44:25 +08:00
Sam
07b856700d REFACTOR: remove disallowEmails option from user-selector
Negative option was leading to a fair amount of confusion, going forward
if we want to allow selection of emails from user selector it must be
supplied with `allowEmails=true`

This corrects a regression in 1f4ace4f which broke invite by emails and
start PM to email
2019-02-21 16:37:26 +11:00
Penar Musaraj
4955ab1689 DEV: add replaceTagRenderer to pluginApi 2019-02-20 14:52:56 -05:00
Joffrey JAFFEUX
18296b4211
FIX: more reliable native sharing (#7039) 2019-02-20 20:43:48 +01:00
Joffrey JAFFEUX
9618300d69
s/share/nativeShare (#7038) 2019-02-20 20:03:30 +01:00
Joffrey JAFFEUX
994a09e5e8
FIX: stricter window.navigator.share check (#7037) 2019-02-20 19:40:51 +01:00
Joffrey JAFFEUX
04a63cfaaa
[WIP] FEATURE: merge share and invite actions together (#7021)
This commit also:
- removes [+ New Topic] behaviour from share, this feature has been duplicated in composer actions, months ago
- introduces our new experimental spacing standard for css: eg: `s(2)`
- introduces a new panel UI for modals
2019-02-20 15:42:44 +01:00
Sam
1f4ace4f56 FEATURE: autocomplete usernames early in topic based on participation
Following this change when a user hits `@` and is replying to a topic they
will see usernames of people who were last seen and participated in the topic

This is somewhat experimental, we may tweak this, or make it optional.

Also, a regression in a423a938 where hitting TAB would eat a post you were writing:

Eg this would eat a post:

``` text
@hello, testing 123 <tab>
```
2019-02-20 13:34:43 +11:00
Jeff Wong
246997dbd9 FIX: an <a> with a target of _blank wants a new window 2019-02-19 14:44:30 -08:00
Dan Ungureanu
a423a9383f FIX: Stop autocomplete for invalid usernames. (#7005) 2019-02-15 11:29:26 +11:00
Penar Musaraj
090e9c8432
FIX: make composer full screen shortcut work when inputs have focus (#6907)
- Uses a Mousetrap plugin for global shortcuts
- Implemented for search `ctrl+alt+f` and composer fullscreen `shift+f11` shortcuts
2019-02-14 00:19:27 -05:00
Penar Musaraj
c50db76f5d FIX: do not treat TIFF, BMP, WEBP as images
Treating TIFF and BMP as images cause us to add them to IMG tags, this is very inconsistent across browsers.

You can still upload these files they will simply not be displayed in IMG tags.
2019-02-11 16:28:43 +11:00
Joffrey JAFFEUX
6c195640b9
FEATURE: adds an API to register topic footer buttons 2019-02-07 14:43:33 +01:00
Dan Ungureanu
fc4c015bee FEATURE: Shortcut 'g s' goes to first suggested topic 2019-02-07 08:43:07 +11:00
Dan Ungureanu
2c222e16fe FEATURE: Returning falsy value from upload handler stops upload. (#6969) 2019-02-05 10:54:11 +01:00
Joffrey JAFFEUX
0d0303e7ea
FIX: more resilient lookup in plugin-api (#6961)
Ember3 is more picky about having a container being destroyed and it's easier to cause exceptions, especially in tests.

This fix has been initially created for an exception occuring in tests when running discourse-code-review and discourse-polls tests at the same time. `getCurrentUser` method body was failing as the container was destroyed.

Original  stacktrace:

```
"Error: Assertion Failed: expected container not to be destroyed
    at new EmberError (ember:2929:31)
    at assert (ember:1793:23)
    at Container.lookup (ember:17736:64)
    at PluginApi.getCurrentUser (discourse/lib/plugin-api:56:31)
    at allowUser (javascripts/discourse/initializers/init-code-review:38:29)
    at eval (javascripts/discourse/initializers/init-code-review:78:11)
    at eval (select-kit/mixins/plugin-api:86:19)
    at Array.forEach (<anonymous>)
    at eval (select-kit/mixins/plugin-api:85:44)
    at Array.forEach (<anonymous>)"
```
2019-01-29 16:54:04 +01:00
Vinoth Kannan
62a0f88e97 FIX: More link in topic page search shouldn't navigate to full page result 2019-01-29 02:26:55 +05:30
Vinoth Kannan
7e4edcfae8 FIX: Convert lightbox html into proper image markdown 2019-01-27 01:21:56 +05:30
Joffrey JAFFEUX
0e1862013a
FIX: prevents race condition where the same report is loaded multiple times (#6953) 2019-01-25 19:29:45 +01:00
Robin Ward
a518950e52 FIX: Use context sensitive "create topic" via keyboard if possible 2019-01-24 13:20:33 -05:00
Daniel
48c9234545 FIX: Lazy Loading: copy only present srcset
When showing a lazy-loaded image, copy the `srcset` property only when
it is actually set. `copyImg.srcset = copyImg.srcset` is not actually a
noop but creates an empty `srcset`, changing content security rules on
the image.
2019-01-23 14:04:43 -05:00
Joffrey JAFFEUX
d0129b85f4
FIX: stop propagating keyboard event when replying to topic/post (#6930) 2019-01-23 14:38:20 +01:00
Penar Musaraj
9886934ef5 DEV: fix some deprecated SVG icon refs 2019-01-22 14:42:00 -05:00
Joffrey JAFFEUX
80d42b4ea2
icons deprecations fixes (#6920) 2019-01-22 12:02:02 +01:00
Joffrey JAFFEUX
502b1316d0
DEV: s/this._super()/this._super(...arguments) (#6908) 2019-01-19 10:05:51 +01:00
Penar Musaraj
3501533a2b DEV: unpin Prettier version, apply to YAML files
We had Prettier pinned because of https://github.com/prettier/prettier/issues/5529. Since that bug is fixed, unpinning.

Prettier now supports YAML, so this applies Prettier to all .yml except for translations, which should not be edited directly anyway.
2019-01-17 13:05:39 -05:00
David Taylor
b69e57e2f3 FIX: Prevent layout changes while images are lazy-loading
This commit moves the temporary image to be adjacent to the original image in the DOM. Previously the temporary image was appended to the parent element. Normally this makes no difference because the temporary element has position:absolute. However, if the `:last-child` selector is being used on the parent, it can cause layout changes during loading.
2019-01-15 17:35:55 +00:00
Arpit Jalan
a121d40771
FIX: do not show PM topics when moving posts to an existing public topic (#6876) 2019-01-14 15:00:45 +05:30
Joffrey JAFFEUX
1a3655b787
DEV: s/Em/Ember (#6874) 2019-01-11 17:54:23 +01:00
Joffrey JAFFEUX
f9648de897
DEV: upgrades from Ember 2.13 to Ember 3.5.1 (#6808)
Co-Authored-By: Bianca Nenciu <nbianca@users.noreply.github.com>
Co-Authored-By: David Taylor <david@taylorhq.com>
2019-01-10 11:06:01 +01:00
Angus McLeod
798e98a7cc remove safari check from isAppleDevice (#6869) 2019-01-10 13:02:55 +11:00
Robin Ward
312e282b6a FIX: Apply classes when lazily loading images
If an image had extra classes (for example oneboxes), then while loading
the copy of the image would lose those classes and look differently
until the image had loaded fully.

This fix copies the classes while loading.
2019-01-09 12:56:25 -05:00
Jeff Wong
439eff4709 revert null checking around interceptClick 2019-01-09 09:44:30 -08:00
Vinoth Kannan
b7c501bf52 FIX: full page search results are unclickable
data-ember-action can have empty value in favor of data-ember-action-ID attribute
2019-01-09 10:59:37 +05:30
Jeff Wong
09cbd08c64 FIX: ensure ember transitions do not get hijacked by discourse intercept-click
explicit null checks as a blank string evaluates to false
2019-01-08 15:38:13 -08:00
Jeff Wong
d75262046d Revert "FIX: ensure ember transitions do not get hijacked by discourse intercept-click"
This reverts commit a2cb2f2366.
2019-01-08 15:37:10 -08:00
Jeff Wong
a2cb2f2366 FIX: ensure ember transitions do not get hijacked by discourse intercept-click
explicit null checks as a blank string evaluates to false
2019-01-08 15:09:50 -08:00
Sam
d0f38dbb07 FIX: image rendered temporarily in wrong position while loading
Previously non lightboxed images would render in the wrong spot while loading.

We assumed the image we were rendering while loading was at 0,0 position.
This is not the case on non-lightboxed images cause they have no surrounding
DIV.
2019-01-04 11:50:44 +11:00
Penar Musaraj
a953b71797 FEATURE: allow custom HighlightJS languages
Adds pluginApi function that allows themes and plugins to register languages for HighlightJS.
2019-01-02 19:07:36 -05:00
Penar Musaraj
4f6ca66df5 FIX: routeToTag mini-fix for IE11
skip "a.host" for IE11 since IE11 does not support URL interface
2018-12-28 11:49:51 -05:00
Joffrey JAFFEUX
695894d458 FIX: delete dataset doesn’t work on safari 2018-12-27 06:49:49 +02:00
Arpit Jalan
1e2b81991f fix the build 2018-12-25 10:27:51 +05:30
Jeff Atwood
a74e49c87c use proper typographical × instead of x 2018-12-24 20:33:17 -08:00
Robin Ward
0e710dc573 Improvements to Lazy Loading
- Now applied to all images over 150x150px

- Stores the width and height in the WeakMap rather than using
percentages for accuracy

- When oneboxed images are hidden, they are given a subtle border for better
visibility.

- Don't apply when in the composer. Causes flickering.
2018-12-21 11:31:27 -05:00
Robin Ward
a2ae67509d Don't use getAttribute if we don't need to 2018-12-20 16:41:04 -05:00
Sam Saffron
400eea4d13 UX: show lazy loaded images while they are downloading
Also shows fuzzy image right away prior to it being downloaded
2018-12-20 22:04:30 +08:00
Penar Musaraj
f5c4ab0573 Add category link renderer to plugin API (#6787)
* Add category link renderer to plugin API

- lets themes/plugins override the category link display

- planning to use this in a "category icons" theme component

* small code review fix

* Code review refactor
2018-12-19 10:26:09 +01:00
Robin Ward
662cfc416b FEATURE: Show a blurry preview when lazy loading images
This generates a 10x10 PNG thumbnail for each lightboxed image.
If Image Lazy Loading is enabled (IntersectionObserver API) then
we'll load the low res version when offscreen. As the image scrolls
in we'll swap it for the high res version.

We use a WeakMap to track the old image attributes. It's much less
memory than storing them as `data-*` attributes and swapping them
back and forth all the time.
2018-12-19 01:57:30 +08:00
Robin Ward
6797a710aa FEATURE: Lazily Load Images as they scroll into the viewport.
This feature uses the Intersection Observer API

https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API

It should be compatible with all modern browsers. Non-Edge IE is *NOT*
supported, so in that particular browser images are loaded by default.
2018-12-12 10:12:49 +11:00
Penar Musaraj
923692d45a FIX: tooltip regression in admin dashboard
- adds registerHoverTooltip in tooltip qunit test
2018-12-03 11:15:31 -05:00
Dan Ungureanu
d657ce844b DEV: Call onClose for closing modals. 2018-11-27 13:05:27 +11:00
Penar Musaraj
03deda2147
Upgrade to FontAwesome 5 (take two) (#6673)
* Add missing icons to set

* Revert FA5 revert

 This reverts commit 42572ff

* use new SVG syntax in locales

* Noscript page changes (remove login button, center "powered by" footer text)

* Cast wider net for SVG icons in settings

- include any _icon setting for SVG registry (offers better support for plugin settings)

- let themes store multiple pipe-delimited icons in a setting

- also replaces broken onebox image icon with SVG reference in cooked post processor

* interpolate icons in locales

* Fix composer whisper icon alignment

* Add support for stacked icons

* SECURITY: enforce hostname to match discourse hostname

This ensures that the hostname rails uses for various helpers always matches
the Discourse hostname

* load SVG sprite with pre-initializers

* FIX: enable caching on SVG sprites

* PERF: use JSONP for SVG sprites so they are served from CDN

This avoids needing to deal with CORS for loading of the SVG

Note, added the svg- prefix to the filename so we can quickly tell in
dev tools what the file is

* Add missing SVG sprite JSONP script to CSP

* Upgrade to FA 5.5.0

* Add support for all FA4.7 icons

- adds complete frontend and backend for renamed FA4.7 icons

- improves performance of SvgSprite.bundle and SvgSprite.all_icons

* Fix group avatar flair preview

- adds an endpoint at /svg-sprites/search/:keyword

- adds frontend ajax call that pulls icon in avatar flair preview even when it is not in subset

* Remove FA 4.7 font files
2018-11-26 16:49:57 -05:00
Joffrey JAFFEUX
3453707784
FEATURE: allows html tooltips (#6665) 2018-11-26 11:15:23 +01:00
Joffrey JAFFEUX
9672c92045
DEV: removes _.each from codebase (#6629) 2018-11-20 14:46:58 +01:00
Joffrey JAFFEUX
30e0d744db DEV: removes _.delay from codebase (#6619) 2018-11-19 10:47:00 +01:00
Joffrey JAFFEUX
907cf3ee2f DEV: replaces setTimeout by Ember.run.later (#6618) 2018-11-19 10:46:38 +01:00
Régis Hanol
0f5aeab003 DEV: enable no-alert & no-console eslint rules 2018-11-14 23:17:56 +01:00
Guo Xiang Tan
44391ee8ab
FEATURE: Upload Site Settings. (#6573) 2018-11-14 15:03:02 +08:00
Robin Ward
467be59d75 FEATURE: Allow expanded posts to return user custom fields 2018-11-13 12:44:54 -05:00
Sam
42572ff138 Revert font awesome 5 changes
We are still pushing ahead on this 100% just need a bit longer to prepare
all plugins
2018-11-08 16:12:18 +11:00
Penar Musaraj
005e1ecb9b
FEATURE: Update Font Awesome to v5.4.1 and SVGs (#6557)
* First take on subsetting svg icons

* FontAwesome 5 svg subset WIP

* Include icons from plugins/badges into svg sprite subset

* add svg icon support to themes

* Add spec for SvgSprite

* Misc. SVG icon fixes

* Use FA5 svgs in local-dates plugin

* CSS adjustments, fix SVG icons in group flair

* Use SVG icons in poll plugin

* Add SVG icons to /wizard
2018-11-07 13:05:43 -05:00
Joffrey JAFFEUX
11ee07093c FEATURE: revamps search-menu layout (#6543) 2018-10-30 10:44:49 -04:00
Bianca Nenciu
2a77550f8c FIX: Do not track right clicks. (#6530) 2018-10-25 09:46:04 +00:00
Bianca Nenciu
22ada32d4d FIX: Strip @ when searching for users and groups. (#6506) 2018-10-19 11:56:10 +11:00
Vinoth Kannan
08c404e138 FIX: Do not set null value to remove cookie 2018-10-16 06:12:32 +05:30
Joe
2acb885c72 FEATURE: fullscreen composer mode on desktop
Adds keyboard shortcut and icon that allows expanding composer to full screen.
2018-10-15 13:59:49 +11:00
Maja Komel
57b52cd1de FIX: keep emoji syntax for custom emojis in quotes (#6488) 2018-10-15 10:57:15 +08:00