icons32.png: new script icon

drvinst: restart desktop on video driver install, and a notice for achi driver
syspanel/game center: fix performance issue

git-svn-id: svn://kolibrios.org@7793 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Kirill Lipatov (Leency) 2020-04-15 13:44:21 +00:00
parent b76d44d868
commit 56413fb062
5 changed files with 32 additions and 13 deletions

View File

@ -1,12 +1,14 @@
[AHCI]
ver=ver rc06
description_ru=<EFBFBD>®¨áª ª®­â஫«¥à®¢ ¨ ®¯à¥¤¥«¥­¨¥ ¯®¤ª«îçñ­­ëå €’€ ¤¨áª®¢. á«ãç ¥ ãᯥå , ¤¥« ¥â ¢¨¤¨¬ë¬¨ ¢ Š®«¨¡à¨ ¤¨áª¨ ¯®¤ª«î祭­ë¥ ç¥à¥§ ACHI.
description_en=The driver searches for ATA disks connected to the AHCI controller. Found disks are identified and made available to the user.
type=disk
description_ru=<EFBFBD>®¨áª ª®­â஫«¥à®¢ ¨ ®¯à¥¤¥«¥­¨¥ ¯®¤ª«îçñ­­ëå €’€ ¤¨áª®¢. á«ãç ¥ ãᯥå , ¤¥« ¥â ¢¨¤¨¬ë¬¨ ¢ Š®«¨¡à¨ ¤¨áª¨ ¯®¤ª«î祭­ë¥ ç¥à¥§ ACHI. €«ìâ¥à­ â¨¢®© ¤ ­­®¬ã ¤à ©¢¥àã, á ¤à㣨¬ ¬¥å ­¨§¬®¬ ®¯à¥¤¥«¥­¨ï ¤¨áª®¢, ï¥âáï ¯ã­ªâ "b" ­  £®«ã¡®¬ áâ à⮢®¬ íªà ­¥.
description_en=The driver searches for ATA disks connected to the AHCI controller. Found disks are identified and made available to the user. Alternative to this dirver is an option "b" at the start blue screen.
readme=/kolibrios/drivers/ahci/readme.txt
install=/kolibrios/drivers/ahci/ahci
[Video ATI KMS]
ver=ver 4.4.30
type=video
description_ru=„à ©¢¥à  ¤«ï ¢¨¤¥®ª àâ ATI Radeon. <20>®¤¤¥à¦¨¢ îâáï ¤¨áªà¥â­ë¥ ¨ ¨­â¥£à¨à®¢ ­­ë¥ 稯á¥âë ᥬ¥©á⢠ATI R100-R600, Evergreen, Northern Islands, Southern Islands. “áâ ­ ¢«¨¢ ¥â ¢¨¤¥®à¥¦¨¬ ¯à¨ ¯¥à¢®¬ § ¯ã᪥ ¨ ¤¥« ¥â ¤®áâã¯­ë¬ á¬¥­ã ¢¨¤¥®à¥¦¨¬  ¢ ¯à®æ¥áᥠࠡ®âë ç¥à¥§ SYSPANEL -> VideoMode.
description_en=The driver for ATI Radeon video cards supports all discrete and integrated chipsets from the ATI R100-R600, Evergreen, Northern Islands and Southern Islands families. The driver sets the video mode on the first load and allows to change the video mode via SYSPANEL -> VideoMode.
readme=/kolibrios/drivers/atikms/readme.txt
@ -14,6 +16,7 @@ install=/kolibrios/drivers/atikms/atikms
[Video Intel i915]
ver=ver 4.6.7-1
type=video
description_ru=„à ©¢¥à  ¤«ï ¢¨¤¥®ª àâ Intel. <20>®¤¤¥à¦¨¢ îâáï ¢á¥ PCI Express ¢¨¤¥®ï¤à  Intel ®â i915 ¤® Skylake. “áâ ­ ¢«¨¢ ¥â ¢¨¤¥®à¥¦¨¬ ¯à¨ ¯¥à¢®¬ § ¯ã᪥ ¨ ¤¥« ¥â ¤®áâã¯­ë¬ á¬¥­ã ¢¨¤¥®à¥¦¨¬  ¢ ¯à®æ¥áᥠࠡ®âë ç¥à¥§ SYSPANEL -> VideoMode.
description_en=The driver for Intel video cards supports all Intel PCI Express video cores from i915 till Skylake. The driver sets the video mode on the first load and allows to change the video mode via SYSPANEL -> VideoMode.
readme=/kolibrios/drivers/i915/readme.txt
@ -21,6 +24,7 @@ install=/kolibrios/drivers/i915/i915
[Video VmWare]
ver=ver 3.14-rc2
type=video
description_ru=„à ©¢¥à ¤«ï VMware SVGA II.
description_en=The driver for VMware SVGA II.
readme=/kolibrios/drivers/vmware/readme.txt

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

@ -98,13 +98,9 @@ bool LinksArray::HoverAndProceed(dword mx, my, list_y, list_first)
}
if (mouse.mkm) && (mouse.up) {
if (key_modifier&KEY_LSHIFT) || (key_modifier&KEY_RSHIFT) {
open_new_window = true;
EventClickLink(PageLinks.GetURL(PageLinks.active));
open_new_window = false;
ProcessEvent(IN_NEW_TAB);
} else {
open_new_tab = true;
EventClickLink(PageLinks.GetURL(PageLinks.active));
open_new_tab = false;
ProcessEvent(IN_NEW_WINDOW);
}
return false;
}

View File

@ -14,10 +14,12 @@
#include "../lib/list_box.h"
#include "../lib/obj/box_lib.h"
#include "../lib/obj/libio.h"
#include "../lib/obj/libimg.h"
#include "../lib/obj/libini.h"
#include "../lib/collection.h"
#include "../lib/io.h"
#include "../lib/patterns/select_list.h"
#include "../lib/patterns/restart_process.h"
//===================================================//
// //
@ -34,6 +36,7 @@ proc_info Form;
#define T_ASSEPT_RISK "Ÿ ¯à¨­¨¬ î à¨áª"
#define T_README "Readme"
#define T_INSTALL "“áâ ­®¢¨âì"
#define T_DRIVER_INSTALLARION_STARTED "'<27> ç « áì ãáâ ­®¢ª  ¤à ©¢¥à .\n®£ ãáâ ­®¢ª¨ ­ å®¤¨âáï ¢ ¯à¨«®¦¥­¨¨ BOARD.'I"
char description_name[] = "description_ru";
#else
#define WINDOW_TITLE "Driver Installer"
@ -42,6 +45,7 @@ proc_info Form;
#define T_ASSEPT_RISK "I accept the risk"
#define T_README "Readme"
#define T_INSTALL "Install"
#define T_DRIVER_INSTALLARION_STARTED "'Driver installation started.\nInstallation log can be found in BOARD app.'I"
char description_name[] = "description_en";
#endif
@ -58,6 +62,7 @@ collection ini_sections;
char drvinf_path[4096] = "/kolibrios/drivers/drvinf.ini";
char cur_version[64];
char cur_type[12];
char cur_description[1024];
char cur_readme_path[4096];
char cur_install_path[4096];
@ -86,6 +91,7 @@ void main()
load_dll(libio, #libio_init,1);
load_dll(libini, #lib_init,1);
load_dll(boxlib, #box_lib_init,0);
load_dll(libimg, #libimg_init,1);
GetIniData();
SetEventMask(EVM_REDRAW+EVM_KEY+EVM_BUTTON+EVM_MOUSE+EVM_MOUSE_FILTER);
loop() switch(WaitEvent())
@ -136,6 +142,7 @@ void Draw_DriverListWindow()
int PADDING = 12;
int right_frame_x = Form.cwidth*46/100;
int readme_w = 0;
int icon_n = 38;
//LEFT FRAME
SelectList_Init(PADDING,
PADDING,
@ -147,8 +154,10 @@ void Draw_DriverListWindow()
//RIGHT FRAME
GetCurrentSectionData();
DrawBar(right_frame_x, PADDING+3, Form.cwidth - right_frame_x - PADDING, 80, system.color.work);
WriteTextB(right_frame_x, PADDING+3, 0x81, system.color.work_text, ini_sections.get(select_list.cur_y));
WriteText(right_frame_x, PADDING+23, 0x80, system.color.work_text, #cur_version);
if (streq(#cur_type, "disk")) icon_n = 50;
DrawIcon32(right_frame_x, PADDING, system.color.work, icon_n);
WriteTextB(right_frame_x+44, PADDING+3, 0x81, system.color.work_text, ini_sections.get(select_list.cur_y));
WriteText(right_frame_x+44, PADDING+23, 0x80, system.color.work_text, #cur_version);
if(cur_readme_path[0]) readme_w = DrawStandartCaptButton(right_frame_x, PADDING+45, BUTTON_ID_README, T_README);
DrawStandartCaptButton(right_frame_x + readme_w, PADDING+45, BUTTON_ID_INSTALL, T_INSTALL);
DrawTextViewArea(right_frame_x-2, PADDING+83, Form.cwidth - right_frame_x - PADDING, Form.cheight-PADDING-PADDING,
@ -183,6 +192,7 @@ void GetCurrentSectionData()
{
dword section_name = ini_sections.get(select_list.cur_y);
ini_get_str stdcall (#drvinf_path, section_name, "ver", #cur_version, sizeof(cur_version), 0);
ini_get_str stdcall (#drvinf_path, section_name, "type", #cur_type, sizeof(cur_type), 0);
ini_get_str stdcall (#drvinf_path, section_name, #description_name, #cur_description, sizeof(cur_description), 0);
ini_get_str stdcall (#drvinf_path, section_name, "readme", #cur_readme_path, sizeof(cur_readme_path), 0);
ini_get_str stdcall (#drvinf_path, section_name, "install", #cur_install_path, sizeof(cur_install_path), 0);
@ -231,5 +241,11 @@ void Event_RunInstall()
{
int result;
result = io.run(#cur_install_path, NULL);
if (result) notify("'Driver installation started.\nPlease, open BOARD to check status.'I");
if (result) notify(T_DRIVER_INSTALLARION_STARTED);
pause(300);
if (streq(#cur_type, "video")) {
RestartProcessByName("/sys/@taskbar", SINGLE);
RestartProcessByName("/sys/@docky", SINGLE);
RestartProcessByName("/sys/@icon", MOLTIPLE);
}
}

View File

@ -193,13 +193,16 @@ byte draw_icons_from_section(dword key_value, key_name, sec_name, f_name)
text_x = col*list.item_w+5;
text_y = list.item_h - 40 / 2;
if (kfont.getsize(key_name)+30<list.item_w) || (!strchr(key_name, ' ')) {
if (!strchr(key_name, ' ')) {//|| (kfont.getsize(key_name)+30<list.item_w) <== too slow
kfont.WriteIntoWindowCenter(text_x, row*list.item_h+46 + list_pos, list.item_w,0, swc.list_bg, swc.text, 12, key_name);
//WriteTextCenter(text_x, row*list.item_h+46 + list_pos+3, list.item_w, swc.text, key_name);
} else {
space_pos = strrchr(key_name, ' ');
ESBYTE[key_name+space_pos-1] = '\0';
kfont.WriteIntoWindowCenter(text_x, row*list.item_h+46 + list_pos - 2, list.item_w,0, swc.list_bg, swc.text, 12, key_name);
kfont.WriteIntoWindowCenter(text_x, row*list.item_h+46 + list_pos + 14, list.item_w,0, swc.list_bg, swc.text, 12, key_name+space_pos);
kfont.WriteIntoWindowCenter(text_x, row*list.item_h+46 + list_pos + 13, list.item_w,0, swc.list_bg, swc.text, 12, key_name+space_pos);
//WriteTextCenter(text_x, row*list.item_h+46 + list_pos, list.item_w, swc.text, key_name);
//WriteTextCenter(text_x, row*list.item_h+46 + list_pos + 10, list.item_w, swc.text, key_name+space_pos);
}
if (icon_char_pos) icon_id = atoi(icon_char_pos+1);
img_draw stdcall(skin.image, icon_x, icon_y, 32, 32, 0, icon_id*32);