forked from AkkomaGang/akkoma-fe
Merge branch 'fix/popovers-cutting-off-in-notifications' into 'develop'
Fix popovers cutting off in notifications #809 Closes #809 See merge request pleroma/pleroma-fe!1147
This commit is contained in:
commit
ebf4321e64
4 changed files with 12 additions and 2 deletions
|
@ -31,6 +31,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
||||||
- Clicking on non-latin hashtags won't open a new window
|
- Clicking on non-latin hashtags won't open a new window
|
||||||
- Uploading and drag-dropping multiple files works correctly now.
|
- Uploading and drag-dropping multiple files works correctly now.
|
||||||
- Subject field now appears disabled when posting
|
- Subject field now appears disabled when posting
|
||||||
|
- Fix status ellipsis menu being cut off in notifications column
|
||||||
|
|
||||||
## [2.0.3] - 2020-05-02
|
## [2.0.3] - 2020-05-02
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
<Popover
|
<Popover
|
||||||
trigger="click"
|
trigger="click"
|
||||||
placement="bottom"
|
placement="bottom"
|
||||||
|
:bound-to="{ x: 'container' }"
|
||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
slot="content"
|
slot="content"
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
trigger="click"
|
trigger="click"
|
||||||
placement="top"
|
placement="top"
|
||||||
class="extra-button-popover"
|
class="extra-button-popover"
|
||||||
|
:bound-to="{ x: 'container' }"
|
||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
slot="content"
|
slot="content"
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
const Popover = {
|
const Popover = {
|
||||||
name: 'Popover',
|
name: 'Popover',
|
||||||
props: {
|
props: {
|
||||||
|
@ -10,6 +9,9 @@ const Popover = {
|
||||||
// 'container' for using offsetParent as boundaries for either axis
|
// 'container' for using offsetParent as boundaries for either axis
|
||||||
// or 'viewport'
|
// or 'viewport'
|
||||||
boundTo: Object,
|
boundTo: Object,
|
||||||
|
// Takes a selector to use as a replacement for the parent container
|
||||||
|
// for getting boundaries for x an y axis
|
||||||
|
boundToSelector: String,
|
||||||
// Takes a top/bottom/left/right object, how much space to leave
|
// Takes a top/bottom/left/right object, how much space to leave
|
||||||
// between boundary and popover element
|
// between boundary and popover element
|
||||||
margin: Object,
|
margin: Object,
|
||||||
|
@ -27,6 +29,10 @@ const Popover = {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
containerBoundingClientRect () {
|
||||||
|
const container = this.boundToSelector ? this.$el.closest(this.boundToSelector) : this.$el.offsetParent
|
||||||
|
return container.getBoundingClientRect()
|
||||||
|
},
|
||||||
updateStyles () {
|
updateStyles () {
|
||||||
if (this.hidden) {
|
if (this.hidden) {
|
||||||
this.styles = {
|
this.styles = {
|
||||||
|
@ -45,7 +51,8 @@ const Popover = {
|
||||||
// Minor optimization, don't call a slow reflow call if we don't have to
|
// Minor optimization, don't call a slow reflow call if we don't have to
|
||||||
const parentBounds = this.boundTo &&
|
const parentBounds = this.boundTo &&
|
||||||
(this.boundTo.x === 'container' || this.boundTo.y === 'container') &&
|
(this.boundTo.x === 'container' || this.boundTo.y === 'container') &&
|
||||||
this.$el.offsetParent.getBoundingClientRect()
|
this.containerBoundingClientRect()
|
||||||
|
|
||||||
const margin = this.margin || {}
|
const margin = this.margin || {}
|
||||||
|
|
||||||
// What are the screen bounds for the popover? Viewport vs container
|
// What are the screen bounds for the popover? Viewport vs container
|
||||||
|
|
Loading…
Reference in a new issue