35 """ |
35 """ |
36 super(FeaturePermissionsDialog, self).__init__(parent) |
36 super(FeaturePermissionsDialog, self).__init__(parent) |
37 self.setupUi(self) |
37 self.setupUi(self) |
38 |
38 |
39 # add the various lists |
39 # add the various lists |
40 self.notifList = QTreeWidget() |
40 # TODO: Qt 5.7? |
41 self.notifList.setAlternatingRowColors(True) |
41 ## self.notifList = QTreeWidget() |
42 self.notifList.setSelectionMode(QAbstractItemView.ExtendedSelection) |
42 ## self.notifList.setAlternatingRowColors(True) |
43 self.notifList.setRootIsDecorated(False) |
43 ## self.notifList.setSelectionMode(QAbstractItemView.ExtendedSelection) |
44 self.notifList.setItemsExpandable(False) |
44 ## self.notifList.setRootIsDecorated(False) |
45 self.notifList.setAllColumnsShowFocus(True) |
45 ## self.notifList.setItemsExpandable(False) |
46 self.notifList.setObjectName("notifList") |
46 ## self.notifList.setAllColumnsShowFocus(True) |
47 self.notifList.setSortingEnabled(True) |
47 ## self.notifList.setObjectName("notifList") |
48 self.notifList.headerItem().setText(0, self.tr("Host")) |
48 ## self.notifList.setSortingEnabled(True) |
49 self.notifList.headerItem().setText(1, self.tr("Permission")) |
49 ## self.notifList.headerItem().setText(0, self.tr("Host")) |
50 self.tabWidget.addTab( |
50 ## self.notifList.headerItem().setText(1, self.tr("Permission")) |
51 self.notifList, |
51 ## self.tabWidget.addTab( |
52 UI.PixmapCache.getIcon("notification.png"), |
52 ## self.notifList, |
53 self.tr("Notifications")) |
53 ## UI.PixmapCache.getIcon("notification.png"), |
|
54 ## self.tr("Notifications")) |
54 |
55 |
55 self.geoList = QTreeWidget() |
56 self.geoList = QTreeWidget() |
56 self.geoList.setAlternatingRowColors(True) |
57 self.geoList.setAlternatingRowColors(True) |
57 self.geoList.setSelectionMode(QAbstractItemView.ExtendedSelection) |
58 self.geoList.setSelectionMode(QAbstractItemView.ExtendedSelection) |
58 self.geoList.setRootIsDecorated(False) |
59 self.geoList.setRootIsDecorated(False) |
110 self.tabWidget.addTab( |
111 self.tabWidget.addTab( |
111 self.micCamList, |
112 self.micCamList, |
112 UI.PixmapCache.getIcon("audio-video.png"), |
113 UI.PixmapCache.getIcon("audio-video.png"), |
113 self.tr("Microphone && Camera")) |
114 self.tr("Microphone && Camera")) |
114 |
115 |
115 self.setTabOrder(self.tabWidget, self.notifList) |
116 self.mouseLockList = QTreeWidget() |
116 self.setTabOrder(self.notifList, self.geoList) |
117 self.mouseLockList.setAlternatingRowColors(True) |
|
118 self.mouseLockList.setSelectionMode(QAbstractItemView.ExtendedSelection) |
|
119 self.mouseLockList.setRootIsDecorated(False) |
|
120 self.mouseLockList.setItemsExpandable(False) |
|
121 self.mouseLockList.setAllColumnsShowFocus(True) |
|
122 self.mouseLockList.setObjectName("mouseLockList") |
|
123 self.mouseLockList.setSortingEnabled(True) |
|
124 self.mouseLockList.headerItem().setText(0, self.tr("Host")) |
|
125 self.mouseLockList.headerItem().setText(1, self.tr("Permission")) |
|
126 self.tabWidget.addTab( |
|
127 self.mouseLockList, |
|
128 UI.PixmapCache.getIcon("mouse.png"), |
|
129 self.tr("Mouse Lock")) |
|
130 |
|
131 # TODO: Qt 5.7? |
|
132 ## self.setTabOrder(self.tabWidget, self.notifList) |
|
133 ## self.setTabOrder(self.notifList, self.geoList) |
|
134 self.setTabOrder(self.tabWidget, self.geoList) |
117 self.setTabOrder(self.geoList, self.micList) |
135 self.setTabOrder(self.geoList, self.micList) |
118 self.setTabOrder(self.micList, self.camList) |
136 self.setTabOrder(self.micList, self.camList) |
119 self.setTabOrder(self.camList, self.micCamList) |
137 self.setTabOrder(self.camList, self.micCamList) |
120 self.setTabOrder(self.micCamList, self.removeButton) |
138 self.setTabOrder(self.micCamList, self.mouseLockList) |
|
139 self.setTabOrder(self.mouseLockList, self.removeButton) |
121 self.setTabOrder(self.removeButton, self.removeAllButton) |
140 self.setTabOrder(self.removeButton, self.removeAllButton) |
122 |
141 |
123 self.__permissionStrings = { |
142 self.__permissionStrings = { |
124 QWebEnginePage.PermissionGrantedByUser: self.tr("Allow"), |
143 QWebEnginePage.PermissionGrantedByUser: self.tr("Allow"), |
125 QWebEnginePage.PermissionDeniedByUser: self.tr("Deny"), |
144 QWebEnginePage.PermissionDeniedByUser: self.tr("Deny"), |
126 } |
145 } |
127 |
146 |
128 self.__permissionsLists = { |
147 self.__permissionsLists = { |
129 # TODO: Qt 5.6 |
148 # TODO: Qt 5.7? |
130 ## QWebEnginePage.Notifications: self.notifList, |
149 ## QWebEnginePage.Notifications: self.notifList, |
131 QWebEnginePage.Geolocation: self.geoList, |
150 QWebEnginePage.Geolocation: self.geoList, |
132 QWebEnginePage.MediaAudioCapture: self.micList, |
151 QWebEnginePage.MediaAudioCapture: self.micList, |
133 QWebEnginePage.MediaVideoCapture: self.camList, |
152 QWebEnginePage.MediaVideoCapture: self.camList, |
134 QWebEnginePage.MediaAudioVideoCapture: self.micCamList, |
153 QWebEnginePage.MediaAudioVideoCapture: self.micCamList, |
|
154 QWebEnginePage.MouseLock: self.mouseLockList, |
135 } |
155 } |
136 |
156 |
137 for feature, permissionsList in self.__permissionsLists.items(): |
157 for feature, permissionsList in self.__permissionsLists.items(): |
138 for permission in featurePermissions[feature]: |
158 for permission in featurePermissions[feature]: |
139 for host in featurePermissions[feature][permission]: |
159 for host in featurePermissions[feature][permission]: |