Skip to content

Commit

Permalink
Merge pull request #412 from an-anime-team/next
Browse files Browse the repository at this point in the history
Release 3.11.0
  • Loading branch information
krypt0nn authored Aug 2, 2024
2 parents 32ef2a0 + 5a23eef commit 75f09cb
Show file tree
Hide file tree
Showing 7 changed files with 31 additions and 152 deletions.
6 changes: 5 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Changed

- Prioritize parsed game version over the API response
- Prioritize parsed game version over the API response

### Removed

- Removed migrate installation feature

## [3.10.3] - 21.07.2024

Expand Down
20 changes: 15 additions & 5 deletions src/ui/about.rs
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ impl SimpleComponent for AboutDialog {
set_website: "https://github.com/an-anime-team/an-anime-game-launcher",
set_issue_url: "https://github.com/an-anime-team/an-anime-game-launcher/issues",

set_license_type: gtk::License::Gpl30,
set_license_type: gtk::License::Gpl30Only,
set_version: &APP_VERSION,

set_developers: &[
Expand Down Expand Up @@ -95,12 +95,22 @@ impl SimpleComponent for AboutDialog {

set_release_notes_version: &APP_VERSION,
set_release_notes: &[
"<p>Fixed</p>",
"<p>Added</p>",

"<ul>",
"<li>Fixed \"game.log\" file overfilling at the start of the game</li>",
"<li>Fixed RAM filling with the buffered game logs</li>",
"<li>Fixed Discord RPC updates</li>",
"<li>Respect root \".version\" file for game version parsing</li>",
"</ul>",

"<p>Changed</p>",

"<ul>",
"<li>Prioritize parsed game version over the API response</li>",
"</ul>",

"<p>Removed</p>",

"<ul>",
"<li>Removed migrate installation feature</li>",
"</ul>"
].join("\n"),

Expand Down
80 changes: 10 additions & 70 deletions src/ui/first_run/default_paths.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ pub struct DefaultPathsApp {
progress_bar: AsyncController<ProgressBar>,

show_additional: bool,
migrate_installation: bool,
show_progress: bool,

launcher: PathBuf,
Expand Down Expand Up @@ -49,8 +48,7 @@ pub enum DefaultPathsAppMsg {

#[relm4::component(async, pub)]
impl SimpleAsyncComponent for DefaultPathsApp {
/// If `true`, then use migrate installation mode
type Init = bool;
type Init = ();
type Input = DefaultPathsAppMsg;
type Output = FirstRunAppMsg;

Expand Down Expand Up @@ -242,29 +240,18 @@ impl SimpleAsyncComponent for DefaultPathsApp {
set_spacing: 8,

gtk::Button {
set_label: &if model.migrate_installation {
tr!("migrate")
} else {
tr!("continue")
},
set_label: &tr!("continue"),

set_css_classes: &["suggested-action", "pill"],

connect_clicked => DefaultPathsAppMsg::Continue
},

gtk::Button {
set_label: &if model.migrate_installation {
tr!("close", { "form" = "noun" })
} else {
tr!("exit")
},
set_label: &tr!("exit"),

add_css_class: "pill",

#[watch]
set_visible: !model.migrate_installation,

connect_clicked => DefaultPathsAppMsg::Exit
}
}
Expand All @@ -287,7 +274,7 @@ impl SimpleAsyncComponent for DefaultPathsApp {
}
}

async fn init(init: Self::Init, root: Self::Root, _sender: AsyncComponentSender<Self>) -> AsyncComponentParts<Self> {
async fn init(_init: Self::Init, root: Self::Root, _sender: AsyncComponentSender<Self>) -> AsyncComponentParts<Self> {
let model = Self {
progress_bar: ProgressBar::builder()
.launch(ProgressBarInit {
Expand All @@ -299,7 +286,6 @@ impl SimpleAsyncComponent for DefaultPathsApp {
.detach(),

show_additional: false,
migrate_installation: init,
show_progress: false,

launcher: LAUNCHER_FOLDER.to_path_buf(),
Expand All @@ -311,12 +297,13 @@ impl SimpleAsyncComponent for DefaultPathsApp {
fps_unlocker: CONFIG.game.enhancements.fps_unlocker.path.clone(),
components: CONFIG.components.path.clone(),

#[allow(clippy::or_fun_call)]
temp: CONFIG.launcher.temp.clone().unwrap_or(std::env::temp_dir())
temp: CONFIG.launcher.temp.clone()
.unwrap_or_else(std::env::temp_dir)
};

// Set progress bar width
model.progress_bar.widget().set_width_request(400);
model.progress_bar.widget()
.set_width_request(400);

let widgets = view_output!();

Expand Down Expand Up @@ -364,49 +351,9 @@ impl SimpleAsyncComponent for DefaultPathsApp {

#[allow(unused_must_use)]
DefaultPathsAppMsg::Continue => {
let old_config = Config::get().unwrap_or_else(|_| CONFIG.clone());

match self.update_config() {
Ok(_) => {
if self.migrate_installation {
self.progress_bar.sender().send(ProgressBarMsg::SetVisible(true));

self.show_progress = true;

let folders = [
(old_config.game.wine.builds, &self.runners),
(old_config.game.dxvk.builds, &self.dxvks),
(old_config.game.wine.prefix, &self.prefix),
(old_config.game.path.global, &self.game_global),
(old_config.game.path.china, &self.game_china),
(old_config.components.path, &self.components),

(old_config.game.enhancements.fps_unlocker.path, &self.fps_unlocker)
];

#[allow(clippy::expect_fun_call)]
for (i, (from, to)) in folders.iter().enumerate() {
self.progress_bar.sender().send(ProgressBarMsg::UpdateCaption(Some(
from.to_str().map(|str| str.to_string()).unwrap_or_else(|| format!("{:?}", from))
)));

if &from != to && from.exists() {
move_files::move_files(from, to).expect(&format!("Failed to move folder: {:?} -> {:?}", from, to));
}

self.progress_bar.sender().send(ProgressBarMsg::UpdateProgress(i as u64 + 1, folders.len() as u64));
}

// Restart the app

std::process::Command::new(std::env::current_exe().unwrap()).spawn().unwrap();

relm4::main_application().quit();
}

else {
sender.output(Self::Output::ScrollToSelectVoiceovers);
}
sender.output(Self::Output::ScrollToSelectVoiceovers);
}

Err(err) => {
Expand All @@ -419,14 +366,7 @@ impl SimpleAsyncComponent for DefaultPathsApp {
}

DefaultPathsAppMsg::Exit => {
if self.migrate_installation {
// TODO: this shit should return message to general preferences component somehow to close MigrateInstallation window
todo!();
}

else {
relm4::main_application().quit();
}
relm4::main_application().quit();
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/ui/first_run/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ impl SimpleComponent for FirstRunApp {
.forward(sender.input_sender(), std::convert::identity),

default_paths: DefaultPathsApp::builder()
.launch(false)
.launch(())
.forward(sender.input_sender(), std::convert::identity),

select_voiceovers: SelectVoiceoversApp::builder()
Expand Down
52 changes: 0 additions & 52 deletions src/ui/migrate_installation.rs

This file was deleted.

1 change: 0 additions & 1 deletion src/ui/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,3 @@ pub mod about;
pub mod preferences;
pub mod components;
pub mod first_run;
pub mod migrate_installation;
22 changes: 0 additions & 22 deletions src/ui/preferences/general/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ pub mod components;

use components::*;

use crate::ui::migrate_installation::MigrateInstallationApp;
use crate::i18n::*;
use crate::*;

Expand Down Expand Up @@ -103,7 +102,6 @@ impl AsyncFactoryComponent for VoicePackageComponent {

pub struct GeneralApp {
voice_packages: AsyncFactoryVecDeque<VoicePackageComponent>,
migrate_installation: Controller<MigrateInstallationApp>,
components_page: AsyncController<ComponentsPage>,

game_diff: Option<VersionDiff>,
Expand All @@ -127,7 +125,6 @@ pub enum GeneralAppMsg {
UpdateDownloadedWine,
UpdateDownloadedDxvk,

OpenMigrateInstallation,
RepairGame,

OpenMainPage,
Expand Down Expand Up @@ -341,13 +338,6 @@ impl SimpleAsyncComponent for GeneralApp {
set_spacing: 8,
set_margin_top: 16,

gtk::Button {
set_label: &tr!("migrate-installation"),
set_tooltip_text: Some(&tr!("migrate-installation-description")),

connect_clicked => GeneralAppMsg::OpenMigrateInstallation
},

gtk::Button {
set_label: &tr!("repair-game"),

Expand Down Expand Up @@ -543,10 +533,6 @@ impl SimpleAsyncComponent for GeneralApp {
.launch_default()
.forward(sender.input_sender(), std::convert::identity),

migrate_installation: MigrateInstallationApp::builder()
.launch(())
.detach(),

components_page: ComponentsPage::builder()
.launch(())
.forward(sender.input_sender(), std::convert::identity),
Expand Down Expand Up @@ -648,14 +634,6 @@ impl SimpleAsyncComponent for GeneralApp {
.unwrap();
}

GeneralAppMsg::OpenMigrateInstallation => unsafe {
if let Some(window) = crate::ui::main::PREFERENCES_WINDOW.as_ref() {
self.migrate_installation.widget().set_transient_for(Some(window.widget()));
}

self.migrate_installation.widget().present();
}

GeneralAppMsg::RepairGame => {
sender.output(Self::Output::RepairGame).unwrap();
}
Expand Down

0 comments on commit 75f09cb

Please sign in to comment.