Skip to content

Welcome tab #13407

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 46 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
22e3822
Initial integration of QuickSettings
Jun 29, 2025
7958489
Improve the look and feel of theme quick settings
Jun 29, 2025
189d030
Remove the unnecessary parameter e from the QuickSettingsButton
Jun 29, 2025
aeb258e
Add performance optimization and external application detection setti…
Jul 1, 2025
a117f49
Merge remote-tracking branch 'upstream/main' into welcome-tab
Jul 1, 2025
47af7fa
Remove the confirmation dialog after quick settings
Jul 1, 2025
7be327c
Update CHANGELOG.md
Jul 1, 2025
0b34b04
Add online service configuration and citation key removal
Jul 3, 2025
2259dfe
Refactor and get consistent language
Jul 3, 2025
37449af
Merge remote-tracking branch 'upstream/main' into welcome-tab
Jul 3, 2025
a759db9
Allow theme option to be selected by clicking on the WireFrame
Jul 3, 2025
ed3a001
Remove usage of JetBrains annotation
Jul 3, 2025
e296fd1
Retract change to Base.css
Jul 3, 2025
a0af2e8
Fix according to Trag
Jul 3, 2025
2e47ab0
Fix CHANGELOG
Jul 3, 2025
e8fbd25
Merge remote-tracking branch 'upstream/main' into welcome-tab
Jul 4, 2025
196f385
Style change according to the discussion
Jul 4, 2025
ff5dcf2
Integrate Walthrough to the WelcomeTab
Jul 6, 2025
5eb23ed
Merge remote-tracking branch 'upstream/main' into welcome-tab
Jul 10, 2025
5d3d719
Fix according to Trag bot
Jul 10, 2025
a831fb2
Slight refactoring and improve the push to application resolution
Jul 11, 2025
1b30f7f
Merge branch 'main' into welcome-tab
Yubo-Cao Jul 11, 2025
1309675
Quick fix after the merge
Yubo-Cao Jul 11, 2025
37eaf71
Quick improvement on the elegance of Wireframe styling
Yubo-Cao Jul 11, 2025
792ce4e
Fix the spelling issue with Texmaker
Yubo-Cao Jul 11, 2025
78e8148
Get rid of the qs icon button
Yubo-Cao Jul 11, 2025
6a6485f
Small tweaks
Yubo-Cao Jul 18, 2025
704d76e
Merge remote-tracking branch 'upstream/main' into welcome-tab
Yubo-Cao Jul 18, 2025
3845a44
Replace with modern Java API
Yubo-Cao Jul 18, 2025
5ea5809
Replace with modern Java API
Yubo-Cao Jul 18, 2025
e15eede
Fix localization
Yubo-Cao Jul 19, 2025
ce7ce88
Implement the new UI interface
Yubo-Cao Jul 19, 2025
a1f7aa1
Refactor +change CHANGELOG
Yubo-Cao Jul 19, 2025
d127472
Revert a change that breaks the Walkthrough...
Yubo-Cao Jul 19, 2025
64e3829
Continued refactoring
Yubo-Cao Jul 19, 2025
0a3d81f
Apply fix per Trag
Yubo-Cao Jul 19, 2025
d28be6b
Apply fix per Trag
Yubo-Cao Jul 19, 2025
ab260b4
Apply fix per Trag
Yubo-Cao Jul 19, 2025
6b827c9
Fix Rewrite
Yubo-Cao Jul 19, 2025
aadcecb
Fix per Trag
Yubo-Cao Jul 19, 2025
69999b4
Revert walkthrough patches and get in sync with main
Yubo-Cao Jul 19, 2025
aa33d51
Address some comments made by Carl
Yubo-Cao Jul 19, 2025
312bd84
Fix according to Trag
Yubo-Cao Jul 19, 2025
89a06a5
Significant refactoring to follow the MVVM style
Yubo-Cao Jul 20, 2025
b80ea84
Refactor view model names and fix some Trag comment
Yubo-Cao Jul 20, 2025
49fe171
Fix according to Trag
Yubo-Cao Jul 23, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions jabgui/src/main/java/module-info.java
Original file line number Diff line number Diff line change
Expand Up @@ -188,5 +188,6 @@
requires org.antlr.antlr4.runtime;
requires org.libreoffice.uno;
requires com.dlsc.pdfviewfx;
requires org.jetbrains.annotations;
// endregion
}
294 changes: 0 additions & 294 deletions jabgui/src/main/java/org/jabref/gui/WelcomeTab.java

This file was deleted.

2 changes: 1 addition & 1 deletion jabgui/src/main/java/org/jabref/gui/frame/JabRefFrame.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
import org.jabref.gui.LibraryTab;
import org.jabref.gui.LibraryTabContainer;
import org.jabref.gui.StateManager;
import org.jabref.gui.WelcomeTab;
import org.jabref.gui.actions.ActionFactory;
import org.jabref.gui.actions.ActionHelper;
import org.jabref.gui.actions.SimpleCommand;
Expand All @@ -53,6 +52,7 @@
import org.jabref.gui.undo.RedoAction;
import org.jabref.gui.undo.UndoAction;
import org.jabref.gui.util.BindingsHelper;
import org.jabref.gui.welcome.WelcomeTab;
import org.jabref.logic.UiCommand;
import org.jabref.logic.ai.AiService;
import org.jabref.logic.journals.JournalAbbreviationRepository;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package org.jabref.gui.welcome;

import javafx.scene.control.Button;

import org.jabref.gui.icon.IconTheme;

import org.jspecify.annotations.Nullable;

public class QuickSettingsButton extends Button {
public QuickSettingsButton(String text, IconTheme.@Nullable JabRefIcons icon, Runnable action) {
super(text);
if (icon != null) {
setGraphic(icon.getGraphicNode());
}
getStyleClass().add("quick-settings-button");
setMaxWidth(Double.MAX_VALUE);
setOnAction(e -> action.run());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
package org.jabref.gui.welcome;

import javafx.beans.property.SimpleStringProperty;
import javafx.beans.property.StringProperty;
import javafx.fxml.FXML;
import javafx.scene.layout.VBox;

import com.airhacks.afterburner.views.ViewLoader;

public class ThemeWireFrameComponent extends VBox {

private final StringProperty themeType = new SimpleStringProperty();

public ThemeWireFrameComponent() {
ViewLoader.view(this)
.root(this)
.load();

themeType.addListener((_, _, newValue) -> {
if (newValue != null) {
updateTheme();
}
});
}

public ThemeWireFrameComponent(String themeType) {
this();
setThemeType(themeType);
}

public void setThemeType(String themeType) {
this.themeType.set(themeType);
}

@FXML
private void initialize() {
if (themeType.get() != null) {
updateTheme();
}
}

private void updateTheme() {
String theme = themeType.get();
if (theme == null) {
return;
}

getStyleClass().removeIf(styleClass ->
styleClass.startsWith("wireframe-light") ||
styleClass.startsWith("wireframe-dark") ||
styleClass.startsWith("wireframe-custom"));

getStyleClass().add("wireframe-" + theme);
}
}
Loading
Loading