fix #LINQT-1887 add scrollbars in meeting details for small screens
This commit is contained in:
parent
5e09348c3d
commit
4203a9c9c0
3 changed files with 51 additions and 35 deletions
|
|
@ -16,6 +16,7 @@ FocusScope{
|
||||||
property ConferenceInfoGui conferenceInfoGui
|
property ConferenceInfoGui conferenceInfoGui
|
||||||
property color searchBarColor: DefaultStyle.grey_100
|
property color searchBarColor: DefaultStyle.grey_100
|
||||||
property color searchBarBorderColor: "transparent"
|
property color searchBarBorderColor: "transparent"
|
||||||
|
property int participantscSrollBarRightMargin: Math.round(8 * DefaultStyle.dp)
|
||||||
|
|
||||||
function clearSelectedParticipants() {
|
function clearSelectedParticipants() {
|
||||||
// TODO
|
// TODO
|
||||||
|
|
@ -131,7 +132,8 @@ FocusScope{
|
||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
anchors.bottom: parent.bottom
|
anchors.bottom: parent.bottom
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
anchors.rightMargin: Math.round(8 * DefaultStyle.dp)
|
anchors.rightMargin: mainItem.participantscSrollBarRightMargin
|
||||||
|
visible: participantList.height < participantList.contentHeight
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
SearchBar {
|
SearchBar {
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,9 @@ FocusScope {
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
id: formLayout
|
id: formLayout
|
||||||
spacing: Math.round(16 * DefaultStyle.dp)
|
spacing: Math.round(16 * DefaultStyle.dp)
|
||||||
anchors.fill: parent
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.top: parent.top
|
||||||
|
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
endHour.selectedDateTime = mainItem.conferenceInfoGui.core.endDateTime
|
endHour.selectedDateTime = mainItem.conferenceInfoGui.core.endDateTime
|
||||||
|
|
|
||||||
|
|
@ -132,7 +132,7 @@ AbstractMainPage {
|
||||||
anchors.bottomMargin: Math.round(30 * DefaultStyle.dp)
|
anchors.bottomMargin: Math.round(30 * DefaultStyle.dp)
|
||||||
height: parent.height - anchors.topMargin
|
height: parent.height - anchors.topMargin
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
contentHeight: overridenRightPanelStackView.currentItem.childrenRect.height
|
contentHeight: overridenRightPanelStackView.currentItem ? overridenRightPanelStackView.currentItem.childrenRect.height : 0
|
||||||
contentWidth: width
|
contentWidth: width
|
||||||
clip: true
|
clip: true
|
||||||
Control.ScrollBar.vertical: ScrollBar {
|
Control.ScrollBar.vertical: ScrollBar {
|
||||||
|
|
@ -141,12 +141,16 @@ AbstractMainPage {
|
||||||
anchors.bottom: parent.bottom
|
anchors.bottom: parent.bottom
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
}
|
}
|
||||||
Control.StackView {
|
contentChildren: ColumnLayout {
|
||||||
id: overridenRightPanelStackView
|
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
anchors.rightMargin: Math.round(10 * DefaultStyle.dp)
|
anchors.rightMargin: Math.round(10 * DefaultStyle.dp)
|
||||||
height: currentItem ? currentItem.height : 0
|
|
||||||
width: Math.round(393 * DefaultStyle.dp)
|
width: Math.round(393 * DefaultStyle.dp)
|
||||||
|
Control.StackView {
|
||||||
|
id: overridenRightPanelStackView
|
||||||
|
Layout.fillWidth: true
|
||||||
|
Layout.fillHeight: true
|
||||||
|
height: currentItem ? currentItem.height : 0
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -384,12 +388,12 @@ AbstractMainPage {
|
||||||
property bool isCreation
|
property bool isCreation
|
||||||
property ConferenceInfoGui conferenceInfoGui
|
property ConferenceInfoGui conferenceInfoGui
|
||||||
width: overridenRightPanelStackView.width
|
width: overridenRightPanelStackView.width
|
||||||
height: editLayout.height
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
id: editLayout
|
id: editLayout
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
|
height: childrenRect.height
|
||||||
spacing: 0
|
spacing: 0
|
||||||
Section {
|
Section {
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
|
|
@ -468,7 +472,7 @@ AbstractMainPage {
|
||||||
isCreation: editFocusScope.isCreation
|
isCreation: editFocusScope.isCreation
|
||||||
conferenceInfoGui: editFocusScope.conferenceInfoGui
|
conferenceInfoGui: editFocusScope.conferenceInfoGui
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
Layout.fillHeight: true
|
Layout.preferredHeight: childrenRect.height
|
||||||
|
|
||||||
onAddParticipantsRequested: {
|
onAddParticipantsRequested: {
|
||||||
overridenRightPanelStackView.push(addParticipants, {"conferenceInfoGui": conferenceInfoGui, "container": overridenRightPanelStackView})
|
overridenRightPanelStackView.push(addParticipants, {"conferenceInfoGui": conferenceInfoGui, "container": overridenRightPanelStackView})
|
||||||
|
|
@ -515,47 +519,54 @@ AbstractMainPage {
|
||||||
|
|
||||||
Component {
|
Component {
|
||||||
id: addParticipants
|
id: addParticipants
|
||||||
ColumnLayout {
|
FocusScope{
|
||||||
|
id: addParticipantInItem
|
||||||
property Control.StackView container
|
property Control.StackView container
|
||||||
property ConferenceInfoGui conferenceInfoGui
|
property ConferenceInfoGui conferenceInfoGui
|
||||||
spacing: Math.round(18 * DefaultStyle.dp)
|
width: overridenRightPanelStackView.width
|
||||||
FocusScope{
|
ColumnLayout {
|
||||||
Layout.fillWidth: true
|
id: addParticipantsLayout
|
||||||
Layout.preferredHeight: childrenRect.height
|
spacing: Math.round(18 * DefaultStyle.dp)
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.top: parent.top
|
||||||
|
anchors.bottom: parent.bottom
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: Math.round(4 * DefaultStyle.dp)
|
id: title
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
|
Layout.preferredHeight: childrenRect.height
|
||||||
|
spacing: Math.round(4 * DefaultStyle.dp)
|
||||||
RowLayout {
|
RowLayout {
|
||||||
id: addParticipantsButtons
|
id: addParticipantsButtons
|
||||||
spacing: Math.round(10 * DefaultStyle.dp)
|
spacing: Math.round(10 * DefaultStyle.dp)
|
||||||
Button {
|
Button {
|
||||||
id: addParticipantsBackButton
|
id: addParticipantsBackButton
|
||||||
style: ButtonStyle.noBackgroundOrange
|
style: ButtonStyle.noBackgroundOrange
|
||||||
icon.source: AppIcons.leftArrow
|
icon.source: AppIcons.leftArrow
|
||||||
icon.width: Math.round(24 * DefaultStyle.dp)
|
icon.width: Math.round(24 * DefaultStyle.dp)
|
||||||
icon.height: Math.round(24 * DefaultStyle.dp)
|
icon.height: Math.round(24 * DefaultStyle.dp)
|
||||||
KeyNavigation.right: addButton
|
KeyNavigation.right: addButton
|
||||||
KeyNavigation.down: addParticipantLayout
|
KeyNavigation.down: addParticipantLayout
|
||||||
onClicked: container.pop()
|
onClicked: container.pop()
|
||||||
}
|
}
|
||||||
Text {
|
Text {
|
||||||
//: "Ajouter des participants"
|
//: "Ajouter des participants"
|
||||||
text: qsTr("meeting_schedule_add_participants_title")
|
text: qsTr("meeting_schedule_add_participants_title")
|
||||||
color: DefaultStyle.main1_500_main
|
color: DefaultStyle.main1_500_main
|
||||||
maximumLineCount: 1
|
maximumLineCount: 1
|
||||||
font {
|
font {
|
||||||
pixelSize: Math.round(18 * DefaultStyle.dp)
|
pixelSize: Math.round(18 * DefaultStyle.dp)
|
||||||
weight: Typography.h4.weight
|
weight: Typography.h4.weight
|
||||||
}
|
}
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
}
|
}
|
||||||
SmallButton {
|
SmallButton {
|
||||||
id: addButton
|
id: addButton
|
||||||
enabled: addParticipantLayout.selectedParticipantsCount.length != 0
|
enabled: addParticipantLayout.selectedParticipantsCount.length != 0
|
||||||
Layout.leftMargin: Math.round(11 * DefaultStyle.dp)
|
Layout.leftMargin: Math.round(11 * DefaultStyle.dp)
|
||||||
focus: enabled
|
focus: enabled
|
||||||
style: ButtonStyle.main
|
style: ButtonStyle.main
|
||||||
text: qsTr("meeting_schedule_add_participants_apply")
|
text: qsTr("meeting_schedule_add_participants_apply")
|
||||||
KeyNavigation.left: addParticipantsBackButton
|
KeyNavigation.left: addParticipantsBackButton
|
||||||
KeyNavigation.down: addParticipantLayout
|
KeyNavigation.down: addParticipantLayout
|
||||||
onClicked: {
|
onClicked: {
|
||||||
|
|
@ -564,24 +575,26 @@ AbstractMainPage {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Text {
|
Text {
|
||||||
//: "%n participant(s) sélectionné(s)"
|
//: "%n participant(s) sélectionné(s)"
|
||||||
text: qsTr("group_call_participant_selected", '', addParticipantLayout.selectedParticipantsCount).arg(addParticipantLayout.selectedParticipantsCount)
|
text: qsTr("group_call_participant_selected", '', addParticipantLayout.selectedParticipantsCount).arg(addParticipantLayout.selectedParticipantsCount)
|
||||||
color: DefaultStyle.main2_500main
|
color: DefaultStyle.main2_500main
|
||||||
Layout.leftMargin: addParticipantsBackButton.width + addParticipantsButtons.spacing
|
Layout.leftMargin: addParticipantsBackButton.width + addParticipantsButtons.spacing
|
||||||
maximumLineCount: 1
|
maximumLineCount: 1
|
||||||
font {
|
font {
|
||||||
pixelSize: Math.round(12 * DefaultStyle.dp)
|
pixelSize: Math.round(12 * DefaultStyle.dp)
|
||||||
weight: Math.round(300 * DefaultStyle.dp)
|
weight: Math.round(300 * DefaultStyle.dp)
|
||||||
}
|
}
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
AddParticipantsForm {
|
||||||
AddParticipantsForm {
|
id: addParticipantLayout
|
||||||
id: addParticipantLayout
|
Layout.fillWidth: true
|
||||||
Layout.fillWidth: true
|
Layout.fillHeight: true
|
||||||
Layout.fillHeight: true
|
height: addParticipantInItem.height - title.height
|
||||||
conferenceInfoGui: parent.conferenceInfoGui
|
conferenceInfoGui: addParticipantInItem.conferenceInfoGui
|
||||||
|
participantscSrollBarRightMargin: 0
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -590,7 +603,6 @@ AbstractMainPage {
|
||||||
id: meetingDetail
|
id: meetingDetail
|
||||||
FocusScope{
|
FocusScope{
|
||||||
width: overridenRightPanelStackView.width
|
width: overridenRightPanelStackView.width
|
||||||
height: meetingDetailsLayout.childrenRect.height
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
id: meetingDetailsLayout
|
id: meetingDetailsLayout
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue