diff --git a/arm/build/config/compiler/BUILD.gn b/arm/build/config/compiler/BUILD.gn
index ac49421c..002efc54 100644
--- a/arm/build/config/compiler/BUILD.gn
+++ b/arm/build/config/compiler/BUILD.gn
@@ -850,7 +850,8 @@ config("compiler") {
# TODO(crbug.com/40182783): investigate why this isn't effective on
# arm32.
if (!is_android || current_cpu == "arm64") {
- cflags += [ "-fwhole-program-vtables", "-fstrict-vtable-pointers", ]
+ # Add "-fstrict-vtable-pointers",
+ cflags += [ "-fwhole-program-vtables", ]
if (toolchain_supports_rust_thin_lto) {
# whole-program-vtables implies -fsplit-lto-unit, and Rust needs to match
@@ -866,7 +867,7 @@ config("compiler") {
}
if (!is_win) {
- ldflags += [ "-fwhole-program-vtables", "-fstrict-vtable-pointers", ]
+ ldflags += [ "-fwhole-program-vtables", ]
}
}
@@ -3053,7 +3054,7 @@ config("emit-relocs") {
# Use LLVM's Polly optimizer
config("polly") {
if (use_polly == true) {
- ldflags = common_optimize_on_ldflags
+ ldflags = common_optimize_on_ldflags
if (is_win) {
ldflags += [
"-mllvm:-polly",
diff --git a/docs/TH24.md b/docs/TH24.md
index 90865c9c..5d73d33f 100644
--- a/docs/TH24.md
+++ b/docs/TH24.md
@@ -40,7 +40,7 @@ them fullscreen or maximized and use Alt + Tab to switch back and forth between
Menus: (Note that Cr23 menus are rounded, while Th24 menus are square).
-
+
Tabs:
@@ -82,6 +82,10 @@ Folder Icons:
+Text Fields/Comboboxes:
+
+
+
Colors:
-
+
diff --git a/other/thorium-2024-ui.patch b/other/thorium-2024-ui.patch
index 636ac7a5..b596b466 100644
--- a/other/thorium-2024-ui.patch
+++ b/other/thorium-2024-ui.patch
@@ -1296,8 +1296,8 @@ index 9cecb25b41d3b..ad63624d72625 100644
+ int kBookmarksBarLeadingMarginWithoutSavedTabGroups;
+ int kBookmarksBarLeadingMarginWithSavedTabGroups;
+ if (features::IsThorium2024()) {
-+ kBookmarksBarLeadingMarginWithoutSavedTabGroups = 8;
-+ kBookmarksBarLeadingMarginWithSavedTabGroups = 14;
++ kBookmarksBarLeadingMarginWithoutSavedTabGroups = 10;
++ kBookmarksBarLeadingMarginWithSavedTabGroups = 16;
+ } else {
+ kBookmarksBarLeadingMarginWithoutSavedTabGroups = 6;
+ kBookmarksBarLeadingMarginWithSavedTabGroups = 12;
@@ -2833,6 +2833,31 @@ index 12f3662bee633..d4295bb1f3785 100644
views::Separator::kThickness;
}
+diff --git a/chrome/browser/ui/views/side_panel/side_panel_coordinator.cc b/chrome/browser/ui/views/side_panel/side_panel_coordinator.cc
+index 37c51b5605017..f0809f4b50eb5 100644
+--- a/chrome/browser/ui/views/side_panel/side_panel_coordinator.cc
++++ b/chrome/browser/ui/views/side_panel/side_panel_coordinator.cc
+@@ -776,6 +776,20 @@ std::unique_ptr SidePanelCoordinator::CreateHeader() {
+ auto* const layout =
+ header->SetLayoutManager(std::make_unique());
+
++ if (features::IsThorium2024()) {
++ // ChromeLayoutProvider for providing margins.
++ ChromeLayoutProvider* const chrome_layout_provider =
++ ChromeLayoutProvider::Get();
++ // Set the interior margins of the header on the left and right sides.
++ const int horizontal_margin = chrome_layout_provider->GetDistanceMetric(
++ ChromeDistanceMetric::
++ DISTANCE_SIDE_PANEL_HEADER_INTERIOR_MARGIN_HORIZONTAL);
++ layout->SetInteriorMargin(
++ gfx::Insets::TLBR(0, horizontal_margin, 0, horizontal_margin * 2));
++ header->SetBackground(
++ views::CreateThemedSolidBackground(ui::kColorWindowBackground));
++ }
++
+ // Set alignments for horizontal (main) and vertical (cross) axes.
+ layout->SetMainAxisAlignment(views::LayoutAlignment::kStart);
+ layout->SetCrossAxisAlignment(views::LayoutAlignment::kCenter);
diff --git a/chrome/browser/ui/views/side_panel/side_panel_resize_area.cc b/chrome/browser/ui/views/side_panel/side_panel_resize_area.cc
index e65fda1bf0161..37c474deb5ffc 100644
--- a/chrome/browser/ui/views/side_panel/side_panel_resize_area.cc
@@ -4432,7 +4457,7 @@ index aec943d266793..98ee677630ff3 100644
+ //use_bubble_border = corner_radius > 0;
} // namespace views
diff --git a/ui/views/controls/menu/menu_config_linux.cc b/ui/views/controls/menu/menu_config_linux.cc
-index 09c03d1e87011..6649de56c8b13 100644
+index 09c03d1e87011..0388c7ceefe77 100644
--- a/ui/views/controls/menu/menu_config_linux.cc
+++ b/ui/views/controls/menu/menu_config_linux.cc
@@ -4,12 +4,25 @@
@@ -4455,13 +4480,14 @@ index 09c03d1e87011..6649de56c8b13 100644
+ submenu_horizontal_overlap = features::IsThorium2024() ? 1 : 0;
+ arrow_to_edge_padding = features::IsThorium2024() ? 0 : 8;
+ separator_height = features::IsThorium2024() ? 5 : 13;
-+ separator_upper_height = features::IsThorium2024() ? 3 : 3;
-+ separator_lower_height = features::IsThorium2024() ? 3 : 4;
++ separator_upper_height = features::IsThorium2024() ? 2 : 3;
++ separator_lower_height = features::IsThorium2024() ? 2 : 4;
+ separator_spacing_height = features::IsThorium2024() ? 2 : 3;
+ nonrounded_menu_vertical_border_size = features::IsThorium2024() ? 3 : 4;
}
} // namespace views
+
diff --git a/ui/views/controls/menu/menu_config_mac.mm b/ui/views/controls/menu/menu_config_mac.mm
index eabfb364890d3..b31a7d3867a31 100644
--- a/ui/views/controls/menu/menu_config_mac.mm
diff --git a/src/build/config/compiler/BUILD.gn b/src/build/config/compiler/BUILD.gn
index ac49421c..002efc54 100644
--- a/src/build/config/compiler/BUILD.gn
+++ b/src/build/config/compiler/BUILD.gn
@@ -850,7 +850,8 @@ config("compiler") {
# TODO(crbug.com/40182783): investigate why this isn't effective on
# arm32.
if (!is_android || current_cpu == "arm64") {
- cflags += [ "-fwhole-program-vtables", "-fstrict-vtable-pointers", ]
+ # Add "-fstrict-vtable-pointers",
+ cflags += [ "-fwhole-program-vtables", ]
if (toolchain_supports_rust_thin_lto) {
# whole-program-vtables implies -fsplit-lto-unit, and Rust needs to match
@@ -866,7 +867,7 @@ config("compiler") {
}
if (!is_win) {
- ldflags += [ "-fwhole-program-vtables", "-fstrict-vtable-pointers", ]
+ ldflags += [ "-fwhole-program-vtables", ]
}
}
@@ -3053,7 +3054,7 @@ config("emit-relocs") {
# Use LLVM's Polly optimizer
config("polly") {
if (use_polly == true) {
- ldflags = common_optimize_on_ldflags
+ ldflags = common_optimize_on_ldflags
if (is_win) {
ldflags += [
"-mllvm:-polly",