浏览代码

UI: Remove listbox selection if deselected

If the item currently selected in the source listbox is deselected in
the preview, then make sure to deselect it in the listbox as well.
jp9000 10 年之前
父节点
当前提交
1cfe72664a
共有 1 个文件被更改,包括 7 次插入2 次删除
  1. 7 2
      obs/window-basic-main.cpp

+ 7 - 2
obs/window-basic-main.cpp

@@ -925,7 +925,7 @@ void OBSBasic::RenameSources(QString newName, QString prevName)
 
 void OBSBasic::SelectSceneItem(OBSScene scene, OBSSceneItem item, bool select)
 {
-	if (!select || scene != GetCurrentScene())
+	if (scene != GetCurrentScene())
 		return;
 
 	for (int i = 0; i < ui->sources->count(); i++) {
@@ -937,7 +937,12 @@ void OBSBasic::SelectSceneItem(OBSScene scene, OBSSceneItem item, bool select)
 		if (item != data.value<OBSSceneItem>())
 			continue;
 
-		ui->sources->setCurrentItem(witem);
+		if (select) {
+			ui->sources->setCurrentItem(witem);
+		} else if (ui->sources->currentItem() == witem) {
+			ui->sources->setCurrentItem(nullptr);
+		}
+
 		break;
 	}
 }