Skip to content

Commit c2b5494

Browse files
authored
Merge branch 'develop' into fix/scancode-fallback
2 parents 30f5d8b + ee3bac1 commit c2b5494

File tree

15 files changed

+435
-31
lines changed

15 files changed

+435
-31
lines changed

CHANGELOG.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,29 @@
11
## [3.0 Beta 3](https://github.com/sds100/KeyMapper/releases/tag/v3.0.0-beta.3)
22

3+
_See the changes from previous 3.0 Beta releases as well._
4+
35
#### TO BE RELEASED
46

7+
## Added
8+
- #1586 🎨 Customise floating button border and background opacity.
9+
510
## Changed
611

712
- Turn off flashlight when using decrease brightness action.
13+
- Animate floating buttons in and out.
14+
15+
## Bug fixes
16+
17+
- Do not hide floating button when the quick settings are showing if the key map action can collapse the status bar.
18+
- Do not show floating buttons on the always-on display or when the display is "off".
19+
- Prompt to unlock device when tapping "Go back" on the floating menu.
20+
- #1596 Do not show the option for front flashlight if the device does not have one.
21+
- #1598 Do not allow changing flashlight brightness on devices that do not support it.
822

923
## [3.0 Beta 2](https://github.com/sds100/KeyMapper/releases/tag/v3.0.0-beta.2)
1024

1125
#### 27 March 2025
1226

13-
_See the changes from previous 3.0 Beta releases as well._
14-
1527
## Added
1628

1729
- #1560 Action to change flashlight brightness and also set a custom brightness when enabling the flashlight.
Lines changed: 324 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,324 @@
1+
{
2+
"formatVersion": 1,
3+
"database": {
4+
"version": 15,
5+
"identityHash": "eb7c2d3cb69e3eb4170ee2a3227c4805",
6+
"entities": [
7+
{
8+
"tableName": "keymaps",
9+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `trigger` TEXT NOT NULL, `action_list` TEXT NOT NULL, `constraint_list` TEXT NOT NULL, `constraint_mode` INTEGER NOT NULL, `flags` INTEGER NOT NULL, `folder_name` TEXT, `is_enabled` INTEGER NOT NULL, `uid` TEXT NOT NULL)",
10+
"fields": [
11+
{
12+
"fieldPath": "id",
13+
"columnName": "id",
14+
"affinity": "INTEGER",
15+
"notNull": true
16+
},
17+
{
18+
"fieldPath": "trigger",
19+
"columnName": "trigger",
20+
"affinity": "TEXT",
21+
"notNull": true
22+
},
23+
{
24+
"fieldPath": "actionList",
25+
"columnName": "action_list",
26+
"affinity": "TEXT",
27+
"notNull": true
28+
},
29+
{
30+
"fieldPath": "constraintList",
31+
"columnName": "constraint_list",
32+
"affinity": "TEXT",
33+
"notNull": true
34+
},
35+
{
36+
"fieldPath": "constraintMode",
37+
"columnName": "constraint_mode",
38+
"affinity": "INTEGER",
39+
"notNull": true
40+
},
41+
{
42+
"fieldPath": "flags",
43+
"columnName": "flags",
44+
"affinity": "INTEGER",
45+
"notNull": true
46+
},
47+
{
48+
"fieldPath": "folderName",
49+
"columnName": "folder_name",
50+
"affinity": "TEXT",
51+
"notNull": false
52+
},
53+
{
54+
"fieldPath": "isEnabled",
55+
"columnName": "is_enabled",
56+
"affinity": "INTEGER",
57+
"notNull": true
58+
},
59+
{
60+
"fieldPath": "uid",
61+
"columnName": "uid",
62+
"affinity": "TEXT",
63+
"notNull": true
64+
}
65+
],
66+
"primaryKey": {
67+
"autoGenerate": true,
68+
"columnNames": [
69+
"id"
70+
]
71+
},
72+
"indices": [
73+
{
74+
"name": "index_keymaps_uid",
75+
"unique": true,
76+
"columnNames": [
77+
"uid"
78+
],
79+
"orders": [],
80+
"createSql": "CREATE UNIQUE INDEX IF NOT EXISTS `index_keymaps_uid` ON `${TABLE_NAME}` (`uid`)"
81+
}
82+
],
83+
"foreignKeys": []
84+
},
85+
{
86+
"tableName": "fingerprintmaps",
87+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER NOT NULL, `action_list` TEXT NOT NULL, `constraint_list` TEXT NOT NULL, `constraint_mode` INTEGER NOT NULL, `extras` TEXT NOT NULL, `flags` INTEGER NOT NULL, `is_enabled` INTEGER NOT NULL, PRIMARY KEY(`id`))",
88+
"fields": [
89+
{
90+
"fieldPath": "id",
91+
"columnName": "id",
92+
"affinity": "INTEGER",
93+
"notNull": true
94+
},
95+
{
96+
"fieldPath": "actionList",
97+
"columnName": "action_list",
98+
"affinity": "TEXT",
99+
"notNull": true
100+
},
101+
{
102+
"fieldPath": "constraintList",
103+
"columnName": "constraint_list",
104+
"affinity": "TEXT",
105+
"notNull": true
106+
},
107+
{
108+
"fieldPath": "constraintMode",
109+
"columnName": "constraint_mode",
110+
"affinity": "INTEGER",
111+
"notNull": true
112+
},
113+
{
114+
"fieldPath": "extras",
115+
"columnName": "extras",
116+
"affinity": "TEXT",
117+
"notNull": true
118+
},
119+
{
120+
"fieldPath": "flags",
121+
"columnName": "flags",
122+
"affinity": "INTEGER",
123+
"notNull": true
124+
},
125+
{
126+
"fieldPath": "isEnabled",
127+
"columnName": "is_enabled",
128+
"affinity": "INTEGER",
129+
"notNull": true
130+
}
131+
],
132+
"primaryKey": {
133+
"autoGenerate": false,
134+
"columnNames": [
135+
"id"
136+
]
137+
},
138+
"indices": [],
139+
"foreignKeys": []
140+
},
141+
{
142+
"tableName": "log",
143+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `time` INTEGER NOT NULL, `severity` INTEGER NOT NULL, `message` TEXT NOT NULL)",
144+
"fields": [
145+
{
146+
"fieldPath": "id",
147+
"columnName": "id",
148+
"affinity": "INTEGER",
149+
"notNull": true
150+
},
151+
{
152+
"fieldPath": "time",
153+
"columnName": "time",
154+
"affinity": "INTEGER",
155+
"notNull": true
156+
},
157+
{
158+
"fieldPath": "severity",
159+
"columnName": "severity",
160+
"affinity": "INTEGER",
161+
"notNull": true
162+
},
163+
{
164+
"fieldPath": "message",
165+
"columnName": "message",
166+
"affinity": "TEXT",
167+
"notNull": true
168+
}
169+
],
170+
"primaryKey": {
171+
"autoGenerate": true,
172+
"columnNames": [
173+
"id"
174+
]
175+
},
176+
"indices": [],
177+
"foreignKeys": []
178+
},
179+
{
180+
"tableName": "floating_layouts",
181+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`uid` TEXT NOT NULL, `name` TEXT NOT NULL, PRIMARY KEY(`uid`))",
182+
"fields": [
183+
{
184+
"fieldPath": "uid",
185+
"columnName": "uid",
186+
"affinity": "TEXT",
187+
"notNull": true
188+
},
189+
{
190+
"fieldPath": "name",
191+
"columnName": "name",
192+
"affinity": "TEXT",
193+
"notNull": true
194+
}
195+
],
196+
"primaryKey": {
197+
"autoGenerate": false,
198+
"columnNames": [
199+
"uid"
200+
]
201+
},
202+
"indices": [
203+
{
204+
"name": "index_floating_layouts_name",
205+
"unique": true,
206+
"columnNames": [
207+
"name"
208+
],
209+
"orders": [],
210+
"createSql": "CREATE UNIQUE INDEX IF NOT EXISTS `index_floating_layouts_name` ON `${TABLE_NAME}` (`name`)"
211+
}
212+
],
213+
"foreignKeys": []
214+
},
215+
{
216+
"tableName": "floating_buttons",
217+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`uid` TEXT NOT NULL, `layout_uid` TEXT NOT NULL, `text` TEXT NOT NULL, `button_size` INTEGER NOT NULL, `x` INTEGER NOT NULL, `y` INTEGER NOT NULL, `orientation` TEXT NOT NULL, `display_width` INTEGER NOT NULL, `display_height` INTEGER NOT NULL, `border_opacity` REAL, `background_opacity` REAL, PRIMARY KEY(`uid`), FOREIGN KEY(`layout_uid`) REFERENCES `floating_layouts`(`uid`) ON UPDATE NO ACTION ON DELETE CASCADE )",
218+
"fields": [
219+
{
220+
"fieldPath": "uid",
221+
"columnName": "uid",
222+
"affinity": "TEXT",
223+
"notNull": true
224+
},
225+
{
226+
"fieldPath": "layoutUid",
227+
"columnName": "layout_uid",
228+
"affinity": "TEXT",
229+
"notNull": true
230+
},
231+
{
232+
"fieldPath": "text",
233+
"columnName": "text",
234+
"affinity": "TEXT",
235+
"notNull": true
236+
},
237+
{
238+
"fieldPath": "buttonSize",
239+
"columnName": "button_size",
240+
"affinity": "INTEGER",
241+
"notNull": true
242+
},
243+
{
244+
"fieldPath": "x",
245+
"columnName": "x",
246+
"affinity": "INTEGER",
247+
"notNull": true
248+
},
249+
{
250+
"fieldPath": "y",
251+
"columnName": "y",
252+
"affinity": "INTEGER",
253+
"notNull": true
254+
},
255+
{
256+
"fieldPath": "orientation",
257+
"columnName": "orientation",
258+
"affinity": "TEXT",
259+
"notNull": true
260+
},
261+
{
262+
"fieldPath": "displayWidth",
263+
"columnName": "display_width",
264+
"affinity": "INTEGER",
265+
"notNull": true
266+
},
267+
{
268+
"fieldPath": "displayHeight",
269+
"columnName": "display_height",
270+
"affinity": "INTEGER",
271+
"notNull": true
272+
},
273+
{
274+
"fieldPath": "borderOpacity",
275+
"columnName": "border_opacity",
276+
"affinity": "REAL",
277+
"notNull": false
278+
},
279+
{
280+
"fieldPath": "backgroundOpacity",
281+
"columnName": "background_opacity",
282+
"affinity": "REAL",
283+
"notNull": false
284+
}
285+
],
286+
"primaryKey": {
287+
"autoGenerate": false,
288+
"columnNames": [
289+
"uid"
290+
]
291+
},
292+
"indices": [
293+
{
294+
"name": "index_floating_buttons_layout_uid",
295+
"unique": false,
296+
"columnNames": [
297+
"layout_uid"
298+
],
299+
"orders": [],
300+
"createSql": "CREATE INDEX IF NOT EXISTS `index_floating_buttons_layout_uid` ON `${TABLE_NAME}` (`layout_uid`)"
301+
}
302+
],
303+
"foreignKeys": [
304+
{
305+
"table": "floating_layouts",
306+
"onDelete": "CASCADE",
307+
"onUpdate": "NO ACTION",
308+
"columns": [
309+
"layout_uid"
310+
],
311+
"referencedColumns": [
312+
"uid"
313+
]
314+
}
315+
]
316+
}
317+
],
318+
"views": [],
319+
"setupQueries": [
320+
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
321+
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, 'eb7c2d3cb69e3eb4170ee2a3227c4805')"
322+
]
323+
}
324+
}

0 commit comments

Comments
 (0)